summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog-19973969
-rw-r--r--gcc/ChangeLog-1998 (renamed from gcc/ChangeLog.1)16363
-rw-r--r--gcc/ChangeLog-1999 (renamed from gcc/ChangeLog.2)7331
-rw-r--r--gcc/ChangeLog-2000 (renamed from gcc/ChangeLog.3)15268
-rw-r--r--gcc/ChangeLog-2001 (renamed from gcc/ChangeLog.6)14439
-rw-r--r--gcc/ChangeLog-2002 (renamed from gcc/ChangeLog.7)14449
-rw-r--r--gcc/ChangeLog-2003 (renamed from gcc/ChangeLog.9)16378
-rw-r--r--gcc/ChangeLog-2004 (renamed from gcc/ChangeLog.12)20990
-rw-r--r--gcc/ChangeLog.013011
-rw-r--r--gcc/ChangeLog.1016352
-rw-r--r--gcc/ChangeLog.1121016
-rw-r--r--gcc/ChangeLog.415261
-rw-r--r--gcc/ChangeLog.514446
-rw-r--r--gcc/ChangeLog.814448
14 files changed, 101847 insertions, 101874 deletions
diff --git a/gcc/ChangeLog-1997 b/gcc/ChangeLog-1997
new file mode 100644
index 00000000000..ea16ac7e81d
--- /dev/null
+++ b/gcc/ChangeLog-1997
@@ -0,0 +1,3969 @@
+Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * configure.in: Set and substitute host_exeext. Use it when creating
+ the assembler and linker symlinks.
+ * configure: Rebuild.
+ * Makefile.in (exeext): Set to @host_exeext@.
+ (build_exeext): New variable, set to @build_exeext@.
+ (FLAGS_TO_PASS): Pass down build_exeext.
+ (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
+ programs.
+
+Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.md (addsi3, subsi3): Fix thinkos.
+
+Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
+
+ * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
+ save+restore. Fix pic+big_offset delay slot. Use "pic" case for
+ unix always, since we want to be able to thunk to functions in a
+ shared library from an application.
+
+Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
+ (LIB1ASMSRC, LIB1ASMFUNCS): Define.
+
+Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
+ offset's mode is not ptr_mode, convert it.
+
+Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
+
+ * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
+ compiling if it was already defined.
+
+Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (find_basic_blocks): Don't create a new basic block
+ for calls in a LIBCALL block.
+
+Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
+
+Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (rtx_cost): Remove conflicting default case.
+
+Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
+
+ * configure.in: Move default enabling of Haifa out of for loop.
+ * configure: Rebuild.
+
+Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+1997-12-25 Teemu Torma <tot@trema.com>
+
+ * Makefile.in (GTHREAD_FLAGS): New var.
+ (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
+ (distclean): Remove gthr-default.h.
+
+ * configure.in: Accept dce as a thread package.
+ Check for thread.h and pthread.h.
+ Link gthr-default.h to appropriate thread file and set
+ gthread_flags.
+ (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
+ include multilib definitions from pa/t-dce-thr.
+ (sparc-*-solaris2*): Enable threads by default, if thread.h or
+ pthread.h is found, preferring posix threads over solaris ones.
+
+ * config/pa/t-dce-thr: New file.
+ * config/pa/t-pa: Removed multilibs.
+ * config/sparc/t-sol2: Likewise.
+
+ * gthr.h: New file.
+ * gthr-single.h: New file.
+ * gthr-posix.h: New file.
+ * gthr-solaris.h: New file.
+ * gthr-dce.h: New file.
+ * libgcc-thr.h: Removed.
+ * objc/thr-dce.c: New file copied from thr-decosf1.c.
+
+ * frame.c: Include gthr.h instead of libgcc-thr.h.
+ * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
+ (eh_context_initialize): If __gthread_once fails, use static eh
+ context.
+ (eh_context_free): Call __gthread_key_dtor.
+
+Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
+
+ * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
+
+Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
+
+ * cse.c (max_insn_uid): New variable.
+ (cse_around_loop): Use max_insn_uid.
+ (cse_main): Set max_insn_uid.
+
+ * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
+ and define __LONG_MAX__ appropriately. Add support for -mabi=X,
+ -mlong64, and -mgp{32,64} options.
+ * mips.c (mips_abi): Change type to int.
+ * mips.h (enum mips_abi_type): Delete.
+ (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
+ (mips_abi): Change type to int.
+
+Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
+
+ * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
+ optimization is now always enabled.
+
+ * calls.c (expand_call): Recognize C++ operator new as malloc-like
+ function.
+
+ * alias.c (memrefs_conflict_p): Eliminate tests now done by
+ base_alias_check.
+ (*_dependence): Call canon_rtx before base_alias_check.
+ (init_alias_once): New function to precompute set of registers which
+ can hold Pmode function arguments.
+
+ * rtl.h: Declare init_alias_once.
+
+ * toplev.c (compile_file): Call init_alias_once.
+
+Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
+
+ * tree.c (restore_tree_status): Do not dereference a null pointer.
+
+Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>
+
+ * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
+ RLIMIT_STACK. This maintains consistency with the recent, similar
+ patch to cccp.c and toplev.c.
+
+Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
+
+ * genattrtab.c (expand_units): For large nr opclasses, expand
+ function_units_used with ORX to prevent blowups. Tag with FFS.
+ (num_unit_opclasses): New variable.
+ (gen_unit): Update it.
+ (enum operator): Add ORX_OP.
+ (operate_exp): Treat ORX as or, except don't expand across an if.
+ Reuse number rtx's after operating on them.
+ (check_attr_value): Accept IOR, AND, & FFS.
+ (write_test_expr): Transmute `in_comparison' to `flags'. Allow
+ for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
+ (write_expr_attr_cache, write_toplevel_expr): New functions.
+ (write_attr_get): Handle FFS-tagged expressions.
+ (make_canonical): Don't expand const attributes.
+ (convert_const_symbol_ref): Dike out.
+ (evaluate_eq_attr): Handle SYMBOL_REF.
+ (main): Don't emit get_attr_foo for const attributes.
+
+ * alpha.c (override_options): Reinstate PROCESSOR_EV6.
+ (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
+ * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
+ * alpha.md: Redo all of the scheduling, adding EV6 support, and
+ combining function units where possible.
+ (attr "type"): Split loads, stores, cmov into int/fp. Combine
+ multiplies and divides. Add EV6 sqrt, ftoi, itof.
+ (attr "opsize"): New attribute.
+ (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
+ (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
+ to control register allocation.
+ (movsi2-1, movdi2-1): Likewise.
+
+Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
+ MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
+ Move OSF/1 specific defines out.
+ * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
+ Move Linux specific defines out.
+ (LINK_SPEC): Genericize.
+ (ASM_FILE_START): Emit .arch if using more than the base insn set.
+ (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
+ (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
+ (HANDLE_SYSV_PRAGMA): Define.
+ * alpha/osf.h: New file.
+ * alpha/linux.h: Split. Retain file-format independent defines.
+ Import Linux bits from elf.h.
+ (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES.
+ (FUNCTION_PROFILER): _mcount takes its address in $28.
+ (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
+ * alpha/linux-ecoff.h: New file.
+ * alpha/linux-elf.h: New file.
+ * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
+ * alpha/win-nt.h (TARGET_DEFAULT): Define.
+ * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
+ Add new headers as appropriate.
+
+ * configure.in (alpha*): Enable Haifa by default.
+ (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
+ * configure: Rebuild.
+
+Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (clean): Remove the stages with their objects here ...
+ (distclean): ... instead of here.
+
+Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cse.c (rtx_cost): Add default case in enumeration switch.
+ * fix-header.c (recognized_macro): Likewise.
+ (recognized_extern): Likewise.
+ (write_rbrac): Likewise.
+ * objc/objc-act.c (encode_aggregate): Likewise.
+ (gen_declarator): Likewise.
+ (gen_declspecs): Likewise.
+
+Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (create_reg_dead_note): Detect and handle another
+ case where we kill more regs after sched than were killed before
+ sched.
+ * sched.c (create_reg_dead_note): Similarly.
+
+Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
+
+ * c-pragma.c: Include flags.h.
+
+Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
+ about system headers.
+ (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
+ and also to resolve symbols in prefix.c.
+
+ * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
+ between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
+ when the definitions in auto-config.h is not visible.
+ (HAVE_BZERO): Likewise.
+ (HAVE_BCMP): Likewise.
+ (HAVE_RINDEX): Likewise.
+ (HAVE_INDEX): Likewise.
+
+Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (emit_move_sequence): Handle a function label source
+ operand.
+
+Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com>
+
+ * c-pragma.c (handle_pragma_token): Generate warning messages
+ about unknown pragmas if warn_unknown_pragmas is set.
+
+ * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
+ line option to set variable: warn_unknown_pragmas.
+
+Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
+
+ * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
+ definition.
+ (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
+
+Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
+ (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
+ generate more fine grained floating point emulation libraries.
+ * config/fp-bit.c: Add protecting #ifdef to all functions so
+ that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
+ then compile all suitable functions.
+ (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
+ underscores to avoid namespace pollution.
+ * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c.
+ (FPBIT): Define.
+ * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c.
+ (FPBIT): Define.
+ (DPBIT): Define.
+
+Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ Jeff Law <law@cygnus.com>
+
+ * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
+ of the declaration.
+ * c-decl.c (finish_decl): Use parentheses around && within ||.
+ * rtl.c: Include stdlib.h.
+ (read_skip_spaces): Add parentheses around assignments used as
+ truth values.
+ (read_rtx): Initialize list_rtx.
+ * cppexp.c (parse_number): Use || when operands are truth values.
+ * alias.c (find_base_value): Add default case.
+ (memrefs_conflict): Likewise.
+ * combine.c (sets_function_arg_p): Likewise.
+ * genemit.c (gen_exp): Likewise.
+ * local-alloc.c (contains_replace_regs): Likewise.
+ * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
+ * fold-const.c (fold_convert): Use "&&" for truth values.
+ (fold): Add default case.
+ * sdbout.c (sdbout_field_types): Fix typo in declaration.
+ (sdbout_one_type): Add default case.
+ * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
+ (some_operand): Add default case.
+ (input_operand): Likewise.
+ (signed_comparison_operator): Likewise.
+ (divmod_operator): Likewise.
+ (alpha_set_memflags_1): Likewise.
+ * reload1.c (reload_cse_simplify_operands): Ensure function
+ always returns a value.
+ * scan-decls.c (scan_decls): Likewise.
+ * c-lex.c (skip_white_space): Fix typo in declaration.
+ * c-typeck.c (comp_target_types): Add parentheses around assignment
+ used as truth value.
+ (print_spelling): Likewise.
+ (constructor_implicit, constructor_result): Remove unused variables.
+ * collect2.c (scan_library): Protect prototype with
+ #ifdef SCAN_LIBRARIES.
+ * emit-rtl.c (find_line_note): Fix typo in declaration.
+ * final.c (asm_insn_count): Protect prototype with
+ #ifdef HAVE_ATTR_length.
+ * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
+ (try_pre_increment_1, try_pre_increment): Likewise.
+ * regclass.c (auto_inc_dec_reg_p): Protect prototype with
+ #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
+ * gcov-io.h (__store_long, __write_long, __read_long): Fix
+ unsigned/signed comparisons.
+ * gcov.c (read_files): Remove unused "first_type" variable.
+ (scan _for_source_files): Initialize s_ptr.
+ (function_summary): Eliminate "%lf" formatting, use %ld for
+ longs.
+ (output_data): Initialize branch_probs and last_line_num.
+ Eliminate "%lf" formatting, use "%ld" for longs.
+
+Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips16.S: New file.
+
+ * libgcc2.c (varargs): Handle mips16.
+
+ * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
+ expression.
+ * stmt.c (expand_end_case): Likewise.
+ * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
+ * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
+ * rs6000.h, sh.h, tahoe.h, v850.h, vax.h: Likewise.
+
+Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
+ the build directory.
+ (libobjc.a): Update dependency list.
+ (libobjc.dll): Likewise. Use libobjc_entry.o from the build
+ directory.
+ (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
+ (objc.mostlyclean): Remove runtime-info.h.
+
+Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
+
+ * tree.c (build_range_type): Allow creation of ranges with no maximum.
+ * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
+ * dwarf2out.c (add_subscript_info): Likewise.
+ * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
+ * sdbout.c (plain_type_1): Likewise.
+ * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
+ Likewise.
+ * fold-const.c (int_const_binop, fold_convert, make_range, fold):
+ Likewise.
+
+Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.c (fatal): Remove declaration.
+
+1997-12-18 Mark Mitchell <mmitchell@usa.net>
+
+ * integrate.c (get_label_from_map): New function.
+ (expand_inline_function): Use it. Initialize the label_map to
+ NULL_RTX instead of gen_label_rtx.
+ (copy_rtx_and_substitute): Use get_label_from_map.
+ * integrate.h (get_label_from_map): New function.
+ (set_label_from_map): New macro.
+ * unroll.c (unroll_loop): Use them.
+ (copy_loop_body): Likewise.
+
+Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
+ (INIT_TARGET_OPTABS): Define.
+ * mips/ecoff.h: Include gofast.h before mips.h.
+ (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
+ * mips/elf64.h: Likewise.
+ * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
+
+Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c: Remove register_exception_table{,_p}.
+
+Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
+
+ * unroll.c (calculate_giv_inc): Handle constant increment found in
+ a MEM with an appropriate REG_EQUAL note.
+
+ * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
+
+ * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
+ frame pointer in the prologue.
+
+Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
+
+ * i386/x-sco5 (CLIB): Deleted.
+ (ALLOCA): Added.
+ * i386/xm-sco5.h (USE_C_ALLOCA): Added.
+
+Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
+
+ * config/m68k/m68k.c (output_function_prologue): Typecast
+ dwarf2out_cfi_label to (char *).
+ * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
+
+Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
+
+ * sparc.md (jump): Don't use the annul bit around an empty loop.
+ Patch from Kevin.Kelly@East.Sun.COM.
+
+Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
+
+ * jump.c (jump_optimize): Don't use the return register as a
+ source1 of a conditional move.
+
+Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
+
+ * sparc.c (DF_MODES): Or the mask not the bit number.
+ (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
+
+Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
+
+ * combine.c (force_to_mode): Return immediately if operand is a
+ CLOBBER.
+
+Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fixincludes (size_t): Add support for Motorola's stdlib.h
+ which fails to provide a definition for size_t.
+ (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
+ (strlen,strspn,strcspn return value): Handle different layout on sysV88.
+ (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
+
+ * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
+ prevent unresolved externals in libio.
+ * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
+
+Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
+
+ * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
+ (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
+ (LIB_SPEC): Updated for glibc 2.
+
+Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
+
+ * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
+ * ginclude/varargs.h: Likewise.
+
+Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
+
+ * frame.h (__register_frame, __register_frame_table,
+ __deregister_frame): New.
+ * frame.c (__register_frame, __register_frame_table,
+ __deregister_frame): New.
+ * frame.c (__deregister_frame_info): Return void *.
+ * frame.h (__deregister_frame_info): Likewise.
+ * collect2.c (__deregister_frame_info): Likewise.
+
+Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
+
+ * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
+
+Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_cpu_name): New variable.
+ (alpha_mlat_string): Likewise.
+ (alpha_memory_latency): Likewise.
+ (override_options): Handle -mmemory-latency.
+ (alpha_adjust_cost): Adjust load cost for latency.
+ * alpha.h (TARGET_OPTIONS): Add memory-latency.
+ (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
+ TARGET_CIX into account.
+ (MEMORY_MOVE_COST): Define in terms of memory_latency.
+ * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
+
+ * alpha.h (ASM_COMMENT_START): New macro.
+
+Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
+
+ * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
+ dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
+
+ * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
+ SUBREG_REG if the word count is unchanged.
+ * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
+ subregs of identical word size for push_reload.
+
+Mon Dec 15 11:41:32 1997 Mark Mitchell <mmitchell@usa.net>
+
+ * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
+ if all we're doing is dealing with -Wreturn-type.
+
+Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
+ Use and 255 instead of zapnot 1, since it schedules better.
+
+Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
+ it as volatile.
+
+Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
+ dependency we delete. Properly update prev for multiple consecutive
+ deletions.
+ (priority): Skip deleted dependence.
+
+Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
+
+ * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
+
+Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * flow.c (flow_analysis): Be consistent with find_basic_blocks in
+ determining when a new basic block starts.
+
+ * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
+
+ * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
+ * pa.md (iorsi3): Add missing args to *_operand calls.
+
+ * except.c (call_get_eh_context): Don't mess with sequences.
+ (emit_eh_context): Include the call in the sequence here.
+
+1997-12-11 Paul Eggert <eggert@twinsun.com>
+
+ * collect2.c (write_c_file_glob): Allocate initial frame object
+ in static storage and pass its address.
+
+Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (call_get_eh_context): Don't take a parm.
+ Put the call at the top of the function.
+ (emit_eh_context): Adjust.
+ (get_eh_context): Replace with former use_eh_context.
+ (get_eh_context_once, get_saved_pc_ref): Remove.
+ (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
+ * except.h: Adjust.
+ * integrate.c (expand_inline_function): Adjust.
+ * toplev.c (rest_of_compilation): Don't call emit_unwinder.
+
+Fri Oct 10 17:58:31 1997 Marc Lehmann <pcg@goof.com>
+
+ * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
+ (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
+
+Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fixincludes (strlen,strspn,strcspn return value): Handle different
+ layout on sysV88.
+ (hypot): Provide a fake for hypot which is broken on
+ m88k-motorola-sysv3.
+
+Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
+
+ * tree.c, tree.h: Change tree_code_type, tree_code_length, and
+ tree_code_name from pointers to arrays.
+ * tree.c: Remove standard_tree_code_* variables, no longer used.
+ * print-tree.c: Remove declaration of tree_code_name.
+
+ * cp/lex.c (init_lex): Update for tree_code_* changes.
+ * objc/objc-act.c (init_objc): Likewise.
+
+ * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
+ changes.
+
+Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
+
+ * config.sub: Add support for BeOS target.
+ * configure.in: Likewise.
+ * ginclude/stdarg.h: Likewise.
+ * ginclude/stddef.h: Likewise.
+ * ginclude/varargs.h: Likewise.
+ * rs6000/beos.h: New file for BeOS.
+ * rs6000/t-beos: Likewise.
+ * rs6000/x-beos: Likewise.
+ * rs6000/xm-beos.h: Likewise.
+ * toplev.c (get_run_time): Just return 0 on BeOS.
+
+Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
+ Toon Moene (toon@moene.indiv.nluug.nl)
+
+ * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
+ old and broken Sun3 assemblers. Newer versions handle large
+ offsets correctly as does the GNU assembler.
+
+Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * objc/objc-act.c (lang_report_error_function): Disable.
+ * objc/objc-parse.y: Include "output.h".
+ (yyerror): Remove redundant decl.
+ (yyprint): Fix prototype.
+ (apply_args_register_offset): Remove redundant decl.
+ (get_file_function_name): Likewise.
+
+Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
+ a new basic block.
+ (find_basic_blocks_1): Likewise.
+
+Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (use_eh_context): Don't copy_rtx a REG.
+ (emit_throw): Lose old unwinder support.
+ (expand_internal_throw): Likewise.
+ * libgcc2.c (struct eh_context): Likewise.
+ (new_eh_context): Likewise.
+ (__get_eh_info): Lose redundant cast.
+ (__get_dynamic_handler_chain): Likewise.
+ (__get_saved_pc): Lose.
+ Lose all old unwinder support code.
+
+Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
+
+ Thread-safe EH support for pthreads, DCE threads and Solaris threads.
+
+ * integrate.c (expand_inline_function): If the inline fn uses eh
+ context, make sure that the current fn has one.
+ * toplev.c (rest_of_compilation): Call emit_eh_context.
+ * except.c (use_eh_context): New fn.
+ (get_eh_context_once): New fn.
+ (call_get_eh_context): New fn.
+ (emit_eh_context): New fn.
+ (get_eh_context): Call either get_eh_context_once or
+ call_get_eh_context, depending on what we have.
+ (get_dynamic_handler_chain): Call get_eh_context_once.
+ * except.h: Prototypes for fns above.
+ * optabs.c (get_eh_context_libfunc): Removed.
+ (init_optabs): Don't initialize it.
+ * expr.h (get_eh_context_libfunc): Removed.
+ * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
+ * config/pa/pa.h (CPP_SPEC): Support for -threads.
+ * config/pa/pa-hpux10.h (LIB_SPEC): Likewise.
+ * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
+ New multilib for -threads.
+ * config/sparc/t-sol2: Added multilibs for -threads and
+ made -pthreads alias to it.
+ * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
+ Added -threads and -pthreads options.
+ * libgcc-thr.h: New file.
+ * libgcc2.c (__get_cpp_eh_context): Removed.
+ (struct cpp_eh_context): Removed.
+ (struct eh_context): Replaced cpp_eh_context with generic language
+ specific pointer.
+ (__get_eh_info): New function.
+ (__throw): Check eh_context::info.
+ (__sjthrow): Likewise.
+ * libgcc2.c: Include libgcc-thr.h.
+ (new_eh_context, __get_eh_context,
+ eh_pthread_initialize, eh_context_initialize, eh_context_static,
+ eh_context_specific, eh_context_free): New functions.
+ (get_eh_context, eh_context_key): New variables.
+ (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
+ get_eh_context to get the context.
+ (longjmp): Move the declaration inside
+ #ifdef DONT_USE_BUILTIN_SETJMP.
+ * frame.c: Include libgcc-thr.h.
+ (object_mutex): Mutex to protect the object list.
+ (find_fde, __register_frame, __register_frame_table,
+ __deregister_frame): Hold the lock while accessing objects.
+ * except.h (get_eh_context): Declare.
+ * except.c (current_function_ehc): Define.
+ (current_function_dhc, current_function_dcc): Removed.
+ (get_eh_context): New function.
+ (get_dynamic_handler_chain): Use get_eh_context.
+ (get_saved_pc_ref): Likewise.
+ (get_dynamic_cleanup_chain): Removed references to
+ current_function_dcc.
+ (save_eh_status, restore_eh_status): Save and restore
+ current_function_ehc instead.
+ * optabs.c (get_eh_context_libfunc): New variable.
+ (init_optabs): Initialize it.
+ * expr.h: Declare get_eh_context_libfunc.
+ * function.h (struct function): Replaced dhc and dcc with ehc.
+ * except.c (get_saved_pc_ref): New functions.
+ (eh_saved_pc_rtx, eh_saved_pc): Deleted.
+ (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
+ of eh_saved_pc.
+ (end_eh_unwinder): Likewise.
+ (init_eh): Remove initialization of eh_saved_pc.
+ * optabs.c (get_saved_pc_libfunc): New variable.
+ (init_optabs): Initialize it.
+ * expr.h: Declare get_saved_pc_libfunc.
+ * except.h (eh_saved_pc_rtx): Deleted.
+ (get_saved_pc_ref): Declared.
+
+ From Scott Snyder <snyder@d0sgif.fnal.gov>:
+ * libgcc2.c (__get_saved_pc): New.
+ (__eh_type, __eh_pc): Deleted.
+ (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
+ (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
+ this fcn.
+
+Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
+
+ * sparc/sol2.h: Use 64 bit multiply and divide functions in
+ Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
+ as 0.
+
+ * rtl.h (global_rtl): New variable, replacing separate variables for
+ commonly used rtl.
+ (const_int_rtx): Now array of rtx_def, not rtx.
+ * emit-rtl.c: Update for new rtl data structures.
+ * genattrtab.c: Define global_rtl.
+
+Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
+ default.
+
+Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
+
+ * crtstuff.c (__do_global_ctors): Fix typo.
+
+Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
+ to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
+
+Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.h (FUNCTION_ARG_PADDING): Define.
+ * rs6000.c (function_arg_padding): New function.
+
+Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * m68k.c: Include tree.h only once.
+
+Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
+
+Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Partially cleaned up prototyping code from HJ.
+ * tree.h: Add many prototypes.
+ * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
+ All references changed.
+ * rtl.h: Protect from multiple inclusions. Add many prototypes.
+
+Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
+
+ * libgcc2.c (string.h): Hoist inclusion to occur before first use of
+ string functions like strlen.
+
+Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * configure.in: Check for functions getrlimit and setrlimit.
+ * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
+ to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
+
+Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
+
+ * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
+
+Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (REG_RA, alpha_return_addr, output_epilog):
+ Fix merge problems.
+
+ * alpha.c (override_options): Don't know about scheduling for EV6.
+ * alpha.md (ev5 function units): Don't overload as ev6.
+
+ * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
+ * alpha.md (define_attr type): Add mvi.
+ (ev5_e0): Define sceduling parameters for it.
+ (TARGET_MAX insns): Type is mvi not shift.
+
+Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
+
+Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * cstamp-h, auto-config.h: Delete.
+
+Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
+
+ * cccp.c: Fix typo brought over in merge.
+
+ * Merge in changes from gcc-2.8.
+
+Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
+
+ * m68k.c: Include tree.h for dwarf2out_cfi_label.
+
+ * gcc.c (process_command): Do not take address of function fatal when
+ calling lang_specific_driver.
+
+Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
+ doesn't work with it yet, so set it to 0.
+ * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
+
+Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
+
+ * cse.c (cse_insn): Check for invalid entries when taking references.
+
+Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
+ (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
+ * toplev.c (rest_of_compilation): Pass it. Remove code to
+ save / clear / restore flag_unroll_{,all_}loops.
+
+Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
+
+ * i386.c (notice_update_cc): Remove bogus pentium GCC code.
+
+Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
+
+Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (get_dynamic_handler_chain): Only make the call once per
+ function.
+
+ * except.c (expand_end_all_catch): Fix for sjlj exceptions.
+
+Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (final_prescan_insn): Use local label prefix
+ when emitting .uses pseudo-ops.
+
+Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
+ * except.c: Lose outer_context_label_stack.
+ (expand_eh_region_end): Rethrow from outer_context here.
+ (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
+ (expand_internal_throw): Take no args.
+ (expand_internal_throw_indirect): Lose.
+ (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
+ (expand_start_all_catch): Start a rethrow region.
+ (expand_end_all_catch): End it.
+ (expand_rethrow): New fn.
+ * except.h: Reflect above changes.
+ * flow.c: Revert change of Nov 27.
+
+Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
+
+ * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
+
+Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (expand_fixup_region_end): New fn.
+ (expand_fixup_region_start): Likewise.
+ (expand_eh_region_start_tree): Store cleanup into finalization here.
+ * stmt.c (expand_cleanups): Use them to protect fixups.
+
+Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
+
+ * mips/mips.md (muldi3_r4000): Broaden the output template
+ and attribute assignments to handle three operand dmult;
+ rename to muldi3_internal2.
+ (muldi3): Call the new muldi3_internal2 for R4000, and
+ any GENERATE_MULT3 chip.
+
+Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
+
+Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
+
+ * unroll.c (find_splittable_givs): Remove last change. Handle givs
+ with a dest_reg that was created by loop.
+
+Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
+
+ * rs6000/aix41.h (ASM_CPU_SPEC): Define.
+
+Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Fix NCR entries.
+
+Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
+ nested exceptions correctly.
+
+ * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
+ that was created by loop.
+
+Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
+
+ * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
+
+Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
+ (print_operand): Use SMALL_DATA_REG for the register involved in
+ small data relocations.
+ (print_operand_address): Likewise.
+
+ * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
+ -dynamic linker is not used.
+
+ * rs6000.md (call insns): For local calls, use @local suffix under
+ System V. Don't use @plt under Solaris.
+
+ * rs6000.c (output_function_profiler): Put label address in r0, and
+ store LR in 4(sp) for System V/eabi.
+
+ * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
+ byte boundary, and maintain stack backchain.
+
+Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
+
+ * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
+ fix_truncsfdi2): Change *.
+
+Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * toplev.c (main): Complain about -gdwarfn.
+
+Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarfout.c (output_type): If finalizing, write out nested types
+ of types we've already written.
+
+Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
+
+ (patches originally from Geoffrey Keating)
+ * rs6000.c (function_arg): Excess floating point arguments don't
+ go into GPR registers after exhausting FP registers under the
+ System V.4 ABI.
+ (function_arg_partial_nregs): Likewise.
+
+ * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
+ suffix to calls.
+
+Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * integrate.c (output_inline_function): Just unset DECL_INLINE.
+
+Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
+
+ * dwarf2out.c (outout_call_frame_info): Ensure that the info has
+ proper alignment.
+
+ * libgcc2.c (__throw): Initialize HANDLER.
+
+Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
+
+ * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
+ fix_truncsfdi2): Change *X to ?*X.
+
+Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
+
+ * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
+
+Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
+
+ * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
+
+Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>
+
+ * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
+
+Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
+ * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
+ * expr.h: Likewise.
+
+Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
+
+ * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
+ * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
+ gas and not using the new HP assembler.
+
+Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
+ (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
+
+Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
+ TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
+ definition.
+
+Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+
+ * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
+
+Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.h: Add outer_context_label_stack.
+ * except.c: Likewise.
+ (expand_start_all_catch): Push the outer_context for the try block
+ onto outer_context_label_stack.
+ (expand_end_all_catch): Use it and pop it.
+
+Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
+
+ * i386/sco5.h (HAVE_ATEXIT): Revert last change.
+
+Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
+
+Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
+
+ * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
+ to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
+
+Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
+ * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
+ __builtin_delete, and __builtin_vec_delete.
+
+ * except.c (output_exception_table): Don't bother with
+ __EXCEPTION_END__.
+
+Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
+ is an in/out operand.
+ (zero extended variants of stwm/stwm patterns): Similarly.
+
+ * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
+
+Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
+ Use assemble_name.
+ (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
+ (output_call_frame_info): Emit a \n after using it.
+
+Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
+
+ * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
+
+Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
+
+ * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
+ (ASM_OUTPUT_DWARF_VALUE4): New macro.
+ (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
+ defined.
+ (output_call_frame_info): Do not output forward label differences
+ if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
+ * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
+
+Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (attribute "type"): Add nil.
+ (movsi_ie): y/y alternative is type nil.
+ (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
+ alternatives.
+ (movsf_ie+1): Delete.
+
+Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
+
+ * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
+ large_int, emit two insns instead of one splitable insn.
+ * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
+ from cfa_temp_value, use cfa_offset. Add assert checking that
+ cfa_reg is SP.
+
+Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
+
+ * cccp.c (deps_output): Properly quote file names for make.
+
+Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
+
+ * t-h8300 (MULTILIB_EXCEPTIONS): Define.
+
+Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
+
+ * i386/sco5.h (HAVE_ATEXIT): Delete definition.
+
+Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditional
+ return.
+ (cse_end_of_basic_block): Similarly.
+
+Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
+
+ * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
+ (SELECT_RTX_SECTION): Define.
+ (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
+
+Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (compare, compare-lean): Define $stage for each
+ shell command.
+ (gnucompare, gnucompare-lean): Likewise.
+
+Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
+
+ * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
+
+ * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
+ to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
+
+Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
+
+ * dwarfout.c (byte_size_attribute): Add local var upper_bound
+ and add case to handle STRING_TYPE.
+ * dwarfout.c (output_string_type_die): Fix code to generate
+ correct string length attribute for fixed length strings.
+ Still needs support for varying length strings.
+
+Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (get_run_time): Do something sensible for cygwin32.
+
+Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (expand_builtin_setjmp): Set
+ current_function_has_nonlocal_label.
+ * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
+ call-saved registers across calls.
+
+ * alpha.md (exception_receiver): Remove.
+ (nonlocal_goto_receiver_osf): New.
+ (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
+ (nonlocal_goto_receiver): New, select _osf or _vms.
+
+ * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
+ keep them from being propagated to the object file.
+ (alpha_write_linkage): Likewise.
+ * alpha.md (call_vms): Likewise.
+ (call_value_vms): Likewise.
+ (unnamed osf call insns): Likewise.
+
+ * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
+ (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+
+ * alpha.c (call_operand): Any reg is valid for WinNT.
+ * alpha.md (call_nt, call_value_nt): Don't force address into $27.
+ (anon nt calls): Add 'R' alternative.
+ * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
+ INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
+
+Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
+
+ * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
+
+ * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
+ * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
+ * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
+
+Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
+
+ * reload1.c (new_spill_reg): Improve fixed or forbidden register
+ spill error message.
+
+Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
+ use varargs.h. Wrap header with <>, not "".
+
+Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
+
+ * integrate.c (save_for_inline_copying): Add return value from
+ savealloc.
+
+Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
+
+ * fixincludes: Be a little more restrictive on what we will
+ substitute to replace definitions of MAXINT for HPUX.
+
+Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
+
+ * dbxout.c (dbxout_symbol_location): Don't assume that variables
+ whose address is the stack or argument pointers are indirect
+ pointers.
+
+1997-11-13 Paul Eggert <eggert@twinsun.com>
+
+ * cccp.c, cpplib.c (compare_defs):
+ Don't complain about arg name respellings unless pedantic.
+ * cpplib.c (compare_defs): Accept pfile as new arg.
+ All callers changed.
+
+Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * fold-const.c (fold_truthop): Fix bug in last change.
+
+1997-11-13 Paul Eggert <eggert@twinsun.com>
+
+ Fix some confusion with IEEE minus zero.
+
+ * real.h (REAL_VALUES_IDENTICAL): New macro.
+
+ * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
+ * fold-const.c (operand_equal_p): Don't consider -0.0 to be
+ identical to 0.0.
+ * tree.c (simple_cst_equal): Don't consider -0.0 to have the
+ same tree structure as 0.0.
+
+ * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
+ macro instead of doing it by hand.
+
+Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
+
+ * v850/lib1funcs.asm: Minor whitespace changes.
+ * v850.c: Fix minor formatting problems in many places.
+ (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
+
+Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
+
+ * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
+ xplus1 when xplus0 is not a register.
+
+Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (find_basic_blocks): During marking phase, if we encounter
+ an insn with a REG_LABEL note, make the target block live and
+ create an edge from the insn to the target block. Do not make
+ edges from all blocks to the target block.
+
+ * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
+
+ * confiugre.in: Tweak NCR entries.
+ * configure: Rebuilt.
+
+Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
+ pick apart floating point values, instead of using CONST_DOUBLE_LOW
+ and CONST_DOUBLE_HIGH.
+
+ * rs6000.md (define_splits for DF constants): Use the appropriate
+ REAL_VALUE_* interface to pick apart DF floating point constants in
+ a machine independent fashion.
+
+Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * fold-const.c (fold_truthop): When changing a one-bit comparison
+ against zero into a comparison against mask, do a proper sign
+ extension.
+
+Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
+
+ * except.c: Do not include "assert.h".
+ (save_eh_status): Turn asserts into conditional aborts.
+ (restore_eh_status, scan_region): Likewise.
+ * dwarfout.c: Do not include "assert.h".
+ (bit_offset_attribute): Turn asserts into conditional aborts.
+ (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
+ (output_inlined_structure_type_die): Likewise.
+ (output_inlined_union_type_die): Likewise.
+ (output_tagged_type_instantiation): Likewise.
+ (dwarfout_file_scope_decl): Likewise.
+ * dwarf2out.c: Do not include "assert.h"
+ (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
+ (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
+ (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
+ (add_bit_size_attribute, scope_die_for): Likewise.
+ (output_pending_types_for_scope): Likewise.
+ (get_inlined_enumeration_type_die): Likewise.
+ (get_inlined_structure_type_die): Likewise.
+ (get_inlined_union_type_die, gen_subprogram_die): Likewise.
+ (gen_tagged_type_instantiation_die): Likewise.
+
+ * flow.c (find_basic_blocks): Refine further to get a more correct
+ cfg, especially in the presense of exception handling, computed
+ gotos, and other non-trivial cases. Call abort if an inaccuracy
+ is detected in the cfg.
+
+Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
+
+ * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
+ (skip_white_space): Use whitespace_cr.
+ (check_newline): Handle whitespace more consistently.
+
+Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
+
+ * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
+ * i386/xm-cygwin32.h (POSIX): Define.
+
+Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
+ is available elsewhere.
+
+Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
+ what the instruction can handle.
+
+Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * stmt.c (expand_decl_cleanup_no_eh): New fn.
+
+ * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
+
+Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
+
+ * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
+ (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
+
+Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
+ swap instruction order.
+
+Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc.svr4 (__STDC__): Add another case.
+
+Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
+ addresses in the epilogue delay slot.
+
+Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
+
+ * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
+ in generated `specs' file.
+
+Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
+
+ * flags.h (flag_rerun_loop_opt): Declare.
+ * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
+ * toplev.c (flag_rerum_loop_opt): Delete static.
+
+Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ Bring over from FSF:
+
+ Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * va-sh.h (__va_arg_sh1): Define.
+ (va_arg): Use it.
+ SH3E doesn't use any integer registers for subsequent arguments
+ once a non-float value was passed in the stack.
+ * sh.c (machine_dependent_reorg): If optimizing, put explicit
+ alignment in front label for ADDR_DIFF_VEC.
+ * sh.h (PASS_IN_REG_P): Fix SH3E case.
+ (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
+
+ Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
+ svr4.h.
+
+ Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
+ put an use_sfunc_addr before each sfunc.
+ * sh.md (use_sfunc_addr, dummy_jump): New insns.
+ (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
+
+ Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
+
+Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
+ linked once FDEs.
+
+Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
+
+ * alias.c (find_base_value): Only return the known base value for
+ pseudo registers.
+
+Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
+
+ * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
+ * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
+ to pattern.
+ (prologue_get_pc_and_set_got): New pattern.
+
+Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
+
+ * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
+ for SUBREG, just fall through.
+
+ * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
+
+ * alpha.md (attr trap): Make TRAP_YES nonzero for sanity's sake.
+
+Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
+
+ * fixincludes: Fix "hypot" prototype in NeXT math.h.
+
+ * Makefile.in (USE_ALLOCA): Always include alloca.o.
+ (USE_HOST_ALLOCA): Likewise.
+
+ * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
+ and LABEL_REFS fields.
+ * rtl.h (LABEL_REFS): Update.
+
+Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
+
+ * combine.c (try_combine): When setting elim_i2, check whether newi2pat
+ sets i2dest. When calling distribute_notes for i3dest_killed, pass
+ elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
+ sets i1dest.
+
+ * mips.md (insv, extzv, extv): Add change_address call.
+ (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
+
+ * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
+
+ * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
+
+ * mips.c (mips_expand_epilogue): Emit blockage insn before call to
+ save_restore_insns if no FP and GP will be restored.
+
+ * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
+ Convert CCmode to word_mode before calling GET_MODE_SIZE.
+
+ * acconfig.h (HAVE_INTTYPES_H): Undef.
+ * configure.in (inttypes.h): Check for conflicts between sys/types.h
+ and inttypes.h, and verify that intmax_t is defined.
+ * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
+ * config/mips/x-iris3: Likewise.
+
+Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
+
+ * alias.c (find_base_value): When copying arguments, return the
+ tentative value for a hard register.
+
+Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
+ (yylex): Record wide strings using target endianness, not host.
+
+Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.h (ASM_OUTPUT_BSS): Delete.
+ (ASM_OUTPUT_ALIGNED_BSS): New macro.
+ * mn10300.h (ASM_OUTPUT_BSS): Delete.
+ (ASM_OUTPUT_ALIGNED_BSS): New macro.
+ * v850.h (ASM_OUTPUT_BSS): Delete.
+ (ASM_OUTPUT_ALIGNED_BSS): New macro.
+
+Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
+
+Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (sco5): Use cpio to install header files.
+
+Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
+ 14 char length.
+ * configure: Rebuild.
+
+Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
+
+ * i386/sco5.h: Enable -gstabs once again.
+
+Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
+
+ * arm.c (output_move_double): Allocate 3 entries in otherops array.
+
+Sat Nov 1 21:43:00 1997 Mike Stump <mrs@wrs.com>
+
+ * except.c (expand_eh_region_start_for_decl): Emit EH_REGION_BEG
+ notes for sjlj exceptions too.
+ (expand_eh_region_end): Similarly for EH_REGION_END notes.
+ (exception_optimize): Optimize EH regions for sjlj exceptions too.
+ * final.c (final_scan_insn): Don't output labels for EH REGION
+ notes if doing sjlj exceptions.
+
+Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
+
+ * alias.c (init_alias_analysis): Handle -fno-alias-check when
+ optimizing correctly.
+
+ * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
+ or set current_function_calls_setjmp anymore.
+
+ * flow.c (find_basic_blocks): If we delete the label for an
+ exception handler, remove it from the EH label list and remove
+ the EH_BEGIN/EH_END notes for that EH region.
+
+Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
+
+ * flow.c (find_basic_blocks): Generate correct flow control
+ information when exception handling notes are present.
+
+Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
+
+ * dwarf2out.c (output_call_frame_info): Fix length argument
+ to ASM_OUTPUT_ASCII.
+ (output_die, output_pubnames, output_line_info): Likewise.
+
+Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+ * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
+ output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
+ flag_debug_asm is on.
+ (output_die, output_pubnames, output_line_info): Likewise.
+
+ * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
+ and static_chain_rtx into the potential base values array if
+ they are registers.
+
+ * alias.c (new_reg_base_value): New array of potential base values.
+ (unique_id): Now file scoped static.
+ (find_base_value, case REG): Return the value in reg_base_value
+ array for the REG if it exists. Else, return the value from
+ new_reg_base_value if copying args and REG is a hard register.
+ (find_base_value, case PLUS): If either operand of the PLUS is
+ a REG, try to get its base value. Handle base + index and
+ index + base.
+ (record_set): Use new_reg_base_value instead of reg_base_value.
+ (init_alias_analysis): Allocate space for new_reg_base_value too.
+ Rework code to iterate over the insns propagating base value
+ information until nothing changes.
+
+ * global.c (global_alloc): Free the conflict matrix after
+ reload has finished.
+
+Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * libgcc2.c (L_eh): Define __eh_pc.
+ Replace __eh_type with generic pointer __eh_info.
+
+Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * expr.c (expand_increment): When enqueing a postincrement for a MEM,
+ use copy_to_reg if address is not a general_operand.
+
+Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * profile.c (output_func_start_profiler): Clear flag_inline_functions
+ for the duration of the call to rest_of_compilation.
+
+Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
+ Set extra_parts.
+ (sparc*-*-*): Recognize --with-cpu=v9.
+ * sparc/elf.h: New file.
+ * sparc/t-elf: New file.
+
+Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.c (const_8bit_operand): New function.
+ (mask_ok_for_mem_btst): New function.
+ * mn10300.md (btst patterns with mem operands): Use new functions
+ to avoid creating btst instructions with invalid operands.
+
+Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
+ are running on PowerPC Linux.
+
+Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
+ if not previously defined.
+
+Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
+
+ * function.c (assign_parms): Correct mode of stack_parm if
+ entry_parm underwent a mode conversion.
+
+1997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
+
+ * global.c (global_alloc): Use xmalloc instead of alloca for
+ CONFLICTS, since max_allocno * allocno_row_words alone can be more
+ than 2.5Mb sometimes.
+
+Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
+
+ * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
+ DEST for the spill, adjust mode of SRC to compensate.
+
+Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
+ since any_memory_operand() allows pseudos during reload.
+ (reload_inhi, reload_outqi, reload_outhi): Likewise.
+
+Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
+
+ * m68k.md (btst patterns): Add 5200 support.
+
+Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
+ optimizations, look inside dividend to determine if the expression
+ can be simplified by using EXACT_DIV_EXPR.
+
+Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ From Brendan:
+ * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
+
+Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (summarize_insn [SUBREG]): Propagate SET.
+
+Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
+ on a CLOBBER.
+
+Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (movqi, movhi): Make sure new insns created during reload
+ won't need reloading themselves.
+ (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
+
+Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
+
+Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
+ Patch from Klaus Kaempf <kkaempf@progis.de>.
+
+Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
+
+ * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
+ to an element in a constant string.
+
+Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
+ bit PC-relative offset. The exception range table pointer is now in
+ the CIE.
+ * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
+ (count_fdes, add_fdes, get_cie): Adjust.
+ (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
+
+ From H.J. Lu:
+ * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
+
+Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
+
+ * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
+ like stack_pointer_rtx.
+
+Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
+ targets using "$@" to provide support for similar but not identical
+ targets without having to duplicate code.
+ (bootstrap4): New goal.
+
+ * Makefile.in (compare, compare-lean, compare3): Combined to one
+ ruleset determining actions to be performed via $@.
+ (compare4, compare4-lean): New targets.
+ (gnucompare, gnucompare3): Combined to one ruleset determining
+ actions to be performed via $@. Also, note which files failed
+ the comparison test in .bad_compare.
+ (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
+
+Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
+ if the dividend is a multiple of the divisor.
+
+Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
+
+ * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
+ and POS_DEC.
+
+ * alias.c (true_dependence): Fix typo.
+
+ * toplev.c (flag_rerun_loop_opt): New variable.
+ (f_options): Handle -frerun-loop-opt.
+ (rest_of_compilation): If -frerun-loop-opt, then run the loop
+ optimizer twice.
+ (main): Enable -frerun-loop-opt by default for -O2 or greater.
+
+ * loop.c (simplify_giv_expr): Adding two invariants results
+ in an invariant.
+
+Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (get_inner_reference): Remove the array bias after
+ converting the index to Pmode.
+
+Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
+ (TARGET_MULT_BUG): Define.
+ (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
+ * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
+
+Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.c (indirect_memory_operand): Delete unused function.
+ * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
+ * mn10200.md (bset, bclr insns): Handle output in a reg too.
+
+Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
+ the callee's ldgp, we must do it ourselves, and we use the jsr tag
+ for more than scheduling.
+
+Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
+
+Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.c (symbolic_operand, legitimize_address): New functions.
+ * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
+ (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
+
+Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
+ for FILENAME.
+
+Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (flag_exceptions): Default value is 2.
+ (compile_file): If flag_exceptions still has the value 2, then
+ set it to 0.
+
+ * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
+ (rs6000_save_machine_status): Save pic_offset_table_rtx.
+ (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
+
+ * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
+ are shared.
+
+ * rs6000.md (*movsi_got_internal_mem): New pattern.
+ (*movsi_got_internal_mem splitter): New define_split.
+
+Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
+
+ * obstack.h (obstack_empty_p): Fix spurious space after backslash.
+
+Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
+
+ * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
+ only need to save LR.
+
+Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.md (movqi, movhi): Avoid using address registers as
+ destinations unless absolutely necessary.
+
+ * mn10200.c (expand_prologue): Fix typo.
+
+ * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
+ addresses.
+ * mn10200.md (neghi2): Provide an alternative which works if
+ the input and output register are the same.
+
+ * mn10300.c (print_operand): Handle 'S'.
+ * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
+ shift amount in last alternative.
+
+ * mn10300.c (expand_epilogue): Rework to handle register restores
+ in "ret" and "retf" instructions correctly.
+
+Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
+
+ * expmed.c (extract_bit_field): Don't make flag_force_mem disable
+ extzv for memory operands.
+
+ * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
+ redundant conditional moves to single operand.
+
+Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h: Move define of __v850__ from CPP_PREDEFINES
+ to CPP_SPEC.
+
+ * xm-v850.h: Use __v850 rather than __v850__ to
+ identify v850 port.
+
+Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
+
+ * mips/mips.c (compute_frame_size): Not a leaf function if
+ profile_flag set.
+
+Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
+
+ * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
+
+Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
+
+ * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
+ (DEFAULT_ARCH32_P): New macro.
+ (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
+ (enum cmodel): Declare.
+ (sparc_cmodel_string,sparc_cmodel): Declare.
+ (SPARC_DEFAULT_CMODEL): Provide default.
+ (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
+ (TARGET_FULLANY): Deleted.
+ (TARGET_CM_MEDMID): New macro.
+ (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
+ (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
+ (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
+ (CPP_SPEC): Rewrite.
+ (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
+ (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
+ (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
+ (ASM_SPEC): Add %(asm_arch).
+ (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
+ Rename asm_default to asm_cpu_default.
+ Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
+ cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
+ (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
+ ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
+ (MASK_INT64,MASK_LONG64): Delete.
+ (MASK_ARCH64): Renamed to MASK_64BIT.
+ (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
+ (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
+ (TARGET_SWITCHES): Always provide 64 bit options.
+ (ARCH64_SWITCHES): Delete.
+ (TARGET_OPTIONS): New option -mcmodel=.
+ (INT_TYPE_SIZE): Always 32.
+ (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
+ (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
+ (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
+ (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
+ * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
+ CPP_SPEC.
+ (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
+ * sparc/linux.h: Likewise.
+ * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
+ (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
+ (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
+ (SPARC_DEFAULT_CMODEL): Define.
+ (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
+ (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
+ (LONG_DOUBLE_TYPE_SIZE): Define.
+ (ASM_SPEC): Add %(asm_arch).
+ * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
+ (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
+ (TARGET_CPU_DEFAULT): Add ultrasparc case.
+ * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
+ (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
+ (SPARC_DEFAULT_CMODEL): Define.
+ * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
+ (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
+ MASK_LONG64, MASK_MEDANY.
+ (SPARC_DEFAULT_CMODEL): Define.
+ (CPP_PREDEFINES): Delete.
+ (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
+ (ASM_SPEC): Add %(asm_arch).
+ (LONG_DOUBLE_TYPE_SIZE): Define.
+ (DWARF2_DEBUGGING_INFO): Define.
+ * sparc/splet.h (CPP_SPEC): Delete.
+ * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
+ (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
+ (BLOCK_PROFILER): Likewise.
+ * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
+ (sparc_override_options): Handle code model selection.
+ (sparc_init_expanders): Renamed from sparc64_init_expanders.
+ * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
+ TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
+ (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
+ (sethi_di_fullany): Delete.
+
+Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
+ Jeff Law <law@cygnus.com>
+ Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
+ (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
+ (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
+ (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
+ * alpha/alpha.md (arg_home): Likewise.
+
+ * alpha/alpha.c (vmskrunch): Delete.
+ * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
+ * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
+ truncate to 64 characters.
+
+ * make-l2.com: Support openVMS/Alpha.
+
+ * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
+
+Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * longlong.h (count_leading_zeros): Add missing casts to USItype.
+
+Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
+
+ * i386/bsd386.h (ASM_COMMENT_START): Define.
+
+Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.c (restore_tree_status): Also free up temporary storage
+ when we finish a toplevel function.
+ (dump_tree_statistics): Print stats for backend obstacks.
+
+Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * expr.c (use_group_regs): Don't call use_reg for MEMs.
+
+Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * libgcc2.c (__throw): Don't copy the return address.
+ * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
+
+ * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
+ * toplev.c (main): Initialize exceptions_via_longjmp.
+
+ * tree.c: Add extra_inline_obstacks.
+ (save_tree_status): Use it.
+ (restore_tree_status): If this is a toplevel inline obstack and we
+ didn't want to save anything on it, recycle it.
+ (print_inline_obstack_statistics): New fn.
+ * function.c (pop_function_context_from): Pass context to
+ restore_tree_status.
+ * obstack.h (obstack_empty_p): New macro.
+
+Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
+
+ * i386/freebsd.h (ASM_COMMENT_START): Fix.
+
+Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
+
+ * v850.c (ep_memory_offset): New function.
+ (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
+
+ * v850.h (CONST_OK_FOR_*): Add and correct comments.
+ (CONSTANT_ADDRESS_P): Add comment.
+ (EXTRA_CONSTRAINT): Define 'U'.
+ * v850.md: Add comments on bit field instructions.
+ (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
+ (lshrsi3): Use N not J constraint.
+
+ * v850.md (v850_tst1+1): New define_split for tst1 instruction.
+
+ * v850.c (reg_or_0_operand): Call register_operand.
+ (reg_or_int5_operand): Likewise.
+ * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
+ (TARGET_SWITCHES): Add "big-switch".
+ (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
+ ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
+ (CASE_DROPS_THROUGH): Comment out.
+ (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
+ * v850.md (cmpsi): Delete compare mode.
+ (casesi): New pattern.
+
+ * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
+ * v850.md (ashlsi3): Use SImode not QImode for shift count.
+ (lshrsi3): Likewise.
+
+ * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
+ unreachable switch statement after 'b' support. Remove "b" from
+ strings for 'b' support.
+ * v850.md (branch_normal, branch_invert): Change %b to b%b.
+
+Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
+ empty line if @inhibit_libc@ is empty.
+
+Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
+
+ * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
+ (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
+ (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
+ (DWARF2_UNWIND_INFO): Let this track object file format.
+ (EXTRA_SECTIONS): Add in_eh.
+ (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
+ (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
+
+Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
+
+ * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
+ * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
+ TARGET_MEDANY.
+ * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
+ (output_double_int): Output DI mode values correctly when
+ HOST_BITS_PER_WIDE_INT is 64.
+ (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
+ fmovd so it works if a quad float ends up in one of the upper 32
+ float regs.
+ * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
+ necessary for PIC support on sparc64.
+
+Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
+ * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
+ (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
+ (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
+ (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
+ (SPARC_FP_ARG_FIRST): New macro.
+ (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
+ (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
+ (NPARM_REGS): There are 32 fp argument registers now.
+ (FUNCTION_ARG_REGNO_P): Likewise.
+ (FIRST_PARM_OFFSET): Update to new v9 abi.
+ (REG_PARM_STACK_SPACE): Define for arch64.
+ (enum sparc_arg_class): Delete.
+ (sparc_arg_count,sparc_n_named_args): Delete.
+ (struct sparc_args): Redefine and use for arch32 as well as arch64.
+ (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
+ (FUNCTION_ARG_ADVANCE): Rewrite.
+ (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
+ (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
+ (FUNCTION_ARG_CALLEE_COPIES): Delete.
+ (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
+ (STRICT_ARGUMENT_NAMING): Define.
+ (doublemove_string): Declare.
+ * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
+ (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
+ (doublemove_string): New function.
+ (output_move_quad): Clean up some of the arch64 support.
+ (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
+ Don't add 8 bytes of reserved space if arch64.
+ (sparc_builtin_saveregs): Combine arch32/arch64 versions.
+ (init_cumulative_args): New function.
+ (function_arg_slotno): New static function.
+ (function_arg,function_arg_partial_nregs): New functions.
+ (function_arg_{pass_by_reference,advance}): New functions.
+ (function_arg_padding): New function.
+ * ginclude/va-sparc.h: Rewrite v9 support.
+
+Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
+
+ * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
+ for hard regs to determine base and index registers.
+
+ * reload.c (debug_reload_to_stream): New function. Specify stream
+ into which to write debug info.
+ (debug_reload): Modify to call debug_reload_to_stream with stderr.
+
+Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (can_combine_p): Don't combine with an asm whose
+ output is a hard register.
+
+Thu Oct 16 15:43:26 1997 Mike Stump <mrs@wrs.com>
+
+ * c-decl.c (start_struct): Ensure that structs with forward
+ declarations are in fact packed when -fpack-struct is given.
+
+ * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
+ we are packing a structure. This allows a structure with only
+ bytes to be aligned on a byte boundary and have no padding on a
+ m68k.
+
+Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
+
+Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_return_addr_rtx): New variable.
+ (alpha_save_machine_status): New; save it.
+ (alpha_restore_machine_status): New; restore it.
+ (alpha_init_expanders): New; clear it.
+ (alpha_return_addr): New; set it.
+ (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
+ is overly conservative, so search the insns explicitly.
+ (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
+ (alpha_sa_size [VMS && !VMS]): Likewise.
+ * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
+ (INIT_EXPANDERS): New definition.
+
+ * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
+ (output_prolog [!VMS]): Use them.
+
+ * alpha.c (output_prolog [!VMS]): Move gp detection to ...
+ (alpha_does_function_need_gp): ... a new function. Refine the
+ CALL_INSN test to just TYPE_JSR.
+ * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
+
+Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * pa.c (move_operand): Respect -mdisable-indexing.
+ * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
+
+Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
+ PPC601.
+ (umulsidi3,umulsi3_highpart): Likewise.
+ (smulsi3_highpart_no_mq): Add !TARGET_POWER.
+
+Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (final_prescan_insn): Gut, remove and transform to ...
+ (alpha_handle_trap_shadows): ... a new function. Handle the entire
+ function in one go. Emit RTL for trapb, instead of printf directly.
+ (alpha_reorg): New function. Call alpha_handle_trap_shadows.
+ (trap_pending): Kill global variable.
+ (output_epilog): Don't call final_prescan_insn.
+ (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
+ * alpha.h (FINAL_PRESCAN_INSN): Remove.
+ (MACHINE_DEPENDENT_REORG): Define.
+ * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
+ (trapb): New insn.
+
+Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
+
+ Tune Haifa scheduler for Alpha:
+ * alpha.h (ISSUE_RATE): Define.
+ * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
+ EV4 adjustments to EV5.
+ * alpha.md: Remove all scaling from function unit delays. Rework
+ EV5 function units to match the CPU.
+ (umuldi3_highpart): EV5 added the IMULH insn class.
+
+Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (following_call): Fail if the CALL_INSN is an indirect
+ call.
+
+Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
+
+ * cplus-dem.c (demangle_signature): Don't look for return types on
+ constructors. Handle member template constructors.
+
+Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
+ * tree.h: Declare them.
+
+Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ * configure.in: Handle --with-newlib.
+ * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
+
+ * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
+
+Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
+
+ * config/ptx4.h: Fix typo.
+
+Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * aclocal.m4: Substitute INSTALL.
+ * configure: Re-built.
+
+Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
+
+ * integrate.c (save_for_inline_copying): Avoid undefined pointer
+ operations.
+ (expand_inline_function): Likewise.
+
+ * dwarf2out.c (output_call_frame_info): Reinstate last change
+ using flag_debug_asm check instead of flag_verbose_asm.
+
+Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
+
+ * dwarf2out.c (output_call_frame_info): Remove last change.
+
+1997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * frame.c (__frame_state_for): Execute the FDE insns until the
+ current pc value is strictly bigger than the target pc value.
+
+Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * regclass.c (init_reg_modes): If we can't find a mode for the
+ register, use the previous one.
+
+Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (print_block_visualization): Call fprintf directly,
+ don't sprintf through an alloca'ed buffer.
+
+Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
+
+ * reload.c (decompose): Always initialize val.base.
+
+Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
+
+ * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
+ instead of aborting.
+ * dwarf2out.c (output_call_frame_info): Call app_enable and
+ app_disable to let GNU as accept the generated comments.
+
+Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
+
+ * tree.h (get_file_function_name): Add declaration.
+ * dwarf2out.c (output_call_frame_info): No need to cast
+ get_file_function_name call anymore.
+ * profile.c (toplevel): Remove get_file_function_name
+ declaration.
+ * c-lang.c (finish_file): Likewise.
+
+Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
+
+ * Makefile.in (program_transform_name): Let autoconf substitute
+ the correct value.
+
+Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (schedule_block): If the first real insn in a
+ block has any special notes attached to it, remove them.
+
+Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
+
+Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
+
+ * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
+
+Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (check-g77): New test target.
+ (CHECK-TARGETS): Add check-g77.
+
+Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * toplev.c (rest_of_compilation): Defer all non-nested inlines.
+
+Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
+
+ * flow.c (print_rtl_with_bb): Cast alloca return value for
+ in_bb_p.
+
+Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
+
+ * i386.h (RETURN_ADDR_RTX): New definition that works for
+ __builtin_return_address(0) and -fomit-frame-pointer.
+
+Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
+
+ Bring over from FSF.
+ Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * mips.c (function_arg): Handle passing a struct
+ containing a double in a DFmode register without the PARALLEL.
+
+Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
+
+ * pexecute.c: Use spawn if __CYGWIN32__.
+
+ * pexecute.c: Include "config.h" first, as per autoconf manual
+ (from Paul Eggert <eggert@twinsun.com>).
+
+Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
+
+ * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
+ optimization for f/expr.o and f/stb.o.
+
+Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (this_insn_cc0_mode): Initialize.
+
+Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
+
+ * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
+
+ * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
+
+Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
+ that pair will dual-issue on the 21164 and plus+beq won't.
+ (bne): Likewise for cmpeq+beq.
+
+Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
+
+ * except.c (find_exception_handler_labels): Correct argument to free.
+
+Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
+
+ * except.c (find_exception_handler_labels): Free LABELS when we're
+ done.
+
+Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * flow.c (find_basic_blocks): Mark calls as potentially jumping
+ to the EH labels.
+
+Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Substitute for "install" too.
+ * configure: Rebuilt.
+
+Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
+
+ * Makefile.in (bootstrap-lean, compare-lean): New targets.
+
+Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
+
+ * alias.c (base_alias_check): Two symbols can conflict if they
+ are accessed via AND.
+ (memrefs_conflict_p): Likewise.
+
+ * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
+ after flushing argument registers to the stack.
+
+ * Makefile.in (mostlyclean): Remove .regmove files.
+
+Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * libgcc2.c (__throw): Fix thinko.
+
+Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
+
+ * cplus-dem.c (demangle_template): Add new parameter. Handle new
+ template-function mangling.
+ (consume_count_with_underscores): New function.
+ (demangle_signature): Handle new name-mangling scheme.
+
+Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
+
+ * flow.c (print_rtl_with_bb): Cast alloca return values for variables
+ start and end.
+
+Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
+
+ * frame.c: Remove last change.
+ * dwarf2.h: Remove last change.
+ * tree.h: Add declarations of DWARF2 unwind info support
+ functions.
+
+Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
+ * tree.h (built_in_function): Likewise.
+ * expr.c (expand_builtin): Likewise.
+ * except.h: Likewise.
+ * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
+ * libgcc2.c (copy_reg): New fn.
+ (__throw): Use it.
+
+Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
+
+ * c-typeck.c (build_binary_op): Warn about comparing signed vs
+ unsigned if -W is specified and -Wno-sign-compare is not.
+ * c-decl.c (warn_sign_compare): Initialize to -1.
+ (c_decode_option): -Wall no longer implies -Wsign-compare.
+
+Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * frame.c: Include gansidecl.h for PROTO.
+ * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
+ defined. Don't declare dwarf2out_cfi_label here.
+ * dwarf2.h: Add declarations of DWARF2 unwind info support
+ functions.
+ * m68k.c: Include dwarf2.h.
+ (output_function_prologue): Add dwarf2 support.
+ * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
+ (INCOMING_FRAME_SP_OFFSET): Likewise.
+
+ * integrate.c (expand_inline_function): Make sure there is at
+ least one insn that can be used as an insertion point.
+
+Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
+
+Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
+
+ Bring over from FSF.
+
+ Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
+
+ * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
+ (get_pc_via_rdpc): Renamed from get_pc_sp64.
+ * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
+
+ Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
+
+ * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
+ (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
+ -malign-functions=.
+ (sparc_align_{loops,jumps,funcs}_string): Declare.
+ (sparc_align_{loops,jumps,funcs}): Declare.
+ (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
+ (FUNCTION_BOUNDARY): Use sparc_align_funcs.
+ (STACK_BIAS): Define.
+ (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
+ test.
+ (SPARC_SETHI_P): New macro.
+ (CONST_OK_FOR_LETTER_P): Use it.
+ (ASM_OUTPUT_ALIGN_CODE): Define.
+ (ASM_OUTPUT_LOOP_ALIGN): Define.
+ * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
+ (sparc_align_{loops,jumps,funcs}): New globals.
+ (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
+ -malign-functions=.
+ (move_operand): Use SPARC_SETHI_P.
+ (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
+ perform test.
+ (arith11_double_operand): Likewise.
+ (arith10_double_operand): Likewise.
+ (finalize_pic): Finish sparc64 support.
+ (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
+ 64 bit constants if able.
+ (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
+ (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
+ ! TARGET_FPU.
+ * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
+ (get_pc_sp32): Use for sparc64 as well.
+ (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
+ (sethi_di_sp64_const): Likewise.
+ (movtf_cc_sp64): Check TARGET_HARD_QUAD.
+ (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
+ (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
+
+ Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
+
+ * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
+ * sparc/linux.h (COMMENT_BEGIN): Likewise.
+ * sparc/linux64.h (COMMENT_BEGIN): Likewise.
+
+ Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
+
+ Add sparc64 linux support.
+ * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
+ to xm_file list on 32-bit sparc-linux.
+ * sparc/xm-sp64.h: New file.
+ * sparc/linux64.h: New file.
+ * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
+ Don't include xm-sparc.h.
+ * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
+ * glimits.h (LONG_MAX): Handle sparc64.
+
+ Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
+
+ * sparc/sysv4.h (ASM_COMMENT_START): Delete.
+ * sparc.h (ASM_COMMENT_START): Define.
+ * sparc.c (output_function_prologue): Use it.
+ (sparc_flat_output_function_{epi,pro}logue): Likewise.
+
+ Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
+
+ * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
+ use sparc.h's copies.
+ * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
+ ascii form as well.
+
+ Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * sparc.c (dwarf2out_cfi_label): Add declaration.
+ (save_regs, output_function_prologue): Remove cast for it.
+ (sparc_flat_{save_restore,output_function_prologue): Likewise.
+ ({save,restore}_regs): No longer inline.
+
+Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * fold-const.c (make_range): Correctly handle cases of converting
+ from unsigned to signed type.
+
+Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+
+ * fold-const.c (merge_ranges): Make sure that if one range is subset
+ of another, it will always be the second range. Correct (+,-) case to
+ account for this.
+
+Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * final.c (final_end_function): Also do dwarf2 thing if
+ DWARF2_DEBUGGING_INFO.
+ (final_start_function): Likewise.
+
+Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
+
+ * expmed.c (expand_divmod): If compute_mode is not the same as
+ mode, handle the case where convert_modes() causes op1 to no
+ longer be a CONST_INT.
+
+ * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
+ note holding get_jump_flags() calculation to all JUMP_INSNs.
+ * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
+ * rtl.c (reg_note_name): Add new note types.
+
+Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
+
+ * rtlanal.c (computed_jump_p): Fix typo in last change.
+
+Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * loop.c (indirect_jump_in_function_p): Return 0
+ by default.
+
+Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
+
+ * rs6000/xm-rs6000.h: Fix thinko in last change.
+ * rs6000/xm-sysv4.h: Likewise.
+
+Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
+
+ * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
+
+Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
+
+ * reg-stack.c (find_blocks): Fix thinko in last change.
+
+1997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * m68k.c (output_function_prologue): Add dwarf2 support.
+
+ * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
+ INCOMING_FRAME_SP_OFFSET): New definitions.
+
+Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
+
+ * combine.c (try_combine): Use NULL_RTX instead of '0' where
+ appropriate in calls to gen_rtx().
+ * cse.c (cse_main): Likewise.
+ * emit-rtl.c (gen_label_rtx): Likewise.
+ * expr.c (init_expr_once): Likewise.
+ * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
+ sched_analyze, init_rgn_data_dependences,
+ compute_block_backward_dependences): Likewise.
+ * sched.c (schedule_insns): Likewise.
+ * varasm.c (immed_double_const): Likewise.
+
+ * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
+ SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
+
+Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
+
+ * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
+ (MULTILIB_DEFAULTS): Define.
+ (ASM_SPEC, CPP_SPEC): Handle -mcoff.
+ (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
+ (LIBGCC_SPEC): Likewise.
+ (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
+ (SUBTARGET_SWITCHES): Add -mcoff and -melf.
+ * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
+ (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
+ (EXTRA_PARTS, TAROUTOPTS): Delete.
+ (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
+ (MULTILIB_OPTIONS): Define.
+ (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
+ (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
+
+Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (loop_number): Delete function. Change all references
+ to use uid_loop_num array.
+ * loop.h (loop_number): Delete declaration.
+ * unroll.c (unroll_loop): Change "loop_number" references to
+ use uid_loop_num instead.
+
+ * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
+ conditional.
+ (loop_unroll_iter): Remove unused variable and all references.
+ (loop_optimize): Always allocate and clear space for loop_unroll_factor.
+ (insert_bct): Fix minor formatting problems.
+ * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
+ (loop_unroll_iter): Removed unused decl.
+ * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
+ Always record the unrolling factor.
+
+ * cse.c (simplify_relational_operation): Set h0u just like h0s.
+ Similarly for h1u and h1s.
+
+ * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
+ (find_basic_blocks): Use computed_jump_p to determine if a
+ particular JUMP_INSN is a computed jump.
+ * reg-stack.c (find_blocks): Use computed_jump_p to determine
+ if a particular JUMP_INSN is a computed jump.
+ * rtlanal.c (jmp_uses_reg_or_mem): New function.
+ (computed_jump_p): Likewise.
+ * rtl.h (computed_jump_p): Declare.
+ * genattrtab.c (pc_rtx): Define and initialize.
+ * loop.c (loop_optimize): Always determine if the current
+ function has a computed jump.
+ (indirect_jump_in_function_p): Use computed_jump_p to determine
+ if a particular JUMP_INSN is a computed jump.
+
+ * loop.c (fix_bct_param): Delete unused function.
+ (check_bct_param): Likewise.
+
+Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * frame.c (__deregister_frame): Check properly for initialized object.
+
+Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
+
+Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * jump.c (thread_jumps): Check can_reverse_comparison_p before
+ threading a reversed-condition jump.
+
+ * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
+ * haifa-sched.c (update_flow_info): Likewise.
+
+Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
+
+ * 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): Likewise.
+ (macroexpand): Likewise.
+ (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 compatibility.
+
+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
+ collectible tag.
+ * collect2.c (frame_tables): New list.
+ (is_ctor_dtor): Recognize 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>
+
+ Add port done awhile ago for the ARC cpu.
+ * arc/arc.h: New file.
+ * arc/arc.c: New file.
+ * arc/arc.md: New file.
+ * arc/initfini.c: New file.
+ * arc/lib1funcs.asm: New file.
+ * arc/t-arc: New file.
+ * arc/xm-arc.h: New file.
+ * ginclude/va-arc.h: New file.
+ * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
+ * ginclude/varargs.h: Likewise.
+ * Makefile.in (USER_H): Add va-arc.h.
+ * configure.in (arc-*-elf*): Recognize.
+ * longlong.h: Add ARC support.
+
+Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
+ when clearing non-BLKmode data.
+
+Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Define.
+ * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
+
+ * xm-m88k.h (USG): Only define if it hasn't already been defined.
+
+ * Makefile.in (risky-stage1): Delete gratuitous whitespace.
+
+ * Makefile.in (clean): Delete libgcc1-test.
+
+ * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
+
+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.
+ (CPP_PREDEFINES): Only define if not already specified.
+ (TARGET_VERSION): Only define if not already specified.
+ (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
+ processor.
+ (EXTRA_SWITCHES): Extra entries in the switches array.
+ (TARGET_DEFAULT): Set default target processor.
+
+Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
+
+ * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
+ cases, add %# and %/, and add : to make them into extended asms.
+
+Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
+
+ * alias.c (init_alias_analysis): Clean up incompatible pointer
+ type warning in bzero.
+ * regmove.c (regmove_optimize): Likewise.
+ * haifa-sched.c (find_rgns): Likewise.
+
+ * haifa-sched.c (print_value): Clean up ptr->int cast
+ warnings.
+
+Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
+
+ * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
+ * install.texi (Configurations): Likewise.
+ * config.sub: Likewise.
+
+Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
+
+ * Makefile.in (sdbout.o): Depend on insn-config.h.
+
+Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
+
+ * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
+ For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
+
+Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
+ prologue insn, only the first elt is significant.
+ (output_call_frame_info): For exception handling, always use 4-byte
+ fields as specified by the dwarf2 spec.
+ Don't skip trivial FDEs.
+
+Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
+
+ * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
+ for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
+ when op1_is_pow2.
+
+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.
+
+ * Makefile.in (distclean): Remove various things left around
+ by running the testsuite.
+
+Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * configure.in (out_file): Emit definition to config.status in order
+ to have a defined value for configure.lang.
+ * configure: Re-built.
+
+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
+ for ld-new.
+ * configure: Rebuilt.
+
+Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
+
+ * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
+
+Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
+
+ * sparc/sparc.md: Add ultrasparc scheduling support.
+ * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
+
+Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
+
+ * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
+ as initial value for real_label_map.
+ (copy_for_inline): Likewise.
+
+Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sched.c (update_flow_info): When looking if to set found_split_dest
+ or found_orig_dest, look at all parts of a PARALLEL.
+ * haifa-sched.c (update_flow_info): Likewise.
+
+Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
+
+ * v850: New directory for v850 port.
+ * v850/lib1funcs.asm: New file.
+ * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
+ * ginclude/va-v850.h: New file.
+ * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
+ * configure.in (mn10200-*-*): New target.
+ * configure: Rebuilt.
+ * config.sub: Handle v850-elf.
+ * Makefile.in (USER_H): Add va-mn10200.h.
+ * invoke.texi: Document v850 stuff.
+
+Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
+
+ * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
+ has integer TYPE_{MAX,MIN}_VALUE before using them.
+
+ * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
+ __HPUX_ASM__ versions.
+
+Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
+
+ * install.sh: Delete duplicate install script.
+
+Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
+
+ * reg-stack.c (subst_stack_regs): Pop the stack register for a
+ computed goto which sets the same stack register.
+
+ * reg-stack.c (compare_for_stack_reg): Swap only if the source and
+ destination are both on the regstack.
+ (subst_stack_regs_pat): Put the destination at the top of the regstack.
+
+Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
+
+ * mips.md (nonlocal_goto_receiver): Define.
+
+ * profile.c (output_arc_profiler): Check next_insert_after for non
+ NULL before deferencing it.
+
+ * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
+
+Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
+
+ * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
+
+Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
+
+ * toplev.c (rest_of_compilation): For passes starting with
+ flow_analysis, use print_rtl_with_bb instead of print_rtl.
+
+ * print-rtl.c (print_rtl_single): Print a single rtl value to a
+ file.
+
+ * flow.c (print_rtl_with_bb): Print which insns start and end
+ basic blocks. For the start of a basic block, also print the live
+ information.
+
+Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
+
+ * toplev.c (main): Change #elif to #else/#ifdef.
+
+ * tlink.c: Include ctype.h.
+ * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
+
+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.
+
+Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
+
+ * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
+
+Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
+
+ * profile.c (output_arc_profiler): Verify next_insert_after is an
+ INSN before and after skipping a stack pop.
+
+Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (shorten_branches): Don't count the lengths of deleted
+ instructions.
+
+Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
+
+ * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
+ two bitmaps ANDed together.
+ (bitmap_print): Declare.
+
+ * bitmap.c (function_obstack): Don't declare any more.
+ (bitmap_obstack): Obstack for allocating links from.
+ (bitmap_obstack_init): New static to say whether to initialize
+ bitmap_obstack.
+ (bitmap_element_allocate): Use bitmap_obstack to allocate from.
+ (bitmap_release_memory): Free all memory allocated from
+ bitmap_obstack.
+
+ * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
+ EXECUTE_IF_AND_IN_BITMAP.
+
+Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
+
+ * alias.c (true_dependence): Address with AND can alias scalars.
+ (anti_dependence, output_dependence): Likewise.
+
+ * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
+
+Wed Sep 3 09:28:50 1997 Joel Sherrill (joel@OARcorp.com)
+
+ * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
+ mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
+ sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
+ definitions. Use -qrtems instead of -mrtems.
+
+Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
+
+ * xm-sco5.h (sys_siglist): Define.
+ (SYS_SIGLIST_DECLARED): Likewise.
+
+Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
+
+Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
+
+ * except.c (eh_outer_context): Expand masking operation using
+ expand_binop.
+
+Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
+
+ * alpha.md (floatdisf2-1): New pattern.
+
+Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
+
+ * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
+ * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
+ * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
+ * gcc.texi: Note that if you define sys_siglist that you should
+ also define SYS_SIGLIST_DECLARED.
+
+ * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
+ are relative to the next instruction, not the current instruction.
+
+Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
+
+ * local-alloc.c (contains_replace_regs): New function.
+ (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
+ verify that there is no existing REG_EQUIV note, and add a call to
+ contains_place_regs.
+
+Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
+ (STARTFILE_SPEC): Always use crtbegin.o%s.
+ (ENDFILE_SPEC): Always use crtend.o%s.
+
+Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
+
+ * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
+ is passed in.
+ * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
+ SFmode for 64 bit hosts.
+
+Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
+
+ * fixincludes: Permits spaces between # and define. Discard C++
+ comments in sys/pci.h on HP/UX 10.20.
+
+Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+ * pa.c (restore_unscaled_index_insn_codes): New function.
+ (record_unscaled_index_insn_codes): Likewise.
+ (output_function_prologue): Call restore_unscaled_index_insn_codes.
+ (output_function_epilogue): Free memory for unscaled_index_insn_codes.
+ (pa_reorg): Call record_unscaled_index_insn_codes.
+
+ * haifa-sched.c (move_insn): Handle notes correctly for insns
+ with SCHED_GROUP_P set.
+
+Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * alpha/xm-linux.h (USE_BFD): Undef before define.
+
+Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
+
+ * cse.c (cse_insn): Don't record BLKmode values.
+
+Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
+
+ * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
+
+Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
+
+ * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
+ * collect2.c (sys_errlist): Likewise.
+ * cpplib.c (sys_errlist): Likewise.
+ * gcc.c (sys_errlist): Likewise.
+ * protoize (sys_errlist): Likewise.
+ * configure.in: Check for strerror.
+ * xm-freebsd.h (HAVE_STRERROR): Remove definition.
+ * xm-gnu.h (HAVE_STRERROR): Likewise.
+ * xm-linux.h (HAVE_STRERROR): Likewise.
+ * xm-netbsd.h (HAVE_STRERROR): Likewise.
+ * xm-bsd386.h (HAVE_STRERROR): Likewise.
+ * xm-cygwin32.h (HAVE_STRERROR): Likewise.
+ * xm-dos.h (HAVE_STRERROR): Likewise.
+ * xm-mingw32.h (HAVE_STRERROR): Likewise.
+ * xm-pa.h (HAVE_STRERROR): Likewise.
+ * xm-papro.h (HAVE_STRERROR): Likewise.
+ * xm-sysv4.h (HAVE_STRERROR): Likewise.
+ * configure, config.in: Rebuilt.
+
+ * Makefile.in: Add several missing "else true" clauses.
+
+ * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
+ * mips-tfile.c: Likewise.
+ * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
+ * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
+ * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
+ * configure.in: Check for sys_siglist declaration.
+ * configure, config.in: Rebuilt.
+
+Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
+
+ * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
+ m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
+ sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
+ * i960/i960.h: Added SUBTARGET_SWITCHES macro.
+ * rs6000/sysv4.h (extra_subtarget_switches): Added new
+ macro EXTRA_SUBTARGET_SWITCHES.
+ * configure.in (sh*-*-rtems*): New target.
+ * sh/rtems.h: New file.
+ * sh/sh.h: Added SUBTARGET_SWITCHES macro.
+ * configure: Rebuilt.
+
+Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
+
+ * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
+
+Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md: Make DF fused-add operations pay attention to
+ -mno-fused-add.
+
+Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
+
+ * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
+
+Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (reload_peepholes): Make sure operand is a REG before
+ examining REGNO. Allow general registers too.
+
+Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
+
+ * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
+
+Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
+
+ * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
+ to reallocate abbrev_die_table.
+
+Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
+
+ * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
+
+1997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * Makefile.in (config.status): Depend on version.c.
+
+ * expr.h (insn_gen_function): Reenable prototype.
+
+ * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
+ first parameter.
+
+Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
+
+ * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
+
+Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for latest snapshot.
+
+ * bc-optab.c: Conditionally include stdlib.h.
+ (free): Provide a declaration if NEED_DECLARATION_FREE.
+ * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
+ * rtl.h (free): Remove declaration.
+ * tree.h (free): Remvoe declaration.
+
+ * configure: Rebuilt.
+
+Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
+
+ * flags.h (flag_move_all_movables): Declare.
+ (flag_reduce_all_givs): Likewise.
+ * loop.c (move_movables): Handle flag_move_all_movables.
+ (strength_reduce): Handle flag_reduce_all_givs.
+ * toplev.c (flag_move_all_movables): Define.
+ (flag_reduce_all_givs): Likewise.
+ (f_options): Add -fmove-all-movables and -freduce-all-givs.
+ * invoke.texi: Document new options, including alias stuff that
+ wasn't included last time.
+
+Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
+
+ * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
+ * t-mn10200: Likewise.
+ * t-vxsparc: Likewise.
+ * t-vxworks68: Likewise.
+ * t-vxworks960: Likewise.
+ * t-vx29k: Likewise.
+
+Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
+ if not already defined, and USE_C_ALLOCA not defined.
+
+Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
+
+ * config.guess: Replace with script that uses ../config.guess.
+
+ * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
+ if USE_GNULIBC_1 is not defined.
+
+Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
+
+ * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
+ * config.guess: Recognize alpha-linux-gnulibc1.
+ * configure.in (alpha-*-linux-gnulibc1): New target.
+ (alpha-*-linux-gnu*): Don't build crtbegin/end.
+
+Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
+
+ * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
+ last change.
+
+Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
+
+ * loop.c (combine_movables): Earlier insns don't match later ones.
+
+Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * config/linux.h (CC1_SPEC): Define it only if not defined.
+
+ * config/m68k/linux.h (CC1_SPEC): Undefine it before include
+ <linux.h>
+
+ * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
+ USE_GNULIBC_1 is not defined.
+
+ * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
+
+ * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
+ as 1 if USE_GNULIBC_1 is not defined.
+
+Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
+
+ * reorg.c (dbr_schedule): Allow current_function_return_rtx
+ to be something other than a REG.
+ * function.c (expand_function_end): Fix current_function_return_rtx
+ if it was a pseudo.
+
+ * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
+ * x-netbsd: Likewise.
+ * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
+ (INSTALL_HEADERS): Delete.
+ * x-dguxbcs: Likewise.
+ * x-hp3bsd44: Likewise.
+ * x-pa: Likewise.
+
+Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+
+ * i386.md (pop): pop increments the stack pointer.
+ (prologue_set_stack_ptr): New pattern.
+ * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
+ instead of subsi3.
+
+Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
+
+ * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
+ address where an offsettable address is required.
+
+Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
+
+ * loop.c (check_final_value): Don't miss a biv increment in a
+ parallel.
+
+Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
+
+ * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
+ TYPE_DECL_IS_STUB instead of DECL_NAME.
+
+Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
+
+Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
+
+ * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
+
+Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
+ (find_post_sched_live): Likewise.
+
+ * haifa-sched.c (schedule_block): Remove old code to get arguments
+ from hard regs into pseudos early.
+
+Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for new snapshot.
+
+ * local-alloc.c (update_equiv_regs): All the target to reject
+ promotion of some REG_EQUAL to REG_EQUIV notes.
+ * pa.h (DONT_RECORD_EQUIVALENCE): Define.
+
+ * pa.c (secondary_reload_class): (mem (mem ... )) does not need
+ secondary reloads.
+
+ * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
+ store of the argument registers.
+
+Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
+
+ * fold-const.c (multiple_of_p): New function.
+ (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
+
+Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
+
+ * expr.h (insn_gen_function): Temporarily remove prototype.
+
+Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
+ filenames. Use sed to extract base filename for install.
+
+Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
+
+ * unroll.c (find_splittable_givs): Only share if two givs have the
+ same add and multiply values.
+
+Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
+
+ * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
+ * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
+
+Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
+ around branch tables.
+ * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
+ and .end_brtab directives if TARGET_GAS.
+
+Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
+
+ * alias.c (true_dependence): Pass x_addr not x to varies.
+
+ * acconfig.h (NEED_DECLARATION_CALLOC): Add.
+ * configure.in: Add GCC_NEED_DECLARATION call for calloc.
+ * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
+ declarations.
+ * config.in, configure: Regenerate.
+
+Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
+
+ * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
+ LO_SUM.
+ (record_set): Handle LO_SUM like PLUS.
+ (init_alias_analysis): When following chains of base addresses,
+ do not stop on reaching a hard register.
+
+Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for new snapshot.
+
+Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
+
+ * alpha.h (ARCH_ASM_FILE_START): Define.
+ (ASM_FILE_START): Use ARCH_ASM_FILE_START.
+ * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
+
+Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (install-common): Put gcov comment at start of line.
+
+Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
+
+ * alias.c (init_alias_analysis): When simplifying the reg_base_value
+ array, simplify entries for hard registers too.
+
+Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
+
+ * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
+ list.
+
+Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
+
+ * stmt.c (start_cleanup_deferral, end_cleanup_deferral): Test
+ block_stack before dereferencing it.
+
+Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
+
+Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
+
+ * cplus-dem.c: Add 'extern' to prepends_underscore.
+
+Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
+ (get_issue_rate): Delete.
+ * pa.h (ISSUE_RATE): Define.
+
+ * configure.in: Turn on haifa by default for the PA.
+ * configure: Rebuilt.
+ * pa.c (override_options): Accept -mschedule=7200 option.
+ (pa_adjust_cost): No longer need to scale costs for newer
+ processors.
+ * pa.h (enum processor_type): Add PROCESSOR_7200.
+ * pa.md: Revamp scheduling parameters to work better with
+ haifa. Add scheduling parameters for the 7200.
+
+ * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
+ insns too.
+ (schedule_block): When adjusting basic_block_{head,end}, account
+ for movement of SCHED_GROUP_P insns too.
+
+ * haifa-sched.c (debug_dependencies): Fix thinko.
+
+ * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
+ (site.exp, check, check-g++, check-gcc): New targets.
+
+ * haifa-sched.c: Make lots of variables static.
+
+Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * expr.h, real.h: Finish prototyping.
+
+Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
+
+ * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
+ reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
+ * reload1.c: Undo bugfix from Aug 11.
+
+Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
+
+ * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
+ quotes around the name.
+ * configure: Regenerate.
+
+Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (stmp-multilib-sub): Fix typo in last change.
+
+Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
+ to sub-makes to avoid building more passes than the user might have
+ requested on the command line.
+
+Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
+
+ * configure.in: Expurgate `broken_install' (install is
+ autoconfed).
+
+ * configure.lang: Substitute autoconfed ${INSTALL} (not currently
+ relevant).
+
+Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (is_power_of_2, is_conditional_branch): Delete unused
+ functions and declarations.
+ (analyze_loop_iterations): Use condjump_p.
+ (insert_bct): Likewise. Use exact_log2.
+
+Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
+ (schedule_region): Likewise.
+ (schedule_insns): Likewise.
+
+ * PROJECTS: Update with Haifa stuff.
+
+Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Change the version string to look like:
+ egcs-2.90.00 970814 (gcc2-970802 experimental).
+
+ * loop.c (is_conditional_branch): Make definition match declaration.
+
+ * gcc.c: Take out experimental snapshot warning message.
+
+Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
+
+ * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
+ 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.
+ * configure: Regenerate.
+
+Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump version to "gcc-3.0.0 970802 experimental".
+
+ * gcc.info*: Rebuilt.
+
+ * COPYING.g77, README.g77: New files.
+ * real.c (ereal_unto_float, ereal_unto_double): New functions.
+ * real.h (ereal_unto_float, ereal_unto_double): Declare them.
+ (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
+
+Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Integrate Haifa instruction scheduler.
+ * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
+ to sched with $(SCHED_CFLAGS.
+ * configure.in: Handle --enable-haifa.
+ * configure: Rebuilt.
+ * flags.h: Add new flags for haifa instruction scheduler.
+ * genattrtab.c (expand_units): For haifa, don't subtract one
+ when computing blockage.
+ * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
+ (flag_schedule_speculative): Likewise.
+ (flag_schedule_speculative_load): Likewise.
+ (flag_schedule_speculative_load_dangerous): Likewise.
+ (flag_schedule_reverse_before_reload): Likewise.
+ (flag_schedule_reverse_after_reload): Likewise.
+ (flag_branch_on_count_reg): Likewise.
+ (f_options): Add Haifa switches.
+ (main): Turn off some Haifa options if appropriate macro is
+ defined. Process Haifa switches.
+ * unroll.c (iteration_info): No longer static, since Haifa
+ scheduler uses it.
+ (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
+ * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
+ * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
+ * loop.h (loop_initial_value,loop_unroll_iter): New globals.
+ * loop.c (loop_optimize): If HAIFA is defined, allocate additional
+ storage for the Haifa scheduler.
+ (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
+ LABEL_NEXTREF.
+ (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
+ are defined, call analyze_loop_iterations and insert_bct to use
+ countdown loops.
+ (record_giv): Refine test for jumps out of loops if HAIFA is
+ defined.
+ (analyze_loop_iterations): New function to identify if we can use
+ a countdown loop.
+ (insert_bct): Insert countdown loop.
+ (instrument_loop_bct): Low level code to insert countdown loop.
+ (loop_number): Calculate UID of loop.
+ (indirect_jump_in_function_p): Return true if an indirect jump is
+ in the function.
+ (is_power_of_2): Return true if value is a power of 2.
+ (is_conditional_branch): Return true if insn is a conditional
+ jump.
+ (fix_bct_param): Process -fbct-{min,max}-N switches.
+ (check_bct_param): Return true if loop should be instrumented.
+ * loop.c (loop_initial_value,loop_unroll_iter): New globals.
+ (loop_optimize): Initialize.
+ (get_condition_for_loop): Likewise.
+ * loop.c (strength_reduce): Inside of code that uses #ifdef
+ HAVE_decrement_and_branch_on_count code, test it to make sure the
+ condition is true.
+ (instrument_loop_bct): Likewise.
+ * haifa-sched.c: New file.
+
+ * Integrate regmove pass.
+ * Makefile.in (OBJS): Add regmove.o.
+ (regmove.o): Add dependencies.
+ * flow.c (find_use_as_address): No longer static.
+ * rtl.h (find_use_as_address): Declare.
+ * toplev.c (regmove_dump, flag_regmove): Define.
+ (f_options): Add -fregmove.
+ (regmove_dump_file, regmove_time): Define.
+ (fatal_insn): Close the regmove dump file.
+ (compile_file): Initialize regmove_time; open/close the regmove dump
+ file as needed. Print regmove time as needed.
+ (rest_of_compilation): Run regmove pass if requested, dump
+ RTL after regmove if requested.
+ (main): If -O2 or more, turn on regmove. Handle dump switches.
+ * regmove.c: New file.
+
+Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Integrate tlink patch from jason@cygnus.com
+ * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
+ (process_command): Increment n_switches for them. Don't discard
+ their args. Validate them.
+ (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
+ From Rohan Lenard.
+ (process_command): Set include_prefixes from COMPILER_PATH.
+ (main): Set COLLECT_GCC_OPTIONS sooner.
+ * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
+ * tlink.c, hash.c, hash.h: New files.
+ * Makefile.in (USE_COLLECT2): Always use collect2.
+ (collect2): Depend on and link in hash.o and tlink.o.
+ (tlink.o, hash.o): Add dependencies.
+
+Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
+
+ * Integrate alias analysis changes from jfc@mit.edu
+ * Makefile.in (OBJS): Add alias.o.
+ (alias.o): Add dependencies.
+ * alias.c: New file.
+ * sched.c: Remove alias analysis code. It lives in alias.c now.
+ (sched_analyze_2): Add new arguments to true_dependence.
+ (schedule_insns): Always call init_alias_analysis.
+ * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
+ mark return value from such functions as a pointer and keep track of
+ them for alias analysis. If a return value from a function is a
+ pointer, mark it as such.
+ * combine.c (distribute_notes): Handle REG_NOALIAS.
+ * cse.c (struct write_data): Delete. No longer needed.
+ (invalidate): Don't call set_nonvarying_address_components anymore.
+ Use true_dependence to decide if an entry should be removed from
+ the hash table.
+ (invalidate_memory): Remove WRITES argument, simplify appropriately.
+ Fix all callers.
+ (note_mem_written): Similarly for WRITE_PTR argument.
+ (invalidate_from_clobbers): Similarly for W argument.
+ (invalidate_for_call): Remove memory elements from the hash table.
+ (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
+ (cse_rtx_varies_p): New function. Derived from old
+ cse_rtx_addr_varies_p.
+ (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
+ Don't call note_mem_written anymore. Stack pushes invalidate the stack
+ pointer if PUSH_ROUNDING is defined. No longer need to call
+ cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
+ (skipped_writes_memory): Remove variable.
+ (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
+ (invalidate_skipped_block): Simplify for new alias analysis code.
+ (cse_set_around_loop): Likewise.
+ (cse_main): Call init_alias_analysis.
+ * flags.h (flag_alias_check, flag_argument_noalias): Declare.
+ * toplev.c (flag_alias_check, flag_argument_noalias): Define.
+ (f_options): Add new alias checking arguments.
+ (main): Set flag_alias_check when optimizing.
+ * local_alloc (validate_equiv_mem_from_store): Add new arguments
+ to true_dependence.
+ (memref_referenced_p): Likewise.
+ * loop.c (NUM_STORES): Increase to 30.
+ (prescan_loop): Only non-constant calls set unknown_address_altered.
+ (invariant_p): Add new arguments to true_dependence.
+ (record_giv): Initialize unrolled and shared fields.
+ (emit_iv_add_mult): Call record_base_value as needed.
+ * loop.h (struct induction): Add unrolled and shared fields.
+ * unroll.c (unroll_loop): Call record_base_value as needed.
+ (copy_loop_body): Likewise.
+ (final_biv_value): Likewise.
+ (final_giv_value): Likewise.
+ (find_splittable_regs): Likewise. Only create one new pseudo
+ if we have multiple address GIVs that were combined with the same
+ dst_reg GIV. Note when a new register is created due to unrolling.
+ * rtl.c (reg_note_name): Add REG_NOALIAS.
+ * rtl.h (enum reg_note): Similarly.
+ (rtx_varies_p, may_trap_p, side_effects_p): Declare.
+ (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
+ (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
+ (true_dependence, read_dependence, anti_dependence): Likewise.
+ (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
+ (mark_user_reg, mark_reg_pointer): Likewise.
+
+ * Integrate reload bugfix from Wilon which enables the PA port
+ to bootstrap again.
+ * reload1.c (reload): Sum needs for both OPADDR_ADDR and
+ OPERAND_ADDRESS when computing how many registers an insn needs.
+ (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
+ conflict.
+ (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
+ OPADDR_ADDR reload.
+ (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
+ in reload_reg_use_in_op_addr do not reach the end.
+ do not reach the end.
+ (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
+ RELOAD_FOR_OPERAND_ADDRESS.
+
+Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
+
+ * egcs project officially starts.
diff --git a/gcc/ChangeLog.1 b/gcc/ChangeLog-1998
index b99a93754a3..bd2f722d1b0 100644
--- a/gcc/ChangeLog.1
+++ b/gcc/ChangeLog-1998
@@ -1,7322 +1,3 @@
-Tue May 18 03:53:37 1999 Craig Burley <craig@jcb-sc.com>
-
- Improve open-coding of complex divide:
- * flags.h: Declare new front-end-malleable flag.
- * toplev.c: Define new flag.
- * optabs.c (expand_cmplxdiv_straight): New function to do original
- open-coding.
- (expand_cmplxdiv_wide): New function to do new open-coding,
- from Toon Moene, with changes (call to emit_barrier, dropping
- of spurious `ok = 1;', plus the obvious `break;' -> `return 0;').
- (expand_binop): A bit of spacing fixing, while at it.
- Use new functions instead of inlining the open-coding code.
-
-Tue May 18 00:51:46 1999 Krister Walfridsson <cato@df.lth.se>
-
- * configure.in (arm*-*-netbsd*): Use collect2.
- (i[34567]86-*-netbsd*): Likewise.
- (m68k*-*-netbsd*): Likewise.
- (ns32k-*-netbsd*): Likewise.
- (sparc-*-netbsd*): Likewise.
- (vax-*-netbsd*): Likewise.
- * configure: Rebuilt.
-
-Tue May 18 00:21:34 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
-
- * cppspec.c: Insert -no-gcc into command line unless -gcc was
- given by user.
- * gcc.c (default_compilers): Define __GNUC__ and
- __GNUC_MINOR__ only if -no-gcc was not given.
- * objc/lang-specs.h: Likewise.
- * cpp.texi: Document -x and -std options; explain that -lang
- is no longer supported. Minor related corrections.
-
-Mon May 17 23:56:39 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * Makefile.in (stmp-fixproto): Pass location of mkinstalldirs to
- fixproto.
- * fixproto: Avoid unportable constructs such as `basename' and
- `mkdir -p'. Use mkinstalldirs from the environment if `mkdir -p'
- fails.
-
- * fixinc/fixincl.c: Remove #error, it is not portable.
-
-Mon May 17 23:50:41 1999 Marc Espie <espie@cvs.openbsd.org>
-
- * collect2.c (main): Fix typo in COLLECT2_HOST_INITIALIZATION.
-
-Mon May 17 19:45:41 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/fixincl.c (process): Wait for children from chain_open()
- to avoid creating zombies.
-
- * fixinc/inclhack.tpl: Removed no-op pipe.
-
- * fixinc/inclhack.sh fixinc/fixincl.sh: regenerate
-
-Mon May 17 07:23:34 1999 Mark Mitchell <mark@codesourcery.com>
-
- * tree.def (TYPE_NONCOPIED_PARTS): Revise documentation to match
- reality.
- * expr.c (init_noncopied_parts): Don't generate initializers for
- parts that don't need them.
-
-Mon May 17 02:56:35 PDT 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Oct 31 05:08:34 CET 1998 Jan Hubicka (hubicka@freesoft.cz)
-
- * reg-stack.c: Do not emit pop insns after cc0 setter.
- (emit_pop_insn): Do not emit insn in case WHEN is NULL.
- (compare_for_stack_reg): Update REG_DEAD note and
- do not emit push insn.
-
- * i386.c: (output_float_compare): Handle new REG_DEAD notes.
-
-Mon May 17 01:57:37 1999 David Daney <daney@ibw.com.ni>
-
- * i386/sol2.h (LINK_SPEC): Do not pass "-z text" to the linker
- if -mimpure-text.
-
-1999-05-17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * m68k.c (standard_68881_constant_p): Don't accept -0.0 as valid
- 68881 constant.
-
- * fold-const.c (fold_truthop): When converting a one-bit
- comparison don't sign extend the constant.
-
- * cse.c (cse_insn): Copy SRC_CONST before putting it in the
- REG_EQUAL note.
-
-1999-05-17 Mike Stump <mrs@wrs.com>
-
- * rs6000/vxppc.h (CPP_SPEC): Fix support for vararg functions.
-
-Sat May 15 14:22:40 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixinc/hackshell.tpl: Fix mis-applied patch.
- * fixinc/inclhack.sh: Regenerated.
-
-Thu May 13 21:05:55 1999 Mark Kettenis <kettenis@gnu.org>
-
- * fixinc/mkfixinc.sh: Add the Hurd (*-*-gnu*) to the list of
- targets that do not need any fixes.
-
-Sat May 15 14:12:38 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (set_lo_sum+2): New splitter to load large
- const_ints.
-
-Sat May 15 14:09:08 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (decrement_and_branch_on_count): Disabled.
- (doloop_begin, doloop_end): New patterns.
- (*rptb_init): Added extra operands.
-
-Fri May 14 21:31:36 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (*umulqi3_highpart_clobber): Fix operand 2
- constraints order.
-
-1999-05-14 Ulrich Drepper <drepper@cygnus.com>
-
- * fixinc/fixinc.x86-linux-gnu (FD_ZERO): Fix operand numbers in
- asm input operands.
-
-Thu May 13 15:34:18 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (mask_constant): Delete.
- (mask_operand): Move mask_constant() body to here.
- * rs6000.h (mask_constant): Delete declaration.
- * rs6000.md (nabsdi2): Reverse subtraction in splitter.
-
-Thu May 13 02:25:01 1999 Jeffrey A Law (law@cygnus.com)
-
- * cpp.texi: Fix some typos.
-
-Thu May 13 01:49:55 1999 Graham Stott <GrahamS@RCP.co.uk>
-
- * loop.c (maybe_eliminate_biv): Check regno against
- max_reg_before_loop.
-
- * i386.c (memory_address_info): Correct the scale
- factor test.
-
-Thu May 13 01:31:19 1999 Nick Burrett <nick.burrett@btinternet.com>
-
- * arm.md (nop): Backout Apr 27 change. Ensure REGISTER_PREFIX is
- applied to each register.
- * aof.h (ASM_FILE_START): Define register `r0'.
-
-1999-05-12 20:22 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * configure.in: Make --enable-cpp and --with-cpp-install-dir
- documented options. Enable the cpp driver by default.
- * configure: Rebuilt.
-
-Wed May 12 18:08:48 1999 David Edelsohn <edelsohn@gnu.org>
- Richard Henderson <rth@cygnus.com>
-
- * rs6000.c (print_operand) [w]: Calculate signed constant more clearly.
- (rs6000_allocate_stack_space): Print as hexadecimal value.
- * rs6000.h (CONST_OK_FOR_LETTER_P): 'L' checks for a signed,
- 16-bit shifted constant. Fix typo for 'P'.
- (EXTRA_CONSTARINT): 'T' checks for a 32-bit mask operand.
- * rs6000.md (movsi, addsi3_internal1, movdi, adddi3_internal1):
- Use 'L' for shifted constant.
- (anddi3_internal3): Fix typo.
- (32-bit mask patterns): Use 'T'.
-
-Wed May 12 07:30:31 1999 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixinc/fixincl.c(quoted_file_exists): new procedure to ensure that
- a file exists before trying to copy it into the destination
- (extract_quoted_files): use that routine.
-
-Wed May 12 07:27:31 1999 Craig Burley <craig@jcb-sc.com>
-
- Allow front end (like g77's) to override maintenance of errno:
- * expr.c (expand_builtin): Bother with errno only if
- flag_errno_math.
- * flags.h: Declare flag_errno_math.
- * toplev.c: Define flag_errno_math.
-
-Tue May 11 23:55:49 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixproto: Change "mkdir" calls to "mkdir -p"
-
- * fixinc/inclhack.def (io_def_quotes): Consistently allow multiple
- whitespace characters between the "define" and the name of the macro.
- * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
-
-Tue May 11 20:46:37 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_block_move): Handle TImode registers
- used with ADDRESSOF.
- (alpha_expand_block_clear): Handle ADDRESSOF specially.
-
-1999-05-11 Ulrich Drepper <drepper@cygnus.com>
-
- * fixinc/fixinc.x86-linux-gnu (FD_ZERO): Remove unneccessary
- memory output operand which irritates gcc.
-
-Tue May 11 11:45:16 1999 Dave Brolley <brolley@cygnus.com>
-
- * toplev.c (documented_lang_options): Add -MD, -MMD, -M and -MM for
- cpplib-enabled compilers.
-
-Tue May 11 11:34:56 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
-
- * config/sparc/sparc.h (GO_IF_LEGITIMATE_ADDRESS): Add parentheses
- around &&.
-
-Mon May 10 13:51:24 1999 Nick Clifton <nickc@cygnus.com>
-
- * tm.texi (FUNCTION_ARG): Stack element of PARALLEL must come
- first.
-
-Tue May 11 01:32:01 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixinc/inclhack.def (sun_auth_proto): Apply to all targets.
- (sysz_stdlib_for_sun): Similarly.
- * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
-
-Mon May 10 20:34:10 1999 Jim Wilson <wilson@cygnus.com>
-
- * config/mips/elf.h (UNIQUE_SECTION_P): Undef.
- * config/mips/elf64.h (UNIQUE_SECTION_P): Undef.
- * config/mips/mips.h (UNIQUE_SECTION_P): Define to 0.
-
-1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppfiles.c (initialize_input_buffer): New function.
- (finclude): Call it, if pfile->input_buffer is NULL. Accept
- any character device as an input file.
- (read_and_prescan): Use pfile->input_buffer and
- pfile->input_speccase.
- * cppinit.c (cpp_cleanup): Free pfile->input_buffer and
- pfile->input_speccase.
- * cpplib.h (cpp_reader): Add input_buffer, input_speccase, and
- input_buffer_len members. Use memcpy in CPP_PUTS_Q.
-
- * cppmain.c: Buffer output in the token_buffer; throttle
- number of calls to fwrite; check for errors from fwrite.
-
-1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
-
- * cppspec.c: Treat two non-option arguments as input and
- output file. Three or more non-option args is an error.
- Clean up.
- * gcc.c (default_compilers): Pass -$ to the preprocessor.
- * objc/lang-specs.h: Likewise.
-
-Mon May 10 12:59:20 1999 Jeffrey A Law (law@cygnus.com)
-
- * optabs.c (emit_cmp_and_jump_insns): Handle the case where both
- operands to the comparison are constants.
-
-Mon May 10 07:28:10 1999 Bruce Korb <autogen@autogen.freeservers.com>
-
- * fixinc/inclhack.def(arm_norcroft_hint): check before fixing
- (no_double_slash): portability
- (math_exception): added reminder comment
-
-Mon May 10 01:28:10 1999 Craig Burley <craig@jcb-sc.com>
-
- From Fri May 7 9:31:41 1999 Donn Terry (donn@interix.com):
- * varasm.c (mark_constant_pool): Add some transitive closure.
-
-Sun May 9 22:51:04 1999 Craig Burley <craig@jcb-sc.com>
-
- Fix gcc.dg/990506-0.c:
- * c-typeck.c (require_complete_type): Handle ERROR_MARK input.
-
-Sun May 9 13:19:12 1999 Jeffrey A Law (law@cygnus.com)
-
- * gcse.c (cprop_insn): Do not try to simplify a simple jump.
-
-Sun May 9 11:12:19 1999 Philip Blundell <bp@nexus.co.uk>
-
- * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Add (PLT) to branch if
- necessary. Reported by jim@federated.com.
-
-Sat May 8 23:05:35 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.h (PRINT_OPERAND_ADDRESS): Output "%r0", not "r0" for the
- base register in an absolute memory address.
- * pa.md (conditional moves): Avoid using immediate zero for
- register zero.
-
-Sat May 8 06:23:21 1999 Philip Blundell <pb@nexus.co.uk>
-
- Based on patch by Scott Bambrough:
- * config/arm/arm.h (NEED_PLT_GOT): New macro. Set to 0 if not
- already defined.
- * config/arm/elf.h (NEED_PLT_GOT): Define to flag_pic.
- * config/arm/arm.md (call_symbol, call_value_symbol et al.): If
- NEED_PLT_GOT is true, add explicit "(PLT)" to generated branches.
- * config/arm/arm.c (output_func_epilogue,
- output_return_instruction): Likewise for calls to abort.
-
-Sat May 8 01:57:58 1999 Donn Terry (donn@interix.com)
-
- * calls.c (rtx_for_function_call): Extend function pointer being
- passed to chkr_check_exec_libfunc, if needed.
-
-Sat May 8 01:51:50 1999 David Edelsohn <edelsohn@gnu.org>
-
- * ginclude/stdarg.h (__va_rounded_size): Use long type for
- rounding on AIX.
- * ginclude/varargs.h: Likewise.
-
-Sat May 8 01:47:20 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * invoke.texi: Remove duplicates in the description of -d
- letters. Fix use of @item vs. @itemx.
-
-Sat May 8 01:43:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000.h (RS6000_VARARGS_OFFSET): Die die die.
- (CUMULATIVE_ARGS): Remove varargs_offset; update commentary.
- * rs6000.c (setup_incoming_varargs): Fix typo last change.
- (init_cumulative_args): Remove varargs_offset references.
-
- * rs6000/linux.h (NO_IMPLICIT_EXTERN_C): Define.
- (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Undefine.
-
-Sat May 8 01:34:19 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * reload1.c (gen_mode_int): New function.
- (reload_cse_move2add): Use it to generate the new constants.
-
-Sat May 8 01:25:09 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * varasm.c (output_constant): Do nothing if -fsyntax-only.
-
-Fri May 7 19:10:15 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
-
- * sparc.h (GO_IF_LEGITIMATE_ADDRESS): Prohibit REG+REG addressing
- for TFmode when there are no instructions which accept REG+REG
- instructions.
-
-Fri May 7 12:38:54 1999 Jim Wilson <wilson@cygnus.com>
-
- * mips/elf64.h (MAKE_DECL_ONE_ONLY, UNIQUE_SECTION_P): Define.
- * mips/mips.c (mips_select_rtx_section): When TARGET_MIPS16, use
- function_section instead of text_section.
- * mips/mips.h (ENCODE_SECTION_INFO): Add check for UNIQUE_SECTION_P
- in TARGET_MIPS16 STRING_CST handling.
-
-Fri May 7 09:54:11 1999 Nick Clifton <nickc@cygnus.com>
-
- Patch from: Nick Burrett <nick.burrett@btinternet.com>
-
- * arm.c (arm_poke_function_name): New function to implement
- -mpoke-function-name.
- * aof.h (ASM_DECLARE_FUNCTION_NAME): Call it.
- * aout.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
- * elf.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
- * arm.h: Prototype it.
- (TARGET_SWITCHES): Add `no-poke-function-name'.
-
-Fri May 7 14:19:31 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/server.c (load_data): Cast text_size to long, adapt
- format.
- * fixinc/server.c (read_pipe_timeout): Declare volatile, modified
- in signal handler.
- (sig_handler): Add debug code.
- * fixinc/server.c (run_shell): Don't \-escape cd, it breaks the
- Ultrix V4.3 /bin/sh.
- * fixinc/server.c (def_args): Use static instead of STATIC to
- avoid redefinition error from linker iff DEBUG.
-
- * fixinc/hackshell.tpl: Don't strip trailing directory from
- DESTDIR - that is already done
-
- * fixinc/fixincl.c (run_compiles): fix memory leak
-
-Thu May 6 20:34:00 1999 Mark Mitchell <mark@codesourcery.com>
-
- * resource.c (mark_referenced_resources): Make volatil
- monotonically increasing.
- (mark_set_resources): Likewise.
-
-Thu May 6 20:02:33 1999 Fred Fish <fnf@be.com>
-
- * rs6000/xm-beos.h (HAVE_VPRINTF): Don't redefine if already defined.
- (HAVE_PUTENV, HAVE_ATEXIT, HAVE_RENAME): Likewise.
-
-Wed May 5 20:28:32 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * install.texi (Header Dirs): s/GPLUS/GPLUSPLUS/.
-
-Wed May 5 23:44:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * unroll.c (copy_loop_body): Don't copy VTOP notes from copy_notes_from.
-
-Wed May 5 16:26:13 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
-
- * function.c (purge_addressof_replacements): Rename into
- purge_bitfield_addressof_replacements.
- (purge_addressof_replacements): New variable.
- (purge_addressof_1): Add code for changing addressof in notes for
- field values which are extracted by usage MEM with narrower mode.
- (purge_addressof): Initialize purge_bitfield_addressof_replacements.
-
-Wed May 5 07:40:02 1999 Nick Clifton <nickc@cygnus.com>
-
- Patch from: Nick Burrett <nick.burrett@btinternet.com>
- * config/arm/arm.h (ARM_MCOUNT_NAME): Define.
- (FUNCTION_PROFILER): Remove assembler dialect dependency and use
- ARM_MCOUNT_NAME.
- (TRAMPOLINE_TEMPLATE): Remove assembler dialect dependency.
-
- * config/arm/aof.h (ARM_MCOUNT_NAME): Define.
-
-1999-05-05 09:58 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * gcc.c (default_compilers): Fix brace nesting bug.
- * objc/lang-specs.h: Use %i, not %g.mi, for the input file
- when processing an .mi file.
-
-Tue May 4 13:17:55 1999 Mark Mitchell <mark@codesourcery.com>
-
- * resource.c (mark_set_resources): Handle UNSPEC_VOLATILE,
- ASM_INPUT, TRAP_IF, and ASM_OPERANDS just like in
- mark_referenced_resources.
-
-Mon May 3 22:38:41 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Change non-PowerPC
- and AIX64 combination to warning. Add warning for disabling
- PowerPC64 support when using 64-bit mode.
- (LIB_SPEC): Do not link with libg.a in 64-bit mode.
- (LINK_SPEC): Do not export libg.exp symbols in 64-bit mode.
- * rs6000/rs6000.h (MY_ISCOFF): Treat import/export files as valid
- XCOFF files.
- (read_only_data_section, private_data_section,
- read_only_private_data_section): Always align CSECTs to doubleword
- boundary regardless of mode.
- (TEXT_SECTION_ASM_OP): Align text CSECT on doubleword boundary in
- 64-bit mode.
- (DATA_SECTION_ASM_OP): Always align CSECT to doubleword boundary.
- (ASM_OUTPUT_LOCAL): Use rounded size in 64-bit mode to
- maintain doublword alignment.
-
-Mon May 3 14:45:23 1999 Jeffrey A Law (law@cygnus.com)
-
- * mn10200.md (btst insns): btst does not leave cc0 in a usable
- state for redundant tst eliminatino.
- * mn10300.md (btst insns): Likewise.
-
-Mon May 3 16:14:32 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.h (Pmode): Revert Oct 14th change which added a cast.
-
-Sun May 2 14:02:21 1999 Mark Mitchell <mark@codesourcery.com>
-
- * tree.h (struct tree_decl): Add comdat_flag.
- (DECL_COMDAT): Define it.
- * toplev.c (wrapup_global_declarations): Don't output a
- DECL_COMDAT function just because it's public.
-
-Sun May 2 15:16:42 1999 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * pdp11.h (TARGET_SWITCHES): Fix error in previous change.
- (ASSEMBLER_DIALECT): Define.
- (CONDITIONAL_REGISTER_USAGE): Rename floating point registers if
- required for the UNIX assembler.
- (ASM_OUTPUT_INT): Remove. The compiler will synthesize it.
- (ASM_OUTPUT_ADDR_VEC_PROLOGUE): Remove.
- (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Change to "[" and "]".
- (TRAMPOLINE_TEMPLATE): Use ASM_OUTPUT_SHORT.
- * pdp11.c (output_addr_const_pdp11): Copy of output_addr_const
- adapted to output constants in octal.
- * pdp11.c, pdp11.h, pdp11.md: Use output_addr_const_pdp11 instead
- of output_addr_const. Output constants in octal. Use assembler
- dialect alternatives where DEC and UNIX assemblers use different
- instruction names.
-
-Sun May 2 01:15:06 PDT 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Fri Apr 30 13:55:43 1999 Richard Henderson <rth@cygnus.com>
-
- * va-ppc.h (__va_start_common): Let __builtin_saveregs do the work.
- * rs6000.c (expand_builtin_saveregs): For V4, initialize a private
- va_list struct, and return a pointer to it.
- (setup_incoming_varargs): V4 save area based off virtual_stack_vars
- instead of frame_pointer.
-
-Thu Apr 29 23:02:22 1999 Mark Mitchell <mark@codesourcery.com>
-
- * emit-rtl.c (start_sequence): Expand comments.
- (start_sequence_for_rtl_expr): Likewise.
- (push_to_sequence): Likewise.
- (end_sequence): Likewise.
- * expr.c (inhibit_defer_pop): Likewise.
- * expr.h (inhibit_defer_pop): Likewise.
- (NO_DEFER_POP): Likewise.
- (OK_DEFER_POP): Likewise.
-
-Thu Apr 29 22:13:46 1999 Robert Lipe <robertlipe@usa.net>
-
- * configure.in (i?86-UnixWare7*-sysv): Set thread_file to 'posix'
- --enable-threads[={yes,pthreads,posix}] is passed as a command
- line parameter to configure.
- * config/i386/sysv5.h (LIB_SPEC): Add support for '-pthread'.
- (CPP_SPEC): Likewise.
-
-Thu Apr 29 17:23:59 1999 Richard Henderson <rth@cygnus.com>
-
- * emit-rtl.c (operand_subword): Religiously mask and sign-extend
- from 32-bits to HOST_WIDE_INT.
-
-Thu Apr 29 15:58:52 1999 Robert Lipe <robertlipe@usa.net>
-
- * fixinc/regex.c, fixinc/regex.h: Removed. Replace with...
- * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Imported from GDB 4.18.
- * fixinc/Makefile.in (OBJ, HDR): Handle name changes from above.
- (gnu-regex.o): Define REGEX_MALLOC to avoid memory leak.
- * fixinc/fixincl.c: new regex.h header name
- * Makefile.in: new regex.[ch] file names
-
-Thu Apr 29 12:53:33 1999 Richard Henderson <rth@cygnus.com>
-
- * calls.c (emit_call_1): Pass rounded_stack_size to emit_call
- instead of the unrounded size.
-
-1999-04-28 14:40 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixinc/mkfixinc.sh: Makesure the result shell script is writable
-
-Wed Apr 28 10:36:39 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * config/m68k/m68k.md (cmpsi+1): Use cmp.w when comparing a 16 bit
- constant with an address register.
-
-Wed Apr 28 00:14:41 PDT 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Tue Apr 27 19:50:25 EDT 1999 Andrew MacLeod <amacleod@cygnus.com>
-
- * rtl.h (REG_EH_REGION): Update comment to indicate a value of -1
- indicates no throw and no nonlocal gotos.
- * optabs.c (emit_libcall_block): Emit REG_EH_REGION with a value
- of -1 instead of 0 to indicate a nonlocal goto won't happen either.
- * flow.c (count_basic_blocks, find_basic_blocks_1): Ignore libcall
- blocks, look for REG_EH_REGION note exclusively.
- (make_edges): Check for REG_EH_REGION > 0 for specified handlers.
-
-Tue Apr 27 15:33:42 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.h (read_only_data_section, private_data_section,
- read_only_private_data_section, toc_section): Align CSECT on
- doubleword boundary for 64-bit target.
- (DATA_SECTION_ASM_OP): Likewise.
- * rs6000.c (rs6000_stack_info): Leaf procedure stack limit is 288.
-
-Tue Apr 27 20:19:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (insv): Use copy_addr_to_reg.
-
- * final.c (insn_lengths_max_uid): New variable.
- (init_insn_lengths, shorten_branches): Set it.
- (get_attr_lengths): Test insn uid against insn_lengths_max_uid.
-
-1999-04-27 08:32 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * expr.c (emit_move_insn_1): Abort if MODE argument is invalid.
- (compare): Punt if TREE_OPERAND (exp, 0) is an ERROR_MARK.
-
-Tue Apr 27 01:33:43 1999 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (ORDINARY_FLAGS_TO_PASS): Renmaed from FLAGS_TO_PASS.
- Remove "CC".
- (FLAGS_TO_PASS): New variable.
-
-Tue Apr 27 00:36:44 1999 Nick Burrett <nick.burrett@btinternet.com>
-
- * arm.md (nop): Output instruction using output_asm_insn to fix
- assembler dialect problems.
-
-Mon Apr 26 23:55:50 1999 Robert Lipe <robertlipe@usa.net>
-
- * Makefile.in (fixinc.sh): Fix dependencies.
-
- * fixinc/inclhack.def (avoid_bool): Enable match if typedefs are
- prepended by spaces.
- (sco5_stat_wrappers): New fix. Make sys/stat.h C++ safe.
- * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
-
-Mon Apr 26 23:28:54 1999 Mumit Khan <khan@xraylith.wisc.edu>
- Donn Terry <donn@interix.com>
-
- * function.c (put_var_into_stack): Change ptr_mode to Pmode
- in setup for chkr_set_right_libfunc calls.
- (assign_params): Likewise.
- * expr.c (emit_push_insn): Change ptr_mode to Pmode in
- setup for chkr_copy_bitmap_libfunc and chkr_set_right_libfunc calls.
- (expand_assignment): Change ptr_mode to Pmode in
- setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc.
- (store_expr): Change ptr_mode to Pmode in
- setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc.
- (expand_expr): Change ptr_mode to Pmode in
- setup for chkr_check_addr_libfunc.
- (expand_builtin): Change ptr_mode to Pmode in
- setup for chkr_check_str_libfunc, chkr_copy_bitmap_libfunc and
- chkr_check_addr_libfunc.
- * calls.c (rtx_for_function_call): Change ptr_mode to Pmode in
- setup for chkr_check_exec_libfunc.
- (expand_call): Change ptr_mode to Pmode in
- setup for chkr_set_right_libfunc.
- (expand_call): Change ptr_mode to Pmode in
- setup for chkr_set_right_libfunc.
- (store_one_arg): Change ptr_mode to Pmode in
- setup for chkr_set_right_libfunc.
-
- * c-parse.in (absdcl1): Allow attributes in explicit typespecs.
- (%expect): Update.
- * c-parse.y: Regenerate.
- * c-parse.c: Likewise.
- * objc/objc-parse.c: Likewise.
- * objc/objc-parse.y: Likewise.
-
-Mon Apr 26 21:17:41 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * c-pragma.c (push_alignment): Don't ignore alignments greater than
- 4 bytes.
- (handle_pragma_token): Likewise.
-
- * c-pragma.c: Support for #pragma pack (push, <id>, <n>).
- (struct align_stack): Add id field.
- (push_alignment, pop_alignment): Take id parameter.
- (handle_pragma_token): Add necessary states.
- * c-pragma.h (enum pragma_state): Add necessary states.
-
-Tue Apr 27 13:58:23 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (*cmpqf, *cmpqf_noov, *cmpqi_test,
- *cmpqi_test_noov): Remove ? modifier from constraints list.
- (*smulqi3_highpart_clobber, *umulqi3_highpart_clobber): Swap
- output strings to match new constraint ordering.
-
-1999-04-26 19:16 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpphash.c (dump_definition): New function.
- * cpphash.h: Prototype it.
-
- * cpplib.c (handle_directive): Don't output anything here.
- Streamline.
- (pass_thru_directive): Take a length, not a pointer to the
- end. All callers changed.
- (do_define): Handle -dD, -dN, -g3 entirely here. Streamline.
- (do_include): Handle -dI here.
- (do_ident): Correct to match cccp.
- (do_pragma): Copy the pragma through here.
- (do_assert, do_unassert): Tidy.
-
- * cppinit.c (cpp_finish): If -dM was specified, walk the macro
- hash table and call dump_definition on all the entries.
- * cppmain.c: cpp_finish may produce output.
-
-Mon Apr 26 15:27:33 1999 Mark Mitchell <mark@codesourcery.com>
-
- * toplev.c (compile_file): Move call to check_global_declarations
- after output_exception_table to restore behavior as it was before
- 1999-04-22 change.
-
-1999-04-26 10:50 -0700 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixinc/fixincl.c: Improve the handling of child process exits
- * fixinc/server.[ch]: Export the interface for shutting down
- the server process
- * fixinc/inclhack.tpl: Remove unnecessary character quote
- * fixinc/fixincl.sh, fixinc/inclhack.sh: Regenerate
-
-Mon Apr 26 10:41:42 EDT 1999 Andrew MacLeod <amacleod@cygnus.com>
-
- * alpha.md (builtin_setjmp_receiver): Use a label_ref instead of
- a code label.
-
-1999-04-26 09:47 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * rtl.texi: Document the rtl classes and their relation to
- formats.
-
-Mon Apr 26 01:02:38 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (fix_trunc patterns): Use reg_no_subreg_operand on op0
- for less work in reload.
- (movsf and movdf patterns): Put fp reg alternatives first.
-
-Mon Apr 26 01:55:56 1999 Marc Espie <espie@cvs.openbsd.org>
-
- * configure.in (openbsd): Factorize xmake_file.
- (ix86 openbsd): Trim obsolete comment.
- (vax openbsd): Fix typo.
- * configure: Rebuilt.
-
-Mon Apr 26 01:30:59 1999 Donn Terry <donn@interix.com>
-
- * expr.c (expand_assignment): Improve test for pointer type.
-
-Mon Apr 26 00:26:18 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (print_operand_address): Account for the subreg word.
-
-Mon Apr 26 01:08:36 1999 Toshiyasu Morita (tm@netcom.com)
-
- * fold-const.c (make_range): Always initialize arg0 and arg1.
- (fold): Similarly for alt0 and alt1.
- * function.c (fixup_var_refs_insns): Initialize insn_list.
- (instantiate_virtual_regs_1): Initialize offset.
- * optabs.c (expand_binop): Initialize carry_in, carry_out, op0_xhigh
- and op1_xhigh.
- * stmt.c (expand_end_case): Initialize minval and maxval.
-
-Mon Apr 26 01:02:34 1999 Nathan Sidwell <nathan@acm.org>
-
- * toplev.c (report_error_function): Reorder file stack and
- function name printing. Ignore FILE parameter.
-
-Mon Apr 26 00:58:54 1999 Jerry Quinn <jquinn@nortelnetworks.com>
-
- * pa.h (architecture_type): New enum.
- (pa_arch_string, pa_arch): Declare.
- (MASK_PA_10, MASK_PA_20): New flags.
- (TARGET_SWITCHES): Add pa-risc-2-0. Update docs for PA1.0 codegen.
- (TARGET_OPTIONS): Add -march= option.
- * pa.c (pa_arch, pa_arch_string): Define.
- (override_options): Set them.
- * pa/pa-hpux10.h (ASM_FILE_START): Output LEVEL 2.0 asm directive for
- 2.0 architecture.
- * invoke.texi (Option Summary, HPPA Options): Document new
- architecture flags.
-
- * pa/pa-hpux.h, pa/pa-hpux10.h, pa/pa-hpux9.h, pa/pa-osf.h, pa.h,
- pa.c, pa.md, configure.in, configure: Replace TARGET_SNAKE by
- TARGET_PA_11 and MASK_SNAKE by MASK_PA_11.
-
-Mon Apr 26 00:28:25 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
-
- * flags.h (inline_max_insns): Declare.
- * integrate.c (inline_max_insns): New variable.
- (function_cannot_inline_p): Use it.
- * toplev.c (main): Add the flag -finline-limit-n.
- (display_help): Document -finline-limit-n.
- * invoke.texi: Document -finline-limit-n
-
-Sun Apr 25 23:03:32 1999 Richard Henderson <rth@cygnus.com>
-
- * stmt.c (expand_asm_operands): Reload in-out reg-only memory operands.
-
-Sun Apr 25 13:06:13 1999 Richard Henderson <rth@cygnus.com>
-
- * function.c (assign_parms/STACK_BYTES): Revert last change,
- and that of 19 Nov.
-
-Sun Apr 25 12:30:50 1999 Richard Henderson <rth@cygnus.com>
-
- * calls.c (emit_call_1): New arg rounded_stack_size; update callers.
- Update pending_stack_adjust based on this value.
- (compute_argument_block_size): Include pending_stack_adjust in
- PREFERRED_STACK_BOUNDARY alignment.
- * function.c (assign_parms): Don't round to PREFERRED_STACK_BOUNDARY.
-
-Sun Apr 25 14:38:10 EDT 1999 John Wehle (john@feith.com)
-
- * stupid.c (stupid_mark_refs): Generate a REG_UNUSED note
- for a register which is clobbered even if the register
- was used by an earlier instruction.
-
- * i386.md (fix_truncsfdi2, fix_truncdfdi2,
- fix_truncxfdi2): Don't bother with the gen_reg_RTX.
- (fix_truncsfsi2, fix_truncsfdi2, fix_truncdfsi2,
- fix_truncdfdi2, fix_truncxfsi2, fix_truncxfdi2): Update
- operand constraints and modes.
- * i386.c (output_fix_trunc): Use HImode register to avoid
- memory stalls. Call output_move_double instead of output_to_reg.
- (output_to_reg): Remove.
- * i386.h: Likewise.
-
- * i386.md (negsf2, negdf2, negxf2): Set the type
- attribute to fpop.
-
-Sat Apr 24 23:15:57 1999 Donn Terry (donn@interix.com)
-
- * alpha.md (call_value_nt): Correct subscripts.
-
-Sat Apr 24 20:49:20 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (PRINT_OPERAND_ADDRESS): Break out to ...
- * alpha.c (print_operand_address): here. Handle subregs.
-
-Fri Apr 23 22:35:41 EDT 1999 John Wehle (john@feith.com)
-
- * acconfig.h (HAVE_GAS_FILDS_FISTS): Add.
- * configure.in: Check assembler instructions.
- * configure: Rebuild.
- * config.in: Likewise.
- * i386.md (floathisf2, floathidf2, floathixf2): New patterns.
- * i386.c (print_operand): Use the proper suffix for a 387 HImode
- operand. Abort if a 387 operand has an unsupported size.
-
-Fri Apr 23 16:57:40 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_write_verstamp): Mark `file' unused.
- * alpha.h (FUNCTION_VALUE): Use gen_rtx_REG not gen_rtx.
- (LIBCALL_VALUE): Likewise.
- (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Handle normal subregs.
-
-Fri Apr 23 14:57:33 1999 Donn Terry <donn@interix.com>
-
- * alpha32.h (INITIALIZE_TRAMPOLINE): Get offsets right.
-
- * alpha.c (alpha_initialize_trampoline): Add covert_memory_address
- calls as needed.
-
-Fri Apr 23 14:36:47 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_prologue): Don't negate frame size
- for use with subq.
-
-Fri Apr 23 09:43:18 1999 Nick Clifton <nickc@cygnus.com>
-
- * print-rtl.c (print_rtx): Display LABEL_NUSES for labels.
-
-Thu Apr 22 23:08:37 1999 Mark Mitchell <mark@codesourcery.com>
-
- * toplev.h (wrapup_global_declarations): Declare.
- (check_global_declarations): Likewise.
- * toplev.c (wrapup_global_declarations): New function, split out
- from ...
- (check_global_declarations): Likewise...
- (compile_file): Here.
-
-Thu Apr 22 22:34:41 1999 Richard Henderson <rth@cygnus.com>
-
- * c-parse.in (expr_no_commas): Verify we've an expr before
- calling C_SET_EXP_ORIGINAL_CODE.
-
-Thu Apr 22 22:22:15 EDT 1999 John Wehle (john@feith.com)
-
- * toplev.c (rest_of_compilation): Always set
- current_function_uses_only_leaf_regs appropriately.
-
-Thu Apr 22 14:39:43 1999 Mumit Khan <khan@xraylith.wisc.edu>
-
- * i386/xm-cygwin.h (HAVE_BCOPY): Delete unneeded macro.
- (HAVE_BZERO): Likewise.
- (HAVE_BCMP): Likewise.
- (HAVE_RINDEX): Likewise.
- (HAVE_INDEX): Likewise.
- (DIR_SEPARATOR_2): Define.
- (GET_ENV_PATH_LIST): Turn path lists into POSIX.
- (PATH_SEPARATOR): Use ':'.
-
-1999-04-22 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * configure.in: enable disabling of fast fixincludes
- * configure: regenerate
-
-1999-04-21 14:55 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * gen-protos.c: #undef abort after including system.h.
- Delete defns of fancy_abort and fatal.
- * fix-header.c: Delete defn of fancy_abort.
-
-Wed Apr 21 12:09:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
-
- * cccp.c (simplify_filename): Always preserve leading double slash.
-
-Wed Apr 21 18:15:55 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md: Add new peepholes to remove redundant loads.
-
-Wed Apr 21 17:41:29 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (binary patterns): Reorder alternatives
- so that two operand instructions are chosen before three operand
- instructions.
-
-Tue Apr 20 23:38:58 1999 Nathan Sidwell <nathan@acm.org>
-
- * objc/Make-lang.in (objc-parse.c): Put BISON parameters in correct
- order.
-
- * Makefile.in (c-parse.c): Put BISON parameters in correct
- order.
-
-Tue Apr 20 16:38:11 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (nt_lda): New pattern.
- * alpha.c (alpha_expand_prologue): Use it for large frames
- under windows nt.
-
-Tue Apr 20 17:57:14 1999 Catherine Moore <clm@cygnus.com>
-
- * config/arm/arm.md (movhi): Add check for odd offset.
-
-Tue Apr 20 13:14:58 EDT 1999 John Wehle (john@feith.com)
-
- * i386.c (output_move_double): Abort if a non-offsettable
- memory operand is encountered. Delete unused code.
- (find_addr_reg): Remove.
-
-Mon Apr 19 21:13:02 1999 Craig Burley <craig@jcb-sc.com>
-
- * tree.def (BLOCK): Fix typo in comment.
-
-1999-04-19 14:51 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpplib.c (output_line_command): Drop CONDITIONAL argument.
- We can omit unnecessary line commands if file_change ==
- same_file and pfile->lineno != 0. All callers changed.
- (cpp_get_token [case '\n']): Don't bump pfile->lineno if
- CPP_OPTIONS (pfile)->no_line_commands is set.
- * cpplib.h: Fix prototype of output_line_command.
-
-1999-04-18 17:46 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppfiles.c (find_position, read_and_prescan): Use `unsigned
- long' variables consistently to count line and column numbers.
-
-Sun Apr 18 15:50:33 EDT 1999 John Wehle (john@feith.com)
-
- * output.h (current_function_is_leaf,
- current_function_uses_only_leaf_regs): Declare.
- * function.c (current_function_is_leaf,
- current_function_uses_only_leaf_regs): Define.
- (init_function_start): Initialize current_function_is_leaf
- and current_function_uses_only_leaf_regs.
- * final.c (leaf_function): Don't define.
- (final_start_function): Replace uses of leaf_function with
- current_function_uses_only_leaf_regs.
- * toplev.c (rest_of_compilation): Set current_function_is_leaf
- prior to invoking local register allocation.
- (rest_of_compilation): Replace uses of leaf_function with
- current_function_uses_only_leaf_regs.
- * dbxout.c (dbxout_symbol, dbxout_parms): Likewise.
- * dwarf2out.c (add_location_or_const_vaule_attribute): Likewise.
- * dwarfout.c (add_location_or_const_value_attribute): Likewise.
- * sdbout.c (sdbout_symbol): Likewise.
- * sparc.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise.
- * sparc.c (eligible_for_epilogue_delay, output_return,
- sparc_return_peephole_ok): Likewise.
- * sparc.md (leaf_function attribute, untyped_return): Likewise.
- * i386.c (ix86_compute_frame_size): Don't align the stack
- for leaf functions which don't allocate any stack slots.
- * tm.texi: Update documentation.
-
-Sun Apr 18 02:15:09 PDT 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Apr 18 00:08:45 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change --
- make sure FP_BASE_P registers are only used with an integer.
-
-Sat Apr 17 22:54:17 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (REG_OK_FP_BASE_P): New macro.
- (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Use it.
- * alpha.md (adddi3+1): New insn to handle large constants off
- the soft frame pointer.
- (adddi3+2): Don't split soft frame pointer or arg pointer additions.
-
-Sun Apr 18 17:24:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (legitimize_operands): Use rtx_cost
- to determine if it is worthwhile forcing a constant into a register.
- * config/c4x/c4x.h (CONST_COSTS): An integer value of 255 or 65535
- used with a logical and or an integer value of 16 or 24 used with
- a right shift has zero cost on the C40.
-
-Sat Apr 17 21:30:11 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
-
- * gcse.c (compute_local_properties): If setp is nonzero, clear
- TRANSP instead of setting it to all ones.
-
-Sat Apr 17 21:10:10 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.c (i386_preferred_stack_boundary_string): New global variable.
- (i386_preferred_stack_boundary): New global variable.
- (override_functions): Set it. Tidy option setting code.
- * i386.h (TARGET_OPTIONS): New command line option.
- (i386_preferred_stack_boundary_string): Declare it.
- (i386_preferred_stack_boundary): Likewise.
- (PREFERRED_STACK_BOUNDARY): Use i386_preferred_stack_boundary.
-
-Sat Apr 17 19:22:38 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.c (k6_cost): Take into account the decoding time.
-
-Sat Apr 17 19:13:22 1999 Donn Terry <donn@interix.com>
-
- * i386.h (PRINT_OPERAND_PUNCT_VALID_P): Allow _.
- * i386.c (print_operand): New %_ operator.
- (load_pic_register): Proper number of leading _ in GOT literal.
- * i386.md (prologue_get_pc_and_set_got): Likewise.
- * i386/unix.h (ASM_OUTPUT_MI_THUNK): Likewise.
-
-Sat Apr 17 19:13:07 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_prologue): Use gen_adddi3 instead of
- emit_move_insn+plus_constant. For NT, don't use the stack probe
- loop pointer to allocate stack space.
- * alpha.md (adddi3): Always use lda to set the stack pointer.
-
-1999-04-17 20:11 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * c-aux-info.c, emit-rtl.c, explow.c, expmed.c, gcse.c,
- haifa-sched.c, optabs.c, reorg.c, resource.c, sched.c: Include
- toplev.h for real declaration of trim_filename.
- * Makefile.in: Update dependencies.
-
-Sat Apr 17 14:36:19 1999 Craig Burley <craig@jcb-sc.com>
-
- * tree.c (chainon): Check for circularity only if
- ENABLE_CHECKING is defined.
-
-1999-04-17 10:15 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cccp.c: Make fatal non-static.
-
-Sat Apr 17 23:47:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (*andqi3_255_clobber,*andqi3_65535_clobber):
- New logical and patterns using C40 bit-field insert instructions.
- (*lshrqi3_24_clobber,*ashrqi3_24_clobber,*lshrqi3_16_clobber,
- *ashrqi3_16_clobber): New shift patterns using C40 bit-field insert
- instructions.
-
-1999-04-16 22:44 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * system.h: Always prototype abort. Prototype fatal. Define
- abort to call fatal, not fprintf/exit. Define a stub macro
- for trim_filename.
- * toplev.c: Define DIR_SEPARATOR. (trim_filename): New
- function.
- * toplev.h: Prototype trim_filename, and #undef system.h's stub.
-
- * gcc.c, genattr.c, genattrtab.c, gencodes.c, genconfig.c,
- genemit.c, genextract.c, genflags.c, genopinit.c, genoutput.c,
- genpeep.c, genrecog.c: Make fatal non-static.
- * gcov.c, gengenrtl.c, protoize.c: #undef abort after
- including system.h.
-
- * config/i386/dgux.h, config/m68k/xm-amix.h: Remove stale code
- relating to abort.
-
-Sat Apr 17 11:25:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (mulqf3_clrqf_clobber, mulqi3_clrqi_clobber):
- New patterns to support parallel multiply and load of zero.
-
-Fri Apr 16 01:23:47 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.c (valid_machine_attribute): If we're modifying the
- FUNCTION_TYPE within a POINTER_TYPE and we don't get a decl,
- update the POINTER_TYPE.
-
-Fri Apr 16 00:19:31 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.c (x86_adjust_cost): Move break statement to correct place.
-
-Thu Apr 15 23:17:33 1999 Jerry Quinn <jquinn@nortelnetworks.com>
-
- * pa.h (HAVE_PRE_INCREMENT, HAVE_POST_INCREMENT,
- HAVE_PRE_DECREMENT, HAVE_POST_DECREMENT): Fix pa_cpu value from
- 8000 to PROCESSOR_8000.
-
-Thu Apr 15 20:46:57 1999 Donn Terry (donn@interix.com)
-
- * expr.c (expand_assignment): Force pointers to proper mode if
- POINTERS_EXTEND_UNSIGNED is defined.
-
- * xm-alpha.h (alloca.h): Add Interix to list of special machines
- that don't like alloca.h, pending using autoconf results.
-
- * except.c (start_catch_hadler): Be sure rtime_address is Pmode
- if POINTERS_EXTEND_UNSIGNED.
-
- * except.c (expand_eh_return): Force pointers to proper mode if
- POINTERS_EXTEND_UNSIGNED.
-
-Thu Apr 15 23:13:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h: Tweaked comment formatting.
- * config/c4x/c4x.c: Likewise.
-
-Thu Apr 15 02:45:19 1999 Mumit Khan <khan@xraylith.wisc.edu>
-
- * aclocal.m4 (GCC_FUNC_MKDIR_TAKES_ONE_ARG): Define.
- * configure.in: Use.
- * configure: Rebuilt.
- * acconfig.h (MKDIR_TAKES_ONE_ARG): Add.
- * config.in: Rebuilt.
- * system.h: Use.
-
-Thu Apr 15 01:03:21 1999 Jan Hubicka <hubicka@freesoft.cz>
- Jeff Law <law@cygnus.com>
-
- * i386.md (QImode add pattern): Support lea instruction.
- (HImode add pattern): Likewise.
-
- * i386.md (ashlsi patterns): Call output_ashl instead of output_ashlsi3.
- (ashlqi): Use expander, separate LEA and SAL / ADD patterns; call
- output_ashl.
- (ashlhi): Likewise.
- * i386.h (output_ashl): Renamed from output_ashlsi3.
- * i386.c (output_ashl): Likewise; support HImode and QImode operands
- as well.
-
- * i386.md (notsi, nothi, xorsi, xorhi, and xorqi patterns): Call
- memory_address_displacement_length instead of memory_address_length.
- * i386.c (memory_address_info): Renamed from memory_address_length.
- Accept new argument DISP_LENGTH. All callers changed. If DISP_LENGTH,
- then return the displacement length. Else return length of the
- entire memory address. Handle MULT case correctly.
- * i386.h (memory_address_info): Update declaration.
-
- * i386.md (memory_bit_test): Fix paren error.
-
-Wed Apr 14 21:29:18 1999 Andrew Haley <aph@cygnus.com>
-
- * flow.c: (make_edges): Always make edges from a basic block
- to its exception handlers, even if the block ends with a jump.
-
-1999-04-14 23:26 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * graph.c (node_data): Return void. Ignore result of
- print_rtl_single. Change caller to match.
- * integrate.c (subst_constants): Initialize op0_mode to an
- invalid mode, and abort before use if it's still invalid.
- (Can only happen if the RTX_CLASS, RTX_FORMAT tables are corrupted.)
- * objc/objc-act.c (get_objc_string_decl,
- build_selector_translation_table, generate_protocol_list,
- synth_id_with_class_suffix, build_keyword_selector,
- build_selector_expr, gen_declarator): Abort when the tree
- structure is corrupted.
-
-Wed Apr 14 19:57:49 1999 Jeffrey A Law (law@cygnus.com)
-
- * configure.in (alpha interix): Use symbolic names to set
- target_cpu_default.
- * configure: Rebuilt.
-
- * explow.c (allocate_dynamic_stack_space): Undo last change. Use
- convert_memory_address instead.
-
-Wed Apr 14 19:42:02 1999 Donn Terry (donn@interix.com)
-
- * alpha/lib1funcs.asm: New file.
- * alpha/t-interix (lib1funcs.asm): Add to build.
-
- * explow.c (allocate_dynamic_stack_space): Correctly convert TARGET
- to Pmode.
-
-Wed Apr 14 14:26:36 1999 John Wehle (john@feith.com)
-
- * i386.md (truncxfdf): Output the template supplied
- by output_move_double with the correct operands.
-
- * i386.md (extendsfdf, extendsfxf, extenddfxf): Use
- output_float_extend instead specifying '#' as the template.
- * i386.c (output_float_extend): Define.
- * i386.h (output_float_extend): Declare.
-
-Wed Apr 14 10:48:03 1999 Catherine Moore <clm@cygnus.com>
-
- * config/mips/elf.h, config/mips/elf64.h
- (CTORS_SECTION_ASM_OP): Define.
- (DTORS_SECTION_ASM_OP): Define.
- (EXTRA_SECTIONS): Define.
- (INVOKE__main): Define.
- (NAME__MAIN): Define.
- (SYMBOL__MAIN): Define.
- (EXTRA_SECTIONS_FUNCTIONS): Define.
- (SECTION_FUNCTION_TEMPLATE): Define.
- (ASM_OUTPUT_CONSTRUCTOR): Define.
- (ASM_OUTPUT_DESTRUCTOR): Define.
- (CTOR_LIST_BEGIN): Define.
- (CTOR_LIST_END): Define.
- (DTOR_LIST_BEGIN): Define.
- (DTOR_LIST_END): Define.
- (LIB_SPEC): Define.
- (STARTFILE_SPEC): Define.
- (ENDFILE_SPEC): Define.
- * config/mips/linux.h: Undefine all of the above.
- * config/mips/rtems64.h: Likewise.
- * config/mips/t-r3900: Likewise.
- * config/mips/t-elf: New file.
- * config/mips/vxworks.h: New file.
- * configure.in (mips-wrs-vxworks): Use mips/vxworks.h.
- (mips*-*-*elf*): Use t-elf instead of t-ecoff.
- * configure: Regenerate.
-
-Wed Apr 14 09:59:38 1999 Richard Henderson <rth@cygnus.com>
-
- * reload1.c (emit_reload_insns): Also find equivalent mems
- for subregs of pseudos.
-
- * alpha.c (aligned_memory_operand): Recognize the output of
- LEGITIMIZE_RELOAD_ADDRESS. Examine reg_equiv_memory_loc in
- the event of a pseudo.
- (unaligned_memory_operand): Likewise. Don't otherwise accept
- completely illegal addresses.
- (normal_memory_operand): Likewise. Handle subregs of pseudos.
- (get_aligned_mem): Revert previous change. Abort if we don't have a
- mem. During reload, call find_replacement on all illegal memories.
- (get_unaligned_address): Likewise.
- * alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Use !aligned_memory_operand
- instead of unaligned_memory_operand.
- * alpha.md: Revert extra argument to get_aligned_mem.
- (reload_inqi): Use any_memory_operand in constraints. Abort if
- we're not given some sort of mem.
- (reload_inhi): Likewise.
- (reload_outqi, reload_outhi): Likewise.
-
-Wed Apr 14 09:39:20 1999 Richard Henderson <rth@cygnus.com>
-
- * i386.md (neghi): Use the whole register when widening the op.
-
-1999-04-14 12:37 -0400 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpperror.c, cppexp.c, cpplib.c: Never call abort.
- * cpphash.c: Only call abort when we detect corruption of the
- malloc arena.
- * cppmain.c: Don't define fatal or fancy_abort.
-
-Wed Apr 14 09:19:39 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.c (x86_adjust_cost): Agi stall takes 1 cycle on Pentium, fst
- requires value to be ready one extra cycle.
-
-Wed Apr 14 11:28:34 1999 Dave Brolley <brolley@cygnus.com>
-
- * config/i386/i386.c (memory_address_length): Add missing parenthesis.
-
-Wed Apr 14 13:59:27 1999 Martin von Loewis <loewis@informatik.hu-berlin.de>
-
- * extend.texi (Deprecated Features): New node.
- * invoke.texi (-Wdeprecated): Document.
-
-Wed Apr 14 00:18:22 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.md (SImode logical compare): Avoid outputting non-pariable testw
- and testl on Pentium.
- (register and memory bit tests): Likewise.
- (setcc, normal and reversed conditional branches): Use shorter
- sequence for testing flags stored in EAX.
-
- * i386.md (xorsi3): Do not output NOT instrctions on Pentium.
- (xorqi3): Likewise.
- (xorhi3): Likewise.
- (notsi2): Likewise.
- (notqi2): Likewise.
- (nothi2): Likewise; do not output prefixed opcodes when possible.
-
- * i386.md (neghi2): Do not output prefixed opcode when possible.
- (ashlhi3): Likewise.
-
-Wed Apr 14 00:08:46 1999 Richard Henderson <rth@cygnus.com>
-
- * i386.c (memory_address_length): New function.
- * i386.h (memory_address_length): Declare it.
-
-Tue Apr 13 22:52:04 1999 Donn Terry (donn@interix.com)
- Martin Heller (Ing.-Buero_Heller@t-online.de)
-
- * configure.in (interix Alpha): Add.
- (winnt Alpha): Use alpha32.h
- (interix i386): Parallel Alpha32.
- * configure: Rebuilt.
-
- * config/interix.h: Move common elements from i386-interix.h.
- * config/i386/i386-interix.h: Delete same.
- * config/alpha/alpha-interix.h: New file.
-
- * config/alpha/alpha32.h: New file, part fron win-nt.h.
- * config/alpha/win-nt.h: Deletions (-> alpha32.h).
- * config/alpha/interix.h: New file
-
- * config/alpha/alpha.md (interix): Comment.
-
- * config/alpha/xm-alpha-interix.h: New file.
-
- * config/alpha/t-interix: New file.
-
- * fixinc/mkfixinc.sh (interix/Alpha): Add.
-
-1999-04-13 Mike Stump <mrs@wrs.com>
-
- * i386/vxi386.h (CPP_CPU_SPEC): Define appropriately for vxworks.
- (CPP_PREDEFINES, LIB_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): likewise.
-
-Tue Apr 13 21:01:36 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * c-common.c (default_valid_lang_attribute): New fn.
- (valid_lang_attribute): New callback ptr.
- (decl_attributes): Call it. Move init_priority support into
- C++ frontend.
-
-Tue Apr 13 17:47:14 1999 John Wehle (john@feith.com)
-
- * i386.md (movdi): Add splitter.
-
-Wed Apr 14 10:04:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (storeqf_int, storeqf_int_clobber, loadqf_int,
- loadqf_int_clobber): Add new patterns with corresponding splitters
- to handle moves of floating point values into and out of intager
- registers by using memory.
-
- * config/c4x/c4x.c (c4x_check_legit_addr): Disallow PRE_INC for modes
- other than QFmode and QImode.
- (mixed_subreg_operand): New function.
- (c4x_emit_move_sequence): If moving a floating point value into or
- out of an integer register, use the new patterns storeqf_int_clobber
- or loadqf_int_clobber.
- (reg_imm_operand, *_reg_operand): Call reg_operand instead of
- register_operand.
- (reg_operand, src_operand): Disallow operand if it satisifes
- mixed_subreg_operand.
-
- * config/c4x/c4x.h (mixed_subreg_operand): Add prototype.
-
-Tue Apr 13 14:49:13 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.c (agi_dependent): Handle push operation more correctly.
-
-Tue Apr 13 14:45:17 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.md (anddi3): Add % constraint.
- (iordi3, xordi3): Likewise.
-
-Tue Apr 13 14:29:58 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.md (extendhisi2): Output mov instead of cw instruction for K6
- to improve decoding bandwidth.
- * i386.md (extendhiqi2): Likewise.
-
-Tue Apr 13 14:26:31 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.md (movsf_push): Handle memory to memory case too, new splitter.
- (movdf_push, movxf_push): Likewise.
- (movsf_push_memory, movdf_push_memory, movxf_push_memory): Remove.
-
-Tue Apr 13 14:14:06 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * i386.md: Do not output mov %0,reg on AMD K6.
-
-Tue Apr 13 12:14:07 1999 Dave Brolley <brolley@cygnus.com>
-
- * cppinit.c (cpp_start_read): Fix buffer overwrite.
- * Makefile.in (cppinit.o): Typo in dependencies.
-
-Tue Apr 13 05:04:59 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.h (function prototypes for arm.c): Ifdef these out if
- HAVE_CONFIG_H is not defined.
-
-Tue Apr 13 02:11:11 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.c: Avoid Using immediate zero for register zero.
- * pa.md: Likewise.
-
- * pa.c (print_operand, case 'f'): New case for FP register or 0.0.
- (print_operand, case 'r'): Use %r0 for zero value.
- * pa.md (move patterns, fcmp patterns): Use new %f output arg.
-
- * pa.c: Use a register name, not a raw immediate in branch,
- compare/clear, sub, subb, uaddcm and vshd instructions.
- * pa.md: Likewise.
-
- * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
-
- * pa.c: Use a register name, not a raw immediate in "bv" instructions.
- * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
-
- * pa.c: Remove space register specification in memory addresses,
- except where it is actually needed.
- * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
-
-Mon Apr 12 23:34:35 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon Apr 12 14:58:30 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * reg-stack.c (check_stack_regs_mentioned): Remove variable SIZE.
-
-Mon Apr 12 19:15:17 1999 Daniel Jacobowitz <dan@debian.org>
-
- * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Add missing backslash.
-
-Mon Apr 12 19:11:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
-
- * i386/cygwin.h (SUBTARGET_SWITCHES): Add -mconsole; fix
- -mno-nop-fun-dllimport and minor doc fixes.
- (STARTFILE_SPEC): Cygwin DLLs don't have dllcrt0.
- (LINK_SPEC): Add -mconsole support.
- * i386/mingw32.h (LIB_SPEC): Make libraries consistent with
- Cygwin.
- (LINK_SPEC): Remove. Use Cygwin's version.
- (MATH_LIBRARY): Make it null.
- * i386/crtdll.h (MATH_LIBRARY): Likewise.
-
-Fri Apr 12 15:00:52 1999 Stan Cox <scox@cygnus.com>
-
- * c-decl.c (c_decode_option, start_decl, start_function,
- finish_function) : Recognize -Wno-main so we can avoid warnings.
-
-1999-04-12 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpphash.c (collect_expansion, macroexpand,
- push_macro_expansion): Make the escape character in macro
- buffers '\r', not '@'. Remove code to protect literal
- occurrences of the escape character; '\r' cannot appear
- in a macro buffer unless we put it there.
- * cpplib.c (skip_comment, copy_comment, cpp_skip_hspace,
- copy_rest_of_line, cpp_get_token, parse_string,
- parse_assertion): '\r' might be a backslash-newline marker, or
- it might be a macro escape marker, depending on
- CPP_BUFFER (pfile)->has_escapes. '@' is not a special
- character.
- * cpplib.h: Update commentary.
-
-Mon Apr 12 09:30:03 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.h (target_fp_name, structure_size_string, arm_cpu_select):
- Const-ify.
- * arm.c (target_fp_name, structure_size_string): Const-ify.
-
- * arm.md (reload_inhi, reload_outhi): Make the scratch DImode.
- * arm.c (arm_reload_in_hi): Handle cases when the input is still
- a pseudo, make use of scratch registers for reloading the address
- as appropriate.
- (arm_reload_outhi): Similarly for when the output is still a pseudo.
-
- * riscix.h (SUBTARGET_SWITCHES): Document.
-
-1999-04-12 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixincludes:
- make fixincludes behave like the scripts in fixinc/
-
- * Makefile.in( stmp-fixinc ):
- ensure the SHELL value is that of the make
-
- * fixincl/inclhack.tpl:
- the file name lists ought to be restricted to "*.h" anyway
- C++ files may be named .../[a-z]++/... also
- Adding copyright year and attribution to output
-
- * fixincl/inclhack.def:
- fixed broken expression
- Clarify a some comments
-
- * fixincl/fixincl.tpl:
- Clarify a some comments
- Remove dead template text
- Correct the counting of regular expressions
-
-Mon Apr 12 03:07:44 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (aligned_memory_operand): Handle out of range stack slots.
- Take a new SCRATCH argument for the occasion. Update all callers.
- (get_unaligned_address): Abort on out of range stack slots.
- * alpha.md (adddi3 splitter): Check s_p_rtx not REGNO.
- (reload_inqi): Check for aligned mems before unaligned.
- (reload_inhi): Likewise.
-
-Mon Apr 12 03:11:30 1999 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (flow_delete_insn): If we delete a CODE_LABEL, also remove
- it from the nonlocal_goto_handler_labels list.
- * jump.c (delete_insn): Likewise.
- (jump_optimize_1): Also recompute LABEL_NUSES when we are just
- marking labels.
- * rtl.h (remove_node_from_expr_list): Declare.
- * rtlanal.c (remove_node_from_expr_list): New function.
-
-Mon Apr 12 02:37:02 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * reg-stack.c: Update comment, include varray.h.
- (stack_regs_mentioned_data): New global variable.
- (check_stack_regs_mentioned): New function.
- (stack_regs_mentioned): New function.
- (reg_to_stack): Initialize and free stack_regs_mentioned_data,
- use stack_regs_mentioned.
- (record_asm_reg_life): Change insn type cache for changed insn.
- (record_reg_life): Do not change the insn mode.
- (emit_pop_insn): Likewise.
- (emit_swap_insn): Likewise.
- (move_for_stack_reg): Likewise.
- (stack_reg_life_analysis): Use stack_regs_mentioned.
- (emit_swap_insn): Likewise.
- (subst_stack_regs): Likewise.
- (convert_regs): Likewise.
- * jump.c (find_cross_jump): Use stack_regs_mentioned.
- * rtl.h (stack_regs_mentioned): Declare.
-
-Mon Apr 12 00:57:10 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
-
- * integrate.c (INTEGRATE_THRESHOLD): Sync it with the comment.
-
-Sun Apr 11 10:24:18 1999 Mark Mitchell <mark@codesourcery.com>
-
- * rtl.h (rtx_def): Update documentation for jump and call.
-
-Sun Apr 11 07:43:44 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * jump.c (jump_optimize_1): Make the definition static to match
- the prototype.
-
-Sat Apr 10 22:51:53 1999 Jan Hubicka <hubicka@limax.paru.cas.cz>
-
- * flow.c (life_analysis): New parameter remove_dead_code.
- (life_analysis_1): Likewise.
- (propagate_block): Likewise; use it.
- * output.h: Update prototype.
- * toplev.c: Update calls to life_analysis.
-
-Sat Apr 10 22:12:12 1999 Jan Hubicka <hubicka@freesoft.cz>
-
- * recog.c (constrain_operands): Ignore unary operators when
- matching operands. Recognize '5'..'9' as well.
-
-Sat Apr 10 21:53:02 1999 Philipp Thomas (kthomas@gwdg.de)
- Richard Henderson <rth@cygnus.com>
-
- * configure.in: Set target_cpu_default2 for target_alias k6.
- * i386.h (TARGET_SWITCHES): Remove no-<cpu> entries.
- (CC1_CPU_SPEC): Likewise.
- (CPP_CPU_DEFAULT_SPEC): Streamline definition. Add K6 version.
- (CPP_K6_SPEC): New.
- (CPP_CPU_SPEC): Add K6 variant.
- (EXTRA_SPECS): Likewise.
-
-Fri Apr 9 11:29:17 1999 Richard Henderson <rth@cygnus.com>
-
- * flow.c (merge_blocks_nomove): Rewrite to properly handle two
- blocks that vanish entirely during merging.
-
-Sat Apr 10 20:09:55 1999 John Wehle (john@feith.com)
-
- * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
- floatsixf2, floatdixf2, movsicc, movhicc, movsfcc, movdfcc,
- movxfcc, movdicc): Remove unused register constraints from
- the splitters.
-
- * i386.md (fixuns_truncsfsi2, fixuns_truncdfsi2,
- fixuns_truncxfsi2): Delete.
-
- * reg-stack.c (delete_insn_for_stacker): Ensure that
- the only side effects of a PARALLEL are clobbers.
- (subst_stack_regs): Handle subst_stack_regs_pat deleting
- a PARALLEL.
- * i386.md (extendsfdf2, extenddfxf2,
- extendsfxf2): Rewrite using a splitter.
- * i386.c (output_op_from_reg): Remove.
- * i386.h: Likewise.
-
-Sat Apr 10 13:09:18 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.c (di_operand): Allow SUBREGs as well.
- (soft_df_operand): Allow SUBREGs as well.
-
-Sat Apr 10 06:14:31 1999 Jan Hubicka <hubicka@paru.cas.cz>
-
- * extend.texi (Assembler Instructions with C Expression Operands):
- Document the i386 floating point operands.
-
-1999-04-10 Mike Stump <mrs@wrs.com>
-
- * configure.in (*-*-vxworks): Add vxWorks thread support for all
- vxWorks targets.
- * configure.in (thumb-wrs-xvworks): Add vxWorks support for thumb.
- * configure: Rebuilt.
-
-Sat Apr 10 06:04:50 1999 Donn Terry (donn@interix.com)
-
- * i386/t-interix: Use mostly system headers unchanged.
- Use system assert.h
- * fixinc/fixinc.interix: Ditto (make almost no-op).
- * config/x-interix.h (_ALL_SOURCE): add -D
- * config/x-interix.h (crti.o): Delete dependency.
- * config/xm-interix.h (ONLY_INT_FIELDS): Define only when bootstrapping.
- * i386/xm-i386-interix.h: New file.
- * i386/interix.h (ASM_OUTPUT_LIMITED_STRING): Fix warnings.
- * i386/i386-interix.h: Renamed from interix.h.
- * configure.in (interix): Use new files.
- * configure: Rebuilt.
-
-Sat Apr 10 05:25:28 1999 Daniel Jacobowitz <dan@debian.org>
-
- * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Fix conditions
- for -Dunix and -Dlinux, and remove duplicate definition.
- Change -Asystem(linux) to -Asystem(posix).
- (CPP_OS_SOLARIS_SPEC): Fix conditions for -Dunix, -Dsun,
- -DSVR4, -D__EXTENSIONS__.
-
- * rs6000/linux.h (CPP_PREDEFINES): Remove -Dunix,
- -Dlinux, -Asystem(linux), and -Asystem(unix).
-
-Sat Apr 10 05:14:50 1999 Mark Elbrecht <snowball3@usa.net>
-
- * i386/djgpp.h (SET_ASM_OP): Define.
-
- * cccp.c (DIR_SEPARATOR): Move to the top of the file.
- (is_dir_separator): New function.
- (simplify_filename): Use it.
- * collect2.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM in place
- of the DIR_SEPARATOR test.
- Consider any file starting with a drivename to be absolute.
- If the absolute filename test fails and EXECUTABLE_SUFFIX is
- defined, append EXECUTABLE_SUFFIX to the file and try again.
- * cppinit.c (base_name): Use HAVE_DOS_BASED_FILE_SYSTEM
- in place of __MSDOS__ and _WIN32.
- * cppfiles.c (simplify_pathname): Likewise.
- * gcc.c (IS_DIR_SEPARATOR): Define new macro. Returns true if a
- character is a directory separator.
- (find_a_file): Use it.
- (convert_filename): Likewise.
- (process_command): Likewise.
- (do_spec_1): Likewise.
- (is_directory): Likewise.
- (main): Likewise.
- * prefix.c (IS_DIR_SEPARATOR): Define. Tests whether a character is
- a directory separator.
- (translate_name): Use it.
- (update_path): Change DIR_SEPARATOR_2 to DIR_SEPARATOR. Fix
- warning in block where '/' is changed to DIR_SEPARATOR.
- * i386/xm-djgpp.h (DIR_SEPARATOR): Set to '/'.
- (DIR_SEPARATOR_2): New macro. Set to '\'.
- (HAVE_DOS_BASED_FILESYS): Define.
- * i386/xm-mingw32.h: Updated copyright. Set
- DIR_SEPARATOR_2 to '/'. Define HAVE_DOS_BASED_FILE_SYSTEM.
- * i386/xm-os2.h: Likewise.
- * winnt/xm-winnt.h: Likewise.
- * i386/xm-dos.h: Likewise. Add copyright.
-
-1999-04-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * pdp11.h (TARGET_SWITCHES): Add option to vary assembler syntax.
- (TARGET_DEFAULT): Possibly use UNIX syntax.
- (TARGET_UNIX_ASM, TARGET_UNIX_ASM_DEFAULT): New macros.
- (REGISTER_NAMES): Use "r5" instead of "fp".
- (ASM_OUTPUT_ALIGN): Use ".even" directive, and abort for any
- greater alignment.
- * 2bsd.h (TARGET_UNIX_ASM_DEFAULT): Default to UNIX assembler
- syntax for 2BSD.
- * pdp11.c (output_ascii): Use working syntax for ".byte".
- (print_operand_address): Use "*" instead of "@" when using UNIX
- assembler syntax.
-
-Sat Apr 10 03:50:12 1999 Jeffrey A Law (law@cygnus.com)
-
- * rtl.h (rebuild_jump_labels): Declare.
- * jump.c (jump_optimize_1): Renamed from jump_optimize. Make static.
- Add new argument MARK_LABELS_ONLY. Quit after mark_all_labels if
- requested.
- (jump_optimize, rebuild_jump_labels): New wrapper functions for
- jump_optimize_1.
- * toplev.c (rest_of_compilation): Use rebuild_jump_labels instead of
- running the entire jump optimizer.
-
- * rtl.h (local_alloc): Returns an integer now.
- * local-alloc.c (recorded_label_ref): New file scoped variable.
- (local_alloc): Initialize recorded_label_ref to zero. Return its
- value when local allocation has completed.
- (update_equiv_regs); If we create an equivalence for a LABEL_REF,
- set recorded_label_ref.
- * toplev.c (rest_of_compilation): Run the jump optimizer after
- register allocation and reloading if needed.
-
-Fri Apr 9 21:02:57 1999 Krister Walfridsson (cato@df.lth.se)
-
- * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Fix typo.
- * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
-
-1999-04-09 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpphash.c (special_symbol): When expanding __LINE__, use the
- top file buffer, not the top buffer.
-
-Fri Apr 9 13:41:04 1999 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (check-g++, check-gcc, check-g77, check-objc): Add
- cd .. to TCL_LIBRARY command.
-
-Fri Apr 9 13:04:52 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/unknown-elf.h (SUBTARGET_CPU_DEFAULT): Only define if
- not already specified.
-
-Fri Apr 9 11:18:55 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * c-common.c (decl_attributes, A_INIT_PRIORITY): Allow arrays
- of classes, too.
-
-Fri Apr 9 10:40:10 1999 Kaveh R. Ghazi <ghazi@snafu.rutgers.edu>
-
- * rs6000.c (rs6000_override_options, ptt, rs6000_file_start,
- rs6000_float_const, rs6000_replace_regno, debug_stack_info,
- rs6000_output_load_toc_table, output_prolog, output_epilog):
- Const-ify a char*.
- (output_mi_thunk): Likewise. Mark parameter `thunk_fndecl' with
- ATTRIBUTE_UNUSED. Hide unused variables `r0', `sp', `toc',
- `schain', `r12', `buf' and `labelno'.
- (output_ascii): Const-ify a char*.
- (rs6000_gen_section_name): Initialize variable `last_period'.
- (rs6000_adjust_priority): Mark parameter `insn' with
- ATTRIBUTE_UNUSED.
- (rs6000_trampoline_template, rs6000_dll_import_ref,
- rs6000_longcall_ref, rs6000_encode_section_info): Const-ify a char*.
-
- * rs6000.h (offsettable_mem_operand, optimization_options): Add
- prototypes.
-
- * rs6000.md (movdi, define_split): Cast a value to HOST_WIDE_INT
- when comparing against one.
-
-Thu Apr 8 19:20:18 1999 Jeffrey A Law (law@cygnus.com)
-
- * expr.c (expand_expr, case ARRAY_REF, COMPONENT_REF, BIT_FIELD_REF):
- Do not try to optimize an aggregate address which has VOIDmode.
- Mirrors March 23 change to expand_assignment.
-
- * flow.c (delete_unreachable_blocks): Do not require EDGE_FALLTHRU
- for an edge when tidying an edge which connects consecutive basic
- blocks.
-
- * flow.c (can_delete_label_p): Do not convert a label into a
- deleted label here.
-
- * cse.c (flush_hash_table): New function.
- (cse_insn): Flush the hash table when we encounter a volatile asm.
- (cse_basic_block): Use flush_hash_table instead of doing it
- inline.
-
- * reload1.c (reload_cse_regs_1): Flush known register values if
- we encounter a volatile asm.
-
- * loop.c (strength_reduce): Re-enable Joern's loop improvements.
-
-Thu Apr 8 09:37:40 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.c (arm_print_operand): Undo previous change -
- always print large constants in decimal.
-
-Thu Apr 8 10:22:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in (host_xm_file, build_xm_file): Include hwint.h.
- Use case statements instead of "if test -a ... -a ... -a ..."
-
- * machmode.h: Don't define HOST_WIDE_INT, etc. Wrap use of
- HOST_WIDE_INT in #ifdef.
-
- * mips.h: Include hwint.h instead of providing definitions for
- HOST_WIDE_INT, etc. Wrap uses of HOST_WIDE_INT in #ifdef.
-
-Thu Apr 8 06:16:14 1999 John Wehle (john@feith.com)
-
- * i386.md (truncdfsf2, truncxfsf2,
- truncxfdf2): Rewrite using a splitter.
-
-Thu Apr 8 01:26:05 1999 Arg Haas (ahaas@neosoft.com)
- Jeffrey A Law (law@cygnus.com)
-
- * freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Avoid ambiguous
- else statement.
- * gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
- * linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
- * openbsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
-
-Wed Apr 7 22:40:19 1999 Jim Wilson <wilson@cygnus.com>
-
- * i960/i960.c (i960_function_prologue): Don't save static chain
- pointer.
- * i960/i960.h (STACK_CHAIN_REGNUM): Change from r3 to g12.
- (TRAMPOLINE_TEMPLATE): Likewise.
- (FRAME_POINTER_REQUIRED): Check current_function_has_nonlocal_goto.
- * i960/i960.md (nonlocal_goto): Rewrite.
-
-Tue Apr 6 17:49:49 1999 Philip Blundell <pb@nexus.co.uk>
-
- * config/arm/lib1funcs.asm: Test for __ELF__ not __elf__.
-
-Wed Apr 7 14:07:34 1999 Jeffrey A Law (law@cygnus.com)
-
- * h8300.c (h8300_adjust_insn_length): Also avoid recognizing
- ADDR_VEC and ADDR_DIFF_VEC insns.
-
- * h8300.c (h8300_adjust_insn_length): Avoid trying to recognize
- USE, CLOBBER or SEQUENCE insns.
-
- * unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid
- to account for the uncopied insn that sets cc0 at the end of the loop.
-
- * unroll.c (copy_loop_body): Always ensure at least two insns
- are in the copied loop.
-
-Wed Apr 7 14:52:18 1999 Catherine Moore <clm@cygnus.com>
-
- * config/mips/elf.h (MAKE_DECL_ONE_ONLY): Define.
- (UNIQUE_SECTION_P): Define.
-
-1999-04-07 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixinc/inclhack.tpl & fixincl.tpl:
- Remove dynamic content from generated files
-
-Wed Apr 7 13:16:22 1999 John Wehle (john@feith.com)
-
- * i386.c (output_move_memory): Remove.
- * i386.h: Likewise.
-
- * i386.md (movsi, movhi, movstricthi, movqi, movstrictqi,
- movsf, movdf, movxf, movdi): Check no_new_pseudos instead
- of (reload_in_progress | reload_completed).
-
-Wed Apr 7 03:16:45 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (reg_no_subreg_operand): New function.
- * alpha.h (PREDICATE_CODES): Add it.
- * alpha.md (floatdi?f patterns): Use it for op1.
-
- * alpha.c (alpha_end_function): Don't flag weak functions.
-
-Wed Apr 7 02:11:55 1999 Richard Henderson <rth@cygnus.com>
-
- * expr.c (expand_builtin) [BUILT_IN_RETURN_ADDRESS]: Use
- copy_to_mode_reg; don't force constants into a register.
-
-Tue Apr 6 22:55:25 1999 Richard Henderson <rth@cygnus.com>
-
- * toplev.c (compile_file): Typo flow_dump -> flow2_dump.
-
-1999-04-06 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * pdp11.c (simple_memory_operand): Add default case in switch.
- * pdp11.h (TARGET_SWITCHES): Add help strings.
- (NOTICE_UPDATE_CC): Don't include excess argument to format.
- (ASM_OUTPUT_DOUBLE_INT): Remove.
-
-Tue Apr 6 22:09:40 1999 Richard Henderson <rth@cygnus.com>
-
- * expr.c (expand_builtin_setjmp): Put setjmp return label on
- nonlocal_goto_handler_labels for flow.
-
-Tue Apr 6 22:05:21 1999 Jan Hubicka <hubicka@paru.cas.cz>
- Richard Henderson <rth@cygnus.com>
-
- * flow.c (verify_flow_info): New function.
- (find_basic_blocks): Call it if ENABLE_CHECKING.
- (merge_blocks): Don't merge if there are non-deletable labels.
- * toplev.c (fatal_insn): Allow a printf-style arg list.
- * toplev.h (fatal_insn): Update prototype.
-
-Tue Apr 6 16:18:58 1999 Jan Hubicka <hubicka@paru.cas.cz>
-
- * flow.c (split_edge) update correctly flow graph, disable
- EDGE_CRITICAL flag on the split edge, update NUSES for new label.
-
-Tue Apr 6 15:47:51 1999 Richard Henderson <rth@cygnus.com>
-
- * emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT.
- Clear third and following slots, if they exist.
-
-Tue Apr 6 15:45:28 1999 Richard Henderson <rth@cygnus.com>
-
- * flow.c (create_basic_block): Make sure the bb note is in the block.
- (can_delete_note_p): Rename from delete_note_p.
- (delete_insn_chain): Preserve undeleteable labels too.
- (tidy_fallthru_edge): Use next_real_insn instead of confusing
- inline code.
-
-1999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppexp.c (parse_charconst): Initialize c.
- (cpp_parse_expr): Initialize rprio.
- * cppfiles.c (merge_include_chains): Initialize prev.
- (finclude): Set fp->line_base to fp->buf before returning.
- * cpphash.c (macroexpand): Initialize token.
- * cppspec.c (lang_specific_driver): Change suff to
- const char *const *.
-
-1999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppinit.c (install_predefs): Delete function.
- (cpp_start_read): Don't call install_predefs.
- (cpp_handle_option): Remove case 'u' and all refs to
- opts->inhibit_predefs.
- (print_help): Don't mention -undef.
- (initialize_builtins): Define __HAVE_BUILTIN_SETJMP__, to
- match cccp.
- * cpplib.h (struct cpp_options): Remove inhibit_predefs
- member.
-
- * cccp.c (predefs): Delete variable.
- (main): Remove case 'u' in argument parse loop,
- 'inhibit_predefs' variable, and the code block that would
- process CPP_PREDEFINES.
- (initialize_builtins): Don't define __OBJC__, the driver will
- do that.
-
- * gcc.c (default_compilers): Remove -undef from all specs that
- invoke a C preprocessor.
- * ch/lang-specs.h: Likewise.
- * cp/lang-specs.h: Likewise.
- * f/lang-specs.h: Likewise.
- * objc/lang-specs.h: Likewise.
-
-Mon Apr 5 11:55:31 1999 Donn Terry (donn@interix.com)
-
- * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix misapplied patch.
-
-Mon Apr 5 11:51:38 1999 Jeffrey A Law (law@cygnus.com)
-
- * m68k.md (movdf): Hide GPR sources & destinations from regclass.
-
-Mon Apr 5 09:54:42 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon Apr 5 05:55:15 1999 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixincl.tpl: Separate "-e" from its argument, a la
- the Sat Apr 3 17:05:13 1999 fix.
- * genfixes: Ensure that the server shell is _NOT_ csh.
-
-Mon Apr 5 03:52:30 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon Apr 5 04:47:14 1999 Jeffrey A Law (law@cygnus.com)
-
- * i386.c (x86_double_with_add): Turn off for Pentium and PPro.
- (small_shift_operand, output_ashlsi3): New functions.
- * i386.h (small_shift_operand, output_ashlsi3): Declare.
- * i386.md (ashlsi3): Simplify ahlsi3 patterns. Remove splitters
- that are no longer needed.
-
-Sun Apr 4 04:05:04 1999 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (expand_loop_end): When copying the loop exit test,
- do not walk into a nested loop.
-
-Sun Apr 4 00:14:54 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixinc/hackshell.tpl: Skip links to directories, to avoid
- removing them.
- * fixinc/inclhack.tpl: Likewise.
- * fixinc/fixinc.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
-
-Sat Apr 3 23:46:13 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (addsi3, iorsi3, xorsi3, adddi3, iordi3, xordi3,
- movsi_got, movsi, movsf): Use no_new_pseudos.
- * rs6000.c (rs6000_got_register): Likewise.
- (offsettable_mem_opereand): Use || not |.
-
-Sat Apr 3 22:02:56 1999 Jeffrey A Law (law@cygnus.com)
-
- * acconfig.h (ENABLE_CHECKING): Remove redundant #undef.
- * config.in: Rebuilt.
-
-Sat Apr 3 16:22:59 1999 Toshiyasu Morita (tm@netcom.com)
-
- * gcc.texi: Add info on regmove pass.
-
- * regmove.c (fixup_match_1): Consistently evaluate
- HAVE_POST_INCREMENT and HAVE_POST_DECREMENT.
-
-Sat Apr 3 19:21:05 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * configure.in (DEFAULT_LINKER, DEFAULT_ASSEMBLER): Use grep
- instead of test and sed to check whether they're GNU programs.
- * configure: Rebuilt.
-
-Sat Apr 3 17:57:35 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * Makefile.in (install-headers-tar, install-headers-cpio): Avoid
- problems with CDPATH.
- Reported by Ralf Canis <canis@bigfoot.com>
-
-Sat Apr 3 13:50:16 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixinc.x86-linux-gnu: Deleted.
-
-Sat Apr 3 17:05:13 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * inclhack.tpl: Insert spaces between `sed -e' and '...'.
- Reported by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
- * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Regen.
-
-Sat Apr 3 14:54:46 1999 Craig Burley <craig@jcb-sc.com>
-
- * tree.def (BLOCK): Fix typo in comment.
-
-Sat Apr 3 00:53:29 1999 John Wehle (john@feith.com)
-
- * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
- floatsixf2, floatdixf2): Rewrite using a splitter.
-
-Fri Apr 2 17:36:10 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.c (arm_print_operand): Print large constants in
- hex rather than decimal.
-
-Fri Apr 2 17:23:58 1999 Nick Clifton <nickc@cygnus.com>
-
- * print-rtl.c (print_rtx): Use both HOST_WIDE_INT_PRINT_DEC
- and HOST_WIDE_INT_PRINT_HEX to display constants.
-
-1999-04-02 Zack Weinberg <zack@rabi.columbia.edu>
-
- * config/i386/i386.h: Document all TARGET_SWITCHES or add
- explicit null initializer.
-
- * config/i386/cygwin.h: Document all SUBTARGET_SWITCHES.
- * config/i386/dgux.h: Likewise.
- * config/i386/osf1elf.h: Likewise.
- * config/i386/win32.h: Likewise.
- * config/i386/osfrose.h: Likewise. Drop obsolete -mno-ident option.
-
-Fri Apr 2 17:49:44 1999 Toshiyasu Morita <tm@netcom.com>
-
- * regmove.c (fixup_match_1): Remove now useless if (0).
-
-Sat Apr 3 11:37:20 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
- USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document.
- (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
- USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation.
-
- * rtl.h (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
- USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT,
- USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
- USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default
- definition.
-
- * expr.c (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
- USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default
- definition.
-
-Fri Apr 2 16:03:05 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixinc.dgux, fixinc.interix, fixinc.irix, fixinc.ptx: Deleted.
- * fixinc.sco, fixinc.svr4, fixinc.winnt, fixinc.wrap: Likewise.
-
-Fri Apr 2 15:46:25 1999 Donn Terry (donn@interix.com)
-
- * configure.in: Set and substitute quoted_cc_set_by_configure.
- * configure: Rebuilt.
- * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix quoting problem with ``.
-
-Fri Apr 2 14:35:45 1999 Stan Cox <scox@cygnus.com>
-
- * config/i386/cygwin.h (CPP_SPEC): Use mingw_include_path instead
- of a hardcoded path for -mno-cygwin.
- (mingw_include_path): New.
-
-1999-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * pdp11.c: Include "recog.h".
- (output_function_prologue): Remove unused variables `nregs', `i',
- `offset'.
- (output_function_epilogue): Remove unused variables
- `may_call_alloca', `nregs', `regno', `adjust_fp'.
- (output_ascii): Mark as returning void.
- (print_operand_address: Likewise.
- (simple_memory_operand): Remove unused variables `plus0', `plus1',
- `offset'.
- * pdp11.h: Declare functions `arith_operand',
- `const_immediate_operand', `expand_shift_operand',
- `legitimate_address_p', `notice_update_cc_on_set', `output_ascii',
- `output_function_epilogue', `output_function_prologue',
- `print_operand_address', `register_move_cost',
- `simple_memory_operand'.
- (HARD_REGNO_MODE_OK): Parenthesize `REGNO' arg.
- (REGNO_REG_CLASS): Likewise.
- * pdp11.md: Add explicit `int' to `static count' (in two places).
- (addhi3): Add explicit braces to avoid ambiguous else.
- (addqi3): Likewise.
- (ashlhi3): Likewise.
-
-Fri Apr 2 14:17:10 1999 Jerry James <jerry@cs.ucsb.edu>
-
- * gcc/invoke.texi: Add documentation for additional supported
- MIPS CPU types, options -mips16 and -mentry, and ABI and ISA
- defaults.
-
-Fri Apr 2 14:12:06 1999 John Wehle (john@feith.com)
-
- * i386.md: Delete floating point compare, add, subtract,
- multiply, and divide patterns which allowed integer
- operands.
- * i386.c (output_387_binary_op): Delete unused code.
- (output_float_compare): Likewise.
-
-Fri Apr 2 11:53:37 1999 John Wehle (john@feith.com)
-
- * i386.md (movsf+1, movdf+1, movxf+1): Update constraints
- so that SECONDARY_MEMORY_RELOAD is used. Remove dead code.
-
-1999-04-02 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixinc/mkfixinc.sh: Added support for x86-interix.
- * fixinc/fixinc.interix: Fixincludes script, slight changes
- from ./fixinc.interix. Untested (needs interix box).
- * fixinc/inclhack.def:
- Complete the change to the 'fixinc.tmp' file.
- Fixed regex for finding C++ headers.
- * fixincl.x, fixincl.sh, inclhack.sh: Regenerate.
-
-Fri Apr 2 11:36:12 1999 Jan Hubicka (hubicka@paru.cas.cz)
-
- * i386.c (print_operand_address, case REG): Do not use ESI addressing
- mode for the K6.
-
- * i386.c (print_operand_address, case MULT): Use more efficient
- encoding (mult (reg) (const_int 2)).
-
-Thu Apr 1 17:01:50 1999 Richard Henderson <rth@cygnus.com>
-
- Move over patch from Bernd Schmidt from GC branch:
- * emit-rtl.c (gen_rtx_CONST_DOUBLE): New function.
- (gen_rtx): Call it. Tidy cases.
- * rtl.h (gen_rtx_CONST_DOUBLE): Prototype it.
- * gengenrtl.c: Add commentary.
- (special_rtx): Also match CONST_DOUBLE.
- (gencode): Emit call to memset instead of bzero.
-
-Fri Apr 2 12:58:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (ashlhi3, lshrhi3, ashrhi3): Force operand 1
- into a register if shift count not constant.
- (ashlhi3_reg, lshrhi3_reg, ashrhi3_reg): Ensure that operand 1
- is a register.
-
-Fri Apr 2 12:19:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (*db): Enable pattern if TARGET_LOOP_UNSIGNED
- is nonzero.
- (movstrqi_small, movstrqi_large, *cmpstrqi): Add + modifier to address
- register constraints.
- (*movhi_clobber+1): Modify splitter pattern to handle destination
- register that is used in the source address.
- (*xorhi3_clobber): Replace AND with XOR in call to legitimize_operands.
-
-Fri Apr 2 12:16:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h: Added more comments.
-
-Fri Apr 2 11:58:22 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_emit_move_sequence): Force invalid QImode
- constants into memory if we get called directly from gen_move_insn
- rather than emit_move_insn.
- (c4x_legitimize_address): Fix up LABEL_REF addresses.
-
-Thu Apr 1 12:04:05 1999 Jim Wilson <wilson@cygnus.com>
-
- * expr.c (store_field): When check direct_store, assume all complex
- modes can be directly stored.
-
-1999-04-01 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * fixinc/genfixes: New shell script that runs autogen
- to create the generated files.
-
-1999-04-01 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (cppmain$(exeext)): Depend on intl.o. Link in intl.o.
-
-Thu Apr 1 03:48:34 1999 H.J. Lu (hjl@gnu.org)
-
- * i386.c (output_fp_conditional_move): Abort for LT, LE, GE, and GT
- signed integer comparisons.
-
- * i386.c (output_int_conditional_move): Use "enum rtx_code" for code
- type.
-
- * i386.c (notice_update_cc): No need to check the INT mode for
- conditional moves since FLOAT conditional moves don't affect cc0.
-
-Thu Apr 1 02:17:18 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixinc/inclhack.def (zzz_ki_syscalls, zzz_time): Fix trigger
- string to only match on hpux11.
- * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
-
-Thu Apr 1 01:09:27 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * fixinc/hackshell.tpl: Complete transition to fixinc.tmp.
- * fixinc/inclhack.sh: Rebuilt.
-
- * fixinc/inclhack.def: Fix typos in c_asm.h fix.
- * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
-
-Wed Mar 31 17:20:11 1999 Jeffrey A Law (law@cygnus.com)
-
- * toplev.c (rest_of_compilation): Allow dbr_schedule to write to
- the dump file too.
-
-Wed Mar 31 12:32:43 1999 Richard Henderson <rth@cygnus.com>
-
- * flow.c (find_basic_blocks): New argument `do_cleanup'.
- Conditionally call delete_unreachable_blocks.
- (free_basic_block_vars): Zero ENTRY/EXIT data.
- (allocate_for_life_analysis): Kill. Split into...
- (allocate_bb_life_data, allocate_reg_life_data): ... new functions.
- (life_analysis_1): Update.
- * gcse.c (gcse_main): Update find_basic_blocks call.
- * toplev.c (rest_of_compilation): Likewise.
- * stupid.c (stupid_life_analysis): Update life data calls.
- * rtl.h, output.h: Update prototypes.
-
-Wed Mar 31 12:10:00 1999 Bruce Korb <ddsinc09@ix.netcom.com>
-
- * inclhack.def (several): Added spaces in tests to ensure
- correct shell syntax. Added c_asm.h fix from fixincludes.
- Also corrected the corrected fix to C++ comments :-}
-
- * inclhack.tpl: Changed method of traversing symlink trees
- so that file name matching will work correctly.
-
- * fixincl.c, hackshell.tpl: Fallout from above.
- * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
-
-Tue Mar 30 10:43:49 1999 Philip Blundell <pb@nexus.co.uk>
-
- * config/arm/aout.h (DBX_DEBUGGING_INFO): Avoid redefinition if
- dbxelf.h was previously included.
- (CPP_APCS_PC_DEFAULT_SPEC): No need to undefine.
-
- * config/arm/linux-elf.h (FP_DEFAULT): Correctly override the
- definition from arm.h.
-
-Wed Mar 31 10:33:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (c-gperf.h): Generate using gperf language 'C', not
- 'KR-C', so gperf uses the `const' keyword on strings.
-
- * c-parse.gperf (resword): Const-ify a char*.
-
-Wed Mar 31 01:49:31 1999 Ian Lance Taylor <ian@zembu.com>
-
- * t-rtems (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
-
-Wed Mar 31 00:50:48 1999 Jeffrey A Law (law@cygnus.com)
-
- * system.h (STDERR_FILENO): Fix typo.
-
- * inclhack.def (bool): Also fix bogus bool in curses_colr/curses.h.
- * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
-
-Tue Mar 30 20:51:40 1999 Mark Mitchell <mark@codesourcery.com>
-
- * alias.c (alias_set_compare): Remove.
- (record_alias_subset): Use splay_tree_compare_ints instead of
- alias_set_compare.
- (init_alias_once): Likewise.
- * cse.c: Include splay-tree.h.
- (reg_qty): Remove.
- (reg_tick): Likewise.
- (reg_table): Likewise.
- (cse_reg_info): New structure.
- (cse_reg_info_free_list): New variable.
- (cse_reg_info_tree): Likewise.
- (cached_regno): Likewise.
- (cached_cse_reg_info): Likewise.
- (all_minus_one): Remove.
- (consec_ints): Likewise.
- (GET_CSE_REG_INFO): New macro.
- (REG_TICK): Likewise. Use throughout instead of reg_tick.
- (REG_IN_TABLE): Likewise. Use throughout instead of reg_in_table.
- (REG_QTY): Likewise. Use throughout instead of reg_qty.
- (get_cse_reg_info): New function.
- (free_cse_reg_info): Likewise.
- (new_basic_block): Reinitialize cse_reg_info_tree instead of
- reg_tick, all_minus_one, and consec_ints.
- * Makefile.in (cse.o): Depend on splay-tree.h
-
-Tue Mar 30 13:19:36 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * libgcc2.c (throw_helper): Just return the SP offset, rather than
- a whole udata. Include args_size in the offset.
- (__throw, __rethrow): Adjust.
-
-Tue Mar 30 11:39:27 1999 Craig Burley <craig@jcb-sc.com>
-
- * extend.texi (Extended Asm): Delete spurious `b' before
- `@end example', which was confusing texi2html.
-
-Tue Mar 30 00:26:34 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c (output_line_info): Don't emit redundant info.
- Do start a new row if the file changes and the line # doesn't.
-
-Mon Mar 29 15:48:39 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * invoke.texi (Invoking G++, C++ Dialect Options): Update.
-
-Mon Mar 29 15:05:39 1999 Richard Henderson <rth@cygnus.com>
-
- * except.c (start_dynamic_handler): Force jmp_buf address to
- and operand before moving to memory.
-
-Mon Mar 29 15:11:10 1999 Craig Burley <craig@jcb-sc.com>
-
- * invoke.texi (Code Gen Options): Attempt to clarify
- -fcheck-memory-usage. Minor edits to -fprefix-function-name.
-
-Mon Mar 29 20:52:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (maybe_eliminate_biv): For libcalls that set a giv, skip to
- end of libcall.
-
-Mon Mar 29 20:35:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (mulsi3): Tag an extra REG_EQUAL note to the middle insn.
-
-Mon Mar 29 11:50:34 1999 Jerry Quinn <jquinn@nortelnetworks.com>
-
- * pa.h (HAVE_PRE_INCREMENT): Disable when optimizing for a PA8000
- class machine.
- (HAVE_PRE_DECREMENT, HAVE_POST_INCREMENT): Likewise.
- (HAVE_POST_DECREMENT): Likewise.
-
-Mon Mar 29 08:24:43 1999 Bruce Korb <korb@datadesign.com>
-
- * fixinc/mkfixinc.sh: Fix portability problems with old shells.
-
- * fixinc/README: Updated for release announcement
-
-Sun Mar 28 20:26:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * recog.h (insn_outfun, insn_operand_predicate): Add prototype
- arguments.
-
- * rtl.h (note_stores): Likewise.
-
- * rtlanal.c (note_stores): Likewise.
-
-Sun Mar 28 15:34:28 1999 Richard Henderson <rth@cygnus.com>
-
- * varasm.c (output_constant_pool): Always mark the constant pool.
-
-Sun Mar 28 16:09:01 1999 Jerry Quinn <jquinn@nortelnetworks.com>
-
- * pa.md (pa7100LCshiftmem, pa7100LCalu): Change simultaneity. Use
- shift/mem ops in pa7100LCalu.
-
- * pa.c (pa_adjust_cost): Don't do cost adjustments on pa8000.
- (pa_reorg): Don't call pa_combine_instructions on pa8000.
-
-Sun Mar 28 15:27:26 1999 Jeffrey A Law (law@cygnus.com)
-
- * reload1.c (reload): Remove accidental code duplication.
-
-Sun Mar 28 12:22:12 1999 Robert Lipe (robertlipe@usa.net)
-
- * i386/sysv5.h: New file to describe UnixWare7/SVR5.
- * configure.in (i?86-UnixWare7*-sysv): Use it.
- * i386/udk.h: Use sysv5.h. Now uses Dwarf-2.
-
-Sun Mar 28 01:15:04 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Mar 28 00:44:27 1999 Jeffrey A Law (law@cygnus.com)
-
- * sdbout.c (sdbout_symbol): Do not call build_pointer_type, build
- one on the fly and do not cache the result.
-
- * gcc.cps, cpp.cps: Delete unwanted files.
-
-Sat Mar 27 23:37:40 1999 John Wehle (john@feith.com)
-
- * i386.md (movdicc+3, movdicc+4): Rewrite using split_di.
- * i386.c (output_int_conditional_move): Delete unused code.
-
-Sat Mar 27 21:17:36 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000/{aix41.h,aix43.h} (ASM_CPU_SPEC): Add 604e.
-
-Sat Mar 27 16:13:50 1999 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (mark_used_regs): Improve handling of ASMs.
-
-1999-03-26 Zack Weinberg <zack@rabi.columbia.edu>
-
- * Makefile.in (xcpp, cppspec.o): New targets.
- (CPP_INSTALL_NAME): New macro.
- (install-cpp): Install xcpp. Use CPP_INSTALL_NAME.
- (all.build, start.encap): Build xcpp.
-
- * cppspec.c: New file, implements argument filtering for a
- user-visible C preprocessor.
- * cpp.sh: Removed.
-
-Fri Mar 26 20:41:46 1999 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (stmp-fixinc): Use tooldir instead of gcc_tooldir.
-
-Fri Mar 26 16:02:37 1999 Nick Clifton <nickc@cygnus.com>
-
- * configure.in (arm-*-vxworks*): Just include arm/vxarm.h.
- * configure: Regenerate.
- * config/arm/vxarm.h: Define SUBTARGET_CPU_DEFAULT before
- including arm/coff.h
-
-1999-02-16 Scott Bambrough <scottb@corelcomputer.com>
-
- * configure.in (arm*-*-linux-gnu*): Set thread_file to 'posix' if
- --enable-threads[={yes,pthreads,posix}] is passed as a command
- line parameter to configure.
-
- * configure: Regenerate.
-
- * gcc/config/arm/t-linux (TARGET_LIBGCC2_CFLAGS): Include -fPIC.
-
-Fri Mar 26 19:42:19 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (combine_givs): Fix index into can_combine when doing
- benefit adjustment for remaining givs when having combined a giv.
-
-Fri Mar 26 11:38:01 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/t-arm-elf (EXTRA_MULTILIB_PARTS): Define.
-
-Fri Mar 26 10:48:27 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/linux-elf.h: Include dbxelf.h
-
-Fri Mar 26 10:43:47 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/svr4.h: Include new header file dbxelf.h.
- (DBX_DEBUGGING_INFO): Remove definition.
- (DBX_USE_BINCL): Remove definition.
- (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
- (ASM_IDENTIFY_GCC): Remove definition.
- (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
- (ASM_OUTPUT_SOURCE_LINE): Remove definition.
- (DBX_FUNCTION_FIRST): Remove definition.
- (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Remove definition.
-
- * config/elfos.h: Include new header file dbxelf.h.
- (DBX_DEBUGGING_INFO): Remove definition.
- (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
- (ASM_IDENTIFY_GCC): Remove definition.
- (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
- (ASM_OUTPUT_SOURCE_LINE): Remove definition.
- (DBX_FUNCTION_FIRST): Remove definition.
-
- * config/dbxelf.h: New header file.
- (DBX_DEBUGGING_INFO): Define.
- (DBX_BLOCKS_FUNCTION_RELATIVE): Define.
- (DBX_FUNCTION_FIRST): Define.
- (DBX_USE_BINCL): Define.
- (DBX_CONTIN_LENGTH): Define.
- (ASM_IDENTIFY_GCC): Define.
- (ASM_IDENTIFY_GCC_AFTER_SOURCE): Define.
- (ASM_OUTPUT_SOURCE_LINE): Define.
- (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Define.
-
-Fri Mar 26 01:59:15 1999 "Charles M. Hannum" <root@ihack.net>
-
- * fold-const.c (fold_truthop): Optimize bitfield references with
- different masks as long as their size and bit position are the same.
-
- * fold-const.c (fold_truthop): Build a type for both the lhs and
- rhs and use it appropriately.
-
- * fold-const.c (fold_truthop): Mask the lhs and rhs after merging
- adjacent bitfield references.
-
- * fold-const.c (fold_truthop): Verify that the lhs and rhs are
- in the same bit position when optimizing bitfield references
- which have the same mask.
-
-Thu Mar 25 22:53:27 1999 Martin von Löwis <loewis@informatik.hu-berlin.de>
-
- * gcc.texi (Copy Assignment): New node.
-
-1999-03-25 Zack Weinberg <zack@rabi.columbia.edu>
-
- * gcc.c: Compile unconditionally all code formerly dependent
- on #ifdef LANG_SPECIFIC_DRIVER.
- * gccspec.c: New file with stub lang_specific_driver,
- lang_specific_pre_link.
- * Makefile.in: Link gccspec.o into xgcc. Add rule to compile
-
-Thu Mar 25 21:08:02 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * gcc.texi (Temporaries): Update.
-
-Thu Mar 25 16:53:53 1999 Richard Henderson <rth@cygnus.com>
-
- * combine.c (distribute_notes): Place REG_LABEL also where
- REG_EQUAL indicates.
-
-Thu Mar 25 12:46:37 1999 Jim Wilson <wilson@cygnus.com>
-
- * a29k/a29k.h (TARGET_SWITCHES): Add doc strings.
- * i960/i960.h (TARGET_SWITCHES): Add doc strings.
- * invoke.texi (a29k): Add documentation for -mno-multm option.
-
-Thu Mar 25 14:04:54 1999 Andrew MacLeod <amacleod@cygnus.com>
-
- * rtl.texi (RTX_FRAME_RELATED_P): Add documentation.
- * rtl.h (struct rtx_def): Update comment for frame_related field.
- (set_unique_reg_note): Declare prototype.
- * dwarf2out.c (dwarf2out_frame_debug_expr): Split out from
- 'dwarf2out_frame_debug' to handle only expressions, and process
- component parts of a PARALLEL expression.
- (dwarf2out_frame_debug): Process insns only, and call
- new function 'dwarf2out_frame_debug_expr' for patterns.
- * emit-rtl.c (set_unique_reg_note): New function to add a reg note,
- but if there is an existing one, delete it first.
- * expmed.c (expand_mult, expand_divmod): Use set_unique_reg_note.
- * optabs.c (add_equal_note, expand_binop): Use set_unique_reg_note.
- (emit_no_conflict_block, emit_libcall_block): Use set_unique_reg_note.
- (expand_fix): Use set_unique_reg_note.
-
-Thu Mar 25 11:47:49 1999 Art Haas <ahaas@neosoft.com>
-
- * tlink.c (symbol_hash_newfunc): Remove redundant call to
- hash_newfunc.
- (file_hash_newfunc, demangled_hash_newfunc): Likewise.
-
-Thu Mar 25 10:05:56 1999 Richard Henderson <rth@cygnus.com>
-
- * i386.h (PREFERRED_STACK_BOUNDARY): Set to 128.
-
-1999-03-25 Philip Blundell <pb@nexus.co.uk>
-
- Based on patch from Jim Studt <jim@federated.com>:
- * config/arm/linux-elf.h (STARTFILE_SPEC, ENDFILE_SPEC): Copy
- definitions from config/linux.h.
- (DBX_BLOCKS_FUNCTION_RELATIVE): Define to 1.
-
-Thu Mar 25 02:12:42 1999 Finn Hakansson <finn@axis.com>
-
- * loop.c (strength_reduce): Correct a comment.
-
- * rtl.h (MEM_COPY_ATTRIBUTES): Remove unnecessary ending backslash.
-
-Thu Mar 25 02:02:13 1999 Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
-
- * Makefile.in (RANLIB_TEST): Improve test.
-
-Thu Mar 25 01:15:33 1999 Donn Terry <donn@interix.com>
-
- * combine.c (force_to_mode, case PLUS): Use sign extended mask
- when masking the low bits out of a constant.
-
-Tue Mar 23 15:45:25 1999 Richard Earnshaw (rearnsha@arm.com)
- Jeff Law <law@cygnus.com>
-
- * fold-const.c (make_range): If orig_type is unset, set it as soon
- as we know the type. Remove now unnecessary set of orig_type for
- conversions.
-
-Wed Mar 24 23:27:25 1999 Mark Elbrecht <snowball3@usa.net>
- Jeff Law <law@cygnus.com>
-
- * system.h (STDIN_FILENO): Provide default definition if one is not
- provided by the system header files.
- (STDOUT_FILENO, STDERR_FILENO): Likewise.
-
- * i386/xm-djgpp.h (COLLECT2_HOST_INITIALIZATION): New macro.
- * collect2.c (main): Use it.
- (pexecute_pid): New variable. Holds return value from call to pexecute.
- (collect2_execute): Rework to use pexecute instead of fork.
- (collect2_wait): Use pwait() instead of wait().
-
- * i386/djgpp.h: Fix typo.
-
-Wed Mar 24 23:24:30 1999 Jeffrey A Law (law@cygnus.com)
-
- * fixinc/mkfixinc.sh: Recognize cygwin* instead of only
- cygwin32.
-
-Wed Mar 24 15:44:12 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/m32r/m32r.c (init_idents): Accept both NAME and __NAME__
- versions of attribute names and values.
- (m32r_valid_machine_decl_attribute): Likewise.
- (m32r_encode_section_info): Likewise.
-
-Wed Mar 24 21:42:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (choose_reload_regs): If output-reloading for a
- simple move insn, try to inherit an equivalence for the input.
-
-1999-02-24 Mike Stump <mrs@wrs.com>
-
- * arm/aout.h (DBX_OUTPUT_MAIN_SOURCE_FILENAME): Fix quoting.
-
-1999-03-24 Jim Blandy <jimb@zwingli.cygnus.com>
-
- * libgcc2.c (__CTOR_LIST__, __DTOR_LIST__): Initialize on all
- platforms.
-
-Wed Mar 24 01:35:01 1999 Geoff Keating <geoffk@ozemail.com.au>
-
- * fold-const.c (fold): Recognize a rotate by an unsigned amount.
-
-Tue Mar 23 23:32:14 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (rotlsi3): New expander. Synthesize a variable rotate
- left using a variable rotate right. Provide anonymous pattern for
- rotate left by a constant value.
-
- * expr.c (expand_assignment): Do not try to optimize an aggregate
- address which has VOIDmode.
-
-Tue Mar 23 22:51:48 1999 Mumit Khan <khan@xraylith.wisc.edu>
- Donn Terry <donn@interix.com>
-
- * protoize.c (abspath): Preserve multiple leading slashes for
- _WIN32 and Interix.
-
-1999-01-23 Mike Stump <mrs@wrs.com>
-
- * arm/vxarm.h: Split out vxWorks support into separate headerfile
- and vxify.
- * arm/arm.c (cpu_defaults): Allow arm710 as default.
-
- * configure.in: Split out vxWorks support for Arm.
- * configure: Rebuilt.
-
-Tue Mar 23 11:20:03 1999 Per Bothner <bothner@cygnus.com>
-
- * tree.c (first_rtl_op, has_cleanups): Handle GOTO_SUBROUTINE_EXPR.
-
-Tue Mar 23 09:00:39 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/riscix1.h (SUBTARGET_SWITCHES): Add doc string.
- * config/arm/riscix1-1.h (SUBTARGET_SWITCHES): Add doc string.
-
-Tue Mar 23 07:50:20 1999 Mark Mitchell <mark@codesourcery.com>
-
- * function.c: Include hash.h.
- (insns_for_mem_entry): New struct.
- (put_reg_into_stack): Take an optional hash-table mapping MEMs to
- the INSNs that use them.
- (fixup_var_refs): Likewise.
- (put_addressof_into_stack): Likewise.
- (purge_addressof_1): Likewise. Keep the hash-table up to date if
- we add new instructions.
- (fixup_var_refs_insns): Use it to avoid searching the entire
- instruction chain.
- (insns_for_mem_newfunc): New function.
- (insns_for_mem_comp): Likewise.
- (insns_for_mem_walk): Likewise.
- (compute_insns_for_mem): Likewise.
- (pop_function_context_from): Pass NULL for the hash-table.
- (put_var_into_stack): Likewise.
- (gen_mem_addressof): Likewise.
- (flush_addressof): Likewise.
- (purge_addressof): Call compute_insns_for_mem to pre-compute the
- hash table.
- * Makefile.in (OBJS): Include hash.o.
- (function.o): Depend on hash.h.
-
-Tue Mar 23 00:39:14 1999 Jeffrey A Law (law@cygnus.com)
-
- * i386/openbsd.h (TARGET_DEFAULT): Use symbolic names instead of
- numbers.
- * i386/netbsd.h, i386/freebsd.h: Likewise.
-
- * crtstuff.c: Use ANSI function definitions. Fix minor whitespace
- problems.
-
- * i386/openbsd.h (TARGET_DEFAULT): Define.
- * configure.in: Do not set TARGET_CPU_DEFAULT for x86 OpenBSD
- configurations.
- * configure: Rebuilt.
-
-Tue Mar 23 00:39:10 1999 John Wehle (john@feith.com)
-
- * i386/freebsd.h (TARGET_DEFAULT): Define instead
- of TARGET_CPU_DEFAULT.
- * i386/netbsd.h (TARGET_DEFAULT): Likewise.
-
-Mon Mar 22 23:52:01 1999 Mumit Khan <khan@xraylith.wisc.edu>
- Donn Terry <donn@interix.com>
-
- * sdbout.c (syms.h): Don't include on Interix.
- * toplev.c (main): No sbrk on Interix.
-
- * configure.in: Add i386-pc-interix support.
- * configure: Regenerate.
- * fixinc.interix: New file.
- * config/interix.h: New file.
- * config/x-interix: New file.
- * config/xm-interix.h: New file.
- * i386/interix.h: New file.
- * i386/interix.c: New file.
- * i386/t-interix: New file.
-
-Mon Mar 22 23:41:49 1999 Jeffrey A Law (law@cygnus.com)
-
- * i386.h (PREFERRED_STACK_BOUNDARY): Define.
-
-Mon Mar 22 23:41:31 1999 John Wehle (john@feith.com)
-
- * i386.c (ix86_compute_frame_size): New function.
- (ix86_prologue, ix86_epilogue): Use it.
- * i386.h (INITIAL_ELIMINATION_OFFSET): Likewise.
- * reload1.c: Provide default for PREFERRED_STACK_BOUNDARY.
-
-Mon Mar 22 18:06:59 1999 Jim Wilson <wilson@cygnus.com>
-
- * mips/mips.h (TARGET_SWITCHES, TARGET_OPTIONS): Add option doc
- strings.
- * mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Likewise.
-
-Mon Mar 22 16:18:27 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Do not bother
- passing ATTRIBUTES to arm_valid_machine_decl_attribute.
-
- * config/arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Do not bother
- passing ATTRIBUTES to arm_valid_machine_decl_attribute.
-
- * config/arm/arm.h (DEFAULT_RTX_COSTS): Do not bother passing
- OUTER_CODE to arm_rtx_costs - it is not used.
- (arm_compare_fp): Delete declaration.
- (FINAL_PRESCAN_INSN): Do not bother passing OPVEC or NOPERANDS to
- arm_final_prescan_insn - they are not used.
- (const_ok_for_op): Remove prototype.
- (arm_rtx_costs): Fix prototype.
- (arm_valid_machine_decl_attribute): Fix prototype.
- (final_prescan_insn): Fix prototype.
-
- * config/arm/arm.md: Remove references to arm_compare_fp.
-
- * config/arm/arm.c (arm_compare_fp): Delete.
- (const_ok_for_op): Make function static. Add prototype. Remove
- mode parameter - it is unused.
- (arm_rtx_costs): Remove outer_code parameter.
- (reload_memory_operand): Declare mode parameter unused.
- (power_of_two_operand): Declare mode parameter unused.
- (equality_operator): Declare mode parameter unused.
- (load_multiple_operation): Declare mode parameter unused.
- (store_multiple_operation): Declare mode parameter unused.
- (multi_register_push): Declare mode parameter unused.
- (arm_valid_machine_decl_attribute): Remove attributes parameter -
- it is unused.
- (select_dominance_cc_mode): Remove op parameter - it is unused.
- (gen_compare_reg): Remove fp parameter - it is unused.
- (final_prescan_insn): Remove opvec and noperands parameters - they
- are unused.
-
-Mon Mar 22 14:35:28 1999 Nick Clifton <nickc@cygnus.com>
-
- * tm.texi (MD_SCHED_INIT): Add missing closing parenthesis.
-
-Mon Mar 22 22:24:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (reload_as_needed): Set reload_is_output_reload /
- reload_has_output_reload for auto_inc expressions that could be
- reloaded. Call forget_old_reloads for REG_INC notes.
-
-Mon Mar 22 21:51:57 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * cse.c (cse_insn): Don't change the result register of a libcall.
-
-Mon Mar 22 21:08:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * rtl.h (shallow_copy_rtx): Declare.
- * rtl.c (shallow_copy_rtx): New function.
- * reload.c (find_reloads_toplev): Use shallow_copy_rtx instead of
- copy_rtx.
-
-Mon Mar 22 10:44:33 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
-
- * config/h8300/h8300.md (adjust_length): New attribute.
- (modhi3+1, andsi3+1, iorsi3+1, extzv+1, extzv+2): Change insn
- default value of attribute "adjust_length" onto "no".
-
- * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust
- length only if the attribute "adjust_length" value is "yes".
- Use 0 if the shift is negative.
-
- * final.c (shorten_branches): Check insn length after its
- adjusting.
-
-Sun Mar 21 17:33:48 1999 Jeffrey A Law (law@cygnus.com)
-
- * i860.h (TARGET_SWITCHES): Add documentation for default case.
- * i860/paragon.h (TARGET_SWITCHES): Add documentation for default case.
- * i370.h (TARGET_SWITCHES): Add documentation for default case.
- * fx80.h (TARGET_SWITCHES): Add documentation for default case.
- * elxsi.h (TARGET_SWITCHES): Add documentation for default case.
- * clipper.h (TARGET_SWITCHES): Add documentation for default case.
- * 1750a.h (TARGET_SWITCHES): Add documentation for default case.
- * pa.h (TARGET_SWITCHES): Add documentation for default case.
- (TARGET_OPTIONS): Likewise for default case.
- * mn10300.h (TARGET_SWITCHES): Add documentation for default case.
- * h8300.h (TARGET_SWITCHES): Add documentation for default case.
-
- * gcse.c (dump_hash_table): Fix whitespace in declaration.
- (compute_transpout): Renamed from pre_compute_transpout.
- (compute_pre_*): Deleted.
- (pre_expr_reaches_here_p): New argument, CHECK_PRE_COMP. All
- callers changed.
- (insert_insn_end_bb): Renamed from pre_insert_insn.
- (pre_*): Delete unused variables. Only leave local properties and
- global redundant/optimal computation points.
- (alloc_pre_mem, free_pre_mem): Corresponding changes.
- (compute_pre_data): Simplify and call pre_lcm to run the lazy
- code motion dataflow analysis.
- (pre_insert, pre_insert_copies, pre_delete): Revamp to use LCM
- based redundant and optimal computation points.
-
- * basic-block.h (pre_lcm, pre_rev_lcm): Declare.
-
- * toplev.c (main): A debug option without a level defaults to
- level 2.
-
-Sun Mar 21 12:13:01 1999 Nick Clifton <nickc@cygnus.com>
-
- * flow.c (can_delete_label_p): Do not allow user specified
- labels to be deleted.
- * dwarf2out.c (gen_label_die): Generate addresses for deleted
- (programmer specified) labels.
- * dwarfout.c (output_label_die): Generate addresses for deleted
- (programmer specified) labels.
-
-1999-03-21 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (xgcc$(exeext)): Add intl.o to list of files to be
- linked with.
-
-Sun Mar 21 01:15:03 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Mar 20 22:26:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * sparc.h (TARGET_SWITCHES): Add null description to default case.
-
-Sat Mar 20 21:46:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-lex.c (yylex): Remove unused variable `bytes'.
-
- * flow.c (print_rtl_with_bb): Cast the return value of alloca.
-
- * function.c (assign_parms): Wrap variable `varargs_setup' in
- macro SETUP_INCOMING_VARARGS.
- (thread_prologue_and_epilogue_insns): Mark parameter `f' with
- ATTRIBUTE_UNUSED.
-
- * local-alloc.c (no_equiv): Likewise for parameter `store'.
-
- * sched.c (schedule_insns): Remove unused variables `insn' and `next'.
-
- * tlink.c (symbol_hash_newfunc, symbol_hash_lookup,
- file_hash_newfunc, file_hash_lookup, demangled_hash_newfunc,
- demangled_hash_lookup, symbol_push, symbol_pop, file_push,
- file_pop, tlink_init, tlink_execute, frob_extension,
- obstack_fgets, tfgets, pfgets, freadsym, read_repo_file,
- maybe_tweak, recompile_files, read_repo_files,
- demangle_new_symbols, scan_linker_output): Add static prototype.
-
- (symbol_hash_newfunc, file_hash_newfunc, demangled_hash_newfunc):
- Make the third argument a `hash_table_key'.
-
- * toplev.c (debug_start_source_file): Mark parameter `filename'
- with ATTRIBUTE_UNUSED.
-
-Sun Mar 21 02:28:21 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * tm.texi (Varargs): Don't split argument of @item across lines.
-
- * invoke.texi: Fix use of @item vs @itemx.
-
-Sun Mar 21 09:59:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (TARGET_SWITCHES): Add null description to
- default case.
-
-Sat Mar 20 23:33:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * loop.c (check_dbra_loop): Fix debug message.
-
-Sat Mar 20 15:54:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (decrement_and_branch_on_count): Emit rptb_end
- pattern instead of decrement_and_branch_until_zero pattern.
-
-Sat Mar 20 11:39:58 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (TARGET_SWITCHES): Add documentation.
- * config/c4x/c4x.h (TARGET_OPTIONS): Add documentation.
-
-Fri Mar 19 23:26:29 1999 Martin von Löwis <loewis@informatik.hu-berlin.de>
-
- * expr.c (expand_expr): Handle ERROR_MARK much earlier.
-
-Fri Mar 19 15:28:38 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cccp.c (create_definition): Cast to U_CHAR* when assigning to one.
-
- * cppfiles.c (read_and_prescan): Likewise.
- Start a #define in column 0.
-
- * cpplib.c (cpp_define): Cast to U_CHAR* when assigning to one.
- (cpp_push_buffer): Likewise for cpp_buffer*.
- (do_include): Change the type of `fbeg' and `fend' to unsigned char*.
- (do_endif): Cast to char* when assigning to one.
- (do_assert): Likewise.
- (do_unassert): Likewise.
- (cpp_read_check_assertion): Change the type of `name' to U_CHAR*.
- Don't do unnecessary cast to char* anymore.
-
- * genrecog.c (make_insn_sequence): Cast to char** when assigning
- to one. Cast the first argument of bzero to PTR.
-
- * loop.c (strength_reduce): Remove unused variable `note'.
-
- * reload1.c (new_insn_chain): Cast to struct insn_chain* when
- assigning to one.
-
- * rtl.c (copy_rtx): Use memcpy instead of bcopy.
-
-Fri Mar 19 11:19:31 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * calls.c (initialize_argument_information): Mark parameters
- `num_actuals' and `n_named_args' with ATTRIBUTE_UNUSED.
-
- * dbxout.c (dbxout_start_new_source_file): Likewise for parameter
- `filename'.
- (dbxout_finish): Likewise for parameters `file' and `filename'.
- (dbxout_prepare_symbol): Likewise for parameter `decl'.
- (dbxout_begin_function): Likewise.
-
- * explow.c (hard_function_value): Likewise for parameter `func'.
-
- * function.c (locate_and_pad_parm): Likewise for parameter `fndecl'.
-
- * expmed.c (expand_divmod): Omit unused argument to `expand_abs'.
- * expr.c (expand_expr): Likewise.
- * expr.h (expand_abs): Delete unused argument from prototype.
- * optabs.c (expand_abs): Remove unused parameter `unsignedp'.
-
- * sdbout.c (sdbout_init): Mark parameter `syms' with ATTRIBUTE_UNUSED.
- (sdbout_end_block): Likewise for parameter `n'.
-
- * toplev.c (debug_define): Likewise for parameters `lineno' and
- `buffer'.
- (debug_undef): Likewise.
-
- * varasm.c (named_section): Likewise for parameter 'reloc'.
- (assemble_external): Likewise for parameter `decl'.
- (assemble_alias): Likewise for parameter `target'.
-
-Fri Mar 19 01:54:30 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
-
- * toplev.c (read_integral_parameter): Constify. Better control of
- error messages.
- (main): Use read_integral_parameter to set optimize, id_clash_len,
- larger_than_size, and the debugging level.
- * toplev.h (read_integral_parameter): Update prototype.
-
-Fri Mar 19 01:42:05 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
-
- * system.h: Use putc_unlocked, fputc_unlocked, and
- fputs_unlocked only if putc_unlocked has a prototype already.
- Prototype fputs_unlocked if necessary.
- * configure.in: Check for prototypes of putc_unlocked and
- fputs_unlocked.
- * acconfig.h: Updated.
- * config.in, configure: Rebuilt.
-
-Fri Mar 19 02:45:12 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * Makefile.in (INTL_TARGETS): New macro.
- ($(INTL_TARGETS)): Depend on generated sources; drop dependencies
- on cp/parse.c and objc/objc-parse.c.
- ($(srcdir)/cp/parse.c): Move to cp/Make-lang.in.
- * objc/Make-lang.in ($(INTL_TARGETS)): Depend on objc/objc-parse.c.
-
-Thu Mar 18 22:28:53 1999 Jeffrey A Law (law@cygnus.com)
-
- * i860.h (TARGET_SWITCHES): Add documentation.
- * i860/paragon.h (TARGET_SWITCHES): Add documentation.
- * i370.h (TARGET_SWITCHES): Add documentation.
- * fx80.h (TARGET_SWITCHES): Add documentation.
- * elxsi.h (TARGET_SWITCHES): Add documentation.
- * clipper.h (TARGET_SWITCHES): Add documentation.
- * 1750a.h (TARGET_SWITCHES): Add documentation.
- * pa.h (TARGET_SWITCHES): Add documentation.
- (TARGET_OPTIONS): Likewise.
- * mn10300.h (TARGET_SWITCHES): Add documentation.
- * h8300.h (TARGET_SWITCHES): Add documentation.
-
-Thu Mar 18 15:58:26 1999 Nick Clifton <nickc@cygnus.com>
-
- * loop.c (strength_reduce): Do not perform pseudo replacements
- if the loop contains volatile memory references.
-
-Thu Mar 18 19:09:50 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_reloads_toplev): When processing X recursively,
- don't alter it destructively except by filling in constants.
-
-Thu Mar 18 10:14:18 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cccp.c (default_include): Initialize structure members.
- (pass_thru_directive): Change the type of 'keyword_length' to int.
- (main): Cast `bindtextdomain' and `textdomain' to (void).
-
- * collect2.c (main): Likewise.
-
- * cppmain.c (main): Likewise.
-
- * gcc.c (main): Likewise.
-
- * gcov.c (main): Likewise.
-
- * protoize.c (main): Likewise.
-
- * toplev.c (main): Likewise.
-
-1999-03-18 Gavin Romig-Koch <gavin@cygnus.com>
-
- * config/mips/mips.c (mips_explicit_type_size_string): Correct
- its type.
-
-Thu Mar 18 01:24:25 1999 Jeffrey A Law (law@cygnus.com)
-
- * configure.in: Use "exit 1", not "exit (1)".
- * configure: Rebuilt.
-
-Wed Mar 17 23:17:42 1999 Mark Kettenis <kettenis@gnu.org>
-
- * config/t-gnu (SYSTEM_HEADER_DIR): New variable. Set to
- `/include' in order to find the system's limits.h.
-
-Wed Mar 17 23:00:18 1999 Robert Lipe <robertlipe@usa.net>
-
- * fixinc/fixincl.c: Include auto-host.h instead of config.h.
- * fixinc/procopen.c: Likewise.
- * fixinc/regex.c: Likewise.
- * fixinc/server.c: Likewise.
-
-Wed Mar 17 22:46:13 1999 Mark Elbrecht <snowball3@usa.net.
-
- * config/i386/go32.h: Delete.
- * config/i386/djgpp.h: New. Renamed from go32.h.
- Added -DDJGPP=2 to CPP_PREDEFINES.
- * config/i386/go32-rtems.h: Delete.
- * config/i386/djgpp-rtems.h: New. Renamed from go32-rtems.h.
- Added -DDJGPP=2 to CPP_PREDEFINES.
- * config/i386/xm-go32.h: Delete.
- * config/i386/xm-djgpp.h: New. Renamed from xm-go32.h.
- * config/i386/x-go32: Delete.
- * config/i386/x-djgpp: New. Renamed from x-go32.
- * config/i386/t-go32: Delete.
- * config/i386/t-djgpp: New. Renamed from t-go32.
- * configure.in(pc-msdosdjgpp): Set xm_file to i386/xm-djgpp.h.
- Set tm_file to i386/djgpp.h. Set tmake_file to i386/t-djgpp.
- Set xmake_file to i386/x-djgpp.
- (*-go32-msdos, *-go32*): Remove entries. Warn that GO32/DJGPP V1.X
- is now unsupported and *-pc-msdosdjgpp for DJGPP V2.X should be
- used instead.
- * configure: Rebuilt.
-
- * gcc.c (process_command): Dump link_command_spec too.
-
-Wed Mar 17 20:38:08 1999 Jerry Quinn <jquinn@nortelnetworks.com>
- Jeff Law <law@cygnus.com>
-
- * pa.md: Add real PA8000 scheduling information.
-
- * pa.h (processor_type): Add PROCESSOR_8000 symbol.
- (ISSUE_RATE): Revamp, including PA8000 support.
- * pa.c (override_options): Add 8000 as -mschedule= option.
- Do not call strcmp if pa_cpu_string is null.
- * pa.md (attr cpu): Add 8000.
- * invoke.texi: Add documentation for PA8000 scheduling.
-
-Wed Mar 17 18:20:24 1999 David S. Miller <davem@redhat.com>
-
- * config/sparc/sparc.h (TARGET_SWITCHES, TARGET_OPTIONS):
- Add descriptions.
- * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise.
- * config/sparc/splet.h (SUBTARGET_SWITCHES): Likewise.
-
-Wed Mar 17 14:51:19 1999 Richard Henderson <rth@cygnus.com>
-
- * flow.c (compute_immediate_dominators): New function.
- * basic-block.h (compute_immediate_dominators): Declare it.
-
- * alpha.h (HARD_REGNO_MODE_OK): Allow only 4 and 8 byte unit modes
- in FP regs.
- (MODES_TIEABLE_P): Define asymmetricly wrt modes illegal in FP regs.
-
-Wed Mar 17 14:41:41 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/aout.h (ASM_GENERATE_INTERNAL_LABEL): Fix compile
- time warning.
- * config/arm/arm.md: Fix various compile time warnings.
- * config/arm/arm.h: Fix various compile time warnings. Add
- function prototypes.
- * config/arm/arm.c: Fix various compile time warnings.
- (arm_override_options): Reorganize to separate tuning from
- targetting.
- (bit_count): New function: Return a count of the number of bits
- set in a word.
-
-Wed Mar 17 21:29:12 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (eliminate_regs): Don't keep REG_DEAD notes around for
- things that were eliminated.
-
-Wed Mar 17 12:16:26 1999 Richard Henderson <rth@cygnus.com>
-
- * function.c (fixup_var_refs_1): First try moving the expression
- directly into a register. Don't separate cc0 setter and user.
-
-Wed Mar 17 11:20:29 1999 Dave Brolley <brolley@cygnus.com>
-
- * cppfiles.c (PIPE_BUF): #define PIPE_BUF if not defined already.
-
-Wed Mar 17 09:25:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-lex.c: Don't include setjmp.h.
- (parse_float): New static function.
- (pf_args): New struct.
- (yylex): Use them in call to `do_float_handler'.
-
-1999-03-16 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * cexp.y (yyerror): Call verror to get a useful error message.
- * cexp.c: Rebuilt.
-
- * .gdbinit: Move command to put breakpoint at abort to end of file
- so that gdb does not bail out early.
-
-Tue Mar 16 15:30:19 1999 Nick Clifton <nickc@cygnus.com>
-
- * rtl.h: Rename prototype for free_bb_memory to free_bb_mem.
-
-Tue Mar 16 23:40:09 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (movsi_i): Move t/r alternative after r/rI alternative.
-
-Tue Mar 16 13:44:50 1999 Jim Wilson <wilson@cygnus.com>
-
- * mn10200/mn10200.md (addsi3, subsi3, ashlsi3, lshrsi3, ashrsi3):
- Delete emit_library_call_value declaration.
-
-1999-03-16 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppfiles.c (read_and_prescan): Map backslash-newline to '\r'
- (which cannot otherwise appear in the processed buffer) and
- move it out of tokens that it appears in the middle of.
- Improve performance.
- (find_position): New function.
-
- * cpplib.c: \r (one character) indicates backslash
- newline, not \\\n (two characters). It cannot appear in the
- middle of a token. Call CPP_BUMP_LINE (pfile) whenever
- parsing moves past \n or \r. Increment pfile->lineno whenever
- a \n is placed into token_buffer. Only one mark can exist at
- a time, and CPP_BUMP_LINE must not be used while it is
- active. It is automatically cleared by cpp_pop_buffer and
- parse_goto_mark. \r is not in is_hor_space or is_space.
-
- (NEWLINE_FIX, NEWLINE_FIX1, adjust_position,
- update_position, count_newlines, parse_move_mark): Removed.
- (parse_string, copy_comment): New functions.
- (parse_name): Returns void.
- (parse_set_mark, parse_clear_mark, parse_goto_mark): Take only
- one argument, a cpp_reader *. Change for new marking scheme.
- (skip_comment): Handle CHILL line comments too. Second
- argument is now first character of comment marker; all callers
- changed. Issue error for unterminated block comment here.
- (cpp_skip_hspace): Recognize CHILL comments.
- (copy_rest_of_line): Likewise. Call skip_comment and
- parse_string directly, don't go through cpp_get_token. Emit
- "/**/" for block comments if -traditional (create_definition
- needs this).
- (do_define): Don't play with put_out_comments.
- (cpp_push_buffer): Initialize ->mark to -1.
- (cpp_buf_line_and_col): Just read out the values in the buffer
- structure.
- (output_line_command): Use cpp_buf_line_and_col. Fix
- formatting. Remove stale code.
- (cpp_get_token): Break out string parsing code to
- parse_string. Use skip_comment for CHILL comments too. Use
- copy_comment for put_out_comments instead of dinking with
- marks. Remove stale code. Don't call output_line_command
- unless it's necessary.
-
- * cpplib.h (parse_marker): Removed.
- (struct cpp_buffer): Line_base is now an unsigned char *; add
- `mark' [long], remove `marks' [struct parse_marker *].
- (parse_set_mark, parse_clear_mark, parse_goto_mark): Update
- prototypes.
- (CPP_BUMP_LINE, CPP_BUMP_BUFFER_LINE): New macros.
- * cppinit.c (is_hor_space, is_space): '\r' is not considered
- whitespace.
- * cppexp.c (cpp_parse_expression): Use cpp_skip_hspace, not
- SKIP_WHITE_SPACE.
- * cpphash.c (macarg): Disable line commands while expanding.
-
-Tue Mar 16 11:30:19 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * c-lex.c (yylex) : Remove warning for integer literals being
- larger than the largest target int. Add warning for integer
- literal being larger than than its chosen type.
-
-Tue Mar 16 10:53:17 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * invoke.texi: Add -mlong32 documentation.
- * config/mips/mips.h (mips_explicit_type_size_string): New.
- (TARGET_SWITCHES): Add 'long32'.
- (TARGET_OPTIONS): Add 'explicit-type-size'.
- (CC1_SPECS): Set -mexplicit-type-size.
- (LONG_MAX_SPEC): Change a use of 'no-long64' to 'long32'.
- * config/mips/abi64.h (LONG_MAX_SPEC): Same. Add 'mabi=32'.
- * config/mips/mips.c (mips_explicit_type_size_string): New.
- (override_options): Use it.
- * config/mips/osfrose.h (CC1_SPECS): Set -mexplicit-type-size.
-
- * config/mips/mips.h (SUBTARGET_CPP_SIZE_SPEC):
- Pointer size now depends on both size longs and size of GP
- registers.
-
-Tue Mar 16 10:22:22 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * config/mips/iris.h (CTORS_SECTION_ASM_OP,DTORS_SECTION_ASM_OP,
- dtors_section): Use Pmode == DImode rather than TARGET_LONG64.
- * config/mips/mips.c (override_options): Allow -mlong64 and
- -mint64 with -mips2 or less.
- * config/mips/mips.h (MASK_LONG64): Fix comment.
- (POINTER_SIZE): Use Pmode == DImode rather than TARGET_LONG64.
- (Pmode): Make Pmode the smaller of longs or gp registers.
- * invoke.texi: Note the new size for pointers.
-
-Mon Mar 15 22:45:25 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.h (ASM_OUTPUT_{DOUBLE,FLOAT}): Always generate IEEE 754
- bit-pattern directly.
- (ASM_OUTPUT_REG_{PUSH,POP}): Delete.
- * rs6000.c (first_reg_to_save): If profiling and context needed,
- allocate a reg to save static chain for all ABIs. For AIX
- profiling, calculate parameter registers to save based on need.
- (output_function_profiler): Save and restore static chain around
- profile call for all ABIs.
-
-1999-03-15 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppinit.c: Instead of one pending list, keep separate lists
- for each category of pending option: -D/-U, -A, -include,
- -imacros. Move the four partial include-path lists into the
- pending block. Use head and tail pointers so we don't ever
- have to reverse the lists.
-
- (cpp_start_read): Break out blocks of code to their own
- functions: install_predefs and initialize_dependency_output.
- Use path_include for C_INCLUDE_PATH and friends as well as
- CPATH. Remove include_defaults gunk. Warn about the
- combination of -lang-chill and -trigraphs. Optimize string
- bashing. Walk each pending list once, deallocating as we go.
-
- (append_include_chain): Brought over from cppfiles.c. Mark
- dirs as system include dirs if and only if appending to
- system include path. If opts->verbose, print a notice when a
- dir is dropped from the include path because it doesn't
- exist. Fix memory leak: this function is not supposed to copy
- its DIR argument.
-
- (nreverse_pending, push_pending): Removed.
- (APPEND): New macro for adding to pending lists.
- (path_include): Can now add to any partial include path.
- (base_name): Bring over from cccp.c.
- (cpp_options_init): Allocate the pending block.
- (cpp_handle_option): Add --version. Exit after --help. Fix
- formatting. Order -ifoo options by frequency of usage.
- (install_predefs): New function, simplified version of code
- that was in cpp_start_read.
- (initialize_dependency_output): Likewise. Understand OBJECT_SUFFIX.
-
- * cppfiles.c (simplify_pathname): Export.
- (merge_include_chains): Don't nreverse the lists. If
- opts->verbose, print a notice when a duplicate dir is detected
- and dropped from the include path.
- (finclude): Fix excessive cleverness in setting
- fp->system_header_p.
- (actual_directory): Set x->sysp from
- CPP_BUFFER (pfile)->system_header_p so that one system header
- may include another with "".
- (deps_output): Fix double adjustment of deps_size which would
- cause all dependencies after the first two lines to be lost.
-
- * cpplib.c (cpp_unassert): New function.
- * cpplib.h: Lay out struct cpp_pending here. Adjust
- prototypes. Add include_prefix_len to struct cpp_options.
-
-Mon Mar 15 16:01:52 1999 Jim Wilson <wilson@cygnus.com>
-
- * config/misp/mips.h (REGISTER_MOVE_COST): Make the cost of moving
- from HI/LO/HILO/MD into general registers the same as for one
- of moving general registers to HI/LO/HILO/MD.
-
-Mon Mar 15 12:39:38 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/m32r/m32r.c (init_idents): New function. Initialize
- static tree nodes for m32r specific attribute identifiers. Remove
- leading and trailing double underscores from the attribute names.
- (m32r_valid_machine_decl_attribute): Call init_idents.
- (m32r_encode_section_info): Call init_idents.
-
-Mon Mar 15 10:20:20 1999 Mark Mitchell <mark@markmitchell.com>
-
- * reload.c (find_reloads): Add a REG_LABEL note if we substitute a
- LABEL_REF for something else.
-
-Mon Mar 15 08:24:17 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c (exact_real_inverse): Move variable `float_error'
- into the scope where it is used.
- (const_binop_1): New static function.
- (cb_args): New struct.
- (const_binop): Use them in call to `do_float_handler'.
- (fold_convert_1): New static function.
- (fc_args): New struct.
- (fold_convert): Use them in call to `do_float_handler'.
-
-Mon Mar 15 22:50:18 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * rtlanal.c (auto_inc_p): New function.
- * rtl.h (auto_inc_p): Prototype it.
- * reload1.c (add_auto_inc_notes): New function.
- (reload): Strip REG_INC notes and call add_auto_inc_notes
- for each insn to restore them correctly.
-
-1999-03-15 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fixinc/Makefile.in (procopen.o): List the actual
- dependencies.
-
-Sun Mar 14 16:22:10 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cse.c (check_fold_consts): New static function.
- (cfc_args): New struct.
- (simplify_relational_operation): Use them in call to
- `do_float_handler'.
-
- * toplev.c (do_float_handler): New function to wrap calls to
- setjmp/set_float_handler.
-
- * toplev.h (do_float_handler): Add extern prototype.
-
- * tree.c (build_real_from_int_cst_1): New static function.
- (brfic_args): New struct.
- (build_real_from_int_cst): Use them in call to
- `do_float_handler'.
-
-Sun Mar 14 01:15:06 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Mar 13 17:37:18 1999 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (sched_analyze_1): Only clear reg_last_uses on a SET.
-
-Sat Mar 13 11:36:16 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.c (arm_split_constant): Don't try to force a constant to
- memory after arm_reorg has run.
- (after_arm_reorg): New static variable.
- (arm_reorg): Set it.
- (output_func_epilogue): Clear it.
-
-Fri Mar 12 20:26:32 1999 David Edelsohn <edelsohn@gnu.org>
-
- * configure.in ({rs6000,powerpc}-ibm-aix*): Set float_format to none.
- * configure: Rebuilt.
-
-Fri Mar 12 20:45:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * unroll.c (loop_iterations): Don't return a final value for EQ
- comparison loops.
-
-Fri Mar 12 12:35:01 1999 Jim Wilson <wilson@cygnus.com>
-
- * reload1.c (calculate_needs_all_insns): When ignore equivalence
- setting insn, clear need_elim, need_reload, and need_operand_change.
-
-Fri Mar 12 07:54:43 1999 Bruce Korb <korb@datadesign.com>
-
- * fixinc/fixinc.*: Some changes from the fixincl-branch
- were not applied (??!!). Corrected.
-
- * fixinc/Makefile.in: Same thing.
-
-Fri Mar 12 00:51:43 1999 Jeffrey A Law (law@cygnus.com)
-
- * expr.c (expand_expr): Allow a CALL_EXPR with a mode wider than
- MAX_INTEGER_COMPUTATION_MODE.
-
-Thu Mar 11 14:00:58 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (HARD_REGNO_MODE_OK): Disallow QI/HImode in fp regs.
- (MODES_TIEABLE_P): Update.
-
- * alpha.md (ev5_e0): Conflict loads and stores.
-
-Thu Mar 11 13:55:52 1999 Richard Henderson <rth@cygnus.com>
-
- * machmode.h (smallest_mode_for_size): Prototype.
- * stor-layout.c (smallest_mode_for_size): Remove static.
-
-Thu Mar 11 21:25:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Don't do biv increment -> DEST_REG giv
- conversion if we don't know the lifetime.
-
-Thu Mar 11 20:37:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.1c (delete_address_reloads_1): Check for reloads of
- CURRENT_INSN even if it sets DST.
-
-Thu Mar 11 10:29:50 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c (add_AT_lbl_offset): Rename from add_AT_section_offset.
- (print_die, size_of_die, value_format, output_die): Adjust.
-
-Thu Mar 11 10:27:42 1999 Robert Lipe <robertlipe@usa.net>
-
- * dwarf2out.c (TEXT_SECTION_LABEL, DEBUG_LINE_SECTION_LABEL,
- DEBUG_INFO_SECTION_LABEL, ABBREV_SECTION_LABEL,
- text_section_label, debug_line_section_label,
- debug_info_section_label, abbrev_section_label): New.
- (output_compilation_unit_header): Emit label associated
- with section instead of section name itself.
- (out_pubnames, output_aranges, output_line_info,
- dwarf2out_finish): Likewise.
- (dwarf2out_init): Build internal label names for sections
- from static labels.
-
-Thu Mar 11 17:28:32 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (mulsi3): End mul.l sequence with a no-op move.
-
-Thu Mar 11 08:52:02 1999 Bruce Korb <korb@datadesign.com>
-
- * Makefile.in: Activated fixinc/mkfixinc.sh.
- * configure.in: Activated fixinc/mkfixinc.sh.
-
-Thu Mar 11 01:38:02 1999 Mumit Khan <khan@xraylith.wisc.edu>
-
- * cppfiles.c (INO_T_EQ): Handle UWIN.
-
- * c-common.c (decl_attributes): Flag unrecognized attribute
- functions as warnings instead of as errors.
-
- Support for i386-pc-uwin.
- * i386/uwin.h: New file.
- * i386/xm-uwin.h: New file.
- * i386/t-uwin: New file.
- * i386/uwin.asm: New file.
- * configure.in (i[3456]86-*-uwin*): Define.
- Add Workaround for vfork bug when hosted on uwin.
- * configure: Regenerate.
-
- * cccp.c (INO_T_EQ): Undefine. UWIN has inodes.
- (absolute_filename): UWIN uses POSIX pathnames only.
- * libgcc2.c (getpagesize): Do not define for UWIN.
- (mprotect): Likewise.
- * protoize.c (dirent.h): Conditionally include.
- (fputc): Prototype only if it's not a macro.
-
-Wed Mar 10 02:49:04 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * configure.in: Remove init_priority stuff.
-
-1999-03-11 Colin Smith <colin@wrs.com>
-
- * sdbout.c (plain_type_1): Make boolean types work better with sdb.
-
-Thu Mar 11 00:20:52 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * gcc.texi: Update bug reporting instructions to match
- current ezmlm list reality.
-
-Wed Mar 10 23:11:19 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcc.c (print_file_name, print_prog_name, spec_machine,
- read_specs, set_spec, lookup_compiler, build_search_list,
- putenv_from_prefixes, find_a_file, record_temp_file,
- delete_if_ordinary, handle_braces, do_spec, do_spec_1, find_file,
- is_directory, validate_switches, used_arg, default_arg,
- pfatal_with_name, perror_with_name, pfatal_pexecute, fatal, error,
- notice, add_preprocessor_option, add_assembler_option,
- add_linker_option, process_command, execute,
- unused_prefix_warnings, clear_args, fatal_error,
- lang_specific_driver, user_specs, compiler, link_command_spec,
- option_map, translate_options, make_temp_file, temp_name,
- programname, path_prefix, machine_suffix, just_machine_suffix,
- gcc_exec_prefix, standard_exec_prefix, standard_exec_prefix_1,
- md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1,
- standard_startfile_prefix, standard_startfile_prefix_1,
- standard_startfile_prefix_2, tooldir_base_prefix, tooldir_prefix,
- multilib_dir, temp_filename, temp_file, command, switchstr,
- infile, outfiles, input_filename, input_basename, input_suffix,
- check_live_switch, main): Qualify a char* with the `const' keyword.
-
-Wed Mar 10 20:28:29 1999 Jeffrey A Law (law@cygnus.com)
-
- * lcm.c: New file.
- * Makefile.in (OBJS): Add lcm.o.
- (lcm.o): Add dependencies.
-
- * gcse.c (compute_pre_local_properties): Delete.
- (compute_pre_data): Use compute_local_properties instead of
- compute_pre_local_properties.
-
- * gcse.c: More comments, whitespace and similar fixes.
- (dump_cuid_table, maybe_set_rd_gen, dump_cprop_data): Delete.
- (dump_pre_data, compute_cprop_local_properties): Likewise.
- (one_classic_gcse_pass): Lose unused argument. All callers changed.
- (compute_hash_table, compute_expr_hash_table): Likewise.
- (compute_set_hash_table, one_pre_gcse_pass, mark_call): Likewise.
- (cprop_insn, cprop, one_cprop_pass): Add new argument ALTER_JUMPS.
- All callers changed. Only alter jumps if ALTER_JUMPS is nonzero.
- Lose unused argument.
- (gcse_main): Always run a cprop pass after finishing global cse.
- (compute_local_properties): New function.
- (hash_scan_pat, hash_scan_insn): No longer call maybe_set_rd_gen.
- (compute_cprop_data): Use compute_local_properties.
-
- * gcse.c: Update various comments.
- (current_function_calls_longjmp): Delete declaration.
-
- * gcse.c (run_jump_opt_after_gcse): New variable.
- (gcse_main): Returns an integer.
- (hash_scan_set): Record initializations from CONST_DOUBLEs too.
- (try_replace_reg): Update some comments.
- (cprop_insn): Allow propagation into some JUMP_INSNs too.
- * rtl.h (gcse_main): Update prototype.
- * toplev.c (rest_of_compilation): If gcse_main returns nonzero,
- then run a jump optimization pass.
- * jump.c (delete_barrier_successors): Delete nop jumps too.
-
-Wed Mar 10 19:04:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (fp_arith_reg_operand): Actually test if reg is suitable
- for FP arithmetic. Changed caller.
- * sh.md (subsf3, subsf_i): Use fp_arith_reg_operand.
-
-Wed Mar 10 18:56:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (choose_reload_regs): When inheriting from the frame
- pointer, don't clobber it.
-
-Wed Mar 10 08:01:52 1999 Bruce Korb <korb@datadesign.com>
-
- * fixinc/fixinc.*: Resync-ed with the files in this
- directory.
-
- * fixinc/mkfixinc.sh: The machine case elements were
- out-of-order. (the ix86-*-linux-gnu* entry needed to
- be earlier).
-
-Wed Mar 10 00:01:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (reload_combine_note_store): Fix calculation of number
- of affected registers.
-
-Tue Mar 9 15:48:15 1999 Richard Henderson <rth@cygnus.com>
-
- * flow.c (tidy_fallthru_edge): Be more careful finding the last
- BARRIER of a list. Delete the cc0 setter as well as a cond jump.
-
-Tue Mar 9 15:26:02 1999 Hans-Peter Nilsson <hp@bitrange.com>
-
- * i386.md (ashlsi3 splitter): Fix typo in last change.
-
-Tue Mar 9 11:35:20 1999 Richard Henderson <rth@cygnus.com>
-
- * reg-stack.c (stack_reg_life_analysis): Use returnjump_p
- instead of an explicit test for RETURN.
-
-Tue Mar 9 09:33:16 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (toplev.o): Depend on $(BASIC_BLOCK_H).
-
- * toplev.c: Include basic-block.h.
-
-Tue Mar 9 02:08:17 1999 Jeffrey A Law (law@cygnus.com)
-
- * calls.c (load_register_parameters): New function.
- (expand_call): Use it.
-
- * calls.c (expand_call): Slightly reorganize code.
-
- * calls.c (compute_argument_addresses): New function.
- (rtx_for_function_call): New function.
- (expand_call): Use them.
-
- * i386.md (zero_extendhisi2): Split into an expander and anonymous
- pattern. Add new anonymous pattern for use when optimizing for
- size or for the PPro.
- (zero_extendqihi2, zero_extendqisi2): Likewise.
-
-Mon Mar 8 23:43:47 1999 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (sched_analyze_1): Fix last change -- add clobber
- dependencies to sets in the non-hard-reg case too.
-
-Mon Mar 8 18:55:21 1999 Marc Espie <espie@cvs.openbsd.org>
-
- * config/openbsd.h (HANDLE_SYSV_PRAGMA): Define.
-
-Mon Mar 8 16:04:44 1999 Jim Wilson <wilson@cygnus.com>
-
- * local-alloc.c (combine_regs): Don't combine if we have a hard reg
- for which CLASS_LIKELY_SPILLED_P is true.
-
- * unroll.c (loop_iterations): Only call loop_find_equiv_value if we
- have a REG or SUBREG.
-
-Mon Mar 8 15:27:42 1999 Jeffrey A Law (law@cygnus.com)
-
- * i386.md (ashlsi3): Revise comments. Provide new anonymous
- pattern for Pentium and PPro/PII. Reverse constraints in
- generic ashlsi3 anonymous pattern.
-
- * calls.c (initialize_argument_info): Accept a pointer to
- CUMULATIVE_ARGS.
- (expand_call): Pass the address of CUMULATIVE_ARGS.
-
- * rs6000/xm-sysv4.h (HOST_BITS_PER_LONGLONG): Remove #if 0.
-
- * mn10300.h (CASE_DROPS_THROUGH): Delete.
- * mn10200.h (CASE_DROPS_THROUGH): Delete.
- * h8300.h (CASE_DROPS_THROUGH): Delete.
-
- * flow.c (merge_blocks_nomove): For HAVE_cc0 targets, make sure
- to also delete the cc0 setter when deleting a conditional branch
- to the next block.
-
-Mon Mar 8 18:47:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * regmove.c (copy_src_to_dest): New argument max_old_uid.
-
-Mon Mar 8 08:23:00 1999 Bruce Korb <korb@datadesign.com>
-
- * ChangeLog: Merged entries from fixincl-branch.
-
-Sun Mar 7 11:48:56 1999 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (ENCODE_BLOCKAGE): Don't shift unit too far.
- (print_exp): Special case addition of a constant.
- (print_value) [CONST_INT]: Use HOST_WIDE_INT_PRINT_HEX.
-
-Sun Mar 7 11:21:02 1999 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (reg_last_clobbers): New.
- (reg_pending_clobbers, bb_reg_last_clobbers): New.
- (compute_block_backward_dependences): Allocate memory for them.
- (schedule_region): Likewise.
- (sched_analyze_1): Clobbers don't interfere with one another.
- They do interfere with sets ...
- (sched_analyze_2): ... and uses.
- (sched_analyze): Likewise.
- (sched_analyze_insn): Update reg_last_clobbers appropriately.
-
-Sun Mar 7 08:30:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gmon-sol2.c: Include config.h and system.h. Don't redundantly
- include system header files.
- (sccsid): Remove.
- (moncontrol, monstartup, _mcleanup, internal_mcount): Prototype.
- (_mcleanup): Add the `const' keyword to a char*.
- (internal_mcount): Declare `etext' as a char[] not a function.
- Cast `etext' to char* when calling `monstartup'.
-
- * sparc.c (frame_base_name, save_regs, restore_regs,
- build_big_number, sparc_cmodel_string, sparc_align_loops_string,
- sparc_align_jumps_string, sparc_align_funcs_string, code_model,
- cpu_default, cpu_table, output_function_prologue,
- output_function_epilogue, output_return,
- sparc_flat_output_function_prologue, ultra_code_names,
- sparc_flat_output_function_epilogue): Constify a char*.
- (hypersparc_adjust_cost): Add a default case in a switch.
-
- * sparc.h (sparc_cmodel_string, OVERRIDE_OPTIONS,
- sparc_cpu_select, sparc_align_loops_string,
- sparc_align_jumps_string, sparc_align_funcs_string,
- output_return): Constify a char*.
-
- * sparc.md (movdi): Change the comparison of HOST_BITS_PER_WIDE_INT
- so that we check "== 32", instead of "!= 64". Cast a value to
- HOST_WIDE_INT when comparing against one. Hide the declaration
- for variable `chain'.
-
-Sun Mar 7 08:05:27 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h (const, inline): Move the stage2 handling of these
- keywords-as-macros from here...
-
- * gansidecl.h (const, inline): ...to here.
-
-Sun Mar 7 02:44:15 1999 Richard Henderson <rth@cygnus.com>
-
- * recog.c (push_operand, pop_operand): VOIDmode needn't match modes.
-
-Sun Mar 7 01:58:47 1999 Richard Henderson <rth@cygnus.com>
-
- * cse.c (canon_hash): Never reject hard regs in CCmode.
-
-Sun Mar 7 01:15:04 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Mar 6 17:18:44 1999 Richard Earnshaw (rearnsha@arm.com)
- Richard Henderson <rth@cygnus.com>
-
- * flow.c (make_edges): Handle casesi that jump to default branch.
- If CASE_DROPS_THROUGH, force fallthru to block after casesi.
-
-Sat Mar 6 07:49:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-aux-info.c (data_type, affix_data_type, gen_decl,
- gen_formal_list_for_type, gen_formal_list_for_func_def, gen_type):
- Qualify a char* with the `const' keyword.
-
- * c-common.c (declare_hidden_char_array, add_attribute, if_elt,
- declare_function_name, decl_attributes, format_char_info,
- check_format_info, binary_op_error): Likewise.
-
- * cexp.y (yyerror, error, pedwarn, warning, token): Likewise.
-
- * gcse.c (dump_hash_table): Likewise.
-
- * integrate.c (function_cannot_inline_p): Likewise.
-
- * optabs.c: Include insn-config.h earlier.
- (init_libfuncs, init_integral_libfuncs, init_floating_libfuncs):
- Qualify a char* with the `const' keyword.
-
- * real.c (asctoe24, asctoe53, asctoe64, asctoe113, asctoe,
- asctoeg, mtherr, ereal_atof): Likewise.
-
- * real.h (ereal_atof): Likewise.
-
- * sbitmap.c (dump_sbitmap_vector): Likewise.
-
- * sbitmap.h (dump_sbitmap_vector): Likewise.
-
- * stmt.c (nesting, n_occurrences, expand_start_case): Likewise.
-
- * toplev.c (rest_of_compilation): Likewise.
-
- * tree.h (function_cannot_inline_p, expand_start_case): Likewise.
-
-Fri Mar 5 23:16:42 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Add 64-bit support and do
- not overwrite AIX link register save area.
-
-Fri Mar 5 23:08:01 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_reloads_subreg_address): Actually create the USE
- for the register, not the new memory location.
-
-Fri Mar 5 21:41:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (emit_reload_insns): If pseudo that can't be replaced
- with its equivalent constant, fall back to reload_in.
-
-Fri Mar 5 13:20:39 1999 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in: Delete .flow2 debugging files.
-
-Fri Mar 5 11:36:11 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.c (arm_override_options): Change default target
- cpu selection so that enabling TARGET_APCS_32 does not override
- default target CPU.
-
-Fri Mar 5 19:26:23 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.h (SLOW_BYTE_ACCESS): Define to 1.
- (BOOL_TYPE_SIZE): Define.
-
-Fri Mar 5 02:14:54 1999 John Wehle (john@feith.com)
-
- * function.c (assign_stack_temp_for_type): Abort
- if mode == Blkmode and align is less than
- BIGGEST_ALIGNMENT / BITS_PER_UNIT.
- (assign_stack_temp_for_type): Round the size parameter
- passed to assign_stack_local instead of size itself.
-
-Thu Mar 4 15:00:35 1999 Richard Henderson <rth@cygnus.com>
-
- * flow.c (delete_unreachable_blocks): Mark blocks as they
- are put on to the worklist, not as they are taken off.
-
-Thu Mar 4 00:05:44 1999 Jeffrey A Law (law@cygnus.com)
-
- * function.c (current_function_has_computed_jump): Remove duplicate
- definition.
-
-Wed Mar 3 19:09:11 1999 Jim Wilson <wilson@cygnus.com>
-
- * m68k/m68020-elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Undef.
- (STARTFILE_SPEC, ENDFILE_SPEC): Define to empty string.
-
- * sparc/elf.h (MULDI3_LIBCALL, DIVDI3_LIBCALL, UDIVDI3_LIBCALL,
- MODDI3_LIBCALL, UMODDI3_LIBCALL, STDC_0_IN_SYSTEM_HEADERS): Undef.
- (INIT_SUBTARGET_OPTABS): Define to empty.
-
-Wed Mar 3 00:00:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (force_into): New function.
- (expand_block_move): Use it.
-
-Tue Mar 2 10:39:43 1999 Nick Clifton <nickc@cygnus.com>
-
- * cccp.c (struct default_include): Add 'included' field.
- (main): Set 'included' field when a default include directory
- is added to the chain. If -v is specified list all default
- include directories which do not get appended to the chain.
-
-Tue Mar 2 09:24:10 1999 Nick Clifton <nickc@cygnus.com>
-
- * configure.in (gxx_include_dir): Rename to
- gcc_gxx_include_dir in order to prevent it being overridden by
- a top level Makefile.
- (gcc_tooldir): If $exec_prefix != $prefix then use the
- difference between the two as the basis for gcc_tooldir.
-
- * configure: Rebuild.
-
- * Makefile.in: Rename gxx_include_dir to gcc_gxx_include_dir.
-
-Tue Mar 2 16:45:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * unroll.c (copy_loop_body): Don't make extra copies of
- NOTE_INSN_LOOP_CONT notes.
-
-Tue Mar 2 07:44:56 1999 Mark Mitchell <mark@markmitchell.com>
-
- * tree.c (save_tree_status): Don't treat functions with no context
- as nested.
-
-Tue Mar 2 09:37:05 1999 Robert Lipe <robertlipe@usa.net>
-
- * Makefile.in (MAKEINFO): Use makeinfo built from sibling
- tree when available.
-
-Tue Mar 2 10:12:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.c (alpha_cpu_name, alpha_cpu_string, alpha_tp_string,
- alpha_fprm_string, alpha_fptm_string, alpha_mlat_string,
- current_function_file): Add the `const' keyword.
- (normal_memory_operand): Mark parameter `mode' with
- ATTRIBUTE_UNUSED.
- (alpha_expand_unaligned_load): Add a default case to a switch.
-
- * alpha.h (alpha_cpu_string, alpha_fprm_string, alpha_fptm_string,
- alpha_tp_string, alpha_mlat_string): Add the `const' keyword.
- (normal_memory_operand): Add prototype.
-
- * alpha.md: Cast an expression to `unsigned HOST_WIDE_INT' when
- comparing against one.
-
-Tue Mar 2 10:00:21 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.c (abort_with_insn): Make function static, add a prototype,
- constify 2nd parameter and mark with ATTRIBUTE_NORETURN.
- (current_function_file, mips_cpu_string, mips_isa_string,
- mips_abi_string, mips_no_mips16_string, mips_entry_string,
- mips_move_1word, mips_move_2words, output_block_move, load_store,
- override_options, make_temp_file, mips16_fp_args): Qualify a char*
- with the `const' keyword.
-
- * mips.h (current_function_file, mips_cpu_string, mips_isa_string,
- mips_abi_string, mips_entry_string, mips_no_mips16_string,
- mips_move_1word, mips_move_2words, output_block_move): Likewise.
- (abort_with_insn): Remove extern prototype.
-
- * mips.md: Qualify a char* with the `const' keyword.
- Remove many unused variables named `label'.
-
-Tue Mar 2 01:27:52 1999 H.J. Lu (hjl@gnu.org)
-
- * Makefile.in (cpp_install_dir, INSTALL_CPP, UNINSTALL_CPP): New
- variables.
- (install-cpp, uninstall-cpp): New targets.
- (install-normal): Depend on $(INSTALL_CPP).
- (uninstall): Depend on $(UNINSTALL_CPP).
- * configure.in (cpp_install_dir): New, substitute.
- (tmake_file): Added t-install-cpp for --enable-cpp.
- * configure: Rebuilt.
- * cpp.sh: New cpp script.
- * config/t-install-cpp: New target fragment.
-
-Tue Mar 2 01:40:01 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
- Jeffrey A Law (law@cygnus.com)
-
- * cse.c (fold_rtx): Update comments for (const (minus (label) (label)))
- case.
- (cse_insn): Avoid creating a bogus REG_EQUAL note for
- (const (minus (label) (label)))
- (record_jump_cond): Fix mismatched paren in comment.
-
-Tue Mar 2 01:07:12 1999 Dan Nicolaescu <dann@godzilla.ics.uci.edu>
-
- * final.c (end_final): There are 11 words in the "main header"
- structure, not 10.
-
-Tue Mar 2 00:09:18 1999 Marc Espie <espie@cvs.openbsd.org>
-
- * extend.texi: Reference __extension__ in the index.
-
-Mon Mar 1 19:09:32 1999 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (CROSS_FLOAT_H): Delete.
- (FLOAT_H): Use float_h_file.
- (rest.cross, stmp-int-hdrs): Delete gfloat.h dependency.
- (gfloat.h): Delete.
- (stmp-int-hdrs): Use FLOAT_H instead of gfloat.h.
- (mostlyclean): Delete gloat.h reference.
- (install-cross-rest, install-float-h-cross, stmp-headers): Update
- comments.
- * configure.in (sparcv9-*-solaris2*): Set float_format to none.
- (sparc-*-solaris2*): Set float_format to none for 2.5 and higher.
- (float_h_file): Set from float_format. Substitute into Makefile.in.
- (float_format): No longer substitute into Makefile.in.
- * cross-make (FLOAT_H): Delete.
- * config/mips/t-cross64 (FLOAT_H): Delete.
- * configure: Rebuilt.
-
-Mon Mar 1 16:36:18 1999 Jeffrey A Law (law@cygnus.com)
-
- * mips.md (div_trap_normal, div_trap_mips16): Require the dependent
- insn to be an INSN before looking at its pattern.
-
-Mon Mar 1 15:03:51 1999 Jim Wilson <wilson@cygnus.com>
-
- * config/m68k/lb1sf68.asm (udivsi3): Change jmi to jcs. Fix comments.
- * config/m68k/m68k.h (LEGITIMATE_INDEX_REG_P): Reject SIGN_EXTEND of
- HImode reg when TARGET_5200.
-
-Mon Mar 1 21:44:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- From Toshiyasu Morita:
- * sh.h (CACHE_LOG): SH2 has cache, too.
-
-Mon Mar 1 14:23:36 1999 Catherine Moore <clm@cygnus.com>
-
- * toplev.c (compile_file): Disable -ffunction-sections and
- debugging warning if the object format is elf.
-
-Mon Mar 1 11:46:25 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * config/h8300/h8300.c (print_operand): Use 16 bit addressing
- when the data in 8-bit area and can not be addressed by 8-bit.
-
-Sun Feb 28 16:40:00 1999 Richard Henderson <rth@cygnus.com>
-
- * flow.c (create_basic_block): Disregard integrated bb notes.
-
-Sun Feb 28 15:57:06 1999 Richard Henderson <rth@cygnus.com>
-
- * sparc.md (blockage, nonlocal_goto_receiver): Set length to 0.
-
-Sun Feb 28 14:47:53 1999 Arturo Montes <mitosys@colomsat.com.co>
-
- * config/i386/t-sco5gas (crti.o): New target.
-
-Sun Feb 28 15:10:17 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (elf_high, movsi_got, *movsi_got_internal,
- *movsi_got_internal_mem, GOT splitter, movdf_hardfloat32,
- movdf_softfloat32, movdf_hardfloat64, movdf_softfloat64,
- load_multiple, allocate_stack, call_indirect_aix32,
- call_indirect_aix64, call_value_indirect_aix32,
- call_value_indirect_aix64, call_indirect_nt,
- call_value_indirect_nt): Use gpc_reg_operand instead of
- register_operand.
-
-Sun Feb 28 15:10:17 1999 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.md (one_cmplsi2, andsi3, iorsi3, xorsi3, *eqvsi3,
- *andcsi3, *iorcsi3, *nandsi3, *norsi3): Add alternatives to use CR
- other than cr0.
- * rs6000.c (and{,64}_operand): If the user did -ffixed-cr0, don't
- allow andi. or andis. which always set cr0.
-
-Sun Feb 28 01:15:04 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Feb 28 02:00:38 1999 Jeffrey A Law (law@cygnus.com)
-
- * invoke.texi: Update information for PA scheduling.
-
-Sat Feb 27 23:21:47 1999 Jerry Quinn <jquinn@nortelnetworks.com>
- Mike Stump <mrs@wrs.com>
-
- * pa.c (override_options): Change default to 7100LC.
-
- * pa.h (REG_ALLOC_ORDER): Change order to allocate left half of
- float regs before right half of float regs.
-
-Sat Feb 27 22:48:38 1999 H.J. Lu (hjl@gnu.org)
- Jeffrey A Law (law@cygnus.com)
-
- * frame.h: Update some comments.
- * defaults.h (TARGET_ATTRIBUTE_WEAK): Define.
- * crtstuff.c (__register_frame_info, __deregister_frame_info): Declare
- using TARGET_WEAK_ATTRIBUTE.
- (__do_global_dtors_aux): Check if __deregister_frame_info is
- zero before calling it.
- (__do_global_dtors): Likewise.
- (frame_dummy): Check if __register_frame_info is zero before
- calling it.
- (__frame_dummy): Likewise.
-
-Sat Feb 27 19:18:24 1999 Jeffrey A Law (law@cygnus.com)
-
- * SERVICE: Update from the FSF.
-
-Sat Feb 27 14:31:22 1999 Arturo Montes <mitosys@colomsat.com.co>
-
- * config/i386/t-sco5 (crti.o): New target.
- * config/i386/sco5.h (STARTFILE_SPEC): Include crti.o when
- linking -shared.
- * configure.in (i[34567]86-*-sco3.2v5*): Add crti.o.
-
-Sat Feb 27 01:12:40 1999 Jeffrey A Law (law@cygnus.com)
-
- * md.texi (prologue,epilogue): Document named patterns.
-
-Fri Feb 26 19:31:25 1999 Dave Love <fx@gnu.org>
-
- * md.texi, invoke.texi: Fix unterminated @xrefs.
-
-Fri Feb 26 15:33:45 1999 Richard Henderson <rth@cygnus.com>
-
- * genattrtab.c (simplify_knowing): Fix uninitialized read
- in Feb 21 change.
-
- * genextract.c (main): Clear recog_operands before extracting.
-
-Fri Feb 26 02:24:57 1999 Jeffrey A Law (law@cygnus.com)
-
- * c-pragma.c (add_weak); Delete. Moved into...
- * varasm.c (add_weak): New external function.
- (declare_weak): If HANDLE_PRAGMA_WEAK, then add the function to
- the list of weak functions.
- * c-pragma (add_weak): Declare.
-
-Thu Feb 25 23:43:59 1999 Richard Henderson <rth@cygnus.com>
-
- Flow rewrite to use basic block structures and edge lists:
-
- * basic-block.h (x_basic_block_head, x_basic_block_end): Kill.
- (basic_block_computed_jump_target, basic_block_live_at_start): Kill.
- (struct edge_def): New.
- (struct basic_block_def): New.
- (basic_block_info): New.
- (BLOCK_HEAD, BLOCK_END): Update.
- (ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): New.
- (uid_block_number): Kill.
- (basic_block_for_insn, BLOCK_FOR_INSN): New.
- (BLOCK_NUM): Update.
- * flow.c (XNMALLOC): Kill.
- (max_uid_for_flow): Kill.
- (uid_block_number): Kill.
- (uid_volatile): Turn into a bitmap.
- (SET_INSN_VOLATILE): New.
- (basic_block_info): New.
- (entry_exit_blocks): New.
- (x_basic_block_head, x_basic_block_end): Kill.
- (basic_block_computed_jump_target, basic_block_live_at_start): Kill.
- (flow_int_list_blocks, basic_block_succ, basic_block_pred): Kill.
- (basic_block_loop_depth): Kill.
- (basic_block_for_insn): New.
- (find_basic_blocks): Split out initial block counting into
- count_basic_blocks. Call functions split out of find_basic_blocks_1.
- (count_basic_blocks): New.
- (find_basic_blocks_1): Split out edge recognition, unreachable
- block deletion.
- (create_basic_block): New.
- (compute_bb_for_insn): New.
- (clear_edges): New.
- (free_bb_memory): Kill.
- (add_edge, add_edge_to_label): Kill.
- (mark_label_ref): Kill.
- (make_edges): Rewrite to use edge lists.
- (make_edge, make_label_edge): New.
- (mark_critical_edges): New.
- (split_edge, insert_insn_on_edge): New.
- (commit_one_edge_insertion, commit_edge_insertions): New.
- (delete_unreachable_blocks): Rewrite to use edge lists.
- Split out EH region manipulation into delete_eh_regions.
- Call tidy_fallthru_edge and merge_blocks.
- (delete_eh_regions): New.
- (delete_note_p): New.
- (delete_insn_chain): New.
- (delete_block): Split out code into delete_insn_chain and
- tidy_fallthru_edge. Update edge lists.
- (expunge_block): New.
- (flow_delete_insn): New?
- (can_delete_label_p): New?
- (merge_blocks_nomove, merge_blocks): New.
- (tidy_fallthru_edge): New.
- (calculate_loop_depth): New.
- (life_analysis): Allocate and free uid_volatile.
- (free_basic_block_vars): Update for new structures.
- (record_volatile_insns): Use SET_INSN_VOLATILE.
- (mark_regs_live_at_end): Tidy EXIT_IGNORE_STACK usage.
- (mark_used_regs): Likewise.
- (life_analysis_1): Use bb global_live_at_start, global_live_at_end,
- local_set regsets. Use bb->aux to store new_live_at_end. Begin
- life propagation from EXIT_BLOCK rather than last block. Clear
- regs_ever_live after mark_regs_live_at_end.
- (allocate_for_life_analysis): Update for new structures.
- (propagate_block): Split out loop depth calculation to
- calculate_loop_depth.
- (regno_uninitialized): Use bb->global_live_at_start.
- (regno_clobbered_at_setjmp): Likewise.
- (dump_bb_data): Likewise.
- (find_auto_inc): Use BLOCK_FOR_INSN instead of BLOCK_NUM.
- (dump_flow_info): Update for new structures.
- (dump_edge_info): New.
- (print_rtl_with_bb): Update for new structures.
- (compute_preds_succs): Do no work -- convert edge lists.
- (set_block_for_insn): From corpse of old set_block_num.
- (set_block_num): Call it.
-
- * rtl.c (note_insn_name): Add NOTE_INSN_BASIC_BLOCK.
- * rtl.h (rtunion_def): Add bb entry.
- (NOTE_BASIC_BLOCK): New.
- (NOTE_INSN_BASIC_BLOCK): New.
-
- * varray.h (varray_data_tag): Add bb entry.
- (VARRAY_BB_INIT, VARRAY_BB): New.
-
- * emit-rtl.c (emit_label_before): New.
-
- * except.c (expand_rethrow): Delete insns following the call to
- rethrow. Put the REG_EH_RETHROW on the call.
-
- * jump.c (returnjump_p, returnjump_p_1): New.
-
- * expr.h (nonlocal_goto_handler_labels): New declaration.
- * function.c (nonlocal_goto_handler_labels): Define it.
- (push_function_context_to): Save it.
- (pop_function_context_from): Restore it.
- (init_function_start): Clear it.
- (nonlocal_label_rtx_list): Kill.
- * function.h (struct function): Add storage space for it.
- * stmt.c (expand_nl_handler_label): Return the new label.
- (expand_nl_goto_receivers): Collect a list of them in
- nonlocal_goto_handler_labels.
-
- * Makefile.in (print-rtl.o): Depend on basic-block.h.
- (flow.o): Depend on insn-flags.h.
-
- * function.c (thread_prologue_and_epilogue_insns): Do not
- half-heartedly update bb structures.
-
- * toplev.c: Add flow2 dump as -dw.
- (rest_of_compilation): Finish .greg before flow2.
-
- * graph.c (draw_edge): Handle class 3.
- (print_rtl_graph_with_bb): Make abnormal edges red class 2,
- change non-fall-thru but adjacent to green class 3. Update
- to use new structures.
-
- * print-rtl.c (print_rtx): Handle NOTE_INSN_BASIC_BLOCK.
-
- * reg-stack.c (BLOCK_NUM): Convert to function. Abort if
- block_number is -1.
- (reg_to_stack): Initialize block_num to -1.
-
- * combine.c (set_nonzero_bits_and_sign_copies): Update reference
- to basic_block_live_at_start to bb->global_live_at_start.
- (try_combine): Likewise.
- (reg_dead_at_p): Likewise.
- * global.c (global_conflicts): Likewise.
- Handle stack regs on all abnormal edges, not just computed jumps.
- (mark_elimination): Update reference to basic_block_live_at_start.
- (build_insn_chain): Likewise.
- * haifa-sched.c (haifa_edge): Rename from edge for conflict.
- (is_cfg_nonregular): Look at nonlocal_goto_handler_labels instead
- of nonlocal_label_rtx_list.
- (check_live_1): Update reference to basic_block_live_at_start.
- (update_live_1): Likewise.
- (find_pre_sched_live): Likewise.
- (find_post_sched_live): Likewise.
- * local-alloc.c (update_equiv_regs): Likewise.
- (block_alloc): Likewise.
- * reload1.c (reload, reload_combine): Likewise.
- * regmove.c (mark_flags_life_zones): Likewise.
- * resource.c (mark_target_live_regs): Likewise.
- * sched.c (schedule_block): Likewise.
-
- * regclass.c (regset_release_memory): Don't free
- basic_block_live_at_start.
-
- * unroll.c (copy_loop_body): Don't duplicate NOTE_INSN_BASIC_BLOCK.
-
-Thu Feb 25 21:32:34 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * fixinc.wrap: Also handle struct queue in sys/stream.h.
- * fixinc.svr4: Likewise.
-
- * dwarf2out.c (scope_die_for): Set scope_die to comp_unit_die
- rather than asserting it.
-
-Thu Feb 25 23:33:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cppexp.c (left_shift, right_shift, parse_charconst, COMPARE,
- cpp_parse_expr): Replace uses of long/HOST_BITS_PER_LONG with
- HOST_WIDEST_INT/HOST_BITS_PER_WIDEST_INT.
-
- * Makefile.in (cppmain.o, cpplib.o, cpphash.o, cppalloc.o,
- cpperror.o, cppexp.o, cppfiles.o, cppinit.o, fix-header.o,
- scan-decls.o): Don't depend on machmode.h.
-
- * cppexp.c: Don't define CHAR_BIT or HOST_BITS_PER_WIDE_INT anymore.
- Replace all instances of HOST_WIDE_INT with HOST_WIDEST_INT.
-
- * cppfiles.c: Likewise.
-
- * cpplib.c: Likewise.
-
- * cpplib.h: Likewise. Also don't include machmode.h anymore.
-
-Thu Feb 25 18:46:26 1999 Richard Henderson <rth@cygnus.com>
-
- * gcc.c (default_compilers): Define __FAST_MATH__ when appropriate.
- * objc/lang-specs.h: Likewise.
-
-Thu Feb 25 16:19:43 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (call patterns): Lose unused argument to output_call.
-
- * print-rtl.c (print_rtl): Print /j and /c for the jump/call flags.
-
-1999-02-25 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpphash.c (install): Rename to cpp_install, add cpp_reader*
- first argument. All callers changed.
- (hashtab): Removed.
- (cpp_lookup, cpp_install): Change all refs to hashtab to
- pfile->hashtab.
- (cpp_hash_cleanup): Removed.
- * cpphash.h: Adjust prototypes.
- * cpplib.h (struct cpp_reader): Add hashtab pointer.
- * cppinit.c (cpp_reader_init): Also allocate space for the
- hashtab.
- (cpp_cleanup): Delete all macros and free the hashtab.
-
-Thu Feb 25 21:52:54 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.h (PASS_IN_REG_P): For TARGET_HITACHI, don't pass structures
- in registers.
-
- * expr.h (PRETEND_OUTGOING_VARARGS_NAMED): Provide default definition.
- * function.c (assign_parms): Honor PRETEND_OUTGOING_VARARGS_NAMED.
- * calls.c (expand_call): Likewise.
-
- * sh.c (sh_expand_prologue): For TARGET_HITACHI, don't push varargs /
- stdarg arguments.
- * sh.h (CPP_SPEC): Add -D__HITACHI__ for -mhitachi.
- (FUNCTION_ARG): For TARGET_HITACHI, don't pass unnamed
- arguments in registers.
- (PRETEND_OUTGOING_VARARGS_NAMED): Define.
- * va-sh.h (entire file): If __HITACHI__ is defined, use sh[123]
- flavor varargs.
-
-Thu Feb 25 14:32:40 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cse.c (dump_class): Revert last change and make the prototype
- extern.
-
-Thu Feb 25 19:13:42 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * rtl.h (insn_first_p): Don't declare.
- * rtlanal.c (insn_first_p): Delete.
- * loop.c (loop_insn_first_p): Faster implementation.
-
-Thu Feb 25 10:44:35 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.h (TARGET_SWITCHES): Delete deprecated switches -m[236].
- (TARGET_3, TARGET_6): Delete.
- (ARM_FLAG_ARM[36]): Delete.
- (CPP_CPU_ARCH_SPEC): No need to handle -m[236] any more.
- (CC1_SPEC): Don't expand -m[236] into new equivalents.
- (CPP_APCS_PC_SPEC): No need to handle -m[236] any more.
- * arm.c (arm_override_options): Delete warnings about deprecated
- options -m[236].
-
- * arm.c (arm_finalize_pic): Build the label into the special pic
- adjustment insn instead of issuing it separately.
- * arm.md (pic_add_dot_plus_eight): Rework to contain the label
- that is needed.
-
- * arm.md (*zeroextractqi_compare0_scratch): Delete.
- (*ne_zeroextractsi): New pattern.
-
-Thu Feb 25 18:40:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * stmt.c (expand_end_loop): Grok code emitted by
- expand_exit_loop_if_false.
-
-Thu Feb 25 10:17:32 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.c (return_in_memory): Float fields in unions
- force a return in memory.
- (load_multiple_sequence): Add comment explaining why two LDR
- instructions can be better than an LDMIA instruction.
-
- * config/arm/arm.h (TARGET_SHORT_BY_BYTES): Add comment
- describing the real meaning of this option.
- (FIXED_REGISTERS): Default r10 to not-fixed.
- (CALL_USED_REGISTERS): Default r10 to not-call-used.
- (SUBTARGET_CONDITIONAL_REGISTER_USAGE): If not defined, define
- as empty.
- (CONDITIONAL_REGISTER_USAGE): Fix r10 if TARGET_APCS_STACK is
- true. Invoke SUBTARGET_CONDITIONAL_REGISTER_USAGE after
- performing other checks.
-
- * config/arm/arm.md (zero_extendhisi2): Undo previous change.
- (extendhisi2): Undo previous change.
- Also add comments describing why TARGET_SHORT_BY_BYTES can be
- ignored for armv4(t) architectures.
-
- * config/arm/riscix.h (SUBTARGET_CONDITIONAL_REGISTER_USAGE):
- Define to fix r10.
-
- * config/arm/riscix1-1.h
- (SUBTARGET_CONDITIONAL_REGISTER_USAGE): Define to fix r10.
-
-Thu Feb 25 12:09:04 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cse.c (dump_class): Make the function definition static to match
- the prototype.
-
-Wed Feb 24 17:47:28 1999 Jim Wilson <wilson@cygnus.com>
-
- * dbxout.c (gstab.h): Use if CROSS_COMPILE.
-
- * dwarf2out.c (add_location_or_const_value_attribute): Add big
- endian correction for parms passed in regs but living on the stack.
-
-Wed Feb 24 14:03:54 1999 Jeffrey A Law (law@cygnus.com)
-
- * calls.c (initialize_argument_information): New function extracted
- from expand_call.
- (expand_call): Use initialize_argument_information. Remove variables
- which are no longer used due to cleanups.
-
- * calls.c (compute_argument_block_size): New function, extracted from
- expand_calls.
- (expand_calls): Use compute_argument_block_size. Delete
- original_args_size, use unadjusted_args_size instead.
-
- * calls.c (precompute_arguments): New function, extracted from
- expand_call.
- (expand_call): Use precompute_arguments.
-
- * calls.c (finalize_must_preallocate): New function, extracted from
- expand_call.
- (expand_call): Use finalize_must_preallocate.
-
- * calls.c (store_one_arg): Mark "variable_size" as possibly unused.
-
- * regclass.c (record_reg_classes, case 'p'): Set classes appropriately.
- An alternative always fails if it needs a pseudo and no suitable
- register class can be found.
-
-Wed Feb 24 19:47:56 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.h (loop_insn_first_p): Declare.
- * loop.c (loop_insn_first_p): No longer static.
- * unroll.c (iteration_info): Fix comparison to
- reg_iv_type->num_elements.
- Before accessing reg_biv_class, check index against
- max_reg_before_loop.
- Fix and enable code for giv iterators.
- (loop_iterations): Compare with reg_iv_type->num_elements instead
- of with max_reg_before_loop.
-
-Wed Feb 24 19:17:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * unroll.c (unroll_loop): Avoid out-of-bounds index for local_regno.
-
-Wed Feb 24 11:26:41 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Don't use
- PIC_OFFSET_TABLE_REGNUM for register allocation when -fPIC.
-
-Tue Feb 23 16:24:19 1999 Marc Lehmann <pcg@goof.com>
-
- * config/i386/i386.md: Fix typo.
-
-Mon Feb 22 19:36:33 1999 Andrew Cagney <cagney@b1.cygnus.com>
-
- * config/mips/mips.c (mips_debugger_offset): When TARGET_MIPS16 &&
- frame_pointer_needed adjust frame size.
- (function_prologue): Don't MIPS16 .mask GPOFFSET. Already adjusted
- in .frame pseudo-op.
- Frm Jim Wilson <wilson@cygnus.com>:
- * mips.c (function_prologue): Adjust frame size in .frame pseudo-op
- when TARGET_MIPS16 && frame_pointer_needed.
-
-1999-02-22 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.h: Add TARGET_CPU_strongarm1100.
- Add -mno-sched command line switch to disable scheduling of
- instructions into the function's prologue.
- (enum processor_type): Remove.
- (TARGET_OPTIONS): Add "fpe=" option to match documentation.
- (struct arm_cpu_select): Replace 'set_tune_p' and 'set_arch_p'
- fields with 'processors' field.
- (CONDITIONAL_REGISTER_USAGE): Allow r10 to be used if stack
- checking is not enabled.
- (RETURN_IN_MEMORY): Always call arm_return_in_memory.
-
- * config/arm/arm.c (arm_cpu): Remove.
- (tune_flags): Remove.
- (arm_is_strong): New variable: true iff the target processor is a
- StrongARM.
- (arm_is_6_or_7): New variable: true iff the target processor is an
- ARM6 or and ARM7.
- (arm_select): Fields reorganized.
- (struct processors): processor_type field removed.
- (all_procs): Remove.
- (all_cores): New array: Definitions of all known ARM cpu cores.
- (all_architectures): New array: Definitions of all known ARM
- architectures.
- (streq): New macro.
- (FL_SCHED): New processor flag: processor required load
- scheduling.
- (FL_STRONG): New processor flag: processor is a StrongARM.
- (arm_override_options): Reorganized to make code clearer.
- (use_return_insn): Test for "not (TARGET_APCS and
- frame_pointer_needed)".
- (arm_return_in_memory): Improve handling of structures.
-
- * config/arm/arm.md: Remove "cpu" attribute. Replace with
- "is_strongarm" and "is_arm_6_or_7" attributes.
- (zero_extendhisi2): Check for TARGET_SHORT_BY_BYTES before
- arm_arch4.
- (extendhisi2): Check for TARGET_SHORT_BY_BYTES before arm_arch4.
-
- * invoke.texi (ARM Options): Document -mtune= and -mfp= options.
-
-1999-02-22 Philip Blundell <philb@gnu.org>
-
- * config/arm/linux-gas.h (INITIALIZE_TRAMPOLINE): Replace default
- definition with one including cache synchronization.
- (CLEAR_INSN_CACHE): Correct syscall number and enable definition.
- Move definition of inhibit_libc to...
- * config/arm/xm-linux.h: ... here.
-
- * config/arm/t-linux: Disable multilib configurations since the
- only effect for most people is to cause builds to fail.
-
- * config/arm/elf.h (ASM_FILE_START): Add .file directive.
- (ASM_SPEC): Translate -mapcs-float to -mfloat for the assembler.
-
- * config/arm/linux-elf.h (DEFAULT_VTABLE_THUNKS): Define.
- (HANDLE_SYSV_PRAGMA): Likewise.
- (LIB_SPEC): Copy definition from generic Linux files.
- (LIBGCC_SPEC): Include -lfloat if -msoft-float was given.
- (FP_DEFAULT): Set to SOFT3 on 32-bit targets.
- (DWARF2_DEBUGGING_INFO): Define.
- (PREFERRED_DEBUGGING_TYPE): Define as DBX_DEBUG.
-
-Mon Feb 22 16:54:18 1999 Andrew MacLeod <amacleod@cygnus.com>
-
- * loop.c (libcall_other_regs): Make extern.
- * rtl.h (find_last_value): Add parameter to prototype.
- (libcall_other_reg): Add extern declaration.
- * rtlanal.c (find_last_value): Add another parameter to allow
- a definition using a hardware register to be found as well.
-
-Mon Feb 22 13:33:47 1999 Mark Mitchell <mark@markmitchell.com>
-
- * cse.c (dump_class): New function.
- (invalidate_memory): Fix typo in comment.
- * function.c (temp_slot): Add an alias set field.
- (assign_stack_temp): Only reuse slots if they will have the
- same alias set as before.
- (combine_temp_slots): Don't combine if -fstrict-aliasing;
- that's unsafe.
- * rtl.c (copy_rtx): Copy all the flags (in particular,
- MEM_SCALAR_P).
-
-Mon Feb 22 14:13:23 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * configure.in (i[34567]86-*-linux-gnu*,
- i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*,
- i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as
- fixincludes.
-
- * configure: Rebuilt.
-
- * fixinc.x86-linux-gnu: New script for fixing asm-statements bug
- on x86 linux.
-
- * fixinc/fixinc.x86-linux-gnu: Copy of the previous one.
-
- * fixinc/mkfixinc.sh (i[34567]86-*-linux-gnu*,
- i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*,
- i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as
- fixincludes.
-
-Mon Feb 22 08:55:05 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * objc/objc-act.c (encode_type): Temporary revert to the old
- behavior of encoding types as the new one seems to break the
- encoding of bitfields.
-
-Mon Feb 22 11:40:44 1999 Craig Burley <craig@jcb-sc.com>
-Sat Feb 20 09:59:36 1999 Craig Burley <craig@jcb-sc.com>
-
- * Makefile.in (all.internal, all.cross): Depend on `doc'
- target, to ensure docs get made before installation.
-
- Decrease spurious warnings from -fsyntax-only:
- * stmt.c (expand_expr_stmt): Expand expr even when -fsyntax-only.
-
-Mon Feb 22 10:55:00 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * c-lex.c (yylex): Replace warning about integer constants being
- larger than long-longs, with a warning about integer constants
- being larger than the largest target integer.
-
-Mon Feb 22 08:35:38 1999 Craig Burley <craig@jcb-sc.com>
-
- Fix -fsyntax-only ICEs:
- * varasm.c (assemble_zeros, assemble_variable,
- output_constant_def): Do nothing when -fsyntax-only.
-
-Fri Feb 19 18:18:56 1999 Don Bowman <don@pixstream.com>
-
- * configure.in (mips*-*-vxworks*): Enable gthreads vxworks support.
- * configure: Rebuilt.
-
-Sun Feb 21 20:34:44 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Feb 21 20:35:10 1999 Jeffrey A Law (law@cygnus.com)
-
- * config/aoutos.h (ASM_OUTPUT_CONSTRUCTOR): Delete.
- (ASM_OUTPUT_DESTRUCTOR, ASM_OUTPUT_GC_ENTRY): Likewise.
- * tm.texi: Update docs for constructors and destructors.
-
-Sun Feb 21 17:11:18 1999 Richard Henderson <rth@cygnus.com>
-
- * genattrtab.c (check_attr_value): Allow negative const_int if
- negative_ok. Accept integral arithmetic operators. Accept
- direct references to other attributes. Accept symbol_ref in
- non-constant attributes.
- (max_attr_value): Add new argument `unknownp'. Update all callers.
- (or_attr_value): Likewise.
- (simplify_knowing): Don't optimize if max_attr_value unknown.
- (write_length_unit_log): Likewise with or_attr_value.
- (find_and_mark_used_attributes): Don't fallthru case.
- (write_attr_set): Pass thru all non-cond expressions.
- (write_attr_value): Handle symbol_ref, attr, and arithmetic.
-
-Sun Feb 21 13:16:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * regmove.c (discover_flags_reg): Use word_mode instead of SImode.
-
-Sun Feb 21 13:15:40 1999 Richard Henderson <rth@cygnus.com>
-
- * regmove.c (discover_flags_reg): Remove cc0 code.
- (mark_flags_life_zones) [HAVE_cc0]: Force use of cc0; bail if
- a potential flags register was identified.
-
-Sat Feb 20 16:16:07 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000.md (scc plus ltu): Fix typo in last change.
-
-Sat Feb 20 09:08:44 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * xm-arm.h (HOST_BITS_PER_LONGLONG): Define.
-
-Fri Feb 19 23:02:02 1999 Richard Henderson <rth@cygnus.com>
-
- * regmove.c (discover_flags_reg): New function.
- (flags_set_1, mark_flags_life_zones): New functions.
- (regmove_optimize): Call them.
- (fixup_match_1): Use insn modes rather than sets_cc0_p.
-
-Fri Feb 19 22:47:01 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * rtlanal.c (insn_first_p): Fix return value for insn == reference.
-
- * loop.c (strength_reduce, check_final_value, check_dbra_loop):
- Use loop_insn_first_p.
-
-Fri Feb 19 15:49:26 1999 Michael Meissner <meissner@cygnus.com>
- David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (scc plus eq): Fix output template.
- (scc plus ltu): Fix output template and collapse variants
- correcting early clobbers.
- (scc plus geu): Fix output template.
- (scc plus gt): Fix output template.
- (scc plus gtu): Fix output template and collapse variants.
-
-Fri Feb 19 15:43:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cppinit.c (print_help): Remove unescaped newline in string.
-
-Fri Feb 19 19:55:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Check for intervening jumps when
- converting biv increment to giv.
-
-Thu Feb 18 16:36:58 1999 Per Bothner <bothner@cygnus.com>
-
- * tree.def (TRY_FINALLY_EXPR, GOTO_SUBROUTINE_EXPR): New tree nodes,
- * expr.c (expand_expr): Support new tree nodes.
-
-Fri Feb 19 10:17:56 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * config/m68k/m68k.c (m68k_align_loops_string,
- m68k_align_jumps_string, m68k_align_funcs_string): Add const.
- * config/m68k/m68k.h (m68k_align_loops_string,
- m68k_align_jumps_string, m68k_align_funcs_string): Likewise.
-
-Thu Feb 18 23:28:35 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * bitmap.c (bitmap_print): Qualify a char* with the `const' keyword.
-
- * bitmap.h (bitmap_print): Likewise.
-
- * c-decl.c (builtin_function, grokdeclarator, grokfield): Likewise.
-
- * c-lang.c (build_objc_string): Likewise.
-
- * c-lex.c (yyerror, extend_token_buffer): Likewise. Don't include
- limits.h or ctype.h. Remove unused variable `p'.
-
- * c-lex.h (yyerror): Qualify a char* with the `const' keyword.
-
- * c-pragma.c (handle_pragma_token): Likewise.
-
- * c-pragma.h (handle_pragma_token): Likewise.
-
- * c-tree.h (build_objc_string, builtin_function, grokfield,
- build_indirect_ref, lvalue_or_else, readonly_warning, error_init,
- pedwarn_init): Likewise.
-
- * c-typeck.c (convert_for_assignment, warn_for_assignment,
- push_string, warning_init, incomplete_type_error,
- build_indirect_ref, lvalue_or_else, readonly_warning,
- build_c_cast, spelling, push_member_name, print_spelling,
- error_init, pedwarn_init, start_init): Likewise.
-
- * objc/objc-act.c (build_objc_string): Likewise.
-
- * print-tree.c (print_node_brief, print_node): Likewise.
-
- * tree.h (lvalue_or_else, print_node, print_node_brief): Likewise.
-
-Thu Feb 18 20:44:21 1999 David Edelsohn <edelsohn@gnu.org>
-
- * regclass.c (record_reg_classes): Correctly handle 'p' constraint.
-
-Thu Feb 18 19:59:37 1999 Marc Espie <espie@cvs.openbsd.org>
-
- * configure.in :Handle OpenBSD platforms.
- * configure: Rebuilt.
- * config/openbsd.h: New file.
- * config/xm-openbsd.h: New file.
- * config/t-openbsd: New file.
- * config/t-openbsd-thread: New file.
-
-Thu Feb 18 18:47:09 1999 Jeffrey A Law (law@cygnus.com)
-
- * function.c (assign_stack_temp_for_type): Round SIZE before calling
- assign_stack_local for BLKmode slots.
-
-Fri Feb 19 01:45:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): For derived givs, replace the
- giv this was derived from with its new_reg.
- (recombine_givs): Don't set new_reg for derived giv.
- And don't print it, print SUM instead.
-
-Thu Feb 18 15:52:49 1999 Jim Wilson <wilson@cygnus.com>
-
- * m68kelf.h (ASM_RETURN_CASE_JUMP): Add 5200 support.
-
-1999-02-18 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpplib.c: Kill define of STDC_VALUE. Don't include output.h
- or prefix.h. Change CPP_IS_MACRO_BUFFER to not refer to
- macro_cleanup.
- (GET_ENV_PATH_LIST, PATH_SEPARATOR, STANDARD_INCLUDE_DIR,
- predefs, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- CPP_WCHAR_TYPE, USER_LABEL_PREFIX, REGISTER_PREFIX, struct
- cpp_pending, version_string, struct default_include,
- include_defaults_array, path_include, cpp_options_init,
- dump_special_to_buffer, initialize_builtins, cpp_start_read,
- cpp_reader_init, nreverse_pending, push_pending, print_help,
- cpp_handle_option, cpp_handle_options, cpp_finish,
- cpp_cleanup): Move to cppinit.c.
- (macro_cleanup, struct arglist, collect_expansion,
- create_definition, compare_defs, comp_def_part, ARG_BASE,
- struct argdata, macarg, change_newlines, timestamp,
- monthnames, special_symbol, unsafe_chars, macroexpand,
- push_macro_expansion): Move to cpphash.c.
- (quote_string, check_macro_name, cpp_expand_to_buffer,
- output_line_command, cpp_undef): Export.
- (null_underflow, null_cleanup, handle_directive): Make static.
-
- * cpplib.h: Prototype now-exported functions. Adjust decls of
- syntax tables so we can include cpplib.h in cppinit.c.
- * cpphash.h: Prototype all functions exported by cpphash.c.
- * cppinit.c: Make syntax tables initialized data if possible
- (uses GCC designated-initializer extension).
- * cppexp.c: Make cpp_lex static.
- * Makefile.in: Move -D switches for the various include dirs
- from cpplib.o rule to cppinit.o rule. Adjust dependencies.
-
-Thu Feb 18 13:15:56 1999 Marc Espie <espie@cvs.openbsd.org>
-
- * alpha/openbsd.h: New file.
- * alpha/xm-openbsd.h: New file.
- * sparc/openbsd.h: New file.
- * sparc/xm-openbsd.h: New file.
- * m68k/openbsd.h: New file.
- * m68k/xm-openbsd.h: New file.
- * i386/openbsd.h: New file, originally from netbsd.
- * i386/xm-openbsd.h: New file.
-
-1999-02-17 Zack Weinberg <zack@rabi.columbia.edu>
-
- * Makefile.in: Correct dependencies for cpplib object files.
-
-Wed Feb 17 14:04:18 1999 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.md ({add,sub}si3 `.'): Add alternatives to use CR other
- than cr0.
-
-Wed Feb 17 16:59:28 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Don't move giv insn for biv turned giv
- below scan_start.
-
-Wed Feb 17 10:56:24 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * tree.c (tree_node_kind_names, print_obstack_name,
- get_identifier, maybe_get_identifier, build_string,
- build_expr_wfl, is_attribute_p, lookup_attribute,
- print_obstack_statistics, get_file_function_name_long, tree_check,
- tree_class_check, expr_check): Qualify a char* with the `const'
- keyword.
-
- * tree.h (get_identifier, maybe_get_identifier, build_string,
- build_expr_wfl, is_attribute_p, lookup_attribute,
- print_obstack_statistics, print_obstack_name, tree_check,
- tree_class_check, expr_check): Likewise.
-
-Tue Feb 16 21:29:38 1999 Jeffrey A Law (law@cygnus.com)
-
- * i386/freebsd-elf.h, i386/gas.h, i386/linux.h: Fix minor spacing
- errors.
-
- * calls.c (store_one_arg): Mark any slots used for the argument
- as in-use immediately after we're done saving any slots which
- will be overwritten by this argument.
-
-Tue Feb 16 21:02:07 1999 Anton Hartl <toni@devsoft.com>
-
- * rs6000.md (call_value): Fix typo.
-
-Wed Feb 17 01:29:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Calculate maybe_dead before
- calling recombine_givs.
-
-Wed Feb 17 00:43:12 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Dump biv increment -> giv conversions.
-
-Tue Feb 16 15:31:39 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * objc/objc-act.c (encode_type): Encode the type instead of
- encoding the mode of the type (patch from Richard Frith-Macdonald
- <richard@brainstorm.co.uk>).
-
-Tue Feb 16 10:53:51 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * config/arm/arm.md (*zeroextractqi_compare0_scratch): Re-add load
- instruction killed in previous change. Simplify mask generation.
- (*zeroextractsi_compare0_scratch): Simplify mask generation.
-
-Tue Feb 16 09:52:26 1999 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.md (zeroextractqi_compare0_scratch): Ensure that
- bitfield does not overflow a byte boundary.
-
-Tue Feb 16 01:37:33 1999 Charles G Waldman <cgw@alum.mit.edu>
-
- * c-common.c (shorten_compare): Get the min/max value from the
- underlying type of an enumeration, not the enumerated type itself.
-
-Mon Feb 15 23:04:48 1999 Jeffrey A Law (law@cygnus.com)
-
- * jump.c: Include insn-attr.h.
- (delete_computation): If reload has completed and insn scheduling
- after reload is enabled, then do not depend on REG_DEAD notes.
- * Makefile.in (jump.o): Depend on insn-attr.h.
-
-Mon Feb 15 16:57:38 1999 Richard Henderson <rth@cygnus.com>
-
- * i386.md (addsi3): Allow lea for any constant_p.
-
-1999-02-15 Zack Weinberg <zack@rabi.columbia.edu>
-
- * toplev.c (documented_lang_options): Remove -fident and
- -fnoident, which are now handled by the language independent
- option parser.
-
-1999-02-15 Zack Weinberg <zack@rabi.columbia.edu>
-
- * c-common.c (UNGETC [USE_CPPLIB=1]): Do nothing if c is EOF.
- * c-lex.c: Likewise.
- * cpplib.c (cpp_push_buffer, cpp_pop_buffer): Use a linked
- list in malloced memory for the buffer stack.
- (cpp_get_token): Don't pop the last buffer off the stack.
- Calls after CPP_EOF has been returned produce CPP_EOF with no
- state change.
- (cpp_finish): Pop last buffer here.
- (do_line): Don't free ip->last_nominal_fname if it is equal to
- ip->fname.
- (special_symbol): If a T_CONST is the empty string, push a
- single `@ ' escape instead.
- (macroexpand): Special symbol buffers have escapes too.
- * cpplib.h (struct cpp_buffer): Remove unused fields, add prev
- buffer pointer.
- (struct cpp_reader): Remove buffer_stack. Add
- buffer_stack_depth.
- (CPP_PREV_BUFFER, CPP_NULL_BUFFER): Buffer stack is now a
- linked list.
-
-Mon Feb 15 14:44:53 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cccp.c: Don't define HOST_WIDE_INT. Replace all occurrences of
- WIDE_INT with WIDEST_INT.
-
- * cexp.y: Likewise.
- Don't define unsigned_HOST_WIDE_INT, CHAR_BIT or
- HOST_BITS_PER_WIDE_INT. Replace occurrences of PRINTF_PROTO_1()
- style with PVPROTO() ATTRIBUTE_PRINTF_1 style macros. Replace
- occurrences of "unsigned_HOST" with "unsigned HOST". Provide a
- definition of variable `c89' when compiling a test binary and set it.
-
- * system.h: Don't define the PRINTF_PROTO_* macros.
-
-Mon Feb 15 11:33:51 1999 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (mark_loop_jump): Handle LO_SUM. If we encounter something
- we do not understand, mark the loop and containing loops as invalid.
-
-Mon Feb 15 00:40:45 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * alias.c (init_alias_analysis): Avoid self-referential value
- when setting reg_known_value from REG_EQUAL notes.
-
-Sun Feb 14 23:12:10 1999 Richard Henderson <rth@cygnus.com>
-
- * i386.c (legitimate_address_p): Verify modes of base and index.
-
-Sun Feb 14 23:01:28 1999 Richard Henderson <rth@cygnus.com>
-
- * i386.c (legitimate_pic_address_disp_p): Remove static.
- * i386.h (LEGITIMATE_PIC_OPERAND_P): Use it instead of
- open-coding cases.
-
-Sun Feb 14 21:03:28 1999 Jeffrey A Law (law@cygnus.com)
-
- * except.c (start_catch_handler): Use emit_cmp_and_jump_insns.
- * explow.c (probe_stack_range): Likewise.
- * expmed.c (do_cmp_and_jump): Likewise.
- * expr.c (store_expr, expand_expr, expand_builtin): Likewise.
- (do_tablejump): Likewise.
- * stmt.c (expand_expr_stmt, expand_end_case): Likewise.
- (do_jump_if_equal, emit_case_nodes): Likewise.
- * optabs.c (emit_cmp_and_jump_insns): Clarify comments. If UNSIGNEDP,
- then convert comparison to an unsigned code before emitting the jump.
- (expand_float, expand_fix): Use emit_cmp_and_jump_insns.
-
-Sun Feb 14 02:24:15 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Feb 14 01:15:04 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Feb 14 00:45:50 1999 Jeffrey A Law (law@cygnus.com)
-
- * loop.c: Disable recent loop changes. Temporary as Joern
- continues to fix problems.
-
-Sat Feb 13 23:29:42 1999 Richard Henderson <rth@cygnus.com>
-
- * loop.c (combine_givs_used_by_other): Delete.
- (combine_givs_benefit_from): Delete.
- (combine_givs): Deny combination of givs only used once. Simplify
- code with the death of combine_givs_benefit_from.
-
-Sun Feb 14 11:24:05 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * loop.c (scan_loop): Call reg_in_basic_block_p before
- loop_reg_used_before_p.
-
-Sat Feb 13 05:32:00 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.md: Use gen_rtx_FOO instead of gen_rtx (FOO, ...).
- * arm.h: Likewise.
- * arm.c: Likewise.
-
- * arm.h (TARGET_OPTIONS): Reformat for clarity.
- (GO_IF_LEGITIMATE_ADDRESS): When generating PIC, references to symbols
- in the constant pool aren't valid.
- (LEGITIMATE_PIC_OPERAND_P): Likewise.
-
- * arm.c: Include "system.h", not stdio.h and string.h.
-
-Fri Feb 12 13:06:28 1999 Jim Wilson <wilson@cygnus.com>
-
- * stmt.c (expand_return): Return if optimize_tail_recursion succeeded.
- (optimize_tail_recursion): Change return type from void to int.
- Add return statements.
- * tree.h (optimize_tail_recursion): Change prototype to match.
-
-Fri Feb 12 21:09:51 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_reloads_subreg_address): New function, broken out of
- find_reloads_toplev.
- (find_reloads_toplev, find_reloads_address_1): Use it.
-
-Fri Feb 12 13:20:52 1999 Jeffrey A Law (law@cygnus.com)
-
- * h8300.md (zero_extendhisi2 H8/300 variant): Correctly handle
- extending a CONST_INT.
-
- * h8300.md (peephole for combining memrefs): Delete incorrect peephole.
-
-Fri Feb 12 18:29:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (loop_insn_first_p, biv_elimination_giv_has_0_offset):
- New functions.
- (maybe_eliminate_biv_1): Use biv_elimination_giv_has_0_offset.
-
-Fri Feb 12 16:56:10 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (load_mems): Don't guess how to do a load / store, use
- emit_move_insn.
-
-Fri Feb 12 09:24:26 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h: Provide a definition for HOST_WIDEST_INT, etc.
-
-Fri Feb 12 23:37:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_address_cost): Revert 9 Feb change.
-
-Fri Feb 12 00:51:26 1999 Jeffrey A Law (law@cygnus.com)
-
- * reload.c (find_reloads_address_1): Fix handling of an autoincremented
- pseudo which is homed in the stack.
-
- * mips.c (save_restore_insns): Fix loop to save/restore FP registers.
- (compute_frame_size): Change loop over FP regs to be consistent
- with the loop in save_restore_insns.
-
-Thu Feb 11 17:38:40 1999 Jim Wilson <wilson@cygnus.com>
-
- * i960/i960.h (OVERRIDE_OPTIONS): Warn if -mlong-double-64 is used.
- (LONG_DOUBLE_TYPE_SIZE): Undef then unconditionally define to 96.
-
-Thu Feb 11 15:11:35 1999 Jeffrey A Law (law@cygnus.com)
-
- * mn10200.md (bset); Re-enable.
-
-Thu Feb 11 15:20:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (is_sfunc): New attribute.
- * sh.h (INSN_SETS_ARE_DELAYED, INSN_REFERENCES_ARE_DELAYED): Use it.
-
-Thu Feb 11 01:06:49 1999 Nathan Sidwell <nathan@acm.org>
-
- * fold-const.c (range_binop): Take account of the bounded nature
- of fixed length arithmetic when comparing unbounded ranges.
-
-Thu Feb 11 00:08:17 1999 John Wehle (john@feith.com)
-
- * function.c (assign_stack_temp_for_type): Clear best_p
- when an exact match is found.
-
- * i386.h (LOCAL_ALIGNMENT): Define.
- * function.c (assign_stack_local, assign_outer_stack_local): Use it.
- (assign_stack_temp_for_type): New function based on assign_stack_temp.
- (assign_stack_temp): Call it.
- (assign_temp): Use assign_stack_temp_for_type, not assign_stack_temp.
- * stmt.c: Use assign_temp, not assign_stack_temp.
- * tm.texi: Document LOCAL_ALIGNMENT.
-
-Wed Feb 10 23:28:28 1999 Jeffrey A Law (law@cygnus.com)
-
- * reorg.c: Finish deleting half-deleted comment.
-
-Wed Feb 10 17:12:21 1999 Jim Wilson <wilson@cygnus.com>
-
- * emit-rtl.c (operand_subword): Sign extend REAL_VALUE_TO_TARGET_SINGLE
- result.
- * final.c (split_double): Sign extend REAL_VALUE_TO_TARGET_DOUBLE
- result.
- * real.c (endian): Delete sign extension code.
- * config/m32r/m32r.md (movsf_insn+1): REAL_VALUE_TO_TARGET_SINGLE call
- replaced with operand_subword call.
-
-Wed Feb 10 15:16:39 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (cmov compound patterns): Delete. Jump can now
- create the correct constructs in the first place.
-
-Wed Feb 10 11:03:22 1999 Richard Henderson <rth@cygnus.com>
-
- * configure.in (alphaev6*): Fix typo in target_cpu_default2.
-
-Wed Feb 10 13:59:18 1999 Dave Brolley <brolley@cygnus.com>
-
- * mbchar.c (local_mb_cur_max): Handle the case where MB_CUR_MAX is 0.
-
-Wed Feb 10 10:35:05 1999 Jim Wilson <wilson@cygnus.com>
-
- * tmp-emsgids.c: Delete.
-
-Wed Feb 10 09:57:08 1999 Mark Mitchell <mark@markmitchell.com>
-
- * rtlanal.c (for_each_rtx): Fix declaration to conform to GNU
- coding standards.
-
-Wed Feb 10 10:09:41 1999 Jeffrey A Law (law@cygnus.com)
-
- * mn10200.md (bset, bclr): Operand 0 is a read/write operand.
-
- * reload1.c (reload_combine_note_store): Second argument is no
- longer unused/ignored. Handle multi-register hard regs.
- (move2add_note_store): Simplify.
-
-Wed Feb 10 10:05:23 1999 Mumit Khan <khan@xraylith.wisc.edu>
-
- * collect2.c (collect_execute): Remove cygwin-specific code.
-
-Tue Feb 9 17:27:29 1999 Nathan Sidwell <nathan@acm.org>
-
- * system.h (_, N_): Remove dummy i18n macros.
- * protoize.c: Move inclusion of intl.h to after system.h.
- * cexp.y: Include intl.h.
- * cexp.c: Rebuilt.
-
-Tue Feb 9 16:52:22 1999 Mumit Khan <khan@xraylith.wisc.edu>
-
- * i386/cygwin.h (SUBTARGET_OVERRIDE_OPTIONS): New macro to ignore
- fpic/fPIC for windows32 targets.
- * i386/xm-cygwin.h (GET_ENV_PATH_LIST): Replace '\\' in windows32
- paths with '/'.
- * i386/mingw32.h (CPP_SPEC): Define.
- (CPP_PREDEFINES): Add MINGW32 version id.
- * i386/crtdll.h (CPP_PREDEFINES): Likewise.
-
- * Makefile.in (collect2$(exeext)): Delete redundant dependency and
- add missing exeext to target.
-
- * gcc.c (convert_filename): Handle null filename argument.
-
-Wed Feb 10 15:46:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (*movhf_noclobber, *movhi_noclobber): Use
- m constraint instead of QT.
-
-1999-02-09 Brendan Kehoe <brendan@cygnus.com>
-
- * cpplib.c (special_symbol): Move IP to be declared in function
- scope, rather than individual case statements.
-
-1999-02-09 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppfiles.c (finclude): Handle pipes properly under old BSD
- derivatives.
-
-1999-02-09 Melissa O'Neill <oneill@cs.sfu.ca>
-
- * system.h: Provide fallback definitions for S_ISCHR,
- S_ISSOCK, S_ISFIFO, O_NONBLOCK, and O_NOCTTY.
-
-1999-02-09 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpplib.c (do_define): Allow redefining __STDC__ with -D.
-
-1999-02-09 Jim Blandy <jimb@zwingli.cygnus.com>
-
- * configure.in: For PowerPC configurations, accept "401", "ec603e",
- "740", and "750" as valid arguments to --with-cpu.
- * configure: Rebuilt.
-
-Tue Feb 9 00:00:14 1999 Mark Kettenis <kettenis@gnu.org>
-
- * configure.in (i[34567]86-*gnu*): Set float_format to i386.
- * configure: Rebuilt.
-
-Mon Feb 8 22:38:24 1999 Jeffrey A Law (law@cygnus.com)
-
- * rs6000.md: Revert "alternate use of crs if cr0 not available"
- patches from 01-22-1999, 01-24-1999, 01-26-1999, and 02-08-1999.
-
-Mon Feb 8 21:36:44 1999 Richard Henderson <rth@cygnus.com>
-
- * output.h (current_function_has_computed_jump): Rename from
- current_function_addresses_labels.
- * function.h (struct function): Likewise for addresses_labels member.
- * rtl.h (FUNCTION_FLAGS_HAS_COMPUTED_JUMP): Likewise.
- * function.c (current_function_has_computed_jump): Likewise.
- Update all references.
- * integrate.c (function_cannot_inline_p):
- Test current_function_has_computed_jump instead of addresses_labels.
- (initialize_for_inline): Likewise save.
- (output_inline_function): Likewise restore.
-
- * expr.c (expand_expr): Don't reference addresses_labels variables.
- * stmt.c (expand_computed_goto): Set has_computed_jump.
-
-1999-02-08 Michael Meissner <meissner@cygnus.com>
-
- This is being installed only to get it into the repository to help
- with the revert, resubmit & review process for the massive rs6000.md
- changes.
- * rs6000.md (andsi3_internal1 splitter): Don't split if using the
- rlwinm instruction.
- (anddi3_internal1): Likewise.
- (andsi3_internal{2,3}): Correct some insn lengths.
- (anddi3*): Restore missing TARGET_POWERPC64, and don't emit old
- mnemonics.
-
-Mon Feb 8 21:31:06 1999 Richard Henderson <rth@cygnus.com>
-
- * loop.c (reg_single_usage): New file-scope variable ...
- (scan_loop): ... moved out of here. Always initialize.
- Test loop_has_call instead of reg_single_usage not zero.
- Free reg_single_usage after strength reduction.
- (count_loop_regs_set): Assume single_usage nonzero.
- (combine_givs_used_by_other): Test reg_single_usage.
- (load_mems_and_recount_loop_regs_set): Remove reg_single_usage
- as a parameter. Assume nonzero.
-
-1999-02-08 Zack Weinberg <zack@midnite.ec.rhno.columbia.edu>
-
- * cpplib.c (special_symbol): Rewrite. Don't copy things
- multiple times. Handle __STDC__ specially. T_CONST
- indicates a constant /string/. Don't handle T_*_TYPE and
- T_SPEC_DEFINED. Use cpp_buf_line_and_col instead of
- adjust_position. Determine the file buffer only if needed.
- (initialize_builtins): Handle __SIZE_TYPE__,
- __PTRDIFF_TYPE__, __WCHAR_TYPE__, __USER_LABEL_PREFIX__, and
- __REGISTER_PREFIX__ with T_CONST special hashtab entries.
- Don't provide __OBJC__; the driver does that. Provide
- __STDC_VERSION__, using T_CONST. Use T_STDC for
- __STDC__. Give install the length of all symbols defined.
- (eval_if_expression): Drop code to insert and remove the
- "defined" special symbol.
-
- * cpplib.h: Remove SELF_DIR_DUMMY (no longer used). Remove
- T_*_TYPE and T_SPEC_DEFINED from enum node_type; add T_STDC.
-
- * cpphash.c (install): Drop the `ivalue' parameter. Constify
- the `value' parameter. All callers changed.
- * cpphash.h (install): Change prototype to match.
- (union hashval): Remove `ival' member.
- * cppexp.c (cpp_lex): Handle `defined' here.
-
-Mon Feb 8 17:29:42 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.h (EXTRA_CONSTRAINT): Fix comment.
-
-Mon Feb 8 18:57:45 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * c-typeck.c (check_init_type_bitfields): Use nonincremental
- initialization of unions whose first member is a bitfield.
- Remove unnecessary code for checking the declaration mode
- after DECL_C_BIT_FIELD.
-
- * varasm.c (output_constructor): Additional comment about the
- constructor of bitfield union initialization.
-
-Tue Feb 9 11:55:04 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (*movhi_stik): New pattern.
- (movhi): Allow some immediate constants to be directly
- stored in memory.
-
-Tue Feb 9 11:34:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (all call patterns): Add constraints "Ur".
- (call, call_value): Force address into a register if not valid
- for a call instruction.
- (load_immed_address): Emit a USE of the SYMBOL_REF that is
- forced into memory.
- * config/c4x/c4x.c (c4x_print_operand): Fix 'C' and 'U' modifiers.
-
-Tue Feb 9 11:08:41 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (call_address_operand, symbolic_address_operand):
- Rename from call_operand and symbolic_operand respectively. All
- callers changed.
- * config/c4x/c4x.md (call_address_operand, symbolic_address_operand):
- Likewise.
- * config/c4x/c4x.h (call_address_operand, symbolic_address_operand):
- Likewise.
- (PREDICATE_CODES): Allow CONST, LABEL_REF for call_address_operand.
-
-Tue Feb 9 10:52:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_legitimize_address): Don't generate a
- LO_SUM address for HImode or HFmode but instead force address into
- a register so that it is offsettable.
- (c4x_emit_move_sequence): Handle LO_SUM immediate address.
-
-Tue Feb 9 10:46:42 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_address_cost): Return cost of 1 for
- REG+REG addressing if strength reduction enabled.
-
-Tue Feb 9 10:10:31 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/t-c4x (LIBGCC2_CFLAGS): Delete.
- (TARGET_LIBGCC2_CFLAGS): Define.
-
-1999-02-08 Nick Clifton <nickc@cygnus.com>
-
- * config/v850/v850.md: Replace \\n\\t with \\;
-
- * config/v850/v850.md: Enforce TARGET_LONG_CALLS option.
- * config/v850/v850.c (construct_restore_jr, construct_save_jarl):
- Enforce TARGET_LONG_CALLS option.
-
-Mon Feb 8 11:43:07 1999 Donn Terry <donn@interix.com>
-
- * real.c (PUT_REAL) [XFmode]: Zero the balance of the structure.
-
-Mon Feb 8 11:37:24 1999 Marc Espie (espie@cvs.openbsd.org)
-
- * m88k/t-luna-gas: Remove bash dependency.
-
-Mon Feb 8 11:34:44 1999 Graham <grahams@rcp.co.uk>
-
- * collect2.c (xrealloc): Fix typo in last change.
-
-Mon Feb 8 09:13:38 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Feb 7 22:18:42 1999 Robert Lipe <robertlipe@usa.net>
-
- * tree.h (TYPE_CHECK): Make it clear to the preprocessor
- that we do not want macro replacement within a character constant.
- (TYPE_CHECK1): Likewise.
-
-Sun Feb 7 15:37:10 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.h (DECL_P): New macro.
-
-Sun Feb 7 01:15:04 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Feb 6 18:14:46 1999 Jeffrey A Law (law@cygnus.com)
-
- * mn10300.md (reload_insi): Do not earlyclobber the output operand.
-
- * README.g77, gcc.c, gcc.texi: Update email addresses.
- * invoke.texi system.h: Likewise.
-
-Sat Feb 6 11:04:08 1999 Jim Wilson <wilson@cygnus.com>
-
- * unroll.c (find_splittable_givs): After express_from, call replace_rtx
- to convert dest_reg to new_reg.
-
-Sat Feb 6 10:31:35 1999 Jeffrey A Law (law@cygnus.com)
-
- * reload1.c (reload_combine_note_store): Be more careful with
- STRICT_LOW_PART, ZERO_EXTRACT and SIGN_EXTRACT.
- (move2add_note_store): Likewise.
-
-Sat Feb 6 10:18:01 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cppfiles.c (read_and_prescan): Cast the result of `xrealloc' to
- U_CHAR* when assigning to one. Ensure the values of a ?: operator
- have the same type.
-
- * cppinit.c (initialize_char_syntax): Use K&R function definition.
-
-Sat Feb 6 11:17:03 1999 Richard Earnshaw <rearnsha@arm.com>
-
- Support for ARM9
- * config/arm/arm.c (all_procs): Add arm9 and arm9tdmi.
- * config/arm/arm.h ((TARGET_CPU_arm9, TARGET_CPUD_arm9tdmi): Define.
- (TARGET_CPU_DEFAULT): Rework to support ARM9.
- (CPP_CPU_ARCH_SPEC): Likewise.
- (enum processor_type): Likewise.
- * config/arm/arm.md (attr cpu): Add arm9.
-
- General scheduling changes
- * config/arm/arm.c (MAX_INSNS_SKIPPED): Delete.
- (max_insns_skipped): New variable.
- (arm_override_options): If generating hard floating point code for
- the FPA, emit code for version 3.
- When optimizing for space, don't synthesize constants.
- Reword several flags based on the requested processor and optimization
- level.
- (use_return_insn): New argument iscond, all callers changed. Don't
- use a return insn if it will be conditional and that would be
- expensive; eg on StrongARM.
- (arm_adjust_cost): Anti- and output- dependencies normally have no
- cost.
- (load_multiple_sequence): Newer ARMs don't benefit from ldm if
- the sequence is short.
- (final_prescan_insn): Use max_insns_skipped instead of
- MAX_INSNS_SKIPPED. Note whether we will make a return instruction
- conditional, and aviod this if it would be expensive.
- * config/arm/arm.md (scheduling attributes and function units):
- Rewrite to better describe ARM8, 9 and StrongARM.
-
- * config/arm/arm.md (*movhi_insn_littleend): Make op0 predicate
- s_register_operand.
- (*ifcompare_plus_move): Use arm_rhs_operand in place of
- arm_rhsm_operand. Rework constraints.
- (*if_plus_move): Likewise.
- (*ifcompare_move_plus): Likewise.
- (*if_move_plus): Likewise.
- (*ifcompre_arith_move): Likewise.
- (*if_arith_move): Likewise.
- (*ifcompare_move_arith): Likewise.
- (*if_move_arith): Likewise.
-
- * config/arm/xm-netbsd.h: Don't include arm/xm-arm.h.
-
-1999-02-05 Michael Meissner <meissner@cygnus.com>
-
- * loop.c (check_dbra_loop): A store using an address giv for which
- we have no life information is not reversible.
-
-Fri Feb 5 17:08:01 1999 Dave Brolley <brolley@cygnus.com>
-
- * function.c (fixup_var_refs): Scan catch_clauses too.
-
-Fri Feb 5 11:49:49 1999 Benjamin Kosnik <bkoz@loony.cygnus.com>
-
- * c-common.c (decl_attributes): Fix reserved space for init_priority.
- * tree.h (MAX_RESERVED_INIT_PRIORITY): New macro.
-
-Fri Feb 5 12:37:05 1999 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (strength_reduce): Clear not_every_iteration when
- passing the NOTE_INSN_LOOP_CONT note.
-
- * haifa-sched.c (add_dependence): Do not add a dependency on a
- note.
-
-Fri Feb 5 10:55:43 1999 Nick Clifton <nickc@cygnus.com>
-
- * recog.c (split_block_insns): Only call update_flow_info if
- instruction scheduling is enabled.
-
-1999-02-05 Zack Weinberg <zack@rabi.columbia.edu>
-
- * Makefile.in (gen-protos): Use libcpp.a like everyone else.
-
-Fri Feb 5 07:09:29 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (first_loop_store_insn): New file-scope variable.
- (prescan_loop): Set it.
- (check_dbra_loop): Check if a store depends on a register
- that is set after the store.
-
-Fri Feb 5 06:55:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * unroll.c (entire file): Remove tabs / spaces at end of lines.
- Replace spaces with tabs where appropriate.
-
-Thu Feb 4 15:12:41 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (scan_loop): New argument loop_cont. Changed caller.
- (strength_reduce): New argument loop_cont. Changed caller.
- Before clearing not_every_iteration after a label, check if
- we are not already past LOOP_CONT.
-
-1999-02-04 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cpperror.c (cpp_print_containing_files): Fix formatting
- bug induced by merge.
-
-1999-02-04 Zack Weinberg <zack@rabi.phys.columbia.edu>
-
- * cpplib.c (initialize_char_syntax): Move to cppinit.c.
- (cpp_define): Remove redundant syntax checks.
- (make_assertion): Rename cpp_assert, remove redundant syntax
- checks, export.
- (cpp_options_init): Don't init things to zero twice.
- (cpp_expand_to_buffer): Use memcpy, not a char-by-char loop.
- (do_include): Kill excessively verbose #import warning that
- snuck back in in the gcc2 merge.
- (convert_string): Removed.
- (do_line): Rewrite with simple last-name-used cache instead of
- private hashtable.
- (cpp_start_read): Call initialize_char_syntax here, not...
- (cpp_reader_init): ...here.
- (cpp_handle_options): Support the -std switch.
- * cpplib.h (cpp_buffer): Add last_nominal_fname member.
- (cpp_options): Add c9x flag.
- Declare all the is_* tables and trigraph table here, as const.
- Prototype cpp_assert and initialize_char_syntax.
- * cppinit.c: New file.
- * cppfiles.c (read_and_prescan): Optimize.
- * Makefile.in (LIBCPP_OBJS): Add cppinit.o.
-
-Thu Feb 4 10:46:30 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * config/mips/mips.md ([u]divmodsi4,[u]divmoddi4,[u]divsi3,[u]divdi3,
- [u]modsi3,[u]moddi3) : Don't copy the "zero" argument to a register
- before calling gen_div_trap.
-
-Wed Feb 3 21:56:27 1999 Jeffrey A Law (law@cygnus.com)
-
- * configure.in (hppa1.1-*-*, hppa2*-*): Use symbolic value rather
- than numeric value for target_cpu_default..
- * configure: Rebuilt.
-
-Wed Feb 3 21:55:56 1999 Marc Espie <Marc.Espie@liafa.jussieu.fr>
-
- * Makefile.in (xgcc$(exeext)): Remove choose-temp, pexecute and
- mkstemp. Get them from libiberty.
- (COLLECT2_OBJS): Similarly for choose-temp, cplus-dem and mkstemp.
- (PROTO_OBJS): Similarly for choose-temp, getopt, getopt1 and pexecute.
- (cplus-dem.o, pexecute.o, choose-temp.o): Remove build rules.
- (mkstemp.o, getopt1.o, getopt.o): Likewise.
-
- * pa-gas.h (TARGET_DEFAULT): Use symbolic values rather than numeric
- values.
- * pa-hpux.h (LINK_SPEC): Likewise.
- * pa-hpux10.h (LINK_SPEC): Likewise.
- * pa-hpux9.h (LINK_SPEC): Likewise.
- * pa-osf.h (LINK_SPEC): Likewise.
- * pa-pro.h (TARGET_DEFAULT): Likewise.
- * pa1.h (TARGET_DEFAULT): Likewise.
- * pa.h (MASK_*): New defines.
- (TARGET_*): Use symbolic values rather than numeric values.
- (TARGET_SWITCHES): Likewise.
- (TARGET_DEFAULT): Likewise.
- (CPP_SPEC): Likewise.
-
-Wed Feb 3 21:07:38 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
-
- * reload1.c (reload_cse_regs_1): Undo Jan 16 patch.
- * reload.c (find_reusable_reload): New function, broken out of
- push_reload. Add code to verify that none of the involved
- outputs are subject to earlyclobbers.
- (push_reload): Break out new function find_reusable_reload.
- Delete "register" keyword for IN, OUT args.
-
-Wed Feb 3 15:51:04 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * config/mips/mips.c (true_reg_or_0_operand) : New function.
- * config/mips/mips.h (PREDICATE_CODES): Add true_reg_or_0_operand.
- * config/mips/mips.md (div_trap,div_trap_normal,div_trap_mips16):
- Use true_reg_or_0_operand for div_trap.
-
-Wed Feb 3 20:44:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.h (express_from): Declare.
- (struct induction): Replace derived flag with derived_from pointer.
- * loop.c (strength_reduce, record_giv, recombine_givs): Likewise.
- (express_from): No longer static.
- * unroll.c (find_splittable_givs): Replace derived with derived_from.
- When processing an address giv with which another giv has been
- combined that has also been derived from a third giv, handle like
- having combined with the third giv.
- Set splittable_regs_updates appropriately for derived givs.
-
-Wed Feb 3 15:26:58 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * config/mips/mips.md (div_trap_mips16): Remove nop's after branches.
-
-Wed Feb 3 11:56:23 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (insn_sets_and_refs_are_delayed): New function.
- * pa.h (INSN_SETS_ARE_DELAYED): Use it.
- (INSN_REFERENCES_ARE_DELAYED): Likewise.
-
-Wed Feb 3 06:24:49 1999 Richard Earnshaw (rearnsha@arm.com)
-
- * config/arm/t-arm-elf (LIBGCC2_CFLAGS): Delete.
- * config/arm/t-linux (LIBGCC2_CFLAGS): Delete.
- (TARGET_LIBGCC2_CFLAGS): Define.
- (LIBGCC2_DEBUG_CFLAGS): Define.
- * config/arm/t-netbsd: Likewise.
- * config/arm/t-semi: Likewise.
- * config/arm/t-semiaof: Likewise.
- * config/arm/t-riscix: Likewise.
-
-Wed Feb 3 10:59:07 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * config/m68k/m68k.c (print_operand_address): When printing a
- SYMBOL_REF that ends in `.<letter>' put parentheses around it.
-
-Tue Feb 2 23:38:35 1999 David O'Brien <obrien@FreeBSD.org>
-
- * i386/freebsd*.h now allows '$' in label names and does not use the
- PCC struct return method.
-
-Tue Feb 2 22:38:23 1999 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in: Change all uses of AR to AR_FOR_TARGET. Change all uses
- of HOST_AR to AR. Likewise for AR_FLAGS, RANLIB, and RANLIB_TEST.
- (RANLIB_TEST): Test to see if ranlib exists. Only test absolute file
- names if host == target.
- (HOST_AR, HOST_AR_FLAGS, HOST_RANLIB, HOST_RANLIB_TEST): Delete.
- (AR_FLAGS_FOR_TARGET): Renamed from AR_FOR_TARGET_FLAGS.
- (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Delete rules
- setting them to *_FOR_TARGET.
- * cross-make (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST):
- Delete.
-
-Tue Feb 2 22:38:19 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
-
- * toplev.h (read_integral_parameter): Declare.
- * toplev.c (read_integral_parameter): New function.
-
-Fri Jan 29 21:00:56 1999 Bob Manson <manson@charmed.cygnus.com>
-
- * resource.c, resource.h: New files.
- * Makefile.in (OBJS): Add it.
-
- * haifa-sched.c (regno_use_in): Moved to rtlanal.c.
- (split_block_insns): Moved to recog.c.
- (update_flow_info): Make public.
- * rtl.h: Declare them.
-
- * reorg.c: Moved the functions dealing with computing resource
- usage to resource.c.
-
- * sched.c (regno_use_in): Moved to rtlanal.c.
- (update_flow_info): Make public.
- (schedule_insns): Use split_block_insns.
-
- * recog.c (split_block_insns): New function.
-
-Tue Feb 2 22:03:26 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000/linux.h (LINK_START_DEFAULT_SPEC): Delete, unused.
- (LINK_OS_DEFAULT_SPEC): Delete, unused.
-
-Tue Feb 2 20:29:34 1999 Catherine Moore <clm@cygnus.com>
-
- * configure.in (arm-*-oabi): Support.
- * configure: Regenerate.
- * config/arm/unknown-elf-oabi.h: New file.
-
-Tue Feb 2 19:43:59 1999 Jeffrey A Law (law@cygnus.com)
-
- * i386.md (ashlsi3): Turn into a define_expand an anonymous pattern.
- Make the anonymous pattern match when ! optimize_size.
- (ashlsi3 size optimizer): New pattern.
-
- * intl/Makefile.in (uninstall): Add missing "; \".
-
-Tue Feb 2 18:21:23 1999 Stan Cox <scox@cygnus.com>
-
- * sparc.h (TARGET_CPU_sparc86x): Added. TARGET_CPU_sparclite86x
- synonym.
-
-Tue Feb 2 20:24:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (loop_optimize): Fix value max_uid_for_loop is reset
- to after find_and_verify_loops call.
-
-Tue Feb 2 19:48:29 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * (recombine_givs): Don't use a giv that's likely to be dead to
- derive others.
-
- * loop.c (recombine_givs): Fix test for lifetime overlaps / loop
- wrap around when deriving givs.
-
-Mon Feb 1 20:00:40 1999 Richard Henderson <rth@cygnus.com>
-
- * recog.c (check_asm_operands): Treat indeterminate operand ok
- results as success. Try harder to resolve a matching constraint.
- * stmt.c (expand_asm_operands): Recognize when an output operand's
- constraint does not allow memory. Treat indeterminate operand ok
- results as failure. Try harder to resolve a matching constraint.
-
-Mon Feb 1 15:00:02 1999 Ken Raeburn <raeburn@cygnus.com>
-
- Use varrays for constant-equivalence data:
-
- * varray.h (struct const_equiv_data): New type.
- (union varray_data_tag): New element const_equiv.
- (VARRAY_CONST_EQUIV_INIT, VARRAY_CONST_EQUIV): New macros.
- (VARRAY_SIZE): New macro, returns number of elements.
- * integrate.h: Include varray.h.
- (struct inline_remap): Replace const_equiv_map, const_age_map and
- const_equiv_map_size with a const_equiv_varray element.
- (MAYBE_EXTEND_CONST_EQUIV_VARRAY): New macro; grows varray if
- needed.
- (SET_CONST_EQUIV_DATA): New macro; sets rtx and age fields
- simultaneously, growing the varray if needed.
-
- * integrate.c (global_const_equiv_map,
- global_const_equiv_map_size): Deleted, replaced by....
- (global_const_equiv_varray): New variable.
- (expand_inline_function): References changed.
- * integrate.h: Update declarations.
-
- * integrate.c (process_reg_parm, expand_inline_function,
- copy_rtx_and_substitute, try_constants, subst_constants,
- mark_stores): Use varray allocation and accessor macros, new
- integrate.h macros, and global_const_equiv_varray. Don't
- conditionalize non-NULL stores on array size; instead, expand the
- array as needed.
- * unroll.c (unroll_loop): Likewise.
-
- * unroll.c (unroll_loop): Initialize const_equiv_varray element to
- zero. After allocating varray, always exit through bottom of
- function, where it can be deallocated if needed. Don't explicitly
- reallocate const_equiv_map storage; instead, just ensure the
- varray has been initialized, and update the global reference.
-
-Mon Feb 1 09:40:25 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h (inline, const): Handle these for stage2 (and later) gcc.
-
- * dwarf2out.c (inline): Don't define.
-
- * dwarfout.c (inline): Likewise.
-
-Sun Jan 31 22:04:37 1999 Richard Henderson <rth@cygnus.com>
-
- * loop.c (recombine_givs): Dump recombination and derivation data.
-
-Sun Jan 31 20:34:29 1999 Zack Weinberg <zack@rabi.columbia.edu>
-
- * flags.h: Declare flag_no_ident.
- * toplev.c: Define flag_no_ident. Process -f(no-)ident here.
- * c-tree.h: Don't declare flag_no_ident.
- * c-decl.c: Don't define flag_no_ident. Don't process
- -f(no-)ident switches here.
-
- * config/elfos.h (ASM_FILE_END): Output final .ident directive
- only if !flag_no_ident.
- * config/ptx4.h: Likewise.
- * config/svr4.h: Likewise.
- * config/alpha/elf.h: Likewise.
- * config/arm/linux-elf.h: Likewise.
- * config/i386/sco5.h: Likewise.
- * config/i860/fx2800.h: Likewise.
- * config/mips/gnu.h: Likewise.
- * config/i386/osfrose.h: Likewise.
-
- * gcc.c (C specs): Map -Qn to -fno-ident.
- * objc/lang-specs.h: Likewise.
-
-Mon Feb 1 10:52:07 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * configure.in: Don't remove loop.o and unroll.o when
- enable-haifa is selected.
- * configure: Rebuilt.
-
-Sun Jan 31 13:22:02 1999 John Wehle (john@feith.com)
-
- * i386.md (movsicc, movhicc, movsfcc, movdfcc,
- movxfcc, movdicc): Delete unconstrained alternatives.
- * i386.c (output_fp_conditional_move,
- output_int_conditional_move): Delete unused case.
-
-Sun Jan 31 01:15:04 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Jan 31 00:52:37 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (mov patterns): Emit the assembler aliases mov and fmov
- instead of bis and cpys. Combine alternatives where possible.
-
-Sat Jan 30 23:14:13 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcov.c (fnotice): Add missing FILE* parameter.
- (function_summary): Fix format specifiers in calls to `fnotice'.
- (output_data): Likewise.
-
- * toplev.c (fnotice): Constify char* parameter.
-
- * toplev.h (fnotice): Add prototype.
- Wrap prototype with BUFSIZ to protect FILE* usage.
-
-Sun Jan 31 15:33:09 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (RTX_COSTS): Explicitly define c4x costs.
-
-Sat Jan 30 08:27:23 1999 Jeffrey A Law (law@cygnus.com)
-
- * combine.c (distribute_notes): Handle REG_EH_REGION notes.
-
- * alias.c (fixed_scalar_and_varying_struct_p): Add "static" to
- function definition.
- (aliases_everything_p, write_dependence_p):Likewise.
-
- * install.texi: Fix merge lossages.
-
- * cccp.c (main): Only call setlocale (LC_MESSAGES, ...) if LC_MESSAGES
- is defined.
- * collect2.c (main): Likewise.
- * cppmain.c (main): Likewise.
- * gcc.c (main): Likewise.
- * gcov.c (main): Likewise.
- * protoize.c (main): Likewise.
- * toplev.c (main): Likewise.
-
- * pa.md (parallel shift and shiftadd): Mark output of shift as an
- earlyclobber.
-
- * loop.c: Disable recent loop changes. Temporary as Joern
- continues to fix problems.
-
-Sat Jan 30 03:24:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Size reg_map according to reg_iv_type.
-
-Fri Jan 29 18:26:07 1999 Dave Brolley <brolley@cygnus.com>
-
- * emit-rtl.c (remove_insn): New function.
- * rtl.h (remove_insn): Add prototype.
- * function.c (reposition_prologue_and_epilogue_notes): Call remove_insn.
-
-Fri Jan 29 22:34:41 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (recombine_givs): Don't try to derive givs that have combined.
-
-Fri Jan 29 15:00:39 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * toplev.c (notice, fnotice): Check ANSI_PROTOTYPES, not __STDC__,
- when declaring arguments and calling va_arg() to initialize them.
-
- * collect2.c (notice): Likewise.
-
- * loop.c (find_life_end): Use PROTO() macro in the prototype.
-
-Fri Jan 29 14:36:11 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * collect2.c (error): Fix typo in declaration.
-
- * cpperror.c (cpp_message): Likewise.
-
- * cpplib.c (cpp_warning): Likewise.
-
- * cpplib.h (cpp_notice): Use PVPROTO not VPROTO, also add
- ATTRIBUTE_PRINTF_1.
-
- * toplev.c (error): Fix typo in declaration.
-
-Fri Jan 29 15:44:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Fix HAVE_cc0 handling when scanning
- forward from cont dominator.
-
-Fri Jan 29 07:10:27 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cccp.c (eprint_string): Constify a char*.
- (notice): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1.
- (vnotice): Constify a char*.
- (error): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1.
- (verror): Constify a char*.
- (warning): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1.
- (vwarning): Constify a char*.
- (error_with_line): Likewise. Use PVPROTO not VPROTO, add
- ATTRIBUTE_PRINTF_2.
- (verror_with_line): Constify a char*.
- (vwarning_with_line): Likewise.
- (warning_with_line): Likewise. Use PVPROTO not VPROTO, add
- ATTRIBUTE_PRINTF_2.
- (pedwarn): Constify a char*. Use PVPROTO not VPROTO, add
- ATTRIBUTE_PRINTF_1.
- (pedwarn_with_line): Likewise with ATTRIBUTE_PRINTF_2.
- (pedwarn_with_file_and_line): Likewise with ATTRIBUTE_PRINTF_4.
- Also correct typo in parameter name declaration.
- (make_assertion): Constify a char*.
- (quote_string_for_make): Likewise.
- (deps_output): Likewise.
- (fatal): Likewise. Use PVPROTO not VPROTO, add
- ATTRIBUTE_PRINTF_1. Use ATTRIBUTE_NORETURN not an explicit
- "__attribute__ ((noreturn))".
- (fancy_abort): Likewise for ATTRIBUTE_NORETURN.
- (pfatal_with_name): Likewise.
- (pipe_closed): Likewise.
- (memory_full): Likewise.
-
-Fri Jan 29 00:14:55 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (strength_reduce): Grow set_in_loop / n_times_set /
- may_not_optimize to proper size when converting biv increments
- into givs.
- If necessary, reallocate reg_iv_type / reg_iv_info before calling
- recombine_givs.
-
-Thu Jan 28 23:24:08 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (recombine_givs): New parameter unroll_p. If set, don't
- generate complex adds. Changed caller.
- Don't generate adds that cost more than the original one.
- (strength_reduce): Warning fixes.
-
-Thu Jan 28 09:41:11 1999 Jeffrey A Law (law@cygnus.com)
-
- * configure.in (hppa1.0-hp-hpux10*): Use t-pa.
- * configure: Rebuilt.
-
-Wed Jan 27 23:39:53 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * rtl.h (insn_first_p, no_jumps_between_p): Declare.
- * rtlanal.c (insn_first_p, no_jumps_between_p): New function.
- * loop.h (varray.h): Include.
- (struct induction): Change combined_with to unsigned.
- New members derived, ix and last_use.
- (reg_iv_type, reg_iv_info): Now varray_type. All references changed.
- (REG_IV_TYPE, REG_IV_INFO): Define.
- (first_increment_giv, last_increment_giv): Declare.
- * loop.c (loop_number_loop_cont): New static variable.
- (loop_number_cont_dominator): Likewise.
- (reg_iv_type, reg_iv_info): Now varray_type.
- (first_increment_giv, last_increment_giv): New variables.
- (compute_luids, verify_dominator, find_life_end): New functions.
- (cmp_recombine_givs_stats, recombine_givs): Likewise.
- (loop_optimize): Allocate loop_number_loop_cont and
- loop_number_cont_dominator. Use compute_luids.
- (find_and_verify_loops): Initialize loop_number_loop_cont and
- loop_number_cont_dominator.
- (strength_reduce): Try to find bivs that can be expressed as givs
- of another biv, and to convert biv increments into givs.
- Call recombine_givs. Handle derived givs.
- (record_biv): New argument location. All callers changed.
- (record_giv): Initialize derived and last_use fields.
- (basic_induction_var): New argument location. All callers changed.
- (combine_givs): Don't combine a DEST_REG giv with a DEST_ADDR giv.
- Increment combined_with instead of setting to 1.
- * unroll.c (derived_regs): New static variable.
- (unroll_loop): Initialize it.
- Allocate local_regno according to max_reg_num.
- (copy_loop_body): Cope with derived givs.
- (find_splittable_givs): Check for Givs made from biv increments.
- Set derived_regs for givs.
- * Makefile.in (stmt.o, loop.o, unroll.o): Depend on loop.h .
-
-Wed Jan 27 19:31:36 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * function.c (purge_addressof_1): Handle case when a register
- has been used in a wider mode.
-
-1999-01-27 Bruce Korb <autogen@linuxbox.com>
-
- * fixinc/fixincl.c, fixinc/server.[ch]:
- Removed the last of the capitalized variable and proc names.
-
- * fixinc/server.c: Removed the process open code.
- * fixinc/procopen.c: New file containing the proc open code.
- * fixinc/inclhack.tpl: Added code to bypass a readability test
- when a file is not present. A problem on some systems.
- * fixinc/inclhack.sh, fixinc/fixincl.sh: Regenerated.
-
-Wed Jan 27 11:58:18 1999 Dave Brolley <brolley@cygnus.com>
-
- * cpplib.h (cpp_notice): Add prototype.
-
-Wed Jan 27 02:20:48 1999 Jeffrey A Law (law@cygnus.com)
-
- * Merge gcc2 snapshot 19980929.
-
- * cccp.c (PRINTF_PROTO): Remove.
- (PRINTF_PROTO_{1,2,3,4}: Likewise.
- * cexp.y: Likewise.
- * system.h: Add PRINTF_PROTO and PRINTF_PROTO_{1,2,3,4}.
-
- * fix-header.c (cpp_file_lin_for_message): Delete. In libcpp.
- (cpp_print_containing_files, v_cpp_message, cpp_message): Likewise.
- (cpp_fatal, cpp-Pfatal_with_name): Likewise.
-
- * gen-protos.c (hashf): Delete in cpphash.o.
- * gen-protos.c (hashf): Delete in cpphash.o.
-
- * expr.c: Do not merge SAVE_STACKAREA_MODE changes.
- * expmed.c: Likewise.
- * rs6000.md: Likewise.
-
- * rs6000.c, rs6000.md: Do not merge formatting changes yet.
-
-Wed Jan 27 01:13:42 1999 Richard Henderson <rth@cygnus.com>
-
- * rs6000.c (input_operand): Don't expect CONST around CONSTANT_P_RTX.
- * rs6000.md (movsi, movdi): Likewise.
-
-Tue Jan 26 13:31:38 1999 Jim Wilson <wilson@cygnus.com>
-
- * function.c (expand_function_end): Pass arg_pointer_save_area to
- validize_mem before using it. Emit code into a sequence.
-
-Tue Jan 26 13:41:38 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (doz + set cr and or + set cr patterns): Add missing
- '#' to split patterns. Correct indentation of some new patterns.
-
-1999-01-26 Zack Weinberg <zack@midnite.ec.rhno.columbia.edu>
-
- * cppfiles.c (safe_read): Deleted.
- (read_and_prescan): New function, replaces safe_read, converts
- and/or warns about trigraphs, silently converts odd line
- terminators (\r, \n\r, \r\n). Warns about no newline at EOF.
- (finclude): Use read_and_prescan; turn off nonblocking mode on
- the input descriptor; remove file-size-examination and
- no-newline-at-EOF gunk which is longer necessary; be more
- careful about checking that we've been handed a legitimate
- file to read (only real files, pipes, and ttys are acceptable).
- * cpplib.h (cpp_options): Rename no_trigraphs flag to
- `trigraphs' and invert its sense.
- (trigraph_table): Declare.
- (cpp_warning_with_line): Prototype.
- * cpplib.c: Remove all references to trigraph_pcp. Define
- trigraph_table; initialize it in initialize_char_syntax. Open
- files in nonblocking mode. s/no_trigraphs/trigraphs/
- throughout, and invert sense. Put cpp_warning_with_line back
- in and export it.
-
-Tue Jan 26 23:21:49 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (COUNTER_REGS): New register class.
- * config/c4x/c4x.md (*rptb_init): Change constraints.
- (rptb_end): Emit alternate looping instructions if
- RC register not allocated for loop counter.
- (decrement_and_branch_on_count): Allow other registers
- for loop counter.
-
-1999-01-25 Zack Weinberg <zack@rabi.columbia.edu>
-
- * cppexp.c (struct arglist): Removed.
- (parse_number): Use HOST_WIDE_INT for the accumulator.
- Allow two `l' suffixes unless C89. Clean up. Make static.
- (parse_charconst): New function broken out of cpp_lex.
- Code cleaned up drastically. Don't use a token_buffer.
- (token_buffer): Removed.
- (cpp_lex): Don't call parse_number on a constant string.
- Use parse_charconst.
- (cpp_parse_expr): Properly handle an ERROR op returned by
- cpp_lex.
-
-1999-01-25 Zack Weinberg <zack@rabi.phys.columbia.edu>
-
- * cpplib.c: Don't include signal.h, sys/times.h, or
- sys/resource.h. Don't declare localtime.
- (macroexpand): Handle special symbols here.
- (push_macro_expansion): Chop off the trailing '@ ' if possible
- here.
- (cpp_get_token): Don't do either of the above two things here.
- Move `string' label just after case '"' so that wide strings
- don't crash the preprocessor.
-
-Sun Jan 24 20:13:45 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (left shift + set cr patterns): Add missing '#' to
- split patterns.
- (move register + set cr pattern): Likewise.
- (movdi, !TARGET_POWERPC64 splitters): Add back in Jan. 15th patch,
- inadvertently deleted.
-
-Sun Jan 24 08:07:59 1999 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (stmt_loop_nest_empty): New function.
- * tree.h (stmt_loop_nest_empty): Declare it.
- * rtl.def (CALL_PLACEHOLDER): New rtx code.
-
-Sun Jan 24 21:24:43 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_emit_move_sequence, c4x_encode_section_info):
- New functions.
- (c4x_check_legit_addr): Remove USE and PLUS, allow
- LO_SUM, and disable SYMBOL_REF, LABEL_REF, and CONST cases.
- (c4x_legitimize_address): Penalize SYMBOL_REF, LABEL_REF, and
- CONST cases. Add LO_SUM.
- (c4x_print_operand): Modified 'C' and 'R' cases for calls.
- Added 'U' case. Remove dependence on SYMBOL_REF_FLAG.
- (c4x_print_operand_address): Handle LO_SUM.
- (c4x_scan_for_ldp): Delete. Hooray!
- (c4x_process_after_reload): Remove call to c4x_scan_for_ldp.
- Split all insns.
- (c4x_immed_int_constant): Renamed from c4x_int_constant. All callers
- changed.
- (c4x_immed_float_constant): Renamed from c4x_float_constant. All
- callers changed.
- (c4x_T_constraint): Allow LO_SUM, disable SYMBOL_REF, LABEL_REF,
- and CONST.
- (c4x_U_constraint, symbolic_operand): New functions.
- (src_operand): Allow 'I' constants in HImode. Allow LO_SUM,
- disable SYMBOL_REF, LABEL_REF, and CONST.
- (lsrc_operand, tsrc_operand): Call src_operand instead of
- general_operand.
- (c4x_operand_subword): Update comments.
-
- * config/c4x/c4x.c (TARGET_LOAD_ADDRESS): New macro.
- (LEGITIMATE_CONSTANT_P): Allow SYMBOL_REF, LABEL_REF, CONST,
- plus HIGH and LO_SUM for the C40.
- (ENCODE_SECTION_INFO): Define macro.
- (symbolic_operand, c4x_U_constraint, c4x_emit_move_sequence): New
- prototypes.
- (PREDICATE_CODES): Add symbolic_operand.
-
- * config/c4x/c4x.md (movqi, movgqf, movhi, movhi): Call
- c4x_emit_move_sequence.
- (floatunsqiqf2, fixuns_truncqfqi2): Rework emitted RTL
- to avoid symbol references.
- (all patterns with g constraint): Replace 'g' constraint with 'rIm'.
- (set_high): Renamed from set_high_use.
- (set_lo_sum): Renamed from set_ior_lo_use.
- (all call patterns): Make MEM explicit in call address operands.
- Modified output templates to use 'U' modifier.
-
-Sun Jan 24 01:15:05 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Jan 23 22:34:57 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * final.c (bb_str): Qualify a char* with the keyword `const'.
- (add_bb_string, final_scan_insn, output_asm_insn): Likewise.
-
- * fix-header.c (read_scan_file): Likewise.
-
- * genoutput.c (output_epilogue, process_template): Likewise.
-
- * local-alloc.c (requires_inout, block_alloc): Likewise.
-
- * output.h (output_asm_insn, assemble_string): Likewise.
-
- * recog.c (recog_constraints, check_asm_operands,
- decode_asm_operands, extract_insn, preprocess_constraints,
- constrain_operands): Likewise.
-
- * recog.h (operand_alternative, recog_constraints, insn_template,
- insn_outfun, insn_operand_constraint, insn_name): Likewise.
-
- * regclass.c (record_reg_classes, scan_one_insn): Likewise.
-
- * regmove.c (find_matches): Likewise.
-
- * reload.c (alternative_allows_memconst): Likewise.
-
- * reload1.c (constraint_accepts_reg_p,
- reload_cse_simplify_operands): Likewise.
-
- * rtl.h (decode_asm_operands): Likewise.
-
- * scan.h (fn_decl): Likewise.
-
- * varasm.c (assemble_string): Likewise.
-
-Sat Jan 23 01:37:36 1999 Jeffrey A Law (law@cygnus.com)
-
- * configure.in (gcc_tooldir): Handle case where exec_prefix has
- not been explicitly set.
- * configure: Rebuilt.
-
- * fold-const.c (lshift_double): Mark 'prec' arguments as possibly
- unused.
-
- * bitmap.h (bitmap_head_def): Make indx field unsigned.
-
- * configure.in (gcc_tooldir): When not making a relative gcc_tooldir,
- use $exec_prefix/$target_alias for gcc_tooldir.
- * configure: Rebuilt.
-
-Fri Jan 22 11:48:56 1999 Richard Henderson <rth@cygnus.com>
-
- * cppp.c (xrealloc): Fix typo last change.
- * cppalloc.c, gcc.c, genattr.c, genattrtab.c, gencodes.c: Likewise.
- * genconfig.c, genemit.c, genextract.c, genflags.c: Likewise.
- * genopinit.c, genoutput.c, genpeep.c, genrecog.c: Likewise.
-
-1999-01-22 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.h (CR0_REGNO_P): New macro to test if cr0.
- (CR_REGNO_NOT_CR0_P): New macro to test if cr, but not cr0.
- (PREDICATE_CODES): Add cc_reg_not_cr0_operand.
- (cc_reg_not_cr0_operand): Add declaration.
-
- * rs6000.c (cc_reg_not_cr0_operand): Return true if register is a
- pseudo register, or a control register that is not CR0.
-
- * rs6000.md (all combiner patterns building . instructions): For
- all `.' instructions that do something and set cr0, add an
- alternative that does the operation, and then sets a different
- flag, in order to avoid using the costly mcrf instruction and also
- allow cr0 to be clobbered in asm statements. Also fix a few
- patterns that used the wrong register.
-
- * rs6000.h (rs6000_cpu_select): Make string, names be const char *.
- (rs6000_debug_name): Make const char *, not char *.
-
- * sysv4.h (rs6000_{abi,sdata}_name): Make const char *.
-
- * rs6000.c (rs6000_{debug,abi,sdata}_name): Make const char *.
- (rs6000_select): Use const char * in casts.
-
-Fri Jan 22 07:43:01 1999 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (gcc_tooldir): Move before first reference.
- Let autoconf substitute in a value.
- * configure.in (gcc_tooldir): Only use a relative path to the
- tool directory if $exec_prefix == $prefix.
- * configure: Rebuilt.
-
- * Makefile.in (tooldir): Replace with gcc_tooldir.
-
-Thu Jan 21 23:21:57 1999 Jeffrey A Law (law@cygnus.com)
-
- * m68k.md (ashldi_const): Disable for !TARGET_5200. Fix indentation.
- (ashldi3 expander): Similarly. Update comments.
- (ashrdi_const, lshrdi_const): Fix indentation.
- (ashrdi3, lshrdi3): Fix indentation. Update comments.
-
-Thu Jan 21 21:53:36 1999 Richard Henderson <rth@cygnus.com>
-
- * emit-rtl.c (try_split): Don't try to split non-instructions.
-
-Thu Jan 21 23:47:30 1999 Andrew MacLeod <amacleod@cygnus.com>
-
- * expr.c (emit_push_insn): Fix dumb typo.
-
-Thu Jan 21 20:24:02 1999 Richard Henderson <rth@cygnus.com>
-
- * rs6000.h (LEGITIMIZE_RELOAD_ADDRESS): Recognize and accept
- transformations that we have performed earlier.
- * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
-
- * alpha.md (prologue_stack_probe_loop): Don't do our own label
- handling, call gen_label_rtx instead.
-
-Thu Jan 21 17:45:18 1999 Richard Henderson <rth@cygnus.com>
-
- * configure.in ({rs6000|powerpc}-ibm-aix4.[12]*): Add missing `then'.
-
- * cccp.c (xrealloc): Call malloc given a NULL old pointer.
- * collect2.c, cppalloc.c, gcc.c, genattr.c, genattrtab.c: Likewise.
- * gencodes.c, genconfig.c, genemit.c, genextract.c: Likewise.
- * genflags.c, genopinit.c, genoutput.c, genpeep.c: Likewise.
- * genrecog.c, mips-tfile.c, protoize.c: Likewise.
-
-Thu Jan 21 19:44:55 1999 Michael Meissner <meissner@cygnus.com>
-
- * configure.in ({rs6000|powerpc}-ibm-aix4.[12]*): If
- --with-gnu-ld, use x-aix41-gld instead of x-aix41 to suppress
- adding -Wl,-bbigtoc to BOOT_LDFLAGS.
- * configure: Regenerate.
-
- * config/rs6000/x-aix41-gld: New file, don't set BOOT_LDFLAGS.
-
-Thu Jan 21 15:48:03 1999 Dave Brolley <brolley@cygnus.com>
-
- * cppexp.c (cpp_lex): Allocate token_buffer dynamically.
-
-Thu Jan 21 14:18:04 1999 Andrew MacLeod <amacleod@cygnus.com>
-
- * expr.c (MOVE_BY_PIECES_P): Define condition for deciding to use
- move_by_pieces.
- (MOVE_MAX_PIECES): Define maximum number of bytes to move at once.
- (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT): Define defaults.
- (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define defaults.
- (move_by_pieces): Use new macros.
- (emit_block_move): Use new macros.
- (clear_by_pieces): Use new macros.
- (clear_storage): Use new macros.
- (emit_push_insn): Use new macros.
- (expand_expr): Use new macros.
- * config/sh/sh.h (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT):
- Define.
- (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define.
- (MOVE_BY_PIECES_P): Define based on alignment and TARGET_SMALLCODE.
- (MOVE_MAX_PIECES): Move 8 bytes on SH4.
- * tm.texi(MOVE_BY_PIECES_P, MOVE_MAX_PIECES, USE_LOAD_POST_INCREMENT,
- USE_LOAD_PRE_DECREMENT, USE_STORE_POST_INCREMENT,
- USE_STORE_PRE_DECREMENT): Describe new macros.
-
-Thu Jan 21 14:13:31 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * varasm.c (output_constant_pool): Use floor_log2 instead of
- exact_log2 for ASM_OUTPUT_ALIGN.
-
- * stor-layout.c (layout_type): Do machine-dependent extra alignment.
-
- * emit-rtl.c (operand_subword): Handle case when a subword outside
- the operand.
-
- * tm.texi (ROUND_TYPE_{SIZE,ALIGN}): More accurate descriptions of
- the macros.
-
-Thu Jan 21 01:59:30 1999 Richard Henderson <rth@cygnus.com>
-
- * cse.c (fold_rtx): Revert 29 Dec change.
- (cse_insn): Revert 12 Jan change.
- * expr.c (expand_builtin): Don't emit CONST around CONSTANT_P_RTX.
- * regclass.c (reg_scan_mark_refs): Revert 29 Dec change.
- * rtl.def: Likewise.
- * rtl.h (CONSTANT_P): Likewise.
-
- * expr.c (emit_move_insn): Never try to flush CONSTANT_P_RTX
- to memory.
- * recog.c (immediate_operand): Accept CONSTANT_P_RTX.
- * alpha.c (input_operand): Likewise.
- * c4x.c (const_operand): Likewise.
-
- * explow.c (allocate_dynamic_stack_space): Use register_operand
- instead of arith_operand, which does not exist.
-
- * 1750a.h: Fix comment closure.
- * a29k.c (a29k_set_memflags): Fix typo in 19 Jan change.
- * arc.md (one_cmplsi2_set_cc_insn): Fix set mode mismatch.
- * arm.h (TARGET_SWITCHES): Fix typo.
- * i370.md (anon mult and div patterns): Fix set mode mismatch.
- * i860.c (output_delayed_branch): Fix operands to constrain_operands.
- (output_delay_insn): Likewise.
- * m88k.md (anon rotate insns): Fix set mode mismatch.
- (anon BLKmode moves): Commonize and fix set mode mismatches.
- * ns32k.md (udivmoddi[shq]i4_internal): Fix mode mismatch.
- * romp.md (movdf): Fix typo.
-
-Thu Jan 21 00:29:35 1999 Nathan Sidwell <nathan@acm.org>
-
- * Makefile.in (install-common): Remove extraneous chmod for gcov
- install.
-
-Wed Jan 20 18:15:08 1999 Dave Brolley <brolley@cygnus.com>
-
- * function.c (assign_parms): Save and restore setting of
- TREE_USED (parm).
-
-Wed Jan 20 12:51:42 1999 Mark Mitchell <mark@markmitchell.com>
-
- * arm.md: Use MEM_COPY_ATTRIBUTES where appropriate throughout.
- Pass MEM_SCALAR_P to arm_gen_store_multiple where appropriate.
-
-Tue Jan 19 21:20:52 1999 Richard Henderson <rth@cygnus.com>
-
- * recog.c (pop_operand): New function.
- * recog.h (pop_operand): Declare it.
- * genrecog.c (preds): Define it.
-
- * expr.c (do_jump_for_compare): Handle conditional branch expanders
- emitting multiple jump instructions.
- * jump.c (condjump_label): New function.
- * rtl.h (condjump_label): Declare it.
-
-Tue Jan 19 21:08:20 1999 Richard Henderson <rth@cygnus.com>
-
- * expr.c (emit_move_insn_1): Revert 17 Dec change. Don't emit
- clobber during or after reload.
-
-Tue Jan 19 16:56:03 1999 Richard Henderson <rth@cygnus.com>
-
- * genoutput.c (name_for_index): New function.
- (scan_operands, validate_insn_alternatives): Use it.
- * genrecog.c (insn_name_ptr_size): New variable.
- (make_insn_sequence): Fill in insn_name_ptr.
- (merge_trees): Use it.
-
-Tue Jan 19 16:37:36 1999 Richard Henderson <rth@cygnus.com>
-
- * i386/isc.h (TARGET_DEFAULT): Define symbolicly.
- * i386/isccoff.h, i386/next.h, i386/sco.h, i386/sco5.h: Likewise.
- * i386/scodbx.h, i386/sequent.h, i386.unix.h: Likewise.
-
-Tue Jan 19 15:00:10 1999 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (NUM_STORES): Delete.
- (loop_store_mems): Turn into an EXPR_LIST of MEMs.
- (prescan_loop): Properly initialize loop_mems_idx.
- (note_addr_stored): Simplify using list structure instead of
- fixed sized array.
- (invariant_p, check_dbra_loop, load_mems): Similarly.
-
- * flow.c (invalidate_from_autoinc): New function.
- (mark_set_1, mark_used_regs): Use it.
-
- * Makefile.in (protoize.o, unprotoize.o): Depend on Makefile.
-
-1999-01-19 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * invoke.texi (-mlong-double-64): New option description.
-
-1999-01-19 Jim Wilson <wilson@cygnus.com>
-
- * libgcc2.c: Change all uses of LONG_DOUBLE_TYPE_SIZE to
- LIBGCC2_LONG_DOUBLE_TYPE_SIZE.
- (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New. Set to LONG_DOUBLE_TYPE_SIZE
- if not defined.
- * i960/i960.h (MULTILIB_DEFAULTS): Define to mnumerics.
- (CPP_SPECS): Add -mlong-double-64 support.
- (TARGET_FLAG_LONG_DOUBLE_64, TARGET_LONG_DOUBLE_64): New.
- (TARGET_SWITCHES): Add -mlong-double-64 support.
- (LONG_DOUBLE_TYPE_SIZE): Likewise.
- (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define.
- * i960/vx960-coff.h (MULTILIB_DEFAULTS): Define to msoft-float.
- (CPP_SPECS): Add -mlong-double-64 support.
- * i960/t-960bare (MULTILIB_OPTIONS): Add mlong-double-64.
- (MULTILIB_DIRNAMES): Add ld64.
- * i960/t-vxworks960 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Likewise.
-
-Tue Jan 19 11:54:04 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * calls.c (expand_call): Strip a TARGET_EXPR if we're passing by
- invisible reference.
-
-Tue Jan 19 14:51:36 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (offsettable_addr_operand): Delete.
- (offsettable_mem_operand): New function.
- * rs6000.h (PREDICATE_CODES): Reflect function change.
- (RS6000_SAVE_TOC): Represent address as MEM.
- * win-nt.h (RS6000_SAVE_TOC): Same.
- * rs6000.md (indirect calls): Change offsettable address parameter
- to offsettable memory parameter.
-
-Tue Jan 19 10:24:53 1999 Mark Mitchell <mark@markmitchell.com>
-
- * rtl.h (rtx_def): Update documentation.
- (MEM_IN_STRUCT_P): Likewise.
- (MEM_SCALAR_P): New macro.
- (MEM_COPY_ATTRIBUTES): Likewise.
- (MEM_SET_IN_STRUCT_P): Likewise.
- * rtl.texi (MEM_SCALAR_P): Document.
- * alias.c (canon_rtx): Use MEM_COPY_ATTRIBUTES.
- (fixed_scalar_and_varying_struct_p): New function. Use
- MEM_SCALAR_P rather than !MEM_IN_STRUCT_P.
- (aliases_everything_p): Likewise.
- (true_dependence): Use them.
- (write_dependence_p): New function, containing code common to
- anti_dependence and output_dependence.
- (anti_dependence): Use it.
- (output_dependence): Likewise.
- * calls.c (save_fixed_argument_area): Don't clear
- MEM_IN_STRUCT_P.
- (expand_call): Use MEM_SET_IN_STRUCT_P.
- (emit_library_call): Don't clear MEM_IN_STRUCT_P.
- (emit_library_call_value): Likewise.
- (store_one_arg): Use MEM_SET_IN_STRUCT_P.
- * combine.c (simplify_rtx): Use MEM_COPY_ATTRIBUTES.
- (make_extraction): Likewise.
- (simplify_shift_const): Likewise.
- (gen_lowpart_for_combine): Likewise.
- * cse.c (gen_lowpart_if_possible): Use MEM_COPY_ATTRIBUTES.
- * emit-rtl.c (operand_subword): Likewise.
- (change_address): Likewise.
- * explow.c (stabilize): Use MEM_COPY_ATTRIBUTES.
- * expr.c (protect_from_queue): Use MEM_COPY_ATTRIBUTES.
- (emit_group_store): Use MEM_SET_IN_STRUCT_P.
- (copy_blkmode_from_reg): Likewise.
- (store_field): Likewise.
- (expand_expr): Remove bogus guesswork setting MEM_IN_STRUCT_P
- heuristically. Use MEM_SET_IN_STRUCT_P.
- (get_memory_rtx): Likewise.
- * final.c (alter_subreg): Use MEM_COPY_ATTRIBUTES.
- * function.c (assign_stack_temp): Clear MEM_SCALAR_P and
- MEM_ALIAS_SET on newly returned MEMs.
- (assign_temp): Use MEM_SET_IN_STRUCT_P.
- (put_reg_into_stack): Likewise.
- (fixup_var_refs1): Use MEM_COPY_ATTRIBUTES.
- (gen_mem_addressof): Use MEM_SET_IN_STRUCT_P.
- (assign_parms): Likewise.
- (expand_function): Likewise.
- * integrate.c (expand_inline_function): Likewise.
- (copy_rtx_and_substitute): Use MEM_COPY_ATTRIBUTES.
- * loop.c (note_addr_stored): Remove check on MEM_IN_STRUCT_P.
- * optabs.c (gen_move_insn): Use MEM_COPY_ATTRIBUTES.
- * print-rtl.c (print_rtx): Print /f for frame_related.
- * recog.c (validate_replace_rtx_1): Use MEM_COPY_ATTRIBUTES.
- * reload1.c (reload): Copy MEM_SCALAR_P as well.
- * stmt.c (expand_decl): Use MEM_SET_IN_STRUCT_P.
- (expand_anon_union_decl): Use MEM_COPY_ATTRIBUTES.
- * varasm.c (make_decl_rtl): Use MEM_SET_IN_STRUCT_P.
- (output_constant_def): Likewise.
- * a29k.c (a29k_set_memflags_1): Take scalar_p.
- Set MEM_SCALAR_P.
- (a29k_set_memflags): Use it.
- * alpha.c (get_aligned_mem): Use MEM_COPY_ATTRIBUTES.
- * c4x.c (c4x_scan_for_ld): Likewise.
- * h8300.c (fix_bit_operand): Likewise.
- * m88k.c (legitimize_address): Likewise.
- (block_move_loop): Likewise.
- (block_move_no_loop): Likewise.
- (block_move_sequence): Likewise.
- (m88k_builtin_saveregs): Use MEM_SET_IN_STRUCT_P.
- * mips/abi64.h (SETUP_INCOMING_VARARGS): Likewise.
- * rs6000.c (expand_block_move_insn): Use MEM_COPY_ATTRIBUTES.
- * sh.c (sh_builtin_saveregs): Use MEM_SET_IN_STRUCT_P.
- * arm.h (arm_gen_load_multiple): Take scalar_p.
- (arm_store_load_multiple): Likewise.
- * arm.c (arm_gen_load_multiple): Likewise.
- (arm_gen_store_multiple): Likewise.
- (arm_gen_movstrqi): Treat MEM_SCALAR_P like MEM_IN_STRUCT_P.
-
-Tue Jan 19 12:30:37 1999 Andrew MacLeod <amacleod@cygnus.com>
-
- * optabs.c (emit_libcall_block): Add a REG_EH_REGION reg note to all
- calls within a libcall block to indicate no throws are possible.
- * flow.c (find_basic_blocks, find_basic_blocks_1): Don't look for
- libcall blocks. Don't add edges to exception handlers if we see
- a REG_EH_REGION note with a value of 0.
- (make_edges): Override active_eh_region vector if the call has a note
- indicating the call does not throw.
-
-1999-01-19 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * config/rs6000/sysv4.h (CC1_SPEC): Fix correct numbers of {}.
-
-Tue Jan 19 06:26:30 1999 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (cccp.o, cpplib.o): Depend on Makefile.
-
-Mon Jan 18 09:56:41 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * invoke.texi (C++ Dialect Options): Document -fno-rtti.
-
-1999-01-18 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * invoke.texi (-mcpu=740, -mcpu=750): New options.
- (-m(no-)multiple, -m(no-)string): Describe cases for PPC740 &
- PPC750.
-
-1999-01-18 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.h ({ASM,CPP}_CPU_SPEC): Add support for all machines
- supported with -mcpu=xxx.
- (processor_type): Add PROCESSOR_PPC750.
- (ADJUST_PRIORITY): Call rs6000_adjust_priority.
- (RTX_COSTS): Supply costs for 750 multiply/divide operations.
- (rs6000_adjust_priority): Add declaration.
-
- * rs6000.c (rs6000_override_options): -mcpu={750,740} now sets the
- processor type as 750, not 603. Allow -mmultiple and -mstring on
- little endian 750 systems.
- (rs6000_adjust_priority): Stub for now.
- (get_issue_rate): The PowerPC 750 can issue 2 instructions/cycle.
-
- * rs6000.md (function/cpu attributes): Add initial ppc750 support.
-
- * sysv4.h (STRICT_ALIGNMENT): Don't force strict alignment if
- little endian.
- (CC1_SPEC): Pass -mstrict-align if little endian, and not
- overridden.
- (CC1_ENDIAN_{LITTLE,BIG,DEFAULT}_SPEC): Endian specific configs.
- (SUBTARGET_EXTRA_SPECS): Add cc1 endian specs.
-
- * {sysv4,eabi}le.h (CC1_ENDIAN_DEFAULT_SPEC): Override, default is
- little endian.
-
- * t-ppcgas (MULTILIB_*): Delete obsolete Solaris multilibs.
-
-Mon Jan 18 12:03:08 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * config/mips/mips.md (div_trap): Split div_trap_mips16
- from div_trap.
- (div_trap_normal,div_trap_mips16): Correct the length attributes.
-
-Mon Jan 18 11:48:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cpplib.c (special_symbol): Qualify a char* with the `const' keyword.
- Instead of writing to const char *buf directly, use a non-const
- variable `wbuf' to allocate and write a string, then set buf = wbuf.
-
- * cppulp.c (user_label_prefix): Qualify a char* with the `const'
- keyword.
-
- * dyn-string.c (dyn_string_append): Likewise.
-
- * dyn-string.h (dyn_string_append): Likewise.
-
- * final.c (end_final, output_operand_lossage, asm_fprintf): Likewise.
-
- * output.h (end_final, output_operand_lossage, asm_fprintf,
- named_section, decode_reg_name, make_decl_rtl, user_label_prefix):
- Likewise.
-
- * profile.c (init_branch_prob): Likewise.
-
- * toplev.c (set_target_switch, vmessage,
- v_message_with_file_and_line, v_message_with_decl,
- v_error_with_file_and_line, v_error_with_decl, v_error_for_asm,
- verror, vfatal, v_warning_with_file_and_line, v_warning_with_decl,
- v_warning_for_asm, vwarning, vpedwarn, v_pedwarn_with_decl,
- v_pedwarn_with_file_and_line, vsorry, v_really_sorry,
- open_dump_file, dump_rtl, clean_dump_file,
- print_version, print_single_switch, print_switch_values,
- dump_base_name, debug_args, lang_independent_options,
- user_label_prefix, documented_lang_options, target_switches,
- target_options, print_time, pfatal_with_name, fatal_io_error,
- fatal_insn, default_print_error_function, print_error_function,
- report_error_function, error_with_file_and_line, error_with_decl,
- error_for_asm, error, fatal, warning_with_file_and_line,
- warning_with_decl, warning_for_asm, warning, pedwarn,
- pedwarn_with_decl, pedwarn_with_file_and_line, sorry,
- really_sorry, botch, output_quoted_string, output_file_directive,
- open_dump_file, rest_of_decl_compilation, display_help, main):
- Likewise.
-
- * toplev.h (print_time, fatal, fatal_io_error, pfatal_with_name,
- fatal_insn, warning, error, pedwarn, pedwarn_with_file_and_line,
- warning_with_file_and_line, error_with_file_and_line, sorry,
- really_sorry, default_print_error_function, report_error_function,
- rest_of_decl_compilation, pedwarn_with_decl, warning_with_decl,
- error_with_decl, error_for_asm, warning_for_asm, output_quoted_string,
- output_file_directive, botch): Likewise.
-
- * tree.h (make_decl_rtl): Likewise.
-
- * varasm.c (strip_reg_name, named_section, decode_reg_name,
- make_decl_rtl): Likewise.
-
-Mon Jan 18 11:35:49 1999 Gavin Romig-Koch <gavin@cygnus.com>
-
- * Makefile.in (TCL_LIBRARY): Use 'cd' to find the library
- directory logically rather than physically.
-
-Mon Jan 18 09:05:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * loop.c (insert_bct): Hide the definition of variables
- `increment_direction', `compare_direction', `add_iteration' and
- `loop_var_mode'.
-
- * recog.c (mode_dependent_address_p): Mark parameter `addr' with
- ATTRIBUTE_UNUSED. Mark label `win' with ATTRIBUTE_UNUSED_LABEL.
- (mode_independent_operand): Mark label `lose' with
- ATTRIBUTE_UNUSED_LABEL.
-
- * regclass.c (n_occurrences): Remove prototype and definition.
-
- * reload.c (find_reloads_address_1): Mark variable `tem' with
- ATTRIBUTE_UNUSED.
-
- * reload1.c (reload): Cast the first two arguments of `bcopy' to PTR.
-
- * sbitmap.c (sbitmap_copy): Likewise.
-
- * scan-decls.c (scan_decls): Hide label `handle_comma'.
-
- * toplev.c (output_lang_identify): Mark prototype with
- ATTRIBUTE_UNUSED.
-
- * tree.c (make_node): Cast the first argument of `bzero' to PTR.
- (make_tree_vec): Likewise.
- (build1): Likewise.
-
- * varasm.c (assemble_static_space): Mark variable `tem' with
- ATTRIBUTE_UNUSED.
-
-Mon Jan 18 04:28:36 1999 Nathan Sidwell <nathan@acm.org>
-
- * Makefile.in (GCOV_INSTALL_NAME): New macro.
- (install-common): Use it.
- (uninstall): Use it.
- (uninstall): Use correct names for protoize and unprotoize.
-
-Mon Jan 18 03:52:56 1999 Christian Bruel <Christian.Bruel@st.com>
- Jeffrey A Law (law@cygnus.com)
-
- * flow.c (last_mem_set): Delete variable. References removed.
- (mem_set_list): New variable.
- (life_analysis): Initialize and finalize alias analysis.
- (propagate_block); Initialize mem_set_list. Clear for CALL_INSNs.
- (insn_dead_p): For a store to memory, search the entire mem_set_list
- for a match.
- (mark_set_1): Kill entries on the mem_set_list for aliased writes or
- changes to their addresses. Add new entries to the mem_set_list for
- memory writes writes.
- (mark_used_regs): Kill entries on the mem_set_list which may be
- referenced by a load operation.
-
-Mon Jan 18 01:01:02 1999 Jeffrey A Law (law@cygnus.com)
-
- * alias.c (base_alias_check): Add missing return for differing
- symbols case.
-
-Mon Jan 18 00:36:13 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * mips-tdump.c (print_file_desc): Handle unknown filenames and
- missing local symbols.
-
-Sun Jan 17 21:04:31 1999 Richard Henderson <rth@cygnus.com>
-
- * jump.c (rtx_renumbered_equal_p): Special case CODE_LABEL.
-
- * system.h (bcopy): Implement with memmove not memcpy.
-
-Sun Jan 17 19:23:20 1999 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (cppulp.o): Add dependencies.
-
- * i386.md (integer conditional moves): Add missing earlyclobbers.
-
- * regmove.c (optimize_reg_copy_1): Undo Aug 18 change. Update
- REG_N_CALLS_CROSSED and REG_LIVE_LENGH if and only if we change
- where a register is live.
-
-Sun Jan 17 03:20:47 1999 H.J. Lu (hjl@gnu.org)
-
- * reg-stack.c (subst_stack_regs_pat): Abort if the destination
- of a FP conditional move is not on the FP register stack.
-
-Sun Jan 17 01:15:04 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Jan 16 23:40:33 1999 Jeffrey A Law (law@cygnus.com)
-
- * reload1.c (reload_cse_regs_1): Do not call
- reload_cse_simplify_operands for an insn with asm operands.
-
- * cccp.c (print_help): Fix typos.
- * cpplib.c (print_help): Fix typos.
- * toplev.c (f_optiosn): Fix typos.
- (documented_lang_options): Fix typos.
-
-Sat Jan 16 21:48:17 1999 Marc Espie (Marc.Espie@openbsd.org)
-
- * gcc.c (do_spec_1): Fix obvious typo.
-
-Sat Jan 16 19:31:07 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-decl.c (duplicate_decls): If `warn_traditional', warn when
- a non-static function declaration follows a static one.
-
- * invoke.texi (-Wtraditional): Document the extra check now done
- by this flag.
-
-Sat Jan 16 15:13:46 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (shadd): Create shadd insns, even if the result of the shift is
- needed without the addition.
-
-Sat Jan 16 10:48:16 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (movdf, movsf): Temporary workaround for no_new_pseudos lossage.
-
-Fri Jan 15 23:44:37 1999 Richard Henderson <rth@cygnus.com>
-
- * sparc.c (sparc_issue): Add hypersparc/sparclite86x entries.
-
-Fri Jan 15 22:30:04 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.h (CONST_OK_FOR_LETTER_P): Do not assume 32-bit CONST_INT.
- * rs6000.c (u_short_cint_operand, add_operand, logical_operand,
- non_add_cint_operand, non_logical_cint_operand): Likewise.
- (get_issue_rate): Add CPU_PPC604E case.
- * rs6000.md (movdi, !TARGET_POWERPC64 splitters): Handle 64-bit hosts.
-
-Fri Jan 15 18:42:12 1999 Richard Henderson <rth@cygnus.com>
-
- * expr.c (queued_subexp_p): Make public.
- * expr.h (queued_subexp_p): Declare it.
- * recog.c (asm_operand_ok): New function.
- (check_asm_operands): Use it. After reload, use constrain_operands
- instead.
- * recog.h (asm_operand_ok): Declare it.
- * stmt.c (expand_asm_operands): Use it to try harder to make
- asms initially satisfy their constraints.
-
-Fri Jan 15 17:43:59 1999 Jeffrey A. Law <law@rtl.cygnus.com>
-
- * sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Do not create
- (mem (lo_sum (...)) for TFmode unless TARGET_V9.
-
-Sat Jan 16 12:47:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (not_repeat_reg): Allow ldp instruction
- in delay slot of RPTBD.
-
-Sat Jan 16 12:26:40 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/libgcc.S (___divhi3, ___modhi3): Fix long long
- divide and modulo sign problem.
-
-Fri Jan 15 11:02:31 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * unroll.c (loop_iterations): Return 0 if the last loop insn
- is not a jump insn or if the loop has multiple back edges.
-
-1999-01-15 Manfred Hollstein <manfred@s-direktnet.de>
-
- * configure.in (fixinc_defs): Do not define for m[68]8k-motorola-sysv{,3};
- it's working properly now. Remove comment saying "see m68k-motorola-sysv
- as an example".
- * configure: Regenerate using autoconf.
-
- * fixinc/fixincl.c (main): Do not ignore SIGCHLD.
-
-Thu Jan 14 22:38:41 1999 Jeffrey A Law (law@cygnus.com)
-
- * unroll.c (find_splittable_givs): For a DEST_ADDR giv, do not share
- a register with another DEST_ADDR giv if the address is not valid.
-
- * pa.c (hppa_expand_epilogue): Save and restore the static chain
- around the call to mcount.
-
- * h8300.h (ASM_OUTPUT_LABELREF): Use asm_fprintf, not fprintf.
-
- * stmt.c (expand_end_case): Use emit_cmp_and_jump_insns to avoid
- generating non-canonical rtl.
-
-1999-01-14 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * config/i960/i960.c (i960_output_move_double_zero,
- i960_output_move_quad_zero): New functions for moving zeros.
- (i960_output_move_double, i960_output_move_quad): Additional code
- for situation when moving unaligned register group.
-
- * config/i960/i960.h (i960_output_move_double_zero,
- i960_output_move_quad_zero): The function definitions.
-
- * config/i960/i960.md (movdi+1, movti+1): Usage of the functions.
-
-1999-01-13 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * config/i960/i960.c (i960_function_prologue): New code (optimal
- solution) for saving global registers in local registers.
- (form_reg_groups, reg_group_compare, split_reg_group): New
- functions used by the code.
- (reg_group): New structure definition for the new code.
-
-1999-01-13 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fixinc/fixincl.c (create_file): Pass file creation mask as
- third parameter to "open". Use O_TRUNC flag to open instead of
- explicitly unlink'ing the file.
- (process): and forget about the "chmod" stuff.
-
-Wed Jan 13 20:12:37 1999 Richard Henderson <rth@cygnus.com>
-
- * integrate.c (expand_inline_function): Recognize (mem (addressof))
- and substitute. Copy the return value from there into a new pseudo.
-
-Wed Jan 13 16:47:00 1999 Catherine Moore <clm@cygnus.com>
-
- * config/arm.c (output_func_epilogue): Check TARGET_ABORT_NORETURN
- before generating a call to abort for volatile functions.
- * config/arm.h (ARM_FLAG_ABORT_NORETURN): Define.
- (TARGET_ABORT_NORETURN): Define.
- (abort-on-noreturn): New option.
-
-Thu Jan 14 13:52:42 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (in_annul_slot_3): Correctly allow unarycc
- and binarycc operations in 3rd annulled delay slot!
-
-Wed Jan 13 16:16:44 1999 Catherine Moore <clm@cygnus.com>
-
- * config/arm.c (output_func_epilogue): Check TARGET_ABORT_NORETURN
- before generating a call to abort for volatile functions.
- * config/arm.h (ARM_FLAG_ABORT_NORETURN): Define.
- (TARGET_ABORT_NORETURN): Define.
- (abort-on-noreturn): New option.
-
-Wed Jan 13 13:30:08 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cccp.c (xstrdup): Renamed from `savestring'. All callers changed.
- Remove prototype which we get from libiberty.h.
-
- * collect2.c (xstrdup): Likewise.
-
- * genextract.c (xstrdup): Likewise for `copystr'.
- (mybzero): Remove it and use `memset' instead.
-
- * genoutput.c (mybcopy, mybzero): Remove these. All callers changed
- to use `memcpy' and `memset' instead.
-
- * genrecog.c (xstrdup): Renamed from `copystr'. All callers
- changed. Remove prototype.
- (mybcopy, mybzero): Remove these and use memcpy/memset.
-
-Wed Jan 13 00:59:04 1999 Jeffrey A Law (law@cygnus.com)
-
- * mips.h (LOAD_EXTEND_OP): Correct for SImode and CCmode moves when
- generating code for TARGET_64BIT.
-
-Tue Jan 12 14:05:37 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (print_operand, cases 'm' and 'M'): Do not depend on
- HOST_WIDE_INT word-size.
- (rs6000_stack_info): Remove redundant alignment of fpmem.
-
-Tue Jan 12 14:05:37 1999 Richard Henderson <rth@cygnus.com>
-
- * rs6000.c (short_cint_operand): Remove CONSTANT_P_RTX handling.
- (u_short_cint_operand, reg_or_cint_operand, logical_operand): Likewise.
- (input_operand): Adjust CONSTANT_P_RTX handling.
- * rs6000.h (PREDICATE_CODES): Remove CONSTANT_P_RTX references.
- * rs6000.md (movsi): Adjust CONSTANT_P_RTX handling.
- (movhi, movqi): Remove CONSTANT_P_RTX handling.
- (movdi): Adjust CONSTANT_P_RTX handling.
-
-1999-01-12 Manfred Hollstein <manfred@s-direktnet.de>
-
- * configure: Regenerate using autoconf.
-
- * fixinc/Makefile.in (INCLUDES): Add -I$(srcdir)/../../include.
- * fixinc/fixincl.c (SIGCHLD): Use SIGCLD on (very) old systems.
- (process): "fchmod" isn't available on all systems, use "chmod"
- instead.
- * fixinc/server.c: Add #include <sys/types.h>.
- (STDIN_FILENO): Add default definition if no include file defines
- it already.
- (STDOUT_FILENO): Likewise.
-
-Tue Jan 12 10:23:24 1999 Stan Cox <scox@cygnus.com>
-
- * mips.md (call_value_internal3c): New pattern for -mips16 -mlong-calls.
-
-1999-01-12 Manfred Hollstein <manfred@s-direktnet.de>
-
- * m68k/mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
- ensure all prototypes necessary for building libio will be available.
- * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Remove
- definitions here as they are not host specific.
- * m88k/sysv3.h, m88k/xm-sysv3.h: Likewise.
-
-Tue Jan 12 02:53:46 1999 Richard Henderson <rth@cygnus.com>
-
- * cse.c (cse_insn): Never prefer (const (constant_p_rtx)).
-
-Tue Jan 12 02:36:10 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Tue Jan 12 01:30:19 1999 Richard Henderson <rth@cygnus.com>
-
- * rtl.c (rtx_alloc): Use memset instead of inline loop.
-
- * recog.h (recog_op_alt): Declare extern.
-
-Tue Jan 12 00:23:31 1999 Richard Henderson <rth@cygnus.com>
-
- * function.c (purge_addressof_1): If the note accesses a mem+addressof
- in a wider mode than any replacement, adjust the cached replacement.
- Cache trivial substitutions as well.
-
-Tue Jan 12 00:06:00 1999 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (OBJECTS): Add sbitmap.o.
- (BASIC_BLOCK_H): Add sbitmap.h.
- * basic-block.h: Move simple bitmap code to sbitmap.h.
- * flow.c: Move simple bitmap code to sbitmap.c.
- * sbitmap.h, sbitmap.c: New files.
-
-Mon Jan 11 23:51:50 1999 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (TARGET_SWITCHES): Document switches.
- (TARGET_OPTIONS): Likewise.
-
- * alpha/elf.h (ASM_FINISH_DECLARE_OBJECT): Use HOST_WIDE_INT_PRINT_DEC.
-
-Mon Jan 11 22:54:14 1999 Richard Henderson <rth@cygnus.com>
-
- * tree.c (new_alias_set): Return zero if !flag_strict_aliasing.
-
-Mon Jan 11 22:36:01 1999 Richard Henderson <rth@cygnus.com>
-
- * basic-block.h (basic_block_head): Rename to x_basic_block_head.
- (basic_block_end): Rename to x_basic_block_end.
- (BLOCK_HEAD, BLOCK_END): Update.
-
- * caller-save.c: Change basic_block_head/end references to
- BLOCK_HEAD/END.
- * combine.c, flow.c, function.c, gcse.c, global.c: Likewise.
- * graph.c, haifa-sched.c, local-alloc.c, regclass.c: Likewise.
- * regmove.c, reload1.c, reorg.c, sched.c: Likewise.
-
-Sat Jan 9 23:54:09 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcc.c (xstrerror): Renamed from my_strerror. All callers
- changed. Remove prototype since we get that from libiberty.h.
-
- * protoize.c (xstrerror): Likewise.
-
-Sat Jan 9 23:22:04 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcc.c (read_specs): Ensure format specifiers match their arguments.
-
-Sat Jan 9 20:04:24 1999 Richard Henderson <rth@cygnus.com>
-
- * tree.c (copy_node): Oops. That would be copy not zero
- in that last change.
-
-Sun Jan 10 15:35:41 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c: Include system.h.
- (c4x_caller_save_map): Disable caller save for RC.
- (c4x_optimization_options): Disable scheduling before reload.
- (valid_parallel_load_store) : Define return type as int.
- Remove unused variable regs.
- * config/c4x/c4x.h (REGISTER_MOVE_COST): Make independent of register
- class.
- * config/c4x/c4x.md (rotlqi3, rotrqi3): Fix up emitted RTL to
- handle rotations.
- (*db, decrement_and_branch_until_zero): Fix up constraints
- to keep reload happy.
-
-Sat Jan 9 18:35:29 1999 Richard Henderson <rth@cygnus.com>
-
- * tree.c (make_node): Call bzero instead of inline clear.
- (copy_node, make_tree_vec, build1): Likewise.
- (get_identifier): Call strlen instead of inline count.
- (maybe_get_identifier): Likewise.
-
-Sun Jan 10 14:04:51 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (in_annul_slot_3): Allow unarycc and binarycc
- operations in 3rd annulled delay slot.
- (*lshrqi3_const_set): Disallow c constraint for operand0.
- (modhi3+1, modhi3+2): Set attribute type to multi.
- * config/c4x/c4x.c (c4x_S_constraint): Removed space in middle of
- != operator.
-
-Sat Jan 9 11:44:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gansidecl.h: Allow attribute unused on labels only when we are
- version 2.93 or higher. Not all versions of 2.92 have this feature.
-
- * version.c: Bump minor number to 93.
-
-Fri Jan 8 10:51:13 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * config/m68k/m68k.h: Declare output_function_epilogue.
- * recog.h: Declare next_insn_tests_no_inequality.
-
-Fri Jan 8 01:43:53 1999 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (optimize_tail_recursion): New function, extracted from ...
- (expand_return): Use optimize_tail_recursion.
- * tree.h (optimize_tail_recursion): Declare.
-
- * toplev.c (compile_file): Move call to output_func_start_profiler
- to after the loop to emit deferred functions.
-
-Thu Jan 7 19:52:53 1999 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * system.h (abort): Supply more detailed information on how to
- report an Internal Compiler Error.
-
-Thu Jan 7 09:25:58 1999 Bruce Korb (korb@datadesign.com)
-
- * fixinc/fixincl.c (*): More decapitalization of variables
- plus some explanatory comments.
-
- * fixinc/Makefile.in fixinc/mkfixinc.sh:
- When the fixincl program does not work for a certain system,
- we substitute a shell script. Added user commentary when
- this happens.
-
-Thu Jan 7 11:26:17 1999 Mark Mitchell <mark@markmitchell.com>
-
- * calls.c (store_unaligned_arguments_into_pseudos): Use xmalloc to
- allocate memory that will live beyond this function.
- (expand_call): Free it here.
-
-Thu Jan 7 03:08:17 1999 Richard Henderson <rth@cygnus.com>
-
- * sparc.h (PREFERRED_RELOAD_CLASS): Select GENERAL_REGS for
- integer data not destined for fp regs.
- (LEGITIMIZE_RELOAD_ADDRESS): New.
-
-Thu Jan 7 03:03:42 1999 Stan Cox <scox@cygnus.com>
- Richard Henderson <rth@cygnus.com>
-
- Support for HyperSPARC and SPARClite86x:
- * sparc.h (TARGET_CPU_hypersparc, TARGET_CPU_sparclite86x): New.
- (CPP_CPU32_DEFAULT_SPEC): Fix up for the new targets.
- (ASM_CPU32_DEFAULT_SPEC): Likewise.
- (TARGET_CPU_DEFAULT): Likewise.
- (enum processor_type): Likewise.
- (CPP_ENDIAN_SPEC): Handle little endian data.
- (LIBGCC2_WORDS_BIG_ENDIAN): Likewise.
- (ADJUST_COST): Call sparc_adjust_cost.
- * sparc.c (sparc_override_options): Fix up for the new targets.
- (supersparc_adjust_cost): Make static.
- (hypersparc_adjust_cost): New.
- (ultrasparc_adjust_cost): Make static.
- (sparc_adjust_cost): New.
- * sparc.md (attr cpu): Add hypersparc and sparclite86x.
- (function_unit): Add hypersparc scheduling rules.
-
- * configure.in (with_cpu handler): Recognize hypersparc.
-
-Thu Jan 7 23:54:05 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c: Added space after negation operator.
- * config/c4x/c4x.h: Likewise.
- * config/c4x/c4x.md: Likewise.
-
-Thu Jan 7 23:39:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_preferred_reload_class): Always return class.
-
-Thu Jan 7 00:29:25 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
-
- * combine.c (num_sign_bit_copies): In NEG, MULT, DIV and MOD cases,
- when a test can't be performed due to limited width of
- HOST_BITS_PER_WIDE_INT, use the more conservative approximation.
- Fix UDIV case for cases where the first operand has the highest bit
- set.
-
-Thu Jan 7 00:01:38 1999 Lutz Vieweg <lkv@mania.robin.de>
-
- * pa.h (reg_class): Add FPUPPER_REGS.
- (REG_CLASS_NAMES): Similarly.
- (REG_CLASS_CONTENTS): Similarly.
- (REGNO_REG_CLASS): Handle FPUPPER_REGS.
- (FP_REG_CLASS_P): Likewise.
- (REG_CLASS_FROM_LETTER): Similarly.
- (CLASS_MAX_NREGS): Similarly.
-
-1999-01-06 Brendan Kehoe <brendan@cygnus.com>
-
- * fixincludes: For HP/UX 10.20, also look in curses_colr/curses.h
- for a typedef of bool. Make sure to have a copy of the file is
- in place before we look to fix it. Fix typo in variable name to
- FILE.
-
-Wed Jan 6 07:51:05 1999 Richard Henderson <rth@cygnus.com>
-
- * expr.c (expand_builtin) [case BUILT_IN_CONSTANT_P]: Use
- value_mode for the return mode.
-
-Wed Jan 6 17:55:19 1999 Robert Lipe <robertlipe@usa.net>
-
- * configure.in: New flag --with-dwarf2. If set, enables DWARF-2
- debugging as default.
-
- * config/tm-dwarf2.h: New file.
-
-Wed Jan 6 16:08:54 1999 Jeffrey A Law (law@cygnus.com)
-
- * h8300.h (ASM_OUTPUT_LABELREF): Define.
-
- * pa.h (DONT_RECORD_EQUIVALENCE): Kill.
- * local-alloc.c (update_equiv_regs): Corresponding changes.
- * tm.texi (DONT_RECORD_EQUIVALENCE): Kill.
-
- * calls.c (special_function_p): Push alloca test inside the large
- conditional which excludes functions not at file scope or not
- extern.
-
- * calls.c (special_function_p): New function broken out of
- expand_call.
- (precompute_register_parameters): Likewise.
- (store_one_arg): Likewise.
- (store_unaligned_argumetns_into_pseudos): Likewise.
- (save_fixed_argument_area): Likewise.
- (restore_fixed_argument_area): Likewise.
- (expand_call): Corresponding changes.
-
-Thu Jan 7 00:12:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (addqi3): If the destination operand is
- a hard register other than an extended precision register,
- emit addqi3_noclobber.
- (*addqi3_noclobber_reload): New pattern added so that reload
- will recognize a store of a pseudo, equivalent to the sum
- of the frame pointer and a constant, as an add insn.
-
-1999-01-06 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fixinc/fixincl.c: Re-indent according to the GNU standards.
- fixinc/server.c: Likewise.
- fixinc/server.h: Likewise.
-
-Wed Jan 6 10:43:29 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
-
- * config/m68k/m68k.c (const_uint32_operand): Remove CONSTANT_P_RTX
- handling.
- (const_sint32_operand): Likewise.
-
-Wed Jan 6 09:44:51 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * toplev.h: In addition to checking _JBLEN, also check if `setjmp'
- is a macro when deciding if we can use `jmp_buf' in prototypes.
-
-Wed Jan 6 03:18:53 1999 Mark Elbrecht <snowball3@usa.net>
-
- * configure.in (pc-msdosdjgpp): Set x_make to x-go32.
- * configure: Rebuilt.
- * i386/xm-go32.h: Define LIBSTDCXX.
- * i386/x-go32: New.
- * i386/go32.h (MD_EXEC_PREFIX): Define.
- (FILE_NAME_ABSOLUTE_P): Define.
- (LINK_COMMAND_SPEC): Define.
-
-Wed Jan 6 02:23:36 1999 "Charles M. Hannum" <root@ihack.net>
-
- * expr.c (store_expr): If the lhs is a memory location pointed
- to be a postincremented (or postdecremented) pointer, always
- force the rhs to be evaluated into a pseudo.
-
-Wed Jan 6 00:54:21 1999 Geoff Keating <geoffk@ozemail.com.au>
-
- * real.c (mtherr): Print more reasonable warning messages.
-
-Tue Jan 5 21:57:42 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (gcc.o, prefix.o, cccp.o, cpplib.o): Depend on prefix.h.
-
- * cccp.c: Include prefix.h, don't prototype prefix.c functions.
- (new_include_prefix): Constify char* parameters.
-
- * cppfiles.c (read_name_map): Likewise.
- (append_include_chain): Likewise. Also, use a writable char* copy
- of parameter `dir' which we then modify, rather than using the
- parameter itself to store the new writable string.
- (remap_filename): Constify some variables. Also, use a writable
- char* to store an allocated string which we will be modifying.
-
- * cpplib.c: Include prefix.h, don't prototype prefix.c functions.
- (cpp_start_read): Constify variable `str'.
-
- * cpplib.h (append_include_chain): Constify a char* parameter.
-
- * gcc.c Include prefix.h, don't prototype prefix.c functions.
- (add_prefix, save_string): Constify char* parameters.
- (fatal, error): Add ATTRIBUTE_PRINTF_1 to prototypes.
-
- * prefix.c: Include prefix.h.
- (get_key_value, translate_name, save_string, update_path,
- set_std_prefix): Constify various char* parameters and variables.
- (save_string): Use xmalloc, not malloc.
- (translate_name): Use a writable temporary variable to create and
- modify a string before setting it to a const char*.
-
- * prefix.h: New file to prototype functions exported from prefix.c.
-
-Tue Jan 5 08:52:18 1999 Bruce Korb (korb@datadesign.com)
-
- * fixinc/fixincl.c (various): Added debug code so
- Manfred can trace the processing.
-
- * fixinc/inclhack.def (sys/utsname.h): Provide forward declaration of
- struct utsname on Ultrix V4.[35].
-
- * fixinc/{fixincl.x|fixincl.sh|inclhack.sh} : Regenerated.
-
-Mon Jan 4 15:37:30 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
-
- * cpplib.c (skip_if_group): Split out the logic that handles
- directive recognition to its own function. Don't use
- parse markers; use a bare pointer into the buffer. Use
- copy/skip_rest_of_line instead of doing it by hand. Remove
- `return on any directive' mode which was never used, and take
- only one argument.
- (consider_directive_while_skipping): New function, subroutine
- of skip_if_group. Logic streamlined a bit.
- (conditional_skip, do_elif, do_else): Call skip_if_group with
- only one argument.
-
-Mon Jan 4 15:27:30 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
-
- * cpplib.c (do_undef): EOF immediately after '#undef FOO' is not an
- error.
-
-Mon Jan 4 11:55:51 1999 Jason Merrill <jason@yorick.cygnus.com>
-
- * extend.texi (Bound member functions): Document.
-
-Mon Jan 4 11:01:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips-tdump.c (st_to_string, sc_to_string, glevel_to_string,
- lang_to_string, type_to_string): Make return type const char*.
- (print_symbol): Apply `const' keyword to a char*.
- (print_file_desc): Cast structure member `crfd' to ulong when
- comparing against one.
-
- * mips-tfile.c (pfatal_with_name): Apply `const' keyword to char*.
- (fatal, error): Add ATTRIBUTE_PRINTF_1 to prototypes.
- (progname, input_name): Apply `const' keyword to a char*.
- Don't redundantly include sys/stat.h.
- (alloc_info): Apply `const' keyword to a char*.
- (st_to_string, sc_to_string): Likewise.
- (hash_string): Cast variable `hash_string' to a symint_t when
- comparing against one.
- (add_string): Cast PAGE_USIZE to Ptrdiff_t when comparing against one.
- Likewise cast it to long when comparing against one.
- (add_local_symbol): Apply `const' keyword to a char*.
- (add_ext_symbol): Likewise.
- (add_unknown_tag): Likewise.
- (add_procedure): Cast a printf-style field width to an int.
- (add_file): Cast PAGE_USIZE to long when comparing against one.
- (parse_begin): Cast a printf-style field width to an int.
- (parse_bend): Likewise.
- (parse_def): Likewise.
- (parse_end): Likewise.
- (mark_stabs): Mark parameter `start' with ATTRIBUTE_UNUSED.
- (parse_stabs_common): Fix format specifier.
- (parse_input): Change type of variable `i' to Size_t.
- (write_object): Fix arguments to match format specifiers.
- Cast variable `num_write' to long when comparing against one.
- (read_seek): Cast variable `sys_read' to symint_t when comparing
- against one. Fix arguments to match format specifiers. Cast
- variable `size' to long when comparing against one.
- (copy_object): Cast result of `sizeof' to int when comparing
- against one. Fix arguments to match format specifiers. Cast
- variable `ifd' to long when comparing against a signed value.
- Likewise, likewise.
-
-Mon Jan 4 10:30:33 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c (decl_attributes): Allow applying attribute `unused'
- on a LABEL_DECL.
-
- * c-parse.in (label): Parse attributes after a label, and call
- `decl_attributes' to handle them.
-
- * gansidecl.h (ATTRIBUTE_UNUSED_LABEL): Define.
-
- * genrecog.c (OUTPUT_LABEL, write_tree_1, write_tree): When
- generating labels, mark them with ATTRIBUTE_UNUSED_LABEL.
-
- * invoke.texi: Note that labels can be marked `unused'.
-
-Sun Jan 3 23:32:18 1999 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Jan 3 23:00:42 1999 Jeffrey A Law (law@cygnus.com)
-
- * optabs.c (emit_cmp_and_jump_insns): Use CONSTANT_P canonicalizing
- RTL for a compare/jump sequence.
-
-Sun Jan 3 22:58:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * optabs.c (emit_cmp_insn): Abort if asked to emit non-canonical RTL
- for a target with HAVE_cc0 defined.
- (emit_cmp_and_jump_insns): New function.
- * expr.h (emit_cmp_and_jump_insns): Prototype it.
- * loop.c (check_dbra_loop): Use it to replace calls
- to emit_cmp_insn and emit_jump_insn and to canonicalize
- the comparison if necessary.
- * unroll.c (unroll_loop): Likewise.
-
-Sun Jan 3 21:01:04 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixincludes (sys/utsname.h): Provide forward declaration of
- struct utsname on Ultrix V4.[35].
-
- * mips.md (div_trap): Use local labels instead of dot-relative
- branches.
-
-Sun Jan 3 20:40:34 1999 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (branch, negated branch): Handle (const_int 0) as first
- source operand.
- * pa.c (output_cbranch): Likewise.
-
-Sun Jan 3 03:20:38 1999 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (rs6000_stack_info): Undo spurious part of last
- change.
-
-1999-01-01 Manfred Hollstein <manfred@s-direktnet.de>
-
- * extend.texi (__builtin_constant_p): Add missing @smallexample.
-
-Fri Jan 1 11:48:20 1999 Jeffrey A Law (law@cygnus.com)
-
- * i386.md (doubleword shifts): Fix dumb mistakes in previous change.
-
Wed Dec 30 23:38:55 1998 Jeffrey A Law (law@cygnus.com)
* m68k.md (adddi_dilshr32): Allow all operands to be registers too.
@@ -10664,7 +3345,7 @@ Fri Oct 23 04:06:57 1998 Richard Earnshaw (rearnsha@arm.com)
* machmode.h (mode_mask_array): No longer const.
* rtl.c (init_rtl): Fully initialize it if EXTRA_CC_MODES defined.
-Fri Oct 23 11:19:06 1998 Martin v. Löwis <loewis@informatik.hu-berlin.de>
+Fri Oct 23 11:19:06 1998 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* frame.c: Somewhat explain `FDE'.
Suggested by Brendan Kehoe
@@ -13439,7 +6120,7 @@ Thu Sep 10 08:01:31 1998 Anthony Green <green@cygnus.com>
* config/rs6000/rs6000.c (output_epilog): Add Java support.
-Thu Sep 10 14:48:59 1998 Martin von Löwis <loewis@informatik.hu-berlin.de>
+Thu Sep 10 14:48:59 1998 Martin von Löwis <loewis@informatik.hu-berlin.de>
* invoke.texi (C++ Dialect Options): Document -fhonor-std.
@@ -15896,8 +8577,9040 @@ Tue Jul 14 03:02:44 1998 Jeffrey A Law (law@cygnus.com)
* version.c: Bump again to distinguish mainline tree from the
egcs-1.1 branch.
-See ChangeLog.0 for earlier changes.
+Tue Jul 14 02:20:38 1998 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump to avoid problems with old spec files during
+ bootstrap.
+
+Mon Jul 13 23:11:44 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.c (output_scc_insn): Enclose || conditions in
+ parens while walking over notes.
+ * config/sparc/sparc.md (reg movdi split): Clean up matching
+ conditions.
+ (all DI arithop splits on 32-bit): Handle immediate arguments
+ correctly when they are CONST_INTs.
+
+Mon Jul 13 23:57:21 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
+
+ * m68k/m68k.h (TARGET_SWITCHES): Clear MASK_68040_ONLY for
+ -m68020-40, -m68020-60 and -m5200.
+
+Mon Jul 13 23:52:05 1998 Weiwen Liu <weiwen.liu@yale.edu>
+
+ * gcc.c (do_spec_1): Fix %O handling for secure temporary file
+ creation.
+
+Mon Jul 13 23:42:36 1998 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * sh/elf.h (MAX_OFILE_ALIGNMENT): Undefine before including svr4.h.
+
+Mon Jul 13 23:36:08 1998 Jim Wilson <wilson@cygnus.com>
+
+ * i386/i386.h (CPP_486_SPEC, CPP_586_SPEC, CPP_686_SPEC): New specs.
+ (CPP_CPU_DEFAULT_SPEC, CPP_CPU_SPEC): Use them.
+ (EXTRA_SPECS): Support them.
+ * gcc.c: Delete %[spec] support.
+ (do_spec_1, case '('): Likewise.
+ (do_spec_1, case '['): Call error.
+ * i386/aix386ng.h, cygwin32.h, freebsd-elf.h, gas.h, isc.h,
+ linux-aout.h, linux-oldld.h, linux.h, osfelf.h, osfrose.h, sco.h,
+ sco4.h, sco4dbx.h, sco5.h, sol2.h, sysv3.h (CPP_SPEC): Delete
+ %[cpp_cpu].
+
+Mon Jul 13 23:31:04 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * m68k.c (output_scc_di): Use cmpw #0 only for address registers.
+
+Mon Jul 13 23:26:43 1998 Jeffrey A Law (law@cygnus.com)
+
+ * tree.h (tree_common): Note front-end dependencies on layout of
+ this structure.
+
+Mon Jul 13 23:18:39 1998 Craig Burley <burley@gnu.org>
+
+ * stmt.c (expand_expr_stmt): If not assigning fresh
+ value to last_expr_value, zero it, so old garbage
+ doesn't get dereferenced.
+
+Mon Jul 13 23:06:55 1998 Henning.Petersen@t-online.de (Henning Petersen)
+
+ * gcse.c (hash_scan_insn): Add missing argument declaration.
+
+Mon Jul 13 18:59:13 1998 Jim Wilson <wilson@cygnus.com>
+
+ * configure.in (mips-sgi-irix5cross64, mips-sgi-irix5*): Remove
+ HAVE_INTTYPES_H from xm_defines. Define xm_file to mips/xm-iris5.h.
+ * mips/xm-iris5.h (USG): Delete.
+
+Mon Jul 13 17:18:47 1998 Nick Clifton <nickc@cygnus.com>
+
+ * cccp.c (main): Add support for parsing --help.
+ (display_help): New function: display command line switches.
+
+ * cpplib.c (cpp_handle_option): Add support for parsing --help.
+ (display_help): New function: display command line switches.
+
+ * gcc.c (main): Add support for parsing --help, and passing it on
+ to the sub-processes invoked by gcc.
+ (display_help): New function: display command line switches.
+
+ * tm.texi (TARGET_SWITCHES and TARGET_OPTIONS): Document
+ 'description' field added to structure.
+
+ * toplev.c: Add support for parsing --help.
+ Add documentation strings to command line option tables.
+ (display_help): New function: display comman line switches.
+
+Mon Jul 13 16:15:10 1998 John Carr <jfc@mit.edu>
+
+ * sparc.c, sparc.h, sparc.md: New trampoline code.
+ Allow integer operand 1 to V8+ DImode shift instructions.
+ Fix bugs in V8+ wide multiply patterns.
+ In 32 bit mode, split DImode register moves and logical instructions.
+ Write V9 branch prediction flag.
+ Use V9 conditional move more often for scc.
+
+Mon Jul 13 15:10:09 1998 Philippe De Muyter <phdm@macqel.be>
+
+ * invoke.texi(-fno-builtin): Explain that the names of built-in
+ functions begin with `__builtin_', not `__'.
+
+Mon Jul 13 19:01:52 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_reg_free_before_p): Abort for RELOAD_FOR_OUTPUT.
+
+Mon Jul 13 10:50:17 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * cplus-dem.c (SCOPE_STRING): Remove DMGL_JAVA stuff.
+ (cplus_demangle_opname): Initialize work.
+ (demangle_template): Remove is_java_array.
+ (do_type): Remove DMGL_JAVA stuff.
+ (long_options): Remove "java".
+ (main): Remove 'j' option.
+
+Mon Jul 13 10:19:00 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.h (REG_CLASS_FROM_LETTER): Map 'y' to SP_REGS.
+ Handle 'x' as NO_REGS for this cpu.
+ (REGNO_OK_FOR_BIT_BASE_P): Define.
+ (REG_OK_FOR_BIT_BASE_P): Define.
+ (GO_IF_LEGITIMATE_ADDRESS): Use them.
+ (REG_OK_FOR_INDEX_P): Tweak.
+ * mn13000.c (REG_SAVE_BYTES): Define.
+ (expand_epilogue, initial_offset): Use it.
+ (secondary_reload_class): Slightly reformat.
+ (output_tst): Tweak comments.
+ * mn10300.md: Change 'x' to 'y' for SP_REGS. Then add 'x' to many
+ patterns.
+ (addsi3): Turn into a define_expand/define_insn pair. Rework code for
+ three operand addition case to be more efficient.
+ (subsi3): Turn into a define_expand/define_insn pair.
+
+ * expr.c (expand_expr): Only set MEM_IN_STRUCT_P if the memory address
+ is not varying for REFERENCE_TYPE or when we think we might have found
+ an optimized access to the first element in an array.
+
+Mon Jul 13 02:24:08 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * regclass.c (reg_scan_mark_refs): New arg min_regno. Only update
+ regscan information for REGs with numbers greater than or equal to
+ this. All callers changed.
+ (reg_scan_update): New function to efficiently update regscan
+ information on the fly.
+ * rtl.h: Add prototype.
+ * jump.c (jump_optimize): Call it when we make a transformation
+ which generates new pseudo-REGs.
+
+Sun Jul 12 13:08:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * collect2.c (main): Use "-x c" instead of "-lang-c" for force the
+ compiler into C mode.
+
+Sun Jul 12 01:27:05 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * cplus-dem.c (demangle_nested_args): Return a value.
+
+ * tree.h (TYPE_P): New macro.
+
+Sat Jul 11 16:19:48 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * cplus-dem.c (string): Move definition before work_stuff.
+ (work_stuff): Add volatile_type, forgetting_types,
+ previous_argument, and nrepeats fields.
+ (SCOPE_STRING): New macro.
+ (demangle_template): Add `remember' parameter. Add comment.
+ Register the `B' code type here, if remembering. Tidy. Fix crash
+ on NULL tmpl_argvec. Be consistent with use of tname/trawname.
+ (demangle_nested_args): New function.
+ (internal_cplus_demangle): Handle volatile-qualified member
+ functions.
+ (mop_up): Delete the previous_argument string if present.
+ (demangle_signature): Tidy. Handle volatile-qualified member
+ functions. Handle back-references using the `B' code. Use extra
+ parameter to demangle_template and SCOPE_STRING where appropriate.
+ (demangle_template_value_parm): Fix thinko; 'B' is not an integral
+ code.
+ (demangle_class): Use SCOPE_STRING.
+ (gnu_special): Pass additional argument to demangle_template.
+ Use SCOPE_STRING.
+ (demangle_qualified): Save qualified types for later
+ back-references. Handle constructors and destructors for template
+ types correctly.
+ (do_type): Tidy. Use SCOPE_STRING. Pass extra argument to
+ demangle_template. Use demangled_nested_args. Don't remember
+ qualified types here; that's now done in demangle_qualified.
+ Similarly for templates.
+ (do_arg): Improve comment. Handle 'n' repeat code.
+ (remember_type): Check forgetting_types.
+ (demangle_args): Deal with 'n' repeat codes. Tidy.
+
+Sat Jul 11 02:59:08 1998 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (extendhisi2_mem, movhi, movhi_bytes): Propagate the volatile
+ and structure attribute flags to MEMs generated.
+ (splits for sign-extended HI & QI mode from memory): Also propagate
+ the volatile flag.
+
+ * configure.in (thumb-*-coff*): Don't cause fixincludes to be run.
+
+Fri Jul 10 19:06:59 1998 Michael Meissner <meissner@cygnus.com>
+
+ * varray.h: Include system.h if it hasn't already been included
+ before to get size_t declared.
+
+Fri Jul 10 12:53:58 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * jump.c (jump_optimize): If after_regscan and our transformations
+ generate new REGs, rerun reg_scan.
+
+Fri Jul 10 11:50:43 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * config/i960/i960.c (i960_address_cost): MEMA operands with
+ positive offsets < 4096 are free.
+
+Fri Jul 10 12:34:37 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * config/m68k/m68k.c (const_uint32_operand): Recognize
+ CONSTANT_P_RTX.
+ (const_sint32_operand): Likewise.
+
+Thu Jul 9 22:58:59 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (alias.o): Depend on $(EXPR_H).
+
+Thu Jul 9 18:24:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (choose_reload_regs): If using an equivalence from
+ find_equiv_reg and reg_reloaded_valid is not set for this register,
+ clear the associated spill_reg_store.
+
+Thu Jul 9 18:12:49 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (emit_reload_insns): If an output reload copies only
+ to a secondary reload register, indicate that the secondary reload
+ does the actual store.
+
+Thu Jul 9 18:01:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_equiv_reg): If need_stable_sp is set,
+ check if stack pointer is changed directly in a PARALLEL.
+
+Thu Jul 9 10:38:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * jump.c (duplicate_loop_exit_test): Fix thinko.
+
+Thu Jul 9 01:30:37 1998 Joel Sherrill <joel@OARcorp.com>
+ Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * config/i386/rtemself.h: Updated to keep in sync with
+ config/i386/linux.h.
+
+ * configure.in: Added sh-rtemself.
+ * configure: Rebuilt.
+ * config/sh/rtems.h: Removed -D__ELF__ since it is now COFF.
+ * config/sh/rtemself.h: New file.
+
+ * config/rs6000/rtems.h: Defined STARTFILE_DEFAULT_SPEC.
+
+Wed Jul 8 21:43:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Check if the assembler supports ".balign" and
+ ".p2align" and define HAVE_GAS_BALIGN_AND_P2ALIGN appropriately.
+ * acconfig.h (HAVE_GAS_BALIGN_AND_P2ALIGN): New tag.
+ * i386/gas.h (ASM_OUTPUT_ALIGN): If the assembler has support for
+ ".balign" then use it.
+
+ * print-rtl.c (print_rtx): Revert previous patch.
+
+ * jump.c (duplicate_loop_exit_test): Do not duplicate the loop exit
+ test if the exit code has an insn with ASM_OPERANDS.
+
+ * i386/cygwin32.h (STDIO_PROTO): Fix typo.
+ * m32r.h (STDIO_PROTO): Fix typo.
+
+ * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Handle addresses created by
+ LEGITIMIZE_RELOAD_ADDRESS.
+ * tm.texi (LEGITIMIZE_RELOAD_ADDRESS): Note that this macro must be
+ able to handle addresses created by previous invocations of the macro.
+
+ * flow.c (find_auto_inc): Remove most recent change. Real bug was
+ elsewhere.
+
+ * cse.c (count_reg_usage): Count registers used in addresses of
+ CLOBBERs.
+
+Wed Jul 8 15:08:29 1998 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (STAGESTUFF): Readd line lost during June 9 FSF merge.
+
+ * configure.in (mips64orion-*-rtems*): Use elf64.h not elfl64.h.
+
+1998-07-08 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/fp-bit.c (__gexf2, __fixxfsi, __floatsixf): Add function
+ stubs.
+
+ * toplev.c (lang_options): Add -Wlong-long, -Wno-long-long
+ options.
+ * c-decl.c (warn_long_long): Define.
+ (c_decode_option): Parse -Wlong-long, -Wno-long-long options.
+ (grokdeclarator): Add flag `warn_long_long' as guard for
+ warning "ANSI C does not support `long long'".
+ * invoke.texi: Add description of options -Wlong-long,
+ -Wno-long-long.
+ * gcc.1: The same as above.
+
+Wed Jul 8 02:43:34 1998 Jeffrey A Law (law@cygnus.com)
+
+ * rtlanal.c (reg_overlap_mentioned_p): Handle STRICT_LOW_PART. If
+ either argument is CONSTANT_P, then return zero.
+ * reload.c (reg_overlap_mentioned_for_reload_p): Similarly.
+
+ * configure.in: Also look at $srcdir/gas/configure to find a
+ gas version #.
+
+Wed Jul 8 00:28:22 1998 Carlo Wood <carlo@runaway.xs4all.nl>
+
+ * dsp16xx.h : Clean up of macro OPTIMIZATION_OPTIONS
+
+Tue Jul 7 21:18:14 1998 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * i386/cygwin32.h (ASM_DECLARE_FUNCTION_NAME): Merge duplicate
+ definitions from last two patches.
+
+Tue Jul 7 23:03:34 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (choose_reload_regs): Don't set reload_override_in
+ if EQUIV is clobbered in INSN and the reload is done after INSN.
+
+Tue Jul 7 21:23:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * expr.c (emit_queue): If emitting a SEQUENCE, set QUEUED_INSN
+ to the first insn of the sequence.
+
+Tue Jul 7 21:05:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * cse.c (cse_insn): Don't make change without validation.
+
+Tue Jul 7 11:40:05 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.md (various zero/sign extension patterns): Zero and sign
+ extensions which use "sub" clobber cc0.
+
+Tue Jul 7 09:12:08 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Tue Jul 7 10:07:20 1998 Jeffrey A Law (law@cygnus.com)
+
+ * print-rtl.c (print_rtx): Use REAL_VALUE_TYPE instead of "double".
+
+Tue Jul 7 08:41:27 1998 Richard Henderson (rth@cygnus.com)
+
+ * print-rtl.c (print_rtx): Only print fp values when REAL_VALUE_TYPE
+ is a double.
+
+Tue Jul 7 00:31:58 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Tue Jul 7 01:03:03 1998 Mumit Khan <khan@xraylith.wisc.edu>
+
+ Support for dllimport and dllexport attributes for i386-pe.
+
+ * tree.h (DECL_NON_ADDR_CONST_P): New accessor macro.
+ (struct tree_decl): Add non_addr_const_p field.
+ * tree.c (staticp): Use.
+
+ * i386/cygwin32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
+ attributes.
+ (SUBTARGET_SWITCHES): Switches to turn on/off dllimport|export
+ attributes. Also accept -mwindows option.
+ (VALID_MACHINE_DECL_ATTRIBUTE): New macro.
+ (MERGE_MACHINE_DECL_ATTRIBUTE): New macro.
+ (REDO_SECTION_INFO_P): New macro.
+ (DRECTVE_SECTION_FUNCTION): New macro.
+ (drectve_section): Cover function to implement above.
+ (SWITCH_TO_SECTION_FUNCTION): New macro.
+ (switch_to_section): Covert function to implement above.
+ (EXTRA_SECTIONS): Add in_drectve.
+ (EXTRA_SECTION_FUNCTIONS): Add in_drectve and switch_to_section.
+ (ENCODE_SECTION_INFO): Delete old macro and redefine as a function.
+ (STRIP_NAME_ENCODING): Handle new attributes.
+ (ASM_OUTPUT_LABELREF): New macro.
+ (ASM_OUTPUT_FUNCTION_NAME): New macro.
+ (ASM_OUTPUT_COMMON): New macro.
+ (ASM_OUTPUT_DECLARE_OBJECT_NAME): New macro.
+
+ * i386/mingw32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
+ attributes.
+
+ * i386/winnt.c (i386_pe_valid_decl_attribute_p): New function.
+ (i386_pe_merge_decl_attributes): New function.
+ (i386_pe_check_vtable_importexport): New function.
+ (i386_pe_dllexport_p): New function.
+ (i386_pe_dllimport_p): New function.
+ (i386_pe_dllexport_name_p): New function.
+ (i386_pe_dllimport_name_p): New function.
+ (i386_pe_mark_dllexport): New function.
+ (i386_pe_mark_dllimport): New function.
+ (i386_pe_encode_section_info): New function.
+ (i386_pe_unique_section): Strip encoding from name first.
+
+Tue Jul 7 00:50:17 1998 Manfred Hollstein (manfred@s-direktnet.de)
+
+ * libgcc2.c (L_exit): Provide a fake for atexit on systems which
+ define ON_EXIT but not HAVE_ATEXIT.
+
+Tue Jul 7 00:44:35 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * m68k.md (zero_extend QI to HI): Correctly handle TARGET_5200.
+
+Tue Jul 7 00:36:41 1998 Ulrich Drepper <drepper@cygnus.com>
+
+ * i386.c: Remove random whitespace at end of lines.
+
+ * i386.c (ix86_epilogue): For pentium processors, try to deallocate
+ 4 or 8 byte stacks with pop instructions instead of an add instruction.
+
+Tue Jul 7 00:30:08 1998 Klaus Kaempf <kkaempf@rmi.de>
+
+ * alpha.c: Include tree.h before expr.h.
+
+Mon Jul 6 22:50:48 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * c-parse.in (struct_head, union_head, enum_head): New nonterminals.
+ (structsp): Use them. Update files generated from c-parse.in.
+ * extend.texi (Type Attributes): Document it.
+
+ * c-decl.c: Add warn_multichar.
+ (c_decode_option): Handle -Wno-multichar.
+ * c-lex.c (yylex): Check it.
+ * c-tree.h: Declare it.
+ * toplev.c (lang_options): Add it.
+ * invoke.texi: Document it.
+
+Mon Jul 6 22:47:55 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_equiv_reg): When looking for stack pointer + const,
+ make sure we don't use a stack adjust.
+
+ * reload.c (find_equiv_reg): If need_stable_sp is set,
+ check if stack pointer is changed directly.
+
+ * reload1.c (delete_dead_insn): Don't delete feeding insn
+ if that insn has side effects.
+
+ * flow.c (find_auto_inc): Clear UNCHANGING bit of register that is
+ changed.
+
+ * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OPADDR_ADDR
+ precedes RELOAD_FOR_OUTADDR_ADDRESS.
+
+ * gcse.c (hash_scan_insn): New argument IN_LIBCALL_BLOCK. Changed
+ caller.
+
+Mon Jul 6 22:21:56 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
+
+ * m68k.c (output_scc_di): Use cmpw #0 instead of tstl when
+ testing address registers on the 68000.
+
+Mon Jul 6 22:17:19 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
+
+ * i386.c (is_fp_test): Fix thinko.
+
+ * jump.c (jump_optimize): Check for CONST_INT before using INTVAL.
+
+Mon Jul 6 22:14:31 1998 Richard Henderson (rth@cygnus.com)
+
+ * print-rtl.c (print_rtx): Display the real-value equivalent of
+ a const_double when easy.
+
+ * real.h (REAL_VALUE_TO_TARGET_SINGLE): Use a union to pun types.
+ Zero memory first for predictability.
+ (REAL_VALUE_TO_TARGET_DOUBLE): Likewise.
+ * varasm.c (immed_real_const_1): Notice width of H_W_I == double.
+
+ * regclass.c (allocate_reg_info): Initialize the entire reg_data
+ virtual array.
+
+Mon Jul 6 22:09:32 1998 Ian Lance Taylor <ian@cygnus.com>
+ Jeff Law <law@cygnus.com>
+
+ * i386/cygwin32.h: Add some declaration of external functions.
+ (ASM_DECLARE_FUNCTION_NAME): Define.
+ (ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
+ (ASM_FILE_END): Define.
+ * i386/winnt.c (i386_pe_declare_function_type): New function.
+ (struct extern_list, extern_head): Define.
+ (i386_pe_record_external_function): New function.
+ (i386_pe_asm_file_end): New function.
+
+ * cpplib.c (cpp_options_init): Initialize cplusplus_comments to 1,
+ matching July 18, 1995 change to cccp.c. If -traditional then
+ disable cplusplus_comments.
+
+Mon Jul 6 21:28:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * combine.c (expand_compound_operation): Fix thinko in code to optimize
+ (zero_extend:DI (subreg:SI (foo:DI) 0)) to foo:DI.
+
+ * Disable the following change from gcc2. Not appropriate for egcs:
+
+ Sun Jun 7 09:30:31 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ * reload.c (find_reloads): Give preference to pseudo that was the
+ reloaded output of previous insn.
+
+Mon Jul 6 21:07:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * aclocal.m4 (GCC_FUNC_PRINTF_PTR): Don't define HOST_PTR_PRINTF.
+ Instead, define a new macro HAVE_PRINTF_PTR which only signifies
+ whether we have the %p format specifier or not.
+
+ * acconfig.h: Delete stub for HOST_PTR_PRINTF, add HAVE_PRINTF_PTR.
+
+ * machmode.h (HOST_PTR_PRINTF): When determining the definition,
+ check HAVE_PRINTF_PTR to see whether "%p" is okay.
+
+ * mips-tfile.c: Include machmode.h to get HOST_PTR_PRINTF.
+
+ * Makefile.in (mips-tfile.o): Depend on machmode.h.
+
+Mon Jul 6 10:42:05 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * jump.c (duplicate_loop_exit_test): Don't refuse to copy a
+ section of code just because it contains
+ NOTE_INSN_BLOCK_{BEG,END}.
+ * stmt.c (expand_end_loop): Likewise. Also, don't refuse to
+ move CALL_INSNs or CODE_LABELs. When moving code, don't move
+ NOTE_INSN_BLOCK_{BEG,END}.
+
+Mon Jul 6 09:38:15 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * cse.c (CSE_ADDRESS_COST): New macro, based on ADDRESS_COST, but
+ dealing with ADDRESSOF.
+ (find_best_addr): Use it.
+
+Mon Jul 6 09:27:08 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha/vms.h (TRAMPOLINE_TEMPLATE): Revert last change.
+
+Mon Jul 6 09:25:06 1998 Dave Love <d.love@dl.ac.uk>
+
+ * libgcc2.c (__eprintf): Make args consistent with prototype in
+ assert.h.
+
+Mon Jul 6 00:28:43 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * cse.c (cse_insn): When SETting (MEM (ADDRESSOF (X))) to Y,
+ don't claim that the former is equivalent to the latter.
+
+Sun Jul 5 23:58:19 1998 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (cse_insn): Second arg is an RTX now. Update all callers.
+ (cse_basic_block): Keep track of the current RETVAL insn for a
+ libcall instead of just noting that we're in a libcall.
+
+ * combine.c (simplify_comparison): Do not commute a AND into
+ a paradoxical SUBREG if not WORD_REGISTER_OPERATIONS.
+
+ * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Protect with
+ HAVE_GAS_MAX_SKIP_P2ALIGN.
+ * i386/linux.h: Likewise.
+
+Fri Jul 3 02:33:35 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * sparc.c (sparc_operand, move_operand, arith_operand,
+ arith11_operand, arith10_operand, arith_double_operand,
+ arith11_double_operand, arith10_double_operand, small_int,
+ uns_small_int): Recognize CONSTANT_P_RTX.
+ (output_sized_memop, output_move_with_extension,
+ output_load_address, output_size_for_block_move,
+ output_block_move, delay_operand): Remove, has not been
+ enabled or referenced for years.
+ * sparc.md (movstrsi, block_move_insn): Likewise.
+ * sparc.h (PREDICATE_CODES): Define.
+ * linux-aout.h (MACHINE_STATE_{SAVE,RESTORE}): Override with
+ version which uses getcc/setcc traps to save/restore condition
+ codes.
+ * linux64.h: Likewise.
+ * sunos4.h: Likewise.
+ * linux.h: Likewise.
+ * sol2.h: Likewise.
+ * sun4o3.h: Likewise.
+
+Fri Jul 3 02:28:05 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_initialize_trampoline): Hack around Pmode/ptr_mode
+ lossage on VMS. Reported by kkaempf@rmi.de.
+ * alpha/vms.h (TRAMPOLINE_TEMPLATE): Add missing 0.
+
+Thu Jul 2 17:41:14 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.h (MUST_PASS_IN_STACK): Override default
+ version.
+
+Thu Jul 2 14:34:48 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * expr.h (STACK_SIZE_MODE): New macro.
+ * explow.c (allocate_dynamic_stack_space): Use it for
+ mode of allocate_stack pattern increment operand.
+ * tm.texi (STACK_SAVEAREA_MODE, STACK_SIZE_MODE): Document.
+ * md.texi (stack_save_block, ...): Reflect use of macro.
+
+ * rs6000.h (PROMOTE_MODE): Always promote to word_mode.
+ (PROMOTE_FUNCTION_ARGS): Define.
+ (PROMOTE_FUNCTION_RETURN): Define.
+ (FUNCTION_VALUE): Promote to word_mode if smaller.
+ Convert to gen_rtx_FOO.
+ * rs6000.md (call_indirect): Store doubleword in 64-bit mode.
+ Convert to gen_rtx_FOO.
+ * rs6000.c: Convert to gen_rtx_FOO.
+
+Thu Jul 2 14:16:11 1998 Michael Meissner <meissner@cygnus.com>
+
+ * varray.{c,h}: New files to provide virtual array support.
+
+ * Makefile.in (OBJS): Add varray.o.
+ (varray.o): Add new file.
+ (REGS_H): New variable for dependencies for files including
+ regs.h. Add varray.h and files it includes. Change all regs.h
+ dependencies to $(REGS_H).
+
+ * toplev.c (x{m,re}alloc): If size is 0, allocate 1 byte.
+ (xcalloc): Provide frontend for calloc.
+ * {tree,rtl}.h (xcalloc): Add declaration.
+
+ * basic-block.h (REG_BASIC_BLOCK): Convert reg_n_info to be a
+ varray.
+
+ * regs.h (toplevel): Include varray.h.
+ (reg_n_info): Switch to use a varray.
+ (REG_*): Likewise.
+ (allocate_reg_info): Change num_regs argument to be size_t.
+
+ * regclass.c (reg_info_data): New structure to remember groups of
+ reg_info structures allocated that are to be zeroed.
+ ({pref,alt}class_buffer): New statics to hold buffers
+ allocate_reg_info allocates for {pref,alt}class_buffer.
+ (regclass): Use {pref,alt}class_buffer to initialize
+ {pref,alt}class.
+ (allocate_reg_info): Switch to make reg_n_info use varrays.
+ Allocate buffers for the preferred and alter register class
+ information. Change num_regs argument to be size_t, not int.
+
+ * flow.c (reg_n_info): Switch to use varrays.
+
+Thu Jul 2 10:11:47 1998 Robert Lipe <robertl@dgii.com>
+
+ * install.texi (sco3.2v5): Document new --with-gnu-as flag.
+ * config/i386/sco5.h (JUMP_TABLES_IN_TEXT_SECTION): Defined as
+ in other targets.
+ (USE_GAS): Conditionalize away native assembler usage.
+ * config/i386/sco5gas.h: New file.
+ * config/i386/t-sco5gas: New file.
+ * configure.in (ix86-sco3.2v5*): Use new files if --with-gnu-as
+
+Thu Jul 2 08:20:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * haifa-sched.c (alloc_EXPR_LIST): Change to use
+ unused_expr_list.
+
+Thu Jul 2 14:13:28 1998 Dave Love <d.love@dl.ac.uk>
+
+ * Makefile.in (install-info): Don't use $realfile. Ignore
+ possible errors from the install-info program.
+
+Thu Jul 2 01:53:32 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
+
+ * combine.c (simplify_comparison): Apply SUBREG_REG to SUBREGs.
+
+Wed Jul 1 23:06:03 1998 Richard Henderson <rth@cygnus.com>
+
+ * i386.h (HARD_REGNO_MODE_OK): Kill spurious test.
+ (MODES_TIEABLE_P): Tie SImode and HImode.
+
+1998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
+
+ * invoke.texi (Optimize Options): Fix typo.
+
+Wed Jul 1 22:25:43 1998 Jim Wilson <wilson@cygnus.com>
+
+ * xcoffout.c (xcoffout_begin_function): Call xcoffout_block for
+ the zero'th block.
+
+Wed Jul 1 23:12:58 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * h8300.c (print_operand): Delete %L support.
+ * h8300.md (branch_true, branch_false): Use %= with a prefix
+ instead of %L for local branch labels.
+
+Wed Jul 1 21:27:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (emit_reload_insns): Use proper register classes for
+ SECONDARY_INPUT_RELOAD_CLASS / SECONDARY_MEMORY_NEEDED code.
+
+Wed Jul 1 21:17:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_reloads): If there are multiple
+ RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads for
+ one operand, change RELOAD_FOR_INPADDR_ADDRESS /
+ RELOAD_FOR_OUTADDR_ADDRESS for all but the first
+ RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads.
+
+Wed Jul 1 17:23:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (fixup_match_2): Check that P has RTX_CLASS 'i' before
+ using its PATTERN.
+
+Wed Jul 1 05:04:41 1998 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (emit_group_load, emit_group_store): Rewrite considering
+ the size and alignment of the structure being manipulated.
+ * expr.c, calls.c, function.c: Update all callers.
+ * expr.h: Update prototypes.
+ * cse.c (invalidate): Cope with parallels.
+
+Wed Jul 1 04:22:23 1998 Richard Henderson <rth@cygnus.com>
+
+ * sparc.c (function_arg_record_value): Take a MODE arg with which to
+ create the PARALLEL. Update all callers.
+
+Wed Jul 1 04:10:35 1998 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (expand_assignment, store_constructor, expand_expr): Use
+ convert_memory_address instead of convert_to_mode when possible.
+
+Wed Jul 1 03:48:00 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_initialize_trampoline): Take arguments describing
+ the layout. Use ptr_mode. Disable hint generation. Use gen_imb.
+ * alpha.h (INITIALIZE_TRAMPOLINE): Pass extra args to the init func.
+ (TRANSFER_FROM_TRAMPOLINE): Move ...
+ * alpha/osf.h: ... here.
+ * alpha/vms.h (INITIALIZE_TRAMPOLINE): Use alpha_initialize_trampoline.
+ (TRANSFER_FROM_TRAMPOLINE): Remove undef.
+ * alpha/win-nt.h: Likewise.
+ * alpha/vxworks.h: Likewise.
+
+ * alpha/linux.h: Revert gcc2 merge lossage.
+
+Wed Jul 1 10:56:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * c-decl.c (grokdeclarator): Don't warn about implicit int in
+ `typedef foo = bar'.
+
+Wed Jul 1 02:12:33 1998 Robert Lipe <robertl@dgii.com>
+
+ * i386.c (asm_output_function_prefix): Make 686 function
+ prologues not issue .types for non-global labels.
+
+Tue Jun 30 23:46:53 1998 Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
+
+ * i386/freebsd.h (WCHAR_TYPE): Chagne to an "int".
+ (WCHAR_TYPE_SIZE): Update appropriately.
+
+Tue Jun 30 23:16:39 1998 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (recompute_reg_usage): Does not return a value.
+ * rtl.h (recompute_reg_usage): Update prototype.
+
+ * jump.c (jump_optimize): Show that the jump chain is not
+ valid when not optimizing.
+
+Tue Jun 30 16:01:01 1998 Richard Henderson <rth@cygnus.com>
+
+ * rtl.def (CONSTANT_P_RTX): New.
+ * rtl.h (CONSTANT_P): Recognize it.
+ * cse.c (fold_rtx): Eliminate it.
+ * expr.c (can_handle_constant_p): New variable.
+ (init_expr_once): Initialize it.
+ (expand_builtin): Generate CONSTANT_P_RTX if the expression is not
+ immediately recognizable as a constant.
+
+ * alpha.c (reg_or_6bit_operand): Recognize CONSTANT_P_RTX.
+ (reg_or_8bit_operand, cint8_operand, add_operand): Likewise.
+ (sext_add_operand, and_operand, or_operand): Likewise.
+ (reg_or_cint_operand, some_operand, input_operand): Likewise.
+ * alpha.h (PREDICATE_CODES): Add CONSTANT_P_RTX where needed.
+
+1998-06-30 Benjamin Kosnik <bkoz@bliss.nabi.net>
+
+ * dbxout.c (dbxout_type_methods): Remove warn_template_debugging.
+
+Tue Jun 30 14:03:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * aclocal.m4 (GCC_NEED_DECLARATION): Accept an optional second
+ argument, which is typically preprocessor code used to draw in
+ additional header files when looking for a function declaration.
+ (GCC_NEED_DECLARATIONS): Likewise.
+
+ * configure.in (GCC_NEED_DECLARATIONS): Add checks for getrlimit
+ and setrlimit, search for them in sys/resource.h.
+
+ * acconfig.h: Add stubs for NEED_DECLARATION_GETRLIMIT and
+ NEED_DECLARATION_SETRLIMIT.
+
+ * system.h: Prototype getrlimit/setrlimit if necessary.
+
+Tue Jun 30 10:54:48 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * rtl.texi: Don't say that RTX_INTEGRATED_P is not depended
+ upon.
+
+Tue Jun 30 13:11:42 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000/sysv4.h (asm output): Add tabs for asm directives.
+
+Tue Jun 30 13:11:42 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * Makefile.in (FLAGS_TO_PASS): Set AR_FLAGS to AR_FOR_TARGET_FLAGS.
+
+Tue Jun 30 08:59:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gansidecl.h (ATTRIBUTE_UNUSED): Use __unused__ not `unused'.
+ Don't define NULL here. Also, remove all vestiges of autoconf
+ based checks for bcmp/bcopy/bzero/index/rindex.
+
+ * system.h: Immediately after including stdio.h, check for and if
+ necessary provide a default definition of NULL.
+
+Tue Jun 30 08:22:05 1998 Michael Meissner <meissner@cygnus.com>
+
+ * reload1.c (reload_cse_simplify_operands): Call
+ fatal_insn_not_found, not abort.
+
+Tue Jun 30 02:34:02 1998 Jeffrey A Law (law@cygnus.com)
+
+ * choose-temp.c (make_temp_file): Accept new argument for the
+ file suffix to use. Allocate space for it and add it to the
+ template.
+ * mkstemp.c (mkstemps): Renamed from mkstemp. Accept new argument
+ for the length of the suffix. Update template structure checks
+ to handle optional suffix.
+ * collect2.c (make_temp_file): Update prototype.
+ (main): Put proper suffixes on temporary files.
+ * gcc.c (make_temp_file): Update prototype.
+ (do_spec_1): Put proper suffixes on temporary files.
+
+Tue Jun 30 00:56:19 1998 Bruno Haible <haible@ilog.fr>
+
+ * invoke.texi: Document new implicit structure initialization
+ warning.
+
+Mon Jun 29 21:40:15 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * toplev.c (flag_dump_unnumbered): Declare.
+ (f_options): Add dump-unnumbered.
+ * print-rtl.c (flag_dump_unnumbered): Define.
+ (print_rtx): Print only '#' for insn numbers if flag_dump_unnumbered
+ is nonzero.
+ (print_rtl): Don't output line number notes if flag_dump_unnumbered
+ is nonzero.
+ * flow.c (print_rtl_with_bb): Don't output newline after line
+ numbers note if flag_dump_unnumbered is nonzero.
+
+Mon Jun 29 22:12:06 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Merge from gcc2 June 9, 1998 snapshot. See ChangeLog.13 for
+ details.
+
+ * pa.c, pa.h, pa.md: Convert to gen_rtx_FOO.
+
+Mon Jun 29 20:12:41 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (fix-header): Don't needlessly depend on cpperror.o.
+
+ * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): Cast expansion to
+ void since it is evaluated in a comma list.
+
+ * mips.h (ASM_GENERATE_INTERNAL_LABEL): Always sprintf `NUM'
+ argument as a long and cast `NUM' to long to ensure it is of the
+ proper width. Wrap macro arguments in parens when they appear in
+ the expansion.
+
+ * sol2.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+
+ * sparc.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+ (ASM_DECLARE_RESULT): Fix fprintf format specifier to match
+ function argument return type.
+ (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_FP_P,
+ REGNO_OK_FOR_CCFP_P): Use `(unsigned)' not `U'.
+
+ * cpplib.c (cpp_message_from_errno): Remove unneeded argument to
+ cpp_message.
+
+ * dbxout.c: Fix the comments after an #endif to reflect the actual
+ condition tested in the preceding #if.
+
+ * except.c (find_all_handler_type_matches): Switch to old-style
+ function definition.
+
+ * expr.c (expand_builtin): Remove unused variable `type' twice.
+
+ * gbl-ctors.h (DO_GLOBAL_CTORS_BODY): Cast -1 before comparing it
+ to an unsigned long.
+
+ * haifa-sched.c (print_insn_chain): Remove unused function.
+
+ * objc/objc-act.c (build_msg_pool_reference): Hide prototype and
+ definition.
+
+ * toplev.c: When testing whether to include dbxout.h, also include
+ it when XCOFF_DEBUGGING_INFO is defined.
+
+ * unroll.c (unroll_loop): Add parentheses around assignment used
+ as truth value.
+
+Mon Jun 29 12:18:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * config/lb1spc.asm (.div, .udiv): Replace routines.
+
+Mon Jun 29 09:44:24 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * rtl.h: Update comment about special gen_rtx variants.
+ * emit-rtl.c (gen_rtx): Handle MEMs using gen_rtx_MEM.
+
+Sun Jun 28 20:58:51 1998 Jeffrey A Law (law@cygnus.com)
+
+ * choose-temp.c (choose_temp_base): Restore original variant of
+ this function for compatibility.
+ (make_temp_file): This is the new, preferred interface to create
+ temporary files.
+ * collect2.c (choose_temp_base): Delete declaration.
+ (make_temp_file): Declare.
+ (temp_filename_length, temp_filename): Delete.
+ (main): Use make_temp_file to get temporary files. Use --lang-c
+ to force the resulting ctort/dtor file to be compiled with the C
+ compiler. Make sure to remove temporary files on all exit paths.
+ * gcc.c (make_temp_file): Provide prototype if MKTEMP_EACH_FILE is
+ defined.
+ (choose_temp_base): Only provide prototype if MKTEMP_EACH_FILE is
+ not defined.
+ (do_spec): Use make_temp_file if MKTEMP_EACH_FILE is defined.
+
+Sun Jun 28 08:57:09 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in (GCC_NEED_DECLARATIONS): Add strerror, getcwd and
+ getwd.
+
+ * acconfig.m4: Add stubs for NEED_DECLARATION_STRERROR,
+ NEED_DECLARATION_GETCWD and NEED_DECLARATION_GETWD.
+
+ * cccp.c: Remove strerror()/sys_nerr/sys_errlist decls.
+ (my_strerror): Add prototype and make it static.
+
+ * collect2.c: Likewise.
+
+ * cpplib.c: Likewise.
+
+ * gcc.c: Likewise, but keep `my_strerror' extern.
+
+ * protoize.c: Likewise.
+
+ * pexecute.c (my_strerror): Add argument to prototype.
+
+ * system.h: Add prototypes for getcwd, getwd and strerror. Add
+ extern decls for sys_nerr and sys_errlist. Make abort decl
+ explicitly extern.
+
+ * getpwd.c: Remove decls for getwd and getcwd.
+
+Sun Jun 28 02:11:16 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Jun 27 23:32:25 1998 Richard Henderson <rth@cygnus.com>
+
+ * jump.c (jump_optimize): Use side_effects_p & may_trap_p instead
+ of rtx_unsafe_p. Use modified_between_p instead of reg_set_between_p.
+ Allow FP moves to be optimized.
+ (rtx_unsafe_p): Delete.
+
+Sat Jun 27 23:02:04 1998 Richard Henderson <rth@cygnus.com>
+
+ * objc/archive.c: Remove <string.h> prototypes.
+
+Sat Jun 27 22:37:05 1998 Jeffrey A Law (law@cygnus.com)
+
+ * tm.texi (NEED_MATH_LIBRARY): Document new target macro.
+
+ * Makefile.in (gencheck): Remove $(TREE_H) dependency.
+
+Sat Jun 27 20:20:00 1998 John Carr <jfc@mit.edu>
+
+ * dsp16xx.h (FIRST_PSEUDO_REGISTER): Add parentheses to definition.
+ * dsp16xx.c (next_cc_user_unsigned): New function.
+ Remove save_next_cc_user_code.
+ (print_operand): Use HOST_WIDE_INT_PRINT_* macros.
+ * dsp16xx.md: Call next_cc_user_unsigned instead of using
+ save_next_cc_user_code.
+ Use gen_rtx_* functions instead of gen_rtx.
+
+Sat Jun 27 20:18:34 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000.h: Add trap_comparison_operator to PREDICATE_CODES.
+
+Sat Jun 27 16:45:42 1998 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (count_reg_sets): New function.
+ (count_reg_sets_1, count_ref_references): Likewise.
+ (recompute_reg_usage): Likewise.
+ * rtl.h (recompute_reg_usage): Add prototype.
+ * toplev.c (rest_of_compilation): Call recompute_reg_usage just
+ before local register allocation.
+
+Sat Jun 27 13:15:30 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (negsf, negdf): Revert Jan 22 change.
+
+Sat Jun 27 07:35:21 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mkstemp.c: Include gansidecl.h. Rename uint64_t to gcc_uint64_t.
+ (mkstemp): Remove size specifier for variable `letters'. Call
+ gettimeofday, not __gettimeofday.
+
+ * Makefile.in (EXPR_H): New dependency variable.
+ (c-typeck.o): Depend on $(EXPR_H) instead of expr.h.
+ (c-iterate.o): Likewise.
+ (gencheck): Depend on $(TREE_H) instead of tree.h, etc.
+ (stor-layout.o): Depend on $(EXPR_H) instead of expr.h.
+ (toplev.o): Likewise. Also depend on $(RECOG_H) instead of recog.h.
+ (varasm.o): Depend on $(EXPR_H) instead of expr.h.
+ (function.o): Likewise.
+ (stmt.o): Likewise.
+ (except.o): Likewise.
+ (expr.o): Likewise.
+ (calls.o): Likewise.
+ (expmed.o): Likewise.
+ (explow.o): Likewise.
+ (optabs.o): Likewise.
+ (sdbout.o): Likewise.
+ (dwarf2out.o): Likewise.
+ (emit-rtl.o): Likewise.
+ (integrate.o): Likewise.
+ (jump.o): Likewise.
+ (cse.o): Likewise.
+ (gcse.o): Likewise. Also depend on $(BASIC_BLOCK_H) instead of
+ basic-block.h.
+ (loop.o): Depend on $(EXPR_H) instead of expr.h.
+ (unroll.o): Likewise.
+ (combine.o): Likewise.
+ (reload.o): Likewise.
+ (reload1.o): Likewise.
+ (caller-save.o): Likewise.
+ (reorg.o): Likewise.
+ (alias.o): Don't depend on insn-codes.h.
+ (regmove.o): Depend on $(RECOG_H)/$(EXPR_H) instead of recog.h/expr.h.
+ (insn-emit.o): Depend on $(EXPR_H) instead of expr.h.
+ (insn-opinit.o): Likewise.
+
+Sat Jun 27 01:35:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * choose-temp.c (choose_temp_base): Remove MPW bits. Use mkstemp
+ instead of mktemp.
+ * gcc.c (MKTEMP_EACH_FILE): Define.
+ (main): No need to call choose_temp_base if we are going to
+ use choose_temp_base to create each file later.
+ * mkstemp.c: New file. Adapted from glibc.
+ * Makefile.in (xgcc, colect2, protoize, unprotoize): Link in mkstemp.o.
+ (mkstemp.o): Add dependencies.
+
+ * configure.in (gettimeofday): Check for its existence.
+ * config.in (HAVE_GETTIMEOFDAY): Define.
+ * configure: Rebuilt.
+
+1998-06-26 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.md (ne 0, non power case): Add missing & constraint.
+ Name pattern ne0.
+ (negative abs insns): Add pattern names.
+
+Fri Jun 26 17:36:42 1998 Dave Love <d.love@dl.ac.uk>
+
+ * Makefile.in (install-info): Run install-info program in separate
+ loop.
+
+Fri Jun 26 16:03:15 1998 Michael Meissner <meissner@cygnus.com>
+
+ * haifa-sched.c (schedule_block): Add hooks for the machine
+ description to reorder the ready list, and update how many more
+ instructions can be issued this cycle.
+ * tm.texi (MD_SCHED_{INIT,REORDER,VARIABLE_ISSUE}): Document.
+
+Fri Jun 26 11:54:11 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.h (REGNO_OK_FOR_{INDEX,BASE,FP,CCFP}_P):
+ Explicitly mark the constant being compared against as unsigned.
+ * config/sparc/sparc.c (sparc_select, cpu_default, cpu_table):
+ Fully initialize final members.
+ (mem_aligned_8): Explicit init of offset to zero.
+ (output_function_prologue): Explicit init of n_regs to zero.
+ (output_function_epilogue): Likewise, and mark arg size as
+ unused.
+ (init_cumulative_args): Mark libname and indirect as unused.
+ (function_arg_pass_by_reference): Likewise for cum and named.
+ (sparc_builtin_saveregs): Likewise for arglist.
+ (sparc_flat_eligible_for_epilogue_delay): Likewise for slot.
+
+Fri Jun 26 06:58:54 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.h (SECONDARY_INPUT_RELOAD_CLASS): Only need a secondary reload
+ if reloading a MEM.
+
+ * arm.h (arm_adjust_cost): Renamed bogus prototype from
+ arm_adjust_code.
+ (bad_signed_byte_operand): Add prototype.
+ * arm.c (arm_override_options): Make I unsigned.
+ (const_ok_for_arm): Add casts to the constants.
+ (load_multiple_operation): Don't redeclare elt in sub-block.
+ (arm_gen_movstrqi): Delete external declaration of optimize.
+ (gen_compare_reg): Declare parameter fp.
+
+ * arm.c (final_prescan_insn): Only initialize scanbody if the insn
+ has a pattern.
+
+Fri Jun 26 09:31:24 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.c: Include system.h and toplev.h.
+ (cint8_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
+ (const48_operand): Likewise.
+ (mode_width_operand): Likewise.
+ (mode_mask_operand): Likewise.
+ (mul8_operand): Likewise.
+ (current_file_function_operand): Likewise.
+ (signed_comparison_operator): Likewise.
+ (divmod_operator): Likewise.
+ (any_memory_operand): Likewise.
+ (alpha_return_addr): Likewise for parameter `frame'.
+ (alpha_builtin_saveregs): Likewise for parameter `arglist'.
+ (vms_valid_decl_attribute_p): Likewise for parameters `decl' and
+ `attributes'.
+ (alpha_start_function): Likewise for parameter `decl'. Use
+ HOST_WIDE_INT_PRINT_DEC in call to fprintf. Fix various format
+ specifiers. Remove unused variables `lab' and `name'.
+ (alpha_end_function): Mark parameter `decl' with ATTRIBUTE_UNUSED.
+ (check_float_value): Likewise for parameter `overflow'.
+ (alpha_need_linkage): Likewise for parameters `name' and `is_local'.
+
+ * alpha.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Define as
+ taking an argument.
+ (ASM_OUTPUT_SHORT): Cast argument to `int' in call to fprintf.
+ (ASM_OUTPUT_CHAR): Likewise.
+ (ASM_OUTPUT_BYTE): Likewise.
+ (PRINT_OPERAND_ADDRESS): Use HOST_WIDE_INT_PRINT_DEC in call to
+ fprintf.
+ (PUT_SDB_EPILOGUE_END): Mention argument `NAME' in definition.
+ Add prototypes for functions in alpha.c.
+
+ * alpha.md (ashldi3): Add default case in switch.
+
+1998-06-26 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (gcc_version, gcc_version_trigger): New macros.
+ (version): Initialize from $(gcc_version).
+
+ * configure.in (version): Rename to gcc_version.
+ (gcc_version_trigger): New variable; call AC_SUBST for it and
+ emit it into the generated config.status.
+ * configure: Regenerate.
+
+Thu Jun 25 12:47:41 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * fold-const.c (make_range): Don't go looking at TREE_OPERANDs of
+ nodes that are not expressions.
+
+Thu Jun 25 15:08:16 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * invoke.texi (-fstrict-aliasing): Document.
+ * rtl.texi (MEM_ALIAS_SET): Document.
+
+ * flags.h (flag_strict_aliasing): Declare.
+ * toplev.c (flag_strict_aliasing): Define.
+ (f_options): Add -strict-aliasing.
+ (main): Set flag_strict_aliasing if -O2 or higher.
+
+ * tree.h (tree_type): Add alias_set field.
+ (TYPE_ALIAS_SET): New macro.
+ (TYPE_ALIAS_SET_KNOWN_P): Likewise.
+ (get_alias_set): Declare.
+ * tree.c (lang_get_alias_set): Define.
+ (make_node): Initialize TYPE_ALIAS_SET.
+ (get_alias_set): New function.
+ * print-tree.c (print_node): Dump the alias set for a type.
+
+ * c-tree.h (c_get_alias_set): Declare.
+ * c-common.c (c_get_alias_set): New function.
+ * c-decl.c (init_decl_processing): Set lang_get_alias_set.
+
+ * expr.c (protect_from_queue): Propagate alias sets.
+ (expand_assignment): Calculate alias set for new MEMs.
+ (expand_expr): Likewise.
+ * function.c (put_var_into_stack): Likewise.
+ (put_reg_into_stack): Likewise.
+ (gen_mem_addressof): Likewise.
+ (assign_parms): Likewise.
+ * stmt.c (expand_decl): Likewise.
+ * varasm.c (make_decl_rtl): Eliminate redundant clearing of
+ DECL_RTL. Calculate alias set for new MEMs.
+
+ * rtl.def (REG): Add dummy operand.
+ (MEM): Add extra operand to store the MEM_ALIAS_SET.
+ * rtl.h (MEM_ALIAS_SET): New macro.
+ (gen_rtx_MEM): Declare.
+ * emit-rtl.c (gen_rtx_MEM): New function.
+ * gengenrtl.c (sepcial_rtx): Make MEMs special.
+
+ * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): New macro.
+ (DIFFERENT_ALIAS_SETS_P): Likewise.
+ (canon_rtx): Propagate the alias set to the new MEM.
+ (true_dependence): Check the alias sets.
+ (anti_dependence): Likewise.
+ (output_dependence): Likewise.
+ * explow.c (stabilize): Progoate alias sets.
+ * integrate.c (copy_rtx_and_substitute): Likewise.
+ * final.c (alter_subreg): Make sure not to leave MEM_IN_STRUCT_P
+ in an unpredictable state. Propagate alias sets.
+ * reload1.c (reload): Clear MEM_ALIAS_SET for new MEMs about which
+ we have no alias information.
+
+Thu Jun 25 16:59:18 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * except.h (CATCH_ALL_TYPE): Definition moved to eh-common.h.
+ (find_all_handler_type_matches): Add function prototype.
+ * eh-common.h (CATCH_ALL_TYPE): Definition added.
+ * except.c (find_all_handler_type_matches): Add function to find all
+ runtime type info in the exception table.
+ (output_exception_table_entry): Special case for CATCH_ALL_TYPE.
+
+Thu Jun 25 15:47:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (xcoffout.o): Depend on toplev.h, output.h and dbxout.h.
+
+ * config/fp-bit.c (_fpmul_parts): Move variables `x', `ylow',
+ `yhigh' and `bit' into the scope in which they are used.
+ (_fpdiv_parts): Remove unused variables `low', `high', `r0', `r1',
+ `y0', `y1', `q', `remainder', `carry', `d0' and `d1'.
+
+ * rs6000.c: Move include of output.h below tree.h. Include toplev.h.
+ (any_operand): Mark unused parameters `op' and `mode' with
+ ATTRIBUTE_UNUSED.
+ (count_register_operand): Likewise for parameter `mode'.
+ (fpmem_operand): Likewise.
+ (short_cint_operand): Likewise.
+ (u_short_cint_operand): Likewise.
+ (non_short_cint_operand): Likewise.
+ (got_operand): Likewise.
+ (got_no_const_operand): Likewise.
+ (non_add_cint_operand): Likewise.
+ (non_logical_cint_operand): Likewise.
+ (mask_operand): Likewise.
+ (current_file_function_operand): Likewise.
+ (small_data_operand): Likewise for parameters `op' and `mode' but
+ only when !TARGET_ELF.
+ (init_cumulative_args): Mark parameters `libname' with
+ ATTRIBUTE_UNUSED.
+ (function_arg_pass_by_reference): Likewise for parameters `cum',
+ `mode' and `named'.
+ (expand_builtin_saveregs): Likewise for parameter `args'.
+ (load_multiple_operation): Likewise for parameter `mode'.
+ (store_multiple_operation): Likewise.
+ (branch_comparison_operator): Likewise.
+ (secondary_reload_class): Likewise.
+ (print_operand): Add parentheses around & operation.
+ (output_prolog): Mark parameter `size' with ATTRIBUTE_UNUSED.
+ (output_epilog): Likewise. Cast argument to fprintf to int.
+ (rs6000_adjust_cost): Mark parameter `dep_insn' with ATTRIBUTE_UNUSED.
+ (rs6000_valid_decl_attribute_p): Likewise for parameters `decl',
+ `attributes', `identifier' and `args'.
+ (rs6000_valid_type_attribute_p): Likewise for parameter `attributes'.
+ (rs6000_comp_type_attributes): Likewise for parameters `type1' and
+ `type2'.
+ (rs6000_set_default_type_attributes): Likewise for parameter `type'.
+
+ * rs6000.h (RTX_COSTS): Add parentheses around & operation.
+ (toc_section, private_data_section, trap_comparison_operator): Add
+ prototypes.
+
+ * dbxout.h (dbxout_parms, dbxout_reg_parms, dbxout_syms): Add
+ prototypes.
+
+ * xcoffout.c: Include toplev.h, outout.h and dbxout.h.
+
+ * xcoffout.h (stab_to_sclass, xcoffout_begin_function,
+ xcoffout_begin_block, xcoffout_end_epilogue,
+ xcoffout_end_function, xcoffout_end_block,
+ xcoff_output_standard_types, xcoffout_declare_function,
+ xcoffout_source_line): Add prototypes.
+
+Thu Jun 25 09:54:55 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM,
+ noticed by grahams@rcp.co.uk.
+
+Thu Jun 25 11:12:29 1998 Dave Brolley <brolley@cygnus.com>
+
+ * gcc.c (default_compilers): Use new | syntax to eliminate
+ string concatenation.
+
+Thu Jun 25 01:00:48 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_function_name): Delete.
+ (alpha_ra_ever_killed): Notice current_function_is_thunk.
+ (alpha_sa_mask, alpha_sa_size, alpha_does_function_need_gp): Likewise.
+ (alpha_start_function): Reorg from output_prologue.
+ (alpha_end_function): Reorg from output_epilogue.
+ * alpha.h (ASM_DECLARE_FUNCTION_NAME): Call alpha_start_function.
+ (ASM_DECLARE_FUNCTION_SIZE): New.
+ (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
+ (PROFILE_BEFORE_PROLOGUE): Set.
+ (ASM_OUTPUT_MI_THUNK): Remove bits now output by start/end_function.
+ * alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): Likewise.
+
+Thu Jun 25 01:18:47 1998 John Wehle (john@feith.com)
+
+ * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
+
+1998-06-25 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * expr.c (expand_assignment): Rework address calculation for structure
+ field members to expose more invariant computations to the loop
+ optimizer.
+ (expand_expr): Likewise.
+
+Wed Jun 24 22:44:22 1998 Jeffrey A Law (law@cygnus.com)
+
+ * local-alloc.c (block_alloc): Do not try to avoid false dependencies
+ when SMALL_REGISTER_CLASSES is nonzero.
+
+Wed Jun 24 17:55:15 1998 Klaus Kaempf <kkaempf@progis.de>
+
+ * alpha.md (call_vms, call_value_vms): Strip leading * from symbol.
+
+Wed Jun 24 16:27:23 1998 John Carr <jfc@mit.edu>
+
+ * expr.c (get_memory_rtx): New function.
+ (expand_builtin): Call get_memory_rtx for MEM arguments to builtin
+ string functions.
+
+ * expmed.c (init_expmed): Initialize all elements of *_cost arrays.
+
+ * optabs.c: Use gen_rtx_FOO (...) instead of gen_rtx (FOO, ...).
+ * expr.c: Likewise.
+ * explow.c: Likewise.
+ * combine.c: Likewise.
+ * reload1.c: Likewise.
+ * gcse.c: Likewise.
+
+Wed Jun 24 15:13:01 1998 Dave Brolley <brolley@cygnus.com>
+
+ * README.gnat: Add patch for new lang_decode_options interface.
+
+Wed Jun 24 09:14:04 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * except.c (start_catch_handler): Do nothing if EH is not on.
+
+1998-06-24 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * configure.in (gxx_include_dir): Initialize default value depending on
+ new flag --enable-version-specific-runtime-libs; remove superfluous
+ default initialization afterwards.
+ * configure: Regenerate.
+
+Wed Jun 24 01:32:12 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * toplev.c (rest_of_compilation): Revert May 15 change.
+
+Tue Jun 23 21:27:27 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * reload.c (find_reloads): Fix check for failure to match any
+ alternative, to account for Mar 26 change in initial "best" cost.
+
+Tue Jun 23 16:44:21 1998 Dave Brolley <brolley@cygnus.com>
+
+ * cpplib.c (do_line): Typo broke #line directive.
+ (cpp_message_from_errno): New function.
+ (cpp_error_from_errno): Call cpp_message_from_errno.
+ * cpplib.h (cpp_message_from_errno): New function.
+
+Tue Jun 23 13:38:18 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * libgcc2.c (__get_eh_table_version, __get_eh_table_language): New
+ functions to return exception descriptor information.
+ (find_exception_handler): Pass match_info field to runtime matcher,
+ not a descriptor table entry.
+
+Tue Jun 23 09:30:58 1998 Dave Love <d.love@dl.ac.uk>
+
+ * cpp.texi, gcc.texi: Add @dircategory, @direntry meant to
+ accompany previous Makefile.in (install-info) change.
+
+Tue Jun 23 10:06:07 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * eh-common.h (struct __eh_info): Remove coerced value field.
+ * libgcc2.c (find_exception_handler): Don't set coerced_value field.
+ * except.c (get_dynamic_handler_chain, get_dynamic_cleanup_chain): Use
+ POINTER_SIZE instead of Pmode.
+ (expand_start_all_catch): Call start_catch_handler() if we are not
+ using new style exceptions.
+
+Tue Jun 23 06:45:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * varasm.c (assemble_variable): Remove reference to warn_bss_align.
+
+Mon Jun 22 23:57:31 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * config/sparc/sparc.md (zero_extendhidi2, extendhisi2,
+ extendqihi2, extendqisi2, extendqidi2, extendhidi2, adddi3,
+ subdi3, negdi2, call, call_value, untyped_return, nonlocal_goto,
+ splits and peepholes): Change remaining generic gen_rtx calls to
+ specific genrtl ones.
+ * config/sparc/sparc.c: Likewise.
+
+Mon Jun 22 22:21:46 1998 Richard Henderson <rth@cygnus.com>
+
+ * gcc.c (handle_braces): Recognize | between options as an or.
+
+Mon Jun 22 23:13:47 1998 John Wehle (john@feith.com)
+
+ * i386/freebsd-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
+ * i386/sysv4.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
+
+ * i386.md (exception_receiver): Define.
+
+Mon Jun 22 12:01:48 1998 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME,
+ PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): New variables.
+ (install-common): Use them.
+
+ * gcse.c (add_label_notes): New function.
+ (pre_insert_insn): Call it.
+ * unroll.c (unroll_loop): Look for insns with a REG_LABEL note, and
+ pass the label to set_label_in_map.
+
+Mon Jun 22 19:01:14 1998 Dave Love <d.love@dl.ac.uk>
+
+ * Makefile.in (install-info): Fix typpo in previous change.
+
+Mon Jun 22 11:10:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * varasm.c (assemble_variable): Emit alignment warning.
+
+Mon Jun 22 08:18:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (varasm.o): Depend on sdbout.h.
+ (sdbout.o): Depend on toplev.h.
+
+ * collect2.c (scan_prog_file): Cast fprintf argument to `long' and
+ use %ld specifier.
+
+ * final.c (shorten_branches): Cast first arg of `bzero' to char *.
+
+ * genextract.c (main): When creating insn-extract.c, mark variable
+ `i' with ATTRIBUTE_UNUSED.
+
+ * genpeep.c (main): When creating insn-peep.c, mark variables
+ `insn', `x' and `pat' with ATTRIBUTE_UNUSED.
+
+ * objc/init.c (__objc_tree_print): Wrap function definition in
+ macro `DEBUG'.
+
+ * objc/objc-act.c (encode_array): Cast sprintf argument to `long'
+ and use %ld specifier.
+ (adorn_decl): Likewise, twice.
+
+ * reload1.c (reload_cse_regs): Cast first arg of `bzero' to char *.
+
+ * sdbout.c: Include output.h and toplev.h.
+ (PUT_SDB_INT_VAL): Use HOST_WIDE_INT_PRINT_DEV to print argument
+ `a'. Cast `a' to HOST_WIDE_INT to force it to always be so.
+ (PUT_SDB_SIZE): Likewise.
+
+ * sdbout.h (sdbout_mark_begin_function): Add prototype.
+
+ * stmt.c (check_for_full_enumeration_handling): Cast argument of
+ `warning' to long and use %ld specifier.
+
+ * toplev.c (main): Likewise for `fprintf'.
+
+ * toplev.h (output_file_directive): Add prototype.
+
+ * unroll.c (unroll_loop): Use HOST_WIDE_INT_PRINT_DEC specifier in
+ call to `fprintf'.
+ (precondition_loop_p): Likewise.
+
+ * varasm.c Include sdbout.h.
+ (assemble_static_space): Move sometimes-unused variable `rounded'
+ into the scope in which it is used.
+
+ * mips.c (gpr_mode): Don't say `static' twice.
+
+ * cpplib.c (cpp_handle_option): Don't pass unneeded NULL to cpp_fatal.
+
+ * objc/objc-act.c (init_selector): Hide prototype and definition.
+
+ * optabs.c (gen_cond_trap): Remove unused variable `icode'.
+
+ * regmove.c (copy_src_to_dest): Likewise for `i'.
+
+ * mips-tfile.c (add_local_symbol): Cast width format specifier to int.
+ (add_ext_symbol): Likewise.
+ (add_file): Likewise.
+ (parse_def): Likewise.
+ (write_varray): Use HOST_PTR_PRINTF to print a pointer. Fix
+ remaining format specifiers and arguments.
+ (write_object): Likewise, several times.
+ (read_seek): Likewise.
+ (out_of_bounds): Likewise.
+ (allocate_cluster): Likewise.
+ (xmalloc): Likewise.
+ (xcalloc): Likewise.
+ (xrealloc): Likewise.
+ (xfree): Likewise.
+
+ * mips-tdump.c (print_symbol): Likewise.
+
+Sun Jun 21 17:05:34 1998 Dave Love <d.love@dl.ac.uk>
+
+ * Makefile.in (install-info): Use install-info program if
+ available, per GNU standard.
+
+Sun Jun 21 18:56:44 1998 Jeffrey A Law (law@cygnus.com)
+
+ * invoke.texi: Document -mrelax for the mn10300 and mn10200.
+
+ * basic-block.h (init_regset_vector): Delete declaration.
+ * flow.c (init_regset_vector): Make it static and add a prototype.
+
+ * bitmap.h (debug_bitmap): Declare.
+
+ * haifa-sched.c (debug_ready_list): Make static.
+
+ * toplev.h (fancy_abort): Declare.
+
+Sun Jun 21 18:30:13 1998 H.J. Lu (hjl@gnu.org)
+
+ * basic-block.h (init_regset_vector): New declaration.
+
+ * Makefile.in (sdbout.o): Add insn-codes.h to dependency.
+
+ * global.c: Include machmode.h amd move hard-reg-set.h before
+ rtl.h.
+
+ * haifa-sched.c (insn_issue_delay, birthing_insn_p,
+ adjust_priority, print_insn_chaino): New declaration.
+ (schedule_insns): Remove declaration.
+ (init_target_units, get_visual_tbl_length,
+ init_block_visualization): Add prototype.
+
+ * integrate.c (pushdecl, poplevel): Remove declaration.
+
+ * rtl.h (expand_expr): Remove declaration.
+
+ * loop.c (oballoc): Remove declaration.
+ (replace_call_address): Add prototype.
+
+Sun Jun 21 01:08:17 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Jun 21 01:16:38 1998 John Wehle (john@feith.com)
+
+ * i386.c (output_fp_conditional_move): Don't bother handling
+ (cc_prev_status.flags && CC_NO_OVERFLOW) since the INSN patterns
+ prevent this from happening.
+
+ * i386.md (nonlocal_goto_receiver): Delete.
+
+Sun Jun 21 00:42:20 1998 H.J. Lu (hjl@gnu.org)
+
+ * Makefile.in (crtbeginS.o, crtendS.o): Add -fno-exceptions and
+ -DCRTSTUFFS_O.
+ (INSTALL): cd $(srcdir) before make.
+
+ * flow.c (allocate_for_life_analysis, init_regset_vector):
+ Remove declaration.
+
+ * function.h (get_first_block_beg): New declaration.
+
+ * gbl-ctors.h (__do_global_dtors): Add prototype.
+
+ * gcov-io.h (__fetch_long): New declaration.
+ (__store_long): Likewise.
+ (__read_long): Likewise.
+ (__write_long): Likewise.
+
+ * gcov.c (print_usage): New declaration.
+
+ * Makefile.in (c-iterate.o): Depend on insn-codes.h too.
+
+Sat Jun 20 00:36:16 1998 Jeffrey A Law (law@cygnus.com)
+
+ * calls.c (expand_call): Initialize "src" and "dest".
+ * stmt.c (expand_return): Likewise.
+ * expmed.c (extract_split_bit_field): Similarly for "result"
+ * gcse.c (compute_hash_table): Mark first arg as unused.
+ * jump.c (jump_optimize): Initialize reversep.
+ * tree.c (make_node): Initialize length.
+
+ * c-common.c (check_format_info): Initialize length_char and
+ fci to keep -Wall quiet.
+
+ * except.c (jumpif_rtx): Put declaration and definition
+ inside a suitable #ifdef.
+ (jumpifnot_rtx): Delete dead function.
+
+ * i386.h (output_int_conditional_move): Declare.
+ (output_fp_conditional_move): Likewise.
+ (ix86_can_use_return_insn_p): Likewise.
+
+ * optabs.c (init_traps): Put prototype inside a suitable #ifdef.
+
+Sat Jun 20 00:27:40 1998 Graham <grahams@rcp.co.uk>
+
+ * alias.c: Include toplev.h.
+ * caller-save.c: Include toplev.h.
+ * combine.c: Include toplev.h.
+ * flow.c Include toplev.h.
+ * global.c: Include toplev.h.
+ * jump.c: Include toplev.h.
+ * local-alloc.c: Include toplev.h.
+ * loop.c: Include toplev.h.
+ * regmove.c: Include toplev.h.
+ * stupid.c: Include toplev.h.
+ * unroll.c: Include toplev.h.
+ * Makefile.in: Add toplev.h dependencies.
+
+Fri Jun 19 22:40:25 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * regmove.c (copy_src_to_dest): Add decl for loop_depth.
+
+ * svr4.h (ASM_GENERATE_INTERNAL_LABEL): Cast arg to unsigned.
+ * dwarf2out.c (ASM_OUTPUT_DWARF_DATA1): Likewise.
+ Add parens to various macros.
+
+Fri Jun 19 23:22:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+
+ * c-typeck.c (pop_init_level): Warn about implicit zero initialization
+ of struct members.
+
+Fri Jun 19 23:06:33 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * varasm.c (assemble_start_function): Add weak_global_object_name.
+ * tree.c (get_file_function_name): Use it.
+
+Fri Jun 19 22:55:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * except.c (jumpif_rtx): Make static and add prototype.
+ (jumpifnot_rtx): Likewise.
+
+ * README.gnat: Add a build patch from Fred Fish.
+
+ * c-lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
+
+ * Makefile.in (c-iterate.o): Depend on expr.h.
+
+Fri Jun 19 20:38:34 1998 H.J. Lu (hjl@gnu.org)
+
+ * except.h (emit_unwinder, end_eh_unwinder): Removed.
+
+ * dwarfout.c (getpwd): Add prototype.
+ (is_pseudo_reg, type_main_variant, is_tagged_type,
+ is_redundant_typedef): New declaration.
+ (output_decl): Add prototype for FUNC.
+ (type_main_variant): Make it static.
+ (is_tagged_type): Likewise.
+ (is_redundant_typedef): Likewise.
+
+ * expr.c (do_jump_by_parts_greater_rtx): Removed.
+ (truthvalue_conversion): Likewise.
+
+ * c-iterate.c: Include "expr.h".
+ (expand_expr): Use proper values when calling the function.
+
+ * explow.c (emit_stack_save): Add prototype for FCN.
+ (emit_stack_restore): Likewise.
+
+ * dwarf2out.c (getpwd): Add prototype.
+
+ * dwarf2out.h (debug_dwarf, debug_dwarf_die): New declarations.
+
+ * c-typeck.c (c_expand_asm_operands): Use proper values when calling
+ expand_expr.
+
+ * c-lex.c (yyprint): Add prototype.
+ (check_newline, build_objc_string): Remove declaration.
+
+ * c-tree.h (comptypes_record_hook): Removed.
+ (finish_incomplete_decl): New prototype.
+
+ * alias.c (find_base_value): Add prototype.
+ (true_dependence): Add prototype for function argument.
+
+ * c-aux-info.c (xmalloc): Remove declaration.
+
+Fri Jun 19 20:23:05 1998 Robert Lipe <robertl@dgii.com>
+
+ * i386.c: Include system.h. Remove redundant includes.
+ (optimization_options): Mark param 'size' with ATTRIBUTE_UNUSED.
+ (i386_cc_probably_useless_p): Likewise for 'decl', 'attributes',
+ 'identifier', 'args'.
+ (i386_valid_type_attribute_p): Likewise for 'attributes'.
+ (i386_comp_type_attribute_p): Likewise for 'type1', 'type2'.
+ (function_arg_partial_nregs): Likewise for 'cum', 'mode', 'type',
+ and 'named'.
+ (symbolic_operand): Likewise for 'mode'.
+ (call_insn_operand): Likewise.
+ (expander_call_insn_operand): Likewise.
+ (ix86_logical_operator): Likewise.
+ (ix86_binary_operator_ok): Likewise.
+ (emit_pic_move): Likewise.
+ (VOIDmode_compare_op): Likewise.
+ (is_mul): Likewise.
+ (str_immediate_operand): Likewise.
+ (ix86_uary_operator_ok): Likewise for 'code', 'mode', and 'operands'.yy
+ (asm_output_function_prefix): Likewise for 'name'.
+ (function_prologue): Likewise for 'file', and 'size'.
+ (function_epilogue): Likewise.
+
+1998-06-19 Jim Wilson <wilson@cygnus.com>
+
+ * loop.h (struct induction): Clarify comment for unrolled field.
+ * unroll.c (find_splittable_givs): Move set of unrolled field
+ after address validity check.
+
+Fri Jun 19 18:38:04 1998 Michael Meissner <meissner@cygnus.com>
+
+ * config/fp-bit.c (INLINE): Only define if not already defined.
+
+1998-06-19 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (installdirs): Loop over directories in $(libsubdir)
+ creating probably missing ones, instead of single if statements.
+
+Fri Jun 19 10:43:52 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * c-common.c (truthvalue_conversion): Protect side effects in the
+ expression when splitting a complex value.
+ * fold-const.c (fold): Likewise.
+
+Fri Jun 19 02:31:16 1998 Klaus Kaempf (kkaempf@progis.de)
+
+ * cccp.c (hack_vms_include_specification): Rewrite to handle
+ '#include <dir/file.h>' correctly.
+
+Fri Jun 19 02:24:11 1998 H.J. Lu (hjl@gnu.org)
+
+ * config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Defined.
+
+Fri Jun 19 02:10:10 1998 John Wehle (john@feith.com)
+
+ * i386.c (notice_update_cc): Integer conditional moves don't
+ affect cc0.
+
+ * i386.md (movsfcc, movdfcc, movxfcc): Use emit_store_flag
+ to support LT, LE, GE, and GT signed integer comparisons.
+ (movsfcc+1, movsfcc+2, movdfcc+1, movdfcc+2,
+ movxfcc+1, movxfcc+2): Pattern doesn't match if the comparison
+ is LT, LE, GE, or GT.
+ (movdicc): Remove code resulting from an earlier patch which
+ didn't apply correctly.
+
+Fri Jun 19 02:00:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * reload1.c (reload_cse_regno_equal_p): If -ffloat-store, don't
+ consider a MEM in FP mode as equal.
+
+Fri Jun 19 01:02:17 1998 Jeffrey A Law (law@cygnus.com)
+
+ * c-decl.c (duplicate_decls): Avoid setting TREE_ASM_WRITTEN for
+ duplicate declarations of a function.
+
+Fri Jun 19 00:33:33 1998 H.J. Lu (hjl@gnu.org)
+
+ * config/float-i386.h: New.
+
+ * configure.in (i[34567]86-*-linux-*): Set float_format to i386.
+
+Thu Jun 18 20:11:00 1998 Jim Wilson <wilson@cygnus.com>
+
+ * sched.c (schedule_insns): Use xmalloc not alloca for max_uid
+ indexed arrays. Call free at the end of the function for them.
+ * haifa-sched.c (schedule_insns): Likewise.
+
+Thu Jun 18 18:16:01 1998 Jim Wilson <wilson@cygnus.com>
+
+ * dwarf2out.c (size_of_string): Do count backslashes.
+
+Thu Jun 18 11:43:54 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow REG+REG
+ addressing when one register is the frame pointer or stack
+ pointer. Disallow REG+CONST addressing in HI mode.
+
+Thu Jun 18 17:30:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to
+ RELOAD_FOR_INSN.
+
+Thu Jun 18 09:36:50 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (c-lang.o): Depend on output.h.
+
+ * c-lang.c: Include output.h.
+
+ * sparc.c (sparc_builtin_saveregs): Remove unused variable `fntype'.
+
+ * except.c (expand_builtin_eh_stub): Likewise for variable `jump_to'.
+
+ * genrecog.c (write_subroutine): When writing insn-recog.c, mark
+ variables `insn', `pnum_clobbers', `x[0 .. max_depth]' and `tem'
+ with ATTRIBUTE_UNUSED.
+
+ * regmove.c (copy_src_to_dest): Make function static to match its
+ prototype.
+
+ * reload1.c Include hard-reg-set.h before rtl.h to get macro
+ HARD_CONST. Include machmode.h before hard-reg-set.h.
+
+ * rtl.h: Prototype `retry_global_alloc' and wrap with macro
+ HARD_CONST to protect usage of typedef HARD_REG_SET.
+
+ * tree.c: Prototype `_obstack_allocated_p'.
+
+ * varasm.c: Wrap prototype of `asm_output_aligned_bss' in macro
+ BSS_SECTION_ASM_OP.
+
+Thu Jun 18 09:20:47 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * pa.c: Include system.h and toplev.h. Remove redundant code.
+ (call_operand_address): Mark parameter `mode' with ATTRIBUTE_UNUSED.
+ (symbolic_operand): Likewise.
+ (symbolic_memory_operand): Likewise.
+ (pic_label_operand): Likewise.
+ (fp_reg_operand): Likewise.
+ (pre_cint_operand): Likewise.
+ (post_cint_operand): Likewise.
+ (ireg_or_int5_operand): Likewise.
+ (int5_operand): Likewise.
+ (uint5_operand): Likewise.
+ (int11_operand): Likewise.
+ (uint32_operand): Likewise.
+ (ior_operand): Likewise.
+ (lhs_lshift_cint_operand): Likewise.
+ (pc_or_label_operand): Likewise.
+ (legitimize_pic_address): Likewise.
+ (hppa_legitimize_address): Likewise for parameter `old'.
+ (output_block_move): Likewise for parameter `size_is_constant'.
+ (output_function_prologue): Likewise for parameter `size'.
+ (output_function_epilogue): Likewise.
+ (return_addr_rtx): Likewise for parameter `count'.
+ (output_mul_insn): Likewise for parameter `unsignedp'.
+ (hppa_builtin_saveregs): Likewise for parameter `arglist'.
+ (output_bb): Likewise for parameter `operands'.
+ (output_bvb): Likewise.
+ (function_label_operand): Likewise for parameter `mode'.
+ (plus_xor_ior_operator): Likewise.
+ (shadd_operand): Likewise.
+ (non_hard_reg_operand): Likewise.
+ (eq_neq_comparison_operator): Likewise.
+ (movb_comparison_operator): Likewise.
+ (pa_combine_instructions): Likewise for parameter `insns'.
+
+ * pa.h: Add prototypes for functions `output_deferred_plabels',
+ `override_options', `output_ascii', `output_function_prologue',
+ `output_function_epilogue', `print_operand',
+ `symbolic_expression_p', `reloc_needed', `compute_frame_size',
+ `hppa_address_cost', `and_mask_p', `symbolic_memory_operand',
+ `pa_adjust_cost', `pa_adjust_insn_length' and
+ `secondary_reload_class'.
+
+Wed Jun 17 22:28:48 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * configure.in: Don't turn on collect2 unconditionally.
+
+Wed Jun 17 20:20:48 1998 Mark Mitchell <mark@markmitchell.com>
+
+ * cse.c (cse_basic_block): Don't include NOTE insns in the count
+ that is used to decide whether or not it is time to erase the
+ equivalence table.
+
+Wed Jun 17 18:30:43 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000/linux.h (JUMP_TABLES_IN_TEXT_SECTION): Define to zero.
+
+Wed Jun 17 19:05:03 1998 John Carr <jfc@mit.edu>
+
+ * haifa-sched.c (haifa_classify_insn): TRAP_IF is risky.
+ (sched_analyze_2): Allow scheduling TRAP_IF.
+
+ * reorg.c (mark_referenced_resources): Examine operands of TRAP_IF.
+
+ * rtl.h (TRAP_CODE): New macro.
+
+ * rtl.def (TRAP_IF): Change second operand type to rtx.
+
+ * optabs.c (gen_cond_trap): New function.
+ (init_traps): New function.
+ (init_optabs): Call init_traps.
+ * expr.h: Declare gen_cond_trap.
+
+ * jump.c (jump_optimize): Optimize jumps to and around traps.
+
+ * sparc.md: Define trap instructions.
+
+ * rs6000.md: Define trap instructions.
+ * rs6000.c (print_operand): New code 'V' for trap condition.
+ (trap_comparison_operator): New function.
+
+ * m88k.md: Update use of TRAP_IF.
+
+ * tree.h (enum built_in_function): New function code BUILT_IN_TRAP.
+ * c-decl.c (init_decl_processing): New builtin __builtin_trap.
+ * expr.c (expand_builtin): Handle BUILT_IN_TRAP.
+
+ * expr.c (expand_builtin): Error if __builtin_longjmp second argument
+ is not 1.
+
+Wed Jun 17 15:20:00 1998 Catherine Moore <clm@cygnus.com>
+
+ * reload1.c (spill_hard_reg): Check mode of register when
+ spilling from scratch_list.
+
+Wed Jun 17 16:25:38 1998 Andrew MacLeod (amacleod@cygnus.com)
+
+ * except.c (add_new_handler): Fix bug in finding last region handler.
+ * libgcc2.c (find_exception_handler): Pass exception table pointer
+ to runtime type matcher, not the match info field.
+
+Wed Jun 17 15:57:48 1998 Andrew MacLeod (amacleod@cygnus.com)
+
+ * eh-common.h (struct eh_context): Add comment for hidden use of
+ field dynamic_handler_chain.
+ * except.c (get_dynamic_handler_chain): Comment on, and use the
+ correct offset of the dynamic_handler_chain field.
+
+1998-06-17 Jim Wilson <wilson@cygnus.com>
+
+ * mips/iris6.h (LINK_SPEC): Add -woff 131.
+
+1998-06-17 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c: Disable EH_FRAME_SECTION if we don't have .init.
+
+ * configure.in: Don't disable collect2 when we have GNU ld.
+
+Wed Jun 17 08:38:13 1998 Jeffrey A Law (law@cygnus.com)
+
+ * fold-const.c (make_range): Do not widen the type of the expression.
+
+ * expr.c (check_max_integer_computation_mode): New function.
+ (expand_expr): Avoid integer computations in modes wider than
+ MAX_INTEGER_COMPUTATION_MODE.
+ * fold-const.c (fold): Likewise.
+ * tree.h (check_max_integer_computation_mode): Declare.
+ * tm.texi (MAX_INTEGER_COMPUTATION_MODE): Document it.
+
+ * configure.in (nm): Make a link to "nm" in the build tree too.
+
+ * mn10300.md (andsi3): Fix typo.
+
+Tue Jun 16 22:58:40 1998 Richard Henderson <rth@cygnus.com>
+
+ * reload1.c (reload_cse_regs): Call bzero instead of looping.
+
+Tue Jun 16 18:30:35 1998 Jim Wilson <wilson@cygnus.com>
+
+ * dwarf2out.c (stripattributes): Prepend '*' to the section name.
+
+Tue Jun 16 16:49:26 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_prologue, alpha_expand_epilogue): New fns.
+ (output_prologue, output_epilogue): Merge VMS and OSF versions;
+ Remove anything related to the actual code generation.
+ (output_end_prologue): New function.
+ (alpha_sa_mask, alpha_sa_size): Merge VMS and OSF versions.
+ (alpha_does_function_need_gp): Return false for VMS.
+ (alpha_function_needs_gp): Make static.
+ (add_long_const): Delete.
+ (summarize_insn): Don't assume a SUBREG is of a REG.
+ Prototype all static functions. Rename VMS-specific global
+ variables vms_*.
+ * alpha.h (TARGET_CAN_FAULT_IN_PROLOGUE): Default to 0.
+ (FUNCTION_BOUNDARY): Align to cache line.
+ (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER): Align to octaword.
+ (FUNCTION_END_PROLOGUE): New macro.
+ * alpha.md (attribute length): New. Mark all insns.
+ (return_internal, prologue_stack_probe_loop): New patterns.
+ (prologue, init_fp, epilogue): New patterns.
+ Disable peepholes.
+ * linux.h (TARGET_CAN_FAULT_IN_PROLOGUE): Define.
+
+Tue Jun 16 17:36:35 1998 Dave Brolley <brolley@cygnus.com>
+
+ * toplev.c (lang_options): Add -trigraphs option for cpplib.
+
+Tue Jun 16 23:33:24 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS
+ is earlier than RELOAD_FOR_OUTPUT_ADDRESS; RELOAD_FOR_INPADDR_ADDRESS
+ is earlier than RELOAD_FOR_INPUT_ADDRESS.
+
+Tue Jun 16 13:15:16 1998 Jim Wilson <wilson@cygnus.com>
+
+ * libgcc1-test.c (memcpy): Define.
+
+Tue Jun 16 13:44:02 1998 Michael Meissner <meissner@cygnus.com>
+
+ * genattrtab.c (struct attr_desc): Change int flags to bit
+ fields. Add bit fields for this being function_units_used
+ or *_blockage_range attributes.
+ (write_unit_name): New function to print a function unit name
+ given unit #.
+ (expand_units): Indicate whether this is function_units_used or
+ *_blockage_range attributes.
+ (write_toplevel_expr): Print function_units_used and
+ *_blockage_range attributes in a more friendly fashion.
+ (make_internal_attr): Indicate whether this attribute is either
+ function_units_used or *_blockage_range.
+
+Mon Jun 15 17:06:43 1998 Michael Meissner <meissner@cygnus.com>
+ Jim Wilson <wilson@cygnus.com>
+
+ * regmove.c (copy_src_to_dest): Do not copy src to dest if either
+ the source or destination is special.
+
+Mon Jun 15 13:20:33 1998 Jim Wilson <wilson@cygnus.com>
+
+ * c-decl.c (shadow_tag_warned): Use specs not declspecs in for loop.
+
+Mon Jun 15 07:16:29 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Jun 13 13:10:40 1998 Krister Walfridsson <cato@df.lth.se>
+
+ * config/sparc/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Undefine before
+ redefining it.
+
+Fri Jun 12 18:06:45 1998 Doug Evans <devans@egcs.cygnus.com>
+
+ * m32r/m32r.h (STARTFILE_SPEC): Delete crtsysc.o.
+ (ENDFILE_SPEC): Add -lgloss.
+
+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.
+
+1998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/rs6000/rs6000.c (output_prolog): Change locations and
+ directions of saving and restoring arguments of main on the stack.
+
+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 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
+ overflows.
+
+ * 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 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 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 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 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 ambiguous
+ 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): Initialize 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
+ 1998-05-23 commit.
+
+Tue Jun 2 21:59:01 1998 Richard Henderson <rth@cygnus.com>
+
+ * jump.c (rtx_unsafe_p): New function.
+ (jump_optimize): Use it on if/then/else transformations and
+ conditional move transformations.
+
+Tue Jun 2 22:50:10 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * fold-const.c (fold, case EQ_EXPR): When folding VAR++ == CONST
+ or VAR-- == CONST construct a proper mask if VAR is a bitfield.
+ Cope with CONST being out of range for the bitfield.
+
+Tue Jun 2 22:28:31 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
+
+ * expr.c (emit_move_insn_1): When moving complex values in several
+ steps, emit a CLOBBER to show the destination dies.
+
+Tue Jun 2 22:17:26 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (site.exp): Use the object testsuite directory as
+ the temporary directory.
+
+ * expr.c (expand_expr, case ADDR_EXPR): Handle taking the
+ address of an ADDRESSOF rtx.
+
+1998-06-02 Mike Stump <mrs@wrs.com>
+
+ * expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
+ * i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define.
+ * i960.md (ret, flush_register_windows): Define.
+ (nonlocal_goto): Likewise. Nested function nonlocal gotos don't
+ work yet.
+ * tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Document new macro.
+
+Tue Jun 2 14:02:38 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (divsi3, udivsi3, modsi3, umodsi3): Enable, and work
+ around an OSF/1 library bug wrt sign-extension of inputs.
+
+Tue Jun 2 13:02:44 1998 Richard Henderson <rth@cygnus.com>
+
+ * 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.
+
+Mon Jun 1 12:14:28 1998 Michael Meissner <meissner@cygnus.com>
+
+ * config/fp-bit.c (_fp{add,div}_parts): Return correct IEEE result
+ in the presence of IEEE negative 0's.
+
+Sun May 31 16:11:41 1998 John Wehle (john@feith.com)
+
+ * reload.c (find_reloads): Record the existing mode if
+ operand_mode == VOIDmode before replacing a register with
+ a constant.
+ * i386.md (tstsi, tsthi, tstqi, tstsf, tstdf, tstxf): Set
+ i386_compare_op1 to const0_rtx for the benefit of the
+ conditional move patterns.
+ (movsicc, movhicc, movsfcc, movdfcc, movxfcc, movdicc): Rewrite
+ based on suggestions from Jim Wilson.
+
+Sun May 31 00:44:02 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun May 31 00:34:17 1998 Bruce Korb <korbb@datadesign.com>
+
+ * Makefile.in (fixinc.sh): Update rules again.
+
+Sun May 31 00:27:47 1998 Jeffrey A Law (law@cygnus.com)
+
+ * extend.texi: Bring back reference to trampoline paper.
+
+Sun May 31 00:22:34 1998 Ulrich Drepper <drepper@cygnus.com>
+
+ * Makefile.in (USER_H): Add stdbool.h.
+ * ginclude/stdbool.h: New file.
+
+Fri May 29 01:48:25 1998 Jeffrey A Law (law@cygnus.com)
+
+ * jump.c (thread_jumps): Do not look at the NOTE_LINE_NUMBER
+ of a non-note insn.
+
+ * gcse.c (pre_delete): Fix code to determine the mode of
+ the reaching pseudo register.
+
+Fri May 29 01:07:28 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
+
+ * Makefile.in (GEN): Add gencheck.
+ (STAGESTUFF): Add tree-check.h and gencheck.
+
+Fri May 29 00:57:37 1998 Bruce Korb <korbb@datadesign.com>
+
+ * Makefile.in (cstamp-h.in): Remove before trying to recreate.
+ (fixinc.sh): Set some additional environment variables before
+ calling mkfixinc.sh.
+
+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 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * except.h (remove_handler): Add new prototype.
+ * except.c (remove_handler): New function to remove handlers
+ from an exception region.
+ * flow.c (find_basic_blocks_1): Remove handlers from regions when
+ handler label is deleted; remove exception regions with no handlers.
+
+Thu May 28 09:36:39 1998 Michael Meissner <meissner@cygnus.com>
+
+ * except.h (rtx): Define rtx type correctly if needed.
+ * function.h (rtx): Likewise.
+ (tree): Define tree type correctly if needed.
+
+ * c-pragma.c (toplevel): Include rtl.h.
+
+ * stor-layout.c (toplevel): Move include of rtl.h before
+ except.h.
+
+ * 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.
+
+ * configure.lang: Fix thinko when adding a definition for
+ target_alias to the Makefile.
+
+Wed May 27 02:50:00 1998 Catherine Moore (clm@cygnus.com)
+
+ * config/sparc/lb1spc.asm (.rem and .urem): Replace
+ routines.
+
+Wed May 27 02:48:31 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.c (arm_gen_constant): Rework to eliminate uninitialized
+ variable warnings. Don't generate scratch registers if only
+ counting insns.
+ (find_barrier): Eliminate unused variable SRC.
+
+1998-05-27 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * toplev.h (rtx_def): Provide global declaration to avoid
+ `limited scope' warnings.
+
+Tue May 26 23:47:52 1998 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * Makefile.in (gencheck.o): Use HOST_CC.
+ * i386/t-mingw32: New file.
+ * configure.in (i386-*-mingw32*): Use.
+
+Tue May 26 07:31:04 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.c (bad_signed_byte_operand): New predicate function.
+ * arm.h (PREDICATE_CODES): Add it to the list.
+ * arm.md (*extendqi[sh]i_insn): Split any addresses that ldrsb
+ can't handle.
+ (define_split): Two new splits for above insns.
+
+ * arm.c: Include toplev.h.
+ (arm_override_options): Add parentheses around use of tune_flags.
+ (arm_split_constant): Remove unused variable.
+ (arm_gen_constant, arm_gen_movstrqi, add_constant): Likewise.
+ (output_func_prologue, arm_expand_prologue): Likewise.
+ (arm_canonicalize_comparison): Make I unsigned; rework constants
+ accordingly. Add missing parentheses around << operation.
+ (arm_rtx_costs): Correctly parenthesize MULT costs. Add a DEFAULT
+ clause.
+ ({load,store}_multiple_sequence): Initialize BASE_REG.
+ (select_dominance_cc_mode): Add DEFAULT clauses.
+ (broken_move): Return zero if the destination is not a register.
+ (arm_reorg): Move unused REGNO declaration into the dead code.
+ * arm.h (CANONICALIZE_COMPARISON): Ensure OP1 is updated.
+
+Mon May 25 22:49:56 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon May 25 11:56:24 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon May 25 14:00:13 1998 Dave Brolley <brolley@cygnus.com>
+
+ * cpperror.c (v_cpp_message): Remove static prototype.
+ * cpplib.c (v_cpp_message): Move prototype to cpplib.h.
+ * cpplib.h (v_cpp_message): Add protoptype.
+ (stdarg.h,varargs.h): Needed for v_cpp_message prototype.
+
+Sun May 24 20:36:15 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun May 24 02:08:57 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+1998-05-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * m68k.h: Declare more functions used in macros.
+ (REG_CLASS_CONTENTS): Completely embrace initializer.
+ * m68k.md (adddi3, subdi3): Add abort call to avoid warning
+ about returning no value.
+ * cse.c (find_best_addr): Declare p and found_better only if
+ needed.
+ * dbxout.c (dbxout_continue): Define only if DBX_CONTIN_LENGTH > 0.
+ * dwarfout.c (string_length_attribute): #if 0 away.
+ * function.c (expand_function_end): Define varible blktramp only
+ if needed.
+ * jump.c (find_insert_position): Define only if !HAVE_cc0.
+ * loop.c (combine_givs_p): Define variable tem only if needed.
+ * real.c: Comment out unused functions eabs, eround,
+ e{24,53,64,113}toasc and eiinfin.
+
+Sat May 23 23:44:53 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * Makefile.in (boostrap2-lean, bootstrap3-lean,
+ bootstrap4-lean): New targets.
+
+Sat May 23 23:35:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * warn_summary, test_summary: Moved into the contrib directory.
+
+1998-05-23 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (ENQUIRE_CFLAGS, ENQUIRE_LDFLAGS): Move down to the end
+ of the Makefile.
+ (FLOAT_H_TEST): Likewise.
+ (ENQUIRE): Likewise.
+ (float.h-nat): Likewise.
+ (float.h-cross): Likewise.
+ (enquire): Likewise.
+ (enquire.o): Likewise.
+ (stmp-int-hdrs): Fix comment about enquire; depend upon gfloat.h.
+ (stmp-headers): Move actions to stmp-int-hdrs, retaining only a
+ no-op.
+ (FLOAT_H): Remove old float.h-nat version; move current definition
+ to CROSS_FLOAT_H location.
+ (all.cross): Remove comments about enquire stuff.
+
+ * Makefile.in (all.cross): Swap $(LIBGCC) and $(STMP_FIXPROTO).
+ (rest.encap): Likewise.
+ (libgcc2.ready): Depend upon $(STMP_FIXPROTO)
+
+ * toplev.h (tree_node): Provide global declaration to avoid
+ `limited scope' warnings.
+
+Sat May 23 23:23:35 1998 Robert Lipe <robertl@dgii.com>
+
+ * test_summary: Display section breaks for each entry
+ in a multilibbed target's output.
+
+1998-05-23 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
+ offset's mode is not ptr_mode, convert it.
+
+1998-05-22 Jason Merrill <jason@yorick.cygnus.com>
+
+ * fold-const.c (ssize_binop): New fn.
+ * tree.h: Declare it.
+
+Fri May 22 03:42:05 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * 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>
+
+ * cplus-dem.c (MBUF_SIZE): Bumped from 512 to 32767.
+
+Fri May 22 00:57:00 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
+
+ * final.c (JUMP_TABLES_IN_TEXT_SECTION): Provide a default value.
+ (shorten_branches, final_scan_insn): Test value of
+ JUMP_TABLES_IN_TEXT_SECTION instead of just testing whether it
+ is defined.
+ * tm.texi (JUMP_TABLES_IN_TEXT_SECTION): Corresponding changes.
+ * arm/coff.h: Define JUMP_TABLES_IN_TEXT_SECTION to 1.
+ * arm/tcoff.h: Likewise.
+ * i386/386bsd.h: Likewise.
+ * i386/freebsd-elf.h: Likewise.
+ * i386/freebsd.h: Likewise.
+ * i386/netbsd.h: Likewise.
+ * i386/ptx4-i.h: Likewise.
+ * i386/sysv4.h: Likewise.
+ * pa/pa.h: Likewise.
+ * rs6000/linux.h: Likewise.
+ * rs6000/rs6000.h: Likewise.
+ * sh/sh.h: Likewise.
+ * sparc/sp64-elf.h: Likewise.
+ * v850/v850.h: Likewise.
+ * rs6000/sysv4.h: Define JUMP_TABLES_IN_TEXT_SECTION to 0.
+ * i386/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION to (flag_pic).
+
+Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (gen_add3_insn): New function.
+ (fixup_match_2): Use it instead of calling gen_addsi3.
+
+Thu May 21 23:09:50 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (gencheck): Depend on HOST_LIBDEPS.
+
+ * alias.c (rtx_equal_for_memref_p): Handle SCRATCH as a memory
+ address.
+
+Thu May 21 20:18:13 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
+
+ * Makefile.in (TREE_H): Add tree-check.h.
+ (tree-check.h, gencheck): New targets.
+ * gencheck.c: New file.
+ * tree.c (tree_check, tree_class_check): New functions.
+ * tree.h (TREE_CHECK, TREE_CLASS_CHECK): Define.
+ (TYPE_CHECK, DECL_CHECK): Define.
+ Modify all access macros to use generated checking macros.
+
+Wed May 20 23:44:28 1998 John Wehle (john@feith.com)
+
+ * acconfig.h (HAVE_GAS_MAX_SKIP_P2ALIGN): New tag.
+ * configure.in: Check for it.
+ * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Use it.
+ * final.c (uid_align, uid_shuid, label_align): Make static.
+ (label_align): Change type to struct label_alignment pointer.
+ (LABEL_TO_ALIGNMENT, shorten_branches): Update due to type change.
+ (LABEL_TO_MAX_SKIP): Define.
+ (LABEL_ALIGN_MAX_SKIP, LOOP_ALIGN_MAX_SKIP,
+ LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Provide defaults.
+ (shorten_branches): Record the maximum bytes to skip when
+ aligning a label.
+ (final_scan_insn): Use the maximum bytes to skip when aligning a label
+ if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
+ * i386.h (LOOP_ALIGN_MAX_SKIP,
+ LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Define.
+ * i386.c (override_options): i386_align_jumps and i386_align_loops
+ default to 4 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
+ * invoke.texi: Document new i386 align-loops and align-jumps behavior.
+
+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
+ lineno is 0. (Can happen when compiling Java .class files.)
+
+Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_reg_free_for_value_p): Fix RELOAD_FOR_INPUT
+ end of lifetime and RELOAD_FOR_OUTPUT start of lifetime.
+
+Thu May 21 19:32:27 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * combine.c (nonzero_bits): For paradoxical subregs, take
+ LOAD_EXTENDED_OP into account.
+
+Thu May 21 11:51:15 1998 Dave Brolley <brolley@cygnus.com>
+
+ * configure.in (extra_c_objs): Add prefix.o.
+ (extra_cxx_objs): Extra objects for C++ with cpplib.
+ * configure: Regenerate.
+
+ * c-tree.h (get_directive_line): Different prototype for cpplib.
+ (GET_DIRECTIVE_LINE): Macro wrapper for get_directive_line.
+
+ * c-lex.h (get_directive_line): Not needed here for cpplib.
+
+ * c-lex.c (yy_cur,yy_lim,yy_get_token): Move to c-common.c.
+ (GET_DIRECTIVE_LINE): Move to c-common.c and rename to get_directive_line.
+
+ * c-common.c (parse_in,parse_options,cpp_token): Declare for cpplib.
+ (yy_cur,yy_lim,yy_get_token,get_directive,line): Moved here from c-lex.c
+
+Thu May 21 09:04:42 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gengenrtl.c (type_from_format, accessor_from_format): Change
+ type of parameter `c' from `char' to `int'.
+
+Wed May 20 22:28:34 1998 Jeffrey A Law (law@cygnus.com)
+
+ * warn_summary, test_summary: New scripts from
+ Kaveh Ghazi and Alexandre Oliva respectively.
+
+ * gcse.c (current_function_calls_longjmp): Declare.
+
+1998-05-20 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c (base_type_die): Use int_size_in_bytes.
+
+Wed May 20 01:11:02 1998 Doug Evans (devans@cygnus.com)
+ Jeff Law (law@cygnus.com)
+
+ * Global CSE and constant/copy propagation.
+ * Makefile.in (OBJS): Add gcse.o.
+ (STAGESTUFF): Add *.gcse.
+ (gcse.o): Add dependencies.
+ (mostlyclean): Remove *.gcse and */*.gcse.
+ * gcse.c: New file.
+ * loop.c (loop_optimize): Move call to init_alias_analysis.
+ * recog.c (validate_replace_src): New function.
+ * toplev.c (gcse_dump): New global variable.
+ (flag_gcse, gcse_time): Likewise.
+ (compile_file): Initialize gcse_time and clean out the gcse dump
+ file if necessary.
+ (rest_of_compilation): Call gcse_main as requested. Dump RTL
+ after gcse if requested.
+ (main): Enable gcse for -O2 and above. Handle -dG. Enable gcse
+ dumps for -da.
+ * gcc.texi: Add gcse related internal documentation.
+ * invoke.texi: Note new command line options for gcse.
+ * tm.texi: Document AVOID_CCMODE_COPIES.
+ * mips.h (AVOID_CCMODE_COPIES): Define.
+
+Tue May 19 22:31:20 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (deduced.h): Only run scan-types if $(SYSTEM_HEADER_DIR)
+ exists.
+ (stmp-fixproto): Simlarly for running fixproto.
+ * cross-make (SYSTEM_HEADER_DIR): Now $(tooldir)/sys-include.
+
+Tue May 19 19:08:52 1998 Jim Wilson <wilson@cygnus.com>
+
+ * config/mips/mips.c (double_memory_operand): Accept any MEM during
+ reload when TARGET_64BIT.
+
+Tue May 19 18:21:25 1998 Jim Wilson <wilson@cygnus.com>
+
+ Finish incomplete change started by Kenner.
+ * configure.in (*-*-linux-gnu*): Delete NO_STAB_H from xm_defines.
+ (powerpcle-*-cygwin32): Delete xm_defines.
+ * final.c, mips-tfile.c, xcoffout.c, config/mips/mips.c: Use
+ HAVE_STAB_H instead of NO_STAB_H.
+ * config/xm-linux.h (NO_STAB_H): Delete.
+ (HAVE_STAB_H): Undefine.
+ * config/i386/xm-go32.h (NO_STAB_H): Delete.
+
+1998-05-19 Jim Wilson <wilson@cygnus.com>
+
+ * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Ignore
+ LANG_TYPE trees with DECL_SOURCE_LINE of 0.
+
+Tue May 19 15:07:54 1998 Todd Vierling <tv@netbsd.org>
+
+ * arm/netbsd.h: Ensure DWARF2_UNWIND_INFO is undefined.
+
+Tue May 19 17:19:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_reg_free_for_value_p): New function.
+ (allocate_reload_reg, choose_reload_regs): Use it.
+
+Tue May 19 11:51:00 1998 Andrew MacLeod (amacleod@cygnus.com)
+
+ * except.c (expand_start_catch): Correct logic for when to
+ generate a new handler label, and when to use the old one.
+
+Tue May 19 11:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (print-rtl.o): Depend on bitmap.h.
+ (dbxout.o): Depend on toplev.h.
+ ($(SCHED_PREFIX)sched.o): Likewise.
+ ($(out_object_file)): Likewise for system.h and toplev.h.
+ (cppmain.o): Depend on gansidecl.h.
+ (cpplib.o): Likewise.
+ (cpperror.o): Likewise.
+ (cppexp.o): Likewise.
+ (cpphash.o): Likewise.
+ (cppalloc.o): Likewise.
+ (fix-header.o): Depend on cpplib.h and cpphash.h.
+ (scan-decls.o): Depend on gansidecl.h.
+
+ * basic-block.h (free_regset_vector): Add prototype.
+
+ * cccp.c (check_precompiled): Mark parameter `fname' with
+ ATTRIBUTE_UNUSED.
+ (do_assert): Likewise for `op' and `keyword'.
+ (do_unassert): Likewise.
+ (do_line): Likewise for `keyword'.
+ (do_error): Likewise for `op' and `keyword'.
+ (do_warning): Likewise.
+ (do_ident): Likewise for `keyword'.
+ (do_pragma): Likewise for `limit', `op' and `keyword'.
+ (do_sccs): Likewise.
+ (do_if): Likewise for `keyword'.
+ (do_elif): Likewise.
+ (do_else): Likewise.
+ (do_endif): Likewise.
+
+ * collect2.c (getenv): Remove redundant prototype.
+ (collect_exit, collect_execute, dump_file): Likewise.
+ (dump_list): Wrap prototype and definition in COLLECT_EXPORT_LIST.
+ (dump_prefix_list): Hide prototype and definition.
+
+ * sparc.c: Include toplev.h.
+ (intreg_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
+ (symbolic_memory_operand): Likewise.
+ (sp64_medium_pic_operand): Likewise.
+ (data_segment_operand): Likewise.
+ (text_segment_operand): Likewise.
+ (splittable_symbolic_memory_operand): Likewise.
+ (splittable_immediate_memory_operand): Likewise.
+ (eq_or_neq): Likewise.
+ (normal_comp_operator): Likewise.
+ (noov_compare_op): Likewise.
+ (v9_regcmp_op): Likewise.
+ (v8plus_regcmp_op): Likewise.
+ (extend_op): Likewise.
+ (cc_arithop): Likewise.
+ (cc_arithopn): Likewise.
+ (small_int): Likewise.
+ (uns_small_int): Likewise.
+ (clobbered_register): Likewise.
+ (legitimize_pic_address): Likewise.
+ (delay_operand): Likewise.
+ (sparc_builtin_saveregs): Remove unused variable `stdarg'.
+
+ * sparc.h (order_regs_for_local_alloc, eligible_for_return_delay,
+ sparc_issue_rate, v8plus_regcmp_p): Add prototypes.
+
+ * sparc.md (cmpdi_v8plus): Add abort for default case in switch.
+
+ * cppalloc.c: Include gansidecl.h.
+
+ * cpperror.c: Include stdarg.h/varargs.h and gansidecl.h.
+ (cpp_file_line_for_message): Mark parameter `pfile' with
+ ATTRIBUTE_UNUSED.
+ (v_cpp_message): New function.
+ (cpp_message): Use it. Also convert to variable arguments.
+ (cpp_fatal): Likewise.
+ (cpp_pfatal_with_name): Constify parameter `name'.
+
+ * cppexp.c: Move gansidecl.h before cpplib.h.
+ * cpphash.c: Likewise.
+ * cpphash.h (hashf, delete_macro): Add prototypes.
+
+ * cpplib.c: Include stdarg.h/varargs.h and move gansidecl.h before
+ cpplib.h. Don't include errno.h.
+ (update_path): Add arguments to prototype.
+ (cpp_fatal, cpp_file_line_for_message, cpp_message, delete_macro,
+ cpp_print_containing_files): Remove redundant prototypes.
+ (cpp_hash_cleanup, add_import, append_include_chain,
+ make_assertion, path_include, initialize_builtins,
+ initialize_char_syntax, finclude, validate_else, comp_def_part,
+ lookup_import, redundant_include_p, is_system_include,
+ read_name_map, read_filename_string, open_include_file,
+ check_macro_name, compare_defs, compare_token_lists,
+ eval_if_expression, change_newlines): Add prototype arguments.
+ (hashf): Remove redundant prototype.
+ (read_token_list, free_token_list, safe_read, xcalloc, savestring,
+ conditional_skip, skip_if_group): Add prototype arguments.
+ (fdopen): Remove redundant prototype.
+ (do_define, do_line, do_include, do_undef, do_error, do_pragma,
+ do_ident, do_if, do_xifdef, do_else, do_elif, do_endif, do_sccs,
+ do_once, do_assert, do_unassert, do_warning): Add prototype arguments.
+ (struct directive): Add prototype arguments to function pointer
+ member `func'.
+ (handle_directive): Add missing arguments to call to `do_line'.
+ (do_include): Mark parameters `unused1' and `unused2' with
+ ATTRIBUTE_UNUSED.
+ (do_line): Likewise for `keyword' and new parameters `unused1' and
+ `unused2'.
+ (do_error): Likewise for `keyword'.
+ (do_warning): Likewise. Also add missing argument `pfile' in call
+ to cpp_pedwarn.
+ (do_once): Mark parameter `keyword', `unused1' and `unused2' with
+ 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.
+ (do_if): Likewise for `keyword'.
+ (do_elif): Likewise.
+ (eval_if_expression): Likewise for `buf' and `length'.
+ (do_xifdef): Likewise for `unused1' and `unused2'.
+ (do_else): Likewise for `keyword', `buf' and `limit'.
+ (do_endif): Likewise.
+ (parse_name): Add missing argument `pfile' in call to cpp_pedwarn.
+ (cpp_handle_options): Remove superfluous NULL argument in call to
+ cpp_fatal.
+ (cpp_handle_options): Likewise.
+ (do_assert): Mark parameter `keyword', `buf' and `limit' with
+ ATTRIBUTE_UNUSED.
+ (do_unassert): Likewise.
+ (cpp_print_file_and_line): Add missing argument `pfile' in call to
+ cpp_file_line_for_message.
+ (v_cpp_error): New function.
+ (cpp_error): Use it. Also accept variable arguments.
+ (v_cpp_warning): New function.
+ (cpp_warning): Use it. Also accept variable arguments.
+ (cpp_pedwarn): Accept variable arguments.
+ (v_cpp_error_with_line): New function.
+ (cpp_error_with_line): Use it. Accept variable arguments.
+ (v_cpp_warning_with_line): New function.
+ (cpp_warning_with_line): Use it. Accept variable arguments. Hide
+ definition.
+ (cpp_pedwarn_with_line): Accept variable arguments.
+ (cpp_pedwarn_with_file_and_line): Likewise.
+ (cpp_error_from_errno): Constify parameter `name'. Add missing
+ argument `pfile' in call to cpp_file_line_for_message.
+ (cpp_perror_with_name): Constify parameter `name'.
+
+ * cpplib.h: Define PARAMS() in terms of PROTO().
+ (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_fatal, cpp_message, cpp_pfatal_with_name,
+ cpp_file_line_for_message, cpp_print_containing_files): Add
+ arguments to prototypes.
+ (scan_decls, cpp_finish): Add prototypes.
+
+ * cppmain.c: Include gansidecl.h.
+ (main): Remove unused variable `i'.
+
+ * dbxout.c: Include toplev.h.
+
+ * demangle.h (do_tlink, collect_execute, collect_exit,
+ collect_wait, dump_file, file_exists): Add prototype.
+
+ * dwarf2out.c (dwarf_type_encoding_name, decl_start_label): Hide
+ prototype and definition.
+ (gen_unspecified_parameters_die): Don't assign results of call to
+ function new_die() to unused variable `parm_die'.
+ (dwarf2out_line): Mark parameter `filename' with ATTRIBUTE_UNUSED.
+ (dwarf2out_define): Likewise for `lineno' and `buffer'.
+
+ * dwarfout.c (output_unsigned_leb128, output_signed_leb128): Hide
+ prototype and definition.
+ (output_die): Add prototype arguments to function pointer arg.
+ (output_unspecified_parameters_die): Mark parameter `arg' with
+ ATTRIBUTE_UNUSED.
+
+ * except.c (output_exception_table_entry): Remove unused variable
+ `eh_entry'.
+
+ * except.h (expand_fixup_region_start, expand_fixup_region_end):
+ Add prototypes.
+
+ * expr.c (do_jump_by_parts_equality_rtx): Remove prototype.
+
+ * expr.h (do_jump_by_parts_equality_rtx): Add prototype.
+
+ * fix-header.c: Include stdarg.h/varargs.h, move gansidecl.h
+ before cpplib.h, include cpphash.h, remove redundant prototype of
+ cpp_fatal, don't define `const', add a prototype for `fatal'.
+ (cpp_file_line_for_message): Add missing arguments `pfile'.
+ (v_cpp_message): New function.
+ (cpp_message): Use it.
+ (v_fatal): New function.
+ (fatal, cpp_fatal): Use it.
+ (cpp_pfatal_with_name): Constify parameter `name'.
+
+ * flow.c (free_regset_vector): Remove redundant prototype.
+
+ * function.c (round_down): Wrap prototype and definition with
+ macro ARGS_GROW_DOWNWARD.
+ (record_insns): Wrap prototype and definition with
+ defined (HAVE_prologue) || defined (HAVE_epilogue).
+
+ * gansidecl.h (ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5): New macros.
+
+ * gen-protos.c: Include gansidecl.h.
+ (hashf): Don't make it static, constify parameter `name'.
+
+ * genattrtab.c (check_attr_test): Change XEXP() to XSTR() to match
+ specifier %s in calls to function `fatal'.
+
+ * haifa-sched.c: Include toplev.h.
+ (find_rgns): Remove unused variable `j'.
+
+ * integrate.c (note_modified_parmregs): Mark parameter `x' with
+ ATTRIBUTE_UNUSED.
+ (mark_stores): Likewise.
+
+ * jump.c (mark_modified_reg): Likewise.
+
+ * output.h (insn_current_reference_address): Add prototype.
+ (eh_frame_section): Likewise.
+
+ * print-rtl.c: Include bitmap.h.
+
+ * reload1.c (reload): Wrap variables `note' and `next' in macro
+ PRESERVE_DEATH_INFO_REGNO_P.
+ (forget_old_reloads_1): Mark parameter `ignored' with
+ ATTRIBUTE_UNUSED.
+ (choose_reload_regs): Remove unused variable `in'.
+ (reload_cse_invalidate_mem): Mark parameter `ignore' with
+ ATTRIBUTE_UNUSED.
+ (reload_cse_check_clobber): Likewise.
+
+ * rtl.h (expand_null_return, reg_classes_intersect_p): Add prototype.
+ (mark_elimination): Fix typo in prototype.
+
+ * 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
+ block number for NOTE_INSN_BLOCK_END.
+
+Mon May 18 15:30:42 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/lib1funcs.asm: Add .text pseudo op to start of
+ ___udivsi3.
+
+ * config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
+ 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.
+
+Mon May 18 13:20:23 1998 Richard Henderson <rth@cygnus.com>
+
+ * tree.h (TYPE_SIZE_UNIT): New.
+ (struct tree_type): Add size_unit member.
+ * stor-layout.c (layout_type): Initialize it.
+ * expr.c (get_inner_reference) [ARRAY_REF]: Use it.
+ * tree.c (size_in_bytes, int_size_in_bytes): Likewise.
+
+Mon May 18 12:07:37 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * stor-layout.c (layout_record): Fix off-by-one error when checking
+ length of the TYPE_BINFO vector.
+
+Mon May 18 10:59:23 1998 Nick Clifton <nickc@cygnus.com>
+
+ * dbxout.c (dbxout_parms): Use TREE_ARG to compute the type of a
+ function parameter passed in memory.
+
+Mon May 18 09:02:09 1998 Robert Lipe <robertl@dgii.com>
+
+ * dwarfout.h, dwarf2out.h, dbxout.h, sdbout.h: New files.
+ Prototypes for externally used functions in respective C files.
+ * dwarfout.c, dbxout.c, dwarf2out.c, sdbout.c, toplev,c,
+ final.c: Include above files.
+ * Makefile.in (toplev.o): Add dependency for above four headers.
+ (final.o): Likewise.
+ (dwarfout.o, dbxout.o, dwarf2out.o, sdbout.o): Depend on four
+ respective header files.
+
+Mon May 18 01:23:33 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (TARGET_TOOLPREFIX): No longer define.
+ (AR_FOR_TARGET, RANLIB_FOR_TARGET): Define to use versions in
+ the build tree if they exist.
+ (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Update
+ appropriately.
+ (objdir): Let configure substitute value.
+ (FLOAT_H): Let configure select a pre-built version from the
+ config subdir.
+ * build-make (INSTALL_TARGET, ALL): Disable, no longer needed.
+ * configure.in: Substitute for objdir.
+
+ * Makefile.in (build_canonical, host_canonical): Let configure
+ substitute values for these variables.
+ * configure.in: Substitute for build_canonical, host_canonical
+ and target_subdir in generated Makefile.
+
+ * output.h (find_basic_blocks): Declare.
+ (free_basic_block_vars, set_block_num, life_analysis): Likewise.
+
+ * Makefile.in (BISON): Use bison from the build tree if it exists.
+ (FLEX): Similarly.
+
+Mon May 18 00:08:19 1998 Nick Clifton <nickc@cygnus.com>
+
+ * gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
+ (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
+ (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
+ command line arguments to see if an executable is not being
+ created, and if so - do not append the suffix.
+
+ * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
+ driver macro.
+
+Sun May 17 23:59:45 1998 John Wehle (john@feith.com)
+
+ * i386.h (ALIGN_DFmode): Delete.
+ (CONSTANT_ALIGNMENT): Define.
+ * varasm.c (force_const_mem): Use it.
+
+Sun May 17 19:31:05 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_emit_conditional_branch): Clear cmp_code after
+ using it with swap_condition, not before.
+
+Sun May 17 13:44:32 1998 Jim Wilson <wilson@cygnus.com>
+
+ * alias.c (mode_alias_check): Delete.
+ (true_dependence, anti_dependence, output_dependence): Revert April 21
+ change.
+
+Sun May 17 08:45:21 1998 Krister Walfridsson <cato@df.lth.se>
+
+ * toplev.c (output_lang_identify): Enable prototype and definition.
+
+Sun May 17 01:12:27 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat May 16 23:20:32 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha/osf.h (HAVE_STAMP_H): Define.
+ * alpha.c: Use it.
+ * alpha/netbsd.h, alpha/netbsd-elf.h: New files.
+ * configure.in (alpha*-*-netbsd*): New.
+ Based on patches from Paul H. Anderson <pha@pdq.com>.
+
+ * configure.in (alpha*-*-linux-*): Kill xm_defines.
+ (alpha*-*-linux-gnulibc1*) [fixincludes]: Define.
+ * alpha/xm-linux.h: Remove file.
+
+Sat May 16 18:32:45 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * dbxout.c (dbxout_parms): If mode of type of parameter living
+ in memory doesn't match mode of DECL_RTL, make big endian correction.
+
+Fri May 15 21:40:06 1998 John Wehle (john@feith.com)
+
+ * i386.md (movdi-1, movdi): Rewrite based on SI move patterns.
+
+Fri May 15 18:55:22 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.h (BINFO_SIZE, TYPE_BINFO_SIZE): New macros.
+ * stor-layout.c (layout_record): Set it.
+
+Fri May 15 18:49:30 1998 Mark Mitchell <mmitchell@usa.net>
+
+ * toplev.c (rest_of_compilation): Don't defer nested functions.
+
+Fri May 15 17:42:52 1998 Bob Manson <manson@charmed.cygnus.com>
+
+ * config/rs6000/rs6000.c (rs6000_stack_info): Align the stack bottom
+ to an 8-byte boundary if info_ptr->fpmem_p.
+
+Fri May 15 17:36:11 1998 Bill Moyer <ttk@cygnus.com>
+
+ * loop.c (basic_induction_var): Added test preventing
+ CCmode parameter passed to convert_modes().
+
+Fri May 15 17:26:18 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
+ input_filename and lineno around expand_expr call. Set them to values
+ in WFL before expand_expr call.
+
+Fri May 15 12:44:57 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
+
+ * stor-layout.c (set_sizetype): Set TYPE_NAME on bitsizetype.
+
+Fri May 15 07:20:03 1998 Mark Mitchell <mmitchell@usa.net>
+
+ * fold-const.c (constant_boolean_node): New function.
+ (fold): Use it.
+
+Fri May 15 11:21:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (gen_shl_and): Don't sign extend constant for kind two.
+ Abort if trying to split kind 3 or 4 outside of combine.
+
+Fri May 15 01:47:37 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.c (print_operand, case 'x'): Use HOST_WIDE_INT_PRINT_HEX.
+
+Fri May 15 01:42:45 1998 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * objc/Make-lang.in (OBJC_O): Add missing exeext.
+ (libobjc.a, runtime-info.h): Likewise.
+
+Fri May 15 01:29:39 1998 John Wehle (john@feith.com)
+
+ * i386.h (DATA_ALIGNMENT): Define.
+
+Fri May 15 05:35:37 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (delete_output_reload): Ignore single USE that
+ was emitted for the pseudo use of this INSN.
+ If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
+ remains, we can always delete OUTPUT_RELOAD_INSN.
+
+Thu May 14 18:38:50 1998 Jim Wilson <wilson@cygnus.com>
+
+ * reload.c (find_reloads): Don't penalize SCRATCH output reload.
+
+Thu May 14 15:10:30 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
+
+Thu May 14 16:30:47 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * eh-common.h: New file for basic EH data structures.
+ * 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
+ 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
+ at the start of all catch blocks.
+ (struct func_eh_entry): New structure for maintaining handlers
+ associated with EH regions.
+ (new_eh_region_entry): New function to register an EH region.
+ (add_new_handler): New function to register a handler with a region.
+ (get_new_handler): Creates anew handler entry for registering.
+ (find_func_region): New function to convert a NOTE eh region number
+ to an Eh region index.
+ (get_first_handler): New function to get the first handler in a region.
+ (clear_function_eh_region): New function to release memory.
+ (duplicate_handlers): New function to duplicate a list of handlers.
+ (expand_eh_region_end): Create a new region entry node as well.
+ (expand_leftover_cleanups): Call receive_exception_label() and
+ register the cleanup as a handler to the current region.
+ (expand_start_catch): New function to start a catch clause.
+ (expand_end_catch): New function to end a catch clause.
+ (expand_start_all_catch): Restructure to not do the equivalent of
+ what expand_start_catch() does now. Push the exception region being
+ handled onto the catch stack.
+ (output_exception_table_entry): Issue an entry for each handler
+ associated with a region.
+ (set_exception_lang_code): New function for setting the language code.
+ (set_exception_version_code): New function to set the version number.
+ (output_exception_table): Output version and language codes.
+ (find_exception_handler_labels): Find handler labels using new scheme.
+ (is_exception_handler_label): New function, returns 1 if label is
+ present as a handler in some exception region.
+ (check_exception_handler_labels): Use the new scheme.
+ (init_eh_for_function): Initialize the catch stack.
+ (save_eh_status): Save the catch stack.
+ (restore_eh_status): Restore the catch stack.
+ (scan_region): Don't remove unreferenced handler label. Flow does it.
+ (get_reg_for_handler): New function to get the eh_context pointer
+ passed by __throw.
+ (expand_builtin_eh_stub): Changes required for NEW_EH_MODEL only.
+ * final.c (final_scan_insn): With NEW_EH_MODEL, add EH table
+ entry when processing END region rather that START region.
+ * flow.c (find_basic_blocks_1): Find all potential handler regions
+ now that we don't automatically know what the labels might be.
+ Let scan_region() remove unreferenced EH BEGIN/END labels.
+ * integrate.c (get_label_from_map): Put inlined labels onto the
+ permanent obstack since we don't know which ones might be exception
+ labels.
+ (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
+ 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.
+
+Thu May 14 12:58:21 1998 Jim Wilson <wilson@cygnus.com>
+
+ * i960.h (hard_regno_mode_ok): Changed to function from array of
+ unsigned.
+ (HARD_REGNO_MODE_OK): Call function instead of testing bit.
+ * i960.c (hard_regno_mode_ok): Changed to function from array of
+ unsigned.
+
+Thu May 14 08:41:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (remove_replacements): New function.
+ * reload.h (remove_replacements): Declare.
+ * reload1.c (choose_reload_regs): Disable some reloads that
+ belong to inherited reloads.
+
+Thu May 14 02:17:17 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (scan_loop): Don't call move_movables for optimize_size.
+
+ * reload1.c (merge_assigned_reloads): When merging, reset
+ reload_spill_index for the eliminated reload.
+
+Wed May 13 17:51:13 1998 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (schedule_insns): Fix merge goof.
+
+1998-05-13 Jim Wilson <wilson@cygnus.com>
+
+ * varasm.c (make_decl_rtl): Revert April 1 change.
+ * alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
+ m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
+ Get function name from the SYMBOL_REF in the DECL_RTL, not from
+ DECL_ASSEMBLER_NAME.
+ * i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
+ DECL_ASSEMBLER_NAME.
+
+Wed May 13 13:09:19 1998 Jim Wilson <wilson@cygnus.com>
+
+ * i386.c (notice_update_cc, output_float_compare): Disable
+ TARGET_CMOVE support.
+
+Wed May 13 15:28:59 1998 Michael Meissner <meissner@cygnus.com>
+ Jeff Law <law@cygnus.com>
+
+ * rtlanal.c (find_reg_note): Ignore notes that are not on on
+ insns of class 'i'.
+ (find_regno_note): Likewise.
+
+ * Makefile.in (stor-layout.o): Depend on except.h.
+ (varasm.o, function.o): Likewise.
+ (expr.o): Depend on except.h, modemap.def and hard-reg-set.h.
+
+ * Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
+ (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
+ ($(HOST_PREFIX_1)rtl.o): Likewise.
+ ($(HOST_PREFIX_1)bitmap.o): New host object.
+ * emit-rtl.c (toplevel): Include bitmap.h.
+ (gen_rtx): Handle 't' and 'b' nodes.
+ * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
+ Print block number for block begin/end notes. Print 't' type
+ nodes as a pointer. Know that the 3rd argument of live range
+ start/stop notes is really a range_info rtx. If type is 'b', print
+ out argument as a bitmap.
+ * rtl.c: Include bitmap.c.
+ (copy_rtx): Copy tree nodes as is. Copy bitmaps if type is 'b'.
+ (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
+ * 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
+ communicating live range information to the debug output functions.
+ * rtl.h (rtunion_def): Add rttree and rtbit fields.
+ (XBITMAP, XTREE): New accessor macros.
+ (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
+ (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
+ (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
+ (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
+ (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
+ (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
+ (RANGE_INFO_*): Likewise.
+ * sched.c (sched_analyze): Keep live range start/stop notes.
+ (unlink_other_notes): Likewise.
+ * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
+ (unlink_other_notes): Likewise.
+ * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
+ (BLOCK_LIVE_RANGE_FLAG): Likewise.
+ (DECL_LIVE_RANGE_RTL): Likewise.
+ (struct tree_block): Add live_range_flag, live_range_var_flag,
+ live_range_start and live_range_end.
+ (struct tree_decl): Add live_range_rtl field.
+ * gengenrtl.c (type_from_format): Handle 'b' and 't'.
+ (accessor_from_format): Likewise.
+
+ * haifa-sched.c (schedule_block): Make verbose output line up.
+ Also add a blank line in printing the individual ready lists.
+
+Wed May 13 15:43:44 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
+ (c-lex.o): Depend on output.h.
+ (c-common.o): Likewise.
+ (stmt.o): Likewise.
+ (calls.o): Likewise.
+ (integrate.o): Depend on toplev.h.
+ (regclass.o): Depend on output.h.
+ (final.o): Depend on reload.h.
+
+ * c-common.c: Include output.h.
+ (check_format_info): Remove unused variable `integral_format'.
+
+ * c-decl.c (print_lang_decl): Mark parameters `file', `node' and
+ `indent' with ATTRIBUTE_UNUSED.
+ (print_lang_type): Likewise.
+ (maybe_build_cleanup): Likewise for parameter `decl'.
+ (copy_lang_decl): Likewise for parameter `node'.
+
+ * c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
+ (lang_print_xnode): Mark parameters `file', `node' and `indent'
+ with ATTRIBUTE_UNUSED.
+ (lookup_interface): Likewise for parameter `arg'.
+ (is_class_name): Likewise.
+ (maybe_objc_check_decl): Likewise for parameter `decl'.
+ (maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
+ `reflexive'.
+ (maybe_objc_method_name): Likewise for parameter `decl'.
+ (build_objc_string): Likewise for parameters `len' and `str'.
+
+ * c-lex.c: Include output.h.
+
+ * c-lex.h (position_after_white_space): Correct typo in prototype.
+
+ * c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
+ c_expand_end_cond, init_iterators): Add prototypes.
+
+ * caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
+ with ATTRIBUTE_UNUSED.
+
+ * calls.c: Include output.h.
+
+ * cccp.c (pipe_closed): Mark parameter `signo' with
+ ATTRIBUTE_UNUSED.
+
+ * combine.c: Move inclusion of expr.h to after insn-config.h.
+
+ * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
+ as empty, rather define as ((void)0).
+
+ * sparc.c (sparc_check_64): Add braces around ambiguous `else'.
+ Add parentheses around assignment used as truth value.
+
+ * cplus-dem.c (squangle_mop_up): Change return type to void.
+ (internal_cplus_demangle): Remove unused parameter `options'.
+ All callers changed.
+ (cplus_demangle_opname): Remove function wide variable `int i' and
+ replace with `size_t i' at each location where it is used.
+ (cplus_demangle_opname): Change type of `i' from int to size_t.
+
+ * cppexp.c (right_shift): Mark parameter `pfile' with
+ ATTRIBUTE_UNUSED.
+
+ * cpphash.c (cpp_lookup): Likewise.
+ (cpp_hash_cleanup): Likewise.
+
+ * cpplib.c (parse_name): Add a prototype and make it static.
+ (null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
+ (null_cleanup): Likewise for parameters `pbuf' and `pfile'.
+ (macro_cleanup): Likewise for parameter `pfile'.
+ (file_cleanup): Likewise.
+
+ * cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
+ cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
+
+ * crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
+ __DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
+
+ * cse.c (cse_check_loop_start): Mark parameter `set' with
+ ATTRIBUTE_UNUSED.
+
+ * dbxout.c (flag_minimal_debug, have_used_extensions,
+ source_label_number): Move inside macro wrapper check against
+ defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
+
+ * dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
+
+ * except.h (doing_eh): Provide prototype.
+
+ * expr.c: Move inclusion of expr.h to after insn-config.h.
+
+ * final.c: Include reload.h.
+ (shorten_branches): Cast the first argument of bzero to char *.
+
+ * fix-header.c (cpp_print_containing_files): Mark parameter
+ `pfile' with ATTRIBUTE_UNUSED.
+ (cpp_fatal): Likewise.
+
+ * flow.c (find_basic_blocks_1): Cast the first argument of bzero
+ to char *.
+
+ * genattrtab.c (make_length_attrs): Change the type of variable
+ `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.
+
+ * gengenrtl.c (gencode): When generating genrtl.c, cast the first
+ argument of bzero to char*.
+
+ * integrate.c: Include toplev.h.
+
+ * libgcc2.c: Wrap `struct exception_table' and
+ `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.
+ (finish_protocol): Likewise for parameter `protocol'.
+
+ * output.h (declare_weak): Add prototype.
+ (decode_reg_name): Don't wrap with TREE_CODE macro.
+ (assemble_alias): Add prototype.
+
+ * regclass.c: Include output.h.
+
+ * reload.h (reloads_conflict): Add prototype.
+
+ * rtl.h (print_rtl_single, mark_elimination, reg_class_subset_p,
+ output_func_start_profiler): Add prototypes.
+
+ * rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
+ ATTRIBUTE_UNUSED.
+
+ * scan-decls.c: Include scan.h.
+
+ * scan.h (recognized_function, recognized_extern): Add prototypes.
+
+ * stmt.c: Include output.h.
+
+ * toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
+ (output_lang_identify): Hide prototype and definition.
+ (float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
+ (pipe_closed): Likewise.
+
+ * toplev.h (count_error, strip_off_ending, error_for_asm,
+ warning_for_asm): Add prototypes.
+
+Wed May 13 12:54:19 1998 Michael Meissner <meissner@cygnus.com>
+
+ * toplev.c (rest_of_compilation): "Charge" final for any time
+ doing various cleanup operations after finishing compilation
+ of a function.
+
+ * 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.
+ * regclass.c (allocate_reg_info): Keep reg_n_max up to date.
+ Delete regno_max variable.
+ * regs.h (REG_N_CHECK): Define.
+ (REG_N_REFS, REG_N_SETS, REG_N_DEATHS): Use REG_N_CHECK.
+ (REG_N_CHANGES_SIZE, REG_N_CALLS_CROSSED, REG_LIVE_LENGTH): Likewise.
+ (REGNO_FIRST_UID, REGNO_LAST_UID, REGNO_LAST_NOTE_UID): Likewise.
+
+Wed May 13 12:54:19 1998 Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>
+
+ * acconfig.h (ENABLE_CHECKING): Undefine.
+ * configure.in (--enable-checking): New option.
+
+Wed May 13 08:52:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (merge_assigned_reloads): Can merge
+ RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
+ if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.
+
+Tue May 12 20:05:57 1998 Jim Wilson <wilson@cygnus.com>
+
+ * collect2.c (main): Ignore do_collecting when COLLECT_EXPORT_LIST.
+
+Wed May 13 03:23:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (gen_reload): Create REG_EQUIV notes.
+
+Tue May 12 22:21:07 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload): Fix check for USEs to use code of pattern.
+ (choose_reload_regs): Remove dead variable use_insn.
+
+Tue May 12 14:04:49 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
+
+Tue May 12 15:16:02 1998 Michael Meissner <meissner@cygnus.com>
+
+ * haifa-sched.c (HAIFA_INLINE): Define to be __inline unless
+ already defined.
+ (find_insn_{,mem_}list): Use HAIFA_INLINE, not __inline.
+ (insn_{unit,issue_delay}): Likewise.
+ (blockage_range): Likewise.
+ (actual_hazard{,_this_instance}): Likewise.
+ (schedule_unit): Likewise.
+ (potential_hazard): Likewise.
+ (insn_cost): Likewise.
+ (swap_sort): Likewise.
+ (queue_insn): Likewise.
+ (birthing_insn_p): Likewise.
+ (adjust_priority): Likewise.
+ (get_block_head_tail): Likewise.
+ (init_rgn_data_dependences): Likewise.
+
+Tue May 12 10:27:54 1998 Klaus Kaempf <kkaempf@progis.de>
+
+ * alpha/vms.h (COMMON_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON): Define.
+
+Tue May 12 11:44:14 1998 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/mips.h (ASM_OUTPUT_ALIGN): Remove trailing semi-colon.
+
+Tue May 12 11:38:31 1998 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/mips.md (dslot): Move after definition of "cpu"
+ attribute. Handle r3900 case.
+
+Tue May 12 10:21:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h: Define the STRINGIFY macro here.
+ * protoize.c: Not here.
+ * gengenrtl.c (DEF_RTL_EXPR): Use the STRINGIFY macro.
+
+Tue May 12 00:47:33 1998 John Wehle (john@feith.com)
+
+ * 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.
+
+Mon May 11 19:57:58 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.c: Prototype static functions.
+
+Mon May 11 17:43:03 1998 Jim Wilson <wilson@cygnus.com>
+
+ * regmove.c (fixup_match_2, find_matches, regmove_profitable):
+ Add explanatory comments.
+
+ * sparc.h (SPARC_INCOMING_INT_ARG_FIRST): Support TARGET_FLAT.
+
+Mon May 11 17:24:27 1998 Richard Henderson <rth@cygnus.com>
+
+ * sparc.md (ffsdi2): Disable. Simplify the expression as well.
+
+Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com>
+
+ * varasm.c (make_decl_rtl): Disable April 1 change.
+
+Mon May 11 09:14:41 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (alpha-*-linux-gnu): Undo lossage from gcc2 merge.
+
+Mon May 11 08:24:18 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
+ * alpha.c (print_operand): Handle it.
+ * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
+ related define_splits. Also add peepholes for SImode reload
+ plus sign_extend lossage.
+
+Mon May 11 09:33:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * genattr.c: Include stdarg.h/varargs.h. Change function
+ `fatal' to use variable arguments instead of faking it with
+ integer parameters. Provide a prototype which also
+ checks the format specifiers using ATTRIBUTE_PRINTF_1.
+
+ * genattrtab.c: Likewise.
+ * gencodes.c: Likewise.
+ * genconfig.c: Likewise.
+ * genemit.c: Likewise.
+ * genextract.c: Likewise.
+ * genflags.c: Likewise.
+ * genopinit.c: Likewise.
+ * genpeep.c: Likewise.
+ * genrecog.c: Likewise.
+ * genoutput.c: Likewise. Similarly for function `error'.
+
+Sun May 10 02:27:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * acconfig.h (HAVE_VOLATILE): Insert stub for autoconf.
+ * alocal.m4 (GCC_C_VOLATILE): New autoconf test.
+ * configure.in: Use GCC_C_VOLATILE.
+ * system.h (volatile): Define as empty if no volatile support is
+ available.
+
+Sun May 10 01:21:43 1998 Jeffrey A Law (law@cygnus.com)
+
+ * genemit.c (output_add_clobbers): Removed unused variable 'i' from
+ generated function.
+
+Sat May 9 02:02:15 1998 Richard Henderson <rth@cygnus.com>
+
+ * 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.
+ (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.
+
+ * machmode.h (COMPLEX_MODE_P): New macro.
+
+Sat May 9 01:53:23 1998 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (print_exp): Fix typo.
+
+Fri May 8 21:48:50 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Fri May 8 18:23:08 1998 Michael Meissner <meissner@cygnus.com>
+
+ * final.c (final_scan_insn): Call fatal_insn instead of abort if
+ we could not split an insn when required to.
+
+ * m32r.md ({add,sub}di3): Add define_splits and appropriate low
+ level insns.
+ (peepholes): Disable peepholes that call dead_or_set_p.
+ (movsi): Rewrite to handle addresses better after last change.
+ Add define_split to split load of addresses in large/medium modes.
+ (prologue): Call m32r_expand_prologue.
+ (movsi_{push,pop}): Generators for push/pop.
+ (movsi): Support PRE_{INC,DEC}, POST_INC.
+ (mov{di,df}): Rewrite. Always split the insns.
+ (movsf): Add define_split to get register load in correct mode.
+ (cmp_ne_small_const_insn): Use 'N' instead of 'S' constraint.
+ (attributes): Rewrite attributes so that type indicates both the
+ type and the length of the insn directly.
+ (all insns): Change to use new type attributes.
+ (debug): New attribute to convey whether -mdebug was used.
+ (opt_space): New attribute to convey whether -Os was used.
+ (function units): Loads are 3 cycles, not 2. Better classify all
+ insns into short/long.
+ (load/store/extend insns): Add separate case for load/store
+ indirect operations without an offset.
+ (divsi3): Division is a long operation, not short.
+
+ * m32r.h (LEGITIMATE_LO_SUM_ADDRESS_P): Do not allow LO_SUM for
+ modes > 1 word.
+ (GO_IF_MODE_DEPENDENT_ADDRESS): LO_SUM is now mode dependent.
+ (CONST_OK_FOR_LETTER_P): Make 'N' handle reverse 8 bit compares.
+ (EXTRA_CONSTRAINT): Remove 'S' special support. Add 'U' for
+ operands with PRE_{INC,DEC}, POST_INC.
+ (FUNCTION_PROFILER): Call abort instead of doing nothing.
+ (GO_IF_LEGITIMATE_ADDRESS): Allow PRE_{INC,DEC}, POST_INC of
+ SImode variables.
+ (gen_split_move_double): Declare.
+ (EXTRA_CONSTRAINT): Add 'T' for memory reference with no offset.
+
+ * m32r.c (gen_split_move_double): Fix typo. Also, don't call
+ emit_move_insn, build up SET's directly.
+ (toplevel): Include system.h, not stdio.h.
+ (move_double_src_operand): Allow any DF or DI mode constant.
+ (gen_split_move_double): Split moves of DI or DF values into the
+ appropriate moves, loads, or stores. Don't handle use of auto
+ inc/dec if using dead index. Do handle overlapping moves, etc.
+ (m32r_frame_info): Remove prologue_size field.
+ (m32r_compute_frame_size): Don't calculate prologue size.
+ (m32r_output_function_prologue): Change to pretty much a NOP.
+ (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): Likewise.
+
+Fri May 8 14:13:21 1998 H.J. Lu (hjl@gnu.org)
+
+ * reload1.c (emit_reload_insns): When performing expensive
+ optimizations, do not output the last reload insn if OLD is
+ not the dest of NSN and is in the src and is clobbered by INSN.
+
+Fri May 8 09:47:29 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (genrtl.o): Depend on system.h.
+ * gengenrtl.c (gencode): When creating genrtl.c, have it
+ include system.h.
+
+Fri May 8 10:57:33 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * config/m68k/t-linux: Remove extra stuff already included in
+ config/t-linux.
+
+Fri May 8 09:53:24 1998 Paul Eggert <eggert@twinsun.com>
+
+ * fixinc.wrap: Renamed from fixinc.math. Put wrapper around
+ curses.h if it contains `typedef char bool;', as suggested by
+ Manfred Hollstein <manfred@s-direktnet.de>.
+
+ * configure.in: Rename fixinc.math to fixinc.wrap.
+
+Thu May 7 19:26:34 1998 Jim Wilson <wilson@cygnus.com>
+
+ * gcc.c (read_specs): Handle missing blank line at end of specs file.
+
+ * i386.md (movsicc, movhicc, movsicc_1, movhicc_1, movsfcc_1,
+ movdfcc_1): Disable.
+
+Thu May 7 15:39:14 1998 Jim Wilson <wilson@cygnus.com>
+
+ * configure.in (enable_threads): Rename to enable_threads_flag before
+ main loop. Set enable_threads to enable_threads_flag inside main
+ loop.
+
+Thu May 7 17:38:03 1998 Michael Meissner <meissner@cygnus.com>
+
+ * r6000/eabi.asm (__eabi): Restore LR in case __eabi is called
+ multiple times.
+
+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.
+
+ * cccp.c: Convert from using PRINTF_ALIST/PRINTF_DCL to VPROTO as
+ per the rest of gcc source.
+ * cexp.y: Likewise. Include gansidecl.h and remove all code made
+ redundant.
+
+ * cccp.c: Remove checks for HAVE_VPRINTF and the associated code
+ used when vfprintf is missing.
+ * cexp.y: Likewise.
+ * gcc.c: Likewise.
+ * genattrtab.c: Likewise.
+ * mips-tfile.c: Likewise.
+ * toplev.c: Likewise.
+
+ * vfprintf.c: New file.
+ * doprint.c: New file.
+
+Thu May 7 10:18:41 1998 Jeffrey A Law (law@cygnus.com)
+
+ * config/linux.h (ASM_COMMENT_START): Remove from here,
+ * config/linux-aout.h (ASM_COMMENT_START): and here,
+ * config/i386/linux.h (ASM_COMMENT_START): to here,
+ * config/i386/linux-aout.h (ASM_COMMENT_START): and here.
+ * config/i386/linux-oldld.h (ASM_COMMENT_START): Define
+ here as '#' too.
+
+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.
+
+Wed May 6 22:32:37 1998 Robert Lipe <robertl@dgii.com>
+
+ * Makefile.in (dwarfout.o): Add toplev.h dependency.
+ * dwarfout.c, i386.c: Include toplev.h.
+ * toplev.h (pfatal_with_name): Add prototype.
+
+Wed May 6 19:02:29 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * Makefile.in: Fix .SUFFIXES.
+
+Wed May 6 19:31:32 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
+
+ * config/linux.h (ASM_COMMENT_START): Define as "#".
+ * config/linux-aout.h (ASM_COMMENT_START): Likewise.
+
+Wed May 6 15:51:39 1998 Jim Wilson <wilson@cygnus.com>
+
+ * objc/Make-lang.h (objc-parse.o): Add toplev.h dependency.
+ * objc/objc-parse.y, objc/objc-parse.c: Regenerate.
+
+ * toplev.c: Include toplev.h.
+ * Makefile.in (c-common.o, c-convert.o, c-decl.o, c-iterate.o,
+ c-lex.o, c-parse.o, c-pragma.o, c-typeck.o, calls.o, convert.o,
+ dwarf2out.o, except.o, expr.o, final.o, fold-const.o, function.o,
+ 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.
+
+ * expr.c (target_temp_slot_level): Delete duplicate definition.
+
+Wed May 6 16:46:01 1998 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (mark_seen_cases): Make it have external linkage again.
+ * expr.h (mark_seen_cases): Add declaration, but only when tree.h
+ has been included.
+
+ * haifa-sched.c (print_value, case SUBREG): Fix typo.
+
+ * i386.c (output_387_binary_op): Add some braces to avoid warnings.
+ * i386.h (REG_CLASS_CONTENTS): Similarly.
+
+ * toplev.c (-fsched-max): Delete flag.
+ (-fsched-interblock-max-blocks,-fsched-interblock-max-insns): Likewise.
+ * haifa-sched.c: Remove -fsched-max-N, -fsched-interblock-max-blocks-N
+ and -fsched-interblock-max-insns-N support. Remove INTERBLOCK_DEBUG
+ conditionals.
+
+ * haifa-sched.c (find_rgns): Correctly handle reducible loops with
+ inner loops which are not reducible.
+
+ * loop.c (regs_match_p): Fix typo in prototype.
+
+ * regmove.c (try_auto_increment): Wrap declaration inside an
+ #ifdef AUTO_INC_DEC.
+
+Wed May 6 17:07:47 1998 Michael Meissner <meissner@cygnus.com>
+
+ * final.c (output_operand_lossage): Call fatal with the operand
+ lossage message instead of calling abort.
+
+Wed May 6 15:37:27 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c: Convert to using ctype macros defined in system.h.
+ * c-lex.c: Likewise.
+ * cccp.c: Likewise.
+ * collect2.c: Likewise.
+ * rs6000.c: Likewise.
+ * cpplib.c: Likewise.
+ * fix-header.c: Likewise.
+ * gcc.c: Likewise.
+ * gen-protos.c: Likewise.
+ * pexecute.c: Likewise.
+ * protoize.c: Likewise.
+ * rtl.c: Likewise.
+ * scan.c: Likewise.
+ * stmt.c: Likewise.
+ * tlink.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) :
+ Replace -gdwarf-2 with -g0.
+
+Wed May 6 11:43:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (mips-tfile.o, mips-tdump.o): Depend on system.h.
+ * mips-tdump.c: Include system.h, remove redundant headers.
+ * mips-tfile.c: Likewise. Also, convert all ctype function calls
+ to calls of the macro versions defined in system.h.
+
+ * objc/Make-lang.in (objc-act.o): Depend on system.h.
+ * objc/objc-act.c: Include system.h, remove redundant headers.
+
+Wed May 6 11:21:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in (AC_CHECK_FUNCS): Add isascii.
+ (GCC_NEED_DECLARATIONS): Add atof.
+
+ * system.h: Provide prototypes for abort, atof, atol and sbrk here.
+ * rtl.c, rtl.h, toplev.c, tree.h: Not here.
+
+Wed May 6 10:52:49 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h: Wrap time.h and sys/file.h in autoconf checks.
+ Provide default definitions for O_RDONLY and O_WRONLY here.
+
+ * cccp.c, cpplib.c, fix-header.c, gcc.c, protoize.c: Not here.
+
+1998-05-06 Mark Mitchell <mmitchell@usa.net>
+
+ * tree.h (IS_EXPR_CODE_CLASS): Remove bogus '3'.
+
+Wed May 6 06:35:38 1998 Robert Lipe <robertl@dgii.com>
+
+ * 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,
+ varasm.c: Include it.
+
+Wed May 6 01:09:01 1998 Jeffrey A Law (law@cygnus.com)
+ Jim Wilson (wilson@cygnus.com)
+
+ * haifa-sched.c (find_rgns): In no_loops case, fix test for leaf
+ blocks. Check for 1 successor which is the EXIT_BLOCK.
+
+ * haifa-sched.c (find_rgns): Detect unreachable blocks, including
+ unreachable loops with more than one block.
+
+Wed May 6 08:22:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fix-header.c (write_rbrac): Add "abort" to functions which need to
+ be protected.
+
+Wed May 6 00:09:36 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Check in merge from gcc2. See ChangeLog.12 for details.
+
+Tue May 5 14:33:49 1998 Jim Wilson <wilson@cygnus.com>
+
+ * c-common.c (scan_char_table): Separate 's' and 'c'. 'c' does not
+ accept 'a' flag. 'S' does accept 'a' flag.
+ (check_format_info): When pedantic, warn for m/C/S/a/A formats,
+ and `a' flag.
+
+ * elf64.h (MULTILIB_DEFAULTS): Move definition after mips.h include.
+
+Tue May 5 10:50:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * config/m68k/m68k.h: Declare functions from m68k.c used in
+ macros and machine description.
+ (ASM_OUTPUT_LONG_DOUBLE): Always use `l' flag in print format for
+ long values.
+ (ASM_OUTPUT_FLOAT): Likewise.
+ (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
+
+Tue May 5 01:28:12 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.def: Add NAMESPACE_DECL.
+ * dwarfout.c (type_ok_for_scope): Ignore NAMESPACE_DECLs for now.
+ * dwarf2out.c (push_decl_scope): Likewise.
+ (scope_die_for): Likewise.
+ * tree.c (decl_function_context): Use TREE_CODE_CLASS to determine
+ how to get next context level.
+
+Tue May 5 01:43:16 1998 Jim Wilson <wilson@cygnus.com>
+
+ * i386.c (output_fix_trunc): Add code to emulate non-popping DImode
+ case.
+
+Tue May 5 01:15:06 1998 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (ADDITIONAL_REGISTER_NAMES): Add "er" registers.
+
+ * reorg.c (fill_slots_from_thread): Update REG_DEAD/REG_UNUSED notes
+ for any insns skipped at the start of a block because they were
+ redundant.
+
+Mon May 4 20:23:51 1998 Jim Wilson <wilson@cygnus.com>
+
+ * alpha.h (DBX_CONTIN_LENGTH): Decrease to 3000.
+
+1998-05-04 Ulrich Drepper <drepper@cygnus.com>
+
+ * c-common.c (format_char_info): Add new field hhlen.
+ (print_char_table, scan_char_table, time_char_table): Initialize
+ hhlen field appropriately.
+ (char_format_info): Recognize hh modifier and lookup correct char
+ table entry.
+
+Mon May 4 19:15:29 1998 Jim Wilson <wilson@cygnus.com>
+
+ * expr.c (expand_expr, case INDIRECT_REF): Don't optimize string
+ reference if this is a store.
+
+Mon May 4 17:25:17 1998 Richard Henderson <rth@cygnus.com>
+
+ * sparc.c (output_move_quad): Fix typo in mov_by_64 argument.
+
+Sun May 3 23:57:25 1998 Robert Lipe <robertl@dgii.com>
+
+ Make UnixWare 7 bootstrap support work with final shipping product.
+ * configure.in (i[34567]86-*-sysv5): Append, not overwrite, xm_file.
+ Pick up xm-siglist and xm-alloca.
+ (xm_defines): Add USG so dbxout will build.
+ * configure: Regenerate.
+
+Sun May 3 13:51:34 1998 Richard Henderson <rth@cygnus.com>
+
+ Support for official SPARC V9 ABI:
+ * sparc.c (sparc_override_options): Force stack bias off for !arch64.
+ Care for flag_pcc_struct_return default.
+ (output_move_quad): Rewrite to move by halves on v9 and in the
+ proper direction.
+ (move_quad_direction): New function.
+ (output_fp_move_quad): Use it to determine the direction of copy.
+ (function_arg_slotno): Return -1 for FP reg overflow as well.
+ (function_arg_record_value*): New functions.
+ (function_arg): Use them. Streamline unprototyped parameter passing.
+ (function_arg_pass_by_reference): Pass TCmode by reference.
+ (function_value): New function.
+ * sparc.h (PTRDIFF_TYPE, SIZE_TYPE): For -pedantic's sake, don't use
+ long long in 64-bit mode.
+ (RETURN_IN_MEMORY): v9 returns structs < 32-bytes in regs.
+ (DEFAULT_PCC_STRUCT_RETURN): Make the default detectable.
+ (BASE_RETURN_VALUE_REG): Consider complex float types for arch64.
+ (BASE_OUTGOING_VALUE_REG, BASE_PASSING_ARG_REG): Likewise.
+ (BASE_INCOMING_ARG_REG): Likewise.
+ (FUNCTION_VALUE): Call function_value.
+ (FUNCTION_OUTGOING_VALUE, LIBCALL_VALUE): Likewise.
+ * sparc.md (movdi_sp32_v9): Disable for arch64.
+ (movsf, movdf, movtf): Sort all alternatives using fp regs first.
+ (call_value_address_sp64): Remove register class constraints.
+ (call_value_symbolic_sp64): Likewise.
+ (nonlocal_goto): Pass label reg directly to goto_handlers. Constrain
+ v9 case to 32-bit constants.
+ (goto_handler_and_restore_v9): Provide a version for arch64.
+ * sparc/linux64.h (SIZE_TYPE, PTRDIFF_TYPE): Remove private definition.
+ * sparc/sp64-aout.h (TARGET_DEFAULT): Turn on stack bias.
+ (CPP_PREDEFINES): New.
+ * sparc/sp64-elf.h: Likewise.
+ (PREFERRED_DEBUGGING_TYPE): Dwarf2.
+ (ASM_OUTPUT_DWARF2_ADDR_CONST): New.
+ * sparc/sysv4.h (SIZE_TYPE, PTRDIFF_TYPE): Undo svr4.h's changes.
+
+Sat May 2 17:47:17 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat May 2 01:37:29 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_reloads): Emit USEs to mark where a pseudo
+ is reloaded with the MEM of its stack slot.
+ * reload1.c (cannot_omit_stores): Delete.
+ (reload): Don't initialize it.
+ Don't apply avoid_return_reg logic to USEs.
+ When done, remove USEs that have a REG_EQUAL note on them.
+ (emit_reload_insns): Handle case where we have inherited a MEM.
+ (choose_reload_regs): Likewise.
+ (delete_output_reload): Don't use cannot_omit_stores.
+
+Thu Apr 30 18:59:03 1998 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (cpp.info, gcc.info): Put -o option before input file.
+
+Thu Apr 30 16:57:34 1998 Michael Meissner <meissner@cygnus.com>
+
+ * haifa-sched.c (print_{exp,value}): Various changes to make the
+ debug output easier to read. Also, use only one buffer, and make
+ sure the buffer we are passed in doesn't overflow.
+ (safe_concat): Concatenate to a buffer without overflow.
+
+Thu Apr 30 16:57:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * haifa-sched.c (alloc_{INSN,EXPR}_LIST): Make static to agree
+ with the prototype.
+
+Wed Apr 29 21:45:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sched.c (new_insn_dead_notes): Check if the register was
+ used in the original instruction.
+ * haifa-sched.c (new_insn_dead_notes): Likewise.
+
+Wed Apr 29 13:46:03 1998 Jim Wilson <wilson@cygnus.com>
+
+ * dwarf2out.c (scope_die_for): If could not find proper scope,
+ check for and handle tagged type with incorrect TYPE_CONTEXT.
+
+Wed Apr 29 15:34:40 1998 John Carr <jfc@mit.edu>
+
+ * calls.c (expand_call): Fix recognition of C++ operator new.
+
+ * alias.c (mode_alias_check): Disable type based alias detection.
+
+Wed Apr 29 15:06:42 1998 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL,
+ ASM_OUTPUT_WEAK_ALIAS): Define.
+ * config/mips/elf64.h: Same.
+ * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
+ ASM_WEAKEN_LABEL): Removed.
+
+Wed Apr 29 10:53:29 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * calls.c (expand_call): Bump the length limit on the specially
+ recognized function names to 17.
+
+Tue Apr 28 17:53:33 1998 Jim Wilson <wilson@cygnus.com>
+
+ * ginclude/stddef.h: Add check for _MACHINE_ANSI_H_ for BSD/OS
+ when undefining macros at the end.
+
+ * expr.c (expand_builtin, case BUILT_IN_MEMSET): Break if either
+ val or len has TREE_SIDE_EFFECTS set.
+
+ * sparc.md (mulsidi3): Call const v8plus and v8plus routines.
+ (mulsidi3_v8plus, const_mulsidi3_v8plus): Delete asterisk from name.
+ (smuldi3_highpart): Call const v8plus routine.
+ (smulsi3_highpart_v8plus): Renamed from smulsidi3_highpart_v8plus.
+ (const_smulsi3_highpart_v8plus): New pattern.
+ (smulsi3_highpart_sp32): Renamed from smulsidi3_highpart_sp32.
+ (umulsidi3): Call const v8plus routine.
+ (umulsi3_highpart): Handle const before v8plus. Call const v8plus
+ routine.
+ (umulsi3_highpart_v8plus): Renamed from umulsidi3_highpart_v8plus.
+ (umulsi3_highpart_sp32): Renamed from umulsidi3_highpart_sp32.
+
+Tue Apr 28 08:55:26 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.c (*_oper{and|ator}): Change enum arguments and return
+ values to int, so they can be prototyped even in files that don't
+ include rtl.h.
+ ({small,large}_insn_p): Likewise.
+ (m32r_select_cc_mode): Likewise.
+ (gen_compare): Likewise.
+ (function_arg_partial_nregs): Likewise.
+ (m32r_setup_incoming_varargs): Likewise.
+ (init_reg_tables): Add prototype.
+ (m32r_frame_info): Add prolog_size field.
+ (m32r_compute_frame_size): Calculate the size of the prologue.
+ (m32r_first_insn_address): Return prologue size.
+ (m32r_output_function_prologue): Calculate frame size before
+ printing out information. Print out the prologue size.
+
+ * m32r.h: Prototype all functions in m32r.c.
+ (FIRST_INSN_ADDRESS): Declare, returning prologue size.
+
+ * m32r.md (bcc functions): Cast enum's to int.
+
+ * m32r.c (conditional_move_operand): Silence a debug message.
+ ({small,long}_insn): New predicates.
+
+ * m32r.h (TARGET_M32R): New macro.
+ (PREDICATE_CODES): Rearrange somewhat, add small_insn/long_insn.
+ (HAIFA_P): Define as 1/0 depending on whether the Haifa scheduler
+ was selected.
+ (ISSUE_RATE): Define as 2.
+
+ * m32r.md (insn_size): New attribute.
+ ({,rev_}branch_insn): Add .s qualifier to branches believed to be
+ short.
+ (m32r): New attribute.
+
+ * configure.in (enable_haifa): Switch m32r to Haifa by default.
+ * configure: Regenerate.
+
+ (Changes from Nick Clifton <nickc@cygnus.com>)
+ * m32r.h (EXTRA_CONSTRAINT): Implement 'S' constraint to perfoirm
+ the equivalent of a negated 'I' constraint.
+ (PRESERVE_DEATH_INFO_REGNO_P): Define in order to allow peephole
+ optimization to work.
+
+ * m32r.md (cmp_ne_small_const_insn): Use 'S' constraint rather
+ than 'I' since the value is negated.
+ (peephole): Add peephole optimization to cope with optimization of
+ divide and subtracts of the same operands.
+
+ * m32r.c zero_and_one, emit_cond_move): Add support for MVFC.
+ * m32r.h: Likewise.
+ * m32r.md: Likewise.
+
+ * m32r.h (PREDICATE_CODES): Add declaration of machine specific
+ predicates.
+
+Tue Apr 28 07:25:53 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (libgcc2.ready): Revert last patch (Apr 24).
+
+Mon Apr 27 18:39:47 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Check against
+ frame_pointer_rtx not FRAME_POINTER_REGNUM.
+
+Mon Apr 27 18:36:28 1998 Jim Wilson <wilson@cygnus.com>
+
+ * reg-stack.c: Revert last patch (Apr 20).
+ (convert_regs): Set insn to PREV_INSN (next) after do while loop.
+
+ * m68k/lb1sf68.asm (Laddsf$3): Fix typos in mcf5200 exg code.
+
+ * loop.c (check_dbra_loop): New locals jump, first_compare, and
+ compare_and_branch. Call get_condition to set first_compare.
+ Set compare_and_branch to number of compare/branch instructions.
+ Replace PREV_INSN (PREV_INSN (loop_end)) with first_compare.
+ Replace '2' with compare_and_branch.
+
+Mon Apr 27 15:53:30 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * cplus-dem.c (demangle_qualified): Replace missing else.
+
+Mon Apr 27 20:22:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (gen_ashift_hi): Don't make SUBREG of a SUBREG.
+
+Mon Apr 27 18:23:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (sh_expand_prologue, sh_expand_epilogue):
+ If TARGET_DOUBLE_ALIGN, preserve 64 bit stack alignment.
+ * sh.h (STACK_BOUNDARY): Likewise.
+
+Mon Apr 27 17:22:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
+
+Mon Apr 27 08:55:23 1998 Michael Meissner <meissner@cygnus.com>
+
+ * system.h (abort): If abort is not defined, and neither is
+ USE_SYSTEM_ABORT, redefine abort to call fprintf and exit,
+ reporting the line and filename of the error.
+
+ * .gdbinit: Add breakpoints on exit and fancy_abort.
+
+ * final.c (split_double): Avoid a compiler warning if
+ BITS_PER_WORD is less than or equal to HOST_BIT_PER_WIDE_INT.
+
+ * rtl.h (JUMP_{CROSS_JUMP,NOOP_MOVES,AFTER_REGSCAN}): New macros
+ for calling jump_optimize.
+
+ * toplev.c (rest_of_compilation): Call jump_optimize using JUMP_*
+ macros, rather than 0/1's.
+
+Sun Apr 26 23:19:10 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (CONST_COSTS): Zero is always free.
+ (RTX_COSTS): Add EV6 costs. Abort if alpha_cpu is unknown.
+
+Sun Apr 26 15:38:50 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * cplus-dem.c (gnu_special): Fix off-by-one bug when checking the
+ length in the name of a virtual table.
+
+Sun Apr 26 01:21:06 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (print_operand): Don't add 'v' suffix for ALPHA_FPTM_N.
+
+Sat Apr 25 22:11:38 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Apr 25 17:17:15 1998 Jeffrey A Law (law@cygnus.com)
+
+ * fold-const.c (fold_convert): Fix typo.
+
+Sat Apr 25 17:55:54 1998 John Carr <jfc@mit.edu>
+
+ * alias.c (alias_invariant): New variable.
+ (record_base_value): New argument INVARIANT.
+ (memrefs_conflict_p): If a register has an entry in the alias_invariant
+ array, try substituting that value for the register.
+
+ * rtl.h: Declare record_base_value.
+
+ * loop.c, unroll.c: Update callers of record_base_value.
+
+ * alias.c (find_base_value, find_base_term): SIGN_EXTEND and
+ ZERO_EXTEND do not affect base values.
+
+Fri Apr 24 15:57:02 1998 Jeffrey A Law (law@cygnus.com)
+
+ * dbxout.c (dbxout_type): Fix typo.
+ (dbxout_range_type): Another HOST_WIDE_INT_PRINT_DEC fix.
+
+ * configure.in: Use CC_FOR_BUILD, not BUILD_CC.
+
+Fri Apr 24 16:11:47 1998 John Carr <jfc@mit.edu>
+
+ * expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
+ if the argument is the address of a structure or array.
+
+ * configure.in: Enable Haifa scheduler by default for SPARC.
+
+Fri Apr 24 20:55:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * cse.c (cse_set_around_loop): Don't do optimization when
+ new pseudos are created.
+
+Fri Apr 24 11:00:18 1998 Jeffrey A Law (law@cygnus.com)
+
+ * dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
+ appropriately.
+ (dbxout_type_method_1, dbxout_type): Likewise.
+ (print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
+ (dbxout_type): Fix check for when to print a type range in
+ octal vs decimal.
+
+Fri Apr 24 16:45:03 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * (gen_shl_and, in case 1): Fix comparison with mask.
+
+Fri Apr 24 06:46:40 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow frame
+ pointer as second register in REG+REG pair.
+
+Fri Apr 24 09:22:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c (check_format_info): Don't check for the 'x' format
+ character twice, instead check for 'x' and 'X'
+
+Fri Apr 24 08:02:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (libgcc2.ready): Add explicit dependency from
+ $(STMP_FIXPROTO) to ensure all necessary include files have
+ been created and to guarantee proper parallel builds.
+
+Fri Apr 24 04:42:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (sh_expand_prologue, in !SH3E code): Don't push an extra
+ register for stdarg functions.
+ * sh.h (current_function_varargs): Declare.
+ (FUNCTION_ARG): Ignore NAMED for stdarg functions.
+
+1998-04-23 Jim Wilson <wilson@cygnus.com>
+
+ * frame.c, libgcc2.c (stdlib.h, unistd.h): Don't include when
+ inhibit_libc is defined.
+
+ * c-aux-info.c (gen_type): Use DECL_NAME only for TYPE_DECL.
+
+Thu Apr 23 19:09:33 1998 Jim Wilson <wilson@cygnus.com>
+
+ * profile.c (tablejump_entry_p): New function.
+ (branch_prob): Add code to recognize MIPS tablejump entry branch.
+ Use tablejump_entry_p in MIPS and HPPA tablejump checking code.
+
+Thu Apr 23 15:01:13 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (find_barrier): Return as soon as a barrier is
+ found, rather than at end of the loop, after the insn has been
+ changed.
+
+Thu Apr 23 20:21:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (gen_ashift_hi): Implement right shifts via gen_ashift.
+ * sh.md (ashrhi3_k, lshrhi3_k, lshrhi3_m, lshrhi3, lshrhi3+1): Delete.
+
+Wed Apr 22 17:07:35 1998 Michael Meissner <meissner@cygnus.com>
+
+ * loop.c (note_addr_stored): Correct function to take 2 arguments,
+ instead of 1.
+
+ * rtl.def (MATCH_INSN2): Add new matching pattern.
+ * genrecog.c (add_to_sequence): Support MATCH_INSN2.
+
+Wed Apr 22 15:52:22 1998 John Carr <jfc@mit.edu>
+
+ * emit-rtl.c (gen_highpart): The high part of a CONST_INT is not zero
+ if HOST_BITS_PER_WIDE_INT is larger than BITS_PER_WORD.
+
+ * final.c (split_double): Sign extend both halves of a split CONST_INT.
+
+Wed Apr 22 10:42:45 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.c (compute_frame_size): Change only argument to a HOST_WIDE_INT.
+
+Wed Apr 22 10:53:49 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * cplus-dem.c (struct work stuff): Add field for B and K mangle codes.
+ (cplus_demangle_opname): Call mop_up_squangle.
+ (cplus_demangle): Initialize squangle info, then call
+ internal_cplus_demangle. (Most code moved there as well)
+ (internal_cplus_demangle): New function, performs most of what use
+ to be done in cplus_demangle, but is only called with this file.
+ (squangle_mop_up): New function to clean up B and K code data.
+ (mop_up): Set pointers to NULL after freeing.
+ (demangle_signature, demangle_template, demangle_class): Add
+ switch elements to handle K and B codes.
+ (demangle_prefix, gnu_special, demangle_qualified): Add
+ code to handle K and B codes.
+ (do_type, demangle_fund_type): Handle B and K codes.
+ (remember_Ktype): New function to store K info.
+ (register_Btype, remember_Btype): New functions for B codes.
+ (forget_B_and_K_types): New function to destroy B and K info.
+
+1998-04-21 Jim Wilson <wilson@cygnus.com>
+
+ * stmt.c (check_seenlabel): When search for line number note for
+ warning, handle case where there is no such note.
+
+Tue Apr 21 20:48:37 1998 John Carr <jfc@mit.edu>
+
+ * genemit.c (gen_exp): Allow machine description to set mode of
+ MATCH_OP_DUP.
+
+Tue Apr 21 16:36:01 1998 John Carr <jfc@mit.edu>
+
+ * alias.c (mode_alias_check): New function.
+ (true_dependence, anti_dependence, output_dependence): Call
+ mode_alias_check.
+
+Tue Apr 21 12:05:32 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.h (STACK_BOUNDARY): Allow specific targets to override.
+ (MIPS_STACK_ALIGN): Similarly.
+
+ * c-common.c (type_for_mode): Handle TI types.
+ * c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
+ (init_decl_processing): Handle TI types.
+ * c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.
+
+ * mips.c (block_move_loop): Test Pmode == DImode instead of
+ TARGET_MIPS64.
+ (expand_block_move, save_restore_insns): Likewise.
+ (function_prologue, mips_expand_prologue): Likewise.
+ (mips_expand_epilogue): Likewise.
+ * mips.h (POINTER_SIZE): Allow specific targets to override.
+ (Pmode): Allow specific targets to override.
+ (FUNCTION_PROFILER): Test Pmode == DImode instead of TARGET_MIPS64.
+ (POINTER_BOUNDARY, FUNCTION_MODE): Likewise.
+ (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE): Likewise.
+ (TRAMPOLINE_ALIGNMENT, INITIALIZE_TRAMPOLINE): Likewise.
+ (CASE_VECTOR_MODE, ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
+ (ASM_OUTPUT_ADDR_DIFF_ELT, SIZE_TYPE, PTRDIFF_TYPE): Likewise.
+ * mips.md (indirect, tablejump & casesi support): Test for
+ Pmode == DImode instead of TARGET_MIPS64.
+ (call patterns): Likewise.
+
+Tue Apr 21 09:43:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * objc/sendmsg.c: Define gen_rtx_MEM() to 1, as is already done
+ for gen_rtx(MEM, ...).
+
+Tue Apr 21 02:15:36 1998 Richard Henderson <rth@cygnus.com>
+
+ * sparc.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Rewrite
+ to not be so gross, and to properly function with PIC.
+
+Mon Apr 20 20:44:25 1998 Jim Wilson <wilson@cygnus.com>
+
+ * frame.c (heapsort): Rename to frame_heapsort.
+
+ * gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.
+
+Mon Apr 20 12:43:09 1998 Doug Evans <devans@canuck.cygnus.com>
+
+ * flow.c (sbitmap_vector_alloc): Ensure sbitmaps properly aligned.
+
+Mon Apr 20 15:04:14 1998 John Wehle (john@feith.com)
+
+ * i386.md (movsf_push, movdf_push, movxf_push): Allow memory
+ operands during and after reload.
+
+Mon Apr 20 22:37:50 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (shorten_branches, init_insn_lengths): Move code
+ to free label_align, uid_shuid, insn_lengths, insn_addresses
+ and uid_align from the former function into the latter one;
+ Add code to clear these variables.
+ * sh.h (label_align): Remove declaration.
+
+Mon Apr 20 14:48:29 1998 Michael Meissner <meissner@cygnus.com>
+
+ * gcc.c (lang_specific_driver): Declare prototype properly so
+ fatal can be passed to it without error.
+
+ * configure.in (AC_CHECK_FUNCS): Check for strchr and strrchr.
+ * configure: Regenerate.
+ * config.in: Add #undef's for strchr and strrchr.
+
+ * protoize.c (toplevel): If we have rindex, but not strrchr, map
+ rindex to strrchr.
+ (file_could_be_converted): Use strrchr, not rindex since rindex is
+ not defined on Linux systems when _POSIX_SOURCE is defined.
+ (file_normally_convertible): Likewise.
+ (process_aux_info_file): Likewise.
+ (main): Likewise.
+
+ * rs6000.md (mov{sf,df} define_splits): When splitting a move of
+ a constant to an integer register, don't split the insns that do
+ the simple AND and OR operations, rather just split each word, and
+ let the normal movsi define split handle it further.
+
+Mon Apr 20 18:19:40 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (find_barrier): Fix bug in ADDR_DIFF_VEC handling.
+ (split_branches): Call init_insn_lengths.
+
+Mon Apr 20 07:37:49 1998 Michael Meissner <meissner@cygnus.com>
+
+ * i386.c: Include expr.h to get the change_address prototype
+ declared.
+
+Mon Apr 20 01:00:05 1998 H.J. Lu (hjl@gnu.org)
+
+ * reg-stack.c (subst_asm_stack_regs): Change to return the last
+ new insn generated by this function.
+ (subst_stack_regs): Likewise.
+ (convert_regs): Record the last newly generated insn and use
+ it for change_stack () instead of INSN.
+
+Sun Apr 19 15:41:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fix-header.c (enum special_file): Undefine enumerators if they
+ are already defined by include files.
+ * fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
+ macro with '__' to not pollute user namespace.
+
+Sun Apr 19 02:42:06 1998 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (queue_to_ready): Fix typo in prototype.
+
+Sat Apr 18 23:52:35 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Apr 18 18:30:22 1998 Jim Wilson <wilson@cygnus.com>
+
+ * i386.md (fix_truncsfdi2+[123]): Add + to operand 1 constraints.
+
+ * i386.h (CPP_CPU_DEFAULT): Renamed to CPP_CPU_DEFAULT_SPEC.
+ Add missing -Dpentium* options.
+ (CPP_CPU_SPEC): Delete redundant definition. Include cpp_cpu_default
+ instead of CPP_CPU_DEFAULT.
+ (EXTRA_SPECS): Add entry for cpp_cpu_default.
+
+Sat Apr 18 19:06:59 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
+ negative in a stackless frame.
+ * rs6000.c (rs6000_stack_info): Don't include fixed-size link area
+ in stackless frame size. Support 64-bit stackless frame size.
+ Combine fpmem offset calculations and don't add total_size to
+ offset if not pushing a stack frame.
+
+Sat Apr 18 15:41:16 1998 Jim Wilson <wilson@cygnus.com>
+
+ * regmove.c (fixup_match_1): In three places, in flag_exceptions
+ check, change p to q.
+
+Sat Apr 18 15:30:49 1998 Jim Wilson <wilson@cygnus.com>
+
+ * gcc.c (lang_specific_driver): Add new parm type to prototype.
+ (added_libraries): New file scope static variable.
+ (process_command): Initialize added_libraries. Pass it to
+ lang_specific_driver.
+ (main): Use added_libraries in check for no input files.
+
+Sat Apr 18 01:23:11 1998 John Carr <jfc@mit.edu>
+
+ * sparc.c, sparc.h, sparc.md, sol2.h: Many changes related to V9
+ code generation. Use 64 bit instructions in 32 bit mode when
+ possible. Use V9 return instruction. UltraSPARC optimizations.
+
+ * sparc.h: Change gen_rtx (CODE to gen_rtx_CODE (.
+
+Fri Apr 17 22:38:17 1998 Jeffrey A Law (law@cygnus.com)
+
+ * global.c (global_alloc): Don't pass HARD_CONST (0) to find_reg,
+ just pass zero. That will work regardless of the size of HARD_REG_SET.
+
+ * libgcc2.c (__floatdisf): Fix a couple typos.
+
+Fri Apr 17 17:28:26 1998 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (mostlyclean): Delete *.mach and *.bp files.
+
+Fri Apr 17 16:35:35 1998 Greg McGary <gkm@gnu.org>
+
+ * emit-rtl.c (gen_highpart): Initialize `word' properly for pseudo.
+
+Fri Apr 17 14:30:37 1998 John Carr <jfc@mit.edu>
+
+ * emit-rtl.c (operand_subword_force): If a register can not be
+ accessed by words, copy it to a pseudo register.
+
+Fri Apr 17 14:30:37 1998 Jim Wilson <wilson@cygnus.com>
+
+ * rs6000/vxppc.h (CPP_SPEC): Add support for mrelocatable*.
+
+Fri Apr 17 17:01:25 1998 Michael Meissner <meissner@cygnus.com>
+
+ * tree.h (mark_seen_cases): Delete declaration.
+
+Fri Apr 17 13:32:20 1998 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (mark_seen_cases): Make static and add prototype.
+
+Fri Apr 17 11:21:43 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * frame.c: Include stdlib.h and unistd.h to possibly get various
+ function prototypes. The fixproto script guarantees these header
+ files exist on the target system.
+ * libgcc2.c: Likewise.
+
+ * gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
+ __gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
+ function parameters.
+ * libgcc2.c (__udiv_w_sdiv): Likewise.
+
+Thu Apr 16 22:41:02 1998 Jeffrey A Law (law@cygnus.com)
+
+ * varasm.c (asm_output_bss): Add prototype.
+ (asm_output_aligned_bss): Likewise.
+
+ * unroll.c (verify_addresses): Add prototype.
+
+ * toplev.c: Add many prototypes. Too many to mention here.
+
+ * stmt.c (check_seenlabel): Add prototype.
+
+ * rtlanal.c (reg_set_p_1): Add prototype.
+ (reg_set_last_1): Likewise.
+
+ * reorg.c (find_dead_or_set_registers): Add prototype.
+
+ * regmove (try_auto_increment): Add prototype.
+
+ * reg-stack.c (pop_stack): Add prototype.
+
+ * recog.c (validate_replace_rtx_1): Add prototype.
+ (find_constant_term_loc): Likewise.
+
+ * loop.c (regs_patch_p): Add prototype.
+ (add_label_notes, count_nonfixed_reads): Likewise.
+ (find_single_use_in_loop): Likewise.
+ (express_from): Surround prototype with #ifdef.
+ (giv_sort): Similarly.
+
+ * jump.c (mark_modified_reg): Add prototype.
+
+ * haifa-sched.c (is_prisky): Add prototype.
+ (queue_to_ready): Likewise.
+
+ * genextract.c (gen_insn): Add prototype.
+
+ * genemit.c (max_operand_1): Add prototype.
+ (max_operand_vec, print_code, gen_exp, gen_insn): Likewise.
+ (gen_expand, gen_explit, output_add_clobbers): Likewise.
+ (output_init_mov_optab): Likewise.
+
+ * genattrtab.c (attr_hash_add_rtx): Add prototype.
+ (attr_hash_add_string, write_length_unit_log): Likewise.
+
+ * genattr.c (init_range): Add prototype.
+
+ * combine.c (sets_function_arg_p): Add prototype.
+
+ * expr.c (store_constructor_field): Add prototype.
+ (get_memory_usage_from_modifier): Likewise.
+
+ * expmed.c (synth_mult): Add prototype.
+ (choose_multiplier, invert_mod2n): Likewise.
+
+ * except.c (push_eh_entry): Add prototype.
+ (pop_eh_entry, enqueue_eh_entry, dequeu_eh_entry): Likewise.
+ (call_get_eh_context, start_dynamic_cleanup): Likewise.
+ (start_dynamic_handler, can_throw): Likewise.
+ (output_exception_table_entry, scan_region): Likewise.
+ (eh_regs, set_insn_eh_region): Likewise.
+
+ * dwarfout.c (decl_class_context): Add prototype.
+ (output_inheritance_die, type_ok_for_scope): Likewise.
+
+ * c-lex.c (skip_white_space_on_line): Add prototype.
+
+ * alias.c (record_set): Add prototype.
+ (find_base_term, base_alias_check): Likewise.
+
+ * function.c (assign_outer_stack_local): Make static and add prototype.
+
+ * haifa-sched.c (build_control_flow): Accept raw data as inputs
+ instead of computing it locally. Callers changed.
+ (find_rgns): Several new arguments. Callers changed.
+ Generally clean up and comment better. Use dominators to
+ identify reducible loops. Convert some flag arrays to bitmaps.
+ Convert most of the code to work on pred/succ lists instead of
+ an edge table. Add comments for future improvements.
+ (schedule_insns): Allocate temporary tables for flow data, call
+ routines to compute flow data and pass it along to children as
+ arguments.
+ (debug_control_flow): Delete. Use dump_bb_data instead.
+
+ * basic-block.h (compute_dominators): Declare.
+
+ * flow.c (dump_sbitmap, dump_sbitmap_vector): New debugging
+ functions.
+ * basic-block.h: Declare them.
+
+Thu Apr 16 13:45:51 1998 Jim Wilson <wilson@cygnus.com>
+
+ * reg-stack.c (constrain_asm_operands): Set n_alternatives to zero if
+ no operands.
+
+Wed Apr 15 11:33:09 1998 Alexandre Petit-Bianco <apbianco@sendai.cygnus.com>
+
+ * tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
+ Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
+ node is non NULL. Cache last file name and file name identifier node.
+
+1998-04-15 Mark Mitchell <mmitchell@usa.net>
+
+ * c-common.c (declare_hidden_char_array): Use TYPE_DOMAIN to get
+ the length of an array, not TREE_TYPE.
+
+Wed Apr 15 15:31:34 1998 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (sbitmap_union_of_successors): New function.
+ * basic-block.h (sbitmap_union_of_successors): Declare it.
+
+Wed Apr 15 12:38:03 1998 Jim Wilson <wilson@cygnus.com>
+
+ * configure.in (gnu_ld): Rename to gnu_ld_flag before main loop.
+ Set gnu_ld to gnu_ld_flag inside main loop.
+ (gas): Likewise.
+
+Wed Apr 15 14:50:05 1998 Dave Brolley <brolley@cygnus.com>
+
+ * toplev.c (compile_file): Call init_parse using new interface.
+ (init_lex): Remove declaration.
+
+ * c-lex.c (init_parse): Now returns char* containing filename.
+
+Wed Apr 15 12:37:10 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing if not optimizing.
+
+Wed Apr 15 12:10:18 1998 Michael Meissner <meissner@cygnus.com>
+
+ * Makefile.in (gen{config,flags,codes,emit}): Link in host print-rtl.o.
+ (gen{extract,peep,opinit,output}): Likewise.
+
+ * gen{attr,codes,config,emit,output}.c (insn_attr_name): Provide a
+ global definition so print-rtl.o can be linked in.
+ * gen{peep,recog}.c (insn_attr_name): Likewise.
+
+Tue Apr 14 07:30:57 1998 K. Richard Pixley <rich@kyoto.noir.com>
+
+ * fixincludes: Discard empty C++ comments, as found in sys/time.h
+ on hpux-11.0.
+
+Wed Apr 15 10:47:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * config/m68k/m68k.md (adddi3, subdi3): Optimize for constant
+ operand.
+
+Wed Apr 15 01:21:21 1998 Jeffrey A Law (law@cygnus.com)
+
+ * emit-rtl.c (operand_subword): Rework slightly to avoid
+ bogus warning from previous change.
+
+Tue Apr 14 23:39:13 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md: Revert Oct 27 change, as it is superseded by Kenner's
+ Nov 8 find_replacement change. Move decls of get_unaligned_address
+ * alpha.h: ... here.
+
+Tue Apr 14 22:00:39 1998 John Carr <jfc@mit.edu>
+
+ * function.c (assign_parms): Initialize unsignedp before passing
+ its pointer to promote_mode.
+
+ * genattrtab.c (check_attr_test): Handle MATCH_INSN like MATCH_OPERAND.
+ (write_test_expr): Allow MATCH_INSN.
+
+Tue Apr 14 21:57:57 1998 Paul Eggert <eggert@twinsun.com>
+
+ * install.texi: Update section on warnings that can be safely ignored.
+
+Tue Apr 14 14:55:16 1998 Jim Wilson <wilson@cygnus.com>
+
+ * mips.md (reload_outdi): Change the scratch mode from DImode to
+ TImode. New variable scratch, used instead of operand[2] in template.
+ Add code for MIPS16 HILO_REGNUM case where output reg is not M16_REG_P.
+
+Tue Apr 14 16:19:03 1998 Michael Meissner <meissner@cygnus.com>
+
+ * expr.c (MOVE_RATIO): Set to 3 if optimizing for space.
+
+Tue Apr 14 11:31:28 1998 Krister Walfridsson <cato@df.lth.se>
+
+ * i386/bsd386.h (ASM_OUTPUT_ALIGN): Redefine.
+
+Tue Apr 14 09:02:32 1998 Jeffrey A Law (law@cygnus.com)
+
+ * svr4.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC.
+ (ASM_FINISH_DECLARE_OBJECT): Likewise.
+
+ * Idea and part of the patch from HJ.
+ * Makefile.in: auto-host.h renamed from auto-config.h. All references
+ changed.
+ (distclean): Remove auto-build.h too.
+ * configure.in: Rename host autoconf generated file to auto-host.h.
+ If host != build, then run autoconf to generate auto-build.h for
+ the build machine and include it in build_xm_files.
+ Check for wait.h and sys/wait.h.
+
+ * combine.c (simplify_rtx, case TRUNCATE): Respect value of
+ TRULY_NOOP_TRUNCATION.
+
+Mon Apr 13 11:31:49 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.h (BINFO_OFFSET_ZEROP): Use integer_zerop.
+
+Sun Apr 12 20:55:32 1998 Catherine Moore <clm@cygnus.com>
+
+ * invoke.texi (ld options): Include memset requirements
+ for options -nodstdlib and -nodefaultlibs.
+
+1998-04-12 Paul Eggert <eggert@twinsun.com>
+
+ This change is from an idea suggested by Arthur David Olson.
+
+ * c-common.c (decl_attributes, record_function_format,
+ check_format_info, init_function_format_info):
+ Add support for strftime format checking.
+ (enum format_type): New type.
+ (record_function_format): Now static, and takes value of type
+ enum format_type instead of int.
+ (time_char_table): New constant.
+ (struct function_format_info): format_type member renamed from is_scan.
+ (check_format_info): Use `warning' rather than sprintf followed by
+ `warning', to avoid mishandling `%' in warnings.
+ Change `pedwarn' to `warning', since these warnings do not necessarily
+ mean the program does not conform to the C Standard, as the code
+ need not be executed.
+
+ * c-tree.h (record_function_format): Remove decl; no longer extern.
+
+ * extend.texi: Add documentation for strftime format checking.
+
+Sun Apr 12 20:23:03 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips/ecoffl.h: Do not include mips.h.
+ * mips/elf.h: Likewise.
+
+ * configure.in (mips-*-ecoff): Do not mention mips/mips.h in tm_files.
+ * mips/ecoff.h: Include "mips/mips.h".
+
+Sat Apr 11 22:42:54 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Apr 11 01:24:28 1998 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (count_reg_usage): Correctly handle REG_NONNEG notes.
+ (delete_trivially_dead_insns): Renamed from delete_dead_from_cse.
+ * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns instead of delete_dead_from_cse. Also call delete_trivially_dead_insns
+ between loop optimization passes.
+ * rtl.h: Updated appropriately.
+
+Fri Apr 10 22:28:32 1998 Jeffrey A Law (law@cygnus.com)
+
+ Reinstall this patch from Jason.
+ * function.c (push_function_context_to): Don't call init_emit.
+
+Fri Apr 10 13:40:20 1998 Nick Clifton <nickc@cygnus.com>
+
+ * rtl.c (read_skip_spaces): Prevent infinite loops upon
+ encountering unterminated comments.
+
+Fri Apr 10 10:43:41 1998 Jeffrey A Law (law@cygnus.com)
+
+ * emit-rtl.c (operand_subword): Properly handle CONST_INTs for
+ 64x32 cross builds.
+
+ * configure.in: Handle --with-fast-fixincludes.
+ (fixincludes): If --with-fast-fixincludes, then use a different
+ fixincludes program by default.
+ * Makefile.in (fixinc.sh): New rule.
+
+Fri Apr 10 00:36:31 1998 H.J. Lu (hjl@gnu.org)
+
+ * i386.md (movqi+1): Handle invalid QI register.
+ (movsf_push-1): Likewise.
+
+Thu Apr 9 16:53:59 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.c: call_address_operand(): Only accept symbolic
+ addresses.
+ symbolic_memort_operand(), call32_operand(), int8_operand(),
+ int16_operand(), uint24_operand(), reg_or_int8_operand(): Removed.
+ Not used.
+ uint16_operand(): Made static.
+
+Thu Apr 9 01:43:04 1998 Jeffrey A Law (law@cygnus.com)
+
+ * calls.c (expand_call): Fix typo.
+
+Thu Apr 9 00:18:44 1998 Dave Brolley (brolley@cygnus.com)
+
+ * c-lex.c (finput): New global.
+ (init_parse): Always included. Handle !USE_CPPLIB using
+ code originally in compile_file.
+ (finish_parse): Update for CPPLIB.
+ * toplev.c (init_parse, finish_parse): Declare.
+ (finput): Delete variable. Now in front-ends.
+ (compile_file): Remove code which is now handled by init_parse
+ which is unconditionally called. Similarly for finish_parse.
+
+Wed Apr 8 23:13:50 1998 Gavin Koch <gavin@cygnus.com>
+
+ * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
+ ASM_WEAKEN_LABEL): Add.
+
+Wed Apr 8 18:21:30 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha/crtbegin.asm, alpha/crtend.asm, alpha/t-crtb: New files.
+ * configure.in (alpha-*-linux*): Use them.
+
+Fri Apr 3 17:02:13 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
+
+ * tree.def (EXPR_WITH_FILE_LOCATION): New tree node definition.
+ * tree.h (EXPR_WFL_{NODE,FILENAME,FILENAME_NODE,LINENO,
+ COLNO,LINECOL,SET_LINECOL,EMIT_LINE_NOTE}): New macros.
+ (build_expr_wfl): New prototype declaration.
+ * tree.c (build_expr_wfl): New function, to build
+ EXPR_WITH_FILE_LOCATION nodes.
+ (copy_node): Don't zero TREE_CHAIN if copying a
+ EXPR_WITH_FILE_LOCATION node.
+ * print-tree.c (print_node): Handle EXPR_WITH_FILE_LOCATION.
+ * expr.c (expand_expr): Handle EXPR_WITH_FILE_LOCATION.
+
+Wed Apr 8 12:51:19 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (v850): Use t-v850.
+ (ix86-wrs-vxworks): Recognize 786 just like other x86 configurations.
+
+ * protoize.c (creat, read, write): Do not declare.
+
+ * jump.c (mark_jump_label): Record REG_LABEL notes for insns which
+ refer to the CODE_LABEL before a dispatch table.
+
+ * invoke.texi: Add ARC options.
+
+ * gcc.c (process_command): Improve error message for -o with
+ either -c or -S.
+
+ * i386/x-cygwin32 (CLIB): Link in advapi32.
+
+ * alpha.h (ASM_IDENTIFY_GCC): Define to nothing.
+ (ASM_IDENTIFY_LANGUAGE): Likewise.
+
+ * i386.md (movqi recognizer): Don't perfom byte increment into
+ a NON_QI_REG_P.
+
+ * configure.in (x86-dg-dgux): Run fixinc.dgux.
+
+ * i370.h: Fix typo in GEN_INT changes.
+
+ * bitmap.c (bitmap_element_allocate): Use "void" for arglist instead
+ of an empty arglist in prototype.
+
+ * Makefile.in: Remove bytecode crud that crept back in after the
+ gcc2 merge.
+
+1998-04-08 Brendan Kehoe <brendan@cygnus.com>
+
+ * c-lex.h (is_class_name): Fix arg type to be tree, not void.
+ (make_pointer_declarator, reinit_parse_for_function): Fix typo.
+
+Wed Apr 8 06:16:45 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
+
+Wed Apr 8 00:44:18 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
+
+ * c-lex.c (is_class_name): Delete declaration.
+ (whitespace_cr): Make static and add prototype.
+ * c-lex.h (make_pointer_declarator, reinit_parse_for_function,
+ yylex, get_directive_line): Turn declarations into prototypes.
+ (position_after_whitespace, check_newline, yyerror,, is_class_name,
+ forget_protocol_qualifiers, remember_protocol_qualifiers): Add
+ prototypes.
+ * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add
+ prototypes.
+ * gencodes.c (gen_insn): Add prototype.
+ * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split,
+ gen_peephole): Add prototypes.
+ * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add
+ prototypes.
+ * gengenrtl.c (type_from_format, accessor_from_format, special_rtx,
+ special_format, find_formats, gendecl, genmacro, gendef, genlegend,
+ genheader, gencode): Add prototypes.
+ * genopinit.c (gen_insn): Add prototype.
+ * genoutput.c (output_prologue, output_epilogue, scan_operands,
+ process_template, validate_insn_alternatives, gen_insn, gen_peephole,
+ gen_expand, gen_split, n_occurrences): Add prototypes.
+ * genpeep.c (gen_peephole): Add prototype.
+ * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop,
+ reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg,
+ labels_in_range_p, count_loop_regs_set, note_addr_stored,
+ loop_reg_used_before_p, scan_loop, replace_call_address,
+ skip_consec_insns, libcall_benefit, ignore_some_movables,
+ force_movables, combine_movables, rtx_equal_for_loop_p, move_movables,
+ strength_reduce, valid_initial_value_p, find_mem_givs, record_biv,
+ check_final_value, record_giv, update_giv_derive, basic_induction_var,
+ simplify_giv_expr, general_induction_var, consec_sets_giv,
+ check_dbra_loop, express_from, combine_givs_p, combine_givs,
+ product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1,
+ last_use_this_basic_block, record_initial, update_reg_last_use,
+ iteration_info, analyze_loop_iterations, insert_bct,
+ instrument_loop_bct, indirect_jump_in_function_p): Turn declarations
+ into prototypes.
+
+Tue Apr 7 21:48:52 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
+
+1998-04-07 Ken Raeburn <raeburn@cygnus.com>
+
+ * config/mips/mips.c (siginfo): Deleted.
+ (override_options): Don't install SIGINFO signal handler.
+
+Tue Apr 7 11:58:04 1998 Jim Wilson <wilson@cygnus.com>
+
+ * loop.c (check_dbra_loop): When normalize comparison_val, add check
+ to verify it is non-negative.
+
+Tue Apr 7 02:01:47 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_block_move): Correctly collect block offsets.
+ (alpha_expand_block_clear): Likewise.
+
+Mon Apr 6 23:36:01 1998 Richard Henderson <rth@cygnus.com>
+
+ * tree.h (sizetype_tab): Fix previous change for K&R.
+
+Mon Apr 6 22:23:29 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Apr 6 23:16:10 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
+ Add USG and POSIX to xm_defines.
+
+Mon Apr 6 21:49:57 1998 Bob Manson <manson@charmed.cygnus.com>
+
+ * gcc.c: Add linker spec.
+ (link_command_spec): Use %(linker) instead of ld.
+ (main): If collect2 is requested as the linker, see if it exists;
+ if not, use ld instead.
+
+ * Makefile.in (USE_COLLECT2): It's named collect2 now, not ld.
+ (ld): Deleted.
+ (install-collect2): Install as collect2, not ld.
+
+ * configure.in(will_use_collect2): It's named collect2 now.
+
+ * collect2: Remove checks to see if we were invoked recursively.
+ (collect_execute): Use _spawnvp under cygwin32.
+
+Mon Apr 6 17:23:41 1998 Jim Wilson <wilson@cygnus.com>
+
+ * haifa-sched.c (build_control_flow): Set unreachable for block whose
+ only predecessor is itself.
+
+Mon Apr 6 16:08:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-parse.in: Include system.h, and remove stuff now made redundant.
+ * cccp.c: Likewise.
+ * cexp.y: Likewise.
+ * protoize.c: Likewise. Properly check for cpp stringification.
+
+ * Makefile.in (c-parse.o, cccp.o, cexp.o, protoize.o, unprotoize.o):
+ Depend on system.h.
+
+ * objc/Make-lang.in (objc-parse.o): Likewise.
+
+Mon Apr 6 14:59:58 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gansidecl.h: Check if compiler supports __attribute__. Provide
+ definitions for ATTRIBUTE_UNUSED and ATTRIBUTE_PRINTF using
+ __attribute__ when its available. Also provide definitions for
+ ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2 and ATTRIBUTE_PRINTF_3 in
+ terms of ATTRIBUTE_PRINTF.
+
+ * genoutput.c (process_template): Use ATTRIBUTE_UNUSED in place
+ of __attribute__.
+
+Mon Apr 6 07:17:52 1998 Catherine Moore <clm@cygnus.com>
+
+ * combine.c (can_combine_p): Include successor in volatile test.
+
+Mon Apr 6 14:16:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (CASE_VECTOR_SHORTEN_MODE): Fix logic when to set
+ offset_unsigned.
+
+Mon Apr 6 02:03:29 1998 Jeffrey A Law (law@cygnus.com)
+
+ * objc/objc-act.c (encode_aggregate_within): Avoid GNU extensions
+ in prototype and definition.
+
+Mon Apr 6 00:48:56 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Apr 6 00:08:50 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_block_clear): Add missing offset arg to
+ alpha_expand_unaligned_store_words.
+
+Sun Apr 5 21:31:24 1998 John Wehle (john@feith.com)
+
+ * i386.md (movsf_push, movsf_mem): Remove.
+ (movsf_push): Rename from movsf_push_nomove and move in front of
+ movsf. Use nonmemory_operand predicate and don't bother checking
+ TARGET_MOVE.
+ (movsf_push_memory): New pattern.
+ (movsf): Don't bother checking for push_operand. If TARGET_MOVE and
+ both operands refer to memory then force operand[1] into a register.
+ (movsf_normal): Change to unnamed pattern.
+ Likewise for movdf, movxf, and friends.
+
+Sun Apr 5 18:45:51 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Apr 5 16:31:10 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (alpha-dec-osf*): Match osf1.3 correctly.
+
+Sun Apr 5 16:53:37 1998 Don Bowman <don@pixsci.com>
+
+ * configure.in (mips-wrs-vxworks): New target.
+
+Sat Apr 4 23:34:32 1998 Jeff Law (law@cygnus.com)
+
+ * expmed.c (synth_mult): The value -1, has no zeros, so it can
+ never have the form ...011.
+
+ * version.c: Bump for snapshot.
+
+Sat Apr 4 20:16:46 1998 Richard Henderson <rth@cygnus.com>
+
+ * i386.c (asm_output_function_prefix, load_pic_register):
+ Use ASM_GENERATE_INTERNAL_LABEL properly.
+ (output_pic_addr_const): Recognize %X to suppress any PIC sym suffix.
+ (print_operand): Ignore it.
+ (load_pic_register): Use it for the got load call.
+ * i386.md (prologue_set_got, prologue_get_pc): Likewise.
+ (prologue_get_pc_and_set_got): Likewise.
+ * i386.h: Update print_operand docs.
+
+Sat Apr 4 19:08:37 1998 Richard Henderson <rth@cygnus.com>
+
+ * i386.md (ffssi, ffshi): Rewrite as define_expands.
+ (ffssi_1, ffshi_1): New (unspec [] 5) support patterns.
+ * i386.c (notice_update_cc): Recognize unspec 5.
+
+Sat Apr 4 18:07:16 1998 David Mosberger-Tang (davidm@mostang.com)
+
+ * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
+ * alpha.c (print_operand): Handle it.
+ * alpha.md (fix_truncsfdi2): Use it. Add earlyclobber pattern
+ for ALPHA_TP_INSN.
+ (fix_truncdfdi2): Likewise.
+
+Sat Apr 4 17:42:05 1998 Richard Henderson <rth@cygnus.com>
+
+ * tree.h (sizetype_tab[2], sbitsizetype, ubitsizetype): Merge all
+ of these into a single struct, with additional [us]sizetype entries.
+ * stor-layout.c (set_sizetype): Initialize [us]sizetype.
+ * fold-const.c (size_int_wide): Don't rely on sizetype_tab being
+ an array.
+
+Sat Apr 4 17:04:41 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (alpha-*-linux-*): Undo tm_file changes from gcc2 merge.
+
+Sat Apr 4 13:50:01 1998 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (split_block_insns): Don't suppress insn splitting
+ on subsequent passes.
+
+ * alpha.c (hard_fp_register_operand): New function.
+ * alpha.h (PREDICATE_CODES): Add it.
+ * alpha.md (extendsidi2): Kill bogus f<-f cvtql+cvtlq case. Add an
+ f<-m case and accompanying define_split.
+ (trapb): Use a unique unspec_volatile number.
+
+Sat Apr 4 13:32:08 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (alpha-*-linux-gnu*): Undo Feb 3 change brought in
+ from gcc2 merge.
+
+Sat Apr 4 10:23:41 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
+ for details.
+
+ * haifa-sched.c: Mirror recent changes from gcc2.
+
+Fri Apr 3 00:17:01 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (insn*.o): Depend on system.h.
+
+ * pa.c (output_global_address): Initialize base.
+ * pa.h (GO_IF_LEGITIMATE_ADDRESS): Initialize index.
+
+1998-04-03 Mike Stump <mrs@wrs.com>
+
+ * gthr.h: Support systems that don't have weak, but have threads.
+ * configure.in (*wrs-vxworks*): Use VxWorks threads by default.
+ * gthr-vxworks.h: New file.
+ * objc/thr-vxworks.h: Dummy file from thr-single.c for now.
+
+Thu Apr 2 18:00:52 1998 Jim Wilson <wilson@cygnus.com>
+
+ * i386.md (movqi+1): Change alternative 1 from *r/r to *r/*rn.
+
+1998-04-02 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * ginclude/va-i960.h (va_end): Change void * to void.
+
+Thu Apr 2 13:51:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (choose-temp.o): Depend on system.h.
+
+ * choose-temp.c: Include system.h when IN_GCC.
+
+Thu Apr 2 02:37:07 1998 Joern Rennecke (amylaar@cygnus.co.uk)
+ Richard Henderson <rth@cygnus.com>
+
+ * reload.c (find_reloads_address): Try LEGITIMIZE_RELOAD_ADDRESS.
+ (move_replacements): New function.
+ * reload.h: Prototype it.
+
+ * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): New definition.
+
+Thu Apr 2 01:01:34 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure (alpha-*-linuxecoff, alpha-*-linux-gnulibc1):
+ Run fixincludes.
+
+ * emit-rtl.c (gen_lowpart_common): Skip count by HARD_REGNO_NREGS.
+ (gen_highpart): Likewise.
+ * final.c (alter_subreg): Allow the target to hook by-mode subreg
+ hard register number changes.
+
+Wed Apr 1 22:26:22 1998 Jeffrey A Law (law@cygnus.com)
+
+ * fold-const.c optimze_bit_field_compare): Initialize rnbitpos,
+ rnbitsize, rnmode and rinner.
+ (make_range): Initialize type.
+ (fold): Initialize arg0, arg1 and varop.
+
+ * function.c (instantiate_virtual_regs_1): Initialize offset, regnoi
+ and regnor.
+ (expand_function_start): Initialize last_ptr.
+
+ * stor-layout.c (layout_record): Initialize desired_align.
+ (get_best_mode): Initialize unit.
+
+ * tree.c (copy_node): Initialize length.
+
+ * c-lex.c (yylex): Initialize traditional_type, ansi_type and type.
+
+ * caller-save.c (insert_save_restore): Initialize pat, code and
+ numregs.
+
+ * emit-rtl.c (push_to_sequence): Initialize top.
+ (push_topmost_sequence): Likewise.
+
+ * genattrtab.c (simplify_by_exploding): Initialize defval.
+
+ * profile.c (branch_prob): Initialize dest.
+
+ * rtl.h (note_stores): Remove duplicate prototype.
+ (GEN_INT): Reinstate cast of second arg to HOST_WIDE_INT.
+
+ * cplus-dem.c (gnu_special): Don't get confused by .<digits>
+ strings that are not actually lengths.
+
+ * genattrtab.c: Make generated file use system.h, instead of
+ including stdio.h, etc directly.
+ * genextract.c, genopinit.c, genoutput.c: Likewise.
+ * genpeep.c, genrecog.c: Likewise.
+
+ * genoutput.c (process_template): Mark operands in the generated
+ function as potentially unused if compiling with GNU CC.
+
+ * i386/freebsd-elf.h (CPP_PREDEFINES): Update from FreeBSD folks.
+
+ * pa.md (reload peepholes): Remove unused variable "mode".
+
+Wed Apr 1 17:06:19 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.h: Add super interworking support.
+ * config/arm/thumb.c: Add super interworking support.
+ * config/arm/thumb.md: Add super interworking support.
+ * config/arm/lib1funcs.asm: Add interworking support.
+ * config/arm/lib1thumb.asm: Add super interworking support.
+ * config/arm/t-semi: Add interworking support.
+ * config/arm/t-thumb: Add interworking support.
+ * config/arm/README-interworking: New file.
+
+Wed Apr 1 14:38:10 1998 Jim Wilson <wilson@cygnus.com>
+
+ * config/mips/iris6.h (MD_EXEC_PREFIX): Set to /usr/bin/.
+ (MD_STARTFILE_PREFIX): Unset.
+
+1998-04-01 Mark Mitchell <mmitchell@usa.net>
+
+ * varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a
+ entity in a local scope.
+
+ * fold-const.c (fold): Call truthvalue_conversion for values which
+ are folded to boolean type.
+
+Wed Apr 1 06:09:53 1998 Jeffrey A Law (law@cygnus.com)
+
+ * 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently.
+ * convex.h, dsp16xx.c, fx80.md, gmicro.c, gmicro.md: Likewise.
+ * i370.h, i370.md, i860.c, i860.h, i860.md, i960.c: Likewise.
+ * i960.h, i960.md, m32r.md, m68k.md, m68kv4.h, m88k.c: Likewise.
+ * m88k.md, ns32k.c, ns32k.md, pdp11.c, pdp11.h, pdp11.md: Likewise.
+ * pyr.c, pyr.h, pyr.md, romp.c, romp.h, romp.md: Likewise.
+ * rs6000.md, sparc.c, sparc.h, sparc.md, spur.c, spur.md: Likewise.
+ * tahoe.md, vax.h, vax.md, we32k.c, we32k.h, we32k.md: Likewise.
+ * md.texi: Likewise.
+
+Wed Apr 1 08:33:44 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fixincludes (limits.h): Fix nested comments in Motorola's
+ limits.h and sys/limits.h.
+
+Tue Mar 31 16:57:33 1998 Jim Wilson <wilson@cygnus.com>
+
+ * alpha.c (alpha_expand_unaligned_load): Use tgt instead of addr
+ as dest of expand_binop call.
+
+ * alpha.md (extzv): Correct check for valid operand[2] values.
+
+ * profile.c (branch_prob): Add code to recognize HPPA tablejump entry
+ branch.
+
+ * toplev.c (rest_of__compilation): Call init_recog_no_volatile at end.
+
+Mon Mar 30 13:11:05 1998 Stan Cox <scox@cygnus.com>
+
+ * libgcc2.c (__main, __do_global_dtors, __do_global_ctors):
+ For __CYGWIN32__ use the versions in winsup/dcrt0.cc.
+
+ * gcc.c, cccp.c, cpplib.c, collect2.c (GET_ENVIRONMENT): Added.
+ cygwin32 can override this to allow both unix and win32 style PATHs.
+
+ * i386/xm-cygwin32.h (GET_ENVIRONMENT): Defined to allow win32
+ style environment paths.
+
+Mon Mar 30 14:43:20 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (cppalloc.o, cpperror.o, cppexp.o, cpphash.o,
+ cpplib.o, cppmain.o, fix-header.o, gcov.o, gen-protos.o,
+ gengenrtl.o, halfpic.o, hash.o, scan-decls.o, scan.o): Depend on
+ system.h.
+
+ * cpphash.c: Include config.h.
+ * cppalloc.c: Include system.h. Add parameters to various
+ function prototypes.
+ * cpperror.c: Likewise.
+ * cppexp.c: Likewise.
+ * cpphash.c: Likewise.
+ * cpplib.c: Likewise.
+ * cppmain.c: Likewise.
+ * fix-header.c: Likewise.
+ * gcov.c: Likewise.
+ * gen-protos.c: Likewise.
+ * gengenrtl.c: Likewise.
+ * halfpic.c: Likewise.
+ * hash.c: Likewise.
+ * scan-decls.c: Likewise.
+ * scan.c: Likewise.
+
+Mon Mar 30 11:06:45 1998 Jim Wilson <wilson@cygnus.com>
+
+ * README.gnat: Add lang_print_xnode definition.
+
+Mon Mar 30 11:12:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * config/m68k/m68k.c (standard_68881_constant_p): Don't use
+ fmovecr on the 68060.
+
+Mon Mar 30 00:21:03 1998 Jeffrey A Law (law@cygnus.com)
+
+ * genemit.c (DONE): Rework so that it works in the true arm if
+ an if-else conditional.
+ (FAIL): Likewise.
+
+Sun Mar 29 12:45:23 1998 Jeffrey A Law (law@cygnus.com)
+
+ * rs6000.c: Do not include stdioh or ctype.h anymore.
+
+ * Makefile.in (c-typeck.o): Delete on expr.h, insn-codes.h and
+ $(RTL_H).
+ (stor-layout.o): Likewise.
+ * c-typeck.c: Include rtl.h and expr.h.
+ * stor-layout.c: Likewise.
+
+ * cpplib.c (cpp_file_line_for_message): Delete unused parameter.
+ All callers changed.
+ (do_sccs): Wrap in an SCCS_DIRECTIVE ifdef.
+ * fix-header.c (cpp_file_line_for_message): Delete unused parameter.
+ All callers changed.
+
+ * collect2.c (is_in_list): Wrap inside COLLECT_EXPORT_LIST ifdef.
+
+ * local-alloc.c (reg_classes_overlap_p): Delete dead function.
+
+ * tree.h (lang_print_xnode): Provide prototype.
+
+Sat Mar 28 23:50:44 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Mar 29 00:42:21 1998 Jeffrey A Law (law@cygnus.com)
+
+ * objc/sendmsg.c (__objc_block_forward): Add braces for return
+ value if INVISIBLE_STRUCT_RETURN.
+
+ * pa.c (arith_double_operand): Fix parens.
+
+ * haifa-sched.c (print_pattern): Correct arg to sprintf.
+
+ * Makefile.in (libgcc1.null): Make return type for __foo void.
+
+Sat Mar 28 14:37:20 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h: Add declarations for many functions defined in pa.c.
+
+ * genpeep.c (main): Remove unused variable 'i' from the generated
+ file.
+
+ * genemit.c (gen_expand): Do not emit "_done" or "_fail" labels.
+ (gen_split): Likewise.
+ (main): Rework generated definitions of DONE and FAIL so that they
+ no longer use gotos. Avoids warnings about unused labels.
+
+ * integrate.c (copy_rtx_and_substitute): Rework to avoid need for
+ unused "junk" variable.
+
+ * genattrtab.c (write_complex_function): Add a default case in
+ generated switch statement to keep -W -Wall quiet.
+
+Sat Mar 28 10:47:21 1998 Nick Clifton <nickc@cygnus.com>
+
+ * invoke.texi: Document more ARM and Thumb command line options.
+
+ * config/arm/xm-thumb.h: New file.
+
+Sat Mar 28 01:37:33 1998 Craig Burley <burley@gnu.ai.mit.edu>
+
+ * stmt.c (expand_expr_stmt): Must generate code for
+ statements within an expression (gcc's `({ ... )}')
+ even if -fsyntax-only.
+
+Sat Mar 28 01:06:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+ Jeffrey A Law (law@cygnus.com)
+
+ * basic-block.h (basic_block_computed_jump_target): Declare.
+ * flags.h (current_function_has_computed_jump): Declare.
+ * flow.c (basic_block_computed_jump_target): Define.
+ (flow_analysis): Allocate it. Set current_function_has_computed_jump
+ to 0.
+ (find_basic_blocks): Set current_function_has_computed_jump and
+ elements of basic_block_computed_jump_target to 1 as appropriate.
+ * function.c (current_function_has_computed_jump): Define.
+ * global.c (global_conflicts): Don't allocate pseudos into stack regs
+ at the start of a block that is reachable by a computed jump.
+ * reg-stack.c (stack_reg_life_analysis): If must restart, do so
+ immediately.
+ (subst_stack_regs): Undo change from Sep 4 1997.
+ (uses_reg_or_mem): Now unused, deleted.
+ * stupid.c (stupid_life_analysis): Compute
+ current_function_has_computed_jump.
+ (stupid_find_reg): Don't allocate stack regs if the function has a
+ computed goto.
+ * haifa-sched.c (is_cfg_nonregular): Delete code to determine if
+ the current function has a computed jump. Use the global value
+ instead.
+
+Sat Mar 28 00:21:37 1998 Jeffrey A Law (law@cygnus.com)
+
+ * i386/freebsd.h (CPP_PREDEFINES): Remove __386BSD__.
+ (DWARF2_UNWIND_INFO): Define to zero.
+
+Fri Mar 27 16:04:49 1998 Michael Meissner <meissner@cygnus.com>
+
+ * gcc.c (set_std_prefix): Add declaration.
+ (process_command): If GCC_EXEC_PREFIX is set, remove /lib/gcc-lib/
+ suffix, and update the standard prefix prefix.c uses.
+
+ * prefix.c (std_prefix): New global to hold default prefix value.
+ (get_key_value): Change to use std_prefix instead of PREFIX.
+ (translate_name): Likewise.
+ (update_path): Likewise.
+ (get_key_value): Release allocated scratch storage.
+ (set_std_prefix): New function to reset the standard prefix.
+
+Fri Mar 27 18:08:21 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (find_barrier): Fix calculations for alignment increase.
+
+Fri Mar 27 08:56:52 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (stmp-fixinc): If we're actually fixing include
+ files, copy gcc's assert.h into the fixed include dir.
+ * fixincludes (assert.h): Avoid any attempts to fix a probably
+ broken system specific assert.h file.
+ * fixproto (stdlib.h): Make sure, it'll contain a definition of
+ size_t.
+
+Fri Mar 27 00:49:46 1998 Jeffrey A Law (law@cygnus.com)
+
+ * regclass.c (reg_scan_mark_refs): Be more selective about
+ when we mark a register with REGNO_POINTER_FLAG.
+
+Thu Mar 26 23:00:11 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ reload inheritance improvement:
+ * reload1.c (reg_reloaded_contents, reg_reloaded_insn):
+ Change meaning: index is now hard reg number.
+ (reg_reloaded_valid, reg_reloaded_dead): New variables.
+ (reload_spill_index): Content is now a hard reg number.
+ (reload_as_needed): Change to fit new variable meaning.
+ (forget_old_reloads_1, allocate_reload_reg): Likewise.
+ (choose_reload_regs, emit_reload_insns): Likewise.
+
+Thu Mar 26 18:34:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regclass.c (record_reg_classes): '?' increases cost by two.
+
+ * reload.c (find_reloads): Double previous costs. Output
+ reloads cost one unit extra.
+
+ * reload1.c (eliminate_regs): Delete LOAD_EXTENDED_OP code that
+ boiled down to && ! 0.
+
+ * reload.c (find_equiv_reg): Also consider a goal offset from the
+ frame pointer to be constant.
+
+Thu Mar 26 17:34:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (OPTIMIZATION_OPTIONS): Define.
+
+Thu Mar 26 00:19:47 1998 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (make_compound_operation): Simplify (subreg (*_extend) 0).
+
+Wed Mar 25 23:53:11 1998 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (pa_adjust_cost): Avoid redundant calls to get_attr_type.
+
+Wed Mar 25 13:40:48 1998 Jim Wilson <wilson@cygnus.com>
+
+ * c-common.c (check_format_info): Initialize type, is_type. New local
+ integral_format. Don't warn for 'L' when pedantic. Do warn for 'L'
+ when pedantic if used with integral format specifier.
+
+Wed Mar 25 16:09:01 1998 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum
+ direction.
+ (function_arg_padding): Declare.
+
+ * rs6000.c: Include system.h.
+ (function_arg_padding): Change return type to int, cast enum's to
+ int.
+
+ (From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>)
+ * collect2.c (scan_prog_file): Add explicit braces to avoid
+ ambiguous `else'.
+
+ * dbxout.c (dbxout_type_fields): Add braces around empty body in
+ an if-statement.
+ (dbxout_type): Likewise.
+
+ * rs6000.c (rs6000_override_options): Change type of `i', `j' and
+ `ptt_size' from int to size_t.
+ (rs6000_file_start): Likewise for `i'.
+ (rs6000_replace_regno): Add default case in enumeration switch.
+ (output_epilog): Remove unused variable `i'.
+ (rs6000_longcall_ref): Remove unused variables `len', `p', `reg1'
+ and `reg2'.
+
+ * rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
+ initializer.
+ (get_issue_rate, non_logical_cint_operand): Add prototype.
+ (rs6000_output_load_toc_table): Likewise.
+
+ * rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
+ `else'.
+
+Wed Mar 25 10:05:19 1998 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/thumb.c: New File. Support for ARM's Thumb
+ instruction set.
+ * config/arm/thumb.h: New File. Thumb definitions.
+ * config/arm/thumb.md: New File. Thumb machine description.
+ * config/arm/tcoff.h: New File. Thumb COFF support.
+ * config/arm/t-thumb: New File. Thumb makefile fragment.
+ * config/arm/lib1thumb.asm: New File. Thumb libgcc support functions.
+
+ * configure.in: Add Thumb-coff target.
+ * configure: Add Thumb-coff target.
+ * config.sub: Add Thumb-coff target.
+
+Wed Mar 25 10:30:32 1998 Jim Wilson <wilson@cygnus.com>
+
+ * loop.c (scan_loop): Initialize move_insn_first to zero.
+
+Wed Mar 25 01:06:49 1998 Joel Sherrill (joel@OARcorp.com)
+
+ * config/i386/go32-rtems.h: Defined TARGET_MEM_FUNCTIONS.
+ * config/i386/rtems.h: Likewise.
+ * config/i960/rtems.h: Likewise.
+ * config/m68k/rtems.h: Likewise.
+ * config/mips/rtems64.h: Likewise.
+ * config/pa/rtems.h: Likewise.
+ * config/rs6000/rtems.h: Likewise.
+ * config/sh/rtems.h: Likewise.
+ * config/sparc/rtems.h: Likewise.
+
+Wed Mar 25 00:57:26 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * pa.c (emit_move_sequence): If in reload, call find_replacement.
+
+Tue Mar 24 10:44:11 1998 Nick Clifton <nickc@cygnus.com>
+
+ * Makefile.in (gcov$(exeext)): Support .exe extension to gcov.
+
+ * collect2.c (find_a_file): Add debugging.
+ (find_a_file): Test for win32 style absolute paths if
+ DIR_SERPARATOR is defined.
+ (prefix_from_string): Add debugging.
+ (main): Test for debug command line switch at start of program
+ execution.
+ (main): Use GET_ENVIRONMENT rather than getenv().
+ (prefix_from_env): Use GET_ENVIRONMENT.
+
+1998-03-24 Mark Mitchell <mmitchell@usa.net>
+
+ * cplus-dem.c (optable): Add sizeof.
+ (demangle_template_value_parm): New function containing code
+ previously found in demangle_template.
+ (demangle_integral_value): New function which handles complicated
+ integral expressions.
+ (demangle_template): Use them.
+
+Tue Mar 24 12:13:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (genconfig.o, genflags.o, gencodes.o, genemit.o,
+ genopinit.o, genrecog.o, genextract.o, genpeep.o, genattr.o,
+ genattrtab.o, genoutput.o): Depend on system.h.
+
+ * genattr.c: Include system.h. Add arguments to various function
+ prototypes. Remove redundant prototype of read_rtx().
+ * genattrtab.c: Likewise.
+ * gencodes.c: Likewise.
+ * genconfig.c: Likewise.
+ * genemit.c: Likewise.
+ * genextract.c: Likewise.
+ * genflags.c: Likewise.
+ * genopinit.c: Likewise.
+ * genoutput.c: Likewise.
+ * genpeep.c: Likewise.
+ * genrecog.c: Likewise.
+
+1998-03-24 Martin von Loewis <loewis@informatik.hu-berlin.de>
+
+ * c-lang.c (lang_print_xnode): New function.
+ * objc/objc-act.c (lang_print_xnode): Likewise.
+ * print-tree.c (print_node): Call it
+
+Mon Mar 23 23:59:11 1998 H.J. Lu (hjl@gnu.org)
+
+ * c-parse.in: Recognize protocol qualifiers in class
+ definitions for objc.
+ Include "output.h".
+ (yyerror): Remove redundant decl.
+ (yyprint): Fix prototype.
+
+Mon Mar 23 23:49:47 1998 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (rtx_cost): Only call CONST_COSTS if it is defined.
+
+ * stmt.c (unroll_block_trees): Free block_vector if needed.
+
+Mon Mar 23 23:26:42 1998 Philippe De Muyter <phdm@macqel.be>
+
+ * m68k/m68k.md (zero_extendqidi2, zero_extendhidi2): New patterns.
+ (zero_extendsidi2): Avoid useless copy.
+ (iordi_zext): New pattern.
+ (iorsi_zexthi_ashl16): Pattern reworked to avoid "0" constraint for
+ operand 2.
+ (iorsi_zext): New name for old unnamed pattern; indentation fixes.
+
+ * m68k/m68k.md (ashldi_const): Allow shift count in range ]32,63].
+ (ashldi3): Allow constant shift count in range ]32,63].
+ (ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
+
+1998-03-22 Mark Mitchell <mmitchell@usa.net>
+
+ * tree.h (IS_EXPR_CODE_CLASS): New macro.
+
+Mon Mar 23 23:18:48 1998 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (CONST_COSTS): Remove definition.
+ (DEFAULT_RTX_COSTS): Define.
+
+Mon Mar 23 22:58:22 1998 Joel Sherrill (joel@OARcorp.com)
+
+ * config/sh/rtems.h: Switched from ELF to COFF.
+
+Mon Mar 23 14:14:20 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * freebsd.h (ASM_OUTPUT_ALIGN): Redefine.
+
+Sat Mar 21 23:52:56 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Mar 22 00:50:42 1998 Nick Clifton <nickc@cygnus.com>
+ Geoff Noer <noer@cygnus.com>
+
+ * Makefile.in: Various fixes for building cygwin32 native toolchains.
+
+ * objc/Makefile.in: Various fixes for building cygwin32 native toolchains.
+ * objc/Make-lang.in: Likewise.
+
+ * config/i386/xm-cygwin32.h (PATH_SEPARATOR): Set to a semi-colon.
+
+Sun Mar 22 00:21:46 1998 R. Ganesan <rganesan@novell.com>
+
+ * configure.in: Handle with-PACKAGE=no correctly
+
+Fri Mar 20 17:36:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
+ c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
+ caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
+ dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
+ expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
+ integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
+ prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
+ reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
+ rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
+ tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
+ on system.h.
+
+ * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
+ c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
+ caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
+ dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
+ expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
+ integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
+ prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
+ reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
+ rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
+ stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
+ xcoffout.c: Include system.h. Organize include ordering so
+ that stdarg/varargs comes before other system headers. Remove
+ spurious casts of functions assured of a prototype in system.h.
+
+Fri Mar 20 11:19:40 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * reg-stack.c (pop_stack): Define. Pops any register on the
+ regstack and adjusts regstack.
+ (compare_for_stack_reg): Use pop_stack.
+
+Thu Mar 19 23:51:01 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (hppa1.0-hp-hpux10): Handle threads for this
+ config too.
+
+Thu Mar 19 20:30:31 1998 Philippe De Muyter <phdm@macqel.be>
+
+ * libgcc2.c (exit): Do not call __bb_exit_func if HAVE_ATEXIT.
+
+ * fold-const.c (fold): Replace sign-extension of a zero extended
+ value by a single zero extension.
+
+Thu Mar 19 00:58:07 1998 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (init_eh): Do nothing.
+ (save_eh_status): Call init_eh_for_function, not init_eh.
+ * function.c (push_function_context_to): Don't call init_emit.
+
+Thu Mar 19 13:39:52 1998 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
+ and EABI.
+
+Thu Mar 19 10:10:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * final.c (shorten_branches): Add parentheses around +/- in
+ operand of &.
+
+ * flow.c (life_analysis): Wrap variable `i' in macro ELIMINABLE_REGS.
+
+Thu Mar 19 09:15:17 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * regclass.c (memory_move_secondary_cost): Wrap uses of
+ SECONDARY_INPUT_RELOAD_CLASS and SECONDARY_OUTPUT_RELOAD_CLASS
+ with #ifdef tests.
+
+Thu Mar 19 09:06:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * config/m68k/m68k.md (addqi3): Fix typo gen_INT vs. GEN_INT.
+
+ * flow.c (life_analysis): #include <sys/types.h> to make sure
+ size_t is defined.
+ * cplus-dem.c (demangle_function_name): Likewise.
+
+Thu Mar 19 09:00:01 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * final.c (insn_noperands): Change type to unsigned int.
+ (final_scan_insn): Likewise for noperands;
+ properly check operand number boundaries.
+
+Wed Mar 18 16:20:30 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (extzv): Don't reject register operands. Fix
+ mode of operand 1.
+
+Wed Mar 18 16:14:23 1998 Richard Henderson <rth@cygnus.com>
+
+ * dbxout.c (dbxout_function_end): Fix last change. The correct
+ predicate is ASM_OUTPUT_SECTION_NAME.
+
+Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
+
+ * sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c.
+ (ashlsi): Use match_dup 1 instead of match_operand 2.
+
+Wed Mar 18 13:46:07 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * fold-const.c (operand_equal_for_comparison_p): See if equal
+ when nop conversions are removed.
+
+Wed Mar 18 13:42:01 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case COND_EXPR): If have conditional move,
+ don't use ORIGINAL_TARGET unless REG.
+
+Wed Mar 18 16:53:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * netbsd.h (ASM_OUTPUT_ALIGN): Redefine.
+
+Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
+
+ * loop.c (struct movable): New field move_insn_first.
+ (scan_loop): In consec sets code, set it. Clear it otherwise.
+ (move_movables): In consec sets code, use it. Copy REG_NOTES from
+ p to i1 only if i1 does not have REG_NOTES. Delete obsolete ifdefed
+ out code.
+
+Wed Mar 18 09:52:56 1998 Richard Henderson <rth@cygnus.com>
+
+ * rtl.c (read_rtx): Fall back on homebrew atoll if HOST_WIDE_INT
+ is large, and the system doesn't provide atoll or atoq.
+ (atoll): New.
+
+ * alpha/xm-vms.h (HAVE_ATOLL): Define.
+ Reported by Klaus Kaempf <kkaempf@progis.de>.
+
+Wed Mar 18 09:56:26 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-lang.c (finish_file): Wrap variable `void_list_node' with macro
+ test !ASM_OUTPUT_CONSTRUCTOR || !ASM_OUTPUT_DESTRUCTOR.
+
+ * calls.c (emit_call_1): Wrap variable `already_popped' with macro
+ test !ACCUMULATE_OUTGOING_ARGS.
+
+ * collect2.c (write_c_file_glob): Wrap function definition in
+ macro test !LD_INIT_SWITCH.
+
+ * combine.c (try_combine): Wrap variables `cc_use' and
+ `compare_mode' in macro test EXTRA_CC_MODES.
+
+ * cpplib.c (do_ident): Remove unused variable `len'.
+ (skip_if_group): Remove unused variables `at_beg_of_line' and
+ `after_ident'.
+ (cpp_get_token): Remove unused variable `dummy'.
+
+ * dbxout.c (scope_labelno): Move static variable definition inside
+ the one function scope where it is used.
+ (dbxout_function_end): Wrap prototype and definition in
+ macro test !NO_DBX_FUNCTION_END.
+
+ * dwarf2out.c (add_subscript_info): Wrap variable `dimension_number'
+ in macro test !MIPS_DEBUGGING_INFO.
+
+ * expr.c (expand_builtin_setjmp): Move declaration of variable `i'
+ into the scope where it is used. Wrap empty else-statement body
+ in braces.
+
+ * fix-header.c: Fix typo in comment.
+ (inf_skip_spaces): Cast results of INF_UNGET to (void).
+ (check_protection, main): Likewise.
+
+ * flow.c (find_basic_blocks_1): Remove dangling comment text.
+
+ * function.c (contains): Wrap prototype and definition in macro
+ test HAVE_prologue || HAVE_epilogue.
+ (fixup_var_refs_1): Remove unused variable `width'.
+
+ * gen-protos.c (main): Remove unused variable `optr'.
+
+ * haifa-sched.c (debug_control_flow): Remove unused variable `j'.
+
+ * libgcc2.c (__udiv_w_sdiv): Provide dummy return value of 0.
+ (__sjpopnthrow): Remove unused variable `jmpbuf'.
+ (__throw): Remove unused variable `val'.
+
+ * protoize.c: Check for a previously existing definition before
+ defining *_OK macros.
+
+ * scan-decls.c (scan_decls): Remove unused variable `old_written'.
+
+Tue Mar 17 00:45:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * vax.h (ADDR_VEC_ALIGN): Define.
+
+Mon Mar 16 15:57:17 1998 Michael Meissner <meissner@cygnus.com>
+
+ * gcc.c (default_arg): Don't wander off the end of allocated
+ memory.
+
+ (From Geoffrey Keating <geoffk@ozemail.com.au>)
+ * rs6000.c (small_data_operand): Ensure that any address
+ referenced relative to the small data area is inside the SDA.
+
+Mon Mar 16 12:55:15 1998 Jim Wilson <wilson@cygnus.com>
+
+ * config/m68k/netbsd.h (ASM_SPEC): Add %{m68060}.
+
+Mon Mar 16 15:50:20 1998 Andrew MacLeod <amacleod@cygnus.com>
+
+ * except.h (in_same_eh_region): New prototype.
+ (free_insn_eh_region, init_insn_eh_region): New prototypes.
+ * except.c (insn_eh_region, maximum_uid): New static variables.
+ (set_insn_eh_region): New static function to set region numbers.
+ (free_insn_eh_region): New function to free EH region table.
+ (init_insn_eh_region): New function to initialize EH region table.
+ (in_same_eh_region): New function used to determine if two rtl
+ instructions are in the same exception region or not.
+ * final.c (final): Initialize the table indicating which instructions
+ belong in which exception region.
+ * genpeep.c (main): Add "except.h" to include file list in generated
+ file insn-peep.c.
+ * config/sparc/sparc.md: Add calls to 'in_same_eh_region' in 4
+ peepholes involving calls and unconditional branches.
+
+Mon Mar 16 11:16:50 1998 Jim Wilson <wilson@cygnus.com>
+
+ * README.gnat: New file.
+
+Mon Mar 16 11:14:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * config/m68k/m68k.c: Include <stdlib.h> for atoi. Include
+ "recog.h" for offsettable_memref_p.
+ (legitimize_pic_address): Remove unused variable `offset'.
+ (notice_update_cc): Change return type to void. Add default label
+ to switch.
+ (standard_68881_constant_p): Remove unused variable mode.
+ (print_operand): Define local variable i only if SUPPORT_SUN_FPA.
+ (const_int_cost): Explicitly declare as returning int.
+ (output_dbcc_and_branch): Change return type to void.
+
+ * config/m68k/linux.h, config/m68k/m68k.md, config/m68k/m68k.c,
+ config/m68k/m68k.h: Replace gen_rtx (XXX, ...) with gen_rtx_XXX
+ (...). Use GEN_INT instead of gen_rtx_CONST_INT.
+
+Sun Mar 15 22:30:44 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Fri Mar 13 11:30:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * config/m68k/m68k.h (CONST_OK_FOR_LETTER_P): Fix logic in range
+ check for 'M' constraint.
+
+Thu Mar 12 14:47:14 1998 Jim Wilson <wilson@cygnus.com>
+
+ * cccp.c (create_definition): If pedantic, call pedwarn for macro
+ varargs feature.
+
+Thu Mar 12 13:43:25 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
+
+ * i386.c (ix86_logical_operator): New function.
+ (split_di): Ensure that when a MEM is split, the resulting MEMs have
+ SImode.
+ * i386.md (anddi3, xordi3, iordi3): New patterns. Add a define_split
+ to implement them.
+
+Thu Mar 12 15:13:16 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ Richard Earnshaw <rearnsha@arm.com>
+ Nick Clifton <nickc@cygnus.com>
+
+ * tm.texi (DEFAULT_RTX_COSTS): Document new macro.
+
+ * arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
+
+ * cse.c (rtx_cost): Provide a default case in an enumeration
+ switch, and call DEFAULT_RTX_COSTS if it's defined.
+
+Thu Mar 12 10:02:38 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * basic-block.h (compute_preds_succs): Change return type in
+ prototype to void.
+ * flow.c (compute_preds_succs): Likewise in function definition.
+
+ * regmove.c (find_matches): Cast char used as array index to unsigned char
+ to suppress warning.
+
+Thu Mar 12 09:39:40 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * i386.h (RTX_COSTS): Insert braces around nested if.
+ (ADDITIONAL_REGISTER_NAMES): Insert braces around structured
+ elements.
+
+ * gcc.c (default_compilers): Properly put brackets around array elements in
+ initializer.
+
+ * getopt.c (_getopt_internal): Add explicit braces around nested if;
+ reformatted.
+
+ * reg-stack.c (record_asm_reg_life): Add explicit braces around nested if's.
+ (record_reg_life_pat): Add explicit parens around && and || in expression.
+ (stack_reg_life_analysis): Add parens around assignment used as expression.
+ (convert_regs): Likewise.
+
+Thu Mar 12 09:25:29 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * bitmap.c (bitmap_element_allocate): Remove unused parameter;
+ change callers accordingly.
+
+ * cplus-dem.c (arm_special): Remove unused parameter work in prototype
+ and definition; change all callers accordingly.
+
+ * except.c (init_eh): Avoid assignment of unused return value of
+ build_pointer_type; cast it to void, instead, and remove unused
+ variable type.
+
+ * gcc.c (lang_specific_driver): Define prototype only #ifdef
+ LANG_SPECIFIC_DRIVER.
+ (temp_names): Define only #ifdef MKTEMP_EACH_FILE.
+
+ * genoutput.c (output_epilogue): Initialize next_name to 0.
+
+ * real.c (efrexp): #if 0 prototype and function definition.
+ (eremain): Likewise.
+ (uditoe): Likewise.
+ (ditoe): Likewise.
+ (etoudi): Likewise.
+ (etodi): Likewise.
+ (esqrt): Likewise.
+
+ * reload.c (push_secondary_reload): Define prototype only
+ #ifdef HAVE_SECONDARY_RELOADS.
+
+ * varasm.c (assemble_static_space): Define rounded only
+ #ifndef ASM_OUTPUT_ALIGNED_LOCAL.
+
+Thu Mar 12 09:11:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * i386.md (andsi): Add default case in enumeration switch.
+ (iorsi3): Likewise.
+ (iorhi3): Likewise.
+ (xorsi3): Likewise.
+
+Thu Mar 12 08:37:02 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * c-decl (finish_struct): Change type of min_align to unsigned.
+
+ * cplus-dem.c (demangle_function_name): Change type of variable i to size_t;
+ remove unused variable len.
+
+ * dwarf2out.c (reg_save): Add explicit cast of -1 to unsigned and a
+ comment indicating this is proper behavior.
+ (reg_loc_descriptor): Remove redundant comparison of unsigned variable
+ reg >= 0.
+ (based_loc_descr): Likewise.
+
+ * enquire.c (bitpattern): Change type of variable i to unsigned.
+
+ * final.c (output_asm_insn): Don't cast insn_noperands to unsigned.
+
+ * flow.c (life_analysis): Change type of variable i to size_t;
+ remove unused variable insn.
+
+ * gcc.c (translate_options): Change type of variables optlen, arglen and
+ complen to size_t.
+ (input_filename_length): Change type to size_t.
+ (do_spec_1): Change type of variable bufsize to size_t.
+ (main): Change type of variables i and j to size_t;
+ remove subblock local definition of variable i.
+ (lookup_compiler): Change type of second argument to size_t;
+ change type of variable i to size_t.
+
+ * genemit.c (output_init_mov_optab): Change type of variable i to size_t.
+
+ * genopinit.c (get_insn): Change type of variable pindex to size_t.
+
+ * genrecog.c (add_to_sequence): Change type of variable i to size_t.
+
+ * global.c (global_alloc): Change type of variable i to size_t.
+
+ * regclass.c (init_reg_sets): Change type of variables i and j to unsigned.
+
+ * stmt.c (expand_end_bindings): Change type of variable i to size_t.
+ (expand_end_case): Change type of variable count to size_t.
+
+ * toplev.c (main): Change type of variable j to size_t.
+ (set_target_switch): Change type of variable j to size_t.
+ (print_switch_values): Change type of variable j to size_t;
+ remove unused variable flags.
+
+ * varasm.c (assemble_variable): Change type of variable align to size_t.
+ (const_hash_rtx): Change type of variable i to size_t.
+
+1998-03-11 Mark Mitchell <mmitchell@usa.net>
+
+ * dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
+ TREE_VEC if that's what it really is.
+
+Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com>
+
+ * {haifa-,}sched.c (rank_for_schedule): Only take void * arguments
+ as per ISO C spec.
+
+Wed Mar 11 12:05:20 1998 Teemu Torma <tot@trema.com>
+
+ * gthr.h: Changed the comment about return values.
+ * gthr-solaris.h (__gthread_once): Do not use errno; return the
+ error number instead of -1.
+ (__gthread_key_create): Any nonzero return value is an error.
+ * libgcc2.c (eh_context_initialize): Check for nonzero return
+ value from __gthread_once.
+ Check that the value of get_eh_context was really changed.
+
+Wed Mar 11 18:26:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (LOOP_ALIGN): Only align when optimizing.
+ * sh.c (find_barrier): Clear inc for CODE_LABELs.
+ When not optimizing, calculate alignment for BARRIERs directly.
+
+Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (shorten_branches): Remove conditionalizing on
+ SHORTEN_WITH_ADJUST_INSN_LENGTH.
+ * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove.
+
+Wed Mar 11 02:37:41 1998 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (find_basic_blocks_1): Keep the cfg accurate when removing
+ an unconditional jump around deleted blocks.
+
+Mon Mar 9 12:02:23 1998 Jim Wilson <wilson@cygnus.com>
+
+ * profile.c (branch_prob): If see computed goto, call fatal instead of
+ abort.
+
+ * config/mips/sni-svr4.h (CPP_PREDEFINE): Add -DSNI and -Dsinix.
+
+ * configure.in (alpha-dec-osf): Add default case for osf* to switch.
+ Patch from Bruno Haible.
+
+ * function.c (put_reg_into_stack): Copy MEM_IN_STRUCT_P from new.
+ (assign_parms): Set aggregate if hide_last_arg and last_named.
+
+Mon Mar 9 19:57:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (shorten_branches): Initialize insn_addresses.
+
+Mon Mar 9 14:10:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (MUST_PASS_IN_STACK): Define.
+
+Sun Mar 8 13:01:56 1998 Jeffrey A Law (law@cygnus.com)
+
+ * final.c (shorten_branches): Fix minor logic error in
+ ADDR_DIFF_VEC shortening support.
+
+Sun Mar 8 02:17:42 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Mar 7 00:54:15 1998 Jeffrey A Law (law@cygnus.com)
+
+ * haifa-sched.c (is_cfg_nonregular): Change return type to
+ an int. No longer compute "estimated" number of edges. Use
+ computed_jump_p instead of duplicating the code. Fixup/add
+ some comments.
+ (build_control_flow): Returns a value indicating an irregularity
+ in the cfg was detected. Count the number of edges in the cfg.
+ allocate various edge tables.
+ (find_rgns): No longer look for unreachable blocks.
+ (schedule_insns): Do not allocate memory for edge tables here.
+ Free memory for edge tables before returning. Do not perform
+ cross block scheduling if build_control_flow returns nonzero.
+ * flow.c (compute_preds_succs): More accurately determine when
+ a block drops in.
+
+ * basic-block.h (free_basic_block_vargs): Provide prototype.
+
+ * cccp.c (main): Fix dumb mistakes in last change.
+
+Fri Mar 6 21:28:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * rtl.h (addr_diff_vec_flags): New typedef.
+ (union rtunion_def): New member rt_addr_diff_vec_flags.
+ (ADDR_DIFF_VEC_FLAGS): New macro.
+
+ * sh.c (output_branch): Fix offset overflow problems.
+
+ * final.c (shorten_branches): Implement CASE_VECTOR_SHORTEN_MODE.
+ (final_scan_insn): New argument BODY for ASM_OUTPUT_ADDR_DIFF_ELT.
+ * rtl.def (ADDR_DIFF_VEC): Three new fields (min, max and flags).
+ * stmt.c (expand_end_case): Supply new arguments to
+ gen_rtx_ADDR_DIFF_VEC.
+ * 1750a.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY.
+ * alpha.h, arc.h, clipper.h, convex.h : Likewise.
+ * dsp16xx.h, elxsi.h, fx80.h, gmicro.h, h8300.h : Likewise.
+ * i370.h, i386.h, i860.h, i960.h, m32r.h, m68k.h, m88k.h : Likewise.
+ * mips.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pyr.h : Likewise.
+ * rs6000.h, sh.h, sparc.h, spur.h, tahoe.h, v850.h : Likewise.
+ * vax.h, we32k.h, alpha/vms.h, arm/aof.h, arm/aout.h : Likewise.
+ * i386/386bsd.h, i386/freebsd-elf.h : Likewise.
+ * i386/freebsd.h, i386/linux.h : Likewise.
+ * i386/netbsd.h, i386/osfrose.h, i386/ptx4-i.h, i386/sco5.h : Likewise.
+ * i386/sysv4.h, m68k/3b1.h, m68k/dpx2.h, m68k/hp320.h : Likewise.
+ * m68k/mot3300.h, m68k/sgs.h : Likewise.
+ * m68k/tower-as.h, ns32k/encore.h, sparc/pbd.h : Likewise.
+ * sh.h (INSN_ALIGN, INSN_LENGTH_ALIGNMENT): Define.
+ (CASE_VECTOR_SHORTEN_MODE): Define.
+ (short_cbranch_p, align_length, addr_diff_vec_adjust): Don't declare.
+ (med_branch_p, braf_branch_p): Don't declare.
+ (mdep_reorg_phase, barrier_align): Declare.
+ (ADJUST_INSN_LENGTH): Remove alignment handling.
+ * sh.c (uid_align, uid_align_max): Deleted.
+ (max_uid_before_fixup_addr_diff_vecs, branch_offset): Deleted.
+ (short_cbranch_p, med_branch_p, braf_branch_p, align_length): Deleted.
+ (cache_align_p, fixup_aligns, addr_diff_vec_adjust): Deleted.
+ (output_far_jump): Don't use braf_branch_p.
+ (output_branchy_insn): Don't use branch_offset.
+ (find_barrier): Remove checks for max_uid_before_fixup_addr_diff_vecs.
+ Remove paired barrier stuff.
+ Don't use cache_align_p.
+ Take alignment insns into account.
+ (fixup_addr_diff_vecs): Reduce to only fixing up the base label of
+ the addr_diff_vec.
+ (barrier_align, branch_dest): New function.
+ (machine_dependent_reorg, split_branches): Remove infrastructure
+ for branch shortening that is now provided in the backend.
+ * sh.md (short_cbranch_p, med_branch_p, med_cbranch_p): New attributes.
+ (braf_branch_p, braf_cbranch_p): Likewise.
+ (attribute length): Use new attributes.
+ (casesi_worker): Get mode and unsignednedd from ADDR_DIFF_VEC.
+ (addr_diff_vec_adjust): Delete.
+ (align_2): Now a define_expand.
+ (align_log): Now length 0.
+
+Fri Mar 6 14:41:33 1998 Michael Meissner <meissner@cygnus.com>
+
+ * m32r.md (right): Correctly check for length == 2, not 1.
+
+Fri Mar 6 14:00:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips/mips.h: Prototype `machine_dependent_reorg'.
+ (ASM_OUTPUT_ALIGN): Remove unused variable `mask'.
+
+Fri Mar 6 11:43:35 1998 Joern Rennecke (amylaar@cygnus.co.uk)
+
+ * final.c (shorten_branches): Restore accidentally removed code.
+
+Fri Mar 6 11:00:49 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * configure.in: Remove duplicate uses of AC_PROG_CC and
+ AC_PROG_MAKE_SET.
+
+Fri Mar 6 00:59:30 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (target_cpu_default2): Correct typo for alphapca56.
+
+Thu Mar 5 23:24:50 1998 Jeffrey A Law (law@cygnus.com)
+ Doug Evans (devans@cygnus.com)
+
+ * haifa-sched.c (build_jmp_edges): Delete dead function.
+ (build_control_flow): Use cfg routines from flow.c.
+ (schedule_insns): Remove debugging code accidentally checked
+ in earlier today.
+
+ * basic-block.h: Add external integer list structures, typdefs,
+ accessor macros and function declarations. Similarly for
+ basic block pred/succ support and simple bitmap stuff.
+ * flow.c: Add functions for integer list, basic block pred/succ
+ support and simple bitmap support.
+ (compute_dominators): New function to compute dominators and
+ post dominators.
+ (find_basic_blocks): Split into two functions.
+ (life_analysis): Likewise.
+ (flow_analysis): Removed. Now handled by calling find_basic_blocks,
+ the life_analysis from toplev.c.
+ * toplev.c (rest_of_compilation): Call find_basic_blocks, then
+ life_analysis instead of flow_analysis.
+
+Thu Mar 5 23:06:26 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * jump.c (jump_optimize): Call mark_jump_label also for deleted
+ insns.
+ (mark_jump_label): Don't increment ref counts for deleted insns.
+
+Thu Mar 5 09:55:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips/iris6.h (TARGET_DEFAULT): Parenthesize macro definition.
+
+ * mips/mips.c: Include stdlib.h and unistd.h.
+ (mips_asm_file_end): Add braces around empty body in an if-statement.
+ (function_prologue): Wrap variable `fnname' in
+ !FUNCTION_NAME_ALREADY_DECLARED. Correct format specifier in fprintf.
+ (mips_select_rtx_section, mips_select_section): Declare as void.
+
+ * mips/mips.h: Add prototypes for extern functions in mips.c.
+ (FUNCTION_ARG_REGNO_P): Add parentheses around && within ||.
+ (ENCODE_SECTION_INFO): Add braces around empty body in an
+ if-statement.
+
+ * mips/mips.md (movdi): Add parentheses around && within ||.
+ (movsf, movdf): Likewise.
+ (branch_zero, branch_zero_di): Add default case in
+ enumeration switch.
+
+Thu Mar 5 02:45:48 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha/alpha.h (TARGET_WINDOWS_NT, TARGET_OPEN_VMS): Just make them
+ real constants, since they can't be changed.
+ (TARGET_AS_CAN_SUBTRACT_LABELS): New.
+ * alpha/alpha.md (builtin_setjmp_receiver): Use it.
+ * alpha/osf.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
+ * alpha/osf2or3.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
+ * alpha/vms.h (TARGET_OPEN_VMS): New.
+ * alpha/win-nt.h (TARGET_WINDOWS_NT): New.
+
+Thu Mar 5 02:41:27 1998 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (find_reloads): Always force (subreg (mem)) to be
+ reloaded if WORD_REGISTER_OPERATIONS.
+
+Thu Mar 5 02:14:44 1998 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (free_list): Rename from free_pnd_lst.
+ (free_pending_lists): Rename free_pnd_lst uses.
+ (remove_dependence): Place expunged element on unused_insn_list.
+ (alloc_INSN_LIST, alloc_EXPR_LIST): New. Change all callers of
+ gen_rtx_*_LIST and alloc_rtx to use them.
+ (compute_block_backward_dependences): Free the reg_last_* lists.
+
+Thu Mar 5 00:05:40 1998 Jeffrey A Law (law@cygnus.com)
+
+ * cccp.c (main): Avoid undefined behavior when setting pend_includes
+ and pend_files.
+
+Wed Mar 4 21:58:25 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
+
+ * rs6000/linux.h: Don't define DEFAULT_VTABLE_THUNKS to 1 if
+ USE_GNULIBC_1 is defined.
+ * configure.in: Add a new case powerpc-*-linux-gnulibc1 which
+ includes the t-linux-gnulibc1 fragment.
+
+Wed Mar 4 12:11:36 1998 Jim Wilson <wilson@cygnus.com>
+
+ * mips.md (movdf_internal1a): Fix misplaced parenthesis in condition.
+
+Wed Mar 4 18:47:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (final_scan_insn, case CODE_LABEL: Cleanup.
+
+Wed Mar 4 15:51:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (shorten_branches): Tag the loop alignment onto the
+ first label after NOTE_INSN_LOOP_BEG even if there is an
+ intervening insn.
+
+Tue Mar 3 21:48:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (insn_current_reference_address):
+ Use SEQ instead of BRANCH as argument to align_fuzz, to get a
+ proper alignment chain.
+
+ * final.c (max_labelno): New static variable.
+ (final_scan_insn): Check max_labelno before outputting an
+ alignment for a label.
+ (shorten_branches): Remove unused variable length_align.
+
+Tue Mar 3 14:27:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * sparc.c (ultrasparc_adjust_cost): Add default case in
+ enumeration switch.
+
+ * sparc.h: Add prototypes for extern functions defined in
+ sparc.c.
+
+Tue Mar 3 10:00:11 1998 Nick Clifton <nickc@cygnus.com>
+
+ * toplev.c: Only generate <name>.dbr file when dumping RTL if
+ DEALY_SLOTS is defined.
+
+Tue Mar 3 07:36:37 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * reorg.c (fill_eager_delay_slots): Add new argument delay_list
+ in call to fill_slots_from_thread.
+
+Mon Mar 2 13:45:03 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha/linux.h (CPP_PREDEFINES): Correct connecting whitespace
+ to SUB_CPP_PREDEFINES. Reported by asun@saul4.u.washington.edu.
+
+Mon Mar 2 22:59:28 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * final.c (insn_last_address, insn_current_align, uid_align):
+ New variables.
+ (in_align_chain, align_fuzz, align_shrink_fuzz): New functions.
+ (insn_current_reference_address): Likewise.
+ (shorten_branches, final_scan_insn): Implement LABEL_ALIGN,
+ LABEL_ALIGN_AFTER_BARRIER and LOOP_ALIGN target macros.
+ (label_to_alignment): New function.
+ * genattrtab.c (write_test_expr): If one of LABEL_ALIGN,
+ LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN is defined, call
+ insn_current_reference_address instead of insn_current_address.
+ (or_attr_value, write_length_unit_log): New functions.
+ (main): Call write_length_unit_log.
+ (write_const_num_delay_slots): Output extra '\n'.
+ * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE):
+ Replace with:
+ (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER).
+ * i386.h, i386/osfrose.h, i386/svr3dbx.h, m68k.h, sparc.h: Likewise.
+ * arc.h, m32r.h (ASM_OUTPUT_LOOP_ALIGN): Replace with:
+ (LOOP_ALIGN).
+ * i960.h, m88k.h (ASM_OUTPUT_ALIGN_CODE): Replace with:
+ (LABEL_ALIGN_AFTER_BARRIER).
+ * ns32k/encore.h, ns32k/merlin.h, ns32k.h, ns32k/sequent.h: Likewise.
+ * ns32k/tek6000.h: Likewise.
+ * i386/gas.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Delete.
+ * i386.md (casesi+1): Use ASM_OUTPUT_ALIGN instead of
+ ASM_OUTPUT_ALIGN_CODE.
+
+Mon Mar 2 01:05:50 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Mar 2 00:52:18 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Mar 1 18:25:49 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
+
+ * reorg.c (fill_slots_from_thread): Don't steal delay list from target
+ if condition code of jump conflicts with opposite_needed.
+
+ * reorg.c (fill_slots_from_thread): Mark resources referenced in
+ opposite_needed thread. Return delay_list even when cannot get
+ any more delay insns from end of subroutine.
+
+Sun Mar 1 18:26:21 1998 Ken Rose (rose@acm.org)
+
+ * reorg.c (fill_slots_from_thread): New parameter, delay_list.
+ All callers changed.
+
+Sun Mar 1 18:25:37 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+
+ * frame.c (start_fde_sort, fde_split, heapsort, fde_merge,
+ end_fde_sort): New functions for fast sorting of an FDE array.
+ (fde_insert): Simplified.
+ (add_fdes): Change argument list.
+ (frame_init): Use the new functions.
+
+Sun Mar 1 18:06:21 1998 Jeffrey A Law (law@cygnus.com)
+
+ * ginclude/va-ppc.h (va_arg): Fix typo in long long support.
+
+ * i386.c (reg_mentioned_in_mem): Fix dangling else statement.
+
+ * fold-const.c (fold_range_test): Always return a value.
+
+Sun Mar 1 17:57:34 1998 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * config/i386/winnt.c (i386_pe_unique_section): Put read-only
+ data in the text section unless READONLY_DATA_SECTION is defined.
+
+Sun Mar 1 17:48:46 1998 Jeffrey A Law (law@cygnus.com)
+
+ * c-parse.in (undeclared variable error): Tweak error message to
+ be clearer.
+
+Sun Mar 1 10:22:36 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+1998-02-28 Mark Mitchell <mmitchell@usa.net>
+
+ * final.c (final_scan_insn): Undo overzealous removal of `set'.
+
+Sat Feb 28 07:54:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * pa.h (CONST_COSTS): When checking the CONST_DOUBLE enumerated
+ case, add parentheses to specify the proper order of precedence in
+ the if-statement.
+
+ * c-aux-info.c: Include string.h/strings.h.
+
+ * pa.c: Include stdlib.h.
+ (pa_combine_instructions): Prototype the function.
+ (pa_can_combine_p, forward_branch_p, shadd_constant_p): Likewise.
+ (reloc_needed): Add default case for enumeration switch.
+ (remove_useless_addtr_insns): Remove unused variable `all'.
+ (hppa_expand_prologue): Add explicit braces to avoid
+ ambiguous `else'.
+ (output_function_epilogue): Remove unused variable `i'.
+ (output_millicode_call): Remove unused variable `link'.
+ (shadd_constant_p, forward_branch_p): Make the function static.
+ (following_call): Explicitly declare to return int.
+ (pa_reorg): Declare as void.
+ (pa_combine_instructions): Declare as static void. Add
+ parentheses around && within ||.
+
+ * pa.h: Add prototypes for pa_reorg, symbolic_operand,
+ following_call, function_label_operand, lhs_lshift_cint_operand
+ and zdepi_cint_p.
+
+ * pa.md: Add parentheses around && within ||.
+
+ * cppalloc.c: Include stdlib.h.
+
+ * cpperror.c (cpp_print_containing_files): Remove unused variable
+ `i'. Fix format specifier in fprintf.
+
+ * cse.c (cse_around_loop): Add explicit braces to avoid
+ ambiguous `else'.
+ (delete_dead_from_cse): Wrap variable `tem' in macro HAVE_cc0.
+
+ * expr.c (expand_expr): Add parentheses around && within ||.
+
+ * final.c (app_enable): Replace fprintf with fputs where there are
+ no format specifiers and no trailing argument after the string.
+ Eg, when printing ASM_APP_ON/ASM_APP_OFF.
+ (app_disable): Likewise.
+ (final_end_function): Likewise.
+ (final_scan_insn): Likewise. Remove unused variable `set'.
+ (profile_function): Wrap empty if-statement body in {} brackets.
+
+ * function.c: Include stdlib.h.
+ (pad_below): Wrap prototype and definition in ARGS_GROW_DOWNWARD.
+ (reposition_prologue_and_epilogue_notes): Add parentheses
+ around assignment used as truth value.
+
+ * integrate.c (expand_inline_function): Wrap variable
+ `cc0_insn' in macro HAVE_cc0.
+
+ * jump.c (jump_optimize): Wrap variable `q' in macro
+ HAVE_cc0. Remove unused variable `prev1'.
+
+ * libgcc2.c (__bb_exit_trace_func): Add parentheses around &&
+ within ||. Fix format specifier in fprintf.
+ (__bb_init_prg): Add parentheses around assignment used as
+ truth value.
+
+ * local-alloc.c: Include stdlib.h.
+ (requires_inout): Add parentheses around assignment used
+ as truth value.
+
+ * loop.c (analyze_loop_iterations): Wrap prototype and definition
+ in macro HAVE_decrement_and_branch_on_count.
+ (insert_bct, instrument_loop_bct): Likewise.
+ (move_movables): Add parentheses around assignment used as
+ truth value.
+ (consec_sets_invariant_p): Likewise.
+ (maybe_eliminate_biv_1): Wrap variable `new' in macro HAVE_cc0.
+
+ * objc/objc-act.c: Include stdlib.h.
+ (lookup_method_in_protocol_list): Wrap empty else-statement body
+ in braces.
+ (lookup_protocol_in_reflist): Likewise.
+ (objc_add_static_instance): Remove unused variables `decl_expr'
+ and `decl_spec'.
+ (get_objc_string_decl): Remove unused variable `decl'.
+ (generate_static_references): Remove unused variables `idecl' and
+ `instance'.
+ (check_protocols): Wrap empty else-statement body in braces.
+
+ * protoize.c: Include stdlib.h.
+ (substr): Add parentheses around assignment used as truth value.
+ (abspath): Likewise.
+ (shortpath): Likewise.
+
+ * regmove.c (fixup_match_1): Add parentheses around assignment
+ used as truth value.
+
+ * reload.c (push_secondary_reload): Remove unused variable `i'.
+ (find_reloads): Add parentheses around assignment used as truth
+ value.
+
+ * reload1.c: Include stdlib.h.
+
+ * rtl.h: Correct typo in prototype of offsettable_memref_p.
+
+ * stmt.c (add_case_node): Add parentheses around assignment used
+ as truth value.
+ (case_tree2list): Likewise.
+
+ * tree.c (valid_machine_attribute): Wrap variable `decl_attr_list'
+ in macro VALID_MACHINE_DECL_ATTRIBUTE. Wrap variable
+ `type_attr_list' in macro VALID_MACHINE_TYPE_ATTRIBUTE.
+ (merge_attributes): Add explicit braces to avoid ambiguous
+ `else'.
+
+ * unroll.c (copy_loop_body): Wrap variable `cc0_insn' in
+ macro HAVE_cc0.
+
+ * varasm.c: Include stdlib.h.
+
+ * system.h: Remove sys/stat.h.
+ * gcc.c: Add sys/stat.h.
+
+ * genattr.c: Wrap prototype of `free' in NEED_DECLARATION_FREE.
+ * genattrtab.c: Likewise.
+ * genconfig.c: Likewise.
+ * genemit.c: Likewise.
+ * genextract.c: Likewise.
+ * genflags.c: Likewise.
+ * genopinit.c: Likewise.
+ * genoutput.c: Likewise.
+ * genpeep.c: Likewise.
+ * genrecog.c: Likewise.
+ * tlink.c: Likewise. Also wrap `getenv' in NEED_DECLARATION_GETENV.
+
+Fri Feb 27 11:02:47 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * invoke.texi: Use @itemx for a secondary item in a @table.
+
+ * config/m68k/m68k.md (movsf+1): Optimize moving a CONST_DOUBLE
+ zero.
+
+Thu Feb 26 00:13:21 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * choose-temp.c: Fix handling of sys/file.h to work in libiberty.
+
+Wed Feb 25 23:40:54 1998 Jeffrey A Law (law@cygnus.com)
+
+ * i386.c (struct machine_function): Add new fields for PIC stuff.
+ (save_386_machine_status): Fix argument to xmalloc. Save pic_label_rtx
+ and pic_label_name.
+ (restore_386_machine_status): Corresponding changes.
+ (clear_386_stack_locals): Also clear pic_label_rtx and pic_label_name.
+
+Wed Feb 25 01:31:40 1998 Jeffrey A Law (law@cygnus.com)
+
+ * c-parse.y (undeclared variable error): Tweak error message
+ to be clearer.
+
+Tue Feb 24 23:54:07 1998 Richard Henderson <rth@cygnus.com>
+
+ * flags.h (g_switch_value, g_switch_set): Declare.
+ * alpha.c (override_options): Set g_switch_value=8 if not set.
+ * alpha/elf.h (CC1_SPEC): New.
+ (ASM_SPEC): New.
+ (LINK_SPEC): Pass along the -G value we were given.
+ (LOCAL_ASM_OP): Remove.
+ (ASM_OUTPUT_ALIGNED_LOCAL): Output to .bss or .sbss by size.
+ (MAX_OFILE_ALIGNMENT): New.
+ (BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP): New.
+ (EXTRA_SECTIONS): Add sbss and sdata.
+ (SECTION_FUNCTION_TEMPLATE): New.
+ (EXTRA_SECTION_FUNCTIONS): Use it.
+ (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
+ (SELECT_SECTION): Use sdata when small enough.
+ * alpha/linux.h (ASM_SPEC): Remove.
+
+Mon Feb 23 15:09:18 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+ * config.sub (sco5): Fix typo.
+
+Mon Feb 23 18:19:31 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * config/t-linux (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Add macros and
+ set to empty.
+ * config/t-linux-aout (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Likewise.
+ * config/alpha/t-linux: Remove file.
+ * config/sparc/t-linux: Remove file.
+ * config/m68k/t-linux (LIBGCC1, CROSS_LIBGCC1): Remove.
+ * config/m68k/t-linux-aout (LIBGCC1, CROSS_LIBGCC1): Likewise.
+ * configure.in (alpha*-*-linux-gnulibc1*): Use t-linux instead of alpha/t-linux
+ for tmake_file.
+ (alpha*-*-linux-gnu*): Likewise.
+ (sparc-*-linux-gnulibc1*): Use t-linux instead of sparc/t-linux for tmake_file.
+ (sparc-*-linux-gnu*): Likewise.
+
+Mon Feb 23 10:47:39 1998 Robert Lipe <robertl@dgii.com>
+ * collect2.c (ldd_file_name): Bracket declaration with same
+ manifests as use.
+ (full_real_ld_suffix): Deleted. Variable was calloced and
+ written into, but never read.
+
+1998-02-23 Mike Stump <mrs@wrs.com>
+
+ * configure.in: Add support for i386-wrs-vxworks configuration.
+ * i386/vxi386.h: New file.
+
+Sun Feb 22 21:16:51 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+
+ * tree.c (contains_placeholder_p): Ensure function always returns
+ a value.
+ * sparc.md (movdi_sp64_insn): Add default case in enumeration switch.
+ (movsf_const_insn, movdf_const_insn, movtf_const_insn): Likewise.
+
+Sun Feb 22 20:58:19 1998 Jeffrey A Law (law@cygnus.com)
+
+ * vms.h (SELECT_SECTION): Use TREE_CODE_CLASS correctly.
+
+1998-02-22 Paul Eggert <eggert@twinsun.com>
+
+ * config/sparc/sol2-sld.h (LINKER_DOES_NOT_WORK_WITH_DWARF2):
+ Define this new symbol.
+ (DWARF2_DEBUGGING_INFO, DWARF_DEBUGGING_INFO): Do not #undef.
+ * toplev.c (main): Do not default to DWARF2_DEBUG with -ggdb if
+ LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
+
+Sun Feb 22 20:07:32 1998 Jim Wilson <wilson@cygnus.com>
+
+ * iris5.h (DWARF2_UNWIND_INFO): Define to 0.
+ * iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
+
+Sun Feb 22 15:29:48 1998 Richard Henderson <rth@cygnus.com>
+
+ * objc/Object.m (-error): Call objc_verror with our va_list.
+
+Sun Feb 22 09:45:39 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * collect2.c (scan_prog_file): Completely cover uses of variable
+ `exports' with macro COLLECT_EXPORT_LIST.
+
+Sat Feb 21 20:36:23 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Fri Feb 20 16:22:13 1998 Michael Meissner <meissner@cygnus.com>
+
+ * sched.c (schedule_block): Remove code to get arguments from hard
+ regs into pseudos early. Same as Aug 25, 1997 change to
+ haifa-sched.c.
+
+1998-02-20 Jason Merrill <jason@yorick.cygnus.com>
+
+ * collect2.c (main): Still handle !do_collecting for non-AIX targets.
+
+1998-02-16 Mark Mitchell <mmitchell@usa.net>
+
+ * toplev.c (rest_of_compilation): Do not defer the output of a
+ nested function.
+
+Fri Feb 20 10:39:47 1998 Michael Tiemann <michael@impact.tiemann.org>
+
+ * ginclude/va-mips.h (va_arg): Remove trailing space after '\'
+ continuation character (line 243).
+
+Fri Feb 20 12:10:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * genrecog.c (main): Remove duplicated sentence in emitted comment.
+
+Thu Feb 19 22:36:53 1998 Andrey Slepuhin <pooh@msu.net>
+ David Edelsohn <edelsohn@mhpcc.edu>
+
+ * collect2.c (XCOFF_SCAN_LIBS): Remove.
+ (export_flag): New variable.
+ (export_file): #ifdef COLLECT_EXPORT_LIST.
+ (import_file, exports, imports, undefined): New variables.
+ (libs, cmdline_lib_dirs, libpath_lib_dirs, libpath, libexts): Same.
+ (dump_list, dump_prefix_list, is_in_list): New functions.
+ (write_export_file): $ifdef COLLECT_EXPORT_LIST.
+ (write_import_file, resolve_lib_name): New functions.
+ (use_import_list, ignore_library): Same.
+ (collect_exit): maybe_unlink import_file and #ifdef.
+ (handler): Same.
+ (main): New variable importf, #ifdef exportf. Move parsing of
+ -shared before general argument parsing. Resolve AIX library
+ paths and import libgcc.a symbols. Treat .so shared libraries the
+ same as objects and .a libraries. Create alias for object_lst and
+ increment it instead of original pointer. Scan AIX libraries as
+ objects earlier instead of using scan_libraries. Perform AIX
+ tlink later to resolve templates instead of forking ld.
+ (GCC_OK_SYMBOL): Ensure symbol not in undef section.
+ (GCC_UNDEF_SYMBOL): New macro.
+ (scan_prog_file): Loop for members of AIX libraries. Handle
+ export/import of ctors/dtors.
+ (aix_std_libs): New variable.
+ (scan_libraries, XCOFF): Delete.
+
+Thu Feb 19 22:36:52 1998 Robert Lipe <robertl@dgii.com>
+
+ * collect2.c (full_real_ld_suffix): #ifdef CROSS_COMPILE.
+
+1998-02-19 Mike Stump <mrs@wrs.com>
+
+ * Makefile.in: Use $tooldir for sys-include to match toplevel
+ configure.
+
+Thu Feb 19 01:32:37 1998 Jeffrey A Law (law@cygnus.com)
+ Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * emit-rtl.c (gen_lowpart_common): Suppress last change if __complex__.
+
+ * emit-rtl.c (hard-reg-set.h): Include.
+ (get_lowpart_common): Don't make new REG for hard reg in a
+ class that cannot change size.
+ * Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
+
+ * combine.c: Revert previous patch.
+
+1998-02-19 Paul Eggert <eggert@twinsun.com>
+
+ * config/sparc/sol2-sld.h: New file.
+ * configure.in (sparc-*-solaris2*): Use it when using the
+ system linker.
+
+Thu Feb 19 00:46:59 1998 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (force_movables): Fix typo.
+
+Thu Feb 19 08:26:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * m88k.h: Change file pattern to match reality.
+
+Wed Feb 18 23:19:52 1998 Jeffrey A Law (law@cygnus.com)
+
+ * varasm.c (output_constant_pool): Fix dumb thinko in last
+ change.
+
+ * pa.h (ASM_OUTPUT_FUNCTION_PREFIX): Correctly translate from
+ a function name to a section name.
+
+1998-02-18 Doug Evans <devans@cygnus.com>
+
+ * tree.h (merge_machine_{type,decl}_attributes): Declare.
+ (split_specs_attrs, strip_attrs): Add prototypes.
+ * tree.c (merge_machine_{type,decl}_attributes): New functions.
+ * c-decl.c (duplicate_decls): Call merge_machine_decl_attributes.
+ Update olddecl's attributes too.
+ * c-common.c (strip_attrs): New function.
+ * c-typeck.c (common_type): Call merge_machine_type_attributes.
+ * varasm.c (make_function_rtl): New target macro REDO_SECTION_INFO_P.
+ (make_decl_rtl): Likewise.
+
+1998-02-18 Jim Wilson <wilson@cygnus.com>
+
+ * c-decl.c (shadow_tag_warned): Call split_specs_attrs.
+
+Wed Feb 18 09:09:50 1998 Jeffrey A Law (law@cygnus.com)
+
+ Remove this change until we can fix it correctly.
+ * collect2.c: Bracket declaration of 'exportf' and
+ 'full_real_ld_suffix'.
+
+Wed Feb 18 08:44:25 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
+
+ * Makefile.in (STAGESTUFF): Add genrtl.c, genrtl.h and gengenrtl.
+
+Tue Feb 17 23:30:20 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
+
+ * c-common.c (c_expand_start_cond, c_expand_end_cond,
+ c_expand_start_else): Don't warn about non-ambiguous else even if
+ braces are missing.
+
+Tue Feb 17 23:56:50 1998 Robert Lipe <robertl@dgii.com>
+
+ * sco5.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
+ ASM_OUTPUT_LONG_DOUBLE): Delete. Use the ones from i386.h
+ instead.
+
+Tue Feb 17 22:56:14 1998 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (simplify_rtx): Obey CLASS_CANNOT_CHANGE_SIZE when
+ simplifying a subreg of a hard reg.
+ (expand_compound_operation): Likewise.
+ (force_to_mode): Likewise.
+
+Tue Feb 17 22:37:22 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c: Include "system.h" to get stdlib.h and stdio.h.
+ (lshift_double): Add parentheses around + or - inside shift.
+ (rshift_double): Likewise.
+ (size_int_wide): Explicitly set type of `bit_p' to `int'.
+
+ * Makefile.in (fold-const.o): Depend on system.h.
+
+ * Makefile.in (gcc.o): Depend on system.h, in accordance with last
+ change to gcc.c.
+
+ * haifa-sched.c: Include "system.h" to get <stdlib.h> and <stdio.h>.
+ (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
+ (sched_note_set): Remove unused parameter `b', all callers changed.
+ (schedule_block): Likewise for `rgn'.
+ (split_hard_reg_notes): Likewise for `orig_insn'.
+ (check_live): Likewise for `trg'.
+ (update_live): Likewise.
+ (check_live_1): Explicitly declare variable `i' as int.
+ (update_live_1): Likewise.
+ (insn_issue_delay): Remove unused variable `link'.
+ (sched_analyze_2): Add default case in enumeration switch.
+ (schedule_insns): Remove unused variable `i'.
+
+ * Makefile.in ($(SCHED_PREFIX)sched.o): Depend on system.h.
+
+Tue Feb 17 22:31:04 1998 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (rtx_equal_for_loop_p): Add some braces to disambiguate
+ a dangling else clause.
+
+Tue Feb 17 21:28:12 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/mips.h (CAN_ELIMINATE): Don't eliminate the frame
+ pointer for the stack pointer in MIPS16 and 64BIT.
+
+Tue Feb 17 21:17:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * rtl.h (force_line_numbers, restore_line_number_status): Declare.
+ * emit-rtl.c (force_line_numbers, restore_line_number_status):
+ New functions.
+ * stmt.c (struct nesting): Replace seenlabel with line_number_status.
+ (expand_start_case): Adjust to this change.
+ (check_seenlabel): New function.
+ (pushcase, pushcase_range, expand_endcase): Use it.
+
+Tue Feb 17 10:14:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * i386.md (adddi3): Add =!r,0,0,X alternative.
+
+Mon Feb 16 16:13:43 1998 David Edelsohn <edelsohn@mhpcc.edu>
+
+ * rs6000.h (MY_ISCOFF): Add numeric value of U803XTOCMAGIC.
+ * x-aix31 (INSTALL): Delete.
+
+Mon Feb 16 09:24:32 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/mips.c (mips_expand_epilogue): Update tsize_rtx if
+ tsize changes to something other than zero.
+
+Mon Feb 16 09:11:48 1998 Gavin Koch <gavin@cygnus.com>
+
+ * ginclude/va-mips.h: Replace casts of pointers to int with
+ casts of pointers to __PTRDIFF_TYPE__.
+
+Mon Feb 16 08:17:14 1998 John Carr <jfc@mit.edu>
+
+ * loop.c (strength_reduce, record_biv, record_giv): Use
+ HOST_WIDE_INT_PRINT_DEC to print CONST_INT values.
+
+1998-02-16 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.c (first_rtl_op): New fn.
+ (unsave_expr_now): Use it.
+ * print-tree.c (print_node): Likewise.
+ * tree.c (has_cleanups): New fn.
+ * fold-const.c (fold, case CLEANUP_POINT_EXPR): Use it. Be more
+ conservative about pushing the cleanup point down.
+ * tree.h: Declare them.
+
+Sun Feb 15 23:28:44 1998 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (flag_schedule_reverse_before_reload): Delete variable.
+ (flag_schedule_reverse_after_reload): Likewise.
+ (f_options): Remove reverse scheduling support.
+ * flags.h (flag_schedule_reverse_before_reload): Delete declaration.
+ (flag_schedule_reverse_after_reload): Likewise.
+ * haifa-sched.c (rank_for_schedule): Remove support for reverse
+ scheduling.
+
+Sun Feb 15 21:33:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcc.c: Get system includes, prototypes and macros via "system.h"
+ instead of doing it manually. Change all calls of the ctype
+ macros to custom versions defined in "system.h".
+
+ * system.h: Fix return type of bcmp prototype from `void' to `int'.
+ Make bcopy, bcmp and bzero prototypes explicitly `extern'.
+ Add a prototype for getenv.
+
+Sun Feb 15 17:05:41 1998 Jim Wilson <wilson@cygnus.com>
+
+ * mips/mips.h (INITIAL_ELIMINATION_OFFSET): Readd Jun 6 change.
+
+Sun Feb 15 15:23:15 1998 John Carr <jfc@mit.edu>
+
+ * alias.c: Include <stdlib.h> and <string.h>.
+ (init_alias_analysis): Pass NULL_RTX instead of 0 to record_set.
+
+Sat Feb 14 11:23:09 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Feb 14 05:08:21 1998 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.md (movsfcc): Also validate operands[3] when compiling hard
+ float.
+ (movdfcc): Only accept fpu_add_operand for operands[3].
+
+ * arm/t-semi (STMP_FIXPROTO): Define to nothing.
+ * arm/t-semiaof (STMP_FIXPROTO): Likewise.
+
+Sat Feb 14 02:02:41 1998 Jeffrey A Law (law@cygnus.com)
+
+ * varasm.c (output_constant_pool): Bring back 'done' label inside
+ an appropriate #ifdef.
+
+ * bitmap.c (bitmap_element_allocate): Wrap variable 'i' in an
+ appropriate #ifdef.
+ (bitmap_copy, bitmap_operation): Likewise.
+ * combine.c (combinable_i3pat): Similarly for 'src'.
+ * function.c (fixup_var_refs_1): Similarly for 'outerdest'.
+ (locate_and_pad_parm): Similarly for 'reg_parm_stack_space'.
+ * regclass.c (copy_cost): Similarly for 'secondary_class'.
+ * reload.c (make_memloc): Similarly for 'i'.
+ (find_reloads_address_1): Similarly for 'link'.
+ * reload1.c (reload): Similarly for 'previous_frame_pointer_needed'.
+ (emit_reload_insns): Similarly for 'second_reloadreg'.
+ * unroll.c (iteration_info): Similarly for 'v'.
+
+ * caller-save.c (insert_save_restore): Remove unused variable 'i'.
+ * calls.c (expand_call): Similarly for 'i'.
+ (emit_library_call, emit_library_call_value): Similarly for 'mode'.
+ * fold-const.c (strip_compound_expr): Similarly for 'type'.
+ * function.c (fixup_var_refs_1): Similarly for 'width'.
+ (fixup_memory_subreg): Similarly for 'saved'.
+ (locate_and_pad_parm): Similarly for 'boundary_in_bytes.'
+ (setjmp_protect): Similarly for 'sub'.
+ (thread_prologue_and_epilogue_insns): Similarly for 'insn'.
+ * loop.c (record_giv): Similarly for 'p'.
+ (combine_givs): Similarly for 'temp_iv'.
+ (indirect_jump_in_function_p): Similarly for 'is_indirect_jump'.
+ * recog.c (validate_replace_rtx_1): Similarly for 'width'.
+ * tree.c (get_set_constructor_bytes): Similarly for 'vals'.
+ * unroll.c (unroll_loop): Similarly for 'copy'.
+ (iteration_info): Similarly for 'b'.
+ * varasm.c (assemble_string): Similarly for 'i'.
+ * i386.h (LEGITIMIZE_ADDRESS): Similarly for 'orig_x'.
+
+1998-02-13 Martin von Loewis <loewis@informatik.hu-berlin.de>
+
+ * c-lang.c (lang_print_xnode): New function.
+ * objc/objc-act.c (lang_print_xnode): Likewise.
+ * print-tree.c (print_node): Call it
+
+Fri Feb 13 14:38:34 1998 Jim Wilson <wilson@cygnus.com>
+
+ * dwarf2out.c (decl_scope_node): New type.
+ (decl_scope_table): Change type to use it.
+ (decl_scope_table_allocated, decl_scope_depth): Change type to int.
+ (push_decl_scope): Use new type. New locals containing_scope, i.
+ Add code to handle setting previous field.
+ (scope_die_for): Change type of local i to int. Add code to use
+ previous field.
+ (dwarf2out_init): Use new type.
+
+1998-02-13 Jason Merrill <jason@yorick.cygnus.com>
+
+ * except.c (emit_throw): Lose throw_used.
+
+Fri Feb 13 20:36:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sched.c (update_flow_info, REG_WAS_0): Ignore if setting insn
+ was deleted.
+ * haifa-sched.c (update_flow_info, REG_WAS_0): Likewise.
+
+Fri Feb 13 12:18:40 1998 Jeffrey A Law (law@cygnus.com)
+
+ * genextract.c (main): Fix typo.
+
+Fri Feb 13 08:41:49 1998 Robert Lipe <robertl@dgii.com>
+
+ * c-lang.c (finish_file): Bracket declaration of static_ctors,
+ static_dtors.
+
+ * calls.c (expand_call): Bracket declaration of 'rtx_before_call',
+ 'old_stack_arg_under_construction'
+ (emit_library_call): Bracket declaration of 'upper_bound',
+ 'lower_bound', 'i', 'reg_parm_stack_space'
+ (emit_library_call_value): Likewise.
+ (store_one_arg):
+
+ * collect2.c: Include <unistd.h> when appropriate.
+ Bracket declaration of 'exportf' and 'full_real_ld_suffix'.
+
+ * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'.
+
+ * explow.c (plus_constant_for_output_wide): Remove unused variable
+ 'code'.
+ (memory_address): Remove unused variable 'orig_x'.
+
+ * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'.
+ (write_const_num_delay_slots): Remove unused variable 'i'.
+
+ * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'.
+ (gen_insn): Remove unused variable 'obstack_ptr'.
+
+ * libgcc2.c (__bb_exit_func): Remove unused variables 'ret',
+ 'j', 'tmp', 'i'.
+ (__bb_exit_trace_func): Remove unused variable 'e'.
+
+ * optabs.c (expand_binop): Remove unused variables 'lhs', 'rhs',
+ 'funexp'.
+ (expand_unop): Remove unused variable 'funexp'.
+ (expand_complex_abs): Remove unused variable 'funexp'.
+ (init_optabs): Bracket declaration of 'j'.
+ (init_complex_libfuncs): Deleted. Dead static function.
+
+ * profile.c (branch_prob): Remove unused variables 'insn', 'dest'.
+
+ * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths'
+ (reg_to_stack): 'initialized', 'before_function_beg'
+ explicitly type as ints instead of defaulting.
+ (emit_swap_insn): Remove unused variable 'i2'.
+ (compare_for_stack_reg): Remove unused variable 'src_note'.
+
+ * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'.
+
+ * sched.c (actual_hazard): Bracket declaration of 'this_cost'.
+
+ * stmt.c (add_case_node): Add parens for assignment used as truth.
+ (all_cases_count): Remove unused variable 'count_high'.
+ (mark_seen_cases): Remove unused variable 'i'.
+ (check_for_full_enumeration_handling): Remove unused variable 't'.
+ Bracket declaration of 'all_values', 'l'.
+
+ * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>.
+
+ * varasm.c (assemble_string): Remove unused variable 'i'.
+ (immed_double_const): Remove unused variable 'in_current_obstack'.
+ (immed_real_const_1): Likewise.
+ (output_constant_pool): Remove unreferenced label 'done'.
+ (output_constant): Remove unused variable 'x'.
+
+ * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not
+ a string.
+
+ * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used
+ as truth.
+
+Fri Feb 13 10:21:41 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * combine.c (can_combine_p): Handle USEs in PARALLELs.
+
+Fri Feb 13 01:34:14 1998 H.J. Lu (hjl@gnu.org)
+
+ * config/linux.h (LIB_SPEC): Add -lc for -shared if
+ USE_GNULIBC_1 is not defined.
+ * config/sparc/linux.h; Likewise.
+
+ * config/sparc/linux64.h (LIB_SPEC): Add -lc for -shared.
+
+ * config/alpha/linux-elf.h (LIB_SPEC): New. Defined if
+ USE_GNULIBC_1 is not defined.
+
+Fri Feb 13 01:29:29 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
+
+ * rs6000/sysv4.h (ENDFILE_SPEC): Add missing %(endfile_linux)
+ for -mcall-linux.
+
+Fri Feb 13 01:23:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h: New file to get common systems includes and various
+ definitions and declarations based on autoconf macros.
+
+Fri Feb 13 00:46:19 1998 Jeffrey A Law (law@cygnus.com)
+
+ * cccp.c (new_include_prefix): Correctly handle -I./.
+
+Thu Feb 12 20:16:35 1998 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
+
+Thu Feb 12 16:45:17 1998 Robert Lipe <robertl@dgii.com>
+
+ * expr.c (expand_assignment): Correct typo exposed by -Wall.
+ offset should have been a truth value, not an assignment.
+
+Thu Feb 12 15:26:50 1998 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (delete_dead_from_cse): If a libcall produces a constant
+ result and that result can be substituted into SET_SRC of the
+ insn with the REG_RETVAL note, then perform the substitution
+ and delete the libcall.
+
+Thu Feb 12 14:04:09 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips.md (trucndihi2,truncdiqi2): Change these to support
+ mips16.
+
+Thu Feb 12 11:34:55 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/mips.c (movdi_operand): Direct references to symbols
+ that arn't mips16 consts in mips16 mode arn't valid operands.
+
+ * mips/mips.c (mips_move_2words): Add gprel handling.
+
+Thu Feb 12 11:18:37 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips.md (extendsidi2): Allow extension to/from a non-mips16
+ register.
+
+Thu Feb 12 00:04:16 1998 Marc Lehmann <pcg@goof.com>
+
+ * i386.c: Conditionally include <stdlib.h>, <string.h>, and
+ <strings.h>.
+
+Wed Feb 11 11:43:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (WARN_CFLAGS): New variable.
+ (bootstrap, bootstrap2, bootstrap3, bootstrap4): Use it.
+
+1998-02-11 Mark Mitchell <mmitchell@usa.net>
+
+ * config/i386/i386.c (reg_mentioned_in_mem): Don't abort when
+ falling through default case in switch.
+ (i386_aligned_p): Likewise.
+
+Wed Feb 11 12:59:56 1998 Lee Iverson <leei@Canada.AI.SRI.COM>
+
+ * mips/mips.h (mips_abi_string): Correct typo in comment.
+
+Wed Feb 11 08:29:56 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/mips.md (movdi): These PLUS's need to be Pmode.
+
+Wed Feb 11 01:47:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (dwarf2out.o, emit-rtl.o, jump.o, cse.o, unroll.o,
+ reorg.o, regmove.o): Depend on insn-codes.h, it gets included
+ indirectly via expr.h.
+
+Wed Feb 11 01:44:13 1998 Richard Henderson <rth@cygnus.com>
+
+ * stor-layout.c (layout_type): Do upper - lower in the native type,
+ so as to properly handle negative indices.
+
+Wed Feb 11 01:35:55 1998 Robert Lipe <robertl@dgii.com>
+
+ * except.c (start_dynamic_cleanup): Remove unused variable 'dhc'.
+ (expand_eh_region_start_tree): Remove unused variable 'note'.
+ (exception_optimize): Remove unused variable 'regions'.
+ (expand_builtin_eh_stub): Remove unused variable 'temp'.
+ (copy_eh_entry): Deleted. Dead function.
+
+ * expr.c (move_block_to_reg): Bracket declaration of 'pat' and
+ 'last' with same #if HAVE_load_multiple as use of it.
+ (move_block_from_reg): Likewise.
+ (emit_move_insn_1): Remove unused variable 'insns'.
+ (store_constructor): Bracket declaration of startb, endb with
+ #if TARGET_MEMFUNCTIONS. Remove unused variables 'set_word_size'
+ 'target', and 'xtarget'.
+ (expand_builtin_setjmp): Remove unused variables 'op0',
+ 'next_arg_reg', 'old_inhibit_defer_pop'.
+ (expand_builtin): Remove unused variable 'offset'.
+ (do_store_flag): Remove unused variables 'pattern', 'jump_pat'.
+ (emit_queue): Add parens for assignment used as conditional.
+ (expand_expr): Case TARGET_EXPR: Remove unused variable 'temp'.
+
+Wed Feb 11 01:30:49 1998 Marc Lehmann <pcg@goof.com>
+
+ * i386.c: Added include for recog.h.
+ (override_options): Removed unused variable p. Initialized regno to
+ avoid warning.
+ (order_regs_for_local_alloc): Initialized regno to avoid warning.
+ (legitimize_address): Likewise for 'other'.
+ (i386_aligned_reg_p): Added default case with abort ().
+ (print_operand): Likewise.
+ (reg_mentioned_in_mem): Likewise.
+ (ix86_expand_binary_operator): Removed unused variables i & insn.
+ (ix86_expand_unary_operator): Removed unused variable insn.
+ (output_fp_cc0_set): Removed unused variable unordered_label.
+
+Wed Feb 11 01:23:03 1998 John F. Carr <jfc@mit.edu>
+
+ * i386.c, i386.h, i386.md: Change gen_rtx (X, ...) to gen_rtx_X (...).
+ Use GEN_INT instead of gen_rtx (CONST_INT). Make printf arguments
+ and format string match.
+
+Wed Feb 11 01:17:39 1998 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (life_analysis): Do not consider the stack pointer live at
+ the end of a function if the function calls alloca.
+ (mark_used_regs): Similarly.
+
+1998-02-10 John F Carr <jfc@mit.edu>
+
+ * config/sparc/sparc.md (movdi_v8plus): Output stx on alternative
+ 1, fzero on alternative 8.
+
+Tue Feb 10 09:02:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
+
+Tue Feb 10 03:35:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_reloads_toplev): Handle arbitrary non-paradoxical
+ SUBREGs of CONST_INTs.
+
+Mon Feb 9 17:52:36 1998 John Carr <jfc@mit.edu>
+
+ * mips.c (print_operand, function_prologue): Make printf format
+ match argument type.
+
+Mon Feb 9 02:37:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.c (alpha_return_addr): Remove unused variable `first'.
+ (alpha_ra_ever_killed): Remove unused variables `ra' and `i'.
+ (output_epilog): Remove unused variable `frame_size_from_reg_save'.
+
+Sun Feb 8 14:56:03 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * loop.c (strength_reduce): When placing increment for auto-inc
+ case, do comparison in loop order.
+
+Sun Feb 8 13:21:38 1998 John Carr <jfc@mit.edu>
+
+ * bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
+ not a HOST_WIDE_INT.
+
+ * calls.c (expand_call): Change test of expand_inline_function
+ return value to stop compiler warning.
+
+ * genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
+
+Sun Feb 8 12:04:24 1998 Jim Wilson (wilson@cygnus.com)
+ Jeff Law (law@cygnus.com)
+
+ * regmove.c: Fix various minor formatting problems.
+ (optimize_reg_copy_1): Stop search at CALL_INSNs if flag_exceptions
+ is true. Make end of basic block tests consistent through regmove.c.
+ (optimize_reg_copy_2, optimize_reg_copy_3): Likewise.
+ (fixup_match_2, fixup_match_1, regmove_optimize): Likewise.
+
+Sun Feb 8 01:49:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gansidecl.h: Check for a conflicting macro definition before
+ attempting to prototype bcopy, bcmp or bzero.
+
+Sun Feb 8 00:09:59 1998 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (clear_pending_stack_adjust): Handle case where a function
+ calls alloca, but the user has specified -fomit-fframe-pointer.
+
+ * function.c (assign_parms): Fix typo in last change.
+
+Sat Feb 7 23:54:29 1998 Robert Lipe <robertl@dgii.com>
+
+ * gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
+ <fcntl.h>.
+ (free_path_suffix): Remove unreferenced static function.
+ (process_command): Remove unused variable temp.
+ (default_arg): Remove unused variable i.
+ (do_spec_1): Add parens for assignment used as truth value.
+ (main): Likewise.
+ (validate_all_switches): Likewise.
+ (main): Remove unused variables i, first_time>
+
+ * c-common.c: Include <stdlib.h> and <string.h>/<strings.h>.
+
+ * calls.c (expand_call): Remove unused variables funtree,
+ n_regs, and tmpmode.
+
+ * dbxout.c, except.c: Include <string.h>/<strings.h>.
+
+ * explow.c (plus_constant_for_output_wide): Removed unused
+ variable all_constant.
+
+ * c-decl.c, genattr.c, genattrtab.c, getconfig.c, genemit.c
+ genextract.c, genflags.c, genopinit.c genoutput.c, genpeep.c,
+ genrecog.c, global.c, integrate.c , stupid.c : Include
+ <stdlib.h>.
+
+ * genextract.c (walk_rtx): Remove unused variable link.
+
+ * genrecog.c (concat): Remove unreferenced static function.
+
+ * prefix.c: Include <string.h>/<strings.h>, <stdlib.h>
+
+ * stmt.c: Include <stdlib.h>.
+ (expand_asm_operands): Remove unused variable val1.
+ (expand_return): Remove unused variable block.
+ (pushcase): Remove unused variables l and n.
+ (pushcaserange): Likewise.
+
+ * unroll.c (unroll_loop): Remove unused variable temp.
+
+Sat Feb 7 23:46:09 1998 Greg McGary <gkm@gnu.org>
+
+ * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
+
+Sat Feb 7 15:11:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * aclocal.m4 (GCC_FUNC_PRINTF_PTR): New macro to test the printf
+ functions for whether they support the %p format specifier.
+ * acconfig.h (HOST_PTR_PRINTF): Insert stub for autoconf.
+ * configure.in (GCC_FUNC_PRINTF_PTR): Use it.
+ * configure, config.in: Rebuild.
+
+Fri Feb 6 14:20:16 1998 Jim Wilson <wilson@cygnus.com>
+
+ * function.c (assign_parms): New variable named_arg, with value
+ depending on STRICT_ARGUMENT_NAMING. Use instead of ! last_named.
+
+Fri Feb 6 14:34:28 1998 Gavin Koch <gavin@cygnus.com>
+
+ * mips/t-r3900: New - same as t-ecoff but eliminate
+ multilibs: mips1 and mips3.
+ * configure.in (tx39*): Use new mips/t-r3900.
+ * configure: Rebuild.
+ * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1.
+
+1998-02-06 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c: Add old_args_size.
+ (dwarf2out_args_size): Use it.
+ (dwarf2out_begin_prologue): Initialize it.
+ (dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
+ pushed args until we see a call.
+ * final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
+ before outputting them.
+
+1998-02-06 Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>
+
+ * cplus-dem.c (demangle_template_template_parm): New function.
+ (demangle_template): Handle template template parameters.
+
+1998-02-02 Mark Mitchell <mmitchell@usa.net>
+
+ * calls.c (expand_call): Don't confuse member functions named
+ realloc, setjmp, and so forth with the standard library
+ functions of the same names.
+
+Thu Feb 5 21:59:49 1998 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (expand_asm_operands): Correctly identify asm statements
+ no output operands.
+
+Thu Feb 5 21:56:06 1998 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * c-common.c (decl_attributes): Flag unrecognized attribute
+ functions as warnings instead of as errors.
+
+1998-02-05 Marc Lehmann <pcg@goof.com>
+
+ * integrate.c (INTEGRATE_THRESHOLD): Inline only small functions
+ when -Os is specified.
+ * toplev.c (main): Don't disable flag_inline_functions anymore when
+ -Os is in effect.
+
+Fri Feb 6 00:27:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c: Update.
+ * flags.h (flag_regmove): Declare.
+ * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare.
+ * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2):
+ Moved into regmove; changed caller.
+ * toplev.c (rest_of_compilation): Call regmove_optimize also for
+ expensive_optimizations.
+
+Thu Feb 5 13:38:42 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Thu Feb 5 01:45:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+ Undo this change (the problem was actually in reload):
+ Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (movqi_i+1): New peephole.
+
+Tue Feb 3 01:11:12 1998 Jeffrey A Law (law@cygnus.com)
+
+ * jump.c (jump_optimize): Lose calls to modified_in_p they are
+ not needed anymore due to changes elsewhere in jump.c.
+
+ * jump.c (jump_optimize): Fix first arg to modified_in_p in
+ previous change.
+
+Mon Feb 2 19:18:14 1998 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (expand_builtin_setjmp): Accept two new arguments for
+ the labels to branch to on first and subsequent executions. Don't
+ play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
+ and provide it with the jmp_buf. Use only one of
+ `builtin_setjmp_receiver' or `nonlocal_goto_receiver',
+ and provide the former with the target label.
+ (expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
+ (expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
+ (expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
+ insn to replace all of the normal nonlocal_goto code. Don't play
+ with __dummy. Correct arguments to nonlocal_goto.
+ * expr.h (expand_builtin_setjmp): Update prototype.
+ * except.c (start_dynamic_handler): When using builtin_setjmp,
+ generate more accurate flow information.
+
+ * alpha.md (nonlocal_goto_receiver_osf): Delete.
+ (nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
+ (builtin_longjmp, builtin_setjmp_receiver): New.
+ * sparc.md (update_return): Disambiguate unspec number.
+ (nonlocal_goto): Rearrange arguments to match caller in except.c.
+ (builtin_setjmp_setup): Rename from setjmp. Match and ignore the
+ jmp_buf operand.
+ * mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
+ (builtin_setjmp_setup*, builtin_longjmp): New.
+
+Mon Feb 2 16:43:10 1998 John Carr <jfc@mit.edu>
+
+ * mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
+
+Mon Feb 2 13:06:47 1998 Jim Wilson <wilson@cygnus.com>
+
+ * vmsconfig.com: Remove bytecode references.
+
+1998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
+ -fno-sjlj-exceptions works for a target that defines
+ DWARF2_UNWIND_INFO as zero.
+
+ * regmove.c (fixup_match_1): Undo last change which removed some
+ "useless" code, and add a comment explaining this.
+
+Mon Feb 2 10:47:14 1998 Gavin Koch (gavin@cygnus.com)
+
+ * mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
+ to TARGET_LONG64.
+
+Mon Feb 2 10:38:41 1998 Klaus Kaempf <kkaempf@progis.de>
+
+ * makefile.vms: Remove bytecode references.
+ Create genrtl files.
+
+Mon Feb 2 02:08:04 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
+
+ * jump.c (jump_optimize): Allow conditional loading of floating point
+ constants and constants from memory. Reinstalled modified_in_p tests.
+
+Mon Feb 2 01:38:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (get_condition): Handle sign-extended constants.
+
+Mon Feb 2 01:22:46 1998 Hans-Peter Nilsson <hp@axis.se>
+
+ * expr.c (emit_push_insn): Add code to use movstrti if present.
+
+ * expr.c (emit_push_insn): Use same max-move-amount for movstrhi
+ and movstrqi as in emit_block_move ().
+
+Mon Feb 2 00:09:52 1998 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * config/m68k/x-next: Remove /NextDeveloper/Headers from
+ the directories to fixinclude - /usr/include is a link
+ to it and hence its contents are fixed by default.
+
+Sun Feb 1 14:15:33 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
+
+ * rs6000/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION.
+
+Sun Feb 1 13:01:15 1998 Klaus Kaempf <kkaempf@progis.de>
+
+ * cccp.c (main): Predefine __VMS_VER on VMS.
+
+Sun Feb 1 12:39:53 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * expr.c (get_inner_reference): Use sbitsizetype for type sizes.
+ * fold-const.c (size_int): Replace with
+ (size_int_wide).
+ (make_bit_field_ref): Use bitsize_int for bit position.
+ * stor-layout.c (sizetype): Delete.
+ (sizetype_tab, sbitsizetype, ubitsizetype): Declare.
+ (layout_record, layout_union, layout_type):
+ Use bitsize_int for bit size.
+ (set_sizetype): New function.
+ (make_signed_type, make_unsigned_type): Use it.
+ * c-decl.c (init_decl_processing): Likewise.
+ * tree.h (size_int): Don't delcare, #define.
+ (size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
+ (set_sizetype): Declare.
+ (bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
+ Define.
+ * c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
+ Convert result to sizetype.
+ (really_start_incremental_init, push_init_level):
+ Set type of constructor_bit_index to sbitsizetype.
+ (push_init_level): Use unsigned arithmetic to determine padding.
+ (output_init_element): Likewise.
+
+Sun Feb 1 03:32:07 1998 Jeffrey A Law (law@cygnus.com)
+
+ * combine.c (simplify_shift_const): Fix typo in last change.
+
+Sun Feb 1 02:50:46 1998 John Carr <jfc@mit.edu>
+
+ * combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
+ is (truncate (lshiftrt)).
+
+Sun Feb 1 01:06:53 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
+ Make sure result winds up in TGT.
+ (alpha_expand_unaligned_store): Use expand_binop properly. Allow
+ src to be other than DImode.
+ (alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
+ (alpha_expand_unaligned_store_words): Likewise.
+ (alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
+ that source and destination are separately optimized for alignment.
+ (alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
+
+Sun Feb 1 01:55:09 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.md (adddi3_internal_2): Be consistent with adddi3 expander
+ with handling of -32768.
+
+Sun Feb 1 01:48:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
+ shell variable argument instead of only hard coded functions.
+ (GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
+
+ * configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
+ call. Collapse multiple calls to GCC_NEED_DECLARATION into one
+ call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
+ declarations for bcopy, bcmp and bzero.
+
+ * acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
+
+ * gansidecl.h: If we have bcopy but don't declare it, then do so.
+ Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
+ bzero, index and rindex if they aren't already present.
+
+Sat Jan 31 11:26:58 1998 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (close_dump_file): Wrap function prototype for
+ argument "func" in PROTO.
+ (dump_rtl): Likewise.
+
+Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
+
+ * sparc.c (sparc_override_options): Make v8plus and ultrasparc set
+ MASK_V8PLUS.
+ (output_function_epilogue): Omit epilogue if nothing drops through.
+ (output_move_double): Suppress int ldd usage on ultrasparc and v9.
+ (registers_ok_for_ldd_peep): Likewise.
+ (print_operand): Suppress b,a on ultrasparc. Let Y accept a constant.
+ (ultrasparc_adjust_cost): New function.
+ (sparc_issue_rate): New function.
+ * sparc.h (MASK_VIS, TARGET_VIS): New.
+ (MASK_V8PLUS, TARGET_V8PLUS): New.
+ (TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
+ (TARGET_SWITCHES): Add vis and v8plus.
+ (REG_CLASS_FROM_LETTER): Accept d and b for VIS.
+ (REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
+ (RTX_COSTS): Use TARGET_HARD_MUL.
+ (ADJUST_COST): Call ultrasparc_adjust_cost.
+ (ISSUE_RATE): New.
+ * sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
+ of load & fp appropriately.
+ (supersparc function units): Adjust for Haifa.
+ (ultrasparc function units): Likewise.
+ (get_pc_via_rdpc): All v9, not just arch64.
+ (movdi_v8plus, movdi_v8plus+1): New.
+ (adddi3_sp32+1): New.
+ (subdi3_sp32+1): New.
+ (movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
+ (addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
+ (and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
+ (xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
+ (one_cmpldi2_sp32, one_cmplsi2): Likewise.
+ (ldd peepholes): Suppress for v9.
+ (return_adddi): Kill redundant test. Arg1 may be arith_operand.
+ (return_subsi): Revmove.
+
+Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
+
+ * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
+ save/restore MEM rtl.
+
+Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Check for declaration of abort.
+ * acconfig.h: Corresponding changes.
+ * toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
+ be declared.
+
+Thu Jan 29 20:26:12 1998 Jeffrey A Law (law@cygnus.com)
+
+ * genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
+ uses it.
+
+Thu Jan 29 09:27:56 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Thu Jan 29 10:12:27 1998 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Check for atoq and atoll.
+ * rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
+ proper routine for converting ascii into long long values.
+
+Thu Jan 29 01:28:14 1998 Klaus Kaempf <kkaempf@progis.de>
+
+ * cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
+
+ * vmsconfig.com: Remove bytecode references.
+
+ * alpha/vms.h (PREFIX): Define.
+
+ * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
+
+ * am-alpha.h: Don't include alloca for OPEN_VMS.
+
+ * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
+
+ * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
+ (GCC_INCLUDE_DIR): Define.
+
+ * make-cc.com, make-cccp.com, make-cc1.com: Removed.
+ * makefile.vms: New file.
+
+ * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
+
+ * alpha.c (output_prolog): Output '.name' directive
+ for minimal traceback information.
+
+ * alpha.c (output_prolog): Don't prepend entry point symbols
+ with '$' on OPEN_VMS.
+
+Thu Jan 29 00:25:35 1998 David S. Miller <davem@tanya.rutgers.edu>
+ Jeffrey A Law (law@cygnus.com)
+
+ * rtl.c (read_rtx): Use atol/atoq based upon disposition of
+ HOST_WIDE_INT.
+
+ * genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
+ as needed.
+ * genemit.c (gen_exp): Likewise.
+ * genpeep.c (match_rtx): Likewise.
+ * genrecog.c (write_tree_1): Likewise.
+
+ * c-lex.c (yyprint): Use proper format string based upon
+ disposition of HOST_BITS_PER_WIDE_INT.
+ (yylex): Put casts in right place for args to build_int_2.
+
+Thu Jan 29 00:24:29 1998 Jeffrey A Law (law@cygnus.com)
+
+ * combine.c: Fix typos in Jan27 changes.
+
+Thu Jan 29 00:07:49 1998 Ollivier Robert <roberto@keltia.freenix.fr>
+
+ * i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
+ (LINK_SPEC): Likewise.
+ (STARTFILE_SPEC): Likewise.
+
+1998-01-28 Mike Stump <mrs@wrs.com>
+
+ * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
+ reload completes.
+ * genattrtab.c (reload_completed): Define.
+
+ * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
+ comments.
+
+Wed Jan 28 20:11:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
+ SUBREG_REG if the word count is unchanged, also in the input reload
+ case. Disable non-applicable sanity checks.
+
+Wed Jan 28 20:08:26 1998 Jeffrey A Law (law@cygnus.com)
+
+ * config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
+
+Wed Jan 28 20:04:43 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
+
+Wed Jan 28 11:45:27 1998 Per Bothner <bothner@cygnus.com>
+
+ * dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
+ is a TREE_VEC before trying to use it for baseclasses.
+ (Chill uses the same field for a different purpose.)
+
+ * toplev.c (strip_off_ending): Generalize to endings up to 5 chars.
+
+Tue Jan 27 23:15:55 1998 Lassi A. Tuura <lat@iki.fi>
+
+ * config.sub: More accurate determination of HP processor types.
+
+Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
+ prototype for `handle_sysv_pragma', and make it static. Add
+ parentheses around assignment used as truth value.
+
+ * combine.c (combine_instructions): Protect variable `prev' with
+ macro HAVE_cc0.
+ (can_combine_p): Protect variable `link' with AUTO_INC_DEC.
+ (extract_left_shift): Add parentheses around operand of &.
+ (merge_outer_ops): Avoid an empty body in an else-statement.
+ (gen_rtx_combine): Remove unused variable `i'.
+
+ * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
+ function monstartup `void'. Likewise for internal_mcount. Add
+ `static void' prototype for moncontrol. Reconcile sprintf format
+ vs. args.
+
+ * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
+ Make return type of function_arg_slotno explicitly `int'.
+ (reg_unused_after): Add parentheses around assignment used as
+ truth value.
+ (save_regs): Add explicit braces to avoid ambiguous `else'.
+ (function_arg_slotno): Add parentheses around && within ||.
+ (function_arg_pass_by_reference): Likewise.
+ (sparc_flat_output_function_prologue): Reconcile fprintf format
+ vs. args.
+
+ * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
+ assignment used as truth value.
+
+ * cplus-dem.c: Include <stdlib.h>.
+ (demangle_signature): Avoid an empty body in an else-statement.
+ (do_type): Remove unused variable `lvl'.
+
+ * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
+ Include <string.h>/<strings.h>.
+ (cpp_lex): Remove unused variable `namelen'.
+ (cpp_lex): Explicitly declare `num_chars' as an int.
+
+ * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
+ <unistd.h> instead. Explicitly declare is_system_include
+ returning int.
+ (make_assertion): Remove unused variable `kt'.
+ (cpp_expand_to_buffer): Hide variable `obuf'.
+ (output_line_command): Remove unused variables, `line_end',
+ `line_cmd_buf' and `len'.
+ (macarg): Remove unused variable `arg_start'.
+ (special_symbol): Remove unused variable `i'. Add parentheses
+ around assignment used as truth value.
+ (do_include): Remove unused variables `pcfname' and `retried',
+ hide `pcf' and `pcfbuflimit'.
+ (do_line): Remove unused variable `i'.
+ (finclude): Hide variable `missing_newline'.
+ (cpp_handle_options): Remove unused variable `j'.
+ (read_token_list): Remove unused variable `eofp'.
+ (cpp_error_with_line): Remove unused variable `i'.
+ (cpp_warning_with_line): Likewise.
+ (cpp_pedwarn_with_line): Explicitly declare `column' as int.
+ (cpp_error_from_errno): Remove unused variable `i'.
+
+ * cse.c (invalidate): Add parentheses around assignment used as
+ truth value.
+ (find_best_addr): Move declaration of variable `our_cost' inside
+ the conditional macro where its used.
+ (fold_rtx): Avoid an empty body in an if-statement.
+ (cse_insn): Wrap variables `this_insn_cc0_mode' and
+ `this_insn_cc0' in macro HAVE_cc0.
+
+ * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
+ (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
+ (output_uleb128): Likewise.
+ (output_sleb128): Likewise.
+ (output_cfi): Likewise.
+ (output_call_frame_info): Remove unused variables `j', `fde_size'
+ and `fde_pad'.
+ (comp_unit_has_inlines): Hide declaration as per rest of file.
+ (size_of_line_prolog): Correct typo in prototype.
+ (add_arange): Likewise.
+ (output_aranges): Likewise.
+ (add_name_and_src_coords_attributes): Likewise.
+ (gen_array_type_die): Likewise.
+ (gen_inlined_subroutine_die): Likewise.
+ (equate_decl_number_to_die): Remove unused variable `i'.
+ (print_die): Reconcile format vs. args in fprintf's.
+ (print_dwarf_line_table): Likewise.
+ (output_die): Likewise.
+ (output_line_info): Likewise.
+ (add_subscript_info): Avoid an empty body in an else-statement.
+ (gen_subprogram_die): Remove unused variable `fp_loc'.
+
+ * dwarfout.c: Explicitly declare `next_pubname_number' as int.
+ Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
+ macro. Protect `src_coords_attribute' prototype with
+ DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
+ prototype as in the rest of the file. Likewise for
+ `output_pointer_type_die' and `output_reference_type_die'. Remove
+ prototype for `type_of_for_scope'.
+ (output_unsigned_leb128): Reconcile format vs. args in fprintf.
+ (type_attribute): Add explicit braces to avoid ambiguous `else'.
+
+ * final.c: Include <stdlib.h> and <string.h>/<strings.h>.
+ (shorten_branches): Protect declaration of tmp_length with
+ SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
+ (profile_function): Protect declaration of `sval' and `cxt'
+ variables with appropriate macros.
+ (final_scan_insn): Likewise for `note' variable. Add explicit
+ braces to avoid empty body in an if-statement.
+ (output_asm_insn): Move variable `i' inside macro conditional
+ where it is used. Add parentheses around assignment used as truth
+ value.
+ (asm_fprintf): Likewise, likewise.
+
+ * fix-header.c (main): Remove unused variable `done'. Protect
+ declaration of `i' with FIXPROTO_IGNORE_LIST.
+
+ * pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
+
+ * print-rtl.c (print_inline_rtx): Explicitly declare the parameter
+ `ind'.
+
+ * profile.c: Include <string.h>/<strings.h>.
+ (instrument_arcs): Remove unused variables `note', `inverted',
+ `zero' and `neg_one'.
+ (branch_prob): Avoid empty body in an if-statement.
+
+ * regclass.c: Include <stdlib.h>.
+ (reg_alternate_class): Explicitly declare parameter `regno'.
+
+ * regmove.c (regmove_optimize): Remove unused variable `p'. Add
+ parentheses around assignment used as truth value.
+ (find_matches): Remove unused variables `output_operand' and
+ `matching_operand'.
+ (fixup_match_1): Remove statement with no effect: "if (0) ;".
+
+ * scan.c (sstring_append): Explicitly declare `count' as int.
+ (scan_string): Explicitly declare parameter `init' as int.
+
+ * sched.c: Include <stdlib.h>.
+ (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
+ (rank_for_schedule): Add parentheses around assignment used as
+ truth value.
+ (schedule_block): Likewise.
+ (regno_use_in): Likewise.
+ (schedule_insns): Remove unused variable `i'.
+
+ * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
+ (v_message_with_decl): Remove unused variable `n'.
+ (botch): Explicitly declare parameter `s' as char *.
+ (main): Add parentheses around assignment used as truth value.
+
+ * tree.c (make_node): Protect the variable `kind' with the
+ GATHER_STATISTICS macro.
+ (real_value_from_int_cst): Move variable `e' inside conditional
+ macro area where it is used.
+ (tree_last): Add parentheses around assignment used as truth value.
+ (build1): Protect the variable `kind' with the GATHER_STATISTICS
+ macro.
+ (print_obstack_statistics): Reconcile format vs. args in fprintf.
+ Protect variables `i', `total_nodes', and `total_bytes' with the
+ GATHER_STATISTICS macro.
+
+Tue Jan 27 23:01:55 1998 Mike Stump <mrs@wrs.com>
+
+ * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
+ some comments regarding use of dead_or_set_p.
+
+Tue Jan 27 22:14:48 1998 Todd Vierling <tv@pobox.com>
+
+ * fixincludes: Tweak fix for struct exception in math.h
+
+Tue Jan 27 17:21:09 1998 Gavin Koch (gavin@cygnus.com)
+
+ * mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
+ Change mode of registers used to add/sub from
+ hard_frame_pointer_rtx from word_mode to Pmode.
+
+Tue Jan 27 11:02:04 1998 Nick Clifton <nickc@cygnus.com>
+
+ * v850.h (ASM_OUTPUT_ALIGNED_BSS): Use
+ asm_output_aligned_bss() instead of asm_output_bss().
+
+ * toplev.c (rest_of_compilation): Replace references to
+ stack_reg_dump_file and dbr_sched_dump_file with references to
+ rtl_dump_file.
+
+Tue Jan 27 10:22:13 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
+
+ * tlink.c (scan_linker_output): Call fclose() for opened files.
+
+Tue Jan 27 05:05:26 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (output_epilog [!VMS]): Don't tag global functions if
+ compiling with -fpic -- we want to be able to override symbols
+ properly.
+ (alpha_expand_block_move): Fix thinko in last change.
+
+ * alpha.h (ASM_OUTPUT_MI_THUNK): New define.
+ * config/alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): New define.
+ * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): New undef.
+
+Tue Jan 27 03:21:23 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (abssf, absdf): Revert last change.
+
+Tue Jan 27 00:26:50 1998 John Carr <jfc@mit.edu>
+
+ * dwarf2out.c (dwarf2out_frame_init): Test value of DWARF2_UNWIND_INFO.
+ * mips/sni-svr4.h: Define DWARF2_UNWIND_INFO as 0.
+
+Tue Jan 27 00:07:02 1998 Jeffrey A Law (law@cygnus.com)
+
+ * emit-rtl.c (gen_lowpart_common): Handle more case where converting
+ a CONST_INT into SFmode.
+
+Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
+
+ * flags.h: New flag (optimize_size).
+ * toplev.c (main): Parse -Os option and set optimize_space
+ accordingly.
+ * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
+ __OPTIMIZE_SIZE__ when compiling with -Os.
+ * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
+ config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
+ config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
+ to macro.
+ * config/i386/i386.c (optimization_options): Accept new SIZE argument.
+
+Mon Jan 26 23:57:39 1998 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
+ stuff only if MCT_TEXT is #define'd.
+
+Mon Jan 26 23:52:51 1998 Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
+
+ * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
+ configurations.
+
+Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
+
+ * toplev.c: Add -dM command line option to dump RTL after the
+ machine dependent reorganization pass, if there is one.
+ Reorganize RTL dump code, so that only one file handle is
+ needed.
+
+Mon Jan 26 12:09:42 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
+
+ * except.c (check_exception_handler_labels): Disable warning when
+ flag_syntax_only.
+
+Mon Jan 26 18:17:32 1998 Jim Wilson <wilson@cygnus.com>
+
+ * sparc.c (pic_setup_code): Don't set LABEL_PRESERVE_P.
+
+Mon Jan 26 18:11:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * c-decl.c (grokdeclarator): Get parameter tags from
+ last_function_parm_tags.
+ * dwarfout.c (output_formal_types): Set TREE_ASM_WRITTEN before
+ traversing the parameter types.
+ (output_type): No early exit for FUNCTION_TYPE / METHOD_TYPE context.
+
+Mon Jan 26 01:44:12 1998 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.c (print_operand): Handle CONST_DOUBLE for 'e', 'f', and
+ the default case.
+ (get_shift_alg): Fix typo.
+
+Sun Jan 25 22:22:04 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_block_move): Copy ADDRESSOF to reg.
+
+Sun Jan 25 22:14:28 1998 Richard Henderson <rth@cygnus.com>
+
+ * toplev.c (get_run_time): Make sure each case gets its variables.
+
+Sun Jan 25 22:10:21 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (build_xm_file): Add auto-config.h if host=build.
+ (host_xm_file_list): Don't add $(srcdir) to auto-config.h.
+ (build_xm_file_list): Likewise.
+ * configure: Rebuild.
+
+Sun Jan 25 22:00:25 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
+
+ * recog.c (validate_replace_rtx_1): Only perform substitutions
+ of arguments to commutative and comparison operators once.
+
+Sun Jan 25 12:30:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * sparc.c (output_cbranch): Add default case in
+ enumeration switch.
+
+ * reorg.c (insn_sets_resource_p): Correct typo in prototype.
+ (emit_delay_sequence): Eliminate unused parameter, all callers
+ changed.
+ (fill_simple_delay_slots): Likewise.
+ (fill_slots_from_thread): Likewise.
+ (fill_eager_delay_slots): Likewise.
+ (mark_referenced_resources): Add default case in enumeration switch.
+ (mark_set_resources): Likewise.
+ (rare_destination): Likewise.
+ (mostly_true_jump): Likewise.
+ (find_dead_or_set_registers): Likewise.
+ (redirect_with_delay_slots_safe_p): Remove unused variable `slots'.
+ (update_reg_unused_notes): Remove unused variable `p'.
+ (mark_target_live_regs): Remove unused variables `next' and
+ `jump_count'.
+ (fill_simple_delay_slots): Remove unused variable `j'.
+ (fill_slots_from_thread): Add parentheses around assignment used
+ as truth value.
+ (dbr_schedule): Likewise.
+
+ * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
+ (objc.stage2, objc.stage3, objc.stage4): Likewise.
+
+Sun Jan 25 12:13:47 1998 Michael Tiemann <michael@tiemann.org>
+
+ * cse.c (simplify_ternary_operation): Don't try to simplify
+ IF_THEN_ELSE expressions (created by combine) that don't use
+ relational operators.
+
+Fri Jan 23 22:48:24 1998 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
+ simplifications.
+
+ * crtstuff.c (init_dummy): Keep the epilogue in the init
+ section for non-ELF systems.
+
+Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (movqi_i+1): New peephole.
+
+Fri Jan 23 15:39:42 1998 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in: Remove remaining bytecode stuff.
+ * emit-rtl.c, expr.c: Likewise.
+
+Fri Jan 23 12:41:10 1998 Nick Clifton (nickc@cygnus.com)
+
+ * toplev.c (lang_options): Add unknown-pragma options.
+
+Thu Jan 22 23:43:38 1998 Per Bothner <bothner@cygnus.com>
+
+ * dwarfout.c (byte_size_attribute): Simplify and fix - don't need
+ special (and incomplete) handling for Chill arrays.
+
+Fri Jan 23 00:27:23 1998 John Carr <jfc@mit.edu>
+
+ * toplev.c (get_run_time): Call sysconf(_SC_CLK_TCK), when available,
+ to get clock rate.
+
+Fri Jan 23 00:19:36 1998 Gavin Koch (gavin@cygnus.com)
+
+ * mips.md (muldi3_internal2): Reverse test for TARGET_MIPS16.
+
+1998-01-22 scott snyder <snyder@d0sgif.fnal.gov>
+
+ * mips.c (function_prologue): Use HARD_FRAME_POINTER_REGNUM in
+ .frame directive instead of FRAME_POINTER_REGNUM.
+
+Fri Jan 23 00:08:55 1998 Robin Kirkham <rjk@mlb.dmt.csiro.au>
+
+ * m68k.h (TARGET_SWITCHES): -mcpu32 now clears MASK_68881.
+ (MACHINE_STATE_m68010_up): Replaced __mc68332__ with __mcpu32__.
+ * m68k/m68k-none.h(CPP_FPU_SPEC): Update relative to TARGET_SWITCHES.
+ (CPP_SPEC, ASM_SPEC, CC1_SPEC): Likewise.
+ (CPP_SPEC): -m68332 defines both __mc68332 and __mcpu32__.
+ * m68k/t-m68kbare (MULTILIB_OPTIONS): Add mcpu32.
+ (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
+ (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
+ mcpu32 or m5200.
+ * longlong.h: Replace __mc68332__ with __mcpu32__.
+
+Thu Jan 22 19:55:40 1998 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Thu Jan 22 14:47:31 1998 Jim Wilson <wilson@cygnus.com>
+
+ * reload.c (push_reload): In WORD_REGISTER_OPERATIONS code, add test
+ to require the SUBREG mode to be smaller than the SUBREG_REG mode.
+ * reload1.c (eliminate_regs): Likewise.
+
+Thu Jan 22 14:49:14 1998 Jeffrey A Law (law@cygnus.com)
+
+ * regmove.c (find_matches): Initialize matches->earlyclobber too.
+
+Thu Jan 22 01:40:52 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (abssf2, absdf2): Disable in IEEE mode.
+ (negsf2, negdf2): Use proper subtract in IEEE mode.
+
+Tue Jan 20 09:29:09 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in: Remove more bytecode stuff.
+ * expr.c, stmt.c, config/msdos/top.sed: Likewise.
+ * vax/xm-vms.h, winnt/config-nt.sed: Likewise.
+ * f/install.texi, objc/Make-lang.in: Likewise.
+
+ * Makefile.in: Remove all bytecode support.
+ (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS.
+ * emit-rtl.c: Remove all bytecode support.
+ * expr.c, expr.h function.c, integrate.c: Likewise.
+ * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise.
+ * tree.h, varasm.c: Likewise.
+ * config/m68k/m68k.h: Likewise.
+ * bi-*, bc-*, bytecode*: Delete bytecode related files.
+ * modemap.def: Likewise.
+
+Tue Jan 20 09:02:31 1998 Gavin Koch (gavin@cygnus.com)
+
+ * mips/mips.md (divsi3,divdi3,modsi3,moddi3,udivsi3,udivdi3,
+ umodsi3,umoddi3): Handle mips16 div/mod by a constant.
+
+Mon Jan 19 21:57:00 1998 Richard Henderson <rth@cygnus.com>
+
+ * i386.md (push): Prohibit symbolic constants if flag_pic.
+ (movsi+1): Likewise for move to non-register.
+
+Mon Jan 19 11:15:38 1998 Jim Wilson <wilson@cygnus.com>
+
+ * alpha.c (mode_mask_operand): Accept 0xffffffff on 32 bit host.
+ (print_operand): Handle 0xffffffff on 32 bit host.
+
+ * configure.in (thread_file): Rename uses before main loop to
+ target_thread_file. Initialize to empty in main loop. Set thread_file
+ to target_thread_file after main loop if not set.
+ * configure: Rebuild.
+
+ * genattrtab.c (find_and_mark_used_attributes): Handle CONST_INT.
+ (add_values_to_cover): Revert last change (which had no ChangeLog
+ entry).
+ (simplify_with_current_value_aux): Handle CONST_INT.
+
+Mon Jan 19 10:14:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * unprotoize.c: Define UNPROTOIZE first, to actually take effect.
+
+Mon Jan 19 10:11:52 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in: Add cpp stringify test.
+ * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
+ * gengenrtl.c: Use it.
+ * configure, config.in: Rebuild.
+
+Mon Jan 19 09:43:15 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * Makefile.in (genrtl.c genrtl.h): Add dummy command for GNU make.
+
+Mon Jan 19 09:38:18 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in: Find declaration for sbrk.
+ * acconfig.h (NEED_DECLARATION_SBRK): New tag.
+ * config.in, configure: Rebuild.
+ * mips-tfile.c: Properly protect declaration of sbrk and free.
+ * toplev.c: Properly protect declaration of sbrk.
+
+Sun Jan 18 20:18:01 1998 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_handle_trap_shadows): Ignore CLOBBERs.
+
+Sun Jan 18 01:54:27 1998 Jeffrey A Law (law@cygnus.com)
+
+ * alpha/xm-winnt.h (HAS_INIT_SECTION): Undefine.
+
+Sun Jan 18 00:57:35 1998 Mike Stump <mrs@wrs.com>
+
+ * configure.in (i960-wrs-vxworks): Default to latest vxworks release.
+
+Sat Jan 17 23:41:36 1998 David S. Miller <davem@tanya.rutgers.edu>
+
+ * combine.c (force_to_mode, nonzero_bits): Correctly optimize
+ constant offset computations from objects with known alignment in
+ the presence of STACK_BIAS.
+
+ * varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
+ necessary.
+ (const_hash): Hash val is unsigned long.
+ (SYMHASH): Likewise.
+
+ * tree.c (TYPE_HASH): Type of hash val is unsigned long.
+
+ * print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
+ char pointer, not HOST_WIDE_INT.
+ (print_node): Likewise. Also hash is unsigned long not
+ HOST_WIDE_INT.
+
+ * cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
+
+ * explow.c (optimize_save_area_alloca): New function for targets
+ where SETJMP_VIA_SAVE_AREA is true.
+ (allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
+ compute the amount of stack space needed should we find later that
+ setjmp is never called by this function, stuff rtl for this inside
+ a REG_NOTE of the final SET of stack_pointer_rtx.
+ * toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
+ current_function_calls_alloca, call optimize_save_area_alloca.
+
+Sat Jan 17 23:22:59 1998 John Wehle (john@feith.com)
+
+ * i386.md: Remove redundant integer push patterns.
+ Don't bother checking for TARGET_PUSH_MEMORY when
+ pushing constants or registers.
+
+Sat Jan 17 22:35:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
+ J.J VanderHeijden <J.J.vanderHeijden@student.utwente.nl>
+
+ * pexecute.c (pexecute): New function for mingw32. Supports pipes.
+ (pwait): New function for mingw32.
+
+ * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
+ pipe support is broken for now.
+
+1998-01-17 Lee Iverson <leei@Canada.AI.SRI.COM>
+
+ * emit_rtl.c (init_emit_once): Ensure that potential aliasing
+ between frame_pointer_rtx, hard_frame_pointer_rtx, and
+ arg_pointer_rtx is respected in initialization.
+ (init_emit_once): Use gen_rtx_raw_REG() to create
+ return_address_pointer_rtx.
+
+ * reorg.c: #include "expr.h" for rtx prototypes.
+ * Makefile.in (reorg.o): Depend on expr.h
+
+Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
+
+ * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
+ local_prefix to sub-make invocations.
+
+Sat Jan 17 21:24:16 1998 David T. McWherter <dtm@waterw.com>
+
+ * objc-parse.c: Recognize protocol qualifiers in class definitions.
+
+Sat Jan 17 21:16:19 1998 Jeffrey A Law (law@cygnus.com)
+
+ * rtl.h: Fix typos.
+
+ * acconfig.h (NEED_DECLARATION_ATOL): New declaration to check for.
+ * configure.in: Check for atol.
+ * rtl.c (atol): Only provide the declaration if NEED_DECLARATION_ATOL.
+
+ * rtl.c (read_rtx): Initialize list_rtx to NULL, not NULL_RTX.
+
+ * loop.c (find_and_verify_loops): When attempting to move insns from
+ inside the loop outside the loop, create a BARRIER if no suitable
+ one was found.
+
+ * jump.c (jump_optimize): Remove Dec 17, 1997 chance in
+ favor of an equivalent change from gcc-2.8.
+
+ * i386/x-sco5 (CC): Remove trailing whitespace.
+
+Sat Jan 17 21:09:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gengenrtl.c (type_from_format): De-ANSIfy function signature.
+ (accessor_from_format): Likewise.
+ (xmalloc): New function for use when linking with alloca.o.
+
+Mon Jan 5 02:53:01 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+
+ * frame.c (find_fde): Correct FDE's upper bound.
+
+Fri Jan 16 16:23:52 1998 Richard Henderson <rth@cygnus.com>
+
+ * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
+
+Fri Jan 16 10:16:10 1998 Jeffrey A Law (law@cygnus.com)
+
+ * calls.c (expand_call): Move #ifdef code out of macro argument
+ lists.
+ (emit_library_call, emit_library_call_value): Likewise.
+
+Fri Jan 16 00:46:40 1998 Jeffrey A Law (law@cygnus.com)
+
+ * rtl.def (INLINE_HEADER): Fix bug exposed by gen_rtx_FOO changes.
+
+Thu Jan 15 01:02:30 1998 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Wed Jan 14 22:49:17 1998 Richard Henderson <rth@cygnus.com>
+
+ * alias.c: Change all uses of gen_rtx(FOO...) to gen_rtx_FOO;
+ change gen_rtx(expr...) to gen_rtx_fmt_foo(expr...).
+ * caller-save.c, calls.c, combine.c, cse.c: Likewise.
+ * dwarf2out.c, except.c, explow.c, expmed.c, expr.c: Likewise.
+ * final.c, flow.c, function.c, genpeep.c, haifa-sched.c: Likewise.
+ * halfpic.c, integrate.c, jump.c, local-alloc.c, loop.c: Likewise.
+ * profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
+ * reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
+ * unroll.c, varasm.c: Likewise.
+ * config/alpha/alpha.c, config/alpha/alpha.md: Likewise.
+
+Wed Jan 14 19:36:08 1998 Gavin Koch (gavin@cygnus.com)
+
+ * mips.h: Fix some type-o's from a previous change.
+
+Wed Jan 14 01:26:05 1998 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (check_dbra_loop): Make sure initial value is a
+ CONST_INT before trying to normalize it.
+
+Tue Jan 13 23:27:54 1998 Robert Lipe (robertl@dgii.com)
+
+ * sco5.h (ASM_OUTPUT_SECTION_NAME): Refresh from ../svr4.h.
+
+Tue Jan 13 22:47:02 1998 Herman ten Brugge <herman@htbrug.net.HCC.nl>
+
+ * cppexp.c: Include gansidecl.h
+
+Tue Jan 13 22:43:35 1998 Ian Lance Taylor <ian@cygnus.com>
+
+ * svr4.h (LINK_SPEC): Never specify -h.
+ * ptx4.h (LINK_SPEC): Likewise.
+ * rs6000/sysv4.h (LINK_SPEC): Likewise.
+ * sparc/sol2.h (LINK_SPEC): Likewise.
+
+Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
+
+ * c-typeck.c (comptypes): Exit early on NULL input.
+
+ * haifa-sched.c (schedule_insns): Correctly remove inter-block
+ dependencies after reload.
+
+Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
+
+ * rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.
+
+Tue Jan 13 22:14:57 1998 Klaus Kaempf <kkaempf@progis.de>
+
+ * alpha/vms.h (DIR_SEPARATOR): Define.
+
+Tue Jan 13 22:13:04 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
+
+ * Makefile.in (stamp-proto): Remove.
+ (protoize.o, unprotoize.o): Straightforward compile.
+ * unprotoize.c: Define UNPROTOIZE here, not in the Makefile.
+
+Tue Jan 13 21:59:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
+ off the trailing @[NUM] added by ENCODE_SECTION_INFO.
+
+Tue Jan 13 21:55:06 1998 Jeffrey A Law (law@cygnus.com)
+
+ * arm/netbsd.h (DWARF2_UNWIND_INFO): Define as zero for now.
+ * i386/netbsd.h, m68k/netbsd.h, ns32k/netbsd.h: Likewise.
+ * sparc/netbsd.h, vax/netbsd.h: Likewise.
+
+Tue Jan 13 21:37:07 1998 Shigeya Suzuki <shigeya@foretune.co.jp>
+
+ * i386/bsd386.h (DWARF2_UNWIND_INFO): Define as zero for now.
+
+Tue Jan 13 17:50:55 1998 Jim Wilson <wilson@cygnus.com>
+
+ * configure.in (target_cpu_default, target_cpu_default2): Use double
+ quotes around them when testing their value.
+ * configure: Rebuilt.
+
+Tue Jan 13 09:07:44 1998 John Carr <jfc@mit.edu>
+
+ * gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
+ to allocate rtx.
+ (gendef): Call obstack_alloc_rtx.
+
+Tue Jan 13 01:16:36 1998 Robert Lipe (robertl@dgii.com)
+
+ * configure.in (i[3456]86-UnixWare7-sysv5): Treat much like SVR4
+ for now.
+
+Thu Dec 18 18:40:17 1997 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
+ of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
+ (STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
+
+Tue Jan 13 00:44:02 1998 Jim Wilson <wilson@cygnus.com>
+
+ * mips.md (return_internal): Change mode from SImode to VOIDmode.
+
+Sat Jan 10 22:11:39 1998 J. Kean Johnston <jkj@sco.com>
+
+ * i386/sco5.h (STARTFILE_SPEC, ENDFILE_SPEC): Correctly handle
+ "-static".
+
+Sat Jan 10 22:04:15 1998 Stan Cox <scox@equinox.cygnus.com>
+
+ * i386.md (movsicc_1, movhicc_1): For alternate 3 set the opcode
+ suffix from operand 3.
+
+Sat Jan 10 21:50:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
+ Jeffrey A Law (law@cygnus.com)
+
+ * regmove.c: New implementation of regmove pass.
+ * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
+ decls, make them have external linkage. Return a value from
+ optimize_reg_copy_1.
+ * reload.h (count_occurrences): Add decl.
+ * reload1.c (count_occurrences): Delete decl, make it have external
+ linkage.
+ * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
+
+Sat Jan 10 20:30:12 1998 Jeffrey A Law (law@cygnus.com)
+
+ * regclass.c (record_address_regs): Don't use REG_OK_FOR_BASE_P
+ if it is not defined.
+
+Thu Jan 8 21:06:54 1998 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
+ * emit-rtl.c (gen_rtx): Move special code to ...
+ (gen_rtx_CONST_INT): New function.
+ (gen_rtx_REG): New function.
+ (*): Update all calls to gen_rtx.
+ * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO.
+ * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators.
+ (GEN_INT): Call gen_rtx_CONST_INT.
+ * gengenrtl.c: New file.
+
+Mon Jan 5 13:00:18 1998 John F. Carr <jfc@mit.edu>
+
+ * alias.c (*_dependence): Call base_alias_check before canon_rtx.
+ (base_alias_check): If no base found for address call canon_rtx and
+ try again.
+
+Mon Jan 5 11:39:49 1998 Jeffrey A Law (law@cygnus.com)
+
+ * mips.c (mips_expand_prologue): Handle large frame with no outgoing
+ arguments for mips16.
+ (mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
+ Don't lose if tsize is zero after handling large stack for mips16.
+ * mips.md (return): For trivial return, return address is in $31.
+
+Sun Jan 4 20:24:00 1998 Nigel Stephens <nigel@algor.co.uk>
+
+ * mips/mips16.S: Various changes to make it work with -msingle-float
+ and -EL.
+
+Sun Jan 4 14:25:18 1998 Gavin Koch <gavin@cygnus.com>
+ Ian Lance Taylor <ian@cygnus.com>
+ Jeff Law <law@cygnus.com>
+
+ * mips.c, mips.h, mips.md: First cut at merging in mips16
+ support. Major modifications throughout all three files.
+
+Sun Jan 4 01:01:50 1998 scott snyder <snyder@d0sgif.fnal.gov>
+
+ * configure.in: Make gthr-default.h a forwarding header instead of
+ a symlink.
+
+Sat Jan 3 12:08:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcov-io.h: Include sys/types.h to ensure we get size_t.
+
+ * pa.h (ASM_OUTPUT_MI_THUNK): Add missing % in fprintf.
+
+Fri Jan 2 23:40:09 1998 Jim Wilson (wilson@cygnus.com)
+ Jeffrey A Law (law@cygnus.com)
+
+ * crtstuff.c (__frame_dummy): New function for irix6.
+ (__do_global_ctors): Call __frame_dummy for irix6.
+ * iris6.h (LINK_SPEC): Hide __frame_dummy too.
+
+Fri Jan 2 04:57:57 1998 Weiwen Liu <liu@hepmail.physics.yale.edu>
+
+ * alpha.c (vms_valid_decl_attribute_p): Move within #if OPEN_VMS.
+
+Fri Jan 2 04:34:14 1998 Richard Henderson <rth@cygnus.com>
+
+ * c-decl.c (init_decl_processing): Provide proper fallback symbol
+ for __builtin_memset.
+ * expr.c (expand_builtin) [MEMSET]: Arg 3 type code is INTEGER_TYPE
+ not INTEGER_CST. Assert arg 3 is a constant.
+
+ * alpha.c (mode_width_operand): Accept 64-bit modes.
+ (mode_mask_operand): Likewise.
+ (print_operand): Likewise for 'M' and 'U' codes.
+ (alpha_expand_unaligned_load): New function.
+ (alpha_expand_unaligned_store): Likewise.
+ (alpha_expand_unaligned_load_words): Likewise.
+ (alpha_expand_unaligned_store_words): Likewise.
+ (alpha_expand_block_move): Likewise.
+ (alpha_expand_block_clear): Likewise.
+ * alpha.h (MOVE_RATIO): New define.
+ * alpha.md (extxl, ext*h, ins*l, mskxl): Name them.
+ (insql, insxh, mskxh, extv, extzv, insv, movstrqi, clrstrqi): New.
+
+ * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Set to 3.
+ (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): Disable.
+
+Thu Jan 1 15:40:15 1998 Richard Henderson <rth@cygnus.com>
+
+ * configure.in: Put parenthesis around TARGET_CPU_DEFAULT's value.
+ * configure: Update.
+
+Thu Jan 1 10:49:12 1998 Jeffrey A Law (law@cygnus.com)
+
+ * emit-rtl.c (operand_subword): Correctly handle extracting a word
+ from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.
-Local Variables:
-add-log-time-format: current-time-string
-End:
+ * mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
+ for first argument.
diff --git a/gcc/ChangeLog.2 b/gcc/ChangeLog-1999
index 39b4f3a0d61..add129de3d1 100644
--- a/gcc/ChangeLog.2
+++ b/gcc/ChangeLog-1999
@@ -161,7 +161,7 @@ Wed Dec 29 10:53:21 1999 Jeffrey A Law (law@cygnus.com)
determining whether to provide a prototype. Remove the
sys_siglist clause in the conditional.
-1999-12-23 Martin v. Löwis <loewis@informatik.hu-berlin.de>
+1999-12-23 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* fold-const.c (operand_equal_p): Use memcmp to compare string
constants.
@@ -319,7 +319,7 @@ Tue Dec 21 07:06:36 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* md.texi: Add c4x constraints documentation.
-1999-12-21 Martin v. Löwis <loewis@informatik.hu-berlin.de>
+1999-12-21 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* config/i386/dgux.c (struct option): Rename to
lang_independent_option.
@@ -1310,7 +1310,7 @@ Tue Dec 7 19:22:06 1999 Richard Henderson <rth@cygnus.com>
(strength_reduce): Discard an iv with multiple bivs, any of
which require multiple insns to increment.
-1999-12-07 Martin v. Löwis <loewis@informatik.hu-berlin.de>
+1999-12-07 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* invoke.texi (C Dialect Options): Remove -flang-c9x, add -std
documentation.
@@ -5502,7 +5502,7 @@ Wed Oct 13 01:44:29 1999 Carol LePage <carolo@hal.com>
float_format and thread_file definitions.
* configure: Rebuilt.
-Wed Oct 13 09:25:03 1999 Niels Möller <nisse@lysator.liu.se>
+Wed Oct 13 09:25:03 1999 Niels Möller <nisse@lysator.liu.se>
* extend.texi (Function Names): Document types of function names.
@@ -6690,7 +6690,7 @@ Thu Sep 23 08:46:21 1999 Guy Harris <guy@netapp.com>
* gcc.1: Fix a formatting error.
-Wed Sep 22 16:10:21 1999 Martin v. Löwis <loewis@informatik.hu-berlin.de>
+Wed Sep 22 16:10:21 1999 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* install.texi (Configurations): Remove pyramid. Add fr30, i686,
i786, mn10200, mn10300, pdp11, v850.
@@ -6899,7 +6899,7 @@ Tue Sep 21 14:14:50 1999 Richard Henderson <rth@cygnus.com>
(merge_blocks_move_successor_nojumps): Likewise.
(merge_blocks): Use eh_beg+eh_end to validate block movement.
-Tue Sep 21 11:15:03 1999 Martin v. Löwis <loewis@informatik.hu-berlin.de>
+Tue Sep 21 11:15:03 1999 Martin v. Löwis <loewis@informatik.hu-berlin.de>
* extend.texi (Bound member functions): Document unbound pmf
conversion.
@@ -14466,4 +14466,7321 @@ Wed May 19 00:34:40 1999 Jeffrey A Law (law@cygnus.com)
* version.c: Bump to distinguish mainline tree from the
gcc-2.95 branch.
-See ChangeLog.1 for earlier changes.
+Tue May 18 03:53:37 1999 Craig Burley <craig@jcb-sc.com>
+
+ Improve open-coding of complex divide:
+ * flags.h: Declare new front-end-malleable flag.
+ * toplev.c: Define new flag.
+ * optabs.c (expand_cmplxdiv_straight): New function to do original
+ open-coding.
+ (expand_cmplxdiv_wide): New function to do new open-coding,
+ from Toon Moene, with changes (call to emit_barrier, dropping
+ of spurious `ok = 1;', plus the obvious `break;' -> `return 0;').
+ (expand_binop): A bit of spacing fixing, while at it.
+ Use new functions instead of inlining the open-coding code.
+
+Tue May 18 00:51:46 1999 Krister Walfridsson <cato@df.lth.se>
+
+ * configure.in (arm*-*-netbsd*): Use collect2.
+ (i[34567]86-*-netbsd*): Likewise.
+ (m68k*-*-netbsd*): Likewise.
+ (ns32k-*-netbsd*): Likewise.
+ (sparc-*-netbsd*): Likewise.
+ (vax-*-netbsd*): Likewise.
+ * configure: Rebuilt.
+
+Tue May 18 00:21:34 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * cppspec.c: Insert -no-gcc into command line unless -gcc was
+ given by user.
+ * gcc.c (default_compilers): Define __GNUC__ and
+ __GNUC_MINOR__ only if -no-gcc was not given.
+ * objc/lang-specs.h: Likewise.
+ * cpp.texi: Document -x and -std options; explain that -lang
+ is no longer supported. Minor related corrections.
+
+Mon May 17 23:56:39 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * Makefile.in (stmp-fixproto): Pass location of mkinstalldirs to
+ fixproto.
+ * fixproto: Avoid unportable constructs such as `basename' and
+ `mkdir -p'. Use mkinstalldirs from the environment if `mkdir -p'
+ fails.
+
+ * fixinc/fixincl.c: Remove #error, it is not portable.
+
+Mon May 17 23:50:41 1999 Marc Espie <espie@cvs.openbsd.org>
+
+ * collect2.c (main): Fix typo in COLLECT2_HOST_INITIALIZATION.
+
+Mon May 17 19:45:41 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/fixincl.c (process): Wait for children from chain_open()
+ to avoid creating zombies.
+
+ * fixinc/inclhack.tpl: Removed no-op pipe.
+
+ * fixinc/inclhack.sh fixinc/fixincl.sh: regenerate
+
+Mon May 17 07:23:34 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.def (TYPE_NONCOPIED_PARTS): Revise documentation to match
+ reality.
+ * expr.c (init_noncopied_parts): Don't generate initializers for
+ parts that don't need them.
+
+Mon May 17 02:56:35 PDT 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Oct 31 05:08:34 CET 1998 Jan Hubicka (hubicka@freesoft.cz)
+
+ * reg-stack.c: Do not emit pop insns after cc0 setter.
+ (emit_pop_insn): Do not emit insn in case WHEN is NULL.
+ (compare_for_stack_reg): Update REG_DEAD note and
+ do not emit push insn.
+
+ * i386.c: (output_float_compare): Handle new REG_DEAD notes.
+
+Mon May 17 01:57:37 1999 David Daney <daney@ibw.com.ni>
+
+ * i386/sol2.h (LINK_SPEC): Do not pass "-z text" to the linker
+ if -mimpure-text.
+
+1999-05-17 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * m68k.c (standard_68881_constant_p): Don't accept -0.0 as valid
+ 68881 constant.
+
+ * fold-const.c (fold_truthop): When converting a one-bit
+ comparison don't sign extend the constant.
+
+ * cse.c (cse_insn): Copy SRC_CONST before putting it in the
+ REG_EQUAL note.
+
+1999-05-17 Mike Stump <mrs@wrs.com>
+
+ * rs6000/vxppc.h (CPP_SPEC): Fix support for vararg functions.
+
+Sat May 15 14:22:40 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc/hackshell.tpl: Fix mis-applied patch.
+ * fixinc/inclhack.sh: Regenerated.
+
+Thu May 13 21:05:55 1999 Mark Kettenis <kettenis@gnu.org>
+
+ * fixinc/mkfixinc.sh: Add the Hurd (*-*-gnu*) to the list of
+ targets that do not need any fixes.
+
+Sat May 15 14:12:38 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (set_lo_sum+2): New splitter to load large
+ const_ints.
+
+Sat May 15 14:09:08 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (decrement_and_branch_on_count): Disabled.
+ (doloop_begin, doloop_end): New patterns.
+ (*rptb_init): Added extra operands.
+
+Fri May 14 21:31:36 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (*umulqi3_highpart_clobber): Fix operand 2
+ constraints order.
+
+1999-05-14 Ulrich Drepper <drepper@cygnus.com>
+
+ * fixinc/fixinc.x86-linux-gnu (FD_ZERO): Fix operand numbers in
+ asm input operands.
+
+Thu May 13 15:34:18 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (mask_constant): Delete.
+ (mask_operand): Move mask_constant() body to here.
+ * rs6000.h (mask_constant): Delete declaration.
+ * rs6000.md (nabsdi2): Reverse subtraction in splitter.
+
+Thu May 13 02:25:01 1999 Jeffrey A Law (law@cygnus.com)
+
+ * cpp.texi: Fix some typos.
+
+Thu May 13 01:49:55 1999 Graham Stott <GrahamS@RCP.co.uk>
+
+ * loop.c (maybe_eliminate_biv): Check regno against
+ max_reg_before_loop.
+
+ * i386.c (memory_address_info): Correct the scale
+ factor test.
+
+Thu May 13 01:31:19 1999 Nick Burrett <nick.burrett@btinternet.com>
+
+ * arm.md (nop): Backout Apr 27 change. Ensure REGISTER_PREFIX is
+ applied to each register.
+ * aof.h (ASM_FILE_START): Define register `r0'.
+
+1999-05-12 20:22 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * configure.in: Make --enable-cpp and --with-cpp-install-dir
+ documented options. Enable the cpp driver by default.
+ * configure: Rebuilt.
+
+Wed May 12 18:08:48 1999 David Edelsohn <edelsohn@gnu.org>
+ Richard Henderson <rth@cygnus.com>
+
+ * rs6000.c (print_operand) [w]: Calculate signed constant more clearly.
+ (rs6000_allocate_stack_space): Print as hexadecimal value.
+ * rs6000.h (CONST_OK_FOR_LETTER_P): 'L' checks for a signed,
+ 16-bit shifted constant. Fix typo for 'P'.
+ (EXTRA_CONSTARINT): 'T' checks for a 32-bit mask operand.
+ * rs6000.md (movsi, addsi3_internal1, movdi, adddi3_internal1):
+ Use 'L' for shifted constant.
+ (anddi3_internal3): Fix typo.
+ (32-bit mask patterns): Use 'T'.
+
+Wed May 12 07:30:31 1999 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixinc/fixincl.c(quoted_file_exists): new procedure to ensure that
+ a file exists before trying to copy it into the destination
+ (extract_quoted_files): use that routine.
+
+Wed May 12 07:27:31 1999 Craig Burley <craig@jcb-sc.com>
+
+ Allow front end (like g77's) to override maintenance of errno:
+ * expr.c (expand_builtin): Bother with errno only if
+ flag_errno_math.
+ * flags.h: Declare flag_errno_math.
+ * toplev.c: Define flag_errno_math.
+
+Tue May 11 23:55:49 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixproto: Change "mkdir" calls to "mkdir -p"
+
+ * fixinc/inclhack.def (io_def_quotes): Consistently allow multiple
+ whitespace characters between the "define" and the name of the macro.
+ * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
+
+Tue May 11 20:46:37 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_block_move): Handle TImode registers
+ used with ADDRESSOF.
+ (alpha_expand_block_clear): Handle ADDRESSOF specially.
+
+1999-05-11 Ulrich Drepper <drepper@cygnus.com>
+
+ * fixinc/fixinc.x86-linux-gnu (FD_ZERO): Remove unneccessary
+ memory output operand which irritates gcc.
+
+Tue May 11 11:45:16 1999 Dave Brolley <brolley@cygnus.com>
+
+ * toplev.c (documented_lang_options): Add -MD, -MMD, -M and -MM for
+ cpplib-enabled compilers.
+
+Tue May 11 11:34:56 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
+
+ * config/sparc/sparc.h (GO_IF_LEGITIMATE_ADDRESS): Add parentheses
+ around &&.
+
+Mon May 10 13:51:24 1999 Nick Clifton <nickc@cygnus.com>
+
+ * tm.texi (FUNCTION_ARG): Stack element of PARALLEL must come
+ first.
+
+Tue May 11 01:32:01 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc/inclhack.def (sun_auth_proto): Apply to all targets.
+ (sysz_stdlib_for_sun): Similarly.
+ * fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
+
+Mon May 10 20:34:10 1999 Jim Wilson <wilson@cygnus.com>
+
+ * config/mips/elf.h (UNIQUE_SECTION_P): Undef.
+ * config/mips/elf64.h (UNIQUE_SECTION_P): Undef.
+ * config/mips/mips.h (UNIQUE_SECTION_P): Define to 0.
+
+1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppfiles.c (initialize_input_buffer): New function.
+ (finclude): Call it, if pfile->input_buffer is NULL. Accept
+ any character device as an input file.
+ (read_and_prescan): Use pfile->input_buffer and
+ pfile->input_speccase.
+ * cppinit.c (cpp_cleanup): Free pfile->input_buffer and
+ pfile->input_speccase.
+ * cpplib.h (cpp_reader): Add input_buffer, input_speccase, and
+ input_buffer_len members. Use memcpy in CPP_PUTS_Q.
+
+ * cppmain.c: Buffer output in the token_buffer; throttle
+ number of calls to fwrite; check for errors from fwrite.
+
+1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * cppspec.c: Treat two non-option arguments as input and
+ output file. Three or more non-option args is an error.
+ Clean up.
+ * gcc.c (default_compilers): Pass -$ to the preprocessor.
+ * objc/lang-specs.h: Likewise.
+
+Mon May 10 12:59:20 1999 Jeffrey A Law (law@cygnus.com)
+
+ * optabs.c (emit_cmp_and_jump_insns): Handle the case where both
+ operands to the comparison are constants.
+
+Mon May 10 07:28:10 1999 Bruce Korb <autogen@autogen.freeservers.com>
+
+ * fixinc/inclhack.def(arm_norcroft_hint): check before fixing
+ (no_double_slash): portability
+ (math_exception): added reminder comment
+
+Mon May 10 01:28:10 1999 Craig Burley <craig@jcb-sc.com>
+
+ From Fri May 7 9:31:41 1999 Donn Terry (donn@interix.com):
+ * varasm.c (mark_constant_pool): Add some transitive closure.
+
+Sun May 9 22:51:04 1999 Craig Burley <craig@jcb-sc.com>
+
+ Fix gcc.dg/990506-0.c:
+ * c-typeck.c (require_complete_type): Handle ERROR_MARK input.
+
+Sun May 9 13:19:12 1999 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (cprop_insn): Do not try to simplify a simple jump.
+
+Sun May 9 11:12:19 1999 Philip Blundell <bp@nexus.co.uk>
+
+ * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Add (PLT) to branch if
+ necessary. Reported by jim@federated.com.
+
+Sat May 8 23:05:35 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h (PRINT_OPERAND_ADDRESS): Output "%r0", not "r0" for the
+ base register in an absolute memory address.
+ * pa.md (conditional moves): Avoid using immediate zero for
+ register zero.
+
+Sat May 8 06:23:21 1999 Philip Blundell <pb@nexus.co.uk>
+
+ Based on patch by Scott Bambrough:
+ * config/arm/arm.h (NEED_PLT_GOT): New macro. Set to 0 if not
+ already defined.
+ * config/arm/elf.h (NEED_PLT_GOT): Define to flag_pic.
+ * config/arm/arm.md (call_symbol, call_value_symbol et al.): If
+ NEED_PLT_GOT is true, add explicit "(PLT)" to generated branches.
+ * config/arm/arm.c (output_func_epilogue,
+ output_return_instruction): Likewise for calls to abort.
+
+Sat May 8 01:57:58 1999 Donn Terry (donn@interix.com)
+
+ * calls.c (rtx_for_function_call): Extend function pointer being
+ passed to chkr_check_exec_libfunc, if needed.
+
+Sat May 8 01:51:50 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * ginclude/stdarg.h (__va_rounded_size): Use long type for
+ rounding on AIX.
+ * ginclude/varargs.h: Likewise.
+
+Sat May 8 01:47:20 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * invoke.texi: Remove duplicates in the description of -d
+ letters. Fix use of @item vs. @itemx.
+
+Sat May 8 01:43:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000.h (RS6000_VARARGS_OFFSET): Die die die.
+ (CUMULATIVE_ARGS): Remove varargs_offset; update commentary.
+ * rs6000.c (setup_incoming_varargs): Fix typo last change.
+ (init_cumulative_args): Remove varargs_offset references.
+
+ * rs6000/linux.h (NO_IMPLICIT_EXTERN_C): Define.
+ (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Undefine.
+
+Sat May 8 01:34:19 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * reload1.c (gen_mode_int): New function.
+ (reload_cse_move2add): Use it to generate the new constants.
+
+Sat May 8 01:25:09 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * varasm.c (output_constant): Do nothing if -fsyntax-only.
+
+Fri May 7 19:10:15 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
+
+ * sparc.h (GO_IF_LEGITIMATE_ADDRESS): Prohibit REG+REG addressing
+ for TFmode when there are no instructions which accept REG+REG
+ instructions.
+
+Fri May 7 12:38:54 1999 Jim Wilson <wilson@cygnus.com>
+
+ * mips/elf64.h (MAKE_DECL_ONE_ONLY, UNIQUE_SECTION_P): Define.
+ * mips/mips.c (mips_select_rtx_section): When TARGET_MIPS16, use
+ function_section instead of text_section.
+ * mips/mips.h (ENCODE_SECTION_INFO): Add check for UNIQUE_SECTION_P
+ in TARGET_MIPS16 STRING_CST handling.
+
+Fri May 7 09:54:11 1999 Nick Clifton <nickc@cygnus.com>
+
+ Patch from: Nick Burrett <nick.burrett@btinternet.com>
+
+ * arm.c (arm_poke_function_name): New function to implement
+ -mpoke-function-name.
+ * aof.h (ASM_DECLARE_FUNCTION_NAME): Call it.
+ * aout.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
+ * elf.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
+ * arm.h: Prototype it.
+ (TARGET_SWITCHES): Add `no-poke-function-name'.
+
+Fri May 7 14:19:31 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/server.c (load_data): Cast text_size to long, adapt
+ format.
+ * fixinc/server.c (read_pipe_timeout): Declare volatile, modified
+ in signal handler.
+ (sig_handler): Add debug code.
+ * fixinc/server.c (run_shell): Don't \-escape cd, it breaks the
+ Ultrix V4.3 /bin/sh.
+ * fixinc/server.c (def_args): Use static instead of STATIC to
+ avoid redefinition error from linker iff DEBUG.
+
+ * fixinc/hackshell.tpl: Don't strip trailing directory from
+ DESTDIR - that is already done
+
+ * fixinc/fixincl.c (run_compiles): fix memory leak
+
+Thu May 6 20:34:00 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * resource.c (mark_referenced_resources): Make volatil
+ monotonically increasing.
+ (mark_set_resources): Likewise.
+
+Thu May 6 20:02:33 1999 Fred Fish <fnf@be.com>
+
+ * rs6000/xm-beos.h (HAVE_VPRINTF): Don't redefine if already defined.
+ (HAVE_PUTENV, HAVE_ATEXIT, HAVE_RENAME): Likewise.
+
+Wed May 5 20:28:32 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * install.texi (Header Dirs): s/GPLUS/GPLUSPLUS/.
+
+Wed May 5 23:44:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * unroll.c (copy_loop_body): Don't copy VTOP notes from copy_notes_from.
+
+Wed May 5 16:26:13 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
+
+ * function.c (purge_addressof_replacements): Rename into
+ purge_bitfield_addressof_replacements.
+ (purge_addressof_replacements): New variable.
+ (purge_addressof_1): Add code for changing addressof in notes for
+ field values which are extracted by usage MEM with narrower mode.
+ (purge_addressof): Initialize purge_bitfield_addressof_replacements.
+
+Wed May 5 07:40:02 1999 Nick Clifton <nickc@cygnus.com>
+
+ Patch from: Nick Burrett <nick.burrett@btinternet.com>
+ * config/arm/arm.h (ARM_MCOUNT_NAME): Define.
+ (FUNCTION_PROFILER): Remove assembler dialect dependency and use
+ ARM_MCOUNT_NAME.
+ (TRAMPOLINE_TEMPLATE): Remove assembler dialect dependency.
+
+ * config/arm/aof.h (ARM_MCOUNT_NAME): Define.
+
+1999-05-05 09:58 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * gcc.c (default_compilers): Fix brace nesting bug.
+ * objc/lang-specs.h: Use %i, not %g.mi, for the input file
+ when processing an .mi file.
+
+Tue May 4 13:17:55 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * resource.c (mark_set_resources): Handle UNSPEC_VOLATILE,
+ ASM_INPUT, TRAP_IF, and ASM_OPERANDS just like in
+ mark_referenced_resources.
+
+Mon May 3 22:38:41 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Change non-PowerPC
+ and AIX64 combination to warning. Add warning for disabling
+ PowerPC64 support when using 64-bit mode.
+ (LIB_SPEC): Do not link with libg.a in 64-bit mode.
+ (LINK_SPEC): Do not export libg.exp symbols in 64-bit mode.
+ * rs6000/rs6000.h (MY_ISCOFF): Treat import/export files as valid
+ XCOFF files.
+ (read_only_data_section, private_data_section,
+ read_only_private_data_section): Always align CSECTs to doubleword
+ boundary regardless of mode.
+ (TEXT_SECTION_ASM_OP): Align text CSECT on doubleword boundary in
+ 64-bit mode.
+ (DATA_SECTION_ASM_OP): Always align CSECT to doubleword boundary.
+ (ASM_OUTPUT_LOCAL): Use rounded size in 64-bit mode to
+ maintain doublword alignment.
+
+Mon May 3 14:45:23 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.md (btst insns): btst does not leave cc0 in a usable
+ state for redundant tst eliminatino.
+ * mn10300.md (btst insns): Likewise.
+
+Mon May 3 16:14:32 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.h (Pmode): Revert Oct 14th change which added a cast.
+
+Sun May 2 14:02:21 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.h (struct tree_decl): Add comdat_flag.
+ (DECL_COMDAT): Define it.
+ * toplev.c (wrapup_global_declarations): Don't output a
+ DECL_COMDAT function just because it's public.
+
+Sun May 2 15:16:42 1999 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * pdp11.h (TARGET_SWITCHES): Fix error in previous change.
+ (ASSEMBLER_DIALECT): Define.
+ (CONDITIONAL_REGISTER_USAGE): Rename floating point registers if
+ required for the UNIX assembler.
+ (ASM_OUTPUT_INT): Remove. The compiler will synthesize it.
+ (ASM_OUTPUT_ADDR_VEC_PROLOGUE): Remove.
+ (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Change to "[" and "]".
+ (TRAMPOLINE_TEMPLATE): Use ASM_OUTPUT_SHORT.
+ * pdp11.c (output_addr_const_pdp11): Copy of output_addr_const
+ adapted to output constants in octal.
+ * pdp11.c, pdp11.h, pdp11.md: Use output_addr_const_pdp11 instead
+ of output_addr_const. Output constants in octal. Use assembler
+ dialect alternatives where DEC and UNIX assemblers use different
+ instruction names.
+
+Sun May 2 01:15:06 PDT 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Fri Apr 30 13:55:43 1999 Richard Henderson <rth@cygnus.com>
+
+ * va-ppc.h (__va_start_common): Let __builtin_saveregs do the work.
+ * rs6000.c (expand_builtin_saveregs): For V4, initialize a private
+ va_list struct, and return a pointer to it.
+ (setup_incoming_varargs): V4 save area based off virtual_stack_vars
+ instead of frame_pointer.
+
+Thu Apr 29 23:02:22 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * emit-rtl.c (start_sequence): Expand comments.
+ (start_sequence_for_rtl_expr): Likewise.
+ (push_to_sequence): Likewise.
+ (end_sequence): Likewise.
+ * expr.c (inhibit_defer_pop): Likewise.
+ * expr.h (inhibit_defer_pop): Likewise.
+ (NO_DEFER_POP): Likewise.
+ (OK_DEFER_POP): Likewise.
+
+Thu Apr 29 22:13:46 1999 Robert Lipe <robertlipe@usa.net>
+
+ * configure.in (i?86-UnixWare7*-sysv): Set thread_file to 'posix'
+ --enable-threads[={yes,pthreads,posix}] is passed as a command
+ line parameter to configure.
+ * config/i386/sysv5.h (LIB_SPEC): Add support for '-pthread'.
+ (CPP_SPEC): Likewise.
+
+Thu Apr 29 17:23:59 1999 Richard Henderson <rth@cygnus.com>
+
+ * emit-rtl.c (operand_subword): Religiously mask and sign-extend
+ from 32-bits to HOST_WIDE_INT.
+
+Thu Apr 29 15:58:52 1999 Robert Lipe <robertlipe@usa.net>
+
+ * fixinc/regex.c, fixinc/regex.h: Removed. Replace with...
+ * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Imported from GDB 4.18.
+ * fixinc/Makefile.in (OBJ, HDR): Handle name changes from above.
+ (gnu-regex.o): Define REGEX_MALLOC to avoid memory leak.
+ * fixinc/fixincl.c: new regex.h header name
+ * Makefile.in: new regex.[ch] file names
+
+Thu Apr 29 12:53:33 1999 Richard Henderson <rth@cygnus.com>
+
+ * calls.c (emit_call_1): Pass rounded_stack_size to emit_call
+ instead of the unrounded size.
+
+1999-04-28 14:40 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixinc/mkfixinc.sh: Makesure the result shell script is writable
+
+Wed Apr 28 10:36:39 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * config/m68k/m68k.md (cmpsi+1): Use cmp.w when comparing a 16 bit
+ constant with an address register.
+
+Wed Apr 28 00:14:41 PDT 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Tue Apr 27 19:50:25 EDT 1999 Andrew MacLeod <amacleod@cygnus.com>
+
+ * rtl.h (REG_EH_REGION): Update comment to indicate a value of -1
+ indicates no throw and no nonlocal gotos.
+ * optabs.c (emit_libcall_block): Emit REG_EH_REGION with a value
+ of -1 instead of 0 to indicate a nonlocal goto won't happen either.
+ * flow.c (count_basic_blocks, find_basic_blocks_1): Ignore libcall
+ blocks, look for REG_EH_REGION note exclusively.
+ (make_edges): Check for REG_EH_REGION > 0 for specified handlers.
+
+Tue Apr 27 15:33:42 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.h (read_only_data_section, private_data_section,
+ read_only_private_data_section, toc_section): Align CSECT on
+ doubleword boundary for 64-bit target.
+ (DATA_SECTION_ASM_OP): Likewise.
+ * rs6000.c (rs6000_stack_info): Leaf procedure stack limit is 288.
+
+Tue Apr 27 20:19:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (insv): Use copy_addr_to_reg.
+
+ * final.c (insn_lengths_max_uid): New variable.
+ (init_insn_lengths, shorten_branches): Set it.
+ (get_attr_lengths): Test insn uid against insn_lengths_max_uid.
+
+1999-04-27 08:32 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * expr.c (emit_move_insn_1): Abort if MODE argument is invalid.
+ (compare): Punt if TREE_OPERAND (exp, 0) is an ERROR_MARK.
+
+Tue Apr 27 01:33:43 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (ORDINARY_FLAGS_TO_PASS): Renmaed from FLAGS_TO_PASS.
+ Remove "CC".
+ (FLAGS_TO_PASS): New variable.
+
+Tue Apr 27 00:36:44 1999 Nick Burrett <nick.burrett@btinternet.com>
+
+ * arm.md (nop): Output instruction using output_asm_insn to fix
+ assembler dialect problems.
+
+Mon Apr 26 23:55:50 1999 Robert Lipe <robertlipe@usa.net>
+
+ * Makefile.in (fixinc.sh): Fix dependencies.
+
+ * fixinc/inclhack.def (avoid_bool): Enable match if typedefs are
+ prepended by spaces.
+ (sco5_stat_wrappers): New fix. Make sys/stat.h C++ safe.
+ * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
+
+Mon Apr 26 23:28:54 1999 Mumit Khan <khan@xraylith.wisc.edu>
+ Donn Terry <donn@interix.com>
+
+ * function.c (put_var_into_stack): Change ptr_mode to Pmode
+ in setup for chkr_set_right_libfunc calls.
+ (assign_params): Likewise.
+ * expr.c (emit_push_insn): Change ptr_mode to Pmode in
+ setup for chkr_copy_bitmap_libfunc and chkr_set_right_libfunc calls.
+ (expand_assignment): Change ptr_mode to Pmode in
+ setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc.
+ (store_expr): Change ptr_mode to Pmode in
+ setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc.
+ (expand_expr): Change ptr_mode to Pmode in
+ setup for chkr_check_addr_libfunc.
+ (expand_builtin): Change ptr_mode to Pmode in
+ setup for chkr_check_str_libfunc, chkr_copy_bitmap_libfunc and
+ chkr_check_addr_libfunc.
+ * calls.c (rtx_for_function_call): Change ptr_mode to Pmode in
+ setup for chkr_check_exec_libfunc.
+ (expand_call): Change ptr_mode to Pmode in
+ setup for chkr_set_right_libfunc.
+ (expand_call): Change ptr_mode to Pmode in
+ setup for chkr_set_right_libfunc.
+ (store_one_arg): Change ptr_mode to Pmode in
+ setup for chkr_set_right_libfunc.
+
+ * c-parse.in (absdcl1): Allow attributes in explicit typespecs.
+ (%expect): Update.
+ * c-parse.y: Regenerate.
+ * c-parse.c: Likewise.
+ * objc/objc-parse.c: Likewise.
+ * objc/objc-parse.y: Likewise.
+
+Mon Apr 26 21:17:41 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * c-pragma.c (push_alignment): Don't ignore alignments greater than
+ 4 bytes.
+ (handle_pragma_token): Likewise.
+
+ * c-pragma.c: Support for #pragma pack (push, <id>, <n>).
+ (struct align_stack): Add id field.
+ (push_alignment, pop_alignment): Take id parameter.
+ (handle_pragma_token): Add necessary states.
+ * c-pragma.h (enum pragma_state): Add necessary states.
+
+Tue Apr 27 13:58:23 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (*cmpqf, *cmpqf_noov, *cmpqi_test,
+ *cmpqi_test_noov): Remove ? modifier from constraints list.
+ (*smulqi3_highpart_clobber, *umulqi3_highpart_clobber): Swap
+ output strings to match new constraint ordering.
+
+1999-04-26 19:16 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpphash.c (dump_definition): New function.
+ * cpphash.h: Prototype it.
+
+ * cpplib.c (handle_directive): Don't output anything here.
+ Streamline.
+ (pass_thru_directive): Take a length, not a pointer to the
+ end. All callers changed.
+ (do_define): Handle -dD, -dN, -g3 entirely here. Streamline.
+ (do_include): Handle -dI here.
+ (do_ident): Correct to match cccp.
+ (do_pragma): Copy the pragma through here.
+ (do_assert, do_unassert): Tidy.
+
+ * cppinit.c (cpp_finish): If -dM was specified, walk the macro
+ hash table and call dump_definition on all the entries.
+ * cppmain.c: cpp_finish may produce output.
+
+Mon Apr 26 15:27:33 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * toplev.c (compile_file): Move call to check_global_declarations
+ after output_exception_table to restore behavior as it was before
+ 1999-04-22 change.
+
+1999-04-26 10:50 -0700 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixinc/fixincl.c: Improve the handling of child process exits
+ * fixinc/server.[ch]: Export the interface for shutting down
+ the server process
+ * fixinc/inclhack.tpl: Remove unnecessary character quote
+ * fixinc/fixincl.sh, fixinc/inclhack.sh: Regenerate
+
+Mon Apr 26 10:41:42 EDT 1999 Andrew MacLeod <amacleod@cygnus.com>
+
+ * alpha.md (builtin_setjmp_receiver): Use a label_ref instead of
+ a code label.
+
+1999-04-26 09:47 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * rtl.texi: Document the rtl classes and their relation to
+ formats.
+
+Mon Apr 26 01:02:38 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (fix_trunc patterns): Use reg_no_subreg_operand on op0
+ for less work in reload.
+ (movsf and movdf patterns): Put fp reg alternatives first.
+
+Mon Apr 26 01:55:56 1999 Marc Espie <espie@cvs.openbsd.org>
+
+ * configure.in (openbsd): Factorize xmake_file.
+ (ix86 openbsd): Trim obsolete comment.
+ (vax openbsd): Fix typo.
+ * configure: Rebuilt.
+
+Mon Apr 26 01:30:59 1999 Donn Terry <donn@interix.com>
+
+ * expr.c (expand_assignment): Improve test for pointer type.
+
+Mon Apr 26 00:26:18 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (print_operand_address): Account for the subreg word.
+
+Mon Apr 26 01:08:36 1999 Toshiyasu Morita (tm@netcom.com)
+
+ * fold-const.c (make_range): Always initialize arg0 and arg1.
+ (fold): Similarly for alt0 and alt1.
+ * function.c (fixup_var_refs_insns): Initialize insn_list.
+ (instantiate_virtual_regs_1): Initialize offset.
+ * optabs.c (expand_binop): Initialize carry_in, carry_out, op0_xhigh
+ and op1_xhigh.
+ * stmt.c (expand_end_case): Initialize minval and maxval.
+
+Mon Apr 26 01:02:34 1999 Nathan Sidwell <nathan@acm.org>
+
+ * toplev.c (report_error_function): Reorder file stack and
+ function name printing. Ignore FILE parameter.
+
+Mon Apr 26 00:58:54 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * pa.h (architecture_type): New enum.
+ (pa_arch_string, pa_arch): Declare.
+ (MASK_PA_10, MASK_PA_20): New flags.
+ (TARGET_SWITCHES): Add pa-risc-2-0. Update docs for PA1.0 codegen.
+ (TARGET_OPTIONS): Add -march= option.
+ * pa.c (pa_arch, pa_arch_string): Define.
+ (override_options): Set them.
+ * pa/pa-hpux10.h (ASM_FILE_START): Output LEVEL 2.0 asm directive for
+ 2.0 architecture.
+ * invoke.texi (Option Summary, HPPA Options): Document new
+ architecture flags.
+
+ * pa/pa-hpux.h, pa/pa-hpux10.h, pa/pa-hpux9.h, pa/pa-osf.h, pa.h,
+ pa.c, pa.md, configure.in, configure: Replace TARGET_SNAKE by
+ TARGET_PA_11 and MASK_SNAKE by MASK_PA_11.
+
+Mon Apr 26 00:28:25 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * flags.h (inline_max_insns): Declare.
+ * integrate.c (inline_max_insns): New variable.
+ (function_cannot_inline_p): Use it.
+ * toplev.c (main): Add the flag -finline-limit-n.
+ (display_help): Document -finline-limit-n.
+ * invoke.texi: Document -finline-limit-n
+
+Sun Apr 25 23:03:32 1999 Richard Henderson <rth@cygnus.com>
+
+ * stmt.c (expand_asm_operands): Reload in-out reg-only memory operands.
+
+Sun Apr 25 13:06:13 1999 Richard Henderson <rth@cygnus.com>
+
+ * function.c (assign_parms/STACK_BYTES): Revert last change,
+ and that of 19 Nov.
+
+Sun Apr 25 12:30:50 1999 Richard Henderson <rth@cygnus.com>
+
+ * calls.c (emit_call_1): New arg rounded_stack_size; update callers.
+ Update pending_stack_adjust based on this value.
+ (compute_argument_block_size): Include pending_stack_adjust in
+ PREFERRED_STACK_BOUNDARY alignment.
+ * function.c (assign_parms): Don't round to PREFERRED_STACK_BOUNDARY.
+
+Sun Apr 25 14:38:10 EDT 1999 John Wehle (john@feith.com)
+
+ * stupid.c (stupid_mark_refs): Generate a REG_UNUSED note
+ for a register which is clobbered even if the register
+ was used by an earlier instruction.
+
+ * i386.md (fix_truncsfdi2, fix_truncdfdi2,
+ fix_truncxfdi2): Don't bother with the gen_reg_RTX.
+ (fix_truncsfsi2, fix_truncsfdi2, fix_truncdfsi2,
+ fix_truncdfdi2, fix_truncxfsi2, fix_truncxfdi2): Update
+ operand constraints and modes.
+ * i386.c (output_fix_trunc): Use HImode register to avoid
+ memory stalls. Call output_move_double instead of output_to_reg.
+ (output_to_reg): Remove.
+ * i386.h: Likewise.
+
+ * i386.md (negsf2, negdf2, negxf2): Set the type
+ attribute to fpop.
+
+Sat Apr 24 23:15:57 1999 Donn Terry (donn@interix.com)
+
+ * alpha.md (call_value_nt): Correct subscripts.
+
+Sat Apr 24 20:49:20 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (PRINT_OPERAND_ADDRESS): Break out to ...
+ * alpha.c (print_operand_address): here. Handle subregs.
+
+Fri Apr 23 22:35:41 EDT 1999 John Wehle (john@feith.com)
+
+ * acconfig.h (HAVE_GAS_FILDS_FISTS): Add.
+ * configure.in: Check assembler instructions.
+ * configure: Rebuild.
+ * config.in: Likewise.
+ * i386.md (floathisf2, floathidf2, floathixf2): New patterns.
+ * i386.c (print_operand): Use the proper suffix for a 387 HImode
+ operand. Abort if a 387 operand has an unsupported size.
+
+Fri Apr 23 16:57:40 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_write_verstamp): Mark `file' unused.
+ * alpha.h (FUNCTION_VALUE): Use gen_rtx_REG not gen_rtx.
+ (LIBCALL_VALUE): Likewise.
+ (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Handle normal subregs.
+
+Fri Apr 23 14:57:33 1999 Donn Terry <donn@interix.com>
+
+ * alpha32.h (INITIALIZE_TRAMPOLINE): Get offsets right.
+
+ * alpha.c (alpha_initialize_trampoline): Add covert_memory_address
+ calls as needed.
+
+Fri Apr 23 14:36:47 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_prologue): Don't negate frame size
+ for use with subq.
+
+Fri Apr 23 09:43:18 1999 Nick Clifton <nickc@cygnus.com>
+
+ * print-rtl.c (print_rtx): Display LABEL_NUSES for labels.
+
+Thu Apr 22 23:08:37 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * toplev.h (wrapup_global_declarations): Declare.
+ (check_global_declarations): Likewise.
+ * toplev.c (wrapup_global_declarations): New function, split out
+ from ...
+ (check_global_declarations): Likewise...
+ (compile_file): Here.
+
+Thu Apr 22 22:34:41 1999 Richard Henderson <rth@cygnus.com>
+
+ * c-parse.in (expr_no_commas): Verify we've an expr before
+ calling C_SET_EXP_ORIGINAL_CODE.
+
+Thu Apr 22 22:22:15 EDT 1999 John Wehle (john@feith.com)
+
+ * toplev.c (rest_of_compilation): Always set
+ current_function_uses_only_leaf_regs appropriately.
+
+Thu Apr 22 14:39:43 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * i386/xm-cygwin.h (HAVE_BCOPY): Delete unneeded macro.
+ (HAVE_BZERO): Likewise.
+ (HAVE_BCMP): Likewise.
+ (HAVE_RINDEX): Likewise.
+ (HAVE_INDEX): Likewise.
+ (DIR_SEPARATOR_2): Define.
+ (GET_ENV_PATH_LIST): Turn path lists into POSIX.
+ (PATH_SEPARATOR): Use ':'.
+
+1999-04-22 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * configure.in: enable disabling of fast fixincludes
+ * configure: regenerate
+
+1999-04-21 14:55 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * gen-protos.c: #undef abort after including system.h.
+ Delete defns of fancy_abort and fatal.
+ * fix-header.c: Delete defn of fancy_abort.
+
+Wed Apr 21 12:09:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * cccp.c (simplify_filename): Always preserve leading double slash.
+
+Wed Apr 21 18:15:55 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md: Add new peepholes to remove redundant loads.
+
+Wed Apr 21 17:41:29 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (binary patterns): Reorder alternatives
+ so that two operand instructions are chosen before three operand
+ instructions.
+
+Tue Apr 20 23:38:58 1999 Nathan Sidwell <nathan@acm.org>
+
+ * objc/Make-lang.in (objc-parse.c): Put BISON parameters in correct
+ order.
+
+ * Makefile.in (c-parse.c): Put BISON parameters in correct
+ order.
+
+Tue Apr 20 16:38:11 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (nt_lda): New pattern.
+ * alpha.c (alpha_expand_prologue): Use it for large frames
+ under windows nt.
+
+Tue Apr 20 17:57:14 1999 Catherine Moore <clm@cygnus.com>
+
+ * config/arm/arm.md (movhi): Add check for odd offset.
+
+Tue Apr 20 13:14:58 EDT 1999 John Wehle (john@feith.com)
+
+ * i386.c (output_move_double): Abort if a non-offsettable
+ memory operand is encountered. Delete unused code.
+ (find_addr_reg): Remove.
+
+Mon Apr 19 21:13:02 1999 Craig Burley <craig@jcb-sc.com>
+
+ * tree.def (BLOCK): Fix typo in comment.
+
+1999-04-19 14:51 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpplib.c (output_line_command): Drop CONDITIONAL argument.
+ We can omit unnecessary line commands if file_change ==
+ same_file and pfile->lineno != 0. All callers changed.
+ (cpp_get_token [case '\n']): Don't bump pfile->lineno if
+ CPP_OPTIONS (pfile)->no_line_commands is set.
+ * cpplib.h: Fix prototype of output_line_command.
+
+1999-04-18 17:46 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppfiles.c (find_position, read_and_prescan): Use `unsigned
+ long' variables consistently to count line and column numbers.
+
+Sun Apr 18 15:50:33 EDT 1999 John Wehle (john@feith.com)
+
+ * output.h (current_function_is_leaf,
+ current_function_uses_only_leaf_regs): Declare.
+ * function.c (current_function_is_leaf,
+ current_function_uses_only_leaf_regs): Define.
+ (init_function_start): Initialize current_function_is_leaf
+ and current_function_uses_only_leaf_regs.
+ * final.c (leaf_function): Don't define.
+ (final_start_function): Replace uses of leaf_function with
+ current_function_uses_only_leaf_regs.
+ * toplev.c (rest_of_compilation): Set current_function_is_leaf
+ prior to invoking local register allocation.
+ (rest_of_compilation): Replace uses of leaf_function with
+ current_function_uses_only_leaf_regs.
+ * dbxout.c (dbxout_symbol, dbxout_parms): Likewise.
+ * dwarf2out.c (add_location_or_const_vaule_attribute): Likewise.
+ * dwarfout.c (add_location_or_const_value_attribute): Likewise.
+ * sdbout.c (sdbout_symbol): Likewise.
+ * sparc.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise.
+ * sparc.c (eligible_for_epilogue_delay, output_return,
+ sparc_return_peephole_ok): Likewise.
+ * sparc.md (leaf_function attribute, untyped_return): Likewise.
+ * i386.c (ix86_compute_frame_size): Don't align the stack
+ for leaf functions which don't allocate any stack slots.
+ * tm.texi: Update documentation.
+
+Sun Apr 18 02:15:09 PDT 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Apr 18 00:08:45 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change --
+ make sure FP_BASE_P registers are only used with an integer.
+
+Sat Apr 17 22:54:17 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (REG_OK_FP_BASE_P): New macro.
+ (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Use it.
+ * alpha.md (adddi3+1): New insn to handle large constants off
+ the soft frame pointer.
+ (adddi3+2): Don't split soft frame pointer or arg pointer additions.
+
+Sun Apr 18 17:24:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (legitimize_operands): Use rtx_cost
+ to determine if it is worthwhile forcing a constant into a register.
+ * config/c4x/c4x.h (CONST_COSTS): An integer value of 255 or 65535
+ used with a logical and or an integer value of 16 or 24 used with
+ a right shift has zero cost on the C40.
+
+Sat Apr 17 21:30:11 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+
+ * gcse.c (compute_local_properties): If setp is nonzero, clear
+ TRANSP instead of setting it to all ones.
+
+Sat Apr 17 21:10:10 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.c (i386_preferred_stack_boundary_string): New global variable.
+ (i386_preferred_stack_boundary): New global variable.
+ (override_functions): Set it. Tidy option setting code.
+ * i386.h (TARGET_OPTIONS): New command line option.
+ (i386_preferred_stack_boundary_string): Declare it.
+ (i386_preferred_stack_boundary): Likewise.
+ (PREFERRED_STACK_BOUNDARY): Use i386_preferred_stack_boundary.
+
+Sat Apr 17 19:22:38 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.c (k6_cost): Take into account the decoding time.
+
+Sat Apr 17 19:13:22 1999 Donn Terry <donn@interix.com>
+
+ * i386.h (PRINT_OPERAND_PUNCT_VALID_P): Allow _.
+ * i386.c (print_operand): New %_ operator.
+ (load_pic_register): Proper number of leading _ in GOT literal.
+ * i386.md (prologue_get_pc_and_set_got): Likewise.
+ * i386/unix.h (ASM_OUTPUT_MI_THUNK): Likewise.
+
+Sat Apr 17 19:13:07 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (alpha_expand_prologue): Use gen_adddi3 instead of
+ emit_move_insn+plus_constant. For NT, don't use the stack probe
+ loop pointer to allocate stack space.
+ * alpha.md (adddi3): Always use lda to set the stack pointer.
+
+1999-04-17 20:11 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * c-aux-info.c, emit-rtl.c, explow.c, expmed.c, gcse.c,
+ haifa-sched.c, optabs.c, reorg.c, resource.c, sched.c: Include
+ toplev.h for real declaration of trim_filename.
+ * Makefile.in: Update dependencies.
+
+Sat Apr 17 14:36:19 1999 Craig Burley <craig@jcb-sc.com>
+
+ * tree.c (chainon): Check for circularity only if
+ ENABLE_CHECKING is defined.
+
+1999-04-17 10:15 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cccp.c: Make fatal non-static.
+
+Sat Apr 17 23:47:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (*andqi3_255_clobber,*andqi3_65535_clobber):
+ New logical and patterns using C40 bit-field insert instructions.
+ (*lshrqi3_24_clobber,*ashrqi3_24_clobber,*lshrqi3_16_clobber,
+ *ashrqi3_16_clobber): New shift patterns using C40 bit-field insert
+ instructions.
+
+1999-04-16 22:44 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * system.h: Always prototype abort. Prototype fatal. Define
+ abort to call fatal, not fprintf/exit. Define a stub macro
+ for trim_filename.
+ * toplev.c: Define DIR_SEPARATOR. (trim_filename): New
+ function.
+ * toplev.h: Prototype trim_filename, and #undef system.h's stub.
+
+ * gcc.c, genattr.c, genattrtab.c, gencodes.c, genconfig.c,
+ genemit.c, genextract.c, genflags.c, genopinit.c, genoutput.c,
+ genpeep.c, genrecog.c: Make fatal non-static.
+ * gcov.c, gengenrtl.c, protoize.c: #undef abort after
+ including system.h.
+
+ * config/i386/dgux.h, config/m68k/xm-amix.h: Remove stale code
+ relating to abort.
+
+Sat Apr 17 11:25:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (mulqf3_clrqf_clobber, mulqi3_clrqi_clobber):
+ New patterns to support parallel multiply and load of zero.
+
+Fri Apr 16 01:23:47 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.c (valid_machine_attribute): If we're modifying the
+ FUNCTION_TYPE within a POINTER_TYPE and we don't get a decl,
+ update the POINTER_TYPE.
+
+Fri Apr 16 00:19:31 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.c (x86_adjust_cost): Move break statement to correct place.
+
+Thu Apr 15 23:17:33 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * pa.h (HAVE_PRE_INCREMENT, HAVE_POST_INCREMENT,
+ HAVE_PRE_DECREMENT, HAVE_POST_DECREMENT): Fix pa_cpu value from
+ 8000 to PROCESSOR_8000.
+
+Thu Apr 15 20:46:57 1999 Donn Terry (donn@interix.com)
+
+ * expr.c (expand_assignment): Force pointers to proper mode if
+ POINTERS_EXTEND_UNSIGNED is defined.
+
+ * xm-alpha.h (alloca.h): Add Interix to list of special machines
+ that don't like alloca.h, pending using autoconf results.
+
+ * except.c (start_catch_hadler): Be sure rtime_address is Pmode
+ if POINTERS_EXTEND_UNSIGNED.
+
+ * except.c (expand_eh_return): Force pointers to proper mode if
+ POINTERS_EXTEND_UNSIGNED.
+
+Thu Apr 15 23:13:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h: Tweaked comment formatting.
+ * config/c4x/c4x.c: Likewise.
+
+Thu Apr 15 02:45:19 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * aclocal.m4 (GCC_FUNC_MKDIR_TAKES_ONE_ARG): Define.
+ * configure.in: Use.
+ * configure: Rebuilt.
+ * acconfig.h (MKDIR_TAKES_ONE_ARG): Add.
+ * config.in: Rebuilt.
+ * system.h: Use.
+
+Thu Apr 15 01:03:21 1999 Jan Hubicka <hubicka@freesoft.cz>
+ Jeff Law <law@cygnus.com>
+
+ * i386.md (QImode add pattern): Support lea instruction.
+ (HImode add pattern): Likewise.
+
+ * i386.md (ashlsi patterns): Call output_ashl instead of output_ashlsi3.
+ (ashlqi): Use expander, separate LEA and SAL / ADD patterns; call
+ output_ashl.
+ (ashlhi): Likewise.
+ * i386.h (output_ashl): Renamed from output_ashlsi3.
+ * i386.c (output_ashl): Likewise; support HImode and QImode operands
+ as well.
+
+ * i386.md (notsi, nothi, xorsi, xorhi, and xorqi patterns): Call
+ memory_address_displacement_length instead of memory_address_length.
+ * i386.c (memory_address_info): Renamed from memory_address_length.
+ Accept new argument DISP_LENGTH. All callers changed. If DISP_LENGTH,
+ then return the displacement length. Else return length of the
+ entire memory address. Handle MULT case correctly.
+ * i386.h (memory_address_info): Update declaration.
+
+ * i386.md (memory_bit_test): Fix paren error.
+
+Wed Apr 14 21:29:18 1999 Andrew Haley <aph@cygnus.com>
+
+ * flow.c: (make_edges): Always make edges from a basic block
+ to its exception handlers, even if the block ends with a jump.
+
+1999-04-14 23:26 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * graph.c (node_data): Return void. Ignore result of
+ print_rtl_single. Change caller to match.
+ * integrate.c (subst_constants): Initialize op0_mode to an
+ invalid mode, and abort before use if it's still invalid.
+ (Can only happen if the RTX_CLASS, RTX_FORMAT tables are corrupted.)
+ * objc/objc-act.c (get_objc_string_decl,
+ build_selector_translation_table, generate_protocol_list,
+ synth_id_with_class_suffix, build_keyword_selector,
+ build_selector_expr, gen_declarator): Abort when the tree
+ structure is corrupted.
+
+Wed Apr 14 19:57:49 1999 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (alpha interix): Use symbolic names to set
+ target_cpu_default.
+ * configure: Rebuilt.
+
+ * explow.c (allocate_dynamic_stack_space): Undo last change. Use
+ convert_memory_address instead.
+
+Wed Apr 14 19:42:02 1999 Donn Terry (donn@interix.com)
+
+ * alpha/lib1funcs.asm: New file.
+ * alpha/t-interix (lib1funcs.asm): Add to build.
+
+ * explow.c (allocate_dynamic_stack_space): Correctly convert TARGET
+ to Pmode.
+
+Wed Apr 14 14:26:36 1999 John Wehle (john@feith.com)
+
+ * i386.md (truncxfdf): Output the template supplied
+ by output_move_double with the correct operands.
+
+ * i386.md (extendsfdf, extendsfxf, extenddfxf): Use
+ output_float_extend instead specifying '#' as the template.
+ * i386.c (output_float_extend): Define.
+ * i386.h (output_float_extend): Declare.
+
+Wed Apr 14 10:48:03 1999 Catherine Moore <clm@cygnus.com>
+
+ * config/mips/elf.h, config/mips/elf64.h
+ (CTORS_SECTION_ASM_OP): Define.
+ (DTORS_SECTION_ASM_OP): Define.
+ (EXTRA_SECTIONS): Define.
+ (INVOKE__main): Define.
+ (NAME__MAIN): Define.
+ (SYMBOL__MAIN): Define.
+ (EXTRA_SECTIONS_FUNCTIONS): Define.
+ (SECTION_FUNCTION_TEMPLATE): Define.
+ (ASM_OUTPUT_CONSTRUCTOR): Define.
+ (ASM_OUTPUT_DESTRUCTOR): Define.
+ (CTOR_LIST_BEGIN): Define.
+ (CTOR_LIST_END): Define.
+ (DTOR_LIST_BEGIN): Define.
+ (DTOR_LIST_END): Define.
+ (LIB_SPEC): Define.
+ (STARTFILE_SPEC): Define.
+ (ENDFILE_SPEC): Define.
+ * config/mips/linux.h: Undefine all of the above.
+ * config/mips/rtems64.h: Likewise.
+ * config/mips/t-r3900: Likewise.
+ * config/mips/t-elf: New file.
+ * config/mips/vxworks.h: New file.
+ * configure.in (mips-wrs-vxworks): Use mips/vxworks.h.
+ (mips*-*-*elf*): Use t-elf instead of t-ecoff.
+ * configure: Regenerate.
+
+Wed Apr 14 09:59:38 1999 Richard Henderson <rth@cygnus.com>
+
+ * reload1.c (emit_reload_insns): Also find equivalent mems
+ for subregs of pseudos.
+
+ * alpha.c (aligned_memory_operand): Recognize the output of
+ LEGITIMIZE_RELOAD_ADDRESS. Examine reg_equiv_memory_loc in
+ the event of a pseudo.
+ (unaligned_memory_operand): Likewise. Don't otherwise accept
+ completely illegal addresses.
+ (normal_memory_operand): Likewise. Handle subregs of pseudos.
+ (get_aligned_mem): Revert previous change. Abort if we don't have a
+ mem. During reload, call find_replacement on all illegal memories.
+ (get_unaligned_address): Likewise.
+ * alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Use !aligned_memory_operand
+ instead of unaligned_memory_operand.
+ * alpha.md: Revert extra argument to get_aligned_mem.
+ (reload_inqi): Use any_memory_operand in constraints. Abort if
+ we're not given some sort of mem.
+ (reload_inhi): Likewise.
+ (reload_outqi, reload_outhi): Likewise.
+
+Wed Apr 14 09:39:20 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386.md (neghi): Use the whole register when widening the op.
+
+1999-04-14 12:37 -0400 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpperror.c, cppexp.c, cpplib.c: Never call abort.
+ * cpphash.c: Only call abort when we detect corruption of the
+ malloc arena.
+ * cppmain.c: Don't define fatal or fancy_abort.
+
+Wed Apr 14 09:19:39 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.c (x86_adjust_cost): Agi stall takes 1 cycle on Pentium, fst
+ requires value to be ready one extra cycle.
+
+Wed Apr 14 11:28:34 1999 Dave Brolley <brolley@cygnus.com>
+
+ * config/i386/i386.c (memory_address_length): Add missing parenthesis.
+
+Wed Apr 14 13:59:27 1999 Martin von Loewis <loewis@informatik.hu-berlin.de>
+
+ * extend.texi (Deprecated Features): New node.
+ * invoke.texi (-Wdeprecated): Document.
+
+Wed Apr 14 00:18:22 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.md (SImode logical compare): Avoid outputting non-pariable testw
+ and testl on Pentium.
+ (register and memory bit tests): Likewise.
+ (setcc, normal and reversed conditional branches): Use shorter
+ sequence for testing flags stored in EAX.
+
+ * i386.md (xorsi3): Do not output NOT instrctions on Pentium.
+ (xorqi3): Likewise.
+ (xorhi3): Likewise.
+ (notsi2): Likewise.
+ (notqi2): Likewise.
+ (nothi2): Likewise; do not output prefixed opcodes when possible.
+
+ * i386.md (neghi2): Do not output prefixed opcode when possible.
+ (ashlhi3): Likewise.
+
+Wed Apr 14 00:08:46 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386.c (memory_address_length): New function.
+ * i386.h (memory_address_length): Declare it.
+
+Tue Apr 13 22:52:04 1999 Donn Terry (donn@interix.com)
+ Martin Heller (Ing.-Buero_Heller@t-online.de)
+
+ * configure.in (interix Alpha): Add.
+ (winnt Alpha): Use alpha32.h
+ (interix i386): Parallel Alpha32.
+ * configure: Rebuilt.
+
+ * config/interix.h: Move common elements from i386-interix.h.
+ * config/i386/i386-interix.h: Delete same.
+ * config/alpha/alpha-interix.h: New file.
+
+ * config/alpha/alpha32.h: New file, part fron win-nt.h.
+ * config/alpha/win-nt.h: Deletions (-> alpha32.h).
+ * config/alpha/interix.h: New file
+
+ * config/alpha/alpha.md (interix): Comment.
+
+ * config/alpha/xm-alpha-interix.h: New file.
+
+ * config/alpha/t-interix: New file.
+
+ * fixinc/mkfixinc.sh (interix/Alpha): Add.
+
+1999-04-13 Mike Stump <mrs@wrs.com>
+
+ * i386/vxi386.h (CPP_CPU_SPEC): Define appropriately for vxworks.
+ (CPP_PREDEFINES, LIB_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): likewise.
+
+Tue Apr 13 21:01:36 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * c-common.c (default_valid_lang_attribute): New fn.
+ (valid_lang_attribute): New callback ptr.
+ (decl_attributes): Call it. Move init_priority support into
+ C++ frontend.
+
+Tue Apr 13 17:47:14 1999 John Wehle (john@feith.com)
+
+ * i386.md (movdi): Add splitter.
+
+Wed Apr 14 10:04:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (storeqf_int, storeqf_int_clobber, loadqf_int,
+ loadqf_int_clobber): Add new patterns with corresponding splitters
+ to handle moves of floating point values into and out of intager
+ registers by using memory.
+
+ * config/c4x/c4x.c (c4x_check_legit_addr): Disallow PRE_INC for modes
+ other than QFmode and QImode.
+ (mixed_subreg_operand): New function.
+ (c4x_emit_move_sequence): If moving a floating point value into or
+ out of an integer register, use the new patterns storeqf_int_clobber
+ or loadqf_int_clobber.
+ (reg_imm_operand, *_reg_operand): Call reg_operand instead of
+ register_operand.
+ (reg_operand, src_operand): Disallow operand if it satisifes
+ mixed_subreg_operand.
+
+ * config/c4x/c4x.h (mixed_subreg_operand): Add prototype.
+
+Tue Apr 13 14:49:13 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.c (agi_dependent): Handle push operation more correctly.
+
+Tue Apr 13 14:45:17 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.md (anddi3): Add % constraint.
+ (iordi3, xordi3): Likewise.
+
+Tue Apr 13 14:29:58 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.md (extendhisi2): Output mov instead of cw instruction for K6
+ to improve decoding bandwidth.
+ * i386.md (extendhiqi2): Likewise.
+
+Tue Apr 13 14:26:31 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.md (movsf_push): Handle memory to memory case too, new splitter.
+ (movdf_push, movxf_push): Likewise.
+ (movsf_push_memory, movdf_push_memory, movxf_push_memory): Remove.
+
+Tue Apr 13 14:14:06 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * i386.md: Do not output mov %0,reg on AMD K6.
+
+Tue Apr 13 12:14:07 1999 Dave Brolley <brolley@cygnus.com>
+
+ * cppinit.c (cpp_start_read): Fix buffer overwrite.
+ * Makefile.in (cppinit.o): Typo in dependencies.
+
+Tue Apr 13 05:04:59 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.h (function prototypes for arm.c): Ifdef these out if
+ HAVE_CONFIG_H is not defined.
+
+Tue Apr 13 02:11:11 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c: Avoid Using immediate zero for register zero.
+ * pa.md: Likewise.
+
+ * pa.c (print_operand, case 'f'): New case for FP register or 0.0.
+ (print_operand, case 'r'): Use %r0 for zero value.
+ * pa.md (move patterns, fcmp patterns): Use new %f output arg.
+
+ * pa.c: Use a register name, not a raw immediate in branch,
+ compare/clear, sub, subb, uaddcm and vshd instructions.
+ * pa.md: Likewise.
+
+ * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
+
+ * pa.c: Use a register name, not a raw immediate in "bv" instructions.
+ * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
+
+ * pa.c: Remove space register specification in memory addresses,
+ except where it is actually needed.
+ * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
+
+Mon Apr 12 23:34:35 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Apr 12 14:58:30 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * reg-stack.c (check_stack_regs_mentioned): Remove variable SIZE.
+
+Mon Apr 12 19:15:17 1999 Daniel Jacobowitz <dan@debian.org>
+
+ * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Add missing backslash.
+
+Mon Apr 12 19:11:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * i386/cygwin.h (SUBTARGET_SWITCHES): Add -mconsole; fix
+ -mno-nop-fun-dllimport and minor doc fixes.
+ (STARTFILE_SPEC): Cygwin DLLs don't have dllcrt0.
+ (LINK_SPEC): Add -mconsole support.
+ * i386/mingw32.h (LIB_SPEC): Make libraries consistent with
+ Cygwin.
+ (LINK_SPEC): Remove. Use Cygwin's version.
+ (MATH_LIBRARY): Make it null.
+ * i386/crtdll.h (MATH_LIBRARY): Likewise.
+
+Fri Apr 12 15:00:52 1999 Stan Cox <scox@cygnus.com>
+
+ * c-decl.c (c_decode_option, start_decl, start_function,
+ finish_function) : Recognize -Wno-main so we can avoid warnings.
+
+1999-04-12 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpphash.c (collect_expansion, macroexpand,
+ push_macro_expansion): Make the escape character in macro
+ buffers '\r', not '@'. Remove code to protect literal
+ occurrences of the escape character; '\r' cannot appear
+ in a macro buffer unless we put it there.
+ * cpplib.c (skip_comment, copy_comment, cpp_skip_hspace,
+ copy_rest_of_line, cpp_get_token, parse_string,
+ parse_assertion): '\r' might be a backslash-newline marker, or
+ it might be a macro escape marker, depending on
+ CPP_BUFFER (pfile)->has_escapes. '@' is not a special
+ character.
+ * cpplib.h: Update commentary.
+
+Mon Apr 12 09:30:03 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.h (target_fp_name, structure_size_string, arm_cpu_select):
+ Const-ify.
+ * arm.c (target_fp_name, structure_size_string): Const-ify.
+
+ * arm.md (reload_inhi, reload_outhi): Make the scratch DImode.
+ * arm.c (arm_reload_in_hi): Handle cases when the input is still
+ a pseudo, make use of scratch registers for reloading the address
+ as appropriate.
+ (arm_reload_outhi): Similarly for when the output is still a pseudo.
+
+ * riscix.h (SUBTARGET_SWITCHES): Document.
+
+1999-04-12 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixincludes:
+ make fixincludes behave like the scripts in fixinc/
+
+ * Makefile.in( stmp-fixinc ):
+ ensure the SHELL value is that of the make
+
+ * fixincl/inclhack.tpl:
+ the file name lists ought to be restricted to "*.h" anyway
+ C++ files may be named .../[a-z]++/... also
+ Adding copyright year and attribution to output
+
+ * fixincl/inclhack.def:
+ fixed broken expression
+ Clarify a some comments
+
+ * fixincl/fixincl.tpl:
+ Clarify a some comments
+ Remove dead template text
+ Correct the counting of regular expressions
+
+Mon Apr 12 03:07:44 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (aligned_memory_operand): Handle out of range stack slots.
+ Take a new SCRATCH argument for the occasion. Update all callers.
+ (get_unaligned_address): Abort on out of range stack slots.
+ * alpha.md (adddi3 splitter): Check s_p_rtx not REGNO.
+ (reload_inqi): Check for aligned mems before unaligned.
+ (reload_inhi): Likewise.
+
+Mon Apr 12 03:11:30 1999 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (flow_delete_insn): If we delete a CODE_LABEL, also remove
+ it from the nonlocal_goto_handler_labels list.
+ * jump.c (delete_insn): Likewise.
+ (jump_optimize_1): Also recompute LABEL_NUSES when we are just
+ marking labels.
+ * rtl.h (remove_node_from_expr_list): Declare.
+ * rtlanal.c (remove_node_from_expr_list): New function.
+
+Mon Apr 12 02:37:02 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * reg-stack.c: Update comment, include varray.h.
+ (stack_regs_mentioned_data): New global variable.
+ (check_stack_regs_mentioned): New function.
+ (stack_regs_mentioned): New function.
+ (reg_to_stack): Initialize and free stack_regs_mentioned_data,
+ use stack_regs_mentioned.
+ (record_asm_reg_life): Change insn type cache for changed insn.
+ (record_reg_life): Do not change the insn mode.
+ (emit_pop_insn): Likewise.
+ (emit_swap_insn): Likewise.
+ (move_for_stack_reg): Likewise.
+ (stack_reg_life_analysis): Use stack_regs_mentioned.
+ (emit_swap_insn): Likewise.
+ (subst_stack_regs): Likewise.
+ (convert_regs): Likewise.
+ * jump.c (find_cross_jump): Use stack_regs_mentioned.
+ * rtl.h (stack_regs_mentioned): Declare.
+
+Mon Apr 12 00:57:10 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * integrate.c (INTEGRATE_THRESHOLD): Sync it with the comment.
+
+Sun Apr 11 10:24:18 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * rtl.h (rtx_def): Update documentation for jump and call.
+
+Sun Apr 11 07:43:44 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * jump.c (jump_optimize_1): Make the definition static to match
+ the prototype.
+
+Sat Apr 10 22:51:53 1999 Jan Hubicka <hubicka@limax.paru.cas.cz>
+
+ * flow.c (life_analysis): New parameter remove_dead_code.
+ (life_analysis_1): Likewise.
+ (propagate_block): Likewise; use it.
+ * output.h: Update prototype.
+ * toplev.c: Update calls to life_analysis.
+
+Sat Apr 10 22:12:12 1999 Jan Hubicka <hubicka@freesoft.cz>
+
+ * recog.c (constrain_operands): Ignore unary operators when
+ matching operands. Recognize '5'..'9' as well.
+
+Sat Apr 10 21:53:02 1999 Philipp Thomas (kthomas@gwdg.de)
+ Richard Henderson <rth@cygnus.com>
+
+ * configure.in: Set target_cpu_default2 for target_alias k6.
+ * i386.h (TARGET_SWITCHES): Remove no-<cpu> entries.
+ (CC1_CPU_SPEC): Likewise.
+ (CPP_CPU_DEFAULT_SPEC): Streamline definition. Add K6 version.
+ (CPP_K6_SPEC): New.
+ (CPP_CPU_SPEC): Add K6 variant.
+ (EXTRA_SPECS): Likewise.
+
+Fri Apr 9 11:29:17 1999 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (merge_blocks_nomove): Rewrite to properly handle two
+ blocks that vanish entirely during merging.
+
+Sat Apr 10 20:09:55 1999 John Wehle (john@feith.com)
+
+ * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
+ floatsixf2, floatdixf2, movsicc, movhicc, movsfcc, movdfcc,
+ movxfcc, movdicc): Remove unused register constraints from
+ the splitters.
+
+ * i386.md (fixuns_truncsfsi2, fixuns_truncdfsi2,
+ fixuns_truncxfsi2): Delete.
+
+ * reg-stack.c (delete_insn_for_stacker): Ensure that
+ the only side effects of a PARALLEL are clobbers.
+ (subst_stack_regs): Handle subst_stack_regs_pat deleting
+ a PARALLEL.
+ * i386.md (extendsfdf2, extenddfxf2,
+ extendsfxf2): Rewrite using a splitter.
+ * i386.c (output_op_from_reg): Remove.
+ * i386.h: Likewise.
+
+Sat Apr 10 13:09:18 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (di_operand): Allow SUBREGs as well.
+ (soft_df_operand): Allow SUBREGs as well.
+
+Sat Apr 10 06:14:31 1999 Jan Hubicka <hubicka@paru.cas.cz>
+
+ * extend.texi (Assembler Instructions with C Expression Operands):
+ Document the i386 floating point operands.
+
+1999-04-10 Mike Stump <mrs@wrs.com>
+
+ * configure.in (*-*-vxworks): Add vxWorks thread support for all
+ vxWorks targets.
+ * configure.in (thumb-wrs-xvworks): Add vxWorks support for thumb.
+ * configure: Rebuilt.
+
+Sat Apr 10 06:04:50 1999 Donn Terry (donn@interix.com)
+
+ * i386/t-interix: Use mostly system headers unchanged.
+ Use system assert.h
+ * fixinc/fixinc.interix: Ditto (make almost no-op).
+ * config/x-interix.h (_ALL_SOURCE): add -D
+ * config/x-interix.h (crti.o): Delete dependency.
+ * config/xm-interix.h (ONLY_INT_FIELDS): Define only when bootstrapping.
+ * i386/xm-i386-interix.h: New file.
+ * i386/interix.h (ASM_OUTPUT_LIMITED_STRING): Fix warnings.
+ * i386/i386-interix.h: Renamed from interix.h.
+ * configure.in (interix): Use new files.
+ * configure: Rebuilt.
+
+Sat Apr 10 05:25:28 1999 Daniel Jacobowitz <dan@debian.org>
+
+ * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Fix conditions
+ for -Dunix and -Dlinux, and remove duplicate definition.
+ Change -Asystem(linux) to -Asystem(posix).
+ (CPP_OS_SOLARIS_SPEC): Fix conditions for -Dunix, -Dsun,
+ -DSVR4, -D__EXTENSIONS__.
+
+ * rs6000/linux.h (CPP_PREDEFINES): Remove -Dunix,
+ -Dlinux, -Asystem(linux), and -Asystem(unix).
+
+Sat Apr 10 05:14:50 1999 Mark Elbrecht <snowball3@usa.net>
+
+ * i386/djgpp.h (SET_ASM_OP): Define.
+
+ * cccp.c (DIR_SEPARATOR): Move to the top of the file.
+ (is_dir_separator): New function.
+ (simplify_filename): Use it.
+ * collect2.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM in place
+ of the DIR_SEPARATOR test.
+ Consider any file starting with a drivename to be absolute.
+ If the absolute filename test fails and EXECUTABLE_SUFFIX is
+ defined, append EXECUTABLE_SUFFIX to the file and try again.
+ * cppinit.c (base_name): Use HAVE_DOS_BASED_FILE_SYSTEM
+ in place of __MSDOS__ and _WIN32.
+ * cppfiles.c (simplify_pathname): Likewise.
+ * gcc.c (IS_DIR_SEPARATOR): Define new macro. Returns true if a
+ character is a directory separator.
+ (find_a_file): Use it.
+ (convert_filename): Likewise.
+ (process_command): Likewise.
+ (do_spec_1): Likewise.
+ (is_directory): Likewise.
+ (main): Likewise.
+ * prefix.c (IS_DIR_SEPARATOR): Define. Tests whether a character is
+ a directory separator.
+ (translate_name): Use it.
+ (update_path): Change DIR_SEPARATOR_2 to DIR_SEPARATOR. Fix
+ warning in block where '/' is changed to DIR_SEPARATOR.
+ * i386/xm-djgpp.h (DIR_SEPARATOR): Set to '/'.
+ (DIR_SEPARATOR_2): New macro. Set to '\'.
+ (HAVE_DOS_BASED_FILESYS): Define.
+ * i386/xm-mingw32.h: Updated copyright. Set
+ DIR_SEPARATOR_2 to '/'. Define HAVE_DOS_BASED_FILE_SYSTEM.
+ * i386/xm-os2.h: Likewise.
+ * winnt/xm-winnt.h: Likewise.
+ * i386/xm-dos.h: Likewise. Add copyright.
+
+1999-04-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * pdp11.h (TARGET_SWITCHES): Add option to vary assembler syntax.
+ (TARGET_DEFAULT): Possibly use UNIX syntax.
+ (TARGET_UNIX_ASM, TARGET_UNIX_ASM_DEFAULT): New macros.
+ (REGISTER_NAMES): Use "r5" instead of "fp".
+ (ASM_OUTPUT_ALIGN): Use ".even" directive, and abort for any
+ greater alignment.
+ * 2bsd.h (TARGET_UNIX_ASM_DEFAULT): Default to UNIX assembler
+ syntax for 2BSD.
+ * pdp11.c (output_ascii): Use working syntax for ".byte".
+ (print_operand_address): Use "*" instead of "@" when using UNIX
+ assembler syntax.
+
+Sat Apr 10 03:50:12 1999 Jeffrey A Law (law@cygnus.com)
+
+ * rtl.h (rebuild_jump_labels): Declare.
+ * jump.c (jump_optimize_1): Renamed from jump_optimize. Make static.
+ Add new argument MARK_LABELS_ONLY. Quit after mark_all_labels if
+ requested.
+ (jump_optimize, rebuild_jump_labels): New wrapper functions for
+ jump_optimize_1.
+ * toplev.c (rest_of_compilation): Use rebuild_jump_labels instead of
+ running the entire jump optimizer.
+
+ * rtl.h (local_alloc): Returns an integer now.
+ * local-alloc.c (recorded_label_ref): New file scoped variable.
+ (local_alloc): Initialize recorded_label_ref to zero. Return its
+ value when local allocation has completed.
+ (update_equiv_regs); If we create an equivalence for a LABEL_REF,
+ set recorded_label_ref.
+ * toplev.c (rest_of_compilation): Run the jump optimizer after
+ register allocation and reloading if needed.
+
+Fri Apr 9 21:02:57 1999 Krister Walfridsson (cato@df.lth.se)
+
+ * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Fix typo.
+ * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
+
+1999-04-09 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpphash.c (special_symbol): When expanding __LINE__, use the
+ top file buffer, not the top buffer.
+
+Fri Apr 9 13:41:04 1999 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (check-g++, check-gcc, check-g77, check-objc): Add
+ cd .. to TCL_LIBRARY command.
+
+Fri Apr 9 13:04:52 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/unknown-elf.h (SUBTARGET_CPU_DEFAULT): Only define if
+ not already specified.
+
+Fri Apr 9 11:18:55 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * c-common.c (decl_attributes, A_INIT_PRIORITY): Allow arrays
+ of classes, too.
+
+Fri Apr 9 10:40:10 1999 Kaveh R. Ghazi <ghazi@snafu.rutgers.edu>
+
+ * rs6000.c (rs6000_override_options, ptt, rs6000_file_start,
+ rs6000_float_const, rs6000_replace_regno, debug_stack_info,
+ rs6000_output_load_toc_table, output_prolog, output_epilog):
+ Const-ify a char*.
+ (output_mi_thunk): Likewise. Mark parameter `thunk_fndecl' with
+ ATTRIBUTE_UNUSED. Hide unused variables `r0', `sp', `toc',
+ `schain', `r12', `buf' and `labelno'.
+ (output_ascii): Const-ify a char*.
+ (rs6000_gen_section_name): Initialize variable `last_period'.
+ (rs6000_adjust_priority): Mark parameter `insn' with
+ ATTRIBUTE_UNUSED.
+ (rs6000_trampoline_template, rs6000_dll_import_ref,
+ rs6000_longcall_ref, rs6000_encode_section_info): Const-ify a char*.
+
+ * rs6000.h (offsettable_mem_operand, optimization_options): Add
+ prototypes.
+
+ * rs6000.md (movdi, define_split): Cast a value to HOST_WIDE_INT
+ when comparing against one.
+
+Thu Apr 8 19:20:18 1999 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (expand_expr, case ARRAY_REF, COMPONENT_REF, BIT_FIELD_REF):
+ Do not try to optimize an aggregate address which has VOIDmode.
+ Mirrors March 23 change to expand_assignment.
+
+ * flow.c (delete_unreachable_blocks): Do not require EDGE_FALLTHRU
+ for an edge when tidying an edge which connects consecutive basic
+ blocks.
+
+ * flow.c (can_delete_label_p): Do not convert a label into a
+ deleted label here.
+
+ * cse.c (flush_hash_table): New function.
+ (cse_insn): Flush the hash table when we encounter a volatile asm.
+ (cse_basic_block): Use flush_hash_table instead of doing it
+ inline.
+
+ * reload1.c (reload_cse_regs_1): Flush known register values if
+ we encounter a volatile asm.
+
+ * loop.c (strength_reduce): Re-enable Joern's loop improvements.
+
+Thu Apr 8 09:37:40 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (arm_print_operand): Undo previous change -
+ always print large constants in decimal.
+
+Thu Apr 8 10:22:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in (host_xm_file, build_xm_file): Include hwint.h.
+ Use case statements instead of "if test -a ... -a ... -a ..."
+
+ * machmode.h: Don't define HOST_WIDE_INT, etc. Wrap use of
+ HOST_WIDE_INT in #ifdef.
+
+ * mips.h: Include hwint.h instead of providing definitions for
+ HOST_WIDE_INT, etc. Wrap uses of HOST_WIDE_INT in #ifdef.
+
+Thu Apr 8 06:16:14 1999 John Wehle (john@feith.com)
+
+ * i386.md (truncdfsf2, truncxfsf2,
+ truncxfdf2): Rewrite using a splitter.
+
+Thu Apr 8 01:26:05 1999 Arg Haas (ahaas@neosoft.com)
+ Jeffrey A Law (law@cygnus.com)
+
+ * freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Avoid ambiguous
+ else statement.
+ * gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
+ * linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
+ * openbsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
+
+Wed Apr 7 22:40:19 1999 Jim Wilson <wilson@cygnus.com>
+
+ * i960/i960.c (i960_function_prologue): Don't save static chain
+ pointer.
+ * i960/i960.h (STACK_CHAIN_REGNUM): Change from r3 to g12.
+ (TRAMPOLINE_TEMPLATE): Likewise.
+ (FRAME_POINTER_REQUIRED): Check current_function_has_nonlocal_goto.
+ * i960/i960.md (nonlocal_goto): Rewrite.
+
+Tue Apr 6 17:49:49 1999 Philip Blundell <pb@nexus.co.uk>
+
+ * config/arm/lib1funcs.asm: Test for __ELF__ not __elf__.
+
+Wed Apr 7 14:07:34 1999 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.c (h8300_adjust_insn_length): Also avoid recognizing
+ ADDR_VEC and ADDR_DIFF_VEC insns.
+
+ * h8300.c (h8300_adjust_insn_length): Avoid trying to recognize
+ USE, CLOBBER or SEQUENCE insns.
+
+ * unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid
+ to account for the uncopied insn that sets cc0 at the end of the loop.
+
+ * unroll.c (copy_loop_body): Always ensure at least two insns
+ are in the copied loop.
+
+Wed Apr 7 14:52:18 1999 Catherine Moore <clm@cygnus.com>
+
+ * config/mips/elf.h (MAKE_DECL_ONE_ONLY): Define.
+ (UNIQUE_SECTION_P): Define.
+
+1999-04-07 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixinc/inclhack.tpl & fixincl.tpl:
+ Remove dynamic content from generated files
+
+Wed Apr 7 13:16:22 1999 John Wehle (john@feith.com)
+
+ * i386.c (output_move_memory): Remove.
+ * i386.h: Likewise.
+
+ * i386.md (movsi, movhi, movstricthi, movqi, movstrictqi,
+ movsf, movdf, movxf, movdi): Check no_new_pseudos instead
+ of (reload_in_progress | reload_completed).
+
+Wed Apr 7 03:16:45 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.c (reg_no_subreg_operand): New function.
+ * alpha.h (PREDICATE_CODES): Add it.
+ * alpha.md (floatdi?f patterns): Use it for op1.
+
+ * alpha.c (alpha_end_function): Don't flag weak functions.
+
+Wed Apr 7 02:11:55 1999 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (expand_builtin) [BUILT_IN_RETURN_ADDRESS]: Use
+ copy_to_mode_reg; don't force constants into a register.
+
+Tue Apr 6 22:55:25 1999 Richard Henderson <rth@cygnus.com>
+
+ * toplev.c (compile_file): Typo flow_dump -> flow2_dump.
+
+1999-04-06 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * pdp11.c (simple_memory_operand): Add default case in switch.
+ * pdp11.h (TARGET_SWITCHES): Add help strings.
+ (NOTICE_UPDATE_CC): Don't include excess argument to format.
+ (ASM_OUTPUT_DOUBLE_INT): Remove.
+
+Tue Apr 6 22:09:40 1999 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (expand_builtin_setjmp): Put setjmp return label on
+ nonlocal_goto_handler_labels for flow.
+
+Tue Apr 6 22:05:21 1999 Jan Hubicka <hubicka@paru.cas.cz>
+ Richard Henderson <rth@cygnus.com>
+
+ * flow.c (verify_flow_info): New function.
+ (find_basic_blocks): Call it if ENABLE_CHECKING.
+ (merge_blocks): Don't merge if there are non-deletable labels.
+ * toplev.c (fatal_insn): Allow a printf-style arg list.
+ * toplev.h (fatal_insn): Update prototype.
+
+Tue Apr 6 16:18:58 1999 Jan Hubicka <hubicka@paru.cas.cz>
+
+ * flow.c (split_edge) update correctly flow graph, disable
+ EDGE_CRITICAL flag on the split edge, update NUSES for new label.
+
+Tue Apr 6 15:47:51 1999 Richard Henderson <rth@cygnus.com>
+
+ * emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT.
+ Clear third and following slots, if they exist.
+
+Tue Apr 6 15:45:28 1999 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (create_basic_block): Make sure the bb note is in the block.
+ (can_delete_note_p): Rename from delete_note_p.
+ (delete_insn_chain): Preserve undeleteable labels too.
+ (tidy_fallthru_edge): Use next_real_insn instead of confusing
+ inline code.
+
+1999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppexp.c (parse_charconst): Initialize c.
+ (cpp_parse_expr): Initialize rprio.
+ * cppfiles.c (merge_include_chains): Initialize prev.
+ (finclude): Set fp->line_base to fp->buf before returning.
+ * cpphash.c (macroexpand): Initialize token.
+ * cppspec.c (lang_specific_driver): Change suff to
+ const char *const *.
+
+1999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppinit.c (install_predefs): Delete function.
+ (cpp_start_read): Don't call install_predefs.
+ (cpp_handle_option): Remove case 'u' and all refs to
+ opts->inhibit_predefs.
+ (print_help): Don't mention -undef.
+ (initialize_builtins): Define __HAVE_BUILTIN_SETJMP__, to
+ match cccp.
+ * cpplib.h (struct cpp_options): Remove inhibit_predefs
+ member.
+
+ * cccp.c (predefs): Delete variable.
+ (main): Remove case 'u' in argument parse loop,
+ 'inhibit_predefs' variable, and the code block that would
+ process CPP_PREDEFINES.
+ (initialize_builtins): Don't define __OBJC__, the driver will
+ do that.
+
+ * gcc.c (default_compilers): Remove -undef from all specs that
+ invoke a C preprocessor.
+ * ch/lang-specs.h: Likewise.
+ * cp/lang-specs.h: Likewise.
+ * f/lang-specs.h: Likewise.
+ * objc/lang-specs.h: Likewise.
+
+Mon Apr 5 11:55:31 1999 Donn Terry (donn@interix.com)
+
+ * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix misapplied patch.
+
+Mon Apr 5 11:51:38 1999 Jeffrey A Law (law@cygnus.com)
+
+ * m68k.md (movdf): Hide GPR sources & destinations from regclass.
+
+Mon Apr 5 09:54:42 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Apr 5 05:55:15 1999 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixincl.tpl: Separate "-e" from its argument, a la
+ the Sat Apr 3 17:05:13 1999 fix.
+ * genfixes: Ensure that the server shell is _NOT_ csh.
+
+Mon Apr 5 03:52:30 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Mon Apr 5 04:47:14 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i386.c (x86_double_with_add): Turn off for Pentium and PPro.
+ (small_shift_operand, output_ashlsi3): New functions.
+ * i386.h (small_shift_operand, output_ashlsi3): Declare.
+ * i386.md (ashlsi3): Simplify ahlsi3 patterns. Remove splitters
+ that are no longer needed.
+
+Sun Apr 4 04:05:04 1999 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (expand_loop_end): When copying the loop exit test,
+ do not walk into a nested loop.
+
+Sun Apr 4 00:14:54 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc/hackshell.tpl: Skip links to directories, to avoid
+ removing them.
+ * fixinc/inclhack.tpl: Likewise.
+ * fixinc/fixinc.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
+
+Sat Apr 3 23:46:13 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (addsi3, iorsi3, xorsi3, adddi3, iordi3, xordi3,
+ movsi_got, movsi, movsf): Use no_new_pseudos.
+ * rs6000.c (rs6000_got_register): Likewise.
+ (offsettable_mem_opereand): Use || not |.
+
+Sat Apr 3 22:02:56 1999 Jeffrey A Law (law@cygnus.com)
+
+ * acconfig.h (ENABLE_CHECKING): Remove redundant #undef.
+ * config.in: Rebuilt.
+
+Sat Apr 3 16:22:59 1999 Toshiyasu Morita (tm@netcom.com)
+
+ * gcc.texi: Add info on regmove pass.
+
+ * regmove.c (fixup_match_1): Consistently evaluate
+ HAVE_POST_INCREMENT and HAVE_POST_DECREMENT.
+
+Sat Apr 3 19:21:05 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * configure.in (DEFAULT_LINKER, DEFAULT_ASSEMBLER): Use grep
+ instead of test and sed to check whether they're GNU programs.
+ * configure: Rebuilt.
+
+Sat Apr 3 17:57:35 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * Makefile.in (install-headers-tar, install-headers-cpio): Avoid
+ problems with CDPATH.
+ Reported by Ralf Canis <canis@bigfoot.com>
+
+Sat Apr 3 13:50:16 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc.x86-linux-gnu: Deleted.
+
+Sat Apr 3 17:05:13 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * inclhack.tpl: Insert spaces between `sed -e' and '...'.
+ Reported by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Regen.
+
+Sat Apr 3 14:54:46 1999 Craig Burley <craig@jcb-sc.com>
+
+ * tree.def (BLOCK): Fix typo in comment.
+
+Sat Apr 3 00:53:29 1999 John Wehle (john@feith.com)
+
+ * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
+ floatsixf2, floatdixf2): Rewrite using a splitter.
+
+Fri Apr 2 17:36:10 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (arm_print_operand): Print large constants in
+ hex rather than decimal.
+
+Fri Apr 2 17:23:58 1999 Nick Clifton <nickc@cygnus.com>
+
+ * print-rtl.c (print_rtx): Use both HOST_WIDE_INT_PRINT_DEC
+ and HOST_WIDE_INT_PRINT_HEX to display constants.
+
+1999-04-02 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * config/i386/i386.h: Document all TARGET_SWITCHES or add
+ explicit null initializer.
+
+ * config/i386/cygwin.h: Document all SUBTARGET_SWITCHES.
+ * config/i386/dgux.h: Likewise.
+ * config/i386/osf1elf.h: Likewise.
+ * config/i386/win32.h: Likewise.
+ * config/i386/osfrose.h: Likewise. Drop obsolete -mno-ident option.
+
+Fri Apr 2 17:49:44 1999 Toshiyasu Morita <tm@netcom.com>
+
+ * regmove.c (fixup_match_1): Remove now useless if (0).
+
+Sat Apr 3 11:37:20 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
+ USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document.
+ (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
+ USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation.
+
+ * rtl.h (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
+ USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT,
+ USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
+ USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default
+ definition.
+
+ * expr.c (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
+ USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default
+ definition.
+
+Fri Apr 2 16:03:05 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc.dgux, fixinc.interix, fixinc.irix, fixinc.ptx: Deleted.
+ * fixinc.sco, fixinc.svr4, fixinc.winnt, fixinc.wrap: Likewise.
+
+Fri Apr 2 15:46:25 1999 Donn Terry (donn@interix.com)
+
+ * configure.in: Set and substitute quoted_cc_set_by_configure.
+ * configure: Rebuilt.
+ * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix quoting problem with ``.
+
+Fri Apr 2 14:35:45 1999 Stan Cox <scox@cygnus.com>
+
+ * config/i386/cygwin.h (CPP_SPEC): Use mingw_include_path instead
+ of a hardcoded path for -mno-cygwin.
+ (mingw_include_path): New.
+
+1999-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * pdp11.c: Include "recog.h".
+ (output_function_prologue): Remove unused variables `nregs', `i',
+ `offset'.
+ (output_function_epilogue): Remove unused variables
+ `may_call_alloca', `nregs', `regno', `adjust_fp'.
+ (output_ascii): Mark as returning void.
+ (print_operand_address: Likewise.
+ (simple_memory_operand): Remove unused variables `plus0', `plus1',
+ `offset'.
+ * pdp11.h: Declare functions `arith_operand',
+ `const_immediate_operand', `expand_shift_operand',
+ `legitimate_address_p', `notice_update_cc_on_set', `output_ascii',
+ `output_function_epilogue', `output_function_prologue',
+ `print_operand_address', `register_move_cost',
+ `simple_memory_operand'.
+ (HARD_REGNO_MODE_OK): Parenthesize `REGNO' arg.
+ (REGNO_REG_CLASS): Likewise.
+ * pdp11.md: Add explicit `int' to `static count' (in two places).
+ (addhi3): Add explicit braces to avoid ambiguous else.
+ (addqi3): Likewise.
+ (ashlhi3): Likewise.
+
+Fri Apr 2 14:17:10 1999 Jerry James <jerry@cs.ucsb.edu>
+
+ * gcc/invoke.texi: Add documentation for additional supported
+ MIPS CPU types, options -mips16 and -mentry, and ABI and ISA
+ defaults.
+
+Fri Apr 2 14:12:06 1999 John Wehle (john@feith.com)
+
+ * i386.md: Delete floating point compare, add, subtract,
+ multiply, and divide patterns which allowed integer
+ operands.
+ * i386.c (output_387_binary_op): Delete unused code.
+ (output_float_compare): Likewise.
+
+Fri Apr 2 11:53:37 1999 John Wehle (john@feith.com)
+
+ * i386.md (movsf+1, movdf+1, movxf+1): Update constraints
+ so that SECONDARY_MEMORY_RELOAD is used. Remove dead code.
+
+1999-04-02 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixinc/mkfixinc.sh: Added support for x86-interix.
+ * fixinc/fixinc.interix: Fixincludes script, slight changes
+ from ./fixinc.interix. Untested (needs interix box).
+ * fixinc/inclhack.def:
+ Complete the change to the 'fixinc.tmp' file.
+ Fixed regex for finding C++ headers.
+ * fixincl.x, fixincl.sh, inclhack.sh: Regenerate.
+
+Fri Apr 2 11:36:12 1999 Jan Hubicka (hubicka@paru.cas.cz)
+
+ * i386.c (print_operand_address, case REG): Do not use ESI addressing
+ mode for the K6.
+
+ * i386.c (print_operand_address, case MULT): Use more efficient
+ encoding (mult (reg) (const_int 2)).
+
+Thu Apr 1 17:01:50 1999 Richard Henderson <rth@cygnus.com>
+
+ Move over patch from Bernd Schmidt from GC branch:
+ * emit-rtl.c (gen_rtx_CONST_DOUBLE): New function.
+ (gen_rtx): Call it. Tidy cases.
+ * rtl.h (gen_rtx_CONST_DOUBLE): Prototype it.
+ * gengenrtl.c: Add commentary.
+ (special_rtx): Also match CONST_DOUBLE.
+ (gencode): Emit call to memset instead of bzero.
+
+Fri Apr 2 12:58:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (ashlhi3, lshrhi3, ashrhi3): Force operand 1
+ into a register if shift count not constant.
+ (ashlhi3_reg, lshrhi3_reg, ashrhi3_reg): Ensure that operand 1
+ is a register.
+
+Fri Apr 2 12:19:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (*db): Enable pattern if TARGET_LOOP_UNSIGNED
+ is nonzero.
+ (movstrqi_small, movstrqi_large, *cmpstrqi): Add + modifier to address
+ register constraints.
+ (*movhi_clobber+1): Modify splitter pattern to handle destination
+ register that is used in the source address.
+ (*xorhi3_clobber): Replace AND with XOR in call to legitimize_operands.
+
+Fri Apr 2 12:16:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h: Added more comments.
+
+Fri Apr 2 11:58:22 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_emit_move_sequence): Force invalid QImode
+ constants into memory if we get called directly from gen_move_insn
+ rather than emit_move_insn.
+ (c4x_legitimize_address): Fix up LABEL_REF addresses.
+
+Thu Apr 1 12:04:05 1999 Jim Wilson <wilson@cygnus.com>
+
+ * expr.c (store_field): When check direct_store, assume all complex
+ modes can be directly stored.
+
+1999-04-01 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * fixinc/genfixes: New shell script that runs autogen
+ to create the generated files.
+
+1999-04-01 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (cppmain$(exeext)): Depend on intl.o. Link in intl.o.
+
+Thu Apr 1 03:48:34 1999 H.J. Lu (hjl@gnu.org)
+
+ * i386.c (output_fp_conditional_move): Abort for LT, LE, GE, and GT
+ signed integer comparisons.
+
+ * i386.c (output_int_conditional_move): Use "enum rtx_code" for code
+ type.
+
+ * i386.c (notice_update_cc): No need to check the INT mode for
+ conditional moves since FLOAT conditional moves don't affect cc0.
+
+Thu Apr 1 02:17:18 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc/inclhack.def (zzz_ki_syscalls, zzz_time): Fix trigger
+ string to only match on hpux11.
+ * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
+
+Thu Apr 1 01:09:27 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * fixinc/hackshell.tpl: Complete transition to fixinc.tmp.
+ * fixinc/inclhack.sh: Rebuilt.
+
+ * fixinc/inclhack.def: Fix typos in c_asm.h fix.
+ * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
+
+Wed Mar 31 17:20:11 1999 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (rest_of_compilation): Allow dbr_schedule to write to
+ the dump file too.
+
+Wed Mar 31 12:32:43 1999 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (find_basic_blocks): New argument `do_cleanup'.
+ Conditionally call delete_unreachable_blocks.
+ (free_basic_block_vars): Zero ENTRY/EXIT data.
+ (allocate_for_life_analysis): Kill. Split into...
+ (allocate_bb_life_data, allocate_reg_life_data): ... new functions.
+ (life_analysis_1): Update.
+ * gcse.c (gcse_main): Update find_basic_blocks call.
+ * toplev.c (rest_of_compilation): Likewise.
+ * stupid.c (stupid_life_analysis): Update life data calls.
+ * rtl.h, output.h: Update prototypes.
+
+Wed Mar 31 12:10:00 1999 Bruce Korb <ddsinc09@ix.netcom.com>
+
+ * inclhack.def (several): Added spaces in tests to ensure
+ correct shell syntax. Added c_asm.h fix from fixincludes.
+ Also corrected the corrected fix to C++ comments :-}
+
+ * inclhack.tpl: Changed method of traversing symlink trees
+ so that file name matching will work correctly.
+
+ * fixincl.c, hackshell.tpl: Fallout from above.
+ * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
+
+Tue Mar 30 10:43:49 1999 Philip Blundell <pb@nexus.co.uk>
+
+ * config/arm/aout.h (DBX_DEBUGGING_INFO): Avoid redefinition if
+ dbxelf.h was previously included.
+ (CPP_APCS_PC_DEFAULT_SPEC): No need to undefine.
+
+ * config/arm/linux-elf.h (FP_DEFAULT): Correctly override the
+ definition from arm.h.
+
+Wed Mar 31 10:33:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (c-gperf.h): Generate using gperf language 'C', not
+ 'KR-C', so gperf uses the `const' keyword on strings.
+
+ * c-parse.gperf (resword): Const-ify a char*.
+
+Wed Mar 31 01:49:31 1999 Ian Lance Taylor <ian@zembu.com>
+
+ * t-rtems (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
+
+Wed Mar 31 00:50:48 1999 Jeffrey A Law (law@cygnus.com)
+
+ * system.h (STDERR_FILENO): Fix typo.
+
+ * inclhack.def (bool): Also fix bogus bool in curses_colr/curses.h.
+ * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
+
+Tue Mar 30 20:51:40 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * alias.c (alias_set_compare): Remove.
+ (record_alias_subset): Use splay_tree_compare_ints instead of
+ alias_set_compare.
+ (init_alias_once): Likewise.
+ * cse.c: Include splay-tree.h.
+ (reg_qty): Remove.
+ (reg_tick): Likewise.
+ (reg_table): Likewise.
+ (cse_reg_info): New structure.
+ (cse_reg_info_free_list): New variable.
+ (cse_reg_info_tree): Likewise.
+ (cached_regno): Likewise.
+ (cached_cse_reg_info): Likewise.
+ (all_minus_one): Remove.
+ (consec_ints): Likewise.
+ (GET_CSE_REG_INFO): New macro.
+ (REG_TICK): Likewise. Use throughout instead of reg_tick.
+ (REG_IN_TABLE): Likewise. Use throughout instead of reg_in_table.
+ (REG_QTY): Likewise. Use throughout instead of reg_qty.
+ (get_cse_reg_info): New function.
+ (free_cse_reg_info): Likewise.
+ (new_basic_block): Reinitialize cse_reg_info_tree instead of
+ reg_tick, all_minus_one, and consec_ints.
+ * Makefile.in (cse.o): Depend on splay-tree.h
+
+Tue Mar 30 13:19:36 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * libgcc2.c (throw_helper): Just return the SP offset, rather than
+ a whole udata. Include args_size in the offset.
+ (__throw, __rethrow): Adjust.
+
+Tue Mar 30 11:39:27 1999 Craig Burley <craig@jcb-sc.com>
+
+ * extend.texi (Extended Asm): Delete spurious `b' before
+ `@end example', which was confusing texi2html.
+
+Tue Mar 30 00:26:34 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c (output_line_info): Don't emit redundant info.
+ Do start a new row if the file changes and the line # doesn't.
+
+Mon Mar 29 15:48:39 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * invoke.texi (Invoking G++, C++ Dialect Options): Update.
+
+Mon Mar 29 15:05:39 1999 Richard Henderson <rth@cygnus.com>
+
+ * except.c (start_dynamic_handler): Force jmp_buf address to
+ and operand before moving to memory.
+
+Mon Mar 29 15:11:10 1999 Craig Burley <craig@jcb-sc.com>
+
+ * invoke.texi (Code Gen Options): Attempt to clarify
+ -fcheck-memory-usage. Minor edits to -fprefix-function-name.
+
+Mon Mar 29 20:52:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (maybe_eliminate_biv): For libcalls that set a giv, skip to
+ end of libcall.
+
+Mon Mar 29 20:35:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (mulsi3): Tag an extra REG_EQUAL note to the middle insn.
+
+Mon Mar 29 11:50:34 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * pa.h (HAVE_PRE_INCREMENT): Disable when optimizing for a PA8000
+ class machine.
+ (HAVE_PRE_DECREMENT, HAVE_POST_INCREMENT): Likewise.
+ (HAVE_POST_DECREMENT): Likewise.
+
+Mon Mar 29 08:24:43 1999 Bruce Korb <korb@datadesign.com>
+
+ * fixinc/mkfixinc.sh: Fix portability problems with old shells.
+
+ * fixinc/README: Updated for release announcement
+
+Sun Mar 28 20:26:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * recog.h (insn_outfun, insn_operand_predicate): Add prototype
+ arguments.
+
+ * rtl.h (note_stores): Likewise.
+
+ * rtlanal.c (note_stores): Likewise.
+
+Sun Mar 28 15:34:28 1999 Richard Henderson <rth@cygnus.com>
+
+ * varasm.c (output_constant_pool): Always mark the constant pool.
+
+Sun Mar 28 16:09:01 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+
+ * pa.md (pa7100LCshiftmem, pa7100LCalu): Change simultaneity. Use
+ shift/mem ops in pa7100LCalu.
+
+ * pa.c (pa_adjust_cost): Don't do cost adjustments on pa8000.
+ (pa_reorg): Don't call pa_combine_instructions on pa8000.
+
+Sun Mar 28 15:27:26 1999 Jeffrey A Law (law@cygnus.com)
+
+ * reload1.c (reload): Remove accidental code duplication.
+
+Sun Mar 28 12:22:12 1999 Robert Lipe (robertlipe@usa.net)
+
+ * i386/sysv5.h: New file to describe UnixWare7/SVR5.
+ * configure.in (i?86-UnixWare7*-sysv): Use it.
+ * i386/udk.h: Use sysv5.h. Now uses Dwarf-2.
+
+Sun Mar 28 01:15:04 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Mar 28 00:44:27 1999 Jeffrey A Law (law@cygnus.com)
+
+ * sdbout.c (sdbout_symbol): Do not call build_pointer_type, build
+ one on the fly and do not cache the result.
+
+ * gcc.cps, cpp.cps: Delete unwanted files.
+
+Sat Mar 27 23:37:40 1999 John Wehle (john@feith.com)
+
+ * i386.md (movdicc+3, movdicc+4): Rewrite using split_di.
+ * i386.c (output_int_conditional_move): Delete unused code.
+
+Sat Mar 27 21:17:36 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000/{aix41.h,aix43.h} (ASM_CPU_SPEC): Add 604e.
+
+Sat Mar 27 16:13:50 1999 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (mark_used_regs): Improve handling of ASMs.
+
+1999-03-26 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * Makefile.in (xcpp, cppspec.o): New targets.
+ (CPP_INSTALL_NAME): New macro.
+ (install-cpp): Install xcpp. Use CPP_INSTALL_NAME.
+ (all.build, start.encap): Build xcpp.
+
+ * cppspec.c: New file, implements argument filtering for a
+ user-visible C preprocessor.
+ * cpp.sh: Removed.
+
+Fri Mar 26 20:41:46 1999 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (stmp-fixinc): Use tooldir instead of gcc_tooldir.
+
+Fri Mar 26 16:02:37 1999 Nick Clifton <nickc@cygnus.com>
+
+ * configure.in (arm-*-vxworks*): Just include arm/vxarm.h.
+ * configure: Regenerate.
+ * config/arm/vxarm.h: Define SUBTARGET_CPU_DEFAULT before
+ including arm/coff.h
+
+1999-02-16 Scott Bambrough <scottb@corelcomputer.com>
+
+ * configure.in (arm*-*-linux-gnu*): Set thread_file to 'posix' if
+ --enable-threads[={yes,pthreads,posix}] is passed as a command
+ line parameter to configure.
+
+ * configure: Regenerate.
+
+ * gcc/config/arm/t-linux (TARGET_LIBGCC2_CFLAGS): Include -fPIC.
+
+Fri Mar 26 19:42:19 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (combine_givs): Fix index into can_combine when doing
+ benefit adjustment for remaining givs when having combined a giv.
+
+Fri Mar 26 11:38:01 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/t-arm-elf (EXTRA_MULTILIB_PARTS): Define.
+
+Fri Mar 26 10:48:27 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/linux-elf.h: Include dbxelf.h
+
+Fri Mar 26 10:43:47 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/svr4.h: Include new header file dbxelf.h.
+ (DBX_DEBUGGING_INFO): Remove definition.
+ (DBX_USE_BINCL): Remove definition.
+ (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
+ (ASM_IDENTIFY_GCC): Remove definition.
+ (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
+ (ASM_OUTPUT_SOURCE_LINE): Remove definition.
+ (DBX_FUNCTION_FIRST): Remove definition.
+ (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Remove definition.
+
+ * config/elfos.h: Include new header file dbxelf.h.
+ (DBX_DEBUGGING_INFO): Remove definition.
+ (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
+ (ASM_IDENTIFY_GCC): Remove definition.
+ (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
+ (ASM_OUTPUT_SOURCE_LINE): Remove definition.
+ (DBX_FUNCTION_FIRST): Remove definition.
+
+ * config/dbxelf.h: New header file.
+ (DBX_DEBUGGING_INFO): Define.
+ (DBX_BLOCKS_FUNCTION_RELATIVE): Define.
+ (DBX_FUNCTION_FIRST): Define.
+ (DBX_USE_BINCL): Define.
+ (DBX_CONTIN_LENGTH): Define.
+ (ASM_IDENTIFY_GCC): Define.
+ (ASM_IDENTIFY_GCC_AFTER_SOURCE): Define.
+ (ASM_OUTPUT_SOURCE_LINE): Define.
+ (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Define.
+
+Fri Mar 26 01:59:15 1999 "Charles M. Hannum" <root@ihack.net>
+
+ * fold-const.c (fold_truthop): Optimize bitfield references with
+ different masks as long as their size and bit position are the same.
+
+ * fold-const.c (fold_truthop): Build a type for both the lhs and
+ rhs and use it appropriately.
+
+ * fold-const.c (fold_truthop): Mask the lhs and rhs after merging
+ adjacent bitfield references.
+
+ * fold-const.c (fold_truthop): Verify that the lhs and rhs are
+ in the same bit position when optimizing bitfield references
+ which have the same mask.
+
+Thu Mar 25 22:53:27 1999 Martin von Löwis <loewis@informatik.hu-berlin.de>
+
+ * gcc.texi (Copy Assignment): New node.
+
+1999-03-25 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * gcc.c: Compile unconditionally all code formerly dependent
+ on #ifdef LANG_SPECIFIC_DRIVER.
+ * gccspec.c: New file with stub lang_specific_driver,
+ lang_specific_pre_link.
+ * Makefile.in: Link gccspec.o into xgcc. Add rule to compile
+
+Thu Mar 25 21:08:02 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * gcc.texi (Temporaries): Update.
+
+Thu Mar 25 16:53:53 1999 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (distribute_notes): Place REG_LABEL also where
+ REG_EQUAL indicates.
+
+Thu Mar 25 12:46:37 1999 Jim Wilson <wilson@cygnus.com>
+
+ * a29k/a29k.h (TARGET_SWITCHES): Add doc strings.
+ * i960/i960.h (TARGET_SWITCHES): Add doc strings.
+ * invoke.texi (a29k): Add documentation for -mno-multm option.
+
+Thu Mar 25 14:04:54 1999 Andrew MacLeod <amacleod@cygnus.com>
+
+ * rtl.texi (RTX_FRAME_RELATED_P): Add documentation.
+ * rtl.h (struct rtx_def): Update comment for frame_related field.
+ (set_unique_reg_note): Declare prototype.
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Split out from
+ 'dwarf2out_frame_debug' to handle only expressions, and process
+ component parts of a PARALLEL expression.
+ (dwarf2out_frame_debug): Process insns only, and call
+ new function 'dwarf2out_frame_debug_expr' for patterns.
+ * emit-rtl.c (set_unique_reg_note): New function to add a reg note,
+ but if there is an existing one, delete it first.
+ * expmed.c (expand_mult, expand_divmod): Use set_unique_reg_note.
+ * optabs.c (add_equal_note, expand_binop): Use set_unique_reg_note.
+ (emit_no_conflict_block, emit_libcall_block): Use set_unique_reg_note.
+ (expand_fix): Use set_unique_reg_note.
+
+Thu Mar 25 11:47:49 1999 Art Haas <ahaas@neosoft.com>
+
+ * tlink.c (symbol_hash_newfunc): Remove redundant call to
+ hash_newfunc.
+ (file_hash_newfunc, demangled_hash_newfunc): Likewise.
+
+Thu Mar 25 10:05:56 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386.h (PREFERRED_STACK_BOUNDARY): Set to 128.
+
+1999-03-25 Philip Blundell <pb@nexus.co.uk>
+
+ Based on patch from Jim Studt <jim@federated.com>:
+ * config/arm/linux-elf.h (STARTFILE_SPEC, ENDFILE_SPEC): Copy
+ definitions from config/linux.h.
+ (DBX_BLOCKS_FUNCTION_RELATIVE): Define to 1.
+
+Thu Mar 25 02:12:42 1999 Finn Hakansson <finn@axis.com>
+
+ * loop.c (strength_reduce): Correct a comment.
+
+ * rtl.h (MEM_COPY_ATTRIBUTES): Remove unnecessary ending backslash.
+
+Thu Mar 25 02:02:13 1999 Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
+
+ * Makefile.in (RANLIB_TEST): Improve test.
+
+Thu Mar 25 01:15:33 1999 Donn Terry <donn@interix.com>
+
+ * combine.c (force_to_mode, case PLUS): Use sign extended mask
+ when masking the low bits out of a constant.
+
+Tue Mar 23 15:45:25 1999 Richard Earnshaw (rearnsha@arm.com)
+ Jeff Law <law@cygnus.com>
+
+ * fold-const.c (make_range): If orig_type is unset, set it as soon
+ as we know the type. Remove now unnecessary set of orig_type for
+ conversions.
+
+Wed Mar 24 23:27:25 1999 Mark Elbrecht <snowball3@usa.net>
+ Jeff Law <law@cygnus.com>
+
+ * system.h (STDIN_FILENO): Provide default definition if one is not
+ provided by the system header files.
+ (STDOUT_FILENO, STDERR_FILENO): Likewise.
+
+ * i386/xm-djgpp.h (COLLECT2_HOST_INITIALIZATION): New macro.
+ * collect2.c (main): Use it.
+ (pexecute_pid): New variable. Holds return value from call to pexecute.
+ (collect2_execute): Rework to use pexecute instead of fork.
+ (collect2_wait): Use pwait() instead of wait().
+
+ * i386/djgpp.h: Fix typo.
+
+Wed Mar 24 23:24:30 1999 Jeffrey A Law (law@cygnus.com)
+
+ * fixinc/mkfixinc.sh: Recognize cygwin* instead of only
+ cygwin32.
+
+Wed Mar 24 15:44:12 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.c (init_idents): Accept both NAME and __NAME__
+ versions of attribute names and values.
+ (m32r_valid_machine_decl_attribute): Likewise.
+ (m32r_encode_section_info): Likewise.
+
+Wed Mar 24 21:42:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (choose_reload_regs): If output-reloading for a
+ simple move insn, try to inherit an equivalence for the input.
+
+1999-02-24 Mike Stump <mrs@wrs.com>
+
+ * arm/aout.h (DBX_OUTPUT_MAIN_SOURCE_FILENAME): Fix quoting.
+
+1999-03-24 Jim Blandy <jimb@zwingli.cygnus.com>
+
+ * libgcc2.c (__CTOR_LIST__, __DTOR_LIST__): Initialize on all
+ platforms.
+
+Wed Mar 24 01:35:01 1999 Geoff Keating <geoffk@ozemail.com.au>
+
+ * fold-const.c (fold): Recognize a rotate by an unsigned amount.
+
+Tue Mar 23 23:32:14 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (rotlsi3): New expander. Synthesize a variable rotate
+ left using a variable rotate right. Provide anonymous pattern for
+ rotate left by a constant value.
+
+ * expr.c (expand_assignment): Do not try to optimize an aggregate
+ address which has VOIDmode.
+
+Tue Mar 23 22:51:48 1999 Mumit Khan <khan@xraylith.wisc.edu>
+ Donn Terry <donn@interix.com>
+
+ * protoize.c (abspath): Preserve multiple leading slashes for
+ _WIN32 and Interix.
+
+1999-01-23 Mike Stump <mrs@wrs.com>
+
+ * arm/vxarm.h: Split out vxWorks support into separate headerfile
+ and vxify.
+ * arm/arm.c (cpu_defaults): Allow arm710 as default.
+
+ * configure.in: Split out vxWorks support for Arm.
+ * configure: Rebuilt.
+
+Tue Mar 23 11:20:03 1999 Per Bothner <bothner@cygnus.com>
+
+ * tree.c (first_rtl_op, has_cleanups): Handle GOTO_SUBROUTINE_EXPR.
+
+Tue Mar 23 09:00:39 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/riscix1.h (SUBTARGET_SWITCHES): Add doc string.
+ * config/arm/riscix1-1.h (SUBTARGET_SWITCHES): Add doc string.
+
+Tue Mar 23 07:50:20 1999 Mark Mitchell <mark@codesourcery.com>
+
+ * function.c: Include hash.h.
+ (insns_for_mem_entry): New struct.
+ (put_reg_into_stack): Take an optional hash-table mapping MEMs to
+ the INSNs that use them.
+ (fixup_var_refs): Likewise.
+ (put_addressof_into_stack): Likewise.
+ (purge_addressof_1): Likewise. Keep the hash-table up to date if
+ we add new instructions.
+ (fixup_var_refs_insns): Use it to avoid searching the entire
+ instruction chain.
+ (insns_for_mem_newfunc): New function.
+ (insns_for_mem_comp): Likewise.
+ (insns_for_mem_walk): Likewise.
+ (compute_insns_for_mem): Likewise.
+ (pop_function_context_from): Pass NULL for the hash-table.
+ (put_var_into_stack): Likewise.
+ (gen_mem_addressof): Likewise.
+ (flush_addressof): Likewise.
+ (purge_addressof): Call compute_insns_for_mem to pre-compute the
+ hash table.
+ * Makefile.in (OBJS): Include hash.o.
+ (function.o): Depend on hash.h.
+
+Tue Mar 23 00:39:14 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i386/openbsd.h (TARGET_DEFAULT): Use symbolic names instead of
+ numbers.
+ * i386/netbsd.h, i386/freebsd.h: Likewise.
+
+ * crtstuff.c: Use ANSI function definitions. Fix minor whitespace
+ problems.
+
+ * i386/openbsd.h (TARGET_DEFAULT): Define.
+ * configure.in: Do not set TARGET_CPU_DEFAULT for x86 OpenBSD
+ configurations.
+ * configure: Rebuilt.
+
+Tue Mar 23 00:39:10 1999 John Wehle (john@feith.com)
+
+ * i386/freebsd.h (TARGET_DEFAULT): Define instead
+ of TARGET_CPU_DEFAULT.
+ * i386/netbsd.h (TARGET_DEFAULT): Likewise.
+
+Mon Mar 22 23:52:01 1999 Mumit Khan <khan@xraylith.wisc.edu>
+ Donn Terry <donn@interix.com>
+
+ * sdbout.c (syms.h): Don't include on Interix.
+ * toplev.c (main): No sbrk on Interix.
+
+ * configure.in: Add i386-pc-interix support.
+ * configure: Regenerate.
+ * fixinc.interix: New file.
+ * config/interix.h: New file.
+ * config/x-interix: New file.
+ * config/xm-interix.h: New file.
+ * i386/interix.h: New file.
+ * i386/interix.c: New file.
+ * i386/t-interix: New file.
+
+Mon Mar 22 23:41:49 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i386.h (PREFERRED_STACK_BOUNDARY): Define.
+
+Mon Mar 22 23:41:31 1999 John Wehle (john@feith.com)
+
+ * i386.c (ix86_compute_frame_size): New function.
+ (ix86_prologue, ix86_epilogue): Use it.
+ * i386.h (INITIAL_ELIMINATION_OFFSET): Likewise.
+ * reload1.c: Provide default for PREFERRED_STACK_BOUNDARY.
+
+Mon Mar 22 18:06:59 1999 Jim Wilson <wilson@cygnus.com>
+
+ * mips/mips.h (TARGET_SWITCHES, TARGET_OPTIONS): Add option doc
+ strings.
+ * mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Likewise.
+
+Mon Mar 22 16:18:27 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Do not bother
+ passing ATTRIBUTES to arm_valid_machine_decl_attribute.
+
+ * config/arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Do not bother
+ passing ATTRIBUTES to arm_valid_machine_decl_attribute.
+
+ * config/arm/arm.h (DEFAULT_RTX_COSTS): Do not bother passing
+ OUTER_CODE to arm_rtx_costs - it is not used.
+ (arm_compare_fp): Delete declaration.
+ (FINAL_PRESCAN_INSN): Do not bother passing OPVEC or NOPERANDS to
+ arm_final_prescan_insn - they are not used.
+ (const_ok_for_op): Remove prototype.
+ (arm_rtx_costs): Fix prototype.
+ (arm_valid_machine_decl_attribute): Fix prototype.
+ (final_prescan_insn): Fix prototype.
+
+ * config/arm/arm.md: Remove references to arm_compare_fp.
+
+ * config/arm/arm.c (arm_compare_fp): Delete.
+ (const_ok_for_op): Make function static. Add prototype. Remove
+ mode parameter - it is unused.
+ (arm_rtx_costs): Remove outer_code parameter.
+ (reload_memory_operand): Declare mode parameter unused.
+ (power_of_two_operand): Declare mode parameter unused.
+ (equality_operator): Declare mode parameter unused.
+ (load_multiple_operation): Declare mode parameter unused.
+ (store_multiple_operation): Declare mode parameter unused.
+ (multi_register_push): Declare mode parameter unused.
+ (arm_valid_machine_decl_attribute): Remove attributes parameter -
+ it is unused.
+ (select_dominance_cc_mode): Remove op parameter - it is unused.
+ (gen_compare_reg): Remove fp parameter - it is unused.
+ (final_prescan_insn): Remove opvec and noperands parameters - they
+ are unused.
+
+Mon Mar 22 14:35:28 1999 Nick Clifton <nickc@cygnus.com>
+
+ * tm.texi (MD_SCHED_INIT): Add missing closing parenthesis.
+
+Mon Mar 22 22:24:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_as_needed): Set reload_is_output_reload /
+ reload_has_output_reload for auto_inc expressions that could be
+ reloaded. Call forget_old_reloads for REG_INC notes.
+
+Mon Mar 22 21:51:57 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * cse.c (cse_insn): Don't change the result register of a libcall.
+
+Mon Mar 22 21:08:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * rtl.h (shallow_copy_rtx): Declare.
+ * rtl.c (shallow_copy_rtx): New function.
+ * reload.c (find_reloads_toplev): Use shallow_copy_rtx instead of
+ copy_rtx.
+
+Mon Mar 22 10:44:33 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
+
+ * config/h8300/h8300.md (adjust_length): New attribute.
+ (modhi3+1, andsi3+1, iorsi3+1, extzv+1, extzv+2): Change insn
+ default value of attribute "adjust_length" onto "no".
+
+ * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust
+ length only if the attribute "adjust_length" value is "yes".
+ Use 0 if the shift is negative.
+
+ * final.c (shorten_branches): Check insn length after its
+ adjusting.
+
+Sun Mar 21 17:33:48 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i860.h (TARGET_SWITCHES): Add documentation for default case.
+ * i860/paragon.h (TARGET_SWITCHES): Add documentation for default case.
+ * i370.h (TARGET_SWITCHES): Add documentation for default case.
+ * fx80.h (TARGET_SWITCHES): Add documentation for default case.
+ * elxsi.h (TARGET_SWITCHES): Add documentation for default case.
+ * clipper.h (TARGET_SWITCHES): Add documentation for default case.
+ * 1750a.h (TARGET_SWITCHES): Add documentation for default case.
+ * pa.h (TARGET_SWITCHES): Add documentation for default case.
+ (TARGET_OPTIONS): Likewise for default case.
+ * mn10300.h (TARGET_SWITCHES): Add documentation for default case.
+ * h8300.h (TARGET_SWITCHES): Add documentation for default case.
+
+ * gcse.c (dump_hash_table): Fix whitespace in declaration.
+ (compute_transpout): Renamed from pre_compute_transpout.
+ (compute_pre_*): Deleted.
+ (pre_expr_reaches_here_p): New argument, CHECK_PRE_COMP. All
+ callers changed.
+ (insert_insn_end_bb): Renamed from pre_insert_insn.
+ (pre_*): Delete unused variables. Only leave local properties and
+ global redundant/optimal computation points.
+ (alloc_pre_mem, free_pre_mem): Corresponding changes.
+ (compute_pre_data): Simplify and call pre_lcm to run the lazy
+ code motion dataflow analysis.
+ (pre_insert, pre_insert_copies, pre_delete): Revamp to use LCM
+ based redundant and optimal computation points.
+
+ * basic-block.h (pre_lcm, pre_rev_lcm): Declare.
+
+ * toplev.c (main): A debug option without a level defaults to
+ level 2.
+
+Sun Mar 21 12:13:01 1999 Nick Clifton <nickc@cygnus.com>
+
+ * flow.c (can_delete_label_p): Do not allow user specified
+ labels to be deleted.
+ * dwarf2out.c (gen_label_die): Generate addresses for deleted
+ (programmer specified) labels.
+ * dwarfout.c (output_label_die): Generate addresses for deleted
+ (programmer specified) labels.
+
+1999-03-21 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * Makefile.in (xgcc$(exeext)): Add intl.o to list of files to be
+ linked with.
+
+Sun Mar 21 01:15:03 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Mar 20 22:26:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * sparc.h (TARGET_SWITCHES): Add null description to default case.
+
+Sat Mar 20 21:46:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-lex.c (yylex): Remove unused variable `bytes'.
+
+ * flow.c (print_rtl_with_bb): Cast the return value of alloca.
+
+ * function.c (assign_parms): Wrap variable `varargs_setup' in
+ macro SETUP_INCOMING_VARARGS.
+ (thread_prologue_and_epilogue_insns): Mark parameter `f' with
+ ATTRIBUTE_UNUSED.
+
+ * local-alloc.c (no_equiv): Likewise for parameter `store'.
+
+ * sched.c (schedule_insns): Remove unused variables `insn' and `next'.
+
+ * tlink.c (symbol_hash_newfunc, symbol_hash_lookup,
+ file_hash_newfunc, file_hash_lookup, demangled_hash_newfunc,
+ demangled_hash_lookup, symbol_push, symbol_pop, file_push,
+ file_pop, tlink_init, tlink_execute, frob_extension,
+ obstack_fgets, tfgets, pfgets, freadsym, read_repo_file,
+ maybe_tweak, recompile_files, read_repo_files,
+ demangle_new_symbols, scan_linker_output): Add static prototype.
+
+ (symbol_hash_newfunc, file_hash_newfunc, demangled_hash_newfunc):
+ Make the third argument a `hash_table_key'.
+
+ * toplev.c (debug_start_source_file): Mark parameter `filename'
+ with ATTRIBUTE_UNUSED.
+
+Sun Mar 21 02:28:21 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * tm.texi (Varargs): Don't split argument of @item across lines.
+
+ * invoke.texi: Fix use of @item vs @itemx.
+
+Sun Mar 21 09:59:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (TARGET_SWITCHES): Add null description to
+ default case.
+
+Sat Mar 20 23:33:54 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * loop.c (check_dbra_loop): Fix debug message.
+
+Sat Mar 20 15:54:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (decrement_and_branch_on_count): Emit rptb_end
+ pattern instead of decrement_and_branch_until_zero pattern.
+
+Sat Mar 20 11:39:58 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (TARGET_SWITCHES): Add documentation.
+ * config/c4x/c4x.h (TARGET_OPTIONS): Add documentation.
+
+Fri Mar 19 23:26:29 1999 Martin von Löwis <loewis@informatik.hu-berlin.de>
+
+ * expr.c (expand_expr): Handle ERROR_MARK much earlier.
+
+Fri Mar 19 15:28:38 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cccp.c (create_definition): Cast to U_CHAR* when assigning to one.
+
+ * cppfiles.c (read_and_prescan): Likewise.
+ Start a #define in column 0.
+
+ * cpplib.c (cpp_define): Cast to U_CHAR* when assigning to one.
+ (cpp_push_buffer): Likewise for cpp_buffer*.
+ (do_include): Change the type of `fbeg' and `fend' to unsigned char*.
+ (do_endif): Cast to char* when assigning to one.
+ (do_assert): Likewise.
+ (do_unassert): Likewise.
+ (cpp_read_check_assertion): Change the type of `name' to U_CHAR*.
+ Don't do unnecessary cast to char* anymore.
+
+ * genrecog.c (make_insn_sequence): Cast to char** when assigning
+ to one. Cast the first argument of bzero to PTR.
+
+ * loop.c (strength_reduce): Remove unused variable `note'.
+
+ * reload1.c (new_insn_chain): Cast to struct insn_chain* when
+ assigning to one.
+
+ * rtl.c (copy_rtx): Use memcpy instead of bcopy.
+
+Fri Mar 19 11:19:31 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * calls.c (initialize_argument_information): Mark parameters
+ `num_actuals' and `n_named_args' with ATTRIBUTE_UNUSED.
+
+ * dbxout.c (dbxout_start_new_source_file): Likewise for parameter
+ `filename'.
+ (dbxout_finish): Likewise for parameters `file' and `filename'.
+ (dbxout_prepare_symbol): Likewise for parameter `decl'.
+ (dbxout_begin_function): Likewise.
+
+ * explow.c (hard_function_value): Likewise for parameter `func'.
+
+ * function.c (locate_and_pad_parm): Likewise for parameter `fndecl'.
+
+ * expmed.c (expand_divmod): Omit unused argument to `expand_abs'.
+ * expr.c (expand_expr): Likewise.
+ * expr.h (expand_abs): Delete unused argument from prototype.
+ * optabs.c (expand_abs): Remove unused parameter `unsignedp'.
+
+ * sdbout.c (sdbout_init): Mark parameter `syms' with ATTRIBUTE_UNUSED.
+ (sdbout_end_block): Likewise for parameter `n'.
+
+ * toplev.c (debug_define): Likewise for parameters `lineno' and
+ `buffer'.
+ (debug_undef): Likewise.
+
+ * varasm.c (named_section): Likewise for parameter 'reloc'.
+ (assemble_external): Likewise for parameter `decl'.
+ (assemble_alias): Likewise for parameter `target'.
+
+Fri Mar 19 01:54:30 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * toplev.c (read_integral_parameter): Constify. Better control of
+ error messages.
+ (main): Use read_integral_parameter to set optimize, id_clash_len,
+ larger_than_size, and the debugging level.
+ * toplev.h (read_integral_parameter): Update prototype.
+
+Fri Mar 19 01:42:05 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * system.h: Use putc_unlocked, fputc_unlocked, and
+ fputs_unlocked only if putc_unlocked has a prototype already.
+ Prototype fputs_unlocked if necessary.
+ * configure.in: Check for prototypes of putc_unlocked and
+ fputs_unlocked.
+ * acconfig.h: Updated.
+ * config.in, configure: Rebuilt.
+
+Fri Mar 19 02:45:12 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * Makefile.in (INTL_TARGETS): New macro.
+ ($(INTL_TARGETS)): Depend on generated sources; drop dependencies
+ on cp/parse.c and objc/objc-parse.c.
+ ($(srcdir)/cp/parse.c): Move to cp/Make-lang.in.
+ * objc/Make-lang.in ($(INTL_TARGETS)): Depend on objc/objc-parse.c.
+
+Thu Mar 18 22:28:53 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i860.h (TARGET_SWITCHES): Add documentation.
+ * i860/paragon.h (TARGET_SWITCHES): Add documentation.
+ * i370.h (TARGET_SWITCHES): Add documentation.
+ * fx80.h (TARGET_SWITCHES): Add documentation.
+ * elxsi.h (TARGET_SWITCHES): Add documentation.
+ * clipper.h (TARGET_SWITCHES): Add documentation.
+ * 1750a.h (TARGET_SWITCHES): Add documentation.
+ * pa.h (TARGET_SWITCHES): Add documentation.
+ (TARGET_OPTIONS): Likewise.
+ * mn10300.h (TARGET_SWITCHES): Add documentation.
+ * h8300.h (TARGET_SWITCHES): Add documentation.
+
+Thu Mar 18 15:58:26 1999 Nick Clifton <nickc@cygnus.com>
+
+ * loop.c (strength_reduce): Do not perform pseudo replacements
+ if the loop contains volatile memory references.
+
+Thu Mar 18 19:09:50 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_reloads_toplev): When processing X recursively,
+ don't alter it destructively except by filling in constants.
+
+Thu Mar 18 10:14:18 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cccp.c (default_include): Initialize structure members.
+ (pass_thru_directive): Change the type of 'keyword_length' to int.
+ (main): Cast `bindtextdomain' and `textdomain' to (void).
+
+ * collect2.c (main): Likewise.
+
+ * cppmain.c (main): Likewise.
+
+ * gcc.c (main): Likewise.
+
+ * gcov.c (main): Likewise.
+
+ * protoize.c (main): Likewise.
+
+ * toplev.c (main): Likewise.
+
+1999-03-18 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/mips.c (mips_explicit_type_size_string): Correct
+ its type.
+
+Thu Mar 18 01:24:25 1999 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in: Use "exit 1", not "exit (1)".
+ * configure: Rebuilt.
+
+Wed Mar 17 23:17:42 1999 Mark Kettenis <kettenis@gnu.org>
+
+ * config/t-gnu (SYSTEM_HEADER_DIR): New variable. Set to
+ `/include' in order to find the system's limits.h.
+
+Wed Mar 17 23:00:18 1999 Robert Lipe <robertlipe@usa.net>
+
+ * fixinc/fixincl.c: Include auto-host.h instead of config.h.
+ * fixinc/procopen.c: Likewise.
+ * fixinc/regex.c: Likewise.
+ * fixinc/server.c: Likewise.
+
+Wed Mar 17 22:46:13 1999 Mark Elbrecht <snowball3@usa.net.
+
+ * config/i386/go32.h: Delete.
+ * config/i386/djgpp.h: New. Renamed from go32.h.
+ Added -DDJGPP=2 to CPP_PREDEFINES.
+ * config/i386/go32-rtems.h: Delete.
+ * config/i386/djgpp-rtems.h: New. Renamed from go32-rtems.h.
+ Added -DDJGPP=2 to CPP_PREDEFINES.
+ * config/i386/xm-go32.h: Delete.
+ * config/i386/xm-djgpp.h: New. Renamed from xm-go32.h.
+ * config/i386/x-go32: Delete.
+ * config/i386/x-djgpp: New. Renamed from x-go32.
+ * config/i386/t-go32: Delete.
+ * config/i386/t-djgpp: New. Renamed from t-go32.
+ * configure.in(pc-msdosdjgpp): Set xm_file to i386/xm-djgpp.h.
+ Set tm_file to i386/djgpp.h. Set tmake_file to i386/t-djgpp.
+ Set xmake_file to i386/x-djgpp.
+ (*-go32-msdos, *-go32*): Remove entries. Warn that GO32/DJGPP V1.X
+ is now unsupported and *-pc-msdosdjgpp for DJGPP V2.X should be
+ used instead.
+ * configure: Rebuilt.
+
+ * gcc.c (process_command): Dump link_command_spec too.
+
+Wed Mar 17 20:38:08 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+ Jeff Law <law@cygnus.com>
+
+ * pa.md: Add real PA8000 scheduling information.
+
+ * pa.h (processor_type): Add PROCESSOR_8000 symbol.
+ (ISSUE_RATE): Revamp, including PA8000 support.
+ * pa.c (override_options): Add 8000 as -mschedule= option.
+ Do not call strcmp if pa_cpu_string is null.
+ * pa.md (attr cpu): Add 8000.
+ * invoke.texi: Add documentation for PA8000 scheduling.
+
+Wed Mar 17 18:20:24 1999 David S. Miller <davem@redhat.com>
+
+ * config/sparc/sparc.h (TARGET_SWITCHES, TARGET_OPTIONS):
+ Add descriptions.
+ * config/sparc/sp64-elf.h (SUBTARGET_SWITCHES): Likewise.
+ * config/sparc/splet.h (SUBTARGET_SWITCHES): Likewise.
+
+Wed Mar 17 14:51:19 1999 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (compute_immediate_dominators): New function.
+ * basic-block.h (compute_immediate_dominators): Declare it.
+
+ * alpha.h (HARD_REGNO_MODE_OK): Allow only 4 and 8 byte unit modes
+ in FP regs.
+ (MODES_TIEABLE_P): Define asymmetricly wrt modes illegal in FP regs.
+
+Wed Mar 17 14:41:41 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/aout.h (ASM_GENERATE_INTERNAL_LABEL): Fix compile
+ time warning.
+ * config/arm/arm.md: Fix various compile time warnings.
+ * config/arm/arm.h: Fix various compile time warnings. Add
+ function prototypes.
+ * config/arm/arm.c: Fix various compile time warnings.
+ (arm_override_options): Reorganize to separate tuning from
+ targetting.
+ (bit_count): New function: Return a count of the number of bits
+ set in a word.
+
+Wed Mar 17 21:29:12 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (eliminate_regs): Don't keep REG_DEAD notes around for
+ things that were eliminated.
+
+Wed Mar 17 12:16:26 1999 Richard Henderson <rth@cygnus.com>
+
+ * function.c (fixup_var_refs_1): First try moving the expression
+ directly into a register. Don't separate cc0 setter and user.
+
+Wed Mar 17 11:20:29 1999 Dave Brolley <brolley@cygnus.com>
+
+ * cppfiles.c (PIPE_BUF): #define PIPE_BUF if not defined already.
+
+Wed Mar 17 09:25:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-lex.c: Don't include setjmp.h.
+ (parse_float): New static function.
+ (pf_args): New struct.
+ (yylex): Use them in call to `do_float_handler'.
+
+1999-03-16 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * cexp.y (yyerror): Call verror to get a useful error message.
+ * cexp.c: Rebuilt.
+
+ * .gdbinit: Move command to put breakpoint at abort to end of file
+ so that gdb does not bail out early.
+
+Tue Mar 16 15:30:19 1999 Nick Clifton <nickc@cygnus.com>
+
+ * rtl.h: Rename prototype for free_bb_memory to free_bb_mem.
+
+Tue Mar 16 23:40:09 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (movsi_i): Move t/r alternative after r/rI alternative.
+
+Tue Mar 16 13:44:50 1999 Jim Wilson <wilson@cygnus.com>
+
+ * mn10200/mn10200.md (addsi3, subsi3, ashlsi3, lshrsi3, ashrsi3):
+ Delete emit_library_call_value declaration.
+
+1999-03-16 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppfiles.c (read_and_prescan): Map backslash-newline to '\r'
+ (which cannot otherwise appear in the processed buffer) and
+ move it out of tokens that it appears in the middle of.
+ Improve performance.
+ (find_position): New function.
+
+ * cpplib.c: \r (one character) indicates backslash
+ newline, not \\\n (two characters). It cannot appear in the
+ middle of a token. Call CPP_BUMP_LINE (pfile) whenever
+ parsing moves past \n or \r. Increment pfile->lineno whenever
+ a \n is placed into token_buffer. Only one mark can exist at
+ a time, and CPP_BUMP_LINE must not be used while it is
+ active. It is automatically cleared by cpp_pop_buffer and
+ parse_goto_mark. \r is not in is_hor_space or is_space.
+
+ (NEWLINE_FIX, NEWLINE_FIX1, adjust_position,
+ update_position, count_newlines, parse_move_mark): Removed.
+ (parse_string, copy_comment): New functions.
+ (parse_name): Returns void.
+ (parse_set_mark, parse_clear_mark, parse_goto_mark): Take only
+ one argument, a cpp_reader *. Change for new marking scheme.
+ (skip_comment): Handle CHILL line comments too. Second
+ argument is now first character of comment marker; all callers
+ changed. Issue error for unterminated block comment here.
+ (cpp_skip_hspace): Recognize CHILL comments.
+ (copy_rest_of_line): Likewise. Call skip_comment and
+ parse_string directly, don't go through cpp_get_token. Emit
+ "/**/" for block comments if -traditional (create_definition
+ needs this).
+ (do_define): Don't play with put_out_comments.
+ (cpp_push_buffer): Initialize ->mark to -1.
+ (cpp_buf_line_and_col): Just read out the values in the buffer
+ structure.
+ (output_line_command): Use cpp_buf_line_and_col. Fix
+ formatting. Remove stale code.
+ (cpp_get_token): Break out string parsing code to
+ parse_string. Use skip_comment for CHILL comments too. Use
+ copy_comment for put_out_comments instead of dinking with
+ marks. Remove stale code. Don't call output_line_command
+ unless it's necessary.
+
+ * cpplib.h (parse_marker): Removed.
+ (struct cpp_buffer): Line_base is now an unsigned char *; add
+ `mark' [long], remove `marks' [struct parse_marker *].
+ (parse_set_mark, parse_clear_mark, parse_goto_mark): Update
+ prototypes.
+ (CPP_BUMP_LINE, CPP_BUMP_BUFFER_LINE): New macros.
+ * cppinit.c (is_hor_space, is_space): '\r' is not considered
+ whitespace.
+ * cppexp.c (cpp_parse_expression): Use cpp_skip_hspace, not
+ SKIP_WHITE_SPACE.
+ * cpphash.c (macarg): Disable line commands while expanding.
+
+Tue Mar 16 11:30:19 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * c-lex.c (yylex) : Remove warning for integer literals being
+ larger than the largest target int. Add warning for integer
+ literal being larger than than its chosen type.
+
+Tue Mar 16 10:53:17 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * invoke.texi: Add -mlong32 documentation.
+ * config/mips/mips.h (mips_explicit_type_size_string): New.
+ (TARGET_SWITCHES): Add 'long32'.
+ (TARGET_OPTIONS): Add 'explicit-type-size'.
+ (CC1_SPECS): Set -mexplicit-type-size.
+ (LONG_MAX_SPEC): Change a use of 'no-long64' to 'long32'.
+ * config/mips/abi64.h (LONG_MAX_SPEC): Same. Add 'mabi=32'.
+ * config/mips/mips.c (mips_explicit_type_size_string): New.
+ (override_options): Use it.
+ * config/mips/osfrose.h (CC1_SPECS): Set -mexplicit-type-size.
+
+ * config/mips/mips.h (SUBTARGET_CPP_SIZE_SPEC):
+ Pointer size now depends on both size longs and size of GP
+ registers.
+
+Tue Mar 16 10:22:22 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/iris.h (CTORS_SECTION_ASM_OP,DTORS_SECTION_ASM_OP,
+ dtors_section): Use Pmode == DImode rather than TARGET_LONG64.
+ * config/mips/mips.c (override_options): Allow -mlong64 and
+ -mint64 with -mips2 or less.
+ * config/mips/mips.h (MASK_LONG64): Fix comment.
+ (POINTER_SIZE): Use Pmode == DImode rather than TARGET_LONG64.
+ (Pmode): Make Pmode the smaller of longs or gp registers.
+ * invoke.texi: Note the new size for pointers.
+
+Mon Mar 15 22:45:25 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.h (ASM_OUTPUT_{DOUBLE,FLOAT}): Always generate IEEE 754
+ bit-pattern directly.
+ (ASM_OUTPUT_REG_{PUSH,POP}): Delete.
+ * rs6000.c (first_reg_to_save): If profiling and context needed,
+ allocate a reg to save static chain for all ABIs. For AIX
+ profiling, calculate parameter registers to save based on need.
+ (output_function_profiler): Save and restore static chain around
+ profile call for all ABIs.
+
+1999-03-15 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppinit.c: Instead of one pending list, keep separate lists
+ for each category of pending option: -D/-U, -A, -include,
+ -imacros. Move the four partial include-path lists into the
+ pending block. Use head and tail pointers so we don't ever
+ have to reverse the lists.
+
+ (cpp_start_read): Break out blocks of code to their own
+ functions: install_predefs and initialize_dependency_output.
+ Use path_include for C_INCLUDE_PATH and friends as well as
+ CPATH. Remove include_defaults gunk. Warn about the
+ combination of -lang-chill and -trigraphs. Optimize string
+ bashing. Walk each pending list once, deallocating as we go.
+
+ (append_include_chain): Brought over from cppfiles.c. Mark
+ dirs as system include dirs if and only if appending to
+ system include path. If opts->verbose, print a notice when a
+ dir is dropped from the include path because it doesn't
+ exist. Fix memory leak: this function is not supposed to copy
+ its DIR argument.
+
+ (nreverse_pending, push_pending): Removed.
+ (APPEND): New macro for adding to pending lists.
+ (path_include): Can now add to any partial include path.
+ (base_name): Bring over from cccp.c.
+ (cpp_options_init): Allocate the pending block.
+ (cpp_handle_option): Add --version. Exit after --help. Fix
+ formatting. Order -ifoo options by frequency of usage.
+ (install_predefs): New function, simplified version of code
+ that was in cpp_start_read.
+ (initialize_dependency_output): Likewise. Understand OBJECT_SUFFIX.
+
+ * cppfiles.c (simplify_pathname): Export.
+ (merge_include_chains): Don't nreverse the lists. If
+ opts->verbose, print a notice when a duplicate dir is detected
+ and dropped from the include path.
+ (finclude): Fix excessive cleverness in setting
+ fp->system_header_p.
+ (actual_directory): Set x->sysp from
+ CPP_BUFFER (pfile)->system_header_p so that one system header
+ may include another with "".
+ (deps_output): Fix double adjustment of deps_size which would
+ cause all dependencies after the first two lines to be lost.
+
+ * cpplib.c (cpp_unassert): New function.
+ * cpplib.h: Lay out struct cpp_pending here. Adjust
+ prototypes. Add include_prefix_len to struct cpp_options.
+
+Mon Mar 15 16:01:52 1999 Jim Wilson <wilson@cygnus.com>
+
+ * config/misp/mips.h (REGISTER_MOVE_COST): Make the cost of moving
+ from HI/LO/HILO/MD into general registers the same as for one
+ of moving general registers to HI/LO/HILO/MD.
+
+Mon Mar 15 12:39:38 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/m32r/m32r.c (init_idents): New function. Initialize
+ static tree nodes for m32r specific attribute identifiers. Remove
+ leading and trailing double underscores from the attribute names.
+ (m32r_valid_machine_decl_attribute): Call init_idents.
+ (m32r_encode_section_info): Call init_idents.
+
+Mon Mar 15 10:20:20 1999 Mark Mitchell <mark@markmitchell.com>
+
+ * reload.c (find_reloads): Add a REG_LABEL note if we substitute a
+ LABEL_REF for something else.
+
+Mon Mar 15 08:24:17 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c (exact_real_inverse): Move variable `float_error'
+ into the scope where it is used.
+ (const_binop_1): New static function.
+ (cb_args): New struct.
+ (const_binop): Use them in call to `do_float_handler'.
+ (fold_convert_1): New static function.
+ (fc_args): New struct.
+ (fold_convert): Use them in call to `do_float_handler'.
+
+Mon Mar 15 22:50:18 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * rtlanal.c (auto_inc_p): New function.
+ * rtl.h (auto_inc_p): Prototype it.
+ * reload1.c (add_auto_inc_notes): New function.
+ (reload): Strip REG_INC notes and call add_auto_inc_notes
+ for each insn to restore them correctly.
+
+1999-03-15 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fixinc/Makefile.in (procopen.o): List the actual
+ dependencies.
+
+Sun Mar 14 16:22:10 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cse.c (check_fold_consts): New static function.
+ (cfc_args): New struct.
+ (simplify_relational_operation): Use them in call to
+ `do_float_handler'.
+
+ * toplev.c (do_float_handler): New function to wrap calls to
+ setjmp/set_float_handler.
+
+ * toplev.h (do_float_handler): Add extern prototype.
+
+ * tree.c (build_real_from_int_cst_1): New static function.
+ (brfic_args): New struct.
+ (build_real_from_int_cst): Use them in call to
+ `do_float_handler'.
+
+Sun Mar 14 01:15:06 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Mar 13 17:37:18 1999 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (sched_analyze_1): Only clear reg_last_uses on a SET.
+
+Sat Mar 13 11:36:16 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.c (arm_split_constant): Don't try to force a constant to
+ memory after arm_reorg has run.
+ (after_arm_reorg): New static variable.
+ (arm_reorg): Set it.
+ (output_func_epilogue): Clear it.
+
+Fri Mar 12 20:26:32 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * configure.in ({rs6000,powerpc}-ibm-aix*): Set float_format to none.
+ * configure: Rebuilt.
+
+Fri Mar 12 20:45:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * unroll.c (loop_iterations): Don't return a final value for EQ
+ comparison loops.
+
+Fri Mar 12 12:35:01 1999 Jim Wilson <wilson@cygnus.com>
+
+ * reload1.c (calculate_needs_all_insns): When ignore equivalence
+ setting insn, clear need_elim, need_reload, and need_operand_change.
+
+Fri Mar 12 07:54:43 1999 Bruce Korb <korb@datadesign.com>
+
+ * fixinc/fixinc.*: Some changes from the fixincl-branch
+ were not applied (??!!). Corrected.
+
+ * fixinc/Makefile.in: Same thing.
+
+Fri Mar 12 00:51:43 1999 Jeffrey A Law (law@cygnus.com)
+
+ * expr.c (expand_expr): Allow a CALL_EXPR with a mode wider than
+ MAX_INTEGER_COMPUTATION_MODE.
+
+Thu Mar 11 14:00:58 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (HARD_REGNO_MODE_OK): Disallow QI/HImode in fp regs.
+ (MODES_TIEABLE_P): Update.
+
+ * alpha.md (ev5_e0): Conflict loads and stores.
+
+Thu Mar 11 13:55:52 1999 Richard Henderson <rth@cygnus.com>
+
+ * machmode.h (smallest_mode_for_size): Prototype.
+ * stor-layout.c (smallest_mode_for_size): Remove static.
+
+Thu Mar 11 21:25:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Don't do biv increment -> DEST_REG giv
+ conversion if we don't know the lifetime.
+
+Thu Mar 11 20:37:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.1c (delete_address_reloads_1): Check for reloads of
+ CURRENT_INSN even if it sets DST.
+
+Thu Mar 11 10:29:50 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * dwarf2out.c (add_AT_lbl_offset): Rename from add_AT_section_offset.
+ (print_die, size_of_die, value_format, output_die): Adjust.
+
+Thu Mar 11 10:27:42 1999 Robert Lipe <robertlipe@usa.net>
+
+ * dwarf2out.c (TEXT_SECTION_LABEL, DEBUG_LINE_SECTION_LABEL,
+ DEBUG_INFO_SECTION_LABEL, ABBREV_SECTION_LABEL,
+ text_section_label, debug_line_section_label,
+ debug_info_section_label, abbrev_section_label): New.
+ (output_compilation_unit_header): Emit label associated
+ with section instead of section name itself.
+ (out_pubnames, output_aranges, output_line_info,
+ dwarf2out_finish): Likewise.
+ (dwarf2out_init): Build internal label names for sections
+ from static labels.
+
+Thu Mar 11 17:28:32 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (mulsi3): End mul.l sequence with a no-op move.
+
+Thu Mar 11 08:52:02 1999 Bruce Korb <korb@datadesign.com>
+
+ * Makefile.in: Activated fixinc/mkfixinc.sh.
+ * configure.in: Activated fixinc/mkfixinc.sh.
+
+Thu Mar 11 01:38:02 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * cppfiles.c (INO_T_EQ): Handle UWIN.
+
+ * c-common.c (decl_attributes): Flag unrecognized attribute
+ functions as warnings instead of as errors.
+
+ Support for i386-pc-uwin.
+ * i386/uwin.h: New file.
+ * i386/xm-uwin.h: New file.
+ * i386/t-uwin: New file.
+ * i386/uwin.asm: New file.
+ * configure.in (i[3456]86-*-uwin*): Define.
+ Add Workaround for vfork bug when hosted on uwin.
+ * configure: Regenerate.
+
+ * cccp.c (INO_T_EQ): Undefine. UWIN has inodes.
+ (absolute_filename): UWIN uses POSIX pathnames only.
+ * libgcc2.c (getpagesize): Do not define for UWIN.
+ (mprotect): Likewise.
+ * protoize.c (dirent.h): Conditionally include.
+ (fputc): Prototype only if it's not a macro.
+
+Wed Mar 10 02:49:04 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * configure.in: Remove init_priority stuff.
+
+1999-03-11 Colin Smith <colin@wrs.com>
+
+ * sdbout.c (plain_type_1): Make boolean types work better with sdb.
+
+Thu Mar 11 00:20:52 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * gcc.texi: Update bug reporting instructions to match
+ current ezmlm list reality.
+
+Wed Mar 10 23:11:19 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcc.c (print_file_name, print_prog_name, spec_machine,
+ read_specs, set_spec, lookup_compiler, build_search_list,
+ putenv_from_prefixes, find_a_file, record_temp_file,
+ delete_if_ordinary, handle_braces, do_spec, do_spec_1, find_file,
+ is_directory, validate_switches, used_arg, default_arg,
+ pfatal_with_name, perror_with_name, pfatal_pexecute, fatal, error,
+ notice, add_preprocessor_option, add_assembler_option,
+ add_linker_option, process_command, execute,
+ unused_prefix_warnings, clear_args, fatal_error,
+ lang_specific_driver, user_specs, compiler, link_command_spec,
+ option_map, translate_options, make_temp_file, temp_name,
+ programname, path_prefix, machine_suffix, just_machine_suffix,
+ gcc_exec_prefix, standard_exec_prefix, standard_exec_prefix_1,
+ md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1,
+ standard_startfile_prefix, standard_startfile_prefix_1,
+ standard_startfile_prefix_2, tooldir_base_prefix, tooldir_prefix,
+ multilib_dir, temp_filename, temp_file, command, switchstr,
+ infile, outfiles, input_filename, input_basename, input_suffix,
+ check_live_switch, main): Qualify a char* with the `const' keyword.
+
+Wed Mar 10 20:28:29 1999 Jeffrey A Law (law@cygnus.com)
+
+ * lcm.c: New file.
+ * Makefile.in (OBJS): Add lcm.o.
+ (lcm.o): Add dependencies.
+
+ * gcse.c (compute_pre_local_properties): Delete.
+ (compute_pre_data): Use compute_local_properties instead of
+ compute_pre_local_properties.
+
+ * gcse.c: More comments, whitespace and similar fixes.
+ (dump_cuid_table, maybe_set_rd_gen, dump_cprop_data): Delete.
+ (dump_pre_data, compute_cprop_local_properties): Likewise.
+ (one_classic_gcse_pass): Lose unused argument. All callers changed.
+ (compute_hash_table, compute_expr_hash_table): Likewise.
+ (compute_set_hash_table, one_pre_gcse_pass, mark_call): Likewise.
+ (cprop_insn, cprop, one_cprop_pass): Add new argument ALTER_JUMPS.
+ All callers changed. Only alter jumps if ALTER_JUMPS is nonzero.
+ Lose unused argument.
+ (gcse_main): Always run a cprop pass after finishing global cse.
+ (compute_local_properties): New function.
+ (hash_scan_pat, hash_scan_insn): No longer call maybe_set_rd_gen.
+ (compute_cprop_data): Use compute_local_properties.
+
+ * gcse.c: Update various comments.
+ (current_function_calls_longjmp): Delete declaration.
+
+ * gcse.c (run_jump_opt_after_gcse): New variable.
+ (gcse_main): Returns an integer.
+ (hash_scan_set): Record initializations from CONST_DOUBLEs too.
+ (try_replace_reg): Update some comments.
+ (cprop_insn): Allow propagation into some JUMP_INSNs too.
+ * rtl.h (gcse_main): Update prototype.
+ * toplev.c (rest_of_compilation): If gcse_main returns nonzero,
+ then run a jump optimization pass.
+ * jump.c (delete_barrier_successors): Delete nop jumps too.
+
+Wed Mar 10 19:04:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (fp_arith_reg_operand): Actually test if reg is suitable
+ for FP arithmetic. Changed caller.
+ * sh.md (subsf3, subsf_i): Use fp_arith_reg_operand.
+
+Wed Mar 10 18:56:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (choose_reload_regs): When inheriting from the frame
+ pointer, don't clobber it.
+
+Wed Mar 10 08:01:52 1999 Bruce Korb <korb@datadesign.com>
+
+ * fixinc/fixinc.*: Resync-ed with the files in this
+ directory.
+
+ * fixinc/mkfixinc.sh: The machine case elements were
+ out-of-order. (the ix86-*-linux-gnu* entry needed to
+ be earlier).
+
+Wed Mar 10 00:01:24 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (reload_combine_note_store): Fix calculation of number
+ of affected registers.
+
+Tue Mar 9 15:48:15 1999 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (tidy_fallthru_edge): Be more careful finding the last
+ BARRIER of a list. Delete the cc0 setter as well as a cond jump.
+
+Tue Mar 9 15:26:02 1999 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * i386.md (ashlsi3 splitter): Fix typo in last change.
+
+Tue Mar 9 11:35:20 1999 Richard Henderson <rth@cygnus.com>
+
+ * reg-stack.c (stack_reg_life_analysis): Use returnjump_p
+ instead of an explicit test for RETURN.
+
+Tue Mar 9 09:33:16 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (toplev.o): Depend on $(BASIC_BLOCK_H).
+
+ * toplev.c: Include basic-block.h.
+
+Tue Mar 9 02:08:17 1999 Jeffrey A Law (law@cygnus.com)
+
+ * calls.c (load_register_parameters): New function.
+ (expand_call): Use it.
+
+ * calls.c (expand_call): Slightly reorganize code.
+
+ * calls.c (compute_argument_addresses): New function.
+ (rtx_for_function_call): New function.
+ (expand_call): Use them.
+
+ * i386.md (zero_extendhisi2): Split into an expander and anonymous
+ pattern. Add new anonymous pattern for use when optimizing for
+ size or for the PPro.
+ (zero_extendqihi2, zero_extendqisi2): Likewise.
+
+Mon Mar 8 23:43:47 1999 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (sched_analyze_1): Fix last change -- add clobber
+ dependencies to sets in the non-hard-reg case too.
+
+Mon Mar 8 18:55:21 1999 Marc Espie <espie@cvs.openbsd.org>
+
+ * config/openbsd.h (HANDLE_SYSV_PRAGMA): Define.
+
+Mon Mar 8 16:04:44 1999 Jim Wilson <wilson@cygnus.com>
+
+ * local-alloc.c (combine_regs): Don't combine if we have a hard reg
+ for which CLASS_LIKELY_SPILLED_P is true.
+
+ * unroll.c (loop_iterations): Only call loop_find_equiv_value if we
+ have a REG or SUBREG.
+
+Mon Mar 8 15:27:42 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i386.md (ashlsi3): Revise comments. Provide new anonymous
+ pattern for Pentium and PPro/PII. Reverse constraints in
+ generic ashlsi3 anonymous pattern.
+
+ * calls.c (initialize_argument_info): Accept a pointer to
+ CUMULATIVE_ARGS.
+ (expand_call): Pass the address of CUMULATIVE_ARGS.
+
+ * rs6000/xm-sysv4.h (HOST_BITS_PER_LONGLONG): Remove #if 0.
+
+ * mn10300.h (CASE_DROPS_THROUGH): Delete.
+ * mn10200.h (CASE_DROPS_THROUGH): Delete.
+ * h8300.h (CASE_DROPS_THROUGH): Delete.
+
+ * flow.c (merge_blocks_nomove): For HAVE_cc0 targets, make sure
+ to also delete the cc0 setter when deleting a conditional branch
+ to the next block.
+
+Mon Mar 8 18:47:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * regmove.c (copy_src_to_dest): New argument max_old_uid.
+
+Mon Mar 8 08:23:00 1999 Bruce Korb <korb@datadesign.com>
+
+ * ChangeLog: Merged entries from fixincl-branch.
+
+Sun Mar 7 11:48:56 1999 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (ENCODE_BLOCKAGE): Don't shift unit too far.
+ (print_exp): Special case addition of a constant.
+ (print_value) [CONST_INT]: Use HOST_WIDE_INT_PRINT_HEX.
+
+Sun Mar 7 11:21:02 1999 Richard Henderson <rth@cygnus.com>
+
+ * haifa-sched.c (reg_last_clobbers): New.
+ (reg_pending_clobbers, bb_reg_last_clobbers): New.
+ (compute_block_backward_dependences): Allocate memory for them.
+ (schedule_region): Likewise.
+ (sched_analyze_1): Clobbers don't interfere with one another.
+ They do interfere with sets ...
+ (sched_analyze_2): ... and uses.
+ (sched_analyze): Likewise.
+ (sched_analyze_insn): Update reg_last_clobbers appropriately.
+
+Sun Mar 7 08:30:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gmon-sol2.c: Include config.h and system.h. Don't redundantly
+ include system header files.
+ (sccsid): Remove.
+ (moncontrol, monstartup, _mcleanup, internal_mcount): Prototype.
+ (_mcleanup): Add the `const' keyword to a char*.
+ (internal_mcount): Declare `etext' as a char[] not a function.
+ Cast `etext' to char* when calling `monstartup'.
+
+ * sparc.c (frame_base_name, save_regs, restore_regs,
+ build_big_number, sparc_cmodel_string, sparc_align_loops_string,
+ sparc_align_jumps_string, sparc_align_funcs_string, code_model,
+ cpu_default, cpu_table, output_function_prologue,
+ output_function_epilogue, output_return,
+ sparc_flat_output_function_prologue, ultra_code_names,
+ sparc_flat_output_function_epilogue): Constify a char*.
+ (hypersparc_adjust_cost): Add a default case in a switch.
+
+ * sparc.h (sparc_cmodel_string, OVERRIDE_OPTIONS,
+ sparc_cpu_select, sparc_align_loops_string,
+ sparc_align_jumps_string, sparc_align_funcs_string,
+ output_return): Constify a char*.
+
+ * sparc.md (movdi): Change the comparison of HOST_BITS_PER_WIDE_INT
+ so that we check "== 32", instead of "!= 64". Cast a value to
+ HOST_WIDE_INT when comparing against one. Hide the declaration
+ for variable `chain'.
+
+Sun Mar 7 08:05:27 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (const, inline): Move the stage2 handling of these
+ keywords-as-macros from here...
+
+ * gansidecl.h (const, inline): ...to here.
+
+Sun Mar 7 02:44:15 1999 Richard Henderson <rth@cygnus.com>
+
+ * recog.c (push_operand, pop_operand): VOIDmode needn't match modes.
+
+Sun Mar 7 01:58:47 1999 Richard Henderson <rth@cygnus.com>
+
+ * cse.c (canon_hash): Never reject hard regs in CCmode.
+
+Sun Mar 7 01:15:04 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Mar 6 17:18:44 1999 Richard Earnshaw (rearnsha@arm.com)
+ Richard Henderson <rth@cygnus.com>
+
+ * flow.c (make_edges): Handle casesi that jump to default branch.
+ If CASE_DROPS_THROUGH, force fallthru to block after casesi.
+
+Sat Mar 6 07:49:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-aux-info.c (data_type, affix_data_type, gen_decl,
+ gen_formal_list_for_type, gen_formal_list_for_func_def, gen_type):
+ Qualify a char* with the `const' keyword.
+
+ * c-common.c (declare_hidden_char_array, add_attribute, if_elt,
+ declare_function_name, decl_attributes, format_char_info,
+ check_format_info, binary_op_error): Likewise.
+
+ * cexp.y (yyerror, error, pedwarn, warning, token): Likewise.
+
+ * gcse.c (dump_hash_table): Likewise.
+
+ * integrate.c (function_cannot_inline_p): Likewise.
+
+ * optabs.c: Include insn-config.h earlier.
+ (init_libfuncs, init_integral_libfuncs, init_floating_libfuncs):
+ Qualify a char* with the `const' keyword.
+
+ * real.c (asctoe24, asctoe53, asctoe64, asctoe113, asctoe,
+ asctoeg, mtherr, ereal_atof): Likewise.
+
+ * real.h (ereal_atof): Likewise.
+
+ * sbitmap.c (dump_sbitmap_vector): Likewise.
+
+ * sbitmap.h (dump_sbitmap_vector): Likewise.
+
+ * stmt.c (nesting, n_occurrences, expand_start_case): Likewise.
+
+ * toplev.c (rest_of_compilation): Likewise.
+
+ * tree.h (function_cannot_inline_p, expand_start_case): Likewise.
+
+Fri Mar 5 23:16:42 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Add 64-bit support and do
+ not overwrite AIX link register save area.
+
+Fri Mar 5 23:08:01 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_reloads_subreg_address): Actually create the USE
+ for the register, not the new memory location.
+
+Fri Mar 5 21:41:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload1.c (emit_reload_insns): If pseudo that can't be replaced
+ with its equivalent constant, fall back to reload_in.
+
+Fri Mar 5 13:20:39 1999 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in: Delete .flow2 debugging files.
+
+Fri Mar 5 11:36:11 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (arm_override_options): Change default target
+ cpu selection so that enabling TARGET_APCS_32 does not override
+ default target CPU.
+
+Fri Mar 5 19:26:23 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (SLOW_BYTE_ACCESS): Define to 1.
+ (BOOL_TYPE_SIZE): Define.
+
+Fri Mar 5 02:14:54 1999 John Wehle (john@feith.com)
+
+ * function.c (assign_stack_temp_for_type): Abort
+ if mode == Blkmode and align is less than
+ BIGGEST_ALIGNMENT / BITS_PER_UNIT.
+ (assign_stack_temp_for_type): Round the size parameter
+ passed to assign_stack_local instead of size itself.
+
+Thu Mar 4 15:00:35 1999 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (delete_unreachable_blocks): Mark blocks as they
+ are put on to the worklist, not as they are taken off.
+
+Thu Mar 4 00:05:44 1999 Jeffrey A Law (law@cygnus.com)
+
+ * function.c (current_function_has_computed_jump): Remove duplicate
+ definition.
+
+Wed Mar 3 19:09:11 1999 Jim Wilson <wilson@cygnus.com>
+
+ * m68k/m68020-elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Undef.
+ (STARTFILE_SPEC, ENDFILE_SPEC): Define to empty string.
+
+ * sparc/elf.h (MULDI3_LIBCALL, DIVDI3_LIBCALL, UDIVDI3_LIBCALL,
+ MODDI3_LIBCALL, UMODDI3_LIBCALL, STDC_0_IN_SYSTEM_HEADERS): Undef.
+ (INIT_SUBTARGET_OPTABS): Define to empty.
+
+Wed Mar 3 00:00:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.c (force_into): New function.
+ (expand_block_move): Use it.
+
+Tue Mar 2 10:39:43 1999 Nick Clifton <nickc@cygnus.com>
+
+ * cccp.c (struct default_include): Add 'included' field.
+ (main): Set 'included' field when a default include directory
+ is added to the chain. If -v is specified list all default
+ include directories which do not get appended to the chain.
+
+Tue Mar 2 09:24:10 1999 Nick Clifton <nickc@cygnus.com>
+
+ * configure.in (gxx_include_dir): Rename to
+ gcc_gxx_include_dir in order to prevent it being overridden by
+ a top level Makefile.
+ (gcc_tooldir): If $exec_prefix != $prefix then use the
+ difference between the two as the basis for gcc_tooldir.
+
+ * configure: Rebuild.
+
+ * Makefile.in: Rename gxx_include_dir to gcc_gxx_include_dir.
+
+Tue Mar 2 16:45:31 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * unroll.c (copy_loop_body): Don't make extra copies of
+ NOTE_INSN_LOOP_CONT notes.
+
+Tue Mar 2 07:44:56 1999 Mark Mitchell <mark@markmitchell.com>
+
+ * tree.c (save_tree_status): Don't treat functions with no context
+ as nested.
+
+Tue Mar 2 09:37:05 1999 Robert Lipe <robertlipe@usa.net>
+
+ * Makefile.in (MAKEINFO): Use makeinfo built from sibling
+ tree when available.
+
+Tue Mar 2 10:12:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.c (alpha_cpu_name, alpha_cpu_string, alpha_tp_string,
+ alpha_fprm_string, alpha_fptm_string, alpha_mlat_string,
+ current_function_file): Add the `const' keyword.
+ (normal_memory_operand): Mark parameter `mode' with
+ ATTRIBUTE_UNUSED.
+ (alpha_expand_unaligned_load): Add a default case to a switch.
+
+ * alpha.h (alpha_cpu_string, alpha_fprm_string, alpha_fptm_string,
+ alpha_tp_string, alpha_mlat_string): Add the `const' keyword.
+ (normal_memory_operand): Add prototype.
+
+ * alpha.md: Cast an expression to `unsigned HOST_WIDE_INT' when
+ comparing against one.
+
+Tue Mar 2 10:00:21 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.c (abort_with_insn): Make function static, add a prototype,
+ constify 2nd parameter and mark with ATTRIBUTE_NORETURN.
+ (current_function_file, mips_cpu_string, mips_isa_string,
+ mips_abi_string, mips_no_mips16_string, mips_entry_string,
+ mips_move_1word, mips_move_2words, output_block_move, load_store,
+ override_options, make_temp_file, mips16_fp_args): Qualify a char*
+ with the `const' keyword.
+
+ * mips.h (current_function_file, mips_cpu_string, mips_isa_string,
+ mips_abi_string, mips_entry_string, mips_no_mips16_string,
+ mips_move_1word, mips_move_2words, output_block_move): Likewise.
+ (abort_with_insn): Remove extern prototype.
+
+ * mips.md: Qualify a char* with the `const' keyword.
+ Remove many unused variables named `label'.
+
+Tue Mar 2 01:27:52 1999 H.J. Lu (hjl@gnu.org)
+
+ * Makefile.in (cpp_install_dir, INSTALL_CPP, UNINSTALL_CPP): New
+ variables.
+ (install-cpp, uninstall-cpp): New targets.
+ (install-normal): Depend on $(INSTALL_CPP).
+ (uninstall): Depend on $(UNINSTALL_CPP).
+ * configure.in (cpp_install_dir): New, substitute.
+ (tmake_file): Added t-install-cpp for --enable-cpp.
+ * configure: Rebuilt.
+ * cpp.sh: New cpp script.
+ * config/t-install-cpp: New target fragment.
+
+Tue Mar 2 01:40:01 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+ Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (fold_rtx): Update comments for (const (minus (label) (label)))
+ case.
+ (cse_insn): Avoid creating a bogus REG_EQUAL note for
+ (const (minus (label) (label)))
+ (record_jump_cond): Fix mismatched paren in comment.
+
+Tue Mar 2 01:07:12 1999 Dan Nicolaescu <dann@godzilla.ics.uci.edu>
+
+ * final.c (end_final): There are 11 words in the "main header"
+ structure, not 10.
+
+Tue Mar 2 00:09:18 1999 Marc Espie <espie@cvs.openbsd.org>
+
+ * extend.texi: Reference __extension__ in the index.
+
+Mon Mar 1 19:09:32 1999 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in (CROSS_FLOAT_H): Delete.
+ (FLOAT_H): Use float_h_file.
+ (rest.cross, stmp-int-hdrs): Delete gfloat.h dependency.
+ (gfloat.h): Delete.
+ (stmp-int-hdrs): Use FLOAT_H instead of gfloat.h.
+ (mostlyclean): Delete gloat.h reference.
+ (install-cross-rest, install-float-h-cross, stmp-headers): Update
+ comments.
+ * configure.in (sparcv9-*-solaris2*): Set float_format to none.
+ (sparc-*-solaris2*): Set float_format to none for 2.5 and higher.
+ (float_h_file): Set from float_format. Substitute into Makefile.in.
+ (float_format): No longer substitute into Makefile.in.
+ * cross-make (FLOAT_H): Delete.
+ * config/mips/t-cross64 (FLOAT_H): Delete.
+ * configure: Rebuilt.
+
+Mon Mar 1 16:36:18 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mips.md (div_trap_normal, div_trap_mips16): Require the dependent
+ insn to be an INSN before looking at its pattern.
+
+Mon Mar 1 15:03:51 1999 Jim Wilson <wilson@cygnus.com>
+
+ * config/m68k/lb1sf68.asm (udivsi3): Change jmi to jcs. Fix comments.
+ * config/m68k/m68k.h (LEGITIMATE_INDEX_REG_P): Reject SIGN_EXTEND of
+ HImode reg when TARGET_5200.
+
+Mon Mar 1 21:44:30 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ From Toshiyasu Morita:
+ * sh.h (CACHE_LOG): SH2 has cache, too.
+
+Mon Mar 1 14:23:36 1999 Catherine Moore <clm@cygnus.com>
+
+ * toplev.c (compile_file): Disable -ffunction-sections and
+ debugging warning if the object format is elf.
+
+Mon Mar 1 11:46:25 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/h8300/h8300.c (print_operand): Use 16 bit addressing
+ when the data in 8-bit area and can not be addressed by 8-bit.
+
+Sun Feb 28 16:40:00 1999 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (create_basic_block): Disregard integrated bb notes.
+
+Sun Feb 28 15:57:06 1999 Richard Henderson <rth@cygnus.com>
+
+ * sparc.md (blockage, nonlocal_goto_receiver): Set length to 0.
+
+Sun Feb 28 14:47:53 1999 Arturo Montes <mitosys@colomsat.com.co>
+
+ * config/i386/t-sco5gas (crti.o): New target.
+
+Sun Feb 28 15:10:17 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (elf_high, movsi_got, *movsi_got_internal,
+ *movsi_got_internal_mem, GOT splitter, movdf_hardfloat32,
+ movdf_softfloat32, movdf_hardfloat64, movdf_softfloat64,
+ load_multiple, allocate_stack, call_indirect_aix32,
+ call_indirect_aix64, call_value_indirect_aix32,
+ call_value_indirect_aix64, call_indirect_nt,
+ call_value_indirect_nt): Use gpc_reg_operand instead of
+ register_operand.
+
+Sun Feb 28 15:10:17 1999 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.md (one_cmplsi2, andsi3, iorsi3, xorsi3, *eqvsi3,
+ *andcsi3, *iorcsi3, *nandsi3, *norsi3): Add alternatives to use CR
+ other than cr0.
+ * rs6000.c (and{,64}_operand): If the user did -ffixed-cr0, don't
+ allow andi. or andis. which always set cr0.
+
+Sun Feb 28 01:15:04 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Feb 28 02:00:38 1999 Jeffrey A Law (law@cygnus.com)
+
+ * invoke.texi: Update information for PA scheduling.
+
+Sat Feb 27 23:21:47 1999 Jerry Quinn <jquinn@nortelnetworks.com>
+ Mike Stump <mrs@wrs.com>
+
+ * pa.c (override_options): Change default to 7100LC.
+
+ * pa.h (REG_ALLOC_ORDER): Change order to allocate left half of
+ float regs before right half of float regs.
+
+Sat Feb 27 22:48:38 1999 H.J. Lu (hjl@gnu.org)
+ Jeffrey A Law (law@cygnus.com)
+
+ * frame.h: Update some comments.
+ * defaults.h (TARGET_ATTRIBUTE_WEAK): Define.
+ * crtstuff.c (__register_frame_info, __deregister_frame_info): Declare
+ using TARGET_WEAK_ATTRIBUTE.
+ (__do_global_dtors_aux): Check if __deregister_frame_info is
+ zero before calling it.
+ (__do_global_dtors): Likewise.
+ (frame_dummy): Check if __register_frame_info is zero before
+ calling it.
+ (__frame_dummy): Likewise.
+
+Sat Feb 27 19:18:24 1999 Jeffrey A Law (law@cygnus.com)
+
+ * SERVICE: Update from the FSF.
+
+Sat Feb 27 14:31:22 1999 Arturo Montes <mitosys@colomsat.com.co>
+
+ * config/i386/t-sco5 (crti.o): New target.
+ * config/i386/sco5.h (STARTFILE_SPEC): Include crti.o when
+ linking -shared.
+ * configure.in (i[34567]86-*-sco3.2v5*): Add crti.o.
+
+Sat Feb 27 01:12:40 1999 Jeffrey A Law (law@cygnus.com)
+
+ * md.texi (prologue,epilogue): Document named patterns.
+
+Fri Feb 26 19:31:25 1999 Dave Love <fx@gnu.org>
+
+ * md.texi, invoke.texi: Fix unterminated @xrefs.
+
+Fri Feb 26 15:33:45 1999 Richard Henderson <rth@cygnus.com>
+
+ * genattrtab.c (simplify_knowing): Fix uninitialized read
+ in Feb 21 change.
+
+ * genextract.c (main): Clear recog_operands before extracting.
+
+Fri Feb 26 02:24:57 1999 Jeffrey A Law (law@cygnus.com)
+
+ * c-pragma.c (add_weak); Delete. Moved into...
+ * varasm.c (add_weak): New external function.
+ (declare_weak): If HANDLE_PRAGMA_WEAK, then add the function to
+ the list of weak functions.
+ * c-pragma (add_weak): Declare.
+
+Thu Feb 25 23:43:59 1999 Richard Henderson <rth@cygnus.com>
+
+ Flow rewrite to use basic block structures and edge lists:
+
+ * basic-block.h (x_basic_block_head, x_basic_block_end): Kill.
+ (basic_block_computed_jump_target, basic_block_live_at_start): Kill.
+ (struct edge_def): New.
+ (struct basic_block_def): New.
+ (basic_block_info): New.
+ (BLOCK_HEAD, BLOCK_END): Update.
+ (ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): New.
+ (uid_block_number): Kill.
+ (basic_block_for_insn, BLOCK_FOR_INSN): New.
+ (BLOCK_NUM): Update.
+ * flow.c (XNMALLOC): Kill.
+ (max_uid_for_flow): Kill.
+ (uid_block_number): Kill.
+ (uid_volatile): Turn into a bitmap.
+ (SET_INSN_VOLATILE): New.
+ (basic_block_info): New.
+ (entry_exit_blocks): New.
+ (x_basic_block_head, x_basic_block_end): Kill.
+ (basic_block_computed_jump_target, basic_block_live_at_start): Kill.
+ (flow_int_list_blocks, basic_block_succ, basic_block_pred): Kill.
+ (basic_block_loop_depth): Kill.
+ (basic_block_for_insn): New.
+ (find_basic_blocks): Split out initial block counting into
+ count_basic_blocks. Call functions split out of find_basic_blocks_1.
+ (count_basic_blocks): New.
+ (find_basic_blocks_1): Split out edge recognition, unreachable
+ block deletion.
+ (create_basic_block): New.
+ (compute_bb_for_insn): New.
+ (clear_edges): New.
+ (free_bb_memory): Kill.
+ (add_edge, add_edge_to_label): Kill.
+ (mark_label_ref): Kill.
+ (make_edges): Rewrite to use edge lists.
+ (make_edge, make_label_edge): New.
+ (mark_critical_edges): New.
+ (split_edge, insert_insn_on_edge): New.
+ (commit_one_edge_insertion, commit_edge_insertions): New.
+ (delete_unreachable_blocks): Rewrite to use edge lists.
+ Split out EH region manipulation into delete_eh_regions.
+ Call tidy_fallthru_edge and merge_blocks.
+ (delete_eh_regions): New.
+ (delete_note_p): New.
+ (delete_insn_chain): New.
+ (delete_block): Split out code into delete_insn_chain and
+ tidy_fallthru_edge. Update edge lists.
+ (expunge_block): New.
+ (flow_delete_insn): New?
+ (can_delete_label_p): New?
+ (merge_blocks_nomove, merge_blocks): New.
+ (tidy_fallthru_edge): New.
+ (calculate_loop_depth): New.
+ (life_analysis): Allocate and free uid_volatile.
+ (free_basic_block_vars): Update for new structures.
+ (record_volatile_insns): Use SET_INSN_VOLATILE.
+ (mark_regs_live_at_end): Tidy EXIT_IGNORE_STACK usage.
+ (mark_used_regs): Likewise.
+ (life_analysis_1): Use bb global_live_at_start, global_live_at_end,
+ local_set regsets. Use bb->aux to store new_live_at_end. Begin
+ life propagation from EXIT_BLOCK rather than last block. Clear
+ regs_ever_live after mark_regs_live_at_end.
+ (allocate_for_life_analysis): Update for new structures.
+ (propagate_block): Split out loop depth calculation to
+ calculate_loop_depth.
+ (regno_uninitialized): Use bb->global_live_at_start.
+ (regno_clobbered_at_setjmp): Likewise.
+ (dump_bb_data): Likewise.
+ (find_auto_inc): Use BLOCK_FOR_INSN instead of BLOCK_NUM.
+ (dump_flow_info): Update for new structures.
+ (dump_edge_info): New.
+ (print_rtl_with_bb): Update for new structures.
+ (compute_preds_succs): Do no work -- convert edge lists.
+ (set_block_for_insn): From corpse of old set_block_num.
+ (set_block_num): Call it.
+
+ * rtl.c (note_insn_name): Add NOTE_INSN_BASIC_BLOCK.
+ * rtl.h (rtunion_def): Add bb entry.
+ (NOTE_BASIC_BLOCK): New.
+ (NOTE_INSN_BASIC_BLOCK): New.
+
+ * varray.h (varray_data_tag): Add bb entry.
+ (VARRAY_BB_INIT, VARRAY_BB): New.
+
+ * emit-rtl.c (emit_label_before): New.
+
+ * except.c (expand_rethrow): Delete insns following the call to
+ rethrow. Put the REG_EH_RETHROW on the call.
+
+ * jump.c (returnjump_p, returnjump_p_1): New.
+
+ * expr.h (nonlocal_goto_handler_labels): New declaration.
+ * function.c (nonlocal_goto_handler_labels): Define it.
+ (push_function_context_to): Save it.
+ (pop_function_context_from): Restore it.
+ (init_function_start): Clear it.
+ (nonlocal_label_rtx_list): Kill.
+ * function.h (struct function): Add storage space for it.
+ * stmt.c (expand_nl_handler_label): Return the new label.
+ (expand_nl_goto_receivers): Collect a list of them in
+ nonlocal_goto_handler_labels.
+
+ * Makefile.in (print-rtl.o): Depend on basic-block.h.
+ (flow.o): Depend on insn-flags.h.
+
+ * function.c (thread_prologue_and_epilogue_insns): Do not
+ half-heartedly update bb structures.
+
+ * toplev.c: Add flow2 dump as -dw.
+ (rest_of_compilation): Finish .greg before flow2.
+
+ * graph.c (draw_edge): Handle class 3.
+ (print_rtl_graph_with_bb): Make abnormal edges red class 2,
+ change non-fall-thru but adjacent to green class 3. Update
+ to use new structures.
+
+ * print-rtl.c (print_rtx): Handle NOTE_INSN_BASIC_BLOCK.
+
+ * reg-stack.c (BLOCK_NUM): Convert to function. Abort if
+ block_number is -1.
+ (reg_to_stack): Initialize block_num to -1.
+
+ * combine.c (set_nonzero_bits_and_sign_copies): Update reference
+ to basic_block_live_at_start to bb->global_live_at_start.
+ (try_combine): Likewise.
+ (reg_dead_at_p): Likewise.
+ * global.c (global_conflicts): Likewise.
+ Handle stack regs on all abnormal edges, not just computed jumps.
+ (mark_elimination): Update reference to basic_block_live_at_start.
+ (build_insn_chain): Likewise.
+ * haifa-sched.c (haifa_edge): Rename from edge for conflict.
+ (is_cfg_nonregular): Look at nonlocal_goto_handler_labels instead
+ of nonlocal_label_rtx_list.
+ (check_live_1): Update reference to basic_block_live_at_start.
+ (update_live_1): Likewise.
+ (find_pre_sched_live): Likewise.
+ (find_post_sched_live): Likewise.
+ * local-alloc.c (update_equiv_regs): Likewise.
+ (block_alloc): Likewise.
+ * reload1.c (reload, reload_combine): Likewise.
+ * regmove.c (mark_flags_life_zones): Likewise.
+ * resource.c (mark_target_live_regs): Likewise.
+ * sched.c (schedule_block): Likewise.
+
+ * regclass.c (regset_release_memory): Don't free
+ basic_block_live_at_start.
+
+ * unroll.c (copy_loop_body): Don't duplicate NOTE_INSN_BASIC_BLOCK.
+
+Thu Feb 25 21:32:34 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * fixinc.wrap: Also handle struct queue in sys/stream.h.
+ * fixinc.svr4: Likewise.
+
+ * dwarf2out.c (scope_die_for): Set scope_die to comp_unit_die
+ rather than asserting it.
+
+Thu Feb 25 23:33:06 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cppexp.c (left_shift, right_shift, parse_charconst, COMPARE,
+ cpp_parse_expr): Replace uses of long/HOST_BITS_PER_LONG with
+ HOST_WIDEST_INT/HOST_BITS_PER_WIDEST_INT.
+
+ * Makefile.in (cppmain.o, cpplib.o, cpphash.o, cppalloc.o,
+ cpperror.o, cppexp.o, cppfiles.o, cppinit.o, fix-header.o,
+ scan-decls.o): Don't depend on machmode.h.
+
+ * cppexp.c: Don't define CHAR_BIT or HOST_BITS_PER_WIDE_INT anymore.
+ Replace all instances of HOST_WIDE_INT with HOST_WIDEST_INT.
+
+ * cppfiles.c: Likewise.
+
+ * cpplib.c: Likewise.
+
+ * cpplib.h: Likewise. Also don't include machmode.h anymore.
+
+Thu Feb 25 18:46:26 1999 Richard Henderson <rth@cygnus.com>
+
+ * gcc.c (default_compilers): Define __FAST_MATH__ when appropriate.
+ * objc/lang-specs.h: Likewise.
+
+Thu Feb 25 16:19:43 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (call patterns): Lose unused argument to output_call.
+
+ * print-rtl.c (print_rtl): Print /j and /c for the jump/call flags.
+
+1999-02-25 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpphash.c (install): Rename to cpp_install, add cpp_reader*
+ first argument. All callers changed.
+ (hashtab): Removed.
+ (cpp_lookup, cpp_install): Change all refs to hashtab to
+ pfile->hashtab.
+ (cpp_hash_cleanup): Removed.
+ * cpphash.h: Adjust prototypes.
+ * cpplib.h (struct cpp_reader): Add hashtab pointer.
+ * cppinit.c (cpp_reader_init): Also allocate space for the
+ hashtab.
+ (cpp_cleanup): Delete all macros and free the hashtab.
+
+Thu Feb 25 21:52:54 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.h (PASS_IN_REG_P): For TARGET_HITACHI, don't pass structures
+ in registers.
+
+ * expr.h (PRETEND_OUTGOING_VARARGS_NAMED): Provide default definition.
+ * function.c (assign_parms): Honor PRETEND_OUTGOING_VARARGS_NAMED.
+ * calls.c (expand_call): Likewise.
+
+ * sh.c (sh_expand_prologue): For TARGET_HITACHI, don't push varargs /
+ stdarg arguments.
+ * sh.h (CPP_SPEC): Add -D__HITACHI__ for -mhitachi.
+ (FUNCTION_ARG): For TARGET_HITACHI, don't pass unnamed
+ arguments in registers.
+ (PRETEND_OUTGOING_VARARGS_NAMED): Define.
+ * va-sh.h (entire file): If __HITACHI__ is defined, use sh[123]
+ flavor varargs.
+
+Thu Feb 25 14:32:40 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cse.c (dump_class): Revert last change and make the prototype
+ extern.
+
+Thu Feb 25 19:13:42 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * rtl.h (insn_first_p): Don't declare.
+ * rtlanal.c (insn_first_p): Delete.
+ * loop.c (loop_insn_first_p): Faster implementation.
+
+Thu Feb 25 10:44:35 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.h (TARGET_SWITCHES): Delete deprecated switches -m[236].
+ (TARGET_3, TARGET_6): Delete.
+ (ARM_FLAG_ARM[36]): Delete.
+ (CPP_CPU_ARCH_SPEC): No need to handle -m[236] any more.
+ (CC1_SPEC): Don't expand -m[236] into new equivalents.
+ (CPP_APCS_PC_SPEC): No need to handle -m[236] any more.
+ * arm.c (arm_override_options): Delete warnings about deprecated
+ options -m[236].
+
+ * arm.c (arm_finalize_pic): Build the label into the special pic
+ adjustment insn instead of issuing it separately.
+ * arm.md (pic_add_dot_plus_eight): Rework to contain the label
+ that is needed.
+
+ * arm.md (*zeroextractqi_compare0_scratch): Delete.
+ (*ne_zeroextractsi): New pattern.
+
+Thu Feb 25 18:40:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * stmt.c (expand_end_loop): Grok code emitted by
+ expand_exit_loop_if_false.
+
+Thu Feb 25 10:17:32 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (return_in_memory): Float fields in unions
+ force a return in memory.
+ (load_multiple_sequence): Add comment explaining why two LDR
+ instructions can be better than an LDMIA instruction.
+
+ * config/arm/arm.h (TARGET_SHORT_BY_BYTES): Add comment
+ describing the real meaning of this option.
+ (FIXED_REGISTERS): Default r10 to not-fixed.
+ (CALL_USED_REGISTERS): Default r10 to not-call-used.
+ (SUBTARGET_CONDITIONAL_REGISTER_USAGE): If not defined, define
+ as empty.
+ (CONDITIONAL_REGISTER_USAGE): Fix r10 if TARGET_APCS_STACK is
+ true. Invoke SUBTARGET_CONDITIONAL_REGISTER_USAGE after
+ performing other checks.
+
+ * config/arm/arm.md (zero_extendhisi2): Undo previous change.
+ (extendhisi2): Undo previous change.
+ Also add comments describing why TARGET_SHORT_BY_BYTES can be
+ ignored for armv4(t) architectures.
+
+ * config/arm/riscix.h (SUBTARGET_CONDITIONAL_REGISTER_USAGE):
+ Define to fix r10.
+
+ * config/arm/riscix1-1.h
+ (SUBTARGET_CONDITIONAL_REGISTER_USAGE): Define to fix r10.
+
+Thu Feb 25 12:09:04 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cse.c (dump_class): Make the function definition static to match
+ the prototype.
+
+Wed Feb 24 17:47:28 1999 Jim Wilson <wilson@cygnus.com>
+
+ * dbxout.c (gstab.h): Use if CROSS_COMPILE.
+
+ * dwarf2out.c (add_location_or_const_value_attribute): Add big
+ endian correction for parms passed in regs but living on the stack.
+
+Wed Feb 24 14:03:54 1999 Jeffrey A Law (law@cygnus.com)
+
+ * calls.c (initialize_argument_information): New function extracted
+ from expand_call.
+ (expand_call): Use initialize_argument_information. Remove variables
+ which are no longer used due to cleanups.
+
+ * calls.c (compute_argument_block_size): New function, extracted from
+ expand_calls.
+ (expand_calls): Use compute_argument_block_size. Delete
+ original_args_size, use unadjusted_args_size instead.
+
+ * calls.c (precompute_arguments): New function, extracted from
+ expand_call.
+ (expand_call): Use precompute_arguments.
+
+ * calls.c (finalize_must_preallocate): New function, extracted from
+ expand_call.
+ (expand_call): Use finalize_must_preallocate.
+
+ * calls.c (store_one_arg): Mark "variable_size" as possibly unused.
+
+ * regclass.c (record_reg_classes, case 'p'): Set classes appropriately.
+ An alternative always fails if it needs a pseudo and no suitable
+ register class can be found.
+
+Wed Feb 24 19:47:56 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.h (loop_insn_first_p): Declare.
+ * loop.c (loop_insn_first_p): No longer static.
+ * unroll.c (iteration_info): Fix comparison to
+ reg_iv_type->num_elements.
+ Before accessing reg_biv_class, check index against
+ max_reg_before_loop.
+ Fix and enable code for giv iterators.
+ (loop_iterations): Compare with reg_iv_type->num_elements instead
+ of with max_reg_before_loop.
+
+Wed Feb 24 19:17:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * unroll.c (unroll_loop): Avoid out-of-bounds index for local_regno.
+
+Wed Feb 24 11:26:41 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Don't use
+ PIC_OFFSET_TABLE_REGNUM for register allocation when -fPIC.
+
+Tue Feb 23 16:24:19 1999 Marc Lehmann <pcg@goof.com>
+
+ * config/i386/i386.md: Fix typo.
+
+Mon Feb 22 19:36:33 1999 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * config/mips/mips.c (mips_debugger_offset): When TARGET_MIPS16 &&
+ frame_pointer_needed adjust frame size.
+ (function_prologue): Don't MIPS16 .mask GPOFFSET. Already adjusted
+ in .frame pseudo-op.
+ Frm Jim Wilson <wilson@cygnus.com>:
+ * mips.c (function_prologue): Adjust frame size in .frame pseudo-op
+ when TARGET_MIPS16 && frame_pointer_needed.
+
+1999-02-22 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.h: Add TARGET_CPU_strongarm1100.
+ Add -mno-sched command line switch to disable scheduling of
+ instructions into the function's prologue.
+ (enum processor_type): Remove.
+ (TARGET_OPTIONS): Add "fpe=" option to match documentation.
+ (struct arm_cpu_select): Replace 'set_tune_p' and 'set_arch_p'
+ fields with 'processors' field.
+ (CONDITIONAL_REGISTER_USAGE): Allow r10 to be used if stack
+ checking is not enabled.
+ (RETURN_IN_MEMORY): Always call arm_return_in_memory.
+
+ * config/arm/arm.c (arm_cpu): Remove.
+ (tune_flags): Remove.
+ (arm_is_strong): New variable: true iff the target processor is a
+ StrongARM.
+ (arm_is_6_or_7): New variable: true iff the target processor is an
+ ARM6 or and ARM7.
+ (arm_select): Fields reorganized.
+ (struct processors): processor_type field removed.
+ (all_procs): Remove.
+ (all_cores): New array: Definitions of all known ARM cpu cores.
+ (all_architectures): New array: Definitions of all known ARM
+ architectures.
+ (streq): New macro.
+ (FL_SCHED): New processor flag: processor required load
+ scheduling.
+ (FL_STRONG): New processor flag: processor is a StrongARM.
+ (arm_override_options): Reorganized to make code clearer.
+ (use_return_insn): Test for "not (TARGET_APCS and
+ frame_pointer_needed)".
+ (arm_return_in_memory): Improve handling of structures.
+
+ * config/arm/arm.md: Remove "cpu" attribute. Replace with
+ "is_strongarm" and "is_arm_6_or_7" attributes.
+ (zero_extendhisi2): Check for TARGET_SHORT_BY_BYTES before
+ arm_arch4.
+ (extendhisi2): Check for TARGET_SHORT_BY_BYTES before arm_arch4.
+
+ * invoke.texi (ARM Options): Document -mtune= and -mfp= options.
+
+1999-02-22 Philip Blundell <philb@gnu.org>
+
+ * config/arm/linux-gas.h (INITIALIZE_TRAMPOLINE): Replace default
+ definition with one including cache synchronization.
+ (CLEAR_INSN_CACHE): Correct syscall number and enable definition.
+ Move definition of inhibit_libc to...
+ * config/arm/xm-linux.h: ... here.
+
+ * config/arm/t-linux: Disable multilib configurations since the
+ only effect for most people is to cause builds to fail.
+
+ * config/arm/elf.h (ASM_FILE_START): Add .file directive.
+ (ASM_SPEC): Translate -mapcs-float to -mfloat for the assembler.
+
+ * config/arm/linux-elf.h (DEFAULT_VTABLE_THUNKS): Define.
+ (HANDLE_SYSV_PRAGMA): Likewise.
+ (LIB_SPEC): Copy definition from generic Linux files.
+ (LIBGCC_SPEC): Include -lfloat if -msoft-float was given.
+ (FP_DEFAULT): Set to SOFT3 on 32-bit targets.
+ (DWARF2_DEBUGGING_INFO): Define.
+ (PREFERRED_DEBUGGING_TYPE): Define as DBX_DEBUG.
+
+Mon Feb 22 16:54:18 1999 Andrew MacLeod <amacleod@cygnus.com>
+
+ * loop.c (libcall_other_regs): Make extern.
+ * rtl.h (find_last_value): Add parameter to prototype.
+ (libcall_other_reg): Add extern declaration.
+ * rtlanal.c (find_last_value): Add another parameter to allow
+ a definition using a hardware register to be found as well.
+
+Mon Feb 22 13:33:47 1999 Mark Mitchell <mark@markmitchell.com>
+
+ * cse.c (dump_class): New function.
+ (invalidate_memory): Fix typo in comment.
+ * function.c (temp_slot): Add an alias set field.
+ (assign_stack_temp): Only reuse slots if they will have the
+ same alias set as before.
+ (combine_temp_slots): Don't combine if -fstrict-aliasing;
+ that's unsafe.
+ * rtl.c (copy_rtx): Copy all the flags (in particular,
+ MEM_SCALAR_P).
+
+Mon Feb 22 14:13:23 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * configure.in (i[34567]86-*-linux-gnu*,
+ i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*,
+ i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as
+ fixincludes.
+
+ * configure: Rebuilt.
+
+ * fixinc.x86-linux-gnu: New script for fixing asm-statements bug
+ on x86 linux.
+
+ * fixinc/fixinc.x86-linux-gnu: Copy of the previous one.
+
+ * fixinc/mkfixinc.sh (i[34567]86-*-linux-gnu*,
+ i[34567]86-*-linux-gnulibc1, i[34567]86-*-linux-gnuaout*,
+ i[34567]86-*-linux-gnuoldld*): Use fixinc.x86-linux-gnu as
+ fixincludes.
+
+Mon Feb 22 08:55:05 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * objc/objc-act.c (encode_type): Temporary revert to the old
+ behavior of encoding types as the new one seems to break the
+ encoding of bitfields.
+
+Mon Feb 22 11:40:44 1999 Craig Burley <craig@jcb-sc.com>
+Sat Feb 20 09:59:36 1999 Craig Burley <craig@jcb-sc.com>
+
+ * Makefile.in (all.internal, all.cross): Depend on `doc'
+ target, to ensure docs get made before installation.
+
+ Decrease spurious warnings from -fsyntax-only:
+ * stmt.c (expand_expr_stmt): Expand expr even when -fsyntax-only.
+
+Mon Feb 22 10:55:00 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * c-lex.c (yylex): Replace warning about integer constants being
+ larger than long-longs, with a warning about integer constants
+ being larger than the largest target integer.
+
+Mon Feb 22 08:35:38 1999 Craig Burley <craig@jcb-sc.com>
+
+ Fix -fsyntax-only ICEs:
+ * varasm.c (assemble_zeros, assemble_variable,
+ output_constant_def): Do nothing when -fsyntax-only.
+
+Fri Feb 19 18:18:56 1999 Don Bowman <don@pixstream.com>
+
+ * configure.in (mips*-*-vxworks*): Enable gthreads vxworks support.
+ * configure: Rebuilt.
+
+Sun Feb 21 20:34:44 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Feb 21 20:35:10 1999 Jeffrey A Law (law@cygnus.com)
+
+ * config/aoutos.h (ASM_OUTPUT_CONSTRUCTOR): Delete.
+ (ASM_OUTPUT_DESTRUCTOR, ASM_OUTPUT_GC_ENTRY): Likewise.
+ * tm.texi: Update docs for constructors and destructors.
+
+Sun Feb 21 17:11:18 1999 Richard Henderson <rth@cygnus.com>
+
+ * genattrtab.c (check_attr_value): Allow negative const_int if
+ negative_ok. Accept integral arithmetic operators. Accept
+ direct references to other attributes. Accept symbol_ref in
+ non-constant attributes.
+ (max_attr_value): Add new argument `unknownp'. Update all callers.
+ (or_attr_value): Likewise.
+ (simplify_knowing): Don't optimize if max_attr_value unknown.
+ (write_length_unit_log): Likewise with or_attr_value.
+ (find_and_mark_used_attributes): Don't fallthru case.
+ (write_attr_set): Pass thru all non-cond expressions.
+ (write_attr_value): Handle symbol_ref, attr, and arithmetic.
+
+Sun Feb 21 13:16:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * regmove.c (discover_flags_reg): Use word_mode instead of SImode.
+
+Sun Feb 21 13:15:40 1999 Richard Henderson <rth@cygnus.com>
+
+ * regmove.c (discover_flags_reg): Remove cc0 code.
+ (mark_flags_life_zones) [HAVE_cc0]: Force use of cc0; bail if
+ a potential flags register was identified.
+
+Sat Feb 20 16:16:07 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000.md (scc plus ltu): Fix typo in last change.
+
+Sat Feb 20 09:08:44 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * xm-arm.h (HOST_BITS_PER_LONGLONG): Define.
+
+Fri Feb 19 23:02:02 1999 Richard Henderson <rth@cygnus.com>
+
+ * regmove.c (discover_flags_reg): New function.
+ (flags_set_1, mark_flags_life_zones): New functions.
+ (regmove_optimize): Call them.
+ (fixup_match_1): Use insn modes rather than sets_cc0_p.
+
+Fri Feb 19 22:47:01 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * rtlanal.c (insn_first_p): Fix return value for insn == reference.
+
+ * loop.c (strength_reduce, check_final_value, check_dbra_loop):
+ Use loop_insn_first_p.
+
+Fri Feb 19 15:49:26 1999 Michael Meissner <meissner@cygnus.com>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (scc plus eq): Fix output template.
+ (scc plus ltu): Fix output template and collapse variants
+ correcting early clobbers.
+ (scc plus geu): Fix output template.
+ (scc plus gt): Fix output template.
+ (scc plus gtu): Fix output template and collapse variants.
+
+Fri Feb 19 15:43:59 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cppinit.c (print_help): Remove unescaped newline in string.
+
+Fri Feb 19 19:55:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Check for intervening jumps when
+ converting biv increment to giv.
+
+Thu Feb 18 16:36:58 1999 Per Bothner <bothner@cygnus.com>
+
+ * tree.def (TRY_FINALLY_EXPR, GOTO_SUBROUTINE_EXPR): New tree nodes,
+ * expr.c (expand_expr): Support new tree nodes.
+
+Fri Feb 19 10:17:56 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * config/m68k/m68k.c (m68k_align_loops_string,
+ m68k_align_jumps_string, m68k_align_funcs_string): Add const.
+ * config/m68k/m68k.h (m68k_align_loops_string,
+ m68k_align_jumps_string, m68k_align_funcs_string): Likewise.
+
+Thu Feb 18 23:28:35 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * bitmap.c (bitmap_print): Qualify a char* with the `const' keyword.
+
+ * bitmap.h (bitmap_print): Likewise.
+
+ * c-decl.c (builtin_function, grokdeclarator, grokfield): Likewise.
+
+ * c-lang.c (build_objc_string): Likewise.
+
+ * c-lex.c (yyerror, extend_token_buffer): Likewise. Don't include
+ limits.h or ctype.h. Remove unused variable `p'.
+
+ * c-lex.h (yyerror): Qualify a char* with the `const' keyword.
+
+ * c-pragma.c (handle_pragma_token): Likewise.
+
+ * c-pragma.h (handle_pragma_token): Likewise.
+
+ * c-tree.h (build_objc_string, builtin_function, grokfield,
+ build_indirect_ref, lvalue_or_else, readonly_warning, error_init,
+ pedwarn_init): Likewise.
+
+ * c-typeck.c (convert_for_assignment, warn_for_assignment,
+ push_string, warning_init, incomplete_type_error,
+ build_indirect_ref, lvalue_or_else, readonly_warning,
+ build_c_cast, spelling, push_member_name, print_spelling,
+ error_init, pedwarn_init, start_init): Likewise.
+
+ * objc/objc-act.c (build_objc_string): Likewise.
+
+ * print-tree.c (print_node_brief, print_node): Likewise.
+
+ * tree.h (lvalue_or_else, print_node, print_node_brief): Likewise.
+
+Thu Feb 18 20:44:21 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * regclass.c (record_reg_classes): Correctly handle 'p' constraint.
+
+Thu Feb 18 19:59:37 1999 Marc Espie <espie@cvs.openbsd.org>
+
+ * configure.in :Handle OpenBSD platforms.
+ * configure: Rebuilt.
+ * config/openbsd.h: New file.
+ * config/xm-openbsd.h: New file.
+ * config/t-openbsd: New file.
+ * config/t-openbsd-thread: New file.
+
+Thu Feb 18 18:47:09 1999 Jeffrey A Law (law@cygnus.com)
+
+ * function.c (assign_stack_temp_for_type): Round SIZE before calling
+ assign_stack_local for BLKmode slots.
+
+Fri Feb 19 01:45:06 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): For derived givs, replace the
+ giv this was derived from with its new_reg.
+ (recombine_givs): Don't set new_reg for derived giv.
+ And don't print it, print SUM instead.
+
+Thu Feb 18 15:52:49 1999 Jim Wilson <wilson@cygnus.com>
+
+ * m68kelf.h (ASM_RETURN_CASE_JUMP): Add 5200 support.
+
+1999-02-18 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpplib.c: Kill define of STDC_VALUE. Don't include output.h
+ or prefix.h. Change CPP_IS_MACRO_BUFFER to not refer to
+ macro_cleanup.
+ (GET_ENV_PATH_LIST, PATH_SEPARATOR, STANDARD_INCLUDE_DIR,
+ predefs, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
+ CPP_WCHAR_TYPE, USER_LABEL_PREFIX, REGISTER_PREFIX, struct
+ cpp_pending, version_string, struct default_include,
+ include_defaults_array, path_include, cpp_options_init,
+ dump_special_to_buffer, initialize_builtins, cpp_start_read,
+ cpp_reader_init, nreverse_pending, push_pending, print_help,
+ cpp_handle_option, cpp_handle_options, cpp_finish,
+ cpp_cleanup): Move to cppinit.c.
+ (macro_cleanup, struct arglist, collect_expansion,
+ create_definition, compare_defs, comp_def_part, ARG_BASE,
+ struct argdata, macarg, change_newlines, timestamp,
+ monthnames, special_symbol, unsafe_chars, macroexpand,
+ push_macro_expansion): Move to cpphash.c.
+ (quote_string, check_macro_name, cpp_expand_to_buffer,
+ output_line_command, cpp_undef): Export.
+ (null_underflow, null_cleanup, handle_directive): Make static.
+
+ * cpplib.h: Prototype now-exported functions. Adjust decls of
+ syntax tables so we can include cpplib.h in cppinit.c.
+ * cpphash.h: Prototype all functions exported by cpphash.c.
+ * cppinit.c: Make syntax tables initialized data if possible
+ (uses GCC designated-initializer extension).
+ * cppexp.c: Make cpp_lex static.
+ * Makefile.in: Move -D switches for the various include dirs
+ from cpplib.o rule to cppinit.o rule. Adjust dependencies.
+
+Thu Feb 18 13:15:56 1999 Marc Espie <espie@cvs.openbsd.org>
+
+ * alpha/openbsd.h: New file.
+ * alpha/xm-openbsd.h: New file.
+ * sparc/openbsd.h: New file.
+ * sparc/xm-openbsd.h: New file.
+ * m68k/openbsd.h: New file.
+ * m68k/xm-openbsd.h: New file.
+ * i386/openbsd.h: New file, originally from netbsd.
+ * i386/xm-openbsd.h: New file.
+
+1999-02-17 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * Makefile.in: Correct dependencies for cpplib object files.
+
+Wed Feb 17 14:04:18 1999 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.md ({add,sub}si3 `.'): Add alternatives to use CR other
+ than cr0.
+
+Wed Feb 17 16:59:28 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Don't move giv insn for biv turned giv
+ below scan_start.
+
+Wed Feb 17 10:56:24 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * tree.c (tree_node_kind_names, print_obstack_name,
+ get_identifier, maybe_get_identifier, build_string,
+ build_expr_wfl, is_attribute_p, lookup_attribute,
+ print_obstack_statistics, get_file_function_name_long, tree_check,
+ tree_class_check, expr_check): Qualify a char* with the `const'
+ keyword.
+
+ * tree.h (get_identifier, maybe_get_identifier, build_string,
+ build_expr_wfl, is_attribute_p, lookup_attribute,
+ print_obstack_statistics, print_obstack_name, tree_check,
+ tree_class_check, expr_check): Likewise.
+
+Tue Feb 16 21:29:38 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i386/freebsd-elf.h, i386/gas.h, i386/linux.h: Fix minor spacing
+ errors.
+
+ * calls.c (store_one_arg): Mark any slots used for the argument
+ as in-use immediately after we're done saving any slots which
+ will be overwritten by this argument.
+
+Tue Feb 16 21:02:07 1999 Anton Hartl <toni@devsoft.com>
+
+ * rs6000.md (call_value): Fix typo.
+
+Wed Feb 17 01:29:07 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Calculate maybe_dead before
+ calling recombine_givs.
+
+Wed Feb 17 00:43:12 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Dump biv increment -> giv conversions.
+
+Tue Feb 16 15:31:39 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * objc/objc-act.c (encode_type): Encode the type instead of
+ encoding the mode of the type (patch from Richard Frith-Macdonald
+ <richard@brainstorm.co.uk>).
+
+Tue Feb 16 10:53:51 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * config/arm/arm.md (*zeroextractqi_compare0_scratch): Re-add load
+ instruction killed in previous change. Simplify mask generation.
+ (*zeroextractsi_compare0_scratch): Simplify mask generation.
+
+Tue Feb 16 09:52:26 1999 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.md (zeroextractqi_compare0_scratch): Ensure that
+ bitfield does not overflow a byte boundary.
+
+Tue Feb 16 01:37:33 1999 Charles G Waldman <cgw@alum.mit.edu>
+
+ * c-common.c (shorten_compare): Get the min/max value from the
+ underlying type of an enumeration, not the enumerated type itself.
+
+Mon Feb 15 23:04:48 1999 Jeffrey A Law (law@cygnus.com)
+
+ * jump.c: Include insn-attr.h.
+ (delete_computation): If reload has completed and insn scheduling
+ after reload is enabled, then do not depend on REG_DEAD notes.
+ * Makefile.in (jump.o): Depend on insn-attr.h.
+
+Mon Feb 15 16:57:38 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386.md (addsi3): Allow lea for any constant_p.
+
+1999-02-15 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * toplev.c (documented_lang_options): Remove -fident and
+ -fnoident, which are now handled by the language independent
+ option parser.
+
+1999-02-15 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * c-common.c (UNGETC [USE_CPPLIB=1]): Do nothing if c is EOF.
+ * c-lex.c: Likewise.
+ * cpplib.c (cpp_push_buffer, cpp_pop_buffer): Use a linked
+ list in malloced memory for the buffer stack.
+ (cpp_get_token): Don't pop the last buffer off the stack.
+ Calls after CPP_EOF has been returned produce CPP_EOF with no
+ state change.
+ (cpp_finish): Pop last buffer here.
+ (do_line): Don't free ip->last_nominal_fname if it is equal to
+ ip->fname.
+ (special_symbol): If a T_CONST is the empty string, push a
+ single `@ ' escape instead.
+ (macroexpand): Special symbol buffers have escapes too.
+ * cpplib.h (struct cpp_buffer): Remove unused fields, add prev
+ buffer pointer.
+ (struct cpp_reader): Remove buffer_stack. Add
+ buffer_stack_depth.
+ (CPP_PREV_BUFFER, CPP_NULL_BUFFER): Buffer stack is now a
+ linked list.
+
+Mon Feb 15 14:44:53 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cccp.c: Don't define HOST_WIDE_INT. Replace all occurrences of
+ WIDE_INT with WIDEST_INT.
+
+ * cexp.y: Likewise.
+ Don't define unsigned_HOST_WIDE_INT, CHAR_BIT or
+ HOST_BITS_PER_WIDE_INT. Replace occurrences of PRINTF_PROTO_1()
+ style with PVPROTO() ATTRIBUTE_PRINTF_1 style macros. Replace
+ occurrences of "unsigned_HOST" with "unsigned HOST". Provide a
+ definition of variable `c89' when compiling a test binary and set it.
+
+ * system.h: Don't define the PRINTF_PROTO_* macros.
+
+Mon Feb 15 11:33:51 1999 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (mark_loop_jump): Handle LO_SUM. If we encounter something
+ we do not understand, mark the loop and containing loops as invalid.
+
+Mon Feb 15 00:40:45 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * alias.c (init_alias_analysis): Avoid self-referential value
+ when setting reg_known_value from REG_EQUAL notes.
+
+Sun Feb 14 23:12:10 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386.c (legitimate_address_p): Verify modes of base and index.
+
+Sun Feb 14 23:01:28 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386.c (legitimate_pic_address_disp_p): Remove static.
+ * i386.h (LEGITIMATE_PIC_OPERAND_P): Use it instead of
+ open-coding cases.
+
+Sun Feb 14 21:03:28 1999 Jeffrey A Law (law@cygnus.com)
+
+ * except.c (start_catch_handler): Use emit_cmp_and_jump_insns.
+ * explow.c (probe_stack_range): Likewise.
+ * expmed.c (do_cmp_and_jump): Likewise.
+ * expr.c (store_expr, expand_expr, expand_builtin): Likewise.
+ (do_tablejump): Likewise.
+ * stmt.c (expand_expr_stmt, expand_end_case): Likewise.
+ (do_jump_if_equal, emit_case_nodes): Likewise.
+ * optabs.c (emit_cmp_and_jump_insns): Clarify comments. If UNSIGNEDP,
+ then convert comparison to an unsigned code before emitting the jump.
+ (expand_float, expand_fix): Use emit_cmp_and_jump_insns.
+
+Sun Feb 14 02:24:15 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Feb 14 01:15:04 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Feb 14 00:45:50 1999 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c: Disable recent loop changes. Temporary as Joern
+ continues to fix problems.
+
+Sat Feb 13 23:29:42 1999 Richard Henderson <rth@cygnus.com>
+
+ * loop.c (combine_givs_used_by_other): Delete.
+ (combine_givs_benefit_from): Delete.
+ (combine_givs): Deny combination of givs only used once. Simplify
+ code with the death of combine_givs_benefit_from.
+
+Sun Feb 14 11:24:05 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * loop.c (scan_loop): Call reg_in_basic_block_p before
+ loop_reg_used_before_p.
+
+Sat Feb 13 05:32:00 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.md: Use gen_rtx_FOO instead of gen_rtx (FOO, ...).
+ * arm.h: Likewise.
+ * arm.c: Likewise.
+
+ * arm.h (TARGET_OPTIONS): Reformat for clarity.
+ (GO_IF_LEGITIMATE_ADDRESS): When generating PIC, references to symbols
+ in the constant pool aren't valid.
+ (LEGITIMATE_PIC_OPERAND_P): Likewise.
+
+ * arm.c: Include "system.h", not stdio.h and string.h.
+
+Fri Feb 12 13:06:28 1999 Jim Wilson <wilson@cygnus.com>
+
+ * stmt.c (expand_return): Return if optimize_tail_recursion succeeded.
+ (optimize_tail_recursion): Change return type from void to int.
+ Add return statements.
+ * tree.h (optimize_tail_recursion): Change prototype to match.
+
+Fri Feb 12 21:09:51 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * reload.c (find_reloads_subreg_address): New function, broken out of
+ find_reloads_toplev.
+ (find_reloads_toplev, find_reloads_address_1): Use it.
+
+Fri Feb 12 13:20:52 1999 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.md (zero_extendhisi2 H8/300 variant): Correctly handle
+ extending a CONST_INT.
+
+ * h8300.md (peephole for combining memrefs): Delete incorrect peephole.
+
+Fri Feb 12 18:29:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (loop_insn_first_p, biv_elimination_giv_has_0_offset):
+ New functions.
+ (maybe_eliminate_biv_1): Use biv_elimination_giv_has_0_offset.
+
+Fri Feb 12 16:56:10 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (load_mems): Don't guess how to do a load / store, use
+ emit_move_insn.
+
+Fri Feb 12 09:24:26 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h: Provide a definition for HOST_WIDEST_INT, etc.
+
+Fri Feb 12 23:37:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_address_cost): Revert 9 Feb change.
+
+Fri Feb 12 00:51:26 1999 Jeffrey A Law (law@cygnus.com)
+
+ * reload.c (find_reloads_address_1): Fix handling of an autoincremented
+ pseudo which is homed in the stack.
+
+ * mips.c (save_restore_insns): Fix loop to save/restore FP registers.
+ (compute_frame_size): Change loop over FP regs to be consistent
+ with the loop in save_restore_insns.
+
+Thu Feb 11 17:38:40 1999 Jim Wilson <wilson@cygnus.com>
+
+ * i960/i960.h (OVERRIDE_OPTIONS): Warn if -mlong-double-64 is used.
+ (LONG_DOUBLE_TYPE_SIZE): Undef then unconditionally define to 96.
+
+Thu Feb 11 15:11:35 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.md (bset); Re-enable.
+
+Thu Feb 11 15:20:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (is_sfunc): New attribute.
+ * sh.h (INSN_SETS_ARE_DELAYED, INSN_REFERENCES_ARE_DELAYED): Use it.
+
+Thu Feb 11 01:06:49 1999 Nathan Sidwell <nathan@acm.org>
+
+ * fold-const.c (range_binop): Take account of the bounded nature
+ of fixed length arithmetic when comparing unbounded ranges.
+
+Thu Feb 11 00:08:17 1999 John Wehle (john@feith.com)
+
+ * function.c (assign_stack_temp_for_type): Clear best_p
+ when an exact match is found.
+
+ * i386.h (LOCAL_ALIGNMENT): Define.
+ * function.c (assign_stack_local, assign_outer_stack_local): Use it.
+ (assign_stack_temp_for_type): New function based on assign_stack_temp.
+ (assign_stack_temp): Call it.
+ (assign_temp): Use assign_stack_temp_for_type, not assign_stack_temp.
+ * stmt.c: Use assign_temp, not assign_stack_temp.
+ * tm.texi: Document LOCAL_ALIGNMENT.
+
+Wed Feb 10 23:28:28 1999 Jeffrey A Law (law@cygnus.com)
+
+ * reorg.c: Finish deleting half-deleted comment.
+
+Wed Feb 10 17:12:21 1999 Jim Wilson <wilson@cygnus.com>
+
+ * emit-rtl.c (operand_subword): Sign extend REAL_VALUE_TO_TARGET_SINGLE
+ result.
+ * final.c (split_double): Sign extend REAL_VALUE_TO_TARGET_DOUBLE
+ result.
+ * real.c (endian): Delete sign extension code.
+ * config/m32r/m32r.md (movsf_insn+1): REAL_VALUE_TO_TARGET_SINGLE call
+ replaced with operand_subword call.
+
+Wed Feb 10 15:16:39 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (cmov compound patterns): Delete. Jump can now
+ create the correct constructs in the first place.
+
+Wed Feb 10 11:03:22 1999 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (alphaev6*): Fix typo in target_cpu_default2.
+
+Wed Feb 10 13:59:18 1999 Dave Brolley <brolley@cygnus.com>
+
+ * mbchar.c (local_mb_cur_max): Handle the case where MB_CUR_MAX is 0.
+
+Wed Feb 10 10:35:05 1999 Jim Wilson <wilson@cygnus.com>
+
+ * tmp-emsgids.c: Delete.
+
+Wed Feb 10 09:57:08 1999 Mark Mitchell <mark@markmitchell.com>
+
+ * rtlanal.c (for_each_rtx): Fix declaration to conform to GNU
+ coding standards.
+
+Wed Feb 10 10:09:41 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mn10200.md (bset, bclr): Operand 0 is a read/write operand.
+
+ * reload1.c (reload_combine_note_store): Second argument is no
+ longer unused/ignored. Handle multi-register hard regs.
+ (move2add_note_store): Simplify.
+
+Wed Feb 10 10:05:23 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * collect2.c (collect_execute): Remove cygwin-specific code.
+
+Tue Feb 9 17:27:29 1999 Nathan Sidwell <nathan@acm.org>
+
+ * system.h (_, N_): Remove dummy i18n macros.
+ * protoize.c: Move inclusion of intl.h to after system.h.
+ * cexp.y: Include intl.h.
+ * cexp.c: Rebuilt.
+
+Tue Feb 9 16:52:22 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * i386/cygwin.h (SUBTARGET_OVERRIDE_OPTIONS): New macro to ignore
+ fpic/fPIC for windows32 targets.
+ * i386/xm-cygwin.h (GET_ENV_PATH_LIST): Replace '\\' in windows32
+ paths with '/'.
+ * i386/mingw32.h (CPP_SPEC): Define.
+ (CPP_PREDEFINES): Add MINGW32 version id.
+ * i386/crtdll.h (CPP_PREDEFINES): Likewise.
+
+ * Makefile.in (collect2$(exeext)): Delete redundant dependency and
+ add missing exeext to target.
+
+ * gcc.c (convert_filename): Handle null filename argument.
+
+Wed Feb 10 15:46:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (*movhf_noclobber, *movhi_noclobber): Use
+ m constraint instead of QT.
+
+1999-02-09 Brendan Kehoe <brendan@cygnus.com>
+
+ * cpplib.c (special_symbol): Move IP to be declared in function
+ scope, rather than individual case statements.
+
+1999-02-09 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppfiles.c (finclude): Handle pipes properly under old BSD
+ derivatives.
+
+1999-02-09 Melissa O'Neill <oneill@cs.sfu.ca>
+
+ * system.h: Provide fallback definitions for S_ISCHR,
+ S_ISSOCK, S_ISFIFO, O_NONBLOCK, and O_NOCTTY.
+
+1999-02-09 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpplib.c (do_define): Allow redefining __STDC__ with -D.
+
+1999-02-09 Jim Blandy <jimb@zwingli.cygnus.com>
+
+ * configure.in: For PowerPC configurations, accept "401", "ec603e",
+ "740", and "750" as valid arguments to --with-cpu.
+ * configure: Rebuilt.
+
+Tue Feb 9 00:00:14 1999 Mark Kettenis <kettenis@gnu.org>
+
+ * configure.in (i[34567]86-*gnu*): Set float_format to i386.
+ * configure: Rebuilt.
+
+Mon Feb 8 22:38:24 1999 Jeffrey A Law (law@cygnus.com)
+
+ * rs6000.md: Revert "alternate use of crs if cr0 not available"
+ patches from 01-22-1999, 01-24-1999, 01-26-1999, and 02-08-1999.
+
+Mon Feb 8 21:36:44 1999 Richard Henderson <rth@cygnus.com>
+
+ * output.h (current_function_has_computed_jump): Rename from
+ current_function_addresses_labels.
+ * function.h (struct function): Likewise for addresses_labels member.
+ * rtl.h (FUNCTION_FLAGS_HAS_COMPUTED_JUMP): Likewise.
+ * function.c (current_function_has_computed_jump): Likewise.
+ Update all references.
+ * integrate.c (function_cannot_inline_p):
+ Test current_function_has_computed_jump instead of addresses_labels.
+ (initialize_for_inline): Likewise save.
+ (output_inline_function): Likewise restore.
+
+ * expr.c (expand_expr): Don't reference addresses_labels variables.
+ * stmt.c (expand_computed_goto): Set has_computed_jump.
+
+1999-02-08 Michael Meissner <meissner@cygnus.com>
+
+ This is being installed only to get it into the repository to help
+ with the revert, resubmit & review process for the massive rs6000.md
+ changes.
+ * rs6000.md (andsi3_internal1 splitter): Don't split if using the
+ rlwinm instruction.
+ (anddi3_internal1): Likewise.
+ (andsi3_internal{2,3}): Correct some insn lengths.
+ (anddi3*): Restore missing TARGET_POWERPC64, and don't emit old
+ mnemonics.
+
+Mon Feb 8 21:31:06 1999 Richard Henderson <rth@cygnus.com>
+
+ * loop.c (reg_single_usage): New file-scope variable ...
+ (scan_loop): ... moved out of here. Always initialize.
+ Test loop_has_call instead of reg_single_usage not zero.
+ Free reg_single_usage after strength reduction.
+ (count_loop_regs_set): Assume single_usage nonzero.
+ (combine_givs_used_by_other): Test reg_single_usage.
+ (load_mems_and_recount_loop_regs_set): Remove reg_single_usage
+ as a parameter. Assume nonzero.
+
+1999-02-08 Zack Weinberg <zack@midnite.ec.rhno.columbia.edu>
+
+ * cpplib.c (special_symbol): Rewrite. Don't copy things
+ multiple times. Handle __STDC__ specially. T_CONST
+ indicates a constant /string/. Don't handle T_*_TYPE and
+ T_SPEC_DEFINED. Use cpp_buf_line_and_col instead of
+ adjust_position. Determine the file buffer only if needed.
+ (initialize_builtins): Handle __SIZE_TYPE__,
+ __PTRDIFF_TYPE__, __WCHAR_TYPE__, __USER_LABEL_PREFIX__, and
+ __REGISTER_PREFIX__ with T_CONST special hashtab entries.
+ Don't provide __OBJC__; the driver does that. Provide
+ __STDC_VERSION__, using T_CONST. Use T_STDC for
+ __STDC__. Give install the length of all symbols defined.
+ (eval_if_expression): Drop code to insert and remove the
+ "defined" special symbol.
+
+ * cpplib.h: Remove SELF_DIR_DUMMY (no longer used). Remove
+ T_*_TYPE and T_SPEC_DEFINED from enum node_type; add T_STDC.
+
+ * cpphash.c (install): Drop the `ivalue' parameter. Constify
+ the `value' parameter. All callers changed.
+ * cpphash.h (install): Change prototype to match.
+ (union hashval): Remove `ival' member.
+ * cppexp.c (cpp_lex): Handle `defined' here.
+
+Mon Feb 8 17:29:42 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.h (EXTRA_CONSTRAINT): Fix comment.
+
+Mon Feb 8 18:57:45 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * c-typeck.c (check_init_type_bitfields): Use nonincremental
+ initialization of unions whose first member is a bitfield.
+ Remove unnecessary code for checking the declaration mode
+ after DECL_C_BIT_FIELD.
+
+ * varasm.c (output_constructor): Additional comment about the
+ constructor of bitfield union initialization.
+
+Tue Feb 9 11:55:04 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (*movhi_stik): New pattern.
+ (movhi): Allow some immediate constants to be directly
+ stored in memory.
+
+Tue Feb 9 11:34:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (all call patterns): Add constraints "Ur".
+ (call, call_value): Force address into a register if not valid
+ for a call instruction.
+ (load_immed_address): Emit a USE of the SYMBOL_REF that is
+ forced into memory.
+ * config/c4x/c4x.c (c4x_print_operand): Fix 'C' and 'U' modifiers.
+
+Tue Feb 9 11:08:41 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (call_address_operand, symbolic_address_operand):
+ Rename from call_operand and symbolic_operand respectively. All
+ callers changed.
+ * config/c4x/c4x.md (call_address_operand, symbolic_address_operand):
+ Likewise.
+ * config/c4x/c4x.h (call_address_operand, symbolic_address_operand):
+ Likewise.
+ (PREDICATE_CODES): Allow CONST, LABEL_REF for call_address_operand.
+
+Tue Feb 9 10:52:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_legitimize_address): Don't generate a
+ LO_SUM address for HImode or HFmode but instead force address into
+ a register so that it is offsettable.
+ (c4x_emit_move_sequence): Handle LO_SUM immediate address.
+
+Tue Feb 9 10:46:42 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_address_cost): Return cost of 1 for
+ REG+REG addressing if strength reduction enabled.
+
+Tue Feb 9 10:10:31 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/t-c4x (LIBGCC2_CFLAGS): Delete.
+ (TARGET_LIBGCC2_CFLAGS): Define.
+
+1999-02-08 Nick Clifton <nickc@cygnus.com>
+
+ * config/v850/v850.md: Replace \\n\\t with \\;
+
+ * config/v850/v850.md: Enforce TARGET_LONG_CALLS option.
+ * config/v850/v850.c (construct_restore_jr, construct_save_jarl):
+ Enforce TARGET_LONG_CALLS option.
+
+Mon Feb 8 11:43:07 1999 Donn Terry <donn@interix.com>
+
+ * real.c (PUT_REAL) [XFmode]: Zero the balance of the structure.
+
+Mon Feb 8 11:37:24 1999 Marc Espie (espie@cvs.openbsd.org)
+
+ * m88k/t-luna-gas: Remove bash dependency.
+
+Mon Feb 8 11:34:44 1999 Graham <grahams@rcp.co.uk>
+
+ * collect2.c (xrealloc): Fix typo in last change.
+
+Mon Feb 8 09:13:38 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Feb 7 22:18:42 1999 Robert Lipe <robertlipe@usa.net>
+
+ * tree.h (TYPE_CHECK): Make it clear to the preprocessor
+ that we do not want macro replacement within a character constant.
+ (TYPE_CHECK1): Likewise.
+
+Sun Feb 7 15:37:10 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * tree.h (DECL_P): New macro.
+
+Sun Feb 7 01:15:04 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Feb 6 18:14:46 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mn10300.md (reload_insi): Do not earlyclobber the output operand.
+
+ * README.g77, gcc.c, gcc.texi: Update email addresses.
+ * invoke.texi system.h: Likewise.
+
+Sat Feb 6 11:04:08 1999 Jim Wilson <wilson@cygnus.com>
+
+ * unroll.c (find_splittable_givs): After express_from, call replace_rtx
+ to convert dest_reg to new_reg.
+
+Sat Feb 6 10:31:35 1999 Jeffrey A Law (law@cygnus.com)
+
+ * reload1.c (reload_combine_note_store): Be more careful with
+ STRICT_LOW_PART, ZERO_EXTRACT and SIGN_EXTRACT.
+ (move2add_note_store): Likewise.
+
+Sat Feb 6 10:18:01 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cppfiles.c (read_and_prescan): Cast the result of `xrealloc' to
+ U_CHAR* when assigning to one. Ensure the values of a ?: operator
+ have the same type.
+
+ * cppinit.c (initialize_char_syntax): Use K&R function definition.
+
+Sat Feb 6 11:17:03 1999 Richard Earnshaw <rearnsha@arm.com>
+
+ Support for ARM9
+ * config/arm/arm.c (all_procs): Add arm9 and arm9tdmi.
+ * config/arm/arm.h ((TARGET_CPU_arm9, TARGET_CPUD_arm9tdmi): Define.
+ (TARGET_CPU_DEFAULT): Rework to support ARM9.
+ (CPP_CPU_ARCH_SPEC): Likewise.
+ (enum processor_type): Likewise.
+ * config/arm/arm.md (attr cpu): Add arm9.
+
+ General scheduling changes
+ * config/arm/arm.c (MAX_INSNS_SKIPPED): Delete.
+ (max_insns_skipped): New variable.
+ (arm_override_options): If generating hard floating point code for
+ the FPA, emit code for version 3.
+ When optimizing for space, don't synthesize constants.
+ Reword several flags based on the requested processor and optimization
+ level.
+ (use_return_insn): New argument iscond, all callers changed. Don't
+ use a return insn if it will be conditional and that would be
+ expensive; eg on StrongARM.
+ (arm_adjust_cost): Anti- and output- dependencies normally have no
+ cost.
+ (load_multiple_sequence): Newer ARMs don't benefit from ldm if
+ the sequence is short.
+ (final_prescan_insn): Use max_insns_skipped instead of
+ MAX_INSNS_SKIPPED. Note whether we will make a return instruction
+ conditional, and aviod this if it would be expensive.
+ * config/arm/arm.md (scheduling attributes and function units):
+ Rewrite to better describe ARM8, 9 and StrongARM.
+
+ * config/arm/arm.md (*movhi_insn_littleend): Make op0 predicate
+ s_register_operand.
+ (*ifcompare_plus_move): Use arm_rhs_operand in place of
+ arm_rhsm_operand. Rework constraints.
+ (*if_plus_move): Likewise.
+ (*ifcompare_move_plus): Likewise.
+ (*if_move_plus): Likewise.
+ (*ifcompre_arith_move): Likewise.
+ (*if_arith_move): Likewise.
+ (*ifcompare_move_arith): Likewise.
+ (*if_move_arith): Likewise.
+
+ * config/arm/xm-netbsd.h: Don't include arm/xm-arm.h.
+
+1999-02-05 Michael Meissner <meissner@cygnus.com>
+
+ * loop.c (check_dbra_loop): A store using an address giv for which
+ we have no life information is not reversible.
+
+Fri Feb 5 17:08:01 1999 Dave Brolley <brolley@cygnus.com>
+
+ * function.c (fixup_var_refs): Scan catch_clauses too.
+
+Fri Feb 5 11:49:49 1999 Benjamin Kosnik <bkoz@loony.cygnus.com>
+
+ * c-common.c (decl_attributes): Fix reserved space for init_priority.
+ * tree.h (MAX_RESERVED_INIT_PRIORITY): New macro.
+
+Fri Feb 5 12:37:05 1999 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (strength_reduce): Clear not_every_iteration when
+ passing the NOTE_INSN_LOOP_CONT note.
+
+ * haifa-sched.c (add_dependence): Do not add a dependency on a
+ note.
+
+Fri Feb 5 10:55:43 1999 Nick Clifton <nickc@cygnus.com>
+
+ * recog.c (split_block_insns): Only call update_flow_info if
+ instruction scheduling is enabled.
+
+1999-02-05 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * Makefile.in (gen-protos): Use libcpp.a like everyone else.
+
+Fri Feb 5 07:09:29 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (first_loop_store_insn): New file-scope variable.
+ (prescan_loop): Set it.
+ (check_dbra_loop): Check if a store depends on a register
+ that is set after the store.
+
+Fri Feb 5 06:55:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * unroll.c (entire file): Remove tabs / spaces at end of lines.
+ Replace spaces with tabs where appropriate.
+
+Thu Feb 4 15:12:41 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (scan_loop): New argument loop_cont. Changed caller.
+ (strength_reduce): New argument loop_cont. Changed caller.
+ Before clearing not_every_iteration after a label, check if
+ we are not already past LOOP_CONT.
+
+1999-02-04 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cpperror.c (cpp_print_containing_files): Fix formatting
+ bug induced by merge.
+
+1999-02-04 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * cpplib.c (initialize_char_syntax): Move to cppinit.c.
+ (cpp_define): Remove redundant syntax checks.
+ (make_assertion): Rename cpp_assert, remove redundant syntax
+ checks, export.
+ (cpp_options_init): Don't init things to zero twice.
+ (cpp_expand_to_buffer): Use memcpy, not a char-by-char loop.
+ (do_include): Kill excessively verbose #import warning that
+ snuck back in in the gcc2 merge.
+ (convert_string): Removed.
+ (do_line): Rewrite with simple last-name-used cache instead of
+ private hashtable.
+ (cpp_start_read): Call initialize_char_syntax here, not...
+ (cpp_reader_init): ...here.
+ (cpp_handle_options): Support the -std switch.
+ * cpplib.h (cpp_buffer): Add last_nominal_fname member.
+ (cpp_options): Add c9x flag.
+ Declare all the is_* tables and trigraph table here, as const.
+ Prototype cpp_assert and initialize_char_syntax.
+ * cppinit.c: New file.
+ * cppfiles.c (read_and_prescan): Optimize.
+ * Makefile.in (LIBCPP_OBJS): Add cppinit.o.
+
+Thu Feb 4 10:46:30 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/mips.md ([u]divmodsi4,[u]divmoddi4,[u]divsi3,[u]divdi3,
+ [u]modsi3,[u]moddi3) : Don't copy the "zero" argument to a register
+ before calling gen_div_trap.
+
+Wed Feb 3 21:56:27 1999 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (hppa1.1-*-*, hppa2*-*): Use symbolic value rather
+ than numeric value for target_cpu_default..
+ * configure: Rebuilt.
+
+Wed Feb 3 21:55:56 1999 Marc Espie <Marc.Espie@liafa.jussieu.fr>
+
+ * Makefile.in (xgcc$(exeext)): Remove choose-temp, pexecute and
+ mkstemp. Get them from libiberty.
+ (COLLECT2_OBJS): Similarly for choose-temp, cplus-dem and mkstemp.
+ (PROTO_OBJS): Similarly for choose-temp, getopt, getopt1 and pexecute.
+ (cplus-dem.o, pexecute.o, choose-temp.o): Remove build rules.
+ (mkstemp.o, getopt1.o, getopt.o): Likewise.
+
+ * pa-gas.h (TARGET_DEFAULT): Use symbolic values rather than numeric
+ values.
+ * pa-hpux.h (LINK_SPEC): Likewise.
+ * pa-hpux10.h (LINK_SPEC): Likewise.
+ * pa-hpux9.h (LINK_SPEC): Likewise.
+ * pa-osf.h (LINK_SPEC): Likewise.
+ * pa-pro.h (TARGET_DEFAULT): Likewise.
+ * pa1.h (TARGET_DEFAULT): Likewise.
+ * pa.h (MASK_*): New defines.
+ (TARGET_*): Use symbolic values rather than numeric values.
+ (TARGET_SWITCHES): Likewise.
+ (TARGET_DEFAULT): Likewise.
+ (CPP_SPEC): Likewise.
+
+Wed Feb 3 21:07:38 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+
+ * reload1.c (reload_cse_regs_1): Undo Jan 16 patch.
+ * reload.c (find_reusable_reload): New function, broken out of
+ push_reload. Add code to verify that none of the involved
+ outputs are subject to earlyclobbers.
+ (push_reload): Break out new function find_reusable_reload.
+ Delete "register" keyword for IN, OUT args.
+
+Wed Feb 3 15:51:04 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/mips.c (true_reg_or_0_operand) : New function.
+ * config/mips/mips.h (PREDICATE_CODES): Add true_reg_or_0_operand.
+ * config/mips/mips.md (div_trap,div_trap_normal,div_trap_mips16):
+ Use true_reg_or_0_operand for div_trap.
+
+Wed Feb 3 20:44:59 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.h (express_from): Declare.
+ (struct induction): Replace derived flag with derived_from pointer.
+ * loop.c (strength_reduce, record_giv, recombine_givs): Likewise.
+ (express_from): No longer static.
+ * unroll.c (find_splittable_givs): Replace derived with derived_from.
+ When processing an address giv with which another giv has been
+ combined that has also been derived from a third giv, handle like
+ having combined with the third giv.
+ Set splittable_regs_updates appropriately for derived givs.
+
+Wed Feb 3 15:26:58 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/mips.md (div_trap_mips16): Remove nop's after branches.
+
+Wed Feb 3 11:56:23 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (insn_sets_and_refs_are_delayed): New function.
+ * pa.h (INSN_SETS_ARE_DELAYED): Use it.
+ (INSN_REFERENCES_ARE_DELAYED): Likewise.
+
+Wed Feb 3 06:24:49 1999 Richard Earnshaw (rearnsha@arm.com)
+
+ * config/arm/t-arm-elf (LIBGCC2_CFLAGS): Delete.
+ * config/arm/t-linux (LIBGCC2_CFLAGS): Delete.
+ (TARGET_LIBGCC2_CFLAGS): Define.
+ (LIBGCC2_DEBUG_CFLAGS): Define.
+ * config/arm/t-netbsd: Likewise.
+ * config/arm/t-semi: Likewise.
+ * config/arm/t-semiaof: Likewise.
+ * config/arm/t-riscix: Likewise.
+
+Wed Feb 3 10:59:07 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * config/m68k/m68k.c (print_operand_address): When printing a
+ SYMBOL_REF that ends in `.<letter>' put parentheses around it.
+
+Tue Feb 2 23:38:35 1999 David O'Brien <obrien@FreeBSD.org>
+
+ * i386/freebsd*.h now allows '$' in label names and does not use the
+ PCC struct return method.
+
+Tue Feb 2 22:38:23 1999 Jim Wilson <wilson@cygnus.com>
+
+ * Makefile.in: Change all uses of AR to AR_FOR_TARGET. Change all uses
+ of HOST_AR to AR. Likewise for AR_FLAGS, RANLIB, and RANLIB_TEST.
+ (RANLIB_TEST): Test to see if ranlib exists. Only test absolute file
+ names if host == target.
+ (HOST_AR, HOST_AR_FLAGS, HOST_RANLIB, HOST_RANLIB_TEST): Delete.
+ (AR_FLAGS_FOR_TARGET): Renamed from AR_FOR_TARGET_FLAGS.
+ (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Delete rules
+ setting them to *_FOR_TARGET.
+ * cross-make (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST):
+ Delete.
+
+Tue Feb 2 22:38:19 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * toplev.h (read_integral_parameter): Declare.
+ * toplev.c (read_integral_parameter): New function.
+
+Fri Jan 29 21:00:56 1999 Bob Manson <manson@charmed.cygnus.com>
+
+ * resource.c, resource.h: New files.
+ * Makefile.in (OBJS): Add it.
+
+ * haifa-sched.c (regno_use_in): Moved to rtlanal.c.
+ (split_block_insns): Moved to recog.c.
+ (update_flow_info): Make public.
+ * rtl.h: Declare them.
+
+ * reorg.c: Moved the functions dealing with computing resource
+ usage to resource.c.
+
+ * sched.c (regno_use_in): Moved to rtlanal.c.
+ (update_flow_info): Make public.
+ (schedule_insns): Use split_block_insns.
+
+ * recog.c (split_block_insns): New function.
+
+Tue Feb 2 22:03:26 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000/linux.h (LINK_START_DEFAULT_SPEC): Delete, unused.
+ (LINK_OS_DEFAULT_SPEC): Delete, unused.
+
+Tue Feb 2 20:29:34 1999 Catherine Moore <clm@cygnus.com>
+
+ * configure.in (arm-*-oabi): Support.
+ * configure: Regenerate.
+ * config/arm/unknown-elf-oabi.h: New file.
+
+Tue Feb 2 19:43:59 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i386.md (ashlsi3): Turn into a define_expand an anonymous pattern.
+ Make the anonymous pattern match when ! optimize_size.
+ (ashlsi3 size optimizer): New pattern.
+
+ * intl/Makefile.in (uninstall): Add missing "; \".
+
+Tue Feb 2 18:21:23 1999 Stan Cox <scox@cygnus.com>
+
+ * sparc.h (TARGET_CPU_sparc86x): Added. TARGET_CPU_sparclite86x
+ synonym.
+
+Tue Feb 2 20:24:11 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (loop_optimize): Fix value max_uid_for_loop is reset
+ to after find_and_verify_loops call.
+
+Tue Feb 2 19:48:29 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * (recombine_givs): Don't use a giv that's likely to be dead to
+ derive others.
+
+ * loop.c (recombine_givs): Fix test for lifetime overlaps / loop
+ wrap around when deriving givs.
+
+Mon Feb 1 20:00:40 1999 Richard Henderson <rth@cygnus.com>
+
+ * recog.c (check_asm_operands): Treat indeterminate operand ok
+ results as success. Try harder to resolve a matching constraint.
+ * stmt.c (expand_asm_operands): Recognize when an output operand's
+ constraint does not allow memory. Treat indeterminate operand ok
+ results as failure. Try harder to resolve a matching constraint.
+
+Mon Feb 1 15:00:02 1999 Ken Raeburn <raeburn@cygnus.com>
+
+ Use varrays for constant-equivalence data:
+
+ * varray.h (struct const_equiv_data): New type.
+ (union varray_data_tag): New element const_equiv.
+ (VARRAY_CONST_EQUIV_INIT, VARRAY_CONST_EQUIV): New macros.
+ (VARRAY_SIZE): New macro, returns number of elements.
+ * integrate.h: Include varray.h.
+ (struct inline_remap): Replace const_equiv_map, const_age_map and
+ const_equiv_map_size with a const_equiv_varray element.
+ (MAYBE_EXTEND_CONST_EQUIV_VARRAY): New macro; grows varray if
+ needed.
+ (SET_CONST_EQUIV_DATA): New macro; sets rtx and age fields
+ simultaneously, growing the varray if needed.
+
+ * integrate.c (global_const_equiv_map,
+ global_const_equiv_map_size): Deleted, replaced by....
+ (global_const_equiv_varray): New variable.
+ (expand_inline_function): References changed.
+ * integrate.h: Update declarations.
+
+ * integrate.c (process_reg_parm, expand_inline_function,
+ copy_rtx_and_substitute, try_constants, subst_constants,
+ mark_stores): Use varray allocation and accessor macros, new
+ integrate.h macros, and global_const_equiv_varray. Don't
+ conditionalize non-NULL stores on array size; instead, expand the
+ array as needed.
+ * unroll.c (unroll_loop): Likewise.
+
+ * unroll.c (unroll_loop): Initialize const_equiv_varray element to
+ zero. After allocating varray, always exit through bottom of
+ function, where it can be deallocated if needed. Don't explicitly
+ reallocate const_equiv_map storage; instead, just ensure the
+ varray has been initialized, and update the global reference.
+
+Mon Feb 1 09:40:25 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (inline, const): Handle these for stage2 (and later) gcc.
+
+ * dwarf2out.c (inline): Don't define.
+
+ * dwarfout.c (inline): Likewise.
+
+Sun Jan 31 22:04:37 1999 Richard Henderson <rth@cygnus.com>
+
+ * loop.c (recombine_givs): Dump recombination and derivation data.
+
+Sun Jan 31 20:34:29 1999 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * flags.h: Declare flag_no_ident.
+ * toplev.c: Define flag_no_ident. Process -f(no-)ident here.
+ * c-tree.h: Don't declare flag_no_ident.
+ * c-decl.c: Don't define flag_no_ident. Don't process
+ -f(no-)ident switches here.
+
+ * config/elfos.h (ASM_FILE_END): Output final .ident directive
+ only if !flag_no_ident.
+ * config/ptx4.h: Likewise.
+ * config/svr4.h: Likewise.
+ * config/alpha/elf.h: Likewise.
+ * config/arm/linux-elf.h: Likewise.
+ * config/i386/sco5.h: Likewise.
+ * config/i860/fx2800.h: Likewise.
+ * config/mips/gnu.h: Likewise.
+ * config/i386/osfrose.h: Likewise.
+
+ * gcc.c (C specs): Map -Qn to -fno-ident.
+ * objc/lang-specs.h: Likewise.
+
+Mon Feb 1 10:52:07 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * configure.in: Don't remove loop.o and unroll.o when
+ enable-haifa is selected.
+ * configure: Rebuilt.
+
+Sun Jan 31 13:22:02 1999 John Wehle (john@feith.com)
+
+ * i386.md (movsicc, movhicc, movsfcc, movdfcc,
+ movxfcc, movdicc): Delete unconstrained alternatives.
+ * i386.c (output_fp_conditional_move,
+ output_int_conditional_move): Delete unused case.
+
+Sun Jan 31 01:15:04 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Jan 31 00:52:37 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.md (mov patterns): Emit the assembler aliases mov and fmov
+ instead of bis and cpys. Combine alternatives where possible.
+
+Sat Jan 30 23:14:13 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcov.c (fnotice): Add missing FILE* parameter.
+ (function_summary): Fix format specifiers in calls to `fnotice'.
+ (output_data): Likewise.
+
+ * toplev.c (fnotice): Constify char* parameter.
+
+ * toplev.h (fnotice): Add prototype.
+ Wrap prototype with BUFSIZ to protect FILE* usage.
+
+Sun Jan 31 15:33:09 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (RTX_COSTS): Explicitly define c4x costs.
+
+Sat Jan 30 08:27:23 1999 Jeffrey A Law (law@cygnus.com)
+
+ * combine.c (distribute_notes): Handle REG_EH_REGION notes.
+
+ * alias.c (fixed_scalar_and_varying_struct_p): Add "static" to
+ function definition.
+ (aliases_everything_p, write_dependence_p):Likewise.
+
+ * install.texi: Fix merge lossages.
+
+ * cccp.c (main): Only call setlocale (LC_MESSAGES, ...) if LC_MESSAGES
+ is defined.
+ * collect2.c (main): Likewise.
+ * cppmain.c (main): Likewise.
+ * gcc.c (main): Likewise.
+ * gcov.c (main): Likewise.
+ * protoize.c (main): Likewise.
+ * toplev.c (main): Likewise.
+
+ * pa.md (parallel shift and shiftadd): Mark output of shift as an
+ earlyclobber.
+
+ * loop.c: Disable recent loop changes. Temporary as Joern
+ continues to fix problems.
+
+Sat Jan 30 03:24:37 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Size reg_map according to reg_iv_type.
+
+Fri Jan 29 18:26:07 1999 Dave Brolley <brolley@cygnus.com>
+
+ * emit-rtl.c (remove_insn): New function.
+ * rtl.h (remove_insn): Add prototype.
+ * function.c (reposition_prologue_and_epilogue_notes): Call remove_insn.
+
+Fri Jan 29 22:34:41 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (recombine_givs): Don't try to derive givs that have combined.
+
+Fri Jan 29 15:00:39 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * toplev.c (notice, fnotice): Check ANSI_PROTOTYPES, not __STDC__,
+ when declaring arguments and calling va_arg() to initialize them.
+
+ * collect2.c (notice): Likewise.
+
+ * loop.c (find_life_end): Use PROTO() macro in the prototype.
+
+Fri Jan 29 14:36:11 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * collect2.c (error): Fix typo in declaration.
+
+ * cpperror.c (cpp_message): Likewise.
+
+ * cpplib.c (cpp_warning): Likewise.
+
+ * cpplib.h (cpp_notice): Use PVPROTO not VPROTO, also add
+ ATTRIBUTE_PRINTF_1.
+
+ * toplev.c (error): Fix typo in declaration.
+
+Fri Jan 29 15:44:13 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Fix HAVE_cc0 handling when scanning
+ forward from cont dominator.
+
+Fri Jan 29 07:10:27 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cccp.c (eprint_string): Constify a char*.
+ (notice): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1.
+ (vnotice): Constify a char*.
+ (error): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1.
+ (verror): Constify a char*.
+ (warning): Likewise. Use PVPROTO not VPROTO, add ATTRIBUTE_PRINTF_1.
+ (vwarning): Constify a char*.
+ (error_with_line): Likewise. Use PVPROTO not VPROTO, add
+ ATTRIBUTE_PRINTF_2.
+ (verror_with_line): Constify a char*.
+ (vwarning_with_line): Likewise.
+ (warning_with_line): Likewise. Use PVPROTO not VPROTO, add
+ ATTRIBUTE_PRINTF_2.
+ (pedwarn): Constify a char*. Use PVPROTO not VPROTO, add
+ ATTRIBUTE_PRINTF_1.
+ (pedwarn_with_line): Likewise with ATTRIBUTE_PRINTF_2.
+ (pedwarn_with_file_and_line): Likewise with ATTRIBUTE_PRINTF_4.
+ Also correct typo in parameter name declaration.
+ (make_assertion): Constify a char*.
+ (quote_string_for_make): Likewise.
+ (deps_output): Likewise.
+ (fatal): Likewise. Use PVPROTO not VPROTO, add
+ ATTRIBUTE_PRINTF_1. Use ATTRIBUTE_NORETURN not an explicit
+ "__attribute__ ((noreturn))".
+ (fancy_abort): Likewise for ATTRIBUTE_NORETURN.
+ (pfatal_with_name): Likewise.
+ (pipe_closed): Likewise.
+ (memory_full): Likewise.
+
+Fri Jan 29 00:14:55 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (strength_reduce): Grow set_in_loop / n_times_set /
+ may_not_optimize to proper size when converting biv increments
+ into givs.
+ If necessary, reallocate reg_iv_type / reg_iv_info before calling
+ recombine_givs.
+
+Thu Jan 28 23:24:08 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * loop.c (recombine_givs): New parameter unroll_p. If set, don't
+ generate complex adds. Changed caller.
+ Don't generate adds that cost more than the original one.
+ (strength_reduce): Warning fixes.
+
+Thu Jan 28 09:41:11 1999 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (hppa1.0-hp-hpux10*): Use t-pa.
+ * configure: Rebuilt.
+
+Wed Jan 27 23:39:53 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * rtl.h (insn_first_p, no_jumps_between_p): Declare.
+ * rtlanal.c (insn_first_p, no_jumps_between_p): New function.
+ * loop.h (varray.h): Include.
+ (struct induction): Change combined_with to unsigned.
+ New members derived, ix and last_use.
+ (reg_iv_type, reg_iv_info): Now varray_type. All references changed.
+ (REG_IV_TYPE, REG_IV_INFO): Define.
+ (first_increment_giv, last_increment_giv): Declare.
+ * loop.c (loop_number_loop_cont): New static variable.
+ (loop_number_cont_dominator): Likewise.
+ (reg_iv_type, reg_iv_info): Now varray_type.
+ (first_increment_giv, last_increment_giv): New variables.
+ (compute_luids, verify_dominator, find_life_end): New functions.
+ (cmp_recombine_givs_stats, recombine_givs): Likewise.
+ (loop_optimize): Allocate loop_number_loop_cont and
+ loop_number_cont_dominator. Use compute_luids.
+ (find_and_verify_loops): Initialize loop_number_loop_cont and
+ loop_number_cont_dominator.
+ (strength_reduce): Try to find bivs that can be expressed as givs
+ of another biv, and to convert biv increments into givs.
+ Call recombine_givs. Handle derived givs.
+ (record_biv): New argument location. All callers changed.
+ (record_giv): Initialize derived and last_use fields.
+ (basic_induction_var): New argument location. All callers changed.
+ (combine_givs): Don't combine a DEST_REG giv with a DEST_ADDR giv.
+ Increment combined_with instead of setting to 1.
+ * unroll.c (derived_regs): New static variable.
+ (unroll_loop): Initialize it.
+ Allocate local_regno according to max_reg_num.
+ (copy_loop_body): Cope with derived givs.
+ (find_splittable_givs): Check for Givs made from biv increments.
+ Set derived_regs for givs.
+ * Makefile.in (stmt.o, loop.o, unroll.o): Depend on loop.h .
+
+Wed Jan 27 19:31:36 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * function.c (purge_addressof_1): Handle case when a register
+ has been used in a wider mode.
+
+1999-01-27 Bruce Korb <autogen@linuxbox.com>
+
+ * fixinc/fixincl.c, fixinc/server.[ch]:
+ Removed the last of the capitalized variable and proc names.
+
+ * fixinc/server.c: Removed the process open code.
+ * fixinc/procopen.c: New file containing the proc open code.
+ * fixinc/inclhack.tpl: Added code to bypass a readability test
+ when a file is not present. A problem on some systems.
+ * fixinc/inclhack.sh, fixinc/fixincl.sh: Regenerated.
+
+Wed Jan 27 11:58:18 1999 Dave Brolley <brolley@cygnus.com>
+
+ * cpplib.h (cpp_notice): Add prototype.
+
+Wed Jan 27 02:20:48 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Merge gcc2 snapshot 19980929.
+
+ * cccp.c (PRINTF_PROTO): Remove.
+ (PRINTF_PROTO_{1,2,3,4}: Likewise.
+ * cexp.y: Likewise.
+ * system.h: Add PRINTF_PROTO and PRINTF_PROTO_{1,2,3,4}.
+
+ * fix-header.c (cpp_file_lin_for_message): Delete. In libcpp.
+ (cpp_print_containing_files, v_cpp_message, cpp_message): Likewise.
+ (cpp_fatal, cpp-Pfatal_with_name): Likewise.
+
+ * gen-protos.c (hashf): Delete in cpphash.o.
+ * gen-protos.c (hashf): Delete in cpphash.o.
+
+ * expr.c: Do not merge SAVE_STACKAREA_MODE changes.
+ * expmed.c: Likewise.
+ * rs6000.md: Likewise.
+
+ * rs6000.c, rs6000.md: Do not merge formatting changes yet.
+
+Wed Jan 27 01:13:42 1999 Richard Henderson <rth@cygnus.com>
+
+ * rs6000.c (input_operand): Don't expect CONST around CONSTANT_P_RTX.
+ * rs6000.md (movsi, movdi): Likewise.
+
+Tue Jan 26 13:31:38 1999 Jim Wilson <wilson@cygnus.com>
+
+ * function.c (expand_function_end): Pass arg_pointer_save_area to
+ validize_mem before using it. Emit code into a sequence.
+
+Tue Jan 26 13:41:38 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (doz + set cr and or + set cr patterns): Add missing
+ '#' to split patterns. Correct indentation of some new patterns.
+
+1999-01-26 Zack Weinberg <zack@midnite.ec.rhno.columbia.edu>
+
+ * cppfiles.c (safe_read): Deleted.
+ (read_and_prescan): New function, replaces safe_read, converts
+ and/or warns about trigraphs, silently converts odd line
+ terminators (\r, \n\r, \r\n). Warns about no newline at EOF.
+ (finclude): Use read_and_prescan; turn off nonblocking mode on
+ the input descriptor; remove file-size-examination and
+ no-newline-at-EOF gunk which is longer necessary; be more
+ careful about checking that we've been handed a legitimate
+ file to read (only real files, pipes, and ttys are acceptable).
+ * cpplib.h (cpp_options): Rename no_trigraphs flag to
+ `trigraphs' and invert its sense.
+ (trigraph_table): Declare.
+ (cpp_warning_with_line): Prototype.
+ * cpplib.c: Remove all references to trigraph_pcp. Define
+ trigraph_table; initialize it in initialize_char_syntax. Open
+ files in nonblocking mode. s/no_trigraphs/trigraphs/
+ throughout, and invert sense. Put cpp_warning_with_line back
+ in and export it.
+
+Tue Jan 26 23:21:49 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (COUNTER_REGS): New register class.
+ * config/c4x/c4x.md (*rptb_init): Change constraints.
+ (rptb_end): Emit alternate looping instructions if
+ RC register not allocated for loop counter.
+ (decrement_and_branch_on_count): Allow other registers
+ for loop counter.
+
+1999-01-25 Zack Weinberg <zack@rabi.columbia.edu>
+
+ * cppexp.c (struct arglist): Removed.
+ (parse_number): Use HOST_WIDE_INT for the accumulator.
+ Allow two `l' suffixes unless C89. Clean up. Make static.
+ (parse_charconst): New function broken out of cpp_lex.
+ Code cleaned up drastically. Don't use a token_buffer.
+ (token_buffer): Removed.
+ (cpp_lex): Don't call parse_number on a constant string.
+ Use parse_charconst.
+ (cpp_parse_expr): Properly handle an ERROR op returned by
+ cpp_lex.
+
+1999-01-25 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * cpplib.c: Don't include signal.h, sys/times.h, or
+ sys/resource.h. Don't declare localtime.
+ (macroexpand): Handle special symbols here.
+ (push_macro_expansion): Chop off the trailing '@ ' if possible
+ here.
+ (cpp_get_token): Don't do either of the above two things here.
+ Move `string' label just after case '"' so that wide strings
+ don't crash the preprocessor.
+
+Sun Jan 24 20:13:45 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (left shift + set cr patterns): Add missing '#' to
+ split patterns.
+ (move register + set cr pattern): Likewise.
+ (movdi, !TARGET_POWERPC64 splitters): Add back in Jan. 15th patch,
+ inadvertently deleted.
+
+Sun Jan 24 08:07:59 1999 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (stmt_loop_nest_empty): New function.
+ * tree.h (stmt_loop_nest_empty): Declare it.
+ * rtl.def (CALL_PLACEHOLDER): New rtx code.
+
+Sun Jan 24 21:24:43 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_emit_move_sequence, c4x_encode_section_info):
+ New functions.
+ (c4x_check_legit_addr): Remove USE and PLUS, allow
+ LO_SUM, and disable SYMBOL_REF, LABEL_REF, and CONST cases.
+ (c4x_legitimize_address): Penalize SYMBOL_REF, LABEL_REF, and
+ CONST cases. Add LO_SUM.
+ (c4x_print_operand): Modified 'C' and 'R' cases for calls.
+ Added 'U' case. Remove dependence on SYMBOL_REF_FLAG.
+ (c4x_print_operand_address): Handle LO_SUM.
+ (c4x_scan_for_ldp): Delete. Hooray!
+ (c4x_process_after_reload): Remove call to c4x_scan_for_ldp.
+ Split all insns.
+ (c4x_immed_int_constant): Renamed from c4x_int_constant. All callers
+ changed.
+ (c4x_immed_float_constant): Renamed from c4x_float_constant. All
+ callers changed.
+ (c4x_T_constraint): Allow LO_SUM, disable SYMBOL_REF, LABEL_REF,
+ and CONST.
+ (c4x_U_constraint, symbolic_operand): New functions.
+ (src_operand): Allow 'I' constants in HImode. Allow LO_SUM,
+ disable SYMBOL_REF, LABEL_REF, and CONST.
+ (lsrc_operand, tsrc_operand): Call src_operand instead of
+ general_operand.
+ (c4x_operand_subword): Update comments.
+
+ * config/c4x/c4x.c (TARGET_LOAD_ADDRESS): New macro.
+ (LEGITIMATE_CONSTANT_P): Allow SYMBOL_REF, LABEL_REF, CONST,
+ plus HIGH and LO_SUM for the C40.
+ (ENCODE_SECTION_INFO): Define macro.
+ (symbolic_operand, c4x_U_constraint, c4x_emit_move_sequence): New
+ prototypes.
+ (PREDICATE_CODES): Add symbolic_operand.
+
+ * config/c4x/c4x.md (movqi, movgqf, movhi, movhi): Call
+ c4x_emit_move_sequence.
+ (floatunsqiqf2, fixuns_truncqfqi2): Rework emitted RTL
+ to avoid symbol references.
+ (all patterns with g constraint): Replace 'g' constraint with 'rIm'.
+ (set_high): Renamed from set_high_use.
+ (set_lo_sum): Renamed from set_ior_lo_use.
+ (all call patterns): Make MEM explicit in call address operands.
+ Modified output templates to use 'U' modifier.
+
+Sun Jan 24 01:15:05 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Jan 23 22:34:57 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * final.c (bb_str): Qualify a char* with the keyword `const'.
+ (add_bb_string, final_scan_insn, output_asm_insn): Likewise.
+
+ * fix-header.c (read_scan_file): Likewise.
+
+ * genoutput.c (output_epilogue, process_template): Likewise.
+
+ * local-alloc.c (requires_inout, block_alloc): Likewise.
+
+ * output.h (output_asm_insn, assemble_string): Likewise.
+
+ * recog.c (recog_constraints, check_asm_operands,
+ decode_asm_operands, extract_insn, preprocess_constraints,
+ constrain_operands): Likewise.
+
+ * recog.h (operand_alternative, recog_constraints, insn_template,
+ insn_outfun, insn_operand_constraint, insn_name): Likewise.
+
+ * regclass.c (record_reg_classes, scan_one_insn): Likewise.
+
+ * regmove.c (find_matches): Likewise.
+
+ * reload.c (alternative_allows_memconst): Likewise.
+
+ * reload1.c (constraint_accepts_reg_p,
+ reload_cse_simplify_operands): Likewise.
+
+ * rtl.h (decode_asm_operands): Likewise.
+
+ * scan.h (fn_decl): Likewise.
+
+ * varasm.c (assemble_string): Likewise.
+
+Sat Jan 23 01:37:36 1999 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (gcc_tooldir): Handle case where exec_prefix has
+ not been explicitly set.
+ * configure: Rebuilt.
+
+ * fold-const.c (lshift_double): Mark 'prec' arguments as possibly
+ unused.
+
+ * bitmap.h (bitmap_head_def): Make indx field unsigned.
+
+ * configure.in (gcc_tooldir): When not making a relative gcc_tooldir,
+ use $exec_prefix/$target_alias for gcc_tooldir.
+ * configure: Rebuilt.
+
+Fri Jan 22 11:48:56 1999 Richard Henderson <rth@cygnus.com>
+
+ * cppp.c (xrealloc): Fix typo last change.
+ * cppalloc.c, gcc.c, genattr.c, genattrtab.c, gencodes.c: Likewise.
+ * genconfig.c, genemit.c, genextract.c, genflags.c: Likewise.
+ * genopinit.c, genoutput.c, genpeep.c, genrecog.c: Likewise.
+
+1999-01-22 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.h (CR0_REGNO_P): New macro to test if cr0.
+ (CR_REGNO_NOT_CR0_P): New macro to test if cr, but not cr0.
+ (PREDICATE_CODES): Add cc_reg_not_cr0_operand.
+ (cc_reg_not_cr0_operand): Add declaration.
+
+ * rs6000.c (cc_reg_not_cr0_operand): Return true if register is a
+ pseudo register, or a control register that is not CR0.
+
+ * rs6000.md (all combiner patterns building . instructions): For
+ all `.' instructions that do something and set cr0, add an
+ alternative that does the operation, and then sets a different
+ flag, in order to avoid using the costly mcrf instruction and also
+ allow cr0 to be clobbered in asm statements. Also fix a few
+ patterns that used the wrong register.
+
+ * rs6000.h (rs6000_cpu_select): Make string, names be const char *.
+ (rs6000_debug_name): Make const char *, not char *.
+
+ * sysv4.h (rs6000_{abi,sdata}_name): Make const char *.
+
+ * rs6000.c (rs6000_{debug,abi,sdata}_name): Make const char *.
+ (rs6000_select): Use const char * in casts.
+
+Fri Jan 22 07:43:01 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (gcc_tooldir): Move before first reference.
+ Let autoconf substitute in a value.
+ * configure.in (gcc_tooldir): Only use a relative path to the
+ tool directory if $exec_prefix == $prefix.
+ * configure: Rebuilt.
+
+ * Makefile.in (tooldir): Replace with gcc_tooldir.
+
+Thu Jan 21 23:21:57 1999 Jeffrey A Law (law@cygnus.com)
+
+ * m68k.md (ashldi_const): Disable for !TARGET_5200. Fix indentation.
+ (ashldi3 expander): Similarly. Update comments.
+ (ashrdi_const, lshrdi_const): Fix indentation.
+ (ashrdi3, lshrdi3): Fix indentation. Update comments.
+
+Thu Jan 21 21:53:36 1999 Richard Henderson <rth@cygnus.com>
+
+ * emit-rtl.c (try_split): Don't try to split non-instructions.
+
+Thu Jan 21 23:47:30 1999 Andrew MacLeod <amacleod@cygnus.com>
+
+ * expr.c (emit_push_insn): Fix dumb typo.
+
+Thu Jan 21 20:24:02 1999 Richard Henderson <rth@cygnus.com>
+
+ * rs6000.h (LEGITIMIZE_RELOAD_ADDRESS): Recognize and accept
+ transformations that we have performed earlier.
+ * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): Likewise.
+
+ * alpha.md (prologue_stack_probe_loop): Don't do our own label
+ handling, call gen_label_rtx instead.
+
+Thu Jan 21 17:45:18 1999 Richard Henderson <rth@cygnus.com>
+
+ * configure.in ({rs6000|powerpc}-ibm-aix4.[12]*): Add missing `then'.
+
+ * cccp.c (xrealloc): Call malloc given a NULL old pointer.
+ * collect2.c, cppalloc.c, gcc.c, genattr.c, genattrtab.c: Likewise.
+ * gencodes.c, genconfig.c, genemit.c, genextract.c: Likewise.
+ * genflags.c, genopinit.c, genoutput.c, genpeep.c: Likewise.
+ * genrecog.c, mips-tfile.c, protoize.c: Likewise.
+
+Thu Jan 21 19:44:55 1999 Michael Meissner <meissner@cygnus.com>
+
+ * configure.in ({rs6000|powerpc}-ibm-aix4.[12]*): If
+ --with-gnu-ld, use x-aix41-gld instead of x-aix41 to suppress
+ adding -Wl,-bbigtoc to BOOT_LDFLAGS.
+ * configure: Regenerate.
+
+ * config/rs6000/x-aix41-gld: New file, don't set BOOT_LDFLAGS.
+
+Thu Jan 21 15:48:03 1999 Dave Brolley <brolley@cygnus.com>
+
+ * cppexp.c (cpp_lex): Allocate token_buffer dynamically.
+
+Thu Jan 21 14:18:04 1999 Andrew MacLeod <amacleod@cygnus.com>
+
+ * expr.c (MOVE_BY_PIECES_P): Define condition for deciding to use
+ move_by_pieces.
+ (MOVE_MAX_PIECES): Define maximum number of bytes to move at once.
+ (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT): Define defaults.
+ (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define defaults.
+ (move_by_pieces): Use new macros.
+ (emit_block_move): Use new macros.
+ (clear_by_pieces): Use new macros.
+ (clear_storage): Use new macros.
+ (emit_push_insn): Use new macros.
+ (expand_expr): Use new macros.
+ * config/sh/sh.h (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_DECREMENT):
+ Define.
+ (USE_STORE_POST_INCREMENT, USE_STORE_PRE_DECREMENT): Define.
+ (MOVE_BY_PIECES_P): Define based on alignment and TARGET_SMALLCODE.
+ (MOVE_MAX_PIECES): Move 8 bytes on SH4.
+ * tm.texi(MOVE_BY_PIECES_P, MOVE_MAX_PIECES, USE_LOAD_POST_INCREMENT,
+ USE_LOAD_PRE_DECREMENT, USE_STORE_POST_INCREMENT,
+ USE_STORE_PRE_DECREMENT): Describe new macros.
+
+Thu Jan 21 14:13:31 1999 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * varasm.c (output_constant_pool): Use floor_log2 instead of
+ exact_log2 for ASM_OUTPUT_ALIGN.
+
+ * stor-layout.c (layout_type): Do machine-dependent extra alignment.
+
+ * emit-rtl.c (operand_subword): Handle case when a subword outside
+ the operand.
+
+ * tm.texi (ROUND_TYPE_{SIZE,ALIGN}): More accurate descriptions of
+ the macros.
+
+Thu Jan 21 01:59:30 1999 Richard Henderson <rth@cygnus.com>
+
+ * cse.c (fold_rtx): Revert 29 Dec change.
+ (cse_insn): Revert 12 Jan change.
+ * expr.c (expand_builtin): Don't emit CONST around CONSTANT_P_RTX.
+ * regclass.c (reg_scan_mark_refs): Revert 29 Dec change.
+ * rtl.def: Likewise.
+ * rtl.h (CONSTANT_P): Likewise.
+
+ * expr.c (emit_move_insn): Never try to flush CONSTANT_P_RTX
+ to memory.
+ * recog.c (immediate_operand): Accept CONSTANT_P_RTX.
+ * alpha.c (input_operand): Likewise.
+ * c4x.c (const_operand): Likewise.
+
+ * explow.c (allocate_dynamic_stack_space): Use register_operand
+ instead of arith_operand, which does not exist.
+
+ * 1750a.h: Fix comment closure.
+ * a29k.c (a29k_set_memflags): Fix typo in 19 Jan change.
+ * arc.md (one_cmplsi2_set_cc_insn): Fix set mode mismatch.
+ * arm.h (TARGET_SWITCHES): Fix typo.
+ * i370.md (anon mult and div patterns): Fix set mode mismatch.
+ * i860.c (output_delayed_branch): Fix operands to constrain_operands.
+ (output_delay_insn): Likewise.
+ * m88k.md (anon rotate insns): Fix set mode mismatch.
+ (anon BLKmode moves): Commonize and fix set mode mismatches.
+ * ns32k.md (udivmoddi[shq]i4_internal): Fix mode mismatch.
+ * romp.md (movdf): Fix typo.
+
+Thu Jan 21 00:29:35 1999 Nathan Sidwell <nathan@acm.org>
+
+ * Makefile.in (install-common): Remove extraneous chmod for gcov
+ install.
+
+Wed Jan 20 18:15:08 1999 Dave Brolley <brolley@cygnus.com>
+
+ * function.c (assign_parms): Save and restore setting of
+ TREE_USED (parm).
+
+Wed Jan 20 12:51:42 1999 Mark Mitchell <mark@markmitchell.com>
+
+ * arm.md: Use MEM_COPY_ATTRIBUTES where appropriate throughout.
+ Pass MEM_SCALAR_P to arm_gen_store_multiple where appropriate.
+
+Tue Jan 19 21:20:52 1999 Richard Henderson <rth@cygnus.com>
+
+ * recog.c (pop_operand): New function.
+ * recog.h (pop_operand): Declare it.
+ * genrecog.c (preds): Define it.
+
+ * expr.c (do_jump_for_compare): Handle conditional branch expanders
+ emitting multiple jump instructions.
+ * jump.c (condjump_label): New function.
+ * rtl.h (condjump_label): Declare it.
+
+Tue Jan 19 21:08:20 1999 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (emit_move_insn_1): Revert 17 Dec change. Don't emit
+ clobber during or after reload.
+
+Tue Jan 19 16:56:03 1999 Richard Henderson <rth@cygnus.com>
+
+ * genoutput.c (name_for_index): New function.
+ (scan_operands, validate_insn_alternatives): Use it.
+ * genrecog.c (insn_name_ptr_size): New variable.
+ (make_insn_sequence): Fill in insn_name_ptr.
+ (merge_trees): Use it.
+
+Tue Jan 19 16:37:36 1999 Richard Henderson <rth@cygnus.com>
+
+ * i386/isc.h (TARGET_DEFAULT): Define symbolicly.
+ * i386/isccoff.h, i386/next.h, i386/sco.h, i386/sco5.h: Likewise.
+ * i386/scodbx.h, i386/sequent.h, i386.unix.h: Likewise.
+
+Tue Jan 19 15:00:10 1999 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (NUM_STORES): Delete.
+ (loop_store_mems): Turn into an EXPR_LIST of MEMs.
+ (prescan_loop): Properly initialize loop_mems_idx.
+ (note_addr_stored): Simplify using list structure instead of
+ fixed sized array.
+ (invariant_p, check_dbra_loop, load_mems): Similarly.
+
+ * flow.c (invalidate_from_autoinc): New function.
+ (mark_set_1, mark_used_regs): Use it.
+
+ * Makefile.in (protoize.o, unprotoize.o): Depend on Makefile.
+
+1999-01-19 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * invoke.texi (-mlong-double-64): New option description.
+
+1999-01-19 Jim Wilson <wilson@cygnus.com>
+
+ * libgcc2.c: Change all uses of LONG_DOUBLE_TYPE_SIZE to
+ LIBGCC2_LONG_DOUBLE_TYPE_SIZE.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New. Set to LONG_DOUBLE_TYPE_SIZE
+ if not defined.
+ * i960/i960.h (MULTILIB_DEFAULTS): Define to mnumerics.
+ (CPP_SPECS): Add -mlong-double-64 support.
+ (TARGET_FLAG_LONG_DOUBLE_64, TARGET_LONG_DOUBLE_64): New.
+ (TARGET_SWITCHES): Add -mlong-double-64 support.
+ (LONG_DOUBLE_TYPE_SIZE): Likewise.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define.
+ * i960/vx960-coff.h (MULTILIB_DEFAULTS): Define to msoft-float.
+ (CPP_SPECS): Add -mlong-double-64 support.
+ * i960/t-960bare (MULTILIB_OPTIONS): Add mlong-double-64.
+ (MULTILIB_DIRNAMES): Add ld64.
+ * i960/t-vxworks960 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Likewise.
+
+Tue Jan 19 11:54:04 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * calls.c (expand_call): Strip a TARGET_EXPR if we're passing by
+ invisible reference.
+
+Tue Jan 19 14:51:36 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (offsettable_addr_operand): Delete.
+ (offsettable_mem_operand): New function.
+ * rs6000.h (PREDICATE_CODES): Reflect function change.
+ (RS6000_SAVE_TOC): Represent address as MEM.
+ * win-nt.h (RS6000_SAVE_TOC): Same.
+ * rs6000.md (indirect calls): Change offsettable address parameter
+ to offsettable memory parameter.
+
+Tue Jan 19 10:24:53 1999 Mark Mitchell <mark@markmitchell.com>
+
+ * rtl.h (rtx_def): Update documentation.
+ (MEM_IN_STRUCT_P): Likewise.
+ (MEM_SCALAR_P): New macro.
+ (MEM_COPY_ATTRIBUTES): Likewise.
+ (MEM_SET_IN_STRUCT_P): Likewise.
+ * rtl.texi (MEM_SCALAR_P): Document.
+ * alias.c (canon_rtx): Use MEM_COPY_ATTRIBUTES.
+ (fixed_scalar_and_varying_struct_p): New function. Use
+ MEM_SCALAR_P rather than !MEM_IN_STRUCT_P.
+ (aliases_everything_p): Likewise.
+ (true_dependence): Use them.
+ (write_dependence_p): New function, containing code common to
+ anti_dependence and output_dependence.
+ (anti_dependence): Use it.
+ (output_dependence): Likewise.
+ * calls.c (save_fixed_argument_area): Don't clear
+ MEM_IN_STRUCT_P.
+ (expand_call): Use MEM_SET_IN_STRUCT_P.
+ (emit_library_call): Don't clear MEM_IN_STRUCT_P.
+ (emit_library_call_value): Likewise.
+ (store_one_arg): Use MEM_SET_IN_STRUCT_P.
+ * combine.c (simplify_rtx): Use MEM_COPY_ATTRIBUTES.
+ (make_extraction): Likewise.
+ (simplify_shift_const): Likewise.
+ (gen_lowpart_for_combine): Likewise.
+ * cse.c (gen_lowpart_if_possible): Use MEM_COPY_ATTRIBUTES.
+ * emit-rtl.c (operand_subword): Likewise.
+ (change_address): Likewise.
+ * explow.c (stabilize): Use MEM_COPY_ATTRIBUTES.
+ * expr.c (protect_from_queue): Use MEM_COPY_ATTRIBUTES.
+ (emit_group_store): Use MEM_SET_IN_STRUCT_P.
+ (copy_blkmode_from_reg): Likewise.
+ (store_field): Likewise.
+ (expand_expr): Remove bogus guesswork setting MEM_IN_STRUCT_P
+ heuristically. Use MEM_SET_IN_STRUCT_P.
+ (get_memory_rtx): Likewise.
+ * final.c (alter_subreg): Use MEM_COPY_ATTRIBUTES.
+ * function.c (assign_stack_temp): Clear MEM_SCALAR_P and
+ MEM_ALIAS_SET on newly returned MEMs.
+ (assign_temp): Use MEM_SET_IN_STRUCT_P.
+ (put_reg_into_stack): Likewise.
+ (fixup_var_refs1): Use MEM_COPY_ATTRIBUTES.
+ (gen_mem_addressof): Use MEM_SET_IN_STRUCT_P.
+ (assign_parms): Likewise.
+ (expand_function): Likewise.
+ * integrate.c (expand_inline_function): Likewise.
+ (copy_rtx_and_substitute): Use MEM_COPY_ATTRIBUTES.
+ * loop.c (note_addr_stored): Remove check on MEM_IN_STRUCT_P.
+ * optabs.c (gen_move_insn): Use MEM_COPY_ATTRIBUTES.
+ * print-rtl.c (print_rtx): Print /f for frame_related.
+ * recog.c (validate_replace_rtx_1): Use MEM_COPY_ATTRIBUTES.
+ * reload1.c (reload): Copy MEM_SCALAR_P as well.
+ * stmt.c (expand_decl): Use MEM_SET_IN_STRUCT_P.
+ (expand_anon_union_decl): Use MEM_COPY_ATTRIBUTES.
+ * varasm.c (make_decl_rtl): Use MEM_SET_IN_STRUCT_P.
+ (output_constant_def): Likewise.
+ * a29k.c (a29k_set_memflags_1): Take scalar_p.
+ Set MEM_SCALAR_P.
+ (a29k_set_memflags): Use it.
+ * alpha.c (get_aligned_mem): Use MEM_COPY_ATTRIBUTES.
+ * c4x.c (c4x_scan_for_ld): Likewise.
+ * h8300.c (fix_bit_operand): Likewise.
+ * m88k.c (legitimize_address): Likewise.
+ (block_move_loop): Likewise.
+ (block_move_no_loop): Likewise.
+ (block_move_sequence): Likewise.
+ (m88k_builtin_saveregs): Use MEM_SET_IN_STRUCT_P.
+ * mips/abi64.h (SETUP_INCOMING_VARARGS): Likewise.
+ * rs6000.c (expand_block_move_insn): Use MEM_COPY_ATTRIBUTES.
+ * sh.c (sh_builtin_saveregs): Use MEM_SET_IN_STRUCT_P.
+ * arm.h (arm_gen_load_multiple): Take scalar_p.
+ (arm_store_load_multiple): Likewise.
+ * arm.c (arm_gen_load_multiple): Likewise.
+ (arm_gen_store_multiple): Likewise.
+ (arm_gen_movstrqi): Treat MEM_SCALAR_P like MEM_IN_STRUCT_P.
+
+Tue Jan 19 12:30:37 1999 Andrew MacLeod <amacleod@cygnus.com>
+
+ * optabs.c (emit_libcall_block): Add a REG_EH_REGION reg note to all
+ calls within a libcall block to indicate no throws are possible.
+ * flow.c (find_basic_blocks, find_basic_blocks_1): Don't look for
+ libcall blocks. Don't add edges to exception handlers if we see
+ a REG_EH_REGION note with a value of 0.
+ (make_edges): Override active_eh_region vector if the call has a note
+ indicating the call does not throw.
+
+1999-01-19 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/rs6000/sysv4.h (CC1_SPEC): Fix correct numbers of {}.
+
+Tue Jan 19 06:26:30 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (cccp.o, cpplib.o): Depend on Makefile.
+
+Mon Jan 18 09:56:41 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * invoke.texi (C++ Dialect Options): Document -fno-rtti.
+
+1999-01-18 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * invoke.texi (-mcpu=740, -mcpu=750): New options.
+ (-m(no-)multiple, -m(no-)string): Describe cases for PPC740 &
+ PPC750.
+
+1999-01-18 Michael Meissner <meissner@cygnus.com>
+
+ * rs6000.h ({ASM,CPP}_CPU_SPEC): Add support for all machines
+ supported with -mcpu=xxx.
+ (processor_type): Add PROCESSOR_PPC750.
+ (ADJUST_PRIORITY): Call rs6000_adjust_priority.
+ (RTX_COSTS): Supply costs for 750 multiply/divide operations.
+ (rs6000_adjust_priority): Add declaration.
+
+ * rs6000.c (rs6000_override_options): -mcpu={750,740} now sets the
+ processor type as 750, not 603. Allow -mmultiple and -mstring on
+ little endian 750 systems.
+ (rs6000_adjust_priority): Stub for now.
+ (get_issue_rate): The PowerPC 750 can issue 2 instructions/cycle.
+
+ * rs6000.md (function/cpu attributes): Add initial ppc750 support.
+
+ * sysv4.h (STRICT_ALIGNMENT): Don't force strict alignment if
+ little endian.
+ (CC1_SPEC): Pass -mstrict-align if little endian, and not
+ overridden.
+ (CC1_ENDIAN_{LITTLE,BIG,DEFAULT}_SPEC): Endian specific configs.
+ (SUBTARGET_EXTRA_SPECS): Add cc1 endian specs.
+
+ * {sysv4,eabi}le.h (CC1_ENDIAN_DEFAULT_SPEC): Override, default is
+ little endian.
+
+ * t-ppcgas (MULTILIB_*): Delete obsolete Solaris multilibs.
+
+Mon Jan 18 12:03:08 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * config/mips/mips.md (div_trap): Split div_trap_mips16
+ from div_trap.
+ (div_trap_normal,div_trap_mips16): Correct the length attributes.
+
+Mon Jan 18 11:48:28 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cpplib.c (special_symbol): Qualify a char* with the `const' keyword.
+ Instead of writing to const char *buf directly, use a non-const
+ variable `wbuf' to allocate and write a string, then set buf = wbuf.
+
+ * cppulp.c (user_label_prefix): Qualify a char* with the `const'
+ keyword.
+
+ * dyn-string.c (dyn_string_append): Likewise.
+
+ * dyn-string.h (dyn_string_append): Likewise.
+
+ * final.c (end_final, output_operand_lossage, asm_fprintf): Likewise.
+
+ * output.h (end_final, output_operand_lossage, asm_fprintf,
+ named_section, decode_reg_name, make_decl_rtl, user_label_prefix):
+ Likewise.
+
+ * profile.c (init_branch_prob): Likewise.
+
+ * toplev.c (set_target_switch, vmessage,
+ v_message_with_file_and_line, v_message_with_decl,
+ v_error_with_file_and_line, v_error_with_decl, v_error_for_asm,
+ verror, vfatal, v_warning_with_file_and_line, v_warning_with_decl,
+ v_warning_for_asm, vwarning, vpedwarn, v_pedwarn_with_decl,
+ v_pedwarn_with_file_and_line, vsorry, v_really_sorry,
+ open_dump_file, dump_rtl, clean_dump_file,
+ print_version, print_single_switch, print_switch_values,
+ dump_base_name, debug_args, lang_independent_options,
+ user_label_prefix, documented_lang_options, target_switches,
+ target_options, print_time, pfatal_with_name, fatal_io_error,
+ fatal_insn, default_print_error_function, print_error_function,
+ report_error_function, error_with_file_and_line, error_with_decl,
+ error_for_asm, error, fatal, warning_with_file_and_line,
+ warning_with_decl, warning_for_asm, warning, pedwarn,
+ pedwarn_with_decl, pedwarn_with_file_and_line, sorry,
+ really_sorry, botch, output_quoted_string, output_file_directive,
+ open_dump_file, rest_of_decl_compilation, display_help, main):
+ Likewise.
+
+ * toplev.h (print_time, fatal, fatal_io_error, pfatal_with_name,
+ fatal_insn, warning, error, pedwarn, pedwarn_with_file_and_line,
+ warning_with_file_and_line, error_with_file_and_line, sorry,
+ really_sorry, default_print_error_function, report_error_function,
+ rest_of_decl_compilation, pedwarn_with_decl, warning_with_decl,
+ error_with_decl, error_for_asm, warning_for_asm, output_quoted_string,
+ output_file_directive, botch): Likewise.
+
+ * tree.h (make_decl_rtl): Likewise.
+
+ * varasm.c (strip_reg_name, named_section, decode_reg_name,
+ make_decl_rtl): Likewise.
+
+Mon Jan 18 11:35:49 1999 Gavin Romig-Koch <gavin@cygnus.com>
+
+ * Makefile.in (TCL_LIBRARY): Use 'cd' to find the library
+ directory logically rather than physically.
+
+Mon Jan 18 09:05:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * loop.c (insert_bct): Hide the definition of variables
+ `increment_direction', `compare_direction', `add_iteration' and
+ `loop_var_mode'.
+
+ * recog.c (mode_dependent_address_p): Mark parameter `addr' with
+ ATTRIBUTE_UNUSED. Mark label `win' with ATTRIBUTE_UNUSED_LABEL.
+ (mode_independent_operand): Mark label `lose' with
+ ATTRIBUTE_UNUSED_LABEL.
+
+ * regclass.c (n_occurrences): Remove prototype and definition.
+
+ * reload.c (find_reloads_address_1): Mark variable `tem' with
+ ATTRIBUTE_UNUSED.
+
+ * reload1.c (reload): Cast the first two arguments of `bcopy' to PTR.
+
+ * sbitmap.c (sbitmap_copy): Likewise.
+
+ * scan-decls.c (scan_decls): Hide label `handle_comma'.
+
+ * toplev.c (output_lang_identify): Mark prototype with
+ ATTRIBUTE_UNUSED.
+
+ * tree.c (make_node): Cast the first argument of `bzero' to PTR.
+ (make_tree_vec): Likewise.
+ (build1): Likewise.
+
+ * varasm.c (assemble_static_space): Mark variable `tem' with
+ ATTRIBUTE_UNUSED.
+
+Mon Jan 18 04:28:36 1999 Nathan Sidwell <nathan@acm.org>
+
+ * Makefile.in (GCOV_INSTALL_NAME): New macro.
+ (install-common): Use it.
+ (uninstall): Use it.
+ (uninstall): Use correct names for protoize and unprotoize.
+
+Mon Jan 18 03:52:56 1999 Christian Bruel <Christian.Bruel@st.com>
+ Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (last_mem_set): Delete variable. References removed.
+ (mem_set_list): New variable.
+ (life_analysis): Initialize and finalize alias analysis.
+ (propagate_block); Initialize mem_set_list. Clear for CALL_INSNs.
+ (insn_dead_p): For a store to memory, search the entire mem_set_list
+ for a match.
+ (mark_set_1): Kill entries on the mem_set_list for aliased writes or
+ changes to their addresses. Add new entries to the mem_set_list for
+ memory writes writes.
+ (mark_used_regs): Kill entries on the mem_set_list which may be
+ referenced by a load operation.
+
+Mon Jan 18 01:01:02 1999 Jeffrey A Law (law@cygnus.com)
+
+ * alias.c (base_alias_check): Add missing return for differing
+ symbols case.
+
+Mon Jan 18 00:36:13 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * mips-tdump.c (print_file_desc): Handle unknown filenames and
+ missing local symbols.
+
+Sun Jan 17 21:04:31 1999 Richard Henderson <rth@cygnus.com>
+
+ * jump.c (rtx_renumbered_equal_p): Special case CODE_LABEL.
+
+ * system.h (bcopy): Implement with memmove not memcpy.
+
+Sun Jan 17 19:23:20 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (cppulp.o): Add dependencies.
+
+ * i386.md (integer conditional moves): Add missing earlyclobbers.
+
+ * regmove.c (optimize_reg_copy_1): Undo Aug 18 change. Update
+ REG_N_CALLS_CROSSED and REG_LIVE_LENGH if and only if we change
+ where a register is live.
+
+Sun Jan 17 03:20:47 1999 H.J. Lu (hjl@gnu.org)
+
+ * reg-stack.c (subst_stack_regs_pat): Abort if the destination
+ of a FP conditional move is not on the FP register stack.
+
+Sun Jan 17 01:15:04 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sat Jan 16 23:40:33 1999 Jeffrey A Law (law@cygnus.com)
+
+ * reload1.c (reload_cse_regs_1): Do not call
+ reload_cse_simplify_operands for an insn with asm operands.
+
+ * cccp.c (print_help): Fix typos.
+ * cpplib.c (print_help): Fix typos.
+ * toplev.c (f_optiosn): Fix typos.
+ (documented_lang_options): Fix typos.
+
+Sat Jan 16 21:48:17 1999 Marc Espie (Marc.Espie@openbsd.org)
+
+ * gcc.c (do_spec_1): Fix obvious typo.
+
+Sat Jan 16 19:31:07 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-decl.c (duplicate_decls): If `warn_traditional', warn when
+ a non-static function declaration follows a static one.
+
+ * invoke.texi (-Wtraditional): Document the extra check now done
+ by this flag.
+
+Sat Jan 16 15:13:46 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (shadd): Create shadd insns, even if the result of the shift is
+ needed without the addition.
+
+Sat Jan 16 10:48:16 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (movdf, movsf): Temporary workaround for no_new_pseudos lossage.
+
+Fri Jan 15 23:44:37 1999 Richard Henderson <rth@cygnus.com>
+
+ * sparc.c (sparc_issue): Add hypersparc/sparclite86x entries.
+
+Fri Jan 15 22:30:04 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.h (CONST_OK_FOR_LETTER_P): Do not assume 32-bit CONST_INT.
+ * rs6000.c (u_short_cint_operand, add_operand, logical_operand,
+ non_add_cint_operand, non_logical_cint_operand): Likewise.
+ (get_issue_rate): Add CPU_PPC604E case.
+ * rs6000.md (movdi, !TARGET_POWERPC64 splitters): Handle 64-bit hosts.
+
+Fri Jan 15 18:42:12 1999 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (queued_subexp_p): Make public.
+ * expr.h (queued_subexp_p): Declare it.
+ * recog.c (asm_operand_ok): New function.
+ (check_asm_operands): Use it. After reload, use constrain_operands
+ instead.
+ * recog.h (asm_operand_ok): Declare it.
+ * stmt.c (expand_asm_operands): Use it to try harder to make
+ asms initially satisfy their constraints.
+
+Fri Jan 15 17:43:59 1999 Jeffrey A. Law <law@rtl.cygnus.com>
+
+ * sparc.h (LEGITIMIZE_RELOAD_ADDRESS): Do not create
+ (mem (lo_sum (...)) for TFmode unless TARGET_V9.
+
+Sat Jan 16 12:47:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (not_repeat_reg): Allow ldp instruction
+ in delay slot of RPTBD.
+
+Sat Jan 16 12:26:40 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/libgcc.S (___divhi3, ___modhi3): Fix long long
+ divide and modulo sign problem.
+
+Fri Jan 15 11:02:31 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * unroll.c (loop_iterations): Return 0 if the last loop insn
+ is not a jump insn or if the loop has multiple back edges.
+
+1999-01-15 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * configure.in (fixinc_defs): Do not define for m[68]8k-motorola-sysv{,3};
+ it's working properly now. Remove comment saying "see m68k-motorola-sysv
+ as an example".
+ * configure: Regenerate using autoconf.
+
+ * fixinc/fixincl.c (main): Do not ignore SIGCHLD.
+
+Thu Jan 14 22:38:41 1999 Jeffrey A Law (law@cygnus.com)
+
+ * unroll.c (find_splittable_givs): For a DEST_ADDR giv, do not share
+ a register with another DEST_ADDR giv if the address is not valid.
+
+ * pa.c (hppa_expand_epilogue): Save and restore the static chain
+ around the call to mcount.
+
+ * h8300.h (ASM_OUTPUT_LABELREF): Use asm_fprintf, not fprintf.
+
+ * stmt.c (expand_end_case): Use emit_cmp_and_jump_insns to avoid
+ generating non-canonical rtl.
+
+1999-01-14 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/i960/i960.c (i960_output_move_double_zero,
+ i960_output_move_quad_zero): New functions for moving zeros.
+ (i960_output_move_double, i960_output_move_quad): Additional code
+ for situation when moving unaligned register group.
+
+ * config/i960/i960.h (i960_output_move_double_zero,
+ i960_output_move_quad_zero): The function definitions.
+
+ * config/i960/i960.md (movdi+1, movti+1): Usage of the functions.
+
+1999-01-13 Vladimir N. Makarov <vmakarov@cygnus.com>
+
+ * config/i960/i960.c (i960_function_prologue): New code (optimal
+ solution) for saving global registers in local registers.
+ (form_reg_groups, reg_group_compare, split_reg_group): New
+ functions used by the code.
+ (reg_group): New structure definition for the new code.
+
+1999-01-13 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fixinc/fixincl.c (create_file): Pass file creation mask as
+ third parameter to "open". Use O_TRUNC flag to open instead of
+ explicitly unlink'ing the file.
+ (process): and forget about the "chmod" stuff.
+
+Wed Jan 13 20:12:37 1999 Richard Henderson <rth@cygnus.com>
+
+ * integrate.c (expand_inline_function): Recognize (mem (addressof))
+ and substitute. Copy the return value from there into a new pseudo.
+
+Wed Jan 13 16:47:00 1999 Catherine Moore <clm@cygnus.com>
+
+ * config/arm.c (output_func_epilogue): Check TARGET_ABORT_NORETURN
+ before generating a call to abort for volatile functions.
+ * config/arm.h (ARM_FLAG_ABORT_NORETURN): Define.
+ (TARGET_ABORT_NORETURN): Define.
+ (abort-on-noreturn): New option.
+
+Thu Jan 14 13:52:42 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (in_annul_slot_3): Correctly allow unarycc
+ and binarycc operations in 3rd annulled delay slot!
+
+Wed Jan 13 16:16:44 1999 Catherine Moore <clm@cygnus.com>
+
+ * config/arm.c (output_func_epilogue): Check TARGET_ABORT_NORETURN
+ before generating a call to abort for volatile functions.
+ * config/arm.h (ARM_FLAG_ABORT_NORETURN): Define.
+ (TARGET_ABORT_NORETURN): Define.
+ (abort-on-noreturn): New option.
+
+Wed Jan 13 13:30:08 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cccp.c (xstrdup): Renamed from `savestring'. All callers changed.
+ Remove prototype which we get from libiberty.h.
+
+ * collect2.c (xstrdup): Likewise.
+
+ * genextract.c (xstrdup): Likewise for `copystr'.
+ (mybzero): Remove it and use `memset' instead.
+
+ * genoutput.c (mybcopy, mybzero): Remove these. All callers changed
+ to use `memcpy' and `memset' instead.
+
+ * genrecog.c (xstrdup): Renamed from `copystr'. All callers
+ changed. Remove prototype.
+ (mybcopy, mybzero): Remove these and use memcpy/memset.
+
+Wed Jan 13 00:59:04 1999 Jeffrey A Law (law@cygnus.com)
+
+ * mips.h (LOAD_EXTEND_OP): Correct for SImode and CCmode moves when
+ generating code for TARGET_64BIT.
+
+Tue Jan 12 14:05:37 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (print_operand, cases 'm' and 'M'): Do not depend on
+ HOST_WIDE_INT word-size.
+ (rs6000_stack_info): Remove redundant alignment of fpmem.
+
+Tue Jan 12 14:05:37 1999 Richard Henderson <rth@cygnus.com>
+
+ * rs6000.c (short_cint_operand): Remove CONSTANT_P_RTX handling.
+ (u_short_cint_operand, reg_or_cint_operand, logical_operand): Likewise.
+ (input_operand): Adjust CONSTANT_P_RTX handling.
+ * rs6000.h (PREDICATE_CODES): Remove CONSTANT_P_RTX references.
+ * rs6000.md (movsi): Adjust CONSTANT_P_RTX handling.
+ (movhi, movqi): Remove CONSTANT_P_RTX handling.
+ (movdi): Adjust CONSTANT_P_RTX handling.
+
+1999-01-12 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * configure: Regenerate using autoconf.
+
+ * fixinc/Makefile.in (INCLUDES): Add -I$(srcdir)/../../include.
+ * fixinc/fixincl.c (SIGCHLD): Use SIGCLD on (very) old systems.
+ (process): "fchmod" isn't available on all systems, use "chmod"
+ instead.
+ * fixinc/server.c: Add #include <sys/types.h>.
+ (STDIN_FILENO): Add default definition if no include file defines
+ it already.
+ (STDOUT_FILENO): Likewise.
+
+Tue Jan 12 10:23:24 1999 Stan Cox <scox@cygnus.com>
+
+ * mips.md (call_value_internal3c): New pattern for -mips16 -mlong-calls.
+
+1999-01-12 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * m68k/mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
+ ensure all prototypes necessary for building libio will be available.
+ * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Remove
+ definitions here as they are not host specific.
+ * m88k/sysv3.h, m88k/xm-sysv3.h: Likewise.
+
+Tue Jan 12 02:53:46 1999 Richard Henderson <rth@cygnus.com>
+
+ * cse.c (cse_insn): Never prefer (const (constant_p_rtx)).
+
+Tue Jan 12 02:36:10 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Tue Jan 12 01:30:19 1999 Richard Henderson <rth@cygnus.com>
+
+ * rtl.c (rtx_alloc): Use memset instead of inline loop.
+
+ * recog.h (recog_op_alt): Declare extern.
+
+Tue Jan 12 00:23:31 1999 Richard Henderson <rth@cygnus.com>
+
+ * function.c (purge_addressof_1): If the note accesses a mem+addressof
+ in a wider mode than any replacement, adjust the cached replacement.
+ Cache trivial substitutions as well.
+
+Tue Jan 12 00:06:00 1999 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (OBJECTS): Add sbitmap.o.
+ (BASIC_BLOCK_H): Add sbitmap.h.
+ * basic-block.h: Move simple bitmap code to sbitmap.h.
+ * flow.c: Move simple bitmap code to sbitmap.c.
+ * sbitmap.h, sbitmap.c: New files.
+
+Mon Jan 11 23:51:50 1999 Richard Henderson <rth@cygnus.com>
+
+ * alpha.h (TARGET_SWITCHES): Document switches.
+ (TARGET_OPTIONS): Likewise.
+
+ * alpha/elf.h (ASM_FINISH_DECLARE_OBJECT): Use HOST_WIDE_INT_PRINT_DEC.
+
+Mon Jan 11 22:54:14 1999 Richard Henderson <rth@cygnus.com>
+
+ * tree.c (new_alias_set): Return zero if !flag_strict_aliasing.
+
+Mon Jan 11 22:36:01 1999 Richard Henderson <rth@cygnus.com>
+
+ * basic-block.h (basic_block_head): Rename to x_basic_block_head.
+ (basic_block_end): Rename to x_basic_block_end.
+ (BLOCK_HEAD, BLOCK_END): Update.
+
+ * caller-save.c: Change basic_block_head/end references to
+ BLOCK_HEAD/END.
+ * combine.c, flow.c, function.c, gcse.c, global.c: Likewise.
+ * graph.c, haifa-sched.c, local-alloc.c, regclass.c: Likewise.
+ * regmove.c, reload1.c, reorg.c, sched.c: Likewise.
+
+Sat Jan 9 23:54:09 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcc.c (xstrerror): Renamed from my_strerror. All callers
+ changed. Remove prototype since we get that from libiberty.h.
+
+ * protoize.c (xstrerror): Likewise.
+
+Sat Jan 9 23:22:04 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcc.c (read_specs): Ensure format specifiers match their arguments.
+
+Sat Jan 9 20:04:24 1999 Richard Henderson <rth@cygnus.com>
+
+ * tree.c (copy_node): Oops. That would be copy not zero
+ in that last change.
+
+Sun Jan 10 15:35:41 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c: Include system.h.
+ (c4x_caller_save_map): Disable caller save for RC.
+ (c4x_optimization_options): Disable scheduling before reload.
+ (valid_parallel_load_store) : Define return type as int.
+ Remove unused variable regs.
+ * config/c4x/c4x.h (REGISTER_MOVE_COST): Make independent of register
+ class.
+ * config/c4x/c4x.md (rotlqi3, rotrqi3): Fix up emitted RTL to
+ handle rotations.
+ (*db, decrement_and_branch_until_zero): Fix up constraints
+ to keep reload happy.
+
+Sat Jan 9 18:35:29 1999 Richard Henderson <rth@cygnus.com>
+
+ * tree.c (make_node): Call bzero instead of inline clear.
+ (copy_node, make_tree_vec, build1): Likewise.
+ (get_identifier): Call strlen instead of inline count.
+ (maybe_get_identifier): Likewise.
+
+Sun Jan 10 14:04:51 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (in_annul_slot_3): Allow unarycc and binarycc
+ operations in 3rd annulled delay slot.
+ (*lshrqi3_const_set): Disallow c constraint for operand0.
+ (modhi3+1, modhi3+2): Set attribute type to multi.
+ * config/c4x/c4x.c (c4x_S_constraint): Removed space in middle of
+ != operator.
+
+Sat Jan 9 11:44:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gansidecl.h: Allow attribute unused on labels only when we are
+ version 2.93 or higher. Not all versions of 2.92 have this feature.
+
+ * version.c: Bump minor number to 93.
+
+Fri Jan 8 10:51:13 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * config/m68k/m68k.h: Declare output_function_epilogue.
+ * recog.h: Declare next_insn_tests_no_inequality.
+
+Fri Jan 8 01:43:53 1999 Jeffrey A Law (law@cygnus.com)
+
+ * stmt.c (optimize_tail_recursion): New function, extracted from ...
+ (expand_return): Use optimize_tail_recursion.
+ * tree.h (optimize_tail_recursion): Declare.
+
+ * toplev.c (compile_file): Move call to output_func_start_profiler
+ to after the loop to emit deferred functions.
+
+Thu Jan 7 19:52:53 1999 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * system.h (abort): Supply more detailed information on how to
+ report an Internal Compiler Error.
+
+Thu Jan 7 09:25:58 1999 Bruce Korb (korb@datadesign.com)
+
+ * fixinc/fixincl.c (*): More decapitalization of variables
+ plus some explanatory comments.
+
+ * fixinc/Makefile.in fixinc/mkfixinc.sh:
+ When the fixincl program does not work for a certain system,
+ we substitute a shell script. Added user commentary when
+ this happens.
+
+Thu Jan 7 11:26:17 1999 Mark Mitchell <mark@markmitchell.com>
+
+ * calls.c (store_unaligned_arguments_into_pseudos): Use xmalloc to
+ allocate memory that will live beyond this function.
+ (expand_call): Free it here.
+
+Thu Jan 7 03:08:17 1999 Richard Henderson <rth@cygnus.com>
+
+ * sparc.h (PREFERRED_RELOAD_CLASS): Select GENERAL_REGS for
+ integer data not destined for fp regs.
+ (LEGITIMIZE_RELOAD_ADDRESS): New.
+
+Thu Jan 7 03:03:42 1999 Stan Cox <scox@cygnus.com>
+ Richard Henderson <rth@cygnus.com>
+
+ Support for HyperSPARC and SPARClite86x:
+ * sparc.h (TARGET_CPU_hypersparc, TARGET_CPU_sparclite86x): New.
+ (CPP_CPU32_DEFAULT_SPEC): Fix up for the new targets.
+ (ASM_CPU32_DEFAULT_SPEC): Likewise.
+ (TARGET_CPU_DEFAULT): Likewise.
+ (enum processor_type): Likewise.
+ (CPP_ENDIAN_SPEC): Handle little endian data.
+ (LIBGCC2_WORDS_BIG_ENDIAN): Likewise.
+ (ADJUST_COST): Call sparc_adjust_cost.
+ * sparc.c (sparc_override_options): Fix up for the new targets.
+ (supersparc_adjust_cost): Make static.
+ (hypersparc_adjust_cost): New.
+ (ultrasparc_adjust_cost): Make static.
+ (sparc_adjust_cost): New.
+ * sparc.md (attr cpu): Add hypersparc and sparclite86x.
+ (function_unit): Add hypersparc scheduling rules.
+
+ * configure.in (with_cpu handler): Recognize hypersparc.
+
+Thu Jan 7 23:54:05 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c: Added space after negation operator.
+ * config/c4x/c4x.h: Likewise.
+ * config/c4x/c4x.md: Likewise.
+
+Thu Jan 7 23:39:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_preferred_reload_class): Always return class.
+
+Thu Jan 7 00:29:25 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
+
+ * combine.c (num_sign_bit_copies): In NEG, MULT, DIV and MOD cases,
+ when a test can't be performed due to limited width of
+ HOST_BITS_PER_WIDE_INT, use the more conservative approximation.
+ Fix UDIV case for cases where the first operand has the highest bit
+ set.
+
+Thu Jan 7 00:01:38 1999 Lutz Vieweg <lkv@mania.robin.de>
+
+ * pa.h (reg_class): Add FPUPPER_REGS.
+ (REG_CLASS_NAMES): Similarly.
+ (REG_CLASS_CONTENTS): Similarly.
+ (REGNO_REG_CLASS): Handle FPUPPER_REGS.
+ (FP_REG_CLASS_P): Likewise.
+ (REG_CLASS_FROM_LETTER): Similarly.
+ (CLASS_MAX_NREGS): Similarly.
+
+1999-01-06 Brendan Kehoe <brendan@cygnus.com>
+
+ * fixincludes: For HP/UX 10.20, also look in curses_colr/curses.h
+ for a typedef of bool. Make sure to have a copy of the file is
+ in place before we look to fix it. Fix typo in variable name to
+ FILE.
+
+Wed Jan 6 07:51:05 1999 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (expand_builtin) [case BUILT_IN_CONSTANT_P]: Use
+ value_mode for the return mode.
+
+Wed Jan 6 17:55:19 1999 Robert Lipe <robertlipe@usa.net>
+
+ * configure.in: New flag --with-dwarf2. If set, enables DWARF-2
+ debugging as default.
+
+ * config/tm-dwarf2.h: New file.
+
+Wed Jan 6 16:08:54 1999 Jeffrey A Law (law@cygnus.com)
+
+ * h8300.h (ASM_OUTPUT_LABELREF): Define.
+
+ * pa.h (DONT_RECORD_EQUIVALENCE): Kill.
+ * local-alloc.c (update_equiv_regs): Corresponding changes.
+ * tm.texi (DONT_RECORD_EQUIVALENCE): Kill.
+
+ * calls.c (special_function_p): Push alloca test inside the large
+ conditional which excludes functions not at file scope or not
+ extern.
+
+ * calls.c (special_function_p): New function broken out of
+ expand_call.
+ (precompute_register_parameters): Likewise.
+ (store_one_arg): Likewise.
+ (store_unaligned_argumetns_into_pseudos): Likewise.
+ (save_fixed_argument_area): Likewise.
+ (restore_fixed_argument_area): Likewise.
+ (expand_call): Corresponding changes.
+
+Thu Jan 7 00:12:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (addqi3): If the destination operand is
+ a hard register other than an extended precision register,
+ emit addqi3_noclobber.
+ (*addqi3_noclobber_reload): New pattern added so that reload
+ will recognize a store of a pseudo, equivalent to the sum
+ of the frame pointer and a constant, as an add insn.
+
+1999-01-06 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * fixinc/fixincl.c: Re-indent according to the GNU standards.
+ fixinc/server.c: Likewise.
+ fixinc/server.h: Likewise.
+
+Wed Jan 6 10:43:29 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
+
+ * config/m68k/m68k.c (const_uint32_operand): Remove CONSTANT_P_RTX
+ handling.
+ (const_sint32_operand): Likewise.
+
+Wed Jan 6 09:44:51 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * toplev.h: In addition to checking _JBLEN, also check if `setjmp'
+ is a macro when deciding if we can use `jmp_buf' in prototypes.
+
+Wed Jan 6 03:18:53 1999 Mark Elbrecht <snowball3@usa.net>
+
+ * configure.in (pc-msdosdjgpp): Set x_make to x-go32.
+ * configure: Rebuilt.
+ * i386/xm-go32.h: Define LIBSTDCXX.
+ * i386/x-go32: New.
+ * i386/go32.h (MD_EXEC_PREFIX): Define.
+ (FILE_NAME_ABSOLUTE_P): Define.
+ (LINK_COMMAND_SPEC): Define.
+
+Wed Jan 6 02:23:36 1999 "Charles M. Hannum" <root@ihack.net>
+
+ * expr.c (store_expr): If the lhs is a memory location pointed
+ to be a postincremented (or postdecremented) pointer, always
+ force the rhs to be evaluated into a pseudo.
+
+Wed Jan 6 00:54:21 1999 Geoff Keating <geoffk@ozemail.com.au>
+
+ * real.c (mtherr): Print more reasonable warning messages.
+
+Tue Jan 5 21:57:42 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (gcc.o, prefix.o, cccp.o, cpplib.o): Depend on prefix.h.
+
+ * cccp.c: Include prefix.h, don't prototype prefix.c functions.
+ (new_include_prefix): Constify char* parameters.
+
+ * cppfiles.c (read_name_map): Likewise.
+ (append_include_chain): Likewise. Also, use a writable char* copy
+ of parameter `dir' which we then modify, rather than using the
+ parameter itself to store the new writable string.
+ (remap_filename): Constify some variables. Also, use a writable
+ char* to store an allocated string which we will be modifying.
+
+ * cpplib.c: Include prefix.h, don't prototype prefix.c functions.
+ (cpp_start_read): Constify variable `str'.
+
+ * cpplib.h (append_include_chain): Constify a char* parameter.
+
+ * gcc.c Include prefix.h, don't prototype prefix.c functions.
+ (add_prefix, save_string): Constify char* parameters.
+ (fatal, error): Add ATTRIBUTE_PRINTF_1 to prototypes.
+
+ * prefix.c: Include prefix.h.
+ (get_key_value, translate_name, save_string, update_path,
+ set_std_prefix): Constify various char* parameters and variables.
+ (save_string): Use xmalloc, not malloc.
+ (translate_name): Use a writable temporary variable to create and
+ modify a string before setting it to a const char*.
+
+ * prefix.h: New file to prototype functions exported from prefix.c.
+
+Tue Jan 5 08:52:18 1999 Bruce Korb (korb@datadesign.com)
+
+ * fixinc/fixincl.c (various): Added debug code so
+ Manfred can trace the processing.
+
+ * fixinc/inclhack.def (sys/utsname.h): Provide forward declaration of
+ struct utsname on Ultrix V4.[35].
+
+ * fixinc/{fixincl.x|fixincl.sh|inclhack.sh} : Regenerated.
+
+Mon Jan 4 15:37:30 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * cpplib.c (skip_if_group): Split out the logic that handles
+ directive recognition to its own function. Don't use
+ parse markers; use a bare pointer into the buffer. Use
+ copy/skip_rest_of_line instead of doing it by hand. Remove
+ `return on any directive' mode which was never used, and take
+ only one argument.
+ (consider_directive_while_skipping): New function, subroutine
+ of skip_if_group. Logic streamlined a bit.
+ (conditional_skip, do_elif, do_else): Call skip_if_group with
+ only one argument.
+
+Mon Jan 4 15:27:30 1999 Zack Weinberg <zack@rabi.phys.columbia.edu>
+
+ * cpplib.c (do_undef): EOF immediately after '#undef FOO' is not an
+ error.
+
+Mon Jan 4 11:55:51 1999 Jason Merrill <jason@yorick.cygnus.com>
+
+ * extend.texi (Bound member functions): Document.
+
+Mon Jan 4 11:01:48 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips-tdump.c (st_to_string, sc_to_string, glevel_to_string,
+ lang_to_string, type_to_string): Make return type const char*.
+ (print_symbol): Apply `const' keyword to a char*.
+ (print_file_desc): Cast structure member `crfd' to ulong when
+ comparing against one.
+
+ * mips-tfile.c (pfatal_with_name): Apply `const' keyword to char*.
+ (fatal, error): Add ATTRIBUTE_PRINTF_1 to prototypes.
+ (progname, input_name): Apply `const' keyword to a char*.
+ Don't redundantly include sys/stat.h.
+ (alloc_info): Apply `const' keyword to a char*.
+ (st_to_string, sc_to_string): Likewise.
+ (hash_string): Cast variable `hash_string' to a symint_t when
+ comparing against one.
+ (add_string): Cast PAGE_USIZE to Ptrdiff_t when comparing against one.
+ Likewise cast it to long when comparing against one.
+ (add_local_symbol): Apply `const' keyword to a char*.
+ (add_ext_symbol): Likewise.
+ (add_unknown_tag): Likewise.
+ (add_procedure): Cast a printf-style field width to an int.
+ (add_file): Cast PAGE_USIZE to long when comparing against one.
+ (parse_begin): Cast a printf-style field width to an int.
+ (parse_bend): Likewise.
+ (parse_def): Likewise.
+ (parse_end): Likewise.
+ (mark_stabs): Mark parameter `start' with ATTRIBUTE_UNUSED.
+ (parse_stabs_common): Fix format specifier.
+ (parse_input): Change type of variable `i' to Size_t.
+ (write_object): Fix arguments to match format specifiers.
+ Cast variable `num_write' to long when comparing against one.
+ (read_seek): Cast variable `sys_read' to symint_t when comparing
+ against one. Fix arguments to match format specifiers. Cast
+ variable `size' to long when comparing against one.
+ (copy_object): Cast result of `sizeof' to int when comparing
+ against one. Fix arguments to match format specifiers. Cast
+ variable `ifd' to long when comparing against a signed value.
+ Likewise, likewise.
+
+Mon Jan 4 10:30:33 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c (decl_attributes): Allow applying attribute `unused'
+ on a LABEL_DECL.
+
+ * c-parse.in (label): Parse attributes after a label, and call
+ `decl_attributes' to handle them.
+
+ * gansidecl.h (ATTRIBUTE_UNUSED_LABEL): Define.
+
+ * genrecog.c (OUTPUT_LABEL, write_tree_1, write_tree): When
+ generating labels, mark them with ATTRIBUTE_UNUSED_LABEL.
+
+ * invoke.texi: Note that labels can be marked `unused'.
+
+Sun Jan 3 23:32:18 1999 Jeff Law (law@cygnus.com)
+
+ * version.c: Bump for snapshot.
+
+Sun Jan 3 23:00:42 1999 Jeffrey A Law (law@cygnus.com)
+
+ * optabs.c (emit_cmp_and_jump_insns): Use CONSTANT_P canonicalizing
+ RTL for a compare/jump sequence.
+
+Sun Jan 3 22:58:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * optabs.c (emit_cmp_insn): Abort if asked to emit non-canonical RTL
+ for a target with HAVE_cc0 defined.
+ (emit_cmp_and_jump_insns): New function.
+ * expr.h (emit_cmp_and_jump_insns): Prototype it.
+ * loop.c (check_dbra_loop): Use it to replace calls
+ to emit_cmp_insn and emit_jump_insn and to canonicalize
+ the comparison if necessary.
+ * unroll.c (unroll_loop): Likewise.
+
+Sun Jan 3 21:01:04 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixincludes (sys/utsname.h): Provide forward declaration of
+ struct utsname on Ultrix V4.[35].
+
+ * mips.md (div_trap): Use local labels instead of dot-relative
+ branches.
+
+Sun Jan 3 20:40:34 1999 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (branch, negated branch): Handle (const_int 0) as first
+ source operand.
+ * pa.c (output_cbranch): Likewise.
+
+Sun Jan 3 03:20:38 1999 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (rs6000_stack_info): Undo spurious part of last
+ change.
+
+1999-01-01 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * extend.texi (__builtin_constant_p): Add missing @smallexample.
+
+Fri Jan 1 11:48:20 1999 Jeffrey A Law (law@cygnus.com)
+
+ * i386.md (doubleword shifts): Fix dumb mistakes in previous change.
diff --git a/gcc/ChangeLog.3 b/gcc/ChangeLog-2000
index 52df96025fb..536137bb657 100644
--- a/gcc/ChangeLog.3
+++ b/gcc/ChangeLog-2000
@@ -1,3 +1,15269 @@
+2000-12-31 Alexandre Oliva <aoliva@redhat.com>
+
+ * resource.c (mark_referenced_resources): Abort() before
+ attempting to mark a pseudo register.
+ (mark_set_resources): Likewise.
+
+2000-12-31 Philip Blundell <philb@gnu.org>
+
+ * config/arm/linux-gas.h (CLEAR_INSN_CACHE): Add missing asm
+ operands.
+
+2000-12-30 Richard Henderson <rth@redhat.com>
+
+ * dbxout.c (dbxout_block): Invert logic on eliding LBRAC/RBRAC.
+ Initialize variables properly for DBX_LBRAC_FIRST.
+
+2000-12-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case COMPONENT_REF): Fix typo in last change.
+
+2000-12-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (validate_arglist): New function, use it.
+
+2000-12-30 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.c (arm_expand_prologue): Fix typos in error
+ message and comment. Note location of testcase for an unhandled
+ situation.
+
+2000-12-30 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * defaults.h (BUILD_VA_LIST_TYPE): New definition.
+ * tree.c (build_common_tree_nodes_2): Ensure the va_list_type_node
+ is a copy, not an alias.
+
+2000-12-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * calls.c (calls_function_1, case CONSTRUCTOR): New case.
+
+ * alias.c (alias_sets_conflict_p): New function.
+ (mems_in_disjoint_alias_sets_p): Use it.
+ (readonly_fields_p): Moved from expr.c; check for record type.
+ (objects_must_conflict_p): New function.
+ * calls.c (expand_call): Use assign_temp as much as possible, use
+ readonly variant if assigned once, and don't set memory attributes.
+ (emit_library_call_value_1, store_one_arg): Likewise.
+ * integrate.c (expand_inline_function): Likewise.
+ * stmt.c (expand_asm_operands, expand_return): Likewise.
+ * expr.c (copy_blkmode_from_reg, store_constructor): Likewise.
+ (store_field, save_noncopied_parts, expand_expr): Likewise.
+ (expand_expr_unaligned): Likewise.
+ (readonly_fields_p): Moved to alias.c.
+ (safe_from_p): Rework handling of SAVE_EXPR.
+ MEMs ony conflict if alias sets conflict; likewise for INDIRECT_REF.
+ * function.c (struct temp_slot): Delete field ALIAS_SET; add TYPE.
+ (assign_stack_for_temp): Use objects_must_confict_p.
+ Set all memory attributes from type, if specified.
+ (mark_temp_slot): Mark TYPE field.
+ * tree.h (alias_sets_conflict_p, readonly_fields_p): New decls.
+ (objects_must_conflict_p): Likewise.
+
+ * stmt.c (expand_decl): Don't use assign_stack_temp in error case.
+ (add_case_node): No need to copy nodes anymore.
+
+2000-12-30 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (split_branches): Don't dereference re-computed
+ `beyond' before checking it's non-NULL.
+
+2000-12-29 Robert Lipe <robertl@sco.com>
+
+ Remove COFF support from i?86-pc-sco3.2v5.
+ * i386/sco5.h (PREFERRED_DEBUGGING_TYPE): Change to Dwarf II.
+ (TARGET_ELF): Now always true.
+ (SUBTARGET_SWTICHES: )Remove -mcoff.
+
+ * i386/t-sco5 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
+ MULTILIB_EXCEPTION): Nuke coff.
+ (CRTSTUFF_T_CFLAGS_S): Deleted.
+ (TARGET_LIBGCC2_CFLAGS): Added.
+
+2000-12-29 Alexandre Oliva <aoliva@redhat.com>
+
+ * varasm.c (output_constant_def): Don't ENCODE_SECTION_INFO
+ twice. Update desc->rtl and ->label, in case ENCODE_SECTION_INFO
+ modifies them.
+
+2000-12-29 Bernd Schmidt <bernds@redhat.com>
+
+ * ia64.c (ia64_expand_load_address): Accept additional scratch
+ register argument. All callers & prototype changed.
+ Use scratch register when generating load_symptr insns.
+ * ia64.md (movdi_symbolic): Clobber a scratch register. Use it
+ when calling ia64_expand_load_address.
+ (movdi): Generate movdi_symbolic with additional operand.
+ (load_gprel64): Use pic_offset_table_rtx instead of (reg:DI 1).
+ (load_symptr): Likewise. Use additional operand as a scratch
+ register instead of generating it here.
+
+ * basic-block.h: Add a comment.
+ * flow.c (PROP_POSTRELOAD): New macro.
+ (update_life_info): Add it to prop_flags.
+ (mark_set_1): If it is set, compute REG_N_SETS for the original
+ register number of a hard reg.
+
+ * emit-rtl.c (gen_raw_REG): New function.
+ (gen_rtx_REG, gen_reg_rtx, init_emit_once): Use it instead of
+ gen_rtx_raw_REG.
+ * print-rtl.c (print_rtx): Print ORIGINAL_REGNO.
+ * final.c (alter_subreg): Update it.
+ * regrename.c (do_replace): Likewise. Use gen_raw_REG.
+ * rtl.def (REG): Update comment.
+ * rtl.h (X0UINT, ORIGINAL_REGNO): New macros.
+ (gen_raw_REG): Declare.
+
+2000-12-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.c (get_set_constructor_bits): Use host_integerp and
+ tree_low_cst.
+
+ * local-alloc.c (update_equiv_regs): Don't use copy_rtx on PATTERN.
+
+ * toplev.c (main): Call xmalloc_set_program_name.
+ * gcc.c (main): Likewise.
+
+2000-12-29 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.c (arm_override_options): Fix typo in warning
+ message.
+
+2000-12-29 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_expand_block_move): Initialize
+ src_align and dst_align in bits. Do unaligned quadword loads
+ if possible for BWX too.
+ (alpha_expand_block_clear): Initialize align in bits. Track
+ small leading offsets into a larger alignment. Play games with
+ stq_u for large 4-byte aligned blocks. Use load/mask/store
+ for appropreately aligned heads and tails.
+
+2000-12-29 Alexandre Oliva <aoliva@redhat.com>
+
+ * function.c (assign_parms): Convert arguments passed by
+ reference to the right mode.
+
+2000-12-28 Geoffrey Keating <geoffk@redhat.com>
+
+ * c-parse.in (select_or_iter_stmt): Use truthvalue_conversion
+ on the condition of a FOR statement, so that it gets typechecked
+ and optimized.
+
+2000-12-29 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-decl.c (grokdeclarator): Prevent crash in case of overflow in
+ array size.
+
+ * calls.c (emit_library_call_value_1): Add to call_fusage the
+ stack slot assigned to argument passed by reference.
+
+2000-12-28 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * toplev.h (extern really_sorry): Remove extern declaration for
+ nonexistent function.
+
+2000-12-28 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * varasm.c (initializer_constant_valid_p): Indicate subtraction of
+ pointers to the same string constant is absolute.
+
+2000-12-28 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (enum format_type): Add strfmon_format_type.
+ (decl_attributes): Handle format attributes strfmon and
+ __strfmon__.
+ (FMT_FLAG_USE_DOLLAR, FMT_FLAG_ZERO_WIDTH_BAD,
+ FMT_FLAG_EMPTY_PREC_OK): Define.
+ (format_char_info): Update comment for flag_chars.
+ (format_flag_spec): Add skip_next_char.
+ (format_kind_info): Add left_precision_char.
+ (printf_flag_specs, scanf_flag_specs, strftime_flag_specs,
+ format_types): Update for these new structure members and flags.
+ (time_char_table): Make const.
+ (strfmon_length_specs, strfmon_flag_specs, strfmon_flag_pairs,
+ monetary_char_table): New.
+ (format_types): Add details of strfmon formats.
+ (init_function_format_info): Create default attribute for strfmon.
+ (check_format_info_main): Check the new flags. Handle
+ skip_next_char and left precision.
+ * toplev.c (documented_lang_options): Update description of
+ -Wformat.
+ * extend.texi: Document strfmon format attributes. Document
+ attribute forms such as __printf__. Clarify format_arg attribute
+ documentation.
+ * invoke.texi (-Wformat): Update for strfmon formats.
+
+2000-12-28 Andreas Jaeger <aj@suse.de>
+
+ * expmed.c (store_bit_field): Fix last patch.
+
+2000-12-28 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/crt1.asm (start_l): `__SH4_SINGLE_ONLY__' was missing
+ the trailing `__'.
+
+2000-12-28 Alan Lehotsky <lehotsky@tiac.net>
+
+ * expmed.c (store_bit_field): Correctly compute smallest mode that
+ is sufficient to contain all bits we are storing.
+
+2000-12-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (build_function_call_expr): New function. Use it
+ everywhere in lieu of manually constructing a CALL_EXPR.
+
+2000-12-27 Chandrakala Chavva <cchavva@redhat.com>
+
+ * calls.c (store_one_arg): If parm is passed both in stack and in
+ register and offset is greater than reg_parm_stack_space, split
+ the offset and call emit_push_insn().
+
+2000-12-27 Nick Clifton <nickc@redhat.com>
+
+ * ifcvt.c (noce_emit_store_flag): Handle jump insns that are
+ PARALLEL.
+
+2000-12-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * rtl.c (copy_most_rtx, shallow_copy_rtx): Copy frame_related
+ flag.
+
+2000-12-27 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/Makefile.in: fix for ancient Bourne shell
+ * fixinc/Makefile.BEOS: obsolete
+ * fixinc/Makefile.DOS: obsolete
+ * fixinc/fixincl.sh(LINKS): use `test -d' rather than `ls' for testing
+
+2000-12-27 Bernd Schmidt <bernds@redhat.com>
+
+ * sched-deps.c (get_condition, conditions_mutex_p): New functions.
+ (add_dependence): Use them to avoid adding unnecessary dependencies
+ between conditionally executed insns.
+ (sched_analyze_1, sched_analyze_2, sched_analyze_insn): Don't free
+ dependency lists if current insn is a COND_EXEC.
+
+2000-12-27 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.md (define_attr "length"): Correct
+ calculation.
+
+2000-12-26 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c: Fix a comment typo.
+ (get_shift_alg): Fix a typo in the assembly code for 12-bit
+ ASHIFTRT in HImode. Do not output extra whitespace after one line
+ of assembly code. Output a tab after an opcode instead of a
+ space.
+ (emit_a_shift): Output a tab after an opcode instead of a space.
+
+2000-12-23 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (out_movqi_r_mr, out_movhi_r_mr, out_movsi_r_mr,
+ out_movsi_mr_r, out_movqi_mr_r, out_movhi_mr_r): Use %o instead of
+ %4 in output templates, do not modify operands passed by the caller.
+
+2000-12-23 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * builtins.def (BUILT_IN_LABS, BUILT_IN_LLABS, BUILT_IN_IMAXABS):
+ Don't define.
+ * builtins.c (expand_builtin): Don't handle BUILT_IN_LABS,
+ BUILT_IN_LLABS and BUILT_IN_IMAXABS.
+ * c-common.c (c_common_nodes_and_builtins): Use BUILT_IN_ABS for
+ builtin labs, llabs and imaxabs.
+ (expand_tree_builtin): Don't handle BUILT_IN_LABS, BUILT_IN_LLABS
+ and BUILT_IN_IMAXABS.
+
+2000-12-23 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (builtin_function_2): New function.
+ (c_common_nodes_and_builtins): Use it to define each pair (foo,
+ __builtin_foo) of builtins in one place.
+
+2000-12-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gccbug.in: Add libgcj and preprocessor categories.
+
+2000-12-22 Bernd Schmidt <bernds@redhat.com>
+
+ * config/ia64/ia64.c (itanium_reorder): Only schedule stops in
+ the final scheduling pass.
+
+2000-12-22 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.h (struct machine_function): Add new field
+ 'lr_save_eliminated'.
+ * config/arm/arm.c (arm_compute_save_reg_mask): Do not include the
+ link register if its save has been eliminated.
+ (output_arm_prologue): Mention if the save of the link register
+ has been eliminated.
+ (output_arm_epilogue): Rename 'live_regs_mask' to
+ 'saved_regs_mask'.
+ Test 'saved_regs_mask' for the link register, not regs_ever_live.
+ (arm_expand_prologue): If the link register has not been saved set
+ lr_save_eliminated and emit a USE to prevent later passes from
+ scavenging it.
+
+ * dwarf2out_frame_debug_expr: Allow the (scratch) frame
+ pointer to be initialized from the stack pointer plus a
+ constant.
+
+2000-12-22 Bernd Schmidt <bernds@redhat.com>
+
+ * regrename.c (struct du_chain): New field "earlyclobber".
+ (enum scan_actions): Remove unused entry "note_reference".
+ (enum scan_actions_name): Likewise.
+ (note_sets, clear_dead_regs, merge_overlapping_regs): New static
+ functions.
+ (regrename_optimize): Use them to compute unavailable regs; get
+ rid of the more simpleminded code we used to have here.
+ Use a tick array to ensure registers are allocated in a more
+ round-robin way. Disable code that only optimizes registers
+ that were seen more than once.
+ (referenced_regs): Remove variable.
+ (scan_rtx_reg): New arg "earlyclobber". All callers changed.
+ Store its value in newly generated du_chain structures.
+ Add new du_chains at the end, not the start, of the list.
+ Don't handle the "note_reference" action.
+ (scan_rtx): New arg "earlyclobber". All callers changed.
+ (build_def_use): Lose code to keep track of referenced regs.
+
+2000-12-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (sched-deps.o, sched-rgn.o): Fix dependency typo.
+
+ * fp-bit.h (usi_to_float): Add prototype.
+
+ * i386.c (ix86_expand_builtin): Delete unused label.
+
+ * dwarf2out.c (file_info_cmp): Prototype.
+ (dwarf2out_line): Hide variable `old_in_use'.
+
+ * objc-act.c (objc_fatal): Delete.
+
+ * sched-vis.c (visualize_stall_cycles): Remove unused variable.
+
+ * system.h (getopt): Fix error in last change.
+
+ * varasm.c (assemble_trampoline_template): Constify.
+
+2000-12-22 Jason Merrill <jason@redhat.com>
+
+ * collect2.c (main): Use auto_demangling.
+
+2000-12-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * function.c (assign_parms): Update parm's DECL_INCOMING_RTL
+ when optimizing PARALLEL to REG.
+
+2000-12-22 Graham Stott <grahams@redhat.com>
+
+ * reload.c (update_auto_inc_notes): New, broken out from ...
+ (find_reloads_address_1): ... use here, also correct possible
+ use of uninitialized reloadnum.
+
+2000-12-21 David O'Brien <obrien@FreeBSD.org>
+
+ * config/freebsd.h (LIB_SPEC): remove -kthread option.
+
+2000-12-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * resource.c (mark_set_resources): Use MARK_SRC_DEST for
+ PRE_MODIFY and POST_MODIFY cases.
+
+ * rtlanal.c (side_effects_p): Handle PRE_MODIFY and POST_MODIFY.
+
+2000-12-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * md.texi (Looping Patterns): New node.
+
+2000-12-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi, cpp.texi: Update last-updated dates.
+
+2000-12-21 Chandrakala Chavva <cchavva@redhat.com>
+
+ * varasm.c (output_addressed_constants): Use language specific
+ expander on unknown nodes.
+
+2000-12-21 Graham Stott <grahams@redhat.com>
+
+ * combine.c (distribute_notes): Handle REG_NON_LOCAL_GOTO notes.
+
+2000-12-21 Bernd Schmidt <bernds@redhat.com>
+
+ * Makefile.in (out_object_file): Depend on sched-int.h.
+ * rtl.h (single_set_1): New macro.
+ (single_set_2): Renamed from single_set_1 and extra argument added.
+ * rtlanal.c (single_set_2): Likewise.
+
+ * config/ia64/ia64-protos.h (get_bundle_name, ia64_issue_rate,
+ ia64_adjust_cost, ia64_sched_init, ia64_sched_finish,
+ ia64_sched_reorder, ia64_sched_reorder2, ia64_variable_issue):
+ Declare.
+ * config/ia64/ia64.c: Include "sched-int.h".
+ (hard_regno_rename_ok): Also disallow renaming from the various
+ reg_save_* regs.
+ (ia64_safe_itanium_requiers_unit0, ia64_safe_itanium_class,
+ ia64_safe_type, init_insn_group_barriers, group_barrier_needed_p,
+ safe_group_barrier_needed_p, fixup_errata): New static functions.
+ (rtx_needs_barrier): Handle bundle selector and cycle display
+ insns.
+ (emit_insn_group_barriers): Accept additional FILE * arg. All
+ callers changed. Rework to only generate stop bits between
+ basic blocks that haven't been inserted by scheduling.
+ (struct bundle, struct ia64_packet): New structures.
+ (NR_BUNDLES, NR_PACKETS): New macros.
+ (bundle, packets, type_names): New static arrays.
+ (ia64_final_schedule): New variable.
+ (ia64_single_set, insn_matches_slot, ia64_emit_insn_before,
+ gen_nop_type, finish_last_head, rotate_one_bundle, rotate_two_bundles,
+ cycle_end_fill_slots, packet_matches_p, get_split, find_best_insn,
+ find_best_packet, itanium_reorder, dump_current_packet, schedule_stop):
+ New static functions.
+ (ia64_issue_rate, ia64_sched_init, ia64_sched_reorder,
+ ia64_sched_finish, ia64_sched_reorder2, ia64_variable_issue): New
+ functions.
+ (ia64_reorg): Perform a final scheduling pass.
+ * config/ia64/ia64.h (CONST_COSTS): Slightly increase SYMBOL_REF costs.
+ (MAX_CONDITIONAL_EXECUTE, ADJUST_COST, ISSUE_RATE, MD_SCHED_INIT,
+ MD_SCHED_REORDER, MD_SCHED_REORDER2, MD_SCHED_FINISH,
+ MD_SCHED_VARIABLE_ISSUE): Define macros.
+ (ia64_final_schedule): Declare variable.
+ * config/ia64/ia64.md (attr itanium_class): Add some more classes.
+ (attr type): Account for them.
+ (itanium_requires_unit0): New attribute.
+ (function units): Rewrite.
+ (some splitters): Don't create scheduling barriers here.
+ (gr_spill_internal, gr_restore_internal): Don't predicate the
+ pseudo-op.
+ (nop_m, nop_i, nop_f, nop_b, nop_x, cycle_display, cycle_display_1,
+ bundle_selector): New patterns.
+ (insn_group_barrier): Now has an operand.
+
+2000-12-21 DJ Delorie <dj@redhat.com>
+
+ * dwarf2out.c (simple_decl_align_in_bits): new
+ (field_byte_offset): Try both the type align and the
+ decl align, use whichever works, preferring the type align.
+
+2000-12-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gccbug.in: Fix typo.
+
+2000-12-20 Benjamin Kosnik <bkoz@redhat.com>
+
+ * Makefile.in (gcc_gxx_target_include_dir): Use instead of
+ build_tooldir and libstdcxx_incdir.
+
+2000-12-20 Robert Lipe <robertlipe@usa.net>
+
+ * haifa-sched.c (schedule_block): Provide empty source statement
+ if not MD_SCHED_REORDER2.
+
+2000-12-20 Richard Henderson <rth@redhat.com>
+
+ * rtl.h (REG_NON_LOCAL_GOTO): New.
+ * rtl.c (reg_note_name): Update.
+ * stmt.c (expand_goto): Emit a REG_NON_LOCAL_GOTO note.
+ * builtins.c (expand_builtin_longjmp): Likewise.
+ * flow.c (make_edges): Check for REG_NON_LOCAL_GOTO and do
+ not emit an edge.
+
+2000-12-20 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (out_movsi_r_mr, out_movsi_mr_r, out_movhi_mr_r):
+ Do not output undefined opcodes where source or destination register
+ overlaps with modified pointer register. Handle (X + d) addresses.
+ * config/avr/avr.md (*movhi, *movsi, *movsf): Correct insn length
+ in alternatives with memory operand.
+
+2000-12-20 Richard Henderson <rth@redhat.com>
+
+ * c-typeck.c (build_asm_stmt): New, broken out from ...
+ (c_expand_asm_operands): ... here. Just do rtl expansion.
+ (c_expand_return): Return the new stmt node.
+ (c_start_case, do_case): Likewise.
+ * c-common.c (c_expand_expr_stmt): Likewise.
+ * c-common.h: Update declarations.
+ * c-tree.h: Likewise.
+ * c-semantics.c (build_stmt): Use STMT_LINENO not TREE_COMPLEXITY.
+ * c-parse.in (fndef): Set DECL_SOURCE_LINE to the open brace.
+ (nested_function, notype_nested_function): Likewise.
+ (compstmt): Return the compound statement not the binding level.
+ (lineno_labeled_stmt): Simplify.
+ (lineno_stmt, lineno_label): Set STMT_LINENO.
+ (stmt, label): Return the new stmt node.
+
+2000-12-20 Bernd Schmidt <bernds@redhat.com>
+
+ * Makefile.in (OBJS): Add sched-ebb.o.
+ (sched-ebb.o): New rule.
+ (sched-vis.o): Depend on hard-reg-set.h and $(BASIC_BLOCK_H).
+ (haifa-sched.o): Depend on insn-flags.h.
+ * haifa-sched.c: Include "insn-flags.h".
+ (priority): Don't access BLOCK_NUM, use the new contributes_to_priority
+ callback.
+ * rtl.h (schedule_ebbs): Declare.
+ * sched-int.h (struct sched_info): Add new members
+ contributes_to_priority and compute_jump_reg_dependencies.
+ * sched-rgn.c (contributes_to_priority, compute_jump_reg_dependencies):
+ New functions.
+ (region_sched_info): Add them.
+ * sched-vis.c: Include "hard-reg-set.h" and "basic-block.h".
+ * sched-ebb.c: New file.
+ * sched-deps.c (sched_analyze_insn): Add code to handle JUMP_INSNs.
+
+ * flow.c (ior_reg_cond, and_reg_cond, elim_reg_cond): Properly
+ handle all relational operators.
+
+2000-12-20 Alexandre Oliva <aoliva@redhat.com>
+
+ * final.c (output_addr_const): Use ASM_OUTPUT_SYMBOL_REF.
+ * tm.texi: Document it.
+
+2000-12-19 Benjamin Kosnik <bkoz@redhat.com>
+
+ * Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Use build_tooldir
+ instead of gcc_tooldir.
+
+2000-12-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * system.h (getopt): Update prototype to match include/getopt.h.
+
+2000-12-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ From Jeff Law.
+ * pa.c (basereg_operand): Simplify.
+
+2000-12-19 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * haifa-sched.c (rm_line_notes): Arguments are now head and tail,
+ not block number. All callers and prototype changed.
+ (set_priorities): Likewise.
+ (save_line_notes): Add head and tail arguments; all callers and
+ prototype changed.
+ (restore_line_notes): Likewise. Don't crash on insns generated
+ during scheduling.
+ (schedule_block): Don't use BLOCK_HEAD/BLOCK_END macros.
+ Call MD_SCHED_INIT with additional argument.
+ When starting a new cycle, emit cycle_display insns if available.
+ Don't stop scheduling when encountering a JUMP_INSN, but add another
+ call to schedule_more_p in the inner loop.
+ Call MD_SCHED_REORDER2 after scheduling an insn.
+ Call MD_SCHED_FINISH once all insns are scheduled.
+ (sched_init): Compensate for the fact that get_block_head_tail
+ doesn't include leading notes.
+ * sched-deps.c (free_deps): Free vectors here.
+ * sched-rgn.c (compute_block_backward_dependencies): Not here.
+ (last_was_jump): New static variable.
+ (schedule_more_p): Test it.
+ (init_ready_list): Initialize it.
+ (can_schedule_ready_p): Set it if we have a JUMP_INSN.
+
+ * config/i386/i386.h (MD_SCHED_INIT): Add new arg.
+ * config/m32r/m32r.h (MD_SCHED_INIT): Add new arg.
+ * config/sparc/sparc.h (MD_SCHED_INIT): Add new arg.
+
+ * md.texi (cycle_display): Document.
+ * tm.texi (MD_SCHED_INIT): Document new arg.
+ (MD_SCHED_FINISH, MD_SCHED_REORDER2): Document.
+
+ * flow.c (ior_reg_cond, nand_reg_cond, not_reg_cond): Rewrite
+ to use different representation. All callers changed.
+ (and_reg_cond): Renamed from nand_reg_cond; caller changed.
+ (init_propagate_block_info): Don't test flags to determine
+ whether to compute conditional lifetimes.
+ Adjust code for new representation of conditional lifetimes.
+ (mark_regno_cond_dead): Similar adjustment.
+ (free_reg_cond_life_info): Similar adjustment.
+ (elim_reg_cond): New function.
+ (flush_reg_cond_1): Use it.
+
+2000-12-19 Catherine Moore <clm@redhat.com>
+
+ * reload1.c (reload_combine): Take multi-hard-regs into account
+ when processing CALL_INSN_FUNCTION_USAGE.
+
+2000-12-19 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi (-print-search-dirs): Make references to cpp refer
+ to cpp0 instead.
+
+2000-12-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c (tree_expr_nonnegative_p): Treat truth values as
+ non-negative.
+
+Tue Dec 19 00:37:08 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * reload.c (push_reload): When using a dying register for the reload
+ register in an in-out reload, use outmode if wider than inmode.
+
+2000-12-19 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * config/d30v/d30v.h (EXIT_BODY): Update comment.
+
+2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * config.gcc (*-*-linux*): Don't define HAVE_ATEXIT or BSTRING.
+ * tm.texi (EXIT_BODY): Update documentation.
+ * config/freebsd.h, config/netware.h, config/arm/coff.h,
+ config/arm/conix-elf.h, config/arm/unknown-elf.h,
+ config/d30v/d30v.h, config/mcore/mcore.h, config/pj/pj.h,
+ sparc/sp86x-aout.h: Remove definitions of HAVE_ATEXIT (some
+ commented out) and associated comments.
+
+2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (STD_C9L, ADJ_STD): Define.
+ (printf_length_specs, scanf_length_specs): Mark "ll" as standard
+ STD_C9L.
+ (T99_LL): Rename to T9L_LL.
+ (T99_ULL): Rename to T9L_ULL.
+ (print_char_table, scan_char_table): Use T9L_LL and T9L_ULL
+ instead of T99_LL and T99_ULL.
+ (check_format_info_main): Use ADJ_STD on all format standard
+ versions being compared.
+ * c-common.h: Declare warn_long_long.
+ * c-tree.h: Don't declare warn_long_long.
+
+2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * COPYING: Update to current
+ ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references
+ to 19yy as example year in copyright notice).
+
+2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (cb_file_change): Treat in_system_header as strictly
+ boolean (0 or 1).
+
+2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmain.c: Update print.lineno with -P.
+
+2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c: s/change_file/file_change.
+ * cpplib.h: Similarly.
+ * cppmain.c: Similarly.
+ * fix-header.c: Similarly.
+ * cppfiles.c (stack_include_file): Pass the buffer location and
+ size to cpp_push_buffer. Generate the file_change callback,
+ so that sysp is already set.
+ * cpphash.h: Add _cpp_do_file_change.
+ * cpplib.c (do_line): Set buffer->sysp directly. Generate the
+ file_change callback after setting sysp.
+ (_cpp_do_file_change): Handle FC_ENTER and the FC_RENAME exception
+ here.
+ (cpp_push_buffer): Don't generate a callback. Clear sysp.
+ (cpp_pop_buffer): Clean up logic.
+
+2000-12-18 Benjamin Kosnik <bkoz@redhat.com>
+
+ * configure.in (gcc_gxx_include_dir): Simplify.
+ (libstdcxx_incdir): Export.
+ * configure: Regenerate.
+ * Makefile.in (PREPROCESSOR_DEFINES): Add in
+ GPLUSPLUS_TOOL_INCLUDE_DIR bits here..
+ (libstdcxx_incdir): Add.
+ * cppdefault.c (GPLUSPLUS_TOOL_INCLUDE_DIR): Add search path.
+
+2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (lex_lineno): Remove.
+ (init_c_lex, c_lex): Remove lex_lineno.
+ (cb_change_file): Update lineno correctly, both before calling
+ push_srcloc and before leaving the function.
+ (cb_def_pragma): Set lineno before outputting diagnostics.
+
+Sun Dec 17 18:45:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * print-tree.c (print_node): Print DECL_USER_ALIGN and TYPE_USER_ALIGN.
+ Print TYPE_MIN_VALUE and TYPE_MAX_VALUE for REAL_TYPE.
+ Use print_node_brief to print bounds.
+
+2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.h (struct cpp_reader): Remove references to string_pool
+ and temp_string_pool.
+ * cppinit.c (cpp_create_reader, cpp_cleanup): Similarly; using
+ ident_pool in place.
+ * cpplex.c (parse_number, unescaped_terminator_p, parse_string,
+ save_comment, cpp_token_as_text): Similarly.
+ * cpplib.c (do_define, glue_header_name, parse_assertion): Similarly.
+ * cppmacro.c (make_number_token, builtin_macro, lock_pools,
+ unlock_pools, stringify_arg, paste_tokens): Similarly.
+
+Sun Dec 17 12:41:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * dwarf2out.c (loc_descriptor_from_tree, case NOP_EXPR): New case.
+ (loc_descriptor_from_tree, case CONVERT_EXPR): Likewise.
+ (loc_descriptor_from_tree, case NON_LVALUE_EXPR): Likewise.
+
+2000-12-17 Richard Earnshaw <rearnsha@arm.com>
+
+ * Makefile.in (check-po): Use $(MAKE).
+ (risky-stage1, risky-stage2, risky-stage3, risky-stage4): Likewise.
+
+2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmain.c (check_multiline_token): New function.
+ (scan_buffer): Use it.
+ (cb_change_file): Restructure to avoid warning.
+ * cpperror.c (print_location): Initialize col.
+
+2000-12-14 Philipp Thomas <pthomas@suse.de>
+
+ * protoize.c (main): Correctly set locale categories.
+ * gcc.c (main): Likewise.
+ * cppmain.c (general_init): Likewise.
+ * toplev.c (main): Likewise.
+ * gcov.c (main): Likewise.
+ * collect2.c (main): Likewise.
+
+2000-12-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c (c_common_nodes_and_builtins): Create a
+ cstring_endlink, use it. Rename int_ftype_string_string to
+ int_ftype_cstring_cstring, string_ftype_string_int to
+ string_ftype_cstring_int, and string_ftype_string_string to
+ string_ftype_cstring_cstring. Prefer sizetype_endlink and
+ int_endlink to manually recreating them. Fix the prototype
+ set for __builtin_strspn/__builtin_strcspn.
+
+2000-12-12 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (out_set_stack_ptr): Update comment.
+ (print_operand): Add support for %~ and %o.
+
+2000-12-17 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x.h: Add ASM_OUTPUT_DEF definition for bounded pointer code.
+
+2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c: Move main_input_filename handling to FC_ENTER. Clean up.
+ * cpperror.c (print_containing_files): Get right line number.
+ (print_location): Output column of 1 if 0.
+ * cppfiles.c (stack_include_file): cpp_push_buffer handles
+ the callback.
+ * cpphash.h (_cpp_do_file_change): No longer external.
+ * cpplib.c (do_file_change): Now local to cpplib.c.
+ (do_line): Fake a buffer stack for preprocessed files.
+ (cpp_push_buffer): Create a file_change callback. Handle faked
+ buffers.
+ (cpp_pop_buffer): Similarly.
+ * cpplib.h: BUF_FAKE: New buffer type.
+ * cppmain.c: Update to handle correct file renaming where a
+ #line is the first line of the main file, and produce only
+ the renamed file, not the original file, as output.
+
+2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md: Remove redundant @s from output patterns.
+
+2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+ Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Call c4x_init_pragma.
+
+ * config/c4x/c4x-protos.h (c4x_init_pragma): New prototype.
+
+ * config/c4x/c4x.c (c4x_init_pragma): New function.
+ (c_lex_func): New variable.
+ (c4x_parse_pragma): Use c_lex_func.
+
+2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+ Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * config/c4x/c4x.h (MD_INIT_BUILTINS): Add void_list_node argument
+ to c4x_init_builtins.
+
+ * config/c4x/c4x-protos.h (c4x_init_builtins): Add tree argument.
+
+ * config/c4x/c4x.c (c4x_init_builtins): Add tree argument.
+ (c4x_output_ascii): Fix.
+
+2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+ Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * config/c4x/c4x.h (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Define.
+
+ * config/c4x/c4x-protos.h (c4x_init_builtins): New prototype.
+ (c4x_expand_builtin): Likewise.
+
+ * config/c4x/c4x.c (c4x_init_builtins): New function.
+ (c4x_expand_builtin): Likewise.
+
+ * config/c4x/c4x.md (floatunsqihf2): New pattern.
+ (*floatqihf2_set, *fixhfqi_set, fix_trunchfqi2): Likewise.
+ (fixuns_trunchfqi2, toieee, frieee, *ldhf_conditional): Likewise.
+ (*ldhf_conditional_noov, movhfcc, trap, cond_trap_cc): Likewise.
+ (*toieee_movqf_clobber, *frieee_movqf_clobber): Likewise.
+
+2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * libgcc2.h: Use Wtype for SItype and DWtype for DItype in prototypes.
+ * libgcc2.c (__absvsi2): Use Wtype and DWtype.
+ (__absvdi2, __addvsi3, __addvdi3, __subvsi3): Likewise.
+ (__subvdi3, __mulvsi3, __mulvdi3, __negvsi2, __negvdi2): Likewise.
+
+2000-12-16 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (INITIALIZE_TRAMPOLINE): Enclose the block
+ statement in do/while(0).
+
+Sat Dec 16 19:56:24 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (ashrsi3_cmpno, ashrhi3_cmpno, ashrqi3_cmpno, lshrsi3_cmpno,
+ lshrhi3_cmpno): Remove redundant '@' from the template.
+
+ * i386.md (cmpstrsi_1): Fix type of the compare.
+
+ * genattrtab.c (attr_rtx_cost): New function.
+ (simplify_test_exp): Avoid overactive inlining; use temporary
+ obstacks for tests.
+
+Sat Dec 16 10:41:11 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * diagnostic.c (finish_abort): Deleted.
+ (fatal): Add code from finish_abort.
+ (error_recursion, fancy_abort): Call fatal, not finish_abort.
+ (trim_filename): Remove leading "../".
+ * diagnostic.h (finish_abort): Deleted.
+ * toplev.c (crash_signal): Call fatal, not finish_abort.
+
+ * stor-layout.c (place_field): Treat overflowing DECL_SIZE_UNIT
+ as if size were variable.
+
+ * expmed.c (expand_mult): Write REG_EQUAL note with proper mode.
+
+2000-12-16 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * tradcpp.c: T_WARNING: New.
+ (do_warning): New function.
+ (finclude): Skip past the newline and increase the line number
+ before calling output_line_command.
+ (do_line): Skip the new line after output_line_command. Don't
+ pre-decrement the line number.
+
+2000-12-15 Diego Novillo <dnovillo@redhat.com>
+
+ * i386/unix.h (ASM_OUTPUT_MI_THUNK): Fix references to
+ _GLOBAL_OFFSET_TABLE_ when using Intel syntax.
+
+2000-12-15 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (cpp_options): Pass -fno-operator-names.
+ * cpplib.h (struct cpp_options): Add operator_names.
+ * cppinit.c (cpp_create_reader): Initialize it.
+ (initialize_builtins): If -fno-operator-names, don't add
+ C++ alternate operator names.
+ (COMMAND_LINE_OPTIONS): Add -fno-operator-names.
+ (cpp_handle_option): Clear operator_names.
+
+2000-12-15 Jason Merrill <jason@redhat.com>
+
+ * jump.c (jump_optimize_1): Don't delete the line note after the
+ prologue even if it seems redundant.
+
+ * config/arm/arm.c (arm_expand_prologue): Set RTX_FRAME_RELATED_P
+ on all insns used to adjust the stack.
+
+Fri Dec 15 15:32:16 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (cant_combine_insn_p): Get around SUBREGs when determining
+ hardreg<->reg moves.
+
+Fri Dec 15 14:48:37 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * genrecog.c (add_to_sequence): Remove special case for
+ const_int_operand.
+ (maybe_both_true): Return 1 when falling out of sequence when
+ trying to find common position in the pattern.
+
+Fri Dec 15 14:44:51 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * integrate.c (copy_rtx_and_substitute): Copy mode too.
+
+Fri Dec 15 14:11:57 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (notice_stack_pointer_modification_1): Cleanup.
+
+2000-12-15 Alexandre Oliva <aoliva@redhat.com>
+
+ * function.c (adjust_trampoline_addr): New function.
+ (trampoline_address): Call it instead of round_trampoline_addr().
+ * tm.texi (TRAMPOLINE_ADJUST_ADDRESS): Document it.
+
+2000-12-14 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * cppfiles.c (hack_vms_include_specification): Delete function
+ (not used since 1998).
+
+Fri Dec 15 03:37:51 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * haifa-sched.c (sched_init): Don't put a note in front of any BARRIER.
+
+2000-12-14 Jim Wilson <wilson@redhat.com>
+
+ * alias.c (get_alias_set): Call record_component_aliases for
+ COMPLEX_TYPE.
+ (record_component_aliases): Handle COMPLEX_TYPE.
+
+2000-12-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fixinc/gnu-regex.c: Disable NLS.
+
+2000-12-14 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_emit_conditional_move): Do not swap
+ comparison operands when that would create non-canonical rtl.
+
+ * config/i386/i386.md (umulsi3_highpart): Remove * from name.
+ (smulsi3_highpart): Likewise.
+
+2000-12-14 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gcc.c (cpp_options): Add -remap.
+
+2000-12-14 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gcc.c (cpp_options): Update to use '&'.
+ (struct switchstr): Change type of validated to save space.
+ New member 'ordering'.
+ (handle_braces, validate_switches): Update to handle '&'.
+
+2000-12-13 Laurynas Biveinis <lauras@softhome.net>
+
+ * fixinc/inclhack.def: skip stdio_va_list fix if __DJ_va_list
+ found in a header.
+ * fixinc/fixincl.x: regenerated.
+
+2000-12-13 DJ Delorie <dj@redhat.com>
+
+ * config.gcc (cygwin, win32, mingw32): Use float-i386.h.
+
+2000-12-13 Tom Tromey <tromey@redhat.com>
+
+ * gcc.c (handle_braces): Handle %{<S*} spec correctly.
+
+2000-12-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * function.c (assign_parms): Optimize incoming PARALLELs into
+ REGs if possible.
+
+2000-12-13 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/Makefile.in(*): substantial rewrite to accommodate systems
+ that cannot handle bi-directional pipes, viz. BeOS and DOS.
+ * fixinc/fixlib.h(IGNORE_ARG): new macro
+ (STATIC): define for all of fixinc to use
+ * fixinc/fixfixes.c(*): eliminate unused arg warnings
+ * fixinc/fixtests.c(*): ditto
+ * fixinc/fixincl.c(start_fixer): chain_open now uses const arg list
+ * fixinc/gnu-regex.c: reorder some includes to avoid _GNU_SOURCE
+ warning. Also, eliminate the ``#ifdef emacs'' stuff.
+ (re_syntax_options): make global as it is declared so.
+ * fixinc/mkfixinc.sh: process the argument list more consistently
+ (beos/msdosdjgpp): set TARGETS to twoprocess vs. oneprocess
+ * fixinc/procopen.c(globals): include "fixlib.h" for std defs
+ * fixinc/server.c(globals): ditto
+ * fixinc/server.h(defines): ditto
+
+2000-12-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * tradcpp.c (special_symbol): Improve test for definedness,
+ though it is still not perfect.
+ (do_define): Don't define illegal macro names.
+
+2000-12-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/mips/elf.h (ASM_OUTPUT_SECTION_NAME): emit @nobits
+ if changing into .bss section.
+ * config/mips/elf64.h: same.
+ * config/mips/iris6.h: same.
+ * config/mips/netbsd.h: same.
+ * config/mips/openbsd.h: same.
+
+2000-12-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (read_name_map): Return null if open () fails.
+ (remap_filename): Simplify logic. Add ICE if it doesn't work
+ as expected. Perform secondary lookup attempt on base filename
+ only.
+
+Wed Dec 13 19:48:04 MET 2000 Jan hubicka <jh@suse.cz>
+
+ * flow.c (notice_stack_pointer_modification_1): Notice midifications
+ using PRE_MODIFY and POST_MODIFY.
+
+Wed Dec 13 17:25:32 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * genoutput.c (process_template): Add sanity checking for '@' templates.
+
+2000-12-13 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * simplify-rtx.c (cselib_finish): Free reg_values and used_regs
+ varrays.
+
+2000-12-12 Mike Stump <mrs@wrs.com>
+
+ * Makefile.in (distclean): Remove safe-ctype.c as well.
+
+2000-12-12 Brad Lucier <lucier@math.purdue.edu>
+
+ * tradcpp.c (do_error): Cast difference of pointers to int
+ for error message.
+
+2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * config/rs6000/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Move from here...
+ * config/rs6000/sysv4.h (HANDLE_PRAGMA_PACK_PUSH_POP): ...to here.
+
+2000-12-12 Jim Wilson <wilson@redhat.com>
+
+ * rtlanal.c (may_trap_p): Check operand modes of LE, LT, GE, and GT.
+
+2000-12-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in: Simplify language enabling/disabling code.
+ * configure: Rebuilt.
+ * ch/config-lang.in (target_libs): Set.
+ (build_by_default): Set to no.
+ * cp/config-lang.in (target_libs): Set.
+ * f/config-lang.in (target_libs): Set.
+ * java/config-lang.in (target_libs): Set.
+ * objc/config-lang.in (target_libs): Set.
+
+2000-12-12 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * tradcpp.c (enum node_type): Add T_ERROR.
+ (do_error): New function.
+ (directive_table): Add #error handler.
+
+2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Enable .file/.loc check
+ for powerpc*-*-*.
+ * configure: Regenerated.
+ * config/rs6000/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
+ * config/rs6000/rs6000.c (rs6000_unique_section): Use
+ STRIP_NAME_ENCODING.
+
+Mon Dec 11 13:51:09 2000 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (cmpib_comparison_operator): Remove GEU and LTU.
+ * pa.h (PREDICATE_CODES, cmpib_comparison_operator): Corresponding
+ changes.
+
+2000-12-11 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixincl.tpl: initialize all fields for warnings
+ * fixinc/fixincl.x: regenerate
+
+2000-12-11 Neil Booth <neilb@earthling.net>
+
+ * tradcpp.h: For tradcpp, NUL is not whitespace.
+
+2000-12-11 Neil Booth <neilb@earthling.net>
+
+ * fix-header.c (read_scan_file): Macro expansion is not a file buffer.
+
+2000-12-05 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (compare_condition, compare_sign_p): New functions.
+ (compare_diff_p, compare_eq_p): Call compare_condition.
+ (out_tsthi, out_tstsi): Call compare_sign_p.
+ (avr_progmem_p): Check for error_mark_node.
+
+2000-12-11 Neil Booth <neilb@earthling.net>
+
+ * cpperror.c (print_location): New function.
+ (print_containing_files): Simplify.
+ (_cpp_begin_message): Simplify and use print_location.
+ * cppfiles.c (stack_include_file): Update.
+ (_cpp_pop_file_buffer): Update.
+ * cpphash.h (struct cpp_buffer): New members
+ include_stack_listed and type.
+ * cpplib.c (_cpp_handle_directive): Buffer->inc is not null.
+ (run_directive): Take buffer type. cpp_push_buffer cannot fail.
+ (_cpp_do__Pragma, cpp_define, _cpp_define_builtin, cpp_undef,
+ handle_assertion): Update.
+ (cpp_push_buffer): Take a buffer type and file name.
+ (cpp_pop_buffer): Update. Clear include_stack_listed.
+ * cpplib.h (input_stack_listing_current): Remove.
+ (enum cpp_buffer_type): New.
+ (cpp_push_buffer): New prototype.
+ * cppmacro.c (builtin_macro): Simplify; buffer cannot be null.
+ * fix-header.c (read_scan_file): Update.
+
+2000-12-10 Robert Lipe <robertlipe@usa.net>
+
+ * install.texi (i*86-*-sco3.2v5*): Remove information duplicated
+ in html version.
+
+2000-12-10 Richard Henderson <rth@redhat.com>
+
+ * genrecog.c (find_operand): Handle 'V' format code.
+ (find_matching_operand): New.
+ (validate_pattern): Accept '=' for an in-out operand if there
+ is another operand with a matching constraint.
+
+ * config/i386/i386.md (andqi_ext_0_cc): Use matching constraint
+ for op1 to op0.
+
+2000-12-10 Richard Henderson <rth@redhat.com>
+
+ * genrecog.c (validate_pattern) [STRICT_LOW_PART]: Fix thinko.
+
+2000-12-09 Richard Henderson <rth@redhat.com>
+
+ * genrecog.c (validate_pattern): Verify that ZERO_EXTRACT and
+ STRICT_LOW_PART as SET_DEST have in-out constraints.
+
+2000-12-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_function_format): Don't suggest adding format
+ attributes to functions with no parameter to which to add them.
+
+2000-12-09 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (arm_expand_prologue): Mark the generated
+ insn not the set as being DWARF2_FRAME_RELATED_P.
+
+2000-12-09 Laurynas Biveinis <lauras@softhome.net>
+
+ * Makefile.in: use $(build_exeext) for all build
+ system executable targets.
+
+2000-12-09 Laurynas Biveinis <lauras@softhome.net>
+
+ * install.texi: remove i[345]86-*-winnt3.5 section.
+ * configur.bat: removed.
+ * config/msdos: directory removed.
+
+2000-12-09 Neil Booth <neilb@earthling.net>
+
+ * cppfiles.c (NEVER_REREAD, DO_NOT_REREAD): Move from cpphash.h.
+ * cpphash.h (NEVER_REREAD, DO_NOT_REREAD, ABSOLUTE_PATH): Delete.
+ * cpplex.c (parse_identifier): Improve diagnostic.
+ (_cpp_lex_token): Return unconditionally at the end of a directive.
+ * cpplib.c (read_flag): Verify legality of each flag.
+ (end_directive): Resotre pfile->skipping before skip_rest_of_line.
+ (do_line): Use the new read_flag.
+ * cppmacro.c (struct cpp_macro, parse_arg, replace_args,
+ check_macro_redefinition, parse_params): Rename var_args to
+ variadic.
+
+2000-12-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * .cvsignore: Add info files.
+
+2000-12-08 Laurynas Biveinis <lauras@softhome.net>
+
+ * config/winnt: Remove obsolete directory.
+ * install.texi (Configurations): Remove obsolete documentation for
+ Windows NT.
+
+2000-12-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * configure.in: Don't define INSTALL_INFO.
+ * configure: Regenerate.
+ * Makefile.in (INSTALL_INFO): Remove.
+ (info): Depend on info files in source directory.
+ (cpp.info, gcc.info, c-tree.info): Build info files in source
+ directory.
+ (distclean): Don't remove info files.
+ (maintainer-clean): Remove info files from source directory.
+ (install-normal): Depend on install-info.
+ (install-info): Install info files from source directory, if they
+ exist.
+ * texinfo.tex: Update to version 2000-11-09.08 from ftp.gnu.org.
+
+2000-12-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * lcm.c (optimize_mode_switching): Check whether an insn is a NOTE
+ before taking its NOTE_LINE_NUMBER.
+
+2000-12-08 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.md (load_indirect_jump): Add pool ranges.
+
+ * extend.texi: Document ARM "interrupt" function attribute.
+ Mention that the ARM also support the "naked" function
+ attribute.
+
+ * config/arm/arm-protos.h (arm_current_func_type): Add
+ prototype.
+
+ * config/arm/arm.h (EXCEPTION_LR_REGNUM): Define.
+ (struct machine_function): Add 'func_type' field.
+ Define bit values for 'func_type' field.
+ (ARM_FUNC_TYPE): New macro.
+ (IS_INTERRUPT): New macro.
+ (IS_VOLATILE): New macro.
+ (IS_NAKED): New macro.
+ (IS_NESTED): New macro.
+ (ARM_INITIAL_ELIMINATION_OFFSET): Use IS_VOLATILE.
+
+ * config/arm/arm.c (isr_attribute_args): New Structure. A
+ list of "interrupt" function attribute modifiers.
+ (arm_isr_value): New Function: Returns the type of the current
+ interrupt function.
+ (arm_compute_func_type): New Function: Computes the type of
+ the current function.
+ (arm_current_func_type): New Function: Returns the type of the
+ current function.
+ (use_return_insn): Use arm_current_func_type.
+ (arm_valid_type_attribute_p): Accept "interrupt" function
+ attribute.
+ (arm_comp_type_attributes): Check "interrupt" attributes.
+ (arm_valid_machine_decl): Accept "interrupt" function
+ attribute.
+ (arm_function_ok_for_sibcall): Do not allow interrupt
+ functions to use sibcalls.
+ (arm_naked_function_p): Delete.
+ (print_multi_reg): Remove redundant parameter 'hat'.
+ (arm_compute_save_reg_mask): New Function: Compute a bit mask
+ of registers saved during the current function's prologue.
+ (output_arm_return_instruction): Use arm_current_func_type.
+ Generate return instruction when LR is not poppsed off the
+ stack.
+ (arm_volatile_func): Delete.
+ (output_arm_prologue): Use arm_current_func_type and
+ arm_compute_save_reg_mask.
+ Note presernce of interrupt functions.
+ (arm_output_epilogue): Use arm_current_func_type and
+ arm_compute_save_reg_mask.
+ (arm_expand_prologue): Use arm_current_func_type and
+ arm_compute_save_reg_mask.
+ (arm_init_machine_status): Initialize func_type field, if
+ necessary.
+ (thumb_expand_prologue): Use arm_current_func_type.
+ (output_thumb_prologue): Use arm_current_func_type.
+
+2000-12-08 Brad Lucier <lucier@math.purdue.edu>
+
+ * tradcpp.c (do_include): Make pointer differences 64-bit clean.
+
+Fri Dec 8 08:23:29 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * fp-bit.c (_fpmul_parts): Use USItype variables as inputs
+ for multiplies.
+
+2000-12-07 Mike Stump <mrs@wrs.com>
+
+ * Makefile.in (distclean): Remove alloca.c hashtab.c.
+
+2000-12-07 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * Makefile.in (HOST_RTL): Add safe-ctype.o.
+ (safe-ctype.o): New rule.
+ * system.h: Include safe-ctype.h, not ctype.h. No need to
+ wrap ctype macros.
+
+ * cpphash.h: Zap IStable and related macros. Define is_* in
+ terms of safe-ctype.h macros.
+ * cppinit.c: Delete the IStable and all related code.
+
+ * tradcpp.c: Delete is_idchar, is_idstart, is_hor_space, and
+ is_space arrays. Delete initialize_char_syntax. Change all
+ references to the above arrays to use macros instead.
+ * tradcpp.h: Define is_idchar, is_idstart, is_space, and
+ is_nvspace in terms of safe_ctype.h's macros.
+ * tradcif.y: is_idchar, is_idstart are macros not arrays.
+
+ * config/i370/i370.c, config/winnt/dirent.c,
+ config/winnt/fixinc-nt.c, config/winnt/ld.c:
+ Use uppercase ctype macros. If we included ctype.h,
+ include safe-ctype.h instead.
+
+ * fixinc/fixfixes.c: Use uppercase ctype macros. Don't test
+ ISLOWER(c) before calling TOUPPER(c).
+ * fixinc/fixincl.c (extract_quoted_files): Simplify out some gunk.
+ * fixinc/gnu-regex.c: Include safe-ctype.h, not ctype.h. No need to
+ wrap ctype macros. Don't test ISUPPER(x) before calling TOLOWER(x).
+
+2000-12-07 DJ Delorie <dj@redhat.com>
+
+ * c-decl.c (grokdeclarator): preserve previous alignments when
+ rebuilding array types.
+
+2000-12-07 Neil Booth <neilb@earthling.net>
+
+ * cppfiles.c (struct include_file): Move from cpphash.h.
+ (_cpp_never_reread): New function.
+ (open_file, read_include_file): Use it.
+ (stack_include_file): Set the buffer's sysp according to the
+ path in which the file was found.
+ (find_include_file): Don't set sysp.
+ (cpp_make_system_header, actual_directory): Update.
+ (_cpp_execute_include): Do #include_next lookup handling here,
+ not in cpplib.c. Use _cpp_never_reread.
+ * cpphash.h (struct_include_file): Remove.
+ (struct cpp_buffer): New member sysp.
+ (CPP_IN_SYSTEM_HEADER, _cpp_execute_include): Update.
+ (_cpp_never_reread): New.
+ * cpplib.c (read_line_number): Rename read_flag. Rework slightly.
+ (end_directive): Clear line_extension flag.
+ (_cpp_handle_directive): Set line_extension flag for #number.
+ (do_include_next): Handle path lookup in _cpp_execute_include.
+ (do_line): Cleanup to use read_flag. Don't allow flags in #line.
+ (_cpp_do_file_change): Update.
+ (do_pragma_once): Use cpp_never_reread. Clean up.
+ * cpplib.h (struct lexer_state): New member line_extension.
+
+2000-12-07 Richard Henderson <rth@redhat.com>
+
+ * flow.c (calculate_global_regs_live): Force the stack pointer live
+ after reload as well.
+
+2000-12-07 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/Makefile.*(exeext): the variables are exeext, the
+ substitution expression is build_exeext.
+
+2000-12-07 Neil Booth <neilb@earthling.net>
+
+ * c-common.c (parse_in): Make a cpp_reader *.
+ * cppfiles.c (_cpp_fake_include): Remove.
+ * cpphash.h: Similarly.
+ * cpplib.c (do_line): Don't call _cpp_fake_include. A valid
+ #line always creates a callback; FC_RENAME if there are no
+ #line flags.
+ * fix-header.c (read_scan_file): cpp_push_buffer cannot fail.
+ The first EOF must be our get_char buffer.
+
+2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (warn_format_security): New variable.
+ (check_format_info): Warn about non-literal formats with no format
+ arguments if either -Wformat-nonliteral or -Wformat-security is
+ specified.
+ (set_Wformat): Set warn_format_security for settings other than 1.
+ * c-common.h (warn_format_security): Declare.
+ * c-decl.c (c_decode_option): Decode -Wformat-security and
+ -Wno-format-security.
+ * invoke.texi: Document -Wformat-security.
+ * toplev.c (documented_lang_options): Include -Wformat-security
+ and -Wno-format-security.
+
+2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_info): Warn for non-constant format
+ strings with strftime formats if -Wformat-nonliteral. Where the
+ format can convert arguments, if the format is not a string
+ literal and there are no arguments to the format, give a different
+ warning message from the general non-string-literal case.
+
+2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (format_wanted_type): Add reading_from_flag.
+ (print_char_table): Mark %s and %S formats with flag "R".
+ (check_format_info_main): Set up reading_from_flag appropriately.
+ If aflag, always set writing_in_flag rather than relying on the
+ format used being a scanf format and so having it set.
+ (check_format_types): Check for formats reading through null
+ pointers.
+
+2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi (-Wformat): Document what format features are
+ checked.
+
+2000-12-06 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.h: Fix formatting.
+
+2000-12-06 Joel Sherrill <joel@OARcorp.com>
+
+ * config.gcc (a29k*-*-rtems*, arm*-*-rtems*, c4x-*-rtems*,
+ h8300-*-rtems*, hppa1.1-*-rtems, *mips*-*-rtems*): New targets.
+ * config.gcc (*-rtems*): Add support for gthr-rtems.h.
+ * gthr-rtems.h, config/a29k/rtems.h, config/arm/rtems-elf.h,
+ config/h8300/rtems.h, config/mips/rtems.h: New files.
+
+2000-12-06 Mark Kettenis <kettenis@gnu.org>
+
+ * config.gcc: Reorganize handling of *-*-gnu*, to share target
+ specific make details with Linux. Update comments to clarify
+ the distinction between GNU/Linux and GNU/Hurd.
+
+Wed Dec 6 19:22:02 2000 Jeffrey A Law (law@cygnus.com)
+
+ * contrib.texi: Fix my email address. Update Per's
+ list of contributions.
+
+2000-12-06 Rodney Brown <RodneyBrown@mynd.com>
+
+ * c-lex.c (cb_indent): Decorate `str' argument, unused on HP-UX.
+ * collect2.c (scan_libraries): Remove unused `ch'.
+ (COFF specific stuff): Prototype ldgetname. Declare and prototype
+ ldbtread and ldclose.
+
+ * config/alpha/osf.h: Standarize copyright statement.
+ * config/arc/arc.h: Likewise.
+ * config/arm/elf.h config/arm/coff.h config/arm/aout.h: Likewise.
+ * config/arm/arm.c config/arm/arm.h: Likewise.
+ * config/elxsi/elxsi.h: Likewise.
+ * config/i386/sco.h: Likewise.
+ * config/m68k/crds.h config/m68k/hp320.h config/m68k/lynx.h: Likewise.
+ * config/m68k/m68kv4.h config/m68k/next21.h: Likewise.
+ * config/m68k/sun3.h: Likewise.
+ * config/m88k/dgux.h config/m88k/dguxbcs.h: Likewise.
+ * config/pdp11/2bsd.h config/pdp11/pdp11.h: Likewise.
+ * config/romp/romp.h: Likewise.
+ * config/rs6000/aix41.h: Likewise.
+ * config/sparc/sysv4.h: Likewise.
+ * config/we32k/we32k.c config/we32k/we32k.h: Likewise.
+ * fixinc/gnu-regex.c fixinc/gnu-regex.h: Likewise.
+ * cpplib.h cppexp.c cselib.h profile.c: Likewise.
+ * longlong.h: Likewise.
+ * libgcc2.c: Likewise.
+
+2000-12-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * machmode.def: Use correct definition for BITSIZE on targets where
+ BITS_PER_UNIT != 8.
+
+2000-12-06 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/Makefile.*: Reduce differences to (ultimately) reduce
+ the number of them.
+
+2000-12-06 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c: Include expr.h before c-tree.h.
+ (remove_useless_addtr_insns): Use reverse_condition_maybe_unordered
+ instead of reverse_condition.
+ (print_operand): Correct predicates for GT, GE, LT and LE. Add
+ predicates for LTGT, UNLE, UNLT, UNGE, UNGT, UNEQ, UNORDERED and
+ ORDERED.
+ (cmpib_comparison_operator): Add GEU and LTU codes.
+ * pa.h (PREDICATE_CODES): Add codes for cmpib_comparison_operator.
+ * pa.md (bltgt, bunle, bunlt, bunge, bungt, buneq, bunordered,
+ bordered): New float conditional branch patterns.
+
+Wed Dec 6 21:03:41 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * final.c (final_addr_vec_align): Fix clipping to BIGGEST_ALIGNMENT.
+
+2000-12-06 Sylvain Pion <Sylvain.Pion@sophia.inria.fr>
+
+ * cpplex.c (skip_escaped_newlines): Don't warn for spaces between
+ backslash and newline, when inside a comment.
+
+2000-12-06 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Use @table @samp instead of @itemize @minus for
+ table of language standards. Fix use of @pxref. From Zack
+ Weinberg. Also exclude specs documentation from generated
+ manpage, and create separate ENVIRONMENT section.
+
+2000-12-06 Michael Matz <matzmich@cs.tu-berlin.de>
+
+ * gcse.c (compute_pre_data): Kill trapping expressions in
+ destination blocks of abnormal edges.
+
+2000-12-05 Richard Sandiford <r.sandiford@redhat.com>
+
+ * config/mn10300/mn10300.c (mn10300_print_reg_list): Added.
+ (mn10300_get_live_callee_saved_regs): Likewise.
+ (mn10300_gen_multiple_store): Likewise.
+ (store_multiple_operation): Likewise.
+ (expand_prologue): Use mn10300_gen_multiple_store().
+ * config/mn10300/mn10300-protos.h (mn10300_print_reg_list): Added.
+ (mn10300_get_live_callee_saved_regs): Likewise.
+ (mn10300_gen_multiple_store): Likewise.
+ (store_multiple_operation): Likewise.
+ * config/mn10300/mn10300.md (store_movm): Use a MATCH_PARALLEL
+ tied to store_multiple_operation().
+
+Tue Dec 5 20:09:14 2000 Jeffrey A Law (law@cygnus.com)
+
+ * builtins.c (expand_builtin_setjmp_setup): Set
+ current_function_has_nonlocal_label.
+
+2000-12-05 Neil Booth <neilb@earthling.net>
+
+ * cppfiles.c (stack_include_file): Push zero-length buffers
+ in case of failure. Return void, as we don't fail any more.
+ (read_include_file): Check for files we shouldn't re-read.
+ Don't return an error code; errors are implied by marking the
+ file NEVER_REREAD.
+ (_cpp_execute_include): Move the recursion and in-macro checks
+ here. Update for stack_include_file not failing.
+ * cpplib.c (cpp_push_buffer): Always succeed, since
+ _cpp_execute_include performs the recursion check. Tidy up.
+ * cpplib.h (cpp_push_buffer): Update prototype.
+
+2000-12-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * sched-vis.c (visual_tbl_line_length): New variable.
+ (get_visual_tbl_length): Set it.
+ (visualize_stall_cycles): Don't let stalls overrun
+ visual_tbl_line_length.
+
+2000-12-05 Geoffrey Keating <geoffk@redhat.com>
+
+ * global.c (global_conflicts): Allow for a REG_UNUSED note
+ with a different mode to the REG set in the insn.
+
+2000-12-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (fixinc.sh): Pass $WARN_CFLAGS into fixinc dir.
+
+ * fixinc/Makefile.in (FIXINC_DEFS): Add $(WARN_CFLAGS).
+
+2000-12-05 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/mkfixinc.sh(*-gnu*): activate fixinc for GNU/Hurd and
+ GNU/Linux.
+
+2000-12-05 Richard Earnshaw <rearnsha@arm.com>
+
+ * fixinc/mkfixinc.sh: Run fixinc on netbsd.
+ * fixinc/inclhack.def (machine/ansi.h): Run this rule on all files,
+ to cope with aliased copies.
+ * fixinc/fixincl.x: Regenerate.
+
+2000-12-05 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * sched-vis.c: Guard with #ifdef INSN_SCHEDULING.
+ * sched-rgn.c: Likewise.
+ (rgn_print_insn): Fix output.
+
+2000-12-05 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/Makefile.*: make these more consistent
+ * fixinc/mkfixincl.sh: enable BeOS fixincludes
+
+2000-12-05 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (warn_if_unused_value): Move side effects test earlier.
+
+2000-12-05 Alan Modra <alan@linuxcare.com.au>
+
+ * bb-reorder.c (reorder_basic_blocks): Do check for EH edges even
+ when using sjlj.
+
+2000-12-05 Richard Henderson <rth@redhat.com>
+
+ * flow.c (calculate_global_regs_live): Only force stack pointer
+ live before reload. Force pic register live before reload.
+ (insn_dead_p): Don't protect pic references from deletion.
+
+2000-12-05 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Add support for using texi2pod.pl. Don't use
+ @multitable.
+
+2000-12-04 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (arm_override_options): Test 'insn_flags' not
+ 'tune_flags' for XScale nature.
+ Remove spurious test of HARD_FLOAT and XScale flags.
+
+ * config/arm/arm.md (umulsidi3adddi): Restore "=&r" register
+ contraint, accidentally changed during XScale contribution.
+
+ * config/arm/lib1funcs.asm (interwork_call_via_, call_via_): Do
+ not create these functions if the target architecture does not
+ support Thumb instructions.
+
+2000-12-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * ONEWS: New file with the current contents of NEWS up to EGCS
+ 1.1.
+ * NEWS: Generate automatically from online release notes from EGCS
+ 1.0 to GCC 2.95.2, using ../contrib/gennews.
+
+2000-12-04 Neil Booth <neilb@earthling.net>
+
+ * tradcif.y: Move lexptr to top of file. Add rule to handle
+ assertions in conditional expressions.
+ * tradcpp.c (parse_answer): Assertions do not need to go to
+ end of line in conditional directives.
+ (parse_assertion): Get first character of identifiers correct.
+ (test_assertion): New function.
+ * tradcpp.h (test_assertion): New prototype.
+
+2000-12-01 Rodney Brown <RodneyBrown@mynd.com>
+
+ * config.gcc: Fix typo for UnixWare 7.
+
+2000-12-03 Phil Edwards <pme@sources.redhat.com>
+
+ * invoke.texi: Replace `pedwarns' with clearer text.
+
+2000-12-04 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/Makefile.*(clean): don't clean autogenerated files.
+ (mainainer-clean): clean autogenerated files
+
+2000-12-04 DJ Delorie <dj@redhat.com>
+
+ * md.texi: Add overview, clarify match_dup and define_expand.
+
+2000-12-04 DJ Delorie <dj@redhat.com>
+
+ * print-tree.c (print_node): Target-specific builtins print
+ numbers, not names.
+
+2000-12-04 Jason Merrill <jason@redhat.com>
+
+ * stor-layout.c (int_mode_for_mode): Handle MODE_VECTOR_INT,
+ MODE_VECTOR_FLOAT.
+
+ * diagnostic.c (report_problematic_module): s/function/module/.
+
+ * c-lex.h: Remove decl for check_newline.
+
+2000-12-04 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README.APOLLO: Remove obsolete file.
+
+2000-12-04 Neil Booth <neilb@earthling.net>
+
+ * cppinternals.texi: New file.
+
+2000-12-04 Neil Booth <neilb@earthling.net>
+
+ * cppfiles.c (cpp_make_system_header): Take 2 booleans,
+ and operate on current buffer.
+ (cpp_read_file): Rename _cpp_read_file.
+ * cpplib.c (do_line, do_pragma_system_header): Update calls to
+ cpp_make_system_header.
+ * fix-header.c: Similarly.
+ * cpphash.h (_cpp_read_file): Move from...
+ * cpplib.h: ... here.
+ * cppinit.c (do_includes, cpp_start_read): Update appropriately.
+
+2000-12-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strspn, expand_builtin_strcspn):
+ Handle another transformation.
+
+2000-12-03 Nick Clifton <nickc@redhat.com>
+
+ * config.gcc: Add support for StrongARM targets.
+ * config/arm/t-strongarm-elf: New file.
+ * config/arm/t-strongarm-coff: New file.
+ * config/arm/t-strongarm-pe: New file.
+ * config/arm/strongarm-pe.h: New file.
+
+2000-12-03 Nick Clifton <nickc@redhat.com>
+
+ * NEWS: Mention XScale has been added.
+ * config.gcc: Add support for XScale targets.
+ * config/arm/arm.h: Add support for XScale processor.
+ * config/arm/arm.c: Add support for XScale processor.
+ * config/arm/arm.md: Add support for XScale processor.
+ * config/arm/t-xscale-elf: New file.
+ * config/arm/t-xscale-coff: New file.
+ * config/arm/xscale-elf.h: New file.
+ * config/arm/xscale-coff.h: New file.
+
+2000-12-03 Richard Henderson <rth@redhat.com>
+
+ * bb-reorder.c (reorder_basic_blocks): Don't check for EH edges
+ unless exception handling is enabled, and if not using sjlj.
+
+ * builtins.c (expand_builtin_setjmp_setup): New.
+ (expand_builtin_setjmp_receiver): New.
+ (expand_builtin_setjmp): Split out _setup and _receiver functions.
+ Move argument parsing in from ...
+ (expand_builtin): ... here.
+ * except.c (receive_exception_label): Branch around receiver
+ unless new-style exceptions. Call expand_builtin_setjmp_receiver.
+ (start_dynamic_handler): Call expand_builtin_setjmp_setup.
+ * expr.h: Update builtin setjmp decls.
+
+2000-12-03 Bruce Korb <bkorb@gcc.org>
+
+ * fixinc/mkfixinc.sh(build machine): Sometimes, there is no canonical
+ build machine name. Default to the target.
+
+2000-12-03 Laurynas Biveinis <lauras@softhome.net>
+
+ * Makefile.in: use $(build_canonical), not $(canonical_build).
+
+2000-12-03 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * Makefile.in (OBJS): Add sched-rgn.o.
+ (sched-rgn.o): New rule. * haifa-sched.c (sched_verbose): No
+ longer static.
+ (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT,
+ INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE,
+ UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST,
+ MAX_BLOCKAGE_COST): Move to sched-int.h.
+ (MAX_RGN_BLOCKS, MAX_RGN_INSNS, INSN_REF_COUNT, FED_BY_SPEC_LOAD,
+ IS_LOAD_INSN, struct haifa_edge, edge_table, NEXT_IN, NEXT_OUT,
+ FROM_BLOCK, TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES,
+ OUT_EDGES, edgelst, struct region, nr_regions, rgn_table,
+ rgn_bb_table, block_to_bb, containing_rgn, RGN_NR_BLOCKS,
+ RGN_BLOCKS, BLOCK_TO_BB, BB_TO_BLOCK, CONTAINING_RGN,
+ debug_regions, find_single_block_region, find_rgns, too_large,
+ init_regions, current_nr_blocks, current_blocks, bitset, bitlst,
+ bitlst_table_last, bitlst_table_size, bitlst_table, bitset_member,
+ extract_bitlst, bblst, struct candidate, candidate_table,
+ bblst_table, bblst_size, bblst_last, IS_VALID, IS_SPECULATIVE,
+ SRC_PROB, target_bb, split_edges, compute_trg_info,
+ debug_candidate, debug_candidates, bbset, bbset_size, dom,
+ IS_RGN_ENTRY, IS_DOMINATED, prob, GET_SRC_PROB, edgeset,
+ rgn_nr_edges, rgn_edges, edgeset_size, edgeset_bitsize,
+ EDGE_TO_BIT, edge_to_bit, pot_split, ancestor_edges,
+ compute_dom_prob_ps, ABS_VALUE, INSN_PROBABILITY,
+ IS_SPECULATIVE_INSN, INSN_BB, MIN_DIFF_PRIORITY, MIN_PROBABILITY,
+ MIN_PROB_DIFF, check_live_1, update_live_1, check_live,
+ update_live, set_spec_fed, is_pfree, find_conditional_protection,
+ is_conditionally_protected, may_trap_exp, haifa_classify_insn,
+ is_prisky, is_exception_free, add_branch_dependences,
+ propagate_deps, compute_block_backward_dependences,
+ debug_dependencies, is_cfg_nonregular, build_control_flow,
+ new_edge, bb_deps, BITSET_UNION, BITSET_INTER, BITSET_DIFFER,
+ BITSET_INVERT, BITSET_ADD, BITSET_REMOVE, debug_regions,
+ UPDATE_LOOP_RELATIONS, INSN_TRAP_CLASS, WORST_CLASS, IS_REACHABLE,
+ CONST_BASED_ADDRESS_P, free_pending_lists, sched_target_n_insns,
+ target_n_insns, sched_n_insns, init_ready_list, deaths_in_region,
+ can_schedule_ready_p, new_ready, schedule_more_p, rgn_print_insn,
+ rgn_rank, region_sched_info): Move to sched-rgn.c.
+ (debug_reg_vector): Delete useless function.
+ (get_bb_head_tail): Likewise.
+ (insn_issue_delay, insn_cost, ready_add, get_block_head_tail,
+ no_real_insns_p, rm_line_notes, save_line_notes,
+ restore_line_notes, rm_redundant_line_notes, sched_init): No
+ longer static.
+ (rm_line_notes, save_line_notes, restore_line_notes,
+ schedule_block, set_priorities): Change argument to be a real
+ basic block, not one of haifa's "bb"s. All callers changed
+ (rm_other_notes): Initialize note_list here, not in
+ schedule_region.
+ (sched_finish): New function, called from schedule_insn. * *
+ sched-int.h (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT,
+ INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE,
+ UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST,
+ MAX_BLOCKAGE_COST): Moved here from haifa-sched.c.
+ (get_block_head_tail, no_real_insns_p, rm_line_notes,
+ save_line_notes, restore_line_notes, rm_redundant_line_notes,
+ rm_other_notes, insn_issue_delay, set_priorities, schedule_block,
+ sched_init, sched_finish, ready_add, insn_cost): Declare.
+
+2000-12-03 Laurynas Biveinis <lauras@softhome.net>
+ Bruce Korb <bkorb@gnu.org>
+
+ * Makefile.in: pass $(build_canonical) to mkfixinc.sh.
+ * fixinc/mkfixinc.sh: accept build system name as an argument.
+ Use it for choosing the fix build method. Use the target for
+ selecting special fix rules.
+
+2000-12-03 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * Makefile.in (OBJS): Add sched-deps.o.
+ (sched-deps.o): New rule.
+ * haifa-sched.c (struct deps, struct haifa_insn_data): Moved to
+ sched-int.h.
+ (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved to
+ sched-int.h.
+ (SIZE_FOR_MODE): Delete unused macro.
+ (reg_known_equiv_p, reg_known_value, reg_pending_clobbers,
+ reg_pending_sets, reg_pending_sets_all, true_dependency_cache,
+ anti_dependency_cache, output_dependency_cache,
+ forward_dependency_cache): Variables moved to sched-deps.c.
+ (add_dependence, remove_dependence, find_insn_list,
+ find_insn_mem_list, add_insn_mem_dependence, flush_pending_lists,
+ sched_analyze_insn, sched_analyze_1, sched_analyze_2,
+ sched_analyze, group_leader, compute_forward_dependences,
+ init_deps, free_deps, init_dependency_caches, free_dependency_caches):
+ Functions moved to sched-deps.c.
+ (schedule_region): Call init_deps_global and finish_deps_global
+ instead of directly manipulating dependency data structures.
+ * sched-deps.c: New file.
+ (init_deps_global, finish_deps_global): New functions.
+ * sched-int.h (struct haifa_insn_data, struct deps): Moved here from
+ haifa-sched.c.
+ (h_i_d): Declare.
+ (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved here
+ from haifa-sched.c.
+
+ * Makefile.in (OBJS): Add sched-vis.o.
+ (sched-vis.o): New rule.
+ * haifa-sched.c (get_unit_last_insn): New function.
+ (sched_dump, insn_unit, actual_hazard_this_instance): No longer
+ static.
+ (schedule_block): Call visualize_alloc and visualize_free. Delete
+ spurious return statement.
+ (init_target_units, insn_print_units, get_visual_tbl_length,
+ init_block_visualization, print_block_visualization, safe_concat,
+ visualize_scheduled_inns, visualize_no_unit, visualize_stall_cycles,
+ print_exp, print_value, print_pattern, print_insn, target_units,
+ MAX_VISUAL_LINES, INSN_LEN, n_visual_lines, visual_tbl,
+ n_vis_no_unit, vis_no_unit): Move scheduling visualization
+ functions/variables...
+ * sched-vis.c: ...here. New file.
+ (visualize_alloc, visualize_free): New functions.
+ (visualize_scheduled_insns, visualize_stall_cycles,
+ print_block_visualization): Lose basic block argument. All callers
+ changed.
+ (visualize_scheduled_insns): Use new function get_unit_last_insn.
+ * sched-int.h (current_sched_info, sched_dump): Declare.
+ (init_target_units, insn_print_units, init_block_visualization,
+ print_block_visualization, visualize_scheduled_inns,
+ visualize_no_unit, visualize_stall_cycles, visualize_alloc,
+ visualize_free): Declare functions.
+
+ * sched-int.h: New file.
+ * Makefile.in (haifa-sched.o): Depend on it.
+ * haifa-sched.c: Include it.
+ (no_real_insns_p): New function.
+ (current_sched_info): New static variable.
+ (__inline, HAIFA_INLINE): Moved to sched-int.h.
+ (get_block_head_tail): Minor cleanup.
+ (init_ready_list, can_schedule_ready_p, new_ready, schedule_more_p,
+ rgn_print_insn, rgn_rank): New functions, broken out of
+ rank_for_schedule, schedule_insn and schedule_block, where they
+ are now called through function pointers in current_sched_info.
+ (queue_insn, schedule_insn, queue_to_ready, debug_ready_list,
+ print_insn): To display uid and block number, call the print_insn
+ function pointer in current_schedule_info.
+ (region_sched_info): New static variable.
+ (sched_target_n_insns, sched_n_insns, target_n_insns): New global
+ variables, moved out of schedule_block.
+ (schedule_block): Return void. All callers changed.
+ Move some of the setup code into schedule_region. Get head/tail
+ from current_sched_info, and update it when done.
+ (schedule_region): Slightly rearranged, some code moved here from
+ schedule_block. Call no_real_insns_p to avoid doing work for a
+ block that consists only of notes and labels.
+ (schedule_insns): Initialize current_sched_info.
+
+2000-12-03 Neil Booth <neilb@earthling.net>
+
+ * cppmacro.c (funlike_invocation_p): Re-disable macros enabled
+ by contexts drops AFTER argument pre-expansion, so that they
+ remain enabled during argument pre-expansion.
+ (_cpp_pop_context): Unconditionally re-enable a macro when
+ dropping a context level.
+
+2000-12-03 Manfred Hollstein <manfredh@redhat.com>
+
+ * arm/t-linux (MULTILIB_OPTIONS): Comment.
+ (MULTILIB_DIRNAMES): Likewise.
+ (EXTRA_MULTILIB_PARTS): Likewise.
+ (LIBGCC): Likewise.
+ (INSTALL_LIBGCC): Likewise.
+
+2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strcat, expand_builtin_strncat,
+ expand_builtin_strspn, expand_builtin_strcspn): New functions.
+ (expand_builtin): Handle BUILT_IN_STRCAT, BUILT_IN_STRNCAT,
+ BUILT_IN_STRSPN and BUILT_IN_STRCSPN.
+
+ * builtins.def (BUILT_IN_STRCAT, BUILT_IN_STRNCAT,
+ BUILT_IN_STRSPN, BUILT_IN_STRCSPN): New entries.
+
+ * c-common.c (c_common_nodes_and_builtins): Declare builtin
+ strcat, strncat, strspn and strcspn.
+ (string_ftype_string_cstring): Renamed from `string_ftype_ptr_ptr'.
+
+ * extend.texi (strcat, strcspn, strncat, strspn): Document new
+ builtins.
+
+2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strcmp): Use const*_rtx when
+ expanding strcmp at compile-time. Add another transformation.
+ (expand_builtin_strncmp): Add more transformations. Call
+ expand_builtin_memcmp, not expand_builtin_strcmp, under
+ appropriate conditions if HAVE_cmpstrsi.
+
+2000-12-02 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (anddi3_internal[23]): Prefer rldic? over andis
+ instruction.
+ (cr logic): Really make operands sequential.
+
+2000-12-02 Geoffrey Keating <geoffk@redhat.com>
+
+ * c-common.c (combine_strings): When the ISO C standard specifies
+ the maximum length of a string, it doesn't include the trailing
+ zero byte.
+
+ * cpplib.c (do_ifdef): Add check_eol() call.
+ (do_ifndef): Likewise.
+
+2000-12-02 Daniel Berlin <dberlin@redhat.com>
+ Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/*: global substitute /__MSDOS__/SEPARATE_FIX_PROC/
+ * fixinc/mkfixinc.sh: prepare to use Makefile.BEOS for *-*-beos*
+ * fixinc/Makefile.DOS: define SEPARATE_FIX_PROC for build
+ * fixinc/fixfix.c(wrap_fix): avoid wrapping files that
+ use the "__need_" hackery. It breaks them.
+ * fixinc/fixincl.c(process - SEPARATE_FIX_PROC):
+ Sometimes on DOS and BeOS the temp output file cannot be opened.
+ Skip the file noisily. Ought to be fixed instead.
+
+2000-12-02 Bruce Korb <bkorb@gnu.org>
+
+ From: 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fixfixes.c (emit_gnu_type, format_write): Prototype.
+ (format_write, char_macro_use_fix, char_macro_def_fix): Use gcc's
+ custom uppercase ctype macros.
+ * fixincl.c (do_version): Make static and add ATTRIBUTE_NORETURN.
+ Use gcc's custom uppercase ctype macros.
+ (main): Prototype.
+ (machine_matches): Add static prototype and constify variable.
+ (create_file, test_test, egrep_test): Add static prototype.
+ (quoted_file_exists): Likewise, and constify parameters.
+ (extract_quoted_files, internal_fix, start_fixer, fix_applies,
+ write_replacement, test_for_changes): Add static prototype.
+ (write_replacement, test_for_changes): Delete excess argument to
+ `create_file'.
+ * fixtests.c (test): Make static.
+ * server.c (load_data, sig_handler, server_setup, find_shell): Add
+ static prototype.
+ (sig_handler): Mark parameter with ATTRIBUTE_UNUSED.
+
+2000-12-02 Bruce Korb <bkorb@gnu.org>
+
+ * fixnc/mkfixinc.sh(msdosdjgpp): remove from fixincludes exception list
+ (per Laurynas Biveinis <lauras@softhome.net>)
+
+2000-12-02 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (ARM_REGNO_OK_FOR_BASE_P, THUMB_REGNO_MODE_OK_FOR_BASE_P): New
+ macros.
+ (REGNO_MODE_OK_FOR_BASE_P): Define in terms of above.
+ (REGNO_OK_FOR_FOR_BASE_P): Delete.
+ (ARM_REG_OK_FOR_BASE_P, THUMB_REG_MODE_OK_FOR_BASE_P): New macros for
+ both strict and non-strict uses.
+ (REG_MODE_OK_FOR_BASE_P): Define in terms of above.
+ (ARM_REG_OK_FOR_INDEX_P, THUMB_REG_OK_FOR_INDEX_P): New macros.
+ (REG_OK_FOR_INDEX_P): Define in terms of above.
+ (REG_OK_FOR_BASE_P): Delete.
+ (REG_OK_FOR_PRE_POST_P): Delete.
+ (ARM_BASE_REGISTER_RTX_P): Renamed from BASE_REGISTER_RTX_P.
+ (ARM_INDEX_REGISTER_RTX_P): Renamed from INDEX_REGISTER_RTX_P.
+ (ARM_GO_IF_LEGITIMATE_INDEX): Renamed from GO_IF_LEGITIMATE_INDEX.
+ (THUMB_LEGITIMATE_OFFSET): Renamed from LEGITIMATE_OFFSET.
+ (ARM_GO_IF_LEGITIMATE_ADDRESS): Adjust for name changes. Use ARM
+ specific variants rather than general ones. Use ARM_REG_OK_FOR_BASE_P
+ in pre/post increment cases.
+ (THUMB_GO_IF_LEGITIMATE_ADDRESS): Similarly for Thumb.
+ (ARM_LEGITIMIZE_ADDRESS): Similarly.
+ (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Similarly.
+ * arm.c (legitimate_pic_address): Similarly.
+
+2000-12-02 Neil Booth <neilb@earthling.net>
+
+ * tradcpp.c (struct answer, parse_assertion, parse_answer,
+ canonicalize_text, find_answer): New.
+ (do_assert, do_unassert): Provide appropriate function bodies.
+ (union hashval): New member answers.
+
+2000-11-23 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.md: Document UNSPEC usage.
+ (*tablejump_rjmp, *tablejump_lib, *tablejump_enh, *tablejump):
+ Make operand 0 input only, clobber it. Use UNSPEC, not a bogus
+ MEM for program memory word reference. Do not add the label to
+ the table index in each of the asm output templates, instead ...
+ (casesi): ... do it in RTL. Adjust to match the above change.
+
+2000-12-02 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * c-common.c (PTRDIFF_TYPE): Provide default here, ...
+ * c-decl.c: ... not here.
+
+ * haifa-sched.c (sched_dump): Renamed from dump. All users changed.
+ (old_max_uid): New variable.
+ (compute_forward_dependences): Renamed from
+ compute_block_forward_dependences; changed to accept block head and
+ tail instead of block number. Caller changed.
+ (free_deps, init_dependency_caches, free_dependency_caches,
+ init_regions, sched_init): New functions, split out from
+ schedule_insns and compute_block_backward_dependences.
+
+2000-12-02 Neil Booth <neilb@earthling.net>
+
+ * cppexp.c (parse_number): Update diagnostic test.
+
+2000-12-02 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * reload1.c (free_for_value_p): New function, frontend to
+ reload_reg_free_for_value_p. All callers of the latter now call
+ this function with an additional mode argument.
+
+2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * install.texi (Configurations): Remove obsolete documentation for
+ hppa*-*-*.
+
+2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * install.texi (Installation): Remove obsolete description for
+ libstdc++ which is now an integral part of GCC.
+
+2000-12-01 Jim Blandy <jimb@redhat.com>
+
+ * dbxout.c (dbxout_parms): Correctly describe parameters passed by
+ invisible reference in registers, but then spilled to the stack.
+ Remove code to emit a second stab for such parameters; it attempts
+ to describe the value's location by introducing a synthetic C++
+ `reference' type, and then saying the stack slot has that
+ reference type. This loses type information (breaking GDB's
+ `ptype' command, among other things) just to describe a location
+ which stabs can represent correctly in other ways.
+
+2000-12-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * final.c (output_addr_const) <PLUS>: Don't assume at least one
+ operand is a CONST_INT.
+
+ * config/sh/sh.c (reg_class_from_letter): Assign `k' to SIBCALL_REGS.
+ (machine_dependent_reorg): Split all insns.
+ * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Compute
+ reg_class_contents[SIBCALL_REGS].
+ (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add SIBCALL_REGS.
+ * config/sh/sh.md (calli_pcrel, call_pcrel, call_valuei_pcrel,
+ call_value_pcrel, call, call_value, sibcall): Match even when
+ not optimizing.
+ (sibcalli_pcrel, sibcall_pcrel): Likewise. Use constraint `k'
+ for call address.
+ (sibcalli): Likewise.
+
+2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (warn_format, warn_format_y2k,
+ warn_format_extra_args, warn_format_nonliteral): Define.
+ (check_format_info): Check warn_format_nonliteral and
+ warn_format_extra_args.
+ (check_format_info_main): Check warn_format_y2k.
+ (set_Wformat): New function.
+ * c-common.h (warn_format_y2k, warn_format_extra_args,
+ warn_format_nonliteral, set_Wformat): Declare.
+ * c-decl.c (warn_format): Remove definition.
+ (c_decode_option): Handle -Wformat-nonliteral,
+ -Wno-format-extra-args and -Wno-format-y2k, and negated versions.
+ Use set_Wformat.
+ * invoke.texi: Document these new options and -Wformat=2.
+ * toplev.c (documented_lang_options): Add these new options.
+
+2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * builtins.def (BUILT_IN_IMAXABS): Add.
+ * builtins.c (expand_builtin): Also abort on BUILT_IN_IMAXABS.
+ * c-common.c (c_common_nodes_and_builtins): Create builtin
+ functions __builtin_imaxabs, and plain imaxabs unless
+ flag_no_nonansi_builtin outside C99 mode.
+ (expand_tree_builtin): Handle BUILT_IN_IMAXABS.
+ * extend.texi: Document builtin imaxabs.
+
+2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c: Include "defaults.h".
+ (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Define.
+ (c_common_nodes_and_builtins): Create string_type_node,
+ const_string_type_node, wint_type_node, intmax_type_node,
+ uintmax_type_node, default_function_type, ptrdiff_type_node and
+ unsigned_ptrdiff_type_node.
+ * c-common.h (identifier_global_value): Declare.
+ * c-decl.c (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Don't define.
+ (init_decl_processing): Don't create string_type_node,
+ const_string_type_node, wint_type_node, intmax_type_node,
+ uintmax_type_node, default_function_type, ptrdiff_type_node and
+ unsigned_ptrdiff_type_node.
+ (identifier_global_value): New function.
+
+2000-12-01 Neil Booth <neilb@earthling.net>
+
+ * cppinit.c (initialize): Forgotten prototype.
+ * cpplex.c (_cpp_lex_token): Loop until not skipping.
+ Always clear PREV_WHITE upon meeting a new line.
+ * cpplib.c (end_directive): Set pfile->skipping after
+ skip_rest_of_line.
+ * cpplib.h (cpp_reader): Remove macro_pos.
+ * cppmacro.c (cpp_get_line): Don't do anything special inside
+ macros.
+ (parse_arg): Add PREV_WHITE if a token appears after new lines.
+ (funlike_invocation_p): Save and restore the output position
+ over a successful check for a '('.
+ (enter_macro_context): Delete uses of macro_pos.
+ (cpp_get_token): Don't use pfile->skipping.
+
+2000-12-01 Phil Edwards <pme@sources.redhat.com>
+
+ * diagnostic.c: Fix typos in comments.
+ * diagnostic.h: Likewise.
+
+2000-11-30 Phil Edwards <pme@sources.redhat.com>
+
+ * rtl.texi (Machine Modes): Document BImode and OImode.
+
+2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.c (default_compilers): Add suffixes .mi, .cp, .ii, .FOR and
+ .FPP.
+
+2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (grokdeclarator): If pedantic, warn about arrays with
+ incomplete element type.
+ (grokparms): Before checking for incomplete parameter type, check
+ the type isn't error_mark_node.
+
+2000-12-01 Jakub Jelinek <jakub@redhat.com>
+
+ * builtins.c (target_char_cast): New function.
+ (expand_builtin_strchr): Use it.
+ (expand_builtin_strrchr): Use it.
+ (builtin_memset_read_str): New function.
+ (expand_builtin_memset): Use target_char_cast.
+ Try to optimize memset with second argument nonzero using
+ store_by_pieces.
+
+2000-11-30 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * install.texi (avr): Replace incomplete list of supported MCU
+ types with a link to the current one ...
+ * invoke.texi (AVR Options): ... here. Update -mmcu= to list
+ all supported MCU types. Document -minit-stack= default.
+ Document new options -mno-tablejump, -mtiny-stack.
+ * md.texi (AVR family): Fix typo in 'w' constraint letter
+ description. Document 'q'. Update 'O'.
+
+2000-12-01 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * combine.c (cant_combine_insn_p): Only disallow insns involving
+ hard regs if they are reg-reg moves.
+ (try_combine, can_combine_p, combinable_i3pat): Delete old
+ SMALL_REGISTER_CLASSES tests.
+
+2000-12-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (shiftcosts): Don't get INTVAL before testing
+ whether X is a CONST_INT.
+ (addsubcosts): Likewise.
+
+ * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Use INTVAL instead of
+ mis-used XINT.
+ (ARG_POINTER_REGNUM): Set to AP_REG.
+
+2000-11-30 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (fpu_switch0, fpu_switch1, movpsi, fpu_switch,
+ splits): Only match on TARGET_SH4.
+
+ * combine.c (try_combine): Disregard USEs when updating LOG_LINKS
+ of subsequent insns.
+
+2000-11-30 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Disable.
+ * config/alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise.
+
+2000-11-30 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/elf.h (ASM_OUTPUT_SECTION_NAME): Copy elfos.h defn.
+ (DO_SELECT_SECTION): New.
+ (SELECT_SECTION): Use it.
+ (UNIQUE_SECTION_P): New.
+ (UNIQUE_SECTION): New.
+
+2000-11-30 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-common.c (status_warning) [! ANSI_PROTOTYPES]: Load status
+ from va_list before using it.
+
+2000-11-30 Michael Matz <matzmich@cs.tu-berlin.de>
+
+ * flow.c (make_edge): Early out, if no flags to set.
+ (calculate_global_regs_live): Clear out garbage only when necessary.
+
+ * simplify-rtx.c (varray_type used_regs): New.
+ (clear_table): Use it to only clear necessary items.
+ (cselib_lookup, cselib_record_set): Remember newly set items.
+ (cselib_update_varray_sizes, cselib_init): Initialize and grow
+ used_regs.
+
+ * local-alloc.c (update_equiv_regs): New local `cleared_regs'.
+ Move clearing of dead regs out of insn-loop.
+
+2000-11-30 Richard Henderson <rth@redhat.com>
+
+ * calls.c (expand_call): Emit queued insns before creating
+ the tail recursion sequence.
+
+2000-11-30 J. David Anglin <dave.anglin@nrc.ca>
+ Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def(): prevent dual double definition protection
+ * fixinc/fixincl.x: regenerate
+
+2000-11-29 Loren J. Rittle <ljrittle@acm.org>
+
+ * fixinc/Makefile.in (fixincl.x): Explicitly state the
+ location of the generated file.
+
+2000-11-30 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README.FRESCO: Remove obsolete file.
+
+2000-11-30 Mark Kettenis <kettenis@gnu.org>
+
+ * config/t-gnu (LIBGCC1, CROSS_LIBGCC1, CRTSTUFF_T_CFLAGS,
+ TARGET_LIBGCC2_CFLAGS): Remove. We now use the settings from
+ config/t-linux for the Hurd.
+
+2000-11-30 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/mn10200/udivmod.c, config/mn10200/divmod.c,
+ config/mn10200/udivmodsi4.c: Moved from here.
+ * config/udivmod.c, config/divmod.c, config/udivmodsi4.c: To here.
+ * config/mn10200/t-mn10200 (LIB2FUNCS_EXTRA): Use the generic
+ C division functions.
+ * config/m68hc11/t-m68hc11-gas (LIB2FUNCS_EXTRA): Likewise.
+
+Thu Nov 30 01:12:52 2000 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (conditional moves): Avoid holes in operand list.
+ (mod, umod patterns): Similarly.
+ (variable extract/shift patterns): Similarly.
+
+2000-11-30 Neil Booth <neilb@earthling.net>
+
+ * objc/objc-act.c (lang_init, finish_file, maybe_objc_comptypes,
+ maybe_objc_check_decl, build_objc_string_object,
+ objc_declare_alias, objc_declare_class, build_message_expr,
+ build_protocol_expr, build_selector_expr, build_encode_expr,
+ get_class_ivars, start_class, start_protocol): Remove
+ redundant code, assuming doing_objc_thang is true.
+
+2000-11-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (restore_unscaled_index_insn_codes): Delete procedure.
+ (record_unscaled_index_insn_codes): Likewise.
+ (unscaled_index_insn_codes): Delete.
+ (max_unscaled_index_insn_codes_uid): Delete.
+ (output_function_prologue, output_function_epilogue, pa_reorg):
+ Don't use the unscaled index insn hack.
+
+ * pa.md: Remove hack from all index insns to reverse the operand
+ order of frame and stack pointer references incorrectly created
+ in the reload pass.
+
+ * function.h (emit_status): Delete member regno_pointer_flag and
+ rename regno_pointer_flag_length to regno_pointer_align_length.
+ Delete define for REGNO_POINTER_FLAG.
+ * integrate.h (inline_remap): Delete member regno_pointer_flag.
+ Add member x_regno_reg_rtx.
+ * rtl.h (rtx_def): Use frame_related bit to indicate register is
+ a pointer in REG expressions. Define REG_POINTER macro.
+ * alias.c (find_base_value, find_base_term): Use REG_POINTER
+ instead of REGNO_POINTER_FLAG.
+ * combine.c (nonzero_bits, num_sign_bit_copies): Likewise.
+ * emit-rtl.c (gen_reg_rtx): Use regno_pointer_align_length instead
+ of regno_pointer_flag_length. Remove code which refers to
+ regno_pointer_flag.
+ (mark_reg_pointer): Use REG_POINTER.
+ (free_emit_status): Remove code which refers to regno_pointer_flag.
+ (init_emit, mark_emit_status): Likewise.
+ * flow.c (dump_flow_info): Likewise.
+ * function.c (preserve_temp_slots): Likewise.
+ * integrate.c (expand_inline_function, copy_rtx_and_substitute):
+ Use x_regno_reg_rtx instead of regno_pointer_flag for function
+ pointer determination in map.
+ * loop.c (strength_reduce, maybe_eliminate_biv_1): Use REG_POINTER.
+ * predict.c (estimate_probability): Likewise.
+ * regclass.c (record_address_regs, reg_scan_mark_refs): Likewise.
+ * unroll.c (unroll_loop): Use x_regno_reg_rtx instead of
+ regno_pointer_flag for function pointer determination in map.
+ * convex.h (RTX_COSTS): Don't test regno_pointer_flag and use
+ REG_POINTER.
+ * pa.c (hppa_legitimize_address, emit_move_sequence, basereg_operand):
+ Use REG_POINTER.
+ (restore_unscaled_index_insn_codes): Revise comment.
+
+ * expr.c (do_compare_and_jump): Add missing TYPE_MODE in statement.
+
+2000-11-30 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi: Update documentation for attributes.
+
+2000-11-29 David O'Brien <obrien@FreeBSD.org>
+
+ * config/alpha/elf.h (IDENT_ASM_OP): Protect the #define.
+ (ASM_DECLARE_OBJECT_NAME): Same.
+ (ASM_FILE_END): Same.
+ (ASM_FINISH_DECLARE_OBJECT): Same.
+ (ASM_IDENTIFY_GCC): Same.
+ (ASM_IDENTIFY_LANGUAGE): Same.
+ (ASM_OUTPUT_CONSTRUCTOR): Same.
+ (ASM_OUTPUT_DEF): Same.
+ (ASM_OUTPUT_DESTRUCTOR): Same.
+ (ASM_OUTPUT_EXTERNAL_LIBCALL): Same.
+ (ASM_OUTPUT_SECTION_NAME): Same.
+ (ASM_WEAKEN_LABEL): Same.
+ (BSS_SECTION_ASM_OP): Same.
+ (COMMON_ASM_OP): Same.
+ (CONST_SECTION_ASM_OP): Same.
+ (CONST_SECTION_FUNCTION): Same.
+ (CTORS_SECTION_ASM_OP): Same.
+ (DTORS_SECTION_ASM_OP): Same.
+ (ESCAPES): Same.
+ (FINI_SECTION_ASM_OP): Same.
+ (IDENT_ASM_OP): Same.
+ (IDENT_ASM_OP): Same.
+ (INIT_SECTION_ASM_OP): Same.
+ (INT_ASM_OP): Same.
+ (MAX_OFILE_ALIGNMENT): Same.
+ (SBSS_SECTION_ASM_OP): Same.
+ (SDATA_SECTION_ASM_OP): Same.
+ (SECTION_FUNCTION_TEMPLATE): Same.
+ (SELECT_SECTION): Same.
+ (SE_CONST_SECTION): Same.
+ (SIZE_ASM_OP): Same.
+ (SKIP_ASM_OP): Same.
+ (STRING_ASM_OP): Same.
+ (STRING_LIMIT): Same.
+ (TYPE_ASM_OP): Same.
+ (TYPE_OPERAND_FMT): Same.
+
+2000-11-29 Neil Booth <neilb@earthling.net>
+
+ * c-decl.c (c_decode_option): Don't handle -lang-objc.
+ * objc/lang-options.h: Remove -lang-objc.
+ * objc/lang-specs.h: Don't pass -lang-objc to cc1obj.
+ * objc/objc-act.c (lang_init_options): Set c_language.
+
+2000-11-29 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (can_store_by_pieces): Reinitialize max_size for reverse
+ tests.
+
+2000-11-29 Neil Booth <neilb@earthling.net>
+
+ * c-pragma.c (init_pragma): Update for parse_in type change.
+
+2000-11-29 Laurynas Biveinis <lauras@softhome.net>
+
+ * configure.in: recognize DOS-style absolute paths.
+
+2000-11-29 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.h (store_by_pieces): Add prototype.
+ (can_store_by_pieces): Likewise.
+ * expr.c (struct store_by_pieces): Renamed from clear_by_pieces.
+ (can_store_by_pieces): New.
+ (store_by_pieces): New.
+ (clear_by_pieces): New.
+ (clear_by_pieces_1): New.
+ (store_by_pieces_1): Renamed from clear_by_pieces, handle storing
+ arbitrary compiler generated constants into memory block.
+ (store_by_pieces_2): Renamed from clear_by_pieces_1, likewise.
+ * builtins.c (c_readstr): New.
+ (builtin_memcpy_read_str): New.
+ (expand_builtin_memcpy): If src is string constant and
+ emit_block_move would move it by pieces, compute integer constants
+ from the string and store it into memory block instead.
+ (builtin_strncpy_read_str): New.
+ (expand_builtin_strncpy): If N is not constant zero and c_strlen does
+ not return INTEGER_CST, don't optimize.
+ If N is larger than strlen(src) + 1, try to copy the string
+ including padding with store_by_pieces.
+ (expand_builtin_strcmp): If both arguments have side effects, don't
+ optimize.
+ (expand_builtin_fputs): If STR has side effects, don't optimize.
+
+2000-11-29 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (sibcall, sibcall_value, sibcall_insn, sibcall_value_insn):
+ Add use of link register.
+
+2000-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi: Update documentation for default format attributes.
+
+Tue Nov 28 21:56:45 2000 Jeffrey A Law (law@cygnus.com)
+
+ * pa/pa-64.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not
+ a list, to keep track of the sections.
+
+2000-11-28 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.md (pic_load_addr): Split into
+ pic_load_addr_arm and pic_load_addr_thumb.
+
+ * config/arm/arm.c (legitimize_pic_address): Generate either
+ ARM or Thumb versions of pic_load_addr.
+ (arm_finalize_pic): Generate either ARM or Thumb versions of
+ pic_load_addr.
+
+2000-11-28 Richard Henderson <rth@redhat.com>
+
+ * calls.c (expand_call): Defer const/pure NO_DEFER_POP until
+ after sibcall do_pending_stack_adjust.
+
+Wed Nov 29 00:08:23 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * jump.c (delete_insn): Check that REG_LABEL note actually contains
+ a CODE_LABEL.
+
+2000-11-28 Neil Booth <neilb@earthling.net>
+
+ * c-common.h: Remove flag_digraphs.
+ * c-decl.c: Remove flag_digraphs.
+ (c_decode_option): Don't set it.
+ * c-lex.c (init_c_lex): Don't do anything for digraphs.
+
+2000-11-28 Richard Henderson <rth@redhat.com>
+
+ * c-parse.in (finish_parse): Update for parse_in type change.
+ (_yylex): Likewise.
+
+2000-11-28 Neil Booth <neilb@earthling.net>
+
+ * cppmacro.c (cpp_scan_buffer_nooutput): Take a boolean
+ indicating whether to scan all buffers on the stack or
+ just one.
+ * cppinit.c (do_includes): Update.
+ * cppmain.c (main): Update.
+ * cpplib.h: Update prototype.
+
+2000-11-28 Richard Henderson <rth@redhat.com>
+
+ * genoutput.c (validate_insn_operands): New.
+ (gen_insn): Call it.
+
+ * config/alpha/alpha.md (divmodsi_internal): Renumber operands.
+ (divmoddi_internal): Likewise.
+ * config/arm/arm.md (andsi3_compare0_scratch): Likewise.
+ * config/i960/i960.md (branch patterns): Likewise.
+ * config/ia64/ia64.md (tbit_and_0): Likewise.
+ (tbit_and_1, tbit_or_0, tbit_or_1): Likewise.
+ * config/m68k/m68k.md (zero_extract memory patterns): Likewise.
+ * config/mips/mips.md (divmodsi4_internal): Likewise.
+ (divmoddi4_internal): Likewise.
+ * config/rs6000/rs6000.md (call patterns): Likewise.
+ * config/sh/sh.md (movsi_y): Likewise.
+ * config/sparc/sparc.md: Comment out if 0 v8p shift pattern.
+
+2000-11-28 Richard Henderson <rth@redhat.com>
+
+ * config.gcc: Kill residual pyramid support.
+
+2000-11-28 Neil Booth <neilb@earthling.net>
+
+ * c-lex.h (parse_in): Change parse_in to a cpp_reader *.
+ * c-decl.c (c_decode_option): Update to match.
+ * c-lex.c (init_c_lex, yyparse): Update to match.
+ * c-lang.c (lang_init_options): Use cpp_create_reader.
+ * cppinit.c (cpp_init): Rename initialize.
+ (cpp_reader_init): Rename cpp_create_reader. Create the
+ reader. Initialize cpplib if appropriate.
+ * cpplib.h (cpp_create_reader) New prototype.
+ (cpp_init, cpp_reader_init): Delete prototypes.
+ * cppmain.c (general_init, setup_callbacks): New functions.
+ (main): Use them.
+ * fix-header.c (scan_in): Change type to cpp_reader *.
+ (read_scan_file): Update for new cpplib interface and scan_in type.
+
+ * cp/decl.c (parse_in): Change to cpp_reader *.
+ (lang_decode_option): Update.
+ * cp/lex.c (lang_init_options): Use new cpplib interface.
+ (init_cp_pragma, finish_parse, handle_pragma_implementation): Update.
+ * cp/spew.c (read_token): Update.
+ * objc/objc-act.c (lang_init_options): Update new cpplib interface.
+
+2000-11-28 Jakub Jelinek <jakub@redhat.com>
+
+ * loop.c (load_mems): Avoid using next_label to find end_label. If
+ jumping outside of the loop (other than loop end), don't hoist MEMs
+ out of loop.
+
+2000-11-28 Jan Hubicka <jh@suse.cz>
+
+ * calls.c (expand_call): Don't disable tail recursion based
+ on the loop nest.
+
+2000-11-28 Neil Booth <neilb@earthling.net>
+
+ * tradcpp.c (enum node_type): New hash types T_ASSERT, T_UNASSERT.
+ (struct directive): Drop 4th argument from handlers.
+ (do_define, do_line, do_include, do_undef, do_else, do_elif,
+ do_endif): Similarly.
+ (do_assert, do_unassert, do_ifdef, do_ifndef): New handlers.
+ (do_ifxdef): Update as common handler of do_ifdef and do_ifndef.
+ (make_definition, make_undef): Take a const char*.
+ (make_assertion): New function.
+ (struct directive_table): Update.
+ (main): Handle -A command line argument.
+ (handle_directive): Drop fourth handler argument.
+
+2000-11-28 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * simplify-rtx.c (cselib_record_sets): Ignore sets whose destination
+ is anything but REG or MEM, but look inside STRICT_LOW_PART.
+
+Tue Nov 28 09:53:50 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * system.h (IS_DIR_SEPARATOR): Use uppercase macro name.
+ (IS_ABSOLUTE_PATHNAME): New macro.
+ * gcc.c (find_a_file, process_command, do_spec_1, main): Use it.
+
+2000-11-28 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (truncxfsf2_2): Fix predicate.
+
+2000-11-27 Jim Wilson <wilson@redhat.com>
+
+ * reload1.c (reload): Use HOST_WIDE_INT for old_frame_size.
+
+2000-11-27 Matthias Klose <doko@cs.tu-berlin.de>
+
+ * extend.texi (Nested Functions): Update URL of Usenix paper.
+
+2000-11-27 Mark Mitchell <mark@codesourcery.com>
+
+ * function.c (free_after_compilation): Clear x_clobber_return_insn.
+
+2000-11-27 Neil Booth <neilb@earthling.net>
+
+ * cppinit.c (cpp_reader_init): Remove handling of warn_paste
+ command line options.
+ (cpp_handle_option): Similarly.
+ * cpplib.h (struct cpp_options): Remove warn_paste.
+ * cppmacro.c (paste_tokens): Apart from assembler, make
+ unpasteable token warning mandatory.
+
+2000-11-27 Neil Booth <neilb@earthling.net>
+
+ * tradcpp.c (enum pending_dir_t, struct pending_dir): New.
+ (main): Allocate a pending directive set of these. Use it.
+ Merge handling of -D and -U. Update handling of pending
+ directives. Free the memory after use.
+
+2000-11-27 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * flow.c (entry_exit_blocks): Add entry for cond_local_set.
+ (struct propagate_block_info): Add new member cond_local_set.
+ (propagate_block): Accept new arg cond_local_set. All callers
+ changed.
+ (init_propagate_block_info): Likewise.
+ (calculate_global_regs_live): Allocate & free cond_local_set. Always
+ rescan if there's overlap between cond_local_set and new_live_at_end.
+ (mark_set_1): Set bits either in cond_local_set or local_set, as
+ appropriate.
+ * basic-block.h (struct basic_block_def): New field cond_local_set.
+ (propagate_block, init_propagate_block_info): Update prototypes.
+
+Mon Nov 27 17:29:44 2000 kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * gcc/config/sh/sh.md (udivsi3_i4, udivsi3_i4_single): Clobber
+ T register.
+
+2000-11-27 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (select_dominance_cc_mode): Handle new way that combine
+ canonicalizes conditional compares.
+ (arm_select_cc_mode): Likewise.
+ * arm.md: Garbage collect some dead code.
+ (cmp_and, cmp_ior): New patterns.
+ (splitter for conditional move with inverted false): Use cond_exec
+ and handle unordered comparisons.
+
+Mon Nov 27 17:22:56 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_force_to_memory, ix86_free_from_memory): New.
+ * i386-protos.h (ix86_force_to_memory, ix86_free_from_memory): Declare
+ * i386.md (float?i?f, int/fp operations): Rewrite spliters to use
+ ix86_force_to_memory and ix86_free_from_memory.
+
+2000-11-27 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (arm_adddi3, adddi_sesidi_di, adddi_zesidi_di, arm_addsi3,
+ arm_subsi3_insn, anddi_zesidi_di, arm_andsi3_insn, anddi_notdi_di,
+ anddi_notzesidi_di, anddi_notsesidi_di, arm_iorsi3,
+ one_cmpldi2): Merge with splitters to create define_insn_and_split
+ patterns. Remove redundant splits.
+ (peephole2 for add:SI of invalid immediate): New.
+ (peephole2 for minus:SI of invalid immediate): New.
+ (peephole2 for ior:SI of invalid immediate): New.
+ (peephole for merge of move and compare): Convert ot peephole2.
+ (addsf3, adddf3): Mark as commutative.
+
+ * arm.md (thumb peephole for merging stack adjustments): Convert to
+ peephole2.
+
+2000-11-27 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * haifa-sched.c (print_pattern): Prettier output for COND_EXEC.
+
+ * reload1.c (reload_cse_simplify_set): Pass down mode to cselib_lookup.
+ (reload_cse_simplify_operands): Do nothing about operands where both
+ the operand and the match_operand fail to give us a mode.
+ * simplify-rtx.c (wrap_constant): New function.
+ (entry_and_rtx_equal_p): Except integer constants to come wrapped in a
+ CONST describing the proper mode.
+ (rtx_equal_for_cselib_p): Pass down modes to recursive calls of
+ cselib_lookup.
+ (cselib_lookup_mem): Call wrap_constant on the rtx that is passed to
+ htab_find_slot_with_hash.
+ (cselib_lookup): Likewise.
+
+ Based on a patch from Geoff Keating <geoffk@redhat.com>:
+ * loop.c (basic_induction_var): If a REG is set from something
+ that is not a biv, then the REG is not a biv. Even if it is
+ earlier set from something that is a biv.
+
+2000-11-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (extra_objs): Enclose extra_headers in quotes.
+ * configure: Rebuilt.
+
+2000-11-27 Neil Booth <neilb@earthling.net>
+
+ * c-lex.c (cb_enter_file, cb_leave_file, cb_rename_file):
+ Combine into the new function cb_change_file.
+ (init_c_lex): Update.
+ * cppfiles.c (stack_include_file): Use _cpp_do_file_change.
+ (cpp_syshdr_flags): Delete.
+ * cpphash.h (_cpp_do_file_change): New prototype.
+ Move struct cpp_buffer here from...
+ * cpplib.h (struct cpp_buffer): ... here.
+ (enum cpp_fc_reason, struct cpp_file_loc,
+ struct_cpp_file_change, change_file): New.
+ (enter_file, leave_file, rename_file, cpp_syshdr_flags): Delete.
+ * cpplib.c (do_line): Update for new cb_change_file callback.
+ (_cpp_do_file_change): New function.
+ (_cpp_pop_buffer): Update to use it.
+ * cppmain.c (move_printer): Delete.
+ (main): Set up single callback cb_change_file.
+ (cb_enter_file, cb_leave_file, cb_rename_file): Delete.
+ (cb_change_file): New.
+ * fix-header.c (cur_file, cb_change_file): New.
+ (recognized_function, read_scan_file): Update.
+ * scan-decls.c (scan_decls): Update.
+ * scan.h (recognized_function): Update prototype.
+
+2000-11-26 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.h (mark_tree_hashtable): New function.
+ * tree.c (mark_tree_hashtable_entry): New function.
+ (mark_tree_hashtable): Likewise.
+
+2000-11-27 Michael Meissner <meissner@redhat.com>
+
+ * d30v-protos.h (srelational_si_operator): Correctly spell
+ function.
+ (urelational_si_operator): Ditto.
+ (relational_si_operator): Ditto.
+ (d30v_expand_prologue): Add prototype.
+ (d30v_expand_epilogue): Ditto.
+
+ * d30v.h (OPTIMIZATION_OPTIONS): Undo November 22nd change.
+
+ * d30v.md (movcccc_*): Delete now unused patterns.
+ (64 bit comparison splitters): Rewrite to use COND_EXEC instead of
+ IF_THEN_ELSE.
+ (define_cond_exec): Use 'b' to select branch flags.
+
+2000-11-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strncmp, expand_builtin_strncpy): New
+ functions.
+ (expand_builtin): Handle BUILT_IN_STRNCPY and BUILT_IN_STRNCMP.
+
+ * builtins.def (BUILT_IN_STRNCPY, BUILT_IN_STRNCMP): New entries.
+
+ * c-common.c (c_common_nodes_and_builtins): Declare builtin
+ strncpy and strncmp.
+
+ * extend.texi (strncmp, strncpy): Document new builtins.
+
+2000-11-26 Mark Mitchell <mark@codesourcery.com>
+
+ * config/elfos.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not
+ a list, to keep track of the sections.
+ * tm.texi (ASM_OUTPUT_SECTION_NAME): Document the fact that the
+ parameter provided will always be a canonical string.
+
+2000-11-26 Neil Booth <neilb@earthling.net>
+
+ * cppmacro.c (cpp_scan_buffer_nooutput): Only scan the
+ current buffer.
+
+2000-11-26 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * makefile.vms: Remove EGCS references.
+
+2000-11-26 Ulrich Drepper <drepper@redhat.com>
+
+ * dwarf2out.c (output_file_names): New function. Compute minimal
+ combination of directory and file name table and emit them.
+ (output_line_info): Remove code to emit directory and file name
+ table and call output_file_names instead.
+ (file_info_cmp): Helper function to sort directory names.
+
+2000-11-26 Neil Booth <neilb@earthling.net>
+
+ * cpplib.h (struct cpp_reader): Remove lang_asm.
+ (struct cpp_options): Remove c89. New members lang,
+ extended_numbers.
+ * cppexp.c (parse_number): Use them.
+ * cpphash.h (VALID_SIGN): Use them.
+ * cppinit.c (set_lang, cpp_start_read): Update.
+ * cpplex.c (parse_string, _cpp_lex_token): Update.
+ * cpplib.c (_cpp_handle_directive): Update.
+ * cppmacro.c (parse_args): Update.
+ * cppmain.c (scan_buffer): Update.
+
+Sun Nov 26 10:02:37 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * fold-const.c (fold, case CONVERT_EXPR): Always return tree of
+ proper type.
+
+2000-11-26 Neil Booth <neilb@earthling.net>
+
+ * Makefile.in: Remove MAYBE_CPPLIB and maybe_cpplib.
+ * c-decl.c: Remove parse_in declaration.
+ * c-lang.c: Similarly.
+ * c-lex.c: Similarly.
+ * c-parse.in: Similarly.
+ * c-pragma.c: Similarly.
+ * configure.in: Similarly.
+ * cp/Make-lang.in: Similarly.
+ * cp/spew.c: Similarly.
+ * cp/decl2.c: Remove check for lang-c++ option.
+ * cp/lang-specs.h: Remove -lang-c++ from cc1plus command line.
+ * cp/lex.c (lang_init_options): With cpp_reader_init, default to C++.
+ * c-lex.h: Add declaration of parse_in.
+ * cppinit.c: Call set_lang after allocating pfile->pending.
+ * configure: Regenerate.
+
+2000-11-25 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * combine.c (try_combine): Remove redundant test.
+
+2000-11-25 Richard Henderson <rth@redhat.com>
+
+ * c-common.h (DECL_C_HARD_REGISTER): New.
+ * c-decl.c (finish_decl): Set it for asm register variables.
+ * c-semantics.c (emit_local_var): Test it when instantiating one.
+
+2000-11-25 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (c_expand_body): Use DECL_SOURCE_LINE rather than
+ lineno for the start of the function.
+
+2000-11-25 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (file_table, file_table_allocated): Remove.
+ (file_table_allocated): Remove.
+ (struct file_table): New.
+ (decl_file_table, line_file_table): New.
+ (print_dwarf_line_table): Use them.
+ (size_of_line_prolog): Likewise.
+ (output_line_info): Likewise.
+ (add_src_coords_attributes): Likewise.
+ (gen_subprogram_die): Likewise.
+ (gen_variable_die): Likewise.
+ (dwarf2out_add_library_unit_info): Likewise.
+ (dwarf2out_line): Likewise.
+ (lookup_filename): Take a struct file_table argument.
+ (init_file_table): New.
+ (dwarf2out_init): Use it.
+
+2000-11-25 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Update sequence points references.
+
+2000-11-25 Neil Booth <neilb@earthling.net>
+
+ * c-common.c: Remove USE_CPPLIB conditional inclusions.
+ * c-common.h: Similarly.
+ * c-decl.c: Similarly.
+ * c-lang.c: Similarly.
+ * c-lex.c: Similarly.
+ * c-parse.in: Similarly.
+ * c-pragma.c: Similarly.
+ * c-pragma.h: Similarly.
+ * gcc.c: Similarly.
+ * toplev.c: Similarly.
+ * cp/cp-tree.h: Similarly.
+ * cp/decl2.c: Similarly.
+ * cp/lang-specs.h: Similarly.
+ * cp/lex.c: Similarly.
+ * cp/lex.h: Similarly.
+ * cp/spew.c: Similarly.
+ * java/lang-options.h: Similarly.
+ * objc/lang-specs.h: Similarly.
+ * objc/objc-act.c: Similarly.
+
+ * configure.in: Remove configure option.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+
+2000-11-25 Richard Henderson <rth@redhat.com>
+
+ * haifa-sched.c (sched_analyze_1, sched_analyze_2, sched_analyze):
+ Revert 2000-11-22 change.
+
+2000-11-25 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * config/i386/i386.h (FIXED_REGS): Make the three flags registers
+ fixed.
+
+2000-11-25 Philipp Thomas <pthomas@suse.de>
+ * configure.in (ALL_LINGUAS): Remove en_GB and add sv.
+ * configure: Rebuilt.
+
+2000-11-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.md (muldi3_v8plus): Remove H constraint.
+ Handle CONST_INT as second argument.
+ * config/sparc/sparc.c (set_extends): Remove first argument.
+ Properly handle AND, CONST_INT and CONST_DOUBLE, handle IOR, XOR and
+ MOV.
+ (sparc_check_64): Abort if first argument is not REG.
+ If it is DImode REG, look at the lower register of the register
+ pair.
+
+ * config/sparc/sparc.c (load_pic_register, restore_regs,
+ output_return, sparc_v8plus_shift, sparc_function_profiler,
+ sparc_function_block_profiler, sparc_block_profiler): Fix output
+ formatting.
+
+2000-11-25 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (TARGET_NONE): New.
+ (TARGET_SWITCHES): For all variant-selecting switch, use
+ TARGET_NONE to reset all other variant-selecting switch. Added
+ empty strings to avoid warnings.
+ (TARGET_DEFAULT): Set to SH1_BIT.
+
+ * Makefile.in ($(INTL_TARGETS)): Added $(CONFIG_H) for
+ insn-codes.h.
+
+ * gcc/config/sh/sh.md (sibcalli, sibcalli_pcrel): New insns.
+ (sibcall_pcrel): New insn_and_split.
+ (sibcall, sibcall_value, sibcall_epilogue): New expands.
+
+ * config/sh/sh.md (GOTaddr2picreg, symGOT2reg, symGOTOFF2reg,
+ symPLT_label2reg, call, call_value): Don't set
+ current_function_uses_pic_offset_table.
+ * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Don't mark
+ PIC_OFFSET_TABLE_REGNUM as call_used, so that calc_live_regs
+ takes it into account.
+ (FINALIZE_PIC): Delete, useless.
+ (LEGITIMATE_CONSTANT_P): Delete, unused.
+ * config/sh/sh.c (sh_expand_prologue): Don't use
+ current_function_uses_pic_offset_table. Don't special-case
+ PIC_OFFSET_TABLE_REGNUM. Initialize it if it's ever live and
+ PIC is enabled.
+ (sh_expand_epilogue, initial_elimination_offset): Don't
+ special case PIC_OFFSET_TABLE_REGNUM.
+
+2000-11-25 Alexandre Oliva <aoliva@redhat.com>, NIIBE Yutaka <gniibe@m17n.org>
+
+ * config/sh/sh-protos.h (symbol_ref_operand): Declare.
+ * config/sh/sh.md (UNSPEC_CALLER): New constant.
+ (calli_pcrel, call_valuei_pcrel): Use PIC_REG.
+ (call_pcrel, call_value_pcrel): New insn_and_splits.
+ (call, call_value): Use them.
+ (call_site): New expand.
+ (sym_label2reg, symPLT_label2reg): Adjust to hold call_sites.
+ * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA) [UNSPEC_CALLER]:
+ Output call_site label.
+ (PREDICATE_CODES): Added symbol_ref_operand.
+ * config/sh/sh.c (symbol_ref_operand): Define.
+ * emit-rtl.c (try_split): Propagate CALL_INSN_FUNCTION_USAGE
+ to CALL_INSNs in the split sequence.
+
+2000-11-24 Nick Clifton <nickc@redhat.com>
+
+ * config.gcc (v850-*-*): Define c_target_objs and
+ cxx_target_objs.
+
+ * config/v850/t-v850: Define how to build v850-c.o
+
+ * config/v850/v850.h (struct data_area_stack_element): Move
+ definition here from v850.c.
+
+ * config/v850v850.c: Include gcc.h to avoid compile time
+ warning.
+ (push_data_area): Move to v850-c.c.
+ (pop_data_area): Move to v850-c.c.
+ (mark_current_function_as_interrupt): Move to v850-c.c.
+ (GHS_default_section_names): Allow to be exported.
+ (GHS_current_section_names): Allow to be exported.
+ (data_area_stack_elements): Allow to be exported.
+ (ghs_pragma_section): Move to v850-c.c.
+ (ghs_pragma_interrupt): Move to v850-c.c.
+ (ghs_pragma_starttda): Move to v850-c.c.
+ (ghs_pragma_startsda): Move to v850-c.c.
+ (ghs_pragma_startzda): Move to v850-c.c.
+ (ghs_pragma_endtda): Move to v850-c.c.
+ (ghs_pragma_endsda): Move to v850-c.c.
+ (ghs_pragma_endzda): Move to v850-c.c.
+
+ * config/v850/v850-c.c: New file: Contains v850 specific
+ pragma parsing functions.
+
+2000-11-24 Nick Clifton <nickc@redhat.com>
+
+ * config.gcc (extra_objs): Remove duplicate description.
+ (c_target_objs): New variable. Contains target specific
+ object files for the gcc C compiler only.
+ (cxx_target_objs): New variable. Contains target specific
+ object files for the gxx C++ compiler only.
+
+ * configure.in (c_target_objs): Substitute in the makefile.
+ (cxx_target_objs): Substitute in the makefile.
+ * configure: Regenerate.
+
+ * Makefile.in (C_TARGET_OBJS): Define and initialize from
+ c_target_objs.
+ (CXX_TARGET_OBJS): Define and initialize from
+ cxx_target_objs.
+ (C_AND_OBJC_OBJS): Include C_TARGET_OBJS.
+
+ * cp/Make-lang.in (CXX_C_OBJS): Include CXX_TARGET_OBJS).
+
+ * tm.texi (REGISTER_TARGET_PRAGMAS): Add paragraph explaining
+ about how the use of the 'c_lex' function requires the use of
+ the target specific, language specific object files feature of
+ the configuration mechanism.
+
+Fri Nov 24 18:50:58 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * gcc.c (process_command): Use F_OK, not R_OK.
+
+2000-11-24 Arno J. Klaassen <arno@heho.snv.jussieu.fr>
+
+ * flow.c (print_rtl_and_abort): Remove ANSIism.
+
+Fri Nov 24 19:54:36 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (GENERAL_REGISTER_P,
+ GENERAL_OR_AP_REGISTER_P, FP_REGISTER_P, XD_REGISTER_P,
+ FP_OR_XD_REGISTER_P, FP_ANY_REGISTER_P): New macros. Use them
+ all over.
+ (SPECIAL_REG): Renamed to SPECIAL_REGISTER_P.
+ * config/sh/sh.c: Use new macros.
+ * config/sh/sh.md: Likewise.
+
+Fri Nov 24 19:46:16 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md: Clobber MACH_REG and MACL_REG in SImode,
+ instead of just MACH_REG in DImode. Always refer to FPSCR_REG
+ in PSImode.
+
+Fri Nov 24 22:37:41 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.c (out_tsthi,out_tstsi): Test simplification bug
+ fixed.
+ (machine_dependent_reorg): Wrong optimization based on
+ NOTICE_UPDATE_CC removed.
+
+Fri Nov 24 19:48:09 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * jump.c (delete_computation): Re-instate deletion of feeding insn.
+ (delete_insn): Look for REG_LABEL notes.
+ (redirect_tablejump): Delete feeding insns.
+
+2000-11-24 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * config/i386/i386.md (call_pop_0, call_pop_1, call_value_pop_0,
+ call_value_pop_1): Make sure operand numbers are contiguous.
+
+ * fold-const.c (fold_range_test): Avoid crash if LHS or RHS is null.
+
+ * reload1.c (conflicts_with_override): New function.
+ (emit_input_reload_insns): Use it to tighten test for validity
+ of substituting into output of previous insn.
+
+ * haifa-sched.c (struct ready_list): New.
+ (ready_lastpos, ready_add, ready_remove_first, ready_sort): New static
+ functions.
+ (schedule_insn): Replace args READY and N_READY with a pointer to a
+ ready_list; return void. Use the new functions to access the ready
+ list. All callers changed.
+ (queue_to_ready, debug_ready_list): Likewise.
+ (schedule_block): Initialize a ready_list structure. Use new
+ functions to access it.
+ (max_priority): Remove unused variable.
+ (schedule_insn): Don't set it.
+
+ * c-common.c (verify_tree): Don't recurse into CONSTRUCTORs.
+
+ * combine.c (cant_combine_insn_p): New function.
+ (try_combine): Use it.
+
+ * Makefile.in (c-common.o): Depend on $(OBSTACK_H).
+ * c-common.c (c-obstack.c): Include "obstack.h".
+ (struct reverse_tree): Delete.
+ (reverse_list, reverse_max_depth): Delete.
+ (build_reverse_tree, common_ancestor, modify_ok): Delete functions.
+ (struct tlist, struct tlist_cache): New.
+ (tlist_obstack, tlist_firstobj, warned_ids, save_expr_cache): New.
+ (add_tlist, merge_tlist, verify_tree, warning_candidate_p,
+ warn_for_collisions, warn_for_collisions_1, new_tlist): New
+ static functions.
+ (verify_sequence_points): Rewritten.
+ * fold-const.c (fold): Don't lose possibly important sequence
+ points when removing one arm of TRUTH_ORIF_EXPRs or TRUTH_ANDIF_EXPRs.
+
+2000-11-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * gcc/cse.c (cse_insn): Removed conversion of REG_EQUIV to REG_EQUAL
+ when reversing a register-to-register copy. Reversal now disabled
+ when the previous instruction has a REG_EQUIV.
+
+2000-11-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-parse.in (unary_expr): Move VA_ARG from here ...
+ (primary): ... to here.
+
+2000-11-23 Graham Stott <grahams@redhat.com>
+
+ * expr.c (store_constructor): If a field is non addressable and
+ the target is a MEM use MEM_ALIAS_SET otherwise use get_alias_set.
+
+2000-11-23 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * flow.c (print_rtl_and_abort): New function.
+ (verify_wide_reg, verify_local_live_at_start): Try to dump more
+ information before aborting.
+
+2000-11-23 Alexandre Oliva <aoliva@redhat.com>
+
+ * emit-rtl.c (gen_lowpart_common): Use word 0 if register mode
+ is narrower than requested mode.
+ (gen_highpart): Abort if register mode is narrower than
+ requested mode.
+
+2000-11-23 Graham Stott <grahams@redhat.com>
+
+ * cse.c (cse_insn): Initialize all regcost variables.
+ Fix a typo add missing '='.
+ Only compare costs if there is a replacement insn.
+
+Thu Nov 23 04:33:33 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * final.c (output_addr_const) [LABEL_REF]: Simplify.
+ [MINUS]: Enclose non-CONST_INTs in parentheses.
+ [default]: Try OUTPUT_ADDR_CONST_EXTRA.
+ * tm.texi (OUTPUT_ADDR_CONST_EXTRA): Document it.
+ * varasm.c (decode_rtx_const) [CONST]: If it's not something
+ PLUS or MINUS a CONST_INT, use the whole CONST with offset 0
+ instead of abort()ing.
+ * sh.c (output_pic_addr_const): Removed. Fixed all callers.
+ * sh.h (OUTPUT_ADDR_CONST_EXTRA): New. Handle the UNSPECs
+ formerly handled in output_pic_addr_const.
+ * sh.md (sym_label2reg, symPLT_label2reg): Enclose UNSPEC
+ operands of MINUS in CONSTs so that decode_rtx_const() will
+ accept them.
+
+Thu Nov 23 04:10:30 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (mova_const): New pattern.
+ (GOTaddr2picreg): Use it.
+ * config/sh/sh.c (broken_move): Match it.
+ (mova_p): Don't match it.
+ (machine_dependent_reorg): Adjust it.
+
+Thu Nov 23 02:09:09 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (FIRST_GENERAL_REG, LAST_GENERAL_REG): New.
+ Moved most register-number #defines...
+ * config/sh/sh.md (define_constants): ... here. Use macros to
+ refer to registers and unspecs.
+ * config/sh/sh.c: Likewise.
+
+Thu Nov 23 01:01:32 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * Makefile.in (HOST_CFLAGS): Add -DGENERATOR_FILE.
+ (rtl.o, print-rtl.o, bitmap.o, obstack.o): Build with -DGENERATOR_FILE.
+ (alloca.o, vfprintf.o, ggc-none.o, errors.o): Likewise.
+ (splay-tree.o, hash.o): Likewise.
+ GCONFIG_H: New.
+ (rtl.o, print-rtl.o): Depend on $(GCONFIG_H) instead of $(CONFIG_H).
+ (bitmap.o, obstack.o, vfprintf.o, ggc-none.o, errors.o): Likewise.
+ (hashtab.o): Likewise.
+ (gcov.o): Depend on $(CONFIG_H).
+ * configure.in: #include insn-codes.h in tm.h.
+
+2000-11-22 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (arm_encode_call_attribute): Make 'newstr' a
+ const char * to avoid a compile time warning.
+
+ * config/arm/arm.md (define_constants): Define symbolic names for
+ the link register, last integer register and the fake CC register.
+ Update patterns to use these symbolic names.
+
+2000-11-22 Neil Booth <neilb@earthling.net>
+
+ * cpplex.c (trigraph_ok): Ensure we don't warn twice.
+ * cpplib.h (struct cpp_buffer): New member last_Wtrigraphs.
+
+2000-11-22 Richard Henderson <rth@redhat.com>
+
+ * haifa-sched.c (sched_analyze_1): Don't special-case calls
+ for clobbering registers.
+ (sched_analyze_2): Likewise.
+ (sched_analyze): Zap reg_last_uses and reg_last_sets after calls.
+
+2000-11-22 Chris Demetriou <cgd@sibyte.com>
+ Neil Booth <neilb@earthling.net>
+
+ * gcc.c (validate_switches): Validate multiple switches named
+ in '|' (or) expressions in specs.
+ (handle_braces): If more than 1 alternative in a '|' spec
+ matches, call do_spec1 just once.
+
+2000-11-22 Michael Meissner <meissner@redhat.com>
+
+ * d30v.h (TARGET_SWITCHES): Add documentation strings.
+ (TARGET_OPTIONS): Ditto.
+ (OPTIMIZATION_OPTIONS): Temporarily turn off -frename-registers if
+ -O3.
+
+Wed Nov 22 06:40:56 2000 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (hppa_encode_label): Account for addition of encoding
+ character when allocating persistent space for the new label
+ name.
+
+2000-11-22 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * Makefile.in, config.gcc, configure.in: Expunge remaining
+ traces of facility for running MD files through C preprocessor.
+
+2000-11-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcov.texi: Add magic comments for texi2pod.pl.
+ * Makefile.in: Add rules to generate and install gcov.1.
+ * gcov.1: New (generated) file.
+
+2000-11-21 Richard Henderson <rth@redhat.com>
+
+ * regrename.c (scan_rtx_reg): Terminate the chain rather than
+ abort on mark_read with NO_REGS.
+
+2000-11-21 Mike Stump <mrs@wrs.com>
+
+ * fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow
+ compilation with older compilers, such as /bin/cc on SunOS.
+ * fixinc/fixfixes.c (FIX_PROC_HEAD): Ditto.
+
+2000-11-21 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (record_constant): Pad the constructed
+ constant_descriptor appropriately.
+
+Wed Nov 22 00:52:55 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * rtl.h (traverse_md_constants): Declare.
+ (struct md_constant): Define.
+ * Makefile.in (HOST_RTL): Add hashtab.o .
+ (OBJS): Add hashtab.o .
+ (hashtab.o): New rule.
+ (rtl.o): Depends on HASHTAB_H.
+ * rtl.c (hashtab.h): #include.
+ (md_constants): New static variable.
+ (def_hash, def_name_eq_p, read_constants): New static functions.
+ (traverse_md_constants): New function.
+ (read_name): Do constant expansion.
+ (read_rtx): Recognize define_constants.
+ * gencodes.c (print_md_constant): New function.
+ (main): Emit #defines for all constant definitions encountered.
+ * md.texi (Constant Definitions): New node.
+ * gensupport.c (xcalloc): New function.
+
+2000-11-21 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_split_tfmode_frobsign): New.
+ * config/alpha/alpha-protos.h: Declare it.
+ * config/alpha/alpha.md (abstf_internal): Use it.
+ (negtf_internal): Likewise.
+ (andnotdi3): Unstar the name.
+ (movtf_internal): Add o/G alternative.
+
+2000-11-21 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * stringpool.c (stringpool_statistics): Also report number and
+ percentage of entries which are identifiers.
+
+2000-11-21 Diego Novillo <dnovillo@redhat.com>
+
+ * gcse.c (hoist_expr_reaches_here_p): Do not mark expr_bb as
+ visited before visiting it.
+
+2000-11-21 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.h: Accept TARGET_CPU_arm9tdmi,
+ TARGET_CPU_strongarm110 and TARGET_SPU_strongarm1100.
+
+ * config.gcc: Accept --with-cpu=arm9 and --with-cpu=arm9tdmi.
+
+2000-11-21 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (c_unsafe_for_reeval): New function.
+ (add_c_tree_codes): Register it.
+ * c-common.h: Declare it.
+ * tree.c (lang_unsafe_for_reeval): New hook.
+ (unsafe_for_reeval): Call it.
+ * tree.h: Declare it.
+
+2000-11-21 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (i386_simplify_dwarf_addr): Simplify @GOT
+ references as well.
+
+2000-11-21 Neil Booth <neilb@earthling.net>
+
+ * do_includes: Revert to using cpp_read_file.
+
+2000-11-21 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * loop.c (consec_sets_giv): If the reg we're examining is anything
+ but UNKNOWN_INDUCT, do nothing.
+ Reset the reg's type to UNKNOWN_INDUCT before returning.
+
+ Mostly from Vladimir Makarov (vmakarov@redhat.com)
+ * ia64.md (attr itanium_class): Define insn types as described in
+ Itanium docs.
+ (all insn patterns): Use itanium_class, not type attributes.
+ Occasionally split alternatives as necessary.
+ (attr type): Compute from new attr itanium_class.
+
+2000-11-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * tradcpp.c (output_line_command): Mark system headers as such in
+ `line' commands.
+
+2000-11-21 Jakub Jelinek <jakub@redhat.com>
+
+ * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): SPARC has .file/.loc
+ support in as as well.
+ * configure: Regenerate.
+
+2000-11-20 Richard Henderson <rth@redhat.com>
+
+ * c-lex.c (orig_filename): New variable.
+ (init_c_lex): Set it. Move call to cpp_start_read ...
+ (yyparse): ... here. New function.
+ * c-parse.in (yyparse_1): Rename the parser entry point.
+ * c-tree.h: Declare it.
+
+2000-11-21 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (do_compare_and_jump): If op0 was replaced by promoted
+ integer constant, use type of op1 for comparison.
+
+2000-11-20 Stan Shebs <shebs@apple.com>
+
+ * config/rs6000/xm-darwin.h: New file, Darwin host definitions.
+ * config/rs6000/x-darwin: New file, Darwin host fragment.
+ * config.gcc (powerpc-*-darwin*): New host.
+ * system.h (HAVE_DESIGNATED_INITIALIZERS): Allow this to be
+ overridden by a config file.
+
+2000-11-20 Neil Booth <neilb@earthling.net>
+
+ * cppmacro.c (paste_tokens): Rename from paste_payloads.
+ Change token type after pasting spellings.
+ (paste_all_tokens): Use it.
+ * gcc.dg/cpp/paste2.c: Update test.
+ * objc/execute/paste.m: New test.
+
+2000-11-20 Richard Henderson <rth@redhat.com>
+
+ * dwarf.h (FMT_CODE): Adjust argument order; fix mapping to
+ dwarf_subscr_data_formats bits.
+ * dwarfout.c (simple_type_size_in_bits): Handle a type with
+ no computed size as size zero.
+ (field_byte_offset): Likewise.
+ (subscript_data_attribute): Handle a range with no upper bound.
+
+2000-11-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gansidecl.h (const): Check __STDC__ before undef'ing `const'.
+
+2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-typeck.c (build_conditional_expr): When merging type
+ qualifiers for conditional expressions between a pointer and a
+ pointer to a void type, merge the qualifiers on the target types
+ rather than the pointer type. Remove obsolete conditioned out
+ code.
+
+2000-11-20 Neil Booth <neilb@earthling.net>
+
+ * c-lang.c (lang_init_options): Update call to
+ cpp_reader_init.
+ * cppmain.c (main): Similarly.
+ * fix-header.c (read_scan_file): Similarly.
+ * cp/lex.c (lang_init_options): Similarly.
+ * objc/objc-act.c (lang_init_options): Similarly.
+ * cppexp.c (parse_number): Only warn for unextended C89.
+ * cppinit.c (set_lang): New function.
+ (cpp_reader_init): Take a LANG argument and pass it to set_lang.
+ (COMMAND_LINE_OPTIONS): New option std=c++98.
+ (cpp_handle_option): Use set_lang.
+ * cpplex.c (_cpp_lex_token): Warn pedantically if not C99.
+ * cppib.h (enum_c_lang): New enumeration. Update comments.
+
+2000-11-20 Will Cohen <wcohen@redhat.com>
+
+ * calls.c (expand_call): Clear target only when target is in
+ hard register and current_function_check_memory_usage is set.
+
+2000-11-20 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * toplev.c (rest_of_compilation): Run optimize_mode_switching even
+ if not optimizing.
+ * sh.c (emit_sf_insn, emit_df_insn): Just call emit_insn.
+
+2000-11-19 Richard Henderson <rth@redhat.com>
+
+ * crtstuff.c (force_to_data): Use array size 1 not 0.
+
+ * dwarf2out.c (simple_type_size_in_bits): Handle a type with
+ no computed size as size zero.
+ (field_byte_offset): Likewise.
+
+2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * config.gcc: Fix another typo.
+
+2000-11-19 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (grokdeclarator): Support flexible array members.
+ Use open-ended ranges for these and zero-length arrays.
+ * c-typeck.c (push_init_level): Validate the context of
+ initialization of a zero-length array.
+ * tree.c (int_fits_type_p): Be prepared for missing bounds.
+ * varasm.c (array_size_for_constructor): New.
+ (output_constructor): Use it for arrays of unspecified length.
+ * extend.texi (Zero Length): Mention C99 flexible array members.
+ Document initialization in a top-level struct as valid.
+
+2000-11-19 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * config.gcc, invoke.texi: Fix errors in spelling of "deprecated".
+
+ * alias.c (mems_in_disjoint_alias_sets_p): Do use alias sets in
+ stdarg and varargs functions.
+
+2000-11-19 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * gcc.c (process_command): Define 'j' variable when
+ MODIFY_TARGET_NAME is defined.
+
+2000-11-19 Richard Henderson <rth@redhat.com>
+
+ * stor-layout.c (variable_size): Only put SAVE_EXPRs on pending_sizes.
+
+2000-11-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000/rs6000.c (rs6000_encode_section_info): Fix string length
+ calculation and allocation.
+
+2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (c_getstr): Constify variable.
+ * gmon-sol2.c (_mcleanup): Comment out #endif labels.
+ * conflict.c (const_conflict_graph_arc): New typedef.
+ (arc_hash, arc_eq): Avoid needlessly casting away const-ness.
+ * cppmacro.c (builtin_macro): Likewise.
+ * dwarf2out.c (output_comp_unit): Constify variable.
+ * fix-header.c (v_fatal): Add ATTRIBUTE_PRINTF.
+ * protoize.c (IS_SAME_PATH_CHAR): Use TOUPPER, not toupper.
+ * ssa.c (ssa_rename_from_hash_function): Avoid needlessly casting
+ away const-ness.
+ * tradcpp.c (rescan, do_line, macroexpand, macarg): Use
+ ISALNUM/ISDIGIT/ISPRINT, not isalnum/isdigit/isprint.
+ * varasm.c (const_str_htab_hash, const_str_htab_eq,
+ compare_constant_1, record_constant_1): Constify.
+
+2000-11-18 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (grokdeclarator): Special case the creation of an
+ index for a zero-length array.
+ * tree.c (build_index_type): Revert Oct 20 change.
+
+2000-11-18 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr-protos.h (avr_output_addr_vec_elt): Prototype.
+ * config/avr/avr.c (jump_tables_size): New variable.
+ (function_prologue): Initialize it as 0.
+ (function_epilogue): Add it to function_size.
+ (avr_output_addr_vec_elt): New function. Count words in jump
+ tables in jump_tables_size. Move code ...
+ * config/avr/avr.h (ASM_OUTPUT_ADDR_VEC_ELT): ... from here.
+ Call avr_output_addr_vec_elt instead.
+ * config/avr/avr.md (tablejump): Remove disabled define_expand.
+
+2000-11-18 Mark Mitchell <mark@codesourcery.com>
+
+ * configure.in: Make --enable-new-gxx-abi the default.
+ * configure: Likewise.
+
+2000-11-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (tradcpp.o, tradcif.o): Depend on tradcpp.h.
+
+ * tradcif.y: Include tradcpp.h. Constify. Make functions static.
+ Move extern function declarations to tradcpp.h.
+
+ * tradcpp.c: Likewise.
+
+ * tradcpp.h: New file.
+
+2000-11-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (check_for_loop_decls): New function.
+ * c-parse.in (for_init_stmt): New.
+ (select_or_iter_stmt): Use for_init_stmt.
+ * c-tree.h (check_for_loop_decls): New declaration.
+
+2000-11-18 Neil Booth <neilb@earthling.net>
+
+ * cppinit.c: Update comments.
+ (cpp_reader_init): Make -imacro and -include use the standard
+ #include "" search path.
+ (do_includes): New function.
+
+2000-11-18 Ben Elliston <bje@redhat.com>
+
+ * config/sh/crt1.asm (start_l): Move PC-relative move instruction
+ out of a branch delay slot.
+
+2000-11-17 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/elf.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
+ (ASM_SPEC): Disable and enable .mdebug based on -gstabs.
+ (ASM_FILE_START): Only write out ecoff .file directive if
+ emitting mdebug debugging.
+
+2000-11-17 Richard Henderson <rth@redhat.com>
+
+ * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): New. Detect
+ whether as accepts .file/.loc and produces dwarf2 line info.
+ * dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Default on if
+ the assembler supports it.
+ * config.in, configure: Regenerate.
+
+2000-11-17 Richard Henderson <rth@redhat.com>
+
+ * fixinc/mkfixinc.sh: Don't disable fixincludes for any linux*.
+
+2000-11-17 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.c (emit_insn_group_barriers, case CALL_INSN):
+ Don't clear need_barrier is next_insn is a CALL_INSN, or has
+ instruction type B or UNKNOWN.
+
+2000-11-17 Neil Booth <neilb@earthling.net>
+
+ * cpperror.c (print_file_and_line): Don't display line number if 0.
+
+2000-11-17 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * ggc.h: Delete ggc_add_string_root and ggc_mark_string. Add
+ digit_vector and digit_string.
+ * stringpool.c (digit_vector): New.
+ (ggc_alloc_string): Use digit_string.
+
+ * stmt.c (digit_strings): Delete.
+ (init_stmt): Do not initialize digit_strings.
+ (expand_asm_operands): Use ggc.h's digit_string macro.
+ * toplev.c (mark_file_stack): Delete.
+ (compile_file): Don't call init_tree_codes.
+ (main): No need to make the file stack a GC root.
+ * tree.c (init_tree_codes): Delete.
+ * tree.h (init_tree_codes): Delete.
+
+ * c-lex.c: Don't include ggc.h.
+ (mark_splay_tree_node, mark_splay_tree): Delete.
+ (init_c_lex): No need to ggc_strdup string constant. Don't add
+ file_info_tree to GGC roots.
+ (cb_enter_file, cb_rename_file): No need to ggc_strdup
+ ip->nominal_fname.
+
+ * Makefile.in (c-lex.o): No longer depends on $(GGC_H).
+
+ * dbxout.c (dbxout_init),
+ dwarf2out.c (dwarf2out_line),
+ ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees),
+ varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once),
+ xcoffout.c (xcoffout_source_file),
+ i386.c (load_pic_register):
+ Delete call(s) to ggc_add_string_root and/or ggc_mark_string.
+
+ * except.c (create_rethrow_ref),
+ profile.c (init_edge_profiler),
+ toplev.c (compile_file),
+ varasm.c (named_section, assemble_static_space,
+ assemble_trampoline_template, output_constant_def, force_const_mem),
+ i386.c (load_pic_register),
+ ia64.c (ia64_encode_section_info),
+ rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference,
+ rs6000_emit_prologue, rs6000_emit_epilogue),
+ rs6000.md (load_toc_aix_si, load_toc_aix_di):
+ Change ggc_alloc_string (var, -1) to ggc_strdup (var).
+
+ * profile.c (output_func_start_profiler),
+ tree.c (make_node),
+ i386.c (load_pic_register): No need to ggc_strdup string constant.
+
+2000-11-17 Hans-Peter Nilsson <hp@axis.com>
+
+ * Makefile.in (config.status): Depend on config.gcc.
+ * configure.in <for machine in $build $host $target>: Move
+ contents of loop into config.gcc, removing autoconf quoting.
+ Fix changequote bug for alpha*-*-vxworks*.
+ * configure: Regenerate.
+ * config.gcc: New.
+
+2000-11-16 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * c-parse.in (if_prefix): Find the filename and line number at
+ $-2 and $-1 respectively.
+ * diagnostic.c (error_recursion): Add missing newline, use
+ fputs, translate string.
+
+2000-11-16 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * stringpool.c: New file.
+ * ggc-common.c (ggc_mark_string_ptr, ggc_add_string_root): Delete.
+ (ggc_alloc_string): Now in stringpool.o.
+ * ggc-page.c, ggc-simple.c: Do not define or allocate empty_string.
+ * ggc.h: Delete prototype of ggc_add_string_root. #define
+ ggc_add_string_root and ggc_mark_string to nothing. Prototype
+ init_stringpool and stringpool_statistics.
+ (ggc_alloc_string): Returns a const char *.
+ * tree.c (hash_table, do_identifier_warnings): Delete.
+ (init_obstacks): Don't initialize the identifier hash table.
+ (get_identifier, maybe_get_identifier, start_identifier_warnings,
+ set_identifier_size): Now in stringpool.c.
+ * tree.h (struct tree_string): Constify pointer field.
+ (approx_sqrt): Prototype.
+
+ * Makefile.in (stringpool.o): Add rule, mention in OBJS.
+
+ * toplev.c (approx_sqrt): New function.
+ (compile_file): Call stringpool_statistics if mem_report is on.
+ (main): Call init_stringpool.
+
+ * builtins.c (c_strlen), c-decl.c (finish_decl), c-lex.c
+ (process_directive), c-typeck.c (constructor_asmspec, struct
+ initializer_stack, start_init), except.c (create_rethrow_ref),
+ stmt.c (digit_strings), toplev.c (decode_f_option), tree.c
+ (built_in_filename), varasm,c (in_named_name,
+ assemble_static_space, struct constant_descriptor, struct
+ deferred_string, struct pool_constant, force_const_mem),
+ i386.c (pic_label_name, global_offset_table_name), rs6000.c
+ (rs6000_emit_prologue, rs6000_emit_epilogue) : Constify a char *.
+
+ * c-common.c (combine_strings): Combine strings in scratch
+ buffer, then pass to build_string.
+ * optabs.c (init_libfuncs), profile.c (init_edge_profiler,
+ output_func_start_profiler), stmt.c (init_stmt), alpha.c
+ (alpha_need_linkage), arm.c (arm_encode_call_attribute),
+ i386.c (load_pic_register), ia64.c (ia64_encode_section_info),
+ rs6000.c (rs6000_encode_section_info): Create string in
+ scratch buffer, then pass to ggc_alloc_string.
+
+ * stmt.c (expand_asm_operands): If we must adjust the
+ constraint strings, do so by creating a new one, not by
+ modifying the old one in place. Constify some char *s.
+ * config/pa/pa.c (hppa_encode_label): Drop unnecessary second
+ argument. Create string in scratch buffer, then pass to
+ ggc_alloc_string.
+ * config/pa/pa-protos.h: Update prototype.
+ * config/pa/elf.h, config/pa/pa.h, config/pa/som.h:
+ hppa_encode_label takes only one argument.
+
+2000-11-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mcore.c (mcore_expand_prolog): Call xmalloc/xrealloc, not
+ malloc/realloc.
+
+ * cpplib.c (glue_header_name): Likewise.
+
+ * fixincl.c (run_compiles, start_fixer): Likewise.
+
+ * fixlib.c (load_file_data): Likewise.
+
+ * mkdeps.c (munge): Likewise.
+
+2000-11-17 Hans-Peter Nilsson <hp@axis.com>
+
+ * defaults.h [EH_FRAME_SECTION_ASM_OP] (EH_FRAME_SECTION): Remove
+ trailing ';'. Fix formatting.
+
+2000-11-16 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.h (MASK_INLINE_DIV_LAT, MASK_INLINE_DIV_THR):
+ Shift masks left by one to avoid conflict.
+
+ * config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with
+ DECL_EXTERNAL set.
+
+2000-11-16 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (output_arm_prologue): Note nested functions.
+ (arm_expand_prologue): For nested functions preserve the
+ static chain register during stack frame creation.
+
+ * config/arm/arm.h (STATIC_CHAIN_REGNUM): Change to 12.
+ (ARM_INITIAL_FRAME_ELIMINATION_OFFSET): For a nested function
+ with a stack frame there is a 4 byte gap between the arg
+ pointer and the hard frame pointer (used to preserve the
+ static chain register during stack frame creation).
+
+2000-11-16 DJ Delorie <dj@redhat.com>
+
+ * rtl.c (read_rtx): Provide suitable names for unnamed
+ define_insn and define_insn_and_split patterns, based on file
+ and line numbers.
+
+2000-11-15 Neil Booth <neilb@earthling.net>
+
+ * cpplib.c (start_directive, end_directive): New functions.
+ (_cpp_handle_directive, run_directive): Use them.
+ (_cpp_handle_directive): Don't -Wtraditional on indented
+ null directives.
+ (_cpp_push_buffer): Don't re-clear was_skipping.
+ * cpplib.h (struct cpp_reader): New member la_saved.
+ * cppmacro.c (cpp_get_token): Don't interpret _Pragma in
+ directives.
+
+ gcc.dg/cpp/_Pragma1.c: Update.
+ gcc.dg/cpp/_Pragma2.c: New test.
+
+2000-11-15 Mark Mitchell <mark@codesourcery.com>
+
+ * toplev.c (wrapup_global_declarations): Don't write out
+ artificial static variables that aren't needed.
+
+2000-11-15 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * ia64.c (struct group): New structure.
+ (last_group): New static array.
+ (group_idx): New static variable.
+ (emit_group_barrier_after, errata_find_address_regs, errata_emit_nops):
+ New static functions.
+ (emit_insn_group_barriers): Initialize and keep track of group_idx
+ and last_group.
+ Call errata_emit_nops if TARGET_B_STEP or TARGET_A_STEP.
+ Replace all calls to emit_insn_after that emit a group barrier to use
+ emit_group_barrier_after.
+ * ia64.h (MASK_B_STEP): New.
+ (other MASK_XXX macros): Renumbered.
+ (TARGET_B_STEP): New.
+ (TARGET_SWITCHES): Add -mb-step.
+
+2000-11-15 Fred Fish <fnf@be.com>
+
+ * fixinc/mkfixinc.sh (fixincludes): Add *-*-beos* to list of
+ machines for which fixincludes is not needed.
+ * config/i386/x-beos (STMP_FIXPROTO): Don't run fixproto.
+
+2000-11-15 Jason Merrill <jason@redhat.com>
+
+ * diagnostic.c (finish_abort): New fn.
+ (fancy_abort, error_recursion): Use it.
+ * toplev.c (crash_signal): Likewise.
+ * diagnostic.h: Declare it.
+
+2000-11-13 Andrew Haley <aph@redhat.com>
+
+ * tree.c (build_type_no_quals): New function.
+ * tree.h (build_type_no_quals): Declare.
+ * c-common.c (c_get_alias_set): When considering type
+ compatibility for pointer types, ignore cv-qualifiers anywhere in
+ a pointer chain.
+
+2000-11-15 Graham Stott <grahams@redhat.com>
+
+ * regrename.c (scan_rtx_rtx): Skip to the next chain on
+ encountering a terminated chain.
+
+2000-11-14 Mark Mitchell <mark@codesourcery.com>
+
+ * configure.in: Move check for V3 above check for C++ header-file
+ directory.
+ * configure: Regenerated.
+
+2000-11-14 DJ Delorie <dj@redhat.com>
+
+ * config/v850/v850.c: Remove obstacks.
+
+Tue Nov 14 21:54:31 2000 Marek Michalkiewicz <marekm@linux.org.pl> & Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.c (avr_case_values_threshold): New.
+ (avr_override_options): Set it depending on options, make it large
+ when not optimizing to work around "unable to generate reloads".
+
+ * config/avr/avr.h (TARGET_SWITCHES): Add -mno-tablejump option.
+ (EXTRA_SECTION_FUNCTIONS): Make the .progmem.gcc_sw_table section
+ executable if not AVR_MEGA. Make sure jump tables are word-aligned.
+ (JUMP_TABLES_IN_TEXT_SECTION): Define as 0, not 1.
+ (ASM_OUTPUT_ADDR_VEC_ELT): Optimize, use "rjmp" if not AVR_MEGA.
+ (avr_case_values_threshold): Declare as extern int.
+ (CASE_VALUES_THRESHOLD): Define as avr_case_values_threshold.
+
+ * config/avr/avr.md (tablejump): Removed.
+ (*tablejump_rjmp): New for jump tables made from "rjmp" instructions.
+ (*tablejump_lib, *tablejump_enh, *tablejump): Change to expect the
+ index in the table, not multiplied by 2.
+ (casesi): Change to match the above insns. Always enable.
+
+ * config/avr/libgcc.S (__tablejump__): Rename to __tablejump2__.
+ Change to expect the word address of the table, multiply it by 2
+ here and not in the caller. Change "adiw" to faster "inc".
+
+2000-11-14 Neil Booth <neilb@earthling.net>
+
+ * cppexp.c (parse_defined): Call cpp_get_token not
+ _cpp_get_token.
+ (lex): Similarly.
+ * cpplex.c (cpp_output_line): Similarly.
+ * cpplib.c (glue_header_name, do_line, do_ident,
+ parse_answer, parse_assertion): Similarly.
+ (_cpp_handle_diretive): Don't save to lookaheads
+ when processing directives.
+ * cppmacro.c (parse_arg, expand_arg): Call cpp_get_token not
+ _cpp_get_token.
+ (funlike_invocation_p): Don't save to lookaheads
+ when pre-expanding arguments.
+ (_cpp_get_token): Delete.
+ (cpp_get_token): Merge contents of _cpp_get_token.
+
+2000-11-14 Jakub Jelinek <jakub@redhat.com>
+
+ * builtins.c (expand_builtin_setjmp): Set
+ current_function_calls_setjmp.
+ (expand_builtin_longjmp): Set current_function_calls_longjmp.
+
+ * config/sparc/sparc.md (builtin_setjmp_setup): New expand.
+ (do_builtin_setjmp_setup): New insn.
+
+Tue Nov 14 12:34:56 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.c (get_unwidened): Use host_integerp and tree_low_cst.
+ (int_fits_type_p): For variable bounds, call force_fit_type.
+
+2000-11-14 Jakub Jelinek <jakub@redhat.com>
+
+ * varasm.c (struct deferred_string): New structure.
+ (const_str_htab): New variable.
+ (STRHASH): New macro.
+ (mark_const_str_htab_1, mark_const_str_htab, const_str_htab_hash,
+ constr_str_htab_eq, const_str_htab_del): New functions.
+ (output_constant_def): Add DEFER argument, defer string
+ constants until mark_constant_pool time if requested.
+ (mark_constant_pool): Walk the insn chain even if const_str_htab is
+ not empty.
+ (mark_constants): If a SYMBOL_REF for deferred string is found,
+ output it and remove from hash table.
+ (output_addressed_constants): Set DEFER to 0 in call to
+ output_constant_def.
+ * rtl.h (STRING_POOL_ADDRESS_P): Define.
+ (output_constant_def): Adjust prototype.
+ * expr.c (expand_expr): Set DEFER to 1 in call to output_constant_def.
+
+2000-11-14 Chandrakala Chavva <cchavva@redhat.com>
+
+ * optabs.c (expand_complex_ab):: Use overflow-trapping optabs for
+ signed types if flag_trapv.
+
+2000-11-14 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * tradcpp.c, tradcif.y: Update FSF mailing address, delete
+ reference to GPLv1.
+
+2000-11-14 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.h (CTI_C_SIZE_TYPE): Update comment.
+
+2000-11-14 Jakub Jelinek <jakub@redhat.com>
+
+ * varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table
+ to array of pool_constnat pointers.
+ (struct pool_constant): Add next_sym and label members.
+ (struct pool_sym): Remove.
+ (init_varasm_status): Change pool_sym into pool_constant.
+ (mark_pool_constant): Mark pc->label string as well.
+ (mark_pool_sym_hash_table): Remove.
+ (mark_varasm_status): Remove it from caller as well.
+ (free_varasm_status): Don't free pool_sym structures.
+ (force_const_mem): Don't allocate pool_sym structure, instead
+ fill pool->label and chain it into rtx_sym hash table.
+ (find_pool_constant, mark_constant_pool): Use pool_constant instead
+ of pool_sym.
+
+2000-11-14 Jakub Jelinek <jakub@redhat.com>
+
+ * reload1.c (emit_input_reload_insns): Honor forcing of constants
+ into memory by PREFERRED_RELOAD_CLASS NO_REGS.
+
+2000-11-14 Michael Matz <matzmich@cs.tu-berlin.de>
+
+ * dominance.c: New file.
+ * Makefile.in (OBJS): Add dominance.o.
+
+ * flow.c (compute_flow_dominators): Remove.
+ (compute_immediate_dominators): Remove.
+ (compute_immediate_postdominators): Remove.
+ * basic-block.h: Remove their prototypes.
+ (calculate_dominance_info): Add prototype.
+
+ * dce.c (eliminate_dead_code): Change calls to above functions.
+ Don't compute dominators but only immediate dominators.
+ * flow.c (flow_loops_find): Change callers.
+ * gcse.c (compute_code_hoist_data): Likewise.
+ * haifa-sched.c (schedule_insns): Likewise.
+ * ifcvt.c (if_convert): Likewise.
+ * ssa.c (convert_to_ssa): Likewise, and only compute immediate
+ dominators.
+
+2000-11-14 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (warn_if_unused_value): Don't warn if the expression
+ has side effects.
+
+ * c-typeck.c (c_sizeof): Fold result to c_size_type_node.
+ (c_sizeof_nowarn, c_alignof, c_alignof_expr): Likewise.
+
+2000-11-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * loop.c (basic_induction_var): Revert accidental checkin.
+
+2000-11-13 Hans-Peter Nilsson <hp@axis.com>
+
+ * c-lex.c (cb_leave_file): Harmonize conditions and order of
+ statements to those of process_directive for (action == act_pop).
+
+ * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS.
+
+ * local-alloc.c (equiv_init_movable_p): References to CC0 are not
+ movable.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (stmts_and_decls): Deprecate use of label at end of
+ compound statement.
+
+2000-11-13 Neil Booth <neilb@earthling.net>
+
+ * cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF
+ cases return without MI check.
+ * cpplib.c (do_diagnostic): Take boolean of whether to
+ print the directive name.
+ (do_error, do_warning): Update.
+ (do_pragma_dependency): Use it.
+ * cpplib.h (VARARGS_FIRST): Delete.
+ (struct cpp_token): Delete integer.
+ * cppmacro.c (enter_macro_context): Move disabled check
+ to _cpp_get_token.
+ (_cpp_get_token): Simplify into a single loop.
+
+2000-11-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * configure.in: Use 'test -f' not '[ -e'.
+ * configure: Regenerated.
+
+2000-11-13 DJ Delorie <dj@redhat.com>
+
+ * config/mn10300/mn10300.md (store_movm): Note which registers are
+ really used or clobbered.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (ends_in_label): Remove from %union and %type.
+ (decls, stmts, lineno_stmt_or_labels, xstmts,
+ lineno_stmt_or_label, stmt_or_label): Remove.
+ (stmts_and_decls, lineno_stmt_decl_or_labels_ending_stmt,
+ lineno_stmt_decl_or_labels_ending_decl,
+ lineno_stmt_decl_or_labels_ending_label,
+ lineno_stmt_decl_or_labels_ending_error,
+ lineno_stmt_decl_or_labels, compstmt_contents_nonempty,
+ lineno_stmt, lineno_label): New.
+ (compstmt_nostart): Use compstmt_contents_nonempty.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (boolean_increment): New function.
+ * c-common.h (enum c_tree_index): Add CTI_C_BOOL_TYPE,
+ CTI_C_BOOL_TRUE and CTI_C_BOOL_FALSE.
+ (c_bool_type_node, c_bool_true_node, c_bool_false_node): Define.
+ (boolean_increment): Declare.
+ * c-convert.c (convert): Allow for BOOLEAN_TYPE.
+ * c-decl.c (init_decl_processing): Create boolean nodes.
+ (finish_struct): Allow for _Bool bitfields.
+ * c-parse.in (reswords): Add _Bool.
+ (rid_to_yy): Allow for RID_BOOL.
+ * c-typeck.c (default_conversion): Make booleans promote to int.
+ (convert_arguments, build_unary_op, build_modify_expr,
+ convert_for_assignment): Allow for booleans.
+ * ginclude/stdbool.h: Make conforming to C99.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (c99_block_start, c99_block_end,
+ c99_block_lineno_labeled_stmt): New.
+ (simple_if, do_stmt_start): Use c99_block_lineno_labeled_stmt.
+ (stmt): Split off selection and iteration statements into...
+ (select_or_iter_stmt): New. Use c99_block_lineno_labeled_stmt.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi (-Wtrigraphs, -fdump-translation-unit, -save-temps,
+ -time): Update.
+
+2000-11-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (mulsidi3adddi, umulsidi3adddi): Revert previous change.
+ Rewrite to avoid use of match_dup. Don't try to tie registers that
+ are not in the same mode.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Update lists of languages and suffixes supported.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * configure.in: Take toplevel configure arguments from the
+ environment to create configargs.h and substitute
+ gcc_config_arguments, taking account of any existing configargs.h
+ if reconfiguring.
+ * configure: Regenerate.
+ * gccbug.in: Include toplevel configure arguments in gccbug.
+
+2000-11-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * varasm.c (struct constant_descriptor): Put CONTENTS inside a
+ union to make it well-aligned. Update all uses.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (initelt): Give appropriate pedantic warnings,
+ depending on flag_isoc99, for non-ISO syntax and for C99 syntax
+ outside C99 mode.
+ (designator): If pedantic, pedwarn for a designator specifying a
+ range of elements.
+ * c-typeck.c (set_init_index, set_init_label): Don't pedwarn for
+ these cases.
+ * extend.texi: Document the C99 syntax as the preferred syntax,
+ and the pre-2.5 syntax as obsolete. Mention use of designator
+ lists for nested subobjects.
+
+2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * diagnostic.c (vbuild_message_string, output_do_printf, vnotice):
+ Add ATTRIBUTE_PRINTF.
+ * tradcpp.c (v_message, warning, error, fatal, error_with_line):
+ Add ATTRIBUTE_PRINTF*.
+
+2000-11-12 Mark Mitchell <mark@codesourcery.com>
+
+ * function.c (assign_parms): When calling put_var_into_stack, make
+ sure that there are no hidden pending sequences.
+
+2000-11-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin): Handle BUILT_IN_INDEX and
+ BUILT_IN_RINDEX. Add missing checks for BUILT_IN_STRCHR and
+ BUILT_IN_STRRCHR.
+
+ * builtins.def (BUILT_IN_INDEX, BUILT_IN_RINDEX): New entries.
+
+ * c-common.c (c_common_nodes_and_builtins): Declare index and
+ rindex when nonansi builtins are allowed.
+
+ * extend.texi (index, rindex): Document new builtins.
+
+2000-11-12 Mark Mitchell <mark@codesourcery.com>
+
+ * configure.in: Turn on libstdc++ V3 by default.
+ * configure: Regenerated.
+
+ * fixinc/mkfixinc.sh: Use the ordinary fixincludes on Solaris.
+
+2000-11-12 Jakub Jelinek <jakub@redhat.com>
+
+ * reload1.c (set_label_offsets): Go inside of PARALLELs.
+
+2000-11-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Clean up option summary.
+
+2000-11-12 Nick Clifton <nickc@redhat.com>
+
+ * config/mcore/mcore.c: Fix comment formating, and adjust sequence
+ of #include headers.
+
+2000-11-12 Marc Espie <espie@openbsd.org>
+
+ * configure.in: Fix filds test.
+ * configure: Regen.
+
+2000-11-12 Mark Mitchell <mark@codesourcery.com>
+
+ * jump.c (delete_computation): Don't assume that just because an
+ instruction sets a register, that register is dead.
+
+2000-11-12 Neil Booth <neilb@earthling.net>
+
+ * cppexp.c: Don't worry about pfile->skipping.
+ * cpplib.c (struct if_stack): Make was_skipping unsigned char.
+ (cpp_handle_directive): Save pfile->skipping in struct cpp_buffer
+ for handled directives.
+ (skip_rest_of_line): Use _cpp_lex_token after popping contexts
+ and releasing lookaheads.
+ (do_ifdef, do_ifndef, do_if): Use buffer->was_skipping.
+ (do_else, do_elif, push_conditional): Update logic.
+ (do_endif): Set buffer->was_skipping rather than pfile->skipping.
+ (unwind_if_stack): Inline into cpp_pop_buffer.
+ (cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive.
+ * cpplex.c (_cpp_lex_token): Clear skipping on EOF. Handle
+ multiple-include optimisation.
+ * cpplib.h (struct cpp_buffer): New member was_skipping.
+ * cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping. This
+ works because skipping == 0 in directives.
+ (_cpp_release_lookahead): Renamed from release_lookahead.
+ (cpp_get_token): No need to check skipping as _cpp_get_token does
+ this for us. No need to handle MI optimisation.
+
+Sat Nov 11 21:14:02 2000 Mark P Mitchell <mark@codesourcery.com>
+
+ * fixinc/inclhack.def (sunos_matherr_decl): Bypass matherr
+ declarations that use `__MATH_EXCEPTION' in their prototypes, too.
+ * fixinc/fixincl.x: Regenerated.
+
+2000-11-11 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def (avoid_bool_type): avoid commenting out #endif
+ (avoid_wchar_t_type): ditto
+ * fixinc/fixinc.irix: obsoleted
+
+2000-11-11 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * configure.in: Don't add $outputs to all_lang_makefiles. Add
+ $srcdir/$s/Makefile.in if it exists.
+ * configure: Regenerate.
+
+Sat Nov 11 18:41:20 2000 Mark P Mitchell <mark@codesourcery.com>
+
+ * fixinc/mkfixinc.sh: Use the ordinary fixincludes on IRIX.
+
+2000-11-11 Jason Merrill <jason@redhat.com>
+
+ * function.c (assign_parms): If TREE_ADDRESSABLE is set, try to
+ give the parm a register and then call put_var_into_stack.
+ * stmt.c (expand_decl): Likewise.
+
+2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi: Adjust wording.
+
+2000-11-11 Mark Mitchell <mark@codesourcery.com>
+
+ * fixinc/inclhack.def (avoid_wchar_t_type): New fix.
+ * fininc/fixincl.x: Regenerated.
+
+2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Correct spelling of -foptimize-register-move.
+
+2000-11-11 Neil Booth <neilb@earthling.net>
+
+ Remove CPP_PLACEMARKERs.
+
+ * cppexp.c (lex): Don't handle CPP_PLACEMARKER.
+ * cpplex.c (_cpp_lex_token): Rename skip_newlines to next_bol
+ * cpplib.c (skip_rest_of_line, check_eol, cpp_push_buffer):
+ Similarly.
+ * cpplib.h: Remove CPP_PLACEMARKER.
+ (struct lexer_state): Rename skip_newlines to next_bol.
+ * cppmacro.c (stringify_arg): Don't handle CPP_PLACEMARKER.
+ Simplify prev_white handling as a result.
+ (paste_all_tokens): Don't worry about CPP_PLACEMARKERs.
+ (parse_arg): Empty arguments are now empty, not CPP_PLACEMARKERs.
+ (parse_args): Similarly. Update argument count tests.
+ (enter_macro_context): Return 2 to indicate an empty macro.
+ (replace_args): Don't bother pre-expanding an empty argument.
+ Handle placemarkers and ## extension during pre-expansion.
+ (cpp_get_token): Handle empty macro expansions. Don't worry
+ about CPP_PLACEMARKERs.
+ (_cpp_create_definition): Empty macros are now empty.
+ (cpp_macro_definition): Don't special case empty macros.
+ * scan-decls.c: Don't bother with CPP_PLACEMARKERs.
+ * c-lex.c: Similarly.
+
+2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi, invoke.texi: Add new section discussing language
+ standards; link to it where appropriate; refer to ISO C instead of
+ ANSI C.
+
+2000-11-11 Alexandre Oliva <aoliva@redhat.com>
+
+ * builtins.c (std_expand_builtin_va_start): Take PARM_BOUNDARY
+ into account.
+
+ * config/sh/sh.h (MODES_TIEABLE_P): Don't tie SFmode to other FP
+ modes.
+
+2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi, gcov.texi: Update dates and version numbers.
+
+2000-11-10 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * configure.in: Remove AC_PROG_LEX and AC_PROG_YACC. Look for
+ flex and bison, specifically, first in a unified build and
+ then installed on the system.
+ * Makefile.in: Set BISON to @BISON@, FLEX to @FLEX@. Rename
+ LEXFLAGS to FLEXFLAGS. Adjust ORDINARY_FLAGS_TO_PASS to
+ match.
+
+ (collect2.o, gcc.o, prefix.o, toplev.o, alloca.o, intl.o,
+ cppdefault.o): Remove pointless sed munging of source file
+ name.
+
+2000-11-10 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * reload.c (find_reloads_address_1, case POST_MODIFY): Use RELOAD_OTHER
+ for address reloads. Push replacements for REG_INC notes.
+ (regno_clobbered_p): New arg SETS. Examine SETs if it's nonzero. All
+ callers changed.
+ * reload1.c (choose_reload_regs): Registers set in the insn can't be
+ used for RELOAD_OTHER reloads.
+
+2000-11-10 Mark Mitchell <mark@codesourcery.com>
+
+ * c-dump.h: New file.
+
+2000-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.c (check_float_value): Use memcpy, not bcopy.
+ * arm.c (output_move_double): Likewise.
+ * arm.md: Likewise.
+ * m88k.c (legitimize_operand): Likewise.
+ * m88k.h (ORDER_REGS_FOR_LOCAL_ALLOC): Likewise.
+ * m88k.md: Likewise.
+ * mips.c (override_options): Likewise.
+ * mips.md: Likewise.
+ * romp.c (output_fpops): Likewise.
+ * rs6000.c (rs6000_override_options): Likewise.
+ * sh.md: Likewise.
+ * vax.c (check_float_value): Likewise.
+
+ * emit-rtl.c (copy_rtx_if_shared, init_emit_once): Likewise.
+ * expmed.c (synth_mult): Likewise.
+ * final.c (add_bb_string): Likewise.
+ * genattr.c (main): Likewise.
+ * genattrtab.c (attr_string, simplify_cond, copy_rtx_unchanging):
+ Likewise.
+ * jump.c (thread_jumps): Likewise.
+ * prefix.c (save_string): Likewise.
+ * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Likewise.
+ * regclass.c (init_reg_sets, init_reg_sets_1): Likewise.
+ * reload1.c (reload, eliminate_regs): Likewise.
+
+2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi (Service): Update to reflect current practice and
+ location of the GNU service directory.
+
+2000-11-09 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * regrename.c (build_def_use): Mark contents of REG_INC notes as
+ needing replacement.
+
+ * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Emit
+ a no-op move if regs are equal.
+ * toplev.c (rest_of_compilation): Do the noop moves elimination pass
+ when calling jump after post-reload splitting.
+
+2000-11-09 Jan van Male <jan.vanmale@fenk.wau.nl>
+
+ * c-tree.texi: Fix typos.
+ * extend.texi: Likewise
+ * gcov.texi: Likewise
+ * rtl.texi: Likewise
+ * tm.texi: Likewise
+
+2000-11-09 Hans-Peter Nilsson <hp@axis.com>
+
+ * c-lex.c [! NO_IMPLICIT_EXTERN_C] (cb_enter_file): Check
+ in_system_header and flags[1] before dereferencing flags[2].
+
+2000-11-09 Matthew Hiller <hiller@redhat.com>
+
+ * reload1.c (reload_combine): Fixed calculation of
+ first_index_reg, last_index_reg.
+
+2000-11-09 Mark Mitchell <mark@codesourcery.com>
+
+ * c-dump.c (dequeue_and_dump): Dump function bodies.
+
+ * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
+ (c-dump.o): New target.
+ * c-common.h (flag_dump_translation_unit): New variable.
+ (C_TYPE_QUALS): New macro.
+ (strip_array_types): New function.
+ (DECL_C_BIT_FIELD): New macro.
+ (SET_DECL_C_BIT_FIELD): Likewise.
+ (CLEAR_DECL_C_BIT_FIELD): Likewise.
+ (dump_info_p): New typedef.
+ (dump_tree_fn): Likewise.
+ (lang_dump_tree): New variable.
+ (dump_node_to_file): New function.
+ * c-common.c (flag_dump_translation_unit): Define it.
+ (strip_array_types): New function.
+ * c-decl.c (c_decode_option): Handle -fdump-translation-unit.
+ * c-lang.c (finish_file): Call dump_node_to_file if
+ flag_dump_translation_unit.
+ * c-semantics.c (mark_rtl_for_local_static): Fix typo in comment.
+ * c-tree.h (DECL_C_BIT_FIELD): Remove declaration.
+ * c-dump.c: New file.
+
+2000-11-09 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h: Add mingw startfile prefix.
+
+2000-11-09 Richard Henderson <rth@redhat.com>
+
+ * flow.c (invalidate_mems_from_set): Split out from ...
+ (mark_set_1): ... here.
+ (try_pre_increment_1): Use it. Use propagate_block_delete_insn
+ instead of turning insn into a NOTE_INSN_DELETED.
+
+2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi, invoke.texi: Move documentation of builtin versions
+ of C library functions to one place and update.
+
+2000-11-09 Richard Henderson <rth@redhat.com>
+
+ * fold-const.c (fold): Compare TYPE_MAIN_VARIANT rather than
+ the types themselves to discover type equivalence.
+
+2000-11-09 Mike Stump <mrs@wrs.com>
+
+ * Makefile.in (distclean): Remove a few extra leftovers.
+
+2000-11-09 Richard Henderson <rth@redhat.com>
+
+ * recog.c (validate_replace_rtx_1): Consider subregs when
+ replacing a register with a constant inside a sign/zero_extend.
+
+ * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
+
+2000-11-09 Geoffrey Keating <geoffk@redhat.com>
+
+ * c-decl.c (finish_struct): When a structure is completed,
+ check all its variant types for completeness.
+
+2000-11-09 Neil Booth <neilb@earthling.net>
+
+ * cpphash.c: Move cpp_defined here from cpplib.c.
+ * cpplib.c: Update comments, move cpp_defined to cpphash.c.
+ * cpplex.c (_cpp_lex_token): Don't leave the lexer at EOL.
+ * cppmacro.c (cpp_get_token): Update comments, no need now
+ to catch the CPP_EOF meaning EOL case.
+
+2000-11-08 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/sparc/sparc.c (sparc_va_arg): When the required alignment
+ is more than that provided, copy to a temporary.
+
+2000-11-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from
+ interpreting $out as a macro assignment.
+ * Makefile.in (T_TARGET): New auxiliary macro and target.
+ (all): Add a target right in the beginning, so that we don't build
+ T_TARGET by default.
+
+2000-11-09 Graham Stott <grahams@redhat.com>
+
+ * config/i386/i386.md (mmx_pinsrw): Output operands in correct
+ order for -mintel-syntax. Remove comment now that the operand
+ order has been checked.
+ (mmx_pextrw): Likewise.
+ (mmx_pshufw): Likewise.
+
+2000-11-09 Jakub Jelinek <jakub@redhat.com>
+
+ * builtins.c (c_strlen): Use TREE_STRING_LENGTH - 1 for max.
+ (c_getstr): New function.
+ (expand_builtin_strstr): Do nothing if -fcheck-memory-usage.
+ If both arguments are constant string, optimize out.
+ (expand_builtin_strchr, expand_builtin_strrchr): New functions.
+ (expand_builtin_strpbrk): Use c_getstr, do nothing if
+ -fcheck-memory-usage.
+ (expand_builtin_fputs): Likewise.
+ (expand_builtin_strcmp): Add MODE argument.
+ Use even if !HAVE_cmpstrsi.
+ Optimize the case when both arguments are constant strings.
+ (expand_builtin): Adjust expand_builtin_strcmp caller.
+ Call expand_builtin_strchr and expand_builtin_strrchr.
+ * c-common.c (c_common_nodes_and_builtins): Add strchr and strrchr
+ builtins.
+ * builtins.def (BUILT_IN_STRRCHR): Add.
+
+2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * fixinc/gnu-regex.c: Rename EGCS LOCAL markers to GCC LOCAL.
+
+2000-11-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * calls.c (expand_call, emit_library_call_value_1), collect2.c
+ (scan_prog_file), config/a29k/a29k.c (print_operand),
+ config/sparc/sparc.c (order_regs_for_local_alloc): Use memcpy ()
+ instead of bcopy ().
+ * real.h: Use memcmp () instead of bcmp ().
+ * config/m88k/m88k.c (m88k_layout_frame), config/sh/sh.c
+ (split_branches), config/sparc/sparc.c (ultra_flush_pipeline,
+ ultrasparc_sched_init, ultrasparc_sched_reorder),
+ config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Use memset ()
+ instead of bzero ().
+ * config/vax/xm-xms.h (FILE_NAME_NONDIRECTORY): Use strrchr ()
+ instead of rindex ().
+ * configure.in: Don't check for bzero, bcmp, index or rindex.
+ * configure, config.in: Regenerate.
+ * system.h: Don't include declarations for bzero, bcmp, index or
+ rindex.
+ * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Don't define
+ bzero, bcmp, index or rindex.
+
+Wed Nov 8 21:58:20 2000 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h: Add -no-win32 switch. Separate -mno-cygwin
+ include and library paths from -mcygwin case. Parameterize some
+ declarations to avoid warnings. Use standard locations for include and
+ lib dirs.
+
+2000-11-08 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.md (mulsidi3adddi): Change output operand
+ constraint from "=&" to "+&".
+ (umulsidi3adddi): Change output operand constraint from "=&" to
+ "+&".
+
+2000-11-08 Richard Henderson <rth@redhat.com>
+
+ * flow.c (init_propagate_block_info): Protect the rtx stored in
+ mem_set_list from modification by find_auto_inc.
+ (mark_set_1): Likewise.
+
+2000-11-08 Neil Booth <neilb@earthling.net>
+
+ Move directive handling into the lexer itself.
+
+ * cpplex.c (_cpp_lex_token): Handle directives directly.
+ In the case of a directive interrupting a function-like
+ macro invocation, use extra_char since read_ahead is
+ used to store the '#'. Return a CPP_EOF in this case.
+ * cppmacro.c (parse_arg): No need to handle CPP_DHASH any more.
+ (cpp_get_token): Don't handle directives here.
+ * cpplib.h: Remove CPP_DHASH token type.
+
+Wed Nov 8 21:53:41 MET 2000 Jan Hubicka <jh@suse.cz>
+
+ * regmove.c (combine_stack_adjustments_for_blocks): Recognize pushes
+ formed using PRE_MODIFY too.
+
+2000-11-08 Mark Mitchell <mark@codesourcery.com>
+
+ * c-tree.texi (VAR_DECL): Describe representation of GCC's
+ extension for placing variables in particular registers.
+
+ * c-tree.texi (FUNCTION_TYPE): Clarify TYPE_ARG_TYPES for
+ unprototyped C functions with no parameters.
+
+2000-11-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Cast DELTA to int
+ before passing to fprintf.
+
+2000-11-08 Jakub Jelinek <jakub@redhat.com>
+
+ * function.c (expand_function_start): Cast GET_MODE_SIZE to
+ HOST_WIDE_INT before negating it.
+
+2000-11-08 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (expand_expr) [ADDR_EXPR]: Handle when op0 is RETURN_DECL
+ passed in multiple non-contiguous locations.
+
+2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README.gnat: Remove file.
+
+2000-11-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * mklibgcc.in (EXTRA_MULTILIB_PARTS): Generate multilib parts
+ in-place.
+
+2000-11-07 Richard Henderson <rth@redhat.com>
+
+ * dwarfout.c (INSN_LABEL_FMT): Remove.
+ (output_label_die): Use ASM_GENERATE_INTERNAL_LABEL.
+ (dwarfout_label): Remove.
+ * dwarfout.h: Remove it's prototype.
+ * dwarf2out.c (INSN_LABEL_FMT): Remove.
+ (gen_label_die): Use ASM_GENERATE_INTERNAL_LABEL.
+ (dwarf2out_label): Remove.
+ * dwarf2out.h: Remove it's prototype.
+ * final.c (final_scan_insn): Don't call dwarf[2]out_label.
+
+2000-11-07 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/fde-glibc.c (find_fde_for_dso): Do a binary
+ search on the unwind region section.
+
+ * config/ia64/ia64.md (movbi): Add r/r alternative.
+ (cmovdi_internal_astep): Describe all combinations of register
+ classes for sources & destinations; remove matching constraints.
+ (cmovdi_internal): Likewise.
+
+ * gcc.c (default_compilers) [@cpp-output]: Add -fpreprocessed.
+
+2000-11-07 Richard Henderson <rth@redhat.com>
+
+ * c-lang.c (start_cdtor, finish_cdtor): New functions.
+ (finish_file): Use them in building constructor/destructor functions.
+
+ * config/alpha/alpha.h (HAS_INIT_SECTION, LD_INIT_SWITCH,
+ LD_FINI_SWITCH): Move ...
+ * config/alpha/osf.h: ... here.
+ * config/alpha/alpha-interix.h: Don't undef them.
+
+2000-11-07 Jeffrey Oldham <oldham@oz.codesourcery.com>
+
+ * config/mips/t-iris6 (FPBIT): New. Added so that __unorddf2 is
+ included in libgcc.a.
+ (DPBIT): Likewise.
+ (dp-bit.c): Likewise.
+ (fp-bit.c): Likewise.
+
+2000-11-07 Nick Clifton <nickc@redhat.com>
+
+ * config/m88k/m88k.h (GLOBAL_ASM_OP): Add missing tab.
+ (INTERNAL_ASM_OP): Add missing tab.
+
+2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * alias.c (init_alias_analysis), calls.c (expand_call,
+ emit_library_call_value_1), combine.c (init_reg_last_arrays),
+ cse.c (new_basic_block), dbxout.c (dbxout_type), diagnostic.c
+ (init_output_buffer, set_diagnostic_context), dwarf2out.c
+ (equate_decl_number_to_die, build_abbrev_table), emit-rtl.c
+ (init_emit_once), fold-const.c (mul_double, div_and_round_double),
+ function.c (assign_parms), gcse.c (compute_can_copy,
+ alloc_gcse_mem, alloc_reg_set_mem, record_one_set,
+ compute_hash_table, compute_set_hash_table,
+ compute_expr_hash_table), genattrtab.c (optimize_attrs), global.c
+ (global_alloc, global_conflicts), haifa-sched.c (compute_trg_info,
+ clear_units, schedule_block), integrate.c (initialize_for_inline,
+ expand_inline_function), jump.c (thread_jumps), local-alloc.c
+ (local_alloc), loop.c (combine_movables, count_loop_regs_set,
+ load_mems_and_recount_loop_regs_set), print-tree.c (debug_tree),
+ regclass.c (init_reg_sets, init_reg_sets_1, regclass,
+ record_reg_classes, allocate_reg_info), reload.c
+ (get_secondary_mem, remove_address_replacements, find_reloads),
+ reload1.c (reload, set_initial_label_offsets, finish_spills,
+ reload_as_needed, choose_reload_regs_init,
+ reload_cse_simplify_operands), reorg.c (dbr_schedule), sbitmap.c
+ (sbitmap_zero), simplify-rtx.c (simplify_plus_minus), ssa.c
+ (rename_registers), stmt.c (expand_end_case), unroll.c
+ (unroll_loop), varray.c (varray_grow), objc/objc-act.c: Use memset
+ () instead of bzero ().
+
+2000-11-07 Neil Booth <neilb@earthling.net>
+
+ * cp/lang-specs.h: Fix -save-temps specs under USE_CPPLIB.
+
+2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c (combine_strings): Only warn about long strings for C.
+
+Tue Nov 7 19:44:30 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * combine.c (distribute_notes): Fix typo in last change.
+
+2000-11-07 Geoff Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.md (movdi_internal32+1): Use
+ operand_subreg_force rather than gen_rtx_SUBREG.
+ (movdi_internal32+2): Likewise.
+
+2000-11-07 Philip Blundell <philb@gnu.org>
+
+ * configure.in (arm*-*-linuxaout*): Obsolete, deleted.
+ * config/arm/linux-aout.h: Likewise.
+ * configure: Regenerate.
+
+2000-11-07 Philipp Thomas <pthomas@suse.de>
+
+ * ABOUT-GCC-NLS: Remove the patch for gettext as it has been
+ accepted my the gettext maintainer.
+
+2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strpbrk): New function.
+ (expand_builtin): Handle BUILT_IN_STRPBRK.
+
+ * builtins.def (BUILT_IN_STRPBRK): New entry.
+
+ * c-common.c (c_common_nodes_and_builtins): Declare builtin
+ strpbrk.
+
+2000-11-07 David O'Brien <obrien@dragon.nuxi.com>
+
+ * config/alpha/freebsd.h: New file -- FreeBSD/alpha architecture file.
+ * POTFILES.in: Add config/alpha/freebsd.h
+ * configure.in: Add alpha*-freebsd support.
+ * configure: Regenerate.
+
+2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * tree.c (build_common_tree_nodes_2): Make va_list_type_node be a
+ copy of ptr_type_node rather than ptr_type_node itself.
+
+Tue Nov 7 06:29:24 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * combine.c (recog_for_combine): Allocate uninitialized vector with
+ rtvec_alloc.
+ * recog.c (apply_change_group): Likewise.
+
+Tue Nov 7 06:24:02 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * flow.c (verify_local_live_at_start): Back out last change.
+ * combine.c (distribute_notes): When parts of a hard reg are
+ neither set nor referenced in PLACE, search backwards for a
+ place to put a REG_UNUSED note; if none found, ask for flow
+ info refresh.
+
+Mon Nov 6 20:08:13 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * reload1.c (eliminate_regs_in_insn): Allow a set to be a PARALLEL
+ with (clobber (match_scratch...)).
+
+2000-11-06 Neil Booth <neilb@earthling.net>
+
+ * c-lex.c (init_c_lex): If cpp_start_read fails, exit with
+ error status.
+
+2000-11-06 Neil Booth <neilb@earthling.net>
+
+ * tradcpp.c (special_symbol): Assign an null string rather
+ than writing to an unallocated buffer.
+
+2000-11-06 Neil Booth <neilb@earthling.net>
+
+ * cpplex.c (_cpp_equiv_tokens): Check arg_no in the
+ CPP_MACRO_ARG case.
+
+2000-11-06 Neil Booth <neilb@earthling.net>
+
+ * c-lex.c (c_lex): Replace tok.val.aux with tok.val.c or
+ tok.val.arg_no as appropriate.
+ * cppexp.c (lex): Similarly.
+ * cpplex.c (_cpp_lex_token, cpp_spell_token, cpp_output_token,
+ cpp_equiv_tokens, cpp_can_paste, cpp_avoid_paste): Similarly.
+ * cppmacro.c (stringify_arg, replace_args, lex_expansion_token,
+ cpp_macro_definition): Similarly.
+ * cpplib.h (struct cpp_token): Replace aux with c and arg_no.
+
+2000-11-06 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.md (adddi3): If operands[2] is 4096 and
+ operands[1] is constant, calculate the sum and generate movdi.
+ (addsi3): Similarly. Use SImode in call to arith_4096_operand.
+ (subsi3): Use SImode in call to arith_4096_operand.
+
+2000-11-06 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): On sparc64 we need to
+ adjust %o1, not %o0 if the return type is large structure.
+
+2000-11-06 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.md (smulsi3_highpart_v8plus, ashldi3_v8plus+1,
+ update_return, flush, flushdi, ffssi2, ffsdi2): Fix output formatting.
+
+Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * expmed.c (expand_divmod): For signed divide by 2, prefer
+ a branch and fewer shifts if branches are very cheap.
+
+2000-11-05 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * Makefile.in: Remove all targets related to building
+ distributions and diffs, or INSTALL.
+ * INSTALL, install1.texi: Remove.
+ * configure.in: Remove mention of distdir.
+ * configure: Regenerate.
+ * objc/Make-lang.in: Remove mention of distdir.
+
+2000-11-04 Neil Booth <neilb@earthling.net>
+
+ * cpp.texi: Update for _Pragma.
+
+2000-11-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi (Contributing): Update URL for projects web page.
+
+2000-11-04 Neil Booth <neilb@earthling.net>
+
+ * cpplex.c (parse_string): Don't allow multiline strings in
+ #include family directives.
+
+2000-11-04 Neil Booth <neilb@earthling.net>
+
+ * cpplib.c (do_line): Only warn pedantically if not reading
+ preprocessed input.
+
+2000-11-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * calls.c (emit_call_1) [sibcall_pop]: Use n_popped instead of
+ RETURN_POPS_ARGS().
+
+2000-11-03 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * builtins.c (expand_builtin_strlen): Remove unused mode
+ argument.
+ * gcc.c (process_command): Remove unused variable.
+ * fold-const.c: Include expr.h.
+ * recog.c: Include reload.h.
+ * Makefile.in (recog.o, fold-const.o): Update deps.
+
+2000-11-02 Geoffrey Keating <geoffk@cygnus.com>
+
+ * fixinc/gnu-regex.c: Change 'CYGNUS LOCAL' to 'EGCS LOCAL'.
+
+Fri Nov 3 13:41:04 2000 Mark P Mitchell <mark@codesourcery.com>
+
+ * config/mips/iris6.h (SUBTARGET_CC1_SPEC): Remove -static
+ handling.
+ (STARTFILE_SPEC): Likewise.
+ (LINK_SPEC): Likewise.
+
+2000-11-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (fold-const.o): Depend on $(GGC_H), not ggc.h.
+ (toplev.o): Likewise for $(LOOP_H)/loop.h and $(REGS_H)/regs.h.
+ (simplify-rtx.o): Likewise for $(GGC_H)/ggc.h.
+
+2000-11-03 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (duplicate_decls, copy_lang_decl), dwarfout.c
+ (dwarfout_line), gcc.c (main, save_string), tree.c (init_obstacks,
+ perm_calloc, get_identifier, maybe_get_identifier,
+ real_value_from_int_cst, simple_cst_equal), varasm.c
+ (assemble_name, assemble_real, immed_real_const_1,
+ compare_constant_1, decode_rtx_const, output_constant_pool): Use
+ strrchr () instead of rindex (). Use memcmp () instead of bcmp
+ (). Use memcpy () instead of bcopy (). Use memset () instead of
+ bzero ().
+
+2000-11-03 Nathan Sidwell <nathan@codesourcery.com>
+
+ * cppfiles.c (open_file): If already read, then don't reopen.
+ Immediately close an empty file.
+
+2000-11-01 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * expr.h (fold_builtin): Move declaration...
+ * tree.h (fold_builtin): ... here.
+
+Fri Nov 3 05:41:07 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * flow.c (verify_local_live_at_start): Allow hard regs to die.
+
+2000-11-02 Neil Booth <neilb@earthling.net>
+
+config:
+ * a29k/a29k.h, a29k/unix.h, a29k/vx29k.h,
+ alpha/alpha-interix.h, alpha/alpha.h, alpha/linux.h,
+ alpha/openbsd.h, alpha/osf.h, alpha/vms.h, alpha/vxworks.h,
+ alpha/win-nt.h, arc/arc.h, arm/arm.h, arm/conix-elf.h,
+ arm/linux-aout.h, arm/linux-elf.h, arm/netbsd.h, arm/riscix.h,
+ arm/riscix1-1.h, arm/semiaof.h, arm/unknown-elf-oabi.h, arm/vxarm.h,
+ c4x/rtems.h, clipper/clix.h, convex/convex.h, d30v/d30v.h,
+ elxsi/elxsi.h, fr30/fr30.h, h8300/h8300.h, i370/linux.h, i370/mvs.h,
+ i370/oe.h, i386/386bsd.h, i386/aix386ng.h, i386/beos-elf.h,
+ i386/bsd386.h, i386/crtdll.h, i386/cygwin.h, i386/dgux.h,
+ i386/djgpp-rtems.h, i386/djgpp.h, i386/freebsd-aout.h, i386/freebsd.h,
+ i386/gnu.h, i386/i386-interix.h, i386/i386.h, i386/linux-aout.h,
+ i386/linux-oldld.h, i386/linux.h, i386/lynx-ng.h, i386/lynx.h,
+ i386/mach.h, i386/mingw32.h, i386/moss.h, i386/netbsd.h,
+ i386/netware.h, i386/next.h, i386/openbsd.h, i386/osf1elf.h,
+ i386/osfelf.h, i386/osfrose.h, i386/ptx4-i.h, i386/rtems.h,
+ i386/rtemself.h, i386/sco.h, i386/sco4.h, i386/sco4dbx.h, i386/sco5.h,
+ i386/scodbx.h, i386/sequent.h, i386/sol2.h, i386/sun.h, i386/sysv3.h,
+ i386/sysv4.h, i386/uwin.h, i386/vsta.h, i386/vxi386.h, i386/win-nt.h,
+ i386/win32.h, i860/fx2800.h, i860/i860.h, i860/mach.h, i860/sysv3.h,
+ i860/sysv4.h, i960/i960.h, i960/rtems.h, i960/vx960-coff.h,
+ ia64/ia64.h, ia64/linux.h, m32r/m32r.h, m68k/3b1.h, m68k/3b1g.h,
+ m68k/a-ux.h, m68k/altos3068.h, m68k/amix.h, m68k/apollo68.h,
+ m68k/crds.h, m68k/ctix.h, m68k/dpx2.h, m68k/hp2bsd.h, m68k/hp320.h,
+ m68k/hp3bsd.h, m68k/hp3bsd44.h, m68k/isi.h, m68k/linux-aout.h,
+ m68k/linux.h, m68k/lynx-ng.h, m68k/lynx.h, m68k/m68kemb.h,
+ m68k/m68kv4.h, m68k/mot3300.h, m68k/netbsd.h, m68k/news.h,
+ m68k/next.h, m68k/openbsd.h, m68k/pbb.h, m68k/plexus.h, m68k/rtems.h,
+ m68k/rtemself.h, m68k/sun2.h, m68k/sun3.h, m68k/sun3mach.h,
+ m68k/tower-as.h, m68k/tower.h, m68k/vxm68k.h, m88k/dgux.h,
+ m88k/dolph.h, m88k/luna.h, m88k/m88k-aout.h, m88k/m88k-coff.h,
+ m88k/openbsd.h, m88k/sysv3.h, m88k/sysv4.h, mips/bsd-4.h,
+ mips/bsd-5.h, mips/dec-bsd.h, mips/dec-osf1.h, mips/gnu.h,
+ mips/iris3.h, mips/iris5.h, mips/iris6.h, mips/linux.h, mips/mips.h,
+ mips/netbsd.h, mips/news4.h, mips/news5.h, mips/nws3250v4.h,
+ mips/openbsd.h, mips/osfrose.h, mips/rtems64.h, mips/sni-svr4.h,
+ mips/svr3-4.h, mips/svr3-5.h, mips/svr4-4.h, mips/svr4-5.h,
+ mips/ultrix.h, ns32k/encore.h, ns32k/merlin.h, ns32k/netbsd.h,
+ ns32k/ns32k.h, ns32k/pc532-mach.h, ns32k/pc532.h, ns32k/sequent.h,
+ ns32k/tek6000.h, ns32k/tek6100.h, ns32k/tek6200.h, pa/pa-hiux.h,
+ pa/pa-hpux.h, pa/pa-hpux7.h, pa/pa-linux.h, pa/pa-osf.h,
+ pa/pa-pro-end.h, pa/pa.h, pa/rtems.h, pj/linux.h, pj/pj.h,
+ romp/romp.h, rs6000/aix.h, rs6000/aix31.h, rs6000/aix41.h,
+ rs6000/aix43.h, rs6000/beos.h, rs6000/eabi.h, rs6000/eabisim.h,
+ rs6000/linux.h, rs6000/lynx.h, rs6000/mach.h, rs6000/rtems.h,
+ rs6000/sysv4.h, rs6000/vxppc.h, sh/elf.h, sh/linux.h, sh/rtems.h,
+ sh/rtemself.h, sh/sh.h, sparc/aout.h, sparc/elf.h, sparc/linux-aout.h,
+ sparc/linux.h, sparc/linux64.h, sparc/lite.h, sparc/litecoff.h,
+ sparc/liteelf.h, sparc/lynx-ng.h, sparc/lynx.h, sparc/netbsd.h,
+ sparc/openbsd.h, sparc/pbd.h, sparc/rtems.h, sparc/rtemself.h,
+ sparc/sol2-sld-64.h, sparc/sol2.h, sparc/sp64-aout.h,
+ sparc/sp64-elf.h, sparc/sp86x-aout.h, sparc/sp86x-elf.h,
+ sparc/sparc.h, sparc/sysv4.h, sparc/vxsim.h, sparc/vxsparc.h,
+ v850/rtems.h, vax/netbsd.h, vax/openbsd.h, vax/ultrix.h, vax/vax.h,
+ vax/vaxv.h, vax/vms.h, we32k/we32k.h
+
+ Replace -A() with -A=, the new assertion syntax.
+
+Thu Nov 2 21:52:35 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * combine.c (distribute_notes): Use rtx_equal_p to check elim_i2 /
+ elim_i1.
+ In REG_DEAD handling: When handling parts of multi-hard-reg hard
+ registers, increment the loop counter by the size of the parts;
+ use recursion to handle individual parts.
+
+2000-11-02 Neil Booth <neilb@earthling.net>
+
+ * configure.in: Make integrated CPP the default.
+ * configure: Regenerate.
+
+Thu Nov 2 19:20:12 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * reload.c (find_equiv_reg): Test all hard registers for membership
+ in the requested class.
+
+2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * collect2.c (main, write_c_file_stat), gcc.c (translate_options,
+ process_command, main), gcov.c (open_files, output_data), tlink.c
+ (frob_extension, scan_linker_output), toplev.c
+ (file_name_nondirectory): Use strchr () and strrchr () instead of
+ index () and rindex ().
+
+2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (get_flag_spec, check_format_info_main,
+ check_format_types): Use strchr () instead of index (). Compare
+ against error_mark_node instead of comparing the TREE_CODE against
+ ERROR_MARK.
+
+2000-11-02 Zack Weinberg <zackw@Stanford.EDU>
+
+ Integrated CPP.
+
+ * c-lex.c (init_c_lex): Update cpp_start_read call.
+ (cb_ident): Update for new callback prototype.
+ (cb_def_pragma): Update for new cpp_get_token prototype.
+ (c_lex): Similarly. Use cpp_get_line.
+
+ * c-parse.in (finish_parse): Update for new cpp_finish
+ prototype.
+
+ * cp/lex.c (finish_parse): Similarly.
+
+2000-11-01 Geoff Keating <geoffk@cygnus.com>
+
+ * machmode.def: Add V16QImode.
+
+2000-11-01 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (loc_descriptor_from_tree): Check for null result
+ from rtl_for_decl_location.
+ (add_location_or_const_value_attribute): Likewise.
+
+2000-11-01 Neil Booth <neilb@earthling.net>
+
+ * cpplib.c (run_directive): Use correct line number for output
+ of _Pragma. Remember any in-progress directive.
+
+ * gcc.dg/cpp/vararg2.c, gcc.dg/cpp/_Pragm1.c: New tests.
+
+2000-11-01 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (expand_start_null_loop): Set continue_label.
+
+2000-11-01 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * builtins.c (fold_builtin_constant_p, fold_builtin): New functions.
+ (expand_builtin_constant_p): Move parts of the code into
+ fold_builtin_constant_p.
+ (expand_builtin_strlen): Move parts of the code into fold_builtin.
+ * expr.h (fold_builtin): Declare.
+ * fold-const.c (fold): Handle builtin calls.
+
+ * c-typeck.c (build_function_call): Call fold on the CALL_EXPR.
+
+2000-11-01 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (expand_start_null_loop): New.
+ (expand_end_null_loop): New.
+ * c-semantics.c (genrtl_do_stmt): Use them.
+ * tree.h: Declare them.
+
+2000-11-01 Richard Henderson <rth@redhat.com>
+
+ * cppmain.c (scan_buffer): Don't avoid paste for assembly.
+
+2000-11-01 Neil Booth <neilb@earthling.net>
+
+ * c-parse.in (_yylex): Remove CPP_BACKSLASH case.
+ * cp/spew.c: Similarly.
+ * cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER.
+ * cppmacro.c (stringify_arg): Similarly.
+ * cpplib.h (CPP_BACKSLASH): Delete.
+
+2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strstr): New function.
+ (expand_builtin): Handle BUILT_IN_STRSTR and BUILT_IN_STRCHR.
+
+ * builtins.def (BUILT_IN_STRSTR, BUILT_IN_STRCHR): New entries.
+
+ * c-common.c (c_common_nodes_and_builtins): Declare builtin strstr
+ and builtin strchr.
+
+2000-10-31 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (fcmov_comparison_operator): Check for
+ CCFPmode or CCFPUmode instead of CCmode.
+ (ix86_expand_fp_movcc): Call ix86_expand_setcc for most
+ unordered operations as well.
+
+2000-10-31 Richard Henderson <rth@redhat.com>
+
+ * c-semantics.c (genrtl_do_stmt): Use integer_zerop instead
+ of integer_zero_node.
+
+2000-10-31 Richard Henderson <rth@redhat.com>
+
+ * c-semantics.c (genrtl_do_stmt): Special case do/while(0).
+
+2000-10-31 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/unknown-elf.h (UNIQUE_SECTION_P): Do not allow
+ -fdata-sections to override the section attribute of a DECL.
+
+2000-10-31 Chris Demetriou <cgd@sibyte.com>
+
+ * libgcc2.c (__shtab): Remove __shtab variable.
+ * libgcc-std.ver (GCC_3.0): Remove __shtab from symbol list.
+ * Makefile.in (LIB2FUNCS): Remove _shtab from list of library
+ members.
+
+2000-10-31 Jim Wilson <wilson@redhat.com>
+
+ * defaults.h (ASM_OUTPUT_DEBUG_LABEL): New.
+ * tm.texi (ASM_OUTPUT_DEBUG_LABEL): Document.
+ * dwarf2out.c (dwarf2out_begin_block): Use ASM_OUTPUT_DEBUG_LABEL
+ instead of ASM_OUTPUT_INTERNAL_LABEL.
+ (dwarf2out_end_block, dwarf2out_label): Likewise.
+ * final.c (final_scan_insn, case NOTE_INSN_DELETED_LABEL): Likewise
+ * config/ia64/ia64.h (ASM_OUTPUT_DEBUG_LABEL): Define.
+
+2000-10-31 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr.
+ (size_of_locs): Set it.
+ (output_loc_operands): Use it to compute branch displacement.
+ (int_loc_descriptor): New.
+ (mem_loc_descriptor): Dereference memory in the proper size.
+ Use DW_OP_plus_uconst when possible. Use int_loc_descriptor.
+ (loc_descriptor_from_tree): New.
+ (rtl_for_decl_location): Break out from ...
+ (add_location_or_const_value_attribute): ... here.
+ (add_bound_info): Use loc_descriptor_from_tree.
+
+2000-10-31 Neil Booth <neilb@earthling.net>
+
+ * cpp.texi: Update for new command line assertion syntax.
+ * cpplib.c (cpp_define): Simplify a bit.
+ (cpp_assert, cpp_unassert): Use handle_assertion.
+ (handle_assertion): New function; accept new command line
+ syntax with '='.
+ * testsuite/gcc.dg/cpp/assert3.c: New tests.
+
+2000-10-31 Neil Booth <neilb@earthling.net>
+
+ * cppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if
+ undefined. Remove #ifdef check.
+ * config/i386/sol2.h, config/rs6000/sol2.h, config/sparc/sol2.h:
+ Define STDC_0_IN_SYSTEM_HEADERS to 1.
+
+2000-10-31 Jan Hubicka <jh@suse.cz>
+ Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.h: Clarify CCNOmode description in comment.
+ (EXTRA_CC_MODES): Remove CCRCmode.
+ * config/i386/i386.c (ix86_comparison_operator): Remove CCRCmode.
+ (put_condition_code, ix86_match_ccmode): Likewise.
+ (ix86_cc_mode): Likewise. Fix comment.
+ (ix86_expand_strlensi_unroll_1): *rc patterns are gone.
+ * config/i386/i386.md: Add unspec 12 description.
+ (adddi3 split): Use unspec 12 instead of CCRCmode.
+ (addsi3_carry_rc): Remove.
+ (addsi3_cc, addqi3_cc): New patterns.
+ (addsi_3): Swap operands, match CCZmode.
+ (addsi_4): Rewritten.
+ (addsi_5): Renamed from addsi_6.
+ (addsi_6): Removed.
+ (addhi_3): Swap operands, match CCZmode.
+ (addhi_4): Rewritten.
+ (addhi_5): Renamed from addhi_6.
+ (addhi_6): Removed.
+ (addqi_3): Swap operands, match CCZmode.
+ (addqi_4): Rewritten.
+ (addqi_5): Renamed from addqi_6. Use =q constraint for clobber.
+ (subsi3_carry_rc): Removed.
+ (iorqi_3): Use =q constraint for clobber.
+ (xorqi_cc_2): Likewise.
+ (negdi2_1 split): Don't use CCRCmode, use ltu instead of gtu.
+ (x86_movsicc_0_m1_rc): Removed.
+ (cmp?i peepholes): Remove neg. Use CCGCmode instead of CCRCmode.
+
+2000-10-31 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-typeck.c (build_unary_op): If pedantic, pedwarn for increment
+ and decrement of complex types.
+
+2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_fputs): When deleting NOP calls to
+ builtin fputs, ensure we still evaluate the stream in case it
+ has side-effects.
+
+2000-10-31 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0)
+ to expand_shift.
+
+Tue Oct 31 15:33:27 2000 J"orn Rennecke <amylaar@redhat.com>
+
+ * sh-protos.h (reg_no_subreg_operand, emit_fpscr_use): Don't declare.
+ (fp_extended_operand, emit_fpscr_use): Likewise.
+ * sh.c (reg_no_subreg_operand, fp_extended_operand): Delete functions.
+ (fpul_operand): New function.
+ * sh.h (PREDICATE_CODES): Remove reg_no_subreg_operand and
+ fp_extended_operand. Add fpul_operand.
+ * sh.md (mulsf3, mulsf3_i4): Use fp_arith_reg_operand for "f" operands.
+ (mulsf3_ie, macsf3, cmpgtsf_t, cmpeqsf_t, ieee_ccmpeqsf_t): Likewise.
+ (cmpgtsf_t_i4, cmpeqsf_t_i4, ieee_ccmpeqsf_t_4, negsf2): Likewise.
+ (negsf2_i, sqrtsf2, sqrtsf2_i, abssf2, abssf2_i, adddf3): Likewise.
+ (adddf3_i, subdf3, subdf3_i, muldf3, muldf3_i, divdf3): Likewise.
+ (divdf3_i): Likewise.
+ (floatsisf2): Likewise. Use fpul_operand for 'y' operand.
+ (floatsisf2_i4, floatsisf2_ie, fix_truncsfsi2): Likewise.
+ (fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i): Likewise.
+ (fix_truncdfsi2, fix_truncdfsi2_i, extendsfdf2): Likewise.
+ (extendsfdf2_i4, truncdfsf2, truncdfsf2_i4): Likewise.
+
+2000-10-31 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * config/i386/i386.c (ix86_init_builtins): Correct return type
+ building v4hi_ftype_v4hi_int_int tree node.
+ (ix86_expand_builtin): Use correct operand numbers 0 and 1.
+ Copy operand 0 into a Pmode register, don't generate a MEM rtx.
+
+ * config/i386/i386.md (sse_movntdi): Use mmx register constraint
+ for operand 1.
+ (mmx__uavgv8qi3): Correct insn mnemonic.
+ (mmx_psadbw): Correct insn mnemonic. Use V8QI mode for operands 1 and 2.
+ (mmx_punpckhwd): Correct insn mnemonic.
+ (mmx_punpckhdq): Likewise.
+ (mmx_punpcklwd): Likewise.
+ (mmx_punpckldq): Likewise.
+ (prefetch): Use immediare_operand and 'n' constraint for operand 1.
+ Renumber case labels to match the _mm_prefetch constants defined in
+ xmmintrin.h.
+
+ * recog.c (split_all_insns): Don't try to call cleanup_subreg_operands
+ if the splitter didn't emit new insns.
+ Make sure we call cleanup_subreg_operands even when splitting the last
+ insn in a basic block.
+
+ * invoke.texi (Debugging Options): Describe -do.
+ * toplev.c (enum_dump_file_index): New entry DFI_postreload.
+ (dump_file): Likewise.
+ (rest_of_compilation): Split .greg dump into .greg and .postreload.
+
+2000-10-30 Neil Booth <neilb@earthling.net>
+
+ * cppfiles.c (stack_include_file): Check for stacked contexts
+ here.
+ * cpphash.h (_cpp_do__Pragma): New prototype.
+ * cppinit.c (cpp_reader_init): Add _Pragma keyword to hash table.
+
+ * cpplex.c (skip_escaped_newlines): Only process trigraphs and
+ escaped newlines if !(buffer->from_stage3).
+ (_cpp_lex_token): Warn about missing newlines iff
+ !buffer->from_stage3.
+
+ * cpplib.c (get__Pragma_string, destringize,
+ _cpp_do__Pragma): New functions.
+ (run_directive): Set output_line for _Pragma to avoid line
+ markers in output. Set from_stage3 and prevent macro expansion
+ for _Pragma and command-line options. Check buffer exhaustion.
+ (cpp_push_buffer): Don't check for stacked macro contexts, as
+ this is perfectly legitimate for _Pragma. Move the check to
+ stack_include_file instead. Set from_stage3 iff buffer is
+ preprocessed input.
+
+ * cpplib.h (struct cpp_buffer): Make warned_cplusplus_comments
+ unsigned. New boolean from_stage3.
+ (struct spec_nodes): Add n__Pragma.
+
+ * cppmacro.c (enter_macro_context): Flip sense of return value.
+ (_cpp_get_token): Handle _Pragma operator.
+
+2000-10-30 Phil Edwards <pme@sources.redhat.com>
+
+ * gcc.texi: The C++ standard isn't "draft" anymore.
+
+2000-10-30 Mark Mitchell <mark@codesourcery.com>
+
+ * cppmacro.c (builtin_macro): Use NT_VOID, not T_VOID.
+
+2000-10-29 Neil Booth <neilb@earthling.net>
+
+ * cpplib.c (skip_rest_of_line): Use _cpp_get_token.
+
+2000-10-29 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * toplev.c, flags.h, fold-const.c, real.c, rtl.c,
+ fixinc/inclhack.def: Change comments mentioning C9X to refer to
+ C99 instead.
+
+ * invoke.texi: Document that -V will only work for very similar
+ versions of driver and compiler.
+
+2000-10-29 Neil Booth <neilb@earthling.net>
+
+ * cppmacro.c (_cpp_create_definition): Optimize the case of
+ a macro defined to itself.
+
+2000-10-29 Neil Booth <neilb@earthling.net>
+
+ * cpplex.c (save_comment): Don't store new lines in C++ comments.
+
+2000-10-29 Michael Hayes <mhayes@redhat.com>
+
+ * integrate.c (copy_insn_list): Copy the unchanging flag for calls.
+
+2000-10-28 Geoffrey Keating <geoffk@cygnus.com>
+
+ * cpphash.c (cpp_forall_identifiers): Add context variable
+ for callback routine.
+ * cppmain.c (dump_macro): Update to match cpp_forall_identifiers
+ change.
+ (main): Call cpp_forall_identifiers with null context.
+ * cpplib.h (cpp_forall_identifiers): Update prototype.
+
+ * cppmain.c: Make `parse_in' and `print' static.
+
+2000-10-28 Alan Modra <alan@linuxcare.com.au>
+
+ * c-decl.c (finish_function): Clear c_function_name_declared_p.
+
+2000-10-28 Richard Henderson <rth@redhat.com>
+
+ * regrename.c (scan_rtx_address): Frob action, not class,
+ when trying to disable optimization.
+
+2000-10-28 Mark Mitchell <mark@codesourcery.com>
+
+ * c-semantics.c (make_rtl_for_local_static): Don't clobber
+ DECL_ASSEMBLER_NAME.
+
+2000-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * configure.in: Determine and substitute gcc_version_full.
+ * configure: Regenerate.
+ * gccbug.in: Use it to give full version. Don't allow
+ confidential PRs.
+
+2000-10-28 Richard Henderson <rth@redhat.com>
+
+ * recog.c (split_all_insns): Run cleanup_subreg_operands
+ after reload.
+
+ * regrename.c (regrename_optimize): Verify that all registers of
+ a multiple register mode are available.
+ (scan_rtx_address): Accept the mode of the address; all callers
+ changed.
+
+ * cpplib.c (run_directive): Fix prototype.
+
+2000-10-28 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * reload.c (find_reloads): Distinguish "wins" so that we know whether
+ a given operand won because of a matching constraint or not; then use
+ that information to compute goal_alternative_matched properly.
+ * reload1.c (choose_reload_regs): Never set reload_override_in for an
+ optional reload.
+
+ * config/ia64/ia64.h (RTX_COSTS): A few more entries, and a more
+ accurate value for MULT.
+ * config/ia64/ia64.c (ia64_print_operand): Require probability to be
+ 2% or > 98% before using static branch prediction bits.
+
+2000-10-28 Neil Booth <neilb@earthling.net>
+
+ New macro expander.
+
+ * cpplib.c (struct answer): New.
+ (struct if_stack): Use cpp_lexer_pos rather than line and col.
+ Rename cmacro mi_cmacro.
+ (struct directive, KANDR, STDC89, EXTENSION, COND, IF_COND, INCL,
+ IN_I): New directive and flags.
+ (skip_rest_of_line, check_eol, run_directive, glue_header_name,
+ parse_answer, parse_assertion, find_answer): New functions.
+ (parse_ifdef, detect_if_not_defined, validate_else): Remove.
+ (lex_macro_node): New function to replace parse_ifdef and
+ get_define_node.
+
+ (_cpp_handle_directive): New function, combines _cpp_check_directive
+ and _cpp_check_linemarker.
+
+ (do_define, do_undef, parse_include, do_include, do_import,
+ do_include_next, read_line_number, do_line, do_ident, do_pragma,
+ do_pragma_once, do_pragma_poison, do_pragma_dependency):
+ Update for new token getting interface.
+
+ (do_ifdef, do_ifndef, do_if, do_else, do_endif, push_conditional)
+ : Update for new multiple-include optimisation technique.
+ (do_elif): Don't forget to invalidate controlling macros.
+
+ (unwind_if_stack, cpp_defined, cpp_push_buffer, cpp_pop_buffer): Update.
+ (parse_assertion, parse_answer, find_answer, _cpp_test_assertion):
+ Functions to handle assertions with the new token interface.
+ (do_assert, do_unassert): Use them.
+
+ (cpp_define, _cpp_define_builtin, cpp_undef, cpp_assert, cpp_unassert):
+ Use run_directive.
+
+ (_cpp_init_stacks): Register directive names. Don't register special
+ nodes.
+
+ * cpperror.c (print_containing_files, _cpp_begin_message): Update to
+ new position recording regime.
+ (cpp_ice, cpp_fatal, cpp_error, cpp_error_with_line, cpp_warning,
+ cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
+ cpp_pedwarn_with_file_and_line): Update for _cpp_begin_message changes.
+ (cpp_type2name): Move to cpplex.c.
+
+ * cppexp.c (parse_charconst): spec_nodes is no longer a pointer.
+ (parse_defined): Update to handle new multiple include optimisation
+ method. Remove poisoned identifier warning.
+ (parse_assertion, TYPE_NAME): Delete.
+ (lex): Update for multiple include optimisation, removal of
+ CPP_DEFINED, to use _cpp_test_assertion for assertions and
+ cpp_token_as_text.
+ (_cpp_parse_expr): Update for MI optimisation, and to use op_as_text.
+ (op_as_text): New function, to wrap cpp_token_as_text.
+
+ * cppfiles.c (stack_include_file, _cpp_pop_file_buffer):
+ Update for MI optimisation.
+ (_cpp_execute_include): Take a token rather than 3 arguments. Fix
+ segfault on diagnostic.
+ (_cpp_compare_file_date): Take a token rather than 3 args.
+ (cpp_read_file): Work correctly for zero-length files.
+
+ * cpphash.c (_cpp_init_macros, _cpp_cleanup_macros): Rename
+ _cpp_init_hashtable and _cpp_cleanup_hashtable.
+ (cpp_lookup): Place identifiers at front of identifier pool
+ for _cpp_lookup_with_hash.
+ (_cpp_lookup_with_hash): Require identifiers to be at the front of
+ the identifier pool. Commit the memory if not already in the
+ hash table.
+
+ * cppinit.c (cpp_reader_init): Move cpp_init_completed test to top.
+ Initialize various members of cpp_reader, memory pools, and the
+ special nodes.
+ (cpp_printer_init): Delete.
+ (cpp_cleanup): Update.
+ (struct builtin, builtin_array, initialize_builtins): Update for new
+ hashnode definition and builtin handling.
+ (cpp_start_read, cpp_finish): Don't take or initialize a
+ printer. Update.
+
+ * cpplib.h (cpp_printer, cpp_toklist, CPP_DEFINED, BOL,
+ PASTED, VAR_ARGS, BEG_OF_FILE, IN_DIRECTIVE, KNOWN_DIRECTIVE,
+ T_VOID, T_SPECLINE, T_DATE, T_FILE, T_BASE_FILE, T_INCLUDE_LEVEL,
+ T_TIME, T_STDC, T_OPERATOR, T_POISON, T_MACRO, T_ASSERTION): Delete.
+ (struct cpp_pool, struct cpp_macro, struct cpp_lexer_pos,
+ struct cpp_lookahead, CPP_DHASH, enum mi_state, enum mi_ind,
+ NO_EXPAND, VARARGS_FIRST, struct cpp_token_with_pos,
+ struct toklist, struct cpp_context, struct specnodes,
+ TOKEN_LOOKAHEAD, TOKEN_BUFFSIZE, NODE_OPERATOR, NODE_POISONED,
+ NODE_BUILTIN, NODE_DIAGNOSTIC, NT_VOID, NT_MACRO, NT_ASSERTION,
+ enum builtin_type, cpp_can_paste): New.
+ (struct cpp_token): Delete line and col members.
+ (struct cpp_buffer): New member output_lineno.
+ (struct lexer_state): Delete indented, in_lex_line, seen_dot.
+ Add va_args_ok, poisoned_ok, prevent_expansion, parsing_args.
+ (struct cpp_reader): New members lexer_pos, macro_pos, directive_pos,
+ ident_pool, temp_string_pool, macro_pool, argument_pool, string_pool,
+ base_context, context, directive, mi_state, mi_if_not_defined,
+ mi_lexed, mi_cmacro, mi_ind_cmacro, la_read, la_write, la_unused,
+ mlstring_pos, macro_buffer, macro_buffer_len.
+ Delete members mls_line, mls_column, token_list, potential_control_macro,
+ temp_tokens, temp_cap, temp_alloced, temp_used, first_directive_token,
+ context_cap, cur_context, no_expand_level, paste_level, contexts, args,
+ save_parameter_spellings, need_newline, .
+ Change type of date, time and spec_nodes members.
+ Change prototypes for include and ident callbacks.
+ (struct cpp_hashnode): Change type of name. Remove union members
+ expansion and code. Add members macro, operator and builtin.
+
+ (cpp_token_len, cpp_token_as_text, cpp_spell_token, cpp_start_read,
+ cpp_finish, cpp_avoid_paste, cpp_get_token, cpp_get_line,
+ cpp_get_output_line, cpp_macro_definition, cpp_start_lookahead,
+ cpp_stop_lookahead): New prototypes.
+ (cpp_printer_init, cpp_dump_definition): Delete prototypes.
+
+ (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, ufputs):
+ Move from cpphash.h.
+
+ * cpphash.h (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr,
+ ufputs): Move to cpplib.h.
+ (enum spell_type, struct token_spelling, _cpp_token_spellings, TOKEN_SPELL,
+ TOKEN_NAME, struct answer, FREE_ANSWER, KANDR, STDC89, EXTENSION,
+ COND, EXPAND, INCL, COMMENTS, IN_I, struct directive, directive_handler,
+ struct spec_nodes, _cpp_digraph_spellings, _cpp_free_temp_tokens,
+ _cpp_init_input_buffer, _cpp_grow_token_buffer, _cpp_init_toklist,
+ _cpp_clear_toklist, _cpp_expand_token_space, _cpp_expand_name_space,
+ _cpp_equiv_tokens, _cpp_equiv_toklists, _cpp_process_directive,
+ _cpp_run_directive, _cpp_get_line, _cpp_get_raw_token, _cpp_glue_header_name,
+ _cpp_can_paste, _cpp_check_directive, _cpp_check_linemarker,
+ _cpp_parse_assertion, _cpp_find_answer): Delete.
+ (VALID_SIGN, ALIGN, POOL_FRONT, POOL_LIMIT, POOL_BASE, POOL_SIZE,
+ POOL_USED, POOL_COMMIT, struct cpp_chunk, _cpp_lex_token, _cpp_init_pool,
+ _cpp_free_pool, _cpp_pool_reserve, _cpp_pool_alloc, _cpp_next_chunk,
+ _cpp_lock_pool, _cpp_unlock_pool, _cpp_test_assertion,
+ _cpp_handle_directive, DSC): New.
+ (struct include_file): New member defined.
+
+ (DO_NOT_REREAD, _cpp_begin_message, _cpp_execute_include,
+ _cpp_compare_file_date): Update.
+ (_cpp_pop_context, _cpp_get_token, _cpp_free_lookaheads, _cpp_push_token): New.
+ (_cpp_init_macros, _cpp_cleanup_macros): Rename to _cpp_init_hashtable,
+ _cpp_cleanup_hashtable.
+
+ * Makefile.in: Remove cppoutput.c.
+
+ * cppoutput.c: Delete
+
+ * fixheader.c (read_scan_file): Update for new cpp_get_token
+ prototype.
+ (recognized_function): New argument LINE.
+
+ * scan-decls.c (skip_to_closing_brace, scan_decls): Update for
+ new cpp_get_token prototype.
+
+ * scan.h (recognized_function): Update prototype.
+
+ * po/POTFILES.in: Remove cppoutput.c.
+
+2000-10-27 Mark Mitchell <mark@codesourcery.com>
+
+ * c-typeck.c (check_init_type_bitfields): Remove.
+ (constructor_incremental): Likewise.
+ (struct constructor_stack): Remove incremental bit.
+ (struct initializer_stack): Likewise.
+ (start_init): Don't play with constructor_incremental.
+ (finish_init): Likewise.
+ (really_start_incremental_init): Likewise.
+ (push_init_level): Likewise.
+ (pop_init_level): Likewise.
+ (output_init_level): Likewise.
+ (output_pending_init_elements): Likewise.
+
+2000-10-21 Mike Coleman <mcoleman2@kc.rr.com>
+
+ * c-pragma.c (handle_pragma_pack): Initialize align to -1.
+ Improve error messages. Correct parsing of
+ #pragma pack(pop [,id]). Do not check the user-supplied
+ alignment if we're popping.
+
+ * gcc.dg/pack-test-1.c: New test case.
+ * gcc.dg/pack-test-2.c: New test case.
+ * gcc.dg/pack-test-1.h: New file.
+
+2000-10-27 Neil Booth <neilb@earthling.net>
+
+ * cpp.texi: Update.
+
+2000-10-27 Kelley Cook <kelley.cook@home.com>
+
+ * invoke.texi: Document -mintel-syntax
+
+2000-10-27 Richard Henderson <rth@redhat.com>
+
+ * invoke.texi: Document -frename-registers. Add it to -O3.
+ * toplev.c (rest_of_compilation): Run regrename before ifcvt2.
+ (enum dump_file_index, dump_file): Update order.
+ (main): Set flag_rename_registers at -O3.
+
+2000-10-27 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.h (enum reg_class): Add PV_REG.
+ (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update.
+ (REG_CLASS_FROM_LETTER): Assign it to 'c'.
+ * config/alpha/alpha.md (call_osf_1): Use it.
+ (call_value_osf_1): Likewise.
+
+ * config/ia64/ia64.c: Revert 10-23 patch.
+ (ia64_hard_regno_rename_ok): New.
+ * config/ia64/ia64-protos.h: Declare it.
+ * config/ia64/ia64.h (HARD_REGNO_RENAME_OK): Use it.
+
+2000-10-27 Bernd Schmidt <bernds@redhat.co.uk>
+ Richard Henderson <rth@redhat.com>
+
+ * regrename.c: Rewrite to handle multi-register modes and
+ cond_exec instructions.
+ * Makefile.in (regrename.o): Update dependencies.
+ * recog.h (struct operand_alternative): Add is_address.
+ * recog.c (preprocess_constraints) [case 'p']: Set it.
+
+2000-10-27 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * configure.in: If not NO_MINUS_C_MINUS_O, substitute
+ OUTPUT_OPTION with '-o $@'. Make zlibdir, zlibinc relative to
+ top level. Kill oldstyle_subdirs. Do not include
+ $srcdir/$s/Makefile.in in all_lang_makefiles, but do include
+ $outputs. Do not run configure.lang from config.status.
+ Rearrange warning-flag logic to correspond to what the
+ makefile wants. Put special vax stage1 options in
+ @stage1_flags@ not @stage1_warn_cflags@. Don't do anything
+ with extra_c_objs, extra_cxx_objs, or extra_cpp_objs.
+ (--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if
+ switch is given, nothing otherwise.
+ * configure.lang: Delete.
+
+ * Makefile.in: Expunge all traces of extra_c_objs,
+ extra_cxx_objs, and extra_cpp_objs. Set MAYBE_CPPLIB from
+ @maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS. Set
+ warning options via a three level scheme so that -pedantic and
+ -Wtraditional are not used for non-C front ends: LOOSE_WARN,
+ STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS ->
+ WARN_CFLAGS. Distinguish STAGE1_CFLAGS from BOOT_CFLAGS.
+ Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES.
+ Set OUTPUT_OPTION, ZLIB, ZLIBINC. Do not set P,
+ LANG_FLAGS_TO_PASS. Add OUTPUT_OPTION to all object-file
+ generation rules. Wrap all rules that change the current
+ directory in parentheses; pmake doesn't spawn a new shell for
+ each command. Expunge all references to $(P). When one
+ command depends on another and they're run all at once, use &&
+ to separate them, not ;. Add libgcc_s$(SHLIB_EXT) to files
+ deleted on make clean. Force OUTPUT_OPTION='-o $@' in stage2
+ and beyond.
+
+ * objc/Make-lang.in: Wrap all rules that change the current
+ directory in parentheses. Expunge all references to $(P).
+ When one command depends on another and they're run all at
+ once, use && to separate them, not ;. Add OUTPUT_OPTION to
+ all object-file generation rules. Delete obsolete variables.
+ * objc/Makefile.in: Delete.
+
+2000-10-27 Jakub Jelinek <jakub@redhat.com>
+
+ * calls.c (expand_call): If sibcall_failure is set during pass 1,
+ clear tail_call_insns as well.
+
+2000-10-27 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm-protos.h (arm_function_ok_for_sibcall): Add
+ prototype.
+
+2000-10-26 Richard Henderson <rth@redhat.com>
+
+ * calls.c (expand_call): Supress sibcall if we have a
+ BLKmode return in registers.
+
+2000-10-26 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants
+ into memory.
+
+2000-10-26 Nathan Sidwell <nathan@codesourcery.com>
+
+ * tree.c (make_node, case 't'): Set alignment to that of
+ char_type_node.
+ * expr.c (move_by_pieces_ninsns): Abort if some length remains.
+
+2000-10-25 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (site.exp): Define HAVE_LIBSTDCXX_V3.
+ * configure.in (enable-libstdcxx-v3): Arrange to have
+ HAVE_LIBSTDCXX_V3 substituted into the output files.
+
+2000-10-25 Richard Henderson <rth@redhat.com>
+
+ * recog.c (constrain_operands): Initialize which_alternative
+ before no alternatives early exit.
+
+ * cse.c (find_comparison_args): Check that we can reverse a
+ comparison if needed before accepting the substitution.
+
+ * reload.c (find_reloads_address_part): Kill rtx obstack hackery.
+
+ * simplify-rtx.c (simplify_relational_operation): Sign extend
+ low words before sign extending to high words.
+
+2000-10-25 Nick Clifton <nickc@redhat.com>
+
+ * config/mcore/mcore.c: Include config.h before system.h.
+
+2000-10-25 Ray Essick <essick@ddna.labs.mot.com>
+
+ * config/mcore/mcore.md (return): Force function epilogue to
+ always be generated to work around epilogue suppression bug in
+ M*Core backend.
+
+2000-10-25 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (grokdeclarator): Move warning for qualified void
+ return types with -pedantic to when the function type is
+ constructed. At -W, warn in general for qualified function return
+ types, except for volatile void.
+ * invoke.texi: Document this new warning at -W.
+
+2000-10-25 Neil Booth <neilb@earthling.net>
+
+ * cpp.texi: Update with implementation-defined behavior and
+ internal limits.
+
+2000-10-25 Jakub Jelinek <jakub@redhat.com>
+
+ * stor-layout.c (layout_type): If TYPE_ALIAS_SET was already set on the
+ incomplete type force it into alias set 0.
+
+Wed Oct 25 01:02:44 EDT 2000 John Wehle (john@feith.com)
+
+ * alias.c: Include basic-block.h.
+ (loop_p): New function.
+ (mark_constant_function): Use it.
+ * Makefile.in (alias.o): Update dependencies.
+
+2000-10-24 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/mn10300/mn10300.c (secondary_reload_class): Treat pseudos
+ like memory.
+
+2000-10-24 Jim Wilson <wilson@cygnus.com>
+
+ * expmed.c (store_bit_field): Move integer pun code down after
+ code that calls emit_move_insn for entire register move.
+ * stor-layout.c (compute_record_mode): Revert Mar 25, Aug 18, and
+ Oct 20 changes. Only store mode in TYPE_MODE if RECORD_TYPE.
+
+2000-10-24 Richard Henderson <rth@cygnus.com>
+
+ * rtlanal.c (rtx_unstable_p, rtx_varies_p): Don't consider pic
+ register stable if PIC_OFFSET_TABLE_REG_CALL_CLOBBERED.
+
+2000-10-24 Aldy Hernandez <aldyh@redhat.com>
+
+ * gcse.c (cprop_insn): do not propagate constants into jump_insn
+ for machines with CC0 more than once.
+
+2000-10-24 Richard Henderson <rth@cygnus.com>, Aldy <aldyh@cygnus.com>
+
+ * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS): Treat
+ pseudos just like memory.
+
+2000-10-24 Alexandre Oliva <aoliva@redhat.com>
+
+ * combine.c (distribute_notes): Discard REG_LIBCALL and REG_RETVAL
+ when deleting libcall sequence collapsed to a single instruction.
+
+2000-10-24 Andrew Haley <aph@cygnus.co.uk>
+
+ * expr.c (do_store_flag): Don't crash if either side of a
+ comparison is error_mark_node.
+
+2000-10-24 Jakub Jelinek <jakub@redhat.com>
+
+ * sibcall.c (purge_mem_unchanging_flag): New function.
+ (optimize_sibling_and_tail_recursive_calls): Call it.
+
+2000-10-24 Philipp Thomas <pthomas@suse.de>
+
+ * Makefile.in (check-po): New target for doing checks in the po
+ subdir if all languages configured.
+ (CHECK_TARGETS): Add @CHECK_PO@, replaced with check-po via
+ configure if NLS is enabled.
+ * configure.in: If NLS is enabled, substitute CHECK_PO by check-po,
+ otherwise leave empty.
+ * configure: Regenerate.
+
+2000-10-23 Diego Novillo <dnovillo@cygnus.com>
+
+ * i386.c (print_operand): Handle new 'A' formatting code.
+ 387 opcodes need suffixes even with -mintel-syntax.
+ Check for explicit size override (codes 'b', 'w' and 'k').
+ (print_operand_address): Check if register prefix is needed when
+ emitting `ds' segment override.
+ * i386.h: Add comment about new 'A' formatting code.
+ * i386.md (jump and call patterns): Emit absolute references using %A.
+
+2000-10-23 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (ia64_expand_prologue): Mark extra
+ output registers as fixed.
+ (ia64_function_epilogue): Undo output fixation.
+
+2000-10-23 Richard Henderson <rth@cygnus.com>
+
+ * config/alpha/alpha.md: Add names for all unnamed insns; use
+ define_insn_and_split in some obvious places.
+ (lda): Remove.
+ (zero_extendqihi2): Use an expander w/ nonimmediate_operand for BWX.
+ (zero_extendqisi2, zero_extendqidi2): Likewise.
+ (zero_extendhisi2, zero_extendhidi2): Likewise.
+ (abs splitters): Fix match_scratch operand number.
+ (bcc_reverse): Swap pc & label instead of non-canonical compare.
+
+2000-10-23 Jim Wilson <wilson@cygnus.com>
+
+ * ia64.c (ia64_print_operand, case 'r'): Correct comment. Handle
+ CONST_INT.
+ * ia64.md (cmpsi_adjusted): Use %r3.
+ (cmpdi_adjusted): Likewise.
+
+2000-10-23 Diego Novillo <dnovillo@cygnus.com>
+
+ * config/i386/att.h (ASM_FILE_START): Define.
+
+2000-10-23 Diego Novillo <dnovillo@cygnus.com>
+
+ * config/i386/linux.h (ASM_FILE_START): Define.
+
+Wed Oct 18 11:16:40 2000 Donald Lindsay <dlindsay@cygnus.com>
+
+ * gcc/configure.in: m68k-coff tm_file should not have libgloss.h,
+ since this (only) drags in a crt0.o reference that the .ld files
+ also introduce.
+
+2000-10-23 Geoff Keating <geoffk@cygnus.com>
+
+ * reload1.c (reload_reg_reaches_end_p): A RELOAD_OTHER can
+ overwrite the value in a RELOAD_FOR_INPUT and other kinds of
+ reloads just like an RELOAD_FOR_OUTPUT would.
+
+ * local-alloc.c (update_equiv_regs): Add an abort(). When
+ deleting or moving insns, update reg_equiv[regno].init_insns.
+
+2000-10-23 Mark Mitchell <mark@codesourcery.com>
+
+ * c-tree.texi: Improve documentation for IF_STMTs and related
+ conditional statements.
+
+2000-10-22 Mark Mitchell <mark@codesourcery.com>
+
+ * expr.c (do_preexpand_calls): Remove.
+ (same_from_p): Don't use CALL_EXPR_RTL.
+ (expand_expr): Don't call preexpand_calls, or use CALL_EXPR_RTL.
+ (preexpand_calls): Remove.
+ * tree.c (first_rtl_op): Remove CALL_EXPR case.
+ (unsave_expr_1): Likewise.
+ * tree.def (CALL_EXPR): Give it only two slots.
+ * tree.h (CALL_EXPR_RTL): Remove.
+
+2000-10-21 Chandrakala Chavva <cchavva@redhat.com>
+
+ * libgcc-std.ver (__addvsi3, __addvdi3, __subvsi3, __subvdi3,
+ __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3):
+ New functions.
+
+2000-10-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * calls.c (combine_pending_stack_adjustment_and_call): Don't
+ adjust stack when unadjusted_alignment ends up as zero.
+
+2000-10-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * fixinc/genfixes: Remove EGCS reference.
+ * install.texi: Remove EGCS reference.
+ * INSTALL: Regenerate.
+
+2000-10-22 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.h (TYPE_IS_SIZETYPE): Add more documentation.
+
+2000-10-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * diagnostic.c: Remove EGCS reference in comment.
+
+Sat Oct 21 08:24:25 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * loop.c (strength_reduce): Fix error in last change.
+
+2000-10-20 David Edelsohn <edelsohn@gnu.org>
+
+ * Makefile.in (SHLIB_NM_FLAGS): New.
+ (libgcc.mk): Pass it.
+ * mklibgcc.in (libgcc.map): Use it.
+
+ * rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_LIBS,
+ SHLIB_MKMAP, SHLIB_MAPFILES, SHLIB_NM_FLAGS): New.
+
+2000-10-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.h (REG_CLASS_FROM_LETTER): Cast array arg to unsigned char.
+
+ * sparc.c (load_pic_register): Delete unused varaible.
+
+ * libgcc2.c (__addvsi3): Delete unused variable.
+
+ * libgcc2.h (__absvsi2, __absvdi2, __addvsi3, __addvdi3,
+ __subvsi3, __subvdi3, __mulvsi3, __mulvdi3, __negvsi2,
+ __negvdi2): Prototype.
+
+ * ssa.c (apply_delayed_renames): Avoid undefined operation.
+
+ * toplev.c (display_target_options): Make static to match
+ prototype. Delete empty declaration.
+
+2000-10-20 Tom Tromey <tromey@cygnus.com>
+
+ * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT.
+ * gcc.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT.
+
+Fri Oct 20 17:05:49 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case SAVE_EXPR): Set RTX_UNCHANGING_P on
+ returned MEM.
+ (expand_expr_unaligned, case ARRAY_REF): Check that index is
+ a constant before comparing it; use tree_low_cst.
+ * tree.c (save_expr): Set TREE_READONLY.
+ (substitute_expr): Return inside of NON_LVALUE_EXPR.
+ (build, build1): Set TREE_READONLY if all operands are.
+ (build_index_type): If upper bound is a negative number, lower
+ bound is zero and sizetype is unsigned, use upper bound of one and
+ lower of zero.
+
+2000-10-20 David Edelsohn <edelsohn@gnu.org>
+
+ * gcc.c (process_command, main): Use "because" instead of
+ "since" in error messages.
+
+Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * stor-layout.c (compute_record_mode): Use tree_low_cst.
+ Don't use mode of field for record unless sizes are the same.
+ (layout_type, case ARRAY_TYPE): Remove special bounds handling
+ previously added for Ada; also change to using host_integerp
+ and tree_low_cst.
+
+ * loop.c (strength_reduce): Show when new register made for
+ giv is known to be a pointer and its aligment if so and known.
+ (loop_dump_aux): Show VERBOSE parameter unused.
+
+ * gcse.c (set_hash_table_size): Now unsigned.
+ * sdbout.c (template_name_p): Add "const" to avoid warnings.
+ (sdbout_record_type_name, plain_type_1, sdbout_symbol): Likewise.
+ (sdbout_one_type, sdbout_parms, sdbout_reg_parms): Likewise.
+ (sdbout_end_epilogue): Remove variable NAME.
+ * system.h (getopt): Add default definition.
+ * config/alpha/alpha.c (print_operand): Don't continue processing
+ after issuing error.
+ (summarize_insn): Avoid use of UL in constant.
+
+ * function.c (locate_and_pad_parm): Use host_integerp and tree_low_cst.
+
+ * fold-const.c (force_fit_type): Unsigned values can overflow
+ if they are sizetype.
+ (int_const_binop): Don't use cache if overflows.
+
+2000-10-20 Richard Henderson <rth@cygnus.com>
+
+ * function.c (locate_and_pad_parm): Zero alignment_pad.
+
+ * regrename.c (rr_replace_reg): Rewrite to use recog_data to
+ perform substitutions, and apply_change_group to see if it worked.
+
+Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * dwarf2out.c (add_bound_info): Also ignore COND_EXPR.
+
+ * combine.c (struct undo): Change int to unsigned int.
+ (do_SUBST_INT): Args are unsigned int.
+ (make_extraction, force_to_mode): Use proper type when forming mask.
+ (make_field_assignment): Likewise.
+
+2000-10-20 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_info_recurse): Extract string constant
+ initializers from non-volatile constant arrays and check them as
+ formats.
+ * c-typeck.c (decl_constant_value): Don't check pedantic or check
+ for DECL_MODE (decl) != BLKmode.
+ (decl_constant_value_for_broken_optimization): New function which
+ includes these checks.
+ (default_conversion, convert_for_assignment, digest_init): Use
+ decl_constant_value_for_broken_optimization instead of
+ decl_constant_value.
+
+2000-10-20 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.h (DECL_ALIGN_UNIT): New macro.
+
+2000-10-14 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr-protos.h (avr_output_bld): New.
+ (out_shift_with_cnt): Add t_len argument.
+ * config/avr/avr.c (avr_num_arg_regs): Remove -mpack-args.
+ (output_movqi, output_movhi, output_movsisf): Optimize loading
+ any constant with exactly one bit set to NO_LD_REGS.
+ (out_shift_with_cnt): Optimize output code for size or speed,
+ depending on optimize_size. Handle small shift counts as well
+ (if not hand-optimized in ?sh??i3_out). Shifts can be done
+ with or without a scratch register, with help of __tmp_reg__
+ or __zero_reg__ if necessary. Add T_LEN argument to pass the
+ length of TEMPLATE in words, return total insn length in *LEN.
+ (ashlqi3_out, ashrqi3_out, lshrqi3_out): Change all calls to
+ out_shift_with_cnt to work with the above change.
+ (ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, lshrhi3_out,
+ lshrsi3_out): Likewise. Optimize more known shift count cases.
+ Remove cases already well optimized in out_shift_with_cnt.
+ (avr_output_bld): New function.
+ * config/avr/avr.h (MASK_PACK_ARGS, TARGET_PACK_ARGS): Remove.
+ (TARGET_SWITCHES): Remove -mpack-args backward compatibility.
+ * config/avr/avr.md (*reload_inqi, *reload_inhi, *reload_insi):
+ Add reload_completed to insn condition - only for peepholes.
+ (ashlqi3, ashrqi3, lshrqi3): Correct insn length for shift counts
+ in a register or memory.
+ (ashlhi3, ashlsi3, ashrhi3, ashrsi3, lshrhi3, lshrsi3): Likewise.
+ Do not require a scratch register.
+ (*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const,
+ *lshrhi3_const, *lshrsi3_const): New insns and matching peepholes.
+ Optimize shifts by known count using a scratch register, but only
+ if one is still available after register allocation.
+
+2000-10-20 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * t-vax: New file. Don't build modules from libgcc1.c.
+
+Fri Oct 20 00:57:00 EDT 2000 John Wehle (john@feith.com)
+
+ * alias.c: (mark_constant_function): Don't check pure functions.
+ Initialize and end alias analysis.
+ (nonlocal_mentioned_p): Rename from nonlocal_reference_p.
+ Don't make a special exception for recursion. Handle
+ UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local
+ unless it's volatile.
+
+ * local-alloc.c (equivalence): New structure.
+ (reg_equiv): Define.
+ (contains_replace_regs): Remove array and use
+ field in reg_equiv.
+ (memref_referenced_p): Likewise.
+ (no_equiv): Likewise.
+ (update_equiv_regs): Likewise.
+
+ (equiv_init_varies_p,
+ equiv_init_movable_p): New functions.
+ (update_equiv_regs): Use them. Use rtx_varies_p
+ instead of function_invariant_p. Process insns
+ from end to beginning. Allow a REG_EQUIV insn
+ within the same loop as a use to be moved, also
+ allow it to be moved out of a loop. Update
+ REG_DEAD notes when substituting into an insn.
+
+2000-10-19 Jim Wilson <wilson@cygnus.com>
+
+ * c-decl.c (start_decl): Check for error_mark_node type before using
+ COMPLETE_TYPE_P.
+ (finish_decl): Likewise. Don't give an error if decl type is
+ already error_mark_node.
+
+ * haifa-sched.c (compute_trg_info): Add explanatory comments.
+ New local update_blocks. Use update_blocks to remove duplicates
+ when computing update blocks. Check for bblst_table overflow.
+ (schedule_block): Add explanatory comment. Reduce bblst_size by
+ factor of 2.
+ * config/ia64/ia64.md (movdi_symbolic): Document loss of REG_LABEL
+ notes.
+
+2000-10-19 Chandrakala Chavva <cchavva@redhat.com>
+
+ * libgcc2.c (_mulvsi3): Change variables u and v to a and b.
+
+2000-10-19 Chandrakala Chavva <cchavva@redhat.com>
+
+ * expmed.c: Minor corrections in comments.
+ * invoke.texi: Added desciption for the new option -ftrapv.
+
+2000-10-19 Chandrakala Chavva <cchavva@redhat.com>
+
+ * libgcc2.c: Added the missing #endif.
+
+Thu Oct 19 14:25:11 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (CONST_OK_FOR_LETTER): Re-add 'N'; document.
+
+2000-10-18 Chandrakala Chavva <cchavva@redhat.com>
+
+ * expmed.c (expand_mult): Don't do synth_mult optimization for -ftrapv.
+ Use smulv_optab for -ftrapv.
+ (expand_mult_highpart): Use unsigned multiply.
+ (expand_divmod): Special-case division by -1.
+ For EXACT_DIV_EXPR, do right shift first, then the multiply.
+ For complex divide, use abs with unsigned result.
+ * expr.c (force_operand): Use unsigned multiply.
+ (expand_expr): Use overflow-trapping optabs for signed types if
+ flag_trapv.
+ If flag_trapv, don't generate a recursive call with EXPAND_SUM
+ if the type is signed and the original call wasn't EXPAND_SUM or
+ EXPAND_INITIALIZER.
+ * expr.h (addv_optab, subv_optab, smulv_optab, sdivv_optab): Declare.
+ (negv_optab, absv_optab): Declare.
+ * flags.h (flag_trapv): Declare.
+ * genopinit.c (optabs): Add entries for addv_optab, subv_optab,
+ smulv_optab, sdivv_optab, negv_optab and absv_optab.
+ (gen_insn): Interpret '$P' as requiring an integer mode,
+ including partial integer modes.
+ * loop.c (emit_iv_add_mult): Use unsigned expand_mult_add.
+ (product_cheap_p): Use unsigned expand_mult.
+ * optabs.c (addv_optab, subv_optab, smulv_optab, sdivv_optab): Define.
+ (negv_optab, absv_optab): Define.
+ (expand_binop): Use overflow-trapping optabs for signed types if
+ flag_trapv.
+ Handle negv_optab libe neg_optab.
+ (expand_abs): Take result_unsignedp argument instead of unsignedp one.
+ Use overflow-trapping optabs for signed result if flag_trapv.
+ (expand_complex_abs): Use overflow-trapping optabs for signed types if
+ flag_trapv.
+ Don't open-code complex absolute-value operation for flag_trapv.
+ (init_optabs): Initialize addv_optab, subv_optab, smulv_optab,
+ sdivv_optab, negv_optab and absv_optab.
+ * toplev.c (flag_trapv): Define.
+ (lang_independent_options f_options): Include flag_trapv.
+ * tree.h (TYPE_TRAP_SIGNED): Define.
+ * libgcc2.c (__addvsi3, __addvdi3, __subvsi3,__subvsi3, __subvdi3,
+ __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3):
+ New functions.
+ * Makefile.in: add _absvsi2 _absvdi2 _addvsi3 _addvdi3 _subvsi3
+ _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2.
+
+2000-10-18 Geoffrey Keating <geoffk@cygnus.com>
+ David V. Henkel-Wallace <gumby@cygnus.com>
+
+ * config/i386/t-netware: Bring in from the Red Hat tree.
+ * config/i386/netware.h: Likewise.
+ * config/netware.h: Likewise.
+ * config/rs6000/netware.h: Delete.
+ * configure.in: Add i[34567]86-*-netware.
+ * configure: Hand-edit to match configure.in change.
+
+2000-10-18 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (flag_no_builtin): Declare.
+ (flag_no_nonansi_builtin): Likewise.
+ (c_common_nodes_and_builtins): Change prototype.
+ * c-common.c (flag_no_builtin): New variable.
+ (flag_no_nonansi_builtin): Likewise.
+ (c_common_nodes_and_builtins): Remove parameters. Adjust
+ accordingly.
+ * c-decl.c (flag_no_builtin): Remove.
+ (flag_no_nonansi_builtin): Likewise.
+ (init_decl_processing): Adjust call to
+ c_common_nodes_and_builtins.
+
+2000-10-18 Marc Espie <espie@openbsd.org>
+
+ * tm.texi (LIBGCC_SPEC): Synch with reality.
+
+2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_types): Check for writing through a
+ NULL pointer argument.
+
+2000-10-18 Hans-Peter Nilsson <hp@axis.com>
+
+ * tm.texi (Exception Region Output): Document
+ DWARF_CIE_DATA_ALIGNMENT.
+ * dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Wrap definition in
+ #ifndef.
+ [ENABLE_CHECKING] (reg_save): Abort if offset is not a multiple of
+ DWARF_CIE_DATA_ALIGNMENT.
+
+2000-10-18 Michael Hayes <mhayes@cygnus.com>
+
+ * basic-block.h (struct loop): Delete fields pre_header_root
+ and pre_header_trace and replace with pre_header_edges
+ and num_pre_header_edges.
+ * flow.c (flow_loop_dump): Dump pre_header_edges.
+ (flow_loops_free): Free pre_header_edges.
+ (flow_loop_pre_header_scan): Calculate pre_header_edges.
+
+2000-10-18 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * contrib.texi: Update references to steering committee members
+ and Jeff Law's entry.
+
+2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (CPLUSPLUS_STD_VER, C_STD_VER, C_STD_NAME): Define.
+ (maybe_read_dollar_number, check_format_info_main): Use them for
+ pedantic warning messages.
+
+2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_info_main): Minor cleanup: move
+ variables into inner scopes; initialize declarations where
+ appropriate; don't hardcode "scanf" name on warning for zero
+ width.
+
+2000-10-17 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.c (back_end_hook): New variable.
+ * c-common.h (back_end_hook): Declare it.
+ * c-lang.c (finish_file): Use it.
+
+ * emit-rtl.c (init_emit_once): Initialize the const_int_htab
+ earlier.
+
+2000-10-18 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_comparison_operator, put_condition_code,
+ ix86_match_ccmode, ix86_cc_mode): Handle CCRCmode.
+ (ix86_expand_strlensi_unroll_1): Use CCRCmode.
+ * i386.h (EXTRA_CC_MODES): Add CCRCmode.
+ * i386.md (adddi and negdi splitter): Use CCRCmode.
+ (add?i_3, add?i_4, add?i_5): Use CCRCmode; swap operands
+ (subsi3_carry): add '*'
+ (addsi3_carry_rc, subsi3_carry_rc, x86_movsicc_0_m1_rc): New.
+ (cmp to add peep2): Use CCRCmode; swap operands.
+
+2000-10-18 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c: Fix a comment typo.
+ (round_frame_size): New.
+ (compute_saved_regs): Likewise.
+ (push): Likewise.
+ (pop): Likewise.
+ (push_order): Remove.
+ (pop_order): Likewise.
+ (function_prologue): Rearrange code for readability.
+ (function_epilogue): Likewise.
+
+ * config/h8300/h8300.md: Remove an unnecessary sign_extend
+ expander that is used when not optimizing. Output a tab after
+ each assembly insns.
+
+ * reorg.c: Fix formatting.
+
+2000-10-17 Joern Rennecke <amylaar@redhat.co.uk>
+
+ * reload1.c (move2add_note_store): Check for simple
+ auto-inc in destination.
+
+2000-10-17 Michael Chastain <chastain@redhat.com>
+
+ * config/i386/i386-aout.h: define INT_ASM_OP.
+
+Tue Oct 17 20:11:08 2000 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.c (print_operand): Handle case 'c' for .vtable_inherit
+
+Tue Oct 17 20:05:51 2000 Martin Buchholz <martin@xemacs.org>
+
+ * i370.md: Fix spelling typo.
+
+2000-10-17 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * function.c (locate_and_pad_parm): Don't align stack unconditionally.
+ Fixes execute/20001017-1.c on powerpc-linux-gnu.
+
+ * expr.c (store_constructor): Apply MEM_ALIAS_SET to MEMs only.
+ * rs6000/rs6000.c (rs6000_hash_constant): Use X0INT to access a
+ LABEL_REF.
+
+ * rs6000/rs6000.h (NO_DOLLAR_IN_LABEL, DOLLARS_IN_IDENTIFIERS,
+ ENCODE_SECTION_INFO, ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Move from
+ here...
+ * rs6000/aix.h: ...to here.
+ * rs6000/linux.h (ASM_APP_ON, ASM_APP_OFF): Define to Linux-style.
+
+2000-10-17 Jakub Jelinek <jakub@redhat.com>
+
+ * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Reload gp if needed.
+
+ * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Always use call, make
+ sure linker can relax even the delay slot mov %g1,%o7, fix output
+ formating.
+
+2000-10-17 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.md: Remove an unnecessary zero_extend
+ expander that is used when not optimizing. Output a tab after
+ each assembly insns.
+
+2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
+
+ * gcc.c: New options --target-help.
+ (process_command): Added code to parse this new option.
+ * toplev.c (display_target_options): New function to support the
+ above new option.
+ * cppinit.c (new_pending_directive) : New option OPT_target__help.
+ (cpp_handle_option): Support this new option.
+ * invoke.texi: Added notes about --target-help option.
+
+2000-10-17 Graham Stott <grahams@redhat.com>
+
+ * config/i386/i386.md (testqi_1): Add missing operand prefix
+ for operand 0.
+ * config/i386/i386-protos.h: Add missing prototype.
+
+2000-10-17 Diego Novillo <dnovillo@cygnus.com>
+
+ * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Symbol
+ _GLOBAL_OFFSET_TABLE should not have a $ prefix when
+ using -mintel-syntax.
+
+2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (FMT_FLAG_DOLLAR_MULTIPLE): Define.
+ (format_types): Use it for printf.
+ (maybe_read_dollar_number): Add parameter for the kind of format
+ involved. Warn for multiple use for arguments if this is
+ inappropriate for the kind of format involved.
+ (check_format_info_main): Update calls to maybe_read_dollar_number.
+
+2000-10-17 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * inclhack.def (hpux_maxint): Also apply fix to values.h.
+ * fixincl.x: Rebuilt.
+
+2000-10-17 Alexandre Oliva <aoliva@redhat.com>
+
+ * genrecog.c (write_switch): Return the first condition that needs a
+ label.
+
+2000-10-17 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * c-tree.h (warn_sequence_point): Move declaration to...
+ * c-common.h (warn_sequence_point): ... here.
+ * c-decl.c (warn_sequence_point): Move definition to...
+ * c-common.c (warn_sequence_point): ... here.
+ (struct reverse_tree): New.
+ (reverse_list, reverse_max_depth): New static variables.
+ (build_reverse_tree, common_ancestor, modify_ok
+ verify_sequence_points): New functions.
+ (c_expand_expr_stmt): Call verify_sequence_points if -Wsequence-point.
+ * c-typeck.c (check_modify_expr): Delete.
+ (build_modify_expr): Don't call it.
+
+2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.h (warn_missing_format_attribute): New variable.
+ * c-decl.c (warn_missing_format_attribute): New variable.
+ (c_decode_option): Decode -Wmissing-format-attribute and
+ -Wno-missing-format-attribute.
+ * c-common.c (check_function_format): If
+ -Wmissing-format-attribute, give a warning where a vprintf or
+ vscanf function is called by a function without its own printf or
+ scanf attribute.
+ * toplev.c (documented_lang_options): Add
+ -Wmissing-format-attribute.
+ * invoke.texi: Document -Wmissing-format-attribute.
+
+2000-10-17 Marc Espie <espie@openbsd.org>
+
+ * invoke.texi (-shared): Insist on requiring code generation flags
+ to be used along with -shared, and document the subtle failure that
+ may occur otherwise.
+
+2000-10-16 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (return_internal): Move `use' after `return'.
+
+2000-10-16 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * machmode.def: Correct comment.
+
+2000-10-16 Rodney Brown <RodneyBrown@mynd.com>
+
+ * print-rtl.c (print_rtx_head): Constify.
+ * rtl.h (print_rtx_head): Similarly.
+
+ * config/pa/pa/pa-protos.h (output_64bit_and, output_64bit_ior):
+ Constify char * return value.
+ * config/pa/pa/pa.c
+ (output_64bit_and, output_64bit_ior): Constify char * return value.
+ (pa_can_combine_p): Make static.
+ (function_arg): Decorate unused `named' argument. Fix comment typo.
+ (function_arg_partial_nregs): Decorate unused `named' argument.
+
+2000-10-16 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (format_check_results): New structure.
+ (finish_dollar_format_checking): Adjust to take a
+ format_check_results * parameter.
+ (check_format_info, check_format_info_recurse,
+ check_format_info_main): Split check_format_info into three
+ functions, the main checking going in check_format_info_main.
+ Recurse when any reduction of the format string argument towards a
+ string literal is done; go down both branches of a conditional
+ expression. Don't warn for extra format arguments or empty format
+ strings if they only occur in some branches of a conditional
+ expression.
+
+2000-10-16 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c: Remove obstack. Include ggc.h.
+
+2000-10-16 Jakub Jelinek <jakub@redhat.com>
+
+ * rtlanal.c (may_trap_p): Check operand modes of COMPARE.
+
+2000-10-15 Diego Novillo <dnovillo@cygnus.com>
+
+ * i386.md (*movsi_or): Switch operand order for intel syntax.
+
+2000-10-14 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * PROBLEMS: Remove.
+
+ * gcc.texi (Contributing): Update.
+
+2000-10-13 Diego Novillo <dnovillo@cygnus.com>
+
+ * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Output final jump using
+ appropriate assembler dialect.
+
+2000-10-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-common.c (c_expand_builtin): PARAMS-ize prototype.
+
+2000-10-12 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (output_movhi, output_movsisf): Fix loading
+ constants 1 and 2 to NO_LD_REGS.
+
+2000-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (c-parse.c, tradcif.c): Create atomically.
+
+ * objc/Make-lang.in (objc-parse.c): Likewise.
+
+2000-10-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c: Include obstack.h
+ (minipool_obstack, minipool_startobj): Define.
+ (arm_add_gc_roots): Initialize them.
+ (create_fix_barrier): Use our new obstack.
+ (push_minipool_barrier, push_minipool_fix): Likewise.
+ (arm_reorg): Release obstack memory.
+
+2000-10-13 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.md (nonlocal_goto_receiver): Remove.
+ (prologue, exception_receiver, builtin_setjmp_receiver): New
+ patterns.
+ * config/sparc/sparc.h (FINALIZE_PIC): Remove.
+ * config/sparc/sparc-protos.h (finalize_pic): Remove.
+ (load_pic_register): New prototype.
+ * config/sparc/sparc.c (pic_setup_code): Remove.
+ (finalize_pic): Rename to...
+ (load_pic_register): ...this function.
+ Don't look for nonlocal_goto_receivers and emit pic setup code
+ directly. Don't check current_function_uses_pic_offset_table.
+
+2000-10-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * tree.h (struct obstack): Declare.
+
+2000-10-12 Mark Mitchell <mark@codesourcery.com>
+
+ Remove obstacks.
+ * Makefile.in (ggc-callbacks.o): Remove target.
+ (flow.o): Depend on GGC_H.
+ * alias.c (init_alias_analysis):
+ Remove ggc_p conditionals.
+ (end_alias_analysis): Likewise.
+ * basic-block.h (init_flow): New function.
+ (allocate_reg_life_data): Declare.
+ * bb-reorder.c (function_obstack): Replace with ...
+ (flow_obstack): ... new variable.
+ (fixup_reorder_chain): Use it.
+ * c-decl.c (ggc_p): Remove.
+ (caller-save.c): Don't call oballoc/obfree.
+ * combine.c (struct
+ undobuf): Remove storage.
+ (try_combine): Don't call oballoc.
+ (undo_all): Don't call obfree.
+ * cse.c (insert): Use xmalloc, not
+ oballoc.
+ (cse_main): Adjust accordingly.
+ * dwarf2out.c (save_rtx): Remove
+ obstack code.
+ (dwarf2out_init): Remove ggc_p conditionals.
+ * emit-rtl.c (rtl_obstack): Remove.
+ (gen_rtx_CONST_INT): Remove ggc_p conditionals.
+ (make_insn_raw): Likewise.
+ (emit_insn_before): Likewise.
+ (emit_insn_after): Likewise.
+ (emit_insn): Likewise.
+ (gen_sequence): Likewise.
+ (copy_insn_1): Remove handling of `b' RTL components.
+ (init_emit_once): Remove ggc_p conditionals.
+ * except.c (create_rethrow_ref): Don't fool with obstacks.
+ (add_partial_entry): Likewise.
+ (call_get_eh_context): Likewise.
+ (begin_protect_partials): Likewise.
+ (protect_with_terminate): Likewise.
+ * explow.c
+ (plus_constant_wide): Likewise.
+ * expr.c (init_expr_once):
+ Likewise.
+ (emit_block_move): Likewise.
+ (clear_storage): Likewise.
+ (expand_expr): Likewise.
+ * flow.c (function_obstack): Remove.
+ (flow_obstack): New variable.
+ (flow_firstobj): Likewise.
+ (create_base_block): Use the flow_obstack.
+ (split_block): Likewise.
+ (split_edge): Likewise.
+ (calculate_global_regs_live): Likewise.
+ (allocate_bb_life_data): Make it static. Likewiwse.
+ (init_flow): New function.
+ (size_int_type_wide): Remove ggc_p conditionals.
+ * function.c
+ (push_function_context_to): Don't call save_tree_status.
+ (pop_function_context_from): Or restore_tree_status.
+ (assign_stack_local_1): Don't call push_obstacks.
+ (find_fixup_replacement): Use xmalloc.
+ (fixup_var_refs_insns): Free the storage.
+ (insns_for_mem_walk): Don't mess with obstacks.
+ (instantiate_decls): Likewise.
+ (trampoline_address): Likewise.
+ (expand_function_end): Likewise.
+ * function.h (sturct function):
+ Remove obstack-related variables.
+ (save_tree_status): Don't declare.
+ (restore_tree_status): Likewise.
+ * gcse.c (compute_can_copy):
+ Don't call oballoc/obfree.
+ * genattrtab.c (operate_exp): Remove
+ ggc_p conditionals.
+ (simplify_cond): Likewise.
+ (simplify_test_exp): Don't mess with obstacks.
+ (optimize_attrs): Likewise.
+ * gengenrtl.c (gendef): Don't include
+ ggc_p conditionals.
+ * ggc-callbacks.c (ggc_p): Remove.
+ * ggc-none.c (ggc_p): Remove.
+ * ggc.h (ggc_p): Don't declare.
+ * integrate.c (save_for_inline): Don't mess with obstacks.
+ (integrate_decl_tree): Likewise.
+ (output_inline_function): Likewise.
+ * lists.c
+ (init_EXPR_INSN_LIST_cache): Likewise.
+ * loop.c (temp_obstack):
+ Remove.
+ (rtl_obstack): Likewise.
+ (init_loop): Don't mess with obstacks.
+ (reg_address_cost): Free BIVs and GIVs.
+ (check_insns_for_bivs): Use xmalloc, not oballoc.
+ (find_mem_givs): Likewise.
+ (record_biv): Likewise.
+ (general_induction_var): Likewise.
+ (product_cheap_p): Likewse.
+ * optabs.c (init_one_libfunc): Remove
+ ggc_p conditional.
+ * print-tree.c (debug_tree): Don't use
+ oballoc/obfree.
+ (print_node): Likewise.
+ * profile.c (output_func_start_profiler):
+ Remove call to temporary_allocation.
+ * reload1.c
+ (eliminate_regs_in_insn): Don't mess with obstacks.
+ * resource.c
+ (mark_target_live_regs): Use xmalloc.
+ (free_resource_info): Free the memory.
+ * rtl.c (rtl_obstack):
+ Remove.
+ (rtvec_alloc): Don't mess with obstacks.
+ (rtx_alloc): Likewise.
+ (rtx_free): Remove.
+ (copy_rtx): Don't handle `b' cases.
+ (read_rtx): Use a local rtl_obstack.
+ * rtl.h (oballoc): Remove.
+ (obfree): Likewise.
+ (pop_obstacks): Likewise.
+ (push_obstacks): Likewise.
+ (allocate_bb_life_data): Likewise.
+ (allocate_reg_life_data): Likewise.
+ (rtx_free): Likewise.
+ * sdbout.c (sdbout_queue_anonymous_type):
+ Use tree_cons, not saveable_tree_cons.
+ * simplify-rtx.c
+ (cselib_init): Don't mess with obstacks.
+ * stmt.c
+ (mark_block_nesting): Mark the label_chain.
+ (epxand_label): Use ggc_alloc, not oballoc.
+ (clear_last_expr): Don't mess with obstacks.
+ (expand_decl_cleanup): Likewise.
+ (expand_dcc_cleanup): Likewise.
+ (expand_dhc_cleanup): Likewise.
+ (expand_anon_union_decl): Likewise.
+ (add_case_node): Use xmalloc, not oballoc.
+ (free_case_nodes): New function.
+ (expand_end_case): Call it.
+ * stor-layout.c (layout_type): Don't
+ mess with obstacks.
+ (layout_type): Likewise.
+ * toplev.c (wrapup_global_declarations):
+ Likewise.
+ (compile_file): Remove ggc_p conditionals.
+ (rest_of_compilation): Call init_flow. Remove ggc_p conditionals.
+ (decode_f_option): Remove ggc_p conditionals.
+ * tree.c
+ (function_maybepermanent_obstack): Remove.
+ (maybepermanent_obstack): Likewise.
+ (function_obstack): Likewise.
+ (tmeporary_obstack): Likewise.
+ (momentary_obstack): Likewise.
+ (temp_decl_obstack): Likewise.
+ (saveable_obstack): Likewise.
+ (rtl_obstack): Likewise.
+ (current_obstack): Likewise.
+ (expression_obstack): Likewise.
+ (struct obstack_stack): Likewise.
+ (obstack_stack): Likewise.
+ (obstack_stack_obstack): Likewise.
+ (maybepermanent_firstobj): Likewise.
+ (temporary_firstobj): Likewise.
+ (momentary_firstobj): Likewise.
+ (temp_decl_firstobj): Likewise.
+ (momentary_function_firstobj): Likewise.
+ (all_types_permanent): Likewise.
+ (struct momentary_level): Likewise.
+ (momentary_stack): Likewise.
+ (init_obstacks): Remove initialization of removed obstacks.
+ (save_tree_status): Remove.
+ (restore_tree_status): Likewise.
+ (temporary_allocation): Liekwise.
+ (end_temporary_allocation): Liekwise.
+ (resume_temporary_allocation): Likewise.
+ (saveable_allocation): Likewise.
+ (push_obstacks): Likewise.
+ (push_obstacks_nochange): Likewise.
+ (pop_obstacks): Likewise.
+ (allocation_temporary_p): Likewise.
+ (permanent_allocation): Likewise.
+ (preserve_data): Likewise.
+ (preserve_initializer): Likewise.
+ (rtl_in_current_obstack): Likewise.
+ (rtl_in_saveable_obstack): Likewise.
+ (oballoc): Likewise.
+ (obfree): Likewise.
+ (savealloc): Likewise.
+ (expralloc): Likewise.
+ (print_obstack_name): Likewise.
+ (debug_obstack): Likewise.
+ (object_permanent_p): Likewise.
+ (push_momentary): Likewise.
+ (perserve_momentary): Likewise.
+ (clear_momentary): Likewise.
+ (pop_momentary): Likewise.
+ (pop_momentary_nofree): Likewise.
+ (suspend_momentary): Likewise.
+ (resume_momentary): Likewise.
+ (make_node): Don't set TREE_PERMANENT.
+ (copy_node): Remove ggc_p conditionals. Don't set TYPE_OBSTACK.
+ Don't set TREE_PERMANENT.
+ (get_identifier): Remove ggc_p conditionals.
+ (build_string): Likewise.
+ (make_tree_vec): Likewise.
+ (build_decl_list): Remove.
+ (build_expr_list): Likewise.
+ (tree_cons): Remove ggc_p conditionals.
+ (decl_tree_cons): Remove.
+ (expr_tree_cons): Likewise.
+ (perm_tree_cons): Likewise.
+ (temp_tree_cons): Likewise.
+ (saveable_tree_cons): Likewise.
+ (build1): Remove ggc_p conditionals.
+ (build_parse_node): Likewise.
+ (build_type_attribute_variant): Don't mess with obstacks.
+ (build_type_copy): Likewise.
+ (type_hash_canon): Likewise.
+ (build_pointer_type): Likewise.
+ (build_reference_type): Likewise.
+ (build_index_type): Likewise.
+ (build_range_type): Likewise.
+ (dump_tree_statistics): Don't print obstack information.
+ * tree.h
+ (struct tree_common): Remove permanent_flag.
+ (TREE_PERMANENT): Remove.
+ (TREE_SET_PERMANENT): Likewise.
+ (TYPE_OBSTACK): Likewise.
+ (struct tree_type): Remove obstack.
+ (oballoc): Remove.
+ (savealloc): Likewise.
+ (build_decl_list): Likewise.
+ (build_expr_list): Likewise.
+ (perm_tree_cons): Likewise.
+ (temp_tree_cons): Likewise.
+ (saveable_tree_cons): Likewise.
+ (decl_tree_cons): Likewise.
+ (expr_tree_cons): Likewise.
+ (suspend_momentary): Likewise.
+ (allocation_temporary_p): Likewise.
+ (resume_momentary): Likewise.
+ (push_obstacks_nochange): Likewise.
+ (permanent_allocation): Likewise.
+ (push_momentary): Likewise.
+ (clear_momentary): Likewise.
+ (pop_momentary): Likewise.
+ (end_temporary_allocation): Likewise.
+ (pop_obstacks): Likewise.
+ (push_obstacks): Likewise.
+ (pop_momentary_nofree): LIkewise.
+ (preserve_momentary): Likewise.
+ (saveable_allocation): Likewise.
+ (temporary_allocation): Likewise.
+ (resume_temporary_allocation): Likewise.
+ (perserve_initializer): Likewise.
+ (debug_obstack): Likewise.
+ (rtl_in_current_obstack): Likewise.
+ (rtl_in_saveable_obstack): Likewise.
+ (obfree): Likewise.
+ * varasm.c (current_obstack): Remove.
+ (saveable_obstack): Remove.
+ (rtl_obstack): Remove.
+ (immed_double_const): Don't mess with obstacks.
+ (immed_real_cons): Likewise.
+ (output_constant_def): Likewise.
+ (init_varasm_status): Use xcalloc.
+ (mark_pool_constant): Mark the pool constant itself.
+ (free_varasm_status): Free memory.
+ (decode_rtx_const): Call bzero directly, rather than expanding it
+ inline.
+ (record_rtx_const): Don't mess with obstacks.
+ (force_const_mem): Likewise.
+ * config/arm/arm.c (arm_encode_call_attribute): Remove ggc_p
+ conditionals.
+ (aof_pic_entry): Likewise.
+ * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
+ * config/m32r/m32r.c (m32r_encode_section_info): Likewise.
+ * config/pa/pa.c (saveable_obstack): Remove.
+ (rtl_obstack): Likewise.
+ (current_obstack): Likewise.
+ (output_call): Don't mess with obstacks.
+ (hppa_encode_label): Remove ggc_p conditionals.
+ * config/romp/romp.c (get_symref): Don't mess with obstacks.
+ * config/rs6000/rs6000.c (output_toc): Remove ggc_p conditional.
+ (rs6000_encode_section_info): Likewise.
+ * config/sh/sh.c (get_fpscr_rtx): Likewise.
+
+Thu Oct 12 16:02:31 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (adddi3, subdi3 splitters): Update for new pattern.
+ (addsi3_cc, addqi3_cc, subsi3_cc): Remove
+ (addsi3_carry): Canonicalize.
+ (addqi_5): Remove '*'.
+ (sbb pattern): Canonicalize.
+
+ * i386.md (cmp to inc/add peep2): New.
+
+2000-10-12 Richard Earnshaw <rearnsha@arm.com>
+
+ * bb-reorder.c (reorder_basic_blocks): Allocate an aux block for
+ the exit block.
+
+2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi: Merge in contents of README.TRAD and TESTS.FLUNK.
+ * README.TRAD, TESTS.FLUNK: Remove.
+
+2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (decl_attributes): Don't allow strftime formats with
+ first_arg_num nonzero.
+ (check_format_info): Set wanted_type and wanted_type_name to zero
+ before they are possibly assigned and used.
+
+2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (scanf_flag_specs): Add flags ' and I.
+ (strftime_flag_pairs): Disallow any pair of the _, - and 0 flags,
+ or the ^ and # flags together.
+ (scan_char_table): Handle the ' and I flags.
+ (format_types): Add ' and I flags for scanf.
+
+2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (print_char_table): Use the unpromoted type for
+ lengths "h" and "hh" with conversions dioxXu.
+ (check_format_types): Apply the default argument promotions where
+ the wanted type is not a pointer target.
+
+2000-10-11 Michael Meeks <mmeeks@gnu.org>
+ Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-typeck.c (check_modify_expr): New function.
+ (build_modify_expr): Call it if warn_sequence_point.
+ * c-decl.c (warn_sequence_point): New variable.
+ (c_decode_option): Handle -Wsequence-point and
+ -Wno-sequence-point. Enable -Wsequence-point as part of -Wall.
+ * c-tree.h (warn_sequence_point): Declare.
+ * invoke.texi (-Wsequence-point): Document.
+ * toplev.c (documented_lang_options): Add -Wsequence-point and
+ -Wno-sequence-point.
+ Original work by Michael Meeks, 16 Jun 1998.
+
+Wed Oct 11 06:15:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.c (get_narrower): Don't look at precision of field if
+ not laid out yet.
+
+Tue Oct 10 23:14:33 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.c (valid_machine_decl_attribute): Allow `extern'
+ declaration for data with "progmem" attribute.
+
+2000-10-09 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (out_shift_with_cnt): Use AS2 macro.
+ Correct insn length if shift count is a memory operand.
+ * config/avr/avr.md: New define_peephole2 to use *reload_inqi.
+ (*iorhi3_clobber): Change lo8 to hi8.
+ (zero_extendhisi2): Change %B0 to %A1.
+ (ashlhi3, ashrhi3): Correct insn length.
+ (andhi3, abssf2, extendqisi2, extendhisi2): Change "cc"
+ from "clobber" to "set_n" in some alternatives.
+
+2000-10-10 Jakub Jelinek <jakub@redhat.com>
+
+ * reload1.c (calculate_needs_all_insns): If deleting an instruction,
+ remove its insn_chain structure as well.
+
+2000-10-09 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * dbxout.c (dbxout_source_line): Remove extra tab.
+
+2000-10-09 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/elfos.h (UNIQUE_SECTION): Apply STRIP_NAME_ENCODING on name.
+
+2000-10-09 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (LANG_LIB2FUNCS): Remove.
+ (LIB2FUNCS): Remove _pure.
+ (LIB2ADD): Remove LANG_LIB2FUNCS.
+ (stage_a): Don't set LANG_LIB2FUNCS.
+ * libgcc2.c (__terminate): Mark noreturn.
+ (__pure_virtual): Remove.
+ * mklibgcc.in: Remove LIB2ADD .txt processing.
+
+2000-10-09 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (push_multi): Revert unintended change.
+
+2000-10-09 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c: Miscellaneous white space and comment clean-ups. No
+ functional change.
+ * arm.md: Likewise.
+
+2000-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c (c_expand_builtin_printf): Set the TREE_TYPE of a new
+ STRING_CST by calling combine_strings.
+
+2000-10-09 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (thumb_expand_movstrqi): Rewrite to support SSA form.
+ (thumb_output_move_mem_multiple): Support new insn format.
+ * arm.md (movmem12b): Use SSA compatible format.
+ (movmem8b): Likewise.
+
+2000-10-09 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (predicable): New attribute, default to "no".
+ (all patterns): Mark as predicable if appropriate.
+ (conditional execution splits): Split using predication format.
+ (define_cond_exec): Define.
+ * arm.c (arm_print_operand): handle insn predicate.
+
+2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README.NS32K: Remove file.
+
+2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README-bugs: Remove file.
+
+2000-10-08 Philipp Thomas <pthomas@suse.de>
+ * aclocal.m4 (AM_GNU_GETTEXT): Fix non portable use of == operator
+ for test.
+ * configure: Rebuilt.
+
+2000-10-08 Philipp Thomas <pthomas@suse.de>
+ * aclocal.m4 (AM_WITH_NLS): When not using included gettext,
+ disable catalog building if no suitable program was found.
+ Move warning message from here
+ (AM_GNU_GETTEXT): To here.
+ * configure: Rebuilt.
+
+2000-10-08 Philipp Thomas <pthomas@suse.de>
+ * aclocal.m4 (GCC_PATH_PROG): New. Like AC_PATH_PROG but uses
+ different cache variables.
+ (GCC_PATH_PROG_WITH_TEST): New. Like AM_PATH_PROG_WITH_TEST but
+ uses different cache variables.
+ (AM_WITH_NLS): Use GCC_PATH_PROG and GCC_PATH_PROG_WITH_TEST.
+ * configure: Regenerated.
+
+2000-10-08 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (libgcc.mk): Pass SHLIB_EXT, not SHLIB_LIBS.
+ * configure.in (sparc*-*-solaris*): Use t-slibgcc{,-sld}.
+ * mklibgcc.in: Consider SHLIB_LINK the entire shlib build command.
+ Use SHLIB_EXT.
+
+ * config/t-linux (SHLIB_EXT): New.
+ (SHLIB_LINK): Use the entire build command, with substitutions.
+ (SHLIB_LIBS): Remove.
+ * config/alpha/t-osf4: Likewise.
+ * config/mips/t-iris6: Likewise.
+ * config/sparc/t-sol2: Likewise, but move shlib stuff...
+ * config/sparc/t-slibgcc-sld: ...here.
+ * config/sparc/t-slibgcc: New file.
+
+2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * tm.texi (INTMAX_TYPE, UINTMAX_TYPE): Define.
+ * c-common.h (enum c_tree_index): Add CTI_INTMAX_TYPE and
+ CTI_UINTMAX_TYPE.
+ (intmax_type_node, uintmax_type_node): Define.
+ * c-common.c (decl_attributes): If pedantic, warn if `mode'
+ attributes create a type wider than intmax_t.
+ (T_IM, T_UIM): Define properly.
+ * c-decl.c (INTMAX_TYPE, UINTMAX_TYPE): Define if not already
+ defined.
+ (init_decl_processing): Initialize intmax_type_node and
+ uintmax_type_node.
+ * c-lex.c (lex_number): When pedantic and warning for integer
+ constants that are too large, in C99 mode warn for those that have
+ a type wider than long long.
+
+2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (FMT_FLAG_ARG_CONVERT, FMT_FLAG_SCANF_A_KLUDGE,
+ FMT_FLAG_FANCY_PERCENT_OK): Define.
+ (format_char_info): Add flag "4" to comment.
+ (format_flag_spec, format_flag_pair): New structures.
+ (format_kind_info): Add additional fields to control format
+ checking.
+ (printf_flag_specs, printf_flag_pairs, scanf_flag_specs,
+ scanf_flag_pairs, strftime_flag_specs, strftime_flag_pairs): New
+ arrays.
+ (time_char_table): Use "4" flag to handle %Ey.
+ (format_types): Add entries for new fields.
+ (get_flag_spec): New function.
+ (check_format_info): Increase size of flag_chars[] to 256.
+ Control format checking using the new fields of a format_kind_info
+ and the new tables; remove all conditionals on printf_format_type,
+ scanf_format_type or strftime_format_type. Handle all details of
+ bad combinations of flags (including width, precision and strftime
+ modifiers) through data rather than ad hoc code. Handle all
+ details of standard versions in which flags appeared through
+ data. Use the "4" flag.
+
+2000-10-07 Will Cohen <wcohen@redhat.com>, Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.md: Remove the memory alternative and correct
+ the insn lengths in the templates for sign extension and zero
+ extension.
+
+2000-10-07 Richard Henderson <rth@cygnus.com>
+
+ * calls.c (expand_call): Disallow sibcalls to noreturn functions.
+ * flow.c (make_edges): Revert last change.
+
+ * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Don't test
+ TREE_THIS_VOLATILE.
+ * config/pa/pa.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
+
+2000-10-06 David O'Brien <obrien@dragon.nuxi.com>
+
+ * config/alpha/elf.h: Standardize the formatting.
+
+2000-10-06 David O'Brien <obrien@FreeBSD.org>
+
+ * config/alpha/elf.h: Protect the ASM_OUTPUT_IDENT definition with an
+ #undef.
+
+2000-10-06 Richard Henderson <rth@cygnus.com>
+
+ * function.c (diddle_return_value): Examine
+ current_function_return_rtx instead of the DECL_RESULT.
+ (expand_function_end): Handle reloading DECL_RESULT from memory
+ into a hard register. Query promote_mode for sign of mismatched
+ modes.
+
+2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com>
+
+ * haifa-sched.c (schedule_insns): Fix typo in freeing
+ forward_dependency_cache.
+
+2000-10-06 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): Add
+ `TARGET_SH2' as a condition.
+
+2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com>
+
+ * haifa-sched.c (anti_dependency_cache, output_dependency_cache,
+ forward_dependency_cache): New variables.
+ (add_dependence, remove_dependence): Use anti_dependency_cache and
+ output_dependency_cache.
+ (compute_block_forward_dependences): Use forward_dependency_cache.
+ (schedule_insns): Allocate and free memory for anti/output/forward
+ dependencies caches.
+
+2000-10-06 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of
+ `! TARGET_SH1'. Reindent.
+
+2000-10-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (is_valid_printf_arglist, expand_builtin_printf):
+ Move functions from here ...
+
+ * c-common.c (is_valid_printf_arglist, c_expand_builtin_printf):
+ ... to here.
+ (c_expand_builtin): New function.
+ (init_function_format_info): Don't set `check_function_format_ptr'.
+ (c_common_nodes_and_builtins): Set built_in_class type for
+ printf/__builtin_printf to BUILT_IN_FRONTEND.
+ (c_expand_expr): Handle CALL_EXPRs that are front-end builtins.
+
+ * c-common.h (build_function_call): Declare.
+
+ * expr.c (expand_expr): Pass builtins with class BUILT_IN_FRONTEND
+ to `lang_expand_expr' rather than `expand_builtin'.
+
+ * tree.c (check_function_format_ptr): Delete.
+
+ * tree.h (check_function_format_ptr): Likewise.
+
+2000-10-06 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * dwarf2out.c (build_cfa_loc): Correct to use DW_OP_regx or
+ DW_OP_bregx when cfa->reg > 31.
+
+ * frame-dwarf2.c (decode_stack_op) [case DW_OP_regx]: Add missing
+ break.
+
+2000-10-05 Richard Henderson <rth@cygnus.com>
+
+ * c-decl.c (warn_missing_noreturn): Remove.
+ (c_expand_body): Don't set or check can_reach_end.
+ * c-tree.h (warn_missing_noreturn): Move ...
+ * flags.h: ... here.
+ (can_reach_end): Remove.
+ * flow.c (check_function_return_warnings): New.
+ (make_edges): No edge to exit for noreturn sibcalls.
+ * function.c (expand_function_end): Save the return value
+ clobber instruction.
+ (mark_function_status): Mark it.
+ * function.h (struct function): Add x_clobber_return_insn.
+ * jump.c (can_reach_end): Remove.
+ (calculate_can_reach_end): Remove.
+ (jump_optimize_1): Don't call it.
+ * output.h (check_function_return_warnings): Declare.
+ * toplev.c (warn_missing_noreturn): Move from c-decl.c
+ (rest_of_compilation): Call check_function_return_warnings.
+
+2000-10-05 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (NM_FOR_TARGET): New.
+ (libgcc.mk): Pass SHLIB_MKMAP, SHLIB_MAPFILES.
+ (libgcc.a, stmp-multilib): Pass NM_FOR_TARGET.
+ * mklibgcc.in: If SHLIB_MKMAP, build libgcc.map. Depend the
+ shared library build on that and EXTRA_MULTILIB_PARTS.
+ * mkmap-flat.awk: New file.
+ * mkmap-symver.awk: New file.
+ * libgcc-std.ver: New file.
+ * config/libgcc-glibc.ver: New file.
+ * config/ia64/libgcc-ia64.ver: New file.
+ * config/t-linux (SHLIB_MKMAP, SHLIB_MAPFILES): New.
+ (SHLIB_LINK): Add --version-script.
+ * config/ia64/t-ia64 (SHLIB_MAPFILES): Add libgcc-ia64.ver.
+ * config/mips/t-iris6 (SHLIB_MKMAP, SHLIB_MAPFILES): New.
+ * config/sparc/t-sol2 (SHLIB_MKMAP, SHLIB_MAPFILES): New.
+ (SHLIB_LINK): Add -M.
+
+2000-10-05 Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (LIB2FUNCS): Add _clz.
+ * libgcc2.c (__ffsdi2): Use count_trailing_zeros.
+ (__clz_tab): Put in its own unit, non-static.
+ * libgcc2.h: Always include longlong.h.
+
+ * longlong.h [alpha] (count_leading_zeros): Use cmpbge with
+ a zero instead of -1.
+ (count_trailing_zeros): Likewise.
+
+2000-10-05 Richard Henderson <rth@cygnus.com>
+
+ * config/alpha/alpha.c (alpha_emit_setcc): Don't swap GT tests
+ when second op1 is const0_rtx. Validate op0 as a register.
+ * config/alpha/alpha.md (setcc_internal): Don't allow constants
+ in the first argument of the compare.
+ (setcc_swapped_internal): Likewise.
+ (setne_internal): Likewise.
+
+2000-10-05 Geoff Keating <geoffk@cygnus.com>
+
+ * tree.c (tree_size): New function split out of copy_node.
+ (make_node): Remove obstack handling. Use tree_size.
+ (copy_node): Use tree_size.
+ * tree.h: Prototype tree_size.
+
+2000-10-05 Richard Henderson <rth@cygnus.com>
+
+ * diagnostic.c (output_format): Add missing break.
+
+2000-10-05 Jim Wilson <wilson@cygnus.com>
+
+ * function.c (fixup_var_refs_1, case SET): When gen_move_insn returns a
+ SEQUENCE, call emit_insn_before, copy PATTERN and REG_NOTES of last
+ sequence insn to INSN, and delete last sequence insn.
+
+2000-10-05 Phil Edwards <pme@gcc.gnu.org>
+
+ * gcc.c (main): Include generated configargs.h header
+ and use arguments in '-v' output.
+
+Thu Oct 5 16:16:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * gcc.c: Move data on prefixes forward in file and reorganize.
+ (md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1):
+ Always define, but make null if no value.
+ (static_specs): Add "md_exec_prefix", "md_startfile_prefix",
+ and "md_startfile_prefix_1".
+ (main): Check whether md_exec_prefix and the others are the
+ null string rather than whether the macro is defined.
+
+Thu Oct 5 19:04:18 2000 J"orn Rennecke <amylaar@redhat.co.uk>
+
+ * (convert_move): Use zero_extendpsisi2 to do an unsigned extension
+ from PSImode to SImode.
+
+2000-10-05 Jakub Jelinek <jakub@redhat.com>
+
+ * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETICS]: Fix conversion
+ from float to integral mode with HOST_BITS_PER_WIDE_INT 64.
+ * dwarf2out.c (add_const_value_attribute): Divide by 4, not
+ sizeof(long).
+
+Thu Oct 5 09:31:31 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * fold-const.c (fold, case MINUS_EXPR, case EQ_EXPR): Perform
+ negation in proper type.a
+
+2000-10-04 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (enable-shared): New.
+ * Makefile.in (LIBGCC_DEPS): Depend on EXTRA_PARTS as well.
+ (libgcc.mk): Pass SHLIB_LINK, SHLIB_LIBS, SHLIB_MULTILIB to mklibgcc.
+ * mklibgcc.in: Use them to link shared a libgcc.
+ * config/t-linux (SHLIB_LINK, SHLIB_LIBS): New.
+ * config/alpha/t-ieee (SHLIB_MULTILIB): New.
+ * config/mips/t-iris6 (SHLIB_LINK, SHLIB_LIBS): New.
+ * config/sparc/t-sol2 (SHLIB_LINK, SHLIB_LIBS): New.
+
+ * configure.in (alpha-osf*): Use t-osf and x-osf.
+ * config/alpha/t-osf: New file.
+ * config/alpha/t-osf4: New file.
+ * config/alpha/x-osf: New file.
+ * config/alpha/x-alpha: Remove file.
+
+2000-10-04 Will Cohen <wcohen@redhat.com>
+
+ * c-typeck.c (process_init_element): Added warning for zero-length
+ array.
+
+ * extend.texi (Zero Length): State that static initializers for
+ zero-length arrays are not allowed.
+
+Mon Oct 2 14:50:14 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * rtlanal.c (single_set_1): Do not require USE and CLOBBERs
+ to come last.
+
+2000-10-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/float-c4x.h: New.
+ * configure.in (c4x-*): Set float_format to c4x.
+ * configure: Regenerate.
+
+2000-10-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in (sparc-*-solaris2*): Disable 32-to-64 cross
+ compilation for solaris versions 2.7 and greater.
+
+2000-10-02 Marc Espie <espie@openbsd.org>
+
+ * config/alpha.h (WORD_SWITCH_TAKES_ARG): add -rpath to default,
+ instead of redefining from scratch.
+
+2000-10-02 David O'Brien <obrien@dragon.nuxi.com>
+
+ * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define.
+
+2000-10-01 Mark Mitchell <mark@codesourcery.com>
+
+ * config/ns32k/genix.h: Remove.
+ * config/ns32k/x-genix: Likewise.
+ * config/ns32k/xm-genix.h: Likewise.
+ * config/fx80: Remove all filee in directory.
+ * config/pyr: Likewise.
+ * config/tahoe: Likewise.
+ * config/gmicro: Likewise.
+ * config/spur: Likewise.
+ * configure.in: Remove configury bits for above targets.
+ * configure: Regenerated.
+
+ * configure.in: Don't configure chill by default.
+ * configure: Regenerated.
+
+ * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only.
+ (lang_mark_false_label_stack): Remove.
+ * c-lex.c (init_c_lex): Add file_info_tree as GC root. Allocate
+ <top level> string in GC area.
+ (mark_splay_tree_node): New function.
+ (mark_splay_tree): Likewise.
+ * except.c (mark_eh_status): Only call lang_mark_false_label_stack
+ if it exists.
+ * ggc-callbacks.c (lang_mark_false_label_stack): Remove.
+ * ggc-common.c (lang_mark_false_label_stack): Change type.
+ * ggc.h (ggc_alloc_string): Add comment.
+ (ggc_strdup): New function.
+
+Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.h (BRANCH_COST): Define as 0.
+
+ * config/pdp11/pdp11.c: #include "tree.h" added.
+
+2000-09-30 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out,
+ ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases
+ with known shift count.
+ * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3):
+ New alternative for shift count 2 with no scratch register.
+ (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to
+ "set_n" for shift counts 1 and 2.
+
+2000-09-30 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE. Calculate
+ the mask value from the individual SET operations.
+ (return_internal_si): Move the USE after the RETURN.
+ (return_internal_di): Likewise.
+ (return_and_restore_fpregs_si): Likewise.
+ (return_and_restore_fpregs_di): Likewise.
+ (return_eh_si): Likewise.
+ (return_eh_di): Likewise.
+ * config/rs6000/rs6000.c (mtcrf_operation): Don't look for,
+ or check, the USE.
+ (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr.
+ Don't generate a PARALLEL around a single operation movsi_to_cr.
+ Generate the RETURN first in any PARALLELs.
+
+ * rtlanal.c (single_set_1): Use fatal_insn to display the
+ invalid insn. Check for more cases when a USE or CLOBBER occurs
+ before a SET.
+ * Makefile.in: Update dependencies for rtlanal.o.
+
+2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * i386.c: Move include of "config.h" to before that of <setjmp.h>.
+
+2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi:
+ Consistently use @email for formatting email addresses.
+
+2000-09-29 Richard Henderson <rth@cygnus.com>
+
+ * cse.c (notreg_cost): New argument outer.
+ (COST): Pass in SET to notreg_cost
+ (COST_IN): New.
+ (fold_rtx): Use COST_IN. Prefer constants when costs
+ are the same.
+
+2000-09-29 David Edelsohn <edelsohn@gnu.org>
+
+ * fixinc/inclhack.def (broken_cabs): Generalize regex.
+ * fixinc/fixincl.x: Regenerate.
+
+2000-09-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * loop.c (check_final_value): A GIV is not replaceable if used
+ before set.
+
+Fri Sep 29 10:04:12 2000 Jeffrey A Law (law@cygnus.com)
+
+ * version.c: Bump to gcc-2.97.
+
+Frs Sep 29 13:37:59 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * final.c (final_scan_insn): Remove extra extract_insn call;
+ Use caching for constrain_operands.
+ (cleanup_subreg_operands): Use caching for extract_insn.
+ * recog.c (constrain_operands_cached): New.
+ * recog.h (constrain_operands_cached): Declare.
+ * i386.c (ix86_attr_length_immediate_default,
+ ix86_attr_length_address_default, ix86_agi_dependant): Cache
+ extract_insn call.
+
+ * recog.c (asm_noperands): Tweak.
+ (extract_insn): Do not call asm_noperads for non-asm instructions.
+
+Fri Sep 29 13:20:42 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (recog_memoized): Rename to recog_memoized_1.
+ * recog.h (recog_memoized): Rename to recog_memoized_1.
+ (recog_memoized): New macro.
+ * rtl.h (single_set): Rename to single_set_1
+ (single_set): New macro.
+ * rtlanal.c (single_set): Rename to single_set_1; expect clobbers
+ to be last.
+
+ * i386.md (strmovsi_1, strmovhi_1 strmovqi_1):
+ Do not use match_dup of input operands at outputs.
+ Use register_operand for memory expression.
+ (rep_movsi): Put use last, canonicalize.
+ Use register_operand for memory expression.
+ (rep_movqi): Put use last.
+ Use register_operand for memory expression.
+ (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup
+ of input operands at outputs. Use register_operand for memory
+ expression.
+ (rep_stossi): Put use last; canonicalize; fix match_dup in
+ the address expression
+ (rep_stosqi): Likewise.
+ (memcmp expander): Update calls.
+ (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in
+ the clobbers.
+
+ * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is
+ VOIDmode.
+ (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons.
+
+2000-09-28 David O'Brien <obrien@FreeBSD.org>
+
+ * config/i386/freebsd-aout.h: New, FreeBSD a.out config file.
+ Contains the old contents of config/i386/freebsd.h
+ * config/i386/freebsd.h: Now the ELF rather than a.out config file.
+ Contains the old contents of config/i386/freebsd-elf.h
+ * config/i386/freebsd-elf.h: Retire this file -- contents moved to
+ config/i386/freebsd.h.
+ * configure.in: Adjust for above changes.
+ * po/POTFILES.in: Likewise.
+ * po/en_GB.po: Likewise.
+ * po/gcc.pot: Likewise.
+ * configure: Rebuilt.
+
+2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * doloop.c (doloop_modify): Prevent delete_insn() from
+ deleting too much. Prefer loop->top over loop->start as
+ target for the new JUMP insn.
+ (doloop_valid_p): Ignore loop with exit_count != 0.
+
+2000-09-28 Philipp Thomas <pthomas@suse.de>
+
+ * invoke.texi (i386 Options): Add athlon to table of possible
+ choices for -mcpu=.
+
+2000-09-28 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h (output_clear_message_text): New function.
+ (output_message_text): New macro.
+
+ * diagnostic.c (clear_text_info): Rename to
+ output_clear_message_text.
+ (output_clear): Adjust.
+ (output_finish): Rename to output_finalize_message. Tweek.
+ (output_to_stream): Adjust.
+
+2000-09-28 Neil Booth <neilb@earthling.net>
+
+ * cpperror.c (_cpp_begin_message): Do the test for suppression
+ of warnings and pedantic warnings before the "is a warning an
+ error" tests.
+ * cppinit.c (cpp_handle_option): Remove surplus \n.
+ * cpplex.c (ON_REST_ARG): Delete.
+ (skip_block_comment): Initialize prevc.
+ (parse_args): Improve error messages.
+ (maybe_paste_with_next): Use CONTEXT_VARARGS rather
+ than ON_REST_ARG.
+ * cpplib.c (cpp_push_buffer): Fix grammar in message.
+ * cppmain.c (main): Set callbacks for #ident and #pragma
+ only if no_output option is false.
+ (do_pragma_implementation): Only call the #pragma handler
+ if it is set in the cpp_reader structure.
+
+Wed Sep 27 14:00:07 2000 Donald Lindsay <dlindsay@cygnus.com>
+
+ * integrate.c (copy_insn_list): if an ignored return value
+ is being clobbered, skip cloning that into the inline copy.
+
+2000-09-27 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently
+ use @uref for formatting URLs.
+
+2000-09-27 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables
+ name and prefix.
+
+Tue 26-Sep-2000 18:25:38 BST Neil Booth <neilb@earthling.net>
+
+ * gcc.c (cpp_options): Add spec for -ftabstop=.
+ (invoke_as): New spec that handles invoking as.
+ Update specs to handle -save-temps and -traditional.
+ * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h:
+ Use invoke_as.
+ * cp/lang-specs.h, objc/lang-specs.h: Update to use
+ invoke_as, and handle -save-temps and -traditional (if
+ appropriate).
+
+2000-09-26 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when
+ op0 is a SUBREG.
+ (function_arg_slotno): Accept TImode/CTImode.
+ * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define
+ to UNITS_PER_WORD.
+
+2000-09-26 Michael Hayes <mhayes@cygnus.com>
+
+ * flow.c (flow_loop_pre_header_scan): Punt if loop enters
+ from entry block.
+
+2000-09-25 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS.
+ (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P.
+ (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG.
+ (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P.
+
+Tue 26-Sep-2000 00:16:22 BST Neil Booth <neilb@earthling.net>
+
+ * cpplex.c (parse_args): Don't set VOID_REST flag.
+ (CONTEXT_VARARGS): New flag.
+ (maybe_paste_with_next): Set context earlier in loop. Use
+ it. Do varargs test with CONTEXT_VARARGS flag.
+ (push_arg_context): Set CONTEXT_VARARGS flag if we're
+ pushing an argument context for a varargs argument.
+ * cpplib.h (VOID_REST): Delete.
+ * gcc.dg/cpp/vararg1.c: Add test case.
+
+2000-09-25 Branko Cibej <branko.cibej@hermes.si>
+
+ * flags.h: Declare warning flag warn_system_headers.
+ * toplev.c: Define it.
+ (W_options): Add option -Wsystem-headers.
+ * diagnostic.c (count_error): Test warn_system_headers.
+ * invoke.texi: Add description for -Wsystem-headers.
+ * cpplib.h (cpp_options): New member warn_system_headers.
+ * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test
+ CPP_IN_SYSTEM_HEADER.
+ * cpplib.c (do_import, do_pragma_once): Likewise.
+ * cpperror.c (_cpp_begin_message): Test warn_system_headers
+ and CPP_IN_SYSTEM_HEADER.
+ * cppinit.c (handle_option): Recognize -Wsystem_headers.
+ (print_help): Describe -Wsystem_headers.
+ * cpplex.c (lex_line): Reorganize condition so that warnings
+ about C++ comments in system headers can be enabled. Remove
+ label do_line_comment.
+
+Mon 25-Sep-2000 23:38:27 BST Neil Booth <neilb@earthling.net>
+
+ * cpplex.c (save_comment): Only store the initial '/'
+ now.
+ (lex_token): Combine handling of the two comment types.
+ Pass everything but the initial '/' to save_comment.
+
+Mon 25-Sep-2000 23:31:45 BST Neil Booth <neilb@earthling.net>
+
+ * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive,
+ _cpp_can_paste): New library-internal prototypes.
+ * cpplex.c (dump_param_spelling, output_line_command,
+ output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput,
+ cpp_printf, cpp_output_list): Move to cppoutput.c.
+ (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix.
+ * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to
+ cppoutput.c.
+ * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token,
+ dump_param_spelling, output_line_command, cpp_scan_buffer,
+ cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved
+ from elsewhere.
+ * Makefile.in: Add cppoutput.c.
+ * po/POTFILES.in: Add cppoutput.c.
+
+2000-09-25 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n.
+ * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't
+ split until after reload.
+ (rotlsi3, rotldi3): New.
+
+2000-09-25 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (output_last_position): Define.
+ (set_real_maximum_length): Tweek.
+ * diagnostic.h (output_last_position): Declare.
+
+2000-09-25 Kazu Hirata <kazu@hxi.com>
+
+ * config/i386/i386.c: Fix formatting.
+
+2000-09-24 Alan Lehotsky <alehotsky@cygnus.com>
+
+ * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when
+ UNITS_PER_WORD is small.
+
+2000-09-25 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (format_char_info): Add flags2; update comments.
+ (print_char_table, scan_char_table, time_char_table): Split some
+ flags out into flags2.
+ (check_format_info): Use flags2 for those flags, for identifying
+ the initial character of a scanf scanset, and for identifying
+ printf formats where the '0' flag is ignored with precision.
+
+2000-09-25 Hans-Peter Nilsson <hp@axis.com>
+
+ Changes below marked "here" add TABs on either or both sides,
+ covering start of line, up to any operand for all noted .*ASM.*_OP
+ definitions. All callers changed.
+ * tm.texi: Make documented *_ASM.*_OP:s include spacing
+ (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, SHARED_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP, SHARED_BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
+ ASM_BYTE_OP, FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP,
+ ASM_STABS_OP, ASM_STABD_OP, ASM_STABN_OP).
+ Fix typos in description for LONG_LONG_TYPE_SIZE and
+ FINI_SECTION_ASM_OP.
+ * crtstuff.c (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Explain
+ why these defaults don't have leading spacing.
+ * dbxout.c (ASM_STABS_OP, ASM_STABN_OP): Here.
+ * dwarf2out.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+ UNALIGNED_DOUBLE_INT_ASM_OP, SECTION_ASM_OP, ASM_BYTE_OP): Here.
+ * dwarfout.c (FILE_ASM_OP, VERSION_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, ASM_BYTE_OP,
+ PUSHSECTION_ASM_OP, POPSECTION_ASM_OP): Here.
+ * defaults.h (ASM_STABD_OP, EH_FRAME_SECTION_ASM_OP): Here.
+ * varasm.c (ASM_STABS_OP): Here.
+ * xcoffout.h (ASM_STABS_OP): Here.
+ * config/elfos.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP,
+ SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP,
+ INT_ASM_OP, ASCII_DATA_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP,
+ STRING_ASM_OP): Here.
+ * config/freebsd.h (IDENT_ASM_OP): Here.
+ * config/linux-aout.h (SET_ASM_OP): Here.
+ * config/linux.h (SET_ASM_OP): Here.
+ * config/lynx.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+ INT_ASM_OP): Here.
+ * config/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here.
+ * config/nextstep.h (EH_FRAME_SECTION_ASM_OP, ALIGN_ASM_OP): Here.
+ * config/openbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here.
+ * config/psos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+ INT_ASM_OP): Here.
+ * config/ptx4.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP,
+ SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP,
+ INT_ASM_OP, ASCII_DATA_ASM_OP, CONST_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
+ FINI_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP STRING_ASM_OP): Here.
+ * config/svr3.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+ CONST_SECTION_ASM_OP, ASM_BYTE_OP): Here.
+ * config/a29k/udi.h (INT_ASM_OP): Here.
+ * config/alpha/alpha-interix.h (CONST_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP,
+ SET_ASM_OP): Here.
+ * config/alpha/alpha.h (TEXT_SECTION_ASM_OP,
+ READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+ UNALIGNED_DOUBLE_INT_ASM_OP, ASM_STABS_OP, ASM_STABN_OP,
+ ASM_STABD_OP): Here.
+ * config/alpha/elf.h (IDENT_ASM_OP, SKIP_ASM_OP, ALIGN_ASM_OP,
+ COMMON_ASM_OP, INT_ASM_OP, ASCII_DATA_ASM_OP,
+ CONST_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP,
+ INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, TYPE_ASM_OP,
+ SIZE_ASM_OP, STRING_ASM_OP): Here.
+ * config/alpha/vms.h (LINK_SECTION_ASM_OP,
+ READONLY_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, COMMON_ASM_OP): Here.
+ * config/arc/arc.h (ASM_BYTE_OP, SET_ASM_OP): Here.
+ (PUSHSECTION_ASM_OP): Define this, not PUSHSECTION_FORMAT.
+ * config/arm/aof.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP):
+ Here.
+ * config/arm/aout.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP, SET_ASM_OP): Here.
+ * config/arm/coff.h (INT_ASM_OP): Here.
+ * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Here.
+ * config/arm/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): Here.
+ * config/arm/linux-elf.h (IDENT_ASM_OP, CONST_SECTION_ASM_OP,
+ INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Here.
+ * config/arm/unknown-elf.h (UNALIGNED_WORD_ASM_OP): Here.
+ * config/avr/avr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ ASM_BYTE_OP, TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP,
+ STRING_ASM_OP): Here. Update documentation copy in comments.
+ * config/c4x/c4x.h (ASM_STABS_OP, BSS_SECTION_ASM_OP): Here.
+ * config/clipper/clipper.h (TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP): Here.
+ * config/clipper/clix.h (BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP):
+ Here.
+ * config/convex/convex.h (TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here.
+ * config/d30v/d30v.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP): Here.
+ * config/fr30/fr30.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP): Here.
+ * config/fx80/fx80.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/gmicro/gmicro.h (TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here.
+ * config/h8300/h8300.h (ASM_WORD_OP): Here.
+ * config/i370/i370.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP): Here.
+ * config/i386/aix386.h (INIT_SECTION_ASM_OP): Here.
+ * config/i386/bsd.h (ASM_BYTE_OP): Here.
+ * config/i386/cygwin.h (SET_ASM_OP, INT_ASM_OP): Here.
+ * config/i386/dgux.h (CONST_SECTION_ASM_OP): Here.
+ * config/i386/djgpp.h (IDENT_ASM_OP, INT_ASM_OP, SET_ASM_OP):
+ Here.
+ * config/i386/freebsd-elf.h (SET_ASM_OP): Here.
+ * config/i386/freebsd.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP):
+ Here.
+ * config/i386/i386-coff.h (CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+ * config/i386/i386-interix.h (STRING_ASM_OP, CONST_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP,
+ SET_ASM_OP): Here.
+ * config/i386/i386elf.h (BSS_SECTION_ASM_OP): Here.
+ * config/i386/netbsd.h (INT_ASM_OP): Here.
+ * config/i386/openbsd.h (INT_ASM_OP): Here.
+ * config/i386/osfrose.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP,
+ IDENT_ASM_OP): Here.
+ * config/i386/sco5.h (ALIGN_ASM_OP, ASCII_DATA_ASM_OP,
+ ASM_BYTE_OP, IDENT_ASM_OP, COMMON_ASM_OP, SET_ASM_OP,
+ LOCAL_ASM_OP, INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, STRING_ASM_OP,
+ SKIP_ASM_OP, GLOBAL_ASM_OP): Here.
+ * config/i386/seq-sysv3.h (SHARED_SECTION_ASM_OP,
+ SHARED_BSS_SECTION_ASM_OP): Here.
+ * config/i386/sequent.h (SHARED_SECTION_ASM_OP): Here.
+ * config/i386/sun386.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP): Here.
+ * config/i386/svr3gas.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+ CONST_SECTION_ASM_OP): Here.
+ * config/i386/sysv3.h (INIT_SECTION_ASM_OP): Here.
+ * config/i386/unix.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP): Here.
+ * config/i860/bsd-gas.h (ASCII_DATA_ASM_OP): Here.
+ * config/i860/bsd.h (ASCII_DATA_ASM_OP): Here.
+ * config/i860/fx2800.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP,
+ BSS_ASM_OP): Here, but use trailing spaces.
+ * config/i860/i860.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP): Here.
+ * config/i860/paragon.h (ASCII_DATA_ASM_OP, BSS_SECTION_ASM_OP):
+ Here.
+ * config/i860/sysv3.h (ASCII_DATA_ASM_OP, CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, TDESC_SECTION_ASM_OP): Here.
+ * config/i860/sysv4.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+ TDESC_SECTION_ASM_OP): Here.
+ * config/i960/i960-coff.h (CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+ * config/i960/i960.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/ia64/ia64.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+ UNALIGNED_DOUBLE_INT_ASM_OP): Here.
+ * config/ia64/sysv4.h (ASM_BYTE_OP, STRING_ASM_OP, SKIP_ASM_OP,
+ COMMON_ASM_OP, ASCII_DATA_ASM_OP, INIT_SECTION_ASM_OP,
+ FINI_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+ SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Here.
+ * config/m32r/m32r.h (SCOMMON_ASM_OP): Here.
+ * config/m68hc11/m68hc11.h (GLOBAL_ASM_OP): Here.
+ * config/m68k/auxas.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP,
+ SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP,
+ SET_ASM_OP): Here.
+ * config/m68k/coff.h (BSS_SECTION_ASM_OP, CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+ * config/m68k/crds.h (BSS_SECTION_ASM_OP): Here.
+ * config/m68k/dpx2.h (ASM_BYTE_OP, GLOBAL_ASM_OP): Here.
+ * config/m68k/hp320.h (ASCII_DATA_ASM_OP, GLOBAL_ASM_OP): Here.
+ * config/m68k/linux.h (BSS_SECTION_ASM_OP): Here.
+ * config/m68k/lynx.h (BSS_SECTION_ASM_OP): Here.
+ * config/m68k/m68k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ GLOBAL_ASM_OP): Here.
+ * config/m68k/m68kelf.h (SWBEG_ASM_OP, BSS_ASM_OP,
+ BSS_SECTION_ASM_OP): Here.
+ * config/m68k/m68kv4.h (BSS_ASM_OP): Here.
+ * config/m68k/mot3300.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ ASCII_DATA_ASM_OP, SET_ASM_OP, CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, GLOBAL_ASM_OP, ASM_BYTE_OP, ALIGN_ASM_OP,
+ SKIP_ASM_OP): Here.
+ * config/m68k/newsgas.h (SET_ASM_OP): Here.
+ * config/m68k/rtemself.h (INIT_SECTION_ASM_OP,
+ FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here.
+ * config/m68k/sgs.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP,
+ SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP,
+ SET_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here,
+ but use trailing spaces.
+ * config/m68k/tower-as.h (TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP, GLOBAL_ASM_OP, INIT_SECTION_ASM_OP,
+ FINI_SECTION_ASM_OP, CONST_SECTION_ASM_OP, BSS_SECTION_ASM_OP):
+ Here.
+ * config/m88k/dgux.h (FINI_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here.
+ * config/m88k/m88k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ CONST_SECTION_ASM_OP, TDESC_SECTION_ASM_OP, CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+ IDENT_ASM_OP, FILE_ASM_OP, SECTION_ASM_OP, SET_ASM_OP,
+ GLOBAL_ASM_OP, ALIGN_ASM_OP, SKIP_ASM_OP, COMMON_ASM_OP,
+ BSS_ASM_OP, FLOAT_ASM_OP, DOUBLE_ASM_OP, INT_ASM_OP, SHORT_ASM_OP,
+ CHAR_ASM_OP, ASCII_DATA_ASM_OP, SBSS_ASM_OP, SCOMM_ASM_OP,
+ SDATA_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, INTERNAL_ASM_OP,
+ VERSION_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
+ PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, REQUIRES_88110_ASM_OP,
+ ASM_BYTE_OP): Here.
+ * config/m88k/openbsd.h (SET_ASM_OP): Here.
+ * config/m88k/sysv4.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here.
+ * config/mcore/mcore-elf.h (UNALIGNED_INT_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP, CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP): Here.
+ * config/mcore/mcore-pe.h (CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+ * config/mips/elf.h (TYPE_ASM_OP, SIZE_ASM_OP,
+ BSS_SECTION_ASM_OP): Here.
+ * config/mips/elf64.h (TYPE_ASM_OP, SIZE_ASM_OP): Here.
+ * config/mips/iris5.h (ABICALLS_ASM_OP): Here.
+ * config/mips/iris6.h (TYPE_ASM_OP, SIZE_ASM_OP,
+ POPSECTION_ASM_OP, BSS_SECTION_ASM_OP, CONST_SECTION_ASM_OP_32,
+ CONST_SECTION_ASM_OP_64, CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here.
+ * config/mips/mips.c (ABICALLS_ASM_OP): Here.
+ * config/mips/mips.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP):
+ Here.
+ * config/mips/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP):
+ Here.
+ * config/mips/osfrose.h (SET_ASM_OP): Here.
+ * config/mips/sni-svr4.h (ABICALLS_ASM_OP): Here.
+ * config/ns32k/encore.h (SHARED_SECTION_ASM_OP): Here.
+ * config/ns32k/merlin.h (SHARED_SECTION_ASM_OP): Here.
+ * config/ns32k/ns32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/ns32k/sequent.h (SHARED_SECTION_ASM_OP): Here.
+ * config/ns32k/tek6000.h (SHARED_SECTION_ASM_OP): Here.
+ * config/pa/pa-64.h (INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP): Here.
+ * config/pa/pa.h (ASM_STABS_OP, ASM_STABN_OP): Here.
+ * config/pj/pj.h (SET_ASM_OP, BSS_SECTION_ASM_OP): Here.
+ * config/pyr/pyr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/romp/romp.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/rs6000/rs6000.h (SET_ASM_OP): Here.
+ * config/rs6000/sol2.h (ASM_STABN_OP): Here.
+ * config/rs6000/sysv4.h (SKIP_ASM_OP, LOCAL_ASM_OP, LCOMM_ASM_OP):
+ Here.
+ * config/sh/sh.h (SET_ASM_OP, BSS_SECTION_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here.
+ * config/sparc/linux.h (COMMON_ASM_OP): Here.
+ * config/sparc/linux64.h (COMMON_ASM_OP,
+ UNALIGNED_DOUBLE_INT_ASM_OP): Here.
+ * config/sparc/litecoff.h (BSS_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
+ * config/sparc/lynx.h (BSS_SECTION_ASM_OP): Here.
+ * config/sparc/pbd.h (ASM_INT_OP): Here.
+ * config/sparc/sp64-elf.h (UNALIGNED_LONGLONG_ASM_OP): Here.
+ * config/sparc/sparc.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP, IDENT_ASM_OP): Here.
+ * config/sparc/sun4gas.h (UNALIGNED_DOUBLE_INT_ASM_OP,
+ UNALIGNED_INT_ASM_OP, UNALIGNED_SHORT_ASM_OP): Here.
+ * config/sparc/sysv4.h (STRING_ASM_OP, COMMON_ASM_OP, SKIP_ASM_OP,
+ UNALIGNED_DOUBLE_INT_ASM_OP, UNALIGNED_INT_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP, PUSHSECTION_ASM_OP, POPSECTION_ASM_OP,
+ TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
+ CONST_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
+ EH_FRAME_SECTION_ASM_OP): Here.
+ * config/sparc/vxsim.h (COMMON_ASM_OP): Here.
+ * config/spur/spur.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/tahoe/tahoe.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/v850/v850.h (SCOMMON_ASM_OP, ZCOMMON_ASM_OP,
+ TCOMMON_ASM_OP): Here.
+ * config/vax/vax.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
+ Here.
+ * config/we32k/we32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ ASM_BYTE_OP): Here.
+
+2000-09-25 Richard Henderson <rth@cygnus.com>
+
+ * expmed.c (store_bit_field): Adjust last change to not consider
+ any word-sized field naturally aligned.
+
+2000-09-24 Richard Henderson <rth@cygnus.com>
+
+ * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle
+ TFmode unordered compares properly. Revalidate integer compare
+ operands.
+ (alpha_emit_setcc): New.
+ (alpha_emit_conditional_move): Revalidate integer compare operands.
+ * config/alpha/alpha-protos.h: Update.
+ * config/alpha/alpha.md (cmpdi): Allow general operands.
+ (sne): Use alpha_emit_setcc.
+ (seq, slt, sle, sgt, sge, sltu, sleu, sgtu, sgeu): Likewise.
+ (sunordered, sordered): New.
+
+2000-09-24 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64-protos.h: Update.
+ * config/ia64/ia64.c (call_multiple_values_operation): Remove.
+ (ia64_expand_call): New.
+ (ia64_expand_prologue): Emit an alloc if we need extra input
+ registers.
+ (ia64_expand_epilogue): New arg sibcall_p; don't emit the return
+ instruction if true.
+ (struct reg_flags): Add is_sibcall.
+ (rtx_needs_barrier): A sibcall does not use CFM et al. Ignore USEs.
+ (emit_insn_group_barriers): Set flags.is_sibcall. Remove hacks
+ for CODE_FOR_gr_spill_internal/CODE_FOR_gr_restore_internal.
+ * config/ia64/ia64.h (PREDICATE_CODES): Update.
+ * config/ia64/ia64.md (call): Use ia64_expand_call.
+ (call_value): Likewise.
+ (sibcall, sibcall_value): New.
+ (call patterns): Remove extra expanders; tidy.
+ (sibcall_epilogue): New.
+ (set_bsp): Remove the extra USE. Put the operand inside the UNSPEC.
+
+2000-09-24 Richard Henderson <rth@cygnus.com>
+
+ * emit-rtl.c (gen_lowpart_common): Use trunc_int_for_mode.
+
+ * sibcall.c (skip_pic_restore): New.
+ (identify_call_return_value): Use it.
+
+2000-09-24 Mark Mitchell <mark@codesourcery.com>
+
+ * c-tree.texi: Moved here from cp/ir.texi. Documented nested
+ functions. Generalize to handle both C and C++.
+ * Makefile.in (c-tree.info): New target.
+ (info): Add c-tree.info.
+
+Sun Sep 24 09:15:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (store_field): If BITSIZE is negative, use size of type.
+ (expand_expr, case COMPONENT_EXPR): Likewise.
+
+Sun 24-Sep-2000 11:40:23 BST Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c: Update TODO comment.
+ * cpplib.c (do_error, do_warning): Merge common code of
+ do_error and do_warning into do_diagnostic. Use it.
+ (do_diagnostic): New function.
+ * cpplib.h: Fix comment typo.
+
+2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_info): Warn for a wide character string
+ used as a non-wide format argument.
+
+2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * builtins.def (BUILT_IN_LLABS): Add.
+ * builtins.c (expand_builtin): Also abort on BUILT_IN_LLABS.
+ * c-common.c (c_common_nodes_builtins): Create builtin functions
+ __builtin_llabs, and plain llabs unless no_nonansi_builtins
+ outside of C99 mode.
+ (expand_tree_builtin): Handle BUILT_IN_LLABS.
+
+Sat 23-Sep-2000 22:39:18 BST Neil Booth <NeilB@earthling.net>
+
+ * cpphash.h (CPP_RESERVE, CPP_PUTS_Q, CPP_PUTS, CPP_PUTC_Q,
+ CPP_PUTC, DUMMY_TOKEN, NO_DUMMY_TOKEN): Delete.
+ * cpplex.c (_cpp_expand_token_space, _cpp_init_toklist,
+ _cpp_free_toklist): No need to worry about extra dummy token
+ at the start of token lists any more.
+ (trigraph_ok): Only warn outside comments.
+ (skip_block_comment): Set and clear lexing_comment.
+ (skip_line_comment): Take a cpp_reader not cpp_buffer.
+ Set and clear lexing_comment.
+ (parse_number): Handle leading '.' indicated by pfile->seen_dot.
+ (check_long_token): Delete.
+ (lex_percent, lex_dot): New subroutines of lex_token to
+ handle lexing of '.' and '%' without lookback.
+ (lex_token): Use lex_dot and lex_percent.
+ (lex_line): Don't check for LIST_OFFSET.
+ (_cpp_init_input_buffer): Update for new _cpp_init_toklist.
+ * cpplib.c (_cpp_parse_assertion): Similarly.
+ (cpp_push_buffer): Initialize extra_char.
+ * cpplib.h (LIST_OFFSET): Delete.
+ (struct cpp_buffer): New member extra_char.
+ (struct lexer_state): New members lexing_comment and seen_dot.
+
+2000-09-23 Jason Merrill <jason@redhat.com>
+
+ * config/rs6000/x-aix41 (CLIB): Define here.
+ * config/rs6000/t-aix43: Not here.
+ * config/rs6000/t-aix41: Or here. Remove.
+ * configure.in: Don't use it.
+
+2000-09-22 Jason Merrill <jason@redhat.com>
+
+ * configure.in: Add test for HAVE_LD_DWARF_LINKONCE.
+ * toplev.c: Use it to initialize flag_eliminate_dwarf2dups.
+ * config.in: Regenerate.
+
+ * configure.in: Fix checks for assembler features when using a
+ one-tree assembler that has not yet been built.
+ Fix --disable-threads.
+
+2000-09-19 Geoff Keating <geoffk@cygnus.com>
+
+ * stmt.c (expand_asm_operands): Allow # in constraints.
+
+2000-09-22 Jason Merrill <jason@redhat.com>
+
+ * c-lex.c (skip_white_space): Just treat CRs as horizontal whitespace.
+
+ * dbxout.c (dbxout_symbol_name): Just use DECL_NAME for
+ function-local names.
+
+2000-09-22 Brad Lucier <lucier@math.purdue.edu>
+ Mark Mitchell <mark@codesourcery.com>
+
+ * toplev.c (warn_disabled_optimization): Declare new warning flag.
+ * flags.h (warn_disabled_optimization): Add it here.
+ * gcse.c (gcse_main): Add warning when disabled.
+ * invoke.texi: Document -Wdisabled-optimization.
+
+2000-09-21 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (add_const_value_attribute): Multiply by length, not 4.
+
+ * dwarf2out.c (tree_add_const_value_attribute): New fn.
+ (gen_variable_die): Call it for non-definitions.
+
+ * dwarf2out.c (die_struct): Add die_mark field.
+ (mark_dies, unmark_dies): New fns.
+ (clear_die_sizes): Remove.
+ (print_die): Check die_symbol rather than die_offset.
+ (build_abbrev_table, output_pubnames, output_aranges): Check
+ die_mark rather than die_offset.
+ (output_comp_unit): Move calc_die_sizes after build_abbrev_table.
+ Call mark_dies.
+
+Thu 21-Sep-2000 18:19:05 BST Neil Booth <NeilB@earthling.net>
+
+ * cppfiles.c (lookup_include_file): Rename to open_file.
+ Always create a splay tree value, even on syscall failures.
+ Negative entries indicated by fd == -2.
+ Re-open files closed in the meantime.
+ (_cpp_fake_include): Create a negative splay tree entry.
+ (find_include_file, cpp_read_file): Update for function name
+ change.
+ * gcc.gd/cpp/mi4.c: Testcase.
+
+2000-09-21 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/t-arm-elf (MULTILIB_DIRNAMES): Enable multilibs for
+ ARM and THUMB modes.
+
+ * config/mcore/mcore.c: Fix compile time warnings.
+ * config/mcore/mcore-protos.h: Fix compile time warnings.
+
+2000-09-20 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * configure.in: Correct test of gcc_cv_glibc.
+ * configure: Rebuilt.
+ * config.in: Rebuilt.
+
+2000-09-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_fputs): Also expand when length!=1.
+ (expand_builtin): Handle BUILT_IN_FWRITE.
+
+ * builtins.def (BUILT_IN_FWRITE): New entry.
+
+ * c-common.c (c_common_nodes_and_builtins): Declare __builtin_fwrite.
+
+Wed Sep 20 15:39:14 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * gcc.c (modify_target): New variable and struct.
+ (process_command): Handle MODIFY_TARGET_NAME.
+ * tm.texi (MODIFY_TARGET_NAME): Add documentation for new macro.
+ * config/pa/pa.h (MODIFY_TARGET_NAME): New macro.
+
+ * c-decl.c (finish_decl): Add else's to avoid referencing
+ TYPE_DOMAIN of an ERROR_MARK.
+
+Wed Sep 20 21:44:31 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.c (adjust_insn_length): Adjust lengths of
+ `reload_in*' insns.
+
+2000-09-19 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.md (neghi2): Add alternative for input and output
+ operands in different registers, as in negsi2.
+ (*negsi2): Remove '*' from the name. Use "movw" if available.
+
+2000-09-19 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/crtbegin.asm (__dso_handle): Delete use of
+ HAVE_GAS_HIDDEN macro.
+
+Tue 19-Sep-2000 22:38:57 BST Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c (lex_line): Drop the EOF token for unknown
+ directives in assembler.
+
+2000-09-19 David Edelsohn <edelsohn@gnu.org>
+
+ * configure.in: Allow enable_threads_flag value of "aix". Define
+ thread_file as "aix" for AIX 4.3 and above.
+ * configure: Regenerated.
+
+ * gthr-aix.h: New file.
+
+ * rs6000/t-aix43: Replace soft-float multilib with pthread.
+ Remove 403 processor multilib match. Fix rios2 processor multilib
+ match.
+
+ * rs6000/aix.h (ASM_DECLARE_FUNCTION_NAME): Use function_section
+ to return to appropriate csect.
+
+2000-09-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (is_valid_printf_arglist, expand_builtin_printf): New
+ functions.
+ (expand_builtin_fputs): Set `target' parameter for `expand_expr'.
+ (expand_builtin): Handle BUILT_IN_PUTCHAR, BUILT_IN_PUTS and
+ BUILT_IN_PRINTF.
+
+ * builtins.def (BUILT_IN_PUTCHAR, BUILT_IN_PUTS, BUILT_IN_PRINTF):
+ New entries.
+
+ * c-common.c (init_function_format_info): Handle __builtin_printf.
+ Set `check_function_format_ptr'.
+ (c_common_nodes_and_builtins): Set `puts_ftype' and
+ `printf_ftype'. Declare __builtin_putchar, __builtin_puts,
+ __builtin_printf and printf.
+
+ * tree.c, tree.h (check_function_format_ptr): Declare.
+
+Tue 19-Sep-2000 18:26:57 BST Neil Booth <NeilB@earthling.net>
+
+ * cppfiles.c (read_include_file): Take no special action for
+ zero-length files.
+
+2000-09-19 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * final.c (insn_current_reference_address): Use INSN_SHUID of seq
+ rather than that of branch.
+ (shorten_branches): Don't increment insn_current_address twice.
+
+ Undo most of the Wed Jan 27 23:39:53 1999 patch:
+ * loop.h (struct induction): Delete members derived, ix and last_use.
+ (struct loop_ivs): Delete members first_increment_giv and
+ last_increment_giv.
+ * loop.c (verify_dominator, find_life_end, cmp_recombine_givs_stats,
+ recombine_givs): Delete functions.
+ (find_and_verify_loops): Don't initialize cont_dominator.
+ (strength_reduce): Lose code to try to find bivs that can be
+ expressed as givs of another biv, and to convert biv increments
+ into givs.
+ Lose loop_scan_start variable, always use loop->scan_start.
+ Don't call recombine_givs. Don't handle derived givs.
+ (record_giv): Don't initialize derived and last_use fields.
+ (biv_eliminiation_giv_has_0_offset): Lose code to handle derived
+ givs.
+ * unroll.c (derived_regs): Delete static variable.
+ (unroll_loop): Don't initialize it.
+ (copy_loop_body): Lose code to handle derived givs.
+ (find_splittable_givs): Don't check for givs made from biv
+ increments.
+ Don't set derived_regs.
+
+ Fix misapplied earlier patch:
+ * config/sh/sh.md (floatsisf_ie): Reenable. Remove explicit reference
+ to fpul.
+ (floatsisf2): Generate floatsisf_ie by default.
+ (floatsisf_i4): Conditional on TARGET_SH4.
+
+ (floatsisf2, floatsidf2, extendsfdf2): Also use reg_no_subreg_operand
+ predicate for the expanders.
+
+2000-09-19 Richard Henderson <rth@cygnus.com>
+
+ * config/i386/i386.h (CPP_CPU_SPEC): Define i586 and i686 symbols
+ in addition to pentium and pentiumpro symbols.
+ (CPP_CPU_DEFAULT_SPEC): Likewise.
+
+ * c-typeck.c (c_expand_asm_operands): Restore the output tree
+ after expanding.
+
+ * stmt.c (expand_expr_stmt): Only call warn_if_unused_value
+ if the tree has side effects.
+ (warn_if_unused_value): Do not warn about void constructs.
+
+ * c-decl.c (poplevel): Invoke warn_about_unused_variables.
+
+ * unroll.c (copy_loop_body): Update LABEL_NUSES before
+ calling invert_jump.
+
+2000-09-18 Geoff Keating <geoffk@cygnus.com>
+
+ * combine.c (can_combine_p): Don't substitute an ASM_OPERANDS
+ into anything.
+
+2000-09-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (c-common.o): Depend on diagnostic.h.
+
+ * c-common.c: Include diagnostic.h.
+ (tfaff): Delete.
+ (status_warning): New function.
+ (check_format_info, maybe_read_dollar_number, check_format_types,
+ finish_dollar_format_checking, check_function_format): Accept a
+ `status' parameter. All callers changed.
+
+ * c-common.h (check_function_format): Accept a `status' parameter.
+
+ * c-typeck.c: Update call to `check_function_format'.
+
+2000-09-18 Richard Henderson <rth@cygnus.com>
+
+ * c-decl.c (c_expand_body): Call mark_varargs before
+ expand_function_start.
+
+2000-09-18 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/eabi-cn.asm: Use /**/ to delimit comments, not #.
+ * config/rs6000/eabi-ci.asm: Likewise.
+
+2000-09-18 Richard Henderson <rth@cygnus.com>
+
+ * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx
+ for BImode.
+
+2000-09-18 Jim Wilson <wilson@cygnus.com>
+
+ * unroll.c (loop_iterations): Pass increment to extend_for_giv_value
+ before passing it to fold_rtx_mult_add.
+
+ * unroll.c (final_giv_value): Pass increment through
+ extend_value_for_giv before passing it to emit_iv_add_mult.
+
+ * function.c (fixup_var_refs_1, case ZERO_EXTRACT): If we have a
+ paradoxical subreg, then directly substitute the replacement and
+ return.
+
+Mon 18-Sep-2000 22:12:44 BST Neil Booth <NeilB@earthling.net>
+
+ * cpp.texi: Update documentation, including some clarifications,
+ the treatment of various newline combinations, and space between
+ backslash and newline.
+
+Mon Sep 18 21:00:47 2000 J"orn Rennecke <amylaar@redhat.co.uk>
+
+ * sdbout.c (PUT_SDB_DEF, PUT_SDB_TAG, PUT_SDB_EPILOGUE_END):
+ Replace ASM_OUTPUT_LABELREF with assemble_name.
+
+Mon Sep 18 20:26:50 2000 J"orn Rennecke <amylaar@redhat.co.uk>
+
+ * sh.c (addsubcosts): CONST is not cheap.
+ (find_barrier): For Sh1, take alignment after jumps into account.
+
+2000-09-15 Andrew Haley <aph@redhat.com>
+
+ * toplev.c (rest_of_compilation): Call purge_hard_subreg_sets to
+ remove all SETs of SUBREGs of hard registers.
+ * function.c (purge_hard_subreg_sets): New function.
+ (purge_single_hard_subreg_set): New function.
+ * rtl.h: (purge_hard_subreg_sets): New function.
+
+2000-09-18 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64-protos.h: Update.
+ * config/ia64/ia64.c (signed_inequality_operator): New.
+ (ia64_expand_compare): New.
+ (ia64_register_move_cost): Handle PR_REGS moves.
+ (ia64_secondary_reload_class): Require a GR when moving to a PR.
+ (struct reg_write_state): Add written_by_and/or.
+ (struct reg_flags): Add is_and/or.
+ (rws_update): Set them.
+ (rws_access_regno): Test them to allow parallel comparisons.
+ (rtx_needs_barrier): Recognize parallel comparisons.
+ (emit_insn_group_barriers): Set prev_insn after a call stop bit.
+ Call recog_memoized; ignore pred_rel_mutex.
+ (emit_predicate_relation_info): Don't call find_basic_blocks here.
+ (ia64_reorg): Do it here instead.
+ * config/ia64/ia64.h: s/CCmode/BImode/g
+ (MODES_TIEABLE_P): Don't tie BImode.
+ (PREFERRED_RELOAD_CLASS): Do not reload operations into AR regs.
+ (CONST_COSTS): Pick sensible values for CONST_INT based on context.
+ (RTX_COSTS): Make multiply 4 insns.
+ (MEMORY_MOVE_COST): New.
+ (PREDICATE_CODES): Update.
+ * config/ia64/ia64.md: s/CCmode/BImode/g
+ (movcci, movbi): New.
+ (andbi3, andcmbi3, iorbi3, iorcmbi3, one_cmplbi2): New.
+ (cmpsi_and_0, cmpsi_and_1, cmpsi_andnot_0, cmpsi_andnot_1): New.
+ (cmpdi_and_0, cmpdi_and_1, cmpdi_andnot_0, cmpdi_andnot_1): New.
+ (tbit_and_0, tbit_and_1, tbit_and_2, tbit_and_3): New.
+ (cmpsi_or_0, cmpsi_or_1, cmpsi_orcm_0, cmpsi_orcm_1): New.
+ (cmpdi_or_0, cmpdi_or_1, cmpdi_orcm_0, cmpdi_orcm_1): New.
+ (tbit_or_0, tbit_or_1, tbit_or_2, tbit_or_3): New.
+ (mulsi, muldi): Use xmpy not xma.
+ (cmpbi): New.
+ (movcc, movcc_internal): Remove.
+ (branch expanders): Use ia64_expand_compare.
+ (setcc expanders): Likewise.
+ (cmov insns): Use move_operand and ia64_move_ok.
+ (pred_rel_mutex): Use unspec not unspec_volatile. Prevent the
+ scheduler from moving it past a use.
+ * config/ia64/build.hacks: Remove.
+
+Mon 18-Sep-2000 19:21:35 BST Neil Booth <NeilB@earthling.net>
+
+ * cpphash.h (HASHSTEP): Take character rather than pointer
+ to character.
+ (_cpp_check_directive, _cpp_check_linemarker): Update prototypes.
+
+ * cpphash.c (cpp_loookup): Update for new HASHSTEP.
+
+ * cpplex.c (auto_expand_name_space, trigraph_replace,
+ backslash_start, handle_newline, parse_name, INIT_TOKEN_STR,
+ IMMED_TOKEN, PREV_TOKEN_TYPE, PUSH_TOKEN, REVISE_TOKEN,
+ BACKUP_TOKEN, BACKUP_TRIGRAPH, MIGHT_BE_DIRECTIVE,
+ KNOWN_DIRECTIVE): Delete.
+
+ (handle_newline, check_long_token, skip_escaped_newlines,
+ unterminated): New functions.
+ (ACCEPT_CHAR, SAVE_STATE, RESTORE_STATE): New macros.
+
+ (parse_identifier): Was parse_name, new implementation.
+ (skip_line_comment, skip_block_comment, skip_whitespace,
+ parse_number, parse_string, trigraph_ok, save_comment,
+ adjust_column, _cpp_get_line): New implementations.
+
+ (lex_token): New function. Lexes a token at a time, looking
+ forwards. Contains most of the guts of the old lex_line.
+ (lex_line): New implementation, using lex_token to obtain
+ individual tokens.
+ (cpp_scan_buffer): Use the token's line, not the list's line.
+
+ * cpplib.c (_cpp_check_directive, _cpp_check_linemarker):
+ New implementations.
+ (do_assert): Don't bother setting the answer's list's line.
+ (cpp_push_buffer): Initialize new pfile and read_ahead members
+ of struct cpp_buffer.
+
+ * cpplib.h (cppchar_t): New typedef.
+ (struct cpp_buffer): read_ahead, pfile and col_adjust are
+ new members.
+ (struct lexer_state): New structure that determines the state
+ and behavior of the lexer.
+ (IN_DIRECTIVE, KNOWN_DIRECTIVE): New macros.
+ (struct cpp_reader): New member "state". Rename
+ multiline_string_line and multiline_string_column. Delete
+ col_adjust, in_lex_line members.
+ (CPP_BUF_COLUMN): Update.
+
+2000-09-18 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (simplify_comparison): Shift a NOT out of a single
+ bit test.
+
+ * combine.c (if_then_else_cond): Canonicalize BImode true to
+ STORE_FLAG_VALUE.
+ * explow.c (trunc_int_for_mode): Likewise.
+
+ * combine.c (combine_simplify_rtx): Use gen_unary to distribute
+ the NOT for De Morgan's rule.
+ * simplify-rtx.c (simplify_unary_operation): Simplify a BImode NOT
+ of a comparison to the reverse comparison.
+
+ * combine.c (try_combine): Allow split to create a single insn.
+
+ * machmode.def: Add BImode. Add a column for bitsize.
+ * machmode.h (DEF_MACHMODE): Adjust for extra column.
+ (GET_MODE_BITSIZE): Use it.
+ * rtl.c (DEF_MACHMODE): Adjust for extra column.
+ (mode_bitsize): New.
+ (mode_mask_array): Use bitsize.
+ * combine.c (combine_simplify_rtx): Require inner and outer
+ modes to match on nonzero_bits optimizations.
+
+2000-09-18 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * reload1.c (forget_old_reloads_1): If a hard reg is stored, clear
+ its entry in spill_reg_store.
+ * config/sh/lib1funcs.ams (movstr_i4 functions): Always compile in.
+ * sh.c (reg_no_subreg_operand): New function.
+ * sh-protos.h (reg_no_subreg_operand): Declare it.
+ * sh.h (PREDICATE_CODES): Add it.
+ * sh.md (floatsisf2_i4, floatsidf2_i, extendsfdf2_i4): Use it for
+ input operand that needs to be in fpul.
+ (fix_truncsfsi2, fix_truncsfsi2_i4): Use register_operand for output.
+ * sh.c (find_barrier): Take into account that machine_dependent_reorg
+ might add new insns.
+
+2000-09-18 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (sh_expand_prologue): Mark GOTaddr2picreg as
+ MAYBE_DEAD.
+ (sh_expand_epilogue): Take the PIC register into account when
+ computing the frame size.
+
+ * config/sh/sh.c (nonpic_symbol_mentioned_p): Check LABEL_REFs.
+ * config/sh/sh.md (sym_label2reg, symPLT_label2reg): Protect
+ LABEL_REFs with a PIC-safe unspec.
+
+2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_info): Properly save the argument
+ number and parameter for $ operand number formats in case width
+ and precision arguments are also used. Allow printf width and
+ precision arguments to have operand numbers even if none was
+ specified for the main format, since this is OK for %*.*m. Only
+ object to missing $ operand number if the format used requires an
+ argument.
+
+2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (format_char_info): Add 'W' flag to comment.
+ (print_char_table, scan_char_table): Use it.
+ (check_format_info): Use the 'W' flag to determine whether a
+ format argument is written into.
+
+2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_types): Reorganize and clean up,
+ checking earlier for ERROR_MARKs and making cur_type into its
+ TYPE_MAIN_VARIANT where convenient.
+
+2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.c (cpp_options): Add specs for __STDC_HOSTED__.
+
+2000-09-18 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * optabs.c (emit_libcall_block): Set CONST_CALL_P for the call.
+
+ * i386-protos.h (ix86_init_builtins, ix86_expand_builtin): Declare.
+ * i386.c (struct builtin_description): New.
+ (bdesc_comi, bdesc_2arg, bdesc_1arg): New arrays.
+ (mmx_reg_operand): Declare MODE arg as unused.
+ (ix86_expand_sse_comi, ix86_expand_sse_compare, safe_vector_operand,
+ ix86_expand_unop1_builtin, ix86_expand_unop_builtin,
+ ix86_expand_binop_builtin, ix86_expand_store_builtin,
+ ix86_init_builtins, ix86_expand_builtin): New functions.
+ * i386.h (ix86_builtins): New enumeration.
+ (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): New macros.
+ * i386.md (attr length_immediate): 0 for mmx/sse types.
+ (attr prefix_0f): 1 for mmx/sse types.
+ (setcc_2): Remove "*" so we get gen_setcc_2.
+ (emms): Account for changed register numbering. Set "memory" attr
+ to unknown.
+ (sfence): Set "memory" attr to unknown.
+
+2000-09-18 Andreas Jaeger <aj@suse.de>
+
+ * configure.in: Define _GNU_SOURCE only when using the GNU C
+ Library.
+ * configure: Regenerated.
+ * config.in: Regenerated.
+
+2000-09-17 Mark Mitchell <mark@codesourcery.com>
+
+ * cppinit.c (cpp_init): Don't use ANSI prototypes.
+ * flow.c (flow_dump_loop): Likewise.
+ (flow_loops_dump): Likewise.
+
+ * c-typeck.c (c_start_case): Fix typo.
+
+2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (grokdeclarator): Don't give a warning about defaulting
+ to int for plain complex which defaults to complex double. Do
+ warn about defaulting to complex double if pedantic. Warn about
+ complex integer types if pedantic. Warn about complex types if
+ pedantic and not in C99 mode.
+ * c-typeck.c (build_unary_op): If pedantic, warn about use of ~
+ for complex conjugation.
+
+2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * contrib.texi: Update my entry.
+
+Sun Sep 17 18:48:32 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md (mcu_enhanced): New attribute.
+ (mcu_mega): Likewise.
+ (extendhisi2): Use mcu_enhanced.
+ (zero_extendhisi2): Likewise.
+ (call_insn): Use mcu_enhanced and mcu_mega.
+ (call_value_insn): Likewise.
+ (*sbrx_branch): Use mcu_mega.
+ (*sbrx_and_branchsi): Likewise.
+ (*sbrx_and_branchhi): Likewise.
+ (*tablejump_lib): Likewise.
+
+Sun Sep 17 10:46:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * alias.c (true_dependence): Allow non-unchanging read to conflict
+ with unchanging write.
+
+ * expr.c (store_constructor_field): Accept ALIAS_SET arg.
+ (store_constructor): Pass alias_set to it.
+
+ * c-decl.c (grokdeclarator): Reorder tests to avoid looking at
+ TYPE_MAIN_VARIANT of ERROR_MARK.
+ * c-lex.c (readescape): Avoid using printf syntax we don't recognize.
+
+ * simplify-rtx.c (simplify_unary_operation): Add cases
+ FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0.
+
+2000-09-17 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * expr.h (emit_library_call, emit_library_call_value): Delete
+ declarations.
+ * rtl.h (enum libcall_type): New.
+ (emit_library_call, emit_library_call_value): Change fn_type arg to
+ be of type enum libcall_type.
+ * calls.c: Likewise for the function definitions. Several callers
+ throughout changed to use the new enumeration appropriately.
+ (emit_library_call_value_1): Likewise. Put back code to make libcall
+ blocks of equal form, but only use it for the two new higher
+ enumeration values.
+
+2000-09-16 Mark Mitchell <mark@codesourcery.com>
+
+ Convert the C front-end to use function-at-a-time mode.
+ * c-common.h: Include splay-tree.h.
+ (C_DECLARED_LABEL_FLAG): New macro.
+ (struct language_function): Add x_scope_stmt_stack and
+ x_function_name_declared_p.
+ (RECHAIN_STMTS): Move definition.
+ (lang_statement_code_p): Likewise.
+ (lang_expand_stmt): Likewise.
+ (lang_expand_decl_stmt): New variable.
+ (lang_expand_function_end): Likewise.
+ (current_scope_stmt_stack): New function.
+ (add_decl_stmt): Likewise.
+ (add_scope_stmt): Likewise.
+ (mark_stmt_tree): Likewise.
+ (struct c_lang_decl): New structure.
+ (DECL_SAVED_TREE): Define.
+ (c_mark_lang_decl): New function.
+ (c_expand_start_cond): Change prototype.
+ (c_finish_then): New function.
+ (c_finish_else): Likewise.
+ (current_function_name_declared): Remove.
+ (set_current_function_name_declared): Likewise.
+ (mark_c_language_function): Declare.
+ (case_compare): Likewise.
+ (c_add_case_label): Likewise.
+ (c_expand_expr): Likewise.
+ (c_safe_from_p): Likewise.
+ * c-common.c (lang_expand_function_end): New variable.
+ (struct if_elt): Add if_stmt.
+ (c_expand_start_cond): Add the if-statement to the statement-tree,
+ rather than generating RTL.
+ (c_finish_then): New function.
+ (c_expand_start_else): Don't generate RTL.
+ (c_finish_else): New function.
+ (c_expand_expr_stmt): Don't generate RTL.
+ (statement_code_p): Add SCOPE_STMT.
+ (case_compare): New function.
+ (c_add_case_label): Likewise.
+ (mark_stmt_tree): Likewise.
+ (c_mark_lang_decl): Likewise.
+ (mark_c_language_function): Likewise.
+ (c_expand_expr): Likewise.
+ (c_safe_from_p): Likewise.
+ * c-decl.c (c_stmt_tree): New variable
+ (c_scope_stmt_stack): Likewise.
+ (c_function_name_declared_p): Likewise.
+ (lang_expand_expr_stmt): Remove.
+ (poplevel): Don't call output_inline_function for nested
+ functions.
+ (pushdecl): Don't set DECL_CONTEXT for a local declaration of an
+ `extern' function.
+ (redeclaration_error_message): Change means of computing whether
+ or not a function is nested.
+ (lookup_label): Don't call label_rtx.
+ (init_decl_processing): Add more GC roots.
+ (start_decl): Add DECL_STMTs to the statement-tree, rather than
+ calling rest_of_decl_compilation.
+ (finish_decl): Don't call expand_decl.
+ (store_parm_decls): Begin the statement-tree, but don't generate
+ RTL.
+ (finish_function): Tie off the statement-tree. Call c_expand_body
+ if appropriate.
+ (c_expand_body): New function.
+ (push_c_function_context): Save more information.
+ (pop_c_function_contxt): Likewise.
+ (copy_lang_decl): Now that we use DECL_LANG_SPECIFIC, copy it.
+ (lang_mark_tree): Mark it.
+ (current_stmt_tree): Adjust.
+ (current_scope_stmt_stack): New function.
+ (do_case): Remove.
+ (set_current_name_declared): Likewise.
+ (c_begin_compound_stmt): Define.
+ (c_expand_decl_stmt): Likewise.
+ * c-lang.c: Include rtl.h and expr.h.
+ (lang_init): Set more language-specific hooks.
+ * c-lex.c: Include expr.h.
+ * c-parse.in: Changes throughout to add statements to the
+ statement-tree, rather than generating RTL after every statement.
+ * c-semantics.c (lang_expand_decl_stmt): Define.
+ (add_decl_stmt): New function.
+ (add_scope_stmt): Likewise.
+ (finish_stmt_tree): Tweak.
+ (genrtl_expr_stmt): Likewise.
+ (genrtl_decl_stmt): Handle local labels, and call
+ lang_expand_decl_stmt if required.
+ (genrtl_for_stmt): Fix line-number handling.
+ (genrtl_case_label): Handle cleanups.
+ (genrtl_asm_stmt): Don't call combine_strings.
+ (genrtl_compound_stmt): Simplify.
+ (expand_stmt): Handle SCOPE_STMTs.
+ * c-tree.h (struct lang_decl): New structure.
+ (C_DECLARED_LABEL_FLAG): Remove.
+ (c_begin_compound_stmt): Declare.
+ (c_expand_decl_stmt): Likewise.
+ (c_expand_start_case): Rename to c_start_case.
+ (c_finish_case): New function.
+ * c-typeck.c (start_init): Tweak setting of
+ constructor_incremental.
+ (c_expand_asm_operands): Tweak error-handling. Add to the
+ statement-tree.
+ (c_expand_return): Add to the statement-tree.
+ (c_expand_start_case): Rename to ...
+ (c_start_case): ... this.
+ (struct c_switch): New type.
+ (switch_stack): New variable.
+ (do_case): Simplify.
+ (c_finish_case): New function.
+ * dependence.c: Include expr.h.
+ (enum dependence_type): Change spelling of enumerals.
+ (check_node_dependence): Adjust.
+ * expr.h (lang_safe_from_p): Declare.
+ (safe_from_p): Likewise.
+ * expr.c (lang_safe_from_p): New variable.
+ (safe_from_p): Give it external linkage. Use lang_safe_from_p.
+ * stmt.c (expand_expr_stmt): Avoid clobberring of last_expr_type.
+ * toplev.c (rest_of_decl_compilation): Robustify.
+ * tree.c (contains_placeholder_p): Likewise.
+ * Makefile.in: Update dependencies.
+ * objc/objc-act.h: Adjust calculation of value for dummy_tree_code.
+ * objc/objc-act.c: Include rtl.h, expr.h, and c-common.h.
+ (objc_expand_function_end): New function.
+ (finish_method_def): Use it.
+ (init_objc): Initialize more language-specific hooks.
+ * objc/Make-lang.in: Update dependencies.
+
+2000-09-16 Geoffrey Keating <geoffk@cygnus.com>
+
+ * configure.in: Define macros that affect features before
+ testing for features. Don't define _XOPEN_SOURCE.
+ * configure: Regenerated.
+ * config.in: Regenerated.
+
+Sat Sep 16 19:42:50 EDT 2000 John Wehle (john@feith.com)
+
+ * rtlanal.c (rtx_varies_p): Volatile asms vary.
+ (rtx_unstable_p): Restructure code. Volatile asms
+ are unstable.
+
+Sat Sep 16 14:35:55 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * function.h (no_debugging_symbols): New field.
+ * integrate.c (save_for_inline): Renamed from save_for_inline_nocopy.
+ Initialize no_debugging_symbols.
+ (output_inline_function): Save and restore write_symbols and set from
+ no_debugging_symbols.
+ * toplev.c (rest_of_compilation): Call save_for_inline.
+ * tree.h: Update comment.
+
+ * stor-layout.c (place_field): Don't do anything if field or
+ its type are ERROR_MARK.
+
+Sat Sep 16 19:14:00 2000 Laurynas Biveinis <lauras@softhome.net>
+
+ * cppfiles.c (purge_cache): Use munmap only if MMAP_THRESHOLD defined.
+ (read_include_file): Ensure inc->mmaped is initialized.
+
+2000-09-16 Richard Henderson <rth@cygnus.com>
+
+ * cppiles.c (purge_cache): Use PTR not caddr_t.
+
+2000-09-16 Hans-Peter Nilsson <hp@axis.com>
+
+ * gcc.c: In description for %{<S}, say the option removed is -S.
+ * invoke.texi (Spec Files): Ditto.
+
+2000-09-16 Andreas Jaeger <aj@suse.de>
+
+ * configure.in: Always define _GNU_SOURCE to make interfaces
+ visible that were hidden by only defining _GNU_SOURCE.
+ * configure: Regenerated.
+
+Sat 16-Sep-2000 08:13:45 BST Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c (push_macro_context): Set an argument's level after
+ calling parse_args. We could loop infinitely otherwise.
+
+2000-09-15 Tom Tromey <tromey@cygnus.com>
+
+ * configure, config.in: Rebuilt.
+ * configure.in: Check for iconv.h. Define _XOPEN_SOURCE.
+
+2000-09-15 Greg McGary <greg@mcgary.org>
+
+ * cppmacro.c (check_trad_stringification): Check token
+ text pointers against limit before dereferencing.
+
+2000-09-15 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (format_wanted_type): New structure.
+ (check_format_types): New function.
+ (check_format_info): Pass all checking of types of format
+ arguments, including width and precision arguments, to this new
+ function.
+
+2000-09-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * BUGS: Remove file.
+
+2000-09-15 Jakub Jelinek <jakub@redhat.com>
+
+ * config/alpha/alpha.c (override_options): ev6 cache latencies
+ from Richard Henderson. Don't allow -mmemory-latency=L0.
+
+ * config/alpha/alpha.h (TARGET_CPU_EV5, TARGET_CPU_EV6): Define.
+ (TARGET_OPTIONS): Add tune=.
+ (alpha_tune_string): Declare.
+ * config/alpha/alpha.c (override_options): Add cpu_table.
+ Use alpha_cpu_string first to set both alpha_cpu and target_flags
+ and then alpha_tune_string to set alpha_cpu only.
+ Replace tests for PROCESSOR_EV* with TARGET_CPU_EV* tests.
+ * config/alpha/elf.h (ASM_FILE_START): Likewise.
+ * config/alpha/osf.h (ASM_FILE_START): Likewise.
+ * config/alpha/openbsd.h (ASM_FILE_START): Likewise.
+
+Fri Sep 15 19:45:55 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386-protos.h (no_comparison_operator, uno_comparison_operator):
+ Remove.
+ (ix86_comparison_operator, ix86_cc_mode): Declare
+ * i386.h (CCGC, CCGCO): New modes.
+ (SELECT_CC_MODE): Move offline to ....
+ * i386.c (ix86_cc_mode): .... here; use new modes.
+ (ix86_comparison_operator): New.
+ (fcmov_comparison_operator): Ensure proper mode.
+ (put_condition_mode): More sanity checking.
+ (ix86_match_ccmode): Handle new modes.
+ (ix86_expand_fp_compare): GEU requires CCmode.
+ (ix86_expand_strlensi_unroll_1): Use emit_cmp_and_jump_insn instead of
+ doing it by hand.
+ * i386.md (cmp?i_ccz_1): Remove
+ (cmp?i_ccno_1): Use ix86_match_ccmode.
+ (cmp?i_minus_1): New.
+ (cmpsi_1): New expander.
+ (cmpqi_ext_1): Use match_ccmode
+ (cmpqi_ext_3): New expander.
+ (cmpqi_ext_3_insn): Rename from cmpqi_ext_3.
+ (cmpqi_ext_4): Use match_ccmode.
+ (add?i_?): Use match_ccmode.
+ (add?i_6): New.
+ (test?i_ccz_1): Remove
+ (test?i_1): New.
+ (testsi_ccno_1, testqi_ccz_1, testqi_ext_ccno_0): New expander.
+ (testqi_ext_0): Use ix86_match_ccmode.
+ (*xorqi_cc_ext_1): Use ix86_match_ccmode.
+ (xorqi_cc_ext_1): New expander.
+ (shift patterns): Use CCGOCmode for all shifts except for sar.
+ (setcc_?, jcc_?, miv?icc_nic): Use ix86_comparison_operator.
+ (setcc_3, jcc_3, miv?icc_c): Remove.
+
+2000-09-15 Will Cohen <wcohen@redhat.com>
+
+ * dwarf2out.c (add_const_value_attribute): Changed array into a
+ xmalloced object, so it exists after function exit.
+ (free_AT): Added case for dw_val_class_float to free allocated
+ memory.
+
+2000-09-15 Kazu Hirata <kazu@hxi.com>
+
+ * config/i386/i386.md: Fix a comment typo.
+ * gcc.c: Fix formatting.
+
+2000-09-15 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * optabs.c (emit_libcall_block): If target is a user variable,
+ copy to a temporary first.
+ * expr.c (convert_move): When generating a libcall, make a libcall
+ block.
+ * calls.c (emit_library_call_value_1): Don't create a libcall
+ sequence here; our caller will in most cases do it.
+
+ * sh.h (SECONDARY_INPUT_RELOAD_CLASS): Handle moving T, MACL or
+ MACH into FPUL.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): Similar case.
+ * sh.md (reload_outsf): Generate recognizable patterns for
+ TARGET_SH3E.
+ (floatsisf2, floatsisf2_ie, floatsisf2_i4, fix_truncsfsi2,
+ fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i, fix_truncdfsi2,
+ fix_truncdfsi2_i, extendsfdf2, extendsfdf2_i4, truncdfsf2,
+ truncdfsf2_i4): Change not to use explicit references to fpul.
+ (floatsisf2_ie): Remove USE of fpscr.
+ (floatsisf2): Change default expansion to match this.
+ (fix_truncsfsi2_i4_2, fix_truncdfsi2_i4 & splitters): Comment out
+ unused patterns.
+
+2000-09-15 Richard Henderson <rth@cygnus.com>
+
+ * expmed.c (store_bit_field): Consider naturally aligned
+ memory for direct reference.
+
+2000-09-15 Richard Henderson <rth@cygnus.com>
+
+ * config/alpha/alpha.c (alpha_expand_unaligned_load): Force all
+ AND addresses into alias set 0.
+ (alpha_expand_unaligned_store): Likewise.
+ (alpha_expand_unaligned_load_words): Likewise.
+ (alpha_expand_unaligned_store_words): Likewise.
+
+2000-09-15 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * config/sh/sh.h (CPP_SPEC): For -m4-nofpu, define __SH4_NOFPU__.
+ * config/sh/lib1funcs.asm (movstr_i4): Also compile if __SH4_NOFPU__
+ is defined.
+ * config/mips/mips.c (mips_va_arg): Args passed by reference have a
+ rsize of UNITS_PER_WORD.
+
+Fri 15-Sep-2000 06:49:07 BST Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c (ON_REST_ARG): Correct the test.
+ (maybe_paste_with_next): Duplicate a token that fail pasting,
+ and clear its PASTE_LEFT flag, so that nested pasting attempts
+ do not occur.
+
+2000-09-14 Richard Henderson <rth@cygnus.com>
+
+ * calls.c (precompute_register_parameters): Use COSTS_N_INSNS, not 2.
+ * cse.c (rtx_cost): Likewise.
+ * optabls.c (expand_binop): Likewise.
+ (expand_twoval_binop, prepare_cmp_insn): Likewise.
+ * regclass.c (copy_cost): Likewise.
+ * reload1.c (reload_cse_move2add): Likewise.
+
+2000-09-14 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (reswords): Add _Complex.
+
+2000-09-14 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * gcc.1: Delete documentation for -undef preprocessor option.
+
+2000-09-14 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+ STARTFILE_SPEC, ENDFILE_SPEC): Remove define.
+ * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
+ Remove undefine before config/elfos.h.
+ * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Comment out.
+
+2000-09-14 Kazu Hirata <kazu@hxi.com>
+
+ * invoke.texi (H8/300 Options): Add -ms2600.
+ * config/h8300.c (h8300_init_once): Output an error when -ms2600
+ is used without -ms.
+ * config/h8300.h (TARGET_MAC): New.
+ (TARGET_SWITCHES): Add -ms2600 and -mno-s2600.
+ (CONDITIONA_REGISTER_USAGE): Disable the mac register on any
+ machine other than H8S/2600.
+ * config/h8300.md: Accept mac instructions on the H8S/2600 instead
+ of the H8S/2000.
+
+2000-09-14 Alexandre Oliva <aoliva@redhat.com>, Bernd Schmidt <bernds@redhat.co.uk>
+
+ * reload.c (find_reloads_address_1): Generate reloads for auto_inc
+ pseudos that refer to the original pseudos, not only to their
+ equivalent memory locations.
+
+Thu Sep 14 12:10:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case COMPONENT_EXPR): Copy memory attributes
+ when making new MEM.
+
+ * Makefile.in (LN): Remove duplicate definition.
+
+2000-09-12 Bernd Schmidt <bernds@redhat.co.uk>
+
+ From Joern Rennecke:
+ * local-alloc.c (update_equiv_regs): If there is no REG_EQUAL note
+ on an insn and function_invariant_p returns nonzero for the source,
+ add a REG_EQUAL note.
+
+Thu Sep 14 00:51:57 EDT 2000 John Wehle (john@feith.com)
+
+ * alias.c (memrefs_conflict_p): An ADDRESSOF doesn't
+ conflict with frame_pointer_rtx.
+
+2000-09-13 Kazu Hirata <kazu@hxi.com>
+
+ * loop.c: Fix formatting.
+ * loop.h: Likewise.
+
+2000-09-13 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (divsf3): New.
+ (divsf3_internal_lat, divsf3_internal_thr): New.
+ (divdf3, divdf3_internal_lat, divdf3_internal_thr): New.
+ (divtf3, divtf3_internal_lat, divtf3_internal_thr): New.
+ (adddf3_trunc, subdf3_trunc, muldf3_trunc): New.
+ (madddf4_trunc, msubdf4_trunc, nmuldf3_trunc): New.
+ (nmadddf4_alts, nmadddf4_trunc): New.
+ (addtf3_truncsf, addtf3_truncdf, subtf3_truncsf): New.
+ (subtf3_truncdf, multf3_truncsf, multf3_truncdf): New.
+ (multf3_truncsf_alts, multf3_truncdf_alts): New.
+ (maddtf4_truncsf, maddtf4_truncdf, maddtf4_alts_truncdf): New.
+ (msubtf4_truncsf, msubtf4_truncdf, nmultf3_truncsf): New.
+ (nmultf3_truncdf, nmaddtf4_truncsf, nmaddtf4_truncdf): New.
+ (nmaddtf4_truncdf_alts): New.
+ (recip_approx): Don't predicate.
+
+2000-09-13 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/lib1funcs.asm (__divsf3): Protect fnorm.s with p6.
+
+2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * flags.h (flag_dump_rtl_in_asm): Declare.
+ * toplev.c (flag_dump_rtl_in_asm): Define.
+ (decode_d_option): Set flag_dump_rtl_in_asm and flag_print_asm_name
+ if -dP is specified.
+ * rtl.h (print_rtx_head): Declare.
+ * print-rtl.c (print_rtx_head): Define.
+ (print_rtx): Print the string pointed to by print_rtx_head
+ at beginning of each dump line.
+ (print_rtl): Likewise.
+ (print_rtl_single): Likewise.
+ * final.c (final_scan_insn): Dump the insn in the assembly
+ file for debugging.
+ * gcc.1: Document -dP option.
+ * invoke.texi (Debugging Options): Likewise.
+
+2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * md.texi (Machine Constraints): Document the 68HC11 constraints.
+ * install.texi (Configurations): Document the 68HC11&68HC12 port.
+ * invoke.texi (Option Summary, M68hc1x Options): Document the options.
+
+Tue Sep 12 13:51:13 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.h (ASSEMBLER_DIALECT): New macro declared.
+ * config/avr/avr.md (*movstrqi_insn): Cleanup output template.
+ (*clrstrqi): Likewise.
+ (xorhi3,xorsi3,absqi2): Likewise.
+ (one_cmplhi2,one_cmplsi2): Likewise.
+ (addsi3): Two stupid constraint alternatives removed.
+ (extendhisi2): Use `movw' for enhanced avr cores.
+ (zero_extendhisi2): Likewise.
+
+Wed Sep 13 02:31:23 EDT 2000 John Wehle (john@feith.com)
+
+ * alias.c (find_base_term): Use frame_pointer_rtx
+ when handling an ADDRESSOF.
+
+ * cse.c (canon_hash): Handle USE of BLKmode memory.
+ (cse_insn): Outgoing arguments for a libcall don't
+ affect any recorded expressions.
+
+2000-09-12 Tom Tromey <tromey@cygnus.com>
+
+ * configure, config.in: Rebuilt.
+ * configure.in: Check for iconv, nl_langinfo, langinfo.h.
+
+2000-09-12 Jakub Jelinek <jakub@redhat.com>
+
+ * c-lex.c (lex_string): Use charwidth to compute bytemask.
+ * expr.c (expand_expr): Don't optimize constant array references
+ initialized with wide string constants.
+
+2000-09-13 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.c (note_set_pseudo_multiple_uses): Correct.
+
+2000-09-12 Jim Wilson <wilson@cygnus.com>
+
+ * ifcvt.c (noce_process_if_block): If A and B are the same, and no
+ else block, and X has side-effects, then fail.
+
+2000-09-12 Greg McGary <greg@mcgary.org>
+
+ * config/mips/mips-protos.h
+ (trap_cmp_op, mips_gen_conditional_trap): New func decls.
+ * config/mips/mips.h (ISA_HAS_COND_TRAP): New macro.
+ (PREDICATE_CODES): Add "trap_cmp_op".
+ * config/mips/mips.c
+ (trap_cmp_op, mips_gen_conditional_trap): New functions.
+ * config/mips/mips.md (trap, conditional_trap): New patterns.
+
+2000-09-12 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * flow.c (try_pre_increment_1): Don't do anything to sets of the stack
+ pointer.
+
+2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (built_in_decls): New array.
+ (expand_builtin_fputs): New function.
+ (expand_builtin): Handle BUILT_IN_FPUTC and BUILT_IN_FPUTS.
+
+ * builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTS): New members.
+
+ * c-common.c (c_common_nodes_and_builtins): Handle fputc/fputs.
+
+ * tree.h (built_in_decls): New array.
+
+Tue Sep 12 08:53:57 2000 Jeffrey A Law (law@cygnus.com)
+
+ * convex.md: Use "+" instead of "=" for outputs wrapped in a
+ STRICT_LOW_PART.
+ * i370.md, i386.md, ns32k.md, sh.md, vax.md: Likewise.
+
+2000-09-12 Kazu Hirata <kazu@hxi.com>
+
+ * haifa-sched.c: Fix formatting.
+
+ * genattrtab.c: Fix formatting.
+
+ * unroll.c: Fix formatting.
+
+2000-09-12 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixfixes.c: make a type for the fix procedure & use it,
+ remove obsolete code
+ * fixinc/fixincl.c: Use PARAMS, not _P_. Add no-op default to switch.
+ * fixinc/fixincl.tpl: make non-exported arrays static scope
+ * fixinc/fixincl.x: regenerate
+ * fixinc/fixlib.h: Use PARAMS, not _P_
+ * fixinc/fixtests.c: make a type for the test proc & use it
+ * fixinc/server.h: Use PARAMS, not _P_
+
+2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-typeck.c (process_init_element): Avoid union init warnings on
+ floating point zero. Don't crash on unions containing structs.
+
+2000-09-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (PREDICATE_CODES): Add CONST_DOUBLE to
+ general_movsrc_operand, and remove CONST_INT from
+ general_movdst_operand.
+
+2000-09-12 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * cse.c (approx_reg_cost): If SMALL_REGISTER_CLASSES, return INT_MAX
+ if a reference to non-fixed hardreg is seen. Otherwise, count hard
+ regs with a higher cost.
+ (preferrable): Deal with cases where either cost or regcost is
+ MAX_COST.
+ (cse_insn): Use MAX_COST rather than 10000. Always initialize
+ regcost values.
+ (COSTS_N_INSNS): Move definition...
+ * rtl.h: ...here.
+ (MAX_COST): New macro.
+ * loop.c (init_loop): Use COSTS_N_INSNS macro instead of hardcoded
+ constant.
+
+2000-09-11 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (genrtl_clear_out_block): Remove.
+ * c-semantics.c (genrtl_clear_out_block): Remove.
+ (genrtl_while_stmt): Don't call it.
+ (genrtl_for_stmt): Likewise.
+
+2000-09-11 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppfiles.c: Move all default-#defines to top of file.
+ (open_include_file): Replace by lookup_include_file.
+ (read_with_read, read_file): Merged into read_include_file.
+ (stack_include_file, purge_cache): New functions.
+ (close_cached_fd): Delete.
+ (lookup_include_file, read_include_file, _cpp_pop_file_buffer):
+ Cache the in-memory buffer, not the file descriptor.
+
+ * cpphash.h (struct include_file): Add buffer, st, refcnt,
+ mapped fields.
+ (xcnew): New utility macro.
+ (DO_NOT_REREAD, NEVER_REREAD): Move up by struct include_file.
+ * cpplib.h (struct cpp_buffer): Remove mapped field.
+
+2000-09-11 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplex.c (parse_string): Accept backslash space newline as a
+ line continuation.
+ (lex_line): Likewise.
+ (_cpp_get_token): Remove hard limit on macro nesting.
+
+2000-09-12 Philipp Thomas <pthomas@suse.de>
+
+ * aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext.
+ * configure: Rebuilt.
+
+2000-09-13 Michael Hayes <mhayes@cygnus.com>
+
+ * flow.c (split_block): Fix update of registers live at
+ end of split block.
+
+Tue Sep 12 01:51:38 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (add?i_3, add?i_5): New.
+ (add?i_4): Rename from add?i_3; Fix compare pattern.
+ (sub?i_3, xor?i_3, ior?i_3): New.
+
+ * genrecog.c (write_tree): Output code to clear insn_extract cache.
+ * genattrtab.c (write_attr_case): Gen call to extract_insn_cache
+ instead of extract_insn and extract_constrain_insn_cache instead of
+ extract_insn and constrain_operands.
+ * recog.c (extract_insn_cached, extract_constrain_insn_cached):
+ New functions.
+ (extract_insn): Clear which_alternative.
+ (constrain_operands): Set which_alternative to -1 when failed.
+ * recog.h (extract_constrain_insn_cached, extract_insn_cached):
+ Declare.
+
+2000-09-11 Matthew Hiller <hiller@redhat.com>
+
+ * config/h8300/h8300.md (movstrictqi): Changed constraint modifier
+ on operand 0 to '+'.
+ (movstricthi): Likewise.
+
+2000-09-12 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.h (LOOP_IVS): New macro.
+ (REG_IV_TYPE, REG_IV_INFO): Add ivs argument.
+ (struct loop_ivs): New.
+ (struct loop_info): Add ivs field.
+ (reg_iv_type, reg_iv_info): Delete prototype.
+ (reg_biv_class, loop_iv_list): Likewise.
+ * loop.c (record_biv, find_life_end): Pass loop argument.
+ (reg_iv_type): Remove global array and use
+ field in loop_regs structure within loop_ivs structure.
+ (reg_iv_info, reg_biv_class, loop_iv_list): Likewise.
+ (first_increment_giv, last_increment_giv): Use entry in
+ loop_ivs structure.
+ (record_initial): Pass ivs pointer.
+ * unroll.c (copy_loop_body, remap_split_bivs): Add loop argument.
+
+2000-09-12 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.h (LOOP_REGS): New macro.
+ (struct loop_regs): New.
+ (struct loop_info): Add regs field.
+ * loop.c (set_in_loop): Remove global array and store
+ in loop_regs structure as part of loop_info structure.
+ (n_times_set, may_not_optimize): Likewise.
+ (reg_single_usage, moved_once): Likewise.
+ (count_one_set): Add regs argument.
+ (combine_movables, rtx_equal_for_loop_p, combine_givs): Likewise.
+ (set_pseudo_multiple_uses): Pass regs pointer.
+
+2000-09-12 Michael Hayes <mhayes@cygnus.com>
+
+ * unroll.c (iteration_info): Subsume into loop_iterations.
+ * loop.h (loop_info): New field iv.
+
+2000-09-12 Michael Hayes <mhayes@cygnus.com>
+
+ * basic-block.h (LOOP_TREE, LOOP_PRE_HEADER, LOOP_EDGES): New.
+ (LOOP_EXITS_DOMS, LOOP_ALL): Likewise.
+ (flow_loops_update): New prototype.
+ (flow_loops_find): Add flags to prototype.
+ (struct loop): Add `pre_header_root' and `pre_header_trace' fields.
+ * flow.c (flow_loop_pre_header_scan): New.
+ (flow_loop_dump): Dump pre-header root and trace and exit dominators.
+ (flow_loop_free): Free pre-header root and trace and exit dominators.
+ (flow_loops_find): New argument flags.
+ (flow_loops_update): New function.
+ * toplev.c (rest_of_compilation): Add flag argument to flow_loops_find.
+
+2000-09-12 Michael Hayes <mhayes@cygnus.com>
+
+ * basic-block.h (split_block, update_bb_for_insn): New prototypes.
+ * flow.c (split_block, update_bb_for_insn): New functions.
+
+2000-09-11 Richard Henderson <rth@cygnus.com>
+
+ * cse.c (fold_rtx): Honor NO_FUNCTION_CSE.
+
+2000-09-11 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare.
+ * config/ia64/ia64.c (fr_nonimmediate_operand): New.
+ (ia64_override_options): Prevent optimizing division for both
+ latency and throughput.
+ (rtx_needs_barrier): Handle frcpa.
+ * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): New.
+ (MASK_INLINE_DIV_THR, TARGET_INLINE_DIV_LAT): New.
+ (TARGET_INLINE_DIV_THR, TARGET_INLINE_DIV): New.
+ (TARGET_SWITCHES): Add -minline-divide-min-latency and
+ -minline-divide-max-throughput.
+ (PREDICATE_CODES): Update.
+ * config/ia64/ia64.md (extendsidi2): Remove * from f case.
+ (zero_extendsidi2): Likewise. Fix typo in f case insn.
+ (extendsfdf2): Add cases for gr<->fr and fr<->mem.
+ (extendsftf2): Likewise.
+ (extenddftf2): Likewise.
+ (fix_trunctfdi2_alts): New.
+ (fixuns_trunctfdi2_alts): New.
+ (madd*4): Rename from madd*3.
+ (divsi3, modsi3, udivsi3, umodsi3): New.
+ (divsi3_internal): New.
+ (divdi3, moddi3, udivdi3, umoddi3): New.
+ (divdi3_internal_lat, divdi3_internal_thr): New.
+ (multf3_alts, maddtf4_alts, nmaddtf4_alts): New.
+ (recip_approx): New.
+
+2000-09-11 Alexandre Oliva <aoliva@redhat.com>
+
+ * print-rtl.c (debug_call_placeholder_verbose): New variable.
+ (print_rtx) [CALL_PLACEHOLDER]: Dump all call sequences if it is
+ set.
+ * integrate.c (copy_rtx_and_substitute): Don't share
+ LEAF_REG_REMAPpable registers with the inlined function. Don't
+ share the function value with calling sequences.
+
+2000-09-11 Jakub Jelinek <jakub@redhat.com>
+
+ * c-decl.c (do_case): Fix a typo.
+
+ * combine.c (simplify_if_then_else): Don't convert a == b ? b : a
+ to a if the comparison is floating mode and not -ffast-math.
+ * simplify-rtx.c (simplify_ternary_operation): Likewise.
+
+Mon Sep 11 20:07:48 2000 J"orn Rennecke <amylaar@redhat.co.uk>
+
+ * sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to
+ gen_ic_invalidate_line.
+
+2000-09-11 Philip Blundell <pb@futuretv.com>
+
+ * config/arm/elf.h (SUBTARGET_CPP_SPEC): Don't define `arm_elf'.
+
+Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com>
+
+ * install.texi (LANGUAGES): Update to include new languages.
+ * INSTALL: Rebuilt.
+
+2000-09-11 DJ Delorie <dj@redhat.com>
+
+ * gcc.c (main): Don't warn about unused -B prefixes
+ (unused_prefix_warnings): remove
+
+2000-09-11 Kazu Hirata <kazu@hxi.com>
+
+ * final.c: Fix formatting.
+
+ * integrate.c: Fix formatting.
+
+2000-09-11 Geoff Keating <geoffk@cygnus.com>
+
+ * alias.c (memrefs_conflict_p): An ADDRESSOF does conflict, sorry.
+
+2000-09-11 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * reload.c (regno_clobbered_p): Fix thinko in previous change.
+
+2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * gcc.1: Document 68hc11 specific options.
+
+2000-09-10 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/sysv4.h (MASK_LONG_DOUBLE_128): Define.
+ (TARGET_LONG_DOUBLE_128): Define.
+ (SUBTARGET_SWITCHES): Add -mlong-double-64 and -mlong-double-128.
+ (LONG_DOUBLE_TYPE_SIZE): Redefine.
+ (MAX_LONG_DOUBLE_TYPE_SIZE): Define.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define depending on definition
+ of __LONG_DOUBLE_128__.
+ (CPP_SYSV_SPEC): Define __LONG_DOUBLE_128__ if -mlong-double-128
+ passed.
+ (CPP_LONGDOUBLE_DEFAULT_SPEC): Define.
+ (CPP_SYSV_DEFAULT_SPEC): Define.
+ (SUBTARGET_EXTRA_SPECS): Add cpp_longdouble_default.
+ (INIT_TARGET_OPTABS): Define.
+
+ * config/rs6000/aix.h (RS6000_ITRUNC): Moved from rs6000.h.
+ (RS6000_UITRUNC): Likewise.
+ (INIT_TARGET_OPTABS): New macro.
+ * config/rs6000/rs6000.c (rs6000_trunc_used): Delete.
+ (trunc_defined): Delete.
+ (output_prolog): Don't output .extern definitions for fp->int
+ conversion routines, ASM_OUTPUT_EXTERNAL_LIBCALL will do it.
+ * config/rs6000/rs6000.h (rs6000_trunc_used): Delete.
+ (trunc_defined): Delete.
+ (RS6000_ITRUNC): Moved to aix.h.
+ (RS6000_UITRUNC): Likewise.
+ * config/rs6000/rs6000.md (fix_truncdfsi2): Fail if it would
+ only emit a libcall.
+ (fixuns_truncdfsi2): Delete.
+ (trunc_call): Delete.
+ (trunc_call_rtl): Delete.
+
+2000-09-10 Zack Weinberg <zack@wolery.cumb.org>
+
+ * varasm.c (make_decl_rtl): Restore leading star on
+ DECL_ASSEMBLER_NAME set for decls with an asmspec.
+
+2000-09-10 Zack Weinberg <zack@wolery.cumb.org>
+
+ * c-pragma.c (handle_pragma_pack): Correct parsing logic so it
+ won't give a spurious error for '#pragma pack()'. Simplify
+ control flow for readability. 'reset' action is not necessary.
+
+2000-09-10 Zack Weinberg <zack@wolery.cumb.org>
+
+ * defaults.h: Provide default definitions for: CHAR_TYPE_SIZE,
+ SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE,
+ LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE,
+ DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED.
+
+ * cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c,
+ profile.c, sdbout.c, tradcif.y, tree.c:
+ Include defaults.h if not already included.
+ Don't define the above macros.
+
+ * Makefile.in: Update dependencies.
+
+2000-09-10 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (add_stmt): Change prototype.
+ (RECHAIN_STMTS): New macro.
+ (CASE_LABEL_DECL): Likewise.
+ (genrtl_case_label): Change prototype.
+ (c_expand_start_case): Remove prototype.
+ (build_case_label): Change prototype.
+ (decl_constant_value): Declare.
+ * c-common.c (check_case_value): Handle C++'s extensions to C
+ semantics.
+ * c-commnon.def (CASE_LABEL): Add room for the CASE_LABEL_DECL
+ field.
+ * c-parse.in (stmt): Adjust handling of return statements and case
+ laels.
+ * c-semantics.c (add_stmt): Return the new statement.
+ (genrtl_return_stmt): Take the RETURN_STMT as input, not the
+ returned expression. Directly generate RTL, rather than calling
+ c_expand_return.
+ (genrtl_switch_stmt): Don't call c_expand_start_case.
+ (build_case_label): Take the LABEL_DECL as input, too.
+ (genrtl_case_label): Just call add_case_node.
+ (expand_stmt): Adjust calls to genrtl_return_stmt and
+ genrtl_case_label.
+ * c-tree.h (c_expand_start_case): Declare.
+ * c-typeck.c (decl_constant_value): Give it external linkage.
+ (c_expand_return): Don't call expand_return or expand_null_return;
+ use genrtl_return_stmt instead.
+ * stmt.c (struct nesting): Remove num_ranges field.
+ (add_case_node): Give it external linkage.
+ (expand_start_case): Don't set num_ranges.
+ (expand_start_case_dummy): Don't clear it.
+ (pushcase): Rely on add_case_node to handle `default' labels.
+ (add_case_node): Handle `default' labels.
+ * tree.c (tree_int_cst_compare): New function.
+ * tree.h (tree_int_cst_compare): Declare.
+ (add_case_node): Likewise.
+
+2000-09-10 Richard Henderson <rth@cygnus.com>
+
+ * c-parse.in: Revert last change.
+ (init_reswords): Do not enter disabled keywords into the ridpointers
+ table, modulo objc weirdness.
+ (_yylex): Return the canonical spelling for a keyword.
+
+2000-09-10 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.h (CPP_ISA_SPEC): Don't define `arm' or `thumb'.
+ * config/arm/linux-elf.h (CPP_PREDEFINES): Don't define `__arm__'.
+
+Sun Sep 10 14:30:28 EDT 2000 John Wehle (john@feith.com)
+
+ * alias.c (find_base_term): Handle ADDRESSOF.
+ (memrefs_conflict_p): An ADDRESSOF doesn't conflict.
+
+2000-09-10 Denis Chertykov <denisc@overta.ru>
+
+ * genoutput.c (output_insn_data): Translate <NEWLINE> to \n\ while
+ outputting templates with many lines.
+
+2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD
+ to decide whether 64-bit support must be generated.
+
+2000-09-10 Richard Henderson <rth@cygnus.com>
+
+ * c-parse.in (asm patterns): Fix volatile check.
+
+2000-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cppmacro.c (check_trad_stringification): New function.
+ (save_expansion): If -Wtraditional, warn about stringification of
+ macro arguments.
+
+2000-09-11 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.h (struct loop_mem_info): Move from loop.c
+ (struct loop_info): Add fields store_mems, mems, mems_idx,
+ mems_allocated, unknown_address_altered,
+ unknown_constant_address_altered, num_mem_sets, and
+ first_loop_store_insn.
+
+ * loop.c (loop_store_mems): Replace with field in loop_info struct.
+ (loop_mems, loop_mems_idx, loop_mems_allocated): Likewise.
+ (unknown_address_altered, unknown_constant_address_altered): Likewise.
+ (num_mem_sets): Likewise.
+ (replace_loop_mems, replace_loop_regs): New.
+ (struct loop_replace_args): New.
+ (load_mems): Use replace_loop_mems.
+ (try_copy_prop): Use replace_loop_regs.
+ (replace_loop_reg, replace_loop_mem): Use loop_replace_args structure.
+
+2000-09-09 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * configure.in: Recognize m6811-elf and m6812-elf.
+ * configure: Regenerate.
+
+2000-09-09 Geoff Keating <geoffk@cygnus.com>
+
+ * recog.c (validate_replace_rtx_1): Correct MODE parameter in call
+ to operand_subword.
+
+2000-09-10 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.c (struct movables): New.
+ (num_movables): Move into struct movables.
+ (the_movables): Change type to struct movables.
+ (ignore_some_movables): Change struct movable arg to struct movables.
+ (force_movables, combine_movables, regs_match_p): Likewise.
+ (rtx_equal_for_loop_p, move_movables): Likewise.
+ (scan_loop): Change movables to be of type struct movables.
+ Replace last_movable with field in movables structure.
+
+2000-09-08 Zack Weinberg <zack@wolery.cumb.org>
+
+ * c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS.
+ (init_pragma): Avoid warning if pfile happens to be unused.
+ * c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS. Never
+ define init_pragma to nothing. Always prototype
+ init_pragma. Prototype dispatch_pragma if !USE_CPPLIB.
+
+ * c-lex.c (process_directive): Always call dispatch_pragma.
+ Initialize entering_c_header to 0.
+
+2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md: New file, machine description for
+ 68HC11 & 68HC12.
+ * config/m68hc11/m68hc11.h: New file, definitions for 68HC11 & 68HC12.
+ * config/m68hc11/m68hc11.c: New file, functions for 68HC11 & 68HC12.
+ * config/m68hc11/m68hc12.h: New file, definitions for 68HC12.
+ * config/m68hc11/m68hc11-protos.h: New file.
+ * config/m68hc11/m68hc11-crt0.S: New file, startup code.
+ * config/m68hc11/t-m68hc11-gas: New file, makefile fragment.
+ * config/m68hc11/xm-m68hc11.h: New file, target defs.
+ * config/m68hc11/larith.asm: New file, libgcc routines.
+
+2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * Makefile.in (DPBIT_FUNCS): Add _usi_to_df.
+ (FPBIT_FUNCS): Add _usi_to_sf.
+ * config/fp-bit.c (usi_to_float): New function.
+ * config/fp-bit.h (L_usi_to_sf, L_usi_to_df): Define.
+ (usi_to_float): Add appropriate #define.
+
+2000-09-08 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * i386-protos.h (sse_comparison_operator, mmx_reg_operand): Declare
+ new functions.
+ * i386.c (sse_comparison_operator, mmx_reg_operand): New functions.
+ * i386.md (attr "type"): Add sse and mmx types.
+ (attr "memory"): Handle them without a crash.
+ (movsi_1, movdi_2): Allow MMX regs.
+ (movdi splits): Don't split moves involving MMX regs.
+ (setcc_4): Remove '*' from pattern name so we get a gen_setcc4.
+ (movv4sf_internal, movv4si_internal, movv8qi_internal,
+ movv4hi_internal, movv2si_internal, movv8qi, movv4hi, movv2si,
+ movv4sf, movv4si, pushv4sf, pushv4si, pushv8qi, pushv4hi, pushv2si,
+ sse_movaps, sse_movups, sse_movmskps, mmx_pmovmskb, mmx_maskmovq,
+ sse_movntv4sf, sse_movntdi, sse_movhlps, sse_movlhps, sse_movhps,
+ sse_movlps, sse_loadss, sse_movss, sse_storess, sse_shufps,
+ addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, mulv4sf3, vmmulv4sf3,
+ divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2, rsqrtv4sf2, vmrsqrtv4sf2,
+ sqrtv4sf2, vmsqrtv4sf2, sse_andti3, sse_nandti3, sse_iorti3,
+ sse_xorti3, maskcmpv4sf3, maskncmpv4sf3, vmmaskcmpv4sf3,
+ vmmaskncmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps,
+ smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi,
+ cvttps2pi, cvtsi2ss, cvtss2si, cvttss2si, addv8qi3, addv4hi3,
+ addv2si3, ssaddv8qi3, ssaddv4hi3, usaddv8qi3, usaddv4hi3, subv8qi3,
+ subv4hi3, subv2si3, sssubv8qi3, sssubv4hi3, ussubv8qi3, ussubv4hi3,
+ mulv4hi3, smulv4hi3_highpart, umulv4hi3_highpart, mmx_pmaddwd,
+ mmx_iordi3, mmx_xordi3, mmx_anddi3, mmx_nanddi3, mmx_uavgv8qi3,
+ mmx_uavgv4hi3, mmx_psadbw, mmx_pinsrw, mmx_pextrw, mmx_pshufw,
+ eqv8qi3, eqv4hi3, eqv2si3, gtv8qi3, gtv4hi3, gtv2si3, umaxv8qi3,
+ smaxv4hi3, uminv8qi3, sminv4hi3, ashrv4hi3, ashrv2si3, lshrv4hi3,
+ lshrv2si3, mmx_lshrdi3, ashlv4hi3, ashlv2si3, mmx_ashldi3,
+ mmx_packsswb, mmx_packssdw, mmx_packuswb, mmx_punpckhbw,
+ mmx_punpckhwd, mmx_punpckhdq, mmx_punpcklbw, mmx_punpcklwd,
+ mmx_punpckldq, emms, sfence, ldmxcsr, prefetch, stmxcsr, sse_clrti,
+ mmx_clrdi): New patterns.
+
+2000-09-08 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c: Don't include tm.h directly.
+
+Fri Sep 8 14:34:56 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (validate_replace_rtx_1): Fix confusion about equality
+ testing; simplify subregs of constants and nested subregs.
+
+2000-09-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (symPLT_label2reg): Use operand3 for PIC reg.
+
+2000-09-08 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * combine.c (combine_simplify_rtx): Try to simplify VEC_SELECT of a
+ VEC_CONCAT.
+ * rtl.texi (description of USE): Add note about possible pitfalls
+ with this rtx.
+ From Richard Henderson:
+ * reload1.c (choose_reload_regs): Compute need_mode properly.
+
+2000-09-07 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa.
+ (__modsi3, __umodsi3): Likewise.
+ (__udivsi3): Likewise. Normalize the TFmode values.
+
+2000-09-07 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter
+ with a prototype.
+ * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress
+ warning.
+
+Fri Sep 8 03:26:38 2000 J"orn Rennecke <amylaar@redhat.co.uk>
+
+ * sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove.
+ (cmpeqdi_t): Add output pattern.
+ (cmpeqdi_t+1): Don't split when not optimizing.
+ Restore proper splitting operation.
+
+2000-09-07 Richard Henderson <rth@cygnus.com>
+
+ * c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS,
+ do not call dispatch_pragma.
+
+2000-09-07 Jim Wilson <wilson@cygnus.com>
+
+ * reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition
+ to CLASS_CANNOT_CHANGE_MODE.
+ * config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the
+ mode classes are different.
+
+2000-09-07 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplib.h (struct cpp_options): Add user_label_prefix member,
+ left out of commit which removed cppulp.c.
+
+2000-09-07 Richard Henderson <rth@cygnus.com>
+
+ * bb-reorder.c (fixup_reorder_chain): Add jump in new block
+ after switch for CASE_DROPS_THROUGH.
+
+2000-09-07 Richard Henderson <rth@cygnus.com>
+
+ * loop.c (strength_reduce): Call check_ext_dependant_givs.
+ Properly extend the biv initial value for the giv.
+ (record_biv): Zero ext_dependant.
+ (record_giv): New argument ext_val. Update all callers.
+ (general_induction_var): Likewise.
+ (consec_sets_giv): Likewise.
+ (simplify_giv_expr): Likewise. Fill in ext_val if we find
+ a sign-extend, zero-extend, or truncate.
+ (combine_givs_p): Make sure modes are compatible.
+ (check_ext_dependant_givs): New.
+ (extend_value_for_giv): New.
+ * loop.h (struct induction): Add ext_dependant.
+ * unroll.c (iteration_info): Extend the biv initial value for the giv.
+ (find_splittable_givs): Likewise.
+ (final_giv_value): Likewise.
+
+2000-09-07 Zack Weinberg <zack@wolery.cumb.org>
+
+ * c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if
+ REGISTER_TARGET_PRAGMAS is defined. Duplicate some
+ definitions from cpplib.h.
+ * cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has
+ already done it.
+ * tm.texi: Document HANDLE_PRAGMA as no longer supported. Add
+ documentation for REGISTER_TARGET_PRAGMAS.
+
+ * c-lex.c: Include cpplib.h before c-pragma.h. Define a
+ default-pragma callback to implement -Wunknown-pragmas if
+ USE_CPPLIB.
+ * c-parse.in: Move all includes to top of file.
+ * c-pragma.c: Include cpplib.h before c-pragma.h. Include
+ tm_p.h.
+ (dispatch_pragma): Put the namespace in the -Wunknown-pragmas
+ warning.
+ (init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it.
+
+ * arm.h, arm-protos.h, arm.c,
+ c4x.h, c4x-protos.h, c4x.c,
+ h8300.h, h8300-protos.h, h8300.c,
+ i370.h, i370-protos.h, i370.c,
+ i960.h, i960-protos.h, i960.c,
+ sh.h, sh-protos.h, sh.c,
+ v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based
+ pragmata scheme to use REGISTER_TARGET_PRAGMAS instead.
+
+ * d30v.h: Don't mention HANDLE_PRAGMA in comment. Add
+ multiple include guard.
+ * i370.md (untyped_call): Use GEN_CALL.
+ (umodsi3): Remove unused variable.
+ * sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA.
+ * v850.c (output_move_single, output_move_double): Constify
+ return value.
+ (print_operand): Constify a char *.
+ * v850.h (struct small_memory_info): Constify name member.
+
+2000-09-07 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300.h: Fix comment typos.
+ * config/h8300/h8300.md: Likewise.
+ * config/h8300/lib1funcs.asm: Likewise.
+
+Thu 07-Sep-2000 21:29:00 BST Neil Booth <NeilB@earthling.net>
+
+ * Makefile.in: Remove references to cppulp.{c,o}.
+ * cppinit.c (initialize_builtins, cpp_start_read,
+ cpp_handle_option): Update to use cpp_options structure.
+ * cppulp.c: Remove.
+
+2000-09-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (time_char_table): Allow %#b and %#h.
+
+2000-09-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * reorg.c (find_end_label): If the basic block reorder pass moves the
+ return insn to some other place try to locate it again and put our
+ end_of_function_label there.
+ * reorg.c (relax_delay_slots): Check if find_end_label created a
+ new label that invalidates the current optimazation.
+
+2000-09-07 Catherine Moore <clm@redhat.com>
+
+ * unroll.c (unroll_loop): Check for unconditional jumps
+ to loop continuation. Delete if n_iterations is 1.
+ (ujump_to_loop_cont): New routine.
+
+2000-09-07 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * rtl.c (class_narrowest_mode): Add entries for MODE_VECTOR_INT and
+ MODE_VECTOR_FLOAT.
+ * reload.c (regno_clobbered_p): Accept new arg, MODE, and use it
+ to handle multiword modes correctly. All callers and the declaration
+ changed.
+
+2000-09-06 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (prep_stmt): Declare.
+ (lang_expand_stmt): Likewise.
+ * c-decl.c (lang_expand_stmt): Remove.
+ * c-semantics.c (lang_expand_stmt): Define.
+ (prep_stmt): New function.
+ (expand_stmt): Handle common statement types here.
+
+2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (sh-*-linux*): Added.
+ * configure: Rebuilt.
+ * config/sh/t-linux: New file.
+ * config/sh/sh.h (USERMODE_BIT): Define.
+ (TARGET_USERMODE): Likewise.
+ (TARGET_SWITCHES): New switches for the bits above.
+ (INITIALIZE_TRAMPOLINE): Call __ic_invalidate in USERMODE.
+ * config/sh/linux.h: New file.
+ * config/sh/lib1funcs.asm (GLOBAL): Don't prefix symbols with
+ underscore on linux.
+ (L_sdivsi3, L_udivsi3): Define for linux.
+ (L_ic_invalidate): Define.
+ * invoke.texi (SH Options): Document -musermode.
+
+2000-09-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (OVERRIDE_OPTIONS): Don't disable function
+ CSE unless generating PIC.
+
+ * config/sh/sh.md (symPLT_label2reg): Force the initialization of
+ the PIC register.
+
+2000-09-06 H.J. Lu (hjl@gnu.org)
+
+ * Makefile.in (clean_s1): Depend on stage_b.
+ (clean_s2): Depend on stage_d. Don't remove $(VOL_FILES) in
+ stage2. They are used for "make compare".
+
+2000-09-06 Mark Mitchell <mark@codesourcery.com>
+
+ Move statement-tree facilities from C++ to C front-end.
+ * c-common.h (c_tree_index): Add CTI_VOID_ZERO.
+ (void_zero_node): New macro.
+ (struct stmt_tree_s): New type.
+ (stmt_tree): New typedef.
+ (struct language_function): New type.
+ (last_tree): New macro.
+ (last_expr_type): Likewise.
+ (walk_tree_fn): New typedef.
+ (current_stmt_tree): New function.
+ (begin_stmt_tree): Likewise.
+ (add_stmt): Likewise.
+ (finish_stmt_tree): Likewise.
+ (statement_code_p): Likewise.
+ (lang_statement_code_p): New variable.
+ (walk_stmt_tree): New function.
+ (STMT_IS_FULL_EXPR_P): New macro.
+ * c-common.c (lang_statement_code_p): New variable.
+ (c_common_nodes_and_builtins): Initialize void_zero_node.
+ (statement_code_p): New function.
+ (walk_stmt_tree): Likewise.
+ * c-decl.c (language_function): Rename to ...
+ (c_language_function): ... this. Include language_function.
+ (push_c_function_context): Adjust accordingly.
+ (pop_c_function_context): Likewise.
+ (mark_c_function_context): Likewise.
+ (current_stmt_tree): Define.
+ * c-semantics.c (begin_stmt_tree): New function.
+ (add_stmt): Likewise.
+ (prune_unused_decls): Likewise.
+ (finish_stmt_tree): Likewise.
+
+2000-09-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * flow.c (insn_dead_p): Detect dead memory stores with auto increments.
+
+2000-09-06 Kazu Hirata <kazu@hxi.com>
+
+ * calls.c: Fix formatting.
+
+2000-09-06 Graham Stott <grahams@cygnus.co.uk>
+
+ * config/i386/i386.h (ADDRESS_COST): Fix typo.
+
+2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
+
+ Integrated preprocessor.
+
+ * Makefile.in: Remove all references to c-parse.gperf,
+ c-gperf.h, and c-parse.h. Remove -d from yacc command line
+ generating c-parse.c. Update dependencies.
+ * c-parse.gperf, c-gperf.h: Delete.
+
+ * c-common.c: Don't define parse_options, cpp_token, yy_cur,
+ yy_lim, or yy_get_token. Don't define get_directive_line if
+ USE_CPPLIB.
+ * c-common.h: Add multiple include guard. Define RID values
+ for every keyword in C, C++, and Objective-C. Put all the
+ modifiers first.
+ (struct c_fileinfo, get_fileinfo, dump_time_statistics): New.
+ * c-decl.c (c_decode_option): Handle -lang-objc here.
+ (print_lang_identifier): Handle C_IS_RESERVED_WORD case.
+ (grokdeclarator): Adjust for new RID scheme.
+ (extract_interface_info): New stub.
+ * c-lang.c: Don't declare yy_cur or parse_options.
+ (lang_init_options): Call cpp_init. Don't call
+ cpp_options_init.
+ (lang_init): Don't call check_newline if USE_CPPLIB.
+
+ * c-lex.c: Don't include c-parse.h. Do include timevar.h.
+ Elide lots of unnecessary code if USE_CPPLIB. Delete code
+ rendered unnecessary by new architecture. Move routines not
+ shared with C++ to c-parse.in. Maintain a local idea of the
+ line number. Handle C++ as well as C.
+ [USE_CPPLIB]: Declare and register callbacks for #ident and
+ for entering/leaving files.
+ (init_c_lex, c_lex): Are now the entry points to this file.
+ (check_newline): Break out directive handling to
+ process_directive.
+ (read_ucs, is_extended_char, utf8_extend_token): Moved here
+ from C++ front end.
+ (readescape, parse_float): Overhaul.
+ (lex_number, lex_string, lex_charconst): Break out of c_lex
+ (n'ee yylex).
+ (get_fileinfo, update_header_times, dump_one_header,
+ dump_time_statistics): New and/or moved here from C++.
+ Support per-file data needed by C++ and per-header timing
+ statistics (C++ only, at the moment).
+ * c-lex.h: Update prototypes. Add multiple include guard.
+ * c-tree.h (struct lang_identifier): Add rid_code field.
+ (C_IS_RESERVED_WORD, C_RID_CODE): New.
+
+ * c-parse.in: Include c-pragma.h. Remove unnecesary calls to
+ reinit_parse_for_function and/or position_after_white_space.
+ (save_filename, save_lineno): Look ahead before saving.
+ (label -> identifier ':'): Save file and line before shifting ':'.
+ (reservedwords): No need to call get_identifier.
+ (init_parse, finish_parse, yyerror, yylex, yyprint,
+ make_pointer_declarator): Are now here for C/ObjC.
+ (rid_to_yy): Conversion table from RID constants to Yacc codes.
+
+ * c-pragma.c: Rewrite parsing logic to fit with cpplib's
+ #pragma registry. Provide dummy implementation of that
+ interface if !USE_CPPLIB.
+ * c-pragma.h: Update to match.
+
+ * flags.h: Add multiple include guard.
+ (flag_detailed_statistics): Moved here from C++.
+ * toplev.c: Define flag_detailed_statistics.
+
+ * gcc.c (C specs): Use %(trad_capable_cpp) for -E|-M|-MM case
+ #if USE_CPPLIB.
+ * timevar.def (TV_CPP, TV_LEX): New.
+ * timevar.h: Add multiple include guard.
+
+ * objc/lang-specs.h: Use %(trad_capable_cpp) for -E|-M|-MM case
+ #if USE_CPPLIB.
+ * objc/objc-act.c: Don't mention yy_cur or parse_options.
+ Initialize cpplib properly. Force lineno to 0 after first
+ call to check_newline. Don't handle -lang-objc here.
+ Move forget_protocol_qualifiers and remember_protocol_qualifiers here.
+
+2000-09-06 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md: Correct function unit definitions for cr_logical and
+ mtjmpr.
+ (sCOND): Additionally fail for sgt, slt, sge, sle if !TARGET_POWER
+ and use portable method for >=0 and floating point >=. Remove
+ associated matchers.
+
+2000-09-06 Mark Mitchell <mark@codesourcery.com>
+
+ * extend.texi: Mark named return value extension as deprecated.
+
+2000-09-06 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/rs6000.c (rs6000_reverse_condition): Return
+ the result.
+
+2000-09-06 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * toplev.c (display_help): Fix thinko in documentation.
+
+ * diagnostic.h (output_buffer::indent_skip): New fields.
+ (output_indentation): New macro.
+
+ * diagnostic.c (output_indent): New function.
+ (output_set_prefix, clear_diagnostic_info): Use.
+ (output_emit_prefix): Predict future indentation.
+
+2000-09-06 DJ Delorie <dj@redhat.com>
+
+ * Makefile.in (stage_*): add more dependencies to ensure parallel
+ builds build correctly
+
+2000-09-06 Manfred Hollstein <manfredh@redhat.com>
+
+ * Makefile.in (bootstrap-lean): Depend on bootstrap-lean_g,
+ not bootstrap-lean_f.
+
+2000-09-06 Andreas Schwab <schwab@suse.de>
+
+ * mklibgcc.in: Emit rule for libgcc-stage-start.
+ * Makefile.in (stage1-start, stage2-start, stage3-start,
+ stage4-start): Don't handle libgcc here, use libgcc.mk instead.
+
+2000-09-06 Bernd Schmidt <bernds@redhat.co.uk>
+
+ * local-alloc.c (local_alloc): Ignore CLASS_LIKELY_SPILLED.
+ (update_equiv_regs): Likewise, except for the mn10200 kludge.
+ (combine_regs): Likewise.
+
+ * Makefile.in (cse.o): Depend on $(BASIC_BLOCK_H).
+ * cse.c: Include "basic-block.h".
+ (struct table_elt): New field REGCOST.
+ (CHEAP_REG): Delete macro.
+ (COST): Return 0 for REGs.
+ (approx_reg_cost_1, approx_reg_cost, preferrable): New functions.
+ (notreg_cost): Return 0 for appropriate SUBREGs.
+ (COSTS_N_INSNS): Return N * 2.
+ (rtx_cost): Return 0 for REGs, and use cost of nested rtx for cheap
+ SUBREGs.
+ (CHEAPER): Use new function preferrable.
+ (insert): Initialize REGCOST member.
+ (find_best_addr): Use approx_reg_cost for estimation of register
+ usage.
+ (cse_insn): Likewise.
+ * loop.c (iv_add_mult_cost): New function.
+ (add_cost, shift_cost, mult_cost): Delete variables.
+ (init_loop): Don't initialize add_cost; reduce copy_cost by half.
+ (strength_reduce): Use iv_add_mult_cost instead of fixed add_cost.
+ Make code that detects autoinc opportunities slightly less optimistic.
+ (simplify_giv_expr): If expression contains other reg that is also a
+ giv, only increment benefit if this is the only use of that reg.
+ (consec_sets_giv): Take that change into account.
+ (combine_givs): Slightly more verbose output.
+
+ * i386.h (RTX_COSTS): For MULT, return true cost of multiplication,
+ not the cost of an equivalent shift.
+ * sh-protos.h (addsubcosts): Declare.
+ * sh.c (addsubcosts): New function.
+ * sh.h (CONST_COSTS): If CONST_OK_FOR_I, then return 0.
+ (RTX_COSTS): Tweak. Use addsubcosts.
+ (ADDRESS_COST): Return higher cost for reg+reg addressing.
+
+2000-09-06 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/rs6000.c (validate_condition_mode): New function.
+ (branch_comparison_operator): Call validate_condition_mode to
+ abort rather than returning 0.
+ (branch_positive_comparison_operator): New function.
+ (scc_comparison_operator): Call validate_condition_mode to abort
+ rather than returning 0.
+ (ccr_bit): Call validate_condition_mode. Update for
+ new branch scheme.
+ (print_operand): Delete %C modifier. Update %E case
+ to use EQ bit not SO bit.
+ (rs6000_reverse_condition): New function.
+ (rs6000_generate_compare): New function.
+ (rs6000_emit_sCOND): New function.
+ (rs6000_emit_cbranch): New function.
+ (output_cbranch): The length of a long branch insn is
+ now only 8 bytes. Add validate_condition_mode. Use
+ rs6000_reverse_condition. Remove cror generation.
+
+ * config/rs6000/rs6000.h: Update comments.
+ (PREDICATE_CODES): Add new predicate. Update codes used
+ by branch_comparison_operator and scc_comparison_operator.
+ * config/rs6000/rs6000-protos.h: Add prototypes for
+ new external functions.
+ * config/rs6000/rs6000.md: Add new scheduling parameters
+ for cr_logical instructions. Change length of branch
+ instructions.
+ (bCOND patterns): Call rs6000_emit_cbranch.
+ (sCOND patterns): Call rs6000_emit_sCOND.
+ (branch patterns): Change lengths to 4.
+ (cr logical patterns): New.
+
+2000-09-06 Richard Henderson <rth@cygnus.com>
+
+ * config/i386/i386.md (call_pop): Fix test for setting
+ current_function_uses_pic_offset_table.
+ (call, call_value_pop, call_value): Likewise.
+
+2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
+
+ * timevar.c (timevar_add): Delete.
+ (timevar_get): Also count time since the selected timer was
+ last updated. Do not examine the timevar stack if the
+ selected timer is standalone.
+
+2000-09-05 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * gthr-dce.h (__gthread_objc_mutex_deallocate): Free mutex->backend.
+
+2000-09-05 Jason Merrill <jason@redhat.com>
+
+ * c-decl.c (finish_incomplete_decl): Don't call complete_array_type
+ for 'extern' arrays.
+
+2000-09-05 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/lib1func.asm (__divtf3): Rebundle for Itanium.
+ Eliminate final copy from non-trapping case.
+ (__divdf3, __divsf3): Likewise.
+
+2000-09-05 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (mulhi3): Fix typo last change.
+ * config/ia64/lib1func.asm (__divdi3, __udivdi3, __umodsi3): Likewise.
+
+2000-09-03 Donn Terry <donn@interix.com>, Laurynas Biveinis <lauras@softhome.net>
+
+ * Makefile.in: Restructure bootstrap stages to allow clean
+ restart after failure.
+
+2000-09-05 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64.md (movsi and movdi patterns): Allow moves from
+ 8-bit constants to AR registers.
+
+2000-09-05 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (mulhi3): New.
+
+2000-09-05 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.h (INIT_TARGET_OPTABS): Remove.
+ * config/ia64/lib1funcs.asm (__divdi3): Update from Intel IA-64
+ Optimization Guide, minimum latency alternative.
+ (__moddi3, __udivdi3, __umoddi3): Likewise.
+ (__divsi3, __modsi3, __udivsi3, __umodsi3): Likewise.
+
+2000-09-05 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixincl.c (load_file): always read header files
+ with sizes that are a multiple of the page size.
+ & use libiberty's getpagesize for determining that.
+
+2000-09-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * gcse.c (hash_string_1): Add prototype.
+ * cse.c (canon_hash_string): Likewise.
+
+2000-09-04 Craig Newell <CraigN@ieee.org>
+
+ * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it.
+
+2000-09-04 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.in (STAGESTUFF): Remove libgcc.
+ (stage1-start, stage2-start, stage3-start): Copy the contents of
+ the libgcc directory explicitly.
+ (mostlyclean): Clean libgcc.
+
+2000-09-04 Andrew Haley <aph@redhat.com>
+
+ * dwarf2out.c: (stack_adjust_offset): New prototype.
+
+Wed Jan 1 00:23:59 MET 1997 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (make_extraction): Fix rtx_cost comparison to
+ match the comment.
+
+Wed Jan 1 00:17:32 MET 1997 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (pushsi2, pushhi2, pophi2, swapsf, swapdf,
+ umulsi3_highpart, smulsi3_highpart, testqi_ccno_1, xorqi_ext_1):
+ Add '*' to insn pattern name.
+
+2000-09-04 Jakub Jelinek <jakub@redhat.com>
+
+ * cpplex.c (ON_REST_ARG): Check VAR_ARGS flag of current context,
+ use posn - 1 to index into tokens array.
+ (maybe_paste_with_next): Adjust caller.
+
+2000-09-03 Geoff Keating <geoffk@cygnus.com>
+
+ * invoke.texi: Document the -mvxworks option for rs6000 ELF.
+
+ * config/rs6000/rs6000.h: Update various comments about XER_REGNO.
+ (REGNO_REG_CLASS): Use symbolic register
+ names.
+
+2000-09-03 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (final_prescan_insn): If the form of a jump insn isn't
+ recognized, don't try to conditionally execute it.
+
+Sun Sep 3 13:10:56 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md ("*tablejump_lib"): New pattern.
+ (call_value_insn): Right length claculation.
+ (call_insn): Likewise.
+
+2000-09-02 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr-protos.h, config/avr/avr.c (unique_section,
+ gas_output_limited_string, gas_output_ascii, output_movqi,
+ output_movhi, out_movqi_r_mr, out_movqi_mr_r, out_movhi_r_mr,
+ out_movhi_mr_r, out_movsi_r_mr, out_movsi_mr_r, output_movsisf,
+ out_tstsi, out_tsthi, ret_cond_branch, ashlqi3_out, ashlhi3_out,
+ ashlsi3_out, ashrqi3_out, ashrhi3_out, ashrsi3_out, lshrqi3_out,
+ lshrhi3_out, lshrsi3_out, output_reload_inhi, output_reload_insisf,
+ out_shift_with_cnt, ptrreg_to_str, cond_string, encode_section_info):
+ Add "const" as needed to remove warnings.
+
+ * config/avr/avr.c (avr_override_options, avr_init_once,
+ function_prologue, function_epilogue, frame_pointer_required_p,
+ class_likely_spilled_p, order_regs_for_local_alloc,
+ avr_address_cost, avr_ret_register): Use K&R style arguments.
+ (initial_elimination_offset, gas_output_limited_string):
+ Remove ATTRIBUTE_UNUSED from the used arguments.
+ (output_mov*, out_mov*_r_mr, out_mov*_mr_r, output_reload_insisf):
+ Use local variables src, dest, base to access operands[].
+ Rename reg_dest to reg_src if that's what it is.
+ (output_movhi, output_movsisf): Optimize loading 8-bit immediate
+ constants to LD_REGS if reg_was_0.
+ (output_reload_insisf): Change arg 3 to insn length and set it.
+ (out_movhi_r_mr, out_movhi_mr_r): Use in/out for more efficient
+ access to 16-bit I/O register pairs.
+ (avr_address_cost): Lower cost for the above case.
+ (out_tsthi): Use "or" (faster) instead of "sbiw" if the operand
+ may be clobbered, also for LD_REGS.
+ (adjust_insn_length): Correct insn length for iorhi3 and iorsi3
+ with a CONST_INT.
+
+ * config/avr/avr.h (PTRDIFF_TYPE): Make signed.
+
+ * config/avr/avr.md: Change all uses of the TEST_HARD_REG_CLASS
+ macro to test_hard_reg_class function.
+ (*movsi, *movsf): Change "cc" attribute from "clobber" to "none"
+ for loading immediate constants to LD_REGS.
+ (andsi3, cmphi, cmpsi): Add return statements to avoid warnings.
+
+
+Sat Sep 2 13:58:23 2000 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__
+ * config/avr/libgcc.S: Lost part of the previous patch.
+
+2000-08-31 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t
+ object before calling pthread_mutex_init.
+
+2000-09-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm,
+ config/sh/crtn.asm: New files.
+ * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set.
+ (crt1.o, crti.o, crtn.o): New targets.
+ * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added
+ sh/t-elf.
+ * configure: Rebuilt.
+ * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
+ STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define.
+ * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
+ Undefine for config/elfos.h to redefine.
+ (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h.
+
+2000-09-02 Alexandre Oliva <aoliva@redhat.com>, Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config/sh/sh-protos.h (nonpic_symbol_mentioned_p,
+ legitimize_pic_address, output_pic_addr_const): Declare.
+ * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register.
+ (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise.
+ (TARGET_SWITCHES): New switch -mprefergot.
+ (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot.
+ (PIC_OFFSET_TABLE_REGNUM): Define.
+ (GOT_SYMBOL_TABLE): Likewise.
+ (LEGITIMIZE_ADDRESS): Use legitimize_pic_address.
+ (ENCODE_SECTION_INFO): Define.
+ (FINALIZE_PIC): New macros.
+ (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro.
+ (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const.
+ * config/sh/sh.c (print_operand_address): Use output_pic_addr_const.
+ (prepare_move_operands): Call emit_pic_move or
+ emit_pic_const_move if appropriate.
+ (output_far_jump): For PIC, use braf and output long offset.
+ (machine_dependent_reorg):
+ (sh_expand_prologue): Save and initialize the PIC register.
+ (sh_expand_epilogue): Restore it.
+ (initial_elimination_offset): Account for it.
+ (nonpic_symbol_mentioned_p): New function.
+ (legitimize_pic_address): Likewise.
+ (output_pic_addr_const): Likewise.
+ * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns.
+ (call, call_value): Use them.
+ (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg,
+ symPLT_label2reg): New expands.
+ * invoke.texi (SH Options): Document -mprefergot.
+
+2000-09-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro.
+ * gcse.c (hash_string_1): New function.
+ (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number.
+ (expr_equiv_p) <ASM_OPERANDS>: Likewise.
+ * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS.
+ (canon_hash_string): New function.
+ (canon_hash) <ASM_OPERANDS>: Disregard filename and line number.
+ (exp_equiv_p) <ASM_OPERANDS>: Likewise.
+ (fold_rtx): Use ASM_OPERANDS accessor macros.
+ * emit-rtl.c (copy_insn_1): Likewise.
+ * integrate.c (copy_rtx_and_substitute): Likewise.
+ * stmt.c (expand_asm_operands): Likewise. Give an
+ ASM_OPERANDS rtx the mode of the output reg being set from it.
+
+2000-09-01 Fred Fish <fnf@be.com>
+
+ * fix-header.c (write_rbrac): Add putc and getc to list of
+ functions to protect against prior definition as a macro.
+
+2000-09-01 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE.
+ (c_size_type_node): Define.
+ * c-decl.c (init_decl_processing): Initialize c_size_type_node.
+ * c-common.c (enum format_lengths, enum format_std_version,
+ format_length_info, format_type_detail, BADLEN, NOLENGTHS,
+ format_kind_info, printf_length_specs, scanf_length_specs, T89_I,
+ T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL,
+ T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD,
+ T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI,
+ TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM,
+ format_types): Define.
+ (format_char_info, print_char_table, scan_char_table,
+ time_char_table): Rearrange for new organization of information
+ about format length modifiers and standard versions.
+ (T_ST): Redefine to use c_size_type_node.
+ (check_format_info): Obtain information about length modifiers and
+ standard versions from tables. Adjust warning message wordings.
+ Use the name from the user's program for `ll' and `hh' length
+ modifiers in warning messages. Use more informative names for
+ wanted types where available (for wchar_t, wint_t, size_t, signed
+ size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t).
+
+2000-09-01 Jim Wilson <wilson@cygnus.com>
+
+ * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN.
+ * combine.c (distribute_notes): Handle REG_NORETURN.
+ * rtl.c (reg_note_name): Add REG_NORETURN.
+ * rtl.h (enum reg_note): Likewise.
+
+ * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from
+ ia64_file_start.
+ * config/ia64/ia64.c (emit_safe_across_calls): Likewise.
+ (rtx_needs_barrier): Handle unspec_volatile 8 and 9.
+ (emit_predicate_relation_info): Handle conditional calls with
+ REG_NORETURN.
+ * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls
+ instead of ia64_file_start.
+ * config/ia64/sysv4.h (ASM_FILE_START): Likewise.
+ * config/ia64/ia64.md (safe_across_calls_all,
+ save_across_calls_normal): New patterns.
+
+ * loop.c (check_final_value): Check for biv use before checking for
+ giv use. Check for both biv and giv uses. Always set last_giv_use
+ if there is a giv use.
+
+2000-09-01 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (mulsi3): Use grfr_register_operand.
+ (madddi3): Likewise.
+ (maddsi3): New.
+
+Fri Sep 1 10:59:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (clear_storage): Don't use emit_move_insn unless
+ either BLKmode or proper size.
+ (store_constructor): Don't call clear_storage if REG of wrong size.
+
+ * flow.c (init_propagate_block_info): Don't mark frame dead at end
+ of function if returns wiht stack pointer depressed.
+
+2000-09-01 Andrew Haley <aph@redhat.com>
+
+ * dwarf2out.c (stack_adjust_offset): New function.
+ (dwarf2out_stack_adjust): Break out stack adjust logic into
+ new stack_adjust_offset function. Look inside parallels and
+ sequences for stack adjustments.
+
+2000-08-31 Jeff Law <law@cygnus.com>
+
+ * arm.md: Use no_new_pseudos to determine when it is safe
+ to create new pseudo registers.
+
+ * arm.c (legitimize_pic_address): Use no_new_pseudos to determine
+ when we can safely allocate new registers.
+
+2000-08-31 Geoffrey Keating <geoffk@cygnus.com>
+
+ * stmt.c (expand_asm_operands): Twiddle generating_concat_p
+ so that CONCATs are not generated for ASMs.
+ * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when
+ not generating_concat_p.
+ * function.c (pop_function_context_from): Reset
+ generating_concat_p.
+ (prepare_function_start): Likewise.
+ * rtl.c (generating_concat_p): Define.
+ * rtl.h (generating_concat_p): Declare.
+ * toplev.c (rest_of_compilation): No CONCATs after RTL generation.
+
+2000-08-22 Philipp Thomas <pthomas@suse.de>
+ Masanobu Yuhara <yuhara@flab.fujitsu.co.jp>
+
+ * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them
+ for translation.
+
+2000-08-30 Greg McGary <greg@mcgary.org>
+
+ * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh
+ * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC).
+ * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE.
+
+2000-08-30 Greg McGary <greg@mcgary.org>
+
+ * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct.
+ (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct.
+ (TREE_INT_CST): New macro.
+ * varasm.c (const_hash, compare_constant_1, record_constant_1):
+ Use new macro TREE_INT_CST.
+
+Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net>
+
+ * contrib.texi: Add self.
+
+2000-08-30 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns.
+ (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps
+ and labels.
+
+2000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * fixinc/gnu-regex.c: Don't define `const'.
+
+Tue Aug 29 22:09:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (store_constructor): Allow variable bounds of array type.
+ (expand_expr): Don't blow up if type is ERROR_MARK.
+ * varasm.c (output_constructor): Don't access lower bound of array
+ type unless need it if index is supplied (so it can be a variable
+ if no index is supplied).
+ Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS.
+ Other minor cleanups.
+
+2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS
+ for compilations in stage 1 and subsequent stages, respectively.
+ * configure.in (vax): Add compiler-dependent CFLAGS for stage 1.
+ * configure: Rebuilt.
+ * x-vax, x-vax-gcc: Deleted.
+
+2000-08-29 Zack Weinberg <zack@wolery.cumb.org>
+
+ * c-common.c (declare_function_name): Use func_id_node,
+ function_id_node, and pretty_function_id_node. Do not make
+ __func__ visible at file scope.
+ * c-common.h (c_tree_index): Add CTI_FUNCTION_ID,
+ CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID.
+ (function_id_node, pretty_function_id_node, func_id_node): New
+ macros.
+ * c-decl.c (init_decl_processing): Initialize function_id_node,
+ pretty_function_id_node, and func_id_node.
+ (c_make_fname_decl): Correct comment.
+
+ * tree.h (struct tree_identifier): Constify pointer member.
+
+ * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *.
+ * c-pragma.h (struct weak_syms): Constify name and value members.
+ (add_weak): Constify arguments.
+
+ * calls.c (special_function_p): Constify a char *.
+ (expand_call): Remove variable which is initialized and then
+ never used.
+ * dependence.c (struct def_use, struct induction, struct subscript):
+ Constify 'variable' member.
+ (get_low_bound, have_induction_variable): Constify char * argument.
+ (find_induction_variable): Add braces to avoid dangling else.
+ (classify_dependence): Constify char * arrays.
+ * profile.c (output_func_start_profiler): Constify a char *.
+ * stor-layout.c (finalize_record_size): Constify a char *.
+ * tree.c (is_attribute_p): Constify a char *.
+ * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument.
+
+ * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code
+ for comprehensibility. Do not call get_identifier if we did
+ not change the DECL_ASSEMBLER_NAME of the decl. Use alloca to
+ create temporary string constants, not ggc_alloc_string. No
+ need to copy result of ASM_FORMAT_PRIVATE_NAME. Use const
+ char * to hold IDENTIFIER_POINTERs.
+
+2000-08-29 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (muldi3): Use grfr_register_operand
+ for the inputs.
+
+2000-08-29 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (push_secondary_reload): Allow class == reload_class
+ if we're using a reload_in/out pattern.
+
+ * config/ia64/ia64.md (reload_inti): Use a TImode scratch. Use
+ the half that does not conflict with the reload register.
+ (reload_outti): Likewise.
+
+2000-08-29 Kazu Hirata <kazu@hxi.com>
+
+ * reload.c: Fix formatting.
+
+ * stmt.c: Fix formatting.
+
+ * gcc.c: Fix formatting.
+
+2000-08-29 Zack Weinberg <zack@wolery.cumb.org>
+
+ * flags.h (time_report, mem_report): New global flags.
+ * toplev.c: Define time_report and mem_report.
+ (f_options): Add -ftime-report and -fmem-report.
+ (compile_file): Turn on time_report if quiet_flag is off.
+ Call ggc_print_statistics at very end if mem_report is on.
+ * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag.
+
+ * ggc-common.c (ggc_print_statistics): Rename to
+ ggc_print_common_statistics; all callers changed. Scale
+ quantities above 10K to kilobytes and above 10M to megabytes.
+ * ggc-page.c (ggc_page_print_statistics): Rename to
+ ggc_print_statistics. Report memory consumed by internal data
+ structures for each allocation bucket. Scale quantities above
+ 10K to kilobytes and above 10M to megabytes.
+ * ggc-simple.c: Prototype debug_ggc_tree to avoid warning.
+ Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning.
+ Define tally_leaves always.
+ (ggc_print_statistics): New function.
+ * ggc.h: Adjust for renamed functions.
+
+Wed Aug 30 00:11:42 2000 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to
+ output_movsisf instead of which_alternative.
+
+ * config/avr/avr.c (output_reload_inhi): Check for NULL ponter.
+
+Tue Aug 29 22:29:58 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr-protos.h: (avr_output_ascii) Removed.
+ (avr_progmem_p): New prototype.
+ (output_movsisf): Prototype declaration changed.
+ (output_movqi): New prototype.
+ (output_movhi): New prototype.
+ (call_insn_operand): Likewise.
+ (final_prescan_insn): Likewise.
+ (avr_simplify_comparision_p): Likewise.
+ (avr_normalize_condition): Likewise.
+ (compare_eq_p): Likewise.
+ (out_shift_with_cnt): Likewise.
+ (const_int_pow2_p): Likewise.
+ (output_reload_inhi): Prototype declaration changed.
+
+ * config/avr/avr.c: (debug_hard_reg_set): Prototype declared.
+ (ldi_reg_rtx): New. rtx for r31.
+ (avr_init_stack): Initialize as "__stack".
+ (function_prologue): Use it.
+ Replace all TARGET_ENHANCED with AVR_ENHANCED.
+ (avr_mcu_name): Initialize as "avr2".
+ (avr_enhanced_p, avr_mega_p): New variables.
+ (mcu_types, avr_override_options): Handle all known MCU types.
+ Also handle avr1 (only preprocess, assemble and link).
+ (print_operand): Using of `%K' in output template removed.
+ (out_movqi_r_mr): Optimized.
+ (out_movhi_r_mr): Likewise.
+ (output_movqi): New function.
+ (output_movhi): Likewise.
+ (out_movsi_r_mr): Optimized.
+ (output_movsisf): Compute insn length for `adjust_insn_length'
+ (out_movqi_mr_r): Optimized.
+ (out_movhi_mr_r): Optimized.
+ (adjust_insn_length): Use output_movsisf, output_movqi,
+ output_movhi for insn length adjusting.
+ (reg_unused_after): Use dead_or_set_p.
+ (preferred_reload_class): Now haven't any restriction.
+ (reg_was_0): New function.
+ (io_address_p): Likewise.
+ (const_int_pow2_p): Likewise.
+ (output_reload_inhi): Likewise.
+ (output_reload_insisf): Likewise.
+
+ * config/avr/avr.h (MULTILIB_DEFAULTS): Define.
+ (LIB_SPEC): Use -lc for all supported devices.
+ (LIBGCC_SPEC): Use -lgcc for all supported devices.
+ (AVR_MEGA): Define as avr_mega_p.
+ (AVR_ENHANCED): New, define as avr_enhanced_p.
+ (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=...
+ (CPP_SPEC, LINK_SPEC): Handle all known MCU types.
+ (CRT_BINUTILS_SPECS): Handle all known MCU types.
+ Rename gcrt1-*.o to make file names unique on 8.3 filesystems.
+ (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC.
+ (ASM_SPEC): Pass -mmcu=... to the assembler.
+ Change all -DAVR_* to -D__AVR_*__.
+ (INIT_TARGET_OPTABS), config/avr/libgcc.S:
+ Rename library functions to start with two underscores.
+ (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid
+ alignment.
+ (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)).
+ (SUPPORTS_WEAK): Likewise.
+ (LDI_REG_REGNO): New. Register r31 will be used as temporary
+ register for loading constants to r0-r14.
+
+ * config/avr/avr.md: Replace all TARGET_ENHANCED with
+ AVR_ENHANCED.
+ (*mov_r_sp): Removed. Handled by output_movhi.
+ (*mov_sp_r): Likewise.
+ (*mov_sp_r_no_interrupts): Likewise
+ (*mov_sp_r_tiny): Likewise.
+ (*movqi): Use output_movqi.
+ (*reload_inqi): New.
+ (*movhi): Use output_movhi.
+ (*reload_inhi): New.
+ (*negsi2): Optimized.
+ (*negsf2): Likewise.
+ Added peepholes (define_peephole2) for loading constants to r0-r14
+ and for using `cpse' command.
+
+ * config/avr/libgcc.S: Rename library functions to start with two
+ underscores.
+ Add support for enhanced core.
+ (_moqhi3): Fix typo, now _modqi3.
+ (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word.
+ (__prologue_saves__): Remove test for stack adjust by 0.
+ (__tablejump__): New.
+
+ * config/avr/t-avr: Build libgcc2 with -mcall-prologues.
+ Add multilib support.
+
+Tue Aug 29 15:17:54 EDT 2000 John Wehle (john@feith.com)
+
+ * loop.c (prescan_loop): Don't check unknown_address_altered
+ when deciding if insert_loop_mem is safe. Add BLKmode MEMs
+ to loop_store_mems as necessary.
+ (loop_invariant_p): Don't check unknown_address_altered
+ or unknown_constant_address_altered.
+
+2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns.
+
+2000-08-29 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpperror.c (print_file_and_line): If line is (unsigned int)-1,
+ print just the filename.
+ * cpplex.c (_cpp_run_directive): Add additional argument, the
+ name to give the synthetic buffer. This defaults to
+ translated "<command line>".
+ * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert):
+ Adjust to match.
+ (_cpp_define_builtin): New function.
+ * cppinit.c (initialize_builtins): Use _cpp_define_builtin.
+ * cpphash.h: Update prototypes.
+
+ * tradcpp.c (main): Process -D and -U simultaneously, in the
+ order they appeared on the command line.
+
+2000-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-decl.c (define_label): Call warning_with_file_and_line and
+ error_with_file_and_line instead of plain warning or error.
+
+ * c-parse.in (label): Use save_filename/save_lineno to ensure
+ correct values for calls to define_label.
+
+2000-08-29 Mark Mitchell <mark@codesourcery.com>
+
+ * calls.c (expand_call): Don't create a VAR_DECL just to throw it
+ away.
+ * expr.c (expand_expr, case TARGET_EXPR): Don't call
+ mark_addressable.
+ * tree.h (get_file_function_name): Remove two duplicate
+ declarations.
+
+2000-08-28 Kazu Hirata <kazu@hxi.com>
+
+ * tree.c: Fix formatting.
+
+ * xcoffout.c: Fix formatting.
+
+2000-08-28 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer.
+
+2000-08-28 Daniel Berlin <dberlin@redhat.com>
+
+ * dwarf2out.c (dwarf2out_finish): Don't bother calling
+ break_out_includes if it won't do anything.
+
+2000-08-28 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (push_secondary_reload): Revert 2000-08-16 change.
+ (find_reloads): Likewise.
+ * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change.
+ (reload_inhi): Likewise.
+
+2000-08-28 Richard Henderson <rth@cygnus.com>
+
+ * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined.
+ (call_insn_operand): Don't expect a surrounding mem.
+ (constant_call_address_operand): Likewise.
+ * config/i386/i386.h (PREDICATE_CODES): Update.
+ * config/i386/i386.md (call patterns): Move the match_operand
+ for the call destination inside the mem.
+
+2000-08-28 Richard Henderson <rth@cygnus.com>
+
+ * local-alloc.c (requires_inout): Don't use reserved range for
+ EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER.
+ * recog.c (asm_operand_ok): Likewise.
+ (preprocess_constraints, constrain_operands): Likewise.
+ * regclass.c (record_reg_classes): Likewise.
+ * reload.c (find_reloads): Likewise.
+ * reload1.c (maybe_fix_stack_asms): Likewise.
+ (reload_cse_simplify_operands): Likewise.
+ * stmt.c (expand_asm_operands): Likewise.
+
+ * md.texi: Update constraints documentation.
+ * tm.texi (EXTRA_CONSTRAINT): Update.
+
+2000-08-28 Daniel Berlin <dberlin@redhat.com>
+
+ * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__".
+ (print_die): If we don't know the offset of the
+ target die, try the symbol. Add a trailing newline.
+ (reverse_all_dies): New fn.
+ (dwarf2out_finish): Call it.
+ (break_out_includes): Reorganize for clarity.
+ (add_sibling_attributes): Don't call reverse_die_lists.
+ (output_comp_unit): Rename from output_comdat_comp_unit. Use for
+ primary CU, too.
+ * flags.h: Add flag_eliminate_dwarf2_dups.
+ * toplev.c (f_options): Support -feliminate-dwarf2-dups.
+
+2000-08-28 Jason Merrill <jason@redhat.com>
+
+ * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags.
+ * dwarf2out.c: #include "md5.h".
+ (DIE_LABEL_PREFIX): New macro.
+ (dw_val_struct): Add 'external' flag to val_die_ref.
+ (add_AT_die_ref, AT_ref): Adjust.
+ (AT_ref_external, set_AT_ref_external): New fns.
+ (build_abbrev_table): Call set_AT_ref_external.
+ (value_format): Call AT_ref_external.
+ (die_struct): Add die_symbol field.
+ (new_die): Clear it.
+ (dwarf_tag_name): Handle BINCL/EINCL.
+ (dwarf2out_start_source_file): Add BINCL DIE.
+ (dwarf2out_end_source_file): Add EINCL DIE.
+ (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns.
+ (loc_checksum, attr_checksum, die_checksum): New fns.
+ (is_type_die, is_comdat_die, is_symbol_die): New fns.
+ (compute_section_prefix, assign_symbol_names): New fns.
+ (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns.
+ (output_die): Call output_die_symbol and AT_ref_external.
+ (output_comdat_comp_unit): New fn, split out from...
+ (dwarf2out_finish): ...here. Also call add_sibling_attributes for
+ secondary CUs.
+ (output_pubnames, output_aranges): Abort if we see entries from
+ secondary CUs.
+ * toplev.h: Declare file_name_nondirectory.
+ * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend.
+ (rest_of_type_compilation): Call dwarf2out_decl if at toplevel.
+ (debug_start_source_file): Call dwarf2out_start_source_file
+ regardless of debug verbosity.
+ (debug_end_source_file): Similarly.
+ * tree.h: Declare clean_symbol_name.
+ * tree.c (clean_symbol_name): Split out from...
+ (get_file_function_name_long): ...here.
+
+ * dwarf2out.c (new_loc_descr): Use calloc.
+ (splice_child_die): Remove the die from the right parent.
+ (gen_struct_or_union_die): Don't add AT_name to a specification DIE.
+
+Mon Aug 28 19:02:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * toplev.c (decode_g_option): Don't give warning for unknown -g
+ option; return 0 instead.
+ (main): If -g option is not recognized by front end or
+ language-independent code, give warning.
+
+2000-08-28 Greg McGary <greg@mcgary.org>
+
+ * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl.
+ * config/i386/i386.c (ix86_expand_compare): Remove `static'.
+ * config/i386/i386.md (trap, conditional_trap): New insn & expand.
+
+2000-08-27 Greg McGary <greg@mcgary.org>
+
+ * cpplex.c (parse_string): Don't look for backslash
+ before first char in `namebuf'.
+ * loop.c (strength_reduce): Skip NOTEs.
+
+2000-08-27 Jason Merrill <jason@redhat.com>
+
+ * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear
+ DECL_EXTERNAL on a local extern. Don't set DECL_IGNORED_P or
+ TREE_ASM_WRITTEN, either.
+ (finish_decl): Adjust.
+
+2000-08-28 Philipp Thomas <pthomas@suse.de>
+
+ * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as
+ they have been incorporated into the gettext CVS. Change the text to
+ reflect the current status of NLS. Add instructions for accessing
+ the gettext CVS and add the patch from Martin v. Loewis.
+
+2000-08-27 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe
+ by using gen_lowpart_common.
+ (movdi_internal64+6): Likewise.
+
+2000-08-26 Alexandre Oliva <aoliva@redhat.com>
+
+ * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION):
+ Document.
+
+ * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register
+ numbers to the ranges used by GDB.
+
+2000-08-25 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.h (struct machine_function): Add n_varargs.
+ * config/ia64/ia64.c (ia64_compute_frame_size): Use it.
+ (ia64_expand_prologue): Likewise.
+ (ia64_setup_incoming_varargs): Set it. Properly skip the current
+ argument for stdargs.
+
+2000-08-25 Jason Merrill <jason@redhat.com>
+
+ * integrate.c (expand_inline_function): Pull out the original decl.
+
+2000-08-25 Jim Wilson <wilson@cygnus.com>
+
+ * cse.c (cse_insn): Don't pass label subtraction to force_const_mem.
+
+ * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl.
+
+2000-08-25 Greg McGary <greg@mcgary.org>
+
+ * flow.c (dump_edge_info): Use ARRAY_SIZE.
+ * config/alpha/alpha.c (alpha_expand_block_move): Likewise.
+
+2000-08-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (STRUCT_VALUE): Define to 0, not NULL.
+
+Fri Aug 25 12:52:49 EDT 2000 John Wehle (john@feith.com)
+
+ * i386.c (ix86_find_base_term): New.
+ * i386-protos.h (ix86_find_base_term): Prototype.
+ * i386.h (FIND_BASE_TERM): Define.
+ * alias.c (find_base_term): Use it.
+ * tm.texi (FIND_BASE_TERM): Document it.
+
+ * alias.c (true_dependence, write_dependence_p): Unchanging
+ memory can't conflict with non-unchanging memory.
+
+ * alias.c (memrefs_conflict_p): A BLKmode reference
+ to a symbol (or CONST_INT address) always conflicts
+ with a reference to another symbol.
+
+2000-08-25 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (time_char_table): Don't allow width and flags with
+ "z" format.
+
+2000-08-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same
+ way as LT and LTU when the second operand has 0 in low word.
+
+2000-08-26 Michael Hayes <mhayes@cygnus.com>
+
+ * basic-block.h (struct loop): Rename `exits' field to
+ `exit_edges'. Add `entry_edges' and `num_entries' fields.
+
+ * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find.
+ (flow_loop_entry_edges_find): Add.
+ (flow_edge_list_print): Rename from flow_exits_print.
+ (flow_loops_find): Call flow_loop_entry_edges_find.
+ (flow_loop_dump): Dump entry_edges list.
+ (flow_loops_free): Free entry_edges.
+
+2000-08-26 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.c (loop_dump_aux, debug_loop): New functions.
+ (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros.
+
+ * flow.c (flow_loops_dump): Add callback parameter.
+ (flow_loop_dump): Add callback parameter and call it. Move
+ loop note debugging code to loop_dump_aux.
+
+ * basic-block.h (flow_loop_dump): Add callback parameter
+ (flow_loops_dump): Likewise.
+
+ * toplev.c (rest_of_compilation): Add NULL callback function pointer
+ to call to flow_loops_dump.
+
+2000-08-26 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.c (count_loop_regs_set): Replace start and end arguments
+ with loop argument. All callers udated.
+
+2000-08-26 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.c (constant_high_bytes): Delete.
+
+2000-08-26 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT
+ and NOTE_INSN_LOOP_VTOP to...
+ (find_and_verify_loops) ...here.
+
+Fri Aug 25 04:21:13 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default.
+ (fini_dummy, init_dummy): Use it.
+
+Fri 25-Aug-2000 08:03:27 BST Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c (is_macro_disabled): Caller has already checked
+ that we're not a preprocessed file.
+
+2000-08-24 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o.
+ (c-iterate.o): Remove target.
+ * gcc/c-common.h (enum rid): Remove RID_ITERATOR.
+ * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators.
+ (finish_decl): Don't handle iterators.
+ (grokdeclarator): Likewise.
+ * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords.
+ * gcc/c-gperf.h: Regenerated.
+ * gcc/c-iterate.c: Removed.
+ * gcc/c-lex.c (init_lex): Don't handle iterators.
+ * gcc/c-parse.in (primary): Remove pop_iterator_stack call.
+ (compstmt_primary_start): Remove push_iterator_stack call.
+ (stmt): Don't allow iterator statements. Replace iterator_expand
+ with expand_expr_stmt.
+ (all_iter_stmt): Remove.
+ (all_iter_stmt_simple): Likewise.
+ (all_iter_stmt_with_decl): Likewise.
+ * gcc/c-tree.h (ITERATOR_P): Remove.
+ (ITERATOR_BOUND_P): Likewise.
+ (init_iterators): Remove declaration.
+ (iterator_expand): Likewise.
+ (iterator_for_loop_start): Likewise.
+ (iterator_for_loop_end): Likewise.
+ (iterator_for_loop_record): Likewise.
+ (push_iterator_stack): Likewise.
+ (pop_iterator_stack): Likewise.
+ * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P.
+ (readonly_warning): Likewise.
+ * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it.
+
+2000-08-24 Jim Wilson <wilson@cygnus.com>
+
+ * c-common.c (decl_attributes, case A_ALIGN): Revert last change.
+ Copy type in a TYPE_DECL, just like pushdecl does.
+
+2000-08-24 Richard Henderson <rth@cygnus.com>
+
+ * toplev.c (main): Enable flag_reorder_blocks at -O2.
+
+2000-08-24 Zack Weinberg <zack@wolery.cumb.org>
+
+ * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're
+ asked for one page, allocate GGC_QUIRE_SIZE of them and put
+ the extras on the free list.
+ (release_pages): Clean up.
+ (ggc_set_mark): Don't adjust G.allocated here...
+ (sweep_pages): ... do it here.
+
+2000-08-24 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppfiles.c (read_include_file): Rearrange initializations.
+
+2000-08-24 Richard Henderson <rth@cygnus.com>
+
+ * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X.
+
+ * config/ia64/ia64-protos.h: Update.
+ * config/ia64/ia64.c (gr_register_operand): New.
+ (fr_register_operand, grfr_register_operand): New.
+ (gr_nonimmediate_operand, grfr_nonimmediate_operand): New.
+ (grfr_reg_or_8bit_operand): New.
+ (gr_reg_or_0_operand): Rename from reg_or_0_operand and
+ use gr_register_operand.
+ (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise.
+ (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise.
+ (gr_reg_or_8bit_and_adjusted_operand): Likewise.
+ (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise.
+ (fr_reg_or_fp01_operand): Likewise.
+ (not_postinc_memory_operand): New.
+ (ia64_split_timode): Remove unused variables.
+ (rtx_needs_barrier): Check arguments to cmpxchg.
+ (builtin_description): Remove.
+ (bdesc_2argsi, bdesc_2argdi): Remove.
+ (ia64_init_builtins): Declare all builtins directly.
+ (ia64_expand_fetch_and_op): Rewrite to be called from
+ ia64_expand_builtin directly. Use expand_binop and co.
+ (ia64_expand_op_and_fetch): Likewise.
+ (ia64_expand_compare_and_swap): Likewise.
+ (ia64_expand_binop_builtin): Remove.
+ (ia64_expand_lock_test_and_set): New.
+ (ia64_expand_lock_release): New.
+ (ia64_expand_builtin): Use them.
+ * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New.
+ (EXTRA_CONSTRAINT): Use it.
+ (PREDICATE_CODES): Update.
+ * config/ia64/ia64.md (*): Use gr_register_operand and co.
+ (mf): Indicate that we set memory as well as use it.
+ (fetchadd_acq_si): Show memory being modified as well.
+ (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise.
+ (val_compare_and_swap_si, val_compare_and_swap_di): Remove.
+ (lock_test_and_set_si, lock_test_and_set_di): Remove.
+ (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove.
+ (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove.
+ (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove.
+ (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove.
+ (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove.
+ (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove.
+ (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove.
+ (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove.
+ * config/ia64/ia64intrin.h (*): Cast result to the appropriate
+ return type. Pretty print definitions.
+
+2000-08-24 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if
+ we have a SYMBOL_REF with SYMBOL_REF_FLAG set.
+
+2000-08-24 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref,
+ AT_loc, AT_addr, AT_lbl): Abort on unsuitable input.
+ (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag,
+ get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails.
+
+2000-08-24 Greg McGary <greg@mcgary.org>
+
+ * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab,
+ and extendtab within their proper array boundaries.
+ * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds
+ for the entire array.
+
+ * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE.
+ * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise.
+ * config/avr/avr.c (order_regs_for_local_alloc): Likewise.
+ * config/fr30/fr30.c (fr30_print_operand): Likewise.
+ * config/i386/dgux.c (output_options): Likewise.
+ * config/i386/dgux.h (ASM_FILE_START): Likewise.
+ * config/m88k/m88k.c (output_options): Likewise.
+ * config/m88k/m88k.h (ASM_FILE_START): Likewise.
+ * config/mcore/mcore.c (mcore_output_inline_const_forced,
+ layout_mcore_frame, handle_structs_in_regs): Likewise.
+ * config/mips/mips.c (output_block_move): Likewise.
+ * config/rs6000/rs6000.c (rs6000_override_options,
+ rs6000_file_start): Likewise.
+ * config/sparc/sparc.c (sparc_add_gc_roots): Likewise.
+ * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise.
+ * fixinc/fixtests.c (TEST_TABLE_CT): Likewise.
+ * builtins.c (expand_builtin_setjmp): Likewise.
+ * expr.c (safe_from_p): Likewise.
+ * flow.c (life_analysis): Likewise.
+ * fold-const.c (size_int_type_wide): Likewise.
+ * gcc.c (translate_options, init_spec, set_spec, main): Likewise.
+ * genattrtab.c (make_length_attrs): Likewise.
+ * genopinit.c (gen_insn): Likewise.
+ * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise.
+ * global.c (global_alloc): Likewise.
+ * local-alloc.c (find_free_reg): Likewise.
+ * mips-tdump.c (print_symbol): Likewise.
+ * mips-tfile.c (parse_def, parse_input): Likewise.
+ * reload1.c (NUM_ELIMINABLE_REGS): Likewise.
+ * stmt.c (expand_nl_goto_receiver): Likewise.
+ * stor-layout.c (set_sizetype): Likewise.
+ * varasm.c (decode_reg_name): Likewise.
+ * toplev.c (decode_f_option, decode_W_option,
+ set_target_switch, print_switch_values): Likewise.
+ (NUM_ELEM): Remove macro.
+ (display_help, main): s/NUM_ELEM/ARRAY_SIZE/
+
+2000-08-24 Greg McGary <greg@mcgary.org>
+
+ * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'.
+ (MAIN_NAME_P, main_identifier_node): New macros.
+ * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node.
+ * c-decl.c (start_decl, grokdeclarator, start_function,
+ store_parm_decls, finish_function): Use MAIN_NAME_P.
+ * config/avr/avr.c (function_prologue, function_epilogue): Likewise.
+ * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
+ * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
+ * config/pdp11/pdp11.c (output_function_prologue): Likewise.
+
+2000-08-24 Greg McGary <greg@mcgary.org>
+
+ * cppfiles.c (actual_directory): Don't write beyond `dir'
+ when it contains "".
+ * real.c (asctoeg): Stay within bounds of etens[][].
+
+2000-08-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dependence.c (dependence_string, direction_string,
+ dump_one_node, dump_node_dependence): Hide unused identifiers.
+ (get_low_bound, normalize_coefficients): Match definition to
+ static prototype.
+ (get_one_coefficient): Initialize variables `value0_is_idx' and
+ `value1_is_idx'.
+ (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED.
+ (ziv_test): Delete variable `idx', use parameter `sub' instead.
+ (direction_merge): Avoid automatic aggregate initialization.
+ (have_dependence_p): Use `src' not `dest' to set `src_idx'.
+ Initialize variables `dest_idx' and `src_idx'.
+ (end_dependence_analysis): Avoid C89 style function definition.
+
+2000-08-24 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (time_char_table): Don't allow width with %F.
+ (check_format_info): Don't allow "Z" length with scanf.
+
+2000-08-24 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (finish_diagnostic): Define.
+ (output_do_printf): Use wrap_text instead of output_add_string.
+ (default_print_error_function): Avoid embedded '\n'.
+
+ * diagnostic.h (flush_diagnostic_buffer): Declare.
+
+2000-08-23 Alexandre Oliva <aoliva@redhat.com>
+
+ * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'.
+
+2000-08-23 Hans-Peter Nilsson <hp@axis.com>
+
+ * Makefile.in (GCC_PASSES): Add specs.
+
+2000-08-23 Jim Wilson <wilson@cygnus.com>
+
+ * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New.
+ * config/ia64/frame-ia64.c (__get_personality): Return zero if neither
+ EHANDLER nor UHANDLER bit is set.
+ (__get_except_table): Likewise.
+
+2000-08-23 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/lib1funcs.asm: Replace upper case condition codes
+ with lower case versions.
+
+ * config/arm/arm.h (STRUCT_VALUE): Define.
+ (STRUCT_VALUE_REGNUM): Delete.
+
+2000-08-23 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpphash.h (IN_I): New flag for directive table.
+ * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and
+ #pragma with IN_I.
+ (_cpp_check_directive): If -fpreprocessed, execute directives
+ marked with IN_I. Issue no warnings in this case.
+ * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed.
+
+2000-08-23 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (print_char_table): Allow 'I' flag with %d, %i and
+ %u.
+ (check_format_info): Support printf 'I' flag; warn about it with
+ -pedantic.
+
+2000-08-23 Richard Earnshaw (rearnsha@arm.com)
+
+ * arm.c (arm_expand_prologue): Ensure that the stack-adjustment
+ barrier can't be ignored by the alias analysis code.
+
+2000-08-12 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it
+ works inside fixincl.
+
+Wed Aug 23 04:55:48 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to
+ simplify_relational_operation() unless both operands are of
+ VOIDmode.
+ * cse.c (fold_rtx): Likewise.
+
+Tue Aug 22 23:53:27 EDT 2000 John Wehle (john@feith.com)
+
+ * rtlanal.c (rtx_unstable_p): The pic register is stable
+ (within one function) and the actual rtx should be used
+ when checking the registers.
+ (rtx_addr_can_trap_p): Pic memory addresses can't trap.
+
+ * alias.c (true_dependence, write_dependence_p): Fix
+ bug in previous patch.
+
+ * i386.c (ix86_GOT_alias_set): New.
+ (legitimize_pic_address): Use it.
+
+ * rtlanal.c (rtx_unstable_p): An unchanging MEM is
+ only stable if its address is stable.
+ (rtx_varies_p): An unchanging MEM can't vary if
+ its address doesn't vary.
+
+2000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-parse.in (unop +): Restrict -Wtraditional warnings to user code.
+
+2000-08-22 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * vax.h (ASM_SPEC): Pass `-J' to assembler.
+ * x-vax-gcc: New file for bootstrapping with gcc.
+ * x-vax: Use X_CFLAGS rather than X_CPPFLAGS to pass `-J'.
+ * configure.in: Use x-vax-gcc with gcc.
+ * configure: Rebuilt.
+
+Tue Aug 22 21:21:05 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * toplev.c (rest_of_compilation): Rebuild label notes after
+ post-reload splitting pass if new labels have been created.
+
+2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h (output_buffer_state): New macro.
+ * diagnostic.c (diagnostic_for_decl, sorry,
+ default_print_error_function, output_do_verbatim,
+ report_diagnostic, report_problematic_module): Use it.
+ (wrap_text): Tweak.
+ (output_format): Use wrap_text instead of maybe_wrap_text.
+
+2000-08-22 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro.
+ Common code for ARM divide and modulus functions.
+ (THUMB_DIV_MOD_BODY): New macro. Thumb equivalent of
+ ARM_DIV_MOD_BODY.
+ (FUNC_END): New macro: Common code at the end of the division and
+ modulo functions.
+ (THUMB_FUNCTION_START): New macro: Common code at the start of
+ Thumb functions.
+ (__divsi3, __udivsi3, __modsi3, __umodsi3): Use new macros.
+
+Tue Aug 22 20:34:52 2000 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config/sh/sh.md (cmpeqdi_t splitter): Fix a reverse testing.
+
+ * config/sh/sh.c (prepare_scc_operands): Apply force_reg to
+ sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't
+ const0_rtx.
+
+2000-08-22 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/lib1funcs.asm (__umodsi3): Before performing any
+ restorative additions, test for bottom bits of IP being set,
+ rather than relying upon the RORs not matching.
+ (__modsi3): Ditto.
+
+2000-08-22 David Edelsohn <edelsohn@gnu.org>
+
+ * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or
+ text_section() as appropriate instead of emitting text csect
+ pseudo-op directly.
+ (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment.
+ (UNIQUE_SECTION): Define macro.
+ (ASM_OUTPUT_SECTION_NAME): Define macro.
+ * rs6000.c (rs6000_override_options): Disable -ffunction-sections
+ on AIX if debugging and -fdata-sections always.
+
+2000-08-22 Steven King <sxking@uswest.net>
+
+ * config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double
+ machinery.
+ (LDBL_MAX): Same here.
+
+2000-08-22 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (tidy_fallthru_edge): Update b->end properly.
+
+2000-08-22 Stan Cox <scox@redhat.com>
+
+ * Makefile.in (OBJS): Add dependence.o.
+ * dependence.c: New file.
+
+2000-08-22 Alexandre Oliva <aoliva@redhat.com>, John David Anglin <dave.anglin@nrc.ca>
+
+ * calls.c (check_sibcall_argument_overlap_1): Adjust for
+ ARGS_GROW_DOWNWARD.
+ (check_sibcall_argument_overlap): Likewise.
+
+2000-08-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * invoke.texi (SH Options): Document -m4-nofpu,
+ -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd,
+ -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace.
+
+2000-08-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (check_format_info): Give the 'some locales' warning
+ for strftime %Ey rather than the unconditional 'only last 2 digits
+ of year' one.
+
+2000-08-22 Richard Henderson <rth@cygnus.com>
+
+ * alias.c (init_alias_analysis): Do not register
+ struct_value_incoming_rtx or static_chain_rtx as pointing
+ to stack memory.
+
+Tue Aug 22 01:44:43 2000 Jeffrey A Law (law@cygnus.com)
+
+ * protoize.c (munge_compile_params): Fix typo and formatting buglets.
+
+2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h (report_problematic_module): Declare.
+ * diagnostic.c (report_problematic_module): New function.
+ (report_error_function): Tweak.
+
+Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * stmt.c (expand_goto_internal, fixup_gotos): Only check
+ TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
+
+2000-08-21 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (calculate_global_regs_live): Mark frame pointer live
+ everywhere before reload.
+
+2000-08-21 Jim Wilson <wilson@cygnus.com>
+
+ * real.c (ereal_from_int, ereal_from_uint, significand_size): Handle
+ INTEL_EXTENDED_IEEE_FORMAT.
+ (toe64): Delete INTEL_EXTENDED_IEEE_FORMAT support. Unconditionally
+ clear last two bytes of output FP value.
+
+2000-08-21 Graham Stott <grahams@cygnus.co.uk>
+
+ * config/ia64/ia64.h (REDO_SECTION_INFO_P): Change decl to DECL.
+
+2000-08-21 Jakub Jelinek <jakub@redhat.com>
+
+ * unroll.c (loop_find_equiv_value): If ret is modified between
+ insn and loop_start, ret might not be equivalent to reg.
+
+2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (init_dollar_format_checking,
+ maybe_read_dollar_number, finish_dollar_format_checking): New
+ functions.
+ (dollar_arguments_used, dollar_arguments_count,
+ dollar_first_arg_num, dollar_max_arg_used, dollar_format_warned):
+ New variables.
+ (check_format_info): Support $ formats for scanf and printf width
+ and precision. Always increment format_chars to advance past the
+ '*' of precision, not just when the format parameters are
+ available to check.
+
+2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.c (block_move_loop, expand_block_move,
+ function_arg_partial_nregs, save_restore_insns, function_prologue,
+ mips_expand_prologue, RA_MASK): Avoid using the `U' integer
+ constant suffix.
+ (function_arg_advance, function_arg): Match argument to format
+ specifier `%p'.
+
+2000-08-21 Nix <nix@esperi.demon.co.uk>
+
+ * gcc.c (do_spec_1): Implement %j spec flag.
+ Remove dead comment.
+
+ * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET.
+ * system.h (HOST_BIT_BUCKET): Default to "/dev/null".
+ * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL".
+ * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise.
+
+ * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if
+ writable) instead of hardcoded value.
+
+ * toplev.c (compile_file): Output to a file even if -fsyntax-only.
+
+ * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill
+ MKTEMP_EACH_FILE.
+
+ * gcc.c (cc1_options): Do not process -o or run the assembler if
+ -fsyntax-only.
+ * objc/lang-spec.h: Likewise.
+
+2000-08-21 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * fixinc/fixincl.c (fix_with_system): Pipe the output of
+ "external" fixes through `cat', to avoid truncating the input
+ file by redirection.
+
+2000-08-21 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (lea_general_1): Copy insn condition to split
+ condition.
+ (lea_general_2, lea_general_3): Likewise.
+
+2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-decl.c (duplicate_decls, define_label): Restrict -Wtraditional
+ warnings to user code.
+
+ * c-lex.c (readescape, yylex): Likewise.
+
+ * c-typeck.c (store_init_value, process_init_element): Likewise
+ (c_expand_start_case): Format.
+
+2000-08-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * mips/linux.h (LINK_SPEC): Use %(endian_spec).
+
+ * mips/mips.h: Change LINKER_ENDIAN_SPEC to ENDIAN_SPEC
+ and linker_endian_spec to endian_spec.
+ (ENDIAN_SPEC): Add %{EB} and %{EL}.
+ (LINK_SPEC): Remove %{EB} and %{EL}.
+ (ASM_SPEC): Likewise. Use %(endian_spec).
+
+2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-tree.h (flag_hosted): Move declaration from here...
+ * c-common.h (flag_hosted): ... to here.
+ (flag_noniso_default_format_attributes): New declaration.
+ * c-decl.c (flag_noniso_default_format_attributes): New variable.
+ (c_decode_option): Set it appropriately for options choosing
+ language standard variant.
+ * c-common.c (init_function_format_info): Only provide default
+ format attributes if flag_hosted. Only provide the gettext
+ formats if flag_noniso_default_format_attributes. Update
+ comments.
+ (check_format_info): Disable treatment of %a as a scanf flag in
+ C99 mode.
+
+2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (scan_char_table): Add 'w' to flags for all formats
+ except 'n'.
+ (check_format_info): Set 'wide' for scanf format widths. Warn for
+ a zero scanf width. Make the check for writing into a constant
+ object at the first level of indirection; at later levels, warn if
+ any type qualifiers are encountered.
+
+Mon Aug 21 07:41:12 2000 Jeffrey A Law (law@cygnus.com)
+
+ * reload.c (reload_inner_reg_of_subreg): New function broken out of
+ push_reload.
+ (push_reload): Use reload_inner_reg_of_subreg.
+ (combine_reloads): Do not combine reloads if the input reload
+ is a SUBREG in which the inner part will need reloading.
+
+ * global.c (global_alloc): Avoid passing dumpfile argument to
+ reload routines.
+ * toplev.c (rest_of_compilation): Likewise.
+ * reload.h (reload): Remove dumpfile argument. Callers changed.
+ (debug_reload, debug_reload_to_stream): Move prototypes here.
+ * rtl.h (reload): Remove dumpfile argument.
+ * reload.c (debug_reload): Remove prototype.
+ (debug_reload_to_stream): Likewise.
+ * reload1.c: Avoid passing dumpfile around, rely on rtl_dump_file
+ instead.
+
+2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
+
+ * diagnostic.c (context_as_prefix): Export.
+ (need_error_newline): Remove.
+ (lang_diagnostic_starter, lang_diagnostic_finalizer): New objects.
+ (error_module_changed, record_last_error_module,
+ error_function_changed, record_last_error_function): New functions.
+ (initialize_diagnostics): Default initialize
+ lang_diagnostic_starter, lang_diagnostic_finalizer.
+ (init_output_buffer): Tweak.
+ (file_name_as_prefix): New function.
+ (announce_function, default_print_error_function,
+ report_error_function, set_diagnostic_context): Tweak.
+
+2000-08-21 Richard Earnshaw <rearnsha@arm.com>
+
+ * flow.c (init_propagate_block_info): Handle SUBREG in a jump
+ condition expression.
+
+2000-08-20 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (merge_blocks_nomove): Don't seek back past the bb note.
+
+2000-08-20 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppinit.c (cpp_init): Set global flag when called.
+ (cpp_reader_init): Bomb out if cpp_init hasn't been called.
+
+Sun Aug 20 01:41:35 2000 Dennis Chernoivanov <cdi@sparc.spb.su>
+
+ * cpplex.c (cpp_scan_buffer): Move `output_line_command' just
+ before `process_directive' so that newlines won't be missed
+ for directives.
+ (cpp_printf): Increment `print->lineno' when newline is emitted.
+
+ * cppmain.c (cb_ident): Likewise.
+ (cb_define): Likewise.
+ (cb_undef): Likewise.
+ (cb_include): Likewise.
+ (cb_def_pragma): Likewise.
+ (dump_macros_helper): Likewise.
+
+2000-08-20 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (emit_insn_group_barriers): Stop if ar.lc
+ assigned before a loop.
+
+ * config/ia64/ia64.md (ashlsi3): Zero extend the shift count.
+ (ashrsi3, lshrsi3): Likewise.
+
+2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * c-lang.c: #include diagnostic.h
+ (c_tree_printer): New function.
+ (lang_init): Initialize lang_printer.
+
+ * Makefile.in (c-lang.o): Depends on diagnostic.h
+
+2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic.
+
+ * diagnostic.c (default_diagnostic_starter,
+ default_diagnostic_finalizer): New functions.
+ (diagnostic_for_asm, diagnostic_for_decl): Tweak.
+ (pedwarn, pedwarn_with_file_and_line, error,
+ error_with_file_and_line, fatal, warning,
+ warning_with_file_and_line): Adjust call to report_diagnostic.
+ (report_diagnostic): Rework.
+ (set_diagnostic_context): New function.
+
+ * diagnostic.h (struct diagnostic_context): New data structure.
+ (diagnostic_message, diagnostic_argument_list,
+ diagnostic_file_location, diagnostic_line_location,
+ diagnostic_is_warning, diagnostic_starter, diagnostic_finalizer,
+ diagnostic_finalizer, diagnostic_auxiliary_data): New macros.
+ (set_diagnostic_context): Declare.
+ (report_diagnostic): Change prototype.
+
+Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net>
+
+ * fix-header.c (main): Initialize cpplib.
+
+2000-08-19 Michael Meissner <meissner@redhat.com>
+
+ * ifcvt.c (find_if_block): Do not assume that a THEN block has any
+ instructions in it before checking for indirect jumps.
+
+ * ifcvt.c (find_if_block): Do not consider a THEN block that ends
+ in an indirect jump as a potential for conditional execution.
+
+ * d30v.h (d30v_init_expanders): Don't declare here.
+ * d30v-protos.h (d30v_init_expanders): Declare here with a valid
+ prototype.
+
+Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net>
+
+ * cpp.texi: Add @section for assertions.
+
+Sat Aug 19 12:37:08 EDT 2000 John Wehle (john@feith.com)
+
+ * loop.c (scan_loop): Use CONST_CALL_P instead of
+ checking for REG_LIBCALL / REG_RETVAL.
+
+Sat Aug 19 09:18:47 2000 Jeffrey A Law (law@cygnus.com)
+
+ * reload1.c (reload_as_needed): Accept dumpfile argument,
+ pass it to emit_reload_insns.
+ (emit_reload_insns): Add new dumpfile argument. If non-null
+ then dump the reloads for each insn into the dumpfile.
+ (reload): Pass dumpfile to reload_as_needed.
+
+ * invoke.texi: Clean up linux-gnu vs linux comments.
+
+2000-08-19 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (reg_or_5bit_operand): New.
+ (ia64_depz_field_mask): New.
+ * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New.
+ (PREDICATE_CODES): Update.
+ * config/ia64/ia64.md: Update commentary.
+ (depz_internal): New.
+ (ashlsi3): Implement directly.
+ (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants.
+ (ashldi3): Use shladd.
+ * config/ia64/ia64-protos.h: Update.
+
+2000-08-18 Zack Weinberg <zack@wolery.cumb.org>
+
+ * toplev.c (independent_decode_option): Always process -g.
+ Remove third argument, now unused. Adjust caller to match.
+
+2000-08-18 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (make_compound_operation): Break after creating
+ the extraction.
+
+2000-08-18 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplib.c (cpp_register_pragma_space): Just return if the
+ namespace is already registered.
+
+2000-08-18 Ray Essick <essick@ddna.labs.mot.com> & Nick Clifton <nickc@redhat.com>
+
+ * config/mcore/mcore.md (rotlsi3): Allow allow rotations by a
+ constant amount. Do not generate ROTL instruction.
+
+Fri Aug 18 16:22:20 2000 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/elf.h: Do not include sh/sh.h.
+ * config/sh/rtems.h: Likewise.
+ * config/sh/rtemself.h: Do not include sh/elf.h.
+ * configure.in: Get them included with `tm_file's.
+ * configure: Rebuilt.
+
+ * config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify.
+ * config/sh/sh.c (fpscr_set_from_mem): Use them.
+
+Fri Aug 18 14:23:18 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * stor-layout.c (compute_record_type): Don't use mode of single
+ field as mode of record if not integer mode of same type.
+
+ * regmove.c (perhaps_ends_bb_p): New function.
+ (optimize_reg_copy_1, optimize_reg_copy_2): Call it.
+ (optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise.
+ (fixup_match_1): Likewise.
+ (fixup_match_1, combine_stack_adjustments_for_block): Add casts to
+ avoid signed/unsigned warnings.
+
+ * function.c (fixup_var_refs_1, case MEM): Update CODE after
+ updating X.
+
+Fri 18-Aug-2000 18:33:45 BST Neil Booth <NeilB@earthling.net>
+
+ * cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS.
+ (_cpp_trigraph_map): Declaration moved from cpplex.c
+
+ * cppinit.c: Define _cpp_trigraph_map. Use UCHAR_MAX + 1
+ instead of 256. Use consistent test for designated initializers.
+ (cpp_init): Initialize trigraph_map.
+ (initialize_standard_includes, parse_option): Use memcmp
+ instead of strncmp.
+
+ * cpplex.c (init_trigraph_map): Remove.
+ (trigraph_ok, trigraph_replace, lex_line): Refer to
+ _cpp_trigraph_map.
+
+ * cpplib.c (str_match, WARNING, ERROR, ICE): Delete.
+ (do_unassert): Remove unused "next" local.
+
+ * system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype.
+
+2000-08-18 Emmanuel Marty <emarty@suntech.fr>
+
+ * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return
+ insn.
+
+2000-08-17 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (spill_restore_mem): Handle emitting
+ the first insn in a sequence.
+
+Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com)
+
+ * alias.c (true_dependence, write_dependence_p): A read
+ involving a label_ref or the constant pool doesn't create
+ a dependency.
+
+ * rtl.h (unchanging): Improve documentation.
+
+2000-08-17 Rodney Brown <RodneyBrown@mynd.com>
+
+ * cse.c (insert_regs): Remove unused `regno'.
+
+2000-08-17 Neil Booth <NeilB@earthling.net>
+
+ * (cppinit.c) merge_include_chains: Use remove_dup_dir,
+ remove_dup_dirs. If qtail == brack, remove brack not
+ qtail.
+ (remove_dup_dir, remove_dup_dirs): New functions.
+
+2000-08-17 Neil Booth <NeilB@earthling.net>
+
+ * cppinit.c (cpp_cleanup): Free include dir chains.
+ * cpplib.c (do_undef): Let _cpp_free_definition make the node void.
+ (do_unassert): Free the assert with _cpp_free_definition.
+ * cppmacro.c (_cpp_free_definition): Free memory allocated for
+ assertions. Make the node a T_VOID node.
+
+2000-08-17 Neil Booth <NeilB@earthling.net>
+
+ * cppinit.c (path_include, append_include_chain):
+ Remove 2nd parameter (struct cpp_pending *).
+ (path_include, initialize_standard_includes, cpp_handle_option):
+ Update callers appropriately.
+ (cpp_handle_option): Use pend.
+
+2000-08-17 Neil Booth <NeilB@earthling.net>
+
+ * cppinit.c (sort_options): Remove, put functionality in
+ cpp_init.
+ (cpp_init): New.
+ (initialize_builtins): Free memory.
+ (cpp_start_read): Move init_IStable to cpp_init.
+
+ * cpplib.h (cpp_init): New prototype.
+ * cppmain.c (main): Call cpp_init.
+
+Thu Aug 17 13:20:32 EDT 2000 John Wehle (john@feith.com)
+
+ * rtlanal.c (rtx_unstable_p): Use CONSTANT_P.
+ (rtx_unstable_p, rtx_varies_p): Process vectors.
+
+2000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config/sh/lib1funcs.asm (GLOBAL): Define. Use for all
+ references to GLOBAL symbols. Use LOCAL where appropriate.
+
+2000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always
+ use t-aix41 when host == target.
+
+2000-08-16 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (push_secondary_reload): Revert last change.
+ If we use a reload_in/out pattern, make the when the same
+ as the primary reload.
+ (find_reloads): Likewise.
+
+2000-08-16 Manfred Hollstein <manfredh@redhat.com>
+
+ * configure.in (libstdcxx-v3): Fix test.
+ * configure: Regenerate.
+
+Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * calls.c (calls_function_1, expand_call): Only test
+ TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
+ * function.c (thread_prologue_and_epilogue_insns): Likewise.
+
+2000-08-16 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (simplify_shift_const): Revert previous two
+ changes. If SHIFT_COUNT_TRUNCATED, crop the shift count
+ before the main loop.
+
+2000-08-15 Richard Henderson <rth@cygnus.com>
+
+ * combine.c (simplify_shift_const): Bound shift count when
+ combining shifts.
+
+Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * calls.c (ECF_SP_DEPRESSED): New macro.
+ (calls_function_1): Treat calling sp-depressed function as alloca.
+ (emit_call_1): Don't adjust SP if calling sp-depressed function.
+ (expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED.
+ If sp-depressed, ensure block saves and restores SP.
+ * fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE
+ for INTEGER_TYPE.
+ * function.c (keep_stack_depressed): New function.
+ (thread_prologue_and_epilogue_insns): Call it.
+ * print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED
+ to print DECL_OFFSET_ALIGN.
+ Print no-force-blk and transparent-union flags properly.
+ * stmt.c (expand_goto_internal): Don't restore stack if last block
+ and function returns with sp depressed.
+ (fixup_gotos): Likewise.
+ (save_stack_pointer): New function, from code in expand_decl.
+ (expand_decl): Call new function.
+ * tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK.
+ (TYPE_RETURNS_STACK_DEPRESSED): New macro.
+ (save_stack_pointer): New declaration.
+
+ * diagnostic.c (fatal_function): New variable.
+ (set_fatal_function): New function.
+ (fatal): Call it.
+ * diagnostic.h (set_fatal_function): New declaration.
+
+2000-08-15 William Cohen <wcohen@redhat.com>
+
+ * config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined.
+ (PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info.
+ (DWARF2_ASM_LINE_DEBUG_INFO): Defined.
+
+2000-08-15 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (mark_used_reg): Set reg_cond_reg appropriately.
+
+2000-08-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_function_ok_for_sibcall): New function.
+ * arm.h (FUNCTION_OK_FOR_SIBCALL): Define.
+ * arm.md (call expanders): Don't check here for calls that can't
+ be sibling calls.
+
+2000-08-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (splits generating cond_exec): Disable.
+
+2000-08-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm/linux-elf.h (text_section): Delete declaration.
+
+2000-08-15 Richard Earnshaw <rearnsha@arm.com>
+
+ ARM support for unordered FP operations.
+ * arm-protos.h (arm_comparison_operator): Declare.
+ * arm.c (arm_comparison_operator): New function.
+ (arm_select_cc_mode): Add unordered comparison codes.
+ (get_arm_condition_code): Likewise.
+ (arm_final_prescan_insn): Can't handle unordered jumps that can't
+ be done in one insn.
+ * arm.h (PREDICATE_CODES): Add arm_comparison_operator.
+ * arm.md (all uses of comparison_operator): Replace with
+ arm_comparison_operator.
+ (bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New
+ expands.
+ (arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New
+ patterns.
+
+Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * gthr-posix.h: Conditionally include <sched.h>; include
+ <config.h> from libobjc/.
+
+2000-08-14 Richard Henderson <rth@cygnus.com>
+
+ * config/i386/i386.c (legitimize_pic_address): Use Pmode
+ for all CONSTs.
+
+2000-08-14 Richard Henderson <rth@cygnus.com>
+
+ * configure.in (ia64-*): Set float_format for i386 long double.
+
+ * real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT
+ as we would for i386 XFmode.
+ (PUT_REAL): Likewise.
+ (endian, ereal_atof, real_value_truncate): Likewise.
+ (ereal_isneg, toe64, etens, make_nan): Likewise.
+ * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise.
+
+ * config/ia64/ia64-protos.h: Update.
+ * config/ia64/ia64.c (general_tfmode_operand): New.
+ (destination_tfmode_operand): New.
+ (tfreg_or_fp01_operand): New.
+ (ia64_split_timode): New.
+ (spill_tfmode_operand): New.
+ (ia64_expand_prologue): Use TFmode not XFmode.
+ (ia64_expand_epilogue): Likewise.
+ (ia64_function_arg): Likewise.
+ (ia64_function_arg_advance): Likewise.
+ (ia64_return_in_memory): Likewise.
+ (ia64_function_value): Likewise.
+ (ia64_print_operand): Likewise.
+ (ia64_register_move_cost): Set GR<->FR to 5.
+ (ia64_secondary_reload_class): Get GR for TImode memory op.
+ * config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove.
+ (ROUND_TYPE_ALIGN): Remove.
+ (LONG_DOUBLE_TYPE_SIZE): Set to 128.
+ (INTEL_EXTENDED_IEEE_FORMAT): Define.
+ (HARD_REGNO_NREGS): Use TFmode, not XFmode.
+ (HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs.
+ (MODES_TIEABLE_P): Use TFmode, not XFmode.
+ (CLASS_MAX_NREGS): Likewise.
+ (ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks.
+ (PREDICATE_CODES): Update.
+ * config/ia64/ia64.md (movti): New.
+ (movti_internal): Use a clobber for memory alternatives.
+ (reload_inti, reload_outti): New.
+ (movsfcc_astep): Predicate properly.
+ (movdfcc_astep): Likewise.
+ (movxf): Remove.
+ (movtf): New.
+ (extendsftf2, extenddftf2): New.
+ (trunctfsf2, trunctfdf2): New.
+ (floatditf2, fix_trunctfdi2): New.
+ (floatunsditf2, fixuns_trunctfdi2): New.
+ (addtf3, subtf3, multf3, abstf2): New.
+ (negtf2, nabstf2, mintf3, maxtf3): New.
+ (maddtf3, msubtf3, nmultf3, nmaddtf3): New.
+ (cmptf): New.
+ (fr_spill): Use TFmode, not XFmode.
+ (fr_restore): Likewise.
+ * config/ia64/lib1funcs.asm (__divtf3): New.
+ * config/ia64/t-ia64 (LIB1ASMFUNCS): Add it.
+
+2000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cse.c (fold_rtx): Avoid empty body in an if-statement.
+
+ * doloop.c (doloop_iterations_max, doloop_modify): Avoid using the
+ `U' integer constant suffix.
+
+ * dwarf2out.c (add_subscript_info): Avoid empty body in an
+ else-statement.
+
+ * sparc/sol2.h (__enable_execute_stack): Prototype.
+
+2000-08-14 David Edelsohn <edelsohn@gnu.org>
+
+ * collect2.c: Remove use of AIX import file.
+
+ * longlong.h: Test ARCH_PWR not ARCH_POWER.
+
+ * rs6000.c (print_operand, case 'E'): Add else.
+
+2000-08-14 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address.
+ (movdi_symbolic): New.
+
+2000-08-14 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
+ to GNU as. For Intel as, pass -M const_gp and -M no_plabel.
+ * config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
+ to GNU as.
+
+2000-08-14 Richard Henderson <rth@cygnus.com>
+
+ * expr.c (emit_group_load): Don't force constants into registers.
+ Special case source already in the correct mode.
+
+2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
+
+ * configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
+ * fixinc/inclhack.def: Likewise.
+ * fixinc/mkfixinc.sh: Likewise.
+ * configure: Regenerate.
+ * fixinc/fixincl.x: Regenerate.
+ * install.texi: Document equivalence of linux and linux-gnu.
+
+Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * cse.c (insert_regs): Also in REG case: When finding an invalid
+ value, and we make a new quantity, make sure that it won't be
+ mistaken by for a valid one by mention_regs.
+
+2000-08-13 Ralf Gütlein <ralf.guetlein@aranea.de>
+
+ * h8300.md: Remove obsolete peepholes.
+
+2000-08-13 Kazu Hirata <kazu@hxi.com>
+
+ * invoke.texi (H8/300 Options): Fix typos.
+ * config/h8300.c: Fix formatting.
+ * config/h8300.h: Fix comment typos.
+ (OVERRIDE_OPTIONS): Fix formatting.
+
+ * function.c: Fix formatting.
+
+ * cse.c: Fix formatting.
+
+2000-08-13 Geoff Keating <geoffk@cygnus.com>
+
+ * flow.c (attempt_auto_inc): Remove unused variable `bb'.
+ (attempt_auto_inc): Suppress parentheses warning.
+ * function.c (put_reg_into_stack): Remove unused variable `unsigned_p'.
+ * loop.c (load_mems): Remove `u' suffix in two places.
+ * config/rs6000/rs6000.c: Remove unnecessary `u' suffixes from
+ hex constants.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/rs6000/sol-c0.c: Prototype some functions. Remove the
+ __eabi dummy routine.
+ * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Remove unused
+ variable `buf_ptr'.
+
+ * config/rs6000/rs6000.c (rs6000_select_section): Rewrite to
+ not put stuff in .sdata unnecessarily.
+ (rs6000_unique_section): New function.
+ * config/rs6000/rs6000-protos.h: Add rs6000_unique_section.
+ * config/rs6000/sysv4.h (UNIQUE_SECTION): Define.
+
+ * c-typeck.c (build_array_ref): Don't complain about non-lvalue
+ arrays in C99. Don't try to look at DECL_REGISTER of a
+ COMPONENT_REF. Don't complain twice about the same error.
+
+ * fixinc/inclhack.def (aix_pthread): New fix.
+ (aix_sysmachine): New fix.
+ * fixinc/fixincl.x: Regenerate.
+
+ * expr.c (expand_expr): Call convert_modes when turning a large
+ multiply into a small one.
+
+2000-08-12 Geoff Keating <geoffk@cygnus.com>
+
+ * tree.h (DECL_OFFSET_ALIGN): Make the off_align field of
+ the tree structure an exponent rather than an explicit alignment
+ so it doesn't overflow.
+ (SET_DECL_OFFSET_ALIGN): New macro.
+ * stor-layout.c (place_union_field): Use SET_DECL_OFFSET_ALIGN
+ rather than DECL_OFFSET_ALIGN.
+ (place_field): Likewise.
+ * expmed.c (store_bit_field): Abort on align==0 to avoid
+ antisocial machine behavior.
+
+2000-08-12 Richard Henderson <rth@cygnus.com>
+
+ * sibcall.c (uses_addressof): Accept both addressof and
+ current_function_internal_arg_pointer inside a mem.
+ (optimize_sibling_and_tail_recursive_call): Fail tail recursion
+ if current_function_uses_addressof.
+ * stmt.c (expand_return): Kill tail recursion and HAVE_return
+ optimizations.
+
+2000-08-11 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (addsi3): Remove expander.
+ (subsi3, mulsi3, negsi2, one_cmplsi2): Likewise.
+ (*addsi3_shladd): New.
+
+2000-08-11 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (do_spill): Pass cfa offset to move expander.
+ (do_restore): Likewise.
+ (gen_movdi_x, gen_fr_spill_x, gen_fr_restore_x): New.
+ (ia64_expand_prologue, ia64_expand_epilogue): Use them.
+ (rtx_needs_barrier): Track actual bit manipulation for
+ ar.unat moves, gr_spill, and gr_restore.
+ (emit_insn_group_barriers): Special case gr_spill/gr_restore.
+ (process_set): Don't handle varargs spills.
+ * config/ia64/ia64.md (gr_spill): Accept cfa offset. Emit
+ .mem.offset here instead of in process_set.
+ (gr_restore): Likewise.
+
+2000-08-11 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.h (PROMOTE_MODE): Only extend to SImode.
+
+2000-08-11 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * gcc.texi (The Configuration File): Document
+ COLLECT2_HOST_INITIALIZATION, GCC_DRIVER_HOST_INITIALIZATION, and
+ UPDATE_PATH_HOST_CANONICALIZATION.
+
+2000-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-parse.in (cast_expr): Avoid -Wstrict-prototype warnings for
+ unprototyped function pointer casts on integer constants.
+
+2000-08-11 Laurynas Biveinis <lauras@softhome.net>
+
+ * fixproto: Recognize DOS paths with drive letters as absolute paths.
+
+2000-08-11 Nathan Sidwell <nathan@codesourcery.com>
+
+ * extend.texi (Volatiles): Fix typos.
+
+2000-08-11 Kazu Hirata <kazu@hxi.com>
+
+ * flow.c: Fix formatting.
+
+2000-08-11 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (push_secondary_reload): When invoking a reload_{in,out}
+ pattern, always allocate a tertiary scratch register.
+
+ * config/alpha/alpha.md (reload_inqi): Use a DImode scratch.
+ (reload_inhi): Likewise.
+
+2000-08-11 Richard Henderson <rth@cygnus.com>
+
+ * function.c (put_reg_into_stack): Allow type to be NULL.
+ (schedule_fixup_var_refs): Likewise.
+ (gen_mem_addressof): Allow decl to be NULL.
+ (put_addressof_into_stack): Likewise.
+
+ * flow.c (merge_blocks_nomove): Be more careful about
+ locating the beginning of block A.
+
+ * combine.c (simplify_shift_const): Obey SHIFT_COUNT_TRUNCATED.
+
+Thu Aug 10 22:47:09 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * configure.in:
+ * configure:
+ * gthr-posix.h:
+ * config.in: Reverted the check for <sched.h>.
+
+2000-08-10 Chris Demetriou <cgd@sibyte.com>
+
+ * mips/elf.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME): New
+ macros define the name of CTOR and DTOR sections.
+ (CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
+ DTOR_LIST_END): Change to use attributes to specify
+ sections.
+ * mips/elf64.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME,
+ (CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
+ DTOR_LIST_END): Same as in mips/elf.h.
+
+2000-08-10 Drew Moseley <dmoseley@redhat.com>
+
+ * config/mn10300/mn10300.h: Added no-crt0 option for explicitly
+ disabling just crt0.o.
+
+2000-08-10 Richard Earnshaw <rearnshaw@arm.com> & Nick Clifton <nickc@cygnus.com>
+
+ * arm.h (CPP_SPEC): Use sub-spec cpp_interwork.
+ (CPP_INTERWORK_SPEC, CPP_INTERWORK_DEFAULT_SPEC): New sub-specs.
+ (EXTRA_SPECS): Add them.
+ * arm/lib1funcs.asm: Support builds for interworking.
+ Use macros to eliminate duplicated pieces of code.
+
+2000-08-10 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c (expand_a_rotate): New.
+ (emit_a_rotate): Likewise.
+ (h8300_adjust_insn_length): Add support for the rotate insns.
+ * h8300.md (rotlqi3): New.
+ (*rotlqi3_1): Likewise.
+ (rotlhi3): Likewise.
+ (*rotlhi3_1): Likewise.
+ (rotlhi3): Likewise.
+ (*rotlhi3_1): Likewise.
+ * h8300-proto.h: Add prototypes for expand_a_rotate and
+ emit_a_rotate.
+
+ * h8300.c: Fix comment typos.
+ (dosize): Declare the variable amount as unsigned.
+ (get_shift_alg): Fix a comparison between signed and unsigned.
+ (emit_a_shift): Likewise.
+ (h8300_adjust_insn_length): Simplify the code.
+
+ * c-decl.c: Fix formatting.
+
+2000-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-lex.c (parse_float, yylex): For -Wtraditional, issue a
+ warning about non-traditional numeric constant suffixes.
+
+ * cppexp.c (parse_number): Likewise.
+
+ * invoke.texi: (-Wtraditional): Document new behavior.
+
+Thu Aug 10 00:11:04 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * gthr-posix.h: Include auto-host.h. Conditionally include
+ <sched.h>.
+ * configure.in: Check for the <sched.h> header file.
+ * config.in: Added define for HAVE_SCHED_H.
+
+2000-08-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-typeck.c (process_init_element): For -Wtraditional, warn about
+ initialization of unions.
+
+ * invoke.texi (-Wtraditional): Document new behavior.
+
+2000-08-09 Zack Weinberg <zack@wolery.cumb.org>
+
+ * configure.in (--enable-c-cpplib): Uncomment. Use AC_DEFINE
+ instead of extra_c_flags.
+ (--enable-c-mbchar): Use AC_DEFINE instead of extra_c_flags.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+
+ * cpperror.c (cpp_type2name): New function.
+ * cpplex.c (lex_line): If we issued an error for an invalid
+ preprocessing directive, discard that logical line.
+ * cpplib.c (do_line): Call a hook function if the current file
+ is renamed by #line.
+ (do_ident): Pass the contents of the string, not the entire
+ token, to the callback function.
+ * cpplib.h (CPP_LAST_PUNCTUATOR): New #define.
+ (cb.rename_file): New hook function.
+ (cb.ident): Adjust prototype.
+ (cpp_type2name): Prototype.
+ * cppmacro.c (dump_macro_args): Correct precedence lossage.
+
+ * cppmain.c (cb_ident): Update for changed interface.
+ (cb_rename_file): New function.
+ (main): Set rename callback.
+
+2000-08-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * caller-save.c (mark_referenced_regs): Mark partially-overwritten
+ multi-word registers.
+
+2000-08-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (combine_strings, check_format_info): Refer to ISO C
+ or ISO C89 instead of ANSI C.
+ * c-decl.c (grokdeclarator, xref_tag, finish_struct,
+ build_enumerator, do_case): Likewise.
+ * c-lex.c (parse_float, yylex): Likewise.
+ * c-parse.in: Likewise.
+ * c-typeck.c (common_type, build_array_ref, build_binary_op,
+ build_unary_op, pedantic_lvalue_warning, build_conditional_expr,
+ build_c_cast, convert_for_assignment, set_init_index,
+ set_init_label, c_expand_start_case): Likewise.
+ * toplev.c (documented_lang_options, display_help): Likewise.
+
+2000-08-08 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c: Fix formatting.
+ * h8300.h: Likewise.
+ * h8300.md: Likewise.
+ (movsi_h8300hs): Fix formatting of the resulting assembly code.
+
+ * reload1.c: Fix formatting.
+
+2000-08-08 Rodney Brown <RodneyBrown@mynd.com>
+
+ * alpha/alpha.c (alpha_emit_xfloating_libcall):
+ Use GEN_CALL_VALUE define.
+ * alpha/alpha.md (untyped_call): Use GEN_CALL define.
+ * clipper/clipper.md (untyped_call): Likewise.
+ * dsp16xx/dsp16xx.md (untyped_call): Likewise.
+ * fx80/fx80.md (untyped_call): Likewise.
+ * mips/mips.md (untyped_call): Likewise.
+ * ns32k/ns32k.md (untyped_call): Likewise.
+ * pa/pa.md (untyped_call): Likewise.
+ * romp/romp.md (untyped_call): Likewise.
+ * sparc/sparc.md (untyped_call): Likewise.
+
+2000-08-08 Jason Eckhardt <jle@cygnus.com>
+
+ * config/i860/i860.c (singlemove_string): Do not generate assembler
+ pseudo instructions that must be expanded (that is, with signed
+ constants larger than 16 bits).
+
+2000-08-08 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (life_analysis): Only turn off PROP_LOG_LINKS and
+ PROP_AUTOINC at -O0. Don't collect alias info at -O0.
+ (init_propagate_block_info): Don't kill memory stores at -O0.
+ (mark_set_1, mark_used_regs): Likewise.
+
+2000-08-08 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (optimization_options): Decorate 'level' as
+ ATTRIBUTE_UNUSED.
+ (mask64_operand): Remove sign-extend thinko.
+ (rldic_operand): New function.
+ (load_multiple_operation): regno's are unsigned ints.
+ (store_multiple_operation): Likewise.
+ (lmw_operation): Likewise.
+ (stmw_operation): Likewise.
+ (includes_lshift_p): shift_mask is unsigned int.
+ (includes_lshift64_p): New function.
+ (addrs_ok_for_quad_peep): unsigned int reg1.
+ (print_operand): Consistently add "else" after
+ output_operand_lossage().
+ (print_operand, case 'b'): Fold in case 'W'.
+ (print_operand, case 'W'): Print rldic MB value.
+ (output_epilogue): Update Objective-C language string.
+ (output_toc): unsigned HOST_WIDE_INT low, compare unsigned.
+ * rs6000.h (PREDICATE_CODES): Add rldic_operand.
+ * rs6000.md (ashldi3): Add rldic instruction.
+ (iordi3, xordi3): Remove redundant "else if CONST_DOUBLE".
+ (cmpsi_internal2, cmpdi_interal2): Use 'b' output template
+ modifier.
+
+2000-08-08 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64-protos.h: Remove duplicates. Update
+ for massive code rearrangements.
+ * config/ia64/ia64.c (ia64_arpfs_regno): Remove.
+ (ia64_rp_regno, ia64_fp_regno, ia64_input_regs): Remove.
+ (ia64_local_regs, ia64_need_regstk): Remove.
+ (ar_ccv_reg_operand): New.
+ (ia64_gp_save_reg): New.
+ (struct ia64_frame_info): Combine most of the size elements;
+ add new gr save elements.
+ (find_gr_spill): New.
+ (next_scratch_gr_reg): New.
+ (mark_reg_gr_used_mask): New.
+ (ia64_compute_frame_size): Rewrite. Allocate special AR regs
+ to GR backing store regs when possible.
+ (ia64_initial_elimination_offset): New.
+ (ia64_rap_fp_offset): Remove.
+ (save_restore_insns): Remove.
+ (setup_spill_pointers): New.
+ (finish_spill_pointers): New.
+ (spill_restore_mem): New.
+ (do_spill, do_restore): New.
+ (ia64_expand_prologue): Rewrite to use them.
+ (ia64_expand_epilogue): Likewise.
+ (ia64_direct_return): Update for current_frame_info changes.
+ (ia64_function_prologue): Simplify .prologue emission. Emit
+ .spill when needed.
+ (ia64_setup_incoming_varargs): Don't ever emit rtl.
+ (ia64_dbx_register_number): New.
+ (ia64_initialize_trampoline): New.
+ (ia64_secondary_reload_class): Request GR_REGS for integer
+ arithmetic destined for FR_REGS.
+ (ia64_init_machine_status): Don't reset return_address_pointer_rtx.
+ (ia64_mark_machine_status): Mark ia64_gp_save.
+ (rws_access_regno): Rename from rws_access_reg; don't treat
+ predicates specially.
+ (rws_access_reg): New. Update all callers.
+ (rtx_needs_barrier): Remove dead unspecs.
+ (ia64_epilogue_uses): Mark ar.pfs and ar.unat live on exit.
+ (ia64_encode_section_info): Silence signed/unsigned warnings.
+ (spill_offset, sp_offset, spill_offset_emitted): Remove.
+ (tmp_reg, tmp_saved): Remove.
+ (process_set): Rewrite to expect complicated bits via
+ REG_FRAME_RELATED_EXPR.
+ (ia64_expand_fetch_and_op): Use emit_move_insn; be explicit
+ in the use of ar.ccv; never set RTX_UNCHANGING_P.
+ (ia64_expand_op_and_fetch): Likewise.
+ (ia64_expand_compare_and_swap): Likewise.
+ (ia64_expand_builtin): Likewise.
+ * config/ia64/ia64.h (AR_UNAT_REGNUM): New.
+ (FIRST_PSEUDO_REGISTER): Update.
+ (AR_M_REGNO_P): Update.
+ (FIXED_REGS): Don't mark three local registers as used.
+ (EXTRA_CC_MODES): New.
+ (SELECT_CC_MODE): New.
+ (HARD_REGNO_NREGS): Allow DImode in p0; handle CCImode.
+ (HARD_REGNO_MODE_OK): Disallow CCImode from non-predicates.
+ (FRAME_GROWS_DOWNWARD): Unset.
+ (STARTING_FRAME_OFFSET): Zero.
+ (ELIMINABLE_REGS): Eliminate from the soft to hard frame pointer.
+ (INITIAL_ELIMINATION_OFFSET): Defer to out of line function.
+ (HARD_FRAME_POINTER_REGNUM): New.
+ (CAN_DEBUG_WITHOUT_FP): Define.
+ (TRAMPOLINE_TEMPLATE): Remove.
+ (TRAMPOLINE_SIZE): Lower to 32.
+ (TRAMPOLINE_ALIGNMENT): Lower to 64.
+ (INITIALIZE_TRAMPOLINE): Defer to out of line function.
+ (PREDICATE_CODES): Update.
+ (struct machine_function): Add ia64_gp_save.
+ * config/ia64/ia64.md: Purge unused unspecs.
+ (movsi patterns): Allow moves to/from AR_M_REGS.
+ (movdi patterns): Allow moves to/from p0.
+ (call patterns): Move most setjmp hackery to ia64_gp_save_reg.
+ (gr_spill, gr_restore): Indicate ar.unat read/written.
+ (nonlocal_goto): Don't pass old frame_pointer.
+ (nonlocal_goto_receiver): Remove.
+ (exception_receiver): New.
+ (builtin_setjmp_setup): New.
+ (builtin_setjmp_receiver): New.
+ * config/ia64/lib1funcs.asm (__ia64_save_stack_nonlocal): Bundle.
+ (__ia64_nonlocal_goto): Bundle. Don't kill r7.
+ (__ia64_restore_stack_nonlocal): Likewise.
+ (__ia64_trampoline): New.
+ * config/ia64/sysv4.h (DBX_REGISTER_NUMBER): Defer to out of line
+ function.
+ * config/ia64/t-ia64 (LIB1ASMFUNCS): Add __trampoline.
+
+2000-08-08 Richard Henderson <rth@cygnus.com>
+
+ * frame.h (ia64_frame_state): Add my_psp.
+ * libgcc2.c (ia64_throw_helper): Add throw_sp argument.
+ (__throw): Pass it in. Don't clobber r7.
+ * config/ia64/frame-ia64.c (init_ia64_reg_loc): Mark inline.
+ (execute_one_ia64_descriptor) [mem_stack_v]: Sets psp.when
+ and nothing to do with sp.
+ (normalize_reg_loc): Use frame->my_psp.
+ (frame_translate): Handle frame-pointer-less functions. Set
+ spill_base correctly, in absence of being told.
+ (__build_ia64_frame_state): New sp argument. Fill in frame->my_sp.
+ (__ia64_backtrace_helper): New sp argument. Use
+ builtin_return_address instead of label addresses.
+ (print_record) [mem_stack_v]: No size member.
+
+2000-08-08 Richard Henderson <rth@cygnus.com>
+
+ * regclass.c (choose_hard_reg_mode): Iterate over all CC modes.
+
+2000-08-08 Richard Henderson <rth@cygnus.com>
+
+ * tm.texi (LOCAL_REGNO): Document.
+ * flow.c (LOCAL_REGNO, EPILOGUE_USES): Provide default.
+ (mark_regs_live_at_end): Don't mark LOCAL_REGNO registers.
+ * reload1.c (reload): Likewise when considering nonlocal labels.
+
+ * config/ia64/ia64.h (LOCAL_REGNO): New.
+ * config/sparc/sparc.h (LOCAL_REGNO): New.
+
+2000-08-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-lex.c (yylex): Don't allow integer suffixes 'LUL', 'Ll', 'lL'.
+
+2000-08-07 Nick Clifton <nickc@redhat.com>
+
+ * config/mips/mips.c: Fix compile time warning messages.
+ * config/mips/mips-protos.h: Add prototype for equality_op.
+
+ * mn10300.h (TARGET_SWITCHES): Document `-mam33'.
+
+2000-08-07 Graham Stott <grahams@cygnus.co.uk>
+
+ * mn10300.md: Use nonimmediate_operand instead of general_operand
+ on output operands.
+
+ * mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads.
+
+2000-08-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * sh.h (EXTRA_CONSTRAINT_Q): Adjust to GNU Coding Standards.
+ * sh.c (expand_block_move): Break long lines.
+ (expand_ashiftrt, fpscr_set_from_mem): Likewise.
+ * sh.md (mulsi3): Likewise.
+ (movdi): Adjust spacing.
+
+2000-08-07 Richard Henderson <rth@cygnus.com>
+
+ * expmed.c (store_bit_field): Don't require MEM_IN_STRUCT_P.
+ * expr.c (emit_group_store): Don't set it.
+
+2000-08-07 Kazu Hirata <kazu@hxi.com>
+
+ * invoke.texi (Options for Debugging Your Program or GCC): Remove
+ duplicate entries for 'w' and 'z'.
+
+ * flow.c: Fix a comment typo.
+
+Sun Aug 6 23:47:35 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * c-parse.in: Changed the language string for Objective-C to "GNU
+ Objective-C".
+
+Sun Aug 6 11:54:03 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * gthr-posix.h: Integrated Chris Ball's <cball@fmco.com> changes
+ to improve the Posix thread support for Objective-C.
+
+2000-08-06 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.h (enum c_tree_index): Add CTI_SIGNED_SIZE_TYPE and
+ CTI_UNSIGNED_PTRDIFF_TYPE.
+ (signed_size_type_node): Define.
+ (unsigned_ptrdiff_type_node): Define.
+ * c-decl.c (init_decl_processing): Create the
+ signed_size_type_node and unsigned_ptrdiff_type_node types.
+ * c-common.c (T_SC): Define.
+ (T_SST): Define.
+ (T_UPD): Define.
+ (print_char_table): Use T_SST for %zd, %zi, %zn. Use T_UPD for
+ %to, %tu, %tx, %tX. Allow %hhn (T_SC). Add "c" to the flags for
+ %s and %p.
+ (scan_char_table): Use T_SC for %hhd, %hhi, %hhn. Use T_SST for
+ %zd, %zi, %zn. Use T_UPD for %to, %tu, %tx, %tX. Add "c" to the
+ flags for %c, %s and %[.
+ (check_format_info): Only allow leniency for signedness of targets
+ of character pointers (when pedantic) for formats flagged with
+ "c", so for strings but not for %hh formats. When pedantic, don't
+ allow character pointers to substitute for void pointers if a
+ second level of indirection is present.
+
+2000-08-06 Kazu Hirata <kazu@hxi.com>
+
+ * invoke.texi (Options for Debugging Your Program or GCC): Update
+ the names of dump files.
+
+ * h8300.c (dosize): Rearrange code for conciseness.
+ (split_adds_subs): Likewise.
+
+ * loop.c: Fix formatting.
+
+ * dwarf2out.c: Fix formatting.
+
+ * tm.texi (FUNCTION_ARG_PARTIAL_NREGS): Fix a typo.
+
+ * expr.c: Fix formatting.
+
+2000-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * rs6000.c (rs6000_maybe_dead): Prototype.
+
+2000-08-06 Richard Henderson <rth@cygnus.com>
+
+ * stmt.c (expand_goto): Do virtual_stack_vars_rtx replacement for
+ HAVE_nonlocal_goto as well.
+ * config/i960/i960.md (nonlocal_goto): Don't do it here.
+ * config/pj/pj.md (nonlocal_goto): Likewise.
+
+2000-08-07 Michael Hayes <mhayes@cygnus.com>
+
+ * loop.c (try_swap_copy_prop): New function.
+ (load_mems): Rename copies to load_copies and add new regset
+ store_copies. Check for sets of shadow registers and mark
+ in store_copies. Call try_swap_copy_prop for registers
+ marked in store_copies.
+
+Sun Aug 6 00:54:42 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * objc/objc-act.c: New command line option -fconstant-string-class
+ to allow specifying a user defined constant string class,
+ different from NXConstantString.
+
+ * toplev.c: Moved the Objective-C specific options to
+ objc/lang-options.h.
+
+ * objc/lang-options.h: Moved the Objective-C specific options from
+ toplev.c. Added -fconstant-string-class.
+
+2000-08-05 Chris Demetriou <cgd@sibyte.com>
+
+ * mips/elf.h (CTOR_LIST_BEGIN, CTOR_LIST_END,
+ DTOR_LIST_BEGIN, DTOR_LIST_END): change type of
+ __CTOR_LIST__ from func_ptr array to just func_ptr, to
+ avoid extra alignment imposed on arrays.
+ * mips/elf64.h (CTOR_LIST_BEGIN, CTOR_LIST_END,
+ DTOR_LIST_BEGIN, DTOR_LIST_END): Likewise.
+
+ * mips.h: Clean up comments and spacing near MASKs.
+ (TARGET_UNIX_ASM): Delete.
+ (MASK_MIPS16, MASK_NO_CHECK_ZERO_DIV, MASK_CHECK_RANGE_DIV,
+ MASK_UNINIT_CONST_IN_RODATA): Change values to make mask
+ values contiguous.
+
+2000-08-05 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (print_char_table): Add entries for the X/Open '
+ format flag (print decimals with locale's thousands grouping
+ character). Make %C expect wint_t.
+ (check_format_info): If pedantic, warn when the %n$ operand
+ number form is used. Allow for the ' flag; warn about it if
+ pedantic.
+
+2000-08-05 Zack Weinberg <zack@wolery.cumb.org>
+
+ * i386.h (FUNCTION_OK_FOR_SIBCALL): Not OK if DECL's return
+ type is a float mode, cfun->decl's return type is not, and
+ TARGET_FLOAT_RETURNS_IN_80387.
+
+2000-08-04 Andreas Schwab <schwab@suse.de>
+
+ * cppmain.c (cb_def_pragma): Skip the first two tokens from the
+ token list, which are always `#' and `pragma'.
+
+2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
+
+ * tree.c (tree_expr_nonnegative_p): Move to...
+ * fold-const.c: ... here. Also handle BIND_EXPR and RTL_EXPR.
+ (rtl_expr_nonnegative_p): New.
+ * tree.h: Add prototype for rtl_expr_nonnegative_p.
+
+ * real.h (CONST_DOUBLE_LOW, CONST_DOUBLE_HIGH, CONST_DOUBLE_MEM,
+ CONST_DOUBLE_CHAIN: Move to...
+ * rtl.h: ...here. Use XCINT/XCEXP.
+
+ * Makefile.in: Remove toplev.o from OBJS. Add rule to make
+ libbackend.a; add libbackend.a to STAGESTUFF. Add BACKEND
+ variable. Use BACKEND when linking cc1, not OBJS. Add BACKEND
+ to VOL_FILES.
+
+ * objc/Make-lang.in (cc1obj): Link with $(BACKEND).
+
+2000-08-05 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * config/c4x/c4x.md (return_indirect_internal): New.
+ * config/c4x/c4x.c (c4x_expand_epilogue): Use it.
+
+2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (time_char_table): Mark up formats added in C99 and
+ make other corrections. %D and %g were added in C99. %Og is an
+ extension. %EX is permitted. %R, %T, %n, %r, %t were added in
+ C99. %e was added in C99. %Oj is an extension. %G and %z are in
+ C99 rather than GNU extensions, but %OG and %Oz are extensions.
+ %h was added in C99. %C was added in C99. %OY and %OC are
+ extensions. Add the C99 format %F.
+ (check_format_info): If pedantic and not in C99 mode, warn for C99
+ formats, %E and %O.
+
+Fri Aug 4 23:01:58 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * function.c (schedule_fixup_var_refs): New function, broken out
+ of put_reg_into_stack.
+ (put_reg_into_stack): Use it.
+ (put_var_into_stack): In CONCAT case, fixup up references for
+ components only after fixing up references to the whole concat.
+
+2000-08-04 Rodney Brown <RodneyBrown@pmsc.com>
+
+ * alias.c (mark_constant_function): Use INSN_P.
+ (init_alias_analysis): Likewise.
+ * combine.c (combine_instructions): Use INSN_P.
+ (can_combine_p): Likewise.
+ (try_combine): Likewise.
+ (distribute_notes): Likewise.
+ (distribute_links): Likewise.
+ * cse.c (cse_around_loop): Use INSN_P.
+ (invalidate_skipped_block): Likewise.
+ (cse_set_around_loop): Likewise.
+ (cse_end_of_basic_block): Likewise.
+ (delete_trivially_dead_insns): Likewise.
+ * emit-rtl.c (unshare_all_rtl_again): Use INSN_P.
+ (unshare_all_rtl_1): Likewise.
+ (next_cc0_user): Likewise.
+ (try_split make_insn_raw): Likewise.
+ (remove_unnecessary_notes): Likewise.
+ * final.c (shorten_branches): Use INSN_P.
+ (leaf_renumber_regs): Likewise.
+ (leaf_renumber_regs_insn): Likewise.
+ * flow.c (find_label_refs): Use INSN_P.
+ (verify_wide_reg): Likewise.
+ (notice_stack_pointer_modification): Likewise.
+ (count_or_remove_death_notes): Likewise.
+ (verify_flow_info): Likewise.
+ (clear_log_links): Likewise.
+ * function.c (fixup_var_refs_insns): Use INSN_P.
+ (compute_insns_for_mem): Likewise.
+ * gcse.c (alloc_gcse_mem): Use INSN_P.
+ (compute_sets): Likewise.
+ (compute_hash_table): Likewise.
+ (classic_gcse): Likewise.
+ (cprop): Likewise.
+ (insert_insn_end_bb): Likewise.
+ (delete_null_pointer_checks_1): Likewise.
+ * global.c (expand_preferences): Use INSN_P.
+ (build_insn_chain): Likewise.
+ * graph.c (node_data): Use INSN_P.
+ * haifa-sched.c (priority): Use INSN_P.
+ (rm_line_notes): Likewise.
+ (rm_other_notes): Likewise.
+ (find_insn_reg_weight): Likewise.
+ (init_target_units): Likewise.
+ (schedule_block): Likewise.
+ (compute_block_forward_dependences): Likewise.
+ (debug_dependencies): Likewise.
+ (set_priorities): Likewise.
+ * integrate.c (function_cannot_inline_p): Use INSN_P.
+ (save_parm_insns): Likewise.
+ (copy_insn_list): Likewise.
+ * jump.c (mark_all_labels): Use INSN_P.
+ (never_reached_warning): Likewise.
+ * lcm.c (optimize_mode_switching): Use INSN_P.
+ * local-alloc.c (validate_equiv_mem): Use INSN_P.
+ (memref_used_between_p): Likewise.
+ (update_equiv_regs): Likewise.
+ (block_alloc): Likewise.
+ (no_conflict_p): Likewise.
+ * loop.c (scan_loop): Use INSN_P.
+ (find_and_verify_loops): Likewise.
+ (count_loop_regs_set): Likewise.
+ (loop_reg_used_before_p): Likewise.
+ (strength_reduce): Likewise.
+ (recombine_givs): Likewise.
+ (check_dbra_loop): Likewise.
+ (load_mems): Likewise.
+ (try_copy_prop): Likewise.
+ * print-rtl.c (print_rtx): Use INSN_P.
+ * recog.c (find_single_use): Use INSN_P.
+ * reg-stack.c (stack_regs_mentioned): Use INSN_P.
+ (next_flags_user): Likewise.
+ (swap_rtx_condition): Likewise.
+ * regmove.c (mark_flags_life_zones): Use INSN_P.
+ (optimize_reg_copy_1): Likewise.
+ (optimize_reg_copy_2): Likewise.
+ (optimize_reg_copy_3): Likewise.
+ (reg_is_remote_constant_p): Likewise.
+ (fixup_match_2): Likewise.
+ (regmove_optimize): Likewise.
+ (fixup_match_1): Likewise.
+ * regrename.c (build_def_use): Use INSN_P.
+ (replace_reg_in_block): Likewise.
+ (consider_use): Likewise.
+ * reload.c (find_equiv_reg): Use INSN_P.
+ * reload1.c (reload): Use INSN_P.
+ (maybe_fix_stack_asms): Likewise.
+ (calculate_needs_all_insns): Likewise.
+ (reload_as_needed): Likewise.
+ (emit_output_reload_insns): Likewise.
+ (delete_address_reloads_1): Likewise.
+ (reload_cse_regs_1): Likewise.
+ (reload_combine): Likewise.
+ (reload_cse_move2add): Likewise.
+ * reorg.c (redundant_insn): Use INSN_P.
+ (dbr_schedule): Likewise.
+ * resource.c (find_dead_or_set_registers): Use INSN_P.
+ (mark_target_live_regs): Likewise.
+ * rtlanal.c (reg_used_between_p): Use INSN_P.
+ (reg_referenced_between_p): Likewise.
+ (reg_set_between_p): Likewise.
+ (reg_set_p): Likewise.
+ (single_set): Likewise.
+ (multiple_sets): Likewise.
+ (find_last_value): Likewise.
+ (reg_set_last): Likewise.
+ (find_reg_note): Likewise.
+ (find_regno_note): Likewise.
+ * sibcall.c (sequence_uses_addressof): Use INSN_P.
+ * simplify-rtx.c (cselib_process_insn): Use INSN_P.
+ * ssa.c (find_evaluations): Use INSN_P.
+ (rename_block): Likewise.
+ (rename_equivalent_regs): Likewise.
+ * unroll.c (loop_find_equiv_value): Use INSN_P.
+ (set_dominates_use): Likewise.
+ * varasm.c (mark_constant_pool): Use INSN_P.
+ (mark_constants): Likewise.
+ * config/alpha/alpha.c (alpha_does_function_need_gp): Use INSN_P.
+ (alphaev4_next_group): Likewise.
+ (alphaev5_next_group): Likewise.
+ * config/c4x/c4x.c (c4x_process_after_reload): Use INSN_P.
+ (c4x_rptb_rpts_p): Likewise.
+ * config/mips/mips.c (mips16_optimize_gp): Use INSN_P.
+ * config/rs6000/rs6000.c (uses_TOC): Use INSN_P.
+ (rs6000_adjust_priority): Likewise.
+ * config/sh/sh.c (sh_loop_align): Use INSN_P.
+ (machine_dependent_reorg): Likewise.
+ (split_branches): Likewise.
+ * config/tahoe/tahoe.c (tahoe_cmp_check): Use INSN_P.
+
+Fri Aug 4 11:43:49 2000 John Wehle (john@feith.com)
+
+ * combine.c (recog_for_combine): Remove the old notes
+ prior to attempting to recognize the new pattern.
+ (distribute_notes): Ignore REG_NONNEG notes.
+
+2000-08-04 Chandrakala Chavva <cchavva@redhat.com>
+
+ * varasm.c (output_constructor): Add .align 0 for packed vars.
+
+2000-08-04 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * configure.in: Use default thread_file even when enable_threads is
+ yes or dce because hpux10.20 pa port uses MULTILIB implementation.
+ * configure: Rebuilt.
+
+ * gthr-dce.h (__gthread_objc_condition_allocate): Fix typo.
+
+2000-08-04 Donn Terry (donnte@microsoft.com)
+
+ * prefix.c (translate_name): Don't strip trailing DIR_SEPARATOR.
+
+2000-08-04 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * i386/x-djgpp: Delete code that conditionally modifies target_alias.
+ Delete code that conditionally modifies 'version'.
+ Delete X_CPPFLAGS. Add comment for SYSTEM_HEADER_DIR.
+ * i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): New macro.
+ * gcc.c (main): Use it.
+ * config/i386/xm-djgpp.h (UPDATE_PATH_HOST_CANONICALIZE): New macro.
+ * prefix.c (update_path): Use it.
+ * i386/djgpp.h (STANDARD_INCLUDE_DIR): Define.
+ (MD_EXEC_PREFIX): Set to '/dev/env/DJDIR/bin/'.
+ (ASM_OUTPUT_SECTION_NAME): Add code attribute to sections containing
+ code.
+ (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Default to true.
+ (SUBTARGET_SWITCHES): Adjust.
+ (WCHAR_UNSIGNED, WCHAR_TYPE_SIZE, WCHAR_TYPE): Undefine before
+ defining.
+ (WINT_TYPE, SIZE_TYPE, PTRDIFF_TYPE): Define.
+
+2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.h (flag_isoc94): Declare.
+ * c-decl.c (flag_isoc94): Define.
+ (c_decode_option): Set flag_isoc94 as appropriate.
+ * c-common.c (T_PD, T_IM, T_UIM): Define.
+ (format_char_info): Add tlen and jlen.
+ (print_char_table): Add entries for %t and %j. Allow %zn. Allow
+ %F. Allow %lf.
+ (scan_char_table): Add entries for %t and %j. Allow %F. Allow
+ %l[.
+ (time_char_table): Add NULL entries for %t and %j.
+ (check_format_info): Allow for %t and %j. Warn for %F if pedantic
+ and not C99. Warn for %lc, %ls and %l[ if pedantic and not C94.
+ Warn for printf %lf if pedantic and not C99. Don't warn for empty
+ precision. Allow precision argument to be unsigned int. If
+ pedantic, warn for %p passed an argument not a pointer to possibly
+ qualified void or a possibly qualified character type, and for
+ pointer targets of the wrong sign, except for character pointers.
+
+2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * ginclude/stddef.h: Don't declare wint_t unless __need_wint_t.
+ * c-common.h (enum c_tree_index): Add CTI_WINT_TYPE.
+ (wint_type_node): Define.
+ * c-decl.c (WINT_TYPE): Define.
+ (init_decl_processing): Create the wint_type_node type.
+ * c-common.c (T_WI): Define.
+ (print_char_table): Use T_WI for %lc format.
+
+2000-08-04 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/: Verified that the MSDOS patch does not break
+ the UNIX functionality and applied the next three patches
+ from July:
+
+2000-07-28 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * fixinc/fixfixes.c (main) [__MSDOS__]: Avoid overwriting the
+ output file with the temporary one by appending ".X" to generate
+ the temporary fuile's name. If the output file already has an
+ extension, replace it with ".X".
+
+ * fixinc/fixincl.c (fix_with_system) [__MSDOS__]: Use $ORIGDIR,
+ not $DESTDIR, to find applyfix. Use sprintf instead of snprintf;
+ reallocate the command buffer while copying the command-line
+ argument. Redirect the output directly to the temporary file,
+ instead of going through another temporary file.
+ (process): Close the temporary file before unlinking it.
+ (machine_matches) [__MSDOS__]: If the machine doesn't match, set
+ the FD_SKIP_TEST flag. Pay attention to the FD_MACH_IFNOT flag.
+ (run_compiles): Pass p_fixd argument to machine_matches, as it
+ expects.
+
+ * fixinc/fixincl.sh: Export ORIGDIR. If $DJDIR is set in the
+ environment, assume there are no symlinks in the include
+ directory. When cleaning up the DONE files, look for them
+ case-insensitively. Don't try to remove symlinks if they aren't
+ there.
+
+ * fixinc/fixlib.c (make_raw_shell_str): Accept new argument smax;
+ all callers changed. Declare pz "const char *", to avoid compiler
+ warnings.
+
+ * fixinc/fixlib.h (ENV_TABLE): Get ORIGDIR from the environment.
+ Change prototype of make_raw_shell_str.
+
+2000-07-27 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * fixinc/fixincl.c [__MSDOS__]: Don't include "server.h".
+ (initialize) [__MSDOS__]: Use tempnam.
+ (initialize): Don't use SIGPIPE if it is not defined.
+
+ * fixinc/fixfixes.c (main) [__MSDOS__]: freopen for stdout should
+ return stdout.
+
+2000-07-25 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fix*.[ch]: substantially reworked to make it possible
+ to run this program without using fork(2) or pipe(2) (i.e. in
+ a DOS environment).
+
+2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * cppdefault.h (WINT_TYPE): Define.
+ * cppinit.c (builtin_array): Define __WINT_TYPE__.
+ * tradcpp.c (initialize_builtins): Define __WINT_TYPE__.
+ * tm.texi (NO_BUILTIN_WINT_TYPE, WINT_TYPE): Document.
+
+Fri Aug 4 06:53:46 2000 Clinton Popetz <cpopetz@cygnus.com>
+
+ * (mips_legitimate_address_p): Don't allow register+offset
+ if the offset is large and negative, and we are compiling
+ for 64 bit registers.
+
+2000-08-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * gencodes.c (main): Define CODE_FOR_nothing as the last possible
+ insn_code_number + 1.
+
+2000-08-04 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c (function_prologue): Rearrange code for conciseness.
+ (function_epilogue): Likewise.
+ * h8300.h (OK_FOR_U): Fix formatting.
+
+ * cse.c: Fix a comment typo. Fix formatting.
+
+2000-08-03 Richard Henderson <rth@cygnus.com>
+
+ * config/i386/i386.md (return_indirect_internal): New.
+ * config/i386/i386.c (ix86_expand_epilogue): Use it.
+
+2000-08-03 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplex.c (parse_name): Might have to glue a CPP_OTHER token
+ before the name.
+ (lex_line): Glue @ onto the beginning of identifiers and
+ string constants, in Objective-C mode.
+ (output_token, spell_token): Handle CPP_OSTRING.
+ (can_paste, maybe_paste_with_next): Handle pasting @ onto the
+ beginning of a NAME or a STRING, in objc mode.
+
+ * cpplib.c (get_define_node): Do not permit identifiers that
+ begin with @ to be #defined.
+ * cppmacro.c (CAN_PASTE_AFTER): Add CPP_OTHER.
+ * cpplib.h (TTYPE_TABLE): Add CPP_OSTRING.
+
+ * c-lang.c, objc/objc-act.c (build_objc_string): Delete.
+ * c-tree.h (build_objc_string): Delete prototype.
+ * objc/objc-tree.def: Delete OBJC_STRING_CST.
+ * c-lex.c (yylex): Use build_string for all three kinds of strings.
+
+ * c-parse.in, objc/objc-act.c: Update commentary.
+
+2000-08-03 Mark Mitchell <mark@codesourcery.com>
+
+ * extend.texi: Fix typo in last change.
+
+ * extend.texi: Add commentary on statement-expressions and their
+ interactions with C++.
+
+2000-08-03 Nick Clifton <nickc@cygnus.com>
+
+ * dwarf2.h (DW_LANG_Java): Change value to 0x000b.
+ * dwarf.h (LANG_JAVA): Change value to 0x000b.
+
+2000-08-03 Anthony Green <green@cygnus.com>
+
+ * dwarf2out.c (gen_compile_unit_die): Add java language support.
+ (add_bound_info): Check for java language.
+ (is_java): New function.
+ * dwarfout.c (output_compile_unit_die): Ditto.
+ * dwarf.h (dwarf_source_language): Add java source language type.
+ * dwarf2.h (dwarf_source_language): Ditto.
+
+Thu Aug 3 20:32:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * reg-stack.c (subst_stack_regs_pat): Use replace_reg to swap
+ operands.
+
+ * i386.c (ix86_expand_branch): Mode of comparison in
+ IF_THEN_ELSE is VOIDmode.
+
+Thu Aug 3 10:05:53 2000 Akiko Matsushita <matusita@sra.co.jp>
+
+ * gengenrtl.c, rtl.c: Avoid #elif.
+
+2000-08-03 Michael Poole <poole@troilus.org>
+
+ * tm.texi (Register Classes): Clarify order of sub-initializers
+ in REG_CLASS_CONTENTS.
+
+Thu Aug 3 15:53:03 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ From SAITOH Masanobu:
+ * sh.h (ASM_OUTPUT_REG_PUSH): Fix syntax.
+
+2000-08-03 David Billinghurst <David.Billinghurst@riotinto.com.au>
+
+ * config/i386/cygwin.h: Remove -remap from CPP_SPEC since this option
+ is not supported by tradcpp and isn't actually needed for cygwin.
+
+2000-08-03 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c: Fix a comment typo.
+ * h8300.h (OK_FOR_U): Accept a 32-bit constant address on H8S.
+
+ * jump.c: Fix formatting.
+
+ * toplev.c: Fix formatting.
+
+Thu Aug 3 01:05:32 2000 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (find_auto_inc): Verify that we've got a REG before
+ peeking at its regno. Fail, don't abort if we can't find
+ the increment of the desired register.
+
+ * pa.md (shadd height reduction patterns/splitters): Remove.
+
+2000-08-02 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64-protos.h (flag_ssa): Declare.
+ * config/ia64/ia64.md (movti_internal, movti_internal+1): New.
+
+2000-08-02 Mark Mitchell <mark@codesourcery.com>
+
+ * dce.c: Remove all uses of assert.
+ * dwarf2out.c: Likewise.
+ * dwarfout.c: Likewise.
+ * ssa.c: Likewise.
+
+2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
+
+ * gcc.h (lang_specific_driver): Constify second argument.
+ * gcc.c (translate_options, process_command, main): Likewise.
+ Constify variables to match. Cast second argument to
+ pexecute.
+
+ * cppspec.c, gccspec.c: Adjust type of second argument to
+ lang_specific_driver, and update code as necessary.
+
+2000-08-02 Jakub Jelinek <jakub@redhat.com>
+
+ * loop.c (scan_loop): Ensure update_end label does not
+ go away until reg_scan_update is run.
+
+2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
+
+ * c-common.h: Prototype min_precision and c_build_qualified_type here...
+ * c-tree.h: ... not here.
+ * errors.h: Prototype fancy_abort.
+
+ * emit-rtl.c (gen_lowpart_common): Move variable 'c' into
+ HOST_BITS_PER_WIDE_INT == 64 ifdef block.
+ * regrename.c (regrename_optimize): Make control flow explicit.
+ (replace_reg_in_block): Initialize reg_use to 0.
+
+ * i386.c (legitimate_address_p): Rename error label to
+ report_error to avoid namespace clash.
+
+2000-08-02 Kazu Hirata <kazu@hxi.com>
+
+ * fold-const.c: Fix formatting.
+
+Wed Aug 2 16:26:15 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (legitimate_address_p): Accept other bases than
+ pic_offset_table_rtx for GOTOFF constructs.
+
+Wed Aug 2 15:59:34 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (shift to lea splitter): Use const_int_operand.
+
+2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppexp.c, cppinit.c, cpplex.c, cpplib.c, cppmacro.c,
+ cppspec.c: Do not use 'legal' or 'illegal' in error messages
+ and comments.
+
+ * cppmain.c (cb_define, cb_undef): Don't generate any output
+ if not done_initializing.
+ * cpplex.c (maybe_paste_with_next): When the token after a ##
+ is an omitted rest argument, only delete the token before it
+ if that token is a comma. Do not warn about bogus token
+ pastes for , ## rest_arg.
+
+ * cpp.texi: Update.
+ * cpp.1: Regenerate.
+
+2000-08-02 Fred Fish <fnf@be.com>
+
+ * config/i386/beos-elf.h (STARTFILE_SPEC): Add i386-mcount.o
+ when user gives -p option. Add init_term_dyn.o for BeOS 5.0
+ and later.
+
+ * config/i386/beos-elf.h (INCLUDE_DEFAULTS): Add additional
+ Be directories to search path.
+
+ Remove support for __declspec(dllimport) and __declspec(dllexport).
+ This is leftover cruft from the earlier BeOS gcc port when BeOS
+ used Microsoft's PE object file format.
+ * configure.in (i*86-*-beoself): Remove extra_objs=winnt.o.
+ * config/i386/t-beos (winnt.o): Remove Makefile frag.
+ * config/i386/beos-elf.h (TARGET_NOP_FUN_DLLIMPORT): Remove.
+ (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ (MERGE_MACHINE_DECL_ATTRIBUTES): Remove.
+ (REDO_SECTION_INFO_P): Remove.
+ (ASM_EXPORT_DECL): Remove.
+ (ASM_DECLARE_FUNCTION_NAME): Remove.
+ (ASM_DECLARE_OBJECT_NAME): Remove.
+ (ASM_OUTPUT_ALIGNED_COMMON): Remove.
+ (ASM_OUTPUT_ALIGNED_DECL_COMMON): Remove.
+ (ASM_OUTPUT_ALIGNED_LOCAL): Remove.
+ (STRIP_NAME_ENCODING): Remove.
+
+ Remove support for obsolete version of BeOS that is no longer
+ supported by Be.
+ * configure.in (i*86-*-beospe*): Remove.
+ * config/i386/beos-pe.h: Remove.
+
+2000-08-01 Jeffrey Oldham <oldham@codesourcery.com>
+ Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (OBJS): Added dce.o.
+ (ssa.o): Updated target to include ssa.h.
+ (flow.o): Likewise.
+ (toplev.o): Likewise.
+ (dce.o): Created target.
+ * basic-block.h: Added comments.
+ (INVALID_BLOCK): Added definition.
+ (connect_infinite_loops_to_exit): Added declaration.
+ Moved SSA declarations to ssa.h.
+ * flow.c: Added inclusion of ssa.h.
+ (struct depth_first_search_dsS, depth_first_search_ds):
+ Added definitions.
+ (compute_immediate_postdominators): Added definition.
+ (connect_infinite_loops_to_exit): Likewise.
+ (flow_dfs_compute_reverse_init): Likewise.
+ (flow_dfs_compute_reverse_add_bb): Likewise.
+ (flow_dfs_compute_reverse_execute): Likewise.
+ (flow_dfs_compute_reverse_finish): Likewise.
+ * rtl.h (rtx/in_struct): Added use to determine insn necessity.
+ (LABEL_P): Added definition.
+ (JUMP_P): Likewise.
+ (NOTE_P): Likewise.
+ (BARRIER_P): Likewise.
+ (JUMP_TABLE_DATA_P): Likewise.
+ (INSN_DEAD_CODE_P): Likewise.
+ * ssa.c: Replaced inclusions with ssa.h inclusion.
+ (CONVERT_HARD_REGISTER_TO_SSA_P): Moved to ssa.h.
+ (rename_registers): Removed unnecessary variables.
+ * ssa.h: Created by moving declarations from ssa.c and
+ basic-block.h.
+ * timevar.def: Defined TV_DEAD_CODE_ELIM.
+ * toplev.c: Added ssa.h inclusion.
+ (dump_file_index): Added DFI_dce.
+ (dump_file): Added "dce" entry.
+ Defined flag_ssa.
+ (f_options): Added dce entry.
+ * invoke.texi: Document -fdce. Emphasize experimental status of
+ -fssa.
+ * dce.c: New file.
+
+2000-08-01 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpperror.c (v_message): Split into _cpp_begin_message and
+ v_message macro. All callers updated.
+ (_cpp_begin_message): Do inhibit_errors/inhibit_warnings
+ checks here.
+
+ * cppfiles.c (cpp_syshdr_flags): New function.
+ (read_include_file): Don't call cpp_output_tokens. Call
+ enter_file hook.
+ * cppinit.c (dump_macros_helper): Moved to cppmain.c.
+ (cpp_reader_init): Don't initialize token_buffer. Call
+ _cpp_init_internal_pragmas.
+ (cpp_cleanup): Don't clear token_buffer.
+ (cpp_start_read): Don't worry about output from -D processing.
+ Don't call cpp_output_tokens.
+ (cpp_finish): Don't dump macros here. Don't call
+ cpp_output_tokens.
+ * cppmacro.c (_cpp_dump_definition): Rename
+ cpp_dump_definition. Write directly to a FILE *.
+ (dump_funlike_macro): Delete.
+ (dump_macro_args): New.
+
+ * cpplex.c (TOKEN_LEN): Convert to inline function.
+ (_cpp_grow_token_buffer, safe_fwrite, cpp_output_tokens,
+ cpp_scan_line, _cpp_dump_list): Delete.
+ (cpp_printf, cpp_output_list): New.
+ (output_line_command): Don't worry about entering or leaving files.
+ (cpp_scan_buffer): Just output each token as we hit it.
+ (process_directive): Don't call cpp_output_tokens.
+ (_cpp_glue_header_name): Don't use token_buffer.
+ (output_token, dump_param_spelling): Write directly to a FILE *.
+
+ * cpplib.c (pass_thru_directive, dump_macro_name,
+ pragma_dispatch, do_pragma_gcc): Delete.
+ (do_define, do_undef, parse_include, do_line, do_ident, do_pragma,
+ do_pragma_poison, cpp_pop_buffer): Call the appropriate hook
+ functions.
+ (do_error, do_warning, pragma_dependency): Call
+ _cpp_begin_message, then cpp_output_list.
+ (cpp_register_pragma, cpp_register_pragma_space,
+ _cpp_init_internal_pragmas): New.
+ (do_pragma): Walk the pragmas table here.
+ (do_pragma_once, do_pragma_poison, do_pragma_system_header,
+ do_pragma_dependency): Return void.
+ (do_pragma_implementation): Moved to cppmain.c.
+
+ * cpplib.h: Update prototypes.
+ (struct cpp_reader): Remove printer, token_buffer,
+ token_buffer_size, and limit. Add struct cb, and pragmas.
+ (struct cpp_printer): Remove last_id and written.
+ (CPP_WRITTEN, CPP_PWRITTEN, CPP_SET_WRITTEN,
+ CPP_ADJUST_WRITTEN): Delete.
+ * cpphash.h: Update prototypes.
+ (ufputs): New wrapper.
+
+ * cppmain.c (cb_define, cb_undef, cb_include, cb_ident,
+ cb_enter_file, cb_leave_file, cb_def_pragma): New functions.
+ (main): Set up callbacks. Register #pragma implementation.
+ Dump macros from here.
+
+2000-08-01 Geoff Keating <geoffk@cygnus.com>
+
+ * rtl.h (enum reg_note): Add REG_MAYBE_DEAD.
+ * rtl.c (reg_note_name): Add REG_MAYBE_DEAD.
+ * flow.c (propagate_one_insn): Allow deletion of prologue/epilogue
+ insns if they have a REG_MAYBE_DEAD note attached.
+ * config/rs6000/rs6000.c (rs6000_maybe_dead): New function.
+ (rs6000_emit_load_toc_table): TOC loads may go dead.
+
+2000-08-01 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.c (ia64_function_arg): Fix last change. Verify
+ type exists before using it. Use number of words as alignment
+ otherwise.
+ (ia64_function_arg_partial_nregs, ia64_function_arg_advance,
+ ia64_va_arg): Propagate ia64_function_args changes here.
+
+2000-08-01 Richard Henderson <rth@cygnus.com>
+
+ * config/elfos.h (ASM_DECLARE_OBJECT_NAME): Care for null DECL.
+ * config/ia64/sysv4.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise.
+
+2000-08-01 Bernd Schmidt <bernds@cygnus.co.uk>
+
+ From Joern Rennecke:
+ * sh.h (CPP_SPEC, TARGET_SWITCHES): Add m4-nofpu.
+ * sh.md (udivsi3, divsi3): Don't use libcalls that use the FPU
+ unless TARGET_SH3E is set.
+ * t-sh (MULTILIB_MATCHES): Add m2=m4-nofpu.
+
+ * sh.md (ashlsi3_d, ashlsi3_k): Remove, replace with
+ (ashlsi3_std): New pattern.
+ (ashlsi3 expander): Use it for TARGET_SH3.
+ * sh.c (gen_ashift): Use it instead of ashlsi3_k.
+
+Tue Aug 1 12:34:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * loop.c (canonicalize_condition): Use destination, not source to
+ determine SET's mode.
+
+2000-07-31 Mark Mitchell <mark@codesourcery.com>
+
+ * flow.c (clear_log_links): Fix typo.
+
+Mon Jul 31 22:19:24 2000 Jeffrey A Law (law@cygnus.com)
+
+ * loop.c (check_dbra_loop): Make change from July 17, 2000 work
+ on targets which need more than one insn for a compare/cbranch
+ operation.
+
+2000-07-31 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.c (ia64_function_arg): Use alignment not size
+ when computing offset.
+
+Mon Jul 31 20:35:50 2000 Denis Chertykov <denisc@overta.ru>
+
+ * genpeep.c (main): Handle DEFINE_PEEPHOLE2.
+
+2000-07-31 Geoff Keating <geoffk@cygnus.com>
+
+ * flow.c (clear_log_links): Nuke global_live_at_start and
+ global_live_at_end data, since if the log_links stuff is invalid
+ so is global_live_at_*.
+
+2000-07-31 Richard Henderson <rth@cygnus.com>
+
+ * tm.texi (Addressing Modes): Clarify PRE/POST_MODIFY descriptions.
+
+2000-07-31 Jakub Jelinek <jakub@redhat.com>
+
+ * cpplex.c (_cpp_get_line): If index is 0, return line 0 col 0.
+ (_cpp_get_token): Don't macro expand a just pasted token if it
+ was pasted at no_expand_level.
+
+2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppmacro.c (find_param, count_params, save_expansion):
+ Permit 'defined' as a macro parameter name.
+
+2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
+
+ * Makefile.in: Rename cpp to cpp0, tradcpp to tradcpp0, and
+ xcpp to cpp throughout.
+ (native): Remove unnecessary dependency on cpp.
+
+ * gcc.c (trad_capable_cpp, C specs): Rename cpp to cpp,
+ tradcpp to tradcpp0.
+ (.i spec): Add missing output-file spec to cc1 command line.
+ * objc/lang-specs.h: Rename cpp to cpp0 and/or tradcpp to tradcpp0.
+
+2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
+
+ * c-decl.c (mesg_implicit_function_declaration): Init to -1.
+ (implicit_decl_warning): New function.
+ (implicitly_declare): Use it.
+ * c-typeck.c (build_external_ref): Use implicit_decl_warning
+ to complain about implicit decls of builtins.
+
+ * c-lang.c (lang_init): Set mesg_implicit_function_declaration
+ based on pedantic && flag_isoc99, if not already set.
+ * c-tree.h: Declare mesg_implicit_function_declaration.
+ Prototype implicit_decl_warning.
+
+2000-07-30 Jeffrey D. Oldham <oldham@codesourcery.com>
+
+ * Makefile.in (ssa.o): Updated header files in dependences.
+ * basic-block.h: Added compute_immediate_postdominators declaration.
+ * config/i386/i386.h (CONVERT_HARD_REGISTER_TO_SSA_P): Added
+ definition.
+ * flow.c (compute_immediate_dominators): Updated comment.
+ (compute_immediate_postdominators): Added definition.
+ * rtl.h (HARD_REGISTER_P): Added definition.
+ * ssa.c: Include additional header files.
+ (assert): Added definition.
+ (ssa_rename_to_lookup): Added to reimplement ssa_rename_to to
+ include select hard registers.
+ (ssa_rename_to_insert): Likewise.
+ (ssa_rename_from_initialize): Likewise.
+ (ssa_rename_from_lookup): Likewise.
+ (original_register): Likewise.
+ (ssa_rename_from_insert): Added to reimplement ssa_rename_from to
+ include select hard reigsters.
+ (ssa_rename_from_traverse): Likewise.
+ (ssa_rename_from_free): Likewise.
+ (ssa_rename_from_print): Likewise.
+ (ssa_rename_from_print_1): Likewise.
+ (ssa_rename_from_hash_function): Likewise.
+ (ssa_rename_from_equal): Likewise.
+ (ssa_rename_from_delete): Likewise.
+ (simplify_to_immediate_dominators): Removed in favor of
+ flow.c:compute_immediate_dominators.
+ (find_evaluations_1): Modified to work with hard registers.
+ (insert_phi_node): Likewise.
+ (insert_phi_nodes): Likewise.
+ (struct rename_set_data): Updated prev_reg comment.
+ (create_delayed_rename): Modified to work with hard registers.
+ (RENAME_NO_RTX): Updated comment.
+ (apply_delayed_renames): Modified to work with hard registers.
+ (rename_insn_1): Likewise and added handling of CLOBBER rtls.
+ (rename_block): Updated to use revised ssa_rename_to interface.
+ (rename_registers): Updated to use revised ssa_rename_to and
+ ssa_rename_from interface.
+ (convert_to_ssa): Revised to use compute_immediate_dominators and
+ deal with hard registers.
+ (make_regs_equivalent_over_bad_edges): Modified to work with hard
+ registers. Added check for illegal unification of hard register.
+ (make_equivalent_phi_alternatives_equivalent): Modified to work
+ with hard registers.
+ (compute_conservative_reg_partition): Likewise.
+ (coalesce_if_unconflicting): Modified to work with hard registers
+ and check for conflicting hard registers.
+ (mark_phi_and_copy_regs): Revised loop to work only on pseudo
+ registers.
+ (rename_equivalent_regs_in_insn): Modified to work with hard
+ registers.
+ (record_canonical_element_1): Added definition.
+ (check_hard_regs_in_partition): Added definition.
+ (convert_from_ssa): Added data structure deallocation and check
+ for illegal hard register unification.
+ (conflict_hard_regs_p): Added definition.
+ * toplev.c (rest_of_compilation): Added comment.
+
+2000-07-31 Anthony Green <green@redhat.com>
+
+ * config/ia64/crtbegin.asm (__EH_FRAME_BEGIN__): Align correctly.
+
+2000-07-31 Jason McMullan <jmcmullan@linuxcare.com>
+
+ * builtins.c (expand_builtin_apply): Don't defer pop during
+ argument setup.
+
+2000-07-31 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * calls.c (combine_pending_stack_adjustment_and_call): Only use
+ preferred_unit_stack_boundary when it is > 1.
+
+2000-07-31 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (init_function_format_info): Add C99 format functions
+ in C99 mode.
+
+ * c-decl.c (get_parm_info): Don't treat 'const void', 'volatile
+ void' or 'register void' as being the special case of 'void' alone
+ in a parameter list.
+
+ * c-typeck.c (build_c_cast): Change -Wcast-qual pedwarn for
+ discarding qualifiers into a plain warning.
+
+2000-07-31 Kazu Hirata <kazu@hxi.com>
+
+ * combine.c: Fix formatting.
+
+ * h8300.md: Fix formatting.
+
+ * local-alloc.c: Fix formatting.
+
+ * h8300.c (get_shift_alg): Remove the variable alg.
+ (emit_a_shift): Rearrange code to improve readability.
+
+ * h8300.md (movsi_h8300hs): Rearrange code to improve readability.
+
+ * h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and
+ HImode on all architectures and a combination of HImode and SImode
+ on H8/300H and H8S.
+
+ * h8300.c (split_adds_subs): Rearrange code for conciseness.
+
+Mon Jul 31 12:27:55 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (addsi to lea splitter, ashlqi3_1_lea): Fix bugs
+ in my last checkin.
+
+Mon Jul 31 10:41:01 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (extract_insn): Set operand_mode according to
+ operand if match_operand is VOIDmode.
+
+Mon Jul 31 10:36:38 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (validate_replace_rtx_1): Do not abort for (nil) expression.
+
+2000-07-31 Geoff Keating <geoffk@cygnus.com>
+
+ * c-parse.in (extdefs): Call ggc_collect between external
+ definitions.
+
+2000-07-30 Michael Hayes <mhayes@cygnus.com>
+ Richard Henderson <rth@cygnus.com>
+
+ * Makefile.in (OBJS): Add doloop.o.
+ * doloop.c: New file.
+
+ * final.c (insn_current_reference_address): Return 0 before final.
+ * flags.h (flag_branch_on_count_reg): Fix typos in commentary.
+ * jump.c (any_uncondjump_p): Likewise.
+ * loop.c (indirect_jump_in_function): Make static.
+ (strength_reduce): Call doloop_optimize.
+ (insert_bct, instrument_loop_bct): Remove.
+ * loop.h (doloop_optimize): Prototype.
+ * recog.c (split_all_insns): Split all INSN_P.
+ * toplev.c (flag_branch_on_count_reg): Default on.
+
+ * config/c4x/c4x.c (c4x_optimization_options): Don't set
+ flag_branch_on_count_reg.
+ * config/i386/i386.c (override_options): Likewise.
+ * config/rs6000/rs6000.c (optimization_options): Likewise.
+
+ * config/i386/i386.md (decrement_and_branch_on_count): Remove.
+ (doloop_end): New.
+ (dbra_ge): Remove, as well as all it's splitters.
+
+ * config/rs6000/rs6000.md (decrement_and_branch_on_count): Remove.
+ (doloop_end): New.
+
+ * config/ia64/ia64-protos.h (ar_lc_reg_operand): Declare.
+ (ia64_register_move_cost): Declare.
+ * config/ia64/ia64.c (ar_lc_reg_operand): New.
+ (struct ia64_frame_info): Add ar_size.
+ (ia64_compute_frame_size): Set it.
+ (save_restore_insns): Save and restore ar.lc.
+ (ia64_register_move_cost): New, moved from header file. Handle
+ application registers.
+ (REG_AR_PFS, REG_AR_EC): Remove. Replace with AR_*_REGNUM numbers.
+ (emit_insn_group_barriers): Special case doloop_end_internal.
+ (ia64_epilogue_uses): Mark ar.lc live at end.
+ * config/ia64/ia64.h (AR_CCV_REGNUM, AR_LC_REGNUM): New registers.
+ (AR_EC_REGNUM, AR_PFS_REGNUM): New registers.
+ (FIRST_PSEUDO_REGISTER): Make room.
+ (AR_M_REGNO_P, AR_I_REGNO_P, AR_REGNO_P): New.
+ (FIXED_REGISTERS, CALL_USED_REGISTERS): Update.
+ (REG_ALLOC_ORDER): Update.
+ (HARD_REGNO_MODE_OK): Update.
+ (REGISTER_NAMES): Update.
+ (enum reg_class): Add AR_M_REGS and AR_I_REGS.
+ (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update.
+ (REGNO_REG_CLASS): Update.
+ (LEGITIMATE_ADDRESS_DISP): Displacement range is 9 bits, not 10.
+ (REGISTER_MOVE_COST): Move out of line.
+ (PREDICATE_CODES): Update.
+ * config/ia64/ia64.md (movdi patterns): Handle ar register classes.
+ (addsi3_plus1_alt, adddi3_plus1_alt): New.
+ (shladd_elim splitter): Allow constants in the predicate.
+ (doloop_end, doloop_end_internal): New.
+
+2000-07-30 Richard Henderson <rth@cygnus.com>
+
+ * genattrtab.c (struct insn_def): Add lineno member.
+ (struct insn_ent): Likewise.
+ (struct attr_desc): Likewise.
+ (struct delay_desc): Likewise.
+ (struct function_unit_op): Likewise.
+ (struct function_unit): Likewise.
+ (check_attr_value): Use message_with_line.
+ (check_defs): Likewise.
+ (expand_units): Likewise.
+ (check_attr_test): Take a lineno argument.
+ (gen_attr): Likewise.
+ (gen_insn): Likewise.
+ (gen_delay): Likewise.
+ (gen_unit): Likewise.
+ (main): Give it to them.
+ (convert_set_attr_alternative): Take an insn_def argument
+ instead of num_alt and insn_index.
+ (convert_set_attr): Likewise.
+ (write_test_expr): Protect INSN_ADDRESSES load
+ with INSN_ADDRESSES_SET_P.
+
+2000-07-30 Richard Henderson <rth@cygnus.com>
+
+ * flow.c (init_propagate_block_info): Use pc_set.
+
+Sun Jul 30 20:58:34 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (*lea_general_[123]) New insns and splits.
+ (addsi3 to lea splitter): Handle other modes too.
+ (shlsi3 to lea splitter): Likewise.
+ (addhi_1_lea, shlhi_1_lea): New patterns.
+ (addhi_1, shlhi_1): Conditionize by PARTIAL_REG_STALL.
+
+Sun Jul 30 20:51:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (general_operand, nonimmediate_operand): Accept
+ any mode for VOIDmode CONSTANT_P operands.
+
+Sun Jul 30 20:42:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (try_replace_reg): Use validate_replace_rtx_subexp
+ instead of replace_rtx.
+ * recog.c (validate_replace_rtx_subexp): New function.
+ * recog.h (validate_replace_rtx_subexp): Declare.
+
+Sun Jul 30 20:38:26 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (simplify_set, make_extraction, make_compound_operation
+ make_field_assignment): Use full mask instead of GET_MODE_MASK (mode)
+ as force_to_mode argument.
+
+Sun Jul 30 20:30:41 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (if_then_else_cond): Be sure that mode fits in
+ HOST_WIDE_INT.
+
+Sun Jul 30 20:27:36 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (record_promoted_value): Allow bitsize of mode
+ to be equivalent to HOST_BITS_PER_WISE_INT.
+
+Sun Jul 30 20:25:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * function.c (assign_stack_local_1, assign_stack_temp_for_type):
+ Do not call gen_mode_alignment when mode is BLKmode.
+
+Sun Jul 30 20:21:54 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * loop.c (express_from_1): Fix call of simplify_gen_binary.
+
+Sun Jul 30 20:08:37 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_relational_operation): Verify that mode ==
+ VOIDmode implies both operands to be VOIDmode.
+ (simplify_ternary_operation): Compute properly the mode of comparison.
+ * combine.c (combine_simplify_rtx): Likewise.
+
+2000-07-25 Michael Hayes <mph@paradise.net.nz>
+
+ * basic-block.h (struct loops): New field rc_order.
+ * flow.c (flow_loops_cfg_dump): Dump rc_order if computed.
+ (flow_loops_free): Free rc_order.
+ (flow_depth_first_order_compute): New parameter rc_order.
+ (flow_loops_find): Allocate rc_order and swap usage with
+ dfs_order.
+
+2000-07-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+ Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (set_ldp_prologue): Add for RTL prologue/epilogue.
+ (push_st, push_dp, pop_st, pop_dp, popqi_unspec): Likewise.
+ (nodb_call, return_from_epilogue): Likewise.
+ (return_from_interrupt_epilogue, prologue, epilogue): Likewise.
+ * config/c4x/c4x.c (c4x_expand_prologue, c4x_expand_eplilogue): Add.
+ * config/c4x/c4x-protos.h (c4x_interrupt_function_p): Add.
+ (c4x_expand_prologue, c4x_expand_epilogue): Likewise.
+ (c4x_valid_type_attribute_p): Likewise.
+ * config/c4x/c4x.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
+ (FUNCTION_BLOCK_PROFILER_EXIT): Convert to emit RTL.
+
+2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_emit_move_sequence): Use loadqi_big_constant
+ and loadhi_big_constant if applicable.
+ * config/c4x/c4x.md (loadqi_big_constant, loadhi_big_constant): Tweak
+ and add new splitter.s
+
+2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_rptb_insert): Make more robust.
+
+2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (ASM_FORMAT_PRIVATE_NAME): Output $ in label.
+
+2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (IS_XXX_REGNO): Rewrite to avoid unsigned warnings.
+
+2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/libgcc.S (divqf3): Improve accuracy.
+
+2000-07-27 Mark Mitchell <mark@codesourcery.com>
+
+ Put phi nodes after NOTE_INSN_BASIC_BLOCK.
+ * rtl.h (NOTE_INSN_BASIC_BLOCK_P): New macro.
+ * bb-reorder.c (get_next_bb_note): Use NOTE_INSN_BASIC_BLOCK_P.
+ (get_prev_bb_note): Likewise.
+ (remove_scope_notes): Likewise.
+ * flow.c (commit_one_edge_insertion): Likewise.
+ (merge_blocks_nomove): Likewise.
+ (verify_flow_info): Likewise.
+ * gcse.c (insert_insn_end_bb): Likewise.
+ * reg-stack.c (emit_swap_insn): Likewise.
+ * ssa.c (first_insn_after_basic_block_note): New function.
+ (insert_phi_node): Use it.
+ (rename_block): Likewise.
+ (eliminate_phi): Likewise.
+ (make_regs_equivalent_over_bad_edges): Likewise.
+ (make_equivalent_phi_alternatives_equivalent): Likewise.
+ (for_each_successor_phi): Likewise.
+ (convert_from_ssa): Modify phi-node deletion algorithm.
+
+2000-07-29 Andreas Jaeger <aj@suse.de>
+
+ * configure.in (mips*-*-linux*): Use mips*el to check for little
+ endian MIPS, add tmake_file.
+
+ * config/mips/linux.h (TARGET_VERSION): Use GNU/Linux.
+ (SUBTARGET_CPP_SPEC): Default MIPS_ISA is 1.
+ Patches by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
+
+2000-07-28 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (ia64_print_operand): Fix typos.
+ Sign extend mode size before negating.
+
+2000-07-28 Richard Henderson <rth@cygnus.com>
+
+ * emit-rtl.c (gen_lowpart_common): Add missing 'c' variable.
+
+2000-07-28 Bernd Schmidt <bernds@cygnus.co.uk>
+
+ * cse.c (canon_hash): Handle PRE_MODIFY/POST_MODIFY.
+ (cse_insn): Likewise.
+ (addr_affects_sp_p): Likewise.
+ * expr.c (move_by_pieces): Likewise.
+ (clear_by_pieces): Likewise.
+ * gcse.c (oprs_unchanged_p): Likewise.
+ * haifa-sched.c (sched_analyze_2): Likewise.
+ * recog.c (offsettable_address_p): Likewise.
+ * regclass.c (record_address_regs): Likewise.
+ * reload.c (find_reusable_reload): Likewise.
+ (push_reload): Likewise.
+ (operands_match_p): Likewise.
+ (decompose): Likewise.
+ (find_reloads_address_1): Likewise.
+ (find_inc_amount): Likewise.
+ * reload1.c (elimination_effects): Likewise.
+ * resource.c (mark_set_resources): Likewise.
+ * flow.c (attempt_auto_inc): New function; mostly broken out
+ of find_auto_inc.
+ (find_auto_inc): Split into two functions and enhanced to
+ generate POST_MODIFY.
+ * rtl.def (PRE_MODIFY, POST_MODIFY): Adjust comment.
+ * rtl.h (count_all_occurrences): Declare.
+ (HAVE_{PRE,POST}_MODIFY_{DISP,REG}): Provide default of 0 if not
+ defined.
+ * rtlanal.c (count_all_occurrences): New function.
+ * tm.texi (HAVE_POST_MODIFY_DISP, HAVE_PRE_MODIFY_DISP,
+ HAVE_POST_MODIFY_REG, HAVE_PRE_MODIFY_REG): Document.
+
+ * config/ia64/ia64-protos.h (destination_operand): Declare.
+ * config/ia64/ia64.c (destination_operand): New function.
+ (ia64_print_operand): Handle POST_MODIFY.
+ (rtx_needs_barrier): Likewise.
+ * config/ia64/ia64.h (HAVE_POST_MODIFY_DISP): Define to 1.
+ (HAVE_POST_MODIFY_REG): Define to 1.
+ (MAX_REGS_PER_ADDRESS): Change to 2.
+ (GO_IF_LEGITIMATE_ADDRESS): Accept POST_MODIFY too.
+ (LEGITIMATE_ADDRESS_REG): New helper macro.
+ (LEGITIMATE_ADDRESS_DISP): Likewise.
+ (PREDICATE_CODES): Add entry for destination_operand.
+ * config/ia64/ia64.md (all mov patterns): Use destination_operand
+ predicate for operand 0.
+
+2000-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dwarf2out.c: Indent #error directive.
+
+ * gbl-ctors.h: Fix typo in comment.
+ (__do_global_ctors): Prototype.
+
+ * gcse.c (record_one_set, pre_delete): Remove unused variables.
+
+ * rs6000.c (rs6000_maybe_dead): Delete unused prototype.
+ (print_operand): Initialize variable `t'.
+
+2000-07-27 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/arm/arm.md ("call_value"): removed constraints.
+ Constraints are ignored in expanders.
+ (*call_value_reg): split =rf into various constraints.
+ (*call_value_mem): same
+ (*call_value_symbol): same
+ (*sibcall_value_insn): same
+
+2000-07-28 Philipp Thomas <pthomas@suse.de>
+
+ * install.texi (--enable-nls): Change the description of the NLS
+ related configure options to match the current state.
+ (--with-included-gettext): Likewise.
+ (--enable-maintainer-mode): New description added.
+ * extend.texi (-fstrict-prototype): Add missing '.'.
+
+2000-07-27 Jim Wilson <wilson@cygnus.com>
+
+ * dwarf2out.c (gen_decl_die): Don't call gen_abstract_function if
+ DECL_INITIAL (decl) == NULL_TREE.
+
+2000-07-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in (INSN_ATTR_H): New macro. Replace all dependencies
+ on insn-attr.h with it.
+ * genattr.c: Generate `#include "insn-addr.h"' if HAVE_ATTR_length.
+ * insn-addr.h: New header.
+ (insn_addresses_): Renamed from insn_addresses.
+ (INSN_ADDRESSES_DEFN, INSN_ADDRESSES, INSN_ADDRESSES_ALLOC,
+ INSN_ADDRESSES_FREE, INSN_ADDRESSES_SET_P, INSN_ADDRESSES_SIZE,
+ INSN_ADDRESSES_NEW): New macros.
+ * genattrtab.c (write_test_expr): Use new macros.
+ * final.c (insn_addresses, init_insn_lengths): Likewise.
+ (align_fuzz, shorten_branches): Likewise.
+ (final): Likewise. Do not reject new insns if their addresses
+ have been added to INSN_ADDRESSES.
+ * config/arm/arm.c, config/avr/avr.c: Use new macros.
+ * config/h8300/h8300.c, config/i370/i370.c: Likewise.
+ * config/m88k/m88k.c, config/pa/pa.c, config/pa/pa.md: Likewise.
+ * config/sparc/sparc.c, config/sparc/sparc.md: Likewise.
+ * config/sh/sh.c: Likewise.
+ (output_branchy_insn): Use INSN_ADDRESSES_NEW.
+
+ * Makefile.in (bootstrap): Move -BstageN/ back to the beginning.
+
+2000-07-27 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * gcc.c (struct prefix_list): Add member priority.
+ (enum path_prefix_priority): Declare.
+ (add_prefix): Replace ``first'' with ``priority''. Append new
+ entry but keep list in priority order.
+ (process_command): Update. Pass PREFIX_PRIORITY_B_OPT or
+ PREFIX_PRIORITY_LAST to add_prefix.
+ (process_command): Move include kludge - foo/stageN - to before
+ foo/include.
+
+2000-07-27 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (gen_typedef_die): Abort if we get identical
+ TREE_TYPE and DECL_ORIGINAL_TYPE on a typedef.
+
+2000-07-27 RodneyBrown <RodneyBrown@pmsc.com>
+
+ * expr.h (get_alias_set, lang_get_alias_set): Delete prototypes.
+ * tree.h (get_alias_set, lang_get_alias_set): Prototype.
+
+2000-07-27 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (finish_function): Don't treat 'main' specially unless
+ flag_hosted. In C99 mode, return 0 from 'main' unless
+ DEFAULT_MAIN_RETURN is otherwise defined.
+
+ * c-decl.c (store_parm_decls): In C99 mode, pedwarn for function
+ parameters defaulting to int in an old-style function definition.
+
+2000-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-parse.in (string): For -Wtraditional, warn about string
+ concatenation only once per line.
+
+Thu Jul 27 09:25:17 2000 Akiko Matsushita <matusita@sra.co.jp>
+
+ * pa/x-pa-hpux: Add -D_HIUX_SOURCE to FIXPROTO_DEFINES
+ for HI-UX/WE2 systems.
+
+2000-07-24 Bruce Korb <bkorb@gnu.org>
+
+ * fixincl/fixfixes.c(emit_gnu_type): rewrote to *rely* on GCC
+ defining the __xxx_TYPE__ macros.
+ * fixincl/fixincl.tpl(gnu_type_map): now obsolete
+ * fixincl/fixlib.h: don't need to include "tm.h" anymore
+ * fixincl/inclhack.def(type_map): now obsolete
+
+Thu Jul 27 11:54:17 2000 Andrew Cagney <cagney@b1.cygnus.com>
+
+ * cpp.texi: Append a trailing full-stop to xrefs where needed.
+
+2000-07-26 Dave Pitts <dpitts@cozx.com>
+
+ * i370.c: Remove LONGEXTERNAL ifdef from alias_number. Added hash
+ routine constants.
+ (mvs_hash_alias): New function.
+ (mvs_add_alias): Change argument spacing.
+ (mvs_need_alias): Change aliasing criteria. Added documentation.
+ (mvs_get_alias): Change to use hashed name. The hashed name prevents
+ CSECT name collisions.
+ (mvs_check_alias): Likewise.
+ (handle_pragma): Change documentation.
+ * i370.md (mulsi3, divsi3, udivsi3, modsi3, umodsi3): Changed gen_rtx
+ mode from SImode to DImode.
+ (iorhi3): Changed LTORG size for insn.
+
+Wed Jul 26 19:44:05 2000 Hans-Peter Nilsson <hp@axis.com>
+
+ * reload.c (find_reloads_toplev): Reload a paradoxical subreg of a
+ mem if the address is a mode_dependent_address_p.
+
+2000-07-26 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c (print_operand): Print ":8" when the 'R' operand is
+ suitable for 8-bit absolute.
+ * h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): New.
+ (OK_FOR_U): Add a case for the 8-bit constant address on the
+ H8/300H.
+
+Wed Jul 26 19:26:21 2000 Hans-Peter Nilsson <hp@axis.com>
+
+ * varasm.c (assemble_variable) [! defined(ASM_OUTPUT_ALIGNED_COMMON)
+ && ! defined (ASM_OUTPUT_ALIGNED_BSS]): Also test
+ ! defined(ASM_OUTPUT_ALIGNED_DECL_COMMON) before complaining about
+ lack of implemented alignment.
+
+2000-07-26 Geoffrey Keating <geoffk@cygnus.com>
+
+ * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETIC]: Handle
+ cross-compiling between 64-bit and 32-bit machines.
+
+2000-07-27 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (movqicc_astep, movqi_internal_astep): New.
+ (movhicc_astep, movhi_internal_astep): New.
+ (movsicc_astep, movsi_internal_astep): New.
+ (movdicc_astep, movdi_internal_astep): New.
+ (movsfcc_astep, movsf_internal_astep): New.
+ (movdfcc_astep, movdf_internal_astep): New.
+ (movxfcc_astep, movxf_internal_astep): New.
+ (cmovdi_internal_astep, cmovsi_internal_astep): New.
+ Unify the cmov[ds]i splitters.
+
+2000-07-27 Rodney Brown <RodneyBrown@pmsc.com>
+
+ * real.c (asctoeg): Rename `error' label to unexpected_char_error
+
+2000-07-26 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/vxarm.h (CPP_PREDEFINES): Remove definition of
+ __arm__. Allow it to be defined by CPP_ISA_SPEC in arm.h
+
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Accept SEQUENCE as
+ well as PARALLEL blocks in FRAME_RELATED_EXPR notes.
+
+2000-07-26 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-decl.c (finish_enum): Convert enumerations that fit in an
+ `int' to `int'.
+ (build_enumerator): In pedantic mode, cast to `int' those that
+ don't.
+
+2000-07-25 Rodney Brown <RodneyBrown@pmsc.com>
+
+ * config/alpha/osf.h (SIZE_TYPE, PTRDIFF_TYPE): New.
+
+Tue Jul 25 23:08:33 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
+
+ * sh.md (cmpgtdi_t): Must be split.
+ (cmpgtdi_t+1): New splitter.
+
+2000-07-25 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplib.c (_cpp_check_directive): Issue -Wtraditional
+ warnings for indented directives even if we are skipping.
+
+2000-07-25 Nathan Sidwell <nathan@codesourcery.com>
+
+ * invoke.texi (strict-prototypes): Remove.
+ * extend.texi (Deprecated Features): Add strict-prototypes.
+ (Backwards Compatibility): New node.
+
+2000-07-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (andsi_1+1): Allow HImode.
+ (andsi_1+2): Require q_regs_operand.
+
+2000-07-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (call_pop): Check operands[0],
+ not operands[1]. Only check SYMBOL_REF_FLAG for a SYMBOL_REF.
+ (call): Likewise.
+ (call_value_pop): Only check SYMBOL_REF_FLAG for a SYMBOL_REF.
+ (call_value): Likewise.
+
+2000-07-25 Zack Weinberg <zack@wolery.cumb.org>
+
+ * toplev.c (pipe_closed): Delete.
+ (crash_signal): New. Generate ICE for a fatal signal.
+ (float_signal): Call crash_signal outside a float-handler
+ block, not abort.
+ (main): Install crash_signal as handler for core-dumping signals.
+
+2000-07-25 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (print_operand, case 'T'): New case.
+
+ * rs6000.md (call_indirect_aix32): Convert to expander of
+ scheduled instructions.
+ (call_indirect_aix64): Likewise.
+ (call_value_indirect_aix{32,64}): Likewise.
+ (call, call_value): Invoke expanders for AIX. Fall through to
+ matchers for SysV.
+ (call_indirect_nonlocal_aix{32,64}): New patterns (ctr and lr).
+ (call_value_indirect_nonlocal_aix{32,64}): New patterns.
+ (call_nonlocal_aix32): Remove CALL_LONG alternative. Operand 1
+ only "g" constraint.
+ (call_nonlocal_aix64): Likewise.
+ (call_value_nonlocal_aix{32,64}): Likewise.
+ (call_nonlocal_sysv): New pattern for ctr, lr, and symbolic
+ operands.
+ (call_value_nonlocal_sysv): New pattern.
+ (indirect_jump{si,di}): Use new 'T' modifier.
+ (tablejump{si,di} matchers): Likewise.
+ (return_internal_{si,di}): Likewise.
+ (return_eh_{si,di}): Likewise.
+
+2000-07-24 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (ia64_print_operand): Handle "%,".
+ * config/ia64/ia64.h (PRINT_OPERAND_PUNCT_VALID_P): Likewise.
+ * config/ia64/ia64.md (movdi_internal): Use it.
+
+2000-07-24 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppexp.c: Warn about unary + if -Wtraditional.
+ * cpplex.c (lex_line): Always set BOL on the first token of a line.
+
+2000-07-24 Michael Meissner <meissner@redhat.com>
+
+ * d30v.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Delete references to
+ unsupported macro.
+
+2000-07-24 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.c (emit_multi_reg_push): Generate a
+ REG_FRAME_RELEATED_NOTE that is compatible with the code in
+ dwarf2out_debug_frame_expr.
+
+2000-07-24 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c: Complain if DWARF2_DEBUGGING_INFO is defined without
+ UNALIGNED_INT_ASM_OP.
+ (def_cfa_1): Don't emit def_cfa_register or def_cfa_offset to adjust
+ a location expression.
+ (dwarf2out_frame_debug_expr): Lose cfa_old_reg stuff. Don't
+ assume indirect access if we're saving the CFA address exactly.
+
+ * Makefile.in (bootstrap): Move -BstageN/ to the end.
+
+2000-07-24 Jakub Jelinek <jakub@redhat.com>
+
+ * tradcpp.c (main): Update max_include_len for cpp_include_defaults
+ as well.
+
+2000-07-24 Michael Meissner <meissner@redhat.com>
+
+ * invoke.texi (D30V Options): Add d30v options.
+
+Mon Jul 24 02:04:52 2000 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (alloc_pre_mem): Do not alloc TRANSPOUT, it is not
+ needed by our gcse pass anymore.
+ (free_pre_mem): Corresponding changes.
+ (compute_pre_data): Do not call compute_transpout anymore.
+
+ * gcse.c (alloc_avail_expr_mem): Kill unused 'u_bitmap'.
+ (free_avail_expr_mem, alloc_pre_mem, free_pre_mem): Corresponding
+ changes.
+
+ * gcse.c (free_pre_mem): Do not free ANTLOC and AE_KILL here.
+ (compute_pre_data): Do it here instead.
+
+ * gcse.c (alloc_pre_mem, free_pre_mem): Delete unused bitmap
+ 'temp_bitmap'.
+ (pre_delete): Corresponding changes.
+
+2000-07-23 Mark Mitchell <mark@codesourcery.com>
+
+ * c-semantics.c (make_rtl_for_local_static): Use TREE_ASM_WRITTEN
+ to figure out whether or not a variable has already been emitted.
+
+Sun Jul 23 14:49:12 2000 Jason Eckhardt <jle@cygnus.com>
+
+ * config/i860/i860.md (untyped_call expander): Use GEN_CALL
+ instead of gen_call.
+
+Sun Jul 23 11:52:03 2000 George Helffrich (george@gly.bris.ac.uk)
+
+ * dbxout.c (dbxout_type, case COMPLEX_TYPE): Fix length field in stab.
+
+2000-07-23 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c: Fix formatting.
+
+2000-07-23 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-typeck.c (c_expand_start_case): Change -Wtraditional pedwarn
+ for `long' switch expression into a plain warning.
+
+ * c-lex.c (init_lex): Keep the "inline" keyword in C99 mode.
+ (yylex): Don't pedwarn for "inline" in C99 mode.
+
+ * bitmap.c (debug_bitmap_file): Cast pointers to PTR for printing
+ with %p.
+ * ggc-page.c (debug_print_page_list, alloc_page, free_page,
+ ggc_alloc): Likewise.
+ * bb-reorder.c (dump_scope_forest_1): Likewise.
+
+2000-07-22 Aldy Hernandez <aldyh@redhat.com>
+
+ * reload.c (find_reloads_toplev): Add new parameter
+ "address_reloaded".
+ (find_reloads): Add new parameter to find_reloads_toplev calls.
+
+2000-07-22 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * collect2.c (main): Typo fixed.
+ * diagnostic.c: Typo fixed.
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Typo fixed.
+ * eh-common.h: Typo fixed.
+ * emit-rtl.c (start_sequence): Typo fixed.
+ * flow.c (find_label_refs): Typo fixed.
+ (calculate_global_regs_live): Typo fixed.
+ (mark_regno_cond_dead): Typo fixed.
+ (create_edge_list): Typos fixed.
+ (verify_edge_list): Typo fixed.
+ * ggc-common.c (ggc_mark_rtx_children): Typo fixed.
+ * loop.c (strength_reduce): Typo in function name fixed.
+ * rtl.h: Added comments. Typo in function name fixed.
+ * rtlanal.c: Typo in function name fixed.
+ (insn_dependant_p): Rename to ...
+ (insn_dependent_p): ... this.
+ (computed_jumo_p): Typo fixed.
+
+2000-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (__FUNCTION__): Wrap definition in #ifndef.
+
+2000-07-21 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.h (SIZE_TYPE): Define.
+
+2000-07-21 Mark Mitchell <mark@codesourcery.com>
+
+ * ssa.c (rename_insn_1): Don't rename registers that are
+ CLOBBERed.
+
+2000-07-21 Zack Weinberg <zack@wolery.cumb.org>
+
+ * diagnostic.c (trim_filename, fancy_abort): Moved here from
+ rtl.c.
+ (fatal_function, set_fatal_function): Removed.
+ (fatal): Don't prepare for or call the fatal_function.
+ (diagnostic_lock, error_recursion): New.
+ (diagnostic_for_decl, report_diagnostic): Guard against
+ re-entering the error reporting routines.
+ (fancy_abort): Assume function is not NULL.
+
+ * errors.c (fancy_abort): New. Assume function is not NULL.
+ * tradcpp.c (fancy_abort): Assume function is not NULL.
+
+ * system.h: Provide default definition of __FUNCTION__.
+ * rtl.h: Use __FUNCTION__ not __PRETTY_FUNCTION__ throughout.
+ Always use __FUNCTION__ in definition of abort.
+ * tree.h: Likewise.
+ * varray.h: Likewise.
+ * toplev.h: Likewise. Don't prototype set_fatal_function.
+
+2000-07-20 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/aix43.h (CPP_SPEC): Define __LONG_MAX__ correctly
+ in 64-bit mode.
+ * glimits.h: Don't do #if defined for ARCH_PPC.
+
+ * config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): All
+ constants of size no larger than a pointer should go in the TOC.
+ Add 'MODE' parameter.
+ (LEGITIMIZE_RELOAD_ADDRESS): Add MODE parameter to
+ ASM_OUTPUT_SPECIAL_POOL_ENTRY_P.
+ (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Likewise.
+ * config/rs6000/aix.h (SELECT_RTX_SECTION): Likewise.
+ * config/rs6000/netware.h (SELECT_RTX_SECTION): Likewise.
+ * config/rs6000/rs6000.c (constant_pool_expr_1): Likewise.
+ (rs6000_legitimize_address): Likewise.
+ (rs6000_emit_move): Likewise.
+ (rs6000_select_rtx_section): Likewise.
+ (output_toc): Deal properly with outputting small constants like
+ HImode, and SFmode in 32-bit mode, and DFmode in 64-bit mode.
+ * config/rs6000/sysv4.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Add
+ MODE parameter. Put small constants in the TOC.
+
+ * config/rs6000/rs6000.c (easy_fp_constant_p): All constants are
+ easy in SImode.
+ (rs6000_emit_move): When reload calls us with an illegitimate
+ address, exit early. Move the change_address calls to one place
+ at the end of the routine. Merge the SImode and DImode expanders.
+ When called by reload to put an integer into a FP register, force
+ it to memory.
+
+ * config/rs6000/rs6000.c (struct toc_hash_struct): Add 'key_mode'
+ field.
+ (rs6000_hash_constant): Hash mode too.
+ (toc_hash_function): Allow for key_mode.
+ (toc_hash_eq): Structures are different if key_mode differs.
+ (output_toc): Add 'mode' parameter. Save key_mode.
+ * config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY):
+ Pass 'mode' parameter.
+ * config/rs6000/rs6000-protos.h (output_toc): Add 'mode' param.
+
+ * config/rs6000/rs6000.c (output_toc): Use RS6000_OUTPUT_BASENAME
+ for vtable references.
+
+ * config/rs6000/rs6000.h (PREFERRED_RELOAD_CLASS): If we have a
+ choice, don't put integer values in FP regs.
+
+Thu Jul 20 18:13:52 2000 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (verify_flow_info): Revamp code to verify that the
+ head and end of each basic block are in the insn chain.
+
+Thu Jul 20 18:02:35 2000 Michael Matz <matzmich@cs.tu-berlin.de>
+
+ * gcse.c (record_one_set): Prepend instead of append onto
+ reg_set_table, making it O(n) instead O(n^2).
+ * lcm.c (compute_antinout_edge,compute_laterin,compute_available):
+ Use a queue instead of a stack as worklist.
+
+2000-07-20 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.c (two_insn_adds_subs_operand): Fix a typo.
+ * h8300.h (OK_FOR_T): New.
+ (EXTRA_CONSTRAINT): Support OK_FOR_T.
+ * h8300.md: Use inc/dec.[wl] for increment/decrement
+ by 1 and 2 in HI and SI modes.
+
+2000-07-20 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Handle DELTA values
+ larger than 14 bits.
+
+2000-07-20 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppmacro.c (CAN_PASTE_AFTER): New macro.
+ (count_params): Don't set GNU_REST_ARGS on anything.
+ (save_expansion): Set PASTE_LEFT only on tokens for which
+ CAN_PASTE_AFTER is true, or which are named operators.
+
+ * cpplex.c (parse_args): Distinguish between a rest argument
+ given one empty argument, and a rest argument given zero arguments.
+ (maybe_paste_with_next): Look for VOID_REST tag, and trigger
+ deletion of previous token based on that.
+ (get_raw_token): Flatten some control structure.
+
+ * cpplib.h (CPP_LAST_EQ): Correct.
+ (VOID_REST): New token flag.
+ (GNU_REST_ARGS): Delete.
+
+ * tradcpp.c (main): Don't munge -D options.
+ (make_definition): Bring -D handling in line with cpplib.
+ (do_define): Strip all leading whitespace from macro definitions.
+
+2000-07-20 David Billinghurst <David.Billinghurst@riotinto.com.au>
+
+ * Makefile.in (tradcpp): Depend on intl.o and version.o.
+
+2000-07-20 Bruce Korb <bkorb@gnu.org>
+
+ * fixincl/check.tpl: strip the platform specific types before testing
+ * fixincl/fixfixes.c(gnu_type_fix): use platform specific types
+ * fixincl/fixincl.tpl: use platform specific types
+ * fixincl/fixlib.h: include the platform specific types
+ * fixincl/inclhack.def(gnu_types): don't supply the types
+ * fixincl/fixincl.x: regen
+
+2000-07-19 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.h (HARD_REGNO_MODE_OK): Don't allow XFmode in
+ GR_REGS.
+
+2000-07-19 Zack Weinberg <zack@wolery.cumb.org>
+
+ * tradcpp.c (rescan): Do not recognize directives when the #
+ is indented.
+
+2000-07-19 Zack Weinberg <zack@wolery.cumb.org>
+
+ Implement C++ named operators.
+
+ * cpplib.h (TTYPE_TABLE): Move CPP_MIN and CPP_MAX into block
+ of operators allowed in #if and having an _EQ variant. Add
+ CPP_MIN_EQ, CPP_MAX_EQ, and CPP_DEFINED.
+ (cpp_token flags): Add NAMED_OP.
+ (enum node_type): Add T_OPERATOR.
+ (struct cpp_hashnode): Add code slot to value union.
+ * cpphash.h (spec_nodes): Remove n_defined.
+
+ * cpplex.c (lex_line): Convert T_OPERATOR nodes to their proper types.
+ (spell_token, can_paste, maybe_paste_with_next): Handle named operators.
+ (is_macro_disabled): Tweak error messages.
+
+ * cpplib.c (get_define_node): Disallow all named operators as
+ macro names. Tweak error messages.
+ (_cpp_init_stacks): Don't set up spec_nodes->n_defined.
+
+ * cppinit.c (builtin_array): Add entries for the named operators.
+ * cppexp.c (lex): Check for CPP_DEFINED token.
+ (priority table): Add entries for CPP_MIN and CPP_MAX.
+ (_cpp_parse_expr): Handle CPP_MIN and CPP_MAX.
+
+2000-07-19 Bernd Schmidt <bernds@cygnus.co.uk>
+
+ * gcse.c (INSN_CUID): If ENABLE_CHECKING, abort if the uid is
+ larger than the array of cuids.
+ (alloc_gcse_mem): Use uid_cuid rather than INSN_CUID when computing
+ cuids.
+
+2000-07-19 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixincl.c: Convert to using a table of environment variables
+ and activate the auto-edit marker on the fixed output files.
+ * fixinc/fixlib.h: Define the environment table
+ * fixinc/fixincl.sh: export the ${INPUT} dir
+ * fixinc/check.tpl: likewise
+
+2000-07-18 Zack Weinberg <zack@wolery.cumb.org>
+
+ * gcc.c (.h spec): Fix typo.
+
+Wed Jul 19 01:22:15 CEST 2000 Marc Espie <espie@cvs.openbsd.org>
+
+ * Makefile.in: Fix tradcif.c path.
+
+2000-07-18 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplib.h (TTYPE_TABLE): Rearrange to use only two per-entry
+ macros, not five.
+
+ * cpphash.h (TOKEN_NAME): New macro.
+ (_cpp_spell_operator): Deleted.
+ (token_spellings): Now _cpp_token_spellings.
+
+ * cppexp.c: Use TOKEN_NAME or TYPE_NAME, not _cpp_spell_operator.
+ * cpplex.c: Use OP and TK macros when expanding the
+ TTYPE_TABLE. Eliminate token_names. For non-OPERATOR tokens,
+ store the stringification of the enumeration name (CPP_CHAR,
+ etc.) in the name slot of token_spellings.
+ Use TOKEN_NAME and/or TOKEN_SPELL, do not reference
+ token_spellings directly.
+ * cpplib.c: Use TOKEN_SPELL.
+
+ * cpplex.c (_cpp_push_token): If the token being pushed back
+ is the previous token in this context, just subtract one from
+ context->posn.
+ * cppmacro.c (save_expansion): Clear aux field when storing a
+ placemarker.
+
+2000-07-18 Jakub Jelinek <jakub@redhat.com>
+
+ * cpplex.c (cpp_scan_buffer): Output line command even at the stop
+ buffer, provided it is not NULL.
+
+2000-07-18 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-decl.c (duplicate_decls): Do not call make_var_volatile() in
+ case of invalid volatile re-declaration.
+
+2000-07-18 Jakub Jelinek <jakub@redhat.com>
+
+ * calls.c (store_arg): Return nonzero if sibcall_failure is desired.
+ (expand_call): Adjust caller.
+
+2000-07-17 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h (report_diagnostic): Change prototype.
+
+ * diagnostic.c (output_do_verbatim, diagnostic_for_asm,
+ diagnostic_for_decl): Change prototype.
+ (error_with_decl, warning_with_decl, pedwarn_with_decl, warning,
+ error, warning, error_with_file_and_line,
+ warning_with_file_and_line, pedwarn_with_file_and_line, fatal):
+ Adjust call to report_diagnostic, diagnostic_for_decl.
+ (error_for_asm, warning_for_asm): Adjust call to diagnostic_for_asm.
+ (output_verbatim, verbatim): Adjust call to output_do_verbatim.
+
+ * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. End
+ varaible argument list.
+
+2000-07-17 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpphash.c: Don't include hashtab.h. Most macro-handling code
+ moved to cppmacro.c.
+ (hash_HASHNODE, eq_HASHNODE, _cpp_dump_macro_hash,
+ dump_hash_helper): Delete.
+ (expand_hash, higher_prime_number, _cpp_lookup_with_hash,
+ cpp_forall_identifiers): New. Implement specialized version of
+ Vlad's expandable hash table.
+ (cpp_lookup): Use new functions.
+ (_cpp_init_macros, _cpp_cleanup_macros): Adjust for new
+ implementation.
+ * cppmacro.c: New file.
+ * cppinit.c (dump_macros_helper): New.
+ (cpp_finish): Iterate over the identifier table directly.
+ * cpplex.c (parse_name): Calculate the hash of the identifier
+ while we scan it. Use _cpp_lookup_with_hash when we can.
+
+ * cpphash.h: Update prototypes.
+ (xcnewvec, HASHSTEP): New helper macros.
+ * cpplib.h: Update prototypes.
+ * Makefile.in (LIBCPP_OBJS): Add cppmacro.o.
+ (cppmacro.o): New rule.
+ (cpphash.o): Update deps.
+
+ * cppmain.c: Do not set pfile->printer if no_output is on.
+
+2000-07-15 Neil Booth <neilb@earthling.net>
+
+ * cpplib.c: Change all directive-handler functions to return
+ void, not int.
+ * cpphash.h: Update typedefs.
+
+2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
+
+ * configure: Regenerate.
+
+ * extend.texi (Extended Asm): Mention that a memory clobber
+ does not count as a side-effect.
+
+ * unroll.c (copy_loop_body): Fix one instance of using host
+ arithmetic on the target; fixes loop-4 on a 32-bit -> 64-bit
+ cross-compile.
+
+ * tlink.c (scan_linker_output): Tweak for output of AIX ld.
+
+2000-07-17 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.md (movdi): Split out load address code.
+ New post-reload splitter for symbolic operands.
+ (movdi_internal): Abort if we didn't split symbolic operands
+ when we should have.
+ * config/ia64/ia64.c (ia64_expand_load_address): New, from movdi bits.
+ (ia64_reorg): Split insns when not optimizing.
+ * config/ia64/ia64-protos.h (ia64_expand_load_address): Declare.
+
+Mon Jul 17 23:43:26 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Use LONG_DOUBLE_TYPE_SIZE
+ instead of MAX_LONG_DOUBLE_TYPE_SIZE to decide output format.
+
+2000-07-17 Chandrakala Chavva <cchavva@cygnus.com>
+
+ * loop.c (check_dbra_loop) : Changed loop_continue to loop->cont.
+
+2000-07-17 Jason Merrill <jason@redhat.com>
+
+ * Makefile.in (clean): Remove libgcc directory.
+
+ * configure.in (-Wno-long-long check): Use higher-level macros.
+
+2000-07-17 Zack Weinberg <zack@wolery.cumb.org>
+
+ * simplify-rtx.c (simplify_binary_operation): Recognize
+ (compare (gt[u] (cc) 0) (lt[u] (cc) 0)).
+ (simplify_ternary_operation): Do not examine MODE_BITSIZE of
+ a CONST_INT, it will always be zero.
+
+2000-07-17 Chandrakala Chavva <cchavva@cygnus.com>
+
+ * loop.c (check_dbra_loop) : Return if more than one condition is
+ present to control the loop.
+
+Mon Jul 17 08:26:35 2000 Clinton Popetz <cpopetz@cygnus.com>
+
+ * mips.c (mips_expand_prologue): Don't calculate the last argument
+ register unless we need it. When we are calculating this, make
+ sure FUNCTION_ARG is giving us a REG.
+
+2000-07-17 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * flow.c (libcall_dead_p): Use single_set to verify the insn
+ has only one set and get for analysis.
+ (propagate_one_insn): Don't pass the PATTERN of the insn.
+
+2000-07-17 Mark Klein <mklein@dis.com>
+
+ * pa.c (emit_hpdiv_const): Update to match new pattern for udivsi3.
+
+2000-07-17 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * Makefile.in (TARGET_GETGROUPS_T): New configuration variable.
+ * configure.in (TARGET_GETGROUPS_T): Evaluate.
+ * sys-protos.h (getgroups): Use TARGET_GETGROUPS_T for array type
+ of second argument of getgroups.
+ * configure, config.in: Rebuilt.
+
+2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
+
+ * simplify-rtx.c (simplify_relational_operation): Two signed
+ values with equal high words are less/greater than each other if
+ their low words are less/greater when considered as unsigned.
+
+Mon Jul 17 02:37:06 2000 Marc Espie <espie@openbsd.org>
+
+ * configure.in (vax-*-openbsd): Change to new style configuration,
+ add collect2/float_format information.
+ * configure: Rebuilt.
+ * config/vax/openbsd1.h: New.
+ * config/vax/openbsd.h: New.
+ * config/vax/t-openbsd: New.
+
+2000-07-17 Chip Salzenberg <chip@valinux.com>
+
+ * c-common.c (shorten_compare): Quiet warnings about unsigned
+ comparisons with zero when they occur in a system header.
+
+2000-07-17 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi (-pedantic): Refer to ISO C instead of ANSI C, and
+ update to describe current practice.
+
+ * glimits.h (LLONG_MIN, LLONG_MAX, ULLONG_MAX): Define for C99.
+
+ * contrib.texi, cpp.texi, extend.texi, invoke.texi: Update
+ references to C9X. Change references to -fstd and -flang-isoc9x
+ to refer to -std.
+
+ * c-common.c (scan_char_table): Allow "z" length modifiers on
+ diouxXn formats.
+ (check_format_info): Use TYPE_DOMAIN on the type matched against
+ for "z" formats, to retrieve the language size_t rather than the
+ internal one.
+
+ * c-common.c (check_format_info): Do not make a pedantic objection
+ to the 'L' length modifier if used with a floating point type
+ character.
+
+ * c-lex.c (yylex): Don't pedwarn for hexadecimal floating point
+ constants in C99 mode.
+
+2000-07-17 Kazu Hirata <kazu@hxi.com>
+
+ * h8300.md: Fix the format of mac.
+ (movsi_h8300hs): Output a tab after stmac instead of a space.
+
+ * h8300.c (two_insn_adds_subs_operand): Improve code for detecting
+ profitable adds/subs sequences.
+
+ * fold-const.c: Fix comment typos.
+
+2000-07-16 Laurynas Biveinis <lauras@softhome.net>
+
+ * cppfiles.c (read_name_map): Set map_list_ptr->map_list_map to NULL.
+
+2000-07-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fixinc/fixfixes.c (emit_gnu_type): Avoid string concatenation.
+
+2000-07-16 Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c: Update comments.
+ * README.Portability: Small update.
+
+2000-07-16 Neil Booth <NeilB@earthling.net>
+
+ * README.Portability: Small update.
+
+2000-07-15 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64-protos.h (ia64_move_ok): Prototype.
+ * config/ia64/ia64.c (ia64_move_ok): New function.
+ * config/ia64/ia64.md (movqi, movqi_internal): Use it.
+ (movhi, movsi, movdi, movsf, movdf, movxf): Likewise.
+
+2000-07-15 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpphash.c (save_expansion): Clear PREV_WHITE on tokens
+ immediately following a paste operator.
+ * cppinit.c (sort_options): New function (only for HOST_EBCDIC).
+ (cpp_reader_init): Call it, if HOST_EBCDIC.
+ (cpp_handle_options): Do not sort option list here.
+ (handle_option): Rename to cpp_handle_option and export.
+ * cpplex.c (cpp_scan_buffer_nooutput, cpp_scan_buffer): Use
+ _cpp_get_token directly.
+ (cpp_scan_line): Return 0 at EOF, 1 otherwise.
+ * cpplib.c (cpp_push_buffer): Don't set new->lineno to 1.
+ * cpplib.h: Prototype cpp_handle_option. Update prototype of
+ cpp_scan_line.
+
+2000-07-15 Richard Henderson <rth@cygnus.com>
+
+ * fold-const.c (extract_muldiv): Don't optimize past an unsigned
+ cast around an expression. Tidy other unsigned tests.
+
+2000-07-15 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (doing_line_wrapping, line_wrapper_printf, notice,
+ v_error_with_decl, v_warning_with_decl, v_pedwarn_with_decl): Remove.
+ (v_message_with_decl): Rename to ...
+ (format_with_decl): ... this. Tweak
+ (diagnostic_for_decl): New function.
+ (fatal_io_error): Use verbatim in lieu of notice.
+ (announce_function): Use verbatim.
+ (default_print_error_function): Likewise.
+ (error_with_decl, warning_with_decl, pedwarn_with_decl): Use new
+ infratructure.
+
+2000-07-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.c (function_arg_pass_by_reference): Don't do automatic
+ aggregate initialization.
+ (machine_dependent_reorg): Initialize variable `mode'.
+
+ * mips.md (absdi2): Change variable `regno1' to unsigned int.
+ (reload_indi): Rename loword/hiword to lo_word/hi_word to avoid
+ conflicts with sys/param.h macro of the same name.
+ (reload_outdi): Likewise.
+
+2000-07-15 Michael Meissner <meissner@redhat.com>
+
+ * fold-const.c (fold): When optimizing FOO++ == CONST into ++FOO
+ == CONST + INCREMENT, don't overwrite the tree node for FOO++,
+ create a new node instead.
+
+2000-07-15 Neil Booth <NeilB@earthling.net>
+
+ * README.Portability: Correct example about calling a function
+ through a pointer to function. Format wide paragraphs.
+
+2000-07-15 Michael Meissner <meissner@redhat.com>
+
+ * README.Portability: Update integer suffixes and function
+ prototype sections.
+
+2000-07-15 Neil Booth <NeilB@earthling.net>
+
+ * README.Portability: Small update.
+
+2000-07-15 Neil Booth <NeilB@earthling.net>
+
+ * README.Portability: New file.
+
+Fri Jul 14 18:13:53 2000 Mark P Mitchell <mark@codesourcery.com>
+
+ * INSTALL: Give special instructions for building GCC on Irix 6.
+ * config/mips/x-iris6 (CC): Don't set it.
+ (OLDCC): Likewise.
+
+2000-07-14 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (dwarf2out_frame_debug_expr): If we store the CFA
+ register in the stack and later in another register, use the new
+ register.
+
+Fri Jul 14 10:25:53 2000 Clinton Popetz <cpopetz@cygnus.com>
+
+ * config/mips/mips.md: (absdi2): Handle sign_extend for
+ second operand.
+
+2000-07-14 Nathan Sidwell <nathan@codesourcery.com>
+
+ * cpplib.c (do_pragma_dependency): Tidy warning messages.
+
+2000-07-14 Zack Weinberg <zack@wolery.cumb.org>
+
+ * .cvsignore: Correct typo.
+
+2000-07-13 Mark Mitchell <mark@codesourcery.com>
+
+ * .cvsignore: Add generated YACC files.
+ * objc/.cvsignore: New file.
+
+2000-07-14 Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c (adjust_column): New function.
+ (skip_whitespace): Use it.
+ (skip_block_comment): Use it, and warn about /*/* with
+ -Wcomments.
+
+2000-07-14 Neil Booth <NeilB@earthling.net>
+
+ * cpphash.c (struct macro_info): Add new members.
+ (_cpp_free_definition): Delete the macro directly.
+ (count_params): Return void, with first token of
+ expansion in struct macro_info on success.
+ (parse_define): Return int. Hoist syntax checking from
+ save_macro_expansion. Leave call to save_expansion to
+ _cpp_create_definition.
+ (alloc_macro): Needs just 2 arguments.
+ (free_macro): Delete.
+ (save_expansion): Don't perform syntax check.
+ (_cpp_create_definition): Call save_expansion.
+
+2000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * genrecog.c (write_header): Split long string.
+
+ * cpphash.c (macro_info): Don't use the `signed' keyword.
+
+ * system.h (alloca): Prototype if __GNUC__ && __SIZE_TYPE__.
+
+2000-07-13 Jakub Jelinek <jakub@redhat.com>
+
+ * calls.c (stored_args_map): New variable.
+ (check_sibcall_argument_overlap_1): New.
+ (check_sibcall_argument_overlap): New.
+ (expand_call): Initialize stored_args_map.
+ Call check_sibcall_argument_overlap.
+
+2000-07-13 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixfixes.c: move EXIT_BROKEN to header, add sub-expr max count
+ (emit_gnu_type): utility procedure for gnu_type_fix
+ (gnu_type_fix): implement various pre-processor guards around
+ standard types so these types can be defined over and over
+ * fixinc/fixincl.tpl: add a "gnu_type_map" that forces the standard
+ types alluded to above will have GNU-compliant base types
+ * fixinc/fixlib.h: add EXIT_BROKEN define and the gnu_type_map struct
+ * fixinc/inclhack.def: add test_text entries and utilize the new
+ "gnu_types" fix for the ptrdiff_t, size_t and wchar_t types.
+ * fixinc/fixincl.x: regenerate
+
+2000-07-12 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
+
+ * diagnostic.c (vline_wrapper_message_with_location,
+ v_message_with_file_and_line, v_error_with_file_and_file,
+ v_error_for_asm, v_warning_for_asm, vfatal,
+ v_warning_with_file_and_line, v_pedwarn_with_file_and_line,
+ vsorry, verror, vwarning, vpedwarn): Remove.
+ (diagnostic_for_asm): New function.
+ (pedwarn, error, warning, pedwarn_with_file_and_line,
+ error_with_file_and_line, warning_with_file_and_line, sorry,
+ error_for_asm, warning_for_asm, fatal): Reimplement.
+ (finish_diagnostic): Clear diagnostic info as well.
+
+2000-07-13 Neil Booth <NeilB@earthling.net>
+
+ * c-common.h (flag_digraphs): New.
+ * c-decl.c (c_decode_option): Set flag_digraphs as appropriate.
+ * c-lex.c (yylex): Use flag_digraphs to decide whether to
+ honor digraphs.
+
+2000-07-13 Zack Weinberg <zack@wolery.cumb.org>
+
+ * gcc.c (do_spec_1): Add new %B operator.
+ (set_input): Prepare for %B.
+
+ (link_command_spec): Move up with the other tm.h-
+ overrideable specs. Factor out the portion conditional on
+ LINK_LIBGCC_SPECIAL into a new spec, %(link_libgcc).
+ (struct compiler): Just have a single spec string. All users
+ updated.
+ (default_compilers): Remove unnecessary braces.
+ (static_specs): Update.
+
+ (trad_capable_cpp, cpp_options, cc1_options, asm_options): New
+ named specs.
+ (C and assembly specs): Use the new named specs, as appropriate.
+
+ * objc/lang-specs.h: Use the new named specs.
+ Remove unnecessary braces.
+
+2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
+
+ * gcc.c (execute): If a subprocess gets a fatal signal, report
+ strsignal() of the signal number, and ask for a bug report.
+ Do not do this for SIGPIPE if there's already been an error.
+
+ * tradcpp.c: Don't include signal.h. Don't catch SIGPIPE.
+ Delete pipe_closed.
+
+ * tradcif.c: Remove.
+
+2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
+
+ * final.c (profile_function): Do not emit profile counters in
+ the data section, if NO_PROFILE_COUNTERS is defined.
+ * tm.texi: Document NO_PROFILE_COUNTERS. Update doc for
+ FUNCTION_PROFILER.
+
+ * config/i386/linux.h (NO_PROFILE_COUNTERS): Define.
+ (FUNCTION_PROFILER): Just emit a call to mcount.
+
+2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
+
+ * tradcpp.c (main): Rename 'perror' label to 'sys_error'.
+
+ * cppexp.c, cpphash.c, cpphash.h, cppinit.c, cpplex.c,
+ cpplib.c, cpplib.h: Eradicate all traces of code dependent on
+ traditional, lang_chill, or lang_fortran.
+
+ * cppfiles.c: #undef strcmp to suppress warning about macros
+ used without arguments.
+ (_cpp_execute_include): Use f, not fname, in "No include path"
+ error.
+ (_cpp_pop_file_buffer): New function.
+ * cpplib.c: Don't include <sys/mman.h>.
+ (cpp_push_buffer): Set line_base and lineno in new buffer.
+ (cpp_pop_buffer): Use _cpp_pop_file_buffer.
+
+ * cpplex.c: Move all prototypes and structure declarations to the
+ top of the file. Properly parenthesize some macro arguments.
+ (cpp_scan_line): New function.
+ (special_symbol [case T_INCLUDE_DEPTH]): Use pfile->include_depth,
+ don't need to walk up the stack counting.
+
+2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c (combine_strings): Emit a pedantic warning when a
+ string length is greater than the minimum ANSI C is required
+ to support.
+
+Wed Jul 12 13:24:30 2000 Jeffrey A Law (law@cygnus.com)
+
+ * pa/xm-pa64.h (NO_SYS_SIGLIST): Kill.
+ * d30v/xm-d30v.h (NO_SYS_SIGLIST): Kill.
+
+2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-decl.c (define_label): Warn about identifier conflicts with
+ labels in traditional C.
+
+ * c-parse.in (unop +): Warn about the unary plus operator for
+ traditional C.
+
+ * c-typeck.c (store_init_value): Warn about automatic aggregate
+ initialization for traditional C.
+
+ * invoke.texi (-Wtraditional): Document new warnings.
+
+2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * Makefile.in (c-errors.o): Fix thinko in dependency.
+
+2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
+
+ * gcc.c (C specs [!USE_CPPLIB]): Invoke tradcpp if any of
+ -traditional, -ftraditional, or -traditional-cpp was given.
+ Do not pass -traditional to the preprocessor.
+ (.S spec): Likewise. Don't bother defining __ASSEMBLER__, the
+ preprocessor does it automatically.
+ * objc/lang-specs.h: Likewise. Don't bother defining __OBJC__.
+
+ * ch/lang-specs.h: Always use tradcpp. Do not pass
+ -traditional, -trigraphs, or -pedantic to the preprocessor.
+ * f/lang-specs.h (.F spec): Likewise. Don't bother defining
+ _LANGUAGE_FORTRAN.
+
+2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppexp.c (LOGICAL): Delete macro.
+ (_cpp_parse_expr): Do not use UNARY for unary +. Implement ||
+ and && directly.
+
+ * cpphash.c (HASHSIZE): Increase to 4096.
+ (struct hashdummy): Add hash field.
+ (eq_HASHNODE): Compare unreduced hashes, then lengths, then
+ the string values using memcmp.
+ (cpp_lookup): Set dummy.hash.
+
+Wed Jul 12 13:15:16 2000 Marc Espie <espie@openbsd.org>
+
+ * configure.in (m88k-openbsd): Express configuration using new fragment
+ style.
+ * configure: Rebuilt.
+ * m88k/aout-dbx.h: New.
+ * m88k/openbsd.h: New.
+ * m88k/xm-openbsd.h: New.
+
+2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * expr.c (expand_expr): Return const0_rtx, not error_mark_node.
+
+2000-07-12 Richard Henderson <rth@cygnus.com>
+
+ * reload.c (push_secondary_reload): Make sure to add the new
+ reload at the end, after acquiring secondary memory.
+
+2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cpplex.c (is_macro_disabled): Use CPP_WTRADITIONAL.
+
+ * c-decl.c (set_current_function_name_declared, anon_aggr_type_p,
+ lang_expand_stmt): Mark parameters with ATTRIBUTE_UNUSED.
+
+ * c-parse.in (stmt): Delete unused variables.
+
+ * convert.c (convert_to_vector): Likewise.
+
+ * gensupport.c (process_rtx): Declare attr as `rtvec' not `rtx'.
+
+ * tree.c (finish_vector_type): Prototype.
+
+2000-07-12 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixfixes.c: use xmalloc
+ * fixinc/fixincl.c(initialize): set program name for xmalloc
+ * fixinc/fixlib.c(must_malloc): obsolete
+ (is_cxx_header): no longer used - disabled
+ (skip_quote): inserted and disabled for future use
+ * fixinc/fixlib.h: reflects above
+ * fixinc/fixtests.c: removed dinkleberries
+
+2000-07-12 Neil Booth <NeilB@earthling.net>
+
+ * cpphash.h: (TOKEN_SPELL) Pulled from cpplex.c.
+ * cpplex.c (TOKEN_SPELL) Move to cpphash.h.
+
+ * cpphash.c: (struct macro_info, alloc_macro, free_macro,
+ struct toklist_dummy): New.
+ (cpp_free_definition): Free macros with free_macro.
+ (count_params): Don't save parameter spellings. Save macro
+ information in a struct macro_info.
+ (parse_define): Don't allocate a token list.
+ (save_expansion): Allocate the macro's token list, and
+ save parameter spellings if necessary. Use TOKEN_SPELL.
+ (cpp_create_definition): Make list const.
+
+2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * c-typeck.c (pedwarn_c99): Move to
+ * c-errors.c: ... Here.
+ * toplev.h (verror, vwarning, vpedwarn): Remove prototypes.
+ * diagnostic.c (verror, vwarning, vpedwarn): Make static.
+ * Makefile.in (C_AND_OBJC_OBJS): Include c-errors.o
+ (c-errors.o): List dependency.
+
+2000-07-12 Mark Mitchell <mark@codesourcery.com>
+
+ * c-parse.c: Remove.
+ * c-parse.h: Likewise.
+ * c-parse.y: Likewise.
+ * objc/objc-parse.c: Likewise.
+ * objc/objc-pasre.y: Likewise.
+
+2000-07-11 Rodney Brown <RodneyBrown@pmsc.com>
+
+ * gcc.texi: Fix minor typos
+ * extend.texi: Fix minor typos
+
+2000-07-11 Marc Espie <espie@openbsd.org>
+
+ * collect2.c (main): Recognize .lo as object files.
+
+2000-07-11 J. David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (hppa_encode_label): Store labels in gc memory when ggc_p is
+ true.
+
+ * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Extend test to detect systems
+ with MAP_ANONYMOUS and MAP_ANON.
+ * configure, config.in: Rebuilt.
+
+2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (save_output_state): Remove.
+ (restore_output_state): Likewise.
+ (clear_text_info): New function.
+ (clear_diagnostic_info): Likewise.
+ (output_text_length, is_starting_newline, output_prefix,
+ line_wrap_cutoff, ideal_line_wrap_cutoff, prefix_was_emitted_for,
+ prefixing_policy, output_buffer_ptr_to_format_args): New macros
+ (set_real_maximum_length, output_set_maximum_length,
+ output_set_prefix, output_get_prefix, output_set_maximum_length,
+ output_destroy_prefix, init_output_buffer,
+ reshape_diagnostic_buffer, output_space_left, output_emit_prefix,
+ output_add_newline, output_add_character, output_add_space,
+ output_append_r, output_append, wrap_text, output_format,
+ output_do_printf, output_printf, output_do_verbatim,
+ output_verbatim, verbatim): Use them.
+ (output_clear): Split into cleat_text_info and
+ clear_diagnostic_info.
+ (struct output_state): Move to...
+
+ * diagnostic.h: ...Here
+ (struct output_buffer): Adjust.
+
+2000-07-11 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplex.c (parse_name): No longer inline (premature optimization).
+ (do_pop_context): Fold into pop_context.
+ (pop_context): Returns int.
+ (lex_next): Hoist test for end of directive into pop_context.
+ (push_macro_context): Returns int; takes just reader and token.
+ Hoist test for excessive nesting to caller.
+ (push_arg_context): Returns void; takes just reader and token.
+ Do not call stringify_arg or get_raw_token.
+ (get_raw_token): Convert tail recursion through push_arg_context
+ to a loop at this level. Call stringify_arg here if appropriate.
+ (maybe_paste_with_next): Convert tail recursion to a while loop.
+ Hoist test of paste_level to caller.
+
+ (stringify_arg): Push arg context at beginning.
+ (cpp_get_token): Split out core into _cpp_get_token. Call
+ process_directive here. Throw away CPP_PLACEMARKER tokens.
+ (_cpp_get_token): Convert tail recursion through
+ push_macro_context to a loop at this level.
+ (_cpp_glue_header_name, is_macro_disabled, stringify_arg,
+ _cpp_get_raw_token): Use _cpp_get_token.
+ (_cpp_skip_rest_of_line): Drop the context stack directly; do
+ not call pop_context.
+ (_cpp_run_directive): Call lex_next directly.
+
+ * cpphash.h: Prototype _cpp_get_token.
+ * cppexp.c (lex): Use it.
+ * cpphash.c (parse_define): Use it.
+ * cpplib.c (get_define_node, do_undef, parse_include,
+ read_line_number, do_line, do_ident, do_pragma, do_pragma_gcc,
+ do_pragma_implementation, do_pragma_poison, do_pragma_dependency,
+ parse_ifdef, validate_else): Use it.
+ (cpp_push_buffer): Tweak error message; abort if anyone tries
+ to push a buffer while macro expansions are stacked.
+
+2000-07-11 Donn Terry <donnte@microsoft.com>
+
+ * cpplex.c (free_macro_args, save_token): Cast arg of free
+ and/or xrealloc to PTR.
+ (_cpp_init_input_buffer): Clear all fields of the base context.
+
+Tue Jul 11 15:28:21 CDT 2000 Clinton Popetz <cpopetz@cygnus.com>
+
+ * gensupport.c (process_rtx): Make rtl checking stop
+ complaining about the define_insn while it is being
+ converted from a define_insn_and_split.
+
+Tue Jul 11 16:26:17 2000 Clinton Popetz <cpopetz@cygnus.com>
+
+ * config/mips/mips.c (simple_memory_operand): Access the
+ INTVAL of the address, not it's containing MEM.
+
+2000-07-11 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixtests.c(double_slash): obsolete
+ (else_endif_label): likewise
+ * fixinc/inclhack.def(irix_multiline_cmnt): obsolete
+ (libc1_ifdefd_memx): correct initial comment
+ and omit the #if/#endif pair from the memxxx declarations
+ * fixinc/fixincl.x: regen
+
+2000-07-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cpplex.c (T, I, S, C, N): Avoid non-constant initializers.
+
+2000-07-11 Neil Booth <NeilB@earthling.net>
+
+ * cpp.texi: Update.
+
+2000-07-11 Neil Booth <NeilB@earthling.net>
+
+ * cppinit.c: (cpp_reader_init): Allow digraphs by default.
+ (handle_option): Set digraphs according to standard.
+ Merge OPT_lang_c89 handler with OPT_std_c89.
+
+ * cpplex.c: (lex_line, can_paste): Honor digraphs in
+ accordance with the digraphs flag.
+
+ * cpplib.h: (struct cpp_options): New option digraphs.
+
+2000-07-10 Hans-Peter Nilsson <hp@axis.com>
+ Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def (libc1_ifdefd_memx): New fix.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/testing.h: Add testcase.
+
+2000-07-10 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (got_symbolic_operand): New.
+ (symbolic_operand, move_operand): Revert 0701 change.
+ * config/ia64/ia64.h (PREDICATE_CODES): Update.
+ * config/ia64/ia64-protos.h (got_symbolic_operand): Declare.
+ * config/ia64/ia64.md (movdi): Revert 0701 wrt symbolic_operand;
+ split the offset into a 14-bit low part instead of a 13-bit low part.
+ (load_fptr): Mark the mem as unchanging.
+ (load_symptr): Use got_symbolic_operand.
+
+2000-07-10 Nick Clifton <nickc@cygnus.com>
+
+ * libgcc2.c (next_stack_level): Cast result of computation to
+ (void **) so that the assignment does not generate a warning.
+
+2000-07-10 Chandrakala Chavva <cchavva@redhat.com>
+
+ * flags.h : Add new variable flag_single_precision_constant.
+ * toplev.c (display_help) : Add -fsingle-precision-constant option.
+ (flag_single_precision_constant): New.
+ * c-lex.c (yylex): Convert floating point constant to single
+ precision constant.
+ * invoke.texi : Add documentation for this new option.
+
+2000-07-10 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (output_octal): Second parameter is unsigned.
+ (output_long_octal): Likewise.
+ (output_hexadecimal): Likewise.
+ (output_long_hexadecimal): Likewise.
+ (output_format): Adjust arguments extraction. Tweak.
+ (output_verbatim, verbatim): End variable argument list.
+ (report_diagnostic): Improve documentation.
+
+2000-07-10 Benjamin Chelf <chelf@codesourcery.com>
+
+ * c-common.h (build_stmt): Declare.
+ (build_continue_stmt): Likewise.
+ (build_break_stmt): Likewise.
+ (build_return_stmt): Likewise.
+
+ * c-decl.c (do_case): Rewrite to do what previously done in
+ c-parse.in.
+
+ * c-semantics.c (build_stmt): Define.
+ (build_return_stmt): Likewise.
+ (build_break_stmt): Likewise.
+ (build_continue_stmt): Likewise.
+ (build_case_label): Likewise.
+
+ * c-parse.in (BREAK): Change to build tree, then generate RTL.
+ (CONTINUE): Likewise.
+ (RETURN): Likewise.
+ (CASE): Likewise.
+ (DEFAULT): Likewise.
+
+ * c-parse.y: Regenerate.
+ * c-pasre.c: Likewise.
+
+2000-07-09 Jason Merrill <jason@redhat.com>
+
+ * expr.c (expand_expr): Bail earlier if we get an error_mark_node.
+
+ * tree.h (STRIP_NOPS): Check for error_mark_node.
+ (STRIP_SIGN_NOPS, STRIP_TYPE_NOPS): Likewise.
+ (dwarf2out_*): Remove duplicate declarations.
+
+ * c-decl.c (duplicate_decls): Copy DECL_ABSTRACT_ORIGIN from
+ DECL_ABSTRACT_ORIGIN, not DECL_ORIGIN.
+
+2000-07-10 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (wrap_text): New function.
+ (maybe_wrap_text): Likewise.
+ (output_add_string): Use it.
+ (output_format): Likewise.
+ (count_error): Use verbatim instead of notice.
+ (report_error_function): Likewise. Don't use plain fprintf.
+ (finish_diagnostic): New function.
+ (output_do_verbatim): Tweak. Commonalize functionalities in
+ output_verbatim and verbatim.
+ (output_verbatim): Adjust.
+ (verbatim): Likewise.
+ (report_diagnostic): Define.
+
+ * diagnostic.h (report_diagnostic): Prototype.
+
+2000-07-09 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppexp.c (_cpp_parse_expr): Don't use unary plus.
+
+2000-07-09 Neil Booth <NeilB@earthling.net>
+
+ * cpphash.h: ISvspace, is_vspace, is_nvspace: New.
+ IShspace, ISspace: Update.
+
+ * cppinit.c: ISTABLE: Update.
+ V: New.
+
+ * cpplex.c (IS_HSPACE, S_NEWLINE): Remove.
+ (IS_DIRECTIVE): Rename KNOWN_DIRECTIVE.
+ (skip_block_comment, skip_line_comment, parse_string,
+ lex_line): Use is_vspace rather than IS_NEWLINE.
+ (skip_whitespace, lex_line): Clean up to use is_nvspace.
+ (lex_line): Use KNOWN_DIRECTIVE. Any kind of directive
+ gets a BOL flag.
+ (lex_next): Unconditionally stop if within a directive.
+ Treat directives within macro invocations as directives
+ (after parse_args emits error), not as the argument.
+
+2000-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (diagnostic_args): New macro.
+ (diagnostic_msg): Likewise.
+ (output_formatted_integer): Likewise.
+ (output_state): New data type.
+ (digit_buffer): Make global.
+ (output_add_integer): Rename to output_decimal. Squeeze
+ digit_buffer.
+ (output_long_decimal, output_unsigned_decimal,
+ output_long_unsigned_decimal, output_octal, output_long_octal,
+ output_hexadecimal, output_long_hexadecimal): New functions.
+ (output_append_r): New function.
+ (output_append): Tweak.
+ (output_flush_on): Rename to output_to_stream.
+ (output_format): Change prototype. Improve documentation. Handle
+ more format specifiers.
+ (build_location_prefix): Rename to context_as_prefix.
+ (output_notice): Rename to output_do_printf.
+ (output_printf): Tweak.
+ (line_wrapper_printf): Likewise.
+ (vline_wrapper_message_with_location): Adjust call to renamed
+ functions.
+ (v_message_with_decl): Likewise.
+ (default_print_error_function): Likewise.
+ (save_output_state): New function.
+ (restore_output_state): Likewise.
+ (output_do_verbatim): Likewise.
+ (output_verbatim): Define.
+ (verbatim): Likewise.
+
+ * diagnostic.h (printer_fn): Change return type from void to int.
+ Improve documentation.
+ (output_add_integer): Rename to output_decimal.
+ (output_flush_on, output_format): Don't export.
+ (output_verbatim, verbatim): Declare.
+
+2000-07-08 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * fold-const.c (extract_muldiv) case PLUS_EXPR, MINUS_EXPR:
+ Check whether c divides op1 exactly if operation is not
+ multiplication.
+
+2000-07-08 Richard Henderson <rth@cygnus.com>
+
+ * final.c (final): Do not abort when reg-stack introduces
+ a new insn.
+
+2000-07-08 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplib.h (struct cpp_name): Now struct cpp_string.
+ (CPP_INT, CPP_FLOAT, CPP_NUMBER, CPP_COMMENT,
+ CPP_HEADER_NAME): Change to type S.
+ (struct cpp_token): Rename 'name' field to 'str'. Add 'node'
+ field, a cpp_hashnode *. All references to val.name updated
+ to use val.str or val.node as appropriate.
+ (struct cpp_reader): Add spec_nodes field.
+ (cpp_idcmp): Now cpp_ideq; takes a token * and a char *.
+
+ * cpphash.h (struct spec_nodes): New.
+ (enum spell_type): Reorder. Only SPELL_STRING tokens use
+ val.str. All references to 'spelling > SPELL_NONE' updated to
+ match.
+
+ (CPP_IN_SYSTEM_HEADER): Check pfile->buffer and
+ pfile->buffer->inc are not NULL before dereferencing them.
+
+ * cpplex.c (parse_name): Take a pointer to the current token,
+ plus current position and limit as args; return the new
+ position; don't copy the text of a name into the string
+ buffer, instead call cpp_lookup and store the node pointer.
+ If extending a token, copy out the text of the old into a
+ scratch buffer, append the new, look that up and store the new
+ node pointer. Inline.
+ (maybe_paste_with_next): If the result of paste is a NAME,
+ then look up the pasted text and store its node pointer.
+ (lex_line): Adjust for new parse_name interface.
+ Check for L"str", L'str' using spec_nodes->n_L.
+ (spell_token): SPELL_IDENT tokens have their spelling in
+ val.node->name. Handle SPELL_STRING tokens that don't have
+ string delimiters.
+ (_cpp_expand_name_space,
+ (can_paste): Check for L ## "str" using spec_nodes->n_L.
+ (cpp_get_token, special_symbol): No need to call cpp_lookup.
+ (cpp_idcmp): Now cpp_ideq; take a token * and a const char *;
+ return 1=equal 0=not, not a tristate.
+
+ * cpphash.c (var_args_str): Delete.
+ (find_param): Compare node fields directly.
+ (is__va_args__): Use CPP_PEDANTIC. Just compare
+ token->val.node with spec_nodes->n__VA_ARGS__.
+ (dump_funlike_macro): Don't use var_args_str.
+
+ * cpplib.c (_cpp_check_directive): Just walk through
+ spec_nodes->dirs comparing pointers.
+ (get_define_node, do_pragma_poison, detect_if_not_defined,
+ parse_ifdef): The identifier has already been looked up.
+ (do_ifdef, do_ifndef): parse_ifdef won't return a poisoned
+ node.
+ (do_if): Only call detect_if_not_defined at beginning of file.
+ (_cpp_parse_assertion): Only copy string pointers for
+ SPELL_STRING tokens.
+ (pragma_dispatch): Take a node pointer and examine its name
+ field.
+ (_cpp_init_stacks): Also initialize the spec_nodes structure.
+
+ * cppinit.c (cpp_reader_init): Call _cpp_init_stacks after
+ _cpp_init_macros.
+ (cpp_cleanup): Free pfile->spec_nodes. Call _cpp_cleanup_* in
+ reverse order from the corresponding _cpp_init_* routines.
+
+ * cppexp.c (parse_number, parse_charconst, parse_defined,
+ lex): Check val.node->type instead of calling cpp_defined.
+ Use spec_nodes entries where appropriate.
+
+ * fix-header.c, scan-decls.c: Update for interface changes.
+
+2000-07-08 Geoffrey Keating <geoffk@cygnus.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): Fix conditions for
+ emitting aux_truncdfsf2.
+
+2000-07-03 Donn Terry (donnte@microsoft.com)
+
+ * cppinit.c (print_help): split overlong line into ISO C89
+ maximum chunks.
+
+2000-07-07 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppexp.c: Update all code for new lexer interface.
+ (op_t, operator codes, struct token, tokentab2, op_to_str): Remove.
+ (struct suffix, vsuf_1, vsuf_2, vsuf_3, op_to_prio): New.
+ * cpplex.c (token_names): Trim leading CPP_ from names; make
+ the strings unsigned.
+ (_cpp_spell_operator): New.
+ (is_macro_disabled): Disable all macros if rescanning
+ preprocessed text.
+ (_cpp_get_directive_token): Remove.
+
+ * cppinit.c: Don't set no_macro_expand.
+ * cpplib.c (read_line_number, do_line): Check only for EOF,
+ not VSPACE.
+ * cpphash.h: Update prototypes.
+ * cpplib.h (CPP_VSPACE): Remove.
+ (struct cpp_reader): Remove no_macro_expand.
+
+2000-07-08 Neil Booth <NeilB@earthling.net>
+
+ * cpphash.c (is__va_args__): New function.
+ (count_params): Fix line reported in error messages. Use
+ is__va_args__. Don't return ')' on error. Flag GNU style
+ rest args macro definitions.
+ (parse_define): Check macro name is not __VA_ARGS__.
+ (save_expansion): Check identifier in non-varargs-macro is
+ not __VA_ARGS__. Don't flag GNU_VARARGS.
+ * cpplex.c (parse_args): Accept no argument iff GNU_REST_ARGS.
+ (maybe_paste_with_next): Use per-macro GNU_REST_ARGS rather
+ than per-token GNU_VARARGS.
+ * cpplib.h (GNU_VARARGS): Remove.
+ (GNU_REST_ARGS): New.
+
+Sat Jul 8 01:38:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (call_pop, call, call_value_pop): Do not set
+ current_function_uses_pic_offset_table for calls to static
+ functions or indirect calls.
+
+2000-07-07 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.c (rws_access_reg): New local write_count. If
+ is_predicate_reg, then take max write_count of register pair.
+
+2000-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * tradcpp.c (main): Rename label `include' to `add_include' to
+ avoid conflicts with variable `include' in traditional C.
+
+2000-07-07 Jakub Jelinek <jakub@redhat.com>
+
+ * integrate.c (copy_insn_list): Remove REG_LABEL notes.
+
+2000-07-07 Jakub Jelinek <jakub@redhat.com>
+
+ * sibcall.c (uses_addressof): Add INMEM argument, check for
+ current_function_internal_arg_pointer outside of MEM rtxs in addition
+ to ADDRESSOFs.
+ (sequence_uses_addressof): Update caller.
+
+2000-07-07 Zack Weinberg <zack@wolery.cumb.org>
+
+ * tradcpp.c (initialize_builtins): Honor NO_BUILTIN_SIZE_TYPE
+ and friends.
+
+2000-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (UNION_INIT_ZERO): New macro for initializing union
+ members in structs.
+
+ * cpplex.c (placemarker_token, eof_token): Use UNION_INIT_ZERO.
+
+2000-07-07 Neil Booth <NeilB@earthling.net>
+
+ * cpp.texi: Update.
+
+Fri Jul 7 07:47:35 2000 Jeffrey A Law (law@cygnus.com)
+
+ * final.c (final): Detect out of bounds array access to
+ the insn_lengths array.
+
+2000-07-07 Kazu Hirata <kazu@hxi.com>
+
+ * fold-const.c (fold): Fix a comment typo.
+
+2000-07-07 Neil Booth <NeilB@earthling.net>
+
+ * cpp.texi: Update to new lexer.
+
+2000-07-06 Zack Weinberg <zack@wolery.cumb.org>
+
+ * tradcpp.c: New file.
+ * tradcif.y: New file.
+ * tradcif.c: New generated file.
+
+ * Makefile.in: Add rules to build tradcpp.o, tradcif.o,
+ $(srcdir)/tradcif.c. Add tradcpp to STAGESTUFF and
+ dependencies of C. Install tradcpp from install-common, in
+ $(libsubdir).
+
+2000-07-06 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppinit.c: Include cppdefault.h. Refer to
+ cpp_GCC_INCLUDE_DIR and cpp_GCC_INCLUDE_DIR_len, not directly
+ to GCC_INCLUDE_DIR and its length.
+ (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
+ USER_LABEL_PREFIX, REGISTER_PREFIX, struct default_include,
+ STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT): Move to
+ cppdefault.h.
+ (include_defaults_array): Move to cppdefault.c.
+
+ * cppdefault.h: New file.
+ * cppdefault.c: New file.
+
+ * Makefile.in (LIBCPP_OBJS): Add cppdefault.o.
+ (cppinit.o): Don't apply $(PREPROCESSOR_DEFINES) to this file.
+ (cppdefault.o): New rule; apply $(PREPROCESSOR_DEFINES) to
+ this file.
+
+Thu Jul 6 18:30:36 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * reload.c (push_reload): When seeing if can reuse a register,
+ check extra registers against widest of INMODE and OUTMODE.
+
+2000-07-06 Neil Booth <NeilB@earthling.net>
+
+ * cpplib.c: (_cpp_parse_assertion): Perform hash lookups
+ based on full length of predicate.
+
+2000-07-06 Hans-Peter Nilsson <hp@axis.com>
+
+ * timevar.c: [HAVE_SYS_RESOURCE_H]: Include <sys/resource.h>.
+ [NEED_DECLARATION_GETRUSAGE]: Declare getrusage.
+
+2000-07-05 Kazu Hirata <kazu@hxi.com>
+
+ * h8300-proto.h: Fix formatting.
+ * h8300.c: Likewise.
+ * h8300.h: Likewise.
+
+2000-07-05 Jim Wilson <wilson@cygnus.com>
+
+ * config/ia64/ia64.h (HARD_REGNO_MODE_OK): If FR_REGNO_P, disallow
+ CCmode.
+
+2000-07-05 Rodney Brown <RodneyBrown@pmsc.com>
+
+ * invoke.texi: Fix minor typos
+ * md.texi: Fix minor typos
+
+2000-07-05 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplib.c (_cpp_parse_assertion): Fix buffer overrun.
+
+2000-07-04 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplex.c: Don't include sys/mman.h.
+ (cpp_push_buffer, cpp_pop_buffer): Moved to cpplib.c.
+
+ * cpplib.c: Include sys/mman.h and obstack.h.
+ (cpp_push_buffer): Moved from cpplex.c; allocate buffers on an
+ obstack.
+ (cpp_pop_buffer): Moved from cpplex.c; free buffers from an obstack.
+ (_cpp_unwind_if_stack): Now static, unwind_if_stack. Don't
+ bother freeing if stack entries (they will be freed with their buffer).
+ (do_endif): Free if stack entries from the buffer obstack.
+ (push_conditional): Allocate if stack entries from the buffer obstack.
+
+ (find_answer): Rename to _cpp_find_answer.
+ (do_assert, do_unassert): Update.
+
+ * cpphash.h: Update prototypes.
+ (xobnew): New convenience macro.
+ * cpplib.h (struct cpp_reader): Add hash_ob and buffer_ob fields.
+ Update comments.
+ (struct cpp_hashnode): Remove disabled field.
+
+ * cppinit.c: Don't include hashtab.h or splay-tree.h.
+ (report_missing_guard): Moved to cppfiles.c.
+ (cpp_reader_init): Call cpp_init_stacks, cpp_init_macros,
+ cpp_init_includes.
+ (cpp_cleanup): Call cpp_cleanup_stacks, cpp_cleanup_macros,
+ cpp_cleanup_includes. Don't destroy hashtab or
+ all_include_files here.
+ (cpp_finish): Use _cpp_report_missing_guards.
+
+ * cppfiles.c (report_missing_guard): Moved from cppinit.c.
+ (_cpp_init_include_table): Rename _cpp_init_includes.
+ (_cpp_cleanup_includes, _cpp_report_missing_guards): New.
+
+ * cppexp.c (parse_assertion): Update for new name of
+ find_answer.
+
+ * Makefile.in (cpplib.o, cpphash.o, cppinit.o): Update deps.
+
+2000-07-04 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cpplib.c (do_ident): s/VSPACE/EOF/
+
+2000-07-05 Neil Booth <NeilB@earthling.net>
+
+ * cpplex.c: Fix trigraph replacement within strings.
+
+2000-07-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * rs6000/aix.h (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier.
+
+ * xcoffout.c (assign_type_number): Constify.
+ (xcoffout_source_file): Add static prototype. Don't needlessly
+ cast away const-ness.
+
+2000-07-04 Jason Merrill <jason@redhat.com>
+
+ * frame.h (frame_state): Move base_offset to end.
+
+Mon Jul 3 21:31:43 2000 Clinton Popetz <cpopetz@cygnus.com>
+
+ * calls.c (emit_library_call_value_1): Revert previous change.
+
+2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
+
+ * fix-header.c (struct partial_proto): Remove unnecessary fields.
+ (recognized_extern, recognized_function, read_scan_file):
+ Update for new scheme.
+ (check_protection): It's still a multiple include guard even
+ if it doesn't always trigger.
+ * scan-decls.c (skip_to_closing_brace, scan_decls): Update for
+ new scheme.
+ * scan.h: Declare struct cpp_token. Update prototypes.
+
+2000-07-03 Neil Booth <neilb@earthling.net>
+ Zack Weinberg <zack@wolery.cumb.org>
+
+ Complete overhaul of the lexer and macro expander.
+
+ * cpphash.c (object_defn, funct_defn, push_macro_expansion,
+ arg, arglist, argdata, reflist, collect_objlike_expansion,
+ collect_funlike_expansion, collect_params,
+ warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
+ unsafe_chars, macarg, compare_defs, special_symbol,
+ scan_arguments, stringify, funlike_macroexpand,
+ _cpp_quote_string, monthnames): Delete.
+ (cpp_lookup, _cpp_free_definition, dump_funlike_macro,
+ _cpp_create_definition, _cpp_dump_definition,
+ dump_hash_helper): Adjust.
+ (find_param, count_params, parse_define, var_args_str,
+ check_macro_redefinition, save_expansion): New.
+
+ * cpplex.c (skip_block_comment, skip_line_comment, parse_name,
+ parse_string, output_line_command, trigraph_replace,
+ lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
+ cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
+ cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
+ _cpp_skip_rest_of_line): Modify.
+
+ (maybe_macroexpand, skip_comment, copy_comment, skip_string,
+ find_position, null_warning, bump_column, expand_name_space,
+ pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
+ _cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
+ _cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
+ _cpp_prescan): Delete.
+
+ (dump_param_spelling, process_directive, lex_next,
+ is_macro_disabled, stringify_arg, expand_context_stack,
+ output_token, make_string_token, alloc_number_token,
+ special_symbol, duplicate_token, maybe_paste_with_next,
+ can_paste, prevent_macro_expansion, restore_macro_expansion,
+ get_temp_token, release_temp_tokens, quote_string,
+ token_names, token_spellings, _cpp_expand_name_space,
+ _cpp_glue_header_name, _cpp_reserve_name_space,
+ digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
+ placemarker_token, eof_token, cpp_context, macro_args,
+ get_raw_token, parse_arg, parse_args, save_token,
+ push_arg_context, push_macro_context, pop_context,
+ do_pop_context, free_macro_args, _cpp_get_line,
+ _cpp_run_directive): New.
+
+ * cpplib.c (validate_else, parse_include, push_conditional,
+ pass_thru_directive, read_line_number, parse_ifdef,
+ detect_if_not_defined, _cpp_check_directive, do_define,
+ do_undef, do_include, do_import, do_include_next, do_error,
+ do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
+ top_pragmas, do_pragma_gcc, do_pragma_implementation,
+ do_pragma_poison, do_pragma_system_header,
+ do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
+ dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
+ do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
+ cpp_defined): Update for new scheme.
+ (strtoul_for_line, get_define_node, dump_macro_name,
+ _cpp_check_linemarker, _cpp_parse_assertion): New.
+ (_cpp_handle_directive, do_pragma_default): Delete.
+
+ * cpphash.h (struct predicate): Now struct answer.
+ (enum spell_type, struct token_spelling, struct directive,
+ directive_handler): New.
+ Update prototypes. Remove unused macros.
+ * cpplib.h: Update prototypes. Remove unused macros,
+ structure definitions, and fields.
+
+ * cpperror.c (print_containing_files, v_message): Adjust.
+ * cppexp.c (parse_assertion, lex, parse_escape,
+ _cpp_parse_expr): Adjust.
+ * cppfiles.c (open_include_file, _cpp_execute_include,
+ _cpp_compare_file_date, cpp_read_file, read_include_file):
+ Adjust.
+ * cppinit.c (dump_special_to_buffer): Delete.
+ (append_include_chain, merge_include_chains, cpp_reader_init,
+ cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
+ cpp_finish, handle_option, print_help): Adjust.
+ * cppmain.c (main): Adjust.
+
+2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
+
+ * cppspec.c (lang_specific_driver): Use double quotes in error
+ message.
+
+Mon Jul 3 16:53:43 2000 Clinton Popetz <cpopetz@cygnus.com>
+
+ * calls.c (emit_library_call_value_1): Use valreg instead
+ of hard_libcall_value.
+
+2000-07-03 Geoff Keating <geoffk@cygnus.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): New function.
+ * config/rs6000/rs6000-proto.h: Prototype rs6000_emit_move.
+ * config/rs6000/rs6000.md (movsi): Use rs6000_emit_move.
+ (movhi): Likewise.
+ (movqi): Likewise.
+ (movdf): Likewise.
+ (movsf): Likewise.
+ (movdi): Likewise.
+ (movti): Likewise.
+
+ * expmed.c (expand_mult_highpart): Use op1 instead of wide_op1 when
+ mode instead of wider_mode is being used.
+
+2000-07-03 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (movstrictqi_xor): Use 'q' constraint instead
+ of 'r'. Use q_regs_operand.
+ (andsi_1+2): Use q_regs_operand.
+
+2000-07-03 Jakub Jelinek <jakub@redhat.com>
+
+ * builtins.c (get_memory_rtx): Always put into alias set 0.
+
+2000-07-03 Nick Clifton <nickc@cygnus.com>
+
+ * config/arm/arm.md: Fix post increment and pre increment
+ peepholes so that they do not generate UNPREDICATBLE opcodes.
+ (ie ones where the increment clobbers the source/destination).
+
+2000-07-01 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.c (out_adj_frame_ptr): Make "frame pointer
+ change too big for -mtiny-stack" a warning, if larger than 63.
+ (out_set_stack_ptr): Change the logic so -mno-interrupts is
+ always safe to use on possible future devices.
+ (function_prologue): Write SPH before SPL, for consistency.
+ If interrupt_func_p true, we know we have enabled interrupts.
+ (avr_num_arg_regs): New function. Round up to even number of
+ bytes if no -mpack-args or if calling a libgcc function.
+ (function_arg, function_arg_advance): Use it.
+ (output_movsisf, ashlsi3_out, ashrsi3_out, lshrsi3_out):
+ Output "movw" if available.
+ (out_tsthi, out_tstsi, ashlqi3_out, lshrqi3_out): Change uses
+ of TEST_HARD_REG_CLASS macro to test_hard_reg_class function.
+ (asm_output_section_name): Add blanks for consistent output.
+ (encode_section_info): Set TREE_READONLY for progmem data to
+ avoid gas warnings about changed section attributes.
+ (avr_hard_regno_mode_ok): Force non-QImode data to start in
+ even numbered registers on devices with "movw".
+ * config/avr/avr.h (MASK_*): Define bits for target_flags.
+ (TARGET_SWITCHES): Mark help strings for translation.
+ Add new -mpack-args and -menhanced switches.
+ (TARGET_OPTIONS): Mark help strings for translation.
+ (progmem_section): Add section attributes.
+ * config/avr/avr.md (*movhi, call_insn, call_value_insn):
+ Output "movw" if available.
+ (mulqi3, mulqihi3, umulqihi3, mulhi3, *tablejump_enh):
+ New patterns.
+ * config/avr/libgcc.S (_mulqi3, _divqi3): Update to the new
+ call convention (arguments aligned on even registers).
+ (_cleanup, _exit): Make weak symbols libc can override.
+
+2000-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fp-bit.h: New file.
+
+ * fp-bit.c: Move common code, prototypes, etc into fp-bit.h.
+ Comment #endif statements.
+ (__thenan_sf, __thenan_df): Add missing braces around initializer.
+
+Mon Jul 3 00:32:47 2000 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (compute_pre_data): Compute ae_kill using other local
+ properties instead of calling compute_ae_kill.
+
+ * alias.c (init_alias_analysis): Do not call
+ prologue_epilogue_contains until after reload has completed.
+
+2000-07-02 Benjamin Chelf <chelf@codesourcery.com>
+
+ * c-common.h (genrtl_begin_compound_stmt): Remove declaration.
+ (genrtl_finish_compound_stmt): Likewise.
+ (genrtl_compound_stmt): Change to return void.
+
+ * c-semantics.c (genrtl_begin_compound_stmt): Remove function and
+ move code from here to ...
+ (genrtl_compound_stmt): ... here.
+ (genrtl_finish_compound_stmt): Remove.
+ (expand_stmt): Add comment.
+
+2000-07-02 Zack Weinberg <zack@wolery.cumb.org>
+
+ * c-typeck.c (build_indirect_ref): Use COMPLETE_OR_VOID_TYPE_P
+ and VOID_TYPE_P.
+
+2000-07-02 Jakub Jelinek <jakub@redhat.com>
+
+ * cpplib.h (struct cpp_reader): New field include_depth.
+ (struct cpp_printer): Rename last_bsd to last_id.
+ * cppfiles.c (read_include_file): Bump include_depth.
+ * cpplex.c (cpp_pop_buffer): Decrement include_depth.
+ (output_line_command): Output correct #line if a header
+ is including itself and is not protected against multiple inclusion.
+ Use include_depth instead of buffer_stack_depth, last_id instead of
+ last_bsd.
+ * cppinit.c (cpp_start_read): Initialize last_id instead of
+ last_bsd.
+
+2000-07-01 Benjamin Chelf <chelf@codesourcery.com>
+
+ * Makefile.in (C_AND_OBJC_OBJS): Added c-semantics.o.
+ (c-semantics.o): New target.
+
+ * c-common.h (TREE_LANG_FLAG_?): Added documentation.
+ (genrtl_do_pushlevel): Moved from cp/cp-tree.h.
+ (genrtl_clear_out_block): Likewise.
+ (genrtl_goto_stmt): Likewise.
+ (genrtl_expr_stmt): Likewise.
+ (genrtl_decl_stmt): Likewise.
+ (genrtl_if_stmt): Likewise.
+ (genrtl_while_stmt): Likewise.
+ (genrtl_do_stmt): Likewise.
+ (genrtl_return_stmt): Likewise.
+ (genrtl_for_stmt): Likewise.
+ (genrtl_break_stmt): Likewise.
+ (genrtl_continue_stmt): Likewise.
+ (genrtl_scope_stmt): Likewise.
+ (genrtl_switch_stmt): Likewise.
+ (genrtl_case_label): Likewise.
+ (genrtl_begin_compound_stmt): Likewise.
+ (gerntl_finish_compound_stmt): Likewise.
+ (genrtl_compound_stmt): Likewise.
+ (genrtl_asm_stmt): Likewise.
+ (genrtl_decl_cleanup): Likewise.
+ (DECL_ANON_UNION_ELEMS): Likewise.
+ (emit_local_var): Likewise.
+ (make_rtl_for_local_static): Likewise.
+ (expand_cond): Likewise.
+ (expand_stmt): Likewise.
+ (c_expand_return): Likewise.
+ (c_expand_start_case): Likewise.
+ (do_case): Likewise.
+ (COMPOUND_STMT_NO_SCOPE): Likewise.
+ (c_expand_asm_operands): Likewise.
+ (NEW_FOR_SCOPE_P): New macro.
+ (expand_expr_stmt_fn): New type.
+
+ (set_current_function_name_declared): Likewise.
+ (current_function_name_declared): Likewise.
+ (lang_expand_stmt): Likewise.
+ (stmts_are_full_exprs_p): Likewise.
+ (anon_aggr_type_p): Likewise.
+ (lang_expand_expr_stmt): Likewise.
+ (build_case_label): Likewise.
+
+ * c-decl.c (lang_expand_expr_stmt): Initialize.
+ (stmts_are_full_exprs_p): Define.
+ (current_function_name_declared): Likewise.
+ (do_case): Likewise.
+ (lang_expand_stmt): Likewise.
+ (set_current_function_name_declared): Likewise.
+ (anon_aggr_type_p): Likewise.
+
+ * c-semantics.c: New file.
+ (expand_cond): Moved from cp/semantics.c.
+ (genrtl_do_pushlevel): Likewise.
+ (genrtl_clear_out_block): Likewise.
+ (genrtl_goto_stmt): Likewise.
+ (genrtl_expr_stmt): Likewise.
+ (genrtl_decl_stmt): Likewise.
+ (genrtl_if_stmt): Likewise.
+ (genrtl_while_stmt): Likewise.
+ (genrtl_do_stmt): Likewise.
+ (genrtl_return_stmt): Likewise.
+ (genrtl_for_stmt): Likewise.
+ (genrtl_break_stmt): Likewise.
+ (genrtl_continue_stmt): Likewise.
+ (genrtl_scope_stmt): Likewise.
+ (genrtl_switch_stmt): Likewise.
+ (genrtl_case_label): Likewise.
+ (genrtl_begin_compound_stmt): Likewise.
+ (genrtl_finish_compound_stmt): Likewise.
+ (genrtl_compound_stmt): Likewise.
+ (genrtl_asm_stmt): Likewise.
+ (genrtl_decl_cleanup): Likewise.
+ (make_rtl_for_local_static): Moved from cp/decl.c.
+ (emit_local_var): Likewise.
+ (expand_stmt): Define.
+
+ * c-tree.h: (c_expand_asm_operands): Moved to c-common.h.
+ (c_expand_return): Likewise.
+ (c_expand_start_case): Likewise.
+
+2000-07-01 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (symbolic_operand): Reject CONST expressions
+ with the low 13 bits set.
+ (move_operand): Check for CONST|SYMBOL_REF|LABEL_REF directly.
+ * config/ia64/ia64.md (movdi): Likewise. Expand a CONST with one
+ of the low 13 bits into a CONST plus an adddi3.
+ (load_symptr): Set RTX_UNCHANGING_P.
+
2000-06-30 Mark Mitchell <mark@codesourcery.com>
* Makefile.in (c-common.o): Don't depend on c-tree.h or c-lex.h.
@@ -16856,5 +32122,3 @@ Mon Jan 3 02:54:40 2000 Hans-Peter Nilsson <hp@bitrange.com>
* expmed.c (emit_store_flag): Prevent losing a pending stack
adjust the same way we prevent losing queued increments.
-
-See ChangeLog.2 for earlier changes.
diff --git a/gcc/ChangeLog.6 b/gcc/ChangeLog-2001
index 8e1510d0093..c2ee9b024af 100644
--- a/gcc/ChangeLog.6
+++ b/gcc/ChangeLog-2001
@@ -19205,4 +19205,14441 @@ Sun Jul 1 11:53:52 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
(check_for_label_ref): New function.
(cse_basic_block): Don't check new_label_ref; call check_for_label_ref.
-See ChangeLog.5 for earlier changes.
+2001-06-30 Zack Weinberg <zackw@stanford.edu>
+
+ * rtl.def (DEFINE_INSN, DEFINE_INSN_AND_SPLIT, DEFINE_PEEPHOLE):
+ Change output-template slot to format 'T'.
+ * rtl.h (XTMPL): New.
+ * read-rtl.c (read_escape): New function.
+ (read_quoted_string, read_braced_string): Use it.
+ (read_rtx): Set star_if_braced from the format string.
+ Use XTMPL where appropriate.
+ * genoutput.c (gen_insn, gen_peephole): Use XTMPL to get the
+ template string.
+
+ * rtl.c: Include errors.h for sake of rtl_check_failed* routines.
+ Document 'T' in rtx format strings.
+ * Makefile.in (rtl.o, $(HOST_PREFIX_1)rtl.o): Depend on errors.h.
+ * errors.c (internal_error): Add missing ": " at end of string.
+
+ * i860.md: Change triple backslashes to double backslashes at
+ ends of lines in output templates.
+ * ns32k.md: Remove stray backslash-newline in output template.
+
+2001-06-29 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * gcc.c (process_command): Append a DIR_SEPARATOR to a path
+ specified by the -B switch, if doing so would create a valid
+ directory name.
+ * doc/invoke.texi: Document changed behavior of -B.
+
+2001-06-29 DJ Delorie <dj@redhat.com>
+
+ * simplify-rtx.c (simplify_subreg): When simplifying a CONCAT, at
+ least get rid of the CONCAT if we can't simplify further.
+
+Fri Jun 29 12:27:24 2001 Jeffrey A Law (law@cygnus.com)
+
+ * simplify-rtx.c (simplify_rtx): Use swap_commutative_operands_p.
+
+ * doc/gcc.texi (Passes): Update due to recent -fdce -> -fssa-dce
+ changes. Fix documentation for SSA DCE pass.
+
+ * ssa-dce.c (ssa_eliminate_dead_code): Renamed from
+ eliminate_date_code.
+ * ssa.h (ssa_eliminate_dead_code): Corresponding changes.
+ * timevar.def (TV_SSA_DCE): Renamed from TV_DEAD_CODE_ELIM.
+ * toplev.c (DFI_ssa_dce): Renamed from DFI_dce.
+ (dump_file_info): Similar changes.
+ (flag_ssa_dce): Similarly
+ (f_options): Similar changes.
+ (rest_of_compilation): Corresponding changes.
+ * doc/invoke.texi: Update as option is now -fssa-dce instead
+ of -fdce. Update dump file name.
+
+ * ssa-dce.c (note_inherently_necessary_set): New function.
+ (find_inherently_necessary): Use it. Do not consider
+ NOTEs, CODE_LABELs or BARRIERS are necessary. Improve
+ handling of asms and unspecs.
+ (delete_insn_bb): Only delete INSNs, CALL_INSNs or JUMP_INSNs.
+
+2001-06-29 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * target.h (struct gcc_target): Add comp_type_attributes and
+ set_default_type_attributes.
+ * target-def.h (TARGET_COMP_TYPE_ATTRIBUTES,
+ TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Define.
+ (TARGET_INITIALIZER): Update.
+ * doc/tm.texi (COMP_TYPE_ATTRIBUTES, TARGET_COMP_TYPE_ATTRIBUTES,
+ SET_DEFAULT_TYPE_ATTRIBUTES, TARGET_SET_DEFAULT_TYPE_ATTRIBUTES):
+ Update documentation of old target macros to describe new target
+ hooks.
+ * tree.c (make_node): Use target.set_default_type_attributes.
+ (default_comp_type_attributes,
+ default_set_default_type_attributes): New functions.
+ * tree.h (default_comp_type_attributes,
+ default_set_default_type_attributes): Declare.
+ * c-typeck.c (COMP_TYPE_ATTRIBUTES): Don't define.
+ (comptypes): Use target.comp_type_attributes.
+ * config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h
+ (arc_comp_type_attributes, arc_set_default_type_attributes,
+ COMP_TYPE_ATTRIBUTES, SET_DEFAULT_TYPE_ATTRIBUTES): Remove
+ functions and macros with default behavior.
+ * config/m32r/m32r-protos.h, config/m32r/m32r.c,
+ config/m32r/m32r.h (m32r_comp_type_attributes,
+ m32r_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
+ SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
+ * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c,
+ config/m68hc11/m68hc11.h (m68hc11_comp_type_attributes,
+ m68hc11_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
+ SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
+ * config/ns32k/ns32k-protos.h, config/ns32k/ns32k.c,
+ config/ns32k/ns32k.h (ns32k_comp_type_attributes,
+ COMP_TYPE_ATTRIBUTES): Likewise.
+ * config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c,
+ config/rs6000/rs6000.h (rs6000_comp_type_attributes,
+ rs6000_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
+ SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
+ * config/d30v/d30v.h (COMP_TYPE_ATTRIBUTES,
+ SET_DEFAULT_TYPE_ATTRIBUTES): Remove commented out macro
+ definitions.
+ * config/i386/i386.h (SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
+ * config/ns32k/ns32k.h (SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
+ * config/arm/arm.c (arm_comp_type_attributes,
+ arm_set_default_type_attributes): Make static.
+ (TARGET_COMP_TYPE_ATTRIBUTES, TARGET_SET_DEFAULT_TYPE_ATTRIBUTES):
+ Define.
+ * config/arm/arm.h (COMP_TYPE_ATTRIBUTES,
+ SET_DEFAULT_TYPE_ATTRIBUTES): Don't define.
+ * config/arm/arm-protos.h (arm_comp_type_attributes,
+ arm_set_default_type_attributes): Don't declare.
+ * config/i386/i386.c (ix86_comp_type_attributes): Make static.
+ (TARGET_COMP_TYPE_ATTRIBUTES): Define.
+ * config/i386/i386.h (COMP_TYPE_ATTRIBUTES): Don't define.
+ * config/i386/i386-protos.h (ix86_comp_type_attributes): Don't
+ declare.
+
+2001-06-28 Jan van Male <jan.vanmale@fenk.wau.nl>
+
+ * predict.c (dump_prediction): Eliminate fprintf warning.
+
+2001-06-28 Diego Novillo <dnovillo@redhat.com>
+
+ * flow.c (dump_bb): Remove unused third argument to call
+ to fprintf when displaying the basic block header.
+
+2001-06-28 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+ Jeff Law <law@redhat.com>
+
+ * Makefile.in (OBJS): Add df.o
+ (df.o): Add dependencies.
+ * basic-block.h (flow_depth_first_order_compute): Declare.
+ * flow.c (flow_depth_first_order_compute): No longer declare.
+ Make external.
+ * df.c, df.h: New files.
+
+2001-06-28 Zack Weinberg <zackw@stanford.edu>
+
+ * config/i386/i386.md: Global update to use new string syntax
+ where it will improve readability. Warning fixes:
+ (*truncdfsf2_2): Abort if which_alternative is not 0 or 1.
+ (*adddi_1_rex64, *adddi_2_rex64, *adddi_3_rex64,
+ *adddi_4_rex64, *adddi_5_rex64): Cast 1 to unsigned int.
+
+ * read-rtl.c: Syntactic sugar for C embedded in strings in
+ machine descriptions.
+ (read_string): Break inner loop into separate function. Takes
+ an int. Dispatch to read_quoted_string or read_braced_string
+ as appropriate. Automatically insert a leading star on braced
+ strings if STAR_IF_BRACED is true.
+ (read_quoted_string, read_braced_string): New functions.
+ * doc/rtl.texi, doc/md.texi: Document new syntax. Update
+ examples to match.
+
+ * rtl.c: Split RTL reader (read_rtx, read_skip_spaces,
+ traverse_md_constants, fatal_with_file_and_line,
+ fatal_expected_char, read_name, read_string, def_hash,
+ def_name_eq_p, read_constants, and related data) to its own
+ file. Weed out now-unnecessary #includes.
+ * read-rtl.c: New file.
+ * Makefile.in (HOST_RTL): Add read-rtl.o.
+ (read-rtl.o): New rule.
+ (rtl.o, $(HOST_PREFIX_1)rtl.o): Update dependencies.
+ * doc/gcc.texi (Passes): Talk briefly about the support
+ library used by genfoo.
+ * doc/rtl.texi (Reading RTL): read_rtx is not available in the
+ compiler itself.
+
+2001-06-28 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (REGISTER_TARGET_PRAGMAS): Define.
+ * config/darwin-c.c: New file.
+ * config/darwin-protos.h: Declare new functions.
+ * config/rs6000/t-darwin (darwin-c.o): New rule.
+ * config.gcc (powerpc-*-darwin*): Define c_target_objs and
+ cxx_target_objs.
+ * doc/extend.texi (Pragmas): New section.
+
+Thu Jun 28 20:13:11 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (try_merge_block): Rename to try_optimize_cfg;
+ do basic simplifications on the CFG.
+ (is_forwarder_block_p, can_fallthru, try_redirect_by_replacing_jump,
+ try_simplify_condjump): New.
+ (redirect_edge_and_branch): Try replace jump insn.
+ (flow_delete_insn): Handle deleting of ADDR_VEC insns.
+
+ * basic-block.h (FALLTHRU_EDGE, BRANCH_EDGE): New macros.
+
+Thu Jun 28 11:19:42 2001 Jeffrey A Law (law@cygnus.com)
+
+ * ssa-dce.c (eliminate_dead_code): Properly handle control
+ dependencies implied by PHI nodes.
+
+ * ssa-dce.c (eliminate_dead_code): Remove fake edges from the
+ CFG after dead code elimination is complete.
+
+2001-06-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * gthr-posix.h [LIBOBJC]: Add weak definitions of
+ sched_get_priority_max, sched_get_priority_min.
+
+2001-06-28 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.c (default_print_error_function): Tweak.
+ (report_error_function): Likewise.
+ * toplev.h (default_print_error_function): Move to...
+ * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
+ * tree.h (print_error_function): Move to...
+ * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
+
+Thu Jun 28 06:16:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_assignment): When have varying-length object,
+ make MEM a BLKmode.
+ (expand_expr, case ADDR_EXPR): Use SAVE_EXPR_RTL after putting
+ SAVE_EXPR stack in case we had a SUBREG.
+
+Thu Jun 28 10:31:06 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (cmp?i): Simplify; refuse immediate operand
+ in alternative 0
+ * i386.c (cmpsi_operand): Refuse constants.
+
+ * i386.md (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
+
+ * flow.c (block_label, redirect_edge_and_branch): Split out from ....
+ (split_edge) .... here;
+
+2001-06-28 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * i386/i386.c (ix86_valid_type_attribute_p): Give external
+ linkage, move declaration to...
+ * i386/i386-protos.h: ...here.
+
+2001-06-27 H.J. Lu (hjl@gnu.org)
+
+ * build-make (CC): Removed.
+ (HOST_CC): Set to $(CC_FOR_BUILD).
+ (HOST_CFLAGS): Replace $(CFLAGS) with $(CFLAGS_FOR_BUILD).
+ Fix a typo in comments.
+
+ * configure.in: Set CFLAGS to $(CFLAGS_FOR_BUILD) when
+ generating auto-build.h for canadian cross compile. Set CC
+ to `"${CC_FOR_BUILD}"' instead of just `${CC_FOR_BUILD}'.
+ Save/restore CFLAGS.
+ * configure: Regenerated.
+
+2001-06-27 Jim Wilson <wilson@redhat.com>
+
+ * emit-rtl.c (gen_highpart): Call validize_mem.
+
+2001-06-27 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def(hpux11_cpp_pow_inline): new, but real similar to
+ hpux10_cpp_pow_inline. Not similar enough.
+ (solaris_mutex_init): renamed. PTHREAD_*_INITIALIZER is a problem for
+ all Solaris versions. This fix patches MUTEX and COND initializers,
+ the RWLOCK one will wait for someone to complain. For now, anyway.
+ (uw7_byteorder_fix): It was looking for the byteorder.h file in the
+ wrong directory.
+
+2001-06-27 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (handle_impent): Rewrite to be more portable
+ and to use ASM_DECLARE_CLASS_REFERENCE.
+ * config/darwin.h (ASM_DECLARE_CLASS_REFERENCE): Rename from
+ undocumented DECLARE_CLASS_REFERENCE, add file argument.
+ * doc/tm.texi (ASM_DECLARE_CLASS_REFERENCE): Document.
+
+Wed Jun 27 18:01:09 2001 Jeffrey A Law (law@cygnus.com)
+
+ * simplify-rtx.c (simplify_rtx): Canonicalize commutative expressions
+ by putting complex operands first and constants second.
+
+2001-06-27 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h: Add documentation. Make macros polymorphic.
+ * diagnostic.c (ideal_line_wrap_cutoff): Remove
+ definition. Replace with diagnostic_line_cutoff.
+ (prefixing_policy): Remove. Replace with diagnostic_prefixing_rule.
+
+2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi, doc/contrib.texi, doc/cpp.texi,
+ doc/cppinternals.texi, doc/extend.texi, doc/gcc.texi,
+ doc/gcov.texi, doc/install-old.texi, doc/install.texi,
+ doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Replace
+ . at end of sentences preceded by a capital letter with @..
+
+2001-06-26 Daniel Berlin <dan@cgsoftware.com>
+
+ * doc/invoke.texi: Add description of max-gcse-passes param.
+
+ * gcse.c (gcse_main): Use MAX_GCSE_PASSES instead of MAX_PASSES.
+ (MAX_PASSES): Remove now unneeded macro.
+
+ * params.h (MAX_GCSE_PASSES): New macro, to get parameter value of
+ max-gcse-passes param.
+
+ * params.def (PARAM_MAX_GCSE_PASSES): New parameter, controlling
+ maximum number of GCSE passes to run. Defaults to 1 (which is what
+ MAX_PASSES in gcse.c used to be).
+
+2001-06-27 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * system.h (TARGET_ESC): Move to ...
+ * defaults.h (TARGET_ESC): ... here.
+ * target-def.h (TARGET_VALID_DECL_ATTRIBUTE,
+ TARGET_VALID_TYPE_ATTRIBUTE): Default to a no-op handler.
+ * tree.c (default_valid_attribute_p): New.
+ (valid_machine_attribute): Handlers can not be NULL.
+ * tree.h (default_valid_attribute_p): New.
+ * doc/tm.texi: Document TARGET_ESC.
+ * cp/decl2.c (import_export_class): Update.
+
+2001-06-26 Bruce Korb <bkorb@gnu.org>
+
+ * gcc/fixinc/fixincl.c(initialize): In very strict ANSI, you cannot
+ use preprocessing directives inside a string literal. Fixed.
+
+2001-06-26 Jim Wilson <wilson@redhat.com>
+
+ * doc/tm.texi (MAX_LONG_DOUBLE_TYPE_SIZE, INTEL_EXTENDED_IEEE_FORMAT):
+ Document.
+
+2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/cpp.texi, doc/cppinternals.texi, doc/extend.texi,
+ doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
+ doc/tm.texi: Use @: where necessary when a full stop does not end
+ a sentence.
+
+2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcc.texi, doc/install.texi, doc/invoke.texi: Remove trailing
+ whitespace.
+
+2001-06-26 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi, doc/gcc.texi,
+ doc/install.texi, doc/invoke.texi, doc/objc.texi, doc/rtl.texi,
+ doc/tm.texi: Use two spaces after ends of sentences.
+
+2001-06-26 Daniel Berlin <dan@cgsoftware.com>
+
+ * toplev.c (display_help): Fix param thinko.
+ * Makefile.in: Fix params.h dependencies.
+
+2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * toplev.c (decode_f_option): Adjust setting.
+ (toplev_main): Call diagnostic_initialize. Remove call to
+ reshape_diagnostic_buffer._
+
+ * diagnostic.h (struct output_buffer): Add new field format_decoder.
+ (diagnostic_format_decoder): New macro.
+ (diagnostic_prefixing_rule): Likewise.
+ (diagnostic_line_cutoff): Likewise.
+ (set_message_prefixing_rule): Remove.
+
+ * diagnostic.c (lang_printer): Remove.
+ (diagnostic_message_length_per_line): Likewise.
+ (current_prefixing_rule): Likewise.
+ (initialize_diagnostics): Rename to...
+ (diagnostic_initialize): ...this. Tweak.
+ (default_initialize_buffer): Remove.
+ (reshape_diagnostic_buffer): Likewise.
+ (init_output_buffer): Adjust prefixing rule setting.
+ (output_format): Use format_decoder from the output_buffer.
+
+ * c-lang.c (c_init): Adjust tree formatter setting.
+
+2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/i386/sol2.h (CPP_SPEC): Pass -P for .S files.
+
+2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * Makefile.in (TARGET_H, TARGET_DEF_H): New.
+ (c-decl.o, tree.o, c-typeck.o, $(out_object_file)): Update.
+ * c-decl.c (duplicate_decls): Use function pointer.
+ * c-typeck.c (common_type): Similarly.
+ * tree.c (valid_machine_attribute): Similarly.
+ (merge_machine_type_attributes): Rename merge_type_attributes.
+ (merge_machine_decl_attributes): Rename merge_decl_attributes.
+ (merge_dllimport_decl_attributes): New function.
+ * tree.h (merge_machine_type_attributes): Rename merge_type_attributes.
+ (merge_machine_decl_attributes): Rename merge_decl_attributes.
+ (merge_dllimport_decl_attributes): New prototype.
+ * target.h: New.
+ * target-def.h: New.
+
+doc: (Joseph Myers)
+ * doc/gcc.texi, doc/tm.texi: Update documentation.
+
+cp: Make-lang.in: Update dependencies.
+ * spew.c: Include target.h.
+ (duplicate_decls): Call target function.
+ * decl2.c: include target.h
+ (import_export_class): Use existence of target function pointer.
+ * typeck.c: Include target.h.
+ (qualify_type_recursive): Rename variable. Call target function.
+ (type_after_usual_arithmetic_conversions): Similarly.
+ (common_type): Similarly.
+
+config: * 1750a/1750a.c, a29k/29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
+ avr/avr.c, c4x/c4x.c, clipper/clipper.c, convex/convex.c,
+ d30v/d30v.c, dsp16xx/dsp16xx.c, elxsi/elxsi.c, fr30/fr30.c,
+ i370/i370.c, i386/i386.c, i860/i860.c, i960/i960.c, ia64/ia64.c,
+ m32r/m32r.c, m68hc11/m68hc11.c, m68k/m68k.c, m88k/m88k.c,
+ mips/mips.c, mn10200/mn10200.c, mn10300/mn10300.c, ns32k/ns32k.c,
+ pa/pa.c, pdp11/pdp11.c, pj/pj.c, romp/romp.c, rs6000/rs6000.c,
+ sh/sh.c, sparc/sparc.c, v850/v850.c, vax/vax.c, we32k/we32k.c)
+ : Include target.h and target-def.h. Define target.
+
+ * arc/arc-protos.h (arc_valid_machine_decl_attribute): Remove.
+ * arc/arc.c (arc_valid_machine_decl_attribute): Rename
+ arc_valid_decl_attribute, make static.
+ * arc/arc.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * arm/arm-protos.h (arm_valid_machine_decl_attribute,
+ arm_valid_type_attribute_p, arm_pe_valid_machine_decl_attribute,
+ arm_pe_merge_machine_decl_attributes): Remove.
+ * arm/arm.c (arm_valid_machine_decl_attribute_p): Rename
+ arm_valid_decl_attribute_p, make static.
+ (arm_pe_valid_decl_attribute_p): Move from pe.c.
+ * arm/pe.c (arm_pe_valid_machine_decl_attribute_p): Move to arm.c.
+ (arm_pe_merge_machine_decl_attributes): Move to tree.c.
+ * arm/arm.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ * arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ * arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): New.
+ (VALID_MACHINE_TYPE_ATTRIBUTE, VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ * avr/avr-protos.h (valid_machine_type_attribute,
+ valid_machine_decl_attribute): Remove.
+ * avr/avr.c (valid_machine_type_attribute,
+ valid_machine_decl_attribute): Rename and make static.
+ * avr/avr.h (VALID_MACHINE_TYPE_ATTRIBUTE,
+ VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ * c4x/c4x-protos.h (c4x_valid_type_attribute_p): Remove.
+ * c4x/c4x.c (c4x_valid_type_attribute_p): Make static.
+ * c4x/c4x.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * d30v/d30v.h: Remove obsolete comments.
+ * h8300/h8300-protos.h (h8300_valid_machine_decl_attribute): Remove.
+ * h8300/h8300.c (h8300_valid_machine_decl_attribute): Rename, make
+ static.
+ * h8300/h8300.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ * i386/cygwin.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
+ (i386_pe_merge_decl_attributes, MERGE_MACHINE_DECL_ATTRIBUTES,
+ i386_pe_valid_type_attributes_p): Remove.
+ * i386/i386-protos.h (ix86_valid_decl_attribute_p,
+ ix86_valid_type_attribute_p): Remove.
+ * i386/i386.c (ix86_valid_decl_attribute_p): Remove.
+ (ix86_valid_type_attribute_p): Make static.
+ * i386/i386.h (VALID_MACHINE_DECL_ATTRIBUTE,
+ VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * i386/winnt.c (i386_pe_merge_decl_attributes): Move to tree.c.
+ * ia64/ia64-protos.h (ia64_valid_type_attribute): Remove.
+ * ia64/ia64.c (ia64_valid_type_attribute): Make static.
+ * ia64/ia64.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * m32r/m32r-protos.h (m32r_valid_machine_decl_attribute): Remove.
+ * m32r/m32r.c (m32r_valid_decl_attribute): Make static.
+ * m32r/m32r.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ * m68hc11/m68hc11-protos.h (m68hc11_valid_decl_attribute_p,
+ m68hc11_valid_type_attribute_p): Remove.
+ * m68hc11/m68hc11.c (m68hc11_valid_decl_attribute_p): Remove.
+ (m68hc11_valid_type_attribute_p): Make static.
+ * m68hc11/m68hc11.h (VALID_MACHINE_DECL_ATTRIBUTE,
+ VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * mcore/mcore-protos.h (mcore_valid_machine_decl_attribute,
+ mcore_merge_machine_decl_attribute): Remove.
+ * mcore/mcore.c (mcore_valid_machine_decl_attribute): Rename,
+ make static.
+ (mcore_merge_machine_decl_attributes): Move to tree.c.
+ * mcore/mcore.h (VALID_MACHINE_DECL_ATTRIBUTE,
+ VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
+ * ns32k/ns32k-protos.h (ns32k_valid_decl_attribute_p,
+ ns32k_valid_type_attribute_p): Remove.
+ * ns32k/ns32k.c (ns32k_valid_decl_attribute_p): Remove.
+ (ns32k_valid_type_attribute_p): Make static.
+ * ns32k/ns32k.h (VALID_MACHINE_DECL_ATTRIBUTE,
+ VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * rs6000/rs6000-protos.h (rs6000_valid_decl_attribute_p,
+ rs6000_valid_type_attribute_p): Remove.
+ * rs6000/rs6000.c (rs6000_valid_decl_attribute_p): Remove.
+ (rs6000_valid_type_attribute_p): Make static.
+ * rs6000/rs6000.h (VALID_MACHINE_DECL_ATTRIBUTE,
+ VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
+ * sh/sh-protos.h (sh_valid_machine_decl_attribute): Remove.
+ * sh/sh.c (sh_valid_machine_decl_attribute): Rename, make static.
+ * sh/sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+ * v850/v850-protos.h (v850_valid_machine_decl_attribute): Remove.
+ * v850/v850.c (v850_valid_machine_decl_attribute): Rename, make static.
+ * v850/v850.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
+
+2001-06-26 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
+
+ * glimits.h (USHRT_MAX): Use unsigned suffix if int can not hold
+ it.
+
+2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h (struct diagnostic_context): Add new field.
+ (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
+ declaratons.
+ (global_dc): Declare.
+ * diagnostic.c (global_diagnostic_context): New variable.
+ (global_output_buffer): Remove.
+ (global_dc): Define.
+ (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
+ definitions.
+ (initialize_diagnostics): Adjust initialization.
+ (set_diagnostic_context): Adjust setting.
+
+2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5.h (UNALIGNED_INT_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP): Define.
+ * config/mips/iris6.h (UNALIGNED_INT_ASM_OP,
+ UNALIGNED_SHORT_ASM_OP): Undef.
+
+Tue Jun 26 12:40:12 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (float_truncate splitter, and to mov splitters): Add
+ reload_completed; fix operand predicate.
+
+ * haifa-sched.c (sched_init): Do not split insns.
+ * toplev.c (rest_of_compilation): Call split_all_insns before
+ sched1 pass; simplify condition of post-reload splitter;
+ call split_all_insn before sched2 pass.
+
+2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h (diagnostic_prefixing_rule_t): New enum type.
+ (set_message_prefixing_rule): Adjust prototype.
+ * diagnostic.c (current_prefixing_rule): Adjust type.
+
+2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * defaults.h: Default escape sequences to ASCII.
+ * config/i370/i370.h: Adjust for ASCII default.
+ * config/1750a/1750a.h: Remove escape sequence definitions.
+ * config/a29k/a29k.h: Similarly.
+ * config/alpha/alpha.h: Similarly.
+ * config/arc/arc.h: Similarly.
+ * config/arm/arm.h: Similarly.
+ * config/avr/avr.h: Similarly.
+ * config/c4x/c4x.h: Similarly.
+ * config/clipper/clipper.h: Similarly.
+ * config/convex/convex.h: Similarly.
+ * config/d30v/d30v.h: Similarly.
+ * config/dsp16xx/dsp16xx.h: Similarly.
+ * config/elxsi/elxsi.h: Similarly.
+ * config/fr30/fr30.h: Similarly.
+ * config/h8300/h8300.h: Similarly.
+ * config/i386/i386.h: Similarly.
+ * config/i860/i860.h: Similarly.
+ * config/i960/i960.h: Similarly.
+ * config/ia64/ia64.h: Similarly.
+ * config/m32r/m32r.h: Similarly.
+ * config/m68hc11/m68hc11.h: Similarly.
+ * config/m68k/m68k.h: Similarly.
+ * config/m88k/m88k.h: Similarly.
+ * config/mcore/mcore.h: Similarly.
+ * config/mips/mips.h: Similarly.
+ * config/mn10200/mn10200.h: Similarly.
+ * config/mn10300/mn10300.h: Similarly.
+ * config/ns32k/ns32k.h: Similarly.
+ * config/pa/pa.h: Similarly.
+ * config/pdp11/pdp11.h: Similarly.
+ * config/pj/pj.h: Similarly.
+ * config/romp/romp.h: Similarly.
+ * config/rs6000/rs6000.h: Similarly.
+ * config/sh/sh.h: Similarly.
+ * config/sparc/sparc.h: Similarly.
+ * config/v850/v850.h: Similarly.
+ * config/vax/vax.h: Similarly.
+ * config/we32k/we32k.h: Similarly.
+ * doc/tm.texi: Update documentation.
+
+2001-06-26 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
+
+ * diagnostic.c (digit_buffer): Remove as global. Move to...
+ * diagnostic.h (struct output_buffer): ... here.
+ * diagnostic.c (output_formatted_integer): Adjust use of digit_buffer.
+
+2001-06-25 Steve Ellcey <sje@cup.hp.com>
+
+ * config.gcc (ia64*-*-hpux*): Add ia64/hpux_longdouble.h to tm_file.
+ Define tmake_file to include ia64/t-hpux.
+ * real.c (INTEL_EXTENDED_IEEE_FORMAT): Test for value instead of
+ testing to see if it is defined.
+ * real.h (INTEL_EXTENDED_IEEE_FORMAT): Likewise. Default to 0 if
+ undefined.
+ * config/ia64/hpux_longdouble.h: New.
+ * config/ia64/ia64.c (hfa_element_mode): Add comment about incorrect
+ handling of long doubles.
+ (ia64_function_arg, ia64_function_value): Add checks for TFmode
+ and INTEL_EXTENDED_IEEE_FORMAT.
+ * config/ia64/ia64.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
+ (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, LIBCALL_VALUE): Add checks for
+ TFmode and INTEL_EXTENDED_IEEE_FORMAT.
+ * config/ia64/ia64.md (all TFmode patterns): Test
+ INTEL_EXTENDED_IEEE_FORMAT in condition.
+ (floatdidf2, floatdisf2): New, for !INTEL_EXTENDED_IEEE_FORMAT.
+ * config/ia64/quadlib.c: New.
+ * config/ia64/t-hpux: New.
+ * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
+
+2001-06-25 Jim Wilson <wilson@redhat.com>
+
+ * config/i960/t-960bare (i960-c.o): Add missing header dependencies.
+ * config/i960/t-vxworks960: Likewise.
+
+2001-06-25 Dale Johannesen <dalej@apple.com>
+
+ * bitmap.c (bitmap_last_bit_set): Fix a non-c89 usage (null actual
+ argument to macro).
+
+Mon Jun 25 11:10:51 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movsi_insv_1, movsi_insv_1_rex64): Fix constraints.
+
+2001-06-25 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
+ doc/gcc.texi, doc/gcov.texi, doc/install.texi, doc/invoke.texi,
+ doc/md.texi, doc/rtl.texi, doc/tm.texi: Be more consistent about
+ the use of "GCC" and related terms.
+ * doc/gcc.1, doc/gcov.1: Regenerate.
+
+2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/extend.texi, doc/gcc.texi, doc/install-old.texi,
+ doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Remove
+ uses of @refill.
+
+Sun Jun 24 21:21:49 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
+
+2001-06-24 Richard Henderson <rth@redhat.com>
+
+ * builtins.c (expand_builtin_expect_jump): Disable if the
+ expression can't be re-evaluated.
+
+2001-06-24 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * config/arm/arm.c (arm_compute_save_reg_mask): For FIQ interrupt
+ handlers examine register r0-r7, for other interrupt handlers
+ examine r0-r12. If the interrupt handler is not a leaf function
+ save all call clobbered registers.
+ (arm_output_epilogue): If the prologue has pushed the IP register,
+ restore it here.
+ (Arm_expand_prologue): For interrupt functions that need the frame
+ pointer, push the IP register before it is corrupted.
+
+ * config/arm/arm.h (ARM_SIGN_EXTEND): Fix compile time warnings
+ about the use of signed and unsigned quantities in a conditional.
+
+2001-06-23 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/crtfastmath.c: New file.
+ * config/alpha/t-crtfm: New file.
+ * config/alpha/elf.h (ENDFILE_SPEC): Use crtfastmath.o.
+ * config/alpha/osf.h (ENDFILE_SPEC): Likewise.
+ * config/alpha/t-crtbe (EXTRA_PARTS): Add pieces defined here.
+ * config.gcc (alpha-{linux,freebsd,netbsd,osf}): Use alpha/t-crtfm;
+ do not set extra_parts here.
+
+2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install-old.texi: Remove more documentation of configure
+ options.
+ * doc/install.texi: Add it here.
+
+Sat Jun 23 19:40:05 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386-protos.h (emit_i387_cw_initialization): Declare.
+ * i386.md (movsi_insv_1): Remove '*'.
+ (fix_trunc?f?i2): Revamp to use control word parameters.
+ (fix_trunc?i_1): Likewise; update splitters.
+ (fix splitter): Remove.
+ * i386.c (MAX_386_STACK_LOCALS): set to 3.
+ (emit_i387_cw_initialization): New function.
+ (output_fix_trunc): Do not initialize control word;
+ kill dead code; simplify.
+
+2001-06-23 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * cppmacro.c (make_string_token): Avoid warning.
+ (cpp_macro_definition): Prepend the macro name. Update
+ comments.
+ * cppmain.c (cb_define, dump_macro): Update for changes
+ to cpp_macro_definition.
+
+Sat Jun 23 10:20:03 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (attempt_auto_inc, try_pre_increment_1): Fix typo.
+
+Sat Jun 23 01:23:59 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (mark_set_1, attempt_auto_inc, mark_used_reg,
+ try_pre_increment_1): compute REG_FREQ using bb->frequency.
+
+ * regclass.c (loop_cost): Kill.
+ (frequency): New global variable.
+ (record_operand_costs): Replace loop_cost by frequency.
+ (scan_one_insn): Likewise.
+ (regclass): Likewise; set frequency according to bb->frequency.
+
+ * flow.c (split_edge): Set frequency.
+
+Sat Jun 23 01:16:42 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (block_info_def): Add nvisited.
+ (propagate_freq): Count nvisited; re-queue delayed blocks; handle
+ irreducible regions.
+
+ * flow.c (dump_edge_info): Dump the probability of edge.
+ (combine_predictions_for_insn): Dump the basic block.
+
+2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcc.texi: Update documentation of source files of C
+ compiler.
+
+2001-06-22 Richard Henderson <rth@redhat.com>
+
+ * doc/invoke.texi (-funsafe-math-optimizations): Document its
+ possible effects at link time.
+
+2001-06-22 Diego Novillo <dnovillo@redhat.com>
+
+ * basic-block.h (dump_edge_info): Declare.
+ (clear_edges): Declare.
+ (mark_critical_edges): Declare.
+ * flow.c (dump_edge_info): Remove static declaration.
+ (clear_edges): Ditto.
+ (mark_critical_edges): Ditto.
+ (free_basic_block_vars): Only clear edges and free basic block
+ array if basic_block_info is not NULL.
+ * ssa.c (compute_dominance_frontiers): Remove static declaration.
+ * ssa.h (compute_dominance_frontiers): Declare.
+
+2001-06-22 Toshiyasu Morita (toshiyasu.morita@hsa.hitachi.com)
+
+ * predict.c: (expected_value_to_br_prob): Check for const_true_rtx
+ instead of const1_rtx for true case.
+
+2001-06-22 David Mosberger <davidm@hpl.hp.com>
+
+ * config/ia64/crtfastmath.c: New file.
+ * config/ia64/t-ia64 (EXTRA_PARTS): Include it.
+ * config/ia64/linux.h (ENDFILE_SPEC): New.
+
+2001-06-22 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
+
+ * config/h8300/h8300.c (asm_file_start): Remove reference to
+ "release F-1".
+
+2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (verify_tree): Check for x being NULL.
+ * doc/c-tree.texi: Document COMPOUND_BODY of an empty
+ COMPOUND_STMT.
+ Fixes PR c/3259.
+
+2001-06-22 DJ Delorie <dj@redhat.com>
+
+ * config/arm/arm.h (struct machine_function): Remove ra_rtx.
+ * config/arm/arm.c (arm_mark_machine_status): Remove ra_rtx.
+ (arm_return_addr): Use get_hard_reg_initial_val et al.
+ * config/d30v/d30v.h (struct machine_function): Remove ra_rtx.
+ * config/d30v/d30v.c (d30v_mark_machine_status): Remove ra_rtx.
+ (d30v_return_addr): Use get_hard_reg_initial_val et al.
+ * config/rs6000/rs6000.h (struct machine_function): Remove ra_rtx.
+ * config/rs6000/rs6000.c (rs6000_override_options): Don't set
+ mark_machine_status.
+ (rs6000_mark_machine_status): Remove.
+ (rs6000_return_addr): Use get_hard_reg_initial_val.
+ (rs6000_ra_ever_killed): Use has_hard_reg_initial_val.
+ * config/v850/v850.h (INIT_EXPANDERS): Delete.
+ * config/v850/v850.c (struct machine_function): Delete.
+ (v850_init_machine_status): Delete.
+ (v850_mark_machine_status): Delete.
+ (v850_free_machine_status): Delete.
+ (v850_return_addr): Use get_hard_reg_initial_val.
+ (v850_init_expanders): Delete.
+
+Fri Jun 22 19:20:59 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (estimate_bb_frequencies): Do not handle conditional
+ jumps jumping to fallthru basic block as conditional jumps.
+
+Fri Jun 22 19:11:28 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * regs.h (struct reg_info_def): Add freq field.
+ (REG_N_REFS): Update comment.
+ (REG_FREQ): New.
+ * regclass.c (scan_one_insn): Update REG_FREQ.
+ * flow.c (mark_set_1): Update REG_FREQ, make REG_N_SETS unweighted.
+ (attempt_auto_inc): Likewise.
+ (mark_used_reg): Likewise.
+ (try_pre_increment_1): Likewise.
+ * local-alloc.c (struct qty): Add freq field.
+ (alloc_qty): Set freq.
+ (update_equiv_regs): Set REG_FREQ.
+ (QTY_CMP_PRI): Use freq.
+ (combine_regs): Update qty->freq.
+ * global.c (struct allocno): Update comment for n_refs;
+ add freq field.
+ (local_reg_freq): New array.
+ (global_alloc): Update freq field;
+ allocate and initialize local_reg_freq.
+ (allocno_compare): Use freq field.
+ (find_reg): Likewise.
+ * reload1.c (count_pseudo): Use freq isntead of n_refs.
+ (count_spilled_pseudo): Likewise.
+
+ * tm.texi (GCOV_TYPE_SIZE): Document.
+ * basic-block.h (gcov_type): Define.
+ (struct edge_def): Use gcov_type for count field.
+ (struct basic_block_def): Likewise.
+ * defaults.h (GCOV_TYPE_SIZE): Define.
+ * final.c (end_final): Use GCOV_TYPE_SIZE.
+ * flow.c (dump_edge_info, dump_flow_info, dump_bb): Print count fields
+ using HOST_WIDEST_INT_PRINT_DEC.
+ * gcov-io.h (__fetch_gcov_type, __store_gcov_type, __read_gcov_type,
+ __write_gcov_type): New.
+ (store_long): Remove.
+ * gcov.c (gcov_type): Set default.
+ (struct adj_list): Use gcov_type for arc_count.
+ (bb_info): Use gcov_type for succ_count, pred_count and exec_count.
+ (create_program_flow_graph): Read arc_count properly.
+ (solve_program_flow_graph): 'total' is gcov_type.
+ (output_data): Line_counts is gcov_type, print it properly.
+ * libgcc2.c (struct bb): Counts is gcov_type.
+ (__bb_exit_func): Use __read_gcov_type and __write_gcov_type.
+ * profile.c (LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE): Set default.
+ (GCOV_TYPE_SIZE): Define.
+ (struct bb_info): succ_count and pred_count is gcov_type.
+ (compute_branch_probabilities): Use __read_gcov_type,
+ print read edges to the dump file.
+ (total): Is gcov_type.
+ (gen_edge_profiler): Use GCOV_TYPE_SIZE.
+
+2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
+
+ * optabs.c (emit_libcall_block): When using non-call exceptions,
+ don't mark libcalls never throwing.
+
+2001-06-21 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (hash_init): Use xcalloc.
+
+2001-06-21 Richard Henderson <rth@redhat.com>
+
+ * flow.c (entry_exit_blocks): Initialize frequency.
+ (split_block): Copy it.
+ (dump_flow_info): Dump it.
+
+Thu Jun 21 22:15:10 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * sh.c (barrier_align): Also recognize branch-around-a-jump-sequence
+ from machine-depedent_reorg for purposes of alignment supression
+ when no delay slot insn has been added.
+
+2001-06-21 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * cppmacro.c (make_string_token): Null terminate.
+
+2001-06-21 DJ Delorie <dj@redhat.com>
+
+ * config/alpha/alpha.h (struct machine_function): Remove.
+ * config/alpha/alpha.c (integrate.h): Include.
+ (override_options): Don't set up machine_status hooks.
+ (alpha_init_machine_status): Remove.
+ (alpha_mark_machine_status): Remove.
+ (alpha_free_machine_status): Remove.
+ (alpha_return_addr): Use get_hard_reg_initial_val.
+ (alpha_gp_save_rtx): Likewise.
+ (alpha_ra_ever_killed): Use has_hard_reg_initial_val.
+
+2001-06-20 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/sh/sh.md (interrupt_function): Use
+ current_function_interrupt.
+ (define_delay): Schedule in delay slot if TARGET_SH3, even if it is
+ an interrupt function.
+
+ * config/sh/sh.h (current_function_interrupt): Define extern.
+
+ * config/sh/sh.c (current_function_interrupt): New global.
+ (sh_expand_prologue): Set current_function_interrupt.
+
+2001-06-21 Phil Edwards <pme@sources.redhat.com>
+
+ * doc/install.texi: Add 'c' to list of --enable-languages choices.
+
+2001-06-21 DJ Delorie <dj@redhat.com>
+
+ * integrate.c (mark_hard_reg_initial_vals): Check for NULL.
+
+ * integrate.c (ggc.h): Include.
+ (initial_value_pair, initial_value_struct,
+ setup_initial_hard_reg_value_integration): Add prototypes.
+ (expand_inline_function): Call
+ setup_initial_hard_reg_value_integration.
+ (has_func_hard_reg_initial_val, get_func_hard_reg_initial_val,
+ get_hard_reg_initial_val, has_hard_reg_initial_val): New functions
+ to keep track of values present at the start of a function.
+ (mark_hard_reg_initial_vals): New, for gc.
+ (setup_initial_hard_reg_value_integration): New. Sets up pseudo
+ mappings for initial values.
+ (emit_initial_value_sets): New. Emits code to set initial value
+ pseudos.
+ * integrate.h: Add prototypes for new functions.
+ * function.h (struct function): Add hard_reg_initial_vals field.
+ * function.c (integrate.h): Include.
+ (mark_function_status): Call
+ mark_hard_reg_initial_vals.
+ * toplev.c (integrate.h): Include.
+ (rest_of_compilation): Call emit_initial_value_sets.
+
+2001-06-21 Stan Shebs <shebs@apple.com>
+
+ * doc/contrib.texi, doc/cpp.texi, doc/cppinternals.texi,
+ doc/extend.texi, doc/gcc.texi, doc/install.texi, doc/invoke.texi,
+ doc/objc.texi, doc/tm.texi: Use the correct name "Objective-C"
+ everywhere instead of "Objective C".
+
+2001-06-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
+ doc/gcc.texi, doc/install-old.texi, doc/install.texi,
+ doc/invoke.texi, doc/rtl.texi: Consistently use "front end" and
+ "back end" as nouns and "front-end" and "back-end" as adjectives.
+
+Wed Jun 20 21:53:35 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (estimate_probability): Fix loop bounds.
+
+Wed Jun 20 19:10:48 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Run mark_constant_function
+ before profile-arcs.
+
+Wed Jun 20 19:08:18 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (estimate_loops_at_level, propagate_freq
+ estimate_bb_frequencies, count_to_freqs): New functions.
+ (estimate_probability): Call estimate_bb_frequencies.
+ * basic-block.h (basic_block_def): Add field "freq".
+ (BB_FREQ_MAX): New constant.
+
+Wed Jun 20 17:02:50 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * sh.c (barrier_align): Don't ask for alignment when seeing a
+ branch-around-a-jump from machine_dependent_reorg.
+
+Wed Jun 20 08:35:02 2001 Jeffrey A Law (law@cygnus.com)
+
+ * ssa.c (rename_block): Update parameter to remove_phi_alternative
+ (convert_from_ssa): Do create REG_DEAD and REG_UNUSED notes when
+ re-running life analysis.
+
+2001-06-20 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (hash_init): Assume xmalloc always succeeds,
+ also use memset to clear the hash tables.
+ (hash_enter): Assume xmalloc always succeeds.
+ (hash_add_attr): Ditto.
+ (continue_class): Ditto.
+
+2001-06-20 Michael Meissner <meissner@redhat.com>
+
+ * builtins.c (predict.h): Include.
+ (expand_builtin_expect): Update comment.
+ (expand_builtin_expect_jump): New function to expand
+ __builtin_expect inside of a conditional jump expansion.
+
+ * expr.c (do_jump): Special case __builtin_expect (<test>, 0) and
+ __builtin_expect (<test>, 1).
+
+ * Makefile.in (builtins.o): Depend on $(PREDICT_H).
+
+ * rtl.h (expand_builtin_expect_jump): Add prototype.
+
+2001-06-19 Geoffrey Keating <geoffk@redhat.com>
+
+ * doc/rtl.texi (Machine Modes): Correct description of
+ floating-point modes on machines with non-8-bit bytes.
+
+2001-06-19 Bernd Schmidt <bernds@redhat.com>
+
+ * regmove.c (optimize_reg_copy_3): Do nothing if previous insn
+ carries a REG_EQUIV note. If it carries REG_EQUAL, delete the
+ note.
+
+Tue Jun 19 07:53:52 2001 Jeffrey A Law (law@cygnus.com)
+
+ * ssa.c (remove_phi_alternative): Remove declaration. No longer
+ static. Second argument is a pointer to a basic block structure,
+ not a basic block index.
+ (convert_to_ssa): Do not remove dead code.
+ (convert_from_ssa): Do not remove dead code to create death notes.
+ * ssa.h (remove_phi_alternative): Declare.
+
+ * flow.c (delete_unreachable_blocks): Fix patch error in
+ previous change (call to find_unreachable_blocks was lost).
+
+ * ssa.c (ssa_uses): Remove definition.
+ (apply_delayed_renames): Don't grow ssa_uses.
+ (rename_block): Remove comment related to ssa_uses.
+ (rename_registers): Do not initialize ssa_uses.
+ (convert_from_ssa): Do not free ssa_uses.
+
+ * ssa-dce.c: Renamed from dce.c.
+ * Makefile.in (OBJS): Replace dce.o with ssa-dce.o
+ (dependencies): Replace dce.c with ssa-dce.c and dce.o with
+ ssa-dce.o.
+
+2001-06-19 Eric Christopher <echristo@redhat.com>
+
+ * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode
+ and DFmode are UNITS_PER_WORD and 2*UNITS_PER_WORD. Use
+ GET_MODE_BITSIZE instead of GET_MODE_SIZE/UNITS_PER_WORD.
+
+Tue Jun 19 01:52:27 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * sh.c (output_branch): Delete bogus code.
+
+ * sh.c (initial_elimination_offset):
+ Fix FROM == RETURN_ADDRESS_POINTER_REGNUM case.
+
+Mon Jun 18 12:50:49 2001 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (find_unreachable_blocks): New function.
+ (delete_unreachable_blocks): Use find_unreachable_blocks.
+ * basic-block.h (find_unreachable_blocks): Declare.
+
+ * dce.c (eliminate_dead_code): Fix formatting glitch.
+
+2001-06-18 Jason Merrill <jason_merrill@redhat.com>
+
+ * c-common.h (RETURN_NULLIFIED_P): New macro.
+ * c-semantics.c (genrtl_return_stmt): Check it.
+
+ * expr.c (clear_storage): Set TREE_NOTHROW on the decl for memset.
+ (emit_block_move): Likewise.
+
+Mon Jun 18 17:27:24 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * unroll.c: Include predict.h.
+ (unroll_loop): Drop prediction notes on preconditioning.
+ * predict.def (PRED_LOOP_PRECONDITIONG, PRED_LOOP_CONDITION):
+ New; add comments on the others.
+ * Makefile.in: (unroll.o): Add dependency on predict.h.
+ * loop.c (strength_reduce): Fix branch prediction.
+
+Mon Jun 18 17:26:56 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * stmt.c (emit_case_nodes): Optimize test whether index is in given
+ interval.
+
+Mon Jun 18 15:43:10 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (estimate_probability): Do not bail out early
+ when note is present.
+ (combine_predictions_for_insn): Fix note removal code.
+
+2001-06-18 Ben Elliston <bje@redhat.com>
+
+ * except.c (resolve_fixup_regions): Initialize "cleanup".
+
+2001-06-17 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * tm.texi: Document STDC_0_IN_SYSTEM_HEADERS.
+
+Sat Jun 16 20:20:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case ADDR_EXPR): If taking address of SAVE_EXPR,
+ use put_var_into_stack.
+
+2001-06-16 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * gccspec.c (lang_specific_driver): If compiling ObjC, add
+ -shared-libgcc when necessary.
+ * Makefile.in (gccspec.o): Compile with DRIVER_DEFINES.
+
+2001-06-16 Daniel Berlin <dan@cgsoftware.com>
+
+ * bitmap.h: Add dump_bitmap, bitmap_zero, bitmap_union_of_diffs,
+ bitmap_a_or_b, bitmap_a_and_b, bitmap_first_set_bit,
+ bitmap_last_set_bit. All for compatibility with sbitmap's.
+
+ *bitmap.c (bitmap_zero): New function.
+ (bitmap_union_of_diffs): New function.
+ (bitmap_first_set_bit): New function.
+ (bitmap_last_set_bit): New function.
+
+2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi, invoke.texi: Update.
+ * cpp.1, gcc.1: Regenerate.
+
+Sat Jun 16 12:45:20 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (minsf): Fix splitter. (PR fortran/3191)
+
+2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * doc/cpp.texi: Update.
+ * doc/cpp.1: Regenerate.
+
+2001-06-15 Loren J. Rittle <ljrittle@acm.org>
+
+ * doc/install.texi: Use correct markup hints.
+
+Fri Jun 15 18:05:22 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * function.c (gen_mem_addressof): Handle case where DECL is SAVE_EXPR.
+
+ * explow.c (expr_size): If DECL and size specified, use it.
+
+2001-06-15 Zack Weinberg <zackw@stanford.edu>
+
+ * doc/cpp.texi: Formatting corrections.
+ Correct buggy example of use of __GNUC__ etc.
+ Clarify $ in identifiers.
+ * doc/cpp.1: Regenerate.
+
+Fri Jun 15 19:35:38 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * optabs.c (expand_twoval_binop): Avoid undefined behavior.
+
+2001-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * doc/install.texi (Specific, alpha*-*-*): Fixed Tru64 UNIX
+ etc. spelling.
+ (Specific, alpha-*-osf1): Renamed to alpha*-*-osf*.
+ Added Tru64 UNIX V5.1 bootstrap hints.
+ (Specific, alpha*-*-osf*): Removed old section, obsolete.
+
+2001-06-15 Andreas Jaeger <aj@suse.de>
+
+ * doc/install.texi (Specific): Mention that glibc cannot be
+ compiled with GCC 3.0.
+
+2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
+
+ * combine.c (nonzero_bits): Don't optimize away division by
+ zero.
+
+2001-06-15 Zack Weinberg <zackw@stanford.edu>
+
+ * doc/cpp.texi: Revised and brought up to date.
+ * doc/cpp.1: Regenerate.
+
+2001-06-15 Loren J. Rittle <ljrittle@acm.org>
+
+ * doc/install.texi: Update --enable-threads to match reality.
+
+2001-06-15 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * doc/install.texi: Update for C4x.
+ * README.C4X: Remove.
+
+2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
+ doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
+ doc/objc.texi, doc/rtl.texi, doc/tm.texi: Fix spelling and typos.
+ Consistently use "built-in" and "bit-field". Minor logical markup
+ improvements.
+ * doc/gcc.1: Regenerate.
+
+2001-06-14 Richard Henderson <rth@redhat.com>
+
+ * config/mips/mips.md (exception_receiver): New.
+
+2001-06-14 Daniel J. Berlin <dan@cgsoftware.com>
+
+ * doc/gcc.texi: Update passes documentation to be more in tune
+ with reality.
+
+Thu Jun 14 15:38:28 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_prologue): Fix merging conflict.
+
+2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
+ doc/gcc.texi, doc/gcov.texi, doc/install-old.texi,
+ doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Use more
+ logical markup. Use TeX quotes and dashes. Use @dots{} and
+ @minus{}. Avoid spaces inside @var. Update last modification
+ date in gcc.texi.
+ * doc/gcc.1, doc/gcov.1: Regenerate.
+
+Thu Jun 14 12:44:15 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_accumulate_outgoing_args, x86_prologue_using_move,
+ x86_epilogue_using_move): New global variables.
+ (override_options): Enable ACCUMULATE_OUTGOING_ARGS if preferred.
+ (ix86_emit_save_regs_using_mov): New static function.
+ (ix86_expand_prologue, ix86_expand_epilogue): Use moves if preferred.
+ * i386.h (MASK_MMX, MASK_SSE, MASK_SSE2, MASK_128BIT_LONG_DOUBLE,
+ MASK_MIX_SSE_I387): Renumber.
+ (MASK_NO_ACCUMULATE_OUTGOING_ARGS): New.
+ (x86_accumulate_outgoing_args, x86_prologue_using_move,
+ x86_epilogue_using_move): Declare.
+ (TARGET_PROLOGUE_USING_MOVE, TARGET_EPILOGUE_USING_MOVE): New.
+
+2001-06-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * inclhack.def (hpux10_cpp_pow_inline): New hack.
+
+2001-06-13 Richard Henderson <rth@redhat.com>
+
+ * ifcvt.c (dead_or_predicable): Fix return value last patch.
+
+2001-06-13 Mark Mitchell <mark@codesourcery.com>
+
+ * NEWS: Remove.
+
+2001-06-13 Richard Henderson <rth@redhat.com>
+
+ * ifcvt.c (cond_exec_get_condition): Use reversed_comparison_code.
+ (cond_exec_process_if_block, dead_or_predicable): Likewise.
+
+2001-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * mips-tfile.c (copy_object): Always pass indexNil for symbol
+ table index.
+
+2001-06-13 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.h (OK_FOR_T): Remove.
+ (EXTRA_CONSTRAINT): Do not use OK_FOR_T.
+ * config/h8300/h8300.md: Remove alternatives involving inc and dec
+ in the helper patterns for addhi3 and addsi3.
+
+2001-06-13 Phil Edwards <pme@sources.redhat.com>
+
+ * doc/contrib.texi: Link to libstdc++'s thanks.html for now.
+
+2001-06-13 Zack Weinberg <zackw@stanford.edu>
+
+ * Makefile.in: Move _bb and __gcc_bcmp to LIB2FUNCS_ST.
+ * libgcc-std.ver: Take out __bb* and __gcc_bcmp.
+
+ * config/t-slibgcc-elf-ver, config/t-slibgcc-sld,
+ config/alpha/t-osf4, config/mips/t-iris6: Extract all
+ references to @shlib_map_file@, @shlib_objs@, or
+ @shlib_base_name@ to Makefile variables.
+ Bump soname version of libgcc to 1.
+
+2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install.texi: Use more logical markup. Include @node
+ commands in the source when generating any non-HTML.
+
+2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * README: Remove. Some of the contents moved to ../README.
+
+2001-06-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * doc/install.texi (--enable-shared): List package names
+ recognized by GCC.
+
+2001-06-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * doc/install.texi (ix86-*-solaris*): Removed, outdated.
+ (*-*-solaris*): Document problem in /bin/sh that affects
+ configuring libraries.
+ (sparc-*-solaris*): Recommend GNU binutils 2.11.1 or vendor tools.
+ (*-sun-solaris2.8): Document linker problem that explains why
+ libjava is disabled by default.
+
+2001-06-09 Mark Mitchell <mark@codesourcery.com>
+
+ Revert this patch:
+ * toplev.c (rest_of_compilation): Remove dead code before
+ purge_addressof.
+
+2001-06-12 Alexandre Oliva <aoliva@redhat.com>
+
+ Reverted:
+ 2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
+ * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
+ * configure: Rebuilt.
+
+2001-06-12 Jim Wilson <wilson@redhat.com>
+
+ * loop.c (strength_reduce): Move bl->all_reduced set before
+ check_ext_dependant_givs call.
+ (check_ext_dependant_givs): Clear bl->all_reduced when ignoring givs.
+
+2001-06-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * doc/extend.texi (Function Attributes): Document SH's sp_switch
+ and trap_exit.
+
+2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/invoke.texi: Use more logical markup. Use TeX quotes,
+ dashes and @dots{}.
+
+2001-06-12 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_expand_prologue): Always use
+ gen_pro_epilogue_adjust_stack; update arguments.
+ (ix86_expand_epilogue): Likewise.
+ (ix86_emit_epilogue_esp_adjustment): Remove.
+ (ix86_adjust_cost): Remove pro_epilogue_adjust_stack hack.
+ * config/i386/i386.md (pro_epilogue_adjust_stack): Use a BLKmode
+ clobber of scratch memory instead of a modification of EBP as the
+ barrier. Update all peepholes to match.
+
+2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcc.texi: Change the font used for @def... commands to a
+ fixed width font.
+ * doc/extend.texi: Use more logical markup. Use "built-in"
+ instead of "builtin". Use @deftypefn to mark up built-in
+ functions; specify their types in the @deftypefn and not in the
+ descriptive text. Use TeX quotes and dashes. Add more index
+ entries.
+
+2001-06-12 lars brinkhoff <lars@nocrew.org>
+
+ * gcc.texi (HOST_BITS_PER_LONGLONG): Document.
+ (DIR_SEPARATOR_2): Likewise.
+
+2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install.texi (--exec-prefix, --bindir, --libdir,
+ --with-slibdir, --infodir, --mandir, --with-cpp-install-dir):
+ Document.
+ (--enable-cpp): Change to document --disable-cpp instead; update
+ to reflect current default.
+ (--without-fast-fixincludes): Remove documentation.
+ (Final install): Document installation directories in more
+ detail. Document use of make dvi.
+
+Tue Jun 12 19:01:43 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (validate_replace_rtx_1): Fix previous patch.
+
+Tue Jun 12 17:25:39 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (validate_replace_rtx_1): Do plus_constant call always.
+
+Tue Jun 12 17:24:07 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_subreg): Allow volatile memory
+ to be subregged in case we don't have move instruction.
+
+Tue Jun 12 12:20:12 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * loop.c: Include predict.h
+ (strength_reduce): Drop branch prediction note in case
+ number of iterations is known.
+ * predict.def (PRED_LOOP_ITERATIONS): new.
+ * Makefile.in (loop.o): Add dependency on predict.h
+
+2001-06-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-decl.c (grokdeclarator): Use INTEGRAL_TYPE_P.
+
+ * c-typeck.c (c_start_case): Likewise.
+
+2001-06-12 Mark Mitchell <mark@codesourcery.com>
+
+ * expr.c (store_field): Don't set MEM_ALIAS_SET for a field
+ in a structure at a variable address.
+
+2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcov.texi: Use more logical markup.
+
+2001-06-11 Mark Mitchell <mark@codesourcery.com>
+
+ * unroll.c (initial_reg_note_copy): Use PUT_REG_NOTE_KIND and
+ REG_NOTE_KIND, not PUT_MODE and GET_MODE.
+ (final_reg_note_copy): Remove REG_WAS_0 notes that are no longer
+ valid.
+
+2001-06-11 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (ASM_FILE_END): Remove decl of language_string.
+
+2001-06-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md ("*lshrdi3_const32"): Mark the clobber
+ as an early clobber to make sure it is not used by reload in
+ one of the operands.
+
+2001-06-11 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/c-tree.texi: Update information about flag_honor_std.
+ * doc/install.texi: Note that binutils is required on HPUX 11.
+ * doc/invoke.texi (-fhonor-std): Note that -fno-honor-std is
+ now the default.
+
+ * config/mips/abi64.h (RETURN_IN_MEMORY): Fix handling of
+ variable-sized types.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/md.texi: Use TeX dashes and quotes.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/rtl.texi: Reference manual chapter about trees.
+
+2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris6.h (NO_BUILTIN_WINT_TYPE): Define.
+ (WINT_TYPE): Override.
+ (WINT_TYPE_SIZE): Likewise.
+ (SUBTARGET_CPP_SIZE_SPEC): Define __WINT_TYPE__ as appropriate.
+
+ * config/sparc/sol2.h (WINT_TYPE): Define.
+ (WINT_TYPE_SIZE): Likewise.
+
+ * config/sparc/sol2-sld-64.h (NO_BUILTIN_WINT_TYPE): Define.
+ (WINT_TYPE): Override.
+ (WINT_TYPE_SIZE): Likewise.
+ (CPP_ARCH32_SPEC): Add __WINT_TYPE__ definition.
+ (CPP_ARCH64_SPEC): Likewise.
+
+2001-06-11 Richard Henderson <rth@redhat.com>
+
+ * unwind-dw2-fde.c (__deregister_frame_info): Don't play games
+ with alias attribute.
+
+ * config/linux.h (CPLUSPLUS_CPP_SPEC): Use %(cpp) not $(cpp_cpu).
+ * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): Likewise.
+
+2001-06-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): New.
+
+2001-06-11 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.c (darwin_encode_section_info): Rewrite to simplify
+ and fix coding mistakes.
+
+2001-06-11 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * config/m32r/m32r.md (movstrsi_internal): Do not expect a
+ return string from m32r_output_block_move.
+ * config/m32r/m32r-protos.h: Make m32r_output_block_move a
+ void function.
+ * config/m32r/m32r.h (INT32_P): Rename to UNIT32_P and remove
+ integer overflow.
+ (ROUND_ADVANCE): Remove signed/unsigned conflict.
+ * config/m32r/m32r.c: Declare prototypes for static functions.
+ (move_src_operand): Replace INT32_P with UINT32_P.
+ (function_arg_partial_nregs): Fixed signed/unsigned conflict
+ in initialisation of 'size'.
+ (m32r_sched_reord): Remove redundant declarations of 'code'.
+ (m32r_output_block_move): Change to a void function.
+ (m32r_encode_section_info): Cast return of
+ TREE_STRING_POINTER to avoid compile time warning.
+
+2001-06-11 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/osf5.h (TARGET_LD_BUGGY_LDGP): New.
+ * config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Default.
+ (struct machine_function): Add gp_save_rtx.
+ * config/alpha/alpha.c (alpha_mark_machine_status): Mark it.
+ (alpha_gp_save_rtx): New.
+ * config/alpha/alpha-protos.h: Declare it.
+ * config/alpha/alpha.md (exception_receiver): Make an expander.
+ Use alpha_gp_save_rtx if TARGET_LD_BUGGY_LDGP.
+
+2001-06-11 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
+
+2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in: Align --help messages.
+ Remove trailing full stops.
+ Consistently use lower case.
+ Fix DWARF 2 spelling.
+ * configure: Rebuilt.
+
+2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/alpha/alpha.h (CPP_SPEC): Don't define __LANGUAGE_C and
+ variants for .cpp/.cp/.c++ files.
+ Move definition of __LANGUAGE_C_PLUS_PLUS ...
+ (CPLUSPLUS_CPP_SPEC): ... here.
+
+Mon Jun 11 15:47:45 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (duplicate_loop_exit_test): Fix loop header heuristics.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (store_parm_decls): When comparing types in an
+ old-style function declaration with those from a previous
+ prototype, compare the unqualified versions of parameter types.
+ Fixes PR c/3116.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/objc.texi: Use more logical markup. Use TeX dashes.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi: Use more logical markup.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (xref_tag): Don't return previous tags of wrong type.
+
+2001-06-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * loop.c (scan_loop): Do not combine asm statements.
+
+2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * simplify-rtx.c (simplify_subreg): Fix offset calculation
+ for complex values within a CONCAT.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install.texi: Update details of what components are included
+ in the GCC distribution. Update default directory for g++
+ includes. Update documentation relating to old libio. Adjust
+ documentation on DejaGnu environment variables. Remove
+ documentation of --enable-cpplib.
+
+2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/contrib.texi: Fix alphabetical order. Fix typos. Improve
+ markup.
+
+2001-06-10 Richard Henderson <rth@redhat.com>
+
+ * ifcvt.c (life_data_ok): New.
+ (merge_if_block): Use it to determine whether to update
+ global_live_at_end.
+ (if_convert): Set it.
+
+2001-06-10 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/osf5.h (ASM_OLDAS_SPEC): Add -c.
+
+2001-06-10 Alexandre Oliva <aoliva@redhat.com>
+
+ * doc/invoke.texi (MN10300 Options): Document -mno-crt0.
+ (SH Options): Document -mieee.
+ * doc/install.texi (Final install): Remove obsolete information
+ about installing cross compilers.
+ * doc/gcc.1: Rebuilt.
+
+2001-06-10 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (override_options): Set align_loops,
+ align_jumps, and align_functions.
+ * config/alpha/alpha.h (FUNCTION_BOUNDARY): Set to 32 bits.
+ (LOOP_ALIGN, LABEL_ALIGN_AFTER_BARRIER): Remove.
+
+2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode and DFmode
+ are one and two words in size.
+
+2001-06-10 Richard Henderson <rth@redhat.com>
+
+ * doc/invoke.texi (Optimization Options): Document -fpeephole2.
+ (Code Generation Options): Document -fnon-call-exceptions.
+
+2001-06-10 Mark Kettenis <kettenis@gnu.org>
+
+ * config/i386/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Undefine.
+
+2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * m68hc11.md (peepholes): Remove unused and wrong peepholes.
+
+2001-06-10 Mark Mitchell <mark@codesourcery.com>
+ Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * Makefile.in (c-parse.o): Depend on diagnostic.h
+ (dwarf2out.o): Likewise.
+
+ * dwarf2out.c: #include diagnostic.h
+
+ * toplev.h (warningcount, errorcount, sorrycount): Remove
+ declarations.
+
+ * toplev.c (warningcount, errorcount, sorrycount): Remove
+ definitions.
+
+ * diagnostic.h (struct output_buffer): Reorder fields.
+ (diagnostic_kind_count): New macro.
+ (errorcount, warningcount, sorrycount): Define as macros.
+ (diagnostic_report_warnings_p): New macro.
+ (output_state): Add diagnostic_count field.
+
+ * diagnostic.c (warningcount, errorcount, inhibit_warnings):
+ Remove tentative declaration.
+ (count_error): Use diagnostic_report_warnings_p.
+
+ * c-parse.in: #include diagnostic.h
+
+2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md ("extendhisi2"): Fix constraints to
+ prefer a memory for operand 1.
+ ("*addsi3"): Fix constraints, the '!' was too strong.
+ ("*addsi3_split"): Accept soft register and split accordingly.
+
+2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
+ Move definition in the RTX_CODE section.
+
+2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Define the return
+ address as relative to the argument pointer.
+
+Sun Jun 10 10:58:53 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.def (PRED_OPCODE): Place before call and error_return.
+
+Sun Jun 10 10:00:17 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.def (PRED_CALL, PRED_ERROR_RETURN): New.
+ * predict.c (estimate_probability): Calculate dominance
+ information; improve detection of NORETURN heuristics;
+ add call/error_return heuiristics; tweak comparison heuristics
+ to recognize -1.
+
+2001-06-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * doc/invoke.texi (C Dialect Options): Document -aux-info.
+ (Debugging Options): Document -print-multi-directory and
+ -print-multi-lib.
+ * doc/gcc.1: Rebuilt.
+
+ * toplev.c (independent_decode_option): Require `=' between
+ `-aux-info' and filename in the same argument.
+ * gcc.c: Don't pass -aux-info=filename twice.
+
+2001-06-09 Mark Mitchell <mark@codesourcery.com>
+
+ * expr.c (expand_expr, case ARRAY_REF): Do not replace
+ an array element with the known initializing value if it has
+ side-effects.
+
+ * toplev.c (rest_of_compilation): Remove dead code before
+ purge_addressof.
+
+2001-06-09 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (print_help): Document -fpreprocessed.
+ * invoke.texi: Similarly.
+
+Sun Jun 10 00:35:37 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.def: New file.
+ * predict.h: New file.
+ * predict.c: Include predict.h.
+ (predictor_info): New structure and array.
+ (predict_edge, predict_insn): Rewrite; make global.
+ (predict_edge_def, predict_insn_def): New global functions.
+ (dump_prediction, combine_predictions_for_insns): New
+ static functions.
+ (estimate_probability): Change calls to predict_edge
+ to predict_edge_def and calls to predict_insn to predict_insn_def;
+ combine probabilities.
+ (expected_value_to_br_prob): Behave as predictor.
+ * rtl.h (REG_BR_PRED): Update coment.
+ (invert_br_probabilities): New.
+ * jump.c: Include predict.h
+ (duplicate_loop_exit_test): Drop branch prediction notes.
+ (invert_jump): Use invert_br_probabilities.
+ * Makefile.in: Add dependency on predict.h for jump and predict pass.
+ * ifcvt.c (dead_or_predicable): Use invert_br_probabilities.
+ * combine.c (distribute_notes): Handle BR_PRED.
+
+Sat Jun 9 23:29:41 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (predict_insn, predict_edge): New static functions.
+ (estimate_probability): Revamp to use new functions;
+ fix loop header heruistics; add loop exist heruistics
+
+2001-06-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * config.gcc: Re-enable bi-arch sparc on Solaris 7 and above.
+
+2001-06-09 Peter Jakubek <pjak@snafu.de>
+
+ * config/m68k/m68k.md (ashrdi_const): Fix right shift by 16.
+
+2001-06-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * vax.h (NOTICE_UPDATE_CC): Set CC_NO_OVERFLOW in cc_status.flags
+ for integer operations that don't update C bit.
+
+2001-06-09 Nicola Pero <nicola@brainstorm.co.uk>
+
+ * gthr-posix.h (__gthread_objc_init_thread_system): If
+ pthread_key_create fails, it's not clear what the return value is.
+ This obvious fix makes sure it always returns -1 if a problem
+ occurs.
+
+2001-06-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcc.texi: Use @defcodeindex for the index of options. Add
+ more index entries. Use more logical markup where appropriate.
+ Use TeX quotes and dashes.
+
+2001-06-09 Benjamin Kosnik <bkoz@redhat.com>
+
+ * unwind-pe.h: Conditionally qualify references to abort with
+ std::.
+
+2001-06-09 Julian Foad <julian_foad@hotmail.com>
+
+ * doc/invoke.texi: Remove superfluous text.
+
+2001-06-08 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): New.
+ (LIB_SPEC): Mirror config/linux.h version.
+
+2001-06-08 Richard Henderson <rth@redhat.com>
+
+ * except.c (get_exception_pointer, get_exception_filter): Take a
+ struct function. Update all callers.
+ * except.h (get_exception_pointer): Update declaration.
+ * expr.c (expand_expr): Update get_exception_pointer call.
+ * integrate.c (expand_inline_function): Remap the exception pointer
+ from callee to caller.
+
+2001-06-08 Mark Mitchell <mark@codesourcery.com>
+
+ * c-decl.c (grokdeclarator): Make the TREE_TYPE for declarations
+ accurately reflect its cv-qualification.
+ * c-typeck.c (type_lists_compatible_p): Ignore the top-levl
+ cv-qualifiers on function types.
+
+2001-06-08 Mark Mitchell <mark@codesourcery.com>
+
+ * basic-block.h: Improve comments.
+ * except.c (expand_eh_region_end_allowed): Remove redundant call
+ to do_pending_stack_adjust.
+ * flow.c (life_analysis): Fix typo in comment.
+ (calculate_global_regs_live): Add documentation.
+ (mark_set_1): Likewise.
+ (debug_regset): Likewise.
+ * doc/rtl.texi (cond_exec): Document it.
+
+Fri Jun 8 21:52:51 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (CONST_COSTS): set cost of constants representable in
+ immediate fields to 0.
+
+Fri Jun 8 21:34:54 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * function.c (diddle_return_value): Kill code to determine
+ return value before expand_function_end.
+ (expand_function_end): Delay call to clobber_return_register
+ after fucntion return value is computed.
+
+ Re-install temporary reverted patch:
+ * toplev.c (rest_of_compilation): Call split_all_insns
+ before reg-stack and shorten-branches. Do shorten-branches
+ after reg-stack.
+ * final.c (shorten_branches): Remove insn splitting code.
+
+2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcc.texi, doc/invoke.texi: Add index of command line
+ options. Use @opindex to index them rather than other indexing
+ commands. Use @var{...} instead of <...>. Avoid spaces in names
+ inside @var. Don't use @kindex to index escape sequences in
+ source code.
+
+2001-06-08 Jason Merrill <jason_merrill@redhat.com>
+
+ * stmt.c (current_nesting_level): New fn.
+ * tree.h: Declare it.
+ * c-semantics.c (genrtl_compound_stmt): Use it.
+
+ * dbxout.c (dbxout_symbol): Use DECL_RTL_SET_P.
+
+2001-06-08 Jakub Jelinek <jakub@redhat.com>
+
+ * jump.c (mark_modified_reg): Allow jump threading if condition
+ codes are represented by a hard register.
+
+2001-06-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/ia64.c (ia64_function_arg): Use [SDT]Fmode as gr_mode
+ for complex floats passed to unprototyped functions.
+
+2001-06-08 Mark Mitchell <mark@codesourcery.com>
+
+ * except.c (expand_eh_region_end_allowed): Call
+ do_pending_stack_adjust as necessary.
+
+Fri Jun 8 14:16:33 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * function.c (clobber_return_register): Clobber the pseudo return
+ register too.
+
+ * sibcall.c (skip_unreturned_value): New function.
+ (call_ends_block_p): Use it.
+
+ * recog.c (split_insn): Break out from ...
+ (split_all_insns): ... here; do not use basic block information
+ when it is broken.
+
+Thu Jun 7 18:27:53 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_subreg): Fix verification of
+ combined subreg.
+
+2001-06-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/mips.h (CPP_SPEC): Simplify .s/.S handling.
+ Don't define _LANGUAGE_C and variants for .cpp/.cp/.c++ files.
+ Move definition of _LANGUAGE_C_PLUS_PLUS ...
+ (CPLUSPLUS_CPP_SPEC): ... here.
+ Fixes PRs c++/3047, target/441.
+
+2001-06-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi2html (MAKEINFO): Keep value if set already.
+
+2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcc.texi: Add trailing slash to URL.
+
+2001-06-07 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (ENCODE_SECTION_INFO): Define.
+ (REDO_SECTION_INFO_P): Ditto.
+ (STRIP_NAME_ENCODING): Ditto.
+ (ASM_DECLARE_OBJECT_NAME): Use ENCODE_SECTION_INFO.
+ (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Ditto.
+ (ASM_OUTPUT_LABELREF): Use STRIP_NAME_ENCODING.
+ (GEN_LAZY_PTR_NAME_FOR_SYMBOL): Ditto.
+ * config/darwin.c: No longer include c-tree.h.
+ (machopic_classify_ident): Rewrite to use symbol encoding.
+ (lookup_name_darwin): Remove.
+ (machopic_non_lazy_ptr_name): Handle encoded symbols.
+ (machopic_stub_name): Use STRIP_NAME_ENCODING.
+ (machopic_validate_stub_or_non_lazy_ptr): Ditto.
+ (machopic_finish): Ditto, remove test of decl.
+ (update_non_lazy_ptrs): New function.
+ (darwin_encode_section_info): New function.
+ * config/darwin-protos.h: Declare it.
+ * config/rs6000/rs6000.c (machopic_output_stub): Use
+ STRIP_NAME_ENCODING.
+
+2001-06-07 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.h (DECL_SOURCE_FILE): Improve documentation.
+ (DECL_SOURCE_LINE): Likewise.
+
+2001-06-07 Loren J. Rittle <ljrittle@acm.org>
+
+ * config/alpha/elf.h (MAKE_DECL_ONE_ONLY): Copy definition
+ from config/elfos.h.
+
+2001-06-07 Phil Edwards <pme@sources.redhat.com>
+
+ * linux.h (CPLUSPLUS_CPP_SPEC): Move -D_GNU_SOURCE to here.
+ * pa/pa-linux.h: Allow CPLUSPLUS_CPP_SPEC to remain.
+
+2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/contrib.texi: Add copyright notice.
+
+2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/md.texi: Use four digit years in copyright notice.
+
+2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * config.gcc: For $target_alias of athlon-*, set
+ target_cpu_default2=5.
+
+Thu Jun 7 16:17:40 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * global.c (build_insn_chain): Allow ADDR_VEC or ADDR_DIF_VEC after
+ end of last block if last real insn is a JUMP_INSN.
+
+2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * NEWS: Regenerate.
+
+2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * gthr-posix.h (__gthread_objc_thread_detach): Simply cast
+ pthread_t to objc_thread_t.
+ (__gthread_objc_thread_id): Likewise.
+
+2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
+ (ASM_OLDAS_SPEC): Likewise.
+
+ * alpha/osf.h (CPP_XFLOAT_SPEC): Define.
+ (CPP_SUBTARGET_SPEC): Use it.
+ (ASM_OLDAS_SPEC): Define.
+ (ASM_SPEC): Use it.
+ (SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.
+
+2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args,
+ passed by reference.
+
+2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/tm.texi (TARGET_SWITCHES, TARGET_OPTIONS): Adjust markup.
+ Document use of N_(...), and show it in examples. Note that
+ documentation should be added to invoke.texi. Avoid an overfull
+ hbox.
+
+Thu Jun 7 17:09:50 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Revert previous patch.
+ * final.c (shorten_branches): Likewise.
+
+2001-06-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * pself.c, pself1.c, pself2.c, pself3.c, pself4.c, pself5.c:
+ Remove.
+
+2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install-old.texi: Remove more obsolete documentation.
+
+Thu Jun 7 13:20:14 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * expr.c (copy_blkmode_from_reg): Fix operand_subword_force call.
+
+Thu Jun 7 12:12:58 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Call split_all_insns
+ before reg-stack and shorten-branches. Do shorten-branches
+ after reg-stack.
+ * final.c (shorten_branches): Remove insn splitting code.
+
+2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
+
+ * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
+ * configure: Rebuilt.
+
+2001-06-07 Andreas Jaeger <aj@suse.de>
+
+ * emit-rtl.c (operand_subword): Remove unused variable.
+
+Wed Jun 6 14:51:05 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (floatdi?f): Avoid usinf of SSE instructions
+ if TARGET_64BIT is false.
+ (floatdi?f_i386_only): New insn.
+ (floatdi?f_i386): Disable for !TARGET_64BIT.
+
+ * (min?f, max?f splitters): Handle case where
+ operands are cross-matched.
+
+ * i386.h (HI_REGISTER_NAMES): Remove redundant definition
+ (MMX_REGISTER_NAMES): Kill.
+ (PRINT_OPERAND): Fix comment.
+ (PRINT_REG): Likewise.
+ * i386.c (print_reg): Kill support for 'm' CODE; simplify.
+ (print_operand): Update comment; kill 'm'.
+
+ * i386.c (x86_branch_hints): New global variable
+ (print_operand): Support outputting of branch prediction hints.
+ * i386.md (conditional jump patterns): Add branch prediction hints
+ to the template.
+ * i386.h (x86_branch_hints): Declare
+ (TARGET_BRANCH_PREDICTION_HINTS): New macro.
+ (PRINT_OPERAND_FUNCT_VALID_P): New.
+ * final.c (final_forward_branch_p): New function.
+
+2001-06-06 Richard Henderson <rth@redhat.com>
+
+ * flow.c (mark_used_reg): Clean up looping over multiple hard
+ registers. Do conditional life bits across multiple hard regs.
+
+2001-06-05 Jeffrey D. Oldham <oldham@codesourcery.com>
+
+ * reload1.c (reload): Revert Schmidt's change so all USEs are not
+ deleted during reload.
+
+2001-06-05 Mark Mitchell <mark@codesourcery.com>
+
+ * c-semantics.c (genrtl_scope_stmt): Write out nested inline
+ functions here, instead of ...
+ * c-decl.c (c_expand_body): ... here.
+
+2001-06-05 David O'Brien <obrien@FreeBSD.org>
+
+ * config.gcc, config/sparc/bsd.h: Do not directly include
+ sparc/sparc.h. Instead do it via tm_file.
+
+2001-06-05 Richard Henderson <rth@redhat.com>
+
+ * dwarf2.h (DW_EH_PE_aligned): New.
+ * dwarf2asm.c (eh_data_format_name): Name it.
+ (dw2_asm_output_encoded_addr_rtx): Align for it.
+ * dwarf2out.c (output_call_frame_info): Handle it for personality
+ routine and LSDA pointers.
+
+ * unwind-pe.h (DW_EH_PE_aligned): New.
+ (base_of_encoded_value): Handle it.
+ (read_encoded_value_with_base): Likewise.
+ * unwind-dw2-fde.c (base_from_object): Likewise.
+ (get_cie_encoding): Likewise.
+
+ * config/alpha/elf.h: Remove ecoff commentary.
+ * config/alpha/osf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
+
+2001-06-05 David O'Brien <obrien@FreeBSD.org>
+
+ * config.gcc, config/i386/bsd386.h: Do not directly include
+ i386/386bsd.h. Instead do it via tm_file.
+
+2001-06-05 David O'Brien <obrien@FreeBSD.org>
+
+ * elfos.h (USING_ELFOS_H): Identify the use of elfos.h in the same
+ way svr4.h does.
+
+2001-06-05 Pascal Obry <obry@act-europe.fr>
+
+ * configure.in: Quote $enable_win32_registry in case the value has
+ spaces in it.
+ * configure: Ditto.
+
+2001-06-05 Mark Mitchell <mark@codesourcery.com>
+
+ * print-rtl.c (xspaces): Remove.
+ (print_rtx): Use printf field-width, rather than xpsaces, to
+ indent.
+ * toplev.c (main): Disable sibling-call optimization if we are
+ handling exceptions.
+
+2001-06-05 Bernd Schmidt <bernds@redhat.com>
+
+ * reload1.c (reload): Delete all USEs generated during reload.
+
+2001-06-05 scott snyder <snyder@fnal.gov>
+
+ * gccbug.in: Fix typo.
+
+2001-06-05 Andreas Jaeger <aj@suse.de>
+
+ * builtins.def: Fix definition of __builtin_cosf, it uses float as
+ parameter and return value.
+
+2001-06-04 Anthony Green <green@redhat.com>
+
+ * config/sparc/elf.h (CPP_PREDEFINES): Don't assert cpu or
+ machine. This is now done in sparc.h.
+
+2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ Correct CVS resurrection of invoke.texi.
+ * doc/invoke.texi: Document new tree dump flags.
+
+2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-typeck.c (build_c_cast): Use TYPE_MAIN_VARIANT when checking
+ for casting an aggregate to its own type. Fixes PR c/2735.
+
+2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/texinfo.tex: Update to version 2001-05-24.08.
+
+2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-common.h (flag_dump_translation_unit): Remove.
+ (enum tree_dump_index): Define.
+ (TDF_ADDRESS, TDF_SLIM): New #defines.
+ (dump_node_to_file): Remove.
+ (dump_node): Make extern. Add flags.
+ (dump_flag, dump_enabled_p, dump_begin, dump_end,
+ dump_switch_p): Prototype.
+ * c-common.c (flag_dump_translation_unit): Remove.
+ * c-decl.c (c_decode_option): Remove -fdump-translation-unit
+ logic. Use dump_switch_p.
+ * c-dump.h (struct dump_info): Add node and user fields.
+ (dump_pointer): Declare.
+ * c-dump.c (dump_node): Make extern. Add flags.
+ (SOL_COLUMN, EOL_COLUMN, COLUMN_ALIGNMENT): New #defines.
+ (dump_new_line, dump_maybe_newline): Use them.
+ (dump_pointer): New function.
+ (dequeue_and_dump): Check TDF_SLIM before dumping a _DECL's
+ chain or function's body. Dump address, if TDF_ADDRESS set.
+ (dump_flag): Define.
+ (dump_node_to_file): Remove.
+ (struct dump_file_info): New struct.
+ (dump_files): New array.
+ (dump_begin, dump_end, dump_enabled_p, dump_switch_p): Define.
+ * c-lang.c (finish_file): Adjust dumping.
+ * toplev.h (dump_base_name): Make extern.
+ * invoke.texi: Document new flags.
+
+2001-06-04 Mark Mitchell <mark@codesourcery.com>
+
+ * c-tree.h (lang_decl): Add pending_sizes fields.
+ * c-decl.c (store_parm_decls): Save pending_sizes away for nested
+ functions.
+ (c_expand_body): Expand them.
+ (lang_mark_tree): Mark lang_decl:pending_sizes.
+ * function.c (expand_pending_sizes): New function, broken out
+ from ...
+ (expand_function_start): ... here.
+ * tree.h (expand_pending_sizes): Declare it.
+
+2001-06-04 Loren J. Rittle <ljrittle@acm.org>
+
+ * doc/install.texi: Update FreeBSD information. Generalize
+ and update information for alpha-based platforms using ELF.
+
+2001-06-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P.
+ (store_parm_decls): Likewise.
+ * c-typeck.c (convert_arguments): Likewise.
+
+2001-06-04 Richard Henderson <rth@redhat.com>
+
+ * sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress
+ optimization if current_function_calls_setjmp.
+
+2001-06-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/c-tree.texi: Fix documentation of TREE_STRING_LENGTH for
+ wide strings.
+
+Mon Jun 4 20:44:25 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_subreg): Fix combining of
+ paradoxical subregs.
+
+Mon Jun 4 20:15:25 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * rtlanal.c (rtx_unsable_p): ADDRESSOF is stable.
+ (no_labels_between_p): Short circuit case beg==end.
+
+Mon Jun 4 20:03:05 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * rtlanal.c (operand_preference): Fix preference for objects.
+
+Mon Jun 4 20:00:40 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (handle_avail_expr): Be prepared to handle single_set
+ parallels.
+
+Mon Jun 4 19:59:46 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (if_then_else_cond): Use simplify_subreg instead
+ of operand_subword.
+ * integreate.c (sub_constants): Likewise.
+
+Mon Jun 4 19:59:12 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (constant_subword): Deprecate; remove most of code
+ and use simplify_gen_subreg.
+
+Mon Jun 4 19:55:23 CEST 2001 Lars Brinkhoff <lars@nocrew.org>
+
+ * sibcall.c (skip_copy_to_return_value): recognize the situation
+ when the called function's return value is copied into an
+ intermediate pseudo, and then into the calling functions return
+ value register.
+
+Mon Jun 4 16:50:33 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify_rtx.c (simplify_subreg): Keep subregs on return values,
+ check CLASS_CANNOT_CHANGE_MODE before avoiding subreg on hard reg,
+ in case register wasn't OK previously, accept it now; allow
+ subregs of frame pointer if reload completed and frame pointer
+ is not needed.
+
+ * combine.c (sombine_simplify_rtx): Fix comment;
+ use subreg_lowpart_offset instead of subreg_lowpart_p
+ (gen_lowpart_for_combine): Use subreg_lowpart_offset.
+ * rtl.h (subreg_lowpart_parts_p): Kill.
+ (subreg_lowpart_offset, subreg_highpart_offset): Declare.
+ * simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset.
+ * emit-rtl.c (gen_lowpart_SUBREG): Use subreg_lowpart_offset;
+ (gen_lowpart_common): Likewise.
+ (subreg_lowpart_p): Likewise.
+ (subreg_lowpart_parts_p): Kill.
+ (subreg_lowpart_offset, subreg_highpart_offset): New function.
+
+ * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
+ to simplify SUBREG and REG.
+ (gen_highpart): Use simplify_gen_subreg for all simplifications.
+
+ * emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
+ CONCAT specially.
+
+ * rtlanal.c (replace_regs): Use simplify_gen_subreg
+
+Mon Jun 4 09:21:19 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * doc/c-tree.texi (ARRAY_REF): Say what type of expression must be.
+ (ARRAY_RANGE_REF): Added description.
+
+ * tree.def (ARRAY_RANGE_REF): New code.
+ * alias.c (handled_component_p, can_address_p): Handle it.
+ * dwarf2out.c (loc_descriptor_from_tree): Likewise.
+ * explow.c (set_mem_attributes): Likewise.
+ * expr.c (expand_assignment, get_inner_reference): Likewise.
+ (expand_expr, expand_expr_unaligned, do_jump): Likewise.
+ * fold-const.c (operand_equal_p): Likewise.
+ * tree.c (staticp, stabilize_reference): Likewise.
+ * varasm.c (decode_addr_const): Likewise.
+
+Sun Jun 3 21:59:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * reload.c (reload_inner_reg_of_subreg): Return 1 for PLUS.
+ (push_reload): Handle non-REG in reload_inner_reg_of_subreg case.
+
+2001-06-03 kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * gcc/config/sh/sh.c (print_operand_address, print_operand): Call
+ mark_constant_pool_use before output_addr_const.
+ (struct pool_node): New field wend.
+ (add_constant): Note a sequence of constants that are referenced
+ by a given label.
+ (pool_window_label, pool_window_last): New variables.
+ (dump_table): Emit a unspec_volatile representing the end of a
+ sequence of constants.
+ (mark_constant_pool_use): New function.
+ * gcc/config/sh/sh.md (UNSPECV_WINDOW_END): New constant.
+ (consttable_2): Add the second operand which flags whether
+ this consttable entry was used or not.
+ (consttable_4, consttable_8, consttable_sf, consttable_df):
+ Likewise.
+ (consttable_window_end): New insn.
+
+2001-06-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * insn-addr.h (INSN_ADDRESSES_NEW): Make insn_uid__ unsigned.
+ Reformat according to coding standards.
+
+ Warning removal.
+ * config/sh/sh.c (print_operand_address): Cast INTVAL to int.
+ (shl_and_kind): Cast wide constant.
+ (gen_far_branch): Define as static, as in declaration.
+ (barrier_align): Compute cache-line length as unsigned. Add
+ parentheses in initial credit computation.
+ (rounded_frame_size): Add parentheses.
+ (permanent_obstack): Remove declaration. Include ggc.h for
+ declaration of ggc_add_root_rtx().
+ (get_free_reg): Removed declaration of unused variable reg.
+ (legitimize_pic_address): Mark mode argument as unused.
+
+2001-06-03 Igor Shevlyakov <igor@windriver.com>
+
+ * config/sh/sh.c (output_branch): Support for insn with lenght
+ attr 12 & 16 which represents cond branches outside +-4096 range.
+
+2001-06-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/lib1funcs.asm (ic_invalidate): Align the
+ cache-mirroring sequence. Add nops.
+
+2001-06-03 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install-old.texi: Remove more old installation
+ documentation.
+ * doc/install.texi: Add relevant parts here.
+
+2001-06-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi2html: New script.
+
+2001-06-03 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi: Update AIX information again.
+
+2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/gcc.texi, doc/install-old.texi: Remove old system-specific
+ installation documentation.
+ * doc/install.texi: Move it to here.
+
+2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install.texi: Clean up Texinfo markup.
+
+2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi: Move contents
+ to just after title page.
+
+2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * doc/install-old.texi: Remove documentation of some configuration
+ options.
+ * doc/install.texi: Add relevant parts of this documentation here.
+
+2001-06-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * contrib.texi: Updated entries for Mark Mitchell, Joseph S. Myers,
+ Gerald Pfeifer, Bernd Schmidt, and Dean Wakerley.
+
+Sat Jun 2 12:23:51 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (all uses of ext_register_operand): Make sure they are
+ VOIDmode; replace all uses outside zero_extend.
+ (and?i splitters): Use ext_register_operands.
+ (test?i peep2): Remove ignored constraints.
+ * i386.c (ext_register_operand): Check that operand is
+ either pseudo or hard or 'Q' register.
+
+Sat Jun 2 06:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.h (struct record_layout_info_s): New field unpadded_align.
+ (set_lang_adjust_rli): New declaration.
+ * stor-layout.c (layout_decl): If DECL is packed, but at alignment
+ it would have if not packed, do not downgrade DECL_ALIGN.
+ (lang_adjust_rli, set_lang_adjust_rli): New.
+ (start_record_layout): Initialize new field unpadded_align.
+ (debug_rli): Display it.
+ (place_union_field, place_field): Set it.
+ (layout_type, case RECORD_TYPE): Call via lang_adjust_rli if set.
+
+ * print-tree.c (print_node): Don't print "regdecl" when bit doesn't
+ mean that; use proper names instead.
+ Print DECL_NO_STATIC_CHAIN.
+
+ * except.c (expand_builtin_frob_return_addr): Add missing call
+ to convert_memory_address #ifdef POINTERS_EXTEND_UNSIGNED.
+ (expand_builtin_eh_return): Likewise.
+ (expand_eh_return): Clean up ptr_mode != Pmode cases.
+
+2001-06-01 Jan van Male <jan.vanmale@fenk.wau.nl>
+
+ * doc/invoke.texi: Remove references to papers about sequence points
+ to readings.html, refer to that page.
+
+2001-06-01 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README: Update references to installation instructions.
+
+2001-06-01 Laurent Guerby <guerby@acm.org>
+ Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi: Define srcdir when sources come from CVS.
+ Significantly improve markup. Wrap overly long lines
+
+2001-06-01 DJ Delorie <dj@redhat.com>
+
+ * c-tree.texi, contrib.texi, cpp.texi, cppinternals.texi,
+ extend.texi, fdl.texi, gcov.texi, invoke.texi, md.texi,
+ objc.texi, rtl.texi, tm.texi, texinfo.tex, gcc.1, cpp.1,
+ gcov.1: Move to doc subdirectory.
+ * install.texi: Move to doc/install-old.texi.
+ * gcc.texi: Move to doc, refer to install-old.texi.
+ * Makefile.in: Reflect move of docs to doc/.
+ * f/Make-lang.in: Ditto.
+ * java/Make-lang.in: Ditto.
+ * doc/.cvsignore: New.
+
+2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
+
+ * invoke.texi: use two spaces between command options, eliminate
+ some 'overfull hboxes'
+
+2001-06-01 Hans-Peter Nilsson <hp@axis.com>
+
+ * Makefile.in (s-mlib): Make backtick-commands always succeed.
+ (DRIVER_DEFINES): Ditto.
+
+2001-05-31 Richard Henderson <rth@redhat.com>
+
+ * gcc.c (init_gcc_specs): When linking against libgcc_s.so,
+ also link against libgcc.a.
+
+2001-05-31 Geoff Keating <geoffk@cygnus.com>
+
+ * config/mips/mips.h (ASM_OUTPUT_ASCII): Convert to function.
+ * config/mips/mips.c (mips_output_ascii): New function.
+ * config/mips/mips-protos.h (mips_output_ascii): Prototype.
+
+ * config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Force to 4.
+
+Thu May 31 19:09:53 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (set_block_for_new_insns): Remove bogus shortcut.
+ * i386.c (ix86_expand_int_movcc): Force one of operands to be register.
+
+2001-05-31 Rodney Brown <rbrown64@csc.com.au>
+
+ * install.texi (Configuration): Add html links for --with-gnu-as &
+ --with-gnu-ld and refer to them from hppa & SCO triplets.
+ (Specific): Link back to with-gnu-ld for all ELF platfoms.
+ (Specific): Reword AVR binutils recommendation.
+
+2001-05-30 Zack Weinberg <zackw@stanford.edu>
+
+ * ggc-page.c (size_lookup): Increase minimum allocation size
+ to eight bytes.
+ (ggc_print_statistics): Report size of each bin in bytes, not
+ as its order; there is no longer a direct relationship.
+
+2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
+
+ * extend.texi: Fix formating of examples, eliminate some
+ 'overfull hboxes'.
+ * gcc.texi: Eliminate some 'overfull hboxes'.
+ * invoke.texi: Use two spaces between command options, eliminate
+ some 'overfull hboxes'.
+
+2001-05-30 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (dwarf2out_finish): Don't emit DW_AT_stmt_list at -g1.
+
+2001-05-30 Tom Tromey <tromey@redhat.com>
+
+ * gcc.c (do_spec_1): In `%O' case, if we computed saved_suffix,
+ use it in the new association.
+
+2001-05-30 Loren J. Rittle <ljrittle@acm.org>
+ John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * gthr-posix.h (__gthread_active_ptr): Cast function pointer
+ to target type to allow ISO C++ compiler to accept it.
+ * gthr-dce.h (__gthread_active_ptr): Likewise.
+ * gthr-solaris.h (__gthread_active_ptr): Likewise.
+
+2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplex.c (_cpp_lex_token): Revert patch of 16 May 2001
+ so that we do accept comments in preprocessed input.
+
+2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.c (alloc_node): Cast allocated pointer.
+
+2001-05-30 Gordon Sadler <gbsadler1@lcisp.com>
+
+ * invoke.texi (Option Summary): Remove -isystem-c++ from options.
+
+2001-05-29 Stan Shebs <shebs@apple.com>
+
+ * gcc.texi: Add links for information about Objective-C.
+
+2001-05-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * configure.in (gcc_version): Remove unrequired \ on ". (Solaris
+ /bin/sed fails on [^\"]).
+ (configargs.h): Likewise.
+
+2001-05-29 Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
+
+ * config/sh/sh.h (IDENT_ASM_OP): End with TAB, not LF.
+
+2001-05-28 Stan Shebs <shebs@apple.com>
+
+ * objc/objc.gperf: Remove, no longer used.
+
+2001-05-28 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-tree.texi, contrib.texi, cpp.texi, extend.texi, gcc.texi,
+ gcov.texi, install.texi, md.texi, objc.texi, rtl.texi, tm.texi:
+ Remove trailing whitespace.
+
+2001-05-28 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi (Specific): http://reality.sgi.com/ariel/freeware/
+ became http://freeware.sgi.com/.
+
+2001-05-27 Geoffrey Keating <geoffk@redhat.com>
+
+ * local-alloc.c (update_equiv_regs): Don't eliminate constant
+ expressions at -O0.
+
+2001-05-27 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c: Add/fix various comments.
+ (init_selector): Remove, no longer used.
+ (build_msg_pool_reference): Ditto.
+ (objc_debug): Ditto.
+
+2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-decl.c (init_decl_processing):
+ Don't call start_identifier_warnings.
+ * flags.h (warn_id_clash, id_clash_len): Remove.
+ * stringpool.c: Don't include flags.h.
+ (scan_for_clashes, do_identifier_warnings,
+ start_identifier_warnings): Remove.
+ * toplev.c (warn_id_clash, id_clash_len): Remove.
+ (display_help): Don't document -Wid-clash.
+ (decode_W_option): Print warning on -Wid-clash.
+ * tree.h (start_identifier_warnings): Remove.
+ * invoke.texi: Remove documentation of -Wid-clash.
+
+2001-05-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fixinc/fixtests.c: Declare entries in ENV_TABLE.
+
+2001-05-27 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/check.tpl(HACK) add and use a Scheme variable
+ (has no test text): error out if no "test_text" is defined
+ * fixinc/fixincl.tpl: likewise
+ (FIXIDX): make it an enumeration so we minimize diffs
+ * fixinc/inclhack.def: re-alphabetize and add sort instructions
+ * fixinc/fixincl.x: regenerate
+ * fixinc/tests/base/stdio.h: test output got moved due to
+ the alphabetizing
+ * README-fixinc: rewrite (mostly)
+
+2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.c (run_directive): Set pfile->directive.
+
+2001-05-23 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * c-tree.texi: Reformat the manual as a single chapter now
+ included by gcc.texi.
+ * gcc.texi: Include c-tree.texi. Merge all indexes.
+ * Makefile.in (dvi): Add generation for the cppinternals
+ documentation. Added dependencies on fdl.texi and c-tree.texi
+ where appropriate. Use TEXI2DVI instead of custom tex calls.
+ (info): Added dependencies on fdl.texi and c-tree.texi where
+ appropriate. Remove the target c-tree.info.
+
+2001-05-27 Lars Brinkhoff <lars@nocrew.org>
+
+ * combine.c (try_combine): Fix typo in comment.
+ * expr.c (expand_expr): Likewise.
+ * config/i370/i370.md (untyped_call): Likewise.
+
+2001-05-26 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
+ when fixincl is operating in test mode
+ * fixinc/inclhack.def(AAB_dgux_int_varargs) : aesthetics
+ (AAB_ultrix_limits): remove redundant text
+ (AAB_ultrix_memory): ditto
+ (AAB_ultrix_string): ditto
+ (djgpp_wchar_h): fix the test text
+ (irix_stdio_va_list): add test text
+ (irix_limits_const): add a testing output file (limits.h is overwritten)
+ (strict_ansi_not_ctd): put limits.h second in list for same reason
+ (solaris27_mutex_init): test text needed selection text, too
+
+ * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
+ when fixincl is operating in test mode
+
+2001-05-26 Philip Blundell <philb@gnu.org>
+
+ * config/c4x/c4x-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
+ * config/i960/i960-protos.h: Likewise.
+ * config/i370/i370-protos.h: Likewise.
+ * config/h8300/h8300-protos.h: Likewise,
+ * config/sh/sh-protos.h: Likewise.
+ * config/v850/v850-protos.h: Likewise.
+
+2001-05-26 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
+
+2001-05-25 Zack Weinberg <zackw@stanford.edu>
+
+ * toplev.c (debug_args, f_options, W_options): Mark
+ descriptions for translation.
+ (display_help): Translate descriptions on output.
+
+ * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
+ objc/lang-options.h: Mark descriptions for translation.
+
+ * aclocal.m4: Quote final argument of patsubst. Use
+ 3-argument form of AC_DEFINE. Restore quotes to [] while
+ using AC_FD_CC.
+ * configure.in: Remove unnecessary changequote calls.
+ * configure, config.in: Regenerate.
+
+2001-05-25 Sam TH <sam@uchicago.edu>
+
+ * basic-block.h: Fix header include guards.
+ * bitmap.h c-dump.h c-lex.h c-pragma.h c-tree.h collect2.h
+ cppdefault.h cpphash.h cpplib.h defaults.h diagnostic.h errors.h
+ except.h flags.h gcc.h gcov-io.h graph.h gstab.h gthr-aix.h
+ gthr-dce.h gthr-posix.h gthr-rtems.h gthr-single.h gthr-solaris.h
+ gthr-vxworks.h gthr-win32.h gthr.h hard-reg-set.h hwint.h
+ insn-addr.h libgcc2.h mbchar.h mkdeps.h params.h prefix.h real.h
+ rtl.h sbitmap.h system.h timevar.h toplev.h tradcpp.h tsystem.h
+ varray.h version.h: Likewise.
+ * config/dbxelf.h config/fp-bit.h config/arm/arm-protos.h
+ config/arm/arm.h config/c4x/c4x-protos.h
+ config/h8300/h8300-protos.h config/h8300/h8300.h
+ config/i370/i370-protos.h config/i370/i370.h
+ config/i960/i960-protos.h config/mcore/mcore.h
+ config/mips/mips-protos.h config/sh/sh-protos.h config/sh/sh.h
+ config/v850/v850-protos.h config/v850/v850.h: Likewise.
+ * fixinc/fixlib.h fixinc/server.h: Likewise.
+
+2001-05-25 Stacey Sheldon <ssheldon@Catena.com>
+
+ * config/arc/initfini.c (.init): Fix typo.
+
+2001-05-25 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
+
+2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
+
+2001-05-25 Richard Henderson <rth@redhat.com>
+
+ * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
+
+2001-05-25 Richard Henderson <rth@redhat.com>
+
+ * config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
+ (i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld.
+ (sparc*-*-solaris2): Likewise.
+ * config/t-linux: Remove shared libgcc macros.
+ * config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc.
+ * config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld.
+
+2001-05-25 Loren J. Rittle <ljrittle@acm.org>
+
+ * config.gcc (*-*-freebsd*): Report bad configuration.
+
+2001-05-25 David Edelsohn <edelsohn@gnu.org>
+
+ * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
+
+ * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
+ any prefix.
+ (ASM_OUTPUT_LABELREF): Delete.
+
+2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (strict_ansi_not, strict_ansi_not_ctd,
+ strict_ansi_only): Don't run if stdc_0_in_system_headers.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/fixtests.c (stdc_0_in_system_headers_test): New function.
+ (FIX_TEST_TABLE): Declare it.
+ * fixinc/fixlib.h: Include config.h.
+
+2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (alpha___assert): Change char * args to
+ const char * on Tru64 UNIX to avoid excessive warnings from
+ assert.h.
+ * fixinc/fixincl.x: Regenerate.
+
+2001-05-25 Geoff Keating <geoffk@redhat.com>
+
+ * dbxout.c (dbxout_symbol): Invert previous patch, which was
+ outputting a tag only for variable-size records.
+
+2001-05-25 Jeff Knaggs <jknaggs@redhat.com>
+
+ * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
+ instead of rtx_equal_p for early clobber test.
+
+2001-05-26 Mark Mitchell <mark@codesourcery.com>
+
+ * builtins.def: Encode additional information, such as names and
+ types, here.
+ * builtin-types.def: New file.
+ * builtins.c (built_in_names): Adjust use of DEF_BUILTIN.
+ (built_in_decls): Likewise. Don't explicitly initialize global
+ data to NULL.
+ (expand_builtin_mathfn): Handle float and long double variants of
+ math builtins.
+ (expand_builtin): Likewise.
+ * c-common.c (c_common_nodes_and_builtins): Make it table-driven.
+ (expand_tree_builtin): Handle long, long long, float, and long
+ double variants of math functions.
+ * c-common.h (c_tree_index): Remove some unused nodes.
+ (void_ftype): Remove.
+ (void_type_ptr): Likewise.
+ (int_ftype_int): Likewise.
+ (ptr_ftype_sizetype): Likewise.
+ * c-decl.c (init_decl_processing): Remove creation of DWARF
+ builtins.
+ * defaults.h (MD_INIT_BUILTINS): Provide default definition.
+ * tree.h (built_in_function): Adjust definition of DEF_BUILTIN.
+ * Makefile.in (c-common.o): Depend on builtin-types.def.
+
+2001-05-25 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/t-darwin: Fix dependencies for darwin.o.
+
+2001-05-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-parse.in (notype_initdcl): Remove redundant line.
+
+2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * aclocal.m4: Fixed typo.
+ (gcc_AC_HEADER_STDBOOL): Define.
+ (gcc_AC_C__BOOL): Define.
+ * configure.in: Use them.
+ (AC_CHECK_HEADERS): Remove stdbool.h
+ * configure, config.in: Regenerate.
+
+2001-05-25 Richard Henderson <rth@redhat.com>
+
+ * function.c (expand_function_start): Don't abort on PARALLEL
+ returns from hard_function_value.
+
+2001-05-25 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.md: Revert previous change. Do not apply
+ the peephole if the components do not die after the sequence.
+
+2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (array_declarator): New. Handle C99 constructs.
+ Don't restrict [*] declarators to C only.
+ (after_type_declarator, parm_declarator_starttypename,
+ parm_declarator_nostarttypename, notype_declarator,
+ direct_absdcl1): Use it.
+ * c-decl.c (build_array_declarator, set_array_declarator_type):
+ New functions. Warn that [*] isn't properly implemented; pedwarn
+ for [*] outside C99 mode if pedantic rather than giving a hard
+ error.
+ (grokdeclarator): Handle static and type qualifiers in parameter
+ array declarators.
+ * c-tree.h (build_array_declarator, set_array_declarator_type):
+ Declare.
+ * extend.texi (Attribute Syntax): Document attributes in parameter
+ array declarators.
+
+2001-05-25 Mark Mitchell <mark@codesourcery.com>
+
+ * config/i386/i386.md: Make sure cmpstr peepholes do not
+ affect liveness information.
+
+2001-05-24 Mark Mitchell <mark@codesourcery.com>
+
+ * c-typeck.c (digest_init): Issue error messages about
+ invalid constants, not warnings.
+
+2001-05-24 Mark Mitchell <mark@codesourcery.com>
+
+ * invoke.texi (-fno-builtin): Document that this is always on
+ in C++.
+
+2001-05-24 Philip Blundell <philb@gnu.org>
+
+ * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
+ required.
+
+2001-05-24 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.c (output_return_instruction): Correctly handle
+ interworking and interrupt functions.
+
+2001-05-24 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
+ -m{no-}sched-prolog. Fix typos and improve formatting.
+
+2001-05-24 Philip Blundell <philb@gnu.org>
+
+ * invoke.texi (ARM Options): Improve wording slightly. Add
+ documentation for more options, including those for Thumb mode.
+ Don't mention options that don't exist or are unimplemented.
+ (Thumb Options): Delete; merged into above section.
+
+2001-05-24 Geoff Keating <geoffk@redhat.com>
+
+ * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
+ (MD_FALLBACK_FRAME_STATE_FOR): Use it.
+
+Thu May 24 19:47:19 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
+ fix hard register simplification.
+
+Thu May 24 00:15:17 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
+ of just copying CPP_CPU_SPEC.
+
+Thu May 24 15:56:48 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (incdec_operand): Accept only 1 and -1.
+
+2001-05-23 Kelley Cook <kelley.cook@home.com>
+
+ * Makefile.in: Move many of the *_H definitions eariler in the
+ file, so that rules in t-* files that use them for
+ dependencies will work in a parallel build.
+ * config/i386/t-cygwin (winnt.o): Depend on $(CONFIG_H).
+
+2001-05-23 Richard Henderson <rth@redhat.com>
+
+ * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
+
+2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi: Update for handling of charconsts.
+ * cpplex.c (maybe_read_ucs): Don't accept D800-DFFF. Update
+ diagnostics. Skip to the end if the UCS is too short.
+ (cpp_interpret_charconst): Long charconsts issue a warning
+ not an error.
+
+2001-05-23 Richard Henderson <rth@redhat.com>
+
+ * doc/install.texi (alpha-linux): Require binutils 2.11.
+
+2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (read_escape, read_ucs): Delete.
+ (lex_string): Use cpp_parse_escape.
+ * cpplex.c (read_ucs): Rename maybe_read_ucs. Do nothing
+ if not C++ or not C99. Warn if traditional.
+ (parse_escape): Rename cpp_parse_escape. Make the bitmask
+ unsigned. Warn for out-of-range escape sequences here.
+ Update to use maybe_read_ucs.
+ (cpp_interpret_charconst): Don't warn here.
+ * cpplib.h (cpp_parse_escape): New exported function.
+
+2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi (Attribute Syntax): Clarify application of
+ attributes to parameters declared as functions or arrays.
+
+2001-05-23 Jason Merrill <jason_merrill@redhat.com>
+
+ * dbxout.c (dbxout_type_methods): Do still group methods by name.
+
+2001-05-23 Zack Weinberg <zackw@stanford.edu>
+
+ * diagnostic.c (vnotice): Kill.
+ (fnotice): Call vfprintf directly.
+ (diagnostic_for_decl, output_do_verbatim, output_verbatim,
+ verbatim, set_diagnostic_context): Rename string argument to
+ indicate that it is run through gettext.
+ (vbuild_message_string, build_message_string, output_do_printf):
+ Rename string argument to indicate that it is NOT run through
+ gettext.
+ (output_printf, diagnostic_for_decl, fatal_io_error, sorry,
+ output_do_verbatim, set_diagnostic_context, fnotice, _fatal_insn):
+ Run msgid argument through gettext.
+ (default_print_error_function): Run constant strings through
+ gettext when nothing else will.
+ (fatal_error, internal_error, error_recursion): Use fnotice.
+ Present complete sentences to gettext.
+
+2001-05-23 Mark Mitchell <mark@codesourcery.com>
+
+ * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
+
+2001-05-23 Richard Henderson <rth@redhat.com>
+
+ * function.c (expand_function_start): Always use a pseudo
+ for the function result value.
+
+2001-05-22 Richard Henderson <rth@redhat.com>
+
+ * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
+ section pointer alignment.
+
+ * doc/install.texi (alpha-linux): Require binutils >= 2.10.
+
+ * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
+ of __USER_LABEL_PREFIX__.
+
+2001-05-22 Richard Henderson <rth@redhat.com>
+
+ * unwind-dw2-fde.c (__deregister_frame_info): Stubbify in favor of...
+ (__deregister_frame_info_bases): New.
+ * unwind-dw2-fde.h: Declare it.
+ * libgcc-std.ver: Export it.
+ * crtstuff.c (__do_global_dtors_aux): Call it if we would have
+ called __register_frame_info_bases.
+
+2001-05-22 Loren J. Rittle <ljrittle@acm.org>
+
+ * config/freebsd.h (FBSD_CPP_PREDEFINES): Use #endif/#if pair
+ instead of #elif (which is OK for this case but not in general).
+
+2001-05-22 Andrew MacLeod <amacleod@redhat.com>
+
+ * builtins.c (expand_builtin_longjmp): A longjmp can be a call too.
+ * config/ia64/ia64.md (nonlocal_goto): Reverse label and frame pointer
+ parameters to __ia64_nonlocal_goto. Flag as NO_RETURN.
+ * config/ia64/ia64.c (ia64_expand_epilogue): Make sure we are issuing
+ "r2" to the assembly file. Only issue allocs with nonzero parameters.
+
+2001-05-22 Loren J. Rittle <ljrittle@acm.org>
+ David O'Brien <obrien@freebsd.org>
+
+ * config/freebsd.h (LIB_SPEC): Key the exact setting to
+ configure-time options and target version of FreeBSD. Set-up
+ to match architectural change in threading support. Correctly
+ report when -pthread option is not supported by configure-time
+ options.
+ (FBSD_CPP_PREDEFINES): Move from architecture-specific files
+ and extend to encode target version number in run-time setting
+ of __FreeBSD__ macro to match the system compiler.
+ (CPP_PREDEFINES): Likewise.
+ (PREFERRED_DEBUGGING_TYPE): Change to DWARF2_DEBUG.
+
+ * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
+ * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
+
+2001-05-22 Loren J. Rittle <ljrittle@acm.org>
+ David O'Brien <obrien@freebsd.org>
+
+ * config.gcc (the unlabeled system switch statement): Add
+ generic configuration section to handle *-*-freebsd*. Also,
+ to match the system compiler, default to threading support (it
+ may be disabled with the standard --disable-threads
+ configuration-time switch).
+ (i[34567]86-*-freebsd* in machine-specific section): Use it.
+ (alpha*-*-freebsd* in machine-specific section): Likewise.
+
+ * config/freebsd3.h: New file to expose FBSD_MAJOR macro (3).
+ * config/freebsd4.h: New file to expose FBSD_MAJOR macro (4).
+ * config/freebsd5.h: New file to expose FBSD_MAJOR macro (5).
+ * config/freebsd6.h: New file to expose FBSD_MAJOR macro (6).
+ * config/freebsd-nthr.h: New file to expose FBSD_NO_THREADS macro.
+
+2001-05-22 Loren J. Rittle <ljrittle@acm.org>
+ David O'Brien <obrien@freebsd.org>
+
+ * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
+ * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
+ -pthread instead setting macro.
+
+2001-05-22 Richard Henderson <rth@redhat.com>
+
+ * crtstuff.c (__register_frame_info_bases): Declare.
+ (frame_dummy): Use it, if CRT_GET_RFIB_TEXT or CRT_GET_RFIB_DATA.
+ (__do_global_dtors_aux, __do_global_dtors): Streamline.
+
+ * config/i386/linux.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
+ (CRT_GET_RFIB_DATA): New.
+ * config/i386/sysv4.h: Likewise.
+ * config/i386/sco5.h: Likewise.
+ (ASM_PREFERRED_EH_DATA_FORMAT): New.
+
+2001-05-22 Richard Henderson <rth@redhat.com>
+
+ * rtl.c (read_string): Break out from ...
+ (read_rtx): ... here.
+
+2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi (Specific): Remove a bogus and duplicate part
+ copied from the end of the document.
+
+2001-05-22 Bernd Schmidt <bernds@redhat.com>
+
+ * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
+
+2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * install.texi: Remove obsolete information on SunOS as well as
+ i386-sun-sunos4, i860-intel-osf1, and powerpcle-*-solaris2*.
+ (Installing GNU CC on the Sun): Remove section.
+
+2001-05-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * cppfiles.c (remove_component_p): Don't assume lstat/stat will
+ keep errno unchanged on success.
+
+2001-05-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-lex.c (lex_number): If pedantic and not C99, pedwarn exactly
+ once for hexadecimal floats, whether or not they contain a decimal
+ point. Don't let the setting of pedantic otherwise affect the
+ parsing of hexadecimal floats.
+
+2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README.ACORN: Remove obsolete file.
+
+2001-05-22 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (gen_binary): Use swap_commutative_operands_p
+ (simplify_comparison): Likewise.
+ * expmed.c (emit_store_flag): Likewise.
+ * expr.c (compare_from_rtx): Likewise.
+ (do_compare_rtx_and_jump): Likewise.
+ * optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort
+ if not emitting a branch and operands want swapping.
+
+2001-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
+ * stringpool.c: (IS_FE_IDENT, make_identifier): Delete.
+ (maybe_get_identifier): Update.
+ * tree.h (make_identifier): Delete.
+
+2001-05-21 Richard Henderson <rth@redhat.com>
+
+ * combine.c (subst): Do not substitute for a register as
+ a destination subreg/strict_low_part/zero_extract.
+
+ * combine.c (simplify_comparison): Update op1 after constant
+ extension.
+ * recog.c (const_int_operand): Accept only constants valid
+ for the given mode.
+ * genrecog.c: Update comments wrt const_int_operand.
+
+ * emit-rtl.c (init_emit_once): Zero unused memory in a
+ CONST_DOUBLE.
+
+2001-05-21 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.h (type_num_arguments): Declare it.
+ * tree.c (type_num_arguments): New function.
+
+2001-05-21 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (current_funcdef_number): Move outside dwarf2
+ conditional ifdef.
+
+2001-05-21 Geoff Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
+ (maxsf3+1): Delete.
+ (minsf3): Use rs6000_emit_minmax.
+ (minsf3+1): Generalize to handle both SMIN and SMAX. Use
+ rs6000_emit_minmax.
+ (movsfcc): Use rs6000_emit_cmove.
+ (fselsfsf4): Don't compare a CONST_INT with a floating-point value.
+ Don't generate emit_fselsfsf4.
+ (fseldfsf4): Likewise.
+ (maxdf3): Use rs6000_emit_minmax.
+ (maxdf3+1): Delete.
+ (mindf3): Use rs6000_emit_minmax.
+ (mindf3+1): Generalize to handle both SMIN and SMAX. Use
+ rs6000_emit_minmax.
+ (movdfcc): Use rs6000_emit_cmove.
+ (fseldfdf4): Don't compare a CONST_INT with a floating-point value.
+ Don't generate emit_fselsfsf4.
+ (fselsfdf4): Likewise.
+ * config/rs6000/rs6000.c (zero_fp_constant): New predicate.
+ (min_max_operator): New predicate.
+ (rs6000_emit_cmove): New function.
+ (rs6000_emit_minmax): New function.
+ * config/rs6000/rs6000-protos.h: Prototype new functions.
+ * config/rs6000/rs6000.h (PREDICATE_CODES): Add zero_fp_constant
+ and min_max_operator.
+
+ * config/rs6000/rs6000.c (output_cbranch): Handle all
+ conditional types in the switch statement.
+
+2001-05-21 Mark Mitchell <mark@codesourcery.com>
+
+ * c-decl.c (finish_decl): Don't set DECL_C_HARD_REGISTER for
+ non-register variables.
+ * extend.texi: Document that asm-specifications do not make sense
+ for non-static local variables.
+
+2001-05-21 Jason Merrill <jason_merrill@redhat.com>
+
+ * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
+ (dbxout_type_fields): Lose minimal_debug support.
+ (dbxout_type_methods, dbxout_type): Likewise.
+
+2001-05-17 Andrew Haley <aph@redhat.com>
+
+ * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
+
+2001-05-21 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
+ Update all users.
+
+2001-05-20 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
+ DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION,
+ DEBUG_STR_SECTION): Rename from s/DEBUG_//. Update all users.
+ * dwarfout.c (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
+ DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION):
+ Likewise.
+ * config/mips/iris6.h (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
+ DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION,
+ DEBUG_FRAME_SECTION, DEBUG_ABBREV_SECTION): Rename as above.
+ (DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
+ * config/ia64/ia64.h (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
+ DEBUG_PUBNAMES_SECTION): Rename as above.
+ (DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
+
+2001-05-20 Richard Henderson <rth@redhat.com>
+
+ * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
+ operands unless the operation is commutative.
+
+2001-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
+ cases.
+
+2001-05-21 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi: Clarify documentation of extensions included in ISO
+ C99. Prefer C99 terminology and syntax to old GNU terminology and
+ syntax. Add more index entries. Document mixed declarations and
+ code as an extension in C89 mode. Warn about future changes to
+ semantics of inline functions. Fixes PR other/930.
+
+Sun May 20 16:39:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case ARRAY_REF): Don't fold constant
+ access if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
+ (expand_expr, case COMPONENT_REF): Do copy if misaligned even
+ if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
+
+ * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
+
+2001-05-20 Richard Henderson <rth@redhat.com>
+
+ * sched-deps.c (sched_analyze_insn): Force volatile memory reads
+ to be output before a branch.
+
+2001-05-20 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
+
+2001-05-20 Richard Henderson <rth@redhat.com>
+
+ * config/i386/att.h (ASM_SHORT, ASM_LONG): Add trailing \t.
+ (ASM_DOUBLE): Remove.
+ * config/i386/bsd.h, config/i386/sco5.h: Likewise.
+ * config/i386/sun386.h: Likewise.
+
+ * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
+ (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
+
+ * config/i386/cygwin.h (INT_ASM_OP): Remove.
+ * config/i386/freebsd-aout.h, config/i386/i386-aout.h: Likewise.
+ * config/i386/i386-coff.h, config/i386/i386-interix.h: Likewise.
+ * config/i386/netbsd.h, config/i386/openbsd.h: Likewise.
+
+ * config/i386/cygwin.h: Adjust uses of ASM_LONG for trailing \t.
+ * config/i386/djgpp.h, config/i386/i386.h: Likewise.
+ * config/i386/i386elf.h, config/i386/ptx4-i.h: Likewise.
+ * config/i386/sco5.h, config/i386/svr3gas.h: Likewise.
+ * config/i386/sysv4.h, config/i386/vsta.h: Likewise.
+ * config/i386/win32.h: Likewise.
+
+2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Add more options to summary list.
+
+2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Document meaning of -pedantic when -std=gnu* is
+ used. Fixes PR c/2291.
+ * gcc.1: Regenerate.
+
+2001-05-20 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
+ the -fpic and -fPIC options, clear flag_pic.
+
+2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * hashtable.c (calc_hash): Fix HASHSTEP definition.
+ * stringpool.c (make_identifier): No statistics here anymore.
+ * objc-act.c (steup_string_decl): Remove redundant check.
+
+2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
+ cpplib.o, cpphash.o, fix-header): Update.
+ (hashtable.o): New target.
+ * c-common.h: Include cpplib.h. Define C_RID_CODE and
+ struct c_common_identifier here.
+ * c-lang.c (c_init_options): Update. Call set_identifier_size.
+ * c-lex.c (c_lex): Update.
+ * c-pragma.h: Update.
+ * c-tree.h (struct lang_identifier): Contain c_common_identifier.
+ Delete rid_code.
+ (C_RID_CODE): Delete.
+ * cpphash.c: Rewrite to use hashtable.c.
+ * cpphash.h: Update include guards.
+ (struct cpp_reader): Remove hashtab.
+ hash_ob and buffer_ob are no longer pointers. Add hash_table
+ and our_hashtable.
+ (HASHSTEP, _cpp_init_hashtable, _cpp_lookup_with_hash): Delete.
+ (_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
+ (_cpp_cleanup_stacks): Rename _cpp_init_directives.
+ * cppinit.c (cpp_create_reader): Update.
+ * cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
+ (cpp_interpret_charconst): Eliminate warning.
+ * cpplib.c (do_pragma, do_endif, push_conditional,
+ cpp_push_buffer, cpp_pop_buffer): Update.
+ (_cpp_init_stacks): Rename cpp_init_directives.
+ (_cpp_cleanup_stacks): Remove.
+ * cpplib.h: Update include guards. Include tree-core.h and c-rid.h.
+ (cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
+ cpp_forall_identifiers, cpp_create_reader): Update.
+ (C_RID_CODE, cpp_make_node): New.
+ (c_common_identifier): New identifier node for C front ends.
+ * cppmain.c (main): Update.
+ * fix-header.c (read_scan_file): Update.
+ * flags.h (id_clash_len): Make unsigned.
+ * ggc.h (ggc_mark_nonnull_tree): New.
+ * hashtable.c: New.
+ * hashtable.h: New.
+ * stringpool.c: Update comments and copyright. Update to use
+ hashtable.c.
+ * toplev.c (approx_sqrt): Move to hashtable.c.
+ (id_clash_len): Make unsigned.
+ * toplev.h (ident_hash): New.
+ * tree.c (gcc_obstack_init): Move to hashtable.c.
+ * tree.h: Include hashtable.h.
+ (IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
+ (GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
+ (struct tree_identifier): Update.
+ (make_identifier): New.
+cp:
+ * cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
+ (C_RID_CODE): Remove.
+ * lex.c (cxx_init_options): Call set_identifier_size. Update.
+ (init_parse): Don't do it here.
+objc:
+ * objc-act.c (objc_init_options): Call set_identifier_size. Update.
+
+Sat May 19 18:23:04 2001 Richard Henderson <rth@redhat.com>
+
+ * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
+ as ncessary.
+ (expand_eh_return): Convert between word_mode and Pmode.
+ * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
+ are the same size.
+ (execute_stack_op): Likewise.
+ (execute_cfa_program): Likewise.
+ (uw_frame_state_for): Likewise.
+ (uw_update_context_1): Likewise.
+ * unwind.inc (_Unwind_Reason_Code): Likewise.
+ * config/mips/mips.h (EH_RETURN_DATA_REGNO): Define.
+ (EH_RETURN_STACKADJ_RTX): Likewise.
+ * config/mips/mips.c (compute_frame_size): Make space for saving
+ EH return registers.
+ (mips_expand_epilogue): Handle EH stack adjustments.
+ * config/mips/mips.md (eh_return): New pattern.
+ (eh_set_lr_si): Likewise.
+ (eh_set_lr_di): Likewise.
+ Add splitter to perform EH return after reload.
+
+2001-05-19 Mark Mitchell <mark@codesourcery.com>
+
+ * jump.c (mark_jump_label): Tidy previous change.
+
+2001-05-19 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/genfixes: no need for two warnings
+ * fixinc/Makefile.in: open stdin for those building with a closed one.
+
+2001-05-19 Mark Mitchell <mark@codesourcery.com>
+
+ * jump.c (jump_optimize_1): Tidy.
+ (mark_jump_label): When changing the label in a LABEL_REF, change
+ update any REG_EQUAL notes as well.
+
+2001-05-19 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (parm_declarator): Split into
+ parm_declarator_starttypename and parm_declarator_nostarttypename.
+ (parm_declarator_starttypename, parm_declarator_nostarttypename):
+ New. Allow parenthesized sub-declarators which don't begin with a
+ TYPENAME. Fixes PR c/166.
+
+2001-05-19 Mark Mitchell <mark@codesourcery.com>
+
+ * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
+ macro.
+ * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
+ Document it.
+ * toplev.c (main): If the target does not allow profiling without
+ a frame pointer, issue an error message.
+ * config/i386/linux.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
+ Define it to false.
+
+Sat May 19 07:53:42 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * recog.c (general_operand): Modify last change to allow it if reload
+ has completed.
+
+Sat May 19 10:23:54 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (general_operand): Prohibit nonzero subreg bytes on
+ subregs containing mem.
+
+Sat May 19 09:40:45 2001 Denis Chertykov <denisc@overta.ru>
+
+ * regrename.c (regrename_optimize): frame pointer register can
+ use a few hardregs.
+
+2001-05-18 Jason Merrill <jason_merrill@redhat.com>
+
+ * README.DWARF: Move into dwarfout.c.
+
+2001-05-18 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
+ specific misuse of r0 as a reload address.
+
+Fri May 18 22:42:04 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
+ succeeded.
+
+Fri May 18 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * genrecog.c (enum decision_type): Add DT_elt_zero-wide_safe.
+ (add_to_sequence): Make that decision type.
+ (maybe_both_true_2, nodes_identical_1, factor_tests): Use it.
+ (write_switch, write_cond, debug_decision_2): Likewise.
+
+ * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
+ for INTEGER_TYPE.
+ (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
+ variable size.
+
+2001-05-18 Stan Shebs <shebs@apple.com>
+
+ * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
+ * configure: Regenerate.
+
+2001-05-18 Per Bothner <per@bothner.com>
+
+ Changes needed for java/jvspec.c
+ * gcc.h (n_infiles, outfiles): Add declarations.
+ * gcc.c (n_infiles, outfiles): Mske no longer static.
+
+Fri May 18 10:14:42 2001 Jeffrey A Law (law@cygnus.com)
+
+ * config/pa/som.h (EXCEPTION_SECTION): Define.
+
+2001-05-18 Daniel Berlin <dan@cgsoftware.com>
+
+ * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
+ list.
+ Add have_location_lists, a variable to determine whether we need a
+ .debug_loc section or not.
+ (enum dw_val_class): Add dw_val_class_loc_list.
+ (dw_val_struct): Add val_loc_list.
+ (dw_loc_list_struct): New structure, represents location lists.
+ (new_loc_list): New function, return a new location list, given
+ the range and location expression.
+ (add_loc_descr_to_loc_list): New function, add a location
+ expression to a location list, given the expression and range.
+ (output_loc_list): New function, output a location list.
+ (gen_internal_sym): Modified to take symbol prefix, so we can
+ reuse it for location list symbols.
+ (add_AT_loc_list): New function, add a location list to a DIE at
+ the named attribute.
+ (AT_loc_list): New function, return the location list reference
+ for a given attribute, if it's a location list.
+ (print_die): Handle dw_val_class_loc_list.
+ (size_of_die): Ditto.
+ (value_format): Ditto.
+ (output_die): Ditto.
+ (output_location_lists): New function, output all of the location
+ lists for a DIE and it's children.
+ (dwarf2out_finish): Call output_location_lists if we have location
+ lists.
+
+
+Fri May 18 15:39:16 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (try_replace_reg): First try global replace, later try to
+ simplify the expression.
+
+ * gcse.c (find_used_regs): Change calling convention; work via
+ note_uses.
+ (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
+
+2001-05-18 Bernd Schmidt <bernds@redhat.com>
+
+ Revert
+ 2001-02-09 Nick Clifton <nickc@redhat.com>
+ * config/arm/arm.md: Change output constraint on post inc
+ load/store multiple patterns to be a read/write constraint.
+
+2001-05-18 Mark Mitchell <mark@codesourcery.com>
+
+ * basic-block.h (struct basic_block_def): Add documentation about
+ what a basic block is, and what the various fields are used for.
+ * flow.c (calculate_globlal_regs_live): Add documentation about
+ how the algorithm works, and how we know that it will terminate.
+ Check that the inductive assumption that guarantees termination
+ actually holds.
+ (mark_used_regs): Treat conditionally set registers as used.
+ (debug_regset): Add comment.
+ * rtl.texi (cond_exec): Add documentation.
+
+ * function.c (expand_function_start): Avoid creating BLKmode
+ pseudos.
+
+2001-05-17 Mark Mitchell <mark@codesourcery.com>
+
+ * dwarf2out.c (output_comp_unit): Always output a compilation-unit
+ DIE, even if it has no children.
+ (dwarf2out_finish): Always output the line-number table, even if
+ it has no content.
+
+2001-05-18 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (movsfcc,movdfcc): Remove NE case.
+
+2001-05-17 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
+ * fixinc/genfixes: emit a warning if AutoGen is out of date
+
+2001-05-17 Brendan Conoboy <blc@cygnus.com>
+ Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
+ found in fixinc directory. Facilitates binary distributions.
+
+2001-05-17 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
+ COMPLEX_TYPE.
+
+Thu May 17 19:42:39 2001 Mark Kettenis <kettenis@wins.uva.nl>
+
+ * dwarf2out.c (modified_type_die): Equate qualified type to die.
+
+Thu May 17 23:19:46 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
+ (simplify_subreg): Handle complex types represented as CONCAT.
+
+ * recog.c (validate_replace_rtx_1): Properly canonicalize expression
+ * rtl.h (swap_commutative_operands_p): Declare.
+ * rtlanal.c (swap_commutative_operands_p): New.
+ (operand_preference): New static function.
+
+ * combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
+ (gen_binary): Likewise.
+ * optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
+ * simplify-rtx.c (simplify_gen_binary,
+ simplify_gen_relational): Likewise.
+
+Thu May 17 20:43:36 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * cse.c (fold_rtx): Use simplify_subreg.
+
+ * simplify-rtx.c (simplify_replace_rtx): Use simplify_gen_subreg.
+ (simplify_gen_subreg): New.
+ (simplify_rtx): Use simplify_subreg.
+ * rtl.h (simplify_gen_subreg): Declare.
+
+2001-05-17 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/install.texi: Update Solaris information.
+
+ * except.h (protect_cleanup_actions): Remove it.
+ (lang_protect_cleanup_actions): Declare it.
+ * except.c (protect_cleanup_actions): Remove it.
+ (lang_protect_cleanup_actions): New variable.
+ (init_eh): Don't make protect_cleanup_actions a GC root.
+ (expand_eh_region_and_cleanup): Call
+ lang_protect_cleanup_actions.
+ (output_function_exception_table): Remove unused `align'
+ variable.
+ * varasm.c (assemble_external): Abort if we have not yet
+ opened the assembly output file.
+
+Thu May 17 11:54:50 2001 Jeffrey A Law (law@cygnus.com)
+
+ * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
+ for eh_personality_libfunc.
+
+Thu May 17 19:48:00 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
+ when calling simplify_subreg. This is needed to allow replacing
+ of expression of one mode by expression of different mode.
+
+Thu May 17 19:40:03 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_subreg): Avoid creating of incorrect subregs.
+
+2001-05-17 Bernd Schmidt <bernds@redhat.com>
+
+ * expr.c (protect_from_queue): Protect against subsequent calls to
+ emit_queue.
+ (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
+ too clever.
+
+Thu May 17 18:17:34 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
+
+2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * gccbug.in (CATEGORIES): Add "bootstrap".
+
+Thu May 17 16:59:41 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_subreg): Break out from ...
+ * combine.c (combine_splify_rtx) ... here and ...
+ * recog.c (validate_replace_rtx_1): ... here;
+ * rtl.h (subreg_lowpart_parts_p, simplify_subreg): Declare.
+ * emit-rtl.c (subreg_lowpart_parts_p): Break out from ...
+ (subreg_lowpart_p): ... here.
+
+2001-05-17 Bernd Schmidt <bernds@redhat.com>
+
+ * stmt.c (expand_asm_operands): For inout operands, make sure
+ the substitution of '=' for '+' makes it into the rtl.
+
+ * reload1.c (delete_output_reload): Call eliminate_regs on substed.
+ (reload_as_needed): Call update_eliminable_offsets a bit later.
+
+2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * gcc.texi (gccbug): Refer to the web pages for detailed information
+ on GNATS.
+
+2001-05-16 Zack Weinberg <zackw@stanford.edu>
+
+ * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
+
+ * Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
+ OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
+ LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
+ libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
+ * cross-make: Don't set LIBGCC1.
+ * mklibgcc.in: Delete all code for building from libgcc1.c.
+ Always honor LIB1ASMFUNCS if set.
+
+ * crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
+ config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
+ config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
+ config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
+ config/i386/uwin.asm, config/m68hc11/larith.asm,
+ config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
+ config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
+ config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
+ config/v850/lib1funcs.asm, config/c4x/libgcc.S:
+ Delete or update references to libgcc1 in commentary.
+
+ * config/t-libc-ok, config/t-linux, config/t-linux-aout,
+ config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
+ config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
+ config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
+ config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
+ config/arm/t-semi, config/arm/t-strongarm-coff,
+ config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
+ config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
+ config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
+ config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
+ config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
+ config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
+ config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
+ config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
+ config/m68k/t-m68kbare, config/m68k/t-m68kelf,
+ config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
+ config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
+ config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
+ config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
+ config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
+ config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
+ config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
+ config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
+ config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
+ config/mips/t-ultrix, config/mn10200/t-mn10200,
+ config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
+ config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
+ config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
+ config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
+ config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
+ config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
+ config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
+ config/sparc/t-sparclite, config/sparc/t-splet,
+ config/sparc/t-sunos41, config/sparc/t-vxsparc,
+ config/sparc/t-vxsparc64, config/v850/t-v850:
+ Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
+
+ * config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
+ Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
+ * config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
+ FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
+ nongcc_SI_type, nongcc_word_type, or perform_*
+ * config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
+
+ * config/i386/386bsd.h, config/i386/beos-elf.h,
+ config/i386/linux-aout.h, config/i386/linux-oldld.h,
+ config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
+ config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
+ Don't include i386/perform.h.
+
+ * config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
+ config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
+ config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
+ config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
+ config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
+ config/vax/t-openbsd, config/vax/t-vax: Delete.
+
+ * config.gcc: Remove references to deleted files.
+ (arm-semi-aof): Use arm/t-semi for tmake_file.
+
+ * gcc.texi, install.texi, invoke.texi, tm.texi:
+ Delete or rewrite text which is no longer relevant now that
+ libgcc1 no longer exists.
+
+ * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
+ No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
+
+2001-05-16 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
+ Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def(solaris27_mutex_init): Fix broken mutex
+ initializer
+
+2001-05-16 Zack Weinberg <zackw@stanford.edu>
+
+ * i386.md: Add two peepholes to clean up code generated by
+ cmpstr* expanders.
+
+2001-05-16 Richard Henderson <rth@redhat.com>
+
+ * dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
+ variants of non-absolute encodings.
+
+ * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
+
+ * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
+ __register_frame_info_table_bases): Export.
+
+2001-05-16 Richard Henderson <rth@redhat.com>
+
+ * except.c (eh_data_format_name): Move to ...
+ * dwarf2asm.c: ... here. Use designated initializers if available.
+ (dw2_asm_output_encoded_addr_rtx): Accept varargs commentary.
+ * dwarf2asm.h: Update declarations.
+ * dwarf2out.c (output_cfi) [DW_CFA_set_loc]: If for_eh, mind
+ ASM_PREFERRED_EH_DATA_FORMAT.
+ (output_call_frame_info): Likewise. Use 'L' augmentation for
+ the LSDA encoding.
+
+ * unwind-dw2-fde.h (struct fde_vector): New.
+ (struct old_object): Rename from struct object.
+ (struct object): New.
+ (__register_frame_info_bases): Declare.
+ (__register_frame_info_table_bases): Declare.
+ (struct dwarf_fde): Remove explicit pc_begin/pc_range members.
+ * unwind-dw2-fde.c (objects): Remove.
+ (unseen_objects, seen_objects): New.
+ (__register_frame_info_bases): New.
+ (__register_frame_info): Use it.
+ (__register_frame_info_table_bases): New.
+ (__register_frame_info_table): Use it.
+ (__deregister_frame_info): Rewrite for changed object struct.
+ (base_from_object, get_cie_encoding, get_fde_encoding): New.
+ (fde_unencoded_compare): Rename from fde_compare; uninline.
+ (fde_single_encoding_compare, fde_mixed_encoding_compare): New.
+ (start_fde_sort): Adjust for new definition of fde_vector.
+ (fde_insert): Likewise.
+ (end_fde_sort): Likewise. Select comparison function based
+ on properties of the object.
+ (fde_split): Take object and fde_compare_t arguments.
+ (frame_heapsort, fde_merge): Likewise.
+ (classify_object_over_fdes): Rename from count_fdes. Handle
+ encoded pointers. Collect encoding, mixed_encoding, and pc_begin
+ for the object.
+ (add_fdes): Handle encoded pointers.
+ (init_object): Rename from frame_init. Update for new struct object.
+ (linear_search_fdes): Rename from search_fdes. Handle encoded
+ pointers.
+ (binary_search_unencoded_fdes): Broken out from _Unwind_Find_FDE.
+ (binary_search_single_encoding_fdes): New.
+ (binary_search_mixed_encoding_fdes): New.
+ (search_object): New.
+ (_Unwind_Find_FDE): Update for new struct object. Fill in
+ the dwarf_eh_bases.
+ * unwind-dw2.c: Include unwind-pe.h. Constify all pointers
+ iterating over EH data.
+ (_Unwind_FrameState): Remove saw_lsda, addr_encoding. Add
+ fde_encoding, lsda_encoding.
+ (read_uleb128, read_sleb128): Remove.
+ (read_encoded_pointer): Remove. All callers use read_encoded_value.
+ (extract_cie_info): Set lsda_encoding from 'L' augmentation.
+ (uw_frame_state_for): Don't set bases.func. Handle encoded fde
+ pointers.
+ * unwind-pe.h: Add "struct" to _Unwind_Context references.
+
+2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * cppexp.c (lex): Use NODE_NAME and NODE_LEN.
+ * cpphash.c (_cpp_lookup_with_hash): Similarly.
+ * cpplex.c (cpp_ideq, parse_identifier, cpp_token_len,
+ cpp_spell_token, cpp_output_token): Similarly.
+ * cpplib.c (lex_macro_node, do_undef, do_pragma,
+ do_pragma_poison, parse_assertion, do_assert): Similarly.
+ * cppmacro.c (builtin_macro, parse_args, funlike_invocation_p,
+ save_parameter, _cpp_create_definition, check_trad_stringification,
+ cpp_macro_definition): Similarly.
+ * cppmain.c (cb_define, cb_undef, dump_macro): Similarly.
+ * c-lex.c (cb_undef, c_lex): Similarly.
+ * fix-header.c (recognized_function): Similarly.
+ * cpplib.h (NODE_LEN, NODE_NAME): New.
+ (cpp_hashnode): Rename length len.
+
+Wed May 16 13:41:10 2001 Jeffrey A Law (law@cygnus.com)
+
+ * pa32-regs.h (HARD_REGNO_MODE_OK): Allow TI/TFmode values in
+ GPRs.
+
+2001-05-16 Andreas Jaeger <aj@suse.de>
+
+ * Makefile.in (toplev.o): Add dependency on dwarf2asm.h.
+
+ * toplev.c: Include dwarf2asm.h for prototype of
+ dw2_output_indirect_constants.
+
+Wed May 16 19:53:53 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * stmt.c (expand_asm_operands): Be able to offload addressof
+ expression to memory. (PR optimization/185)
+
+Wed May 16 18:53:23 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (combine_simplify_rtx): Set op0_mode to VOIDmode after
+ applying distributive law.
+
+2001-05-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa-hpux10.h (THREAD_MODEL_SPEC): Define.
+
+ * gthr-dce.h (UNUSED): Attribute unused macro.
+ (__gthread_key_dtor): Make arguments UNUSED.
+ (__gthread_key_delete): Revise for compatibility with DRAFT4
+ implementation.
+
+2001-05-16 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi: Update AIX information.
+ * README.RS6000: Remove obsolete file.
+
+2001-05-16 Jakub Jelinek <jakub@redhat.com>
+ Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcc.c (give_switch): Don't write before start of string.
+ Always append suffix.
+
+2001-05-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ * cpplex.c (_cpp_lex_token, '/' case): Comments can't appear
+ after stage3.
+
+2001-05-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README.ALTOS: Remove obsolete file.
+
+2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.h (save_and_forget_protocol_qualifiers,
+ forget_protocol_qualifiers, remember_protocol_qualifiers):
+ Remove deleted functions' prototypes.
+
+2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-parse.in (methodtype): New production.
+ (methoddef, methodproto): Collapse separate '-' and '+'
+ handlers into 1.
+
+2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * c-common.h (RID_FIRST_PQ): New.
+ * c-parse.in (objc_pq_context): New.
+ (objc parser): Set objc_pq_context rather than calling
+ remember_protocol_qualifiers and forget_protocol_qualifiers.
+ Don't call save_and_forget_protocol_qualifiers.
+ (yylexname): Handle objc protocol qualifiers here.
+ * stringpool.c (struct str_header): Replace with sp_hashnode.
+ (SP_EMPTY, SP_LEN, SP_TREE, SP_STR, SP_VALID): New.
+ (alloc_string): Rename alloc_ident. Use the SP_ accessors.
+ Allocate an IDENTIFIER_NODE for each identifier.
+ (FORALL_STRINGS, set_identifier): Delete.
+ (FORALL_IDS, expand_string_table, stringpool_statistics): Update.
+ (ggc_alloc_string): Use an obstack.
+ (get_identifier, maybe_get_identifier, mark_string_hash): Update.
+ * tree.h: Update comments.
+ (set_identifier): Delete.
+ * objc/objc-act.c (N_PQ, saved_pq, saved_not_pq,
+ save_and_forget_protocol_qualifiers, forget_protocol_qualifiers,
+ remember_protocol_qualifiers): Delete.
+
+Tue May 15 22:14:09 2001 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (life_analysis): After life analysis is complete, do
+ an optional scan over insns looking for REG_LABEL notes that
+ reference a deleted label.
+ (propagate_block_delete_insn): Verify INOTE is a CODE_LABEL
+ before peeking at LABEL_NUSES.
+
+2001-05-15 Richard Henderson <rth@redhat.com>
+
+ * unwind-sjlj.c (_Unwind_GetDataRelBase): New.
+ (_Unwind_GetTextRelBase): New.
+
+2001-05-15 Mark Mitchell <mark@codesourcery.com>
+
+ * config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
+
+2001-05-15 Geoffrey Keating <geoffk@redhat.com>
+
+ * objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
+ so that CHOOSE_SECTION gets used.
+
+ * config/rs6000/sysv4.h (ASM_PREFERRED_EH_DATA_FORMAT): Treat
+ TARGET_RELOCATABLE like flag_pic for now.
+
+2001-05-15 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (movdi splitter): Sign extend more efficiently.
+ * rs6000.c (reg_or_arith_cint_operand): Redefine 64-bit constant
+ to "long long" valid on 32-bit and 64-bit hosts.
+ (logical_operand): Cast trunc_int_for_mode return value.
+ (rs6000_emit_move): Shift macro to encapsulate variable.
+ (rs6000_va_start): Use HOST_WIDE_INT_PRINT_DEC.
+ (rs6000_emit_{prologue,epilogue}): EH regno is unsigned but
+ plus_constant requires signed argument.
+
+2001-05-15 Loren J. Rittle <ljrittle@acm.org>
+
+ * gthr-posix.h: Make additional pthread-* functions weak.
+
+Tue May 15 13:51:32 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (apply_change_group): Avoid unneeded validating.
+
+2001-05-14 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (num_insns_constant_wide): Constants are sign-extended.
+ (num_insns_constant): CONST_INT can be 64-bits.
+
+2001-05-14 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (LIB_SPEC): Just use -lSystem.
+ (LIBGCC_SPEC): Don't define.
+
+2001-05-14 Richard Henderson <rth@redhat.com>
+
+ * configure.in (gcc_cv_as_eh_frame): New test.
+ * config.in, configure: Rebuild.
+ * gcc.c (init_spec): Honor USE_AS_TRADITIONAL_FORMAT.
+
+2001-05-14 Andrew MacLeod <amacleod@redhat.com>
+
+ * config/ia64/lib1funcs.asm (__divtf3): Fix incorrect bits in
+ extended precision divide.
+
+2001-05-14 Andrew MacLeod <amacleod@redhat.com>
+
+ * config/ia64/ia64.c (rtx_needs_barrier): Call rtx_needs_barrier
+ for RETURNS as well.
+
+Mon May 14 17:34:48 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (TARGET_64BIT): Define to constant if !TARGET_BI_ARCH
+ (CPP_CPU??_SIZE_TYPE): New.
+ (CPP_CPU??_SPEC, CPP_CPUCOMMON_SPEC): Break out from...
+ (CPP_CPU_SPEC): ... here; support choosing of CPU.
+ (EXTRA_SPECS): Add cpp_cpu??, cpp_cpu??sizet, cpp_cpucommon.
+ (MAX_LONG_TYPE_SIZE, MAX_BITS_PER_WORD): Define to 32 for 32bit-only
+ compiler.
+ * i386.c (override_options): Add sorry about not suported modes.
+
+Mon May 14 08:56:47 2001 Jeffrey A Law (law@cygnus.com)
+
+ * config/pa/som.h (NM_FLAGS): Remove.
+ (ASM_OUTPUT_FUNCTION_PREFIX): No longer truncate subspace names.
+ (ASM_OUTPUT_SECTION_NAME): Remove.
+ (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Likewise.
+
+2001-05-14 Mark Mitchell <mark@codesourcery.com>
+
+ * regrename.c (regrename_optimize): Do not rename registers to
+ leaf registers.
+
+2001-05-14 Alexandre Oliva <aoliva@redhat.com>
+
+ * rtl.texi (CALL_INSN_FUNCTION_USAGE): Note that (and when) it may
+ contain MEMs. Remove useless distinction about clobbering
+ registers.
+
+2001-05-13 Geoff Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
+ * config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
+ * config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
+ (ASM_PREFERRED_EH_DATA_FORMAT): Define.
+ (EXCEPTION_SECTION): Define.
+
+2001-05-13 Zack Weinberg <zackw@stanford.edu>
+
+ * libgcc2.c, libgcc2.h: Restore __eprintf. Label as used for
+ binary backward compat only.
+ * Makefile.in (LIB2FUNCS_ST): New. Put _eprintf here, not
+ in LIB2FUNCS. Pass it to mklibgcc.
+ * mklibgcc.in: Handle LIB2FUNCS_ST.
+
+ * Makefile.in (installdirs): Don't create $(gcc_tooldir).
+
+2001-05-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * tm.texi (THREAD_MODEL_SPEC): Document it.
+ * gcc.c (main): Use it.
+ * config/rs6000/aix43.h (THREAD_MODEL_SPEC): Define it.
+ * config/rs6000/aix51.h (THREAD_MODEL_SPEC): Likewise.
+
+2001-05-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rtl.h (SYMBOL_REF_WEAK): New macro.
+ * rtlanal.h (rtx_addr_can_trap): Use it, a weak SYMBOL_REF can trap.
+ * varasm.c (make_decl_rtl): Mark SYMBOL_REF weak if necessary.
+ * rtl.texi (SYMBOL_REF_WEAK): Document it.
+ * gcc.texi: Remove wrong description.
+
+2001-05-13 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (STAMP): New macro.
+ Replace all uses of `touch' with $(STAMP).
+ * fixinc/Makefile.in: Likewise.
+
+Sun May 13 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * configure.in: ldopen is never in -lexc, so don't test for it.
+ Add test for exc_resume in -lexc for Ada.
+ * configure: Regenerated.
+
+2001-05-12 Richard Henderson <rth@redhat.com>
+
+ * dwarf2asm.c (size_of_encoded_value): New function.
+ * dwarf2asm.h: Declare it.
+ * except.c (output_function_exception_table): Align the TType
+ array only as wide as the encoding.
+
+2001-05-12 Zack Weinberg <zackw@stanford.edu>
+
+ * extend.texi: Document #pragma GCC java_exceptions.
+
+2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * c-parse.in (bison parser, init_reswords): Remove uses of
+ doing_objc_thang.
+ * c-tree.h (doing_objc_thang): Remove.
+
+2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplex.c (_cpp_lex_token): Ensure we warn at most once
+ about files not ending in newlines.
+
+2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
+
+ * dwarfout.c (dwarfout_init): Add cast.
+ * sched-deps.c (sched_analyze_insn): Remove unused vars.
+ * unwind-dw2-fde.c (_Unwind_Find_FDE): Flag unused parameter so.
+cp:
+ * method.c (build_mangled_C99_name): Remove unused prototype.
+
+2001-05-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/arm/arm.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Use delta.
+
+2001-05-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * defaults.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
+ * tm.texi (TARGET_PRTMEMFUNC_VBIT_LOCATION): Document.
+
+2001-05-11 Richard Henderson <rth@redhat.com>
+
+ * defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
+ * dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1,
+ dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New.
+ * dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype.
+ (dw2_output_indirect_constants): Prototype.
+ * dwarf2out.c (dwarf2out_begin_prologue): Generate
+ current_function_func_begin_label if we'll need it for EH. Exit
+ early for IA64_UNWIND_INFO.
+ * except.c: Get DW_EH_PE_* defines from dwarf2.h.
+ (eh_data_format_name): Update for indirect references.
+ (output_function_exception_table): Care for IA64_UNWIND_INFO.
+ Handle ASM_PREFERRED_EH_DATA_FORMAT.
+ * except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't
+ define HAVE_eh_return etc.
+ * final.c (final_start_function): Always call dwarf2out_begin_prologue.
+ (final_end_function): Don't call output_function_exception_table.
+ * toplev.c (compile_file): Call dw2_output_indirect_constants.
+ (rest_of_compilation): Invoke output_function_exception_table
+ for ia64 before assemble_end_function.
+ * tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document.
+ (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document.
+
+ * unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New.
+ * unwind.h: Declare them.
+ * libgcc-std.ver: Export them.
+ * unwind-pe.h: New file.
+
+ * config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
+
+ * config/ia64/fde-glibc.c: Use "struct unw_table_entry"
+ instead of "fde".
+ (find_fde_for_dso): Extract DT_PLTGOT.
+ (_Unwind_FindTableEntry): Rename from __ia64_find_fde; return
+ the segment and gp as well.
+ * config/ia64/frame-ia64.c: Remove file.
+ * config/ia64/frame-ia64.h: Remove file.
+ * config/ia64/unwind-ia64.c: New file.
+ * config/ia64/unwind-ia64.h: New file.
+ * config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove.
+ (ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove.
+ (ASM_OUTPUT_EH_DOUBLE_INT): Remove.
+ (ASM_PREFERRED_EH_DATA_FORMAT): New.
+ (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
+ (IA64_UNWIND_INFO): Re-enable.
+ (HANDLER_SECTION): Remove.
+ (EH_RETURN_DATA_REGNO): New.
+ * config/ia64/ia64.md (exception_receiver): Remove.
+ * config/ia64/t-glibc (LIB2ADDEH): Re-enable.
+ * config/ia64/t-ia64 (LIB2ADDEH): Re-enable.
+
+2001-05-11 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (group_barrier_needed_p): Don't allow
+ calls and jumps to be bundled together.
+ (ia64_reorg): Emit a break after a noreturn call that ends
+ a function.
+ * config/ia64/ia64.md (break_f): New.
+
+2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (lex_charconst): Convert into a simple wrapper
+ around cpp_interpret_charconst, to which most of the code
+ body is moved.
+ * cppexp.c (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE,
+ MAX_LONG_TYPE_SIZE, MAX_INT_TYPE_SIZE, MAX_CHAR_TYPE_MASK,
+ MAX_WCHAR_TYPE_MASK, parse_escape, parse_charconst): Remove.
+ (lex): Use cpp_interpret_charconst.
+ * cpplex.c (parse_escape, read_ucs, cpp_interpret_charconst,
+ hex_digit_value): New functions.
+ (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): New macros.
+ * cpplib.h (cpp_interpret_charconst): New prototype.
+ * Makefile.in: Update.
+
+2001-05-12 Dean Wakerley <dean@wakerley.com>
+
+ * doc/install.texi: New file. Converted to texinfo from the HTML
+ documentation in wwwdocs/htdocs/install.
+
+Fri May 11 15:50:13 2001 Jeffrey A Law (law@cygnus.com)
+
+ * gcse.c (insert_insn_end_bb): Do not search for assignments to
+ non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
+
+ * toplev.c (compile_file): Move comment for opening output
+ file to just before the code that opens the output file.
+
+2001-05-11 Jakub Jelinek <jakub@redhat.com>
+
+ * regmove.c (regmove_optimize): Suppress the optimization for
+ unchanging destination register. Add comment above function.
+
+2001-05-11 Zack Weinberg <zackw@stanford.edu>
+
+ * Makefile.in: Exterminate all references to assert.h.
+ * cross-make: Likewise.
+ * assert.h: Delete.
+ * configure.in: Correct commentary.
+ * configure: Regenerate.
+
+ * libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
+ Remove __eprintf.
+
+ * config/t-freebsd, config/t-linux, config/t-linux-aout,
+ config/t-netbsd, config/t-rtems, config/x-linux,
+ config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
+ No need to override INSTALL_ASSERT_H.
+
+ * fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
+ fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
+ fixinc/fixincl.sh: Don't install assert.h into objdir/include.
+
+2001-05-11 Graham Stott <grahams@redhat.com>
+
+ * combine.c (simplify_comparison): Fix typo.
+
+2001-05-11 Mark Mitchell <mark@codesourcery.com>
+
+ * loop.h (struct movables): Remove `num'.
+ * loop.c (scan_loop): Don't set it. Use count_insns_in_loop.
+ Adjust call to strength_reduce.
+ (num_unmoved_movables): New function.
+ (move_movables): Don't set movables->num.
+ (strength_reduce): Compute the number of instructions in the loop
+ here, rather than in the caller.
+ (check_dbra_loop): Always clear reversible_mem_store if there
+ are any memory sets.
+ (loop_regs_scan): Don't count instructions here.
+ (count_insn_in_loop): New function.
+
+2001-05-11 Mark Mitchell <mark@codesourcery.com>
+
+ * optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
+
+2001-05-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-common.c (finish_label_expr): New function, lifted from
+ from cp/semantics.c.
+ * c-common.h (finish_label_expr, lookup_label): New prototypes.
+ * c-parse.in: Move 3 blocks of parser code into new functions.
+ * c-typeck.c (simple_asm_stmt, c_cast_expr): New functions.
+ * c-tree.h (simple_asm_stmt, c_cast_expr): New prototypes.
+ (lookup_label): Remove.
+
+2001-05-11 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
+ FLOAT_BIT_ORDER_MISMATCH.
+
+2001-05-10 David Edelsohn <edelsohn@gnu.org>
+
+ * expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
+ bytes. Reported by Kazu Hirata <kazu@hxi.com>.
+
+2001-05-10 David Edelsohn <edelsohn@gnu.org>
+
+ * expr.c (emit_group_load): extract_bit_field requires a REG or
+ MEM as an argument.
+
+Thu May 10 14:45:44 2001 Jeffrey A Law (law@cygnus.com)
+
+ * cse.c (cse_insn): Mostly remove first hunk of code which collapsed
+ a computed jump into an unconditional jump.
+ In second hunk of code for collapsing computed and conditional jumps
+ into unconditional jumps, reemit the jump in additional cases.
+
+ * jump.c (jump_optimize_1): Do not wrap the new jump target
+ inside a LABEL_REF; gen_jump will do that automatically.
+
+2001-05-10 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
+ contents for a SYMBOL_REF in case of floating point constants.
+
+2001-05-10 DJ Delorie <dj@redhat.com>
+
+ * c-common.c (combine_strings): Widen strings in a
+ host-endian-independent way.
+
+2001-05-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in: Remove many shift/reduce conflicts. Update
+ %expect values.
+ (declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
+ declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
+ declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
+ declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
+ declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
+ declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
+ declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
+ declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
+ declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
+ declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
+ maybe_type_quals_setattrs, typespec_nonattr, typespec_attr,
+ typespec_reserved_nonattr, typespec_reserved_attr,
+ typespec_nonreserved_nonattr, maybe_setattrs, structsp_attr,
+ structsp_nonattr, components_notype, component_notype_declarator,
+ absdcl1_ea, absdcl1_noea, direct_absdcl1, absdcl_maybe_attribute,
+ firstparm, setspecs_fp): New
+ (typed_declspecs, reserved_declspecs, typed_typespecs,
+ reserved_typespecquals, declmods, typespec, typespecqual_reserved,
+ typed_declspecs_no_prefix_attr reserved_declspecs_no_prefix_attr
+ declmods_no_prefix_attr, nonempty_type_quals, structsp,
+ type_quals): Remove. Users updated.
+ (initdecls, notype_initdecls, after_type_declarator,
+ parm_declarator, notype_declarator, absdcl1, components, ivars):
+ Don't allow attributes at the start of a declarator; include them
+ in the production containing the declarator instead. Always
+ require type specifiers before trying to redeclare a typedef name.
+ (typename): Allow for attributes but warn that they are ignored.
+ (parmlist, firstparm, setspecs_fp): Include attributes in
+ parmlist; suck them off the parser stack in firstparm using
+ setspecs_fp.
+
+Thu May 10 09:17:42 2001 Jeffrey A Law (law@cygnus.com)
+
+ * ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
+ to determine if a block has an unconditional jump at its end.
+
+ * jump.c (jump_optimize_1): When converting a conditional jump
+ to an unconditional jump, build the jump using gen_jump instead
+ of just modify operands in-place.
+
+2001-05-09 Zack Weinberg <zackw@stanford.edu>
+
+ * cppinit.c (cpp_post_options): Shut off macro expansion if
+ -fpreprocessed.
+ * cpplib.c (_cpp_handle_directive): If -fpreprocessed, accept
+ IN_I directives only if the # is in column 1 and the directive
+ name begins in column 2.
+ * cppmain.c (scan_buffer): Insert a space between # and an
+ identifier, when that identifier is a directive name.
+
+ * tradcpp.c (struct file_buf): Add a pointer to the next entry
+ in the header search path.
+ (enum node_type): Add T_INCLUDE_NEXT.
+ (directive_table): Add entry for include_next.
+ (do_include_next): New function.
+ (process_include): New routine, broken out of do_include.
+ (finclude): Insert 'nhd' argument, to be copied into
+ next_header_dir of the new buffer.
+ (main): Adjust to match.
+ * gsyslimits.h, limity.h: Un-indent #include_next.
+
+2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * objc.texi: Move from ../libobjc/objc-features.texi. Adjust for
+ inclusion as a chapter of the GCC manual.
+ * gcc.texi: Include objc.texi.
+ * fdl.texi: Use @unnumberedsec for the addendum.
+ * Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.
+
+Wed May 9 16:01:41 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
+
+Wed May 9 10:40:25 2001 Alexandre Oliva <aoliva@redhat.com>
+
+ * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
+ handling of two-address insns.
+
+Wed May 9 10:36:18 2001 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in (NM_FOR_TARGET): Look for ./nm, then
+ ../binutils/nm-new instead of ../binutils/nm.
+
+Wed May 9 12:15:46 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movdi splitter): Fix the splitting condition
+ (float_extenddftf splitter): Fix mode.
+
+Wed May 9 12:05:39 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * genrecog.c (write_switch): Avoid outputting of switch for
+ types wider than int.
+
+2001-05-03 Andrew Haley <aph@cambridge.redhat.com>
+
+ * reload1.c (copy_eh_notes): New function.
+ (emit_input_reload_insns): Call it.
+ (emit_output_reload_insns): Call it.
+
+2001-05-07 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc (i[34567]86-*-sco3.2v4*, i[34567]86-*-sco*):
+ Delete stanzas.
+ * config/i386/sco.h, config/i386/sco4.h, config/i386/scodbx.h,
+ config/i386/sco4dbx.h, config/i386/x-sco4: Delete file.
+
+ * optabs.c: Delete #ifdef BROKEN_LDEXP block.
+
+2001-05-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (interspace_jump): Revise comment.
+ (builtin_longjmp): Block initial setup insns from delay slot of
+ interspace branch.
+ (builtin_setjmp_receiver): New expander to save and restore PIC
+ register.
+
+ * som.h (NM_FLAGS): Remove `-n' sort option. Revise comment.
+
+Mon May 7 09:30:14 2001 Jeffrey A Law (law@cygnus.com)
+
+ * toplev.c (compile_file): Set up the output file before we call
+ the various initializers for the compiler.
+
+ * except.c (sjlj_mark_call_sites): Do not search for assignments to
+ non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
+
+ * pa.h (MAX_LONG_TYPE_SIZE): Should be 32, not 64.
+ * pa-64.h (*_TYPE_SIZE): Undefine before redefining.
+
+2001-05-06 Zack Weinberg <zackw@stanford.edu>
+
+ * Makefile.in (tradcpp0): Correct typo in dependency list.
+
+2001-05-06 Geoff Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_prologue): Don't save
+ the link register if we're not going to use it.
+
+ * config/rs6000/rs6000.c (output_profile_hook): Fix a warning.
+ (output_function_profiler): Likewise.
+
+2001-05-07 Alan Modra <amodra@one.net.au>
+
+ * pa.c (compute_frame_size): 64-bit frame marker is 16 bytes.
+
+2001-05-06 Alexandre Oliva <aoliva@redhat.com>
+
+ * unroll.c (loop_iterations): Don't sign-extend abs_diff;
+ zero-extend it. Make abs_inc unsigned.
+
+ * optabs.c (expand_binop): Sign-extend xop0 and xop1 from the
+ widest mode in narrowing and widening operations.
+
+ * config/mips/mips.md: Sign extend CONST_INTs.
+
+2001-05-06 Andreas Jaeger <aj@suse.de>
+
+ * invoke.texi (Option Summary): Add -momit-leaf-frame-pointer
+ (i386 Options): Document -momit-leaf-frame-pointer.
+
+2001-05-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-typeck.c (internal_build_compound_expr): Check for
+ array to pointer conversion just once.
+
+2001-05-05 Richard Henderson <rth@redhat.com>
+
+ * integrate.c (copy_insn_list): Substitute NOTE_EXPECTED_VALUE.
+
+2001-05-05 Richard Henderson <rth@redhat.com>
+
+ * except.c (remove_fixup_regions): Adjust REG_EH_REGION notes
+ to the parent of the fixup region.
+
+2001-05-05 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
+ "inline" keyword.
+ * cpp.texi (__NO_INLINE): Document it.
+
+2001-05-05 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (struct include_file): New member err_no.
+ (find_or_create_entry): Set it.
+ (open_file): Don't set fds to -2. Instead, use err_no to
+ remember previous errors, if any.
+
+2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Optimize moves
+ between X and Y by using sequences of xgdx and xgdy.
+
+2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md ("*logicalsi3_silshr16"): Use '?' instead
+ of '!' for the 'D' alternative ('!' is too strong).
+ ("*logicalsi3_silshl16"): Likewise.
+ ("movstricthi"): Accept 'A' when 'd' constraint, remove spurious '+'.
+ ("movstrictsi"): Remove spurious '+'.
+ ("movstrictqi"): Don't accept 'A' and remove spurious '+'.
+ ("tstqi_1", "*lshrqi3_const1"): Put 'm' constraint before 'd'.
+ ("subqi3"): Disparage with '!' the 'x' and 'y' registers to avoid
+ a reload to them.
+
+2001-05-04 David Edelsohn <edelsohn@gnu.org>
+
+ * calls.c (store_one_arg): Don't divide align by BITS_PER_UNIT.
+
+2001-05-04 Lars Brinkhoff <lars@nocrew.org>
+
+ * simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
+ into -a.
+
+2001-05-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * config/rs6000/rs6000.md (ashldi3 splits): Guard with
+ TARGET_POWERPC64.
+
+2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md (lshrhi3_const1): Fix shift of
+ soft register, use ror instead of rol.
+
+2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Take
+ into account pre/post increment decrement for 68HC12.
+ Fix other problems in replacement and fix call to reg_mentioned_p.
+
+2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/larith.asm (L_regs_frame): New for _.frame.
+ Put the soft registers in bss for 68HC12.
+ (L_regs_d3_4): New for _.d3 and _.d4.
+ (L_regs_d5_6): Likewise.
+ (L_regs_d1_2): Likewise.
+ * config/m68hc11/t-m68hc11-gas (T_CPPFLAGS): Compile new parts.
+
+2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__HAVE_SHORT_DOUBLE__
+ to the pre-processor when -fshort-double is specified.
+ * config/m68hc11/m68hc11.2 (CPP_SPEC): Likewise.
+
+2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/larith.asm (divmodhi4): Empty for 68HC12.
+ (__mulsi3): Rewrite for 68HC12.
+ * config/m68hc11/m68hc11.md (divmodhi4): Use idivs for 68HC12.
+ Mark 'x' constraint with earlyclobber to prevent a
+ RELOAD_FOR_OTHER_ADDRESS to go in it.
+ (mulhi3_m68hc12): New pattern.
+ (mulhi3_m68hc11): Rename of mulhi3.
+ (mulhi3): New expand for 68HC12 optimisation.
+ (umulhisi3, mulhisi3): New patterns for 68HC12.
+
+2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md (*tbne, *tbeq): New patterns for 68HC12.
+ (extendqisi2, extendqihi2, extendhisi2): Use sex for 68HC12.
+ (uminqi3, umaxqi3, uminhi3, umaxhi3): New pattern for 68HC12.
+
+2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.h (CONST_COSTS): Make the cost of
+ constants cheap after reload.
+ * config/m68hc11/m68hc11.c (m68hc11_shift_cost): Shift by 16 and 32
+ are cheap.
+ (m68hc11_rtx_costs): Cost of multiplication by 65536 is expensive
+ so that gcc prefers a shift by 16.
+ (m6811_cost, m6812_cost): Make the shift cheap compared to an add.
+
+2001-05-04 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Define.
+
+2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.h: NULL_PTR -> NULL.
+ * arm.c: Likewise.
+ * arm.h: Likewise.
+ * avr.h: Likewise.
+ * c4x.c: Likewise.
+ * c4x.h: Likewise.
+ * i386.c: Likewise.
+ * i386.md: Likewise.
+ * i860.c: Likewise.
+ * ia64.c: Likewise.
+ * m68hc11.h: Likewise.
+ * rs6000.h: Likewise.
+ * sh.c: Likewise.
+ * sh.h: Likewise.
+ * sparc.h: Likewise.
+ * v850.c: Likewise.
+
+ * expr.c: Likewise.
+ * final.c: Likewise.
+ * gcc.c: Likewise.
+ * recog.c: Likewise.
+
+2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * i386.c (ix86_emit_restore_regs_using_mov, ix86_save_reg): Change
+ `bool' parameter to `int'.
+
+ * hash.c (hash_lookup): Likewise.
+
+ * hash.h (hash_lookup): Likewise.
+
+ * tlink.c (symbol_hash_lookup, demangled_hash_lookup): Likewise.
+
+Fri May 4 13:10:03 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_initialize_trampoline): Fix mode of constant.
+
+2001-05-03 Geoff Keating <geoffk@redhat.com>
+
+ * invoke.texi (i386 Options): Delete references to -malign-jumps,
+ -malign-loops, -malign-functions.
+ * i386.c (ix86_align_funcs): Delete.
+ (ix86_align_loops): Delete.
+ (ix86_align_jumps): Delete.
+ (override_options): Mark -malign-* as obsolete. Emulate their
+ behavior with the -falign-* options. Default -falign-* from
+ the processor table.
+ * i386.h (FUNCTION_BOUNDARY): Define to 16; revert Richard Kenner's
+ patch of Wed May 2 13:09:36 2001.
+ (LOOP_ALIGN): Delete.
+ (LOOP_ALIGN_MAX_SKIP): Delete.
+ (LABEL_ALIGN_AFTER_BARRIER): Delete.
+ (LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Delete.
+
+2001-05-04 Andreas Jaeger <aj@suse.de>
+
+ * except.h: Add prototype declaration for
+ expand_builtin_init_dwarf_reg_sizes.
+
+2001-05-03 Geoffrey Keating <geoffk@redhat.com>
+
+ * Makefile.in (site.exp): Set TESTING_IN_BUILD_TREE.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md ("bitcmpqi"): New pattern for bitb
+ instruction.
+ ("bitcmpqi2"): New pattern for bit-extract and test.
+ ("bitcmphi"): New pattern for bitb/bita instructions.
+
+2001-05-03 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gccbug.in: Use a temporary directory when the mktemp command is
+ not available.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.h (STATIC_CHAIN_REGNUM): Use soft z register
+ instead of _.d1.
+ (INITIALIZE_TRAMPOLINE): Call it.
+ (TRAMPOLINE_SIZE): Define according to 68HC11/68HC12.
+ (TRAMPOLINE_TEMPLATE): Remove.
+ * config/m68hc11/m68hc11.c (m68hc11_initialize_trampoline): New.
+ * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
+ Declare.
+
+2001-05-03 David O'Brien <obrien@FreeBSD.org>
+
+ * config/t-freebsd: Don't install "assert.h" in gcc. Compile crtbeginS.o
+ and crtendS.o with PIC.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/larith.asm (__mulqi3): Fix multiplication of two
+ negative numbers.
+ (___subdi3, ___adddi3): Use x instead of y as index register.
+ (__init_bss_section, __map_data_section): Optimize for 68HC12.
+ (__memset, __memcpy): Likewise.
+ (regs): Put the soft registers in bss for 68HC12.
+ (abort): Use trap to abort for 68hc12.
+ (__mulhi3, __mulhi32): Use emul for 68hc12.
+ (__mulsi3): Avoid to use the tmp soft register for 68hc12.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.h (LIMIT_RELOAD_CLASS): Don't define.
+ * config/m68hc11/m68hc11-protos.h (limit_reload_class): Remove.
+ * config/m68hc11/m68hc11.c (limit_reload_class): Remove.
+ (m68hc11_override_options): Remove setting of flag_no_nonansi_builtin.
+ Set 68HC12 min offset to -65536.
+ (print_operand): Put parenthesis arround the operand if it refers
+ to a symbol having the same name as a register.
+ (m68hc11_z_replacement): When z register is replaced by its
+ equivalent soft register, force the insn to be re-recognized.
+ (m68hc11_check_z_replacement): Fix the test when destination is
+ the index register and z dies in the insn.
+ (m68hc11_reorg): Remove the REG_DEAD notes beforce recomputing them.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_override_options): Initialize
+ costs according to processor variant.
+ (m68hc11_shift_cost): New function to compute shift costs.
+ (m68hc11_rtx_costs): Define costs according to processor variant.
+ (m6811_cost): Costs for 68HC11.
+ (m6812_cost): Costs for 68HC12.
+ (COSTS_N_INSNS): Remove.
+
+ * config/m68hc11/m68hc11.h (RTX_COSTS): New.
+ (DEFAULT_RTX_COSTS): Remove.
+ (CONST_COSTS): Define costs according to OUTER_CODE.
+ (processor_costs): New struct to define costs.
+ (m68hc11_cost): Pointer to current costs.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md (*addhi3_68hc12): Fix generation
+ and use m68hc11_notice_keep_cc when using leax/leay.
+ (addhi3 split): Reject split if the insn is handled by
+ leax/leay above.
+ * config/m68hc11/m68hc11.c (m68hc11_split_move): For 68HC12 the
+ push must be handled in a special way if the source operand uses
+ sp as index register.
+ (m68hc11_notice_keep_cc): New function.
+ (m68hc11_gen_movhi): Use it when an insn changes a register but
+ not the flags.
+ (m68hc11_gen_movqi): Fix move for 68HC12.
+ * config/m68hc11/m68hc11-protos.h (m68hc11_notice_keep_cc): Declare.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use LCT_CONST
+ and don't pass operands[0] to emit_library_call_value.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md (tsthi_1): Use cpd for 68HC12.
+ (zero_extendsi split): Simplify and use (zero_extendhi).
+ (*addhi3): Remove 'w' constraint since stack pointer is handled
+ by (addhi3_sp).
+ (*ashlhi3_2): Operand 2 is clobbered use '+' for its constraint.
+ (*ashlhi3, *ashrhi3, *lshrhi3): Likewise.
+ (*ashrhi3_const): Fix shift by 7.
+ (*lshrsi3_const16): Fix template.
+ (call, call_value): Fix constraint and predicate.
+
+2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md (X_REGNUM, D_REGNUM): New constant.
+ (Y_REGNUM, SP_REGNUM, PC_REGNUM, A_REGNUM, B_REGNUM): Likewise.
+ (CC_REGNUM): Likewise.
+ (*unnamed splits): Use above constants instead of hard coded numbers.
+ (*adcq, *subcq, *addsi_carry, *rotlqi3_with_carry): Likewise.
+ (*rotlhi3_with_carry, *rotrhi3_with_carry): Likewise.
+ (*return_16bit, *unnamed peepholes): Likewise.
+
+2001-05-03 David O'Brien <obrien@FreeBSD.org>
+
+ * config.gcc(rs6000-ibm-aix|powerpc-ibm-aix): Do not include
+ rs6000/rs6000.h twice.
+
+2001-05-03 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * config/i386/djgpp.h (CPP_PREDEFINES): Define __GO32__.
+ (CPP_SPEC): Conditionally define MSDOS and GO32.
+ (SUBTARGET_SWITCHES): Ignore -mbnu210 and -mno-bnu210.
+ (SUBTARGET_OVERRIDE_OPTIONS): Warn that -mbnu210 and -mno-bnu210 are
+ ignored.
+ (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Remove.
+
+2001-05-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
+
+2001-05-03 Mark Mitchell <mark@codesourcery.com>
+
+ * integrate.h (struct inline_remap): Add leaf_reg_map table.
+ * integrate.c (expand_inline_function): Use xcalloc to allocate
+ memory.
+ (copy_rtx_and_substitute): Use the leaf_reg_map for leaf
+ registers.
+
+2001-05-03 Mark Mitchell <mark@codesourcery.com>
+
+ * c-dump.c (dequeue_and_dump): Don't look at DECL_ASSEMBLER_NAME
+ if it is not set.
+
+2001-05-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.h (LINK_SPEC): Pass --relax to the
+ linker if -mrelax is given.
+ (TARGET_SWITCHES): Document -mrelax.
+
+ Re-installed 2001-01-09's patch:
+ * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
+ if it's wider than long and the target's long is wider than the
+ host's.
+
+2001-05-02 David O'Brien <obrien@FreeBSD.org>
+
+ * config.gcc, config/rs6000/aix51.h, config/rs6000/mach.h: Do not
+ directly include rs6000/rs6000.h. Instead do it in tm.h.
+
+2001-05-02 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (STRING_OBJECT_CLASS_NAME): Default to
+ NSConstantString for NeXT-style runtimes.
+ (STRING_OBJECT_GLOBAL_NAME): New macro.
+ (enum objc_tree_index): Add values OCTI_CNST_STR_GLOB_ID and
+ OCTI_STRING_CLASS_DECL.
+ (constant_string_global_id): New macro.
+ (string_class_decl): Ditto.
+ (setup_string_decl): New function.
+ (build_objc_string_object): Use it to build a NeXT runtime
+ compatible string initializer.
+
+2001-05-02 Jakub Jelinek <jakub@redhat.com>
+
+ * tradcpp.c (do_define): Make sure we don't walk past limit.
+
+2000-05-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack
+ offsets if not REG_OK_STRICT.
+
+ * config/rs6000/rs6000.h (REG_OK_STRICT_FLAG): New macro.
+ (INT_REG_OK_FOR_INDEX_P): Likewise.
+ (INT_REG_OK_FOR_BASE_P): Likewise.
+ (REG_OK_FOR_INDEX_P): Use INT_REG_OK_FOR_INDEX_P.
+ (REG_OK_FOR_BASE_P): Use INT_REG_OK_FOR_BASE_P.
+ (LEGITIMATE_OFFSET_ADDRESS_P): Use INT_REG_OK_FOR_INDEX_P and
+ INT_REG_OK_FOR_BASE_P instead of REG_OK_FOR_INDEX_P and
+ REG_OK_FOR_BASE_P. Take an additional parameter.
+ (LEGITIMATE_INDEXED_ADDRESS_P): Likeewise.
+ (LEGITIMATE_INDIRECT_ADDRESS_P): Likewise.
+ (LEGITIMATE_LO_SUM_ADDRESS_P): Likewise.
+ (GO_IF_LEGITIMATE_ADDRESS): Move code into new function
+ rs6000_legitimate_address() and use it.
+ * config/rs6000/rs6000.c: Update all callers.
+ (rs6000_legitimate_address): New function.
+
+2001-05-02 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): Merge
+ special_constant conditional blocks together.
+
+2001-05-02 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Remove unused NAMED
+ parameter.
+ (STRICT_ARGUMENT_NAMING): Define.
+ * config/rs6000/rs6000.c (function_arg_advance, function_arg,
+ function_arg_partial_nregs, setup_incoming_varargs): Remove
+ args logic which depends on "named" now that STRICT_ARGUMENT_NAMING
+ is defined.
+
+Wed May 2 13:09:36 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/i386/i386.h (FUNCTION_BOUNDARY): Result is unsigned.
+
+ * function.c (fixup_var_regs_1, case SUBREG): Use promoted mode
+ for replacement.
+
+ * expr.c (store_field): Do nothing except elaborate side-effects if
+ zero-bit field.
+
+2001-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-lex.c: NULL_PTR -> NULL.
+ * cse.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * gcse.c: Likewise.
+ * genpeep.c: Likewise.
+ * jump.c: Likewise.
+ * mips-tdump.c: Likewise.
+ * reload1.c: Likewise.
+ * rtlanal.c: Likewise.
+ * stmt.c: Likewise.
+ * stor-layout.c: Likewise.
+ * toplev.c: Likewise.
+
+2001-05-01 Per Bothner <per@bothner.com>
+
+ * expr.c (expand_expr): When compiling LABELED_BLOCK_EXPR,
+ call do_pending_stack_adjust before emiting label.
+
+2001-05-01 Mark Mitchell <mark@codesourcery.com>
+
+ * extend.texi: Fix typo.
+
+2001-05-01 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (build_module_descriptor): Clear DECL_CONTEXT
+ of UOBJC_MODULES_decl.
+ (generate_strings): Clear DECL_CONTEXT of new decl nodes.
+ (generate_descriptor_table): Ditto.
+ (generate_protocols): Ditto.
+ (generate_protocol_list): Ditto.
+ (generate_classref_translation_entry): Ditto.
+
+2001-05-01 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * invoke.texi (Optimize Options): Add documentation for `--param
+ max-delay-slot-insn-search' and `--param
+ max-delay-slot-live-search' and reorder --param section.
+ * params.def: Modify initial comment.
+ * params.h (param_info): Add `help' member.
+ * toplev.c (lang_independent_params): Include `help' description.
+ (display_help): Print --param parameters.
+
+2001-05-01 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc: Don't default xmake_file to ${cpu_type}/x-${cpu_type}.
+ Remove references to deleted files.
+ (*-*-openbsd): No need to override xmake_file.
+ (*-*-sysv4): Treat like *-*-sysv.
+
+ * configure.in: Probe for ldopen in various places, and set up
+ collect2 to be linked with them if found.
+ Don't dink with Windows registry stuff unless $host_os is a
+ Win32 os name. Check to see if we need -ladvapi32.
+ * configure: Regenerate.
+
+ * Makefile: Get rid of CLIB and HOST_CLIB.
+ Substitute in COLLECT2_LIBS and link collect2 against its contents.
+ * build-make: Get rid of HOST_CLIB.
+
+ * config/a29k/x-unix, config/alpha/x-osf, config/i386/x-aix,
+ config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
+ config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
+ config/mips/x-sysv, config/rs6000/x-aix31, config/rs6000/x-aix41,
+ config/rs6000/x-rs6000: Delete.
+
+ * config/i386/x-cygwin, config/m68k/t-aux, config/mips/x-iris:
+ Don't set CLIB.
+
+ 24 x-host fragments remain, 0 x-cpu, 3 top level.
+
+2001-05-01 Zack Weinberg <zackw@stanford.edu>
+
+ * aclocal.m4 (gcc_AC_C_CHAR_BIT): Correct test program.
+ * configure: Regenerate.
+
+2001-05-01 Angela Marie Thomas <angela@cygnus.com>
+
+ * Makefile.in (install-headers): Remove redundant dependency.
+
+2001-05-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-tree.texi (USING_STMT): Document.
+
+2001-05-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * bitmap.c: Change NULL_PTR to NULL or "(rtx*)0".
+ * c-common.c: Likewise.
+ * c-decl.c: Likewise.
+ * combine.c: Likewise.
+ * rs6000.c: Likewise.
+ * except.c: Likewise.
+ * explow.c: Likewise.
+ * expr.c: Likewise.
+ * fold-const.c: Likewise.
+ * function.c: Likewise.
+ * gcc.c: Likewise.
+ * gcse.c: Likewise.
+ * integrate.c: Likewise.
+ * loop.c: Likewise.
+ * objc/objc-act.c: Likewise.
+ * recog.c: Likewise.
+ * reg-stack.c: Likewise.
+ * reload.c: Likewise.
+ * reload1.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * stmt.c: Likewise.
+ * varasm.c: Likewise.
+
+2001-05-01 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.def: New file.
+ * diagnostic.h (diagnostic_t): New enum.
+ * Makefile.in (diagnostic.o): Depend on diagnostic.def
+
+2001-04-30 Zack Weinberg <zackw@stanford.edu>
+
+ * tsystem.h: Test only POSIX for availability of string.h
+ and time.h.
+ * config.gcc (all systems): If USG appeared in xm_defines,
+ change it to POSIX. If both USG and POSIX appeared, just
+ delete USG. Remove unnecessary quotes around xm_defines
+ settings.
+ (m68k-crds-unos*): Don't #define unos - tested nowhere.
+ (m68k-apple-aux*): Don't #define AUX - tested nowhere.
+ (alpha*-*-linux*ecoff*, powerpc-*-linux*libc1,
+ powerpc-*-linux*): No need to set xm_defines - handled by
+ global settings for *-*-linux*.
+
+2001-04-30 Zack Weinberg <zackw@stanford.edu>
+
+ * dbxout.c, mips-tfile.c, config/mips/mips.c, xcoffout.c:
+ Always include gstab.h, not system stab.h. Don't provide
+ default definitions of N_CATCH or N_OPT. Always use the
+ gstab.h variant of STAB_CODE_TYPE.
+ * final.c: Don't include stab.h/gstab.h at all, or provide
+ defaults for N_SLINE and N_SOL.
+
+ * xcoffout.c: Can assume N_MAIN, N_DSLINE, N_BSLINE, N_BINCL,
+ N_EINCL, N_EXCL, N_M2C, N_SCOPE, N_CATCH, and N_OPT are
+ available.
+ * sdbout.c: Always include gsyms.h instead of system syms.h.
+
+ * configure.in: No need to check for stab.h.
+ * configure, config.in: Regenerate.
+ * Makefile.in (final.o): Don't depend on gstab.h.
+
+2001-04-30 Mark Mitchell <mark@codesourcery.com>
+ Richard Henderson <rth@redhat.com>
+
+ * extend.texi: Improve documentation of volatile asms.
+
+2001-04-30 Mark Mitchell <mark@codesourcery.com>
+
+ * c-tree.texi: Fix thinko.
+ * gcc.texi: Likewise.
+
+2001-04-30 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (c_promoting_integer_type_p): New function, from the
+ corpse of old macro. Properly promote too-small enumerations and
+ booleans. Adjust all callers.
+ * c-common.h (C_PROMOTING_INTEGER_TYPE_P): Remove.
+ (c_promoting_integer_type_p): Declare.
+ * c-decl.c: Adjust C_PROMOTING_INTEGER_TYPE_P invocations.
+ * c-typeck.c: Likewise.
+ (default_conversion): Remove now redundant boolean check.
+
+2001-04-30 Jan Hubicka <jh@suse.cz>
+ Richard Henderson <rth@redhat.com>
+
+ * regmove.c (try_apply_stack_adjustment): Remove now redundant
+ sanity checks.
+ (combine_stack_adjustments_for_block): Don't combine stack
+ allocation followed by deallocations. Handle grow-up stacks.
+
+2001-04-30 Mark Mitchell <mark@codesourcery.com>
+
+ * fdl.texi: New file.
+ * c-tree.texi: Use the GFDL.
+ * gcc.texi: Likewise.
+
+2001-04-30 Stan Shebs <shebs@apple.com>
+
+ * invoke.texi: Add a section documenting Objective-C options.
+
+2001-04-27 Andrew Haley <aph@cambridge.redhat.com>
+
+ * emit-rtl.c (try_split): Copy EH notes to sequence.
+
+2001-04-30 Mark Mitchell <mark@codesourcery.com>
+
+ * regmove.c (record_stack_memrefs): Catch all references to the
+ stack pointer.
+
+2001-04-29 Toomas Rosin <toomas at ns dot tklabor dot ee>
+
+ * Makefile.in (stmp-fixinc): quote shell assignment values
+
+2001-04-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-aux-info.c: NULL_PTR->NULL in calls to `concat'.
+
+ * gcc.c: Likewise.
+
+ * prefix.c: Likewise.
+
+2001-04-28 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (handle_class_ref): Rewrite to flush target
+ specific code and use new macro ASM_DECLARE_UNRESOLVED_REFERENCE.
+ * config/darwin.h (ASM_DECLARE_UNRESOLVED_REFERENCE): Define.
+ * tm.texi (ASM_DECLARE_UNRESOLVED_REFERENCE): Document.
+
+ * config/darwin.h (STANDARD_EXEC_PREFIX): Don't define.
+ (NEXT_OBJC_RUNTIME): Define.
+
+Sat Apr 28 21:02:58 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * rtl.h (simplify_gen_relational): Add cmp_mode parameter.
+ * simplify-rtx.c (simplify_gen_relational): Likewise.
+
+ * simplify-rtx.c (simplify_replace_rtx): Handle relationals and MEMs.
+
+ * i386.h (VALID_SSE_REG_MODE): Accept MMX modes if SSE2
+ * i386.md (movsi_1, movdi2, movdi_1_rex64): Handle SSE2 moves.
+
+ * i386.md (negsf2, negdf2, abssf2, absdf2): Force operands to
+ registers in SSE case; fix handling of the immediates.
+ (negsf2_ifs, abssf2_ifs): Tweak constraints; require
+ operands to be in regsiters before reload.
+ (negdf2_ifs, absdf2_ifs): Likewise; disable for 64bit
+ (negdf2_ifs_rex64, absdf2_ifs_rtx64): New.
+ (abstf,absxf,negtf,negxf splitters): Compute
+ properly the regnum for x86_64.
+ (avsdf2_if_rex64): New.
+
+Sat Apr 28 10:36:23 2001 Jeffrey A Law (law@cygnus.com)
+
+ * flow.c (propagate_block_delete_insn): Handle deletion of ADDR_VEC
+ and ADDR_DIFF_VEC insns when the proceeding CODE_LABEL was put
+ into the constant pool.
+ * jump.c (jump_optimize_1): Remove barrier successors after all
+ the LABEL_NUSES counds have been computed.
+ (delete_barrier_successors): When deleting a tablejump insn, also
+ delete the jump table it uses.
+ * varasm.c (force_const_mem): Set LABEL_PRESERVE_P when forcing a
+ label into memory.
+
+2001-04-28 Martin Kalen <martin.kalen@todaysystems.com.au>
+
+ * pa.c (FRP): Remove erroneous white space in macro definition.
+
+2001-04-28 Andreas Jaeger <aj@suse.de>
+
+ * invoke.texi: Use XX-bit instead of XXbit or XX bit where
+ appropriate.
+ * extend.texi: Likewise.
+ * tm.texi: Likewise.
+
+2001-04-28 Andreas Jaeger <aj@suse.de>
+
+ * md.texi: Use XX-bit instead of XXbit or XX bit where
+ appropriate.
+
+2001-04-28 Jens Schweikhardt <schweikh@schweikhardt.net>
+
+ * gcc.c (process_command): Allow -l lib in addition to -llib
+ for POSIX compliance. This fixes PR c/2347.
+
+ * invoke.texi: Update section on Link Options accordingly.
+
+2001-04-27 Zack Weinberg <zackw@stanford.edu>
+
+ * function.c (purge_addressof_1): Remove the duplicate
+ if (code == SET) block. Fold the two if (code == ADDRESSOF)
+ blocks together.
+
+2001-04-28 Jason Merrill <jason_merrill@redhat.com>
+
+ * except.c (expand_eh_region_start): Don't start a new block.
+ (expand_eh_region_end): Don't end a block.
+ * stmt.c (expand_end_bindings): Don't end EH blocks.
+ (expand_decl_cleanup): Starting an EH region won't change the block.
+ (mark_block_as_eh_region, mark_block_as_not_eh_region): Lose.
+ (is_eh_region): Lose.
+ * tree.h: Adjust.
+
+2001-04-27 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * except.c (expand_eh_region_end_cleanup): word_mode, not Pmode.
+
+ * collect2.c (main): Add `-L' case to remove duplicate entries.
+ (is_in_args): New function to check for a duplicate argument.
+ * defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New macro.
+ * tm.texi (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New documentation.
+ * config/mips/iris6.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
+ Define to be nonzero.
+
+2001-04-27 Andreas Jaeger <aj@suse.de>
+ Richard Henderson <rth@redhat.com>
+
+ * md.texi (Machine Constraints): Document additional i386
+ constraints and fix description of "A".
+
+Fri Apr 27 10:43:49 2001 Jeffrey A Law (law@cygnus.com)
+
+ * tm.texi (TARGET_MEM_FUNCTIONS): Update text.
+
+2001-04-27 Jason Merrill <jason_merrill@redhat.com>
+
+ * except.c (get_exception_filter): word_mode, not Pmode.
+
+2001-04-26 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/sparc/sparc.md (movsf_no_f_insn): Add more alternatives
+ common to other movsf patterns. Move up so that in future
+ people who change the other patterns will change it too.
+ (movsf_lo_sum): Allow even for soft-float; add appropriate
+ constraints.
+ (movsf_high): Likewise.
+ (movsf_high+1): Allow even for soft-float.
+
+ * function.c (expand_function_end): Always clobber the
+ return registers, even if there is no return label.
+
+Thu Apr 26 20:28:21 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * (ix86_expand_fp_movcc): Re-enable SSE conditional move generation.
+
+Thu Apr 26 19:20:28 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (abs/neg splitter): Fix calculation of sign bit for TFmodes
+ (pushqi2_rex64, pushhi2_rex64): Add.
+
+2001-04-26 Andrew Haley <aph@cambridge.redhat.com>
+
+ * except.c (expand_eh_region_end_cleanup): Force pending stack
+ adjust before emitting label that branches around cleanup code.
+
+2001-04-26 H.J. Lu (hjl@gnu.org)
+
+ * config.gcc (mips*-*-linux*): Add elfos.h to tm_file.
+
+ * config/mips/ecoff.h (STARTFILE_SPEC): Undefine before
+ define.
+ * config/mips/elf64.h (MAX_OFILE_ALIGNMENT): Likewise.
+ (ASM_OUTPUT_SECTION_NAME): Likewise.
+ (ASM_WEAKEN_LABEL): Likewise.
+ (UNIQUE_SECTION): Likewise.
+ (ASM_OUTPUT_CONSTRUCTOR): Likewise.
+ (ASM_OUTPUT_DESTRUCTOR): Likewise.
+ * config/mips/elf.h (MAX_OFILE_ALIGNMENT): Likewise.
+ (ASM_OUTPUT_SECTION_NAME): Likewise.
+ (ASM_WEAKEN_LABEL): Likewise.
+ (UNIQUE_SECTION): Likewise.
+ (ASM_OUTPUT_CONSTRUCTOR): Likewise.
+ (ASM_OUTPUT_DESTRUCTOR): Likewise.
+ * config/mips/linux.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/mips/mips.h (DBX_CONTIN_LENGTH): Likewise.
+ (ASM_FILE_START): Likewise.
+ (ASM_OUTPUT_SOURCE_LINE): Likewise.
+ (ASM_DECLARE_OBJECT_NAME): Likewise.
+ (ASM_FILE_END): Likewise.
+ (ASM_DECLARE_FUNCTION_NAME): Likewise.
+ (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ (ASM_GENERATE_INTERNAL_LABEL): Likewise.
+ (ASM_OUTPUT_CASE_LABEL): Likewise.
+ (ASM_OUTPUT_SKIP): Likewise.
+ (ASM_OUTPUT_ASCII): Likewise.
+ (ASM_OUTPUT_IDENT): Likewise.
+ (READONLY_DATA_SECTION): Likewise.
+ (EXTRA_SECTIONS): Likewise.
+ (EXTRA_SECTION_FUNCTIONS): Likewise.
+ (SELECT_RTX_SECTION): Likewise.
+ (SELECT_SECTION): Likewise.
+
+ * config/mips/linux.h (INVOKE__main): Undefine.
+ (CTOR_LIST_BEGIN): Likewise.
+ (CTOR_LIST_END): Likewise.
+ (DTOR_LIST_BEGIN): Likewise.
+ (DTOR_LIST_END): Likewise.
+ (SET_ASM_OP): Defined it to ".dummy".
+ (ASM_OUTPUT_DEF): Defined.
+ (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Defined.
+
+2001-04-26 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * config/arm/arm.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define, if the
+ assembler supports .p2align.
+
+2001-04-26 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-lex.c (c_lex): Remove # from %o diagnostic formatting.
+
+2001-04-26 Jakub Jelinek <jakub@redhat.com>
+
+ * integrate.c (expand_inline_function): Check for error_mark_node
+ in actual argument.
+
+2001-04-26 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.h (CC1_CPU_SPEC): Fix deprecation warnings for
+ -m386 and -m486.
+
+2001-04-26 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (configargs.h): Define thread_model.
+ * configure: Rebuilt.
+ * gcc.c (main): Print it with -v.
+
+2001-04-25 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Document -Wmissing-braces, -dumpspecs,
+ -dumpmachine, -dumpversion, -fmem-report and -ftime-report.
+ * gcc.1: Regenerate.
+
+2001-04-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * dwarfout.c (is_pseudo_reg, type_main_variant, is_tagged_type,
+ is_redundant_typedef): Use static inline instead of inline static.
+
+Wed Apr 25 18:21:01 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h: Move W32API search to LINK_SPEC to ensure that
+ this directory is always searched.
+
+2001-04-25 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_expand_epilogue): Properly compute size
+ of registers to restore along non eh_return path.
+
+2001-04-25 Jakub Jelinek <jakub@redhat.com>
+
+ * c-format.c (check_format_info_recurse): Handle
+ PLUS_EXPR for format string.
+
+2001-04-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/ia64.h (CC1_SPEC): Define.
+ * config/ia64/linux.h (CC1_SPEC): Define.
+
+Wed Apr 25 17:09:50 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * emit-rtl.c (constant_subword): Also do sign extension in
+ BITS_PER_WORD == 16 case.
+
+2001-04-25 Jason Merrill <jason_merrill@redhat.com>
+
+ * loop.c (try_swap_copy_prop): Go back to checking insn.
+
+2001-04-25 Jakub Jelinek <jakub@redhat.com>
+
+ * emit-rtl.c (subreg_hard_regno): Only do HARD_REGNO_MODE_OK check
+ if check_mode is nonzero.
+
+2001-04-25 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (ix86_expand_int_movcc): If overlap between
+ out and comparison sequence has been detected, put result into
+ proper temporary pseudo.
+
+2001-04-24 Zack Weinberg <zackw@stanford.edu>
+
+ * Makefile.in (LIB2FUNCS): Remove _varargs and __dummy.
+ * libgcc-std.ver: Remove __builtin_saveregs, __dummy, and __empty.
+ * libgcc2.c: Remove __dummy and __builtin_saveregs.
+ * libgcc2.h: Don't prototype __builtin_saveregs or __dummy.
+ * config/i860/varargs.asm: New file - preserve i860 __builtin_saveregs
+ for future reference.
+
+2001-04-24 Jason Merrill <jason_merrill@redhat.com>
+
+ * except.c (reachable_handlers): Step out one level from a RESX.
+
+ * except.c (struct eh_region): Rename 'last' to 'resume'.
+ (mark_eh_region, duplicate_eh_region_1): Adjust.
+ (expand_eh_region_end_cleanup): Remember the jump, not the barrier.
+ (build_post_landing_pads): Likewise.
+ (expand_end_catch, expand_eh_region_end_allowed): Don't set it.
+ (expand_eh_region_end_must_not_throw): Likewise.
+ (connect_post_landing_pads): Thread (only) regions with non-deleted
+ resume insns.
+
+ * except.c (expand_eh_region_end_cleanup): Save the EH return data
+ registers around the cleanup.
+ (get_exception_filter): New fn.
+ (finish_eh_generation): Use it.
+
+2001-04-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-semantics.c (add_scope_stmt): Don't call
+ current_scope_stmt_stack multiple times.
+
+2001-04-24 Zack Weinberg <zackw@stanford.edu>
+ Nathan Sidwell <nathan@codesourcery.com>
+
+ Lazy __FUNCTION__ generation.
+ * c-common.h (RID_FUNCTION_NAME, RID_PRETTY_FUNCTION_NAME,
+ RID_C99_FUNCTION_NAME): New _RIDs.
+ (CTI_FUNCTION_ID, CTI_PRETTY_FUNCTION_ID, CTI_FUNC_ID): Remove.
+ (CTI_FUNCTION_NAME_DECL, CTI_PRETTY_FUNCTION_NAME_DECL,
+ CTI_C99_FUNCTION_NAME_DECL, CTI_SAVED_FUNCTION_NAME_DECLS): New
+ global tree slots.
+ (function_id_node, pretty_function_id_node, func_id_node): Remove.
+ (c99_function_name_decl_node, function_name_decl_node,
+ pretty_function_name_decl_node, saved_function_name_decls):
+ Declare.
+ (struct language_function): Remove x_function_name_declared_p.
+ (make_fname_decl): Remove a parameter.
+ (declare_function_names): Remove prototype.
+ (start_fname_decls, finish_fname_decls): Prototype.
+ (fname_as_string): Likewise.
+ (fname_string, fname_decl): Likewise.
+ * c-common.c (make_fname_decl): Adjust.
+ (struct fname_var_t): New struct.
+ (fname_vars): New static array.
+ (declare_function_name): Remove.
+ (start_fname_decls, finish_fname_decls): New functions.
+ (fname_as_string): New function from remnants of
+ declare_function_name.
+ (fname_string, fname_decl): New functions.
+
+ * c-decl.c (c_function_name_declared_p): Remove.
+ (init_decl_processing): Don't generate __FUNCTION__ et al ids,
+ don't call declare_function_name. Call start_fname_decls.
+ (c_make_fname_decl): Adjust parameters. Generate the name. Don't
+ clobber the line number. Call finish_decl.
+ (start_function): Call start_fname_decls.
+ (finish_function): Call finish_fname_decls.
+ Remove c_function_name_declared_p.
+ (push_c_function_context): Don't push c_function_name_declared_p.
+ (pop_c_function_context): Don't pop c_function_name_declared_p.
+ (c_begin_compound_stmt): Don't check c_function_name_declared_p.
+ * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): New tokens.
+ (program): Call finish_fname_decls for C.
+ (primary): Add VAR_FUNC_NAME.
+ (reswords): Add slots for __FUNCTION__ et al.
+ (rid_to_yy): Add mappings for __FUNCTION__ et al.
+ (yylexname): If it's a STRING_FUNC_NAME generate the function name
+ now. Don't look for VAR_DECLs containing __FUNCTION__ et al.
+ * c-semantics.c (prune_unused_decls): Remove.
+ (finish_stmt_tree): Don't call prune_unused_decls.
+ (genrtl_decl_stmt): Don't prune unused decls here.
+
+2001-04-24 Nick Clifton <nickc@cambridge.redhat.com>
+
+ * dwarf2out.c (mem_loc_descriptor): If a SYMBOL_REF is in the
+ constant pool, use the pool's SYMBOL_REF instead.
+
+ * config/v850/v850.h (STRICT_ALIGNMENT): Always set, even for the
+ v850e.
+
+2001-04-23 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-convert.c (convert): When converting to a BOOLEAN_TYPE, avoid
+ passing nested NOP_EXPRs to fold.
+
+Mon Apr 23 14:32:12 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * reg-stack.c (emit_swap_insn): Do not get pass CALL_INSNs.
+
+2001-04-22 Mark Mitchell <mark@codesourcery.com>
+
+ * loop.c (loop_delete_insns): Add prototype.
+
+2001-04-23 Phil Edwards <pme@sources.redhat.com>
+
+ * configure.in: Remove ENABLE_STD_NAMESPACE.
+ * config.in: Regenerated.
+ * configure: Regenerated.
+
+2001-04-22 Stan Shebs <shebs@apple.com>
+
+ * config.gcc (powerpc-*-darwin*): Move the flag in xm-darwin.h
+ into xm_defines.
+ * config/rs6000/xm-darwin.h: Remove file.
+
+2001-04-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * collect2.c (main): Use concat in lieu of xmalloc/sprintf.
+ (write_c_file_stat): Likewise.
+
+ * dbxout.c (dbxout_init): Likewise.
+
+ * profile.c (output_func_start_profiler): Likewise.
+
+2001-04-22 Philipp Thomas <pthomas@suse.de>
+
+ * ABOUT-GCC-NLS: Now that gettext 0.10.37 is out,
+ require it instead of the CVS version.
+ * cpperror.c (v_message): Put a blank before the macro
+ body to not confuse exgettext.
+
+2001-04-21 Mark Mitchell <mark@codesourcery.com>
+
+ * flow.c (proagate_one_insn): Remove useless assignment.
+ * jump.c (delete_insn): Tidy.
+ * loop.c (try_copy_prop): When deleting an instruction with a
+ REG_RETVAL note, delete the entire libcall sequence.
+ (loop_delete_insns): New function.
+ * unroll.c (initial_reg_note_copy): Copy INSN_LIST notes, even if
+ we're not substituting into them yet.
+
+2001-04-21 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c (general_operand_src): Fix a comment typo.
+
+ * config/sparc/sparc.c (sparc_flat_eligible_for_epilogue_delay):
+ Fix a comment typo.
+ * config/i960/i960.c (signed_arith_operand): Likewise.
+
+ * calls.c (expand_call): Fix a comment typo.
+
+2001-04-20 Zack Weinberg <zackw@stanford.edu>
+
+ * configure.in: Probe for times, clock, struct tms, and clock_t.
+ * configure, config.in: Regenerate.
+ * timevar.c: Replace ifdef forest in get_time with (relatively)
+ straightforward series of checks based on autoconf's probes.
+
+Fri Apr 20 12:24:50 2001 Jeffrey A Law (law@cygnus.com)
+
+ * config/pa/som.h (NM_FLAGS): Define.
+
+2001-04-20 Bernd Schmidt <bernds@redhat.com>
+
+ * ia64.h (MD_SCHED_REORDER, MD_SCHED_REORDER2): Pass CLOCK to called
+ function.
+ * ia64-protos.h (ia64_sched_reorder): Additional arg for clock.
+ * ia64.c (nop_cycles_until): New function.
+ (prev_cycle, prev_first, last_issued): New static variables.
+ (ia64_sched_reorder): Additional arg for clock.
+ On final scheduling pass, emit extra NOPs as needed.
+ Set prev_first and prev_cycle.
+ (ia64_sched_reorder2): Pass clock arg down to ia64_sched_reorder.
+ (ia64_variable_issue): Set last_issued.
+
+2001-04-20 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/i386/i386.c (ix86_expand_int_movcc,
+ ix86_expand_strlensi_unroll_1): Sign-extend CONST_INTs.
+
+2001-04-20 Geoff Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.md (ctrsi_internal1, ctrsi_internal2,
+ ctrsi_internal3, ctrsi_internal4, ctrsi_internal5,
+ ctrsi_internal6, ctrdi_internal1, ctrdi_internal2,
+ ctrdi_internal3, ctrdi_internal4, ctrdi_internal5,
+ ctrdi_internal6): In the short-branch case, this insn is only 4
+ bytes long. Reported by Reza Yazdani <reza@apple.com>.
+
+2001-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ * reg-stack.c (check_asm_stack_operands): Issue error if "=t" resp.
+ "=u" is used together with "st" resp. "st(1)" clobber.
+
+2001-04-20 Jakub Jelinek <jakub@redhat.com>
+
+ * gcse.c (gcse_main): Fix comment typo.
+ (delete_null_pointer_check): Likewise.
+ (hash_scan_set): Don't consider sets with REG_EQUIV MEM notes.
+ * cse.c (cse_insn): Likewise.
+ * function.c (fixup_var_refs_insns_with_hash): The sequence is
+ toplevel.
+
+2001-04-19 Zack Weinberg <zackw@stanford.edu>
+
+ * toplev.c: Excise all code for the undocumented -dm option.
+ (float_signal): Call signal just once, unconditionally.
+
+2001-04-19 Geoff Keating <geoffk@redhat.com>
+
+ * fold-const.c (fold): Use first_rtl_op rather than
+ TREE_CODE_LENGTH when looping over parameters of a tree.
+ Correct strange grouping in test for evaluated SAVE_EXPR.
+
+Thu Apr 19 19:15:26 2001 Jeffrey A Law (law@cygnus.com)
+
+ * config/pa/pa-linux.h (CPLUSPLUS_CPP_SPEC): Undefine.
+ * config/pa/pa.h (CPLUSPLuS_CPP_SPEC): Define.
+
+ * config/pa/som.h (ASM_OUTPUT_FUNCTION_PREFIX): Truncate subspace
+ name at 32 total characters.
+ (ASM_OUTPUT_SECTION_NAME): Similarly. Also, only support placing
+ functions in named sections -- data items can still go into unique
+ sections, but they have normal names (ie $LIT$ and $DATA$).
+
+ * config/pa/som.h (SUPPORTS_INIT_PRIORITY): SOM does not support
+ INIT_PRIORITY.
+
+2001-04-19 DJ Delorie <dj@redhat.com>
+
+ * config/alpha/vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
+ to TARGET_OBJECT_SUFFIX and TARGET_EXECUTABLE_SUFFIX.
+ * config/i386/cygwin.h: Likewise.
+ * config/i386/mingw32.h: Likewise.
+ * config/vax/vms.h: Likewise.
+ * config/i386/djgpp.h: Remove NO_AUTO_EXE_SUFFIX.
+
+ * config/alpha/xm-vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
+ to HOST_OBJECT_SUFFIX and HOST_EXECUTABLE_SUFFIX.
+ * config/i386/xm-cygwin.h: Likewise.
+ * config/i386/xm-djgpp.h: Likewise.
+ * config/i386/xm-mingw32.h: Likewise.
+ * config/vax/xm-vms.h: Likewise.
+
+ * mkdeps.c (deps_add_default_target): Use TARGET_OBJECT_SUFFIX
+ instead of OBJECT_SUFFIX.
+ * collect2.c (find_a_file): Look for files matching the extension
+ HOST_EXECUTABLE_SUFFIX instead of EXECUTABLE_SUFFIX.
+ * gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION): Depend on
+ TARGET_EXECUTABLE_SUFFIX.
+ (find_a_file): Use HOST_EXECUTABLE_SUFFIX.
+ (make_relative_prefix): Likewise.
+ (convert_filename): Use TARGET_ suffixes throughout. Remove
+ NO_AUTO_EXE_SUFFIX.
+ (process_command): Likewise.
+ (do_spec_1): Likewise.
+ * java/lang.c (init_parse): Likewise.
+
+ * gcc.texi : Document four new options matching the pattern
+ (HOST|TARGET)_(OBJECT|EXECUTABLE)_SUFFIX. Remove documentation
+ for deleted macros OBJECT_SUFFIX and EXECUTABLE_SUFFIX. Remove
+ documentation for NO_AUTO_EXE_SUFFIX.
+
+2001-04-19 Mark Mitchell <mark@codesourcery.com>
+
+ * toplev.h (struct lang_hooks): Allow decode_option to indicate
+ that language-independent processing should not be done.
+ * toplev.c (main): Adjust accordingly.
+
+ * rtl.texi (jump_insn): Expand on JUMP_LABEL documentation.
+ * loop.c (load_mems): Handle a NULL JUMP_LABEL for a JUMP_INSN.
+
+ * mips.md (reload_outputdi): Require that operand0 be a
+ general_operand.
+
+2001-04-19 Jakub Jelinek <jakub@redhat.com>
+
+ * invoke.texi (-Wshadow): Clarify.
+
+2001-04-18 Mark Mitchell <mark@codesourcery.com>
+
+ * loop.c (load_mems): Examine all the instructions in the loop
+ before concluding that all jumps branch to the first instruction
+ after the loop.
+
+Wed Apr 18 20:32:03 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/xm-cygwin.h (CPP_SPEC): Fix typo.
+
+2001-04-18 Jakub Jelinek <jakub@redhat.com>
+
+ * cpp.texi (-Wwhite-space): Remove.
+ (-Wall): -Wall does not imply -Wwhite-space.
+
+2001-04-17 Zack Weinberg <zackw@stanford.edu>
+
+ * dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined,
+ use it instead of blindly generating a .stabs.
+ * xcoffout.h: Define DBX_OUTPUT_GCC_MARKER so we put the type
+ in the right place.
+ * xcoffout.c: Don't bother defining default for N_CATCH.
+ (UNKNOWN_STAB): Use internal_error.
+ (stab_to_sclass): Remove now-unnecessary aborts.
+ Remove #if 0'ed case N_BROWS. Add #ifdef N_OPT block.
+
+Tue Apr 17 21:41:11 2001 Jeffrey A Law (law@cygnus.com)
+
+ * jump.c (mark_all_labels): Canonicalize the tail recursion
+ label attached to CALL_PLACEHOLDER insns.
+
+2001-04-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * output.h (dump_flow_info, free_basic_block_vars,
+ which_alternative): Delete redundant prototypes.
+
+ * rtl.h (bss_section): Likewise.
+
+2001-04-17 Loren J. Rittle <ljrittle@acm.org>
+
+ * dbxout.c (N_OPT): Define if not available from <stab.h>
+
+2001-04-17 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * vax.h (PROMOTE_PROTOTYPES): Define for compatibility with system
+ libraries and native K&R compilers.
+
+2001-04-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-typeck.c (convert_arguments): Don't check for width changes
+ with -Wtraditional.
+
+ * invoke.texi (-Wtraditional): Update documentation.
+
+2001-04-16 Zack Weinberg <zackw@stanford.edu>
+
+ * toplev.c (output_lang_identify): Delete.
+ (compile_file): Don't call ASM_IDENTIFY_GCC or ASM_IDENTIFY_LANGUAGE.
+ Don't generate gcc2_compiled. label. Don't emit a nop if profiling.
+ If IDENT_ASM_OP is defined, emit an .ident "GCC (GNU) <version>"
+ after calling ASM_FILE_END.
+
+ * dbxout.c (dbxout_init): Don't call ASM_IDENTIFY_GCC_AFTER_SOURCE.
+ Instead, unconditionally emit an N_OPT stab with string equal
+ to STABS_GCC_MARKER, which defaults to "gcc2_compiled."
+
+ * defaults.h: Don't provide default for ASM_IDENTIFY_LANGUAGE.
+
+ * config/dbxelf.h, config/freebsd.h, config/nextstep.h,
+ config/psos.h, config/ptx4.h, config/1750a/1750a.h,
+ config/alpha/alpha.h, config/alpha/elf.h, config/arc/arc.h,
+ config/arm/aof.h, config/arm/coff.h, config/arm/elf.h,
+ config/arm/linux-elf.h, config/avr/avr.h, config/d30v/d30v.h,
+ config/dsp16xx/dsp16xx.h, config/h8300/h8300.h,
+ config/i370/i370.h, config/i386/beos-elf.h,
+ config/i386/osf1elf.h, config/i386/osfrose.h,
+ config/ia64/sysv4.h, config/m68k/3b1.h, config/m68k/auxgas.h,
+ config/m68k/crds.h, config/m68k/hp320.h, config/m68k/m68kv4.h,
+ config/m68k/mot3300.h, config/m68k/news.h, config/m68k/sgs.h,
+ config/m68k/tower-as.h, config/mcore/mcore-elf.h,
+ config/mips/iris6.h, config/mips/osfrose.h,
+ config/mips/sni-svr4.h, config/pa/som.h, config/pdp11/pdp11.h,
+ config/sparc/sp64-elf.h:
+ Delete definitions of any or all of: ASM_IDENTIFY_GCC,
+ ASM_IDENTIFY_GCC_AFTER_SOURCE, and ASM_IDENTIFY_LANGUAGE.
+
+ * config/elfos.h, config/freebsd.h, config/linux.h,
+ config/alpha/elf.h, config/arm/linux-elf.h, config/i386/i386elf.h,
+ config/i386/ptx4-i.h, config/mips/gnu.h, config/mips/linux.h,
+ config/sparc/linux.h, config/sparc/linux64.h: Delete definitions
+ of ASM_FILE_START which merely emit a .version directive. Delete
+ definitions of ASM_FILE_END which merely emit an .ident directive.
+
+ * config/avr/avr.h, config/vax/vax.h: Delete definition of
+ ASM_IDENTIFY_GCC and move part of its logic into
+ ASM_FILE_START.
+
+ * config/i386/att.h, config/i386/gas.h, config/i386/linux.h,
+ config/sparc/linux-aout.h: Don't emit .version directive in
+ ASM_FILE_START.
+
+ * config/i386/dgux.c, config/m88k/m88k.c, config/sh/sh.c
+ (output_file_start): Correct comment.
+
+ * config/i386/osfrose.h: Don't emit trailing .ident directive.
+ * config/m68k/mot3300.h: Override STABS_GCC_MARKER to "gcc2_compiled%"
+ to match gdb.
+ * config/pa/lib2funcs.asm: Delete gcc_compiled. label.
+ * config/rs6000/aix.h: Correct comment.
+
+ * config/i386/i386afe.h: Delete.
+ * config.gcc: Remove references to i386afe.h.
+
+ * tm.texi: Delete documentation of ASM_IDENTIFY_GCC. The
+ other macros deleted by this patch were undocumented.
+
+Mon Apr 16 08:03:48 2001 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (reload_outdi): Operand 0 must be a non hard register.
+
+ * pa.c (secondary_reload_class): SAR<->FP copies require a
+ secondary register.
+
+ * install.texi (mips-mips-bsd): Update list of functions
+ required to include memmove.
+ * tm.texi (TARGET_MEM_FUNCTIONS): Update list of implicitly
+ used functions to include memmove.
+
+2001-04-15 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * i386.md (sqrtdf2): SFmode should be DFmode.
+
+2001-04-15 Alexandre Oliva <aoliva@redhat.com>
+
+ * gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable.
+ (find_moveable_store): Likewise.
+
+2001-04-15 Jim Wilson <wilson@redhat.com>
+
+ * function.c (expand_function_end): Handle PARALLEL real_decl_rtl.
+
+Sat Apr 14 16:24:19 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (ashldi3_1_rex64): Add 'J' to the constraints
+ (ashrdi3_1_rex64): Change 'n' constraint to 'J'.
+
+2001-04-14 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the
+ first alternative.
+
+2001-04-14 Alan Modra <amodra@one.net.au>
+
+ * pa.c (force_mode): New function.
+ (emit_move_sequence): Use it instead of generating new rtx_REGs.
+
+2001-04-13 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.c (ia64_expand_epilogue): Emit alloc if sibcall_p.
+ (first_instruction): New static variable.
+ (rtx_needs_barrier): Return 1 for alloc.
+ (init_insn_group_barriers): Set first_instruction.
+ (rws_sum): Delete duplicate definition.
+ (group_barrier_needed_p): Return 0 when first_instruction true.
+ (safe_group_barrier_needed_p): Save and restore first_instruction
+ around group_barrier_needed_p call.
+
+Fri Apr 13 21:40:28 2001 Loren J. Rittle <ljrittle@acm.org>
+
+ * expr.h (enum libfunc_index): Add LTI_memmove.
+ (memmove_libfunc): Define macro.
+ * optabs.c (init_optabs): Initialize memmove_libfunc.
+ * expr.c (expand_assignment): Use memmove_libfunc instead of
+ memcpy_libfunc.
+
+2001-04-13 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.h (GO_IF_LEGITIMATE_ADDRESS): Disallow PIC LO_SUM
+ fp mode addresses.
+
+2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (reg-stack.o): Depend on reload.h.
+ (insn-attrtab.o): Depend on flags.h.
+
+ * genattrtab (main): Include flags.h in insn-attrtab.c.
+
+ * reg-stack.c: Include reload.h.
+
+ * sparc.h (flag_pic): Delete redundant declaration.
+
+ * output.h (flag_pic): Likewise.
+
+ * tree.h (pedantic): Likewise.
+
+2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (toplev.o, jump.o, regmove.o): Depend on reload.h
+
+ * jump.c, regmove.c, toplev.c: Include reload.h.
+
+ * reload.h (reload_cse_regs): Declare.
+
+ * rtl.h (find_equiv_reg, operands_match_p, safe_from_earlyclobber,
+ reload_cse_regs, init_reload, mark_home_live, reload,
+ init_caller_save): Delete redundant prototypes.
+
+2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (ssa.o, regclass.o): Depend on $(EXPR_H).
+
+ * regclass.c, ssa.c: Include expr.h.
+
+ * rtl.h (memory_address, force_reg, emit_queue, emit_move_insn,
+ gen_move_insn): Delete redundant declarations.
+
+2001-04-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * Makefile.in (CFLAGS, BOOT_CFLAGS): Partly revert 2000-10-27 patch.
+ (stage1_build): Instead pass down STAGE1_CFLAGS here. Pass down
+ MAKEINFO and MAKEINFOFLAGS too.
+ (stage4_build): Correctly order -B flags.
+
+2001-04-13 Alan Modra <amodra@one.net.au>
+
+ * pa.c (hppa_init_pic_save): Set rtx_unchanging for
+ PIC_OFFSET_TABLE_SAVE_RTX.
+ (zdepi_cint_p): Describe zdepi insn.
+ Formatting and white space fixes throughout file.
+
+ * pa.c (uint32_operand): Don't use long constant >= 2^32.
+ (emit_move_sequence): Use HOST_WIDE_INT constants. Don't worry
+ about 32->64 bit sign extension if 32 bit HOST_WIDE_INTs.
+ (compute_movstrsi_length): Make `align' unsigned to avoid warning.
+ (output_64bit_and): Use plain `int's for shift counts.
+ (output_64bit_ior): Likewise.
+ (function_arg_partial_nregs): Use unsigned vars to avoid warnings.
+ * pa.h (CONST_OK_FOR_LETTER_P): Use HOST_WIDE_INT constants for case
+ `N', and simplify.
+
+ * pa-hpux10.h (NEW_HP_ASSEMBLER): Define to 1.
+ * pa-hpux11.h (NEW_HP_ASSEMBLER): Likewise.
+ * pa.h (LEGITIMATE_CONSTANT_P) Collapse two defines depending on
+ NEW_HP_ASSEMBLER into one. Kill warnings.
+
+ * pa-gas.h: Delete file.
+ * config.gcc: Match `parisc' as well as `hppa' for cpu_type=pa.
+ Add new targets hppa*64*-*-linux* and parisc*64*-*-linux*. Update
+ hppa*-*-linux*. For all pa targets, remove pa/gas.h from tm_file,
+ instead setting MASK_GAS | MASK_JUMP_IN_DELAY in target_cpu_default2.
+
+ * config/pa/mill32.S: New file.
+ * config/pa/mill64.S: New file.
+ * config/pa/t-linux (LIBGCC1, CROSS_LIBGCC1, LIB1ASMFUNCS,
+ LIB1ASMSRC, CRTSTUFF_T_CFLAGS_S, TARGET_LIBGCC2_CFLAGS): Define.
+ * config/pa/t-linux64: New file.
+ * config/pa/t-pa64 (CROSS_LIBGCC1): Change to libgcc1-asm.a
+ (LIB1ASMFUNCS, LIB1ASMSRC): Define.
+ (TARGET_LIBGCC2_CFLAGS): Add -Dpa64=1 -DELF=1.
+
+ * elfos.h (SELECT_SECTION): Undef before defining.
+ * pa-linux.h (LINUX_DEFAULT_ELF, PTRDIFF_TYPE, CPP_SPEC): Remove.
+ (LIB_SPEC): Remove -lmilli.
+ (DBX_REGISTER_NUMBER): Remove.
+ (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
+ (DWARF2_UNWIND_INFO, ASM_SPEC, LINK_SPEC, FUNCTION_OK_FOR_SIBCALL,
+ NO_PROFILE_COUNTERS, SELECT_RTX_SECTION, INCOMING_RETURN_ADDR_RTX,
+ DWARF_FRAME_RETURN_COLUMN, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_FILE_START,
+ ASM_OUTPUT_DEF, ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
+ ASM_OUTPUT_LABEL, ASM_GLOBALIZE_LABEL, ASM_DECLARE_FUNCTION_NAME,
+ TARGET_GAS): Define.
+ * pa.c (output_arg_descriptor): Disable for TARGET_ELF32.
+ (function_arg): If TARGET_ELF32, pass fp args in both general and fp
+ regs if we don't have a prototype.
+ * pa.md (canonicalize_funcptr_for_compare): Not for TARGET_ELF32.
+ * pa.h (TARGET_ELF32): Default to 0 if undefined.
+ (EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX,
+ EH_RETURN_HANDLER_RTX): Define.
+ * pa32-regs.h (DBX_REGISTER_NUMBER): Remove unnecessary test.
+ (DWARF_FRAME_REGNUM): Define.
+ * pa64-regs.h (DWARF_FRAME_REGNUM): Define.
+ * pa32-linux.h: New file.
+ * pa64-linux.h: New file.
+
+ * pa-64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
+ (ASM_OUTPUT_DOUBLE_INT): Format, protect macro with do..while.
+ (LINK_SPEC, LIB_SPEC, MD_EXEC_PREFIX, MD_STARTFILE_PREFIX,
+ NEW_HP_ASSEMBLER, ASM_FILE_START, OBJECT_FORMAT_ELF,
+ DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_FORMAT,
+ DWARF2_ASM_LINE_DEBUG_INFO, USE_CONST_SECTION, CONST_SECTION_ASM_OP,
+ CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
+ FINI_SECTION_ASM_OP, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS,
+ READONLY_DATA_SECTION, CONST_SECTION_FUNCTION, CTORS_SECTION_FUNCTION,
+ DTORS_SECTION_FUNCTION, ASM_OUTPUT_SECTION_NAME, MAKE_DECL_ONE_ONLY,
+ UNIQUE_SECTION_P, UNIQUE_SECTION, INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
+ ASM_OUTPUT_DESTRUCTOR, TYPE_ASM_OP, SIZE_ASM_OP, ASM_WEAKEN_LABEL,
+ TYPE_OPERAND_FMT, ASM_DECLARE_RESULT): Move to..
+ * pa64-hpux.h: New file.
+ (ASM_FILE_START): Correct typo.
+ (PREFERRED_DEBUGGING_FORMAT): Rename to PREFERRED_DEBUGGING_TYPE.
+ * config.gcc: Modify for above.
+
+Fri Apr 13 00:09:22 EDT 2001 John Wehle (john@feith.com)
+
+ * jump.c (jump_optimize_1): Don't delete dead stores here.
+ * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns
+ prior to running jump optimize before cse2.
+
+2001-04-12 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (regmove.o): Depend on except.h.
+ * regmove.c: Include it.
+
+2001-04-12 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c: Remove all code ifdefed with the never-used
+ macro OBJC_INT_SELECTORS.
+ * config/d30v/d30v.h: Remove commented-out ref to OBJC_INT_SELECTORS.
+ * tm.texi: Remove doc for OBJC_INT_SELECTORS.
+
+Thu Apr 12 18:13:37 2001 Rodney Brown <RodneyBrown@mynd.com>
+
+ * config/pa/quadlib.c: Add prototypes.
+
+2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * bitmap.h (debug_bitmap): Delete redundant prototype.
+
+ * rtl.h (get_frame_size): Likewise.
+
+2001-04-12 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Simplify
+ to just emit an fnorm.
+
+2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.h (truthvalue_conversion, type_for_mode,
+ type_for_size): Delete redundant declarations.
+
+ * c-lex.h (is_class_name): Likewise.
+
+ * c-tree.h (pedantic, convert, getdecls, gettags,
+ global_bindings_p, init_decl_processing, insert_block,
+ maybe_build_cleanup, poplevel, print_lang_decl,
+ print_lang_identifier, print_lang_type, pushdecl, pushlevel,
+ set_block, incomplete_type_error, build_function_call,
+ lvalue_or_else, mark_addressable): Likewise.
+
+ * expr.h (expand_tree_builtin): Likewise.
+
+2001-04-12 Mark Mitchell <mark@codesourcery.com>
+
+ * invoke.texi: Document --param max-gcse-memory.
+
+2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in (errno): Check for declaration.
+ * configure, config.in: Regenerated.
+
+ * system.h (errno): Only declare if not already done.
+
+2001-04-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * recog.c (general_operand, immediate_operand,
+ nonmemory_operand): Require CONST_INTs to be sign-extended
+ values for their modes.
+
+2001-04-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * expmed.c (store_bit_field): Truncate CONST_INTs.
+ (expand_mult_highpart, expand_divmod): Likewise.
+ * expr.c (convert_modes, store_field): Likewise.
+ * integrate.c (expand_inline_function): Use promote_mode() to
+ determine whether to convert_modes() an argument as signed
+ or unsigned.
+ * optabs.c (expand_binop): Get CONST_INT operands
+ sign-extended for their appropriate modes.
+ * stmt.c (emit_case_nodes): Convert node values to the
+ appropriate mode.
+ (expand_end_case): Convert minval and range to the appropriate
+ mode.
+ * unroll.c (loop_iterations): Truncate abs_diff to the mode of
+ the iteration variable.
+ * varasm.c (immed_double_const): Don't require words to be
+ narrower than host wide ints to properly sign-extend
+ CONST_INTs.
+
+2001-04-12 kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sh.md (builtin_setjmp_receiver): New expander.
+
+2001-04-12 David Edelsohn <dje@watson.ibm.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): Do not
+ special-case HOST_BITS_PER_WIDE_INT != 32. Use same criteria
+ for generating CONST_INT and CONST_DOUBLE.
+
+2001-04-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/rs6000/rs6000.c (logical_operand): CONST_INTs are
+ already sign-extended.
+ (rs6000_emit_prologue): Make register iterator signed.
+ (rs6000_emit_epilogue): Likewise.
+ * config/rs6000/rs6000.md (addsi3, adddi3): Sign-extend high
+ and low.
+ (movsf split, movdf split): Sign-extend CONST_INTs.
+ (movdi splits): Likewise.
+
+2001-04-12 Kelley Cook <kelley.cook@home.com>
+
+ * config-lang.in (lang_dirs): Add in zlib.
+
+2001-04-11 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/i386/i386.md: Apply trunc_int_for_mode() to GEN_INT
+ operands that make it to RTL.
+
+2001-04-11 Stan Shebs <shebs@apple.com>
+
+ Add Darwin (Mac OS X kernel) native support.
+ * config.gcc (powerpc-*-darwin*): Add native bits.
+ * config/darwin.c: New file, generic Darwin support functions.
+ * config/darwin.h: New file, generic Darwin definitions.
+ * config/darwin-protos.h: New file, generic Darwin prototypes.
+ * rs6000/darwin.h: New file, Darwin for PowerPC.
+ * rs6000/t-darwin: New file, Darwin makefile fragment.
+ * rs6000/rs6000.h (OBJECT_MACHO): New macro.
+ (TARGET_MACHO): Ditto.
+ (rs6000_abi): Add ABI_DARWIN.
+ (RS6000_REG_SAVE): Add ABI_DARWIN case.
+ (RS6000_SAVE_AREA): Ditto.
+ (FP_ARG_MAX_REG): Ditto.
+ (RETURN_ADDRESS_OFFSET): Ditto.
+ * rs6000/rs6000.c (rs6000_legitimize_address): Add TARGET_MACHO
+ cases.
+ (rs6000_emit_move): Add ABI_DARWIN cases.
+ (print_operand): Ditto.
+ (first_reg_to_save): Ditto.
+ (rs6000_stack_info): Ditto, also align stack by 16 instead of 8.
+ (debug_stack_info): Ditto.
+ (rs6000_emit_prologue): Ditto.
+ (rs6000_emit_epilogue): Ditto.
+ (output_profiler_hook): Ditto.
+ (output_function_profiler): Ditto.
+ (rs6000_add_gc_roots): Call machopic_add_gc_roots if TARGET_MACHO.
+ (output_mi_thunk): Add TARGET_MACHO case.
+ (add_compiler_stub): Ditto.
+ (output_compiler_stub): Ditto.
+ (no_previous_def): Ditto.
+ (output_call): Ditto.
+ (machopic_output_stub): Ditto.
+ (rs6000_machopic_legitimize_pic_address): Ditto.
+ (toc_section): Ditto.
+ * rs6000/rs6000.md (addsi3_high): New TARGET_MACHO pattern.
+ (macho_high): Ditto.
+ (macho_low): Ditto.
+ (movsi_low): Ditto.
+ (load_macho_picbase): Ditto.
+ (call): Add TARGET_MACHO case to modify function.
+ (call_value): Ditto.
+ (call_nonlocal_sysv): Add ABI_DARWIN case.
+ (call_value_nonlocal_sysv): Ditto.
+ * rs6000/rs6000-protos.h (rs6000_machopic_legitimize_pic_address):
+ Add prototype.
+ (machopic_output_stub): Ditto.
+ * ginclude/stddef.h: Test _BSD_WCHAR_T_DEFINED_.
+
+2001-04-11 Mark Mitchell <mark@codesourcery.com>
+
+ * dwarf2out.c (modified_type_die): Don't create new types here.
+ * tree.h (get_qualified_type): New function.
+ (build_qualified_type): Adjust comment.
+ * tree.c (get_qualified_type): New function.
+ (build_qualified_type): Use it.
+
+2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cpp.texi (-Wtraditional): Update description.
+
+ * invoke.texi (-Wtraditional): Likewise.
+
+2001-04-11 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Return 128 if argument
+ requires more than 64 bits of alignment.
+
+2001-04-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.c (do_line): Sanity check iff enable checking.
+
+2001-04-11 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (insn-recog.o): Depend on toplev.h.
+ (insn-emit.o, doloop.o): Likewise.
+ * genrecog.c, genemit.c: Include toplev.h in generated file.
+ * doloop.c: Include toplev.h.
+
+2001-04-11 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (gcse.o): Depend on params.h.
+ * gcse.c: Include params.h.
+ (gcse_main): Don't do GCSE if doing so will take inordinate
+ amounts of memory.
+ * params.def (PARAM_MAX_GCSE_MEMORY): New parameter.
+ * params.h (MAX_GCSE_MEMORY): New macro.
+
+2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (insn-output.o): Depend on $(EXPR_H).
+
+ * genoutput.c (output_prologue): Include expr.h in insn-output.c.
+
+2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * output.h (assemble_real): Declare if REAL_VALUE_TYPE is defined.
+
+ * real.h (ereal_atof, real_value_truncate, target_isnan,
+ target_isinf, target_negative, assemble_real, debug_real): Delete
+ redundant prototypes.
+
+ * Makefile.in (ifcvt.o): Depend on toplev.h.
+
+ * c-semantics.c: Include expr.h.
+
+ * ifcvt.c: Include toplev.h.
+
+ * expr.h (rtx_equal_p): Delete prototype.
+
+ * rtl.h (exact_log2_wide, floor_log2_wide, permalloc,
+ protect_from_queue, gen_jump, gen_beq, gen_bge, gen_ble,
+ eliminate_constant_term, expand_complex_abs, find_single_use,
+ make_tree, init_expr_once, init_optabs, supports_one_only):
+ Likewise.
+
+ * tree.h (exact_log2_wide, floor_log2_wide, expand_null_return,
+ rest_of_type_compilation, emit_queue, do_pending_stack_adjust,
+ expand_assignment, store_expr, emit_line_note_after,
+ emit_line_note_force, split_specs_attrs, label_rtx): Likewise.
+
+ * toplev.h (exact_log2_wide, floor_log2_wide): Add prototype.
+
+ * sparc-protos.h: Delete redundant prototypes.
+
+2001-04-11 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
+
+ * reload.c (push_reload): Add condition missed in SUBREG byte
+ offset patch.
+
+Wed Apr 4 00:28:23 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * sparc/sol2-sld-64.h (STARTFILE_SPEC): Added missing blank.
+
+Wed Apr 11 14:06:10 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (floatsisf_sse): Fix output template
+ * i386.c (ix86_expand_fp_movcc)
+
+ * reg-stack.c (emit_pop_insn): Handle complex modes.
+ (move_for_stack_reg): Emit proper move mode.
+ (subst_stack_regs_pat): Handle complex modes.
+
+2001-04-11 Jakub Jelinek <jakub@redhat.com>
+
+ * cpplex.c (_cpp_lex_token): Only warn if -Wcomment.
+
+2001-04-10 Richard Henderson <rth@redhat.com>
+
+ * libgcc2.h (__terminate_func_ptr): Remove typedef.
+ (__pure_virtual, __terminate, __terminate_set_func,
+ __default_terminate, __throw_type_match, __empty,
+ __get_eh_context, __get_eh_info, __get_dynamic_handler_chain,
+ __eh_rtime_match, __unwinding_cleanup, __rethrow,
+ __sjthrow, __sjpopnthrow, __eh_alloc, __eh_free):
+ Remove prototypes of deleted functions.
+
+2001-04-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-typeck.c (convert_arguments): -Wtraditional now activates
+ -Wconversion warnings, except for changes in signed-ness.
+ Detect complex<->int & int<->complex conversions as well.
+
+ * invoke.texi (-Wtraditional): Document it.
+
+Tue Apr 10 17:45:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * gcse.c (update_ld_motion_stores): Don't use variable I for an insn.
+ * flow.c (set_block_for_new_insns): Remove needless cast and
+ properly check for unset block number.
+
+2001-04-10 Andrew MacLeod <amacleod@redhat.com>
+
+ * function.c (purge_single_hard_subreg_set): Only check REGNO if
+ the subreg was a hard register. Pseudos are left as subregs.
+
+2001-04-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * Makefile.in (LIB2FUNCS_STATIC_EXTRA): New macro.
+ (LIB2ADD_ST): New macro, pass it to mklibgcc.
+ * mklibgcc.in (libgcc2_st_objs): New variable, set it from LIB2ADD_ST.
+ (libgcc_st_objs): New, set from libgcc2_st_objs. Use it for libgcc.a.
+ * config/rs6000/t-ppccomm (LIB2FUNCS_STATIC_EXTRA): New macro.
+
+2001-04-09 Bo Thorsen <bo@suse.co.uk>
+
+ * config/i386/i386.md: "TARGET_64BIT && TARGET_64BIT": Removed one.
+
+2001-04-09 Andrew MacLeod <amacleod@redhat.com>
+
+ * output.h (set_block_num): Missed it earlier, remove deprecated
+ prototype.
+
+2001-04-09 Andrew MacLeod <amacleod@redhat.com>
+
+ * gcse.c (oprs_unchanged_p): Pass basic_block to load_killed_in_block_p.
+ (load_killed_in_block_p): Change bb parameter from int to basic_block.
+ (oprs_not_set_p): Pass basic_blocks instead of ints as parameters.
+ (handle_rd_kill_set): Change bb parameter from int to basic_block.
+ (compute_kill_rd): Pass basic_blocks instead of ints as parameters.
+ (expr_killed_p): Change bb parameter from int to basic_block, pass
+ basic_blocks instead of ints as parameters.
+ (compute_ae_kill): Pass basic_blocks instead of ints as parameters.
+ (expr_reaches_here_p_work, expr_reaches_here_p): Change bb parameter
+ from int to basic_block, pass basic_blocks instead of ints as parms.
+ (pre_expr_reaches_here_p_work, pre_expr_reaches_here_p): Change bb
+ parameter from int to basic_block, pass basic_blocks instead of ints.
+ (process_insert_insn): Pass basic_blocks instead of ints as parameters.
+ (insert_insn_end_bb): Change bb parameter from int to basic_block,
+ pass basic_blocks instead of ints.
+ (pre_edge_insert, pre_insert_copy_insn, pre_insert_copies): Pass
+ basic_blocks instead of ints as parameters.
+ (pre_delete): Pass basic_blocks instead of ints as parameters.
+ (hoist_expr_reaches_here_p): Change bb parameter from int to
+ basic_block, pass basic_blocks instead of ints.
+ (hoist_code): Pass basic_blocks instead of ints as parameters.
+ (reg_set_info, store_ops_ok, store_killed_after, store_killed_before):
+ Change bb parameter from int to basic_block.
+ (build_store_vectors): Pass basic_blocks instead of ints as parameters.
+ (insert_insn_start_bb): Change bb parameter from int to basic_block,
+ pass basic_blocks instead of ints.
+ (insert_store): Pass basic_blocks instead of ints as parameters.
+ (replace_store_insn, delete_store): Change bb parameter from int to
+ basic_block, pass basic_blocks instead of ints.
+ (store_motion): Pass basic_blocks instead of ints as parameters.
+
+2001-04-09 Andrew MacLeod <amacleod@redhat.com>
+
+ * basic-block.h (set_new_block_for_insns): New Prototype.
+ (set_block_num): Delete prototype.
+ * flow.c (set_block_num): Remove obsolete function.
+ (set_block_for_new_insns): Set BB for single or multiple insns.
+ * gcse.c (handle_avail_expr): Use set_block_for_new_insns.
+ (process_insn_end_bb): Use set_block_for_new_insns or
+ set_block_for_insn instead of set_block_num.
+ (pre_insert_copy_insn): Use set_block_for_new_insns.
+ (update_ld_motion_stores): Use set_block_for_new_insns.
+ (insert_insn_start_bb): Use set_block_for_new_insns.
+ (replace_store_insn): Use set_block_for_new_insns.
+
+2001-04-09 Andrew MacLeod <amacleod@redhat.com>
+ Jeff Law <law@redhat.com>
+
+ * alias.c (get_addr): Externalize.
+ (canon_true_dependence): New function. Behaves like true_dependance
+ except it already assumes a MEM has been canonicalized.
+ * flags.h (flag_gcse_lm, flag_gcse_sm): New optimization flags.
+ * gcse.c (struct ls_expr): Add load/store expressions structure.
+ (modify_mem_list, canon_modify_mem_list): New variable.
+ (gcse_main): Initialize & finalize alias analysis. Use enhanced
+ load motion and store motion if requested.
+ (alloc_gcse_mem): Allocate space for modify_mem_list array.
+ (free_gcse_mem): Free the modify_mem_list array.
+ (oprs_unchanged_p): Use load_killed_in_block_p.
+ (gcse_mems_conflict_p, gcse_mem_operand): New variables.
+ (mems_conflict_for_gcse_p): New function. Don't kill loads
+ with stores to themselves if its in the load/store expression list.
+ (load_killed_in_block_p): New function.
+ (canon_list_insert): New Function.
+ (record_last_mem_set_info): Keep a list of all instructions which
+ can modify memory for each basic block.
+ (compute_hash_table, reset_opr_set_tables): Clear modify_mem_list.
+ (oprs_not_set_p): Use load_killed_in_block_p.
+ (mark_call, mark_set, mark_clobber): Use record_last_mem_set_info.
+ (expr_killed_p): Use load_killed_in_block_p.
+ (compute_transp): Do not pessimize memory references.
+ (pre_edge_insert): Update stores for a load motion expression.
+ (one_pre_gcse_pass): Check loads/stores for extra load motion.
+ (ldst_entry): Find or create a ldst_expr structure.
+ (free_ldst_entry): Free memory for an individual item.
+ (free_ldst_mems): Free entire load/store expression list.
+ (print_ldst_list): Print debug info.
+ (find_rtx_in_ldst): Try to find an rtx expression in the ldst list.
+ (enumerate_ldsts): Assign integer values to each entry in list.
+ (first_ls_expr): First expression in the list.
+ (next_ls_expr): Next expression in the list.
+ (simple_mem): Check if expression qualifies for ld/st expression list.
+ (invalidate_any_buried_refs): Remove from expression list if its
+ used in some other way we don't understand.
+ (compute_ld_motion_mems): Find all potential enhanced load motion
+ expression.
+ (trim_ld_motion_mems): Remove any expressions which are invalid.
+ (update_ld_motion_stores): Copy store values to registers for loads
+ which have been moved.
+ (regvec, st_antloc, num_store): New global statics.
+ (reg_set_info): Marks registers as set.
+ (store_ops_ok): Verfies registers expressions are valid in a block.
+ (find_moveable_store): Look for moveable stores in a pattern.
+ (compute_store_table): Find stores in a function worth moving, maybe.
+ (load_kills_store): Check dependence of a load and store.
+ (find_loads): Find any loads in a pattern.
+ (store_killed_in_insn): Check if a store is killed in an insn.
+ (store_killed_after): Check is store killed after an insn in a block.
+ (store_killed_before): Check is store killed before an insn in a block.
+ (build_store_vectors): Generate the antic and avail vectors.
+ (insert_insn_start_bb): Insert at the start of a BB, update BLOCK_HEAD.
+ (insert_store): Add a store to an edge.
+ (replace_store_insn): Replace a store with a SET insn.
+ (delete_store): Delete a store insn.
+ (free_store_memory): Free memory.
+ (store_motion): Perform store motion.
+ * invoke.texi: Add documentation for -fcse-lm and -fgcse-sm.
+ * rtl.h (get_addr, canon_true_dependence): Add prototypes.
+ * toplev.c (flag_gcse_lm, flag_gcse_sm): New Variables.
+ (f_options): Add gcse-lm and gcse-sm.
+
+Mon Apr 9 16:18:03 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (expand_fp_movcc): Fix condition reversal code.
+
+ * i386.c (ix86_register_move_cost): Fix handling of reformating penalty
+ * i386.h (INTEGER_CLASS_P, MAYBE_INTEGER_CLASS_P): New.
+ (CLASS_MAX_NREGS): Use it.
+
+ * i386.h (HARD_REGNO_NREGS): Handle properly TF and TCmodes on 64bit;
+ handle properly complex values.
+ (CLASS_MAX_NREGS): Likewise; update comment.
+
+2001-04-05 Bernd Schmidt <bernds@redhat.com>
+
+ * ia64.c (ia64_flag_schedule_insns2): New variable.
+ (ia64_override_options): Initialize it. Clear
+ flag_schedule_insns_after_reload.
+ (ia64_reorg): Only do scheduling if ia64_flag_schedule_insns2.
+
+Mon Apr 9 15:09:13 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (truncdfsf2_*): Add i387->int/sse reg alternatives;
+ Do not require source to match destination anymore;
+ Add abort to the nontrivial cases that should be handled by split.
+ (fix_trunc?fdi): Add SSE case for x86_64.
+ (floatdi?f): Likewise.
+ (floatdi?f_sse): New.
+ (fix_trunc?fdi_sse): New.
+
+2001-04-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * dwarfout.c (DEBUG_ARANGES_BEGIN_LABEL): New label.
+ (DEBUG_ARANGES_END_LABEL): Ditto.
+ (dwarfout_init): Generate length and version fields at the start
+ of the .debug_aranges info. Insert DEBUG_ARANGES_BEGIN_LABEL
+ after the length field.
+ (dwarfout_finish): Insert DEBUG_ARANGED_END_LABEL at the end of
+ the .debug_aranges info.
+
+Sun Apr 8 00:43:27 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (call, call_value): Make sure that resulting call_insn
+ does have proper second operand.
+
+Sun Apr 8 22:50:49 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/xm-cygwin.h (GET_ENV_PATH_LIST): Eliminate obsolete
+ function. Remove include of sys/cygwin.h.
+
+Sun Apr 8 22:20:27 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h (STARTFILE_SPEC): search */lib/w32api by default.
+ (CPP_SPEC): Always search */include/w32api for header files.
+ (ASM_OUTPUT_SECTION_NAME): Avoid testing NULL DECL.
+ (LINK_SPEC): Add "cyg" to the library search prefixes.
+
+2001-04-08 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.h (ASM_OUTPUT_LABELREF): Use asm_fprintf.
+
+2001-04-08 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpperror.c (print_location): Don't special case <stdin>.
+ (_cpp_begin_message): Handle WARNING_SYSHDR the same as
+ WARNING, but we don't check if we're in system headers.
+ * cpplib.h (enum error_type): WARNING_SYSHDR: New.
+ * cpplib.c (do_warning): Warn in system headers.
+
+2001-04-07 Mumit Khan <khan@NanoTech.Wisc.EDU>
+
+ * mbchar.c: Include config.h first.
+
+2001-04-07 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc: Set default for xmake_file at top, not bottom.
+ Change places that set xmake_file to "none" to set to the
+ empty string instead, or remove them entirely if there is no
+ default xmake_file for this cpu_type. Remove references to
+ deleted files.
+
+ * config/x-lynx, config/convex/x-convex, config/elxsi/x-elxsi,
+ config/i386/x-isc, config/i386/x-isc3, config/i386/x-ncr3000,
+ config/i386/x-next, config/i386/x-sco, config/i386/x-sysv3,
+ config/i386/x-vsta, config/i860/x-sysv4, config/m68k/x-amix,
+ config/m68k/x-apollo68, config/m68k/x-ccur, config/m68k/x-crds,
+ config/m68k/x-hp2bsd, config/m68k/x-mot3300, config/m68k/x-mot3300-gas,
+ config/m68k/x-tower, config/m88k/x-sysv4, config/mips/x-dec-osf1,
+ config/mips/x-sni-svr4, config/mips/x-ultrix, config/romp/x-mach,
+ config/romp/x-romp, config/rs6000/x-beos, config/rs6000/x-lynx,
+ config/rs6000/x-mach, config/rs6000/x-sysv4, config/sparc/x-sysv4:
+ Delete.
+
+ * config/a29k/x-unix, config/i386/x-aix, config/i386/x-osf1elf,
+ config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
+ config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
+ config/mips/x-sysv, config/rs6000/x-aix31:
+ Just set CLIB to -lld or -lmld, as appropriate.
+
+ * config/arm/x-riscix, config/i370/x-oe, config/i386/x-dgux,
+ config/i386/x-sco4, config/i386/x-sco5, config/m68k/x-hp320,
+ config/m68k/x-hp320g, config/m68k/x-next, config/m88k/x-dgux,
+ config/mips/x-iris, config/pa/x-pa:
+ Just set (some of) FIXPROTO_DEFINES, STMP_FIXPROTO,
+ OTHER_FIXINCLUDES_DIRS.
+
+ * config/i386/x-djgpp: Don't set LN or LN_S.
+ * config/m88k/x-dolph: Don't define __m88k__.
+ * config/m88k/x-tekXD88: Don't set AR_FLAGS.
+ * config/pa/x-pa-mpeix: Just set up quadlib.asm.
+ * config/i860/fx2800.h: No need to #undef SVR4.
+
+ 38 x-host fragments remain, 2 x-cpu.
+
+2001-04-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x.h (HARD_REGNO_NREGS): HCmode mode uses 2 regs not 4.
+
+2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.c (cpp_push_buffer): Give stdin buffers the name <stdin>.
+
+2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * configure.in: Add check for lstat.
+ * configure, config.in: Regenerate.
+ * cppinit.c (append_include_chain): Make empty path ".".
+ * cpplib.c (do_line): Don't simplify #line paths.
+ * cppfiles.c (remove_component_p): New function.
+ (find_or_create_entry): Acknowledge stat () errors during
+ path simplification.
+ (handle_missing_header): Don't simplify paths.
+ (_cpp_simplify_pathname): Don't simplify VMS paths. Return
+ the empty path untouched. Don't leave a trailing '/'.
+
+2001-04-06 Benjamin Kosnik <bkoz@redhat.com>
+
+ * cppdefault.c (GPLUSPLUS_BACKWARD_INCLUDE_DIR): Add.
+ * Makefile.in (-DGPLUSPLUS_BACKWARD_INCLUDE_DIR): Add.
+
+2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (open_file): Fail directories silently, but
+ with an errno of NOENT set.
+ (read_include_file): Move the common exit code to the sole
+ caller. Return an int indicating success or failure. Let
+ open_file handle directories.
+ (stack_include_file): If read_include_file fails,
+ push a "null" buffer.
+
+2001-04-05 DJ Delorie <dj@redhat.com>
+
+ * function.h (virtuals_instantiated): Declare.
+ * function.c: (virtuals_instantiated): Make global.
+ * calls.c (emit_library_call_value_1): Use
+ virtual_outgoing_args_rtx only if it hasn't been instantiated.
+ Otherwise, use the stack pointer directly.
+
+Thu Apr 5 19:13:33 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_initialize_trampoline): New global function.
+ * i386.h (TRAMPOLINE_SIZE): Size is 23 for x86_64.
+ (INITIALIZE_TRAMPOLINE): Move offline.
+ * i386-protos.h (x86_initialize_trampoline): Declare.
+
+Thu Apr 5 19:02:15 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movdi_1_rex64): Allow SSE->SSE reg move.
+ (lea_0): Rename to lea_1.
+ (lea_1_zext, lea_1_rex64, lea_2_rex64): New patterns.
+ (lea_general_?): Allow SImodes on TARGET_64BIT
+ (lea_general_?_zext): New patterns.
+ (call_1, call_1_rex64): Fix.
+
+Thu Apr 5 19:00:15 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_split_long_move): Use PUT_MODE instead of change_address.
+
+Thu Apr 5 18:25:56 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (function_arg): Return constm1_rtx for last argument.
+ (ix86_expand_prologue): Update gen_call calls.
+ * i386.h (FUNCTION_BLOCK_PROFILER_EXIT): Likewise.
+ * i386.md (call_pop): Likewise.
+ (call): Second operand is VOIDmode.
+ (call_0): Likewise; Support 64bits.
+ (call_exp): New expander.
+ (call_1): Get to the sync.
+ (call_1_exp): New pattern.
+ (call_value): Support 64bit.
+ (call_value_exp): New pattern.
+ (untyped_call): Update gen_call call.
+ (call_value_pop): Disable for 64bit.
+ (call_value_0_rex64): New pattern.
+ (call_value_1_rex64): Likewise.
+
+2001-04-05 Bo Thorsen <bo@suse.de>
+
+ * i386.md: Don't allow "builtin_setjmp_receiver" for TARGET_64BIT.
+
+Thu Apr 5 13:44:17 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * i386.md (*andsi_1+3): If used after reload, make sure the operand
+ satisfies ANY_QI_REG_P.
+
+2001-04-05 Bernd Schmidt <bernds@redhat.com>
+
+ * config/ia64/ia64.c (rtx_needs_barrier): A PARALLEL can contain
+ ASM_OPERAND.
+
+ * sched-deps.c (sched_analyze_insn): Revert more of the March 27
+ change.
+
+2001-04-04 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc: Remove default for xm_file. Clean up local
+ machine type handling. Remove settings of xm_file to
+ something that doesn't exist. In the big switch, set xm_file,
+ don't append to it (the value before the big switch is always
+ null). Don't force build_xm_file or host_xm_file to have a value.
+ * configure.in: Remove default for xm_file. Do not special
+ case $cpu/xm-$cpu.h not existing.
+ * configure: Regenerate.
+
+2001-04-04 Diego Novillo <dnovillo@redhat.com>
+
+ * simplify-rtx.c (simplify_binary_operation): Check for overflow
+ when folding integer division and modulo operations.
+
+2001-04-04 Andrew MacLeod <amacleod@redhat.com>
+
+ * dwarf2out.c (output_cfi): Add 'for_eh' parameter, use PTR_SIZE
+ instead of DWARF2_ADDR_SIZE for EH addresses.
+ (output_call_frame_info): Use PTR_SIZE instead of DWARF2_ADDR_SIZE for
+ EH addresses.
+
+2001-04-04 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.h (IA64_UNWIND_INFO): Disable.
+ * config/ia64/t-glibc (LIB2ADDEH): Disable.
+ * config/ia64/t-ia64 (LIB2ADDEH): Disable.
+
+2001-04-04 Richard Henderson <rth@redhat.com>
+
+ * configure.in (gcc_cv_as_leb128): Escape "." in regexp.
+ * configure: Rebuilt.
+
+2001-04-04 Jakub Jelinek <jakub@redhat.com>
+
+ * gcse.c (delete_null_pointer_checks_1): Add delete_list argument,
+ push insns to delete to it instead of deleting them.
+ (delete_null_pointer_checks): Delete insns from delete_list after
+ all delete_null_pointer_checks_1 passes are done.
+
+2001-04-04 Richard Henderson <rth@redhat.com>
+
+ * configure.in (gcc_cv_as_leb128): Tweek minor number extraction.
+ * configure: Rebuilt.
+
+2001-04-04 Zack Weinberg <zackw@stanford.edu>
+
+ * expr.h: Remove #ifdef FUNCTION_CONVERSION_BUG logic.
+ * config/romp/xm-romp.h: Delete.
+
+2001-04-04 Bernd Schmidt <bernds@redhat.com>
+
+ * sched-deps.c (sched_analyze_insn): Partially revert March 27
+ change.
+
+2001-04-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * emit-rtl.c (mark_label_nuses) Increment the label uses for
+ all labels present in rtx.
+ (try_split) Call new function for all split insns.
+
+2001-04-04 Jakub Jelinek <jakub@redhat.com>
+
+ * recog.c (validate_replace_rtx_1): Instead of aborting just make
+ sure the change won't be validated.
+
+Wed Apr 4 00:45:38 EDT 2001 John Wehle (john@feith.com)
+
+ * rtl.h (set_noop_p): Declare.
+ * flow.c (set_noop_p): Move from here ...
+ * rtlanal.c (set_noop_p): ... to here and enhance.
+ * cse.c (delete_trivially_dead_insns): Use it.
+ * gcse.c (hash_scan_set): Likewise.
+ * jump.c (delete_noop_moves): Likewise.
+ * recog.c (split_all_insns): Likewise.
+
+2001-04-04 Alan Modra <alan@linuxcare.com.au>
+
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Support adjusting
+ stack pointer via a LO_SUM. Ditto for setting a temp register
+ used to save to the stack. Set cfa_temp when setting fp, and
+ allow matches to cfa_temp in addition to cfa_store when saving
+ regs. Handle POST_INC and LO_SUM register stores. Document the
+ changes and errors in rule 12 doco.
+
+ * pa.c (set_reg_plus_d, store_reg, load_reg): Return last insn.
+ (actual_fsize, local_fsize, save_fregs): Move for store_reg to see.
+ (load_reg): Move closer to epilogue code.
+ (DO_FRAME_NOTES): Define to control the following..
+ (FRP): Define to set RTX_FRAME_RELATED_P on insns.
+ (hppa_expand_prologue): Use FRP and REG_FRAME_RELATED_EXPR
+ notes as necessary.
+ (hppa_expand_epilogue): Likewise.
+
+2001-04-03 Richard Henderson <rth@redhat.com>
+
+ * configure.in (gcc_cv_as_leb128): Reject gas before 2.11.
+ * configure: Rebuild.
+
+2001-04-03 Richard Henderson <rth@redhat.com>
+
+ * rtl.h (LCT_THROW): New.
+ * calls.c (emit_library_call_value_1): Handle it.
+ * except.c (connect_post_landing_pads): Use it.
+
+2001-04-03 Zack Weinberg <zackw@stanford.edu>
+
+ * gansidecl.h: Delete file.
+ * configure.in: Change all refs to gansidecl.h to use
+ ansidecl.h. Adjust *_file_list so they know where ansidecl.h
+ lives.
+ * configure: Regenerate.
+
+ * Makefile.in (intl.o): Don't depend on gansidecl.h.
+ * defaults.h: s/gansidecl.h/ansidecl.h/ in comment.
+ * ggc.h, config/fr30/fr30.h, config/mcore/mcore.c:
+ Don't include gansidecl.h.
+ * intl.c, main.c, version.c, fixinc/fixlib.h,
+ fixinc/procopen.c, fixinc/server.c: Include ansidecl.h not
+ gansidecl.h.
+
+Tue Apr 3 19:41:21 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_force_to_memory, ix86_free_from_memory):
+ Update for 64bit.
+
+2001-04-03 Zack Weinberg <zackw@stanford.edu>
+
+ * config/i386/xm-beos.h, config/i386/xm-isc.h,
+ config/i386/xm-next.h, config/i386/xm-sco.h,
+ config/i386/xm-sco5.h, config/m68k/xm-plexus.h,
+ config/m88k/xm-m88k.h: Delete.
+
+ * config/i386/xm-djgpp.h: Don't define __MSDOS__.
+ * config/romp/xm-romp.h: Don't define bcopy.
+ * config/rs6000/xm-beos.h: Don't define bcopy, HAVE_VPRINTF,
+ HAVE_PUTENV, HAVE_RENAME, or USE_C_ALLOCA.
+
+ * config.gcc: Remove references to deleted files.
+
+ 14 xm-host.h remain, 1 xm-cpu.h.
+
+2001-04-03 Jakub Jelinek <jakub@redhat.com>
+ David S. Miller <davem@pierdol.cobaltmicro.com>
+ Andrew MacLeod <amacleod@redhat.com>
+
+ Use byte offsets in SUBREGs instead of words.
+
+ * alias.c (nonlocal_mentioned_p): Use subreg_regno function.
+ * caller-save.c (mark_set_regs): Change callers of subreg_hard_regno
+ to pass new argument.
+ (add_stored_regs): Use subreg_regno_offset function.
+ * calls.c (expand_call): For non-paradoxical SUBREG take endianess
+ into account.
+ (precompute_arguments): Use gen_lowpart_SUBREG.
+ * combine.c (try_combine): Replace explicit XEXP with SUBREG_REG.
+ (combine_simplify_rtx): Rework to use SUBREG_BYTE.
+ (simplify_set): Rework to use SUBREG_BYTE.
+ (expand_field_assignment): Use SUBREG_BYTE.
+ (make_extraction): Use SUBREG_BYTE.
+ (if_then_else_cond): Use SUBREG_BYTE.
+ (apply_distributive_law): Use SUBREG_BYTE and fixup subreg comments.
+ (gen_lowpart_for_combine): Compute full byte offset.
+ * cse.c (mention_regs): Use SUBREG_BYTE.
+ (remove_invalid_subreg_refs): Rework to use SUBREG_BYTE.
+ (canon_hash): Use SUBREG_BYTE.
+ (fold_rtx): Pass SUBREG_BYTE div UNITS_PER_WORD to operand_subword.
+ (gen_lowpart_if_possible): Formatting.
+ * dbxout.c (dbxout_symbol_location): Compute SUBREG hard regnos
+ correctly.
+ * dwarf2out.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
+ (mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ (loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ * dwarfout.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
+ (output_mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ (output_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
+ * emit-rtl.c (gen_rtx_SUBREG): New function, used to verify
+ certain invariants about SUBREGs the compiler creates.
+ (gen_lowpart_SUBREG): New function.
+ (subreg_hard_regno): New function to get the final register number.
+ (gen_lowpart_common): Use SUBREG_BYTE.
+ (gen_imagpart): Spacing nits.
+ (subreg_realpart_p): Use SUBREG_BYTE.
+ (gen_highpart): Use SUBREG_BYTE.
+ (subreg_lowpart_p): Always compute endian corrected goal offset,
+ even at the byte level, then compare against that.
+ (constant_subword): New function, pulled out all constant cases
+ from operand_subword and changed second argument name to offset.
+ (operand_subword): Detect non REG/SUBREG/CONCAT/MEM cases early
+ and call constant_subword to do the work. Return const0_rtx if
+ looking for a word outside of OP.
+ (operand_subword_force): Change second arg name to offset.
+ * expmed.c (store_bit_field): Use SUBREG_BYTE.
+ (store_split_bit_field): Use SUBREG_BYTE.
+ (extract_bit_field): Use SUBREG_BYTE.
+ (extract_split_bit_field): Use SUBREG_BYTE.
+ (expand_shift): Use SUBREG_BYTE.
+ * expr.c (store_expr, expand_expr): Use gen_lowpart_SUBREG.
+ * final.c (alter_subreg) Use subreg_hard_regno and SUBREG_BYTE.
+ * flow.c (set_noop_p): Use SUBREG_BYTE.
+ (mark_set_1): Remove ALTER_HARD_SUBREG. Use subreg_regno_offset instead.
+ * function.c (fixup_var_refs_1): Fixup explicit XEXP into a SUBREG_REG.
+ (fixup_memory_subreg): Use SUBREG_BYTE and remove byte endian
+ correction code.
+ (optimize_bit_field): Use SUBREG_BYTE.
+ (purge_addressof_1): Use SUBREG_BYTE.
+ (purge_single_hard_subreg_set): Use subreg_regno_offset function.
+ (assign_params): Mark arguments SUBREG_PROMOTED_VAR_P if they are
+ actually promoted by the caller and PROMOTE_FOR_CALLS_ONLY is true.
+ * gengenrtl.c (special_rtx): Add SUBREG.
+ * global.c (mark_reg_store): Use SUBREG_BYTE.
+ (set_preference): Rework to use subreg_regno_offset and SUBREG_BYTE.
+ * ifcvt (noce_emit_move_insn): Use SUBREG_BYTE.
+ * integrate.c (copy_rtx_and_substitute): Use SUBREG_BYTE and make sure
+ final byte offset is congruent to subreg's mode size.
+ (subst_constants): Use SUBREG_BYTE.
+ (mark_stores): Use subreg_regno_offset function.
+ * jump.c (rtx_renumbered_equal_p, true_regnum): Use subreg_regno_offset
+ function and SUBREG_BYTE.
+ * local-alloc.c (combine_regs): Use subreg_regno_offset function.
+ (reg_is_born): Use subreg_hard_regno.
+ * recog.c (valid_replace_rtx_1): Use SUBREG_BYTE and remove byte
+ endian correction code. Don't combine subregs unless resulting
+ offset aligns with type. Fix subreg constant extraction for DImode.
+ Simplify SUBREG of VOIDmode CONST_DOUBLE.
+ (general_operand): Remove dead mode_altering_drug code.
+ (indirect_operand): Use SUBREG_BYTE.
+ (constrain_operands): Use subreg_regno_offset function.
+ * reg-stack.c (get_true_reg): Use subreg_regno_offset function.
+ * regmove.c (regmove_optimize): Use SUBREG_BYTE.
+ (optimize_reg_copy_3): Use gen_lowpart_SUBREG.
+ * regs.h (REG_SIZE): Allow target to override.
+ (REGMODE_NATURAL_SIZE): New macro which target can override.
+ * reload.c (reload_inner_reg_of_subreg): subreg_regno should be used
+ on the entire subreg rtx.
+ (push_reload): Use SUBREG_BYTE in comments and code.
+ (find_dummy_reload): Use subreg_regno_offset. Only adjust offsets
+ for hard registers inside subregs.
+ (operands_match_p): Use subreg_regno_offset.
+ (find_reloads): Use SUBREG_BYTE and only advance offset for subregs
+ containing hard regs.
+ (find_reload_toplev): Use SUBREG_BYTE. Remove byte endian
+ corrections when fixing up MEM subregs.
+ (find_reloads_address_1): Use SUBREG_BYTE, subreg_regno, and
+ subreg_regno_offset where appropriate.
+ (find_reloads_subreg_address): Use SUBREG_BYTE. Remove
+ byte endian corrections when fixing up MEM subregs.
+ (subst_reloads): When combining two subregs, make sure final
+ offset is congruent to subreg's mode size.
+ (find_replacement): Use SUBREG_BYTE and subreg_regno_offset.
+ (refers_to_regno_for_reload_p): Use subreg_regno.
+ (reg_overlap_mentioned_for_reload_p): Use subreg_regno_offset.
+ * reload1.c (eliminate_regs) Use SUBREG_BYTE. Remove byte endian
+ correction code for memory subreg fixups.
+ (forget_old_reload_1): Use subreg_regno_offset.
+ (choose_reload_regs): Use subreg_regno.
+ (emit_input_reload_insns): Use SUBREG_BYTE.
+ (reload_combine_note_store): Use subreg_regno_offset.
+ (move2add_note_store): Use subreg_regno_offset.
+ * resource.c (update_live_status, mark_referenced_resources): Use
+ subreg_regno function.
+ (mark_set_resources): Use subreg_regno function.
+ * rtl.h (SUBREG_WORD): Rename to SUBREG_BYTE.
+ (subreg_regno_offset, subreg_regno): Define prototypes.
+ (subreg_hard_regno, constant_subword, gen_rtx_SUBREG): Newi functions.
+ (gen_lowpart_SUBREG): Add prototype.
+ * rtl.texi (subreg): Update to reflect new byte offset representation.
+ Add mentioning of the effect that BYTES_BIG_ENDIAN has on subregs now.
+ * rtlanal.c (refers_to_regno_p): Use subreg_regno.
+ (reg_overlap_mentioned_p): Use subreg_regno.
+ (replace_regs); Make sure final offset of combined subreg is
+ congruent to size of subreg's mode.
+ (subreg_regno_offset): New function.
+ (subreg_regno): New function.
+ * sched-vis.c (print_value): Change SUBREG_WORD to SUBREG_BYTE.
+ * sdbout.c (sdbout_symbol): Compute offset using alter_subreg.
+ * stmt.c (expand_anon_union_decl): Use gen_lowpart_SUBREG.
+ * tm.texi (ALTER_HARD_SUBREG): Remove, it is now dead.
+ (SUBREG_REGNO_OFFSET): Describe SUBREG_REGNO_OFFSET overrides.
+ * config/a29k/a29k.c (gpc_reg_operand): Use subreg_regno.
+ (a29k_get_reloaded_address): Use SUBREG_BYTE.
+ (print_operand): Use SUBREG_BYTE.
+ * config/alpha/alpha.c (print_operand_address): Use SUBREG_BYTE.
+ * config/arm/arm.c (arm_reload_in_hi): Use SUBREG_BYTE.
+ (arm_reload_out_hi): Use SUBREG_BYTE.
+ * config/d30v/d30v.c (d30v_split_double): Use subreg_regno_offset
+ instead of SUBREG_WORD.
+ (d30v_print_operand_memory_reference): Use subreg_regno_offset.
+ * config/dsp16xx/dsp16xx.md (extendqihi2, zero_extendqihi2): Fix
+ SUBREG creation to use byte offset.
+ * config/h8300/h8300.md (Unnamed HImode zero extraction and 16bit
+ inverted load insns): Fix explicit rtl subregs to use byte
+ offsets.
+ * config/i370/i370.md (cmpstrsi, movstrsi, mulsi3, divsi3,
+ udivsi3, umodsi3): Generate SUBREGs with byte offsets.
+ * config/i860/i860.c (single_insn_src_p): Use SUBREG_BYTE.
+ * config/i860/i860.md (mulsi3_big): Fixup explicit SUBREGs in rtl
+ to use byte offsets.
+ (unnamed fmlow.dd insn): Fixup SUBREGS to use byte offsets.
+ * config/i960/i960.md (extendhisi2): Generate SUBREGs with byte
+ offsets, also make sure it is congruent to SUBREG's mode size.
+ (extendqisi2, extendqihi2, zero_extendhisi2, zero_extendqisi2,
+ unnamed ldob insn): Generate SUBREGs with byte offset.
+ (zero_extendqihi2): SUBREG's are byte offsets.
+ * config/m68hc11/m68hc11.c (m68hc11_gen_lowpart): Use SUBREG_BYTE.
+ (m68hc11_gen_highpart): Use SUBREG_BYTE.
+ * config/m68k/m68k.md (zero_extendhisi2, zero_extendqihi2,
+ zero-extendqisi2): Generate SUBREGs with byte offset.
+ (umulsidi3, mulsidi3, subreghi1ashrdi_const32,
+ subregsi1ashrdi_const32, subreg1lshrdi_const32): Fixup explicit
+ subregs in rtl to use byte offsets.
+ * config/m88k/m88k.md (extendsidi2): fixup subregs to use byte offset.
+ * config/mips/mips.c (mips_move_1word): Use subreg_regno_offset.
+ (mips_move_2words): Use subreg_regno_offset.
+ (mips_secondary_reload_class): Use subreg_regno_offset.
+ * config/mips/mips.md (DImode plus, minus, move, and logical op
+ splits): Fixup explicit subregs in rtl to use byte offsets.
+ * config/mn10200/mn10200.c (print_operand): Use subreg_regno function.
+ * config/mn10300/mn10300.c (print_operand): Use subreg_regno function.
+ * config/ns32k/ns32k.md (udivmoddisi4): Fix explicit subregs in
+ rtl to use byte offsets.
+ * config/pa/pa.c (emit_move_sequence): Use SUBREG_BYTE.
+ * config/pa/pa.md (floatunssisf2, floatunssidf2, mulsi3): fix explicit
+ subregs to use byte offsets.
+ * config/pdp11/pdp11.md (zero_extendhisi2, modhi3, modhi3+1):
+ Fixup explicit subregs in rtl to use byte offsets.
+ * config/romp/romp.c (memory_offset_in_range_p): Use SUBREG_BYTE
+ and remove byte endian correction code.
+ * config/sh/sh.c (output_movedouble): Use subreg_regno.
+ (gen_ashift_hi): Use SUBREG_BYTE.
+ (regs_used): Use subreg_regno_offset.
+ (machine_dependent_reorg): Use subreg_regno_offset.
+ * config/sh/sh.h (INDEX_REGISTER_RTX_P): Use SUBREG_BYTE.
+ * config/sh/sh.md (DImode and DFmode move splits): Use subreg_regno.
+ (movdf_i4): Subregs are byte offsets now.
+ * config/sparc/sparc.c (ultra_find_type): Use SUBREG_BYTE.
+ * config/sparc/sparc.h (ALTER_HARD_SUBREG): Removed.
+ (REGMODE_NATURAL_SIZE): Override.
+ (REG_SIZE): For SUBREG check float mode on SUBREG_REG's mode.
+ * config/sparc/sparc.md (TFmode move splits): Generate SUBREGs
+ with byte offsets.
+ (zero_extendhisi2, zero_extendqidi2_insn, extendhisi2,
+ extendqihi2, sign_extendqihi2_insn, sign_extendqisi2_insn,
+ extendqidi2): Generate SUBREGs with byte offsets, also make sure
+ it is congruent to SUBREG's mode size.
+ (smulsi3_highpart_v8plus): Fix explicit subregs in rtl to use byte
+ offsets.
+ (cmp_siqi_trunc, cmp_siqi_trunc_set, cmp_diqi_trunc,
+ cmp_diqi_trunc_set, lshrdi3_v8plus+1, lshrdi3_v8plus+2,
+ lshrdi3_v8plus+3, lshrdi3_v8plus+4): Use proper
+ SUBREG_BYTE offset for non-paradoxical subregs in patterns.
+ * config/v850/v850.c (print_operand, output_move_double): Use
+ subreg_regno function.
+
+2001-04-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (target_subdir): Use target_alias, not target.
+ * configure: Rebuilt.
+
+ * config/sh/crtn.asm (init, fini): Restore r15 from r14, not the
+ other way round.
+ * config/sh/crti.asm: Fix typos in comments.
+
+2001-04-03 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.h: Revise comments for TARGET_NO_SPACE_REGS and
+ TARGET_FAST_INDIRECT_CALLS.
+ * pa.c (override_options): TARGET_NO_SPACE_REGS is now OK with
+ -fPIC. Don't warn.
+ (return_addr_rtx): Short circuit export stub matching when
+ TARGET_NO_SPACE_REGS.
+ (output_millicode_call): For out of range calls, make -fPIC
+ take precedence, then TARGET_PORTABLE_RUNTIME, then ble. Don't
+ return before delay slot checks when TARGET_PORTABLE_RUNTIME.
+ * pa.md: Modify length attr calculation of all millicode insns to
+ match above.
+
+2001-04-02 Geoffrey Keating <geoffk@redhat.com>
+
+ * configure.in (gcc_cv_as_leb128): Correct name of cache variable.
+ Require at least 2.11 in the version test. Specifically check
+ for and reject GAS version 2.10.90.
+ * configure: regenerate.
+
+2001-04-03 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.c (override_options): Remove PIC profiling warning.
+ (hp_profile_labelno): Delete.
+ (hp_profile_label_rtx): Delete.
+ (hp_profile_label_name): Delete.
+ (pa_add_gc_roots): Remove reference to hp_profile_label_rtx.
+ (output_function_prologue): Remove profiling code and all tests on
+ profile_flag. Move store of PIC_OFFSET_TABLE_REGNUM now that
+ merge_sp_adjust_with_store can work for PIC and profiling.
+ (hppa_expand_epilogue): Remove profile_flag test.
+ (hppa_can_use_return_insn_p): Likewise.
+ (hppa_init_pic_save): Emit before tail_recursion_reentry, and
+ cater for PROFILE_HOOK.
+ (hppa_profile_hook): New function.
+ * pa.h (FUNCTION_PROFILER): Now does nothing.
+ (PROFILE_HOOK): Define.
+ (hppa_profile_hook): Declare.
+ (PROFILE_BEFORE_PROLOGUE): Delete.
+ (ASM_OUTPUT_REG_PUSH): Delete.
+ (ASM_OUTPUT_REG_POP): Delete.
+ * pa.md (call_profiler): Turn it into a call insn, and don't `use'
+ r24. Accept function name operand, and use this and a locally
+ generated label to calculate pc-rel offset to func start.
+
+2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * $(HOST_PREFIX_1)errors.o, $(HOST_PREFIX_1)ggc-none.o,
+ ggc-common.o, ggc-simple.o, ggc-page.o, ggc-none.o: Depend on
+ $(SYSTEM_H).
+
+2001-04-03 Alan Modra <alan@linuxcare.com.au>
+
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Move errant HIGH and
+ LO_SUM cases to where they belong.
+
+2001-04-02 Richard Henderson <rth@redhat.com>
+
+ * except.h (lang_eh_type_covers): Mark extern.
+ (lang_eh_runtime_type): Likewise.
+
+2001-04-02 Zack Weinberg <zackw@stanford.edu>
+
+ * genattr.c, gencheck.c, gencodes.c, genconfig.c, genflags.c,
+ gengenrtl.c: Wrap generated header in multiple-include guard.
+ Improve error checking.
+
+2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in: Don't check for putenv.
+ * configure: Regenerate.
+ * gcc.c (putenv): Don't define.
+ * vax/xm-vms.h: Handle putenv.
+
+2001-04-02 Jakub Jelinek <jakub@redhat.com>
+
+ * ifcvt.c (noce_emit_move_insn): New.
+ (noce_try_store_flag, noce_try_store_flag_constants,
+ noce_try_store_flag_inc, noce_try_store_flag_mask,
+ noce_try_cmove, noce_try_cmove_arith, noce_try_minmax,
+ noce_try_abs): Use it.
+ (noce_process_if_block): Likewise.
+ For STRICT_LOW_PART, take mode from its SUBREG.
+
+2001-04-02 Jakub Jelinek <jakub@redhat.com>
+
+ * fold-const.c (fold): Before optimizing unsigned comparison with
+ 0x7fffffffU, make sure arg0 is integral type.
+
+2001-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-tree.texi: Document representation of wide strings.
+
+2001-04-01 Richard Henderson <rth@redhat.com>
+
+ * except.h (expand_builtin_dwarf_fp_regnum): Declare.
+
+Sun Apr 1 11:49:05 CEST 2001 Jan Hubicka <jH@suse.cz>
+
+ * i386.md: remove obsoleted comments.
+ (adddi_?): Rename to adddi_?_rex64; disable for 32bit.
+ (x86_movsicc_0_m1_rex64): Rename to x86_movdicc_0_m1_rex64;
+ fix output template.
+
+2001-03-31 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/libgcc.S (__mulhi3): Optimize previous change.
+
+2001-03-30 Bernd Schmidt <bernds@redhat.com>
+
+ * loop.c (load_mems): When generating a load from a pseudo, update
+ REGNO_LAST_UID.
+
+Fri Mar 30 17:36:43 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_split_long_move): Use change address to compensate
+ stack pointer change in push instruction.
+
+Fri Mar 30 00:31:00 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_movdfcc_eq): Fix constraint (sse_mov?fcc splitter): Use operands_match_p
+ instead of rtx_equal_p; fix the output template.
+
+Fri Mar 30 00:21:41 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_setcc): Support 64bit.
+ (ix86_expand_int_movcc): Likewise.
+ * i386.md (movdicc_rex64, x86_movsicc_0_m1_rex64, movdicc_c_rex64):
+ New patterns.
+
+ * i386.md (allocate_stack_worker): Turn to expander.
+ (allocate_stack_worker_1, allocate_stack_worker_rex64): New insns.
+
+ * i386.c (print_reg): Do not print x86_64 style regs on IA-32
+
+2001-03-29 Richard Henderson <rth@redhat.com>
+
+ * libgcc2.c [L__main]: Include unwind-dw2-fde.h instead of frame.h.
+
+2001-03-28 Matthew Hiller <hiller@redhat.com>
+
+ * config/mn10300/mn10300.md (cmpsi): Fix first alternative's
+ output template.
+
+ * MAINTAINERS: Added self.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (cs-tconfig.h): Depend on CONFIG_H, not GCONFIG_H.
+ Use ALL_CFLAGS not HOST_CFLAGS for sjlj detection.
+
+2001-03-28 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.md (movtf): Change DImode to TFmode in calls to
+ operand_subword.
+
+2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * toplev.h (fatal_error): Add ATTRIBUTE_NORETURN.
+
+ * tradcif.y (yyerror): Likewise. Add format specifier in call to
+ `error'.
+
+ * tradcpp.c (macroexpand): Likewise for call to `error_with_line'.
+
+2001-03-28 DJ Delorie <dj@redhat.com>
+
+ * Makefile.in (stage1_build): Revert CFLAGS patch.
+
+2001-03-28 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/libgcc.S (__mulhi3): Correct tests to exit the loop
+ when multiplier or multiplicand is zero.
+
+2001-03-28 Bernd Schmidt <bernds@redhat.com>
+
+ * cselib.c (hash_rtx): Don't do tail recursion elimination by hand.
+
+ * config/ia64/ia64.c (update_set_flags): New function, broken out of
+ rtx_needs_barrier.
+ (set_src_needs_barrier): Likewise.
+ (rtx_needs_barrier): For SET case, use these two functions. Rework
+ PARALLEL case to handle all inputs before all outputs.
+ (emit_insn_group_barriers): Call init_insn_group_barriers only if we
+ saw a label and no stop bit since then.
+ (maybe_rotate, process_epilogue): Add prototypes.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * config/rs6000/rs6000.h (EPILOGUE_USES): Use TARGET_AIX,
+ not TARGET_TOC for special toc restore handling.
+ * config/rs6000/rs6000.md (eh_return): Likewise.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * config/sparc/sparc.c (eligible_for_epilogue_delay): False if
+ current_function_calls_eh_return.
+ (output_function_epilogue): Handle eh_return.
+ * config/sparc/sparc.h (DOESNT_NEED_UNWINDER): Remove.
+ (EH_RETURN_DATA_REGNO): New.
+ (EH_RETURN_STACKADJ_RTX): New.
+ (EH_RETURN_HANDLER_RTX): New.
+ * config/sparc/sparc.md (call/short branch peepholes): Check
+ can_throw_internal instead of in_same_eh_region.
+
+ * config/rs6000/rs6000.c (rs6000_stack_info): Allocate space
+ for eh_return data registers.
+ (rs6000_emit_prologue): Save eh_return data registers.
+ (rs6000_emit_epilogue): Force inline restores if eh_return.
+ Restore eh_return data registers. Mind EH_RETURN_STACKADJ_RTX.
+ * config/rs6000/rs6000.h (rs6000_stack_t): Add ehrd_offset.
+ (EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX): New.
+ (EPILOGUE_USES): True for TOC_REGISTER if calls_eh_return and
+ the target uses one.
+ * config/rs6000/rs6000.md (eh_epilogue, eh_reg_restore): Remove.
+ (return_eh_si, return_eh_di): Remove.
+ (eh_return): New, from corpse of eh_epilogue.
+ (eh_set_lr_si, eh_set_lr_di): New.
+
+ * config/i386/i386.c (general_no_elim_operand): Disallow virtual regs.
+ (ix86_save_reg): If maybe_eh_return, true for EH_RETURN_DATA_REGNOs.
+ True for pic register if current_function_calls_eh_return.
+ (ix86_expand_epilogue): Change "emit_return" argument into "style".
+ Handle eh_return requirements.
+ * config/i386/i386.h (EH_RETURN_DATA_REGNO): New.
+ (EH_RETURN_STACKADJ_RTX): New.
+ * config/i386/i386.md (exception_receiver): Remove.
+ (eh_return, eh_return_1): New.
+ * config/i386/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
+
+ * config/alpha/alpha.c (alpha_sa_mask): Add EH_RETURN_DATA_REGNOs.
+ (alpha_mark_machine_status): No eh_epilogue_sp_ofs ...
+ (alpha_expand_epilogue): ... use EH_RETURN_STACKADJ_RTX instead.
+ * config/alpha/alpha.h (machine_function): Remove eh_epilogue_sp_ofs.
+ (EH_RETURN_DATA_REGNO): New.
+ (EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): New.
+ * config/alpha/alpha.md (eh_epilogue): Remove.
+ (exception_receiver): Use $26 for ldgp input.
+ * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
+
+2001-03-28 Richard Henderson <rth@redhat.com>
+
+ * except.c: Rewrite entirely for IA-64 ABI exception handling.
+ * except.h: Likewise.
+
+ * Makefile.in (LIB2ADDEH): Mention unwind-dw2*.c
+ (LIB2ADDEHDEP): New.
+ (LIB2FUNCS_EH): Remove.
+ (LIB2ADD): Remove LIB2ADDEH.
+ (libgcc.mk): Pass LIB2ADDEHDEP, don't pass LIB2FUNCS_EH.
+ (LIBGCC_DEPS): Use LIB2ADDEHDEP.
+ (crt{begin,end}[S].o): Likewise.
+ (except.o): Update includes.
+ * mklibgcc.in: Remove LIB2FUNCS_EH, add LIB2ADDEH, LIB2ADDEHDEP.
+ (libgcc2_c_dep): Use LIB2ADDEHDEP.
+
+ * basic-block.h (struct basic_block_def): Remove eh_beg, eh_end.
+ * bb-reorder.c (reorder_basic_blocks): Don't disable for EH.
+ * builtins.def (BUILT_IN_EH_RETURN_DATA_REGNO): New.
+ * builtins.c (expand_builtin): Implement it.
+ [BUILT_IN_EH_RETURN]: Update for nr arguments change.
+ * c-common.c (c_common_nodes_and_builtins): Declare it.
+ * c-decl.c (init_decl_processing): Update __builtin_eh_return.
+ * calls.c (libfunc_nothrow): Remove.
+ (emit_library_call_value_1): Don't call it.
+ * crtstuff.c: Include unwind-dw2-fde.h instead of frame.h.
+ * dwarf2.h (dwarf_call_frame_info): Add dwarf2.1 elements.
+ (DW_EH_PE_*): New defines for pointer encoding in .eh_frame.
+ * dwarf2out.c (struct dw_fde_struct): Add uses_eh_lsda, funcdef_number.
+ (current_funcdef_number): Globalize.
+ (output_call_frame_info): Emit frame data if an lsda is needed.
+ Generate augmentation for personality routine. Don't play with
+ difference symbols.
+ (dwarf2out_begin_prologue): Record funcdef_number.
+ * dwarf2out.h (current_funcdef_number): Declare.
+ * expr.c (expand_expr): Update for except.h name changes.
+ Remove POPDCC_EXPR, POPDHC_EXPR. Add EXC_PTR_EXPR.
+ * expr.h (LTI_throw, LTI_rethrow): Remove.
+ (LTI_sjthrow, LTI_sjpopnthrow, LTI_terminate): Remove.
+ (LTI_eh_rtime_match): Remove.
+ (LTI_unwind_resume, LTI_eh_personality): Add.
+ (LTI_unwind_sjlj_register, LTI_unwind_sjlj_unregister): Add.
+ * final.c (final): Don't call check_exception_handler_labels,
+ init_insn_eh_region, or free_insn_eh_region.
+ (final_scan_insn): Always emit debug labels for
+ NOTE_INSN_EH_REGION notes.
+ * flags.h (flag_new_exceptions): Remove.
+ * flow.c (entry_exit_blocks): Remove eh_beg, eh_end.
+ (record_active_eh_regions): Remove.
+ (count_basic_blocks): Check all instructions for REG_EH_REGION.
+ Use can_throw_internal.
+ (find_basic_blocks_1): Likewise.
+ (move_stray_eh_region_notes): Remove.
+ (find_label_refs): No eh_return_stub_label.
+ (make_edges): Likewise. No init/free_eh_nesting_info. Handle RESX.
+ (make_eh_edge): No eh_nest_info. Update for reachable_handlers
+ changes.
+ (delete_unreachable_blocks): Don't track deleted handlers.
+ (flow_delete_block): Use maybe_remove_eh_handler.
+ (delete_eh_regions): Remove.
+ (merge_blocks): Don't check for eh region match.
+ (mark_regs_live_at_end): Handle EH_RETURN_DATA_REGNO,
+ EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX.
+ (init_propagate_block_info): Disable dead frame store optimization
+ when current_function_calls_eh_return.
+ (dump_bb): Don't print eh_beg, eh_end.
+ * function.c (fixup_var_refs): No catch_clauses.
+ (expand_function_end): Likewise. Call expand_eh_return before
+ the return register use. Call sjlj_emit_function_exit_after.
+ (expand_function_start): Force pseudo DECL_RESULT if sjlj exceptions.
+ * function.h (struct function): Add calls_eh_return, uses_eh_lsda.
+ * ifcvt.c (dead_or_predicable): Remove eh region check.
+ * integrate.c (function_cannot_inline_p): Disallow __builtin_eh_return.
+ Don't check for EH vs parameters.
+ (expand_inline_function_eh_labelmap, eif_eh_map): Remove.
+ (expand_inline_function): Call duplicate_eh_regions.
+ (copy_insn_list): Don't handle NOTE_INSN_EH_REGION_BEG/END.
+ (copy_insn_notes): Remap REG_EH_REGION notes.
+ (copy_rtx_and_substitute): Remove SYMBOL_REF_NEED_ADJUST check.
+ * integrate.h (struct inline_remap): Add local_return_label.
+ * jump.c (jump_optimize_1): Don't init/free_insn_eh_region, nor
+ check_exception_handler_labels, nor exception_optimize.
+ (find_cross_jump): No EH region check.
+ * optabs.c (init_optabs): Update for changed eh libfuncs.
+ * rtl.def (RESX): New.
+ * rtl.h (SYMBOL_REF_NEED_ADJUST): Remove.
+ * stmt.c (expand_decl_cleanup): Simplify using_eh_for_cleanups_p
+ checks. Update for except.h name changes.
+ (expand_cleanups): Likewise.
+ (expand_dcc_cleanup, expand_dhc_cleanup): Remove.
+ * toplev.c (dump_file_index, dump_file): Add .02.eh dump.
+ (compile_file): Call init_eh before init_optabs. Don't
+ output_exception_table here.
+ (rest_of_compilation): Call convert_from_eh_region_ranges,
+ convert_to_eh_region_ranges, output_function_exception_table.
+ Don't emit_eh_context.
+ * tree.def (POPDHC_EXPR, POPDCC_EXPR): Remove.
+ (EXC_PTR_EXPR): New.
+
+ * md.texi (eh_epilogue): Remove.
+ (eh_return): Document.
+ * tm.texi (EH_RETURN_DATA_REGNO): Document.
+ (EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): Document.
+
+ * eh-common.h: Remove file.
+ * frame-dwarf2.c, frame.c, frame.h: Remove files.
+ * libgcc2.c (L_eh): Remove.
+
+ * unwind-dw2-fde.c: New file, largely copied from frame.c.
+ * unwind-dw2-fde.h: New file.
+ * unwind-dw2.c: New file, largely cribbed from frame-dwarf2.c.
+ * unwind-sjlj.c, unwind.h, unwind.inc: New files.
+ * libgcc-std.ver: Update for eh symbols.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * regmove.c (perhaps_ends_bb_p): Use can_throw_internal to
+ reduce false positives.
+ (regmove_optimize): Disable if flag_non_call_exceptions.
+
+ * stmt.c (expand_return): Remove always true predicate.
+ (expand_decl_cleanup_no_eh): Remove dead code.
+
+ * sched-deps.c (sched_analyze_insn): Consolidate scheduling
+ barrier code. Add a scheduling barrier if a non-call insn
+ can throw internally.
+
+ * rtlanal.c (rtx_addr_can_trap_p): Virtual registers cannot trap.
+ Auto-inc addresses trap only if their base register does.
+
+ * except.c (can_throw_internal): Rename from can_throw.
+ * except.h, resource.c: Update references.
+
+ * integrate.c (copy_insn_list): Use returnjump_p.
+ (copy_insn_notes): Recurse for CALL_PLACEHOLDER.
+
+ * function.h (struct function): Move all boolean valued fields
+ to single bit fields at the end of the struct.
+
+ * bb-reorder.c, dwarf2out.c, except.c, except.h, flow.c,
+ jump.c, toplev.c:
+ Rename asynchronous_exceptions to flag_non_call_exceptions.
+
+ * gthr-single.h (UNUSED): New. Distinguish between how C
+ and C++ mark unused function arguments. Use throughout.
+
+ * Makefile.in (cs-tconfig.h): Copy USING_SJLJ_EXCEPTIONS
+ value to target configuration header.
+ * configure.in (CONFIG_SJLJ_EXCEPTIONS): New.
+ * config.in, configure: Rebuild.
+ * except.h (USING_SJLJ_EXCEPTIONS): New. Define based on
+ configuration and target defines.
+ (exceptions_via_longjmp): Remove.
+ * dwarf2out.c, except.c, final.c, toplev.c, config/ia64/ia64.c:
+ Use USING_SJLJ_EXCEPTIONS instead of exceptions_via_longjmp.
+
+ * except.h (flag_non_call_exceptions): Move ...
+ * flags.h: ... here.
+
+ * combine.c (distribute_notes) [REG_EH_REGION]: If non-call
+ exceptions, put the note on the trapping instruction.
+
+ * flags.h (flag_new_exceptions): Remove.
+ * toplev.c: Don't set it.
+ * final.c: Don't check it.
+ * except.c: Provide stub definition.
+
+ * flow.c (tidy_fallthru_edges): Don't combine complex edges.
+ (calculate_global_regs_live): Kill call-clobbered registers
+ across exception edges.
+ * reg-stack.c (convert_regs_1): Kill the entire target stack
+ across non-call exception edges.
+
+ * flow.c (cleanup_cfg): Take no argument.
+ * output.h, sibcall.c, toplev.c: Update all calls.
+
+2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in: Don't check for bcopy.
+ * configure, config.in: Regenerate.
+
+ * system.h: Don't define or prototype bcopy, instead poison it.
+
+2001-03-27 Richard Henderson <rth@redhat.com>
+
+ * function.c (expand_function_start): Set DECL_REGISTER on
+ a pseudo used for DECL_RESULT.
+
+ * rtl.h (LCT_NORETURN): New.
+ * calls.c (emit_library_call_value_1): Handle it.
+
+2001-03-27 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (objc_init): Use dump_base_name.
+ (gen_declaration): Clear the buffer arg.
+ (gen_declaration_1): New function, body of gen_declaration.
+ (adorn_decl): Call gen_declaration_1 instead of gen_declaration.
+ (gen_method_decl): Ditto, plus always clear buffer arg.
+ (error_with_ivar): Simplify.
+ (warn_with_method): Ditto.
+ (build_message_expr): Don't clear buffers.
+ (dump_interface): Ditto.
+ (objc_debug): Ditto.
+ (build_keyword_selector): Clear the buffer by only zeroing
+ the first element.
+ (objc_implementation_context): Declare.
+ (start_class): Warn about missing @end.
+ (finish_objc): Ditto.
+
+2001-03-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * reload1.c (eliminate_regs): Don't abort on MEM USEs.
+
+2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (SYSTEM_H): Define.
+ Depend on $(SYSTEM_H), not system.h.
+
+ * objc/Make-lang.in: Depend on $(SYSTEM_H), not system.h.
+
+2001-03-27 Jim Wilson <wilson@redhat.com>
+
+ * final.c (final_scan_insn, case NOTE_INSN_BASIC_BLOCK): Call
+ IA64_UNWIND_EMIT.
+ * config/ia64/ia64.c (block_num, need_copy_state): New static vars.
+ (process_epilogue): New static function.
+ (process_set): Call process_epilogue instead of emitting .restore
+ directly.
+ (process_for_unwind_directive): Handle NOTE_INSN_BASIC_BLOCK.
+
+ * flow.c (struct reg_cond_life_info): New fields orig_condition
+ and stores.
+ (init_propagate_block_info): Set new fields.
+ (mark_regno_cond_dead): Set and use new fields.
+ (flush_reg_cond_reg_1): Likewise.
+ (and_reg_cond, case AND): Check for redundant AND conditions.
+ (mark_used_reg): Delete unnecessary clears before freeing splay trees.
+ Set new fields.
+
+2001-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmacro.c (stringify_arg): Null terminate strings.
+
+2001-03-27 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc (m68hc11-*-*, m68hc12-*-*): Convert to new tm.h
+ inclusion style. xm-m68hc11.h no longer exists.
+ * config/m68hc11/xm-m68hc11.h: Delete file.
+ * config/m68hc11/m68hc12.h: Convert to new tm.h inclusion style.
+
+ * config/m68hc11/m68hc11.h: Convert to new tm.h inclusion style.
+ Don't define GCC_VERSION, N_, or PARAMS; don't include
+ gansidecl.h or stdio.h. Define inhibit_libc here.
+ Make code conditioned on #if GCC_VERSION > 2095 unconditional.
+ Delete code conditioned on #if GCC_VERSION == 2095.
+
+ * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
+ Make code conditioned on #if GCC_VERSION > 2095 unconditional.
+ Delete code conditioned on #if GCC_VERSION == 2095.
+
+2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h: Include symcat.h.
+ (STRINGIFY): Don't define.
+
+ * configure.in: Adjust comment.
+
+ * builtins.c: Use STRINGX, not STRINGIFY.
+ * gencheck.c: Likewise.
+ * gengenrtl.c: Likewise.
+ * protoize.c: Likewise.
+
+ * cpplex.c: Don't include symcat.h.
+ * cpplib.c: Likewise.
+
+ * gansidecl.h (HAVE_STRINGIZE): Don't define.
+
+2001-03-27 Alan Modra <alan@linuxcare.com.au>
+
+ * c-typeck.c (digest_init): Fold init expression.
+
+2001-03-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * sbitmap.c (sbitmap_copy): Call memcpy, not bcopy.
+
+2001-03-27 Alan Modra <alan@linuxcare.com.au>
+
+ * except.c (eh_regs): Save results of build_pointer_type to a temp
+ as FUNCTION_VALUE macro may evaluate its args multiple times.
+
+2001-03-26 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (DECL_NUM_STMTS): New macro.
+ * c-decl.c (duplicate_decls): Copy DECL_NUM_STMTS, not
+ DECL_FRAME_SIZE.
+ (pushdecl): Likewise.
+ * c-semantics.c (add_stmt): Update DECL_NUM_STMTS.
+ * integrate.c (expand_inline_function): Don't check
+ DECL_FRAME_SIZE.
+ * print-tree.c (print_node): Don't print it.
+ * toplev.c (rest_of_compilation): Don't try to inline when
+ flag_no_inline is on.
+ * tree.h (DECL_FRAME_SIZE): Remove.
+ (tree_decl): Adjust accordingly.
+
+2001-03-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * combine.c (try_combine): Use memcpy, not bcopy.
+
+ * genattrtab.c (expand_units): Likewise.
+
+Mon Mar 26 15:55:08 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (push mem DI peep2): New.
+ (mov 0, mov -1 peep2): Handle 64bit.
+ (lea to arithmetics peep2): Handle 64bit leas.
+ (rsp arithmetics to push/pop peep2s): New.
+
+ * i386.md (truncdfsf2_3, trunctfsf2_2): Change predicate to memory_operand.
+
+Mon Mar 26 14:35:18 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (struct machine_function): Add save_varrargs_registers.
+ (ix86_save_varrargs_registers): New macro.
+ (ix86_frame_layout): Support 64bit; support red zones and varrargs area.
+ (ix86_expand_prologue): Likewise.
+ (ix86_emit_epilogue_esp_adjustement): Likewise.
+ (ix86_expand_epilogue): Likewise.
+ * i386.md (pro_epilogue_adjust_stack): Turn to expander; support 64bit.
+ (pro_epilogue_adjust_stack_1): New insn.
+ (pro_epilogue_adjust_stack_rex64): Likewise.
+ * i386.h (MASK_NO_RED_ZONE): New constant.
+ (TARGET_RED_ZONE): New macro.
+ (TARGET_OPTIONS): Add "red-zone" and "no-red-zone"
+ (RED_ZONE_SIZE): New constant.
+ (RED_ZONE_RESERVE): New constant.
+
+2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * toplev.c (set_float_handler): Use memcpy, not bcopy.
+
+2001-03-25 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.md (umodqi3): Output a tab instead of a
+ space.
+ (modqi3): Likewise.
+ (umodhi3): Likewise.
+ (modhi3): Likewise.
+
+2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mkconfig.sh (DEFINES): Handle entries with '='.
+
+ * config.gcc: Don't use i370/xm-mvs.h or ns32k/xm-pc532-min.h.
+ Set xm_defines to MACRO=value instead.
+
+ * i370/xm-mvs.h: Delete.
+
+ * ns32k/xm-pc532-min.h: Likewise.
+
+Sun Mar 25 15:01:40 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (ashldi3, ashrdi3, lshrdi3): Change predicates to
+ shiftdi_operand;
+ use ix86_expand_binary_operator
+ (?sh??i_?): Disable for 64bit.
+ * i386.h (PREDICATE_CODES): Add shiftdi_operand.
+ * i386.c (shiftdi_operand): New predicate.
+
+ * (ashldi3_1_rex64, ashldi3_cmp_rex64, ashlsi3_1_zext, ashlsi3_cmp_zext,
+ ashrdi3_63_rex64, ashrdi3_1_one_bit_rex64, ashrdi3_1_rex64,
+ ashrdi3_one_bit_cmp_rex64, ashrdi3_cmp_rex64, ashrsi3_31_zext,
+ ashrsi3_1_one_bit_zext, ashrsi3_1_zext, ashrsi3_one_bit_cmp_zext,
+ ashrsi3_cmp_zext, lshrdi3_1_one_bit_rex64, lshrdi3_1_rex64,
+ lshrdi3_cmp_one_bit_rex64, lshrdi3_cmp_rex64, lshrsi3_1_one_bit_zext,
+ lshrsi3_1_zext, lshrsi3_cmp_one_bit_zext, lshrsi3_cmp_zext,
+ rotlsi3_1_one_bit_rex64, rotldi3_1_rex64,
+ rotlsi3_1_one_bit_zext, rotlsi3_1_zext, rotrdi3_1_one_bit_rex64,
+ rotrdi3_1_rex64, rotrsi3_1_one_bit_zext, rotrsi3_1_zext): New patterns.
+ (rotldi3, rotrdi3): New expanders.
+
+Sun Mar 25 14:25:33 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movstrsi): Move offline.
+ (movstrdi): New.
+ (strmovdi_rex64): New.
+ (strmov?i): Accept 64bit.
+ (strmov?i_rex64): New.
+ (strmov?i_rex_1): New.
+ (strmov?i_1): Disable for 64bit.
+ (rep_mov?i_rex64): New.
+ (rep_mov?i): Disable for 64bit.
+ (clrstrsi): Move offline.
+ (strset?i_rex64): New.
+ (strset?i: Accept 64bit.
+ (rep_stos?i): Disable for 64bit.
+ (rep_stos?i_rex64): New.
+ (strset?i_rex_1): New.
+ (strset?i_1): Disable for 64bit.
+ (cmpstrsi): Accept 64bit.
+ (cmpstrsi_nz_1): Rename to cmpstrqi_nz_1; Disable for 64bit.
+ (cmpstrqi_nz_rex_1): New.
+ (cmpstrsi_1): Rename to cmpstrqi_1; Disable for 64bit.
+ (strlensi): Move offline.
+ (strlendi): New.
+ (strlenqi_1): Disable for 64bit; fix constraints.
+ (strlenqi_rex_1): New.
+ * i386.c (ix86_adjust_counter): New static function.
+ (ix86_zero_extend_to_Pmode): Likewise.
+ (ix86_expand_aligntest): Likweise.
+ (ix86_expand_strlensi_unroll_1): Make static; update for 64bit.
+ (ix86_expand_movstr): New global function.
+ (ix86_expand_clrstr): New global function.
+ (ix86_expand_strlen): New global function.
+ * i386-protos.h (ix86_expand_movstr, ix86_expand_clrstr,
+ ix86_expand_strlen): Declare.
+ (ix86_expand_strlensi_unroll_1): Delete.
+
+Sat Mar 24 23:15:19 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (cmpdi): Fix operand predicates.
+ (cmpdi_ccno_1_rex64, cmpdi_minus_1_rex64, cmpdi_1_rex64,
+ cmpdi_1_insn_rex64): New patterns.
+ (adddi3): Turn to expander.
+ (adddi3_1, adddi3_carry_rex64, adddi3_cc_rex64): New patterns.
+ (addsi3_carry_zext): New pattern.
+ (adddi_?_rex64): New patterns and splitters.
+ (addsi_?_zext): New patterns.
+ (subsi3_carry_zext): New pattern.
+ (subdi_?_rex64): New patterns and splitters.
+ (iorsi_?_zext): New patterns.
+ (iordi_?_rex64): New patterns and splitters.
+ (iorsi_?_zext): New patterns.
+ (iorsi_?_zext_imm): New patterns.
+ (xorsi_?_zext): New patterns.
+ (xordi_?_rex64): New patterns and splitters.
+ (xorsi_?_zext): New patterns.
+ (negdi*): New patterns.
+ (one_cmpldi*): Likewise.
+ (one_cmplsi*_zext, negsi*_zext): Likewise.
+ (testqi_ext_3_rex64): New pattern.
+
+Sat Mar 24 21:13:28 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386-protos.h (ix86_split_long_move): Return void.
+ * i386.c (ix86_split_to_parts): Handle 64bit target.
+ (ix86_split_long_move): Likewise.
+ * i386.md (all calls to ix86_split_long_move): Update.
+
+2001-03-23 Richard Henderson <rth@redhat.com>
+
+ * config/mips/iris4.h (ASM_OUTPUT_ASCII): Rename local variables
+ to avoid shadowing arguments.
+
+2001-03-23 Jakub Jelinek <jakub@redhat.com>
+
+ * varasm.c (make_decl_rtl): Don't append var_labelno discriminator
+ to variable names where DECL_NAME is different from
+ DECL_ASSEMBLER_NAME.
+
+2001-03-23 Jim Wilson <wilson@redhat.com>
+
+ * varasm.c (make_decl_rtl): Add TREE_PUBLIC check to abort test.
+ (assemble_alias): Call make_decl_rtl.
+
+Fri Mar 23 16:59:08 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * stor-layout.c (layout_type): Give OFFSET_TYPE a MODE_INT type.
+
+2001-03-23 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * extend.texi: Document the "java_interface" attribute.
+
+2001-03-22 Zack Weinberg <zackw@stanford.edu>
+
+ * mkconfig.sh: Use a subshell with redirected stdout,
+ instead of closing stdout and confusing commands that run
+ afterward. Throw away output of cmp.
+
+2001-03-22 Gordon Sadler <gbsadler1@lcisp.com>
+
+ * Makefile.in (stage1_build): Pass CFLAGS to stage1_build.
+
+Thu Mar 22 22:15:59 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (zero_extendsidi2_32): Break out from ...
+ (zero_extendsidi2): ... here ; turn to expander.
+ (zero_extendsidi2_rex64): New.
+ (extendsidi2_32): Break out from ...
+ (extendsidi2): ... here ; turn to expander.
+ (extendsidi2_rex64): New.
+ (zero_extendhidi2, zero_extendqidi2, extendhidi2, extendqidi2): New.
+ (trunc?f?f splitters): Add 64bit versions.
+
+Thu Mar 22 21:41:16 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (pushsi, pushsi2_prologue): Disable.
+ (pushsi2_rex64): New.
+ (movabs?i_1_rex64, movabs?i_2_rex64): New.
+ (movqi_ext_1): Disable for 64bit.
+ (movqi_ext_1_rex64): New.
+ (pushdi2_rex64): New pattern, peep2s and splitter.
+ (pushdi2_prologue_rex64): New pattern.
+ (popdi1_epilogue_rex64, popdi1, movdi_xor_rex64, movdi_or_rex64):
+ Likewise.
+ (movdi splitters): Disable for 64bit.
+ (movdi_1_rex64): New pattern, peep2s and splitters.
+ (swapdi): New pattern.
+ (pushsf): Disable for 64bit.
+ (pushsf_rex64): New pattern and splitter.
+ (pushdf_nointeger): Disable for 64bit.
+ (pushdf_integer): Handle the 64bit case.
+ (pushtf): Likewise; update splitters.
+
+2001-03-22 Richard Henderson <rth@redhat.com>
+
+ * mkconfig.sh: Include insn-flags.h.
+ * Makefile.in (CONFIG_H): Include insn-flags.h.
+ (lots of objects): Remove insn-codes.h and insn-flags.h.
+
+ * alias.c, bb-reorder.c, calls.c, do-loop.c, flow.c, haifa-sched.c,
+ integrate.c, jump.c, loop.c, predict.c, profile.c, reg-stack.c,
+ regmove.c, reorg.c, a29k/a29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
+ avr/avr.c, clipper/clipper.c, convex/convex.c, d30v/d30v.c,
+ dsp16xx/dsp16xx.c, fr30/fr30.c, h8300/h8300.c, i370/i370.c,
+ i386/i386.c, i860/i860.c, ia64/ia64.c, m32r/m32r.c, m68hc11/m68hc11.c,
+ m68k/m68k.c, m88k/m88k.c, mcore/mcore.c, mn10200/mn10200.c,
+ mn10300/mn10300.c, ns32k/ns32k.c, pa/pa.c, pdp11/pdp11.c,
+ pj/pj.c, romp/romp.c, rs6000/rs6000.c, sh/sh.c, sparc/sparc.c,
+ v850/v850.c, vax/vax.c:
+ Don't include insn-flags.h.
+
+ * diagnostic.c, expr.h, reload.c, toplev.c:
+ Don't include insn-codes.h.
+
+ * builtins.c, combine.c, except.c, explow.c, expmed.c, expr.c,
+ final.c, function.c, optabs.c, recog.c, reload1.c, stmt.c,
+ c4x/c4x.c, i960/i960.c, mips/mips.c:
+ Don't include insn-codes.h or insn-flags.h.
+
+ * genemit.c, genopinit.c, genoutput.c: Don't include insn-codes.h
+ or insn-flags.h in the generated code.
+ * genflags.c (gen_proto): Use "struct rtx_def *" instead of "rtx".
+ (main): Forward declare struct rtx_def.
+
+2001-03-22 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi (-ffast-math): Remove duplicate line about
+ __FAST_MATH__.
+
+ * gcc.texi: Remove more obsolete documentation of bugs and
+ installation problems.
+
+2001-03-21 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.md (movsi_h8300hs): Split the 2nd alternative
+ into two parts.
+
+2001-03-20 Jason Merrill <jason@redhat.com>
+
+ * collect2.c (is_ctor_dtor): Always use '_' in the file fn names,
+ not '.' or '$'.
+ * tree.c (FILE_FUNCTION_FORMAT): Likewise.
+ * varasm.c (CHKR_PREFIX): Likewise.
+
+Wed Mar 21 14:27:11 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * gcse.c (hash_scan_set): An expression is not anticipatible if it
+ is part of a multi-SET insn.
+
+ * cse.c (find_comparison_args): Remove previous change.
+ * ifcvt.c (noce_process_if_block): When moving an insn, remove any
+ REG_EQUAL notes.
+
+ * config/i386/i386.md (conditional_trap): Remove warning.
+
+ * recog.c (push_operand): Fix error in last change that caused
+ undefined symbol on many targets.
+
+ * sdbout.c: #include ggc.h.
+ (sdbout_init): Move to end of file.
+ Call ggc_add_tree_root for anonymous_types.
+ (sdbout_symbol): Use DECL_NAME for local, not DECL_ASSEMBLER_NAME.
+ (sdbout_one_type): Use DECL_NAME for field name.
+ * Makefile.in (sdbout.o): Show includes ggc.h.
+
+Wed Mar 21 20:33:26 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (override_options): Default ix86_regparm to REGPARM_MAX.
+ (override_options): Use properlimits for preferred_stack_boundary.
+ (ix86_valid_type_attribute_p): Disable stdcall and cdecl attributes
+ on x86_64.
+ (ext_register_operand): Accept DImode.
+ (load_pic_register): Abort on 64bit.
+ (gen_push): Use Pmode instead of SImode.
+ (ix86_save_reg): Pic reg is never used on 64bit.
+ (ix86_expand_prologue): Likewise.
+ (ix86_emit_save_regs): Use Pmode instead of SImode.
+ (legitimate_address_p): Check displacement for 64bit.
+ (print_operand): Avoid outputting of (%rip) on 64bit.
+ (print_operand_address): Output (%rip) where possible.
+ (split_di): Abort on 64bit registers.
+ (ix86_expand_branch): DImode comparison is simple for x86_64.
+ (memory_address_length): Recognize memory addresses formed using
+ PRE/POST modify.
+ (ix86_data_alignment, ix86_local_alignment): Align arrays to 16 bytes
+ for x86_64.
+ * i386.h (TARGET_USE_SAHF): Disable for 64bit.
+
+Wed Mar 21 18:51:19 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (push_operand): Recognize new format of push instructions.
+
+Wed Mar 21 10:53:57 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (pushqi1): New.
+ * i386-protos.h (x86_64_general_operand, x86_64_szext_general_operand,
+ x86_64_nonmemory_operand, x86_64_szext_nonmemory_operand,
+ x86_64_immediate_operand, x86_64_immediate_operand,
+ x86_64_zext_immediate_operand): Declare.
+ * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
+ x86_64_nonmemory_operand, x86_64_szext_nonmemory_operand,
+ x86_64_immediate_operand, x86_64_immediate_operand,
+ x86_64_zext_immediate_operand): define.
+ * i386.h (PREDICATE_CODES): Add new predicates.
+
+Wed Mar 21 10:25:13 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (pophi1, popqi1, pushqi1): Remove.
+
+ * expr.c (emit_single_push_insn): New function.
+ (move_by_pieces): Accept NULL as destination for push instructions.
+ (gen_push_operand): Kill.
+ (emit_push_insn): Pass NULL when pushing; avoid updating of
+ stack_pointer_delta.
+ * expr.h (gen_push_operand): Kill.
+
+Tue Mar 20 20:15:06 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * rtl.texi (COMPARE): Clarify documentation and reference section
+ on comparisons.
+
+2001-03-20 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (get_static_reference): Use NULL_TREE.
+ (get_object_reference): Ditto.
+ (error_with_ivar): Use error_with_file_and_line.
+ (warn_with_method): Use warning_with_file_and_line.
+
+2001-03-20 Tom Tromey <tromey@redhat.com>
+
+ * libgcc-std.ver: Added __fixunssfsi and __fixunsdfsi.
+
+2001-03-20 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.c (set_decl_assembler_name): Set DECL_ASSEMBLER_NAME for
+ variables that are TREE_PUBLIC, even if not TREE_STATIC.
+
+2001-03-20 DJ Delorie <dj@redhat.com>
+
+ * Makefile.in (install-libgcc): Pass complete list of variables.
+ (install-multilib): Ditto.
+
+2001-03-20 David Billinghurst <David.Billinghurst@riotinto.com>
+
+ * config/i386/cygwin.h: Declare ctor_section, dtor_section
+ drectve_section, switch_to_section.
+
+ * winnt.c: Declare functions associated_type, gen_stdcall_suffix,
+ i386_pe_dllexport_p, i386_pe_dllimport_p, i386_pe_mark_dllexport,
+ i386_pe_mark_dllimport.
+
+2001-03-20 David Billinghurst <David.Billinghurst@riotinto.com>
+
+ * config/i386/cygwin.h: Include <stdio.h> Declare and constify
+ functions i386_pe_*.
+
+ * config/i386/winnt.c: Include "tm_p.h" and "toplev.h" Constify
+ i386_pe_* functions with char * arguments.
+
+2001-03-20 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (movsf_ie): Fix output patterns for fpul load
+ and store.
+ (movsi_ie): Introduce fpul store.
+
+2001-03-20 Alan Modra <alan@linuxcare.com.au>
+
+ * Makefile.in (OBJS): Remove hashtab.o.
+
+2001-03-19 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c (maybe_objc_method_name): Remove, never called.
+ * c-lang.c (maybe_objc_method_name): Ditto.
+ * c-tree.h (maybe_objc_method_name): Remove decl.
+
+2001-03-19 Tom Tromey <tromey@redhat.com>
+
+ * gcc.c (init_gcc_specs): Fix comment.
+
+2001-03-19 Mark Mitchell <mark@codesourcery.com>
+
+ Compute DECL_ASSEMBLER_NAME lazily.
+ * tree.h (DECL_ASSEMBLER_NAME): Compute it lazily.
+ (DECL_ASSEMBLER_NAME_SET_P): New macro.
+ (SET_DECL_ASSEMBLER_NAME): Likewise.
+ (COPY_DECL_ASSEMBLER_NAME): Likewise.
+ (set_decl_assembler_name): Declare.
+ (lang_set_decl_assembler_name): Likewise.
+ * tree.c (lang_set_decl_assembler_name): New variab.e
+ (set_decl_assembler_name): New function.
+ (init_obstacks): Set lang_set_decl_assembler_name.
+ (build_decl): Don't set DECL_ASSEMBLER_NAME.
+ * c-decl.c (duplicate_decls): Use SET_DECL_ASSEMBLER_NAME,
+ COPY_DECL_ASSEMBLER_NAME, etc. Don't set DECL_ASSEMBLER_NAME
+ where it's not necessary.
+ (builtin_function): Likewise.
+ (finish_decl): Likewise.
+ * dbxout.c (dbxout_type_methods): Likewise.
+ * ggc-common.c (ggc_mark_trees): Likewise.
+ * profile.c (output_func_start_profiler): Likewise.
+ * varasm.c (make_decl_rtl): Likewise.
+
+ * cse.c (find_comparison_args): Update documentation. Fix
+ mishandling of COMPARE operations.
+
+ * tree.def (ABS_EXPR): Add documentation.
+ * fold-const.c (fold): Improve folding of ABS_EXPRs.
+
+2001-03-19 Zack Weinberg <zackw@stanford.edu>
+
+ * Makefile.in (hash.o): Depend on $(GCONFIG_H), not $(CONFIG_H).
+
+2001-03-19 Jakub Jelinek <jakub@redhat.com>
+
+ * crtstuff.c (init_dummy): Use CRT_END_INIT_DUMMY if defined.
+ Remove ia32 linux PIC kludge and move it...
+ * config/i386/linux.h (CRT_END_INIT_DUMMY): ...here.
+
+Mon Mar 19 18:53:54 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (absdf2 expander): Fix 64bit case.
+
+2001-03-19 Brad Lucier <lucier@math.purdue.edu>
+
+ * Makefile.in: Have splay-tree.o depend on $(GCONFIG_H).
+
+2001-03-16 Andrew Haley <aph@cambridge.redhat.com>
+
+ * config/ia64/libgcc-ia64.ver: Add __ia64_backtrace.
+
+2001-03-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * README.X11: Remove obsolete file.
+
+2001-03-18 Anthony Green <green@redhat.com>
+
+ * config/pj/pj.h: Remove some trailing commas.
+ (ASM_SPEC): Use -EB and -EL, not -mb and -ml.
+
+2001-03-18 Richard Henderson <rth@redhat.com>
+
+ * defaults.h (ACCUMULATE_OUTGOING_ARGS, PUSH_ARGS): Move from ...
+ * calls.c: ... here.
+ * combine.c, expr.c, final.c, function.c toplev.c: Don't provide
+ defaults for them here.
+
+2001-03-17 Anthony Green <green@redhat.com>
+
+ * config/pj/lib1funcs.S: Fix broken comment.
+ * config/pj/pj.h (LOCAL_LABEL_PREFIX): Prefix internal
+ labels with '.'.
+
+2001-03-18 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi: Remove obsolete information relating to build and
+ installation problems with enquire or the Pyramid C compiler.
+
+2001-03-17 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (queue_reg_save): New.
+ (flush_queued_reg_saves, clobbers_queued_reg_save): New.
+ (dwarf2out_frame_debug_expr): Call queue_reg_save instead of
+ dwarf2out_reg_save.
+ (dwarf2out_frame_debug): Call flush_queued_reg_saves when needed.
+ (cfa, cfa_store, cfa_temp): Make static.
+ * final.c (final_scan_insn): Always call dwarf2out_frame_debug.
+
+2001-03-17 Richard Henderson <rth@redhat.com>
+
+ * integrate.h (struct inline_remap): Add local_return_label.
+ * integrate.c (expand_inline_function): Initialize it and emit
+ it after copy_insn_notes.
+ (copy_insn_list): Don't store local_return_label here.
+ (copy_insn_notes): New function split out from copy_insn_list.
+
+2001-03-17 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (lookup_filename): Emit .file if the assembler
+ is generating .debug_line.
+ (dwarf2out_init): Add main_input_filename to the file table first.
+ * configure.in (as_dwarf2_debug_line): Test with file number 1
+ instead of file number 0.
+
+Sat Mar 17 11:52:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * combine.c (undobuf): Remove field previous_undos; all refs deleted.
+ (gen_rtx_combine): Deleted; all references changed as appropriate.
+ (gen_unary): Deleted; all refs changed to call simplify_gen_unary.
+
+ * print-tree.c (print_node): Print DECL_NONADDRESSABLE_P.
+
+2001-03-17 David Billinghurst <David.Billinghurst@riotinto.com>
+
+ * config/i386/xm-cygwin.h: Include <sys/cygwin.h. Remove unused
+ variable.
+
+2001-03-16 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.c (ia64_compute_frame_size): If reg_fp is zero,
+ then set it to LOC_REG (79) instead of aborting.
+
+2001-03-16 Phil Edwards <pme@sources.redhat.com>
+
+ * gccbug.in: Remove high priority.
+
+2001-03-16 Richard Henerson <rth@redhat.com>
+
+ * aclocal.m4 (gcc_AC_EXAMINE_OBJECT): Substitute leading od
+ output with a space instead of deleting it.
+ * configure: Regenerate.
+
+2001-03-16 Zack Weinberg <zackw@stanford.edu>
+
+ * aclocal.m4 (gcc_AC_EXAMINE_OBJECT): New utility macro which
+ handles the gory details of converting an object file into
+ something that's safe to grep.
+ (gcc_AC_C_COMPILE_BIGENDIAN): Rename to
+ gcc_AC_C_COMPILE_ENDIAN. Use gcc_AC_EXAMINE_OBJECT. Put
+ newlines at either end of the string we're looking for.
+ Make 'checking ...' message less stilted.
+ (gcc_AC_C_FLOAT_FORMAT): Use gcc_AC_EXAMINE_OBJECT. Handle
+ ARM in-memory layout and its hypothetical converse. Don't
+ define HOST_FLOAT_WORDS_BIG_ENDIAN unless it's different from
+ HOST_WORDS_BIG_ENDIAN.
+
+ * configure.in: Adjust for renamed macro. Move
+ gcc_AC_C_FLOAT_FORMAT below gcc_AC_C_COMPILE_ENDIAN.
+ * configure, config.in: Regenerate.
+
+2001-03-16 Laurynas Biveinis <lauras@softhome.net>
+
+ * fixinc/Makefile.in: Set SHELL.
+
+2001-03-16 Laurynas Biveinis <lauras@softhome.net>
+
+ * fixinc/fixincl.c (fix_with_system): Quote file names before
+ passing them to shell.
+
+2001-03-16 Laurynas Biveinis <lauras@softhome.net>
+
+ * Makefile.in: Use fix-header$(build_exeext) instead
+ of fix-header.
+
+2001-03-16 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c: Revert most of 2000-11-25 and 2001-01-24 changes.
+ (LN_PROLOG_AS_LABEL, LN_PROLOG_END_LABEL): New.
+ (size_of_line_prolog): Remove.
+ (output_line_info): Compute prologue size via label difference.
+ (lookup_filename): Return "unspecified" for <internal> and <built-in>.
+
+ * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Require that the
+ assembler error when redefining file numbers.
+ * config.in, configure: Rebuild.
+
+ * dwarf2asm.c (dw2_asm_output_data): Mask data to the output size.
+ (dw2_asm_output_data_uleb128): Use space not tab after .uleb128.
+ (dw2_asm_output_delta_uleb128): Likewise.
+ (dw2_asm_output_delta_sleb128): Similarly.
+ (dw2_asm_output_data_sleb128): Similarly. Print number in decimal.
+
+2001-03-16 Michael Meissner <meissner@redhat.com>
+
+ * mips.h (BITMASK_HIGH): Replacement for 0x80000000 that avoids
+ warnings.
+ (BITMASK_UPPER16): Replacement for 0xffff0000 that avoids
+ warnings.
+ (BITMASK_LOWER16): Replacement for 0x0000ffff.
+
+ * mips.c (save_restore_insns): Use BITMASK_UPPER16/BITMASK_LOWER16
+ instead of 0xffff0000/0x0000ffff to avoid warnings about constants
+ being unsigned in ISO C and signed in traditional.
+ (expand_prologue): Ditto.
+ (RA_MASK): Use BITMASK_HIGH to avoid warnings.
+
+ * mips.md (divmodsi4,divmodsi4): Use BITMASK_HIGH to avoid
+ warnings.
+ (divsi3,divdi3): Ditto.
+ (modsi3,moddi3): Ditto.
+ (fix_truncdfsi2,fix_truncdfdi2): Ditto.
+ (fix_truncsfsi2,fix_truncsfdi2): Ditto.
+ (movsi split): Use BITMASK_UPPER16/BITMASK_LOWER16 to avoid
+ warnings.
+
+Fri Mar 16 14:47:57 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_fp_movcc): Do not attempt to construct
+ SSE based conditional moves on LTGT/UNEQ conditions;
+ Canonicalize EQ to NE.
+ * i386.md (sse_mov?fcc): Disallow EQ and NE in IEEE mode.
+ (sse_mov?fcc_ne): New.
+
+ * i386-protos.h (sign_extended_value, zero_extended_value): Declare.
+
+2001-03-16 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (sh_expand_prologue): Insns that set up the PIC
+ register may be dead.
+
+2001-03-16 Brad Lucier <lucier@math.purdue.edu>
+
+ * Makefile.in (hash.o): Depend on CONFIG_H.
+
+2001-03-15 Mark Mitchell <mark@codesourcery.com>
+
+ * dwarf2out.c (rtl_for_decl_location): Use DECL_RTL_IF_SET.
+
+2001-03-15 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): New.
+ (ASM_OUTPUT_DWARF_PCREL): New.
+ * config/ia64/hpux.h (ASM_OUTPUT_DWARF_OFFSET): Remove.
+
+2001-03-16 Alexandre Oliva <aoliva@redhat.com>
+
+ * cppfiles.c (stack_include_file): Use MAX of sysp.
+
+2001-03-15 Steve Ellcey <sje@cup.hp.com>
+
+ * config.gcc (ia64*-*-hpux*): New case.
+ * config/ia64/hpux.h: New file for HP-UX support.
+ * config/ia64/t-hpux: New file for HP-UX support.
+
+2001-03-16 Bruce Korb <bkorb@gnu.org>, Alexandre Oliva <aoliva@redhat.com>
+
+ * fixinc/inclhack.def (irix_stdio_va_list): New.
+ * fixinc/fixincl.x: Rebuilt.
+
+2001-03-15 Richard Henderson <rth@redhat.com>
+
+ * dwarf2asm.c (dw2_asm_output_offset): Use ASM_OUTPUT_DWARF_OFFSET
+ if provided by the target.
+ (dw2_asm_output_pcrel): Likewise with ASM_OUTPUT_DWARF_PCREL.
+ (dw2_asm_output_addr): New.
+ * dwarf2asm.h (dw2_asm_output_addr): Declare.
+ * dwarf2out.c (output_cfi): Use it for program addresses.
+ (output_call_frame_info, output_die): Likewise.
+ (output_aranges, output_line_info): Likewise.
+
+2001-03-15 Bruce Korb <bkorb@gnu.org>
+
+ * gcc.c(main): make more rigorous
+ * collect2.c(main): guard against ignoring SIGCHLD
+ * protoize.c(main): ditto
+ * gcc/fixinc/fixincl.c(initialize): ditto
+
+2001-03-15 Mark Mitchell <mark@codesourcery.com>
+
+ * sdbout.c (sdbout_symbol): Use DECL_RTL_SET_P, SET_DECL_RTL.
+ (sdbout_parms): Likewise.
+
+Thu Mar 15 12:57:14 2001 Jeffrey A Law (law@cygnus.com)
+
+ * reload1.c (reload_cse_simplify_set): For LOAD_EXTEND_OP, do not
+ "widen" a destination that is already wider than a word. Also do
+ not widen if LOAD_EXTEND_OP is NIL for the given mode.
+
+2001-03-15 Bernd Schmidt <bernds@redhat.com>
+
+ * config/ia64/ia64.c (ia64_sched_reorder): Remove debugging aids.
+
+Thu Mar 15 11:30:31 EST 2001 John Wehle (john@feith.com)
+
+ * i960.h (ROUND_TYPE_SIZE_UNIT): Fix typo.
+
+Thu Mar 15 11:24:29 EST 2001 John Wehle (john@feith.com)
+
+ * i960.h (i960_maxbitalignment,
+ i960_last_maxbitalignment): Declare.
+ * i960.c (i960_maxbitalignment,
+ i960_last_maxbitalignment): Make global.
+ (process_pragma): Delete.
+ (i960_pr_align, i960_pr_noalign): Move from here ...
+ * i960-c.c: ... to this new file.
+ * t-960bare (i960-c.o): New rule.
+ * t-vxworks960 (i960-c.o): Likewise.
+ * config.gcc (i960-*-*): Define c_target_objs and
+ cxx_target_objs.
+
+2001-03-15 Bernd Schmidt <bernds@redhat.com>
+
+ * cselib.c (hash_rtx): For REG and MEM, just use value of expression
+ without adding in rtx code and mode.
+
+ * alias.c (init_alias_analysis): Don't use any rtx whose value
+ varies as a known value.
+ Delete a superfluous test.
+
+ * config/ia64/ia64.c (maybe_rotate): New function, broken out of
+ ia64_sched_reorder.
+ (ia64_sched_reorder): Call maybe_rotate; also rotate after
+ scheduling a stop bit.
+ (ia64_emit_nops): Correctly handle ASMs.
+
+2001-03-15 Mark Mitchell <mark@codesourcery.com>
+
+ * varasm.c (assemble_variable): Use DECL_RTL_SET_P.
+
+2001-03-15 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi: Update documentation for -include and -imacros.
+ * cppfiles.c (struct include_file): Remove "defined" memeber.
+ (find_or_create_entry): Make a copy of the file name, and
+ simplify it.
+ (open_file): Update to ensure we use the simplified filename.
+ (stack_include_file): Don't set search_from.
+ (cpp_included): Don't simplify the path name here.
+ (find_include_file): New prototype. Call search_from to
+ get the start of the "" include chain. Don't simplify the
+ filenames here.
+ (_cpp_execute_include): New prototype. Move diagnostics to
+ do_include_common. Update.
+ (_cpp_pop_file_buffer): Don't set defined.
+ (search_from): New prototype. Use the preprocessor's cwd
+ for files included from the command line.
+ (read_name_map): Don't simplify the pathname here.
+ * cpphash.h (enum include_type): New.
+ (struct buffer): Delete search from. New search_cached.
+ (_cpp_execute_include): Update prototype.
+ * cppinit.c (do_includes): Use _cpp_execute_include.
+ * cpplib.c (do_include_common): New function.
+ (do_include, do_include_next, do_import): Use it.
+
+2001-03-14 Mark Mitchell <mark@codesourcery.com>
+
+ * varasm.c (assemble_alias): Use DECL_ASSEMBLER_NAME, not the
+ contents of the RTL, to determine the name of the object.
+
+2001-03-14 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.h (DECL_RTL): Allocate RTL lazily.
+ (SET_DECL_RTL): New macro.
+ (DECL_RTL_SET_P): Likewise.
+ (COPY_DECL_RTL): Likewise.
+ (DECL_RTL_IF_SET): Likewise.
+ * varasm.c (make_decl_rtl): Add assertions about the kind of
+ declaration we are processing.
+ * c-decl.c (duplicate_decls): Use COPY_DECL_RTL, DECL_RTL_SET_P, etc.
+ (start_decl): Likewise.
+ (finish_decl): Likewise.
+ * c-semantics.c (emit_local_var): Likewise.
+ * calls.c (expand_call): Likewise.
+ * dbxout.c (dbxout_symbol): Likewise.
+ * emit-rtl.c (unshare_all_rtl): Likewise.
+ (unshare_all_decls): Likewise.
+ (reset_used_decls): Likewise.
+ * expr.c (store_constructor): Likewise.
+ (safe_from_p): Likewise.
+ (expand_expr): Likewise.
+ * function.c (put_var_into_stack): Likewise.
+ (instantiate_decls_1): Likewise.
+ (assign_parms): Likewise.
+ (expand_function_start): Likewise.
+ (expand_function_end): Likewise.
+ * ggc-common.c (gcc_mark_trees): Likewise.
+ * integrate.c (function_cannot_inline_p): Likewise.
+ (copy_decl_for_inlining): Likewise.
+ (expand_inline_function): Likewise.
+ (integrate_parm_decls): Likewise.
+ (integrate_decl_tree): Likewise.
+ * print-tree.c (print_node): Likewise.
+ * reg-stack.c (stack_result): Likewise.
+ * stmt.c (label_rtx): Likewise.
+ (expand_return): Likewise.
+ (expand_decl): Likewise.
+ (expand_decl_cleanup): Likewise.
+ (expand_anon_union_decl): Likewise.
+ * toplev.c (check_global_declarations): Likewise.
+ (rest_of_decl_compilation): Likewise.
+ * tree.c (simple_cst_equal): Likewise.
+ * objc/objc-act.c (generate_static_references): Likewise.
+
+2001-03-14 Zack Weinberg <zackw@stanford.edu>
+
+ * aclocal.m4 (gcc_AC_C_CHARSET, gcc_AC_C_COMPILE_BIGENDIAN,
+ gcc_AC_C_FLOAT_FORMAT): New macros.
+ * configure.in: Add AC_PROG_CPP after CC tests;
+ gcc_AC_C_CHARSET and gcc_AC_C_FLOAT_FORMAT after the sizeof
+ tests; and gcc_AC_C_COMPILE_BIGENDIAN after gcc_AC_C_CHAR_BIT.
+ * configure, config.in: Regenerate.
+
+ * config/a29k/xm-a29k.h, config/arc/xm-arc.h,
+ config/arm/xm-arm.h, config/c4x/xm-c4x.h,
+ config/convex/xm-convex.h, config/d30v/xm-d30v.h,
+ config/i370/xm-linux.h, config/i370/xm-oe.h,
+ config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
+ config/m68k/xm-m68k.h, config/mips/xm-mips.h,
+ config/pa/xm-linux.h, config/pa/xm-pa.h,
+ config/rs6000/xm-lynx.h, config/rs6000/xm-mach.h,
+ config/rs6000/xm-rs6000.h, config/rs6000/xm-sysv4.h,
+ config/sparc/xm-sparc.h, config/vax/xm-vax.h,
+ config/we32k/xm-we32k.h: Delete.
+
+ * config/i370/xm-mvs.h, config/m88k/m88k.h,
+ config/romp/xm-romp.h, config/rs6000/xm-beos.h,
+ config/vax/xm-vms.h: Don't define any of:
+ HOST_FLOAT_FORMAT, HOST_EBCDIC, HOST_WORDS_BIG_ENDIAN
+
+ * config/rs6000/aix.h: Define COLLECT_EXPORT_LIST here.
+
+ * config.gcc: Remove references to deleted files.
+ (i370-*-opened*): Use i370/xm-mvs.h (which now defines only
+ FATAL_EXIT_CODE, which is the same between oe and mvs).
+
+2001-03-14 DJ Delorie <dj@redhat.com>
+ Vladimir Makarov <vmakarov@redhat.com>
+
+ * config/i960/i960.c (i960_function_prologue): Compute size of
+ frame according to number of registers actually saved there.
+
+2001-03-14 Richard Henderson <rth@redhat.com>
+
+ * expr.c (emit_move_insn_1): Fix else if around #endif.
+
+Wed Mar 14 22:39:12 CET 2001 Jan Hubicka <jh@suse.cz>
+ Vojtech Pavlik
+
+ * md.texi (machine constraints): Document 'Q', 'R', 'e' and 'Z'
+ constraints.
+
+Wed Mar 14 22:26:10 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_cmodel_string, ix86_cmodel): Define.
+ (override_options): Parse cmodel string.
+ (x86_64_sign_extended_value, x86_64_zero_extended_value): New.
+ * i386.h (TARGET_OPTIONS): Add "cmodel".
+ (EXTRA_CONSTRAINT): Recognize 'e' and 'Z'.
+ (enum cmodel): New.
+ (ix86_cmodel_string, ix86_cmodel): Declare.
+
+Wed Mar 14 22:26:54 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ Spot by Matt Kraai:
+ * i386.h (GENERAL_REG_P): Add missing REG_P.
+
+2001-03-14 Laurynas Biveinis <lauras@softhome.net>
+
+ * configure.in: Use $gcc_cv_as instead of $as.
+ * configure: Regenerated.
+
+2001-03-14 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (stack_include_file): Only increase the include
+ count if we actually process the file properly, as opposed
+ to treating it as length zero. Only call read_include_file
+ if not DO_NOT_REREAD. Handle the -H include file output
+ here.
+ (read_include_file): Remove now redundant DO_NOT_REREAD check.
+ (cpp_included, find_include_file): Simplify pathnames after
+ remapping them. If remapping, don't use the remapped file
+ name's buffer as our scratch buffer.
+ (cpp_pop_file_buffer): Replace the multiple include macro
+ only if it isn't yet set.
+ (read_name_map): Simplify remapped names when reading in.
+ (remap_filename): Move code to code path that uses it.
+ (_cpp_simplify_pathname): Return the input pointer.
+ * cpphash.h (_cpp_simplify_pathname): Update prototype.
+
+2001-03-14 Mark Mitchell <mark@codesourcery.com>
+
+ * expr.c (expand_expr): Revove bogus conditional.
+
+Wed Mar 14 19:29:50 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * expr.c (emit_move_insn_1): Guard PUSH_ROUNDING use by ifdef.
+
+2001-03-14 Jakub Jelinek <jakub@redhat.com>
+
+ * reg-stack.c (stack_result): Unconditionally use
+ FUNCTION_OUTGOING_VALUE resp. FUNCTION_VALUE.
+
+Wed Mar 14 16:36:25 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * expr.c (emit_move_insn_1): Split push of complex value when
+ no suitable push instruction exist.
+
+ * i386.md (QImode move/add/shift patterns): Use ANY_QI_REG_P
+ instead of QI_REG_P.
+
+Tue Mar 13 22:22:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * alias.c (handled_component_p, can_address_p): New functions.
+ (get_alias_set): Use them.
+
+2001-03-13 Jim Wilson <wilson@redhat.com>
+
+ * config/ia64/ia64.c (find_gr_spill): Subtract frame_pointer_needed
+ from 80 in try_locals code.
+ (ia64_expand_prologue): Add comment pointing to find_gr_spill change.
+
+2001-03-13 Zack Weinberg <zackw@stanford.edu>
+
+ * aclocal.m4 (gcc_AC_COMPILE_CHECK_SIZEOF, gcc_AC_C_CHAR_BIT,
+ gcc_AC_C_LONG_LONG): New.
+ * configure.in: Use them. Probe the size of short, int, long,
+ and long long/__int64 if we have them. Move all the AC_C_*
+ checks together, except gcc_AC_C_CHAR_BIT which has to go
+ after AC_CHECK_HEADERS(limits.h).
+ Take hwint.h out of host_xm_file and build_xm_file.
+
+ * hwint.h: Unconditionally define HOST_BITS_PER_CHAR,
+ HOST_BITS_PER_SHORT, HOST_BITS_PER_INT, HOST_BITS_PER_LONG,
+ and HOST_BITS_PER_LONGLONG in terms of SIZEOF_* and CHAR_BIT.
+ Move the HOST_WIDEST_INT setup logic here from system.h.
+ Provide HOST_WIDEST_INT even if HOST_BITS_PER_LONGLONG is not
+ defined.
+ * system.h: Include hwint.h after limits.h. HOST_WIDEST_INT
+ is now handled by hwint.h.
+
+ * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms.h,
+ config/c4x/xm-c4x.h, config/i370/xm-oe.h,
+ config/ia64/xm-ia64.h: Don't define any of:
+ HOST_BITS_PER_LONG, HOST_BITS_PER_CHAR, HOST_BITS_PER_SHORT,
+ HOST_BITS_PER_LONGLONG.
+
+ * config/alpha/xm-alpha.h, config/dsp16xx/xm-dsp16xx.h,
+ config/h8300/xm-h8300.h, config/mips/iris6.h,
+ config/mn10200/xm-mn10200.h, config/pa/xm-pa64hpux.h,
+ config/sparc/xm-sp64.h: Delete.
+ * config.gcc: Remove references to deleted files.
+
+ * config/arm/xm-arm.h, config/mips/xm-mips.h: Don't define
+ HOST_FLOAT_FORMAT to IEEE_FLOAT_FORMAT.
+ * config/i370/xm-linux.h: Clarify floating-point situation in
+ a comment.
+
+2001-03-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (NO_INCLUDE_PATH): New macro.
+ (find_include_file): Decide here which part of the include
+ chain to start the search. Complain about an empty include
+ chain in all cases apart from an abolsute file name.
+ (_cpp_execute_include): Don't choose the search chain here.
+ Don't call handle_missing_include in the case of an empty
+ include chain.
+ (_cpp_compare_file_date): Don't choose the search chain here.
+ * cpplib.c (do_include_next): Move the in-main-file diagnostic
+ here from _cpp_execute_include. Behave like #include if
+ we're in the main file.
+
+2001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (malloc, realloc, calloc, strdup): Only poison these
+ tokens when IN_GCC is defined.
+
+Tue Mar 13 14:38:44 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (abs?f expander): Support SSE case.
+ (abd?f_if): Add new "USE"; add splitters.
+
+2001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * cpp.texi (poison): Explain the macro expansion exception.
+
+2001-03-13 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (store_expr): Add dont_store_target. If temp is already in
+ target before copying to reg, don't store it into target again.
+
+2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinternals.texi: Update for file handling.
+
+2001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * emit-rtl.c (remove_unnecessary_notes): Reverse Richard Kenner's
+ 2001-02-24 which broke building the Java library.
+ * function.c (identify_blocks): Likewise.
+ (all_blocks): Likewise.
+ * integrate.c (integrate_decl_tree): Likewise.
+ * print-tree.c (print_node): Likewise.
+ * tree.h (BLOCK_NUMBER): Likewise.
+ (struct tree_block): Likewise.
+
+2001-03-12 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000/aix51.h (CPP_SPEC, CPLUSPLUS_CPP_SPEC): Fix typo in
+ __WCHAR_TYPE__ definition.
+ (WCHAR_TYPE_SIZE): #undef before #define.
+
+2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c: Update comments.
+ (destroy_include_file_node): Rename destroy_node.
+ (find_or_create_entry): New function.
+ (open_file, _cpp_fake_include): Use it.
+ (handle_missing_header): New function, broken out of
+ _cpp_execute include. Don't segfault if there is no
+ system or quoted path.
+ (_cpp_execute_include): Use handle_missing_header.
+
+2001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * jump.c (reversed_comparison_code_parts): Reverse Jan Hubricka's
+ 2001-02-28 patch because it breaks arm-linux and mips-sgi-irix6.5.
+
+Mon Mar 12 14:05:32 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * flow.c (insn_dead_p): Don't consider two memrefs equivalent
+ unless anti_dependence says they are.
+ * alias.c (objects_must_conflict): If neither has a type specified,
+ they must conflict.
+
+2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
+ David Billinghurst <David.Billinghurst@riotinto.com>
+
+ * config/mips/iris5.h: Change WCHAR_TYPE to int.
+
+Mon Mar 12 16:32:21 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (trunctfdf2_2): Rename missnamed pattern.
+ (*_one_bit): Remove type on the match_operand in attributes.
+
+Mon Mar 12 16:27:56 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c: Commit forgotten hunk in previous patch.
+ (regclass_map): Add extended registers.
+ (dbx_register_map): Add missing frame register.
+
+Mon Mar 12 15:41:08 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (all XFmode patterns except swapxf): Disable for 64bit.
+
+ * i386.md (x86_sahf_1): Disable for 64bit.
+ (popsi*, pophi*): Likewise.
+ (pushqi, pushhi): Likewise.
+ (movdi, pushdi): Likewise.
+ (zero extend DImode splitter): Likewise.
+ (adddi, minusdi splitter): Likewise.
+ (umulsidi): Likewise.
+ (umulsi): New.
+ (mulsidi): Disable for 64bit
+ (lshift:DI/ashift:DI): Disable for 64bit.
+ (loop patterns): Likewise.
+ (call_pop, call_value_pop expanders and patterns): Likewise.
+ (prologue_get_pc): Likewise.
+ (leave): Likewise.
+ (fcmovDI pattern and splitter): Likewise.
+ (movdfcc_1_rex64): New.
+
+Mon Mar 12 15:16:36 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (VALID_FP_MODE_P): XFmode is invalid on x86_64.
+ (MODES_TIEABLE_P): QImodes and DImodes are tiable on x86_64.
+ (HARD_REGNO_CALLER_SAVE_MODE): Save QImodes as QImodes for x86_64.
+ (STATIC_CHAIN_REGNUM): Set to r10 for x86_64.
+ (PIC_OFFSET_TABLE_REGNUM): Set to INVALID_REGNUM for x86_64.
+ (LIMIT_RELOAD_CLASS): Avoid limiting of QImodes on x86_64.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): No need to QImodes.
+ (PUSH_ROUNDING): x86_64 rounds to 64bits.
+ (CONSTANT_ADDRESS_P): Accept CONST_DOUBLE.
+ (REGPARM_MAX): Set to 6 for x86_64.
+ (SSE_REGPARM_MAX): Set to 16 for x86_64.
+ * i386.c (hard_regno_mode_ok): QImodes can be in all general purpose
+ registers.
+
+ * (patterns that does use upper halves): Update constraints
+ 'q' to 'Q' and 'r' to 'R'.
+ (cmpqi_ext_1): Disable for 64bit.
+ (cmpqi_ext_3_insn): Likewise.
+ (movqi_extzv_1): Likewsie.
+ (addqi_ext_1): Liekwsie
+ (testqi_ext_1): Liekwsie
+ (andqi_ext_1): Liekwsie
+ (xorqi_ext_1): Liekwsie
+ (cmpqi_ext_1_rex64): New.
+ (cmpqi_ext_3_insn_rex64): Likewise.
+ (movqi_extzv_1_rex64): Likewsie.
+ (addqi_ext_1_rex64): Liekwsie
+ (testqi_ext_1_rex64): Liekwsie
+ (andqi_ext_1_rex64): Liekwsie
+ (xorqi_ext_1_rex64): Liekwsie
+
+2001-03-11 Zack Weinberg <zackw@stanford.edu>
+
+ * configure.in: Move check for unsigned enumerated bitfields
+ to macro in aclocal.m4. Disable it for now.
+ * configure, config.in: Regenerate.
+ * system.h: Don't do anything with ONLY_INT_FIELDS. Use the
+ unsigned-int form of ENUM_BITFIELD() unless being compiled by GCC.
+ * varasm.c (struct rtx_const): Use ENUM_BITFIELD(). Move enum
+ kind above its first use.
+
+ * config/xm-interix.h, config/alpha/xm-alpha.h,
+ config/i370/xm-linux.h, config/i386/xm-beos.h,
+ config/i386/xm-mingw32.h, config/mips/xm-mips.h,
+ config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
+ config/rs6000/xm-beos.h, config/rs6000/xm-sysv4.h,
+ Don't define ONLY_INT_FIELDS under any circumstances.
+
+ * config/pa/xm-pa.h: Don't define __BSD_NET2__.
+
+ * config/pa/xm-pahpux.h, config/pa/xm-papro.h,
+ config/sparc/xm-sysv4.h: Delete - now identical with some
+ other xm header.
+ * config.gcc (hppa targets): Replace xm-pahpux.h and
+ xm-papro.h with implicit xm-pa.h.
+ (sparc targets): Replace xm-sysv4.h with implicit or explicit
+ xm-sparc.h.
+
+2001-03-12 Aldy Hernandez <aldyh@redhat.com>
+
+ * reload1.c (reload_cse_simplify): Call reload_cse_simplify_set
+ before reload_cse_noop_set_p.
+
+2001-03-11 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc: Where xm-host.h used to include another
+ xm-host.h, list the nested header directly in xm_file. Remove
+ references to deleted files. Can now use sparc/xm-sp64.h for
+ sparcv9-*-solaris*.
+
+ * config/xm-linux.h, config/arm/xm-linux.h,
+ config/i386/xm-dos.h, config/i386/xm-gnu.h,
+ config/i386/xm-linux.h, config/i386/xm-openbsd.h,
+ config/i860/xm-fx2800.h, config/m68k/xm-atari.h,
+ config/m68k/xm-linux.h, config/m68k/xm-sun3.h,
+ config/sparc/xm-linux.h, config/sparc/xm-sysv4-64.h:
+ Delete.
+
+ * config/alpha/xm-alpha-interix.h: Don't include alpha/xm-alpha.h.
+ * config/mips/xm-iris5.h: Don't include mips/xm-mips.h. Don't
+ bother to wrap #undef in #ifdef.
+ * config/pa/xm-linux.h, config/rs6000/xm-sysv4.h:
+ Don't include xm-linux.h.
+ * config/sparc/xm-sp64.h: Don't include sparc/xm-sparc.h.
+
+ * configure.in: Wrap regexps using [] in changequote block.
+ Use expr : not echo | grep. Simplify regexps.
+ * configure: Regenerate.
+
+ 56 xm-files remain, 22 xm-arch.
+
+2001-03-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips-tfile.c: Cast arg to PTR when specifier is HOST_PTR_PRINTF.
+ (__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
+ (local_index, local_rindex): Delete, use strchr/strrchr instead.
+ (copy_object): Fix format specifier vs argument mismatch.
+
+ * mips-tdump.c: Make local functions static.
+ (rindex): Don't #undef.
+ (__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
+ (fatal, fancy_abort): Delete.
+ (read_seek): Avoid signed/unsigned compare.
+
+Sun Mar 11 17:01:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * combine.c (try_combine): Fix error in change to try original
+ register.
+ (gen_rtx_combine): Do same as gen_rtx for now.
+
+2001-03-11 Zack Weinberg <zackw@stanford.edu>
+
+ * configure.in: AC_SUBST xm_defines.
+ * configure: Regenerate.
+ * Makefile.in: Set DEFINES=$(xm_defines) when building
+ tconfig.h.
+
+2001-03-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (INCLUDE_LEN_FUDGE, ENOMEM): Delete.
+ (cpp_included, find_include_file): Update.
+ (_cpp_compare_file_date): Make else unconditional.
+
+2001-03-10 kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * config/sh/sh.h (LEGITIMATE_PIC_OPERAND_P): Defined.
+
+2001-03-10 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
+
+ * config/sh/sh.md (umulhisi3_i, mulhisi3_i): Fix mnemonics.
+ * config/sh/lib1funcs.asm (mulsi3): Convert mulu to mulu.w.
+
+Sat Mar 10 22:42:05 2001 Alexandre Oliva <aoliva@redhat.com>
+
+ * tree.c (build_common_tree_nodes_2): Don't copy va_list_type_node
+ if it's a record type.
+
+Sat Mar 10 17:52:54 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h: Make ../w32api a system directory. Reorganize
+ mingw includes slightly.
+
+2001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (malloc, realloc, calloc, strdup, bzero, bcmp, rindex):
+ #undef token before poisoning it.
+
+2001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.c (check_float_value): Use memcpy, not bcopy.
+
+ * m32r.c (m32r_sched_reorder): Likewise.
+
+ * vax.c (check_float_value): Likewise.
+
+2001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * toplev.c (file_name_nondirectory): Remove.
+ * toplev.h: Similarly.
+ * dwarf2out.c (compute_section_prefix): Use lbasename instead
+ of file_name_nondirectory.
+
+Sat Mar 10 10:36:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * mips-tdump.c (read_seek): Call xmalloc, not malloc.
+ * mips-tfile.c: Don't #undef rindex; not used.
+
+Sat Mar 10 14:34:59 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (DBX_REGISTER_NUMBER): Return proper values for 64bits.
+ (dbx64_register_map): Declare.
+ (RETURN_ADDR_RTX): Fix for 64bit.
+ (DWARF_FRAME_RETURN_COLUMN): Set to 16 for 64bit.
+ (INCOMING_FRAME_SP_OFFSET): Set to 8.
+ * i386.c (dbx64_register_map): New global array.
+ * beos-elf.h, freebsd.h, i386-interix.h, i386elf.h,
+ linux.h (DBX_REGISTER_REGNUMBER): Use dbx64_register_map
+ for 64bits.
+
+2001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (search_from): Use lbasename.
+ * mkdeps.c (deps_add_default_target): Use lbasename.
+
+2001-03-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fixinc/server.c (load_data, run_shell): Use xmalloc, xrealloc &
+ xcalloc in lieu of malloc, realloc & calloc.
+
+ * gencheck.c (xmalloc): Use really_call_malloc, not malloc.
+
+ * gengenrtl.c (xmalloc): Likewise.
+
+ * gensupport.c (xcalloc, xrealloc, xmalloc): Use the
+ really_call_* memory allocation routines.
+
+ * stmt.c (check_for_full_enumeration_handling): Use
+ really_call_calloc, not calloc.
+
+ * system.h (really_call_malloc, really_call_calloc,
+ really_call_realloc): Define.
+ (malloc, realloc, calloc, strdup, bzero, bcmp, rindex): Poison.
+
+Fri Mar 9 18:39:19 2001 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (builtin_longjmp): Rework slightly to work for PA64 too.
+
+2001-03-09 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * configure: Rebuilt.
+ * configure.in: Only use `lang_requires' for languages athat are
+ actually enabled.
+
+2001-03-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Fix typo.
+ * gcc.1: Regenerate.
+
+2001-03-09 Zack Weinberg <zackw@stanford.edu>
+
+ * configure.in: Prune nonexistent files from build_xm_file,
+ xm_file, and host_xm_file lists. Warn unless they're
+ $cpu/xm-$cpu.h.
+ Don't generate *config.h here.
+ AC_SUBST all variables needed to generate *config.h.
+ * configure: Regenerate.
+ * mkconfig.sh: New helper script, from code removed from
+ configure.in.
+ * Makefile.in: Zap all MALLOC variables - no longer used
+ anywhere, and malloc.c doesn't exist.
+ Substitute in variables needed to generate *config.h.
+ Stop lying about the dependencies contained in CONFIG_H and
+ GCONFIG_H.
+ (HCONFIG_H, TCONFIG_H, TM_P_H): New variables.
+ (config.h, hconfig.h, tconfig.h, tm_p.h, cs-config.h,
+ cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): New rules.
+ (all .o): Add dependencies on $(HCONFIG_H), $(TCONFIG_H),
+ $(TM_P_H), etc. as appropriate.
+
+ * config.gcc: Zap references to deleted files.
+ * ggc-none.c: Don't include rtl.h or tm_p.h.
+
+ * config/i386/xm-beos.h, config/i386/xm-dgux.h,
+ config/i386/xm-djgpp.h, config/i386/xm-dos.h,
+ config/i386/xm-gnu.h, config/i386/xm-i386-interix.h,
+ config/i386/xm-linux.h, config/i386/xm-linux.h,
+ config/i386/xm-next.h, config/i386/xm-openbsd.h,
+ config/i386/xm-sun.h, config/i386/xm-sysv3.h:
+ Don't include i386/xm-i386.h.
+
+ * config/elxsi/xm-elxsi.h, config/i386/xm-bsd386.h,
+ config/i386/xm-i386.h, config/i860/xm-i860.h,
+ config/i960/xm-i960.h, config/mcore/xm-mcore.h,
+ config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
+ config/pj/xm-pj.h, config/sh/xm-sh.h, config/v850/xm-v850.h:
+ Delete (empty except comments, #includes of other deleted
+ files, and macros used nowhere).
+
+Fri Mar 9 20:05:27 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (MAX_WCHAR_TYPE_SIZE): New constant to keep tradcpp
+ independent on TARGET_FLAGS.
+
+Fri Mar 9 19:52:52 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (FIRST_PSEUDO_REGISTER): Set to 53.
+
+ (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ONES): Add
+ extended ones.
+ (CONDITIONAL_REGISTER_USAGE): Set proper values according to
+ TARGET_64BIT.
+ (FIRST_REX_INT_REG, LAST_REX_INT_REG, FIRST_REX_SSE_REG,
+ LAST_REX_SSE_REG): define.
+ (enum reg_class): Add 'LEGACY_REGS'
+ (REG_CLASS_CONTENTS): Likewise; add extended registers.
+ (SSE_REGNO_P): Recognize extended registers.
+ (ANY_QI_REG_P, REX_INT_REGNO_P, REX_INT_REG_P): New.
+ (REG_CLASS_FROM_LETTER): Add 'R' and 'Q'.
+ (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P,
+ REG_OK_FOR_BASE_NONSTRICT_P): Recognize REX registers.
+ (REG_OK_FOR_STRREG_NONSTRICT_P, REG_OK_FOR_STRREG_STRICT_P,
+ REG_OK_FOR_STRREG_P): Remove.
+ (HI_REGISTER_NAMES): Add extended registers.
+ (ADDITIONAL_REGISTER_NAMES): Likewise.
+ (QI_REGISTER_NAMES): Add 8bit extended registers.
+ (DEBUG_REG): Support extended registers.
+ * i386.c (regclass_map): Add extended registers.
+ (dbx_register-map): Likewise.
+ (svr4_dbx_register_map): Likewise.
+ (print_reg): Support extended registers.
+ (print_operand): Support 64bit operands.
+
+Fri Mar 9 19:37:46 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Set to 128bit for x86_64
+ (BOOL_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE,
+ FLOAT_TYPE_SIZE, LONG_TYPE_SIZE, MAX_LONG_TYPE_SIZE,
+ DOUBLE_TYPE_SIZE, LONG_LONG_TYPE_SIZE): New constants.
+ (BITS_PER_WORD, UNITS_PER_WORD, POINTER_SIZE, PARM_BOUNDARY,
+ STACK_BOUNDARY): Set properly for 64bits.
+ (MAX_BITS_PER_WORD, MIN_UNITS_PER_WORD): New constants.
+ (EMPTY_FIELD_BOUNDARY): Define using BITS_PER_WORD.
+ (BIGGEST_FIELD_ALIGNMENT): Set to 128 for 64bits.
+ (MOVE_MAX): Set to 16.
+ (MOVE_MAX_PIECES): 8 for 64bit.
+ (Pmode): Set to SImode.
+
+Fri Mar 9 09:00:36 2001 Mike Stump <mrs@wrs.com>
+
+ * cselib.c (hash_rtx): Ensure that hash isn't zero upon return.
+
+Fri Mar 9 17:38:08 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (mask_64bit): New constant.
+ (target_64bit): New macro.
+ (target_options): Add '64'/'32'
+ (target_default): Define.
+ * cygwin.h freebsd-aout.h i386-interix.h i386.h i386elf.h isc.h
+ isccoff.h netbsd.h next.h openbsd.h p sco.h sco5.h scodbx.h sequent.h
+ unix.h win32.h (TARGET_DEFAULT): Rename to TARGET_SUBTARGET_DEFAULT.
+
+Thu Mar 8 23:36:56 2001 Jeffrey A Law (law@cygnus.com)
+
+ * config/pa/som.h (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Disable.
+
+Thu Mar 8 23:29:37 2001 John Wehle (john@feith.com)
+
+ * rtlanal.c (rtx_varies_p): Check operand 0 of a
+ LO_SUM unless for_alias is set.
+
+2001-03-08 Stan Shebs <shebs@apple.com>
+
+ * objc/objc-act.c: Fix old typos in comments, add comments for
+ various functions.
+ (hash_init): Fix file name in error message.
+ (hash_enter): Ditto.
+ (hash_add_attr): Ditto.
+ (continue_class): Ditto.
+
+2001-03-08 Bruce Korb <bkorb@gnu.org>
+
+ gcc.c(main): ensure SIGCHLD handling is set to SIG_DFL so that
+ wait4() can receive the signal.
+
+Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (AAB_dgux_int_varargs): Don't use HTML
+ entities.
+ * fixinc/fixincl.x: Regenerate.
+
+Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (AAA_standards): Undo <standards.h> breakage
+ on Tru64 UNIX.
+ * fixinc/fixincl.x: Regenerate.
+
+2001-03-08 Richard Henderson <rth@redhat.com>
+
+ * configure.in (HAVE_AS_LEB128): New assembler check.
+ * configure, config.in: Rebuilt.
+
+Thu Mar 8 19:54:04 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * reg-stack.c (move_for_stack_reg): Avoid non-poping fst for
+ TFmode too.
+
+2001-03-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/ns32k/xm-pc532-min.h, config/we32k/xm-we32k.h: Delete
+ references to the MAXPATHLEN macro.
+
+ * config/alpha/xm-alpha.h, config/arm/xm-arm.h,
+ config/i386/xm-cygwin.h, config/xm-linux.h: Delete references to
+ the POSIX macro.
+
+ * config/i386/xm-gnu.h, config/xm-gnu.h,
+ config/alpha/xm-openbsd.h, config/i386/xm-openbsd.h,
+ config/m68k/xm-openbsd.h, config/mips/xm-openbsd.h,
+ config/sparc/xm-openbsd.h, config/xm-openbsd.h: Delete empty
+ and/or unused files.
+
+ * config.gcc: Define POSIX in xm_defines as appropriate in lieu of
+ doing so in various xm-*.h files.
+
+Thu Mar 8 06:32:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/i386/i386.md (clrstrsi): Call ix86_set_move_mem_attrs.
+
+2001-03-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (enable_shared): Support per-package shared-library
+ enabling.
+ * configure: Rebuilt.
+
+2001-03-07 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (cr logic): Add original POWER mnemonic alternative
+ for crnot. Set operands[5] in splitter.
+
+2001-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/i370/xm-mvs.h, config/i370/xm-oe.h,
+ config/i386/xm-beos.h, config/i386/xm-mingw32.h,
+ config/m88k/xm-m88k.h, config/mips/xm-iris6.h,
+ config/mips/xm-openbsd.h, config/pa/xm-pa64hpux.h,
+ config/pa/xm-pahpux.h, config/rs6000/xm-beos.h,
+ config/rs6000/xm-darwin.h, config/rs6000/xm-mach.h,
+ config/rs6000/xm-rs6000.h, config/xm-interix.h: Delete references
+ to the USG macro.
+
+ * config/vax/xm-vaxv.h, config/a29k/xm-unix.h,
+ config/i370/xm-i370.h, config/i386/xm-dgux.h,
+ config/i386/xm-sun.h, config/i386/xm-sysv3.h,
+ config/m68k/xm-tower.h, config/m68k/xm-aux.h,
+ config/m68k/xm-hp320.h, config/m68k/xm-amix.h,
+ config/m68k/xm-altos3068.h, config/m68k/xm-mot3300.h,
+ config/m68k/xm-m68kv.h, config/m88k/xm-openbsd.h,
+ config/mips/xm-nws3250v4.h, config/mips/xm-sysv.h,
+ config/mips/xm-iris3.h, config/mips/xm-iris4.h, config/xm-svr3.h,
+ config/xm-svr4.h, config/sparc/xm-pbd.h, config/clipper/xm-clix.h:
+ Delete unused and/or empty files.
+
+ * config.gcc: Define USG in xm_defines as appropriate. Define
+ POSIX in lieu of xm-svr4.h. Delete all references to the SVR3
+ macro. Remove deleted xm-* files from $xm_files variable.
+
+2001-03-07 Tom Tromey <tromey@redhat.com>
+
+ * configure: Rebuilt.
+ * configure.in: Allow config-lang.in to set `lang_requires' to list
+ of other required languages.
+
+2001-03-07 Andrew MacLeod <amacleod@redhat.com>
+
+ * config/a29k/a29k.c (print_operand): Free a29k_last_prologue_insn
+ after its emitted.
+ (output_prologue): Use xmalloc not oballoc.
+ (output_epilog): Free a29k_first_epilogue_insn when finished.
+ * confif/a29k/a29k.h (PREDICATE_CODES): Remove shift_constant_operand.
+
+2001-03-07 Brad Lucier <lucier@math.purdue.edu>
+
+ * builtins.c (expand_builtin_mathfn): Check
+ flag_unsafe_math_optimizations, not flag_fast_math.
+ (expand_builtin): Likewise
+ * combine.c (combine_simplify_rtx): Likewise.
+ (simplify_if_then_else): Likewise.
+ * cse.c (fold_rtx): Likewise.
+ * flags.h: Remove flag_fast_math. Add
+ flag_unsafe_math_optimizations and flag_trapping_math.
+ * fold-const.c (negate_expr): Check
+ flag_unsafe_math_optimizations, not flag_fast_math.
+ (invert_truthvalue): Likewise.
+ (fold): Likewise. Before associating operands, check that
+ code == MULT_EXPR, not code != MULT_EXPR.
+ * ifcvt.c (noce_try_minmax): Check
+ flag_unsafe_math_optimizations, not flag_fast_math.
+ (noce_operand_ok): Check flag_trapping_math, not flag_fast_math.
+ * invoke.texi: Document -funsafe-math-optimizations and
+ -fno-trapping-math. Change documentation for -ffast-math.
+ * jump.c (reversed_comparison_code_parts): Likewise.
+ (rtx_equal_for_thread_p): Likewise.
+ * optabs.c (emit_conditional_move): Likewise.
+ * simplify-rtx.c (simplify_binary_operation): Likewise.
+ (simplify_relational_operation): Likewise.
+ (simplify_ternary_operation): Likewise.
+ * toplev.c: Remove flag_fast_math. Add flag_trapping_math and
+ flag_unsafe_math_optimizations. Remove fast-math entry from f_options.
+ Add trapping-math and unsafe-math-optimizations entries to f_options.
+ (set_fast_math_flags): New, sets flags for -ffast-math.
+ (set_no_fast_math_flags): New, sets flags for -fno-fast-math.
+ (decode_f_option): Add code to handle -ffast-math and -fno-fast-math.
+ * toplev.h: Declare set_fast_math_flags and set_no_fast_math_flags.
+
+ * config/alpha/alpha.c (alpha_emit_conditional_branch): Likewise.
+ (alpha_emit_conditional_move): Initialize local_fast_math to
+ flag_unsafe_math_optimizations, not flat_fast_math.
+ * config/c4x/c4x.c (c4x_override_options): Call set_fast_math_flags
+ instead of setting flag_fast_math to 1.
+ * config/convex/convex.md: Check flag_unsafe_math_optimizations,
+ not flag_fast_math.
+ * config/i386/i386.c (override_options): Likewise
+ * config/i386/i386.md: Likewise.
+ * config/m68k/m68k.md: Likewise.
+ * config/mips/mips.md: Likewise.
+ * config/rs6000/rs6000.c (validate_condition_mode): Likewise.
+ (rs6000_generate_compare): Likewise.
+
+2001-03-07 Laurynas Biveinis <lauras@softhome.net>
+
+ * Makefile.in: Set RANLIB to @RANLIB@.
+ Remove RANLIB_TEST.
+
+2001-03-07 Laurynas Biveinis <lauras@softhome.net>
+
+ * fixinc/inclhack.def (djgpp_wchar_h): New test.
+ * fixinc/fixincl.x: Regenerated.
+
+2001-03-07 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.md (call_osf_1_noreturn): New pattern.
+
+2001-03-07 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (remove_unnecessary_notes): Verify proper nesting
+ of block notes and exception handling notes.
+
+ * lists.c (init_EXPR_INSN_LIST_cache): Don't check initialized.
+ * toplev.c (rest_of_compilation): Call init_EXPR_INSN_LIST_cache ...
+ (compile_file): ... here.
+
+2001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fixinc/Makefile.in (FIXINC_DEFS): Add -DHAVE_CONFIG_H.
+
+ * fixinc/gnu-regex.c: Don't include auto-host.h since we get
+ config.h now. Include libiberty.h to handle alloca.
+
+2001-03-06 Zack Weinberg <zackw@stanford.edu>
+
+ * c-parse.in (yylexname): New function, split out of _yylex.
+ (objc_rid_sans_at): New table.
+ (init_reswords): Initialize it.
+ (_yylex): Give labels clearer names. Handle CPP_ATSIGN by
+ retrieving the next token and checking it for significance as
+ an ObjC keyword or string constant.
+
+ * cpplex.c (_cpp_lex_token): Just return CPP_ATSIGN for '@'.
+ * cpplib.h (TTYPE_TABLE): Add CPP_ATSIGN, drop CPP_OSTRING.
+
+ * c-lex.c, c-parse.in, cppmacro.c, cpplex.c: Remove references
+ to CPP_OSTRING.
+
+2001-03-06 Stephen L Moshier <moshier@mediaone.net>
+
+ * config/m68k/m68k.c (const_uint32_operand): Accept any
+ const_int on a 32-bit host.
+
+2001-03-06 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * objc/objc-act.c (init_objc): Set save_lang_status,
+ restore_lang_status, and mark_lang_status.
+
+2001-03-06 Krister Walfridsson <cato@df.lth.se>
+
+ * dwarf2asm.c (dw2_asm_output_delta): Fix smallest_mode_for_size call.
+
+2001-03-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinternals.texi: Update.
+
+2001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
+ config/alpha/xm-alpha.h, config/arc/xm-arc.h, config/arm/xm-arm.h,
+ config/c4x/xm-c4x.h, config/clipper/xm-clix.h,
+ config/convex/xm-convex.h, config/d30v/xm-d30v.h,
+ config/dsp16xx/xm-dsp16xx.h, config/elxsi/xm-elxsi.h,
+ config/h8300/xm-h8300.h, config/i370/xm-i370.h,
+ config/i370/xm-linux.h, config/i370/xm-mvs.h, config/i370/xm-oe.h,
+ config/i386/xm-i386.h, config/i860/xm-i860.h,
+ config/i960/xm-i960.h, config/ia64/xm-ia64.h,
+ config/m32r/xm-m32r.h, config/m68k/xm-m68k.h,
+ config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
+ config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
+ config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
+ config/pa/xm-linux.h, config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
+ config/pa/xm-pahpux.h, config/pa/xm-papro.h, config/pj/xm-pj.h,
+ config/romp/xm-romp.h, config/rs6000/xm-beos.h,
+ config/rs6000/xm-lynx.h, config/rs6000/xm-rs6000.h,
+ config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
+ config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
+ config/v850/xm-v850.h, config/vax/xm-vax.h, config/vax/xm-vms.h,
+ config/we32k/xm-we32k.h: Delete HOST_BITS_PER_* definitions which
+ match the defaults provided in hwint.h.
+
+ * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
+ config/sparc/xm-lynx.h, config/xm-std32.h: Delete files.
+
+ * config.gcc (xm_file): Don't set to files which are deleted.
+
+ * hwint.h: Provide default values for HOST_BITS_PER_*. No longer
+ guard this file against these macros being undefined.
+
+2001-03-06 Zack Weinberg <zackw@stanford.edu>
+
+ * objc/objc-act.c (objc_add_static_instance): Set DECL_INITIAL
+ and DECL_DEFER_OUTPUT on the decl we create, before calling
+ rest_of_decl_compilation.
+
+2001-03-06 Zack Weinberg <zackw@stanford.edu>
+
+ * aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE
+ AC_FUNC_ALLOCA.
+ * configure, config.in: Regenerate.
+ * config.gcc: Remove references to deleted files.
+
+ * genattr.c, genattrtab.c, genextract.c, genoutput.c,
+ genrecog.c, rtl.c: Do not use alloca anywhere.
+
+ * Makefile.in, build-make, system.h, config/x-interix,
+ config/x-svr4, config/xm-interix.h, config/xm-openbsd.h,
+ config/alpha/xm-alpha.h, config/alpha/xm-vms.h,
+ config/arc/xm-arc.h, config/arm/xm-arm.h,
+ config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
+ config/h8300/xm-h8300.h, config/i370/x-oe,
+ config/i370/xm-linux.h, config/i386/x-aix, config/i386/x-beos,
+ config/i386/x-ncr3000, config/i386/x-sco5,
+ config/i386/xm-dgux.h, config/i860/x-sysv4,
+ config/i960/xm-i960.h, config/m32r/xm-m32r.h,
+ config/m68k/x-crds, config/m68k/x-dpx2, config/m68k/x-hp320,
+ config/m68k/x-hp320g, config/m69k/x-mot3300,
+ config/m68k/x-mot3300-gas, config/m68k/xm-amix.h,
+ config/m68k/xm-hp320.h, config/m68k/xm-m68kv.h,
+ config/m68k/xm-mot3300.h, config/m88k/x-dolph,
+ config/m88k/x-sysv4, config/m88k/x-tekXD88,
+ config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
+ config/mips/x-iris, config/mips/x-iris3,
+ config/mips/x-sni-svr4, config/mips/x-sysv,
+ config/mips/xm-iris6.h, config/mips/xm-mips.h,
+ config/mips/xm-nws3250v4.h, config/pa/x-hpux,
+ config/pa/x-pa-mpeix, config/pa/xm-pa.h,
+ config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
+ config/pa/xm-papro.h, config/romp/xm-romp.h,
+ config/rs6000/x-aix31, config/rs6000/x-aix41,
+ config/rs6000/x-beos, config/rs6000/x-lynx,
+ config/rs6000/x-mach, config/rs6000/x-rs6000,
+ config/rs6000/x-sysv4, config/rs6000/xm-rs6000.h,
+ config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
+ config/sparc/x-sysv4, config/sparc/xm-linux.h,
+ config/sparc/xm-pbd.h, config/sparc/xm-sparc.h,
+ config/vax/xm-vms.h: Eradicate all references to alloca and
+ related stuff.
+
+ * config/xm-alloca.h, config/clipper/x-clix,
+ config/i386/xm-sysv4.h, config/i860/x-fx2800,
+ config/i860/x-sysv3, config/m88k/x-sysv3,
+ config/sparc/xm-sol2.h, config/we32k/x-we32k: Delete
+ (contained only alloca related hacks).
+
+ * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Just define
+ USE_C_ALLOCA.
+
+2001-03-05 Brad Lucier <lucier@math.purdue.edu>
+
+ * invoke.texi: Document __FAST_MATH__.
+
+2001-03-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * crtstuff.c: Restore include of auto-host.h.
+
+2001-03-05 Fergus Henderson <fjh@cs.mu.oz.au>
+
+ Put main() in a separate file, so that the language
+ front-end can use a different main().
+
+ * main.c: New.
+ * toplev.c: (main): Rename as toplev_main.
+ * toplev.h: Declare toplev_main.
+ * Makefile.in (OBJS): add toplev.o.
+ (BACKEND): remove toplev.o, add main.o.
+
+2001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (search_from): Special case the empty string.
+
+2001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (_cpp_execute_include): Don't make a null-terminated
+ copy of the filename. Don't use CPP_PREV_BUFFER. Don't call
+ strlen or strcpy; we already know the length.
+ (_cpp_compare_file_date): Similarly.
+ * cpphash.h (struct cpp_reader): Delete done_initialising.
+ (CPP_PREV_BUFFER): Delete.
+ * cppinit.c (cpp_start_read): Don't set done_initialising.
+ * cpplex.c (parse_string): Guarantee null-termination.
+ (_cpp_equiv_toklists): Remove.
+ * cpplib.c (glue_header_name): Null-terminate.
+ (do_line): Don't leak memory.
+ * cpplib.h (BT_WEAK): Delete.
+ * cppmain.c (cb_ident): Strings are now null-terminated.
+
+2001-03-04 Laurynas Biveinis <lauras@softhome.net>
+
+ * gcc.c (convert_filename): Append executable suffix
+ if NO_AUTO_EXE_SUFFIX is not defined.
+ * gcc.texi: Document NO_AUTO_EXE_SUFFIX.
+ * config/i386/djgpp.h: Define NO_AUTO_EXE_SUFFIX.
+
+2001-03-03 David O'Brien <obrien@FreeBSD.org>
+
+ from 2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
+ * c-parse.gperf, c-gperf.h: Delete.
+ (c-gperf.h was accidently re-added to the CVS repo in the rev
+ 1.16 commit by tromey)
+
+2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplex.c (_cpp_lex_token): Don't warn about directives in
+ macro arguments when looking for the '('.
+ * cppmacro.c (funlike_invocation_p): Set parsing_args to
+ 2 when really parsing arguments; 1 when looking for '('.
+ Always restore the lexer position.
+
+2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * longlong.h (umul_ppmm): Don't use a multiline string.
+
+2001-03-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * fixinc/fixlib.h (t_bool): Add identifier `t_bool' in typedef.
+ * fixinc/server.c (read_pipe_timeout): Use enum t_bool instead of
+ t_bool in declaration because pcc can't combine volatile with typedef
+ types.
+
+Sat Mar 3 19:47:13 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_fp_compare): Delay creating of scratch register
+ until when it is really needed.
+ (ix86_expand_compare): Update call of ix86_expand_fp_compare.
+ * i386.h (PREDICATE_CODES): Add all codes for sse_comparison_operator
+ * i386.md (float?i?f splitter): Don't force source operand to memory
+ for SSE.
+ (sse_movdfcc): Fix constraint.
+ (sse_movdfcc splitter): Handle properly the second alternative.
+
+2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplex.c (parse_string): Unconditionally pedwarn.
+
+2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi: Update.
+ * cppexp.c (parse_number): Update.
+ * cpplex.c (parse_string): Pedwarn if multiline string does not
+ result from a system header's macro.
+ * cpplib.h (sys_objmacro_p): Rename sys_macro_p.
+ * cppmacro.c (sys_objmacro_p): Rename sys_macro_p. Return true
+ for function-like macros too.
+ * c-lex.c (lex_number): Update.
+
+2001-03-03 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (output_call_frame_info): Fix augmentation length.
+
+Sat Mar 3 04:17:17 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * combine.c (try_combine): If split with mode-changed scratch
+ register didn't work, try the original mode.
+
+Sat Mar 3 03:46:47 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * tm.texi: Change STRUCT_FORCE_BLK to MEMBER_TYPE_FORCES_BLK.
+ * config/c4x/c4x.h: Likewise.
+ * stor-layout.c (compute_record_mode): Likewise.
+ (layout_type, case ARRAY_TYPE): Use MEMBER_TYPE_FORCES_BLK.
+
+2001-03-02 Zack Weinberg <zackw@stanford.edu>
+
+ * configure.in: Kill tm.h. Include the files in the $tm_file
+ list in all three of config.h, hconfig.h, tconfig.h, after the
+ relevant set of xm_files. Put TARGET_CPU_DEFAULT in all
+ three, include insn-codes.h in all three (#ifndef GENERATOR_FILE).
+ * configure: Regenerate.
+ * Makefile.in (clean): Don't delete tm.h.
+
+ * system.h: If SUCCESS_EXIT_CODE and FATAL_EXIT_CODE are not
+ defined, set them from EXIT_SUCCESS and EXIT_FAILURE. If
+ those are not defined, set SEC and FEC to 0 and 1.
+ * gcc.texi: Update to match.
+
+ * crtstuff.c: Include tconfig.h, not auto-host.h and tm.h.
+ * config/fp-bit.c, config/m68k/aux-crt2.asm,
+ config/m68k/aux-crtn.asm, config/m68k/aux-mcount.c:
+ Include tconfig.h, not tm.h.
+
+ * config/xm-lynx.h, config/xm-std32.h,
+ config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
+ config/alpha/xm-alpha.h, config/arc/xm-arc.h,
+ config/avr/xm-avr.h, config/c4x/xm-c4x.h,
+ config/clipper/xm-clix.h, config/convex/xm-convex.h,
+ config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
+ config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
+ config/h8300/xm-h8300.h, config/i370/xm-linux.h,
+ config/i386/xm-i386.h, config/i860/xm-i860.h,
+ config/i960/xm-i960.h, config/ia64/xm-ia64.h,
+ config/m32r/xm-m32r.h, config/m68hc11/xm-m68hc11.h,
+ config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
+ config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
+ config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
+ config/pa/xm-linux.h, config/pa/xm-pa.h,
+ config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
+ config/pa/xm-papro.h, config/pdp11/xm-pdp11.h,
+ config/pj/xm-pj.h, config/romp/xm-romp.h,
+ config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
+ config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
+ config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
+ config/v850/xm-v850.h, config/vax/xm-vax.h,
+ config/we32k/xm-we32k.h:
+ Don't include tm.h.
+ Don't define SUCCESS_EXIT_CODE or FATAL_EXIT_CODE.
+
+ * config/i370/xm-i370.h, config/i370/xm-mvs.h,
+ config/i370/xm-oe.h: Don't include tm.h. Don't define
+ SUCCESS_EXIT_CODE.
+ * config/vax/xm-vms.h: Don't include tm.h.
+
+ * config/xm-lynx.h, config/avr/xm-avr.h,
+ config/fr30/xm-fr30.h, config/pdp11/xm-pdp11.h,
+ Delete; made empty by above changes.
+ * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
+ config/rs6000/xm-lynx.h, config/sparc/xm-lynx.h:
+ Don't include config/xm-lynx.h or tm.h.
+
+ * config/xm-gnu.h: Don't include fcntl.h.
+ * config/sparc/xm-lynx.h: Don't include sys/types.h and
+ sys/wait.h.
+ * config/clipper/xm-clix.h, config/vax/xm-vax.h: Don't define isinf.
+
+2001-03-02 Richard Henderson <rth@redhat.com>
+
+ * tm.texi (File Framework): Document UNALIGNED_SHORT_ASM_OP,
+ UNALIGNED_INT_ASM_OP, and UNALIGNED_DOUBLE_INT_ASM_OP.
+
+2001-03-02 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (OBJS): Add dwarf2asm.o.
+ * dwarf2asm.c, dwarf2asm.h: New files.
+ * dwarf2out.c (*): Use them.
+ (size_of_uleb128, size_of_sleb128): Remove.
+ (output_uleb128, output_sleb128): Remove.
+ (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Remove.
+ (UNALIGNED_DOUBLE_INT_ASM_OP, ASM_BYTE_OP): Remove.
+ (UNALIGNED_OFFSET_ASM_OP, UNALIGNED_WORD_ASM_OP): Remove.
+ (FDE_LABEL, LINE_NUMBER_BEGIN_LABEL, LINE_NUMBER_END_LABEL): New.
+ (ASM_OUTPUT_DWARF_DATA1, ASM_OUTPUT_DWARF_DELTA1): Remove.
+ (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_DELTA2): Remove.
+ (ASM_OUTPUT_DWARF_DATA4, ASM_OUTPUT_DWARF_DELTA4): Remove.
+ (ASM_OUTPUT_DWARF_DATA, ASM_OUTPUT_DWARF_DELTA): Remove.
+ (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_ADDR_DATA): Remove.
+ (ASM_OUTPUT_DWARF_ADDR_DELTA, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
+ (ASM_OUTPUT_DWARF_OFFSET4, ASM_OUTPUT_DWARF_OFFSET): Remove.
+ (ASM_OUTPUT_DWARF_CONST_DOUBLE): Remove.
+ (ASM_OUTPUT_DWARF_NSTRING, ASM_OUTPUT_DWARF_STRING): Remove.
+ (dwarf2out_frame_debug): Remove unused variables.
+ (output_loc_operands): Don't abort on 8 byte constants if
+ host integers are wide enough.
+ (output_symbolic_ref): Remove.
+ (size_of_die): Don't assume 4 byte host integers.
+ (output_line_info): Use ASM_GENERATE_INTERNAL_LABEL for begin
+ and end labels.
+ (add_const_value_attribute) [CONST_INT]: Verify we're not doing
+ something stupid with HOST_WIDE_INT to long truncation.
+ [CONST_DOUBLE]: Likewise.
+
+ * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Remove.
+ (ASM_OUTPUT_DWARF2_ADDR_CONST, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
+ * config/arm/unknown-elf.h: Likewise.
+ * config/rs6000/aix.h (UNALIGNED_SHORT_ASM_OP): New.
+ (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): New.
+ (ASM_OUTPUT_DWARF_ADDR_VAR, ASM_OUTPUT_DWARF_DELTA_VAR): Remove.
+ (ASM_OUTPUT_DWARF_DELTA2, ASM_OUTPUT_DWARF_DELTA4): Remove.
+ (ASM_OUTPUT_DWARF_DELTA, ASM_OUTPUT_DWARF_ADDR_DELTA): Remove.
+ (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_DATA4): Remove.
+ (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_OFFSET4): Remove.
+ (ASM_OUTPUT_DWARF_OFFSET): Remove.
+ * config/rs6000/sysv4.h (ASM_OUTPUT_DWARF_ADDR): Remove.
+ * config/sparc/sp64-elf.h (UNALIGNED_DOUBLE_INT_ASM_OP): New.
+ (UNALIGNED_LONGLONG_ASM_OP, ASM_OUTPUT_DWARF_ADDR): Remove.
+ (ASM_OUTPUT_DWARF_ADDR_CONST, ASM_OUTPUT_DWARF_REF): Remove.
+
+2001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * cselib.c (hash_rtx): Cast enums to unsigned int.
+
+2001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * print-rtl.c (print_rtx): Cast enums to int for comparison.
+ * c-decl.c (grokdeclarator): Cast enums to int for comparison and
+ shifts.
+ * c-format.c (C_STD_VER): Cast to int for comparisons.
+ (check_function_format): Cast various enums to int for &.
+ (maybe_read_dollar_number): Likewise.
+ (check_format_info): Likewise.
+ (check_format_info_main): Likewise.
+ * expr.c (emit_move_insn_1): Cast enums to unsigned int for comparison.
+ (safe_from_p): Likewise.
+ * varasm.c (const_hash): Cast enum to int for %.
+ * emit-rtl.c (init_emit_once): Use int loop variable to work around
+ pcc enum problems with < and ++ operators.
+ * regclass.c (init_reg_sets_1): Cast enums for comparison.
+ (choose_hard_reg_mode): Use unsigned int to iterate over CCmodes.
+ (regclass_init): Change enum class to int to iterate over reg_classes.
+ * genrecog.c (merge_trees): Cast enums for comparison.
+ * rtl.h (GET_CODE): Cast to enum rtx_code.
+ (PUT_CODE): Cast to ENUM_BITFIELD(rtx_code).
+ (GET_MODE): Cast to enum machine_mode.
+ (PUT_MODE): Cast to ENUM_BITFIELD(machine_mode).
+ (GET_NOTE_INSN_NAME): Cast enum to int.
+ * tree.h (TREE_CODE): Cast to enum tree_code.
+ (TREE_SET_CODE): Cast VALUE to ENUM_BITFIELD(tree_code).
+ * timevar.c (timevar_print): Change loop variable id from enum to
+ unsigned int.
+ * fixinc/fixincl.c (VLEVEL): Cast enums in comparison to unsigned int.
+ * config/i386/i386.md: Use PUT_MODE for mode assignment.
+ * toplev.c (compile_file): Cast enum DFI to int.
+ (decode_d_option): Likewise.
+
+Fri Mar 2 12:18:13 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * cppinit.c (append_include_chain): Mark "after" include file name list
+ as a system directory.
+ * cpp.texi: Document new behavior.
+
+Fri Mar 2 11:59:43 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * ifcvt.c (noce_operand_ok): Handle properly unarry operations.
+
+2001-03-02 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (struct include_file): Update.
+ (stack_include_file): Use search_from.
+ (cpp_included, find_include_file): Update.
+ (cpp_execute_include): Update. ptr->name may not be
+ null terminated. Use the new search_from member variable
+ of cpp_buffer.
+ (_cpp_compare_file_date): Similarly.
+ (search_from): New function, similar to actual_directory.
+ (actual_directory): Delete.
+ (remap_filename): Update. loc->name may not be null terminated.
+ (struct file_name_list): Rename search_path. Update.
+ * cpphash.h (struct cpp_buffer): Delete actual_dir. New members
+ search_from and dir.
+ (struct cpp_reader): Remove actual_dirs.
+ * cppinit.c (struct cpp_pending): Update for renamed objects.
+ (append_include_chain, remove_dup_dir, remove_dup_dirs,
+ merge_include_chains, cpp_destroy, cpp_start_read): Similarly.
+ * cpplib.h (struct cpp_options): Similarly.
+
+2001-03-01 Zack Weinberg <zackw@stanford.edu>
+
+ * config/xm-lynx.h, config/xm-std32.h, config/a29k/xm-a29k.h,
+ config/a29k/xm-unix.h, config/alpha/xm-alpha.h,
+ config/arc/xm-arc.h, config/arm/xm-arm.h, config/c4x/xm-c4x.h,
+ config/clipper/xm-clix.h, config/convex/xm-convex.h,
+ config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
+ config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
+ config/h8300/xm-h8300.h, config/i370/xm-i370.h,
+ config/i370/xm-linux.h, config/i370/xm-mvs.h,
+ config/i370/xm-oe.h, config/i386/xm-aix.h,
+ config/i386/xm-i386.h, config/i386/xm-osf.h,
+ config/i860/xm-i860.h, config/i960/xm-i960.h,
+ config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
+ config/m68k/xm-m68k.h, config/m88k/xm-m88k.h,
+ config/mcore/xm-mcore.h, config/mips/xm-mips.h,
+ config/mn10200/xm-mn10200.h, config/mn10300/xm-mn10300.h,
+ config/ns32k/xm-ns32k.h, config/pa/xm-linux.h,
+ config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
+ config/pa/xm-pahpux.h, config/pa/xm-papro.h,
+ config/pj/xm-pj.h, config/romp/xm-romp.h,
+ config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
+ config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
+ config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
+ config/v850/xm-v850.h, config/vax/xm-vax.h,
+ config/vax/xm-vms.h, config/we32k/xm-we32k.h:
+ Do not define TRUE or FALSE.
+
+ * config/i386/xm-aix.h, config/i386/xm-osf.h: Delete; made
+ empty by above change.
+ * config.gcc: Remove references to these files.
+
+ * configure.in: Detect stdbool.h.
+ * configure, config.in: Regenerate.
+ * system.h: Include stddef.h here if available.
+ Set HAVE__BOOL based on GCC_VERSION and __STDC_VERSION__.
+ Then set up a sensible boolean type at the very end.
+
+ * combine.c, cse.c, expr.c, fold-const.c, gensupport.c,
+ config/mcore/mcore.c: Rename variables named 'true' and/or 'false'.
+
+ * hash.h: Delete 'boolean' typedef and related #undefs.
+
+ * function.c, ggc-common.c, hash.h, hash.c, tlink.c: Replace
+ all uses of 'boolean' with 'bool'.
+
+2001-03-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * cpplib.c (_cpp_init_stacks): Cast enum for comparison.
+ * cppexp.c (lex): Cast enums for comparison.
+ * cppinit.c (parse_option): Cast enum for comparison.
+ * cpplex.c (cpp_spell_token): Cast enums to int for minus.
+ (cpp_output_token): Likewise.
+ (cpp_can_paste): Cast enums for comparsion and plus/minus.
+ (cpp_avoid_paste): Cast enums for minus and comparison.
+
+2001-03-01 Zack Weinberg <zackw@stanford.edu>
+
+ * gcc.c, objc/lang-specs.h: Add zero initializer for cpp_spec
+ field to all array elements.
+
+2001-03-01 Zack Weinberg <zackw@stanford.edu>
+
+ * cpphash.h (struct cpp_reader): Add print_version field.
+ * cppinit.c (cpp_handle_option): For -v, -version, and --version,
+ just set print_version and other flags as appropriate.
+ (cpp_post_options): Print version here if print_version is set.
+
+ * toplev.c (exit_after_options): New flag.
+ (independent_decode_option): Don't exit here; just set
+ exit_after_options.
+ (main): Exit after calling lang_hooks.post_options if
+ exit_after_options is true.
+
+ * cppinit.c (append_include_chain): Drop never-used case QUOTE.
+ (merge_include_chains): Adjust comment to match code.
+
+2001-03-01 Zack Weinberg <zackw@stanford.edu>
+
+ * stringpool.c (set_identifier): New function.
+ * tree.h: Prototype it.
+
+ * c-parse.in: Kill D_YES. If compiled for objc, call
+ save_and_forget_protocol_qualifiers from init_reswords.
+ * objc/objc-act.c (remember_protocol_qualifiers,
+ forget_protocol_qualifiers): Don't diddle C_IS_RESERVED_WORD.
+ Swap out the non-keyword IDENTIFIER_NODEs for keyword ones, or
+ vice versa.
+ (save_and_forget_protocol_qualifiers): New function.
+ * c-lex.h: Prototype save_and_forget_protocol_qualifiers.
+
+2001-03-01 Diego Novillo <dnovillo@redhat.com>
+
+ * c-semantics.c (prune_unused_decls): Return error_mark_node
+ instead of (tree) 1 to stop traversing the tree chain.
+
+2001-03-01 Bernd Schmidt <bernds@redhat.com>
+
+ Fix a problem introduced by Kenner's Feb 18 change.
+ * toplev.c (rest_of_compilation): Disable flag_cse_follow_jumps and
+ flag_cse_skip_blocks only temporarily, not for ever.
+
+Thu Mar 1 09:49:58 2001 Jeffrey A Law (law@cygnus.com)
+
+ * config/pa/som.h (ASM_IDENTIFY_GCC): Define.
+ (ASM_IDENTIFY_GCC_AFTER_SOURCE): Likewise.
+
+ * pa.c (emit_move_sequence): Verify operand0 is a hard register
+ before determining its register class.
+
+2001-03-01 Bernd Schmidt <bernds@redhat.com>
+
+ * config/ia64/ia64.c (ia64_hard_regno_rename_ok): Disallow renaming
+ from reg 4 if current_function_calls_setjmp.
+ (gen_nop_type): New function.
+ (ia64_emit_nops): New function.
+ (ia64_reorg): Call it.
+ (ia64_sched_reorder): Move code that rotates bundles up a bit.
+
+ * reload1.c (eliminate_regs_in_insn): Restrict the special case
+ code not to try to optimize adds with anything but a REG destination.
+
+ * sched-int.h (struct haifa_insn_data): Add new member priority_known.
+ (INSN_PRIORITY_KNOWN): New accessor macro.
+ * haifa-sched.c (priority): Use it instead of testing priority against
+ zero.
+
+2001-02-28 DJ Delorie <dj@redhat.com>
+
+ * config/m68k/m68k.h (MOVE_BY_PIECES_P): Avoid pushing bytes,
+ since that doesn't work the way gcc wants on a generic m68k.
+
+2001-02-28 Richard Henderson <rth@redhat.com>
+
+ * caller-save.c (save_call_clobbered_regs): Fix typo in
+ comparison last change.
+
+Wed Feb 28 19:31:42 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (pentium4_cost): New.
+ (m_PENT4): New macro.
+ (x86_push_memory, x86_movx,x86_cmove, x86_deep_branch, x86_use_sahf
+ x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8
+ x86_integer_DFmode_moves, x86_partial_reg_dependency,
+ x86_memory_mismatch_stall): Add Pentium4
+ (x86_use_q_reg, x86_use_any_reg): Kill.
+ (override_options): Add pentium4.
+ (incdec_operand): Return 0 for pentium4.
+ (ix86_issue_rate): Add PROCESSOR_PENTIUM4 and PROCESSOR_ATHLON.
+ * i386.h (x86_use_q_reg, x86_use_any_reg): Kill.
+ (TARGET_PENTIUM4): Define.
+ (enum processor_type): Add PROCESSOR_PENTIUM4.
+ (CPP_CPU_DEFAULT_SPEC): Add pentium4 support.
+ * i386.md (attribute "cpu"): Add pentium4.
+ * invoke.texi (march): Add pentium4.
+
+Wed Feb 28 19:28:06 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_mov?fcc*): New patterns and splitters.
+ * i386.c (ix86_expand_movcc): Work post-reload; recognize
+ the SSE based conditional moves.
+
+Wed Feb 28 19:18:23 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (attribute mode): Add "TI".
+ (movsf_1): Add pxor support; remove constant propagation splitter.
+ (movdf_integer): Likewise.
+ (movdf_nointeger): Likewise.
+ (movxf constant prop splitter): Handle all modes; update for SSE.
+ * i386.h (CONST_DOUBLE_OK_FOR_LETTER): Add 'H' for SSE constants.
+ * i386.c (standard_80387_constant_p): Rewrite.
+ (standard_sse_constant_p): New.
+ * i386-protos.h (standard_sse_constant_p): New.
+
+Wed Feb 28 19:05:37 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_setccsf, sse_setccdf): New.
+ (sse_cmp* patterns): Use '%D' instead of outputtting condition
+ flag directly.
+ * i386.c (sse_comparison_operator): Accept the supported unordered
+ comparses; be ready for fast_math.
+ (print_operand): Support 'D'.
+
+Wed Feb 28 18:54:51 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (reversed_comparison_code): Kill.
+
+Wed Feb 28 18:50:15 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Do post-reload splitting unconditionally
+ for STACK_REGS
+
+Wed Feb 28 18:47:37 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_andti3, sse_nandti_3, sse_xorti3): Add SSE2 versions;
+ add missing '%' in constraints.
+
+Wed Feb 28 17:24:24 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * c-common.c (build_common_tree_nodes): Build intTI_type_nodes
+ for HOST_BITS_PER_WIDE_INT == 32 too.
+
+Wed Feb 28 17:22:35 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * caller-save.c (reg_save_code, reg_restore_code): Index by mode, not
+ NREGS.
+ (insert_save, insert_restore): New parameter save_mode.
+ (init_caller_save): Update initialization of reg_save_code
+ and reg_restore_code.
+ (save_call_clobbered_regs): Compute save_modes and update calls to
+ reg_save_code and reg_restore_code.
+ (insert_restore): Unsignetize numbers; use save_modes to choose mode
+ of spill; update use of reg_restore_code.
+ (insert_save): Likewise.
+ * i386.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
+ * c4x.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
+ * regs.h (HARD_REGNO_CALLER_SAVE_MODE): Likewise.
+
+Wed Feb 28 17:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * ifcvt.c (noce_emit_store_flag, noce_try_store_flag_constants,
+ noce_try_store_flag_inc, noce_try_store_flag_mask,
+ noce_try_cmove_arith):
+ Use reversed_comparison_code instead of reverse_comparison and
+ can_reverse_comparison_p.
+
+Wed Feb 28 17:17:29 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (reversed_comparison_code_parts): Allow reversal of
+ unordered compares in -ffast-math mode; reverse ordered compares
+ for FP even w/o -ffast-math.
+
+2001-02-27 Richard Henderson <rth@redhat.com>
+
+ * print-rtl.c (print_rtx) [i]: Don't print field five on
+ NOTEs other than NOTE_INSN_DELETED_LABEL.
+
+2001-02-27 Zack Weinberg <zackw@stanford.edu>
+
+ * mips/xm-iris4.h: Delete #if 0 block (there since before 1997).
+ * pa/xm-linux.h, pa/xm-pa.h, pa/xm-papro.h: Don't declare errno.
+
+2001-02-27 Diego Novillo <dnovillo@redhat.com>
+
+ * c-common.c (walk_stmt_tree): Visit the chain of the current tree
+ even if walk_subtrees is 0.
+ * c-semantics.c (prune_unused_decls): Return a non-null value to
+ stop traversing the tree chain.
+
+2001-02-27 DJ Delorie <dj@redhat.com>
+
+ * config/m68k/m68k.c (output_function_prologue): Save the new CFA
+ register, *then* define it as the new CFA.
+
+Tue Feb 27 16:49:13 2001 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (override_options): Promote -fpic to -fPIC.
+ (legitimize_pic_address): Simplify due to removal of
+ small PIC as a code generation option.
+ (secondary_reload_class): Similarly.
+ * pa.h (GO_IF_LEGITIMATE_ADDRESS): Similarly.
+ (PRINT_OPERAND_ADDRESS): Similarly.
+ * pa.md (various patterns): Similarly.
+ (small pic lo_sum pattern): Remove.
+
+Tue Feb 27 16:01:13 CET 2001 Jan Hubicka <jh@suse.cz>
+ Fergus Henderson
+
+ * md.texi (min, max): Document
+
+Tue Feb 27 15:51:35 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movsf, movdf): Use movaps for reg-reg moves if
+ TARGET_PARTIAL_REG_DEPENDENCY.
+ (truncdfsf2_1_sse, truncdfsf2_2): Penalize the fpreg->mem case.
+
+Tue Feb 27 15:36:48 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (mins*, maxs*): New patterns, expanders and splitters.
+
+2001-02-26 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * mips.c (mips_make_temp_file): Fix thinko in last change.
+
+2001-02-26 Jason Eckhardt <jle@redhat.com>
+
+ * combine.c (known_cond): Do not reverse the condition when
+ SMAX/UMAX is being considered and the condition is for equality
+ or inequality.
+
+ * testsuite/gcc.c-torture/execute/20010221-1.c: New test.
+
+2001-02-26 Philip Blundell <philb@gnu.org>
+
+ * config.gcc: Remove obsolete targets "arm*-*-linuxoldld" and
+ "armv2-*-linux".
+ * config/arm/linux-elf.h: Remove historical relics related to
+ above configurations.
+ * config/arm/linux-oldld.h: Delete.
+ * config/arm/linux-elf26.h: Delete.
+
+2001-02-26 Jason Merrill <jason@redhat.com>
+
+ * c-decl.c (finish_decl): Set DECL_DEFER_OUTPUT on tentative file-scope
+ definitions.
+ * toplev.c (rest_of_decl_compilation): Check DECL_DEFER_OUTPUT to
+ recognize a tentative definition. Lose obsolete code.
+
+ * toplev.c (wrapup_global_declarations): Don't emit DECL_COMDAT
+ variables unless necessary, either.
+
+2001-02-25 Richard Henderson <rth@redhat.com>
+
+ * ifcvt.c (struct noce_if_info): Add test_bb.
+ (noce_get_alt_condition): New.
+ (noce_try_minmax, noce_try_abs): New.
+ (noce_operand_ok): New.
+ (noce_process_if_block): Use them.
+ * rtlanal.c (may_trap_p): NEG and ABS can never trap.
+
+Sun Feb 25 14:26:17 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h (CPP_SPEC): Add missing space before w32api
+ include.
+
+2001-02-25 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc: Put back pa/t-openbsd and rs6000/t-openbsd.
+ * config/mips/mips.c (mips_make_temp_file): Set temp_filename
+ properly.
+ (mips_asm_file_end): Free temp_filename here.
+
+Sun Feb 25 08:34:23 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/i386/i386-protos.h (ix86_set_move_mem_attrs): Move decl.
+ * config/i386/i386.c (ix86_set_move_mem_attrs_1): Fix typo.
+
+ * config/i386/i386.md (movstrsi): Handle FAIL case.
+
+2001-02-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (builtin_array): Update.
+ (init_builtins): Flag builtins to warn if redefined or
+ undefined. Define __GXX_WEAK as a normal macro.
+ * cpplib.c (do_undef): Warn if flagged NODE_WARN.
+ * cpplib.h (NODE_WARN): New flag.
+ * cppmacro.c (builtin_macro): Remove handling of __GXX_WEAK__.
+ Handle __STDC__ as a builtin only on Solaris.
+ (warn_of_redefinition): Renamed from check_macro_definition.
+ Reverse sense of test. Always warn if NODE_WARN.
+ (_cpp_create_definition): Use warn_of_redefinition. Flag
+ any macro beginning with "__STDC_" to require a mandatory
+ warning if redefined or undefined.
+
+2001-02-24 Zack Weinberg <zackw@stanford.edu>
+
+ * xm-interix.h, xm-lynx.h, alpha/xm-vms.h, convex/xm-convex.h,
+ i370/xm-i370.h, i370/xm-linux.h, i370/xm-mvs.h, i370/xm-oe.h,
+ i386/xm-beos.h, i386/xm-dos.h, i386/xm-mingw32.h,
+ i860/xm-i860.h, m68k/xm-3b1.h, m68k/xm-amix.h, m68k/xm-aux.h,
+ m68k/xm-crds.h, m68k/xm-mot3300.h, m88k/xm-sysv3.h,
+ mips/xm-mips.h, rs6000/xm-beos.h, vax/xm-vms.h:
+ Don't define any of:
+ USE_PROTOTYPES, vfork, mktemp, SVR3, NO_SYS_PARAMS_H,
+ P_tmpdir, MVS, NO_DBX_FORMAT, USE_STDARGS, STDC_HEADERS,
+ NO_PRECOMPILES, i860, __PTR_TO_INT, __INT_TO_PTR, rindex,
+ index, FULL_PROTOTYPES, AUX, R_OK, W_OK, X_OK, F_OK,
+ STACK_DIRECTION, MIPS, MAX_READ_LEN, MAX_WRITE_LEN.
+
+ * alpha/xm-alpha.h, clipper/xm-clix.h, d30v/xm-d30v.h,
+ fr30/xm-fr30.h, i370/xm-linux.h: Remove commented-out macro
+ definitions.
+
+ * m68k/xm-3b1.h, m68k/xm-crds.h, m88k/xm-sysv3.h:
+ Delete now-empty file.
+
+ * alpha/vms.h: Define NEED_ATEXIT here...
+ * alpha/xm-vms.h: ...not here.
+
+ * i386/cygwin.h: Don't define PARAMS.
+ * mips/mips.c: Don't prototype mktemp. Don't define
+ P_tmpdir. Use make_temp_file to create temporary files.
+ Don't be clever and delete temporary files early.
+ * config.gcc: Drop references to deleted files. Don't define
+ FULL_PROTOTYPES.
+ * gcc.texi: Don't mention USE_PROTOTYPES.
+
+Sat Feb 24 20:25:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/i386/i386.c (ix86_set_move_mem_attrs): New function.
+ (ix86_set_move_mem_attrs_1): Likewise.
+ * config/i386/i386-protos.h (ix86_set_move_mem_attrs): New declaration.
+ * config/i386/i386.md (movstrsi): Call it.
+
+2001-02-24 Zack Weinberg <zackw@stanford.edu>
+
+ * config.gcc: Expunge references to alpha/t-pe, pa/t-openbsd,
+ x-linux-aout, i386/t-go32, t-osf, m68k/x-m68kv,
+ ns32k/xm-netbsd.h, rs6000/t-openbsd, rs6000/t-xnewas,
+ rs6000/x-aix41-gld. These are nonexistent, empty, or obsolete.
+
+ (i750a-*-*): Error here if hosting on i750a.
+ (alpha*-*-winnt*, ix86-*-winnt3*): Remove stanzas entirely.
+
+ * x-linux-aout, xm-freebsd.h, i386/beos-pe.h, ns32k/xm-netbsd.h:
+ Remove (empty modulo comments).
+
+ * 1750a/xm-1750a.h, alpha/config-nt.sed, alpha/win-nt.h,
+ alpha/xm-winnt.h, i386/config-nt.sed, i386/os2.h,
+ i386/t-winnt, i386/win-nt.h, i386/xm-freebsd.h, i386/xm-os2.h,
+ i386/xm-winnt.h, m68k/x-alloca-c, m88k/x-dguxbcs,
+ mips/x-netbsd, mips/x-nws3250v4, rs6000/t-xnewas,
+ rs6000/t-xrs6000, rs6000/xm-cygwin.h: Remove (obsolete)
+
+ * i386/crtdll.h, i386/cygwin.h, i386/mingw32.h:
+ Remove reference to winnt.h in comment.
+ * rs6000/t-newas, rs6000/t-rs6000: Override LIBGCC1_TEST to null.
+
+2001-02-24 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * loop.c (check_dbra_loop): A biv has uses besides counting if it is
+ used to set another biv.
+
+Sat Feb 24 06:45:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.h (BLOCK_DEAD): New macro.
+ (struct tree_block): New flag, dead_flag.
+ * print-tree.c (print_node, case 'b'): Print missing fields.
+ * emit-rtl.c (remove_unnecessary_notes): Set BLOCK_DEAD.
+ * function.c (identify_blocks): Enable test for misplaced notes.
+ (all_blocks): Skip BLOCK_DEAD blocks.
+ * integrate.c (integrate_decl_tree): Likewise.
+
+ * errors.c (internal_error, trim_filename): New functions.
+ (fancy_abort): Call internal_error.
+ * errors.h (internal_error, trim_filename): New declarations.
+
+2001-02-24 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Reverted
+ 2000-08-26's patch.
+ (EXTRA_CONSTRAINT): Formatting changes.
+
+2001-02-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * rtl.c (rtl_check_failed_code2): Fix typo in last change.
+
+2001-02-23 Per Bothner <per@bothner.com>
+
+ * gcc.c (record_temp_file, pfatal_with_name, error): Make non-static,
+ so they can be called from java/jvspec.c.
+ * gcc.h (record_temp_file, pfatal_with_name, error): Declare.
+
+Sat Feb 24 03:32:50 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_frame): New structure.
+ (ix86_compute_frame_size): Kill.
+ (ix86_compute_frame_layout): New.
+ (ix86_save_reg): New.
+ (ix86_can_use_return_insn_p): Use frame layout stuff.
+ (ix86_expand_prologue): Likewise.
+ (ix86_expand_epilogue): Likewise.
+ (ix86_initial_elimination_offset): Likewise.
+ (ix86_nsaved_regs): Use ix86_save_reg.
+ (ix86_emit_save_regs): Likewise.
+
+Sat Feb 24 03:30:38 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (find_sub_basic_blocks): New function.
+ (split_block): Be ready for basic block introduced by CODE_LABEL.
+ (commit_one_edge_insertion): Call find_sub_basic_block.
+
+ * flow.c (make_edges): Add edge from entry for blocks starting with
+ label having ALTERNATE_NAME
+
+Sat Feb 24 03:19:42 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * function.c (epilogue_done): Be ready for first basic block not
+ containing PROLOGUE_END note.
+ (reposition_prologue_and_epilogue_notes): Avoid placing
+ PROLOGUE_END note between BASIC_BLOCK.
+
+Sat Feb 24 03:17:09 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * loop.c (canonicalize_condition): Move to reversed_comparison_code.
+
+2001-02-21 DJ Delorie <dj@redhat.com>
+
+ * config/i960/i960.h (FRAME_POINTER_REQUIRED): Revert removal of
+ check for current_function_has_nonlocal_goto from 1999-11-12.
+
+Fri Feb 23 15:28:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * diagnostic.c (trim_filename): No longer static.
+ * toplev.h (trim_filename): Declare.
+ * rtl.c (rtl_check_failed_bounds): Call internal_error.
+ (rtl_check_failed_type1, rtl_check_failed_type2): Likewise.
+ (rtl_check_failed_code1, rtl_check_failed_code2): Likewise.
+ (rtvec_check_failed_bounds): Likewise.
+ * tree.c (tree_check_failed, tree_class_check_failed): Likewise.
+
+ * convert.c (convert_to_integer): Don't do unsigned unless result or
+ both inputs are unsigned.
+
+ * fold-const.c (fold_convert): Don't call size_int_type_wide if
+ input overflows.
+
+ * c-decl.c (set_block): Set NAMES and BLOCKS from BLOCK.
+
+ * varasm.c (output_constant): Recompute CODE after lang-specific fn.
+
+2001-02-23 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * Makefile.in (resource.o): Add params.h dependence.
+ * params.def (MAX_DELAY_SLOT_LIVE_SEARCH): New parameter.
+ * params.h (MAX_DELAY_SLOT_LIVE_SEARCH): Likewise.
+ * resource.c: Add dependence on params.h.
+ (current_live_regs): Fix explanatory comment.
+ (find_basic_block): Add new parameter to permit limiting search
+ for a BARRIER.
+ (mark_target_live_regs): Add new argument to find_basic_block call.
+ (incr_ticks_for_insn): Likewise.
+
+2001-02-23 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
+
+ * diagnostic.c (output_to_stream): Rename to
+ output_buffer_to_stream. Loses the stream parameter.
+ (init_output_buffer): Set diagnosic_buffer's stream.
+ (flush_diagnostic_buffer): Adjust.
+ (default_print_error_function): Likewise.
+ (finish_diagnostic): Likewise.
+ (verbatim): Likewise.
+
+ * diagnostic.h (struct output_buffer): Add `stream' field.
+ (output_buffer_attached_stream): New macro.
+
+2001-02-23 Jakub Jelinek <jakub@redhat.com>
+
+ * fold-const.c (extract_muldiv) [case PLUS_EXPR]: If not MULT_EXPR,
+ check if either operand is divisible by C.
+ (multiple_of_p): Handle LSHIFT_EXPR with small constant shift.
+ If type is signed, consider negative numbers as well.
+
+2001-02-22 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/crtbegin.asm (.fini): Use pc-relative relocs to
+ reach .text instead of gp-relative relocs.
+ * config/ia64/crtend.asm (.init): Likewise.
+
+2001-02-22 Andreas Jaeger <aj@suse.de>
+
+ * extend.texi (C++ Attributes): Fix typo.
+
+2001-02-21 David Mosberger <davidm@hpl.hp.com>
+
+ * config/ia64/ia64.c (ia64_epilogue_uses): For syscall_linkage
+ functions, drop current_function_args_info.words test.
+ (ia64_compute_frame_size): Mark syscall_linkage functions as
+ using eight input registers.
+
+2001-02-21 Loren J. Rittle <ljrittle@acm.org>
+ Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def (freebsd_gcc3_breakage): new fix
+ * fixinc/README: Document how to convert sed substitutions
+ to format style c_fix-es.
+ * fixinc/fixincl.x: regen
+
+2001-02-21 Jeffrey D. Oldham <oldham@codesourcery.com>
+
+ * gcc.c: Add comment explaining how to add a command-line option.
+ Add title to specs language comment.
+
+2001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * gcc.c (cc1_options): Add "-param".
+ (DEFAULT_WORD_SWITCH_TAKES_ARG): Likewise.
+ (option_map): Likewise.
+ * toplev.c (display_help): Add entry for "--param".
+ (independent_decode_option): Fix typographical error.
+
+Wed Feb 21 18:57:28 CET 2001 Catherine Moore <clm@redhat.com>
+ Bernd Schmidt <bernds@redhat.com>
+ Jan Hubicka <jh@suse.cz>
+
+ * i386.c (function_arg_advance): Pass SSE arguments in registers.
+ (function_arg): Likewise.
+
+Wed Feb 21 18:12:41 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (mmx_lshrdi3, mmx_ashldi3): Guard by unspec.
+
+2001-02-21 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.md (iorsi3): Do not output an extra newline
+ character.
+ (xorsi3): Likewise.
+
+Wed Feb 21 17:35:24 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (init_propagate_block_info): Canon address and use single_set
+ for killing dead memory stores.
+
+2001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * Makefile.in (reorg.o): Add params.h dependence.
+ * params.def: Fix typographical error in comment.
+ (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
+ * params.h: Modify introductory comment.
+ (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
+ * reorg.c: Add dependence on params.h.
+ (redundant_insn): Add parameterized throttle for search.
+ (fill_simple_delay_slots): Add a comment explaining a variable.
+ Move conditional out of loop, simplifying code.
+ (fill_eager_delay_slots): Fix typographical error in comment.
+
+2001-02-20 Aldy Hernandez <aldyh@redhat.com>
+
+ * tm.texi (REVERSE_CONDEXEC_PREDICATES_P): New macro documentation.
+
+ * flow.c (ior_reg_cond): Use REVERSE_CONDEXEC_PREDICATES_P macro.
+ (REVERSE_CONDEXEC_PREDICATES_P): Define macro.
+
+2001-02-21 Jason Merrill <jason@redhat.com>
+
+ * tree.h (DECL_UNINLINABLE): Move from C++ frontend.
+ (struct tree_decl): Add uninlinable bitfield.
+ * c-decl.c (duplicate_decls): Set it.
+ * integrate.c (function_cannot_inline_p): Check it.
+
+ * dwarf2out.c (add_name_and_src_coords_attributes): Don't add
+ DW_AT_MIPS_linkage_name to abstract methods.
+ (dwarf2out_abstract_function): Emit class context before calling
+ set_decl_abstract_flags. Don't clear DECL_ABSTRACT.
+ (gen_subprogram_die): Remove obsolete code.
+ (gen_member_die): Don't include clones in the member list.
+ (gen_decl_die): Emit abstract info for clone origin.
+ * dwarfout.c (output_type): Don't include clones in the member list.
+ * dbxout.c (dbxout_type_methods): Ignore abstract methods.
+ * toplev.c (note_deferral_of_defined_inline_function): Don't clear
+ DECL_ABSTRACT on a function that already has it set.
+
+ * dwarf2out.c (gen_formal_types_die): Also accept a FUNCTION_DECL.
+ (get_subprogram_die): Pass it in.
+
+2001-02-21 Richard Earnshaw <rearnsha@arm.com>
+
+ * flow.c (mark_set_1): Make not_dead unsigned long. For
+ non-pseudos, use it as a bitmask of the hard regs that
+ don't die.
+
+2001-02-21 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c: Update comments.
+ (_cpp_read_file): Don't check for NULL filenames any more.
+ * cppinit.c (cpp_start_read): Don't do canonicalization of
+ in_fname and out_fname. Use the passed file name exclusively.
+ (_cpp_handle_options): Don't treat "-" as a command line option,
+ but as a normal filename.
+ (_cpp_post_options): Canonicalize in_fname and out_fname.
+ * cppmain.c (printer_init): Don't check out_fname for NULL.
+ * c-lex.c (orig_filename): Rename cpp_filename for clarity.
+ (init_c_lex): Update, and use "" to represent stdin to CPP.
+ (yyparse): Update.
+
+2001-02-20 Will Cohen <wcohen@redhat.com>
+
+ * config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_usgl): New function.
+ * config/pa/long_double.h (FIXUNS_TRUNCTFSI2_LIBCALL): Added.
+ (INIT_TARGET_OPTABS): Use FIXUNS_TRUNCTFSI2_LIBCALL for
+ fixunstfsi_libfunc.
+
+2001-02-20 Stan Shebs <shebs@apple.com>
+
+ * config/rs6000/rs6000.c (output_cbranch): Output branches
+ on separate lines instead of using ';' to separate.
+
+2001-02-20 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (set_lang): Move builtin handling to...
+ (init_builtins): ...here.
+ (_cpp_create_reader): Move call to set_lang.
+
+2001-02-20 Mark Mitchell <mark@codesourcery.com>
+
+ * stmt.c (expand_return): If an attempt is made to return the
+ error_mar_node, treat the return like a return without a value.
+
+2001-02-19 Zack Weinberg <zackw@stanford.edu>
+
+ * sibcall.c (skip_copy_to_return_value): Call
+ identify_call_return_value here, and return orig_insn if it
+ returns zero. Hardret and softret arguments now unnecessary.
+ (call_ends_block_p): Don't call identify_call_return_value here.
+
+ * ggc-common.c (ggc_mark_rtx_children): No need to mark 'S' or
+ 's' slots in RTXen.
+ * ggc-page.c, ggc-simple.c (ggc_mark_if_gcable): Delete function.
+ * ggc.h (ggc_mark_if_gcable): Delete prototype.
+
+Mon Feb 19 20:30:16 2001 Jeffrey A Law (law@cygnus.com)
+
+ * pa.c (move_operand): Accept code to load the address of a
+ symbol out of the DLT as a valid move operand.
+ (print_operand, case 'A'): New to handle generating a DLT
+ reference for a LO_SUM expression.
+ * pa.h (EXTRA_CONSTRAINT): Handle 'A' for DLT LO_SUM references.
+ * pa.md (movsi, movdi patterns): Allow DLT LO_SUM references.
+
+2001-02-19 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * README, cpp.texi, gcc.texi, version.c: Update version number to
+ 3.1.
+ * cpp.1, gcov.1, gcc.1: Regenerate.
+
+2001-02-19 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (stack_include_file): Generate dependencies
+ here, and manage include_count here too.
+ (PRINT_THIS_DEP): Delete.
+ (_cpp_execute_include): Do not generate dependencies here,
+ apart from the case of a missing header. Do not manage
+ include_count.
+ (_cpp_read_file): Leave dependency generation to
+ stack_include_file.
+
+Mon Feb 19 10:17:47 2001 Jeffrey A Law (law@cygnus.com)
+
+ * config.gcc (hppa*64*-*-hpux11*): Add MASK_GAS to
+ target_cpu_default. Remove dead assignment to
+ target_cpu_default.
+
+Mon Feb 19 16:47:39 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * regclass.c (contains_reg_of_mode): Make global.
+ (init_reg_sets): Remove contains_reg_of_mode; take into account
+ CLASS_MAX_NREGS when looking for the proper mode.
+ (dump_regclass): Dump only classes considered for the pseudo.
+ (regclass): Use contains_reg_of_mode.
+
+Mon Feb 19 16:45:42 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * gcc.c (do_spec_1): 'n' for printing notices.
+ * i386.h (CC1_CPU_SPEC): Notice deprecated options as deprecated.
+
+Mon Feb 19 15:51:30 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * reg-stack.c (next_flags_user): Use current_block->end
+ (swap_rtx_condition): Look for next user if flags don't die;
+ give up on CALL_INSNs; use current_block->end.
+
+Mon Feb 19 08:27:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * sibcall.c (call_ends_block_p): New function.
+ (optimize_sibling_and_tail_recursive_call): Use it.
+
+2001-02-18 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.md: Update copyright.
+ (andsi3): Do not output an extra newline character.
+
+Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * toplev.c (note_deferral_of_defined_inlined_function): Argument
+ FNDECL may be unused.
+
+ * toplev.c (rest_of_compilation): Don't have CSE skip blocks or
+ follow jumps after first run.
+ If -fexpensive-optimizations rerun CSE after GCSE and iterate until
+ it doesn't change any jumps.
+
+Sun Feb 18 17:05:50 2001 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (rtlanal.o): Depend on hard-reg-set.h.
+ ($HOST_PREFIX_1)rtlanal.o: Remove rules for building
+ (mostlyclean): Corresponding changes.
+ * rtlanal.c (hard-reg-set.h): Include.
+ (rtx_unstable_p): Do not treat the argument pointer specially
+ if it is not a fixed register.
+ (rtx_varies_p, rtx_addr_can_trap_p): Similarly.
+
+Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * sibcall.c (optimize_sibling_and_tail_recursive_call): Compare
+ against last real insn in basic block.
+ Rework to avoid gotos.
+
+ * Makefile.in (gcse.o): Now includes ggc.h.
+ * gcse.c: Include ggc.h.
+ (want_to_gcse_p): Verify expression can be in SET as valid insn.
+ (try_replace_reg): Remove warning of uninitialize variable.
+ (process_insert_insn): Call invalid_insn_p to validate insn.
+ * recog.c (insn_invalid_p): Now global.
+ See if can make valid by adding CLOBBERs of SCRATCH only and do if so.
+ * recog.h (insn_invalid_p): New declaration.
+
+ * jump.c (jump_optimize_1): Only define reversed_code #ifdef HAVE_trap.
+
+ * config/sparc/sparc.c (eligible_for_epilogue_delay): Don't put
+ assignments from FP constants since 'Y' output code can't handle it.
+ (eligible_for_sibcall_delay): Likewise.
+
+ * flow.c (print_rtl_and_abort_fcn): Renamed from print_rtl_and_abort.
+ Call fancy_abort directly, passing args.
+ (print_rtl_and_abort): Now a macro, like fancy_abort.
+
+ * final.c (output_operand_lossage): Use internal_error, not error.
+
+2001-02-18 Shane Nay <shane@agendacomputing.com>
+
+ * mips.c (mips_expand_prologue) Add REG_MAYBE_DEAD to
+ structure shift insns.
+
+2001-02-18 Mark Mitchell <mark@codesourcery.com>
+
+ * invoke.texi (-fsquangle): Remove documentation.
+ (-fname-mangling-version): Likewise.
+
+2001-02-18 Lars Brinkhoff <lars@nocrew.org>
+
+ * optabs.c (expand_abs): Remove reference to
+ HAVE_contitional_arithmetic.
+ * combine.c (simplify_set): Likewise.
+
+2001-02-18 Richard Henderson <rth@redhat.com>
+
+ * ifcvt.c (dead_or_predicable): Don't move code if eh regions
+ would be disrupted.
+
+2001-02-18 Richard Henderson <rth@redhat.com>
+
+ * config/ns32k/ns32k.h (ADJSP): Upcase arguments.
+
+ * config/alpha/alpha.md (movsi_fix): Fix typo in pattern name.
+
+ * reload1.c (reload_cse_simplify_set): Fix typo.
+
+Sun Feb 18 09:30:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * diagnostic.c (_fatal_insn): Decrement errorcount.
+
+ * invoke.texi (-I): Add note avoiding use for system header files.
+
+ * rtl.h (add_clobbers): Remove duplicate declaration.
+ * recog.h (added_clobbers_hard_reg_p): New declaration.
+ * genemit.c (struct clobber_pat): New field has_hard_reg.
+ (gen_insn): Record if added clobbers clobber hard reg.
+ (gen_split): Avoid unused warning if number of operands is 0.
+ (output_added_clobbers_hard_reg_p): New function.
+ (main): Call it.
+
+2001-02-18 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.c (hppa_expand_prologue): Simplify code storing return
+ pointer. For large (>=8k) frames with a post_store, adjust stack
+ pointer by 8k-64 first rather than by 64. When testing with
+ VAL_14_BITS_P, always use the actual value rather than the value
+ negated. Add blockage to prevent scheduling of spills before
+ stack frame has been created.
+ (hppa_expand_epilogue): Simplify code loading return pointer.
+ Allow a slightly larger range for merge_sp_adjust_with_load case.
+ When testing with VAL_14_BITS_P, always use the actual value.
+
+ * pa.c (pa_adjust_insn_length): Check that block move
+ pattern is a set before looking at operands.
+
+2001-02-17 Mark Mitchell <mark@codesourcery.com>
+
+ * fold-const.c (fold_binary_op_with_conditional_arg): New
+ function, split out from ...
+ (fold): ... here.
+ * tree.def (COND_EXPR): Document the use of VOID_TYPE for
+ conditional arms that throw exceptions.
+
+ * print-tree.c (print_node): Do not use BLOCK_CHAIN when we're not
+ looking at a BLOCK.
+
+2001-02-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * aclocal.m4 (gcc_AC_CHECK_DECL): Before attempting the test,
+ define HAVE_DECL_* to 1 to mask potential backup declarations.
+ * configure: Regenerated.
+
+2001-02-17 Mark Mitchell <mark@codesourcery.com>
+
+ * invoke.texi (-Woverloaded-virtual): Clarify documentation.
+
+2001-02-17 Richard Henderson <rth@redhat.com>
+
+ * reload1.c (reload_cse_simplify_set): Respect LOAD_EXTEND_OP
+ when replacing a memory load with a register.
+
+Sat Feb 17 14:48:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ Jan Hubicka <jh@suse.cz>
+
+ * recog.c (validate_replace_src_1): New.
+ (validate_replace_src_data): Likewise.
+ (validate_replace_src): Use note_uses.
+ * rtl.h (note_uses): Declare.
+ * rtlanal.c (note_uses): New.
+
+Sat Feb 17 10:52:34 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * reg-stack.c (stack_def): Make field reg unsigned.
+ (remove_regno_note): Unsignetize parameter.
+
+2001-02-16 Jes Sorensen <jes@linuxcare.com>
+
+ * ia64.c (errata_emit_nops): Add VOIDmode as second argument to
+ shladd_operand() call.
+
+2001-02-16 Bruce Korb <bkorb@gnu.org>
+ Rodney Brown <RodneyBrown@mynd.com>
+
+ * fixinc/mkfixinc.sh: Use C fixincludes for UnixWare 7.
+ * fixinc/inclhack.def: Add fixinc.svr4 patterns with matching
+ machine restrictions
+ * fixinc/fixincl.x: regen
+
+Fri Feb 16 12:41:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * gcse.c (hash_scan_set): If cprop, see if REG_EQUAL or REG_EQUIV.
+ Don't CSE a nop.
+ (hash_scan_insn): Clean up calls to hash_scan_set.
+ (compute_kill_rd): REGNO now unsigned.
+ (try_replace_reg): Rework to use simplify_replace_rtx.
+ (cprop_jump, cprop_cc0_jump): Likewise.
+ (cprop_insn): Call find_reg_equal_equiv_note.
+ Reflect changes to cprop_jump and cprop_cc0_jump.
+
+ * recog.c (validate_replace_src): Replace in operands of
+ ZERO_EXTRACT in SET_DEST.
+
+ * cse.c (new_label_ref): New variable.
+ (insert): Set it instead of recorded_label_ref.
+ (cse_basic_block): Set recorded_label_ref if new_label_ref use, has
+ CODE_LABEL for this function, and not already in REG_LABEL note.
+
+2001-02-16 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * resource.c (mark_referenced_resources): Fix typo in introductory
+ comment.
+ * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Fix typo in
+ string constant.
+
+2001-02-16 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (add_bound_info): Don't crash if SAVE_EXPR_RTL is
+ NULL.
+ (gen_subprogram_die): Don't abort on seeing a second definition if
+ the previous one was abstract. Don't replace an abstract instance
+ in the lookup table.
+
+ * dwarf2out.c (dwarf2out_abstract_function): Rename from
+ gen_abstract_function.
+ * dwarf2out.h: Declare it.
+ * toplev.c (note_outlining_of_inline_function): New fn.
+ * toplev.h: Declare it.
+ * integrate.c (output_inline_function): Call it.
+ * c-decl.c (duplicate_decls): Call it when redefining an extern
+ inline. Don't inline the new defn.
+
+ * tree.h (BLOCK_CHAIN): Use BLOCK_CHECK.
+
+2001-02-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * .gdbinit: Rename to gdbinit.in.
+ * gdbinit.in: New file,
+ * configure.in: Generate .gdbinit from gdbinit.in.
+ * configure: Regenerated.
+ * Makefile.in (distclean): Always remove .gdbinit.
+
+2001-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ * objc/objc-act.c (start_class): Register implemented_classes with
+ GC.
+
+2001-02-16 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (_cpp_make_system_header): Generate a file
+ change callback.
+
+2001-02-15 Jim Meyering <meyering@lucent.com>
+
+ * Makefile.in (install-common): Don't depend on installdirs here.
+ Instead, make each of the lang.install-common targets (e.g.,
+ c++.install-common in cp/Make-lang.in) depend on it.
+ (install-driver): Depend on installdirs.
+
+Thu Feb 15 21:30:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * flow.c (tidy_fallthru_edge): Never end block on line number NOTE.
+
+ * function.c (assign_parms): Set RTX_UNCHANGING_P in pseudo when we
+ do in memory.
+
+2001-02-15 Mark Mitchell <mark@codesourcery.com>
+
+ * invoke.texi (--param): Document.
+
+Thu Feb 15 15:16:38 2001 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (BOOL_TYPE_SIZE): Don't define.
+
+Thu Feb 15 10:52:31 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (extendsfdf2_2): Fix constraints.
+
+Thu Feb 15 09:46:21 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (fop_df_3 splitter): Fix operand number.
+
+Wed Feb 14 12:37:37 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * invoke.texi (-mreg-alloc): Nuke.
+ * i386.c (ix86_reg_alloc_order, regs_allocated,
+ order_regs_for_local_alloc): Nuke.
+ (override_options): Kill reg_alloc code.
+ * i386.h (TARGET_OPTIONS): Kill reg-alloc.
+ (REG_ALLOC_ORDER): SSE goes before I387.
+ (ORDER_REGS_FOR_LOCAL_ALLOC): Kill.
+ (ix86_reg_alloc_order): Likewise.
+ * i386-protos.h (ix86_reg_alloc_order): Kill.
+
+2001-02-14 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (f_options): Clarify -fschedule-insns2 documentation.
+
+Wed Feb 14 11:59:58 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (RETURN_IN_MEMORY): Fix formating; reject TFmodes
+
+Wed Feb 14 11:12:38 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386-protos.h (ix86_memory_move_cost): Move offline.
+ * i386.c (ix86_register_move_cost): Compute properly cost of
+ SSE, MMX and i387 instructions.
+ (*_cost): Add costs of SSE/MMX moves.
+ (ix86_memory_move_cost): Move offline from ....; Likewise.
+ * i386.h (MEMORY_MOVE_COST): .... here;
+ (struct processor costs): Add new fields to represent costs
+ of SSE/MMX moves.
+
+Wed Feb 14 10:08:26 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * regclass.c (init_reg_sets_1): Reinstall the optimization of
+ move_cost together with Matt Kraai's fix.
+
+2001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * Makefile.in (OBJS): Add params.o.
+
+2001-02-14 Richard Henderson <rth@redhat.com>
+ DJ Delorie <dj@redhat.com>
+
+ * jump.c (jump_optimize_1): When we delete a conditional jump
+ preceding a non-conditional jump to effectively the same place,
+ make sure that the combined jump skips any clobber insns between
+ the two labels.
+
+2001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * gcc.c (do_spec_1): Fix off-by-one error for '%M' case.
+
+2001-02-14 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (toplev.o): Depend on params.h.
+ (intergate.o): Likewise.
+ (params.o): New target.
+ * flags.h (inline_max_insns): Remove.
+ * integrate.c: Include params.h.
+ Use MAX_INLINE_INSNS instead of inline_max_insns.
+ * params.c: New file.
+ * params.h: Likewise.
+ * params.def: Likewise.
+ * toplev.c: Include params.h.
+ (lang_independent_params): New variable.
+ (decode_f_option): Use the param machinery instead of setting
+ max_inline_insns.
+ (independent_decode_option): Handle "--param name=value".
+ (main): Register language-independent parameters.
+
+Wed Feb 14 11:13:45 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (pushsf, pushdf_nointeger): Fix constraint.
+
+2001-02-14 Richard Henderson <rth@redhat.com>
+
+ * regclass.c (init_reg_sets_1): Revert last two changes.
+
+2001-02-14 Jakub Jelinek <jakub@redhat.com>
+
+ * stor-layout.c (is_pending_size, put_pending_size): New functions.
+ (variable_size): Call put_pending_size.
+ * tree.h (is_pending_size, put_pending_size): Add prototypes.
+ * fold-const.c (extract_muldiv): If SAVE_EXPR is on the pending
+ sizes list, put newly created SAVE_EXPR there as well.
+
+2001-02-14 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/ia64.c (last_group): Only 2 entries are needed.
+ (errata_find_address_regs): load_group has only 2 entries.
+ (errata_emit_nops): Likewise. shladd is not problematic.
+ Clear last_group if nop was emitted.
+ (fixup_errata): load_group has only 2 entries.
+ Optimize.
+
+2001-02-14 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (lex_number): Only warn traditionally for U suffix
+ outside system macros.
+ * cppexp.c (parse_number): Similarly.
+ * cpplib.h (NODE_SYSHDR, cpp_sys_objmacro_p): New.
+ * cppmacro.c (struct cpp_macro): New member node.
+ (parse_args): Only warn about missing rest args if not
+ a system macro.
+ (funlike_invocation_p): Similarly for uninvoked funlike macros.
+ (cpp_sys_objmacro_p): New.
+ (_cpp_create_definition): Store the node with the macro defn.
+ Remember if the macro is defined in a system header.
+
+2001-02-13 DJ Delorie <dj@redhat.com>
+
+ * configure.in (check_languages): determine languages to check
+ * Makefile.in (check-c++): alias for check-g++
+ (check-f77): alias for check-g77
+ (CHECK_TARGETS): depend on configured languages
+
+Wed Feb 14 01:13:59 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
+ (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
+ (sqrtsf2 patterns): Use 'x' instead of 'Y'.
+ (sqrtextendsfdf2): Disable for SSE2.
+
+Wed Feb 14 00:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
+ (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
+ (sqrtsf2 patterns): Use 'x' instead of 'Y'.
+ (sqrtextendsfdf2): Disable for SSE2.
+
+Wed Feb 14 00:11:20 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movsfcc_1): Support integer cmove instruction.
+ (movdfcc_1): Likewise; new splitter.
+
+Tue Feb 13 23:19:27 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (output_fp_compare): Support SSE.
+ (prepare_fp_compare_args): SSE comparisons always support memory.
+ * i386.h (TARGET_CMOVE): SSE imply cmove.
+ * i386.md (cmp?f2): Enable for SSE too.
+ (cmpfp_i*): Support SSE.
+ (cmpfp_i_sse): New.
+ (cmpfp_i_sse_only): New.
+ (s*, b* fp expanters): Enable for SSE too.
+ (fp_jcc_1_sse, fp_jcc_1_sse_only, fp_jcc_2_sse, fp_jcc_2_sse_only):
+ New patterns.
+
+Tue Feb 13 23:05:42 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * regclass.c (init_reg_sets_1): Silence warning.
+
+Tue Feb 13 22:03:07 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sqrt?f2): Change to expander.
+ (sqrt?f2_1, sqrt?f2_sse_only, sqrt?f2_i387): New.
+
+Tue Feb 13 15:42:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * rtlanal.c (find_reg_equal_equiv_note): New function.
+ * simplify-rtx.c (simplify_gen_unary, simplify_gen_ternary): New fns.
+ (simplify_gen_relational, simplify_replace_rtx): Likewise.
+ * rtl.h: Add declarations for above functions.
+
+Tue Feb 13 21:09:11 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * cse.c (cse_main): Converts ifdefs on PIC_OFFSET_TABLE_REGNUM to
+ conditionals.
+ * defaults.h (PIC_OFFSET_TABLE_REGNUM): Default to INVALID_REGNUM.
+ * emit-rtl.c (init_emit_once): Convert ifdefs to conditionals.
+ * flow.c (mark_regs_live_at_end): Likewise.
+ (calculate_global_regs_live): Likewise.
+ * gcse.c (compute_hash_table): Likewise.
+ (compute_kill_rd): Likewise.
+ * resource.c (mark_target_live_regs): Likewise.
+ * rtl.h (INVALID_REGNUM): New macro.
+
+Tue Feb 13 20:59:22 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (fixsfsi2, fixdfdi2): Fix previous patch.
+
+Tue Feb 13 16:32:20 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (fixsfsi2, fixdfdi2): Force operand to register
+ for SSE.
+
+Tue Feb 13 14:53:16 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (add?f3, sub?f3, mul?f3, dif?f3): Enable for TARGET_SSE(2)
+ too.
+ (fop_sf_comm, fop_df_comm, fop_sf_1, fop_df_1): Support SSE.
+ (fop_sf_comm_sse, fop_df_comm_sse): New patterns.
+ (fop_sf_1_sse, fop_df_1_sse): New patterns
+ (fop_*): Disable float_extend and float patterns for SSE compilation.
+ * i386.c (output_387_binary_op): Support SSE.
+
+Tue Feb 13 14:16:34 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (dummy_extendsfdf2): Support SSE2
+ (extendsfdf2): Enable if 80387 or SSE2.
+ (extendsfdf2_1): Support SSE2. Disable if SSE2 is avialble
+ and no MIX_I387_SSE2
+ (extendsfdf2_1_sse_only): New pattern.
+ (truncdfsf2): Enable if SSE2 or 80387; Always use SSE only version
+ of SSE.
+ (truncdfsf2_1): Support SSE.
+ (truncdfsf2_2): Support SSE.
+ (truncdfsf2_2_1_sse): New pattern.
+ (fixtruncsfsi2): Always use SSE if available.
+ (fix_truncsfsi_sse): New pattern.
+ (fix_truncdfsi_sse): New pattern.
+ (floatsis?f2): Support SSE.
+ (floatsidf2_i387): New pattern.
+ (floatsidf2_sse): Likewise.
+
+Tue Feb 13 07:52:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * configure.in: Use "have_gnat" variable, not "gnat".
+ * configure: Regenerated.
+
+ * config/sparc/sparc.c (function_value): Treat all non-record
+ aggregate types like used to treat UNION_TYPE.
+
+Tue Feb 13 13:31:33 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (print_reg): Use ANY_FP_REG instead of FP_REG
+ * i386.h (MASK_128BIT_LONG_DOUBLE): Renumber
+ (MASK_SSE2): New.
+ (MASK_MIX_SSE_I387): New.
+ (TARGET_SSE): SSE2 imply SSE.
+ (TARGET_SSE2, TARGET_MIX_SSE_I387): New.
+ (TARGET_SWITCHES): Add "sse2", "mix-sse-i387".
+ (enum reg_class): Add new classes.
+ (REG_CLASS_NAMES): Likewise.
+ (REG_CLASS_CONTENTS): Likewise.
+ (ANY_FP_REG_P, ANY_FP_REGNO_P, SSE_REG_P, SSE_FLOAT_MODE): New macros.
+ (REG_CLASS_FROM_LETTER): 'x' and 'y' is SSE_REGS only when SSE is
+ supported. Add 'Y' to be SSE_REGS when SSE2 is supported.
+ (CLASS_MAX_NREGS): Use new macros.
+ (REGISTER_MOVE_COST): Rewrite using SECONDARY_MEMORY_MAYBE_NEEDED.
+ * i386.md (pushsf, movsf): Support SSE.
+ (pushdf_nointeger, pushdf_integer, pushdf): Support SSE, update
+ splitters to use ANY_FP_REGNO_P.
+ (movdf_nointeger, movdf_integer): Likewise.
+
+2001-02-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): New macro.
+ (try_combine): Use it.
+
+Tue Feb 13 11:37:06 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (SSE_CLASS_P, MMX_CLASS_P, MAYBE_FLOAT_CLASS_P,
+ MAYBE_SSE_CLASS_P, MAYBE_MMX_CLASS_P): New macros.
+ (PREFERRED_RELOAD_CLASS, SECONDARY_MEMORY_NEEDED): Move offline.
+ (REGISTER_MOVE_COST): Likewise.
+ * i386-protos.h (ix86_secondary_memory_needed,
+ ix86_preferred_reload_class, ix86_register_move_cost): Declare.
+ * i386.c (ix86_secondary_memory_needed,
+ ix86_preferred_reload_class, ix86_register_move_cost): New function.
+
+Die Feb 13 11:04:25 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (VALID_FP_MODE_P, VALID_INT_MODE_P): New.
+ (HARD_REGNO_MODE_OK): Move offline to ....
+ * i386.c (ix86_hard_regno_mode_ok) ... here;
+ refuse all incorrect modes.
+ * i386-protos.h (ix86_hard_regno_mode_ok): Declare.
+
+2001-02-13 Richard Henderson <rth@redhat.com>
+
+ * sparc.md (cmp_cc_arith_op_set): Don't use match_dup on the
+ entire operator; replicate that and match_dup the operands.
+ (cmp_ccx_arith_op_set): Likewise.
+ (cmp_cc_arith_op_not_set): Likewise.
+ (cmp_ccx_arith_op_not_set): Likewise.
+
+2001-02-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * explow.c (trunc_int_for_mode): Sign-extend value to mode.
+
+2001-02-12 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/sysv4.h (MASK_NO_BITFIELD_WORD): New macro.
+ (TARGET_NO_BITFIELD_WORD): New macro.
+ (SUBTARGET_SWITCHES): Add -mbit-word, -mno-bit-word options.
+ (BITFIELD_NBYTES_LIMITED): Define based on TARGET_NO_BITFIELD_WORD.
+
+Mon Feb 12 18:13:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * cselib.c: New file, from simplify-rtx.c.
+ * simplify-rtx.c: Remove cselib parts.
+ * Makefile.in: Add cselib.o.
+
+2001-02-12 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_float_const): Remove warning.
+ (setup_incoming_varargs): Remove warning.
+
+ * config/rs6000/rs6000.c (validate_condition_mode): When
+ flag_fast_math, allow floating-point conditionals to be reversed.
+ (rs6000_generate_compare): When flag_fast_math, don't generate
+ cror operations for FP conditionals.
+
+ * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
+ -mcall-i960.
+ (ASM_SPEC): Likewise.
+ (CC1_ENDIAN_LITTLE_SPEC): Likewise.
+ (CC1_SPEC): Likewise.
+ (LINK_TARGET_SPEC): Likewise.
+ (CPP_ENDIAN_SPEC): Likewise.
+ * Makefile.in (check-consistency): New target.
+
+2001-02-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-decl.c (grokdeclarator): In C99 mode, give the more specific
+ "return type defaults" warning for functions with return type
+ defaulting to int.
+ * c-lang.c (c_init): In C99 mode, enable warnings for implicit
+ function declarations by default rather than only when pedantic.
+
+Mon Feb 12 17:28:48 CET 2001 Jan Hubicka <jh@suse.cz>
+
+ * regclass.c (init_reg_sets_1): Optimize calculation of move_cost
+ arrays.
+
+2001-02-12 Nathan Sidwell <nathan@codesourcery.com>
+
+ * extend.texi (Deprecated): Deprecate new initializer lists.
+
+2001-02-12 Nathan Sidwell <nathan@codesourcery.com>
+
+ * mkdeps.c (deps_add_default_target): Robustify. Add
+ basename component only.
+ * cpp.texi (-M): Describe how default target is generated.
+ * invoke.texi (-M): Likewise.
+
+2001-02-12 Kazu Hirata <kazu@hxi.com>
+
+ * toplev.c (push_float_handler): Remove.
+ (pop_float_handler): Remove.
+ * toplev.h: Remove prototypes for the above functions.
+
+2001-02-12 Jakub Jelinek <jakub@redhat.com>
+
+ * c-common.c (constant_fits_type_p): New function.
+ (convert_and_check): Use it.
+
+2001-02-11 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (GXX_ABI_FLAG): Don't define.
+ * configure.in (--enable-new-gxx-abi): Remove option.
+ * config.in: Regenerated.
+ * configure: Likewise.
+
+2001-02-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * lcm.c (compute_earliest): Let EXIT_BLOCK be handled as a regular
+ basic block.
+ (optimize_mode_switching) [NORMAL_MODE]: Set up EXIT_BLOCK as a
+ regular basic block, and arrange for all edges into it to switch
+ to normal mode.
+
+2001-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * Makefile.in (distclean): Do not remove .gdbinit.
+
+2001-02-11 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (gcc.o): Fix typos.
+ (protize.o): Likewise.
+ (unprotoize.o): Likewise.
+
+2001-02-11 Richard Henderson <rth@redhat.com>
+
+ * tree.c (build1): Check for null operand in last change.
+
+2001-02-11 Richard Henderson <rth@redhat.com>
+
+ * fold-const.c (split_tree): Don't assume a constant isn't splittable.
+ (fold): Don't assume a constant isn't foldable.
+ * tree.c (build): Set TREE_CONSTANT for an expression with no
+ side-effects and constant operands.
+ (build1): Likewise.
+
+2001-02-10 Richard Henderson <rth@redhat.com>
+
+ * jump.c (squeeze_notes): Revert 2000-05-12 change.
+
+2001-02-10 Anthony Green <green@redhat.com>
+
+ * cpp.texi (Standard Predefined): Add documentation for
+ __OPTIMIZE_SIZE__.
+
+ * c-common.c (combine_strings): Improve warning message.
+
+2001-02-10 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/sysv4.h (LINK_TARGET_SPEC): Use two dashes for
+ --oformat.
+ * config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Likewise.
+
+Fri Feb 9 15:05:27 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/t-cygwin (T_CPPFLAGS): Use correct location for
+ CYGWIN_CROSS_DIR.
+
+2001-02-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (sibcalli, sibcalli_pcrel, sibcalli): Set
+ fp_mode attribute.
+
+2001-02-09 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.md: Change output contraint on post inc
+ load/store multiple patterns to be a read/write contraint.
+
+2001-02-09 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * gcc.c (cpp_options): Delete .d files on error. Don't delete
+ .o files when using the -M options.
+
+2001-02-08 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (output_toc): Allow 32-bit targets to
+ handle DImode constants. Use one TOC entry for SImode and smaller
+ constants, aligned properly.
+
+2001-02-08 Jason Merrill <jason@redhat.com>
+
+ * config/arm/arm.c (arm_expand_prologue): Do tell the dwarf2 backend
+ about the SP adjustment for saving the static chain pointer.
+ * dwarf2out.c (dwarf2out_frame_debug_expr): Use the specified
+ offset when setting a temporary CFA register.
+
+2001-02-08 Chandrakala Chavva <cchavva@redhat.com>
+
+ * config.gcc : New targets, i386-*-chorusos*, sparc-*-chorusos*,
+ powerpc-*-chorusos* .
+ * config/rs6000/chorus.h : New file.
+ * config/i386/chorus.h : New file.
+ * config/sparc/chorus.h : New file.
+ * config/sparc/t-chorus-elf : New file.
+
+2001-02-08 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Move from here ...
+ * config/rs6000/aix.h (ASM_OUTPUT_SYMBOL_REF): ... to here.
+ * config/rs6000/aix51.h (CPLUSCPLUS_CPP_SPEC): Define it.
+ (__WCHAR_TYPE__): Correct macro name.
+
+2001-02-08 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_frame_pointer_required): New.
+ (ix86_setup_frame_addresses): New.
+ (struct machine_function): Add accesses_prev_frame.
+ * config/i386/i386.h (FRAME_POINTER_REQUIRED): Call
+ ix86_frame_pointer_required.
+ (SUBTARGET_FRAME_POINTER_REQUIRED): New.
+ (SETUP_FRAME_ADDRESSES): New.
+ * config/i386/i386-protos.h: Update.
+ * config/i386/sco5.h (SUBTARGET_FRAME_POINTER_REQUIRED): Rename
+ from FRAME_POINTER_REQUIRED.
+ * config/i386/svr3gas.h: Likewise.
+ * config/i386/sysv3.h: Likewise.
+ * config/i386/v3gas.h: Likewise.
+
+2001-02-08 Richard Henderson <rth@redhat.com>
+
+ * config/sparc/sparc.c (function_arg_record_value_3): Fix
+ calculation of the number of integer registers required.
+ (function_arg_record_value): Likewise.
+
+2001-02-08 Jason Merrill <jason@redhat.com>
+
+ * diagnostic.c (internal_error): Say "confused" after 1 error, not
+ two. Print file and line with "confused" message.
+
+ * dwarf2out.c (dwarf2out_line): Include filename in -dA output.
+
+Thu Feb 8 11:21:28 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * rtlanal.c (remove_node_from_expr_list): Correctly update PREV.
+
+2001-02-08 Bernd Schmidt <bernds@redhat.com>
+
+ * final.c (cleanup_subreg_operands): The address of a MEM can
+ contain SUBREGs.
+
+ * config/ia64/ia64.c (ia64_variable_issue): Call group_barrier_needed_p
+ for asms, too.
+
+2001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi (Incompatibilities): Update documentation of
+ preprocessing numbers.
+
+2001-02-07 Jakub Jelinek <jakub@redhat.com>
+
+ * c-decl.c (finish_enum): Revert part of 2000-01-05 change.
+
+2001-02-07 Mark Mitchell <mark@codesourcery.com>
+
+ * config/rs6000/aix43.h (CPLUSCPLUS_CPP_SPEC): Define it.
+
+ * defaults.h (CPLUSPLUS_CPP_SPEC): New macro.
+ * gcc.c (struct compiler): Add cpp_spec field.
+ (input_file_compiler): New variable.
+ (do_spec_1): Allow a particular compiler to handle `%C'
+ specially.
+ (main): Store the current compiler in input_file_compiler.
+ * tm.texi (CPLUSPLUS_CPP_SPEC): Document.
+
+2001-02-07 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * cpphash.h (struct spec_nodes): Add n_true and n_false.
+ * cppinit.c (cpp_create_reader): Initialize them.
+ (append_include_chain): cxx_aware arg might be unused.
+ * cppexp.c (lex): In C++ mode, recognize 'true' and 'false'
+ keywords and give them their phase 7 meaning. Pedwarn about
+ this unless '__bool_true_false_are_defined' is defined.
+
+2001-02-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * lcm.c (optimize_mode_switching): Emit mode_set before the
+ JUMP_INSN of an abnormal edge.
+
+2001-02-07 Bernd Schmidt <bernds@redhat.com>
+
+ * builtins.c (expand_builtin_setjmp_receiver): Emit an ASM_INPUT as
+ a scheduling barrier at the end.
+
+ * tm.texi (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Document.
+
+2001-02-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (reload_outsf): Removed.
+ (movsf_ie): Introduce constraints for FPUL loads and stores.
+ (reload_insf): Broaden the output constraint.
+
+ * config/elfos.h (INT_ASM_OP): Don't define it if it's already
+ defined.
+ * config/sh/sh.h (INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
+ ASM_OUTPUT_DESTRUCTOR): Copy definitions from config/elfos.h.
+
+2001-02-06 Chandrakala Chavva <cchavva@redhat.com>
+
+ * final.c: Revert my previous changes.
+ * output.h: Make profile_label_no extern.
+ * config/rs6000/rs6000.c (output_profile_hook): Use standard functions
+ for generating label.
+
+2001-02-06 Laurynas Biveinis <lauras@softhome.net>
+
+ * config/i386/djgpp.h: Add comments about standard paths.
+ (MD_EXEC_PREFIX): Undefine before defining.
+ (MD_STARTFILE_PREFIX): New.
+
+2001-01-30 Bruce Korb <bkorb@gnu.org>
+
+ fixinc/fixincl.c(process): Emit error message only if appropriate :)
+ (load_file): do not rely on load_file_data() to close file pointer
+ fixinc/fixlib.c(load_file_data): do not close passed in file pointer
+ fixinc/inclhack.def(irix_limits_const): add test_text
+
+2001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppexp.c (parse_defined): Improve diagnostics for invalid
+ syntax.
+
+2001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmacro.c (cpp_get_token): Avoid pasting after a builtin.
+
+2001-02-06 Mark Mitchell <mark@codesourcery.com>
+
+ * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Define.
+ * config/rs6000/rs6000-protos.h (rs6000_output_symbol_ref): Declare.
+ * config/rs6000/rs6000.c (VTABLE_NAME_P): New macro.
+ (rs6000_output_symbol_ref): New function.
+ (output_toc): Use VTABLE_NAME_P.
+
+Tue Feb 6 07:54:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * print-tree.c (print_node, case PARM_DECL):
+ Print DECL_ARG_TYPE and DECL_ARG_TYPE_AS_WRITTEN.
+
+ * stor-layout.c (reference_types_internal): New variable.
+ (internal_reference_types): New function.
+ (layout_type, case REFERENCE_TYPE): Make Pmode if internal.
+ * tree.h (internal_reference_types): New declaration.
+
+ * cse.c (find_best_addr): Fix typo in computing cost.
+
+Mon Feb 5 21:56:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * combine.c (nonzero_bits, case PLUS): If pointers extend unsigned
+ and this is the sum of a pointer and a constant, we know the result
+ did not overflow.
+ (num_sign_bit_copies, case PLUS): Likewise.
+ * explow.c (convert_memory_address): Remove opposite SUBREG.
+ * function.c (instantiate_new_reg): New function (from common code).
+ (instantiate_virtual_regs_1): Call it.
+ For PLUS, handle if (plus (subreg (virt-reg) (const_int))
+ if pointers sign- or zero-extend.
+ * simplify-rtx.c (simplify_unary_operation, case ZERO_EXTEND):
+ If pointers extend unsigned, use inside of SUBREG.
+ (simplify_unary_operation, case SIGN_EXTEND): Likewise, if sign extend.
+
+2001-02-05 Benjamin Kosnik <bkoz@redhat.com>
+
+ * Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Change to target
+ subdir of gcc_gxx_include_dir.
+ (gcc_gxx_target_include_dir): Remove.
+
+2001-02-05 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * dwarf2out.c: Revise DWARF2 Abbreviation Glossary comments.
+ (dwarf2out_frame_debug_expr): Revise introductory comments to add
+ a high-level description.
+
+2001-02-05 Chandrakala Chavva <cchavva@redhat.com>
+
+ * final.c: Move the declaration of profile_label_no to ...
+ * output.h: ... here.
+ * function.c (expand_function_start): Call PROFILE_HOOK.
+ * config/rs6000/aix.h: Define PROFILE_HOOK.
+ * config/rs6000/rs6000-protos.h: output_profile_hook new.
+ * config/rs6000/rs6000.c (output_profile_hook): Define.
+ (output_prolog): Do nothing for ABI_AIX as it is taken care by
+ output_profile_hook.
+ tm.texi : Explain new macro PROFILE_HOOK.
+
+2001-02-06 Hans-Peter Nilsson <hp@axis.com>
+
+ * extend.texi (Extended Asm): Do not say that semicolon is always
+ a valid line-breaking character for GNU assemblers. Use
+ newline-tab as the most commonly supported syntax. Use
+ newline-tab rather than semicolon in multi-insn examples.
+
+2001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * Makefile.in (gcc_gxx_target_include_dir): Use $(target_alias).
+
+2001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_return_addr): Use PIC
+ code for AIX, even without flag_pic.
+
+2001-02-05 Jakub Jelinek <jakub@redhat.com>
+
+ * c-typeck.c (common_type): push and pop binding level around
+ calling common_type on function parameters.
+
+Mon Feb 5 14:30:37 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h (CPP_SPEC): Add missing space after -idirafter.
+
+Mon Feb 5 11:23:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/mips/mips.c (override_options): Fix typo in last change.
+ (mips_make_temp_file): Call fatal_io_error, not pfatal_with_name.
+ (mips_asm_file_end): Likewise; also pass more args to fatal_io_error.
+
+2001-02-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ * invoke.texi (-fdump-class-layout): Document.
+ (-fdump-translation-unit): Use `=' as filename separator.
+
+2001-02-05 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (s-mlib): Don't build multilibs if
+ --disable-multilib.
+ (DRIVER_DEFINES): Adjust accordingly.
+ (gcc.o): Likewise.
+ (protoize.o): Likewise.
+ (unprotoize.o): Likewise.
+ * configure.in: Recognize --enable-multilib.
+
+2001-02-04 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (DRIVER_DEFINES): Fix quoting.
+
+ * Makefile.in (site.exp): Always set HAVE_LIBSTDCXX_V3.
+ * configure.in: Remove --enable-libstdcxx_v3 support.
+ * configure: Regenerated.
+
+Sun Feb 4 15:52:44 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/avr/avr.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
+ Call abort instead of fatal.
+ (TRAMPOLINE_TEMPLATE): Call internal_error instead of fatal.
+ * config/dsp16xx/dsp16xx.h (FUNCTION_PROFILER): Likewise.
+ (FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Likewise.
+ (TRAMPOLINE_TEMPLATE, INITIALIZE_TRAMPOLINE): Likewise.
+ (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
+ * config/rs6000/rs6000.h (RETURN_ADDRESS_OFFSET): Likewise.
+
+ * diagnostic.h (set_internal_error_function): Renamed.
+ * toplev.h (internal_error): Renamed from fatal.
+ (pfatal_with_name): Deleted.
+ (fatal_io_error): Now has printf-style arguments.
+ * diagnostic.c (pfatal_with_name): Deleted.
+ (fatal_io_error): Rework to have args in printf-style.
+ (set_internal_error_function): Renamed from set_fatal_function.
+ (internal_error): Renamed from fatal.
+ (error_recursion, fancy_abort): Call internal_error instead of fatal.
+ * dwarf2out.c (get_cfa_from_loc_descr): Likewise.
+ * emit-rtl.c (gen_realpart, gen_imagpart): Likewise.
+ * expr.c (check_max_integer_computation_mode, expand_expr): Likewise.
+ * flow.c (verify_flow_info): Likewise.
+ * config/arm/arm.c (thumb_unexpanded_epilogue): Likewise.
+ * config/mips/mips.c (save_restore_insns): Likewise.
+
+ * except.c (duplicate_eh_handlers): Call abort instead of fatal.
+ * flow.c (verify_flow_info): Likewise.
+ * config/arm/arm.c (thumb_load_double_from_address): Likewise.
+ * config/avr/avr.c (pttreg_to_str, unique_section): Likewise.
+ (avr_normalize_condition): Likewise.
+ * config/c4x/c4x.c (c4x_emit_libcall, c4x_valid_operands): Likewise.
+ * config/dsp16xx/dsp16xx.c (dsp16xx_reg_class_from_letter): Likewise.
+ (limit_reload_class, double_reg_to_memory): Likewise.
+ (print_operand_address, emit_1600_code_shift): Likewise.
+ (gen_tst_reg, gen_compare_reg): Likewise.
+ * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
+ * config/dsp16xx/dsp16xx.c (dsp16xx_invalid_register_for_compare):
+ Deleted.
+ * config/dsp16xx/dsp16xx.md (unnamed cmphi): Call abort instead of it.
+
+ * c-parse.in (methoddef): Call fatal_error instead of fatal.
+ * objc/objc-act.c (build_ivar_chain): Likewise.
+ * dwarfout.c (dwarfout_init): Call fatal_io_error instead of
+ pfatal_with_name.
+ * graph.c (clean_graph_dump_file): Likewise.
+ * profile.c (init_branch_prob): Likewise.
+ * objc/objc-act.c (objc_init): Likewise.
+
+ * config/arm/arm.c (arm_override_options): Make errors non-fatal.
+ * config/avr/avr.c (avr_override_options): Likewise.
+ * config/c4x/c4x.c (c4x_expand_prologue): Likewise.
+ * config/dsp16xx/dsp16xx.c (function_prologue): Likewise.
+ * config/h8300/h8300.c (h8300_init_once): Likewise.
+ * config/mips/mips.c (override_options): Likewise.
+ * config/i386/i386.c (override_options): Likewise, rework.
+ * config/m68k/m68k.c (override_options): Likewise.
+
+ * config/dsp16xx/dsp16xx.c (print_operand): Call output_operand_lossage
+ instead of fatal.
+ * config/mips/mips.c (print_operand): Likewise.
+ * hash.c (hash_allocate): Don't check for failure returns from
+ obstack functions that can't fail.
+ (hash_table_init_n, hash_table_init): Likewise; also now return void.
+ * hash.h (hash_table_init_n, hash_table_init): Now return void.
+ * objc/objc_act.c (objc_check_decl): Remove unneeded fatal call.
+ (get_object_reference): Likewise.
+
+2001-02-04 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (all_cores): Add 710T, 720T, 740T, 940T, 9e,
+ StrongARM1110, 10TDMI, and 1020T.
+
+2001-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.h (MULTILIB_ISA_DEFAULT): Don't use #elif.
+
+2001-02-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (movdf load split): Pass register number to
+ FP_OR_XD_REGISTER_P.
+
+2001-02-04 Mark Mitchell <mark@codesourcery.com>
+
+ * cppinit.c (BC): New macro.
+ (builtin_array): Add __GXX_WEAK__.
+ * cpplib.h (builtin_type): Add BT_WEAK.
+ * cppmacro.c (builtin_macro): Handle BT_WEAK.
+ * defaults.h (SUPPORTS_ONE_ONLY): Define.
+ * varasm.c (SUPPORTS_ONE_ONLY): Do not define.
+
+2001-02-03 Jakub Jelinek <jakub@redhat.com>
+
+ * cppinit.c (append_include_chain): Honor NO_IMPLICIT_EXTERN_C.
+
+2001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.h: Rename _ALIGN POOL_ALIGN.
+ * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
+
+2001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.h: Rename ALIGN _ALIGN.
+ * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
+
+Fri Feb 2 23:15:29 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h (CPP_SPEC): Reorganize YA to better handle cross
+ compilation environment.
+ * config/i386/t-cygwin (T_CPPFLAGS): Define CYGWIN_CROSS_DIR to allow
+ control over location of cygwin includes and libs.
+
+2001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
+
+ * c4x.h (HARD_REGNO_CALL_PART_CLOBBERED): Fix typo.
+
+2001-02-02 lars brinkhoff <lars@nocrew.org>
+
+ * md.texi (Standard Names): remove reference to spur.md.
+
+2001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
+
+ * c4x.h (IS_INT_CALL_SAVED_REG, IS_FLOAT_CALL_SAVED_REG): Define.
+ (HARD_REGNO_CALL_PART_CLOBBERED): Use IS_FLOAT_CALL_SAVED_REG.
+ (INITIAL_FRAME_POINTER_OFFSET, INITIAL_ELIMINATION_OFFSET): Likewise.
+ * c4x.c (c4x_hard_regno_rename_ok): Use IS_XXX_CALL_SAVED_REG.
+ (c4x_expand_prologue, c4x_expand_epilogue): Likewise.
+
+2001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x.c (group1_reg_operand, group1_mem_operand, arx_reg_operand,
+ c4x_arn_reg_operand, c4x_arn_mem_operand): Do not check register
+ number before reload.
+ (c4x_adjust_cost): Return zero before reload.
+ * c4x.md (load_immed_address+1, load_immed_address+2): Do not
+ split before reload.
+
+2001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x.c (c4x_hard_regno_rename_ok): New.
+ * c4x-protos.h (c4x_hard_regno_rename_ok): New.
+ * c4x.h (HARD_REGNO_RENAME_OK): Define.
+
+Fri Feb 2 20:03:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * diagnostic.h: Add missing "extern" in all declarations.
+
+2001-02-02 Alex Samuel <samuel@codesourcery.com>
+
+ * Makefile.in (gcc_gxx_target_include_dir): Generate dynamically
+ as for gcc_gxx_include_dir.
+
+2001-02-02 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi, invoke.texi: Update -Wtraditional documentation.
+
+2001-02-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (output_far_jump): Don't use braf on SH1. Emit
+ label before alignment to be used as the braf base address.
+ * config/sh/sh.md (length): Use longer lengths for SH1 PIC far
+ branches.
+ (casesi_jump_2): Require at least TARGET_SH2.
+
+ * config/float-sh.h (LDBL_EPSILON, LDBL_MIN, LDBL_MAX): Prevent
+ truncation to 32-bit doubles on -m3e and -m4-single-only.
+
+2001-02-02 Mark Mitchell <mark@codesourcery.com>
+
+ * gcc.c (init_gcc_specs): New function. Make -shared-libgcc
+ the default when building a shared object.
+ (init_spec): Use it.
+ * testsuite/lib/g++.exp: Include the directory where libgcc
+ is located to the LD_LIBRARY_PATH list.
+ * invoke.texi (-shared-libgcc): Document the cases in which
+ GCC defaults to using the shared libgcc.
+
+2001-02-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/fp-bit.h (MAX_USI_INT, MAX_SI_INT): Don't assume
+ unsigned is wide enough.
+ (BITS_PER_SI): New.
+ * config/fp-bit.c (_fpmul_parts): Don't assume 32-bits SI.
+ (si_to_float): Likewise.
+ (float_to_si, float_to_usi): Use BITS_PER_SI.
+
+2001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * dwarf2out.c: Added explanation of abbreviations.
+ (def_cfa_1): Added comments listing DWARF2 instructions.
+ (cfa_temp_reg): Removed in favor of cfa_temp.
+ (cfa_temp_value): Removed in favor of cfa_temp.
+ (cfa_temp): New global variable.
+ (dwarf2out_frame_debug_expr): Added extensive introductory
+ comments explaining the function's transformations. Revised to
+ use cfa_temp. Added some rtx checking. Generalize IOR case.
+ (dwarf2out_frame_debug): Revised to use cfa_temp.
+ (output_aranges): Cast as "unsigned" to avoid warning.
+ * rtl.texi (RTX_FRAME_RELATED_P): Revise entry to emphasize better
+ explain which instructions must be marked.
+
+2001-02-01 Richard Henderson <rth@redhat.com>
+
+ * local-alloc.c (update_equiv_regs): Copy INSN_CODE to the
+ new instruction.
+
+2001-02-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/crt1.asm (main_k): Modified so that start calls
+ ___setup_argv_and_call_main.
+
+2001-02-01 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.h (struct cpp_buffer): Move saved_flags from cpp_reader.
+ * cpplex.c (_cpp_lex_token): New token picks up the saved flags,
+ and AVOID_LPASTE is cleared on meeting an unescaped newline.
+ * cppmacro.c (builtin_macro): Set builtin flags here.
+ (paste_all_tokens): Preserve AVOID_LPASTE on pasted token.
+ (replace_args): Clarify intent.
+ (cpp_get_token): Macro expansion tokens get the saved flags.
+ Update.
+ * cppmain.c (scan_buffer): Remove now-redundant print.printed
+ check.
+
+2001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Reverse change of
+ 2001-Jan-29.
+
+Thu Feb 1 07:22:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * builtins.c (expand_builtin_alloca): allocate_dynamic_stack_space
+ returns Pmode pseudo, but we need ptr_mode.
+ * explow.c (allocate_dynamic_stack_space): Use plus_constant.
+ Remove bogus conversions; use HOST_WIDE_INT for size.
+ Don't use TARGET if wrong mode.
+
+ * config/i386/i386.c (ix86_compute_frame_size): Allow
+ stack_alignment_needed to be non-default even if size is zero.
+
+2001-01-31 Alan Modra <alan@linuxcare.com.au>
+
+ * pa.c (hppa_init_pic_save): New function.
+ * pa.h (hppa_init_pic_save): Declare.
+ * pa.md (call, call_value, sibcall, sibcall_value): Use
+ the above instead of duplicated code.
+
+ * pa.c (hppa_encode_label): Correct size of alloca buffer
+ so we don't overrun it. Correct leading `*' case.
+ * pa.h (STRIP_NAME_ENCODING): Simplify now that we don't
+ need to handle `*@'.
+ (FUNCTION_NAME_P): Likewise.
+
+2001-01-31 Richard Henderson <rth@redhat.com>
+
+ * config.gcc (alpha-osf5): Use float-i128.h.
+
+ * config/float-i128.h (FLT_EVAL_METHOD, DECIMAL_DIG): Define.
+ * config/float-i32.h: Likewise.
+ * config/float-i64.h: Likewise.
+ * config/float-sh.h: Likewise.
+ * config/float-sparc.h: Likewise.
+
+2001-01-31 DJ Delorie <dj@redhat.com>
+
+ * expmed.c (extract_bit_field): allow non-integral modes if we
+ want to extract a whole register from itself.
+
+2001-01-31 Jakub Jelinek <jakub@redhat.com>
+
+ * c-typeck.c (set_init_index): If first is equal to last, assume as
+ if it was not a range at all.
+
+2001-01-31 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/fp-bit.c: Include tm.h.
+ (float_to_si): Don't assume SImode is 32-bits wide.
+ (float_to_usi): Likewise.
+
+2001-01-31 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (structsp): Pedwarn when "enum foo" refers to an
+ incomplete type.
+ (typename): Call pending_xref_error after parsing typed_typespecs.
+ * c-decl.c (lookup_tag): Give error immediately rather than
+ leaving it pending if the tag of the wrong type is in the same
+ binding level.
+ (xref_tag): Don't pedwarn for forward declarations of enum types
+ here.
+ * gcc.texi (Actual Bugs): Remove entry for misuse of struct, union
+ and enum tags.
+
+2001-01-31 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/float-sparc.h (LDBL_MAX) [sparc32]: Fix typo.
+
+2001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.c (T_ELIF): Move to STDC89, not that it matters.
+ (_cpp_handle_directive): Suggest not using #elif with -Wtraditional.
+
+2001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.h (struct cpp_reader): New saved_flags.
+ * cppmacro.c (cpp_get_token): Use saved_flags to remember
+ to avoid a paste after a pasted token.
+
+2001-01-31 Alexandre Oliva <aoliva@redhat.com>
+
+ * libgcc2.h (Wtype_MAX, Wtype_MIN): Define.
+ * libgcc2.c (__fixunssfSI, __fixunsdfSI, __fixunsxfSI): Use
+ Wtype_MIN instead of LONG_MIN.
+
+2001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * fixinc/fixincl.tpl: Add 2001 to copyright. Change name of
+ README file.
+ * fixinc/fixincl.x: Regenerated.
+ * fixinc/inclhack.def (irix_limits_const): New definition to
+ convert "const" to "__const" in limits.h.
+
+2001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * fixinc/genfixes (AG): Fix "autogen4" thinko.
+
+2001-01-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * regmove.c (try_auto_increment): Change REG_DEAD into REG_UNUSED
+ when register dies in the insn.
+
+2001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * diagnostic.c (fatal): Fix word wrap.
+
+2001-01-30 Alexandre Oliva <aoliva@redhat.com>
+
+ * combine.c (try_combine): Fix SUBREG setting for
+ HOST_BITS_PER_WIDE_INT >= 2 * BITS_PER_WORD.
+
+2001-01-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * jump.c (comparison_dominates_p): Don't try to handle UNKNOWN
+ comparison codes.
+
+2001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-decl.c (c_expand_body): Check TYPE_SIZE_UNIT (ret_type)
+ is not NULL.
+ * toplev.c (decode_W_option): Update warn_larger_than
+ unconditionally for each processed switch.
+
+2001-01-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (pa_init_machine_status): Initialize pic_offset_table_save_rtx
+ to NULL_RTX.
+ (hppa_expand_prologue): Delete code to save pic offset table register
+ in the function prologue.
+ * pa.h (PIC_OFFSET_TABLE_SAVE_RTX): Correct type in comment.
+ * pa.md (call, call_value, sibcall, sibcall_value): Save the pic offset
+ table register at the beginning of the function after the prologue.
+
+2001-01-29 lars brinkhoff <lars@nocrew.org>
+
+ * tm.texi (PUSH_ROUNDING): Remove duplicate lines.
+
+2001-01-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
+ Jeff Law <law@redhat.com>
+
+ * pa.md (return): Revise comment for trivial return.
+ (return_internal): Non-trivial return pattern for non-PIC code.
+ (return_internal_pic): Non-trivial return pattern for PIC code.
+ It uses the PIC register to ensure it is restored after
+ function calls.
+ (epilogue): Generate appropriate return for PIC and non-PIC code.
+
+Mon Jan 29 23:53:14 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h: Fix -mno-cygwin search path for link.
+
+2001-01-29 DJ Delorie <dj@redhat.com>
+
+ * combine.c (if_then_else_cond): Pass the correct mode to
+ operand_subword() for constants.
+
+Mon Jan 29 20:38:19 2001 Christopher Faylor <cgf@cygnus.com>
+
+ * config/i386/cygwin.h: Add w32api to include search. Search different
+ directories in a cross-build environment.
+
+2001-11-29 Tim Josling <tej@melbpc.org.au>
+
+ * tree.h (TYPE_STUB_DECL): Add documentation.
+
+2001-11-29 Laurynas Biveinis <lauras@softhome.net>
+
+ * sdbout.c (sdbout_one_type): Skip types with indeterminate size.
+ (sdbout_field_types): Likwise. Fix use of host_integerp.
+
+2001-01-29 Thomas Pfaff <tpfaff@gmx.net>
+
+ * mingw32.h: Override STARTFILE_SPEC and LINK_SPEC declared in
+ cygwin.h.
+
+2001-01-29 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Revise definition
+ to use flag_gnu_linker.
+
+2001-01-29 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.c (T_BAD_DIRECTIVE): Remove.
+ (_cpp_init_stacks): Loop from 0 to N_DIRECTIVES - 1.
+
+2001-01-29 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * tree.c, tree.h (build_parse_node): Remove; was identical to
+ build_nt.
+ * c-lang.c (start_cdtor), objc/objc-act.c
+ (build_module_descriptor): Use build_nt instead of
+ build_parse_node.
+
+2001-01-29 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (addqi_1_lea): Fix mode (QI instead of HI).
+ (testqi_1, andqi_2): If widening to SImode, make sure CONST_INT does
+ not have any upper bits set.
+
+2001-01-29 Phil Edwards <pme@sources.redhat.com>
+
+ * COPYING.LIB: Update to LGPL 2.1 from the FSF.
+
+2001-01-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * stmt.c (estimate_case_costs): Use integer_minus_one_node.
+
+ * tree.c (build_common_tree_nodes_2): Set integer_minus_one_node.
+
+ * tree.h (tree_index): Add new element TI_INTEGER_MINUS_ONE.
+ (integer_minus_one_node): Define.
+
+2001-01-28 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in (bootstrap2-lean): Fix typo.
+
+2001-01-28 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpphash.c (_cpp_cleanup_hashtable, _cpp_lookup_with_hash)
+ : Don't set fe_value.
+ * cpplib.h (AVOID_LPASTE): New flag.
+ (struct cpp_hashnode): Remove fe_value.
+ * cpplex.c (cpp_avoid_paste): Don't paste '.' with a number.
+ * cppmacro.c (builtin_macro): Don't set flags here.
+ (replace_args): Set AVOID_LPASTE flag on first token of an
+ argument, and the token following it.
+ (cpp_get_token): Set AVOID_LPASTE flag on first token of a
+ macro expansion, and on the token following it. Do it for
+ builtins too.
+ * cppmain.c (scan_buffer): Avoid pasting only flagged tokens.
+
+2001-01-27 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/t-ieee: Remove multilibbing.
+ (TARGET_LIBGCC2_CFLAGS): Add -mieee.
+
+2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in: Arrange to include defaults.h in [ht]config.h/tm.h.
+
+ * Makefile.in: Remove all dependencies on defaults.h.
+ * builtins.c: Don't include defaults.h.
+ * c-common.c: Likewise.
+ * c-decl.c: Likewise.
+ * c-pragma.c: Likewise.
+ * c-typeck.c: Likewise.
+ * combine.c: Likewise.
+ * i386.c: Likewise.
+ * frame-ia64.c: Likewise.
+ * cppexp.c: Likewise.
+ * crtstuff.c: Likewise.
+ * dbxout.c: Likewise.
+ * dwarf2out.c: Likewise.
+ * dwarfout.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * except.c: Likewise.
+ * expr.c: Likewise.
+ * final.c: Likewise.
+ * frame-dwarf2.c: Likewise.
+ * libgcc2.c: Likewise.
+ * optabs.c: Likewise.
+ * profile.c: Likewise.
+ * sdbout.c: Likewise.
+ * toplev.c: Likewise.
+ * tradcif.y: Likewise.
+ * tree.c: Likewise.
+ * varasm.c: Likewise.
+
+2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_fputs): Use size_one_node when
+ transforming into fwrite.
+
+2001-01-27 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi (Attribute Syntax): New section.
+
+2001-01-27 Michael Sokolov <msokolov@ivan.Harhan.ORG>
+
+ * fixproto: Correctly install synthesized unistd.h and stdlib.h when
+ they didn't need fixing.
+
+2001-01-27 Janis Johnson <janis@us.ibm.com>
+
+ * config.gcc (i[34567]86-sequent-{ptx4*,sysv4*}): Use usegas.h
+ if appropriate.
+ * config/ptx4.h: Several fixes to build on DYNIX/ptx v4.[456], and
+ to remove macro definitions that are duplicated from elfos.h.
+
+2001-01-27 Richard Henderson <rth@redhat.com>
+
+ * config/i386/sco5gas.h: Move ...
+ * config/usegas.h: ... here.
+ * config.gcc (i[34567]86-*-sco3.2v5) [tm_file]: Update.
+
+2001-01-27 Jakub Jelinek <jakub@redhat.com>
+
+ * c-typeck.c (struct constructor_stack): Add range_stack member.
+ (really_start_incremental_init): Clear it.
+ (push_init_level): Save constructor_range_stack and clear it if
+ pushing explicit braces.
+ (pop_init_level): abort if constructor_range_stack is nonzero at
+ explicit closing brace. Restore saved constructor_range_stack if
+ not implicit.
+
+2001-01-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * expr.c (emit_move_insn): Add REG_EQUAL note when constant loaded
+ into register was forced into memory.
+
+2001-01-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in: Remove uses of + before $(MAKE).
+
+2001-01-26 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (cost_table): Remove.
+ (COST_TABLE, cost_table_initialized): New.
+ (estimate_case_costs): Use the later instead of the former.
+ (balance_case_nodes): Likewise.
+
+2001-01-26 Richard Henderson <rth@redhat.com>
+
+ * alias.c (objects_must_conflict_p): Read-only slots may not
+ conflict despite having the same type.
+
+2001-01-27 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (loop_giv_reduce_benefit): Copy mode size into
+ int variable.
+ (check_ext_dependant_givs): Initialize u_start_val and
+ u_end_val.
+ (load_mems): Make last_max_reg unsigned.
+ (try_swap_copy_prop): Use INSN_P and initialize set.
+
+Fri Jan 26 23:22:58 2001 Denis Chertykov <denisc@overta.ru>
+
+ * README.AVR : Removed.
+
+Fri Jan 26 11:37:26 2001 Jeffrey A Law (law@cygnus.com)
+
+ * pa-64.h (text_section): Remove declaration.
+
+ * pa.md (return_internal): Remove mode on PIC register use.
+
+2001-01-25 lars brinkhoff <lars@nocrew.org>
+
+ * tm.texi (DATA_ALIGNMENT, LOCAL_ALIGNMENT, ASM_OPEN_PAREN,
+ ASM_CLOSE_PAREN): fix typos.
+
+2001-01-25 Mark Mitchell <mark@codesourcery.com>
+
+ * acconfig.h: Define `const' to the empty string if neither
+ __STDC__ nor __cplusplus is defined.
+ * config.in: Regenerated.
+
+2001-01-25 David Edelsohn <edelsohn@gnu.org>
+
+ * config.gcc (rs6000-ibm-aix[5-9]*): Change to aix51.h.
+ * collect2.c (main): Delete importf. Add ".obj" file extension.
+ (GCC_CHECK_HDR): Handle AIX V5 new magic number.
+ (aix_std_libs): Add additional AIX libraries to skip.
+ * config/rs6000/aix.h (MY_ISCOFF): Add AIX V5 new magic number.
+ * config/rs6000/aix51.h: New file.
+
+2001-01-25 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (loop_call_insn_emit_before, loop_call_insn_hoist): New.
+ (loop_insn_emit_before): No longer static.
+ (move_movables): Replace emit_insn_after with loop_insn_emit_after.
+ (loop_givs_rescan, load_mems): Likewise.
+ (check_dbra_loop): Replace emit_insn_before with loop_insn_emit_before.
+ (maybe_eliminate_biv_1):
+ (move_movables): Replace emit_call_insn_before with
+ loop_call_insn_hoist.
+ * loop.h (loop_insn_emit_before): Add.
+ * unroll.c (copy_loop_body): Replace emit_insn_before with
+ loop_insn_emit_before.
+
+2001-01-25 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * diagnostic.c (fatal): Request preprocessed source.
+
+Thu Jan 25 02:01:16 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * c-decl.c (duplicate_decls): If different_binding_level is nonzero,
+ olddecl has argument types and newdecl has none, use the argument
+ types from olddecl.
+
+2001-01-24 Ulrich Drepper <drepper@redhat.com>
+
+ * dwarf2out.c (prefix_of): New function. Determine longest common
+ prefix of the two arguments. The units are whole path components.
+ (output_file_names): When adding a new directory find the one entry
+ with the longest common prefix already in the list. Artificially
+ generate entry if there is none for this prefix.
+ Fix test to check whether the zeroth directory entry is used.
+
+Wed Jan 24 23:51:55 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * reload1.c (reload_reg_free_for_value_p): New parameter start_regno.
+ Changed all callers. Take it into account when deciding if a
+ previously loaded value matches.
+
+2001-01-24 Richard Henderson <rth@redhat.com>
+
+ * reload.c (find_reloads_subreg_address): Fail the substitution
+ if the resulting address is insufficiently aligned.
+
+2001-01-24 DJ Delorie <dj@redhat.com>
+
+ * combine.c (combine_simplify_rtx): If the modes are all VOIDmode,
+ check the original operand's mode also.
+ * simplify-rtx.c (simplify_ternary_operation): Ditto.
+
+2001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-parse.in (cast_expr): Move compound literals from here ...
+ (primary): ... to here. Use standard terminology "compound
+ literal" instead of "constructor expression".
+
+2001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.1, cpp.1: Regenerate.
+
+2001-01-24 Alexandre Oliva <aoliva@redhat.com>
+
+ * calls.c (emit_library_call_value_1): Memory slot for
+ pass-by-reference argument should have the mode of the argument,
+ not of the pointer to it.
+
+2001-01-24 Tom Tromey <tromey@redhat.com>
+
+ * gcc.texi (G++ and GCC): Mention gcj manual.
+ (Standards): Link to section of manual mentioning gcj/Java
+ compatibility.
+
+2001-01-24 Jakub Jelinek <jakub@redhat.com>
+
+ * cppfiles.c (_cpp_read_file): Add to dependencies if requested.
+ * cppinit.c (cpp_start_read): Remove deps_add_dep call.
+ * tradcpp.c (main): Add -imacros or -include'd dependencies
+ for -M*.
+ * cpp.texi (-M, -MM): Document -M -include behavior.
+
+2001-01-24 Roger Collins <roger@ProProject.com>
+
+ * config/i386/xm-i386.h: Make __i386__ a boolean macro.
+
+2001-01-24 Will Cohen <wcohen@redhat.com>
+
+ * config/mips/abi64.h (RETURN_IN_MEMORY): Always take into account
+ whether registers are 32 bits or 64 bits in size.
+
+2001-01-24 Ben Elliston <bje@redhat.com>
+
+ * config/m32r/m32r.h (PREDICATE_CODES): Remove m32r_not_same_reg.
+
+2001-01-24 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.md (builtin_longjmp_internal): New.
+ (builtin_longjmp): Use it instead of emit_indirect_jump.
+
+2001-01-23 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * bb-reorder.c (make_reorder_chain_1): Handle case where
+ jump edge goes to the same block as the fallthru edge.
+
+2001-01-23 Jim Wilson <wilson@redhat.com>
+
+ * dwarf2out.c (dwarf2out_line): Make last_file_num be unsigned.
+ * frame.h (__ia64_personality_v1): Add prototype.
+ * libgcc2.c (ia64_throw_helper): Change personality declaration to
+ prototype form. Add void * cast to first argument to personality
+ call.
+ * real.c (e113toe): Surround with INTEL_EXTENDED_IEEE_FORMAT ifdefs.
+ (asctoe113): Likewise.
+ * config/ia64/frame-ia64.c: Include eh-common.h.
+ * config/ia64/ia64-protos.h (sdata_section, sbbs_section): Add
+ prototypes.
+ * config/ia64/ia64.c (emit_insn_group_barriers): Add ATTRIBUTE_UNUSED
+ to dump parameter.
+ (itanium_split_issue): Add prototype.
+ (gen_nop_type): Ifdef out.
+ (find_best_packet): Initialize best_packet.
+ (ia64_encode_section_info): New local string. Use for ggc_alloc_string
+ result.
+ * config/ia64/ia64.h (ASM_OUTPUT_LONG_DOUBLE): Use 0L not 0.
+ * config/ia64/ia64.md (bsp_value): Add explicit stop bit at start.
+ (flushrs): Add explicit stop bit at end.
+ * config/ia64/lib1funcs.asm (__ia64_restore_stack_nonlocal): Change
+ trailing \ to >.
+
+2001-01-23 Chris Demetriou <cgd@broadcom.com>
+
+ * libgcc-std.ver (GCC_3.0): Add __terminate_func_set to list
+ of EH symbols.
+ * libgcc2.c (__terminate_func): Make variable static.
+ (__terminate_set_func): New function to set __terminate_func.
+ * libgcc2.h (__terminate_func_ptr): New typedef.
+ (__terminate_set_func): New function.
+
+2001-01-23 Richard Henderson <rth@redhat.com>
+
+ * flow.c (init_propagate_block_info): Don't consider unchanging
+ memories for dead frame store elimination.
+
+2001-01-23 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (UNIQUE_SECTION): Move default implementation ...
+ * defaults.h: ... here.
+
+2001-01-24 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * c4x.h (TARGET_LOAD_DIRECT_MEMS): Define.
+
+2001-01-23 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (lex_charconst): Fix typo: s/p/str.
+
+2001-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000.h (rs6000_return_addr): Move prototype from here...
+ * rs6000-protos.h (rs6000_return_addr): ...to here.
+ (rs6000_init_expanders): Delete prototype.
+
+2001-01-23 Nick Clifton <nickc@redhat.com>
+
+ * invoke.texi: Replace , with \, inside @gccoptlist macros.
+ (Spec Files): Document %B and %j and %. and %v3 and %M and
+ %{S*&T} spec switches.
+
+2001-01-24 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x.c (c4x_r11_set_p): Calculate rtx code correctly.
+
+2001-01-23 Chris Demetriou <cgd@sibyte.com>
+ Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpperror.c: Merge handlers of PEDWARN and WARNING.
+ Have -Werror make pedantic warnings errors, like the
+ rest of GCC.
+
+2001-01-23 Phil Edwards <pme@sources.redhat.com>
+
+ * c-tree.texi (IDENTIFIER_LENGTH): Fix typo.
+
+2001-01-23 Jakub Jelinek <jakub@redhat.com>
+
+ * integrate.h (struct inline_remap): Add compare_src, compare_mode.
+ * integrate.c (expand_inline_function): Initialize them.
+ (subst_constants): If changing COMPARE so that both its arguments
+ will be VOIDmode and the comparison mode will be lost, note
+ compare_mode. Use the recorded compare_mode to optimize
+ IF_THEN_ELSE.
+
+2001-01-23 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (new_die): Use xcalloc.
+ (output_die): Abort rather than emit a local reference to offset 0.
+
+2001-01-17 Andrew Haley <aph@redhat.com>
+
+ * libgcc2.c (get_reg_addr): Don't abort if we haven't got a copy
+ of a saved register; return NULL instead.
+ (copy_reg): Take a pointer to a source register rather than a
+ frame_state.
+ (next_stack_level): Remember the address in the stack frame of all
+ saved registers.
+ Use the saved register pointer array as the source of the CFA.
+ (throw_helper): Rewrite. Unwind once rather than twice and keep
+ track of saved registers as we go.
+
+2001-01-23 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x-protos.h (c4x_legitimize_reload_address): Remove.
+ * c4x.c (c4x_legitimize_reload_address): Remove.
+ * c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Rewrite to generate correct
+ reload address for ldp(k) insn.
+
+Mon Jan 22 20:53:47 2001 Jeffrey A Law (law@cygnus.com)
+
+ * pa.md (return_internal): Add a USE of the PIC register to ensure
+ it is restored after each call.
+ (return expander): Corresponding changes.
+
+2001-01-22 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * rs6000.h (INIT_EXPANDERS): Delete.
+ (RETURN_ADDR_RTX): Call rs6000_return_addr().
+ * rs6000.c (rs6000_override_options): Call *_machine_status from
+ here...
+ (rs6000_init_expanders): ...instead of here. Delete.
+ (rs6000_mark_machine_status): New function.
+ (rs6000_init_machine_status): Use xcalloc.
+ (rs6000_return_addr): Generate RTX for the return address.
+ (rs6000_ra_ever_killed): New, check if LR was ever destroyed.
+ (rs6000_stack_info): Use it.
+
+2001-01-22 Thomas Pfaff <tpfaff@gmx.net>
+
+ * gthr-win32.h: Include errno.h to get a declaration for
+ EINVAL and _mingw.h if the target is mingw32.
+
+2001-01-22 Andres Felipe Vargas <avargas@teletulua.com.co>
+
+ * cpp.texi: Correct typos.
+
+Mon Jan 22 13:59:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * explow.c (probe_stack_range): Ensure value passed to
+ stack_check_libfunc is ptr_mode, not Pmode.
+
+Mon Jan 22 16:53:06 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * recog.c (validate_replace_rtx_1): In ZERO_EXTEND / SIGN_EXTEND
+ case, don't use operand_subword to calculate a SUBREG that is
+ wider than a word.
+
+ * rtl.texi: Comparisons yield 0 or STORE_FLAG_VALUE.
+
+2001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x.c (c4x_valid_rptb_p, c4x_label_ref_used_p): New functions.
+ (c4x_rptb_insert): Call c4x_valid_rptb_p to check if repeat block is
+ valid. If not replace it by equivalent insns.
+
+2001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
+
+ * c4x.c (c4x_check_legit_addr): Only check CONST. Not if CONST
+ contains SYMBOL_REF, LABEL_REF and CONST_INT.
+ (c4x_U_constraint, symbolic_address_operand): Likewise.
+ (c4x_immed_float_constant): Do not check if CONST_DOUBLE is in
+ memory.
+ (c4x_r11_set_p, c4x_check_laj_p): New functions.
+ * c4x-protos.h (c4x_check_laj_p): Add prototype.
+ * c4x.md (in_annul_slot_3): Do not allow auto-increment in last
+ anulling slot because of silicon bug.
+ (laj, lajv): Call c4x_check_laj_p to check for silicon bug.
+
+2001-01-22 Alan Modra <alan@linuxcare.com.au>
+
+ * cppexp.c (parse_charconst): Change `mask' type to agree
+ with parse_escape.
+
+2001-01-21 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_asm_file_end): Disable putting
+ pic_label_name in a linkonce section.
+
+2001-01-17 Philipp Thomas <pthomas@suse.de>
+
+ * aclocal.m4 (AM_WITH_NLS): Add -lintl to LIBS if gettext was
+ found in libintl.
+ * configure: Regenerate.
+
+Sun Jan 21 02:38:56 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * expmed.c (synth_mult, expand_mult_highpart, expand_divmod): Guard
+ uses of shift_cost, shiftadd_cost and shiftsub_cost with bound checks.
+
+Sun Jan 21 09:44:17 2001 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.c (ret_cond_branch): New argument (reverse) added.
+ If REVERSE nonzero then condition code in X must be reversed.
+ (encode_section_info): Optimize if/else.
+ (avr_function_value): Fix formatting.
+
+ * config/avr/avr.md (branch): Call to ret_cond_branch changed.
+ (difficult_branch): Likewise.
+ (rvbranch): Likewise.
+ (difficult_rvbranch): Likewise.
+
+ * config/avr/avr-protos.h (ret_cond_branch): Prototype changed.
+
+ * config/avr/libgcc.S: Fix comment.
+
+2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
+
+ * sdbout.c (PUT_SDB_DEF): Fix after last bogus change.
+
+2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
+
+ * cppinit.c (INO_T_EQ): Don't use #elif, fix formatting.
+
+2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
+
+ * aclocal.m4 (gcc_AC_FUNC_STRSTR): New macro.
+ * configure.in (gcc_AC_FUNC_STRSTR): Add invokation.
+ * configure, config.in: Regenerate.
+ * Makefile.in (STRSTR, HOST_STRSTR, USE_HOST_STRSTR): New variables.
+ (LIBDEPS, HOST_LIBDEPS, LIBS, HOST_LIBS): Add strstr handling.
+ (strstr.o, $(HOST_PREFIX_1)strstr.o): New rules.
+ (doprint.o): New rule.
+
+2001-01-20 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-typeck.c (digest_init): Handle boolean types as scalars.
+
+Sat Jan 20 12:46:57 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * stmt.c (expand_return): Don't return anything if size is zero.
+ Delete redundant assignment to BYTES.
+ * expr.c (move_block_from_reg): Do nothing if NREGS is zero.
+
+2001-01-20 Marek Michalkiewicz <marekm@linux.org.pl>
+
+ * config/avr/avr.h (INIT_TARGET_OPTABS): Remove most of it, was
+ the same as the default library function names.
+ * config/avr/avr.md: Document special characters after '%'.
+ (mulqi3, mulhi3, mulsi3): Call libgcc.S functions ourselves,
+ knowing which of the call-used registers are really clobbered.
+ (divmodqi4, udivmodqi4, divmodhi4, udivmodhi4, divmodsi4, udivmodsi4):
+ New. Both quotient and remainder from one libgcc.S call.
+ * config/avr/libgcc.S: Optimize mul/divmod for the new insns above,
+ clobber as few registers as possible.
+ * config/avr/t-avr (LIB1ASMFUNCS): Adjust for the above changes.
+
+2001-01-20 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmacro.c (funlike_invocation_p): Don't move back up to the
+ context of the top of the stack.
+
+2001-01-20 Jakub Jelinek <jakub@redhat.com>
+
+ * function.c (fixup_var_refs): Move CALL_PLACEHOLDER handling...
+ (fixup_var_refs_insns): ...here.
+
+2001-01-20 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * function.c (fixup_var_refs_insns): Break up into
+ fixup_var_refs_insn [body of loop], fixup_var_refs_insns
+ [loop over entire insn list], and fixup_var_refs_insns_with_hash
+ [loop over hash table entries].
+ (fixup_var_refs): Adjust calls to fixup_var_refs_insns and/or
+ fixup_var_refs_insns_with_hash, to match above changes.
+
+2001-01-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * Makefile.in (ORDINARY_FLAGS_TO_PASS): Add MAKEOVERRIDES variable.
+ (libgcc.a): Likewise.
+ (stmp-multilib): Likewise.
+ (STAGE2_FLAGS_TO_PASS): Likewise.
+
+2001-01-19 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (prepare_move_operands) [PIC]: Use operands[0] as
+ temporary if no_new_pseudos.
+
+2001-01-19 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinternals.texi: Update.
+
+2001-01-19 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_init_builtins): Re-enable builtins.
+
+Fri Jan 19 13:02:56 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * rtl.texi (SET, CLOBBER): Document PARALLEL as SET_DEST possibility.
+ * flow.c (mark_set_1, case PARALLEL): Don't require BLKmode, allow
+ element to be null, and always expect an EXPR_LIST.
+ * rtlanal.c (reg_overlap_mentioned_p, note_stores): Likewise.
+ * sched-deps.c (sched_analyze_1): Likewise.
+ * sched-rgn.c (check_live_1, update_live_1): Likewise.
+
+ * regclass.c (max_set_parallel): New variable.
+ (reg_scan): Take it into account in computation of max_parallel.
+ (reg_scan_mark_refs, case SET): Compute it.
+
+ * alias.c (rtx_equal_for_memref_p, case ADDRESSOF): Don't assume
+ args are REG.
+ * expr.c (store_constructor): Don't look at MEM_ALIAS_SET unless MEM.
+ * function.c (assign_parms): Use INTVAL for a CONST_INT.
+
+2001-01-19 Jason Merrill <jason@redhat.com>
+
+ * dwarf2out.c (gen_subprogram_die): Don't reuse the in-class decl
+ for the abstract instance of an inline function.
+
+Fri Jan 19 14:31:35 2001 Alexandre Oliva <aoliva@redhat.com>
+ J"orn Rennecke <amylaar@redhat.com>
+
+ * reload1.c (move2add_note_store): Treat all registers directly or
+ indirectly derived from a base register as members of the same set
+ of values.
+ (reload_cse_move2add): Adjust accordingly. Take mode and offset
+ of base register into account.
+
+Fri Jan 19 09:18:42 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * alias.c (find_base_value): Recognize TRUNCATE.
+ (record_set): In PLUS case, invalidate if other summand is also a
+ base value.
+
+Thu Jan 18 06:43:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * flow.c (mark_set_1, case PARALLEL): New case; rework to allow
+ entry to be EXPR_LIST.
+ * rtlanal.c (reg_overlap_mentioned_p): Allow PARALLEL in SET to
+ be an EXPR_LIST (but not null, which other code doesn't allow).
+ (note_stores): Properly handle PARALLEL in SET.
+ Recursively call for top-level PARALLEL.
+ * sched-deps.c (sched_analyze_1): Handle EXPR_LIST in PARALLEL in SET.
+ * sched-rgn.c (check_live_1, update_live_1): Likewise.
+
+ * config.gcc (rs6000-ibm-aix*, rs6000-bull-bosx): Add rs6000/aix.h.
+
+2001-01-18 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.c (_cpp_handle_directive): Use buffer->was_skipping,
+ not pfile->skipping (== 0).
+
+2001-01-17 Nick Clifton <nickc@redhat.com>
+
+ * config/rs6000/rs6000.c: Add prototypes for {init|free}_
+ machine_status.
+
+2001-01-17 Jim Wilson <wilson@redhat.com>
+
+ * invoke.texi (IA-64 options): Improve.
+
+2001-01-17 Tom Tromey <tromey@redhat.com>
+
+ * invoke.texi (Optimize Options): Use `{}' to around @samp
+ argument.
+
+2001-01-17 Aldy Hernandez <aldyh@redhat.com>
+
+ * invoke.texi (-fno-guess-branch-probability): New option.
+
+Wed Jan 17 13:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * combine.c (try_combine): Don't set i3_subst_into_i2 for
+ case of making new double-word constant.
+ Revert last change: instead just test i3_subst_into_i2.
+
+2001-01-17 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (cmpqi_minus_1): Use {b} for QImode operation.
+ Use q constraints instead of r.
+
+Tue Jan 16 22:23:04 2001 Alan Modra (alan@linuxcare.com.au)
+
+ * config/pa/pa.h (PIC_OFFSET_TABLE_REGNUM_SAVED): Remove.
+ (machine_function): Define.
+ (PIC_OFFSET_TABLE_SAVE_RTX) : Define.
+ * config/pa/pa.c (pa_init_machine_status, pa_mark_machine_status,
+ pa_free_machine_status): New functions.
+ (override_options): Set {init,mark,free}_machine_status to above.
+ (hppa_expand_prologue): Use PIC_OFFSET_TABLE_SAVE_RTX instead of
+ PIC_OFFSET_TABLE_REGNUM_SAVED.
+ * config/pa/pa.md: Use PIC_OFFSET_TABLE_SAVE_RTX instead of
+ PIC_OFFSET_TABLE_REGNUM_SAVED throughout.
+ * config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Remove
+ references to PIC_OFFSET_TABLE_REGNUM_SAVED.
+ * config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
+
+2001-01-15 DJ Delorie <dj@redhat.com>
+
+ * Makefile.in (gcov.1): Protect against texi2pod/pod2man failing.
+ (cpp.1): Ditto.
+ (gcc.1): Ditto.
+
+Tue Jan 16 17:20:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * flow.c (propagate_one_insn): Make trying to delete a prologue
+ or epilogue insn an ICE, not a warning. Allow doing this if
+ the current function returns with stack pointer depressed.
+
+ * combine.c (try_combine): If i3_subst_into_i2, properly check for
+ I3 having more than one SET.
+
+2001-01-16 Jim Wilson <wilson@redhat.com>
+
+ * invoke.texi: Document IA-64 options.
+
+ * config/ia64/ia64.c (ia64_print_operand_address): Delete 'B' support.
+ (fixup_errata): Delete TARGET_A_STEP use.
+ * config/ia64/ia64.h (MASK_A_STEP, TARGET_A_STEP): Delete.
+ (TARGET_SWITCHES): Delete -ma-step option.
+ * config/ia64/ia64.md (all FP patterns): Delete %B0.
+ (movqicc_astep, movqi_internal_astep, movhicc_astep,
+ movhi_internal_astep, movsicc_astep, movsi_internal_astep, movdi+1,
+ movdi_internal_astep, movsfcc_astep, movsf_internal_astep,
+ movdfcc_astep, movdf_internal_astep, movtfcc_astep,
+ movtf_internal_astep, cmovdi_internal_astep, cmovsi_internal_astep):
+ Delete.
+ (movqi_internal, movhi_internal, movsi_internal, movdi_internal,
+ movsf_internal, movdf_internal, movtf_internal, cmovdi_internal,
+ cmovsi_internal): Delete ! TARGET_A_STEP check.
+
+2001-01-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * gcc.texi (Bug Lists): Do not mention newsgroups nor the
+ possibility to report bugs via postal mail. Change a URL and
+ merge in a nearly duplicate statement...
+ (Bug Reporting): ...from here.
+ (Service): Refer to the Bug Reporting section instead of
+ duplicating an URL.
+ (Contributing): Remove trivial explanations concerning snapshots.
+
+2001-01-16 Alan Modra <alan@linuxcare.com.au>
+
+ * cppmain.c (general_init): Don't use ANSI prototype.
+
+2001-01-16 Tom Tromey <tromey@redhat.com>
+
+ * gcc.c (cpp_options): Added `*' to specs for -MF, -MQ, and -MT.
+
+2001-01-16 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.h: Fix comment typo.
+ * config/i386/i386.md (shift+compare pattern names): s/cmpno/cmp/
+ (ashr+compare patterns): Match CCGOCmode not CCNOmode.
+
+2001-01-16 Phil Edwards <pme@sources.redhat.com>
+
+ * gcc.c: Revert previous -fsyntax-only-related change; move
+ to cp/g++spec.c.
+
+2001-01-16 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (fcmov_comparison_operator): Only initialize
+ inmode after checking GET_CODE (op).
+
+2001-01-16 Richard Henderson <rth@redhat.com>
+
+ * flow.c (struct propagate_block_info): Add mem_set_list_len.
+ (MAX_MEM_SET_LIST_LEN): New.
+ (propagate_one_insn): Update mem_set_list_len.
+ (invalidate_mems_from_autoinc): Likewise.
+ (invalidate_mems_from_set): Likewise.
+ (mark_used_regs): Likewise.
+ (init_propagate_block_info): Likewise. Stop collecting memories
+ when we reach MAX_MEM_SET_LIST_LEN.
+ (mark_set_1): Likewise.
+
+2001-01-16 Richard Henderson <rth@redhat.com>
+
+ * unroll.c (precondition_loop_p): Fail if no iteration
+ variable found.
+
+2001-01-16 Phil Edwards <pme@sources.redhat.com>
+
+ * gcc.c: When -fsyntax-only is given, do not complain about
+ unused libraries.
+
+2001-01-15 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (asm_output_function_prefix): Remove.
+ (ix86_asm_file_end): New.
+ (load_pic_register): Generate pic_label_name into a
+ statically allocated buffer.
+ * config/i386/i386-protos.h: Update.
+ * config/i386/i386.h (ASM_OUTPUT_FUNCTION_PREFIX): Remove.
+ (ASM_FILE_END): New.
+ * config/i386/i386afe.h: New file.
+ * config.gcc (i?86-*-elf) [tm_file]: Use it.
+ (i?86-*-{freebsd,linux*,moss*}): Likewise.
+ * config/elfos.h (ASM_FILE_END): Undef before redefinition.
+ * config/i386/cygwin.h (ASM_FILE_END): Likewise.
+ * config/i386/osfrose.h (ASM_FILE_END): Invoke ix86_asm_file_end.
+ * config/i386/sco5.h (ASM_FILE_END): Likewise.
+ * config/i386/winnt.c (i386_pe_asm_file_end): Likewise.
+
+2001-01-15 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * Makefile.in (install-man): Remove explicit dependency on
+ $(srcdir)/gcc.1.
+
+ * configure.in, configure: Revert previous patch requiring perl
+ 5.6.0.
+
+2001-01-12 Aldy Hernandez <aldyh@redhat.com>
+
+ * toplev.c (flag_guess_branch_prob): New.
+ (f_options): Add guess-branch-probability option.
+ (rest_of_decl_compilation): Only estimate branch probability if
+ flag set.
+ (main): set flag_guess_branch_prob.
+
+ * flags.h (flag_guess_branch_prob): New.
+
+2001-01-15 DJ Delorie <dj@redhat.com>
+
+ * gcc.texi (Makefile): Add documentation for Makefile targets.
+
+2001-01-15 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.c (arm_finalize_pic): New arg "prologue".
+ (is_pic): Delete.
+ * config/arm/arm-protos.h (arm_finalize_pic): Update prototype.
+ (is_pic): Delete declaration.
+ * config/arm/arm.h (FINALIZE_PIC): Update call to arm_finalize_pic.
+ (OUTPUT_INT_ADDR_CONST): Remove special handling of PIC address.
+ * config/arm/arm.md (builtin_setjmp_receiver): New.
+
+2001-01-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (use_return_insn): Don't try to determine the function type
+ until after reload has completed.
+ (arm_output_epilogue): Don't adjust the sp value recovered from the
+ stack.
+ (emit_multi_reg_push): Don't record dwarf information for the pc.
+ * arm.md (eh_epilogue): The function type may have changed, so it
+ needs to be recalculated.
+ * arm/netbsd.h (DWARF2_UNWIND_INFO): Delete. Can now use dwarf2
+ unwind tables on arm/netbsd.
+
+2001-01-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (cbranchsi4): Correct calculation of branch ranges.
+ (negated_cbranchsi4): Likewise.
+
+2001-01-15 Richard Earnshaw <rearnsha@arm.com>
+
+ * config/arm/semi.h (SUBTARGET_EXTRA_SPECS): Define.
+ (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
+ (ASM_SPEC): Call subtarget_extra_asm_spec. Don't
+ pass -mapcs-* options to assembler.
+ * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Define.
+ (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
+ (ASM_SPEC): Call subtarget_extra_asm_spec.
+
+2001-01-15 Andreas Jaeger <aj@suse.de>
+
+ * config/i386/i386.c (ix86_init_builtins): Make i size_t to remove
+ warnings.
+ (ix86_expand_builtin): Likewise.
+
+ * gencodes.c (output_predicate_decls): Make i size_t to avoid
+ warning about comparison between signed and unsigned.
+
+2001-01-14 Geoffrey Keating <geoffk@redhat.com>
+
+ * expr.c (do_jump): Treat VOIDmode CONST_DOUBLEs like CONST_INTs.
+
+2001-01-14 Ralf Baechle <ralf@gnu.org>
+
+ * config/mips/linux.h (SUBTARGET_CPP_SPEC): Default ABI is 32; change
+ SUBTARGET_CPP_SPEC appropriately.
+
+2001-01-12 Mark Mitchell <mark@codesourcery.com>
+
+ * varasm.c (make_decl_rtl): Fix typo in last change.
+
+2001-01-14 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * defaults.h (SUPPORTS_INIT_PRIORITY): New macro to indicate the
+ linker supports the init_priority C++ attribute.
+ * tm.texi (SUPPORTS_INIT_PRIORITY): Documentation for new macro.
+ * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Indicate Irix
+ linker does not support init_priority C++ attribute.
+
+Sun Jan 14 22:31:30 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * Makefile.in (libgcc1-test.o): Depends on stmp-int-hdrs.
+
+2001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-parse.in (finish_parse): Add comment about cpp_destroy.
+ * cp/lex.c (finish_parse): Similarly.
+ * cppinit.c (cpp_cleanup): Rename cpp_destroy for clarity.
+ Return the number of errors encountered.
+ * cpplib.h (cpp_cleanup): Rename cpp_destroy, return int.
+ * cppmain.c (main): Don't call cpp_destroy.
+
+2001-01-14 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * configure.in: Require at least perl 5.6.0 to regenerate
+ manpages.
+ * configure: Regenerate.
+
+2001-01-14 Richard Henderson <rth@redhat.com>
+
+ * genrecog.c (DT_veclen_ge): New.
+ (add_to_sequence) [MATCH_PARALLEL]: Generate one.
+ (maybe_both_true_2): Simplify DT_veclen vs DT_veclen_ge.
+ (nodes_identical_1): Handle DT_veclen_ge.
+ (write_cond, debug_decision_2): Likewise.
+
+2001-01-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (ldmsi_postinc, ldmsi, stmsi_postinc, smsi): Delete. Replace
+ with ...
+ (ldmsi_postinc[432], ldmsi[432], stmsi_postinc[432], stmsi[432]): New.
+
+2001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmain.c (do_preprocessing): New function; most of the old
+ main.
+ (main): Call it to do most of the work.
+ (cb): Move from global scope to set_callbacks ().
+ (setup_callbacks): Get the callback pointer.
+ (general_init, printer_init): Clean up code and comments.
+
+2001-01-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * config/arm/semi.h (ASM_SPEC): Pass -k to the assembler when
+ compiling PIC.
+
+2001-01-14 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c (get_shift_alg): Update comments.
+
+Sun Jan 14 06:20:49 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * ggc-page.c (alloc_annon): Call perror and correctly call exit.
+ (alloc_page, ggc_alloc): Add casts to remove warnings.
+
+2001-01-14 Geoffrey Keating <geoffk@redhat.com>
+
+ * combine.c (simplify_comparison): Don't change `code' when
+ can't reverse comparison.
+
+2001-01-14 Richard Henderson <rth@redhat.com>
+
+ * rtlanal.c (computed_jump_p_1): Rename from jmp_uses_reg_or_mem;
+ update all call sites. Return true for all non-label constants.
+
+Sun Jan 14 10:09:48 MET 2001 Jan hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_compare): Add bypass_test and second_test
+ parameters.
+ (ix86_expand_branch): Update.
+ (ix86_expand_setcc): Update to handle multiple test conditions.
+ (expand_int_movcc): Likewise.
+ (expand_fp_movcc): Likewise.
+ * i386-protos.h (ix86_expand_compare): New.
+ * i386.md (andqi_?_slp, orqi_?_slp): New.
+ (conditional trap expander): Update call to ix86_expand_compare.
+
+2001-01-14 Richard Henderson <rth@redhat.com>
+
+ * config/vax/vax.md: Use nonimmediate_operand instead of
+ general_operand in destinations.
+
+ * config/vax/vax.md (indirect_jump): Use register_operand.
+
+ * config/vax/vax.h (RETURN_POPS_ARGS): Max at 255 arguments.
+ * config/vax/vax.md (call_pop): Turn into an expander.
+ (call_value_pop): Likewise.
+ (call, call_value): New.
+
+2001-01-14 Andreas Jaeger <aj@suse.de>
+
+ * config/i386/i386.c (ix86_split_fp_branch): Remove unused
+ variables.
+ (ix86_fp_compare_mode): Add unused attribute.
+ (ix86_expand_fp_movcc): Remove unused variable.
+ (ix86_expand_builtin): Make fcode unsigned.
+
+ * expr.c (MOVE_BY_PIECES_P): Cast MOVE_RATIO to unsigned.
+ (expand_expr): Add cast to avoid signed warning.
+ (store_field): Likewise.
+ (store_constructor_field): Likewise.
+ (store_constructor): Likewise.
+ (store_expr): Likewise.
+ (clear_storage): Likewise.
+ (emit_group_store): Likewise.
+ (emit_group_load): Likewise.
+
+2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c: Move format checking code to ...
+ * c-format.c: ... here. New file. Reorder some functions and
+ declarations.
+ (decl_handle_format_attribute, decl_handle_format_arg_attribute):
+ New functions.
+ * c-common.h (decl_handle_format_attribute,
+ decl_handle_format_arg_attribute): Declare.
+ * Makefile.in (C_AND_OBJC_OBJS): Add c-format.o.
+ (c-common.o): Adjust dependencies.
+ (c-format.o): New list of dependencies.
+
+2001-01-13 Jakub Jelinek <jakub@redhat.com>
+
+ * unroll.c (loop_iterations): If we cannot prove iteration variable
+ is set once in each iteration, punt.
+
+Sun Jan 14 00:23:15 2001 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md ("strlenhi"): Remove clobber of input address.
+ (*strlenhi): Remove clobber (which was buggy) of output address.
+
+2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * Makefile.in (generated-manpages): Add gcc.1
+ ($(srcdir)/gcc.1): New target.
+ (maintainer-clean): Delete $(srcdir)/gcc.1.
+ * gcc.texi: Add macros @gccoptlist and @gol.
+ * invoke.texi: Include option summary in manpage. Mark up option
+ summary with @gccoptlist and @gol. Use @r in one place where
+ appropriate.
+ * texinfo.tex: Update to version 2000-12-11.07 from ftp.gnu.org.
+ * gcc.1: Generate from invoke.texi.
+
+2001-01-13 Richard Henderson <rth@redhat.com>
+
+ * ggc-page.c (USING_MALLOC_PAGE_GROUPS): New; set if not using mmap.
+ (struct page_entry): Add group member.
+ (struct page_group): New.
+ (struct globals): Add page_groups member.
+ (alloc_anon): Only define for using mmap; remove valloc call.
+ (page_group_index): New.
+ (set_page_group_in_use): New.
+ (clear_page_group_in_use): New.
+ (alloc_page): Implement USING_MALLOC_PAGE_GROUPS.
+ (free_page, release_pages): Likewise.
+ * configure.in (with-gc): Default to ggc-page always.
+
+2001-01-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * reload1.c (replace_pseudos_in_call_usage): Use
+ reg_equiv_constant and reg_equiv_address, and don't try
+ regno_reg_rtx first.
+
+2001-01-13 Richard Henderson <rth@redhat.com>
+
+ * ggc-page.c (alloc_page): Round up allocation size to one page.
+ Set e->order on extra pages.
+
+2001-01-13 Richard Henderson <rth@redhat.com>
+
+ * genrecog.c (nodes_identical): Expand commentary.
+ (write_switch): Watch out for identical nodes.
+
+2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppfiles.c (_cpp_fake_include): New function.
+ * cpphash.h (_cpp_fake_include): New.
+ * cpplib.c (do_line): Call _cpp_fake_include when entering
+ header files in preprocessed input.
+ * cppmain.c (cb_pragma_implementation): Remove handling.
+ (setup_callbacks): Don't register pragmas.
+
+2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * extend.texi: Udate for CPP.
+
+2001-01-13 Andreas Jaeger <aj@suse.de>
+
+ * reload1.c: Add prototype for replace_pseudos_in_call_usage.
+
+ * regmove.c: Add prototype for replace_in_call_usage.
+
+2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpplib.h (cpp_pool, mi_state, mi_ind, struct cpp_macro,
+ struct cpp_chunk, struct htab, struct toklist,
+ struct cpp_context, CPP_STACK_MAX, struct lexer_state,
+ struct spec_nodes, struct cpp_reader, CPP_OPTION, CPP_BUFFER,
+ CPP_BUF_LINE, CPP_BUF_COL, CPP_BUF_COLUMN, U, ustrcmp, ustrncmp,
+ ustrlen, uxstrdup, ustrchr, ufputs): Move to cpphash.h.
+ (struct macro_args): Delete.
+ * cpphash.h: See above.
+
+2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmain.c (struct printer): Remove no_line_dirs.
+ (options, cb): New.
+ (main, setup_callbacks, scan_buffer, printer_init, cb_define)
+ : Use options rather than CPP_OPTION.
+ (setup_callbacks): Use cb rather than pfile->cb.
+ (main): No need to check for a buffer. Use cpp_errors.
+ (printer_init): Don't set no_line_dirs.
+ (maybe_print_line): Use options not no_line_dirs.
+ (cb_file_change): Don't call print_line if -P.
+
+2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (init_c_lex): Use cpp_get_callbacks to set
+ callbacks.
+ * c-parse.in (finish_parse): Use cpp_errors.
+ (__yylex): Use return value of cpp_pop_buffer.
+ * cp/lex.c (finish_parse): Use cpp_errors.
+ * cp/spew.c (read_token): Use return value of cpp_pop_buffer.
+
+Sat Jan 13 16:57:40 2001 Denis Chertykov <denisc@overta.ru>
+
+ * README.AVR: URLs corrected.
+
+Sat Jan 13 07:30:02 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * c-decl.c (start_function): Don't warn if old prototype is builtin
+ that's not in C's namespace.
+ * libgcc2.c (_varargs): Update definition of __builtin_saveregs.
+ (_bb): Add prototype for ctime.
+ * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos.
+
+Sat Jan 13 09:53:32 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_fp_comparison_arithmetics_cost,
+ ix86_fp_comparison_fcomi_cost, ix86_fp_comparison_sahf_cost,
+ ix86_fp_comparison_cost): New functions.
+ (ix86_expand_fp_compare): Use the costs to choose best bethod; add
+ two new parameters SECOND_TEST and BYPASS_TEST; allow generating
+ two-branch sequences; make static.
+ (ix86_use_fcomi_compare): Do decision according to the costs.
+ (split_fp_branch): New.
+ * i386.md (compare-and-branch patterns): Use split_fp_branch.
+ * i386-protos.h (ix86_expand_fp_compare): Remove
+ (ix86_split_fp_branch): Declare.
+
+ * i386.h (PREDICATE_CODES): Update codes from fcmov_comparison_operand
+ and ix86_comparison_operator.
+
+ * i386.c (ix86_prepare_fp_compare_args): Try to rearange the comparison
+ to make it cheaper.
+
+ * i386.c (put_condition_code): Output properly the unordered/ordered
+ compares in fp case.
+ (ix86_expand_fp_movcc): Use ix86_expand_compare infrastructure.
+
+ * tm.texi (REVERSE_CONDITION): Document.
+ * i386.c (ix86_fp_compare_mode): Simplify; return always CCFPmode
+ in -ffast-math mode.
+ * i386.h (REVERSE_CONDITION, REVERSIBLE_CC_MODE): New macro.
+
+2001-01-13 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (sh_expand_epilogue): Use PR explicitly.
+
+ * config/sh/sh.c (sh_expand_prologue): Let the second toggle_sz be
+ optimized away.
+
+ * config/sh/sh.c (mova_p): Fix test for mova_const.
+
+2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * fix-header.c (read_scan_file): Use cpp_get_callbacks and
+ cpp_get_options rather than dereferencing pfile and using
+ CPP_OPTION.
+ * scan-decls.c (scan_decls): Use return value of
+ cpp_pop_buffer rather than CPP_BUFFER.
+
+2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (cpp_handle_option): help_only is now part of the
+ cpp_options structure.
+ * cpplib.c (cpp_errors, cpp_get_options, cpp_get_callbacks,
+ cpp_set_callbacks): New functions.
+ * cpplib.h (cpp_callbacks): Break out as a named structure.
+ (cpp_options): Move help_only here from cpp_reader.
+ (CPP_FATAL_ERRORS): Update to use cpp_errors.
+ (cpp_errors, cpp_get_options, cpp_get_callbacks,
+ cpp_set_callbacks): New prototypes.
+ * cppmain.c (main): Update for help_only.
+
+2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * Makefile.in (info, maintainer-clean, install-info, uninstall):
+ Also build and remove and install and uninstall c-tree.info and
+ cppinternals.info.
+ ($(srcdir)/gcc.info): Add dependency on contrib.texi.
+ ($(srcdir)/cppinternals.info): New target.
+ * c-tree.texi: Change file name used when makeinfo used without -o
+ from ir.info to c-tree.info. Add info directory entry.
+ * cppinternals.texi: Add info directory entry.
+ * .cvsignore: Update.
+
+2001-01-12 Jakub Jelinek <jakub@redhat.com>
+
+ * c-typeck.c (store_init_value): Don't require constant initializer
+ elements with -pedantic -std=c99.
+ (digest_init): Change error about non-constant initializer elements
+ into pedwarn.
+ (constructor_range_end): Remove.
+ (constructor_incremental, designator_depth,
+ designator_errorneous): New variables.
+ (struct constructor_stack): Remove range_end, add incremental.
+ (struct constructor_range_stack, constructor_range_stack): New.
+ (struct initializer_stack): Add constructor_range_stack.
+ (finish_init): Set it.
+ (start_init): Likewise. require_constant_elements for non-static
+ trees only if not flag_isoc99.
+ (really_start_incremental_init): Remove constructor_range_end, add
+ constructor_incremental.
+ (pop_init_level): Likewise.
+ (push_init_level): Likewise. If implicit and the subobject had some
+ value set already, preinitialize the level with it.
+ Warn about missing braces only if not pushing due to designators.
+ (set_designator, push_range_stack): New functions.
+ (set_init_label): Use them.
+ (set_init_index): Likewise. Remove constructor_range_end.
+ Error if designator index is outside of array bounds.
+ (add_pending_init): Compare values of purpose index trees, not the
+ trees themselves. Allow overwriting of already initialized element.
+ Issue a warning if it had side-effects.
+ (set_nonincremental_init, set_nonincremental_init_from_string): New
+ functions.
+ (pending_init_member): Rename to...
+ (find_init_member): ...this function. Call set_nonincremental_init
+ if necessary. Compare values of purpose index trees, not the trees
+ themselves. Return the actual value, not just nonzero if something
+ is found.
+ (output_init_element): Remove checks for duplicates.
+ If field has zero size, only check the initializer for correctness.
+ Call set_nonincremental_init if necessary. Push RECORD/ARRAY into AVL
+ if constructor_incremental is zero. Change error about initializers
+ not computable at load time into pedwarn.
+ (output_pending_init_elements): Compare bit positions, not
+ FIELD_DECLs to take into account zero-sized fields.
+ (process_init_element): Use constructor_range_stack to fill all
+ ranges in the designator lists from current level up.
+ * extend.texi: Update documentation for labeled elements.
+
+2001-01-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * calls.c (emit_library_call_value_1): Add USEs and CLOBBERs
+ to function usage for arguments passed by reference. Optimize
+ callee-copied arguments.
+ * regmove.c (replace_in_call_usage): New function.
+ (fixup_match_1): Call it.
+ * cse.c (cse_insn): Canonicalize registers in function usage.
+ * reload1.c (replace_pseudos_in_call_usage): New function.
+ (reload): Call it.
+
+ * Makefile.in: Reverted yesterday's wrong patch. Installed the
+ right version.
+
+2001-01-12 Jakub Jelinek <jakub@redhat.com>
+
+ * config/alpha/alpha.c (alpha_expand_block_move): GET_MODE of tmp,
+ not XEXP (tmp, 0).
+
+2001-01-12 DJ Delorie <dj@redhat.com>
+
+ * Makefile.in (bootstrap): rename stages to be mnemonic. Add
+ restageN, unstageN, bubblestrap, quickstrap, and cleanstrap
+ targets.
+
+2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * cpp.texi, extend.texi, gcc.texi, install.texi, invoke.texi,
+ tm.texi: Consistently refer to ISO C instead of ANSI C. Refer to
+ -std options alongside references to -ansi. Update some
+ documentation for C99.
+ * cpp.1: Regenerate.
+
+2001-01-12 Andreas Jaeger <aj@suse.de>
+
+ * haifa-sched.c (restore_line_notes): Remove argument block B
+ since it's unused.
+ * sched-ebb.c (schedule_ebb): Change caller.
+ * sched-rgn.c (schedule_region): Likewise.
+ * sched-int.h (restore_line_notes): Adjust prototype.
+
+ * loop.h: Remove wrong declaration of doloop_condition_get.
+
+2001-01-12 Phil Edwards <pme@sources.redhat.com>
+
+ * extend.texi: Move C++-extension-related node from the C section
+ into the C++ section.
+
+2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * extend.texi: Refer to an array of pointers to functions instead
+ of one of functions.
+
+Fri Jan 12 12:08:12 MET 2001 Andreas Jaeger <aj@suse.de>
+ Jan Hubicka <jh@suse.cz>
+
+ * combine.c (reversed_comparison): Fix typo in last patch.
+ Check X for NULL.
+ (combine_reversed_comparison_code): Make static to follow
+ prototype declaration.
+
+2001-01-12 Phil Edwards <pme@sources.redhat.com>
+
+ * install.texi: Remove misplaced duplicate entry.
+
+2001-01-11 Ulrich Drepper <drepper@redhat.com>
+
+ * config/float-i386.h: Define FLT_EVAL_METHOD and DECIMAL_DIG for C99.
+
+Thu Jan 11 17:06:30 EST 2001 John Wehle (john@feith.com)
+
+ * final.c: (leaf_function_p): Fix typo.
+
+2001-01-11 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Completely rewritten.
+ Now defines HAVE_MMAP_DEV_ZERO and/or HAVE_MMAP_ANON depending
+ which you have.
+ (AC_FUNC_MMAP_FILE): Don't AC_REQUIRE AC_FUNC_MMAP_ANYWHERE.
+ * configure.in: Set GGC to ggc-page if any of mmap_dev_zero,
+ mmap_anon, and valloc is available.
+ * ggc-page.c: Restructure ifdef logic to match new autoconf
+ spec. Don't throw away the test page in init_ggc.
+
+ * configure, config.in: Regenerate.
+
+2001-01-12 Michael Hayes <mhayes@redhat.com>
+
+ * loop.h (total_biv_increment): Constify iv_class pointer.
+ (struct induction): Replace `mem_mode' with `mem' rtx.
+ * unroll.c (total_biv_increment): Constify iv_class pointer.
+ * loop.c (loop_giv_reduce_benefit): Derive mem mode from mem rtx.
+ (find_mem_givs, combine_givs_p): Likewise.
+ (debug_ivs, debug_iv_class, loop_ivs_dump, loop_iv_class_dump): New.
+
+2001-01-10 Thomas Pfaff <tpfaff@gmx.net>
+
+ * gthr-win32.h (__gthread_objc_thread_get_data): Save and restore Win32
+ LastError.
+ (__gthread_getspecific): Ditto.
+
+Fri Jan 12 00:04:00 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_comparison_operator, fcmov_comparison_operator,
+ put_condition_code): Convert fp comparison codes to integer
+ before handling.
+ (ix86_expand_fp_compare): Postnote the fp comparison code conversion
+ to final.
+
+ * i386.c (unsigned_comparison, no_comparison_operator): Kill.
+ * i386-protos.h (no_comparison_operator): Kill.
+
+ * i386.c (ix86_expand_fp_compare): Fix ordered/unordered confussion.
+
+ * combine.c (REVERSIBLE_CC_MODE): Remove.
+ (reversible_comparison_p): Remove.
+ (combine_reversed_comparison_code): New.
+ (reversed_comparison): New.
+ (combine_simplify_rtx): Use
+ combine_reversed_comparison_code/reversed_comparison instead
+ of reversible_comparison_p.
+ (simplify_if_then_else): Likewise.
+ (simplify_set): Likewise.
+ (simplify_logical): Likewise.
+ (if_then_else_cond): Likewise.
+ (known_cond): Likewise.
+ (simplify_comparison): Likewise.
+
+2001-01-11 Alan Lehotsky <lehotsky@tiac.net>
+
+ * builtins.c (std_expand_builtin_va_start): Handle varargs when
+ sizeof (int) is larger than sizeof(__word__).
+
+2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (do_includes): Fix typo.
+
+2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md (cmphi_1): Make sure reloading
+ in S_REGS does not occur because not all sources are possible
+ when a S_REGS is a destination (sometimes needs a clobber).
+ (movqi_const0, zero_extendhisi2, zero_extendqisi2): Likewise.
+ (zero_extendhidi2, extendqisi2, extendqihi2, extendhisi2): Likewise.
+ (anddi3, iordi3, xordi3, negqi2, one_cmplhi2, one_cmplqi2: Likewise.
+ (ashldi3_const32, ashldi3_const1, ashlsi3_const16): Likewise.
+ (ashlsi3_const1, ashlhi3_2, ashlqi3_const1, ashrhi3): Likewise.
+ (ashrqi3_const1, lshrdi3_const32, lshrdi3_const63): Likewise.
+ (lshrdi_const1, lshrsi3_const16): Likewise.
+ (*addhi3, lshrsi3_const1, lshrqi3_const1): Likewise.
+ (*movhi_68hc12, *movqi_68hc12): Likewise.
+ (movstrictqi): Make sure reloading in D_REGS as a destination
+ does not happen.
+
+2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
+
+2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (cpp_start_read): If -fpreprocessed, ignore
+ -D, -U and -A, and don't initialize the builtins.
+ (do_includes): Error if -include or -imacros with -fpreprocessed.
+ * cppmain.c (cb_define, cb_undef): Unconditionally process
+ the callback.
+ * tradcpp.c (main): Fix typo.
+
+2000-01-11 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * cppfiles.c (cpp_included, find_include_file, _cpp_execute_include)
+ (read_name_map): Use IS_ABSOLUTE_PATH.
+ * tradcpp.c (get_filename): Likewise.
+
+2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
+ * config/m68hc11/m68hc11.md (*adcq, *subcq): Fix operand numbers.
+ (*ashlsi3_const16_zexthi, *ashlsi3_const1): Likewise.
+ (*lshrsi3_const, *lshrsi3_const1, *lshrsi3_const16): Likewise.
+ (*ashrsi3, *ashrsi3_const, *ashlsi3, *ashlsi3_const): Likewise.
+ (*ashlsi3_const1, *lshrsi3, *ashlsi3_const16): Likewise.
+ (cmphi_z_used): Don't use '@' for the output.
+ (tstqi_z_used): Likewise.
+ (cmpqi_z_used): Likewise.
+ (one_cmplsi2): Likewise.
+
+2001-01-11 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.c (barrier_align): Recognize branch around far
+ branch and redundant insn.
+
+2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * invoke.texi: Restore documentation of the drivers' switches -MD
+ and -MMD.
+
+2001-01-11 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (LABEL_ALIGN): Use UNSPECV_ALIGN instead of 1.
+
+ * Makefile.in (check-gcc//%, check-g++//%, check-g77//%,
+ check-objc//%): Support parallel testing of multilibs.
+ (TESTSUITEDIR): Set to testsuite by default, but override for
+ parallel testing.
+ (check-gcc, check-g++, check-g77, check-objc): Enter
+ $(TESTSUITEDIR).
+
+2001-01-11 Bernd Schmidt <bernds@redhat.com>
+
+ * alias.c (throughout): Use REGNO, rather than ORIGINAL_REGNO.
+ * sched-deps.c (deps_may_trap_p): Likewise.
+ * basic-block.h: Remove a comment.
+ * flow.c (PROP_POSTRELOAD): Remove.
+ (update_life_info): Don't add it to prop_flags.
+ (mark_set_1): Lose the code that was enabled by it.
+
+2001-01-11 Michael Hayes <mhayes@redhat.com>
+
+ * flow.c (flow_call_edges_add): New.
+ * basic_block.h (flow_call_edges_add): New.
+
+2001-01-11 J"orn Rennecke <amylaar@redhat.com>
+
+ * reload1.c (move2add_note_store): Update reg_set_luid even if
+ base reg remains the same.
+
+2001-01-10 Nick Clifton <nickc@redhat.com>
+
+ * config/d30v/d30v.c (d30v_init_machine_status): Initialize
+ machine_function structure to zero.
+ Add prototypes for machine_status functions.
+
+2001-01-10 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (CTI_VOID_LIST): Remove.
+ (void_list_node): Likewise.
+ * tree.h (TI_VOID_LIST_NODE): New enumeral.
+ (void_list_node): New macro.
+ * config/arm/arm.c (arm_init_builtins): Use void_list_node.
+ * config/i386/i386.c (ix86_init_builtins): Likewise.
+ * config/ia64a/ia64.c (ia64_init_builtins): Likewise.
+
+2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * Makefile.in (tradcpp0): Depend on mkdeps.h. Link mkdeps.o
+ * cppinit.c (cpp_start_read): Update comment, remove unneeded
+ if statement.
+ * tradcpp.c: Include mkdeps.h.
+ (deps, print_deps_phony_targets, deps_append, output_deps,
+ init_dependency_output, output_deps): New.
+ (deps_buffer, deps_allocated_size, deps_size, deps_column,
+ deps_output): Delete.
+ (print_deps_missing_files): Rename deps_missing_files.
+ (inhibit_output): Make global.
+ (main): Delete inhibit_output, deps_stream, deps_target.
+ Use mkdeps functionality in the same way as cpplib. Remove
+ -g3 handling. Handle -MF, -MP, -MQ, -MT. Update handling of
+ -M and -MM. Remove old handling of deps via deps_out, and
+ old reading of environment variables.
+ (get_filename): Update to use deps_add_dep.
+
+2001-01-10 Mark Mitchell <mark@codesourcery.com>
+
+ * output.h (make_function_rtl): Remove prototype.
+ (make_decl_rtl): Likewise.
+ * varasm.c (make_function_rtl): Remove.
+ (make_decl_rtl): Determine top-levelness from DECL_CONTEXT, rather
+ than from a third parameter.
+ * tree.h (make_decl_rtl): Remove last parameter.
+ * c-decl.c (builtin_function): Remove last argument in call to
+ make_decl_rtl; use make_function_rtl instead of make_decl_rtl.
+ (start_function): Likewise.
+ * except.c (call_get_eh_context): Likewise.
+ * expr.c (emit_block_move): Likewise.
+ (clear_storage): Likewise.
+ * profile.c (output_func_start_profiler): Likewise.
+ * toplev.c (rest_of_decl_compilation): Likewise.
+ * objc/objc-act.c (create_builtin_decl): Likewise.
+ (synth_module_prologue): Likewise.
+ (generate_static_reference): Likewise.
+ (build_selector_reference_decl): Likewise.
+ (build_class_reference_decl): Likewise.
+ (build_objc_string_decl): Likewise.
+ (build_protocol_reference): Likewise.
+
+2001-01-10 Richard Henderson <rth@redhat.com>
+
+ * hwint.h: Revert yesterday's change.
+
+2001-01-10 Nick Clifton <nickc@redhat.com>
+
+ * function.h (save_machine_status): Delete.
+ (restore_machine_status): Delete.
+ Amend comment describing {init|mark|free}_machine_status.
+
+ * function.c (save_machine_status): Delete.
+ (restore_machine_status): Delete.
+ Amend comment describing {init|mark|free}_machine_status.
+ (push_function_context_to): Remove invocation of
+ save_machine_status.
+ (pop_function_context_from): Remove invocation of
+ restore_machine_status.
+
+ * emit-rtl.c (init_emit_once): Amend comment describing
+ {init|mark|free}_machine_status.
+
+ * tm.texi (Per-Function Data): New node. Describe the
+ INIT_EXPANDERS macro and the {init|mark|free}_machine_status
+ function pointers.
+
+2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (OPT_g): Remove.
+ (cpp_handle_option): Update for removed -g3.
+ (print_help): Update.
+ * cpplib.h (struct cpp_options): Remove debug_output.
+ * cppmain.c (setup_callbacks, cb_define): Update.
+ * gcc.c (cpp_options): Translate -g3 to -dD.
+
+2001-01-10 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/i960/i960.md: Change modifier to + on the zero_extract
+ pattern after the (rotate -2 reg) canonicalization pattern.
+
+2001-01-10 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_free_machine_status): New.
+ (override_options): Install it.
+ (alpha_mark_machine_status): Verify machine non-null.
+ * config/i386/i386.c (ix86_free_machine_status): New.
+ (override_options): Install it.
+ (ix86_init_machine_status): Use xcalloc.
+ (ix86_mark_machine_status): Verify machine non-null.
+ * config/ia64/ia64.c (ia64_free_machine_status): New.
+ (ia64_override_options): Install it.
+ (ia64_mark_machine_status): Verify machine non-null.
+
+Wed Jan 10 11:34:39 2001 Jeffrey A Law (law@cygnus.com)
+
+ * function.c (instantiate_virtual_regs): Instantiate virtual
+ registers found in CALL_INSN_FUNCTION_USAGE.
+
+2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * i386.h (CPP_CPU_SPEC): Allow for -std=c* and -std=i* as
+ equivalent to -ansi in disabling -Di386.
+
+Wed Jan 10 16:38:31 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_fp_compare_code_to_integer, ix86_fp_comparison_codes):
+ new functions.
+ (ix86_expand_fp_compare): Make trivial use of new infrastructure.
+
+2001-01-10 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_init_builtins): Temporarily disable xscale builtins.
+
+2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * invoke.texi: Document that -fcond-mismatch isn't supported for
+ C++.
+
+2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * gcc.texi: Define macro gcctabopt.
+ * invoke.texi: Add manpage sections BUGS and AUTHOR. Use
+ @command, @env and @option in some places where appropriate. Use
+ @gcctabopt where appropriate. Put URLs and email addresses inside
+ @w.
+
+2001-01-10 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcc.c (cpp_options): Set MD file name from output
+ filename, if specified.
+ (suffix_subst): New static variable.
+ (do_spec): Clear it.
+ (do_spec_1, case '.'): Handle new `%.suffix' spec.
+ Clear it.
+ (give_switch): Handle suffix_subst.
+
+2001-01-10 Phil Edwards <pme@sources.redhat.com>
+
+ * invoke.texi: Fix another typo.
+
+2001-01-10 Phil Edwards <pme@sources.redhat.com>
+
+ * invoke.texi: Fix typo.
+
+2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lang.c (lang_hooks): Update.
+ (lang_decode_option): Remove.
+ (lang_init_options): Rename c_init_options.
+ * toplev.c (main): Use lang_hooks for lang_init_options
+ and lang_decode_option.
+ * toplev.h (lang_hooks): Add 2 new hooks.
+ * tree.h: Remove lang_init_options and lang_decode_option.
+ * cp/cp-tree.h (lang_decode_option): Rename cxx_decode_option.
+ * cp/decl2.c: Similarly.
+ * cp/lex.c (lang_init_options): Rename cxx_init_options.
+ (lang_hooks): Update.
+ * f/com.c (f_init, f_finish): Rename ffe_init, ffe_finish
+ for consistency.
+ (lang_init_options): Rename ffe_init_options.
+ (lang_hooks): Update.
+ (lang_decode_option): Remove.
+ * java/lang.c (lang_init_options): Rename java_init_options.
+ (lang_decode_option): Rename java_decode_option.
+ (lang_hooks): Update.
+ * objc/objc-act.c (lang_init_options): Rename objc_init_options.
+ (lang_decode_option): Rename objc_decode_option.
+ (lang_hooks): Update.
+
+2001-01-09 Nick Clifton <nickc@redhat.com>
+
+ * config/d30v/d30v.c (d30v_eh_epilogue_sp_ofs): Delete.
+ (d30v_return_addr_rtx): Delete.
+ (d30v_expand_epilogue): Use eh_epilogue_sp_ofs field in the
+ cfun->machine structure.
+ (struct machine_function): Move to d30v.h
+ (d30v_save_machine_status): Delete.
+ (d30v_restore_machine_status): Delete.
+ (d30v_init_machine_status): New Function.
+ (d30v_mark_machine_status): New Function.
+ (d30v_free_machine_status): New Function.
+ (d30v_init_expanders): Use new functions.
+ (d30v_return_addr): Use ra_rtx field in cfun->machine.
+ (d30v_add_gc_roots): Remove d30v_eh_epilogue_sp_ofs and
+ d30v_return_addr_rtx.
+
+ * config/d30v/d30v.h (struct_machine): Move here.
+ Add eh_epilogue_sp_ofs field.
+
+ *config/d30v/d30v.md (epilogue): Initialize eh_epilogue_sp_ofs
+ field in cfun->machine structure.
+
+Tue Jan 9 21:34:57 2001 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa32-regs.h (CONDITIONAL_REGISTER_USAGE): When generating pic code,
+ PIC_OFFSET_TABLE_REGNUM_SAVED is a call_used register.
+ * pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
+
+Tue Jan 9 21:25:19 2001 Jeffrey A Law (law@cygnus.com)
+
+ * objc/lang-options.h: Remove bogus reference to
+ Java trademark.
+
+2001-01-09 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c (get_shift_alg): Use a struct shift_info to
+ return the result.
+
+2001-01-09 Alan Lehotsky <lehotsky@tiac.net>
+
+ * reload.c (find_reloads_address): Check for eliminable registers
+ when substituting a constant expression for a pseudo.
+
+2001-01-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (enum format_type): Add format_type_error.
+ (decode_format_type): New function.
+ (decl_attributes): Use it.
+ (format_kind_info): Adjust comment.
+
+2001-01-09 David O'Brien <obrien@BSDi.com>
+
+ * config.gcc (*-*-gnu*, i[34567]86-*-elf*, i[34567]86-*-linux*libc1,
+ i[34567]86-*-linux*, i[34567]86-*-moss*): Specify needed platform specific
+ files in tm_file.
+ * config/i386/gnu.h: Don't include required platform specific .h files,
+ tm.h will do it instead.
+ * config/i386/i386elf.h: Likewise.
+ * config/i386/linux.h: Likewise.
+ * config/i386/moss.h: Likewise.
+ * config/mips/gnu.h: Likewise.
+
+2001-01-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * config.gcc (powerpc-*-beos*): Include ${tm_file} and rs6000/aix.h.
+ (rs6000-ibm-aix3.[01]*): Likewise.
+ (rs6000-ibm-aix3.2.[456789]*, powerpc-ibm-aix3.2.[456789]*): Likewise.
+ (rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*): Likewise.
+ (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Likewise.
+ (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
+ (powerpc-*-sysv*): Include {tm_file}. svr4.h and rs6000/sysv4.h.
+ (powerpc-*-eabiaix*): Likewise.
+ (powerpc-*-eabisim*): Likewise.
+ (powerpc-*-elf*): Likewise.
+ (powerpc-*-eabi*): Likewise.
+ (powerpc-*-rtems*): Likewise.
+ (powerpc-*-linux*libc1): Likewise.
+ (powerpc-*-linux*): Likewise.
+ (powerpc-wrs-vxworks*): Likewise.
+ (powerpcle-wrs-vxworks*): Likewise.
+ (powerpcle-*-sysv*): Likewise.
+ (powerpcle-*-elf*): Likewise.
+ (powerpcle-*-eabisim*): Likewise.
+ (powerpcle-*-eabi*): Likewise.
+ (powerpcle-*-solaris2*): Likewise.
+ * config/rs6000/aix31.h: Delete includes.
+ * config/rs6000/aix3newas.h: Likewise.
+ * config/rs6000/aix41.h: Likewise.
+ * config/rs6000/aix43.h: Likewise.
+ * config/rs6000/beos.h: Likewise.
+ * config/rs6000/rtems.h: Likewise.
+ * config/rs6000/sysv4.h: Likewise.
+
+2001-01-09 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.c (get_shift_alg): Remove an argument cpu.
+ Change an argument mode of machine_mode to shift_mode of
+ shift_mode. Remove an extra error check.
+ (emit_a_shift): Adopt to the new calling prototype of
+ get_shift_alg.
+ (function_prologue): Fix code for a monitor
+ function. Support H8S.
+ (function_epilogue): Do not output pop for a monitor function.
+
+2001-01-09 Nick Clifton <nickc@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_sysv_varargs_p): Delete.
+ (setup_incoming_varargs): Use sysv_varargs_p field of the
+ cfun->machine structure.
+ (struct machine_function): Move to rs6000.h
+ (rs6000_save_machine_status): Delete.
+ (rs6000_restore_machine_status): Delete.
+ (rs6000_init_machine_status): New Function.
+ (rs6000_free_machine_status): New Function.
+ (rs6000_init_expanders): Use new functions.
+
+ * config/rs6000/rs6000.h (rs6000_sysv_varargs_p): Delete
+ export.
+ (struct machine_function): Move here.
+
+ * config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Use
+ sysv_varargs_p field of the cfun->machine structure.
+
+ * config/rs6000/rs6000-protos.h (rs6000_save_machine_status):
+ Remove prototype.
+ (rs6000_restore_machine_status): Remove prototype.
+
+2001-01-09 Richard Henderson <rth@redhat.com>
+
+ * sched-int.h (struct deps): Add max_reg, reg_last_in_use; merge
+ reg_last_uses, reg_last_sets, reg_last_clobbers into struct deps_reg.
+ * sched-deps.c (sched_analyze_1): Update uses of struct deps.
+ (sched_analyze_2, sched_analyze_insn): Likewise.
+ (sched_analyze, init_deps): Likewise.
+ (free_deps): Likewise. Iterate with EXECUTE_IF_SET_IN_REG_SET.
+ * sched-rgn.c (propagate_deps): Likewise. Remove max_reg argument.
+ (compute_block_backward_dependences): Update propagate_deps call.
+
+2001-01-09 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * gcc.c (process_command): Set switches[n_switches].ordering to 0.
+
+2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (OPT_MD, OPT_MMD): Restore.
+ (cpp_handle_option): Handle them.
+ (cpp_post_options): Ensure one of -M or -MM is specified with
+ any other -M? option.
+ (init_dependency_output): Suppress output with -MG.
+
+2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi: Update.
+ * invoke.texi: Update.
+
+2001-01-09 Bernd Schmidt <bernds@redhat.com>
+
+ * sh.md (reload_outsf): Generate recognizable patterns for
+ TARGET_SH3E.
+
+2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lang.c (lang_hooks): Update.
+ (lang_init): Rename c_init.
+ (lang_finish): Remove.
+ * toplev.c (compile_file): Use lang_hooks for lang_init ()
+ and lang_finish ().
+ * toplev.h (lang_hooks): Add init () and finish ().
+ * tree.h (lang_init, lang_finish): Remove.
+ * cp/tree.h (lang_init, lang_finish): Remove.
+ * cp/decl2.c (cxx_post_options, lang_hooks): Move to cp/lex.c.
+ * cp/lex.c (cxx_init, cxx_finish, cxx_post_options,
+ lang_hooks): New.
+ (lang_init, lang_finish): Remove.
+ * f/com.c (lang_init, lang_finish): Rename f_init, f_finish.
+ (lang_hooks): Update.
+ * java/lang.c (lang_init): Rename java_init.
+ (lang_finish): Remove.
+ (lang_hooks): Update.
+ * objc/objc-act.c (lang_init): Rename objc_init.
+ (lang_finish): Remove.
+ (lang_hoooks): Update.
+
+20001-01-09 Graham Stott <grahams@redhat.com>
+
+ * cppfiles.c (_cpp_execute_include): Move `len` initialisation
+ after `ptr` is initialized.
+
+2001-01-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.h (STATIC_CHAIN_REGNUM): Change from r13 to r3.
+ (INITIALIZE_TRAMPOLINE): Adjust accordingly.
+ * config/sh/sh.c (sh_expand_prologue): Use r1 as temporary for
+ stack adjusts, instead of r3.
+
+2001-01-09 Michael Hayes <mhayes@redhat.com>
+
+ * flow.c (flow_loop_scan): Break out of ...
+ (flow_loops_find) ... here.
+ * basic-block.h (flow_loop_scan): New.
+ (LOOP_ENTRY_EDGES, LOOP_EXIT_EDGES): Add.
+ (LOOP_EDGES, LOOP_EXITS_DOMS, LOOP_ALL): Redefine.
+
+2001-01-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * cppinit.c (cpp_cleanup): NULLify macro_buffer and zero
+ macro_buffer_len.
+ * cppmacro.c (cpp_macro_definition): Reset macro_buffer_len when
+ realloc()ing macro_buffer.
+
+ * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
+ if it's wider than long and the target's long is wider than the
+ host's.
+
+2001-01-09 Mark Mitchell <mark@codesourcery.com>
+
+ Remove support for using UWIN as a host machine.
+ * configure.in: Issue an error message.
+ * configure: Regenerated.
+ * config.gcc: Remove xm_* UWIN configury.
+ * config/i386/xm-uwin.h: Remove.
+
+2001-01-08 Nick Clifton <nickc@redhat.com>
+
+ * config/v850/v850.c (ra_rtx): Delete.
+ (v850_save_machine_status): Delete.
+ (v850_restore_machine_status): Delete.
+ (v850_init_machine_status): New function.
+ (v850_mark_machine_status): New function.
+ (v850_free_machine_status): New function.
+ (v850_return_addr): Use ra_rtx field in machine structure.
+ (v850_init_expanders): Use new functions.
+
+ * config/v850/v850-protos.h: Fix prototypes for v850_output_*
+ * config/v850/v850.c: Change arguments to v850_output+* functions
+ to take a const char *, to avoid compile time warning.
+ * config/v850/v850.h (ASM_OUTPUT_LABELREF): Undefine, not needed.
+ (USER_LABEL_PREFIX): Redefine.
+
+2000-01-08 Jim Wilson <wilson@redhat.com>
+
+ * sched-rgn.c (BITSET_ADD, BITSET_REMOVE, bitset_member): Cast
+ 1 to unsigned HOST_WIDE_INT before left shift.
+
+2001-01-08 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (arm_mark_machine_status): Check to see if
+ the machine structure has been allocated.
+ (arm_free_machine_status): New function: Free the machine
+ specific function structure.
+
+2001-01-08 Richard Henderson <rth@redhat.com>
+
+ * jump.c (simplejump_p): Revert last change.
+
+2001-01-08 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppinit.c (init): Rename init_library.
+ (cpp_create_reader): Update.
+ * gcc.c (cpp_options): If -o given, use it as the target of
+ any -M options.
+
+2001-01-08 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_arch5e): New variable.
+ (all_cores): XScale is a 5TE device.
+ (arm_override_options): Set arm_arch5e.
+ (arm_init_builtins): __builtin_prefetch is in arch5e.
+ * arm.h (arm_arch5e): Declare it.
+
+ * arm.h (PREDICATE_CODES): Add arm_hard_register_operand.
+
+ * arm.md (define_constants): Add defines for UNSPEC and
+ UNSPEC_VOLATILE insns. Update all users.
+ (define_constants): Add constants for IP_REGNUM, SP_REGNUM, PC_REGNUM.
+ * arm.c (multi_register_push, note_invalid_constants)
+ (emit_multi_reg_push, emit_sfm, expand_prologue): Use constants.
+ * arm.h (SP_REGNUM, IP_REGNUM, PC_REGNUM): Delete defines.
+ (STACK_POINTER_REGNUM): Define in terms of SP_REGNUM.
+
+Mon Jan 8 16:14:56 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (jump_optimize_1): Use reversed_comparison_code
+ instead of can_reverse_comparison_p.
+ (jump_back_p): Likewise.
+ (invert_exp_1): Likewise.
+ (thread_jumps): Likewise.
+ * simplify-rtx.c (simplify_unary_operation): Likewise.
+ (simplify_ternary_operation): Likewise.
+ * cse.c (find_comparison_args): Convert to use
+ can_reverse_comparison_p.
+ (record_jump_equiv): Likewise.
+
+2001-01-08 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (HARD_REGNO_RENAME_OK): Delete.
+ (EPILOGUE_USES): Define.
+ (INITIAL_ELIMINATION_OFFSET): Current prologue code does not
+ automatically stack the LR if it isn't live.
+
+Mon Jan 8 13:46:02 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions
+ properly.
+
+Sun Jan 7 18:37:43 2001 Mark P Mitchell <mark@codesourcery.com>
+
+ * ggc-page.c (max_alignment): New structure.
+ (MAX_ALIGNMENT): New macro.
+ (init_ggc): Use it to round up the sizes in the
+ extra_order_size_table.
+
+2001-01-07 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * config/rs6000/rs6000.h (EPILOGUE_USES): New, mark link register
+ after reload.
+
+2001-01-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def (BUILT_IN_FPRINTF): New entry.
+
+ * c-common.c (c_expand_builtin_fprintf): New function.
+ (init_function_format_info): Handle __builtin_fprintf.
+ (c_common_nodes_and_builtins): Declare fprintf/__builtin_fprintf.
+ (c_expand_builtin): Handle BUILT_IN_FPRINTF.
+
+ * c-decl.c (duplicate_decls): Adjust comment.
+
+ * extend.texi (fprintf): Document new builtin.
+
+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * jump.c (simplejump_p): Recognize any single_set jump
+ of the proper form.
+
+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * configure.in (slibdir): Accept an --with-slibdir option.
+ Use "test" not "[" in configure. Default to $(libdir).
+
+ * config/t-linux (SHLIB_INSTALL): Double quote slibdir;
+ fix typo in rm -f.
+ * config/t-aix43 (SHLIB_INSTALL): Likewise.
+ * config/alpha/t-osf4 (SHLIB_INSTALL): Likewise.
+ (SHLIB_LINK): Create links for the soname.
+ * config/mips/t-iris6: Likewise.
+ * config/sparc/t-slibgcc: Likewise.
+ * config/sparc/t-slibgcc-sld: Likewise.
+
+2001-01-07 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (constant_call_address_operand): Accept
+ (const (plus (symbol_ref) (const_int))).
+ * config/i386/i386.h (PREDICATE_CODES): Add CONST for
+ constant_call_address_operand.
+
+2001-01-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * libgcc2.h (W_TYPE_SIZE): Fix case where MIN_UNITS_PER_WORD == 1
+ and LONG_LONG_TYPE_SIZE > 32.
+
+2001-01-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * jump.c (reversed_comparison_code_parts): Fix typo introduced by
+ the previous change.
+
+Sun Jan 7 19:37:48 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (reversed_comparison_code_parts, reversed_comparison_code):
+ New.
+ (can_reverse_comparison_p): Rewrite to use reversed_comparison_code.
+ (reverse_condition_maybe_unordered): Abort on unsigned comparisons.
+ * rtl.h (reversed_comparison_code_parts, reversed_comparison_code):
+ Declare.
+
+2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * fix-header.c (read_scan_file): s/pfile/scan_in/.
+
+2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lang.c (c_post_options): Call cpp_post_options.
+ * objc/objc-act.c (objc_post_options): Similarly.
+ * cppmain.c (main): Similarly.
+ * fix-header.c (read_scan_file): Similarly.
+ * cppinit.c (cpp_start_read): Move option consistency checks
+ to cpp_post_options. Don't call init_dependency_output.
+ If needed, add default target and main file dependency.
+ (OPT_MD, OPT_MMD): Remove.
+ (OPT_MF): New.
+ (cpp_handle_option): Update for OPT_* changes.
+ (cpp_post_options): New.
+ (init_dependency_output): Command line -MF overrides environment
+ variables. Don't set default target etc. Suppress output
+ if dependencies are going to stdout.
+ (print_help): Update.
+ * cpplib.h (cpp_post_options): New.
+ * gcc.c (cpp_options): Update for -MD, -MMD, -MF.
+
+Sun Jan 7 14:44:19 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (comparison_dominates_p): Support unordered compares.
+
+Sun Jan 7 14:39:07 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_relational_operation): Always simplify
+ ORDERED and UNORDERED when FLAG_FAST_MATH. Handle properly UNLE
+ and UNGE.
+
+Sun Jan 7 14:35:13 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (combine_simplify_rtx): Recognize the unordered compares.
+ (nonzero_bits): Likewise.
+ (simplify_comparison): Likewise.
+ (num_sign_bit_copies): Likewise; return more sane value depending
+ on STORE_FLAG_VALUE.
+ (known_cond): Do not assume EQ to be always true for equivalent
+ operands.
+
+Sun Jan 7 14:31:57 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * cse.c (fold_rtx): Handle unordered comparisons.
+
+Sun Jan 7 13:49:19 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * rtlanal.c (set_of_1): New static function.
+ (reg_set_last_1, reg_set_p_1, reg_set_reg, reg_set_flag,
+ reg_set_last_unknown, reg_set_last_value, reg_set_last_first_regno,
+ reg_set_last_last_regno): Remove.
+ (set_of): New global function.
+ (set_of_data): New structure.
+ (reg_set_p, reg_set_last): Revamp for set_of.
+ * rtl.h (set_of): New.
+
+2001-01-07 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (c_common_nodes_and_builtins): Add _Exit builtin.
+ * extend.texi: Document _Exit builtin.
+
+2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * (initialize, initialize_builtins,
+ initialize_dependency_output, initialize_standard_includes):
+ Rename s/initialize/init. Update.
+ (init_dependency_output): Move to after
+ cpp_handle_options, the correct location temporally at least.
+ (opt_comp): Move next to init (), its caller. Fix prototype.
+ (init): Make "initialized" local scope.
+ (cpp_create_reader): Always call init ().
+ (cpp_start_read): Update.
+ (output_deps): New function, broken out of cpp_finish.
+ (cpp_finish): Break out output_deps.
+
+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * collect2.c (COFF specific stuff): Revert 12-06 patch
+ to prototype system functions.
+
+2001-01-07 Michael Hayes <mhayes@redhat.com>
+
+ * hard-reg-set.h: Add multiple include guard.
+ * basic-block.h (struct loop): Add `sink' field.
+ * loop.h: Include sbitmap.h, hard-reg-set.h, and basic-block.h.
+ (emit_iv_add_mult): Delete.
+ (loop_iv_add_mult_hoist, loop_iv_add_mult_sink): Define.
+ (loop_iv_add_mult_emit_before, loop_insn_sink): Define.
+ (unroll_loop): Remove end_insert_before argument.
+ * loop.c (loop_givs_rescan): Remove end_insert_before argument.
+ (maybe_eliminate_biv_1): Likewise.
+ (emit_iv_add_mult): Delete.
+ (gen_add_mult, loop_regs_update): New.
+ (loop_insn_emit_after, loop_insn_emit_before): New.
+ (loop_insn_sink, loop_insn_sink_or_swim): New.
+ (emit_iv_add_mult): Delete.
+ (scan_loop): Set loop->sink.
+ (loop_givs_reduce): Use loop_insn_sink and its ilk.
+ (loop_givs_rescan, strength_reduce, check_dbra_loop): Likewise.
+ (maybe_eliminate_biv_1): Likewise.
+ (maybe_eliminate_biv_1): Add basic block argument.
+ * unroll.c (unroll_loop): Remove end_insert_before argument.
+ (find_splittable_regs): Likewise.
+ (find_splittable_regs): Use loop_insn_sink and its ilk.
+ (find_splittable_givs, final_biv_value, final_giv_value): Likewise.
+
+2001-01-07 Michael Hayes <mhayes@redhat.com>
+
+ * loop.h (loop_insn_hoist): New prototype.
+ * loop.c (loop_insn_hoist, loop_insn_emit_before): New.
+ (move_movables, loop_givs_rescan): Use loop_insn_hoist.
+ (check_dbra_loop, load_mems): Likewise.
+ * unroll.c (unroll_loop, find_splittable_regs): Likewise.
+ (find_splittable_givs): Likewise.
+
+2001-01-07 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (emit_iv_add_mult): Use single_set to examine new insn.
+
+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * sched-rgn.c (is_cfg_nonregular): Fix thinko's last change.
+
+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (DRIVER_DEFINES): Define ENABLE_SHARED_LIBGCC and
+ NO_SHARED_LIBGCC_MULTILIB as required for the target.
+ * gcc.c (init_spec): Massage the existing libgcc_spec into a
+ variant that handles a shared libgcc.
+ (process_command): Always validate -{static,shared}-libgcc.
+ (do_spec_1): New 'M' case.
+ * invoke.text (Link Options): Document -{static,shared}-libgcc.
+
+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (slibdir): New variable.
+ (libgcc.mk): Pass SHLIB_INSTALL to mklibgcc.
+ (installdirs): Create slibdir.
+ (install-libgcc, install-multilib): Defer to libgcc.mk.
+ * configure.in (slibdir): Substitute.
+ * mklibgcc.in (install): New target.
+
+ * config/t-linux (SHLIB_LINK): Create links for the soname.
+ (SHLIB_INSTALL): New.
+ * config/alpha/t-osf4 (SHLIB_INSTALL): New.
+ * config/mips/t-iris6 (SHLIB_INSTALL): New.
+ * config/rs6000/t-aix43 (SHLIB_INSTALL): New.
+ * config/sparc/t-slibgcc (SHLIB_INSTALL): New.
+ * config/sparc/t-slibgcc-sld (SHLIB_INSTALL): New.
+
+2001-01-07 Richard Henderson <rth@redhat.com>
+
+ * config/rs6000/aix.h (LINK_LIBGCC_SPECIAL_1): New.
+ * config/rs6000/rs6000.h (LIBGCC_SPEC): Remove.
+ * config/rs6000/sysv4.h (LIBGCC_SPEC): Remove.
+
+2001-01-07 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (count_loop_regs_set): Delete.
+ (load_mems_and_recount_loop_regs_set): Delete.
+ (loop_regs_scan): Merge common code from count_loop_regs_set,
+ scan_loop, and load_mems_and_recount_loop_regs_set.
+ (scan_loop): Call load_mems directly and loop_regs_scan
+ again if new registers created.
+
+2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * toplev.c (main): Call the front-end specific post_options
+ hook if one is given.
+ * toplev.h (struct_lang_hooks, lang_hooks): New.
+ * c-lang.c (c_post_options, lang_hooks): Implement lang_hooks
+ for the C front end.
+ * cp/decl2.c (cxx_post_options, lang_hooks): Implement
+ lang_hooks for the C++ front end.
+ * objc/objc-act.c (objc_post_options, lang_hooks): Implement
+ lang_hooks for the ObjC front end.
+ * f/com.c (lang_hooks): Hooks for the Fortran front end.
+ * java/lang.c (lang_hooks): Hooks for the Java front end.
+
+2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * c-lex.c (init_c_lex): Request #define / #undef callbacks
+ for verbose DWARF[2] debugging.
+ (cb_define, cb_undef): The new callbacks.
+ * toplev.h (debug_define, debug_undef): Make const correct.
+ * toplev.c (debug_define, debug_undef): Similarly. Do not
+ perform the verbosity tests here anymore.
+
+2001-01-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * reload.c (subst_reloads): Take INSN argument. When
+ replacing a LABEL_REF in a JUMP_INSN, add a REG_LABEL note.
+ * reload.h (subst_reloads): Adjust prototype.
+ * reload1.c (reload_as_needed): Pass INSN to subst_reloads.
+ * jump.c (mark_all_labels): Canonicalize any REG_LABEL notes
+ present in JUMP_INSNs and copy them to JUMP_LABEL.
+ * flow.c (find_label_refs, find_basic_blocks_1): Skip
+ JUMP_INSNs and insns with REG_LABELs that are followed by
+ JUMP_INSNs with the same REG_LABEL.
+ * sched-rgn.c (is_cfg_nonregular): Likewise.
+ * rtlanal.c (computed_jump_p): Make it false if a REG_LABEL
+ note is available.
+ * unroll.c (unroll_loop): Look for REG_LABEL notes in
+ JUMP_INSNs too.
+ * rtl.texi (REG_LABEL): Document usage in JUMP_INSNs.
+
+2001-01-06 Richard Henderson <rth@redhat.com>
+
+ * loop.c (scan_loop): Use xcalloc for the regs array.
+ (load_mems_and_recount_loop_regs_set): Zero the new memory
+ received from xrealloc.
+
+2001-01-06 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * mkdeps.c (deps_add_dep): Fix vector re-allocation.
+
+Sat Jan 6 00:09:34 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * integrate.c (copy_rtx_and_substitute): When copying
+ an ignored return value, strip REG_FUNCTION_VALUE_P.
+
+2001-01-06 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (debug_biv, debug_giv): New.
+ (loop_biv_dump): Break out from ...
+ (record_biv): ... here.
+ (loop_giv_dump): Break out from ...
+ (record_giv): ... here.
+ (loop_bivs_check): Use print_simple_rtl.
+ * unroll.c (loop_iterations): Use print_simple_rtl.
+
+2000-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (return, return_internal): Modify patterns to prevent regrename
+ mucking with the return pointer.
+
+2001-01-05 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (mem_loc_descriptor) [case MEM]: Revert 10-31 change.
+
+Fri Jan 5 16:34:18 2001 Nick Clifton <nickc@redhat.com>
+
+ * config/v850/lib1funcs.asm: Replace __mulsi3 routine with faster
+ version supplied by Matteo Frigo.
+
+2001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi: Update for -MQ.
+ * cppinit.c (cpp_create_reader): Always create pfile->deps.
+ (cpp_cleanup): Always free pfile->deps.
+ (initialize_dependency_output): Don't create pfile->deps.
+ (cpp_handle_option): Similarly.
+ (OPT_MQ): New.
+ * gcc.c (cpp_options): Handle -MQ.
+ (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
+ * mkdeps.c (base_name): Remove.
+ (deps_init): Don't allocate vector space until it's needed.
+ (deps_free): Only free vectors if allocated.
+ (deps_add_target, deps_add_dep): Update for initial allocation.
+ (deps_add_default_target): Don't strip to the base_name.
+
+2001-01-05 DJ Delorie <dj@redhat.com>
+
+ * config/v850/v850.h (RETURN_ADDR_RTX): Define.
+ (INIT_EXPANDERS): Define.
+
+ * config/v850/v850.c (struct machine_function): Define.
+ (v850_save_machine_status): New function.
+ (v850_restore_machine_status): New function.
+ (v850_return_addr): New function.
+ (v850_init_expanders): New function.
+
+ * config/v850/v850-protos.h: Add prototypes for v850_return_addr
+ and v850_init_expanders.
+
+2001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * cpplib.h (struct cpp_reader): Add help_only field.
+ * cppinit.c (COMMAND_LINE_OPTIONS): Add OPT_version.
+ (cpp_handle_option): Set pfile->help_only if we see -h,
+ --help, -target-help, or --version. Print version string but
+ do not set help_only if we see -v or -version. Make text
+ printed by -v match that printed by (-)-version.
+
+ * cppmain.c (main): Exit after option parsing if
+ pfile->help_only is true.
+
+ * toplev.c (independent_decode_option): Call print_version,
+ then exit, if we see --version (but not -version).
+ (print_version): Split lengthy message into two lines.
+
+2001-01-05 Nick Clifton <nickc@redhat.com>
+
+ * config/v850/v850.c (v850_encode_data_area): Use alloca to create
+ temporary string for initialisation before calling ggc_alloc_string.
+
+2001-01-06 Michael Hayes <mhayes@redhat.com>
+
+ * rtl.h (print_simple_rtl): New.
+ * print-rtl.c (print_simple_rtl): New.
+ (flag_simple): New.
+ (print_rtx): Disable printing of flags and modes, etc.,
+ if `flag_simple` nonzero.
+
+2001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
+
+ * function.c (fixup_var_refs): Use push_to_full_sequence where
+ possible.
+
+2001-01-05 Michael Meissner <meissner@redhat.com>
+
+ * flags.h (flag_reorder_blocks): Add declaration.
+ (flag_rename_block): Ditto.
+
+2001-01-05 DJ Delorie <dj@redhat.com>
+
+ * function.c (reorder_blocks): Make sure the flags are all reset
+ before using them to mark blocks, else a second invocation will
+ corrupt the block chain.
+ (reorder_blocks_0): New, resets the flags.
+
+Fri Jan 5 20:34:06 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * cse.c (find_comparison_args): Stop if the argument is known to
+ be constant.
+
+2001-01-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (movdf): When splitting load into pair of
+ registers, don't clobber the register used in the address too
+ early.
+
+2001-01-05 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * varasm.c (mark_constant_pool): Improve initial comments.
+ (mark_constants): Move marking of constants to mark_constant.
+ (mark_constant): New function to recursively mark all constants
+ referred to by a constant.
+
+2001-01-05 Catherine Moore <clm@redhat.com>
+
+ * dbxout.c ((dbxout_parms): Handle invisible ref where decl is a REG.
+
+2001-01-05 Phil Edwards <pme@sources.redhat.com>
+
+ * cp/lang-options.h: Bring comment in line with reality.
+ * f/lang-options.h: Likewise.
+ * java/lang-options.h: Likewise.
+ * objc/lang-options.h: Likewise.
+ * ch/lang-options.h: Likewise.
+ * f/g77.texi: And update the manual.
+
+2001-01-05 Marek Michalkiewicz <marekm@linux.org.pl>
+ Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr-protos.h (avr_peep2_scratch_safe): Prototype.
+ * config/avr/avr.c (avr_peep2_scratch_safe): New function.
+ * config/avr/avr.md (all peepholes that request a scratch register):
+ Call it, FAIL the peephole if not safe (in interrupt functions).
+
+2001-01-05 Mark Mitchell <mark@codesourcery.com>
+
+ * ggc-page.c (NUM_EXTRA_ORDERS): Hardwire to zero for now.
+
+2001-01-05 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * builtins.def (BUILT_IN_CONJ, BUILT_IN_CREAL, BUILT_IN_CIMAG):
+ Define.
+ * builtins.c (expand_builtin): Abort on BUILT_IN_CONJ,
+ BUILT_IN_CREAL and BUILT_IN_CIMAG.
+ * c-common.c (c_common_nodes_and_builtins): Create builtin conjf,
+ conj, conjl, crealf, creal, creall, cimagf, cimag and cimagl.
+ (expand_tree_builtin): Handle BUILT_IN_CONJ, BUILT_IN_CREAL and
+ BUILT_IN_CIMAG.
+ * extend.texi: Document these builtins.
+
+2001-01-05 Daniel Berlin <dberlin@redhat.com>
+
+ * c-common.c (lang_get_alias_set): Say we know nothing of
+ VECTOR_TYPE aliasing.
+
+ * dwarf2out.c (is_base_type): Handle VECTOR_TYPE properly.
+
+2001-01-05 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/mkfixinc.sh(vax-*-bsd): convert exit and atexit calls to
+ their x* equivalent versions for atexit-less systems
+ * fixinc/fixincl.c(main): do not return from main() on atexit-less
+ systems (or any other system any more).
+
+2001-01-05 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (ldmsi_postinc): Avoid use of match_dup between input and
+ output operands. Use arm_hard_register_operand for operand 4.
+ (stmsi_postinc): Similarly.
+ (ldmsi): Use arm_hard_register_operand for opernand 2.
+ (stmsi): Similarly.
+ * arm.c (arm_hard_register_operand): New function.
+ * arm-protos.h (arm_hard_register_operand): Prototype it.
+
+ * arm.h (HARD_REGNO_RENAME_OK): Define.
+
+Fri Jan 5 16:29:49 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (cfc_args): add "unordered" field.
+ (check_fold_consts): Set unordered field.
+ (simplify_relational_operation): Simplify the unordered
+ comparisons.
+
+ * reg-stack.c (swap_rtx_condition): Ensure that the transformation
+ is valid.
+
+ * emit-rtl.c (try_split): Fix code to mark labels.
+ * jump.c (mark_jump_label): Make global.
+ * rtl.h (mark_jump_label): Declare.
+
+ * predict.c (estimate_probability): Handle unordred comparisons.
+
+2001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi: Update for -MP. Clarify behavior of -MT.
+ * cppinit.c (initialize_dependency_output): Update.
+ (cpp_finish): Output dummy targets for -MP.
+ (OPT_MP): New.
+ (cpp_handle_option): Handle -MP. Don't quote -MT options.
+ * cpplib.h (struct cpp_options): Add deps_phony_targets.
+ * gcc.c (cpp_options): Update to handle -MP.
+ * mkdeps.c (deps_add_target, deps_add_default_target): Update
+ to quote only the default target.
+ (deps_phony_targets): Insert a preceding newline. Rename from
+ deps_dummy_targets for consistency.
+ * mkdeps.h: Update
+
+2001-01-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * calls.c (emit_library_call_value_1): Support
+ INIT_CUMULATIVE_LIBCALL_ARGS.
+ * tm.texi (INIT_CUMULATIVE_LIBCALL_ARGS): Document it.
+
+2001-01-04 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (finish_struct): Detect flexible array members
+ used in an inappropriate context.
+ * c-typeck.c (really_start_incremental_init): Special case
+ constructor_max_index for zero length arrays.
+ (pop_init_level): Allow initialization of flexible array
+ members. Deprecate initialization of zero length arrays.
+ Don't issue missing initializer warning for flexible array
+ members or zero length arrays.
+ (process_init_element): Don't dereference null DECL_SIZE.
+ * varasm.c (array_size_for_constructor): Return a HOST_WIDE_INT.
+ Don't abort for empty constructors. Use size_binop
+ (output_constructor): Add commentary regarding zero length
+ array futures. Abort if we try to initialize an array of
+ unspecified length with a non-empty constructor in the middle
+ of a structure.
+
+ * extend.texi (Zero Length): Update and clarify documentation
+ on static initialization.
+
+2001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_expand_prologue): Don't compile an ISR
+ with more than 32767 words of local storage.
+
+2001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_init_builtins): Remove builtin support
+ for 'abs', 'labs', and 'fabs'.
+ (c4x_expand_builtin): Likewise.
+ * config/c4x/c4x.h (enum c4x_builtins): Likewise.
+
+2001-01-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/sh/sh.md (prget, prset): New insn types.
+ (return delay slot): Don't allow prset.
+ (call, sfunc delay slot): Don't allow prget.
+ (movsi_i, movsi_ie, movsi_i_lowpart): Create separate alternatives
+ for prset and prget.
+
+2001-01-05 Michael Hayes <mhayes@redhat.com>
+
+ * loop.h (struct loop_reg): New.
+ (struct loop_regs): Change to use array of `struct loop_reg'.
+ * loop.c: Replace assortment of varrays with single regs array.
+ (count_one_set): Delete may_not_move array argument
+ and use regs array instead. All caller's changed.
+ (count_loop_regs_set): Delete may_not_move and single_usage
+ arguments and use regs array instead. All caller's changed.
+ (find_single_use_in_loop): Replace usage array argument with pointer
+ to regs structure. All caller's changed.
+ (loop_optimize): Delete `moved_once' array.
+
+2001-01-05 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (prescan_loop): Set loop_info->has_nonconst_call.
+ Use it instead of loop_info->has_call for scanning loop mems.
+ (check_dbra_loop): Replace loop_info->has_call test with
+ loop_info->has_nonconst_call.
+
+2000-01-04 Matthew Hiller <hiller@redhat.com>
+
+ * config/sh/sh.h (EPILOGUE_USES): Recognize fpscr as epilogue-used
+ for TARGET_SH3E.
+
+2001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * fold-const.c (fold): When folding a CONJ_EXPR of a COMPLEX_CST,
+ use TREE_REALPART and TREE_IMAGPART instead of TREE_OPERAND.
+
+2001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (SIZE_TYPE, WCHAR_TYPE): Define.
+ (flag_short_double, flag_short_wchar): Define.
+ (c_common_nodes_and_builtins): Create many tree nodes shared
+ between C and C++ here instead of in cp/decl.c and ...
+ * c-decl.c (init_decl_processing): ... here.
+ (SIZE_TYPE, WCHAR_TYPE): Don't define.
+ (flag_short_double, flag_short_wchar): Don't define.
+ (record_builtin_type): New function.
+ (build_void_list_node): New function.
+ * c-common.h (flag_short_double, flag_short_wchar,
+ record_builtin_type, build_void_list_node): Declare.
+
+Thu Jan 4 21:09:47 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * integrate.c (expand_inline_function): Don't put a virtual
+ register into the reg map.
+
+ * function.c (fixup_var_refs_1): If force_operand didn't put
+ the address into the target, move it there.
+
+2001-01-04 Mark Mitchell <mark@codesourcery.com>
+
+ Special-case tree_decl/tree_list allocations.
+ * ggc-page.c (OBJECT_PER_PAGE): Reimplement.
+ (OBJECT_SIZE): New macro.
+ (NUM_EXTRA_ORDER): Likewise.
+ (extra_order_size_table): New variable.
+ (NUM_ORDERS): New macro.
+ (objects_per_page_table): New variable.
+ (object_size_table): New variable.
+ (G.pages): Use NUM_ORDERS to bound the array.
+ (G.page_tails): Likewise.
+ (DIV_ROUND_UP): Remove.
+ (BITMAP_SIZE): Use CEIL, instead of DIV_ROUND_UP.
+ (alloc_page): Use OBJECT_SIZE.
+ (size_lookup): Don't make it const.
+ (ggc_alloc): Use OBJECT_SIZE.
+ (ggc_set_mark): Likewise.
+ (ggc_get_size): Likewise.
+ (init_ggc): Set up the object_size_table, objects_per_page_table,
+ and adjust size_lookup.
+ (ggc_recalculate_in_use_p): Use CEIL, not DIV_ROUND_UP.
+ (ggc_pop_context): Use NUM_ORDERS.
+ (clear_marks): Likewise.
+ (sweep_pages): Likewise.
+ (poison_pages): Likewise.
+ (ggc_print_statistics): Use OBJECT_SIZE.
+
+Thu Jan 4 15:54:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * varasm.c (output_constructor): Use HOST_WIDE_INT for sizes.
+ Only call array_size_for_constructor if last field and array type
+ with no upper bound.
+
+2001-01-04 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.c (arm_gen_constant): Prefer to emit constants
+ from bit 31 downwards, if this requires no more insns.
+ (count_insns_for_constant): New helper function for above.
+
+2001-01-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * gencodes.c (output_predicate_decls): Remove empty initializer.
+
+2001-01-04 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.c (copy_node): Remove documentation about obstacks.
+ (buidl1): Check that nobody tries to build 2-argument nodes this
+ way.
+
+2001-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * sparc.h (PREDICATE_CODES): Delete fp_sethi_p, fp_mov_p and
+ fp_high_losum_p.
+
+ * gencodes.c (output_predicate_decls): Fill empty initializer
+ braces.
+
+2001-01-04 Jakub Jelinek <jakub@redhat.com>
+
+ * tradcpp.c (deps_file, print_deps_missing_files): New variables.
+ (main): Handle -MG, -MD, -MMD. Bail out if -MG is given without -M
+ or -MM.
+ (do_include): Handle missing headers like cpp0.
+ * cppfiles.c (_cpp_execute_include): Don't prefix absolute header
+ paths with first include pathname. Don't strcat to uninitialized
+ string.
+
+2001-01-04 Bernd Schmidt <bernds@redhat.com>
+
+ * regrename.c (regrename_optimize): Don't rename from frame pointer
+ if frame_pointer_needed.
+ (do_replace): Don't set ORIGINAL_REGNO to a hard register number.
+ * config/ia64/ia64.c (emit_all_group_insn_barriers): New function.
+ (ia64_reorg): Use it instead of scheduling if ! optimize.
+ (errata_emit_nops): Properly call asm_noperands.
+ (ia64_sched_reorder): Finish cycle if we see an asm.
+ (ia64_variable_issue): Clear scheduling state after asms.
+
+2001-01-04 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cpp.texi: Update for -MT.
+ * cppinit.c (initialize_dependency_output): Add a default
+ target if none has been given already.
+ (no_tgt, OPT_MT): New.
+ (cpp_handle_option): Handle -MT. Update -M etc.
+ * cpplib.h (struct cpp_options): Remove deps_target.
+ * gcc.c (cpp_options): Handle -MT.
+ * mkdeps.c (struct deps): Move from mkdeps.h.
+ (deps_calc_target): Rename deps_add_default_target. Add a
+ default target if none has been specified already.
+ * mkdeps.h (struct deps): Move to mkdeps.c.
+ (deps_calc_target): Rename deps_add_default_target.
+
+2000-01-03 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (grokdeclarator): Give zero-length arrays size zero.
+ Remove dead code.
+ * c-typeck.c (push_init_level): Move checks for flexible array
+ members and zero length arrays ...
+ (pop_init_level): ... here. Silently discard empty initializations.
+ Remove dead code.
+ * varasm.c (output_constructor): Update for sizeof change to
+ zero-length arrays.
+
+ * extend.texi (Zero Length): Clarify semantics.
+
+2001-01-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (tm.h): Include isns-codes.h last.
+ * configure: Rebuilt.
+
+2001-01-03 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.md (addvsi3, addvdi3): New.
+ (negvsi2, negvdi2, subvsi3, subvdi3, mulvsi3, mulvdi3): New.
+
+2001-01-03 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * tradcpp.c (main): Make sure finclude() is called with a valid
+ indepth value while handling -include.
+
+2001-01-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * gencodes.c (output_predicate_decls): New function.
+ (main): Call it.
+ * machmode.h (GET_MODE_MASK): Arrange for it to be defined
+ even if it is not the first time machmode.h is #included.
+ * config/sh/sh.c (fpul_operand): Declare MODE argument.
+ * tm.texi (PREDICATE_CODES): Document predicate declarations.
+ * gcc.texi (Copyright): Added 2001.
+
+2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * c-common.c (c_common_lang_init): New function. Warn if format
+ warning options which only have effects when used with -Wformat
+ are used without -Wformat.
+ * c-common.h (c_common_lang_init): Declare.
+ * c-lang.c (lang_init): Call c_common_lang_init.
+ * objc/objc-act.c (lang_init): Call c_common_lang_init.
+
+2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * configure.in: Check for the mktemp command.
+ * configure: Regenerate.
+ * gccbug.in: Use a separate temporary file $TEMP0 for one use of
+ $TEMP. Create temporary files with mktemp, if available at
+ configure time; otherwise use set -C. Remove temporary files
+ before exit.
+
+2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * configure.in: Require at least texinfo 4.0. Check for whether
+ Pod::Man is sufficiently recent to regenerate GCC manpages.
+ * configure: Regenerate.
+ * Makefile.in (TEXI2POD): Call perl explicitly rather than relying
+ on #!.
+ (GENERATED_MANPAGES): Define.
+ (generated-manpages): New target. Depend on cpp.1 as well as
+ gcov.1.
+ (install-man): Depend on $(GENERATED_MANPAGES) (defined by
+ configure to generated-manpages or empty) rather than on the
+ manpages directly. Remove execute permission from installed
+ gcov.1 as well as cpp.1.
+ * cpp.1, gcov.1: Regenerate.
+
+2001-01-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strncmp): Use host_integerp and
+ tree_low_cst. Allow using cmpstrsi in more cases.
+
+Wed Jan 3 10:48:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for variable
+ sized types.
+
+Wed Jan 3 12:22:32 2001 Alexandre Oliva <aoliva@redhat.com>
+
+ * build-make (HOST_CFLAGS): Added `-DGENERATOR_FILE'.
+ * Makefile.in (HOST_CFLAGS): Mention build-make.
+
+Wed Jan 3 08:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/sparc/sparc.md (nonlocal_goto): Emit goto_handler_and_restore
+ as JUMP_INSN.
+
+2001-01-01 Bernd Schmidt <bernds@redhat.com>
+
+ * builtins.c (expand_builtin_return_addr): Don't use MEM_ALIAS_SET on
+ a REG rtx.
+
+ * cse.c (cse_rtx_varies_p): Accept additional FROM_ALIAS arg. All
+ callers changed.
+
+ * alias.c (throughout): Use ORIGINAL_REGNO when accessing
+ reg_base_value and reg_known_value arrays.
+ (init_alias_analysis): Add more cases to detect known values.
+ * sched-deps.c (deps_may_trap_p): New function.
+ (sched_analyze_2): Use it.
+
+2001-01-03 Alexandre Oliva <aoliva@redhat.com>
+
+ * combine.c (simplify_shift_const): Even if we're sign-extracting,
+ don't discard an ASHIFTRT if we're shifting in a wider mode.
+
+2000-01-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * toplev.c (rest_of_compilation): Don't print basic block information
+ when CFG isn't up to date.
+
+2001-01-02 Mark Elbrecht <snowball3@bigfoot.com>
+
+ * config/i386/djgpp.h (DWARF2_DEBUGGING_INFO): Define.
+ (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_ASM_OP): Define.
+ (UNALIGNED_SHORT_ASM_OP): Define.
+ (CPP_PREDEFINES): Remove defines for GO32 and DJGPP.
+
+2001-01-02 Mark Mitchell <mark@codesourcery.com>
+
+ * fold-const.c (fold_convert): Fix typo.
+
+2001-01-02 Richard Henderson <rth@redhat.com>
+
+ * c-common.h (ASM_INPUT_P): New.
+ * c-parse.in (asm): Set it when needed.
+ * c-semantics.c (genrtl_asm_stmt): Test it instead of the
+ existence of an operand.
+
+Tue Jan 2 20:27:07 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * dwarf2out.c (stack_adjust_offset): Handle PRE_MODIFY.
+ (dwarf2out_frame_debug_expr): Likewise.
+ (mem_loc_descriptor): Handle PRE and POST_MODIFY.
+
+Tue Jan 2 20:21:31 MET 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_split_to_parts): Return number of part required;
+ handle TFmodes.
+ (print_operand, ix86_expand_branch, ix86_expand_fp_movcc): Handle
+ TFmodes.
+ (ix86_split_long_move): Use number of part returned
+ by ix86_split_to_parts
+ * i386.h (MASK_128BIT_LONG_DOUBLE, TARGET_128BIT_LONG_DOUBLE):
+ New macros.
+ (TARGET_SWITCHES): Add 128bit-long-double and 96bit-long-double
+ (LONG_DOUBLE_TYPE_SIZE): Change from constant.
+ (MAX_LONG_DOUBLE_TYPE_SIZE): New macro.
+ (INTEL_EXTENDED_IEEE_FORMAT): Likewise.
+ (ALIGN_MODE_128): Add TFmode.
+ (IS_STACK_MODE): Likewise.
+ (HARD_REGNO_NREGS): TFmode needs 3 registers.
+ (HARD_REGNO_OK): Support TFmodes.
+ (ASM_OUTPUT_LONG_DOUBLE): Handle TFmodes.
+ * i386.md (scheduler definitions): Use memory operand to determine
+ fst/fld instructions; use mode attribute to determine real mode of
+ the instruction.
+ (*tf): New patterns, expanders and splitters; based on XFmode patterns.
+ * invoke.texi (128bit-long-double, 96bit-long-double): Document.
+
+2001-01-02 Mark Mitchell <mark@codesourcery.com>
+
+ * tree.def (TRUTH_NOT_EXPR): Improve documentation.
+
+Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
+
+ * expr.c (store_constructor_field): Update ALIGN before calling
+ store_constructor.
+
+2001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * config/mips/mips.c (function_arg): Don't pass NULL_TREE to
+ host_integerp.
+
+2001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
+
+ * tm.texi (FUNCTION_ARG): Document that @var{type} can be an
+ incomplete type.
+
+Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
+
+ * c-decl.c (start_function): Don't warn on third parameter to main.
+
+2001-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * tsystem.h: Define HAVE_DECL_GETOPT.
+
+2001-01-02 Philip Blundell <pb@futuretv.com>
+
+ * config/arm/linux-gas.h (CLEAR_INSN_CACHE): Avoid illegal clobber
+ of input operand.
+
+2001-01-02 Richard Henderson <rth@redhat.com>
+
+ * alpha.md (*ze_and_ne): Duplicate insn condition to split.
+
+2001-01-02 Andreas Jaeger <aj@suse.de>
+
+ * c-decl.c (c_decode_option): Remove support of
+ -Wmissing-noreturn.
+
+ * toplev.c (documented_lang_options): Remove -Wmissing-noreturn.
+ (W_options): Add -Wmissing-noreturn here.
+
+ * flow.c: Define lang_missing_noreturn_ok_p.
+ (check_function_return_warnings): Use it.
+
+ * c-common.h: Declare lang_missing_noreturn_ok_p.
+
+ * c-lang.c (c_missing_noreturn_ok_p): New function.
+ (lang_init): Set lang_missing_noreturn_ok_p.
+
+ * invoke.texi (Warning Options): Document this.
+
+2000-12-27 Phil Edwards <pme@sources.redhat.com>
+
+ * extend.texi (C++ Extensions): New node for C++ attributes;
+ describe init_priority and com_interface.
+ * invoke.texi: Remove -finit-priority as it now has zero effect.
+ * install.texi: Fix xref syntax.
+ * md.texi: Likewise.
+
+Mon Jan 1 21:28:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config.gcc (sparc64-wrs-vxworks*): New case.
+ * config/sparc/vxsparc64.h, config/sparc/t-vxsparc64: New files.
+
+ * config/sparc/sparc.c (sparc_override_options): Do support different
+ pointer and architecture size.
+ * config/sparc/sparc.h (MIN_UNITS_PER_WORD): Always 4.
+ (POINTERS_EXTEND_UNSIGNED): Define.
+ (Pmode): Test TARGET_ARCH64, not TARGET_PTR64.
+ (FUNCTION_MODE): Define to be Pmode.
+ * config/sparc/sparc.md (64-bit call patterns): FUNCTION_MODE now DI.
+
+ * function.c (expand_function_end): Properly handle DECL_RESULT
+ and copy when ptr_mode != Pmode.
+ * expmed.c (make_tree): Convert X from Pmode to ptr_mode, if needed.
+
+2001-01-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-common.c (c_common_nodes_and_builtins): Set prototype
+ parameters for __builtin_fputs, __builtin_fputc and
+ __builtin_fwrite. Don't declare plain fputc as a builtin.
+
+2001-01-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * loop.c (add_label_notes): Increment the label usage count when
+ a note is added to an insn which refers to a CODE_LABEL.
+ * gcse.c (add_label_notes): Likewise.
+
+2001-01-01 Andreas Jaeger <aj@suse.de>
+
+ * loop.c (scan_loop): Use xmalloc to allocate movables.
+
+2001-01-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * tm.texi (REGISTER_MOVE_COST): Add a mode argument.
+ * reload.c (REGISTER_MOVE_COST): Likewise. Adjust all callers.
+ * reload1.c (REGISTER_MOVE_COST): Likewise.
+ * regclass.c (REGISTER_MOVE_COST): Likewise.
+ (move_cost, may_move_in_cost, may_move_out_cost): Add mode
+ dimension. Adjust all users.
+ (init_reg_sets_1): Iterate on all modes.
+ * config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
+ * config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
+ * config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
+ * config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
+ * config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
+ * config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
+ * config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
+ * config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
+ * config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
+ * config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
+ * config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
+ * config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
+ * config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
+ * config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
+ * config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
+ * config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
+ * config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
+ * config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
+ * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
+ * config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
+ * config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
+ * config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
+ * config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
+ * config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
+ * config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
+ * config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
+ * config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.
+
+2001-01-01 Bernd Schmidt <bernds@redhat.com>
+
+ * alias.c (fixed_scalar_and_varying_struct): Adjust prototype of
+ arg VARIES_P. Call it with extra arg.
+ (true_dependence): Likewise.
+ * rtl.h (rtx_addr_can_trap_p): Declare.
+ (rtx_varies_p, rtx_addr_varies_p, true_dependence): Update
+ prototypes.
+ * rtlanal.c (rtx_addr_can_trap_p): No longer static.
+ (rtx_varies_p): Accept extra arg FOR_ALIAS; only disallow
+ pic offset table register if it's zero. All callers changed.
+ (rtx_addr_varies_p): Accept extra arg FOR_ALIAS; all callers changed.
+
+Mon Jan 1 07:38:33 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * explow.c (convert_memory_address, case SYMBOL_REF): Copy
+ STRING_POOL_ADDRESS_P.
+
+ * config/sparc/sparc.c (input_operand): Properly test for short op.
+
+ * config.gcc (sparc-*-elf): Include sparc/sol2.h.
+ (sparc-*-rtems*): Include sparc/sol2.h and sparc/elf.h.
+ (sparclite-*-elf*, sparc86x-*-elf*): Likewise.
+ * config/sparc/elf.h: No longer include sol2.h.
+ * config/sparc/lifeelf.h: No longer include sparc/elf.h.
+ * config/sparc/rtemself.h, config/sparc/sp86x-elf.h: Likewise.
+
+ * config/sparc/sparc.md: Test TARGET_ARCH64 instead of TARGET_PTR64.
+
+2001-01-01 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (check_insn_for_bivs): Use ivs->n_regs to check array bounds.
+ (find_mem_givs, record_biv, maybe_eliminate_biv): Likewise.
+ (record_initial): Likewise.
+ * unroll.c (copy_loop_body, loop_iterations): Likewise.
+ (remap_split_bivs): Likewise.
+
+2001-01-01 Michael Hayes <mhayes@redhat.com>
+
+ * loop.c (loop_ivs_free): New function.
+ (strength_reduce): Break out from...
+
+2001-01-01 Michael Hayes <mhayes@redhat.com>
+
+ * loop.h (struct iv): New.
+ (REG_IV_TYPE, REG_IV_CLASS, REG_INFO): Modify to use 'struct iv'.
+ (struct loop_ivs): Replace 'reg_iv_type', 'reg_iv_info',
+ 'reg_biv_class' fields with 'regs' and 'n_regs'.
+ (struct ivs): Rename 'loop_iv_list' field to 'list'.
+ * loop.c (loop_bivs_find, strength_reduce): Use ivs->regs array.
+ * unroll.c (loop_iterations): Check array bounds with ivs->n_regs.
+
+2001-01-01 Michael Hayes <mhayes@redhat.com>
+
+ * loop.h (REG_IV_CLASS): New accessor macro.
+ * loop.c (REG_IV_CLASS): Use it instead of reg_iv_class array.
+ * unroll.c (REG_IV_CLASS): Likewise.
diff --git a/gcc/ChangeLog.7 b/gcc/ChangeLog-2002
index 022212bfa87..370ff0efbdd 100644
--- a/gcc/ChangeLog.7
+++ b/gcc/ChangeLog-2002
@@ -1,3 +1,14450 @@
+2002-12-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Update the prototypes.
+ * config/h8300/h8300.c (const_le_2_operand): Change to
+ const_int_le_2_operand.
+ (const_int_le_6_operand): Change to const_int_le_6_operand.
+ * config/h8300/h8300.md (two peepholes): Update the function
+ names.
+
+2002-12-31 Tom Tromey <tromey@redhat.com>
+
+ * doc/install.texi (Testing): Fixed typo.
+
+2002-12-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (TRAMPOLINE_TEMPLATE): Remove.
+ (TRAMPOLINE_SIZE): Support the normal mode.
+ (INITIALIZE_TRAMPOLINE): Emit the entire trampoline.
+
+2002-12-31 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (pending_lang_change): Declare.
+
+2002-12-31 Jerry Quinn <jlquinn@optonline.net>
+
+ * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
+ descriptions.
+
+2002-12-31 Jerry Quinn <jlquinn@optonline.net>
+
+ * gcc/doc/invoke.texi (Optimization Options): List the options
+ enabled by each -O flag.
+
+2002-12-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi (Configuration): Explicitly refer
+ gcc/config.gcc for a list of cpu models.
+
+2002-12-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h: Fix comment typos.
+
+2002-12-30 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
+
+2002-12-30 Tom Tromey <tromey@redhat.com>
+
+ * doc/install.texi (Testing): Mention Jacks.
+
+2002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/gcc.texi, doc/gccint.texi: Update last modification dates.
+
+2002-12-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (output_logical_op): Use extu.w in more
+ cases.
+ (compute_logical_op_length): Update to reflect the change in
+ output_logical_op.
+ (compute_logical_op_cc): Likewise.
+
+2002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/service.texi: Uncomment and update FAQ link.
+
+2002-12-30 Andreas Jaeger <aj@suse.de>
+
+ * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
+
+2002-12-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): New.
+
+2002-12-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (output_logical_op): Use extu.w if we
+ are clearing the most significant byte.
+ (compute_logical_op_length): Update to reflect the change in
+ output_logical_op.
+ (compute_logical_op_cc): Likewise.
+
+2002-12-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Give internal names to anonymous
+ insns.
+
+2002-12-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Reorder some insns.
+
+2002-12-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add prototypes for
+ const_int_qi_operand and const_int_hi_operand.
+ * config/h8300/h8300.c (const_int_qi_operand): New.
+ (const_int_hi_operand): Likewise.
+ * config/h8300/h8300.md (three peepholes): New.
+
+2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
+ Use @copying.
+
+2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * configure.in: Increase makeinfo version requirement to 4.[2-9].
+ * configure: Regenerate.
+ * doc/install.texi: Update Texinfo version requirement.
+
+2002-12-28 Andreas Jaeger <aj@suse.de>
+
+ * config/i386/i386.c (x86_function_profiler): Mark labelno as
+ possibly unused.
+
+ * c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for
+ correct format.
+
+2002-12-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*iorhi_shift_8): Change the name to
+ *iorhi_ashift_8.
+ (*iorhi_lshiftrt_8): New.
+
+2002-12-27 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/include/texinfo.tex: Update to version 2002-12-26.16.
+
+2002-12-27 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/contrib.texi (Contributors): Add Abramo and Roberto Bagnara.
+
+2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Fix comment typos.
+ Update copyright.
+ * config/h8300/h8300.c: Fix comment typos.
+
+2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
+
+2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/athlon.md: Fix comment typos.
+ * config/i386/crtdll.h: Likewise.
+ * config/i386/djgpp.h: Likewise.
+ * config/i386/i386-interix.h: Likewise.
+ * config/i386/i386.c: Likewise.
+ * config/i386/i386.h: Likewise.
+ * config/i386/i386.md: Likewise.
+ * config/i386/k6.md: Likewise.
+ * config/i386/mingw32.h: Likewise.
+ * config/i386/pentium.md: Likewise.
+ * config/i386/sco5.h: Likewise.
+ * config/i386/winnt.c: Likewise.
+ * config/i386/xmmintrin.h: Likewise.
+
+2002-12-26 Jose Renau <renau@cs.uiuc.edu>
+
+ * ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an
+ INSN_P before checking to see if it is dead.
+ (mark_all_insn_unnecessary): Similarly.
+ (ssa_eliminate_dead_code): Similarly.
+ * rtl.h (struct rtx_def): Update comments for in_struct usage
+ in dead code elimination pass.
+ (INSN_DEAD_CODE_P): Allow JUMP_INSN and CALL_INSN as well.
+
+2002-12-26 Andreas Schwab <schwab@suse.de>
+
+ * config.gcc (powerpc*-*-*, rs6000-*-*): Fix assignment syntax.
+
+2002-12-25 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Convert to
+ tartet_flags_explicit.
+ * config/rs6000/rs6000.h (MASK_MULTIPLE_SET, MASK_STRING_SET): Delete.
+ Compact target_flags bits.
+ (TARGET_MULTIPLE_SET, TARGET_STRING_SET): Delete.
+ (TARGET_SWITCHES): Delete references to *_SET flags.
+
+Wed Dec 25 20:30:53 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (memory attribute): Fix setcc attribute.
+
+2002-12-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * output.h: Fix comment typos.
+ * predict.c: Likewise.
+ * print-tree.c: Likewise.
+ * profile.c: Likewise.
+ * ra-build.c: Likewise.
+ * ra-colorize.c: Likewise.
+ * ra-debug.c: Likewise.
+ * ra-rewrite.c: Likewise.
+ * ra.c: Likewise.
+ * ra.h: Likewise.
+ * real.c: Likewise.
+ * recog.c: Likewise.
+ * reg-stack.c: Likewise.
+ * regclass.c: Likewise.
+
+2002-12-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (print_operand_address): Do not negate
+ a negative number when printing one.
+
+2002-12-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add prototypes for
+ output_plussi, compute_plussi_length, and compute_plussi_cc.
+ * config/h8300/h8300.c (output_plussi): New.
+ (compute_plussi_length): Likewise.
+ (compute_plussi_cc): Likewise.
+ * config/h8300/h8300.md (addsi_h8300h): Call
+ output_plussi, compute_plussi_length, and compute_plussi_cc.
+
+2002-12-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (two peepholes): Use match_dup instead
+ of match_operand in the new patterns.
+
+2002-12-24 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/include/texinfo.tex: Update to version 2002-11-25.11.
+
+2002-12-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * configure.in (enable-coverage): Add SELF_COVERAGE.
+ * profile.c (end_branch_prob): Use SELF_COVERAGE.
+
+2002-12-24 Jim Wilson <wilson@redhat.com>
+
+ * alias.c (record_set): Handle multi-reg hard registers.
+
+2002-12-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * regmove.c: Fix comment typos.
+ * reload.c: Likewise.
+ * reload1.c: Likewise.
+ * resource.c: Likewise.
+ * rtl.def: Likewise.
+ * rtl.h: Likewise.
+ * rtlanal.c: Likewise.
+ * sched-deps.c: Likewise.
+ * sched-rgn.c: Likewise.
+ * sibcall.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * ssa-ccp.c: Likewise.
+ * ssa.c: Likewise.
+ * stmt.c: Likewise.
+ * stor-layout.c: Likewise.
+ * system.h: Likewise.
+ * tlink.c: Likewise.
+ * toplev.c: Likewise.
+ * tracer.c: Likewise.
+ * tree-inline.c: Likewise.
+ * tree.c: Likewise.
+ * tree.h: Likewise.
+ * unroll.c: Likewise.
+ * varasm.c: Likewise.
+
+2002-12-23 Larin Hennessy <larin@science.oregonstate.edu>
+
+ * doc/install.texi: Remove i386-*-isc, i860-*-bsd,
+ m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
+ * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
+ DG/UX entries.
+ * doc/md.texi: Remove AMD 29K entries.
+ * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
+ 1.38.1, NewsOS, RT PC, WE32K entries.
+
+2002-12-23 Aldy Hernandez <aldyh@redhat.com>
+
+ PR/8763
+ * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
+ (altivec_vspltisw_v4sf): Name pattern.
+ (altivec_vslw_v4sf): New pattern.
+
+2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/include/gcc-common.texi: Define DEVELOPMENT.
+
+2002-12-23 Mark Mitchell <mark@codesourcery.com>
+
+ * stor-layout.c (update_alignment_for_field): Correct handling of
+ unnamed bitfields on PCC_BITFIELD_TYPE_MATTERS machines.
+ * doc/tm.texi (PCC_BITFIELD_TYPE_MATTERS): Note that an unnamed
+ bitfield does not affect alignment.
+
+2002-12-23 David Edelsohn <edelsohn@gnu.org>
+
+ * expr.c (expand_assignment): Apply special treatment to
+ ARRAY_TYPE.
+
+2002-12-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Update the prototype of
+ expand_a_shift.
+ * config/h8300/h8300.c (expand_a_shift): Change the return
+ type to void.
+ * config/h8300/h8300.md: Update all the uses of
+ expand_a_shift.
+
+2002-12-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ * tree.c (save_expr): Allow either side of a dyadic operand to be
+ constant.
+
+ * doc/portability.texi (portability): Update portability goals.
+
+2002-12-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (output_a_shift): Remove unused code.
+
+2002-12-22 Mark Mitchell <mark@codesourcery.com>
+
+ * stor-layout.c (update_alignment_for_field): Guard use of
+ ADJUST_FIELD_ALIGN with #ifdef.
+
+ * stor-layout.c (update_alignment_for_field): Use
+ ADJUST_FIELD_ALIGN when computing the alignment for a zero-width
+ bitfield when PCC_BITFIELD_TYPE_MATTERS.
+
+2002-12-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genautomata.c: Fix comment typos.
+
+Sun Dec 22 18:23:44 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * params.def (tracer-min-branch-probability-feedback): Fix default.
+ * final.c (compute_alignments): Use profile to avoid code bloat.
+
+2002-12-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (get_shift_alg): Make shift insn
+ sequences end with a valid cc0 whenever possible.
+
+2002-12-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (negsf2): New.
+ (*negsf2_h8300): Likewise.
+ (*negsf2_h8300hs): Likewise.
+
+2002-12-21 Geoffrey Keating <geoffk@apple.com>
+
+ * integrate.c (output_inline_function): Don't hold private
+ pointers to 'struct function' over GC calls.
+
+2002-12-21 Kaz kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/lib1funcs.asm (__fpscr_values): Conditionalize with
+ NO_FPSCR_VALUES.
+ * config/sh/t-linux (TARGET_LIBGCC2_CFLAGS): Add -DNO_FPSCR_VALUES.
+
+2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (zero_extendqisi2): Correct the
+ length.
+
+2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*zero_extendqihi2_h8300): Make the
+ second alternative "#".
+ (*zero_extendqihi2_h8300hs): Likewise.
+ (a define_split): New.
+
+2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Update the prototype for
+ split_adds_subs.
+ Add prototypes for const_le_2_operand and const_le_6_operand.
+ * config/h8300/h8300.c (split_adds_subs): Add an argument to
+ specify whether inc/dec should be used when possible.
+ (const_le_2_operand): New.
+ (const_le_6_operand): Likewise.
+ * config/h8300/h8300.md (two peepholes): New.
+
+2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/fr30/fr30.md: Fix a comment typo.
+ * config/i386/i386.c: Likewise.
+ * config/ip2k/ip2k.h: Likewise.
+
+2002-12-20 Jim Wilson <wilson@redhat.com>
+
+ * config/rs6000/spe.h (__ev_subifw): Reverse arguments.
+ (__ev_subw, __ev_subiw): New.
+ (ev_mwlssf, ev_mwlsmf, ev_mwlssfa, ev_mwlsmfa, ev_mwlssfaaw,
+ ev_mwlsmfaaw, ev_mwlssfanw, ev_mwlsmfanw): Delete.
+
+2002-12-20 John David Anglin <dave.anglin@nrc.gc.ca>
+
+ * pa-linux.h (TARGET_HAS_STUBS_AND_ELF_SECTIONS): Delete define.
+ * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete define.
+ * pa.c (pa_function_ok_for_sibcall): Allow non indirect sibcalls on
+ TARGET_ELF32. Add comment on sibcall issues for TARGET_64BIT.
+
+2002-12-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add prototypes for
+ incdec_operand and eqne_operator.
+ * config/h8300/h8300.c (incdec_operand): New.
+ (eqne_operator): Likewise.
+ * config/h8300/h8300.h (CONST_OK_FOR_M): Likewise.
+ (CONST_OK_FOR_O): Likewise.
+ (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_M and
+ CONST_OK_FOR_O.
+ * config/h8300/h8300.md (UNSPEC_INCDEC): New.
+ (addhi3_incdec): New.
+ (addsi3_incdec): Likewise.
+ (two peepholes): Likewise.
+
+2002-12-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (dosize): Remove warnings.
+ (print_operand): Likewise.
+
+2002-12-20 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (decl_has_samegp): New.
+ (samegp_function_operand): Use it. Rename from
+ current_file_function_operand.
+ (direct_call_operand): Handle -msmall-text via symbol->jump.
+ (tls_symbolic_operand_1): Use T for tprel64, t for smaller tprel.
+ (tls_symbolic_operand_type): Likewise.
+ (alpha_encode_section_info): Likewise. Handle -msmall-text.
+ (alpha_function_ok_for_sibcall): Use decl_has_samegp.
+ (alpha_end_function): Set symbol->jump for functions defined in
+ the text section.
+ * config/alpha/alpha-protos.h: Update.
+ * config/alpha/alpha.h (MASK_SMALL_TEXT, TARGET_SMALL_TEXT): New.
+ (TARGET_SWITCHES): Add -msmall-text and -mlarge-text.
+ (PREDICATE_CODES): Update.
+ * config/alpha/alpha.md (call patterns): Update for
+ samegp_function_operand rename; use !samegp reloc if
+ TARGET_EXPLICIT_RELOCS.
+ * doc/invoke.text: Document -msmall-text and -mlarge-text.
+
+2002-12-20 Ian Dall <ian@sibyl.beware.dropbear.id.au>
+
+ * config/ns32k/ns32k.md (movdi): Use "l" instead of "f" to match
+ all registers capable of holding a double float.
+ (*rcond): change name of "reverse branch" insns to
+ something more meaningful.
+ (*rbgt, *rblt, *rbge, *rble): Reverse branches to handle IEEE
+ comparisons properly.
+ (*ffs): Change operand 0 from write to read-modify-write.
+ (*ffsssi2): Drop constraints from define_expand.
+
+ * config/ns32k/ns32k.h (STORE_RATIO, STORE_BY_PIECES): Avoid using
+ MOVE_RATIO as default for store operations.
+
+ * config/ns32k/ns32k.h (enum reg_class, REG_CLASS_NAMES): Add
+ LONG_REGS class.
+ (CANNOT_CHANGE_MODE_CLASS): Can't subreg LONG_REGS.
+ (GO_IF_LEGITIMATE_ADDRESS): Remove spurious abort().
+ * config/ns32k/ns32k.c (regclass_map): Add LONG_REGS class.
+
+ * config/ns32k/STATUS: New File
+ * config/ns32k/NOTES: New file.
+
+2002-12-20 Hartmut Penner <hpenner@de.ibm.com>
+
+ * doc/invoke.texi: Document -mzarch, -mesa, -mcpu= and -march=
+ option for S/390 and zSeries.
+ * config/s390/s390.c (s390_cpu, s390_cpu_string, s390_arch,
+ s390_arch_string): New variables.
+ (override_options): Checking for options and setting of
+ appropriate target_flags, cpu and arch flags.
+ * config/s390/s390.h: (processor_type): New enum.
+ (TARGET_SWITCHES): New switches -mesa/zarch.
+ * config/s390/s390.md: New attribute 'cpu'.
+
+2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-pretty-print.h: Fix comment typos.
+ * integrate.c: Likewise.
+ * varasm.c: Likewise.
+ * config/c4x/c4x.h: Likewise.
+ * config/c4x/c4x.md: Likewise.
+ * config/fr30/fr30.md: Likewise.
+ * config/frv/frv.c: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/i386/i386.c: Likewise.
+ * config/i386/i386.h: Likewise.
+ * config/ia64/ia64.c: Likewise.
+ * config/ia64/ia64.h: Likewise.
+ * config/ip2k/ip2k.md: Likewise.
+ * config/m68hc11/m68hc11-crt0.S: Likewise.
+ * config/m68hc11/m68hc11.h: Likewise.
+ * config/m68hc11/m68hc11.md: Likewise.
+ * config/m68hc11/m68hc12.h: Likewise.
+ * config/mcore/mcore.md: Likewise.
+ * config/mips/mips.c: Likewise.
+ * config/mips/mips.md: Likewise.
+ * config/mmix/mmix-modes.def: Likewise.
+ * config/pa/pa.c: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/rs6000/rs6000.md: Likewise.
+
+2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (output_a_shift): Clean up the code to
+ output shifts using rotation.
+
+2002-12-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * flow.c (allocate_reg_life_data): Reset REG_FREQ.
+
+2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (pushqi_h8300): Don't push the stack
+ pointer.
+ (pushqi_h8300hs): Likewise.
+ (pushhi_h8300): Likewise.
+ (pushhi_h8300hs): Likewise.
+
+Thu Dec 19 23:44:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sched-rgn.c (init_regions): Update comment.
+
+2002-12-19 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (define_attr type): Remove altivec.
+ * config/rs6000/altivec.md (movv4si_internal): Set correct instruction
+ attributes.
+ (movv8hi_internal,movv16qi_internal,movv4sf_internal): Same.
+ (get_vrsave_internal,set_vrsave_internal): Same.
+ (altivec_vspltisb,altivec_vspltish,altivec_vspltisw): Same.
+ (absv16qi2,absv8hi2,absv4si2,absv4sf2): Same
+ (altivec_abss_v16qi,altivec_abss_v8hi,altivec_abss_v4si): Same.
+
+2002-12-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
+ Danny Smith <dannysmith@users.sourceforge.net>
+ Eric Kohl <ekohl@rz-online.de>
+
+ * config/i386/i386.c (ix86_handle_cdecl_attribute): Check for
+ attributes incompatible with fastcall attribute.
+ (ix86_handle_regparm_attribute): Likewise.
+
+ * config/i386/i386.c (ix86_comp_type_attributes): Check for mismatched
+ fastcall types.
+
+ * config/i386/cygwin.h (TARGET_OS_CPP_BUILTINS): Add fastcall
+ attributes.
+ (ASM_OUTPUT_LABELREF): Define as i386_pe_output_labelref.
+ * config/i386/i386-protos.h (i386_pe_output_labelref): Declare.
+ * config/i386/winnt.c (i386_pe_mark_dllimport). Add __imp_ prefix in
+ i386_pe_output_labelref rather than here.
+ (gen_fastcall_suffix): New function. Decorates a label name with the
+ fastcall prefix (@) and the stdcall suffix.
+ (i386_pe_encode_section_info): Call gen_fastcall_suffix() if a symbol
+ has a fastcall attribute.
+ (i386_pe_output_labelref): New function. Outputs a label reference.
+ * config/i386/i386.c (ix86_attribute_table): Accept 'fastcall' as a
+ valid attribute.
+ (ix86_return_pops_args): Fastcall functions pop the stack.
+ (init_cumulative_args): Reserve registers ECX and EDX if function has
+ fastcall attribute.
+ (function_arg): Use registers ECX and EDX if function has fastcall
+ attribute.
+ * config/i386/i386.h (CUMULATIVE_ARGS): Add fastcall attribute flag.
+ (DLL_IMPORT_EXPORT_PREFIX): Redefine as '#'.
+ (FASTCALL_PREFIX): Define as '@'.
+ * config/i386/mingw32.h (TARGET_OS_CPP_BUILTINS): Add fastcall
+ attributes.
+ * doc/extend.texi: Add documentation of fastcall attribute.
+
+2002-12-19 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: FORBUILD when build!=host changed from
+ ../$build-alias to ../build-$build_alias to match change made
+ in top directory.
+ * configure: Regenerated.
+
+2002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/8988
+ * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
+ the biv when eliminating.
+
+2002-12-19 Devang Patel <dpatel@apple.com>
+ * gcc.c (struct default_compiler): Recognizes input file name with
+ .CPP extension as C++ source files
+ * cp/lang-spec.h: Same
+ * doc/invoke.texi: Add documentation for .CPP support.
+
+2002-12-19 Aldy Hernandez <aldyh@redhat.com>
+
+ PR 8553
+ * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
+ registers.
+ ("absv16qi2"): Same.
+ ("absv4si2"): Same.
+ ("absv4sf2"): Same.
+ ("altivec_abss_v16qi"): Same.
+ ("altivec_abss_v8hi"): Same.
+ ("altivec_abss_v4si"): Same.
+
+2002-12-19 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
+ "*tstqiCCT", "*tstqiCCT_cconly"): New insns.
+
+2002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/8340
+ * stmt.c (expand_asm_operands): Produce an error when
+ the PIC register is clobbered.
+
+2002-12-18 Daniel Berlin <dberlin@dberlin.org>
+
+ * Makefile.in (OBJS): Add alloc-pool.o
+ (alloc-pool.o): New object.
+
+ * alloc-pool.c: New file.
+ * alloc-pool.h: New file.
+
+2002-12-18 Loren James Rittle <ljrittle@acm.org>
+
+ * gcc.c (validate_switches): Robustify against skipping past '\0'.
+
+2002-12-18 Geoffrey Keating <geoffk@apple.com>
+
+ * config.gcc: Set extra_objs in the generic Darwin rule,
+ not in the machine-specific rules.
+
+2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog: Follow spelling conventions.
+ * ChangeLog.2: Likewise.
+ * ChangeLog.4: Likewise.
+ * ChangeLog.5: Likewise.
+ * cppexp.c: Likewise.
+ * df.c: Likewise.
+ * gcov.c: Likewise.
+ * gengtype.c: Likewise.
+ * reload1.c: Likewise.
+ * sched-rgn.c: Likewise.
+ * stmt.c: Likewise.
+ * stor-layout.c: Likewise.
+ * timevar.c: Likewise.
+ * toplev.c: Likewise.
+ * tree.h: Likewise.
+ * varasm.c: Likewise.
+ * config/fr30/fr30.md: Likewise.
+ * config/i386/i386.c: Likewise.
+ * config/ia64/ia64.c: Likewise.
+ * config/pa/pa.c: Likewise.
+
+2002-12-18 Roger Sayle <roger@eyesopen.com>
+
+ * basic-block.h (flow_bb_inside_loop_p): Correct prototype.
+
+2002-12-18 Aldy Hernandez <aldyh@redhat.com>
+
+ PR 8551
+ * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
+ macro.
+ (vec_cmplt C++ functions): Reverse arguments.
+
+2002-12-18 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/t-rs6000: Move contents to t-fprules,
+ add rules for dependencies of rs6000.o and to build rs6000-c.o
+ * config/rs6000/t-fprules: New file from t-rs6000.
+ * config/rs6000/t-beos: Remove soft-fp rules.
+ * config/rs6000/t-ppccomm: Likewise.
+ * config/rs6000/t-newas: Likewise.
+ * config/rs6000/t-rs6000-c-rule: Delete.
+ * config.gcc: Use t-fprules for rs6000/ ports when appropriate.
+ Use t-rs6000 for all rs6000/ ports instead of t-rs6000-c-rule.
+ Create generic Darwin rules.
+
+ * gengenrtl.c (gencode): Delete unnecessary rtl_obstack declaration.
+
+2002-12-18 Doug Evans <dje@sebabeach.org>
+
+ * m32r/m32r.c (addr24_operand): Fix arg to CONSTANT_POOL_ADDRESS_P
+ and LIT_NAME_P.
+ (move_src_operand): Remove compile-time warning.
+ * m32r/m32r.h (ROUND_ADVANCE_ARG): Ditto.
+
+2002-12-18 Jason Merrill <jason@redhat.com>
+
+ * unwind-dw2-fde.c (frame_downheap): Split out from...
+ (frame_heapsort): Here.
+
+2002-12-17 Jason Merrill <jason@redhat.com>
+
+ * tree.c (make_node): Don't set TREE_TYPE on 's' class nodes.
+ (build1): Always set TREE_SIDE_EFFECTS on 's' class nodes.
+
+ * gcc.c (do_spec_1) ['W']: End any pending argument from the braces.
+
+ * calls.c (expand_call): Don't try to be clever about expanding
+ the return slot address.
+
+2002-12-18 Kaz kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/linux.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC):
+ Define.
+
+2002-12-17 Jason Merrill <jason@redhat.com>
+
+ * genmultilib: Use 'cd ./foo'.
+
+2002-12-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/c-tree.texi: Restore deliberate spelling mistakes.
+
+2002-12-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/c-tree.texi: Fix typos and follow spelling conventions.
+ * doc/cpp.texi: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/gty.texi: Likewise.
+ * doc/install.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+ * doc/md.texi: Likewise.
+ * doc/passes.texi: Likewise.
+ * doc/rtl.texi: Likewise.
+ * doc/sourcebuild.texi: Likewise.
+ * doc/tm.texi: Likewise.
+
+2002-12-17 Jerry Quinn <jlquinn@optonline.net>
+
+ * doc/invoke.texi: Minor spelling and grammar fixes.
+
+2002-12-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_output_constant_pool): Replace
+ ASM_OUTPUT_INTERNAL_LABEL by (*targetm.asm_out.internal_label).
+
+Tue Dec 17 09:47:57 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * convert.c (convert_to_real): Disable function transformation for
+ now.
+
+2002-12-16 Geoffrey Keating <geoffk@apple.com>
+
+ * gcc.c (handle_braces): Allow '@' as a switch name.
+
+2002-12-16 Jason Merrill <jason@redhat.com>
+
+ * calls.c (expand_call): Handle CALL_EXPR_HAS_RETURN_SLOT_ADDR
+ with special struct-return ABIs.
+
+ * c-semantics.c (add_scope_stmt): Abort if the end SCOPE_STMT
+ doesn't match the begin SCOPE_STMT in partialness.
+
+2002-12-16 Geoffrey Keating <geoffk@apple.com>
+
+ * genmultilib: Create temporary files in unique subdirectory.
+
+ * gcc.c (validate_switches): Allow '@' as a switch name.
+
+2002-12-16 Loren J. Rittle <ljrittle@acm.org>
+
+ * Makefile.in (gcov-iov.h): Improve portability.
+
+Mon Dec 16 23:39:19 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Do not use qpword on API_N32/not
+ gas
+ * mips.md (tablejump insn): Likewise.
+
+2002-12-16 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/include/gcc-common.texi: Change version number to 3.4.
+
+2002-12-16 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/fixlib.h: add: #include <signal.h>
+ * fixinc/fixincl.c: remove: #include <signal.h>
+
+Mon Dec 16 17:20:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (EXTRA_CONSTRAINT_Z): New macro.
+ (EXTRA_CONSTRAINT): Use it.
+ * sh.md (anddi3): Use 'Z' constraint for alternative 2.
+
+2002-12-15 Zack Weinberg <zack@codesourcery.com>
+
+ * config.gcc (need_64bit_hwint): New variable.
+ (alpha*-*-*, x86_64-*-*, ia64-*-*, mips*-*-*, powerpc*-*-*,
+ mmix-knuth-mmixware, rs6000*-*-*, sparc64*-*-*, s390*-*-*,
+ sh*-*-*, hppa*64*-*-linux, parisc*64*-*-linux, hppa*64*-*-hpux11*,
+ sparcv9-*-solaris2*, sparc*-*-solaris2.[789], ultrasparc-*-freebsd*):
+ Set it.
+ (powerpc*-*-darwin*): Unset it.
+ (alpha-*-interix, alpha64-dec-*vms*, i?86-*-interix3*,
+ i?86-*-interix*, sparc64-*-openbsd*): Remove references to
+ deleted/nonexistent xm-*.h headers.
+ * configure.in: AC_DEFINE NEED_64BIT_HOST_WIDE_INT if the
+ target set need_64bit_hwint in config.gcc.
+ * configure, config.in: Regenerate.
+
+ * hwint.h: Overhaul. Don't bother trying int for
+ HOST_WIDE_INT. Do try __int64 if long is not enough. Base
+ decision to force 64-bit HOST_WIDE_INT on
+ NEED_64BIT_HOST_WIDE_INT, not (MAX_)LONG_TYPE_SIZE which is
+ not visible at this point. Don't allow prior definition of
+ any macro defined by this file.
+
+ * config/alpha/xm-vms.h: Don't define HOST_WIDE_INT or
+ HOST_BITS_PER_WIDE_INT.
+ * config/c4x/c4x.h: Adjust redefinition of
+ HOST_WIDE_INT_PRINT_HEX to match changes to hwint.h.
+ * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms64.h,
+ config/i386/xm-i386-interix.h: Delete file.
+
+2002-12-14 Rodney Brown <rbrown64@csc.com.au>
+ John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (output_millicode_call): Convert ASM_OUTPUT_INTERNAL_LABEL.
+ * pa64-hpux.h (ASM_OUTPUT_INTERNAL_LABEL): Delete define.
+
+2002-12-14 Zack Weinberg <zack@codesourcery.com>
+
+ * mkconfig.sh: Correct comment. Add copyright boilerplate.
+
+2002-12-14 Zack Weinberg <zack@codesourcery.com>
+
+ * config/t-darwin, config/arm/t-pe, config/arm/t-strongarm-pe,
+ config/c4x/t-c4x, config/i370/t-i370, config/i386/t-cygwin,
+ config/i386/t-interix, config/i960/t-960bare, config/ia64/t-ia64,
+ config/rs6000/t-rs6000-c-rule, config/sparc/t-sol2,
+ config/v850/t-v850: Correct dependencies and normalize
+ compilation commands for files that include coretypes.h and tm.h.
+
+ * config/sparc/gmon-sol2.c: Include tconfig.h and tsystem.h,
+ not config.h and system.h.
+
+Sat Dec 14 20:43:41 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (flags_reg_operand): New function.
+ * i386.h (PREDICATE_CODES): Add flags_reg_operand.
+ * i386.md (cmov splitter, movqicc): Use new predicate.
+
+Sat Dec 14 17:03:17 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movqicc splitter): Fix template.
+
+2002-12-13 Jason Merrill <jason@redhat.com>
+
+ * tree.h (CALL_EXPR_HAS_RETURN_SLOT_ADDR): New macro.
+ * calls.c (expand_call): Handle it.
+ * tree-inline.c (struct inline_data): Remove target_exprs field.
+ (optimize_inline_calls): Don't initialize it.
+ (expand_call_inline): Don't modify it. Handle
+ CALL_EXPR_HAS_RETURN_SLOT_ADDR.
+ (declare_return_variable): Take return slot addr.
+ * langhooks.h (copy_res_decl_for_inlining): Change target_exprs parm
+ to return_slot_addr.
+ * langhooks-def.h, langhooks.c: Adjust.
+ * explow.c (maybe_set_unchanging): Don't set RTX_UNCHANGING_P for
+ a decl with no DECL_INITIAL.
+
+ * expr.c (expand_expr): Don't discard the target of a call which
+ returns in memory.
+
+2002-12-13 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppinit.c (path_include): Take an environment variable name.
+ Tidy up.
+ (init_standard_includes): Simplify environment handling, and
+ move to ...
+ (cpp_read_main_file): ...here as -nostdinc should not affect
+ environment variable paths.
+
+2002-12-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (output_millicode_call): Correct typo.
+ (output_call): Likewise.
+
+Fri Dec 13 21:07:18 2002 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.c (print_operand) <case N>: Check
+ operand's range. Print value directly, without aid from
+ output_address.
+ <case U>: New.
+ <case S>: Make sure argument to fprintf has the right type.
+ * config/mn10300/mn10300.h (OK_FOR_T): New macro.
+ (EXTRA_CONSTRAINT): Adjust.
+ * config/mn10300/mn10300.md: Add new all-QImode pattern for
+ bclr. Use %U for immediate operands of bset and bclr.
+ (iorqi3): New expand, with insns for AM33 and mn10300.
+
+Fri Dec 13 16:02:27 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (sh_register_operand): New function.
+ (prepare_move_operands): Use it.
+ * sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
+ * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
+ (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
+ (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
+ (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
+ (movv2si_i): Likewise.
+
+2002-12-13 Jim Wilson <wilson@redhat.com>
+
+ * doc/extend.texi (Complex Numbers): Update info on debug info.
+
+2002-12-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (addhi3_h8300): Remove the last
+ alternative.
+
+2002-12-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * hooks.h (hook_tree_tree_bool_false): Declare
+ hook_bool_tree_tree_false instead.
+
+2002-12-12 Devang Patel <dpatel@apple.com>
+
+ * doc/invoke.texi: Document Darwin linker options, -bundle
+ -bind_at_load, -all_load and -arch_errors_fatal
+
+2002-12-12 Jim Wilson <wilson@redhat.com>
+
+ * dbxout.c (dbxout_fptype_value): New.
+ (dbxout_type, case COMPLEX_TYPE): Call it. Use 'R' instead of 'r'.
+
+2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-decl.c: Fix a comment typo.
+ * cfg.c: Likewise.
+ * cfgcleanup.c: Likewise.
+ * cfglayout.c: Likewise.
+ * cfgrtl.c: Likewise.
+ * c-typeck.c: Likewise.
+ * dominance.c: Likewise.
+ * dwarf2asm.c: Likewise.
+ * dwarfout.c: Likewise.
+ * expmed.c: Likewise.
+ * expr.c: Likewise.
+ * final.c: Likewise.
+ * flow.c: Likewise.
+ * function.c: Likewise.
+ * gcc.c: Likewise.
+ * genautomata.c: Likewise.
+ * integrate.c: Likewise.
+ * loop.c: Likewise.
+ * loop.h: Likewise.
+ * output.h: Likewise.
+ * profile.c: Likewise.
+ * ra.h: Likewise.
+ * reload1.c: Likewise.
+ * reload.c: Likewise.
+ * sched-rgn.c: Likewise.
+ * stmt.c: Likewise.
+ * tree.h: Likewise.
+ * vmsdbgout.c: Likewise.
+
+2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Add a new peephole2.
+
+2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (a peephole2): Accept a constant
+ that's accepted by CONST_OK_FOR_J.
+
+2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (CONST_OK_FOR_J): New.
+ (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
+ * config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
+ (*addhi_h8300hs): Likewise.
+
+Thu Dec 12 16:24:59 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (reg_class_from_letter): No longer const. Add 'e' entry.
+ (sh_register_move_cost): Add clause for SImode fp-fp moves.
+ Increase cost for moves involving multiple general purpose registers.
+ * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
+ TARGET_FMOVD.
+ (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
+ registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
+ (enum reg_class reg_class_from_letter): No longer const.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
+ REGCLASS_HAS_GENERAL_REG.
+ Handle SImode moves from/to fp registers.
+ ! TARGET_SHMEDIA && TARGET_FMOVD.
+ (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
+ * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
+
+2002-12-12 Andreas Schwab <schwab@suse.de>
+
+ * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
+ change and some warnings.
+
+2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/md.texi (pushm): Fix a typo.
+
+2002-12-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.c (mips_output_conditional_branch): Support
+ PIC-safe out-of-range branch and branch-likely.
+ * config/mips/mips.md (attr length): PIC-safe out-of-range
+ branches are longer.
+ ("jump"): Support PIC-safe out-of-range-for-branch jumps. Remove
+ unused code to support indirect jumps.
+
+2002-12-11 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (GTFILES): Add $(host_xm_file_list) and
+ $(tm_file_list).
+
+2002-12-11 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/t-rs6000-c-rule: Add coretypes.h $(TM_H) dependencies.
+
+Wed Dec 11 15:20:45 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (cmove splitters): Avoid creation of unnecesary subregs.
+
+2002-12-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
+ (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
+ BIGGEST_ALIGNMENT.
+ (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
+ (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
+
+2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Correct dump file names.
+
+2002-12-09 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
+ name to globalize_label or assemble_name.
+
+Wed Dec 11 20:15:19 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
+ if not TARGET_SHMEDIA.
+
+Wed Dec 11 19:05:05 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (REG_CLASS_HAS_FP_REG): New.
+ (REGISTER_MOVE_COST) Use it. Put body into a function and
+ move it into:
+ * sh.c (sh_register_move_cost).
+ * sh-protos.h (sh_register_move_cost): Declare.
+
+ * sh.c (sh_expand_builtin): Abort for unexpected nop values.
+ (sh_adjust_cost): Always return a value.
+
+Wed Dec 11 18:39:52 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (REG_CLASS_HAS_GENERAL_REG): New.
+ (REGISTER_MOVE_COST): Use it.
+
+2002-12-11 Richard Henderson <rth@redhat.com>
+
+ * tree.h (MODULE_LOCAL_P): Kill.
+ * varasm.c (default_binds_local_p_1): Use decl_visibility instead.
+
+2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (two define_peephole2): New.
+
+2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
+ (CONST_OK_FOR_K): Likewise.
+ (CONST_OK_FOR_M): Likewise.
+ (CONST_OK_FOR_LETTER_P): Do not use the above macros.
+
+2002-12-11 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.c (builtin_define_type_max): Handle unsigned
+ types too.
+
+2002-12-10 David Edelsohn <edelsohn@gnu.org>
+
+ * haifa-sched.c (rank_for_schedule): Correct style.
+
+2002-12-10 Per Bothner <pbothner@apple.com>
+
+ * cpplib.h (struct cpp_hashnode): Split a non-portably-signed field
+ directive_index into an unsigned field and a new is_directive field.
+ * cppinit.c (mark_named_operators): Update to set new fields.
+ * cpplex.c (_cpp_lex_direct): Now directive_field is unsigned.
+ * cpplib.c [_cpp_handle_directive]: Test is_directive field.
+ No longer need to subtract 1 from directive_index.
+ (_cpp_init_directives): No longer need to add 1 to directive_index.
+ * cpptrad.c (scan_out_logical_line): Use is_directive field.
+
+2002-12-10 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (fold_builtin): Remove -funsafe-math-optimizations
+ check for evaluating sqrt of a constant at compile time.
+ * simplify-rtx.c (simplify_unary_operation): Likewise.
+
+2002-12-10 Janis Johnson <janis187@us.ibm.com>
+
+ PR other/8882
+ * doc/tm.texi (PUSH_ARGS): Remove misplaced line.
+
+2002-12-10 Devang Patel <dpatel@appple.com>
+
+ * config/darwin.h(LINK_SPEC): Add darwin specific linker options.
+ * doc/invoke.texi: Add new "Darwin Options" section.
+
+2002-12-10 Jim Wilson <wilson@redhat.com>
+
+ * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
+ memory.
+
+2002-12-10 Andrew Haley <aph@redhat.com>
+
+ * cse.c (cse_insn): Don't cse past a basic block boundary.
+
+2002-12-10 Jakub Jelinek <jakub@redhat.com>
+
+ * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
+ -shared.
+ * config/alpha/linux-elf.h (LIB_SPEC): Likewise.
+ * config/alpha/linux.h (LIB_SPEC): Likewise.
+ * config/arm/linux-elf.h (LIB_SPEC): Likewise.
+ * config/pa/pa-linux.h (LIB_SPEC): Likewise.
+ * config/sparc/linux.h (LIB_SPEC): Likewise.
+ * config/sparc/linux64.h (LIB_SPEC): Likewise.
+
+2002-12-09 Larin Hennessy <larin@science.oregonstate.edu>
+
+ * doc/invoke.texi: Document UltraSparc III option.
+
+2002-12-09 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
+ __tune_pentium2__ and __tune_pentium3__ as necessary.
+
+2002-12-09 Richard Henderson <rth@redhat.com>
+
+ * target.h (gcc_target): Add cannot_force_const_mem.
+ * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
+ (TARGET_INITIALIZER): Add it.
+ * varasm.c (force_const_mem): Fail if cannot_force_const_mem.
+ * expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
+ * reload1.c (reload): Likewise.
+ * hooks.c (hook_bool_rtx_false): New.
+ * hooks.h: Declare it.
+
+ * config/i386/i386.c (ix86_cannot_force_const_mem): New.
+ (TARGET_CANNOT_FORCE_CONST_MEM): New.
+ (ix86_expand_move): Remove de-const-pooling hack.
+
+Mon Dec 9 21:33:38 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (dump_file): Fix order to match reality.
+
+2002-12-08 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
+ (store_multiple): Likewise.
+
+2002-12-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
+ function pointers in page 0.
+
+2002-12-09 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
+ definition
+ (MEMBER_TYPE_FORCES_BLK): Move.
+ * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
+ aggregate arguments.
+ (ia64_function_value): Use PARALLEL to return aggregate values.
+
+2002-12-09 Steve Ellcey <sje@cup.hp.com>
+
+ * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
+ * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
+ * calls.c (store_unaligned_arguments_into_pseudos) Remove
+ FUNCTION_ARG_REG_LITTLE_ENDIAN.
+ * stmt.c (expand_return): Ditto.
+ * expr.c (move_block_from_reg): Ditto.
+ (copy_blkmode_from_reg): Ditto.
+ * expmed.c (store_bit_field): Ditto.
+
+2002-12-09 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * config.gcc: Added tic4x-* target as an alias to c4x-*
+
+Sun Dec 8 14:57:39 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Use force_operand instead of
+ constructing insn directly.
+
+2002-12-06 Per Bothner <pbothner@apple.com>
+
+ * cpplib.h (struct cpp_hashnode): Change field directive_index from
+ char to an int bit-field, for hosts where char is unsigned.
+
+2002-12-07 Roger Sayle <roger@eyesopen.com>
+ Richard Henderson <rth@redhat.com>
+
+ * real.c (ieee_extended_motorola_format,
+ ieee_extended_intel_96_format, ieee_extended_intel_128_format,
+ ieee_quad_format, vax_d_format, vax_g_format, i370_double_format):
+ Provide appropriate values for new signbit field.
+
+2002-12-07 Roger Sayle <roger@eyesopen.com>
+
+ * real.h (real_format): Add signbit field.
+ * real.c (ieee_single_format, ieee_double_format,
+ ieee_extended_motorola_format, ieee_extended_intel_96_format,
+ ieee_extended_intel_128_format, ibm_extended_format,
+ ieee_quad_format, vax_f_format, vax_d_format,
+ vax_g_format, i370_single_format, i370_double_format,
+ c4x_single_format, c4x_extended_format, real_internal_format):
+ Provide suitable signbit value, or -1 to avoid bit twiddling.
+
+ * optabs.c (expand_unop): Try implementing negation of
+ floating point modes by flipping the sign bit.
+ (expand_abs): Try implementing abs of floating point modes
+ by clearing the sign bit.
+
+Sat Dec 7 22:29:47 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Use force_operand instead
+ of constructing insn directly.
+
+2002-12-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*iorhi_shift_8): New.
+
+2002-12-06 Bernd Schmidt <bernds@redhat.com>
+
+ * doc/invoke.texi: Document FRV port options.
+ * doc/md.texi: Document FRV register classes.
+
+2002-12-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi (Configuration): Improve description of cases
+ where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
+
+2002-12-06 Per Bothner <pbothner@apple.com>
+
+ * cpplib.h (NODE_MACRO_ARG): New flag.
+ (struct cpp_hashnode): Give _cpp_hashnode_value tag to value union.
+ Remove value.operator field. Move arg_index field to value union.
+ (directive_index): Make signed, since also used for C++ operators.
+ * cppmacro.c (_cpp_save_parameter): Use NODE_MACRO_ARG flag to
+ check for duplicate parameter. Set NODE_MACRO_ARG flag.
+ Save node->value, and set node->value.arg_index.
+ (_cpp_create_definition): For each paramater, restore node->value.
+ (lex_expansion_token): Use NODE_MACRO_ARG flag, and moved arg_index.
+ * cpptrad.c (scan_out_logical_line): Likewise.
+ (scan_out_logical_line): Check for directive > 0.
+ * cpplib.c (cpp_handle_directive): Likewise.
+ * cpplex.c (_cpp_lex_direct): Update as value.operator is replaced
+ by negative of directive_index.
+ * cppinit.c (mark_named_operators): Likewise.
+
+ * hashtable.h (struct ht_identifier): Swap fields, for better packing.
+
+2002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
+
+ * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
+ FPU.
+ (push): Generate push_fpscr.
+ (pop): Generate pop_fpscr.
+ * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
+ (fpu_switch): Add alternative to push fpscr. Enable for TARGET_SH3E.
+
+Fri Dec 6 19:36:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (dump_table): DImode pool constants need only 32 bit alignment.
+ DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
+
+Fri Dec 6 19:17:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (movdi_i): Name. Remove inappropriate comment.
+
+Fri Dec 6 15:44:46 2002 J"orn Rennecke <joern.rennecke@superh.com>
+ Merged from basic improvements branch (excerpt):
+
+ 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
+ * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
+
+2002-12-06 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
+
+Thu Dec 5 16:58:25 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (dimode peep2s): Re-add "&& 1".
+
+Thu Dec 5 14:10:15 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_prologue): Add comment, do not use
+ fast prologues for cold and normal functions.
+
+Thu Dec 5 00:52:37 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_rep_movl_optimal): New variable.
+ (ix86_expand_movstr, ix86_expand_clrstr): Use TARGET_REP_MOVL_OPTIMAL
+ * i386.h (TARGET_REP_MOVL_OPTIMAL): New macro.
+
+ * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
+ absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
+ neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
+ generate unnecesary subregs.
+
+2002-12-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
+ * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
+
+2002-12-05 Dale Johannesen <dalej@apple.com>
+
+ * tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR.
+
+2002-12-05 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
+ PROFILE_HOOK.
+ * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
+
+2002-12-05 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.h (__ev_mwlufi): Remove.
+ (__ev_mwlufia): Remove.
+ (__ev_mwlumfaaw): Remove.
+ (__ev_mwlusfaaw): Remove.
+ (__ev_mwlumfanw): Remove.
+ (__ev_mwlusfanw): Remove.
+
+2002-12-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*andorsi3_shift_8): New.
+
+2002-12-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
+ lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
+ (get_shift_alg): Return optimal assembly instructions for the
+ shifts mentioned above.
+
+Wed Dec 4 11:53:07 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Force operand into register for QImode
+ condtiional moves.
+
+2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_init_once): Do not use loop to
+ implement ashiftrt:HI by 13 bits on H8S.
+
+2002-12-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
+ * pa.md (canonicalize_funcptr_for_compare): Output library call to
+ canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
+ * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
+ CTOR_LIST_BEGIN): New defines.
+ * pa/t-linux (LIB2FUNCS_EXTRA): New define.
+ (fptr.c): Add make rules.
+
+2002-12-04 Geoffrey Keating <geoffk@apple.com>
+
+ * combine.c (combine_simplify_rtx): Add new canonicalizations.
+ * doc/md.texi (Insn Canonicalizations): Document new
+ canonicalizations for multiply/add combinations.
+ * config/rs6000/rs6000.md: Add and modify floating add/multiply
+ patterns to ensure they're used whenever they can be.
+
+2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c: Update the comments related to shifts.
+
+2002-12-04 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md (get_fnaddr): Correct length attribute.
+
+2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*extzv_8_8): New.
+ (*extzv_8_16): Likewise.
+
+2002-12-04 Jason Merrill <jason@redhat.com>
+
+ PR c++/8461, c++/8625
+ * integrate.c (copy_decl_for_inlining): Handle explicit invisible
+ references.
+ * tree-inline.c (initialize_inlined_parameters): Likewise.
+
+ * tree.c (variably_modified_type_p): Just return an error_mark_node.
+
+2002-12-04 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md (get_fnaddr): Avoid placing an "la"
+ macro instruction in a branch delay slot, to avoid assembler
+ warnings.
+
+2002-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/7622
+ * c-semantics (genrtl_scope_stmt): Do not output inlined
+ nested functions that contain no code.
+
+Wed Dec 4 15:20:54 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (force_nonfallthru_and_redirect): Allow abnormal edge
+ to be forced into nonfallthru.
+
+2002-12-03 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
+
+2002-12-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md (*movv1di_const0): New pattern.
+
+2002-12-03 Richard Henderson <rth@redhat.com>
+
+ * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
+
+2002-12-03 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
+ Initialize tmp.using_obstack to 0.
+
+2002-12-03 Andreas Schwab <schwab@suse.de>
+
+ * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
+ (EH_RETURN_STACKADJ_RTX): Define.
+ (EH_RETURN_HANDLER_RTX): Define.
+ (ASM_PREFERRED_EH_DATA_FORMAT): Define.
+ * config/m68k/m68k.c (m68k_save_reg): New function. Handle eh
+ registers and don't save fixed registers.
+ (m68k_output_function_prologue): Use it.
+ (use_return_insn): Likewise.
+ (m68k_output_function_epilogue): Likewise.
+
+2002-12-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (single_one_operand): Fix a warning.
+ (single_zero_operand): Likewise.
+
+2002-12-02 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in configure configure.in dummy-conditions.c fix-header.c
+ gcov-iov.c gen-protos.c genattr.c genattrtab.c genautomata.c
+ gencheck.c gencodes.c genconditions.c genconfig.c genconstants.c
+ genemit.c genextract.c genflags.c gengenrtl.c gengtype-lex.l
+ gengtype-yacc.y gengtype.c genopinit.c genoutput.c genpeep.c
+ genpreds.c genrecog.c gensupport.c mkconfig.sh read-rtl.c
+ scan-decls.c scan.c config/sh/sh.h doc/configfiles.texi
+ doc/install-old.texi: Replace hconfig.h with bconfig.h.
+ * Makefile.in: Replace HCONFIG_H with BCONFIG_H.
+
+2002-12-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.md (ffssi): Convert to expander.
+ (ffsdi): Likewise.
+ (cntlzw2, cntlzd2): New patterns.
+
+2002-12-02 H.J. Lu <hjl@gnu.org>
+
+ * config.gcc (mips*-*-netbsd*): Remove mips/t-netbsd.
+ (mips*-*-linux*): Remove mips/t-linux.
+
+Mon Dec 2 19:26:30 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Avoid overflow.
+
+2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (dosize): Replace argument op with
+ sign.
+ (h8300_output_function_prologue): Update the call to dosize.
+ (h8300_output_function_epilogue): Likewise.
+
+2002-12-02 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
+
+2002-12-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
+
+ * configure.in: Use "missing" script to generate warning if
+ flex or bison programs not found, instead of invoking "false".
+ * configure: Rebuilt.
+
+Mon Dec 2 20:28:48 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
+
+Mon Dec 2 19:42:52 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Avoid overflow.
+
+2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
+ (push): Likewise.
+ (pop): Likewise.
+ (h8300_output_function_prologue): Likewise.
+ (h8300_output_function_epilogue): Likewise.
+
+Mon Dec 2 14:43:22 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * expmed.c (store_bit_field): Use int_mode_for_mode to find
+ corresponding mode of non-integer mode, unless it is VOIDmode.
+
+2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (stm_h8300s_2): New.
+ (stm_h8300s_3): Likewise.
+ (stm_h8300s_4): Likewise.
+ (five define_peephole2): Likewise.
+
+2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ra-build.c: Fix a comment typo.
+
+Sun Dec 1 16:50:47 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): fix
+ reversed BRANCH_COST test; be curefull about infinite recursion.
+
+2002-12-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_output_function_prologue):
+ Remove variable idx.
+ (h8300_output_function_epilogue): Likewise.
+
+2002-12-01 Zack Weinberg <zack@codesourcery.com>
+
+ * config/frv/xm-frv.h: Delete, unnecessary.
+
+2002-12-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Add comments for define_peephole2.
+
+2002-12-01 Mark Mitchell <mark@codesourcery.com>
+
+ * builtin-types.def (BT_SIZE): Use size_type_node.
+ * builtins.c (fold_builtin): Make the builtin strlen returns a
+ size_t, not a sizetype.
+ * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
+ c_size_type_node.
+ (c_alignof_expr): Likewise.
+ (c_common_nodes_and_builtins): Likewise.
+ * c-common.h (CTI_C_SIZE_TYPE): Remove.
+ (c_size_type_node): Likewise.
+ * c-format.c (T_ST): Use size_type_node, not c_size_type_node.
+ * tree.h (TI_SIZE_TYPE): New enumeral.
+ (size_type_node): Likewise.
+
+2002-11-30 Zack Weinberg <zack@codesourcery.com>
+
+ * configure.in: Don't put ${tm_file} into host_xm_file,
+ build_xm_file, or xm_file. Do put tm-preds.h into tm_p_file.
+ Take location of tm-preds.h into account when calculating
+ tm_p_file_list.
+ * configure: Regenerate.
+ * mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
+ arguments. Do not provide rtx, rtvec, tree, or GTY here.
+ Remove special case code for tm_p.h and *config.h; add new
+ special case code for tm.h and tconfig.h. Clean up a bit.
+
+ * Makefile.in (tm_file, tm_file_list): New variables set from
+ @-substitutions.
+ (GCONFIG_H): Deleted.
+ (GTM_H, TM_H): New.
+ (CONFIG_H): Is now just config.h $(host_xm_file_list).
+ (TM_P_H): Move up with the other mkconfig.sh-generated
+ headers; don't mention tm-preds.h explicitly.
+ (tm.h, cs-tm.h): New rule.
+ (cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
+ invocations of mkconfig.sh for changes to that program.
+ (mostlyclean): Delete print-rtl1.c.
+ (clean): Delete tm.h.
+ Update dependencies for the files listed below.
+
+ * mklibgcc.in: Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.
+
+ * coretypes.h: New file.
+ * system.h: #define malloc to xmalloc and realloc to xrealloc
+ when FLEX_SCANNER or YYBISON is defined, independent of the
+ value of GCC_VERSION.
+ * alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
+ c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
+ c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
+ c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
+ c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
+ cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
+ cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
+ cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
+ cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
+ cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
+ debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
+ dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
+ emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
+ expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
+ function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
+ gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
+ gencheck.c, gencodes.c, genconditions.c, genconfig.c,
+ genconstants.c, genemit.c, genextract.c, genflags.c,
+ gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
+ genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
+ gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
+ ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
+ hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
+ lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
+ main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
+ optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
+ print-tree.c, profile.c, protoize.c, ra-build.c,
+ ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
+ real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
+ regrename.c, reload.c, reload1.c, reorg.c, resource.c,
+ rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
+ scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
+ sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
+ ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
+ tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
+ tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
+ xcoffout.c, config/darwin-c.c, config/darwin.c,
+ config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
+ config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
+ config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
+ config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
+ config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
+ config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
+ config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
+ config/i960/i960-c.c, config/i960/i960.c,
+ config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
+ config/m32r/m32r.c, config/m68hc11/m68hc11.c,
+ config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
+ config/mips/irix6-libc-compat.c, config/mips/mips.c,
+ config/mmix/mmix.c, config/mn10200/mn10200.c,
+ config/mn10300/mn10300.c, config/ns32k/ns32k.c,
+ config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
+ config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
+ config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
+ config/sparc/sparc.c, config/stormy16/stormy16.c,
+ config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
+ config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
+ Include coretypes.h and tm.h.
+
+ * genattrtab.c, genconditions.c, genemit.c, genextract.c,
+ gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
+ genrecog.c: Include coretypes.h and tm.h from the file
+ generated by this program.
+
+ * unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
+ unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
+ coretypes.h and tm.h, and tsystem.h when not already included.
+ No need to include stddef.h nor stdlib.h.
+
+ * fixinc/fixlib.h: Include coretypes.h and tm.h. Do not
+ include auto-host.h or ansidecl.h/
+ * fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
+ * fixinc/procopen.c: Include server.h after fixlib.h. Do not
+ include auto-host.h, ansidecl.h, or system.h.
+ * fixinc/server.c: Likewise. Also, do not include signal.h,
+ and do not redefine volatile.
+
+Sat Nov 30 17:16:46 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movdf_integer): Always enable in 64bit.
+ (movdf_nointeger): Always disable in 64bit.
+
+2002-11-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
+ pseudo register number plus 1.
+
+Fri Nov 29 20:10:56 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * expmed.c (store_bit_field): Use int_mode_for_mode to find
+ corresponding mode of non-integer mode, unless it is VOIDmode.
+
+2002-11-29 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * cpplib.c (_cpp_test_assertion): Default *value to 0.
+
+ * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
+
+2002-11-29 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/t-crtstuff: New target makefile fragment.
+ * config.gcc [s390-*-linux, s390x-*-linux]: Use it.
+
+2002-11-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (movsi_h8300hs): Change the order of
+ alternatives to correct the length when the memory operand is
+ either pre_dec or post_inc.
+
+2002-11-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (an anonymous pattern): Give an
+ internal name *tst_extzv_bitqi_1_n.
+ Accept bit_operand instead of bit_memory_operand.
+ Do not accept bit tests with the MSB.
+ (*tst_extzv_memqi_1_n): New.
+
+Thu Nov 28 23:56:24 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Add copy_rtx to avoid invalid RTX
+ sharing when operand is SUBREG.
+
+Thu Nov 28 08:57:26 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * athlon.md (athlon-decodev): New reservation unit.
+ (athlon-direct0): New reservation.
+ (athlon-vector): New use athlon-decodev.
+ (athlon-double, athlon-direct): Better model.
+ (athlon_imul_k8): Use athlon-direct0.
+ (athlon_movlpd_load): New insn reservation.
+
+2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
+ Fix a comment typo.
+ (h8300_tiny_constant_address_p): Likewise.
+
+2002-11-28 Michael Matz <matz@suse.de>
+
+ * doc/passes.texi: Mention the other register allocator.
+
+2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (6 new peephole2 patterns): New.
+
+2002-11-28 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
+ * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
+ * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
+
+2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_and_costs): New.
+ * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
+ * config/h8300/h8300-protos.h: Add a prototype for
+ h8300_and_costs.
+
+Wed Nov 27 20:34:13 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_sse_partial_regs_for_cvtsd2ss): New.
+ * i386.h (x86_sse_partial_regs_for_cvtsd2ss): Declare.
+ (TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS): New macro.
+ * i386.md (truncdfsf patterns and splitters): Use
+ TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS
+
+2002-11-27 Zack Weinberg <zack@codesourcery.com>
+
+ * config/rs6000/rs6000.c (altivec_init_builtins): Make the
+ pointer argument in the prototypes of the following builtins
+ be (const TYPE *) rather than (TYPE *):
+ + __builtin_altivec_ld_internal_4sf
+ + __builtin_altivec_ld_internal_4si
+ + __builtin_altivec_ld_internal_8hi
+ + __builtin_altivec_ld_internal_16qi
+ + __builtin_altivec_lvsl
+ + __builtin_altivec_lvsr
+ + __builtin_altivec_lvebx
+ + __builtin_altivec_lvehx
+ + __builtin_altivec_lvewx
+ + __builtin_altivec_lvxl
+ + __builtin_altivec_lvx
+ + __builtin_altivec_dst
+ + __builtin_altivec_dstt
+ + __builtin_altivec_dstst
+ + __builtin_altivec_dststt
+
+2002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * except.c (default_exception_section): Move variable into the
+ scope where it is used.
+
+2002-11-27 Krister Walfridsson <cato@df.lth.se>
+
+ * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
+ correct version.
+
+2002-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
+
+2002-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_shift_costs): New.
+ * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
+ * config/h8300/h8300-protos.h: Add a prototype for
+ h8300_shift_costs.
+
+2002-11-27 Jim Wilson <wilson@redhat.com>
+
+ * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
+ in output template.
+
+2002-11-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
+
+ * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
+ * config/i386/winnt.c (i386_pe_dllexport_name_p): Use
+ DLL_IMPORT_EXPORT_PREFIX, not '@'.
+ (i386_pe_dllimport_name_p): Likewise.
+ (i386_pe_mark_dllexport): Likewise.
+ (i386_pe_mark_dllimport): Likewise.
+ (i386_pe_encode_section_info): Likewise.
+ (i386_pe_strip_name_encoding): Likewise.
+
+2002-11-27 Richard Henderson <rth@redhat.com>
+
+ * mkmap-symver.awk (BEGIN): Set sawsymbol false.
+ (nm && NF == 3): Set sawsymbol true.
+ (END): Exit if no symbols seen.
+ (output): Fix map syntax error if no globals for the version.
+
+Wed Nov 27 14:45:46 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * builtins.def (DEF_C99_BUILTIN): Fix.
+
+2002-11-26 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/lib1funcs.asm (FUNC, ENDFUNC0, ENDFUNC): New macros.
+ (all): Add .size and .type information.
+
+Tue Nov 26 22:43:50 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Do not emit lea for short mode on
+ partial_reg_stall target.
+
+Tue Nov 26 22:27:47 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movhicc): Allow general operand.
+ (movqicc): New expander.
+ (movqicc_noc): New pattern.
+ * i386.c (ix86_expand_carry_flag_compare): New function.
+ (ix86_expand_int_movcc): Optimize harder using sbb; support more
+ HImode conversion; support QImode conditional moves
+
+Tue Nov 26 16:30:59 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (FAST_PROLOGUE_INSN_COUNT): Set to 20.
+ (ix86_expand_prologue): Multiply the count by amount of registers to be
+ pushed.
+
+Tue Nov 26 15:55:27 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (override_options): Error about wrong -mcpu on x86-64
+ compilation.
+
+2002-11-26 NIIBE Yutaka <gniibe@m17n.org>
+
+ * config/sh/linux.h (FUNCTION_PROFILER): Implemented.
+
+Tue Nov 26 00:14:20 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386-protos.h (x86_extended_QIreg_mentioned_p,
+ x86_extended_reg_mentioned_p): Declare.
+ * i386.c (extended_reg_mentioned_1): New static function.
+ (x86_extended_QIreg_mentioned_p,
+ x86_extended_reg_mentioned_p): New global functions.
+ * i386.h (REX_SSE_REGNO_P): New macro.
+ * i386.md (prefix_rex): New attribute.
+ (length attribute): Add rex.
+
+2002-11-26 Andrew Haley <aph@redhat.com>
+
+ * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
+ from_Unwind_Find_Enclosing_Function.
+ * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
+ * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
+ * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
+ _Unwind_Find_Enclosing_Function, export @@GCC_3.3.
+ * unwind.h (_Unwind_FindEnclosingFunction): Add.
+
+2002-11-26 Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/s390/s390.c (390_output_constant_pool): Set alignment
+ before label in 64 bit mode, behind otherwise.
+
+2002-11-26 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (handle_visibility_attribute): Accept "default".
+ * tree.h (enum symbol_visibility): New.
+ (decl_visibility): Declare.
+ * target.h (gcc_target.visibility): Take visibility arg as integer.
+ * varasm.c (default_assemble_visibility): Likewise.
+ (decl_visibility): New.
+ (maybe_assemble_visibility): Use it.
+ * output.h (default_assemble_visibility): Update prototype.
+ * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
+ visibility arg as integer.
+ * doc/extend.texi: Document default visibility.
+
+2002-11-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c: Adjust spacing.
+ * config/h8300/h8300.h: Likewise.
+
+2002-11-26 Richard Henderson <rth@redhat.com>
+
+ * hooks.c (hook_bool_void_false, hook_void_tree_int,
+ hook_void_FILEptr_constcharptr): Rename so that the return
+ type is first.
+ (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
+ hook_bool_tree_false): New.
+ * hooks.h: Update.
+ * langhooks-def.h: Update for renames.
+ * target-def.h: Likewise.
+ * tree.c (default_comp_type_attributes,
+ default_set_default_type_attributes, default_insert_attributes,
+ default_function_attribute_inlinable_p,
+ default_ms_bitfield_layout_p): Remove.
+ * tree.h: Update.
+
+2002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa-protos.h (function_value): New prototype.
+ * pa.c (function_value): Use a PARALLEL to return small aggregates on
+ TARGET_64BIT.
+ * pa.h (FUNCTION_VALUE): Use function_value.
+ * pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
+ call_value_internal_reg, sibcall_value_internal_symref,
+ sibcall_value_internal_symref_64bit): Remove =rf constraint on return
+ value.
+
+2002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * expr.c (gen_group_rtx, emit_group_move): New functions.
+ * expr.h (gen_group_rtx, emit_group_move): Prototype.
+ * function.c (expand_function_start): Use gen_group_rtx to create a
+ PARALLEL rtx to hold the return value when the real return rtx is a
+ PARALLEL.
+ (expand_function_end): Use emit_group_move to move the return value
+ from a PARALLEL to the real return registers.
+ * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
+ in PARALLELs.
+
+2002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/t-libc-ok: Fix typo.
+
+2002-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
+ before AC_PROG_CC.
+ * configure: Rebuilt.
+
+2002-11-26 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-decl.c: (start_struct): Commonize flag setting.
+
+2002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
+ * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
+ RS6000_CPU_CPP_ENDIAN_BUILTINS.
+ * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
+
+2002-11-26 Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
+ insns.
+ * config/s390/s390.c (struct machine_function): Introduction of
+ struct machine_function.
+ (s390_output_symbolic_const): Use of cfun.
+ (s390_optimize_prolog): Likewise.
+ (s390_fixup_clobbered_return_reg): Likewise.
+ (s390_frame_info): Likewise.
+ (s390_emit_prologue, s390_emit_epilogue): Likewise.
+ (s390_init_machine_status): New function.
+ (override_options): call s390_init_machine_status.
+ * config/s390/s390-protos.h (s390_output_constant_pool): Changed
+ prototype.
+
+2002-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * varasm.c (output_constant_pool): For pool constants in mergeable
+ section ensure each constant is padded to multiple of entity size.
+
+2002-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * varasm.c (default_exception_section): Move to...
+ * except.c (default_exception_section): ... here. Make
+ .gcc_except_table read-only if it is not expected to have any
+ dynamic relocations and linker handles it.
+ * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
+ if it is not expected to have any dynamic relocations and linker
+ handles it.
+ * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
+ when linking read-only and read-write sections together.
+ * configure, config.in: Rebuilt.
+ * crtstuff.c (EH_FRAME_SECTION_CONST): Define.
+ (__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
+
+Mon Nov 25 18:32:37 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (pushsf_rex64): Fix typo.
+
+2002-11-25 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
+ new function.
+ (__ev_create_ufix32_fs): Same.
+ (__ev_get_sfix32_fs_internal): New.
+ (__ev_get_sfix32_fs): Define to use function.
+ (__ev_get_ufix32_fs_internal): New.
+ (__ev_get_ufix32_fs): Define to use function.
+ (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
+ (__ev_get_lower_ufix32_fs): Same.
+ (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
+ (__ev_get_lower_sfix32_fs): Same.
+ (__ev_set_sfix32_fs_internal): New.
+ (__ev_set_ufix32_fs_internal): New.
+ (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
+ (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
+ (__ev_set_upper_sfix32_fs): Call function.
+ (__ev_set_lower_sfix32_fs): Same.
+ (__ev_set_upper_ufix32_fs): Same.
+ (__ev_set_lower_ufix32_fs): Same.
+
+2002-11-25 Douglas B Rupp <rupp@gnat.com>
+
+ * gcc.c (do_spec_1): Reset delete_this_arg to zero.
+
+2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
+ * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
+ * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
+ defining.
+ * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
+ * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
+
+2002-11-25 Dave Pitts <dpitts@cozx.com>
+
+ * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
+
+2002-11-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (an anonymous pattern): New.
+
+2002-11-25 Richard Henderson <rth@redhat.com>
+
+ * alias.c (find_base_value): Use new_reg_base_value if it's live.
+ (copying_arguments): Make boolean.
+
+2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * gcc.c (static_spec_functions): Add if-exists-else spec
+ function.
+ (if_exists_else_spec_function): New function.
+ * doc/invoke.texi: Document the if-exists-else spec function.
+
+ * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
+ "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
+
+2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
+ "netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to
+ "${tmake_file} rs6000/t-netbsd".
+ * config/rs6000/netbsd.h: Rewrite.
+ * config/rs6000/t-netbsd: New file.
+
+2002-11-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (an anonymous pattern): Relax the
+ condition for the pattern.
+
+2002-11-25 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
+ evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
+ evmwlssfanw, evmwlsmfanw.
+
+ * config/rs6000/rs6000.c (bdesc_2arg): Same.
+
+ * config/rs6000/spe.md: Same for patterns.
+
+2002-11-25 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
+
+ PR c/8639
+ * fold-const.c (extract_muldiv): Don't propagate division unless
+ both arguments are multiples of C.
+
+2002-11-25 Andrew Haley <aph@redhat.com>
+
+ * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
+ * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
+ * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
+ * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
+
+Sun Nov 24 10:38:04 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_use_ffreep): New global variable.
+ * i386.h (x86_use_frfeep): Declare
+ (TARGET_USE_FFREEP): New macro
+ * i386.md (movs?f*): Use freep when asked for.
+ (push?f): Remove dead code.
+
+2002-11-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
+ target help message.
+
+2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
+ extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
+ crtbeginT.o".
+ (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
+ (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
+ to "" for a.out configurations.
+ * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
+
+2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
+ NETBSD_CPP_SPEC directly.
+ (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec. Add
+ netbsd_endfile_spec.
+ (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
+
+2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
+ NETBSD_STARTFILE_SPEC.
+ (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
+ (ENDFILE_SPEC): Likewise.
+ * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
+
+2002-11-24 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.in (install-driver): Remove versioned link before
+ trying to create it.
+
+ * config/m68k/m68k.c: Fix typo in last change defining
+ TARGET_ASM_CAN_OUTPUT_MI_THUNK.
+
+2002-11-23 H.J. Lu <hjl@gnu.org>
+
+ * aclocal.m4: Include ../config/accross.m4.
+ (gcc_AC_COMPILE_CHECK_SIZEOF): Removed.
+ (gcc_AC_C_COMPILE_ENDIAN): Removed.
+ (gcc_AC_C_FLOAT_FORMAT): Check $ac_cv_c_bigendian
+ instead of $ac_cv_c_compile_endian.
+
+ * configure.in: Replace gcc_AC_COMPILE_CHECK_SIZEOF with
+ AC_COMPILE_CHECK_SIZEOF.
+ Replace gcc_AC_C_COMPILE_ENDIAN with AC_C_BIGENDIAN_CROSS.
+ * configure: Rebuild.
+
+2002-11-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (print_operand): Update the use of
+ h8300_tiny_constant_address_p.
+ (h8300_adjust_insn_length): Likewise.
+ (h8300_tiny_constant_address_p): Check if the given rtx is a
+ variable declared with __attribute__ ((tiny_data)).
+
+2002-11-22 Dale Johannesen <dalej@apple.com>
+
+ * toplev.c (rest_of_compilation): Fix comments.
+
+2002-11-22 Geoffrey Keating <geoffk@apple.com>
+
+ * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
+ allow mmap from /dev/zero. Don't make decisions for the host
+ based on presence or absence of /dev/zero on the build machine.
+ (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
+ (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
+ * configure: Regenerate.
+
+2002-11-22 Daniel Jacobowitz <drow@mvista.com>
+
+ * gcc.c (make_relative_prefix, split_directories)
+ (free_split_directories): Removed.
+
+2002-11-22 Daniel Jacobowitz <drow@mvista.com>
+
+ * configure.in: Set insn=nop for DWARF-2 tests on ARM.
+ * configure: Regenerated.
+
+2002-11-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (compute_a_shift_length): Fix the insn
+ length computation when xor.l is output.
+
+2002-11-21 Douglas B Rupp <rupp@gnat.com>
+
+ * alpha.md (movstrdi, clrstrdi): New VMS patterns.
+ (call_vms_1, call_value_vms_1): Cleanup syntax.
+
+Thu Nov 21 19:20:27 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * athlon.md (define_atuomaton): Add athlon_load.
+ (athlon-double): New reservation.
+ (athlon-ieu0): New CPU unit.
+ (athlon-load?): Use athlon_load automaton.
+ (*_k8 reservations): New.
+ (other insn revervations): Activate for K8.
+
+Thu Nov 21 15:07:42 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (verify_flow_info): Accept EDGE_CAN_FALLTHRU flag.
+
+2002-11-21 Jim Wilson <wilson@redhat.com>
+
+ * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
+ vectors to SI.
+
+2002-11-21 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
+ * config/xtensa/xtensa.c (struct machine_function): Add
+ incoming_a7_copied flag.
+ (xtensa_copy_incoming_a7): Define.
+ (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
+ * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
+
+Thu Nov 21 23:52:04 CET 2002 Jan Hubicka <jH@suse.cz>
+
+ * i386-protos.h (x86_64_sign_extended_value): Fix prototype.
+ * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
+ x86_64_nonmemory_operand, x86_64_movabs_operand,
+ x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
+ ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
+ (local_symbolic_operand): Do not care the 64bit limits.
+ (x86_64_sign_extended_value): Remove allow_rip support.
+ (legitimate_pic_address_disp_p): Handle all cases allowed
+ with RIP addressing.
+ (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
+ (legitimize_pic_address): Reorganize.
+ * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
+
+2002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (arm*-*-netbsdelf*): Enable configuration.
+ * config/arm/netbsd-elf.h: New file.
+
+2002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
+ subtarget_asm_float_spec.
+ (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
+ defaults from...
+ (ASM_SPEC): ...here. Use subtarget_asm_float_spec.
+
+2002-11-21 Nick Clifton <nickc@redhat.com>
+
+ * config/fr30/fr30.md (movsf_constant_store): Move code to
+ detect 0.0 into fr30.c.
+ * config/fr30/fr30-protos.h (fr30_const_double_is_zero):
+ Prototype.
+ * config/fr30/fr30.c (fr30_const_double_is_zero): New
+ function. Return true if the rtx is 0.0.
+
+2002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
+ if -mlittle-endian is specified.
+
+2002-11-21 Richard Earnshaw <rearnsha@arm.com>
+
+ PR optimization/2903
+ * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
+ (anddi_notsesidi_di): Likewise.
+
+2002-11-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (print_operand): Use
+ h8300_eightbit_constant_address_p and
+ h8300_tiny_constant_address_p.
+ (h8300_adjust_insn_length): Likewise.
+ * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
+ (TINY_CONSTANT_ADDRESS_P): Likewise.
+ (OK_FOR_U): Use eightbit_constant_address_p.
+
+2002-11-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/libgcc-libc.ver: Add multilib support.
+ * config/s390/linux.h (MULTILIB_DEFAULT): Define.
+ * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
+ MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC,
+ EXTRA_MULTILIB_PARTS): Define.
+
+2002-11-21 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_get_frame_size): A leaf function does not need its
+ stack padding to an aligned boundary if it has no frame.
+ (thumb_get_frame_size): Likewise.
+
+Wed Nov 20 22:25:53 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * x86-64.h (MCOUNT_NAME): Fix typo in my previous patch.
+ (override_options): Likewise.
+
+Wed Nov 20 19:07:17 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * config.gcc: Add k8 target alias support
+ * i386.c (_cost): Declare costs for various variants of divides and
+ multiplies.
+ (k8_cost): New.
+ (m_K8, m_ATHLON_K8): New macros.
+ (x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen,
+ x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_fiop,
+ x86_promote_QImode, x86_sub_esp_?, x86_add_esp_?,
+ x86_integer_DFmode_moves, x86_partial_reg_dependency,
+ x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
+ x86_prologue_using_move, x86_epilogue_using_move,
+ x86_arch_always_fancy_math_387, x86_sse_partial_regs,
+ x86_sse_typeless_stores): Set for K8
+ (override_options): Add k8 support; fix athlon alignment;
+ complain about non-x86-64 capable CPU being used in x86-64 compilation.
+ (ix86_issue_rate): Set for K8.
+ (ix86_adjust_cost, ia32_use_dfa_pipeline_interface,
+ x86_machine_dependent_reorg): Handle K8 like
+ * i386.h
+ (x86_costs): Change mult_init and divide into array.
+ (TARGET_K8, TARGET_ATHLON): New macros.
+ (MODE_INDEX): New macro.
+ (RTX_COST): Use new costs.
+ (TARGET_CPU_CPP_BUILTINS): Define __k8__ and __tune_k8__.
+ (TARGET_CPU_DEFAULT_NAMES): Add k8
+ (TARGET_CPU_DEFAULT_k8): New constant
+ (enum processor_type): Add PROCESSOR_K8.
+ * i386.md (cpu attribute): Add k8.
+
+ * invoke.texi: Document -march=k8.
+
+ * i386.md (type attribute): Add leave
+ (mode attribute): Remove unknownfp.
+ (length_immediate, modrm, memory attributes): Handle leave correctly.
+ (fp comparison patterns): Determine FP mode.
+ (leave, leave_rex64): Remove special cases.
+ * ppro.md (ppro_uops, ppro_p2): Add leave
+ * pentiun.md (pent_pop): Handle leave too.
+ * k6.md (k6_load): Handle leave.
+ * athlon.md (athlon_leave, athlon_pop): Fix.
+ (athlon_decode): Handle leave.
+
+2002-11-20 Steve Ellcey <sje@cup.hp.com>
+
+ * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
+ to component type using GET_MODE_INNER.
+ * expr.c (emit_move_insn_1): Ditto.
+ * optabs.c (expand_binop): Ditto.
+ (expand_unop): Ditto.
+ (expand_complex_abs): Ditto.
+
+2002-11-20 Douglas B Rupp <rupp@gnat.com>
+
+ * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
+
+2002-11-20 DJ Delorie <dj@redhat.com>
+
+ * config/stormy16/stormy16.c (s16builtins,
+ xstormy16_init_builtins, xstormy16_expand_builtin): New.
+ * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
+
+2002-11-20 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
+ (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
+ (executing gencheck, genconfigs, genconditions, genflags,
+ gencodes, genconstants, genemit, genrecog, genopinit, genextract,
+ genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
+ gengtype, genprotos): Prepend $(RUN_GEN).
+ * configure.in: Move host compiler tests before --enable-checking
+ tests.
+ (--enable-checking=valgrind): New.
+ * config.in, configure: Regenerate.
+ * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
+ Define as empty.
+ (read_include_file): When doing the mmap+1 trick,
+ valgrind-annotate the byte after the mmap:ed area as readable.
+ (purge_cache): Remove above annotation.
+ * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
+ VALGRIND_PATH -q to each command.
+
+ * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
+ Define as empty.
+ (ggc_realloc): Update valgrind annotations.
+ * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
+ Define as empty.
+ (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
+ valgrind-annotate memory.
+
+2002-11-20 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * recog.c (constrain_operands): Prefer exact match over reloadable
+ EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
+
+ * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
+ operands in Pmode.
+
+2002-11-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/8518
+ * c-decl.c (duplicate_decls): Outline the second definition
+ of an extern inline function in all cases.
+
+2002-11-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * stor-layout.c (place_field): Update rli->offset as well as
+ rli->bitpos.
+
+2002-11-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
+
+2002-11-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
+ into a libcall block.
+ (divsi3): Likewise divsi3_i4_media.
+
+2002-11-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * global.c (find_reg): Check HARD_REGNO_NREGS before kicking
+ out another register.
+
+2002-11-20 Jakub Jelinek <jakub@redhat.com>
+
+ * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
+ (not just mask) are set in C.
+
+2002-11-19 Steven Bosscher <steven.bosscher@usafa.af.mil>
+
+ * config/mips/vr.h (DRIVER_SELF_SPECS): Change %{<mgp32} to %<mgp32.
+
+2002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * profile.c (index_counts_file): Fix obvious mistake.
+
+2002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (profile.o): Add hashtab.h dependency.
+ * gcov-io.h (GCOV_SUMMARY_LENGTH): New.
+ * profile.c: Include hashtab.h.
+ (htab_counts_index_hash, htab_counts_index_eq, htab_counts_index_del,
+ cleanup_counts_index, index_counts_file, struct section_reference,
+ struct da_index_entry, counts_file_name, counts_file_index): New.
+ (get_exec_counts, init_branch_prob): Modified.
+
+2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux
+ to tmake_file. Remove setting gas and gnu_ld here.
+ * config/sh/libgcc-glibc.ver: New file.
+ * config/sh/t-linux (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
+ (SHLIB_MAPFILES): New.
+ * config/sh/linux.h (MD_EXEC_PREFIX): Undefine.
+ (MD_STARTFILE_PREFIX): Likewise.
+ (HANDLE_PRAGMA_PACK_PACK_PUSH_POP): Define.
+ (DWARF2_UNWIND_INFO): Redefine.
+ (ASM_PREFERRED_EH_DATA_FORMAT): Define.
+ (LINK_EH_SPEC): Redefine.
+ (MD_FALLBACK_FRAME_STATE_FOR): Define except for SH-media.
+ (SH_FALLBACK_FRAME_FLOAT_STATE): Define.
+ (SH_DWARF_FRAME_GP0, SH_DWARF_FRAME_FP0, SH_DWARF_FRAME_XD0,
+ SH_DWARF_FRAME_BT0, SH_DWARF_FRAME_PR, SH_DWARF_FRAME_PR_MEDIA,
+ SH_DWARF_FRAME_GBR, SH_DWARF_FRAME_MACH, SH_DWARF_FRAME_MACL,
+ SH_DWARF_FRAME_PC, SH_DWARF_FRAME_SR, SH_DWARF_FRAME_FPUL,
+ SH_DWARF_FRAME_FPSCR): Likewise.
+ * config/sh/sh-protos.h (sh_set_return_address): Declare.
+ * config/sh/sh.c (calc_live_regs): Count EH_RETURN_DATA_REGNO
+ registers if the current function calls EH return.
+ (sh_expand_epilogue): Handle EH stack adjustments.
+ (sh_set_return_address): New function.
+ * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
+ Don't abort even if the number is mapped to -1.
+ (EH_RETURN_DATA_REGNO): Define.
+ (EH_RETURN_STACKADJ_RTX): Define.
+ * config/sh/sh.md (UNSPEC_EH_RETURN): New.
+ (eh_return): New pattern.
+ (eh_set_ra_di, eh_set_ra_si): Likewise.
+ Add splitter to perform EH return after reload.
+
+Tue Nov 19 12:52:07 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * stor-layout.c (excess_unit_span): New function.
+ (place_field): Use it.
+
+2002-11-19 Andreas Schwab <schwab@suse.de>
+
+ * unwind.h (_Unwind_GetTextRelBase): Revert last change, this is
+ not valid in C++.
+
+2002-11-19 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in, Makefile.in: Correct BUILD/HOST confusion.
+ * configure: Regenerate.
+
+Tue Nov 19 00:11:44 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * convert.c (strip_float_extensions): New function.
+ (convert_to_real): Optimize some cases.
+
+2002-11-19 Andreas Jaeger <aj@suse.de>
+
+ * loop.c (record_giv): Initialize not_replaceable.
+ (check_final_value): Likewise.
+
+2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_init_once): Replace 1 with
+ MASK_H8300S.
+
+2002-11-19 Vijay L. Khuspe <vijayk1@kpit.com>
+
+ * config/h8300/h8300.c (h8300_init_once): Allow -mn switch
+ only if -mh or -ms present.
+ (h8300_eightbit_constant_address_p): Support the normal mode.
+ (h8300_tiny_constant_address_p): Likewise.
+ * config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
+ (POINTER_SIZE): Add 16 bit pointer for the normal mode.
+ (Pmode): Evaluate to HImode for the normal mode.
+ (SIZE_TYPE): Evaluate to unsigned int for normal mode.
+ (PTRDIFF_TYPE): Evaluate to int for the normal mode.
+ (ASM_WORD_OP): Evaluate to word for the normal mode.
+ * config/h8300/h8300.md (tablejump_normal_mode): New.
+ (indirect_jump_normal_mode): New.
+ * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
+ directory.
+ (MULTILIB_DIRNAMES): Create target dependent directory
+ 'normal'.
+ (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
+ * doc/invoke.texi (gccoptlist): Describe the new switch -mn.
+
+Tue Nov 19 23:50:56 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (length_immediate): Do not refer to insn address.
+ (jcc*, jmp patterns): Compute length explicitly.
+
+2002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/8588
+ * optabs.c (expand_binop): Convert CONST_INTs in shift
+ operations too.
+
+2002-11-19 Roger Sayle <roger@eyesopen.com>
+
+ * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
+
+2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (an anonymous pattern): Relax the
+ condition to accept the same operands and/or subregs.
+
+2002-11-19 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/sh/sh.c (gen_shl_and): Revert previous patch.
+ * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
+ reload_completed.
+
+2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (print_operand): Update the use of
+ EIGHTBIT_CONSTANT_ADDRESS_P.
+ (h8300_adjust_insn_length): Likewise.
+ (h8300_eightbit_constant_address_p): Check if the given rtx is
+ a variable with __attribute__((eightbit_data)).
+ * config/h8300/h8300.h (OK_FOR_U): Update the use of
+ EIGHTBIT_CONSTANT_ADDRESS_P.
+
+2002-11-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/contrib.texi (Contributors): Add self as second contact in
+ addition to Jeff Law.
+
+2002-11-19 Andreas Jaeger <aj@suse.de>
+
+ * tree-inline.c: Move prototpyes of find_alloca_call_1 and
+ find_alloca_call to right place.
+
+2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cppfiles.c: Fix formatting.
+
+2002-11-19 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * gcc.c (The Specs Language): Document spec functions.
+ (static_spec_functions, lookup_spec_function)
+ (eval_spec_function, handle_spec_function)
+ (if_exists_spec_function, alloc_args): New.
+ (execute): Abort if processing_spec_function is true.
+ (do_spec_1): Hand off spec to handle_spec_function if %:
+ is encountered. If processing_spec_function is true,
+ end any pending argument when the end of the string is reached.
+ (main): Use alloc_args to allocate the initial argument vector.
+ * gcc.h (struct spec_function): New.
+ (lang_specific_spec_functions): New extern.
+
+ * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
+ (ENDFILE_SPEC): Add if-exists(crtn%O%s).
+ * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
+
+ * doc/invoke.texi: Document spec functions.
+
+ * cppspec.c (lang_specific_spec_functions): New.
+ * gccspec.c: Likewise.
+
+2002-11-18 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
+ (FIXUNS_TRUNCTFDI2_LIBCALL): New.
+ (fixunstfsi_libfunc): Change.
+ (fixunstfdi_libfunc): Change.
+ (sdiv_optab): Don't zero out SImode handler.
+ (udiv_optab): Don't zero out SImode handler.
+ (smod_optab): Don't zero out SImode handler.
+ (umod_optab): Don't zero out SImode handler.
+
+2002-11-18 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/8524
+ * cpplib.c (run_directive): Remove previous kludge to _Pragma.
+ Add a new one in its place, which hopefully works.
+ (skip_rest_of_line): Change test for bottom-of-context-stack.
+
+Mon Nov 18 21:29:03 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (addqi_1_slp): Fix output template.
+ (subqi_1_slp): Fix type.
+
+Sun Nov 17 00:01:28 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * calls.c (alloca_call_p): New global function.
+ * tree.h (alloca_call_p): New.
+ * tree-inline.c (inlinable_function_p): Do not inline when
+ function calls alloca.
+ (find_alloca_call, find_alloca_call_1): New functions.
+
+2002-11-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*andorqi3): Use bor between bld and
+ bst. Update the insn length.
+ (*andorhi3): Likewise.
+ (*andorsi3): Likewise.
+
+2002-11-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/sh/sh-protos.h (sh_mark_label): Declare.
+ * config/sh/sh.c (sh_mark_label): New function, taken from
+ movdi_const, but fixing the case when the address has an addend.
+ * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
+
+2002-11-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/sh/sh.c (pool_node): New field: part_of_sequence_p.
+ (add_constant): Set it.
+ (dump_table): Don't reorder a constant if part_of_sequence_p.
+ (machine_dependent_reorg): Assume that float constants will
+ stay in their original order if used as a sequence.
+
+2002-11-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/sh/sh.c (calc_live_regs): Update check for PIC liveness
+ in compact code.
+
+2002-11-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/sh/sh.md (initialize_trampoline): Do not force the
+ trampoline address into R0_REGS here.
+
+Sun Nov 17 14:01:09 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
+ absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
+ (neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
+ generate unnecesary subregs.
+
+2002-11-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * df.c: Fix formatting.
+
+2002-11-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (two anonymous patterns): Fix insn
+ lengths.
+
+2002-11-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * sh.c (gen_shl_and): Don't create a zero_extend if the operand
+ is not an arith_reg_operand.
+
+2002-11-17 Graham Stott <graham.stott@btinternet.com>
+
+ * real.c (real_to_decimal): Fix buffer overrun when buffer size
+ is smaller than representation.
+
+2002-11-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c: Fix formatting.
+
+Sat Nov 16 16:49:58 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (truncdfsf2_1_sse, truncdfsf2_1_sse_nooverlap, truncdfsf2_2,
+ floats?dff2_i387):
+ Work around regclass stupidity.
+ (truncdfsf_2_1_sse splitter): Accept !TARGET_PARTIAL_SSE_REGS
+
+Sat Nov 16 02:17:48 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (fop_df_6): New pattern.
+ (fop_xf_4, fop_xf_5): Handle both SF and DFmode extensions.
+ (fop_xf_6): Rewrite
+ (fop_xf_7): Delete.
+ (fop_tf_4, fop_tf_5): Handle both SF and DFmode extensions.
+ (fop_tf_6): Rewrite
+ (fop_tf_7): Delete.
+
+2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (two anonymous patterns): Fix typos.
+
+2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Fix formatting.
+
+2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Replace spaces with tabs.
+ * config/h8300/t-h8300: Remove a trailing empty line.
+
+2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tlink.c: Fix formatting.
+
+2002-11-16 David Edelsohn <edelsohn@gnu.org>
+
+ PR 8362
+ * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
+ * config/rs6000/rs6000.md (movti_string): Remove output modifier
+ when scratch register never needed.
+ (ldmsi[3-8]): New patterns.
+
+2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * hard-reg-set.h: Follow spelling conventions.
+ * real.c: Likewise.
+ * target.h: Likewise.
+
+2002-11-16 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
+
+2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * optabs.c: Fix formatting.
+
+Sat Nov 16 02:06:02 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
+ * i386.md (attribute type): Add type shift1 and rotate1.
+ (*_slp): Rewrite to have just two operands to avoid reload problems.
+
+2002-11-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (4 anonymous patterns): New.
+
+2002-11-15 Geoffrey Keating <geoffk@apple.com>
+
+ * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
+ * doc/invoke.texi: Correct description of what needs to be done to
+ force collection at every ggc_collect call.
+
+2002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (optimization_options): Set
+ flag_asynchronous_unwind_tables to 1 by default.
+
+2002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
+
+Fri Nov 15 14:54:19 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386-protos.h (x86_function_profiler): New function
+ * i386.h (MCOUNT_NAME): New.
+ (PROFILE_COUNT_REGISTER): New.
+ (FUNCTION_PROFILER): Move offline to ...
+ * i386.c (x86_function_profiler) ... here; fix 64bit support
+ * beos-elf.h (FUNCTION_PROFILER): Kill.
+ (MCOUNT_NAME): New.
+ * freebsd-aout.h (FUNCTION_PROFILER): Kill.
+ (MCOUNT_NAME): New.
+ (PROFILE_COUNT_REGISTER): New.
+ * linux.h (FUNCTION_PROFILER): Kill.
+ (MCOUNT_NAME): New.
+ * x86-64.h (FUNCTION_PROFILER): Kill.
+ (MCOUNT_NAME): New.
+ * freebsd.h (FUNCTION_PROFILER): Kill.
+ (MCOUNT_NAME): New.
+
+2002-11-14 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
+
+ * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
+ FUNCTION_ARG_PASS_BY_REFERENCE): Define.
+ * config/arm/arm.c (arm_va_arg,
+ arm_function_arg_pass_by_reference): New.
+ * config/arm/arm-protos.h: Add prototypes.
+
+2002-11-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gthr-single.h: Fix formatting.
+
+2002-11-14 Zack Weinberg <zack@codesourcery.com>
+
+ * tree.c (tree_vec_elt_check_failed): New function.
+ * tree.h (TREE_VEC_ELT_CHECK): New checking macro.
+ (TREE_VEC_ELT): Use it.
+
+ * tree-inline.c (optimize_inline_calls): Don't copy a
+ zero-length vector.
+
+2002-11-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
+
+2002-11-14 Jakub Jelinek <jakub@redhat.com>
+
+ * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
+ both operands contain local relocations.
+ (categorize_decl_for_section): Don't use mergeable sections if
+ initializer has any relocations.
+
+2002-11-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gthr-vxworks.h: Fix formatting.
+
+2002-11-13 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/install.texi (Testing): Document extra Java testing.
+ * doc/sourcebuild.texi (Test Suites): Document libgcj testing.
+
+2002-11-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
+ beginning of the spec.
+ (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
+ (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable. Add comment
+ regarding problems with global constructors when using GNU ld.
+
+2002-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gthr-solaris.h: Fix formatting.
+
+2002-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gthr-posix.h: Fix formatting.
+
+2002-11-12 Devang Patel <dpatel@apple.com>
+ * gcc.c (display_help): Two new options -Xpreprocessor and -Xassembler.
+ (process_command): Same.
+ * doc/invoke.texi: Info about these two new options.
+
+2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*andorsi3): New.
+
+2002-11-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
+
+2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
+ expressions appropriately.
+
+2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gthr-win32.h: Fix formatting.
+
+2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (single_one_operand): Correctly compute
+ mask when mode is SImode.
+ (single_zero_operand): Likewise.
+ * config/h8300/h8300.md (two new anonymous insns): New.
+
+2002-11-12 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
+ to that entire project.
+
+2002-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
+ directories.
+
+2002-11-11 Zack Weinberg <zack@codesourcery.com>
+
+ * params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
+ * doc/invoke.texi: Document them.
+
+ * ggc-page.c: Include params.h. Remove definitions of
+ GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED. Replace
+ GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
+ (init_gcc): Don't set G.allocated_last_gc here.
+ (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
+ PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
+ perform collection.
+ * ggc-simple.c: Similarly.
+ * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
+ dependencies.
+
+2002-11-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gthr-dce.h: Fix formatting.
+
+2002-11-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ PR c/8467
+ * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
+ mode of DECL_RTL case.
+
+2002-11-11 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/contrib.texi: Merge in the list from the libstdc++ web pages.
+
+Mon Nov 11 12:06:08 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (construct_container): Fix handling of SSE_CLASS.
+
+2002-11-10 Joel Sherrill <joel@gcc.gnu.org>
+
+ * config/m68k/t-crtstuff (crti.o): Use this...
+ ($(T)crti.o): ... instead.
+ (crtn.o): Use this...
+ ($(T)crtn.o): ... instead.
+
+2002-11-10 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/8439
+ * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
+ if there is something new to be simplified.
+
+2002-11-10 H.J. Lu <hjl@gnu.org>
+
+ * calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
+ * expr.c (PUSH_ARGS_REVERSED): Likewise.
+
+ * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
+
+2002-11-10 Zack Weinberg <zack@codesourcery.com>
+
+ * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
+ * config/rs6000/linux.h, config/rs6000/linux64.h,
+ config/rs6000/windiss.h: ... not here.
+
+2002-11-10 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
+ __ABICALLS__ if TARGET_ABICALLS.
+
+Sun Nov 10 18:49:21 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
+
+2002-11-10 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-decl.c (grokdeclarator): Make error for duplicate type
+ qualifiers into a pedwarn, disabled for C99.
+
+2002-11-10 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
+ as FUNCTION_ARG_PASS_BY_REFERENCE.
+
+2002-11-09 Zack Weinberg <zack@codesourcery.com>
+
+ * doc/install.texi: Add *-*-vxworks* specific installation
+ instructions.
+
+ * config/vxlib.c: Rewrite using generation numbers to identify
+ valid TSD keys.
+
+Sat Nov 9 00:10:54 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_machine_dependent_reorg): Fix even more side cases.
+
+2002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
+
+ * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
+ (hppa*64*-*-hpux11*): Likewise. Use elfos.h with gas.
+ * pa.c (output_millicode_call): Use symbol difference rather than
+ $PIC_pcrel$0 when using HP assembler.
+ * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
+ not elfos.h (i.e., gas) is being used.
+ (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
+ DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
+ ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
+ ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
+ ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
+ using elfos.h.
+ (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
+ (DWARF2_ASM_LINE_DEBUG_INFO): Delete.
+ (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
+ using elfos.h.
+ (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
+ (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
+ Don't define when not using elfos.h.
+ (ASM_DECLARE_RESULT): Don't define.
+ * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
+ doesn't work on hppa64-hp-hpux11.
+ (hppa*-hp-hpux11): Update.
+
+2002-11-09 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
+ to the assembler if -mno-abicalls was specified.
+
+2002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
+ ASM_OUTPUT_DEF): Delete.
+
+2002-11-09 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
+
+2002-11-08 Roger Sayle <roger@eyesopen.com>
+
+ * real.c (real_sqrt): Update comment with bibliographic reference.
+
+Fri Nov 8 13:33:58 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_loadss, sse2_loadsd): Fix expander.
+
+Fri Nov 8 13:25:41 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_machine_dependent_reorg): Fix handling of empty functions.
+
+Fri Nov 8 13:01:42 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * builtins.c (expand_builtin_mathfn): Handle floor/ceil/trunc/round/nearbyint
+ (expand_builtin): Likewise.
+ * builtins.def: Add
+ __builtin_floor, __builtin_floorf, __builtin_floorl
+ __builtin_ceil, __builtin_ceilf, __builtin_ceill
+ __builtin_round, __builtin_roundf, __builtin_roundl
+ __builtin_trunc, __builtin_truncf, __builtin_truncl
+ __builtin_nearbyint, __builtin_nearbyintf, __builtin_nearbyintl.
+ * genopinit.c (optabs): Initialize the new optabs.
+ * optab.c (init_optabs): Likewise.
+ * optabs.h (optab_index): Add OTI_floor, OTI_ceil, OTI_trunc,
+ OTI_round, OTI_nearbyint.
+ (floor_optab, ceil_optab, trunc_optab, round_optab, nearbyint_optab): New.
+ * doc/md.texi: Document new named patterns.
+ * doc/extend.texi (builtin functions) Document
+ floor, floorf, floorl, ceil, ceilf,
+ ceill, round, roundf, roundl, trunc,
+ truncf, truncl, nearbyint, nearbyintf, nearbyintl.
+
+Fri Nov 8 11:36:11 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_movdfcc, sse_movsfcc): Fix typo in previous patch.
+
+2002-11-08 Dale Johannesen <dalej@apple.com>
+
+ * dbxout.c (dbxout_type): Fix stabs info for vector types.
+
+2002-11-08 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/8497
+ PR preprocessor/8501
+ * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
+ start a directive. In assembler, #NUM is not a line directive.
+
+2002-11-08 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppmain.c (cpp_preprocess_file): Loop to pop any -included
+ buffers.
+
+2002-11-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (two anonymous test insns): New.
+
+Fri Nov 8 11:20:19 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * jump.c (mark_jump_label): Handle subregs of label_refs.
+
+Thu Nov 7 21:54:22 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_movdfcc, sse_movsfcc): Avoid overactive matching.
+ * i386.c (ix86_expand_fp_movcc): Match the reversed cases.
+
+2002-11-07 David Mosberger <davidm@hpl.hp.com>
+
+ * config/ia64/crtend.asm: Include "auto-host.h".
+ [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
+ * config/ia64/crtbegin.asm: Similarly.
+ * config/ia64/t-ia64 (crtbegin.o): Include from current directory.
+ (crtend.o, crtbeginS.o, crtendS.o): Likewise.
+
+ * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
+ * configure.in: Use it if --enable-initfini-array not specified.
+ * doc/install.texi (Configuration): Document --enable-initfini-array.
+ * configure, config.in: Rebuild.
+
+2002-11-07 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/arm/arm-protos.h (arm_get_frame_size)
+ (thumb_get_frame_size): New prototypes.
+ * config/arm/arm.c (arm_get_frame_size)
+ (thumb_get_frame_size): New functions.
+ (use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
+ (arm_compute_initial_elimination_offset, arm_expand_prologue): Use
+ arm_get_frame_size.
+ (thumb_expand_prologue, thumb_expand_epilogue): Use
+ thumb_get_frame_size.
+ * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
+ (machine_function): Add frame_size member.
+ (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
+
+2002-11-07 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (bit_count): Make argument unsigned long. Return unsigned.
+ Adjust code to use portable unsigned bit manipulation.
+ (insn_flags, tune_flags): Change type to unsigned.
+ (struct processors): Make flags unsigned long.
+ (arm_override_options): Change type of count and current_bit_count
+ to unsigned.
+
+2002-11-07 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
+
+Thu Nov 7 15:50:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
+
+Thu Nov 7 11:18:01 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * reg-stack.c (compensate_edge): Fix sanity check.
+
+2002-11-05 Geoffrey Keating <geoffk@apple.com>
+
+ * config.gcc: Don't create crtbegin, crtend on Darwin; do create
+ crt2.o. Rearrange t-darwin makefiles.
+ * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
+ * unwind-dw2-fde-darwin.c: New.
+ * unwind-dw2-fde-glibc.c: Correct comment.
+ * unwind-dw2-fde.c (__register_frame_info_bases)
+ [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
+ (classify_object_over_fdes): Use last_fde.
+ (add_fdes): Likewise.
+ (linear_search_fdes): Likewise.
+ * unwind-dw2-fde.h (struct object)
+ [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
+ (last_fde): New.
+ * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
+ (ENDFILE_SPEC): No crtend.o.
+ * config/t-darwin: New.
+ * config/i386/t-darwin: Delete.
+ * config/darwin-crt2.c: New.
+ * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
+ or config/t-darwin.
+
+2002-11-06 Douglas B Rupp <rupp@gnat.com>
+
+ * config/i386/i386-interix.h (TARGET_SUBTARGET_DEFAULT): Or
+ MASK_MS_BITFIELD_LAYOUT
+ (SUBTARGET_OVERRIDE_OPTIONS): Warn about and turn off
+ MS bitfields for Objective-C.
+ (PCC_BIT_FIELD_TYPE_TEST, GROUP_BITFIELDS_BY_ALIGN): Remove
+ defines.
+
+ * config/i386/i386.c (ix86_ms_bitfield_layout): New function.
+ (TARGET_MS_BITFIELD_LAYOUT_P): Define to above function.
+ (TARGET_USE_MS_BITFIELD_LAYOUT): Define.
+
+ * config/i386/i386.h (MASK_MS_BITFIELD_LAYOUT: New mask.
+ TARGET_USE_MS_BITFIELD_LAYOUT): New macro.
+ (TARGET_SWITCHES): Add above mask.
+
+ * testsuite/gcc.dg/bf-ms-layout.c: New test case.
+ * testsuite/gcc.dg/bf-no-ms-layout.c: New test case.
+ * testsuite/gcc.dg/i386-bitfield1.c (dg-options): Add appropriate
+ flags for interix.
+
+Wed Nov 6 18:54:47 2002 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output
+ .gpword/.gpdword for ABI_N32 and ABI_64 too, if using the GNU
+ assembler.
+ * config/mips/mips.md (tablejump_internal3): Output .cpadd
+ before jump on ABI_N32 too.
+ (tablejump_internal4): Ditto on ABI_64. Increase maximum
+ length to match.
+
+Wed Nov 6 17:16:48 CET 2002 Jan Hubicka <jh@.suse.cz>
+
+ * i386.md (negsf splitter): Accept memory operand in second register.
+ (abssf/absdf splitters): Simplify
+ (sse_loadss, sse_loadsd): Turn into expander.
+
+2002-11-06 David Edelsohn <edelsohn@gnu.org>
+
+ PR target/8480
+ * config/rs6000/rs6000.md (movdi_internal64): Discourage
+ FPR to FPR moves.
+
+2002-11-06 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/contrib.texi: Merge in the list from the Java web pages.
+
+2002-11-06 David O'Brien <obrien@FreeBSD.org>
+
+ * config/sparc/freebsd: Fix typo.
+
+2002-11-06 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
+
+2002-11-06 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.md (call_value_multiple_internal2): Use dla for
+ non-SImode addresses.
+
+Tue Nov 5 14:34:36 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (float_truncate SSE splitter): Ensure that operand is not
+ stack register.
+ (float SSE splitters): Reorder conditional.
+
+2002-11-05 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
+
+2002-11-05 John David Anglin <dave2hiauly1.hia.nrc.ca>
+
+ * pa64-hpux.h (LIB_SPEC): Fix p and pg options.
+ (STARTFILE_SPEC): Remove p and pg options.
+
+2002-11-05 Andrew Haley <aph@redhat.com>
+
+ * fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
+ to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
+
+2002-11-05 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
+ * config/mips/mips.c (mips_cannot_change_mode_class): ...here.
+
+2002-11-04 Zack Weinberg <zack@codesourcery.com>
+
+ * gthr-vxworks.h: Rewritten from scratch.
+ * config/vxlib.c: New file.
+ * config/t-vxworks: Add config/vxlib.c to LIB2FUNCS_EXTRA.
+ * config/rs6000/t-vxworks: Add config/vxlib.c to
+ LIB2FUNCS_EXTRA here too, because of clash with
+ config/rs6000/t-ppccomm.
+
+2002-11-04 Dale Johannesen <dalej@apple.com>
+
+ * doloop.c (doloop_modify_runtime): Fix loop count computation
+ for unrolled loops.
+ * loop.c (loop_invariant_p): Support calling from unroller.
+
+2002-11-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
+ for comparison.
+
+2002-11-04 Aldy Hernandez <aldyh@redhat.com>
+
+ * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
+
+ * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
+ (CLASS_CANNOT_CHANGE_MODE): Remove.
+ (CANNOT_CHANGE_MODE_CLASS): New.
+
+ * config/alpha/alpha.h: Same.
+
+ * config/ia64/ia64.h: Same.
+
+ * config/mips/mips.h: Same.
+
+ * config/s390/s390.h: Same.
+
+ * config/sh/sh.h: Same.
+
+ * config/pa/pa64-regs.h: Same.
+
+ * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
+
+ * config/sh/sh.c (sh_cannot_change_mode_class): New.
+
+ * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
+ prototype.
+
+ * config/mips/mips.c (mips_cannot_change_mode_class): New.
+
+ * doc/tm.texi (Register Classes): Remove
+ CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
+ Document CANNOT_CHANGE_MODE_CLASS.
+
+ * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
+ (push_reload): Same.
+
+ * simplify-rtx.c (simplify_subreg): Same.
+
+ * reload1.c (choose_reload_regs): Same.
+
+ * recog.c (register_operand): Same.
+
+ * regrename.c (mode_change_ok): Change to use new
+ CANNOT_CHANGE_MODE_CLASS infrastructure.
+
+ * regclass.c (cannot_change_mode_set_regs): New.
+ Declare subregs_of_mode.
+ (regclass): Use subregs_of_mode.
+ Remove references to reg_changes_mode.
+ (init_reg_sets_1): Remove class_can_change_mode and
+ reg_changes_mode code.
+ (invalid_mode_change_p): New.
+ (dump_regclass): Use invalid_mode_change_p instead of
+ class_can_change_mode.
+ (regclass): Same.
+ (record_operand_costs): Do not set reg_changes_mode.
+
+ * local-alloc.c (struct qty): Remove changes_mode field.
+ (alloc_qty): Remove changes_mode initialization.
+ (update_qty_class): Remove set of changes_mode.
+ (find_free_reg): Use subregs_of_mode.
+
+ * global.c (find_reg): Use subregs_of_mode info.
+
+ * rtl.h (cannot_change_mode_set_regs): New prototype.
+ (invalid_mode_change_p): Same.
+ (REG_CANNOT_CHANGE_MODE_P): New macro.
+
+ * flow.c (mark_used_regs): Calculate subregs_of_mode. Remove
+ REG_CHANGES_MODE.
+ (life_analysis): Clear subregs_of_mode.
+
+ * combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P.
+ Remove use of CLASS_CANNOT_CHANGE_MODE.
+ (simplify_set): Same.
+ (gen_lowpart_for_combine): Calculate subregs_of_mode. Remove
+ REG_CHANGES_MODE.
+
+ * regs.h: Add extern for subregs_of_mode;
+ Include hard-reg-set and basic-block.
+ (REG_CHANGES_MODE): Delete.
+
+2002-11-03 Roger Sayle <roger@eyesopen.com>
+
+ * real.c (real_sqrt): New function to calculate square roots.
+ * real.h (real_sqrt): Add function prototype.
+ * builtins.c (fold_builtin): Fold sqrt of constant argument.
+ * simplify-rtx.c (simplify_unary_operation): Simplify sqrt
+ of constant argument.
+
+2002-11-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * jump.c (never_reached_warning): Don't set contains_insn until the
+ first line note is seen.
+
+2002-11-03 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (movti_string): Use string instructions.
+
+2002-11-03 Roger Sayle <roger@eyesopen.com>
+
+ PR c/7128
+ * c-typeck.c (c_expand_asm_operands): Defend against
+ error_mark_nodes in the output argument to avoid ICE.
+
+2002-11-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/8408
+ * genrecog.c (preds): Handle ADDRESSOF.
+ (validate_pattern): Mark it as an lvalue.
+
+2002-11-02 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Use string
+ instructions when optimizing for size.
+
+2002-11-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h: Fix comment typos.
+ * config/h8300/h8300.md: Likewise.
+ * config/h8300/lib1funcs.asm: Likewise.
+
+2002-11-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ Revert this change:
+
+ *doc/install.texi (Installing GCC: Configuration): Clarify
+ the only supported ways to configure gcc.
+
+2002-11-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
+ instead of 'O' for the constraint for the second operand.
+
+2002-11-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/8391
+ * toplev.c (rest_of_compilation): Do not refuse to output code for
+ an inline function in a local class.
+
+2002-11-01 David O'Brien <obrien@FreeBSD.org>
+
+ * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
+ (TRANSFER_FROM_TRAMPOLINE): Reformat.
+ Add comment.
+
+2002-11-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
+
+2002-11-01 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
+
+ * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
+
+2002-11-01 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
+ (MASK_INLINE_DIV_THR): Remove.
+ (TARGET_INLINE_DIV_LAT): Remove.
+ (TARGET_INLINE_DIV_THR): Remove.
+ (TARGET_INLINE_DIV): Remove.
+ (MASK_INLINE_FLOAT_DIV_LAT): New macro.
+ (MASK_INLINE_FLOAT_DIV_THR): New macro.
+ (MASK_INLINE_INT_DIV_LAT): New macro.
+ (MASK_INLINE_INT_DIV_THR): New macro.
+ (TARGET_INLINE_FLOAT_DIV_LAT): New macro.
+ (TARGET_INLINE_FLOAT_DIV_THR): New macro.
+ (TARGET_INLINE_INT_DIV_LAT): New macro.
+ (TARGET_INLINE_INT_DIV_THR): New macro.
+ (TARGET_INLINE_FLOAT_DIV): New macro.
+ (TARGET_INLINE_INT_DIV): New macro.
+ * config/ia64/ia64.md (divsi3): Change to use new macros.
+ (modsi3): Ditto.
+ (udivsi3): Ditto.
+ (umodsi3): Ditto.
+ (divsi3_internal): Ditto.
+ (divdi3): Ditto.
+ (moddi3): Ditto.
+ (udivdi3): Ditto.
+ (umoddi3): Ditto.
+ (divdi3_internal_lat): Ditto.
+ (divdi3_internal_thr): Ditto.
+ (divsf3): Ditto.
+ (divsf3_internal_lat): Ditto.
+ (divsf3_internal_thr): Ditto.
+ (divdf3): Ditto.
+ (divdf3_internal_lat): Ditto.
+ (divdf3_internal_thr): Ditto.
+ (divtf3): Ditto.
+ (divtf3_internal_lat): Ditto.
+ (divtf3_internal_thr): Ditto.
+ * config/ia64/ia64.c (ia64_override_options): Change
+ to check new macros for conflicts in settings.
+ * doc/invoke.texi (-minline-divide-min-latency): Remove.
+ (-minline-divide-max-throughput): Remove.
+ (-minline-float-divide-min-latency): New.
+ (-minline-float-divide-max-throughput): New.
+ (-minline-int-divide-min-latency): New.
+ (-minline-int-divide-max-throughput): New.
+
+2002-11-01 Richard Earnshaw (rearnsha@arm.com)
+
+ PR target/7856
+ * arm.c (use_return_insn): Don't use a return insn if there are
+ saved integer regs, but LR is not one of them.
+
+Fri Nov 1 10:33:15 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * expr.c (emit_move_insn): Use SCALAR_FLOAT_MODE_P
+ * machmode.h (SCALAR_FLOAT_MODE_P): New macro.
+
+Thu Oct 31 18:20:50 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (sse_loadss, sse_loadsd): Canonicalize; add expander
+ (movps, movpd splitters): Use canonical form.
+ (movv2di): Fix merge problem.
+
+Thu Oct 31 16:22:31 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
+
+2002-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR optimization/6162
+ * doc/md.texi: Document restriction on commutative operand
+ specification.
+
+2002-10-31 Eric Christopher <echristo@redhat.com>
+
+ * explow.c (convert_memory_address): Use shallow_copy_rtx.
+
+2002-10-31 Steve Ellcey <sje@cup.hp.com>
+
+ * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
+
+2002-10-31 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
+
+Thu Oct 31 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/darwin.h: Correct formatting in previous.
+
+Thu Oct 31 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/darwin.h: Enable -falign-xxx options.
+
+Thu Oct 31 18:08:00 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (override_options): Set defaults for flag_omit_frame_pointer,
+ flag_asynchronous_unwind_tables, flag_pcc_struct_return.
+ * i386.c (optimization_options): Set flag_omit_frame_pointer,
+ flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2.
+ Do not clear -momit-leaf-frame-pointer when profiling.
+ (ix86_frame_pointer_required): Frame pointer is always required when
+ profiling.
+
+Thu Oct 31 16:09:44 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
+
+Thu Oct 31 12:45:55 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (binary_logical_operator): Declare.
+ * sh.c (binary_logical_operator): New function.
+ * sh.md (xordi3+1): New combiner splitter pattern.
+
+2002-10-31 David O'Brien <obrien@FreeBSD.org>
+
+ * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define
+ __enable_execute_stack function.
+
+2002-10-30 Zack Weinberg <zack@codesourcery.com>
+
+ * gthr.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h,
+ gthr-solaris.h, gthr-win32.h: Remove __gthread_key_dtor.
+ * unwind-sjlj.c (fc_key_dtor): Delete.
+ (fc_key_init): Adjust __gthread_key_create call to match.
+
+2002-10-30 Aldy Hernandez <aldyh@redhat.com>
+
+ * c-common.c: Add GTY to vector_type_node_list.
+
+2002-10-30 John David Anglin <dave@hiauly.hia.nrc.ca>
+
+ * pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
+ * pa-protos.h (attr_length_millicode_call, attr_length_call,
+ pa_init_machine_status): Declare new global functions.
+ * pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and
+ implement new functions.
+ (attr_length_millicode_call, attr_length_call): Implement.
+ (total_code_bytes): Change type to long.
+ (pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT.
+ Reset counter if flag_function_sections.
+ (output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT.
+ (output_cbranch): Move call to gen_label_rtx.
+ (output_millicode_call): Rewrite adding long TARGET_64BIT call, expose
+ delay slot in all variants, shorten pc-relative calls.
+ (output_call): Rewrite adding long TARGET_64BIT call, improved delay
+ slot usage and exposure, various new call variants, and shortened
+ sequences for some variants on TARGET_PA_20.
+ Miscellaneous format changes.
+ * pa.h (total_code_bytes): Change type to long.
+ (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL,
+ TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define.
+ (TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options.
+ (EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS,
+ LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and
+ stores on TARGET_ELF32.
+ *pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME.
+ (unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and
+ canonicalize_funcptr_for_compare expanders): Calculate attribute length
+ attr_length_millicode_call().
+ (call_internal_symref, call_value_internal_symref): Clobber register 1.
+ Calculate attribute length using attr_length_call().
+ (call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load
+ to delay slot.
+ (sibcall, sibcall_value): Rewrite.
+ (sibcall_internal_symref, sibcall_value_internal_symref): Clobber
+ register 1. Use attr_length_call().
+ (sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit):
+ New patterns.
+ (unamed pattern for canonicalize_funcptr_for_compare): Rewrite.
+ * som.h (MEMBER_TYPE_FORCES_BLK): Define.
+ * t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls".
+ * doc/invoke.texi (mlong-calls): Document.
+
+2002-10-30 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_binary_op_with_conditional_arg): Improve
+ handling of cases where one or both branches of the conditional
+ have void type, i.e. throw an exception or don't return.
+ (fold): Only apply (and undo) type conversion to the non-void
+ branches of a COND_EXPR.
+
+2002-10-30 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/8333
+ * varasm.c (asm_output_aligned_bss): Do not call
+ ASM_GLOBALIZE_LABEL.
+
+2002-10-30 David Edelsohn <edelsohn@gnu.org>
+ Torbjorn Granlund <tege@swox.com>
+
+ * config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form
+ for addressibility.
+ (load_toc_v4_PIC_1b): Same.
+
+2002-10-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
+ Truncate the addresses for H8/300 using HImode.
+
+Tue Oct 29 23:28:10 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (negdf splitter): Fix construction of the constant.
+
+Tue Oct 29 20:47:06 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (negsf, negdf): Reorganize to use vector modes
+ for SSE variants.
+ (abssf, absdf): Use force_reg.
+ (movv4sf, movv2df): New splitters.
+ * i386.h (PREDICATE_CODES): add zero_extended_scalar_load_operand
+ * i386.c (zero_extended_scalar_load_operand
+
+ * i386-protos.h (ix86_expand_call): Update prototype.
+ * i386.c (ix86_function_ok_for_sibcall): Handle 64bit
+ (ix86_expand_call): Use r11 for indirect sibcalls.
+ * i386.md (call, call_value, untyped_call, call_value_pop):
+ update x86_expand_call call.
+ (sibcall, sibcall_value): new patterns
+ (call_rex64, call_value_rex64): Do not accept sibcalls.
+ (sibcall_rex64, sibcall_value_rex64,
+ sibcall_rex64_v, sibcall_value_rex64_v): New.
+
+Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
+ before final pass.
+
+2002-10-29 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * toplev.c (rest_of_type_compilation): Return early in case of
+ errors.
+ (check_global_declarations): Don't call debug_hooks->global_decl
+ in case of errors.
+
+2002-10-28 Andreas Bauer <baueran@in.tum.de>
+
+ * doc/c-tree.texi (Tree overview): Fix typos.
+
+2002-10-29 Phil Edwards <pme@gcc.gnu.org>
+
+ * Makefile.in (gnucompare*): Only record bad comparisons
+ if there really was a bad comparison.
+
+Tue Oct 29 19:32:16 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
+ * i386.md (movsf*, movdf*): Use 'C' instead of 'H'
+ * md.texi (machine dependent constraints): Document 'C'
+
+ * simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging.
+
+ * i386.c (ix86_expand_vector_move): Fix.
+
+ * i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64.
+ * i386.md (sse2_maskmovdqu_rex64): New pattern
+
+ PR target/8322
+ * xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast.
+ (ix86_init_mmx_sse_builtins): Fix type.
+
+2002-10-29 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * gthr-posix.h: Include <unistd.h> for feature tests.
+ (sched_get_priority_max, sched_get_priority_min)
+ (pthread_getschedparam, pthread_setschedparam): Only use
+ if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
+ (__gthread_objc_thread_set_priority): Don't treat all nonzero
+ returns from sched_get_priority_max and sched_get_priority_min
+ as an error.
+
+2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (TARGET_DEFAULT): Make it
+ MASK_QUICKCALL.
+
+2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_eightbit_constant_address_p): New.
+ (h8300_tiny_constant_address_p): Likewise.
+ * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use
+ h8300_eightbit_constant_address_p.
+ (TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p.
+ * config/h8300/h8300-protos.h: Add the prototypes for the two
+ new functions.
+
+2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * reload1.c (update_eliminables): Unconditionally check if
+ frame_pointer_needed has changed.
+
+Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
+ before final pass.
+
+2002-10-29 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/8334
+ * expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
+ check for zero operands explicitly.
+
+2002-10-29 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (extv, extzv, insv): Set size of referenced
+ memory after adjusting to BLKmode.
+
+2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (MASK_*): New.
+ (TARGET_*): Use MASK_*.
+
+2002-10-28 Zack Weinberg <zack@codesourcery.com>
+
+ * config.gcc (*-*-vxworks, powerpc-wrs-vxworks*): New stanzas.
+ * config/t-vxworks, config/vxworks.h, config/rs6000/t-vxworks,
+ config/rs6000/vxworks.h: New files.
+ * config/rs6000/sysv4.h: Rip out -mvxworks and all related code.
+
+ * config.gcc (alpha*-*-vxworks*, arm-*-vxworks*,
+ i?86-wrs-vxworks*, i960-wrs-vxworks* [all],
+ m68k-wrs-vxworks*, mips-wrs-vxworks, powerpc-wrs-vxworks*,
+ powerpcle-wrs-vxworks*, sparc*-wrs-vxworks* [all],
+ sparc-*-vxsim*): Delete stanzas.
+ * gthr-vxworks.h: Rip out all substantive code and just
+ include gthr-single.h.
+
+ * config/alpha/vxworks.h, config/arm/vxarm.h,
+ config/i386/vxi386.h, config/i960/t-vxworks960,
+ config/i960/vx960-coff.h, config/i960/vx960.h,
+ config/m68k/t-vxworks68, config/m68k/vxm68k.h,
+ config/mips/vxworks.h, config/rs6000/vxppc.h,
+ config/sparc/t-vxsparc, config/sparc/t-vxsparc64,
+ config/sparc/vxsim.h, config/sparc/vxsparc.h,
+ config/sparc/vxsparc64.h: Delete files.
+
+2002-10-28 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to
+ tm_defines if pthreads are enabled.
+ * config/netbsd.h (LIB_SPEC): Only support the -pthread option
+ if NETBSD_ENABLE_PTHREADS is defined.
+
+2002-10-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog.1: Fix typos.
+ * cse.c: Fix a comment typo.
+ * reload1.c: Likewise.
+
+2002-10-27 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * fixinc/inclhack.def (libc1_G_va_list): Correct test_text.
+ * fixinc/tests/base/_G_config.h: New file.
+
+2002-10-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c: Fix comment formatting.
+ * loop.c: Likewise.
+ * real.c: Likewise.
+ * regclass.c: Likewise.
+ * regmove.c: Likewise.
+ * regrename.c: Likewise.
+ * reg-stack.c: Likewise.
+ * reload1.c: Likewise.
+ * reload.c: Likewise.
+ * reload.h: Likewise.
+ * unroll.c: Likewise.
+
+2002-10-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * reload1.c (reload): Fix a comment typo.
+
+Sun Oct 27 10:15:24 CET 2002 Jan Hubicka <jh@suse.cz>
+
+ * linux64.h (DEFAULT_PCC_STRUCT_RETURN): Define.
+
+2002-10-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h.
+ * dwarf2out.c: Include hashtab.h.
+ (is_main_source): New static variable.
+ (attr_checksum, die_checksum): Modified to handle die references.
+ (same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap,
+ unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu,
+ record_comdat_symbol_number): New static functions.
+ (output_comp_unit, compute_section_prefix, is_type_die, break_out_includes,
+ mark_dies, unmark_dies, dwarf2out_start_source_file): Modified.
+ * toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type
+ declarations added.
+
+2002-10-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (initial_offset): Change to
+ h8300_initial_elimination_offset.
+ * config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use
+ h8300_initial_elimination_offset.
+ * config/h8300/h8300-protos.h: Update the prototype.
+
+2002-10-26 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.h (LIBCALL_VALUE): Use
+ MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM.
+ (FUNCTION_VALUE_REGNO_P): Similar, but move code to...
+ * config/mmix/mmix.c (mmix_function_value_regno_p): New.
+ * config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE
+ and RTX_CODE.
+ (mmix_function_value_regno_p): Declare.
+
+ * config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix,
+ invalid for floating point mode result, with fix.
+
+Fri Oct 25 00:04:21 2002 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in (GCC_FOR_TARGET): Add -L$(objdir)/../ld.
+ (STAGE2_FLAGS_TO_PASS): Pass GCC_FOR_TARGET.
+ (stage1_build): Likewise.
+
+2002-10-25 Mike Stump <mrs@apple.com>
+
+ Fixes gcc.dg/warn-1.c.
+ * c-typeck.c (warn_for_assignment): Don't print argument number,
+ if zero.
+
+Sat Oct 26 01:44:46 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (dump_file_index): Add DFI_ce3.
+ (dump_file_info): Likewise.
+ (rest_of_compilation): Run first ifcvt pass before tracer.
+
+2002-10-25 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove.
+
+2002-10-25 Richard Henderson <rth@redhat.com>
+
+ * real.c (real_to_decimal): If the >1 tens reduction loop results
+ in a negative exponent, fall into the <1 pten computation.
+
+2002-10-25 Zack Weinberg <zack@codesourcery.com>
+
+ PR middle-end/6994
+ * c-objc-common.c (inline_forbidden_p): Can not inline
+ functions containing structures or unions containing VLAs.
+ * tree-inline.c (walk_tree): For all class 't' nodes, walk
+ TYPE_SIZE and TYPE_SIZE_UNIT.
+ (copy_tree_r): Copy types if they are variably modified.
+
+2002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md: Remove old-style peepholes.
+
+2002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_decompose_address): Do not range check the
+ displacement if base or index is the argument pointer register.
+
+2002-10-24 Hans-Peter Nilsson <hp@bitrange.com>
+
+ PR other/3337
+ PR bootstrap/6763
+ PR bootstrap/8122
+ * fixinc/inclhack.def (libc1_G_va_list): New fix.
+ * fixinc/fixincl.x: Regenerate.
+ * config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside
+ ifndef IN_LIBGCC2. Wrap it together with signal.h and
+ sys/ucontext.h inclusion in ifndef USE_GNULIBC_1.
+ * configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too.
+ * config.in, configure: Regenerate.
+
+2002-10-24 Igor Shevlyakov <igor@microunity.com>
+
+ * varasm.c (struct rtx_const): Array size 16 for V16QImode.
+
+2002-10-24 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump.
+
+2002-10-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (initial_offset): Simplify by using
+ round_frame_size.
+
+2002-10-24 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * doc/install.texi (avr): Update required binutils version.
+
+2002-10-24 Theodore A. Roth <troth@openavr.org>
+
+ * doc/install.texi: Point avr users at more up-to-date information.
+
+2002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2
+ to pull operands out of the literal pool where possible.
+
+2002-10-24 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.c (init_cumulative_args): Test fntype for zero.
+
+2002-10-24 Steve Ellcey <sje@cup.hp.com>
+
+ * expr.c (convert_move): If unsignedp is less then zero there
+ is no equivalent code.
+
+2002-10-24 Zack Weinberg <zack@codesourcery.com>
+
+ * tree.def: Delete mention of nonexistent ARRAY_TYPE fields.
+
+2002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h: Rework comments; re-sort target macro definitions
+ according to the sequence they are defined in the manual.
+ (POINTER_BOUNDARY): Remove.
+
+2002-10-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (round_frame_size): Replace 8 with
+ BITS_PER_UNIT.
+
+2002-10-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it
+ 64-bit safe.
+ (TINY_CONSTANT_ADDRESS_P): Likewise.
+
+2002-10-24 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
+ (ia64_output_mi_thunk): Rewrite to use rtl, and to handle the
+ vcall offset.
+
+2002-10-24 Richard Henderson <rth@redhat.com>
+
+ PR opt/7944
+ * reload.c (find_reloads_toplev): Mode of X is not important
+ when simplifying subregs of constants.
+
+2002-10-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add
+ MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines.
+ * config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0.
+ (override_options): Base default setting of MASK_SOFT_FLOAT on -march
+ if MIPS_MARCH_CONTROLS_SOFT_FLOAT.
+
+2002-10-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * optabs.c (expand_binop): Don't reuse the shift target in the
+ middle of shift sequences.
+
+Wed Oct 23 22:48:44 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (abs splitters): Do not produce nested subregs.
+
+Wed Oct 23 12:42:32 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movti_rex64): Fix constraints.
+
+Wed Oct 23 12:01:21 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (abssf,absdf): Use vector operands for SSE
+ (abssf2_ifs, absdf2_ifs, absdf2_ifs_rex64 and splitters): Update for
+ vector operand.
+
+2002-10-23 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (get_static_reference): Remove unneeded
+ TYPE_BINFO initialization.
+ (get_object-reference): Likewise.
+ (build_constructor): Tighten precondition check.
+ (finish_message_expr): Likewise.
+
+2002-10-23 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test
+ after CONST test.
+
+2002-10-23 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats
+ in HFAs.
+
+2002-10-23 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
+ (alpha_output_mi_thunk_osf): Handle vcall_offset.
+
+2002-10-23 Zack Weinberg <zack@codesourcery.com>
+
+ * langhooks.h (struct lang_hooks_for_tree_inlining): Add
+ var_mod_type_p.
+ * langhooks-def.h: Default for tree_inlining.var_mod_type_p is
+ hook_tree_bool_false.
+
+ * tree.c (variably_modified_type_p): Moved here from
+ cp/tree.c. Use lang_hooks.tree_inlining.var_mod_type_p for
+ language-specific cases. Due to this, must weaken some 'if
+ and only if' checks to merely 'if'.
+ * tree.h: Prototype variably_modified_type_p.
+
+ * tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end.
+
+2002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove.
+ * config/s390/s390.c (optimization_options): Disable -fcaller-saves.
+
+ * config/s390/s390-protos.h (fp_operand): Remove.
+ * config/s390/s390.c (fp_operand): Remove.
+ * config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P.
+ ("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise.
+ ("movsi", "*movsi_lhi", "*movsi_lli"): Likewise.
+ (movdi_31, movdf_31 splitters): Likewise.
+
+ * config/s390/s390.h (IEEE_FLOAT): Remove.
+ (TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT.
+ (INT_REGNO_P): Rename to ...
+ (GENERAL_REGNO_P): ... this.
+ (FLOAT_REGNO_P): Rename to ...
+ (FP_REGNO_P): ... this.
+ (ADDR_REGNO_P): New macro.
+ (GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros.
+ (REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove.
+ (DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise.
+ (HARD_REGNO_NREGS): Adapt to macro renaming.
+ (HARD_REGNO_MODE_OK): Likewise.
+
+2002-10-23 David Edelsohn <edelsohn@gnu.org>
+ Geoff Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_register_move_cost): New function.
+ (rs6000_memory_move_cost): New function.
+ * config/rs6000/rs6000-protos.h: Declare them.
+ * config/rs6000/rs6000.h: Use them.
+
+2002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when
+ inlining it into other libgcc2 routines.
+ (__udivmoddi4): Likewise.
+
+2002-10-22 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * doc/sourcebuild.texi (Test Suites): Improve.
+
+2002-10-22 Stan Shebs <shebs@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing
+ case for Darwin.
+
+2002-10-22 Jim Wilson <wilson@redhat.com>
+
+ * config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok.
+
+Wed Oct 23 01:52:36 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ PR other/8289
+ * xmmintrin.h: Add const to the argument of loads.
+
+ * i386.md (pushv2di): New pattern.
+ PR target/6890
+ * xmmintrin.h (_MM_TRANSPOSE4_PS): New.
+
+2002-10-22 Richard Henderson <rth@redhat.com>
+
+ * target.h (gcc_target.asm_out): Merge output_mi_thunk and
+ output_mi_vcall_thunk into a single hook. Add can_output_mi_thunk.
+ * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize.
+ (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
+ (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
+ (TARGET_ASM_OUT): Update.
+ * hooks.c (hook_bool_tree_hwi_hwi_tree_false): New.
+ (hook_bool_tree_hwi_hwi_tree_true): New.
+ (default_can_output_mi_thunk_no_vcall): New.
+ * hooks.h: Declare them.
+ * system.h (ASM_OUTPUT_MI_THUNK): Poison.
+
+ * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
+ (alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter.
+ * config/arm/arm.c, config/cris/cris.c, config/frv/frv.c,
+ config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c,
+ config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c,
+ config/stormy16/stormy16.c: Similarly.
+
+ * config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code.
+ Handle 64-bit properly. Streamline.
+ (x86_output_mi_vcall_thunk): Remove.
+ (x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit.
+ (x86_can_output_mi_thunk): New.
+ (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
+ (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
+ (override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk.
+
+ * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from
+ output_mi_thunk; make static; always use function_section.
+ (TARGET_ASM_OUTPUT_MI_THUNK): New.
+ (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
+ (rs6000_ra_ever_killed): Test no_new_pseudos not
+ targetm.asm_out.output_mi_thunk in conjunction with thunks.
+ * config/rs6000/rs6000-protos.h: Update.
+ * config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
+ * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call
+ xcoffout_declare_function when using rs6000_output_mi_thunk.
+
+ * config/s390/s390.c (s390_output_mi_thunk): Rename from
+ s390_output_mi_vcall_thunk.
+ (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
+ (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
+
+ * config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset.
+ (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
+ * config/vax/vax-protos.h: Update.
+ * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove.
+
+Wed Oct 23 00:33:11 CEST 2002 Jan Hubicka <jh@suse,cz>
+
+ * i386.c (standard_sse_constant_p): Accept vector and integer zeros too.
+ * i386.h (EXTRA_CONSTRAINT): Recognize 'C'
+ * i386.md (movti_internal): Use 'C'
+
+ * xmmintrin.h (_mm_cmplt_epi*): New.
+
+2002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*movdi_64"): Fix op_type attribute.
+ ("*movdf_64"): Likewise.
+ ("*lshrdi3_64"): Likewise.
+ ("blockage"): Add length attribute.
+ ("lit"): Likewise.
+
+Tue Oct 22 23:51:34 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md: FIx typo.
+ (sse2_cvtsi2sd, sse2_pslrdq): Fix template.
+ (sse2_umulv2siv2di3): Fix predicate.
+ (sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3,
+ lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise.
+ * xmmintrin.h (_mm_mul_epu16): Rename to...
+ (_mm_mul_epu32): This one.
+ (_mm_cvtsi32_si128, _mm_cvtsi128_si32): New.
+
+ (contains_128bit_aligned_vector_p): Undo accidental checkin.
+
+2002-10-22 Eric Christopher <echristo@redhat.com>
+
+ * config/sparc/sparc.h: Add #error.
+
+2002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file.
+ [s390x-*-linux*]: Likewise.
+ * config/s390/t-linux: Remove.
+ * config/s390/s390.h: Include fixdfdi.h when building libgcc2.
+
+Tue Oct 22 19:07:03 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128.
+ (ix86_expand_builtin): Fix MASKMOVDQU expasion.
+ * i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128.
+ * i386.md (mmx_punpck?dq): Simplify.
+ (sse2_pubpcklqdq): Fix.
+ (sse2_pubpckhqdq): New.
+ * xmmintrin.h (_mm_unpackhi_epi32): New.
+
+ * xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes.
+ (_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo.
+
+2002-10-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/7209
+ * fold_const.c (fold_binary_op_with_conditional_arg): Always
+ build compound_expr if we used save_expr.
+
+2002-10-22 Alan Modra <amodra@bigpond.net.au>
+
+ * output.h (SECTION_NOTYPE): Define.
+ * varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for
+ init array sections.
+ (default_elf_asm_named_section): Mind SECTION_NOTYPE.
+ * config/arm/arm.c (arm_elf_asm_named_section): Likewise. Also
+ merge TLS support.
+
+2002-10-21 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_function_ok_for_sibcall): Look at
+ the function type, not the return type.
+
+2002-10-21 Richard Henderson <rth@redhat.com>
+
+ * real.c (sticky_rshift_significand): Return inexact, don't
+ or it in immediately.
+ (sub_significands): Accept incomming carry.
+ (div_significands, rtd_divmod): Update for sub_significands change.
+ (round_for_format): Update for sticky_rshift_significand change.
+ (do_add): Don't involve the inexact bit in addition, do give the
+ inexact bit as the subtraction carry-in.
+ (encode_internal, decode_internal, real_internal_format): New.
+ * real.h (real_internal_format): Declare.
+
+2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that
+ don't define sdiv_qrnnd.
+
+2002-10-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify
+ using IN_RANGE.
+ (TINY_CONSTANT_ADDRESS_P): Likewise.
+
+Tue Oct 22 00:04:20 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (builtin_description): Add punpcklqdq and movdq2q
+ (ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di,
+ v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar,
+ void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q,
+ __builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd
+ __builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored
+ __builtin_ia32_setzero128.
+ (ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA,
+ IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA,
+ IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ.
+ * i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU,
+ IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD,
+ IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q,
+ IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ.
+ * i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored,
+ sse2_movq): New patterns.
+ (sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix.
+ * xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64,
+ _mm_store_si128, _mm_storeu_si128, _mm_storel_epi64,
+ _mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16,
+ _mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16,
+ _mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16,
+ _mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions.
+ (_mm_insert_epi16): Fix.
+
+2002-10-21 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
+ unsafe math reversals correctly for RTL generation.
+ (output_cbranch): Replace rs6000_reverse_condition call
+ by its former definition.
+
+2002-10-21 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip
+ argument. In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or
+ from constant pool or LABEL_REFs as sign extended if allow_rip.
+ Change all +-1GB limits to +-16MB.
+ (x86_64_general_operand, x86_64_szext_general_operand,
+ x86_64_nonmemory_operand, x86_64_movabs_operand,
+ x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
+ legitimate_address_p, ix86_expand_int_movcc): Update callers.
+ (local_symbolic_operand): Don't allow offsets bigger than +-16MB
+ in CM_SMALL_PIC model.
+ (legitimate_pic_address_disp_p): Don't check offsets before
+ calling local_symbolic_operand.
+ (legitimize_pic_address): Force offsets bigger than +-16MB into
+ register.
+ * config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise.
+ * config/i386/i386-protos.h (x86_64_sign_extended_value): Update
+ prototype.
+
+ * configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too.
+ Add x86-64 test. Set tls_first_minor to 14 on IA-32 and x86-64.
+ * configure: Rebuilt.
+ * config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS
+ SYMBOL_REFs unless enclosed in UNSPEC. Handle UNSPEC_DTPOFF,
+ UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF.
+ (legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT
+ -fpic.
+ (ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for
+ non-pic code if TARGET_64BIT.
+ (legitimize_address): Generate 64-bit TLS sequences.
+ (output_pic_addr_const): Support x86-64 TLS operators.
+ (i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0.
+ (print_operand_address): Use %fs instead of %gs on TARGET_64BIT.
+ Don't append (%rip) in 64-bit TLSGD and TLSLD sequences.
+ (output_addr_const_extra): Support x86-64 TLS operators.
+ (maybe_get_pool_constant): Handle TARGET_64BIT -fpic.
+ (ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT
+ unconditionally.
+ * config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to...
+ (*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT.
+ (*tls_global_dynamic_sun): Renamed to...
+ (*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT.
+ (tls_global_dynamic): Renamed to...
+ (tls_global_dynamic_32): ... this.
+ (tls_global_dynamic_64, *tls_global_dynamic_64): New.
+ (*tls_local_dynamic_base_dynamic_gnu): Renamed to...
+ (*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT.
+ (*tls_local_dynamic_base_dynamic_sun): Renamed to...
+ (*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT.
+ (tls_local_dynamic_base_dynamic): Renamed to...
+ (tls_local_dynamic_base_dynamic_32): ... this.
+ (tls_local_dynamic_base_dynamic_64,
+ *tls_local_dynamic_base_dynamic_64): New.
+ (*tls_local_dynamic_once): Renamed to...
+ (*tls_local_dynamic_32_once): ... this.
+
+2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3,
+ __divdi3, __umoddi3, or __moddi3.
+
+2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * c-opts.c (missing_arg): Use cl_options[opt_index].opt_code
+ instead of just opt_index as switch expression.
+
+ * calls.c (store_one_arg): Change type of 'excess_align'
+ to unsigned int.
+
+ * profile.c (output_gcov_string): Change type of 'temp'
+ to size_t.
+
+2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes.
+ (__fixunssfdi, __fixsfdi): Likewise.
+ * config/s390/s390.c (s390_single_hi): Initialize 'value'.
+ (s390_single_qi): Likewise.
+ (s390_emit_epilogue): Initialize 'offset'. Remove signed vs.
+ unsigned comparison warning.
+ (s390_return_addr_rtx): New function.
+ * config/s390/s390-protos.h (s390_return_addr_rtx): Declare it.
+ * config/s390/s390.h (RETURN_ADDR_RTX): Use it.
+ (HARD_REGNO_MODE_OK): Rewrite condition to silence warnings.
+
+2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_output_mi_vcall_thunk): New function.
+ (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook.
+ (s390_output_mi_thunk): Remove.
+ (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
+
+2002-10-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (N_REG_CLASSES): Parenthesize.
+
+2002-10-20 Zack Weinberg <zack@codesourcery.com>
+
+ * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix an
+ inverted test in the conditional determining the possibility
+ of sibcalls in PIC mode.
+
+2002-10-20 Richard Henderson <rth@redhat.com>
+
+ * target.h (struct gcc_target): Line wrap.
+
+ * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static.
+ (TARGET_ASM_OUTPUT_MI_THUNK): Define here...
+ * config/alpha/alpha.h: ... not here.
+ * config/alpha/alpha-protos.h: Update.
+
+ * config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h
+ config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
+ config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
+ config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h,
+ config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c,
+ config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c,
+ config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h,
+ config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
+ config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h,
+ config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h,
+ config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
+ config/sparc/openbsd.h, config/sparc/sparc-protos.h,
+ config/sparc/sparc.c, config/sparc/sparc.h,
+ config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
+ config/stormy16/stormy16.h: Similarly.
+
+ * config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic
+ selection logic from call patterns.
+
+2002-10-20 Mark Mitchell <mark@codesourcery.com>
+
+ * config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo.
+
+2002-10-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR other/8202
+ * i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and
+ expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128.
+ * i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New.
+ * xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New.
+
+2002-10-20 Roger Sayle <roger@eyesopen.com>
+
+ PR c/761
+ * toplev.c (flag_unsafe_profile_arcs): Remove.
+ (flag_bounded_pointers): Remove.
+ (flag_bounds_check): Correct comments.
+ (lang_independent_options): Remove -funsafe-profile-arcs and
+ -fbounded-pointers. Correct -fbounds-check comments.
+
+ * flags.h: Correct flag_schedule_interblock comments.
+ (flag_bounded_pointers): Remove prototype.
+ (flag_bounds_check): Correct comments.
+
+ * c-opts.c (c_common_init_options): No need to mark
+ flag_bounds_check as unspecified.
+ (c_common_post_options): And no need to set it from
+ flag_bounded_pointers if its still unspecified.
+
+ * doc/invoke.texi: Fix some overfull hboxes in "make dvi".
+ Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock,
+ -fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous,
+ -fsched-verbose=n, -fno-branch-count-reg and -fbounds-check.
+
+Sat Oct 19 22:02:28 2002 Alexandre Oliva <aoliva@redhat.com>
+ Angela Marie Thomas <angela@releasedominatrix.com>
+ Brendan Kehoe <brendan@zen.org>
+ Nick Clifton <nickc@redhat.com>
+ Andrew Haley <aph@redhat.com>
+
+ * configure.in (--with-sysroot): New. Don't inhibit libc if
+ given. AC_SUBST TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE
+ and CROSS_SYSTEM_HEADER_DIR.
+ * configure: Rebuilt.
+ * Makefile.in (CROSS_SYSTEM_HEADER_DIR): Set in configure.
+ (TARGET_SYSTEM_ROOT): New.
+ (DRIVER_DEFINES): Define CROSS_INCLUDE_DIR from
+ CROSS_SYSTEM_HEADER_DIR.
+ (install-gcc-tooldir): New target.
+ (stmp-fixinc): Do not create $(libsubdir), but rather bail out
+ if SYSTEM_HEADER_DIR does not exist and it's not the default
+ sys-include directory.
+ (deduced.h, stmp-fixproto): Quote SYSTEM_HEADER_DIR properly.
+ (install-mkheaders): Likewise.
+ * gcc.c (target_system_root): New variable.
+ (add_sysrooted_prefix): New function.
+ (process_command): Recompute run-time target_system_root from
+ gcc_exec_prefix, keeping it unchanged if the relocated sysroot
+ does not exist.
+ (do_spec_1): Process 'R' spec.
+ (main): Add md_exec_prefix to exec_prefixes regardless of
+ startfile_prefix_spec. Use add_sysrooted_prefix for
+ startfile_prefixes, and don't skip the default ones when cross
+ compiling with sysroot enabled. Removed unused case of
+ non-absolute standard_startfile_prefix.
+ * config/interix.h: Remove the only potential, yet disabled,
+ occurrence of non-absolute (empty) standard_startfile_prefix.
+ * config/sh/linux.h (LIB_SPEC): Add -rpath-link in non-static
+ linking.
+ * config/mips/linux.h (LIB_SPEC): Define as in sh/linux.h.
+ * doc/install.texi (--with-sysroot): Document.
+ (--with-headers, --with-libs): Deprecate.
+
+2002-10-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+ Mark Mitchell <mark@codesourcery.com>
+
+ * alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to
+ match target.h.
+ * arm-protos.h, arm.c (arm_output_mi_thunk): Likewise.
+ * cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise.
+ * frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise.
+ * i386-protos.h, i386.c (x86_output_mi_vcall_thunk,
+ x86_output_mi_thunk): Likewise.
+ * i960-protos.h, i960.c (i960_output_mi_thunk): Likewise.
+ * ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise.
+ * m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise.
+ * mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise.
+ * rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise.
+ * s390-protos.h, s390.c (s390_output_mi_thunk): Likewise.
+ * stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk):
+ Likewise.
+ * vax-protos.h, vax.c (vax_output_mi_thunk): Likewise.
+
+ * target.h (gcc_target): Update output_mi_thunk and
+ output_mi_vcall_thunk to take a HOST_WIDE_INT delta and
+ vcall_index.
+
+ * config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with
+ TARGET_ASM_OUTPUT_MI_THUNK in comments.
+ * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it.
+ (TARGET_ASM_OUTPUT_MI_THUNK): #undef it.
+ * config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition.
+ * config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update
+ signature.
+ * config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise.
+ * config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
+ TARGET_ASM_OUTPUT_MI_THUNK in comments.
+ * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define.
+ (TARGET_ASM_OUTPUT_MI_THUNK): Do define.
+ * config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
+ TARGET_ASM_OUTPUT_MI_THUNK in comments.
+ * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef
+ ASM_OUTPUT_MI_THUNK and replace with check of targetm.
+
+ * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature.
+ (TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise.
+
+2002-10-19 Brad Lucier <lucier@math.purdue.edu>
+
+ * real.c (do_add): Fix 0+0 sign corner case.
+ (do_divide): Fix Inf/0 corner case.
+
+Sun Oct 20 00:31:31 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (classify_argument): Pass MMX arguments in memory
+ (ix86_expand_builtin): Expand proper address mode for cflush.
+ * i386.md (movdqa): Fix typo.
+ (sse2_cflush): Accept DImode addresses.
+
+ * xmmintrin.h (_mm_sqrt_sd): Accept two arguments.
+ (_mm_max_sd): Fix pasto.
+ (_mm_storeh_pd, _mm_storel_pd): Fix.
+
+ * i386.c (bdesc_comi): Fix to match specification.
+ (ix86_expand_sse_comi): Emit the comparison properly.
+ * i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi):
+ Do not use comparison operator.
+ (vnmaskcmp): Fix template.
+
+ * xmmintrin.h (_mm_cvtps_pi16): Fix.
+
+2002-10-19 Sebastian Pop <s.pop@laposte.net>
+
+ * dependence.c : Removed.
+ * Makefile.in : Remove dependence.o.
+
+Sat Oct 19 10:46:52 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * mmintrin.h (__m64): typedef it to v2si.
+ (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
+ _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
+ _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
+ _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
+ _mm_or_si64, _mm_xor_si64): Add neccesary casts.
+ * xmmintrin.h (_mm_setzero_si64): Likewise.
+
+ * i386.h (ALIGN_MODE_128): Update comment; add missing modes
+ (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
+
+ PR target/7693
+ Patch by Shawn Wagner
+ * mmintrin.h: Replace pi64 by si64.
+
+2002-10-18 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.md (movdf_hardfloat32): Order alternatives consistently.
+ Use length of 4 not *.
+ (movdf_hardfloat64): Same. Support DFmode moves to/from CTR/LR.
+ (movdf_softfloat64): Likewise.
+ (movdi_internal32): Use length of 4 not *.
+ (movti_power): Same.
+ (ctrsi, ctrdi): Same.
+
+2002-10-18 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (start_decl): Point users of the old initialized-
+ typedef extension at __typeof__.
+
+2002-10-18 Richard Henderson <rth@redhat.com>
+
+ * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
+ (real_to_decimal): Re-implement using the logic from the
+ gcc 3.2 etoasc. Comment heavily.
+ (div_significands): Simplify loop startup and comparison logic.
+
+2002-10-18 Mark Mitchell <mark@codesourcery.com>
+
+ * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
+ (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
+ (TARGET_ASM_OUT): Add them.
+ * target.h (asm_out): Add output_mi_thunk and
+ output_mi_vcall_thunk.
+ * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
+ * config/arm/arm.c (arm_output_mi_thunk): Define.
+ * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
+ prototype.
+ (x86_output_mi_vcall_thunk): Declare.
+ * config/i386/i386.c (override_options): Clear
+ output_mi_vcall_thunk in 64-bit mode.
+ (ix86_fntype_regparm): New function.
+ (ix86_return_pops_args): Use it.
+ (ia32_this_parameter): New function.
+ (x86_output_mi_vcall_thunk): New function.
+ (x86_output_mi_thunk): Use it
+ * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
+ (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
+ * config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
+ * config/i960/i960.c (i960_output_mi_thunk): New function.
+ * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
+ * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
+ * config/ia64/ia64.c (ia64_output_mi_thunk): Define.
+ * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
+ * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
+ * config/s390/s390.c (s390_output_mi_thunk): Define.
+ * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
+ * config/vax/vax.c (vax_output_mi_thunk): Define.
+ * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
+ (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
+ * doc/tm.texi: Adjust documentation.
+
+2002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
+ __enable_execute_stack function.
+ * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
+ as NETBSD_ENABLE_EXECUTE_STACK.
+ * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
+ * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
+ * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
+ * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
+ * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
+
+2002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/i386/i386.c (x86_initialize_trampoline): Emit a call
+ to __enable_execute_stack with the address of the trampoline
+ if TRANSFER_FROM_TRAMPOLINE is defined.
+ * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
+ constant if building libgcc2.
+
+Thu Oct 17 17:40:05 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (pentium4_cost): Fix according to Intel recommendations.
+ (ix86_memory_move_cost): Fix for 64bit compilation.
+
+2002-10-17 Roger Sayle <roger@eyesopen.com>
+
+ * doc/c-tree.texi: Update description of COND_EXPR tree nodes.
+
+2002-10-17 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
+ in CTR/LR/MQ.
+ * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
+ to/from CTR/LR/MQ.
+ (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
+ (movsf_softfloat): Likewise.
+
+2002-10-17 Janis Johnson <janis187@us.ibm.com>
+
+ * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
+
+2002-10-17 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/alpha/alpha.c (alpha_initialize_trampoline): Use
+ tramp, not addr, to pass the trampoline address to
+ __enable_execute_stack.
+
+Thu Oct 17 18:40:47 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * mmintrin.h: Guard by __MMX__
+ * xmmintrin.h: Guard by __SSE__
+
+ PR other/8062
+ * xmmintrin.h (_MM_SHUFFLE2): New macro.
+ (_mm_load*_?d): New functions.
+ (_mm_set*_?d): New functions.
+ (_mm_store*_?d): New functions.
+
+Wed Oct 16 15:01:29 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ Really commit patch announced at Oct 14
+ PR c/7344
+ * predict.c (can_predict_insn_p): New function.
+ (estimate_probability): Avoid unnecesary work.
+ (process_note_prediction): Likewise.
+ * toplev.c (rest_of_compilation): Account early branch prediction pass
+ as TV_BRANCH_PROB.
+
+ PR other/8048
+ Found by Ian Ollmann
+ * xmmintrin.h (_mm_shuffle_pd): Fix typo.
+ (_mm_load?_pd): Likewise.
+ (_mm_store?_pd): Likewise.
+
+ PR target/7386
+ * i386.c (builtin_description):Drop cmpg[te]s[sd].
+ * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
+ swapped alternative.
+
+ PR opt/7630
+ * reload1.c (reload_inner_reg_of_subreg): New argument output;
+ (push_reload): Update call.
+
+2002-10-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
+ if using mips/elf.h or mips/elf64.h.
+ * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
+ * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
+
+2002-10-16 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
+ SI.
+
+2002-10-16 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
+ (LPREFIX): Likewise.
+ (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
+ ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
+ ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
+ TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
+ GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
+
+ * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
+ ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
+ ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
+ BSS_SECTION_ASM_OP): Move from linux.h.
+ (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
+ Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
+
+ * config/s390/s390.c (s390_function_profiler): Use
+ ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
+
+2002-10-15 Eric Christopher <echristo@redhat.com>
+
+ * stor-layout.c (layout_type): Call GET_MODE_BITSIZE once.
+ * java/parse.y (obtain_incomplete_type): Make pointer
+ ptr_mode.
+
+2002-10-15 Richard Henderson <rth@redhat.com>
+
+ * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
+ as arguments. Bound DIGITS by the available buffer size.
+ (real_to_hexadecimal): Likewise.
+ * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
+ (REAL_VALUE_TO_DECIMAL): Remove.
+ * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
+ sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
+ config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
+ config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
+ config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
+ config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
+ config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
+ use real_to_decimal directly, and with the proper arguments.
+ * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
+
+2002-10-15 Jim Wilson <wilson@redhat.com>
+
+ * reload1.c (merge_assigned_reloads): After converting overlapping
+ reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
+
+ * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
+
+Tue Oct 15 22:08:35 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * expr.c (do_tablejump): Fix typo in my previous commit.
+
+2002-10-15 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
+
+2002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_split_branches): Add return
+ value. Add parameters TEMP_REG and TEMP_USED. Use unspec 104.
+
+ (find_base_register_in_addr): New function.
+ (find_base_register_ref): New function.
+ (replace_base_register_ref): New function.
+
+ (struct constant_pool): Add members pool_insn, insns, and anchor.
+ Remove member last_insn.
+ (s390_start_pool): Initialize them.
+ (s390_end_pool): Emit pool placeholder insn.
+ (s390_add_pool_insn): New function.
+ (s390_find_pool): Use insns bitmap instead of addresses.
+ (s390_dump_pool): Replace placeholder insn. Emit anchor.
+ Replace unspec 104 by local-pool-relative references.
+ (s390_output_constant_pool): Output anchor label if required.
+ (s390_output_symbolic_const): Handle unspec 104 and 105.
+ (s390_add_pool): Remove, replace by ...
+ (s390_add_constant, s390_find_constant): ... these new functions.
+ (s390_add_anchor): New function.
+
+ (s390_chunkify_pool): Delete, replace by ...
+ (s390_chunkify_start, s390_chunkify_finish,
+ s390_chunkify_cancel): ... these new functions.
+ (s390_optimize_prolog): Add parameter TEMP_REGNO.
+ Recompute register live data for special registers.
+ (s390_fixup_clobbered_return_reg): New function.
+ (s390_machine_dependent_reorg): Rewrite to use new
+ s390_chunkify_... routines.
+
+ config/s390/s390.md ("reload_base"): Rename to ...
+ ("reload_base_31"): ... this.
+ ("reload_base_64"): New insn.
+ ("reload_base2"): Remove.
+ ("reload_anchor"): New insn.
+ ("pool"): New insn.
+
+ s390.c (s390_pool_overflow): Remove.
+ s390.h (s390_pool_overflow): Likewise.
+ s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
+
+Tue Oct 15 16:51:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (movv8qi_i+2): Don't split if source is -1.
+
+2002-10-15 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/install.texi: Formatting changes for conformance to HTML 4.01.
+
+2002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR opt/7409
+ * loop.c (loop_regs_scan): Mark registers used for function
+ argument passing as MAY_NOT_OPTIMIZE.
+
+Mon Oct 14 19:22:19 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * gcov-io.h (gcov_info): Fix type.
+ * profile.c (create_profiler): Fix type mismatch.
+
+Mon Oct 14 20:33:12 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (movv2di_internal): New pattern.
+ (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
+ (movv2di): New expander.
+ * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
+
+ * i386.c (ix86_expand_timode_binop_builtin): Delete.
+ (builtin_description): Add SSE1 logicals; rename SSE2 logicals.
+ (ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
+ (ix86_expand_builtin): Likewise.
+ * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
+ sse_andti3,
+ sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
+ sse_andnti3,
+ sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
+ sse_orti3,
+ sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
+ sse_xorti3): Kill.
+ (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
+ sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
+ (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
+ *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
+ (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
+ *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
+
+ * xmmintrin.h (__m128i): Define as __v2di.
+
+ PR c++/6419
+ (expand_expr): Use DECL_RTL_SET_P.
+
+2002-10-14 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (simplify_set): Treat MODE_CC registers like cc0.
+
+2002-10-14 Roger Sayle <roger@eyesopen.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * config/i386/i386.c (k6_cost): Correct typo.
+
+2002-10-14 Mark Mitchell <mark@codesourcery.com>
+
+ PR optimization/6631
+ * alias.c (objects_must_conflict_p): Check honor_readonly when
+ examining TYPE_READONLY.
+ * function.c (assign_stack_temp_for_type): Likewise.
+
+2002-10-14 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
+
+ * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
+ Swap zero extension arguments.
+ (umaxhi3): Fix instruction class.
+ PR target/7211
+ (prefetch): Fix prefetch instructions.
+ PR target/7238
+ (pkwb): Fix output constraint.
+
+2002-10-14 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.c (print_operand): Increase buffer size for
+ real numbers.
+
+2002-10-14 Richard Henderson <rth@redhat.com>
+
+ PR opt/8165
+ * gcse.c (adjust_libcall_notes): Revert last change.
+ * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
+
+2002-10-14 Andrew Haley <aph@redhat.com>
+
+ * tree-inline.c (remap_block): All local class initialization
+ flags go in the outermost scope.
+ (expand_call_inline): Call java_inlining_map_static_initializers.
+ (expand_call_inline): Call java_inlining_merge_static_initializers.
+ * java/lang.c (merge_init_test_initialization): New.
+ (java_inlining_merge_static_initializers): New.
+ (inline_init_test_initialization): New.
+ (java_inlining_map_static_initializers): New.
+
+ * tree-inline.c (expand_call_inline): Convert retvar to expected
+ type.
+
+2002-10-14 Graham Stott <graham.stott@btinternet.com>
+
+ * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
+
+2002-10-14 Aldy Hernandez <aldyh@redhat.com>
+
+ * stmt.c: Fix typo in comment.
+
+Mon Oct 14 11:35:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * c-common.c (c_common_type_for_mode): Add V2HImode case.
+ * tree.c (build_common_tree_nodes_2): Initialize
+ unsigned_V2HI_type_node and V2HI_type_node.
+ * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
+ (unsigned_V2HI_type_node, V2HI_type_node): Define.
+
+2002-10-14 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
+ Handle TARGET_64BIT.
+
+2002-10-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/vr.h (DRIVER_SELF_SPECS): Define.
+ * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
+ (MULTILIB_DIRNAMES): Remove long32.
+ (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
+ (MULTILIB_REDUNDANT_DIRS): Remove.
+
+2002-10-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/tm.texi (DRIVER_SELF_SPECS): Document.
+ * gcc.c (driver_self_specs): New variable.
+ (do_self_spec): New function.
+ (main): Use it to process driver_self_specs.
+
+2002-10-13 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_function_ok_for_sibcall): Reject
+ indirect sibcalls when regparm >= 3.
+
+ * config/i386/i386.c (sibcall_insn_operand): New.
+ * config/i386/i386.h (PREDICATE_CODES): Update.
+ * config/i386/i386-protos.h: Update.
+ * config/i386/i386.md (sibcall_1, sibcall_value_1): Use it.
+
+ * rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
+
+2002-10-12 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_binary_operation) [ASHIFTRT]: Optimize
+ arithmetic right shifts of ~0 during RTL simplifications.
+
+2002-10-12 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/7862
+ PR preprocessor/8190
+ * gcc.c (cpp_unique_options): Don't delete .d files.
+ Remove stray whitespace.
+
+2002-10-12 Naohiko Shimizu <pshimizu@fa2.so-net.ne.jp>
+
+ * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
+ (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
+ * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
+ (pdp11_output_function_epilogue, output_ascii): Likewise.
+ (output_addr_const_pdp11): Likewise.
+ * pdp11.md (movdi): Use offsetable memory for floating store.
+ (lshrsi3, negsi2): Delete irrelevant comment.
+
+2002-10-11 Andreas Bauer <baueran@in.tum.de>
+
+ * config/i386/i386.c (ix86_function_ok_for_sibcall): Allow
+ indirect calls to be sibcall optimized.
+ * config/i386/i386.md (sibcall_1): New.
+ (call_1): Add no-sibcalls condition.
+ (sibcall_value_1): New.
+ (call_value_1): Add no-sibcalls condition.
+
+2002-10-11 Eric Christopher <echristo@redhat.com>
+
+ * output.h (default_valid_pointer_mode): Declare.
+ * varasm.c (default_valid_pointer_mode): Define.
+ * target-def.h (TARGET_VALID_POINTER_MODE): Use.
+ * target.h: Ditto.
+ * tree.c (build_pointer_type_for_mode): New function.
+ (build_pointer_type): Use.
+ (build_reference_type_for_mode): New function.
+ (build_reference_type): Use.
+ * tree.h: Declare new functions.
+ * c-common.c (handle_mode_attribute): Use new functions, check
+ for type.
+ * stor-layout.c (layout_type): Depend on machine mode for
+ REFERENCE_TYPE and POINTER_TYPE.
+ * dwarf2out.c (simple_type_size_in_bits): Move upward in file.
+ (modified_type_die): Use instead of PTR_SIZE for POINTER_TYPE
+ and REFERENCE_TYPE.
+ * config/mips/mips.c (mips_valid_pointer_mode): New function.
+ (TARGET_VALID_POINTER_MODE): Use and define.
+ * config/mips/mips-protos.h (mips_valid_pointer_mode): Declare.
+
+2002-10-11 Geoffrey Keating <geoffk@apple.com>
+
+ * cse.c (mention_regs): Set SUBREG_TICKED to the register number,
+ not the address of the REG.
+ (struct cse_reg_info): Make subreg_ticked unsigned.
+
+2002-10-11 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/compat.texi: Add info about C++ libraries.
+
+2002-10-11 Richard Henderson <rth@redhat.com>
+
+ PR opt/8165
+ * gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
+
+2002-10-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * cfganal.c (dfs_enumerate_from): Use PARAMS.
+ * genautomata.c (output_insn_code_cases): Likewise.
+ * real.c (real_format): Likewise.
+ * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
+ ensure value is promoted before doing subtraction.
+
+Fri Oct 11 22:22:38 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * calls.c (expand_call): Simplify noreturn call.
+
+ PR c/7344
+ * cfgbuild.c (make_edges): Create edge cache when we do have
+ large jumptable.
+ * expr.c (do_tablejump): Note size of maximal jumptable.
+ * function.c (prepare_function_start): Zero out size.
+ * function.h (function): Add max_jumptable_ents.
+
+ * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
+
+Fri Oct 11 12:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
+ register for mperm_w operation.
+
+Fri Oct 11 10:56:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * emit-rtl.c (gen_lowpart_common): When asked to make a vector from
+ an integer, use simplify_gen_subreg.
+
+2002-10-10 Diego Novillo <dnovillo@redhat.com>
+
+ * calls.c (flags_from_decl_or_type): Make extern.
+ (ECF_*): Move ...
+ * rtl.h (ECF_*): ... here.
+ (flags_from_decl_or_type): Declare.
+
+2002-10-10 Roger Sayle <roger@eyesopen.com>
+ Nathan Sidwell <nathan@codesourcery.com>
+
+ * fold-const.c (fold) [RSHIFT_EXPR]: Optimize arithmetic right
+ shifts of the form -1 >> x.
+
+Thu Oct 10 16:52:55 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
+
+2002-10-10 Aldy Hernandez <aldyh@redhat.com>
+
+ * extend.texi (Vector Extensions): Remove comment about single
+ element vectors.
+
+2002-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c (size_htab_hash): Use htab_hash_pointer.
+ * function.c (insns_for_mem_hash): Likewise.
+ * varasm.c (STRHASH): Likewise.
+
+2002-10-10 Stuart Hastings <stuart@apple.com>
+
+ * cse.c (struct cse_reg_info): Add subreg_ticked.
+ (SUBREG_TICKED): New.
+ (get_cse_reg_info): Initialize SUBREG_TICKED.
+ (mention_regs): Use it.
+ (invalidate): Set SUBREG_TICKED.
+ (invalidate_for_call): Likewise.
+ (addr_affects_sp_p): Likewise.
+
+2002-10-10 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (tls_local_dynamic_base): Put pic reg
+ into proper operand.
+
+2002-10-10 Denis Chertykov <denisc@overta.ru>
+
+ * config/ip2k/ip2k.c (function_epilogue): Optimize stack
+ deallocation.
+ * config/ip2k/libgcc.S: Combine routines used by function
+ epilogue.
+
+2002-10-10 Jim Wilson <wilson@redhat.com>
+
+ * cse.c (fold_rtx): Don't perform associative optimization for DIV and
+ UDIV.
+
+2002-10-10 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/aix52.h: New file.
+ * config/rs6000/t-aix52: New File.
+ * config.gcc (rs6000-ibm-aix5.1.*): New entry.
+ (rs6000-ibm-aix[56789].*): Default to AIX 5.2.
+
+Thu Oct 10 19:37:54 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ PR target/5610
+ * invoke.texi (-msse-math): Kill
+ (-msse): Add note to mfpmath=sse.
+
+Thu Oct 10 17:08:30 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ PR target/7723
+ * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
+
+2002-10-10 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/8179
+ * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
+ as cc1_options.
+ (default_compilers): Pass debug options when preprocessing
+ stdin.
+
+2002-10-06 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (rest_of_compilation): Revert opt/2960 change.
+
+Wed Oct 9 21:18:43 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (*_cost): Add branch costs.
+ (override_options): set ix86_branch_cost.
+ (ix86_expand_int_movcc): Use BRANCH_COST.
+ * i386.h (costs): Add branch_cost.
+
+2002-10-09 Zack Weinberg <zack@codesourcery.com>
+
+ PR c/7353
+ * c-decl.c (start_decl): Unconditionally issue error for
+ 'typedef foo = bar'.
+ (finish_decl): Remove special case for TYPE_DECL with initializer.
+
+ * doc/extend.texi: Delete "Naming Types" section. Change all
+ cross-references to that section to refer to "Typeof" instead.
+ Add the useful safe-max()-macro example from "Naming Types" to
+ "Typeof", rewritten using that extension. Add some compatibility
+ notes to "Typeof."
+
+2002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * loop.c: Revert 2002-08-15 change.
+ (LOOP_REGNO_NREGS): Ensure type is int.
+
+2002-10-09 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (extenddftf2): Change to define_insn
+ which copies first FPR and clears second.
+ (extendsftf2): Same.
+ (floatditf2): Fix typo.
+ (floatsitf2): Same.
+ (fix_trunctfdi2): Same.
+ (fix_trunctfsi2): Same.
+
+2002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * conflict.c (arc_hash): Change return type to hashval_t.
+ * cselib.c (get_value_hash): Likewise.
+ * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
+ state_hash, automata_list_hash): Likewise.
+ * read-rtl.c (def_hash): Likewise.
+ * tree.c (type_hash_hash): Likewise.
+
+2002-10-08 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
+ prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
+
+Wed Oct 9 15:54:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (ffssi2): Fix emitted code.
+
+2002-10-09 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * cse.c (insn_live_p): Pass insn pattern, not full insn
+ to may_trap_p.
+
+2002-10-09 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppmacro.c (paste_tokens): Only allow / to paste with =.
+
+2002-10-09 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
+ 64-bit hosts.
+ (movtf_internal): Reference correct displacement for second value
+ in memory.
+ (movtf splitter): Correct generation of constants in 64-bit mode.
+
+2002-10-09 Alan Modra <amodra@bigpond.net.au>
+
+ * libgcc2.c (__floatdisf): Properly cure double rounding.
+
+2002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
+ * doc/cpp.texi (Common Predefined Macros): Document.
+
+2002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR doc/7484
+ * doc/invoke.texi (Option Summary): List
+ -Wmissing-declarations as a C only option.
+
+2002-10-08 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) [LROTATE_EXPR, RROTATE_EXPR]: Optimize
+ left and right rotates of ~0, i.e. integer_all_onesp (arg0).
+ [LSHIFT_EXPR, RSHIFT_EXPR]: Optimize shifts and rotates of zero.
+
+Tue Oct 8 01:24:19 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
+ x86_sse_typeless_stores, x86_sse_load0_by_pxor): New global
+ variables.
+ (safe_vector_operand): Update sse_clrv4sf call.
+ (ix86_expand_buildin): Likewise
+ * i386.h (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
+ x86_sse_typeless_stores, x86_sse_load0_by_pxor): Declare.
+ (TARGET_SSE_PARTIAL_REG_DEPENDENCY, TARGET_SSE_PARTIAL_REGS,
+ TARGET_SSE_TYPELESS_STORES, TARGET_SSE_TYPELESS_LOAD0): New
+ macros.
+ * i386.md (movsf*, movdf*, movti, movv4sf, movv2df, movv16qi, movv8hi,
+ movv4si): Obey the new flags.
+ (floatsi2sf, floatdi2sf, truncatedf2sf): Emit extra load of 0 to avoid
+ reformating penalty.
+ (anddf, cmov patterns): Avoid reformating by first converting.
+ (sse_cvtsd2ss): Fix predicate.
+ (sse2_clrti): Fix mode,
+ (sse_clrv4sf): Avoid unspec.
+
+2002-10-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
+ mno-app-regs|mcmodel=medany.
+ (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
+ (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
+ (CRTSTUFF_T_CFLAGS): Define.
+
+2002-10-08 Roger Sayle <roger@eyesopen.com>
+
+ PR target/8087
+ * simplify-rtx.c (avoid_constant_pool_reference): Allow constant
+ pool references that are constructed using LO_SUM.
+
+2002-10-08 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
+ -Wall.
+ * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
+ message.
+ * flags.h (warn_strict_aliasing): Declare.
+ * toplev.c (warn_strict_aliasing): Define.
+ (lang_independent_options): Add it.
+ * doc/invoke.texi (-Wstrict-aliasing): Document it.
+
+2002-10-08 Zack Weinberg <zack@codesourcery.com>
+
+ * system.h (GCCBUGURL): Delete.
+ * version.c (bug_report_url): New. Add commentary about
+ modifying both these strings in modified distributions.
+ * version.h: Declare bug_report_url.
+
+ * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
+ bug_report_url.
+
+2002-10-08 Nick Clifton <nickc@redhat.com>
+
+ * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
+ convert uint64_t into __ev64_opaque__.
+ (__ev_set_acc_s64): Likewise, but using signed types.
+
+2002-10-08 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*doloop_si_long"): Add missing operand.
+ ("*doloop_di_long"): Likewise.
+
+Tue Oct 8 16:50:10 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * print-rtl.c (print_rtx): Increase buffer size for real numbers.
+
+2002-10-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (define_attr cpu): Add r4111.
+
+2002-10-08 Anthony Green <green@redhat.com>
+
+ * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
+
+2002-10-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
+ for REAL_VALUE_TO_DECIMAL output.
+
+2002-10-07 Richard Henderson <rth@redhat.com>
+
+ * cse.c (fixed_base_plus_p): Turn FIXED_BASE_PLUS_P into a
+ function; cleanup PLUS case by using recursion. Update all users.
+ (NONZERO_BASE_PLUS_P): Remove.
+ (find_comparison_args): Use rtx_addr_can_trap_p instead.
+ (fold_rtx): Use nonzero_address_p.
+ * rtl.h (nonzero_address_p): Declare.
+ * rtlanal.c (rtx_varies_p): Handle ADDRESSOF.
+ (rtx_addr_can_trap_p): Likewise.
+ (nonzero_address_p): New.
+ * simplify-rtx.c (NONZERO_BASE_PLUS_P): Remove.
+ (simplify_relational_operation): Use nonzero_address_p.
+
+2002-10-07 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Set
+ real_format_for_mode for IBM extended format, if enabled.
+ (easy_fp_constant): Add TFmode.
+ (rs6000_legitimize_address): Add TFmode.
+ (rs6000_legitimate_address): Same.
+ (function_arg_advance): TFmode uses two FPRs.
+ (rs6000_emit_prologue): Fix warning.
+ (rs6000_output_function_epilogue): Add TFmode.
+ (output_toc): Add TFmode.
+ * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
+ (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
+ * rs6000.md (movtf splitter): Load TFmode constant.
+
+2002-10-07 Dale Johannesen <dalej@apple.com>
+
+ * rtl.h: Add NOTE_PRECONDITIONED.
+ * unroll.c: Set it.
+ * loop.c: Set loop_info->preconditioned from it.
+ * doloop.c: Permit doloop treatment when loop_info->preconditoned.
+
+2002-10-07 Richard Henderson <rth@redhat.com>
+
+ * config/i960/i960.c (i960_setup_incoming_varargs): Create a
+ new rtx for comparing the argument pointer against zero.
+ (i960_va_start): Similarly.
+
+2002-10-07 Richard Henderson <rth@redhat.com>
+
+ * config/i960/i960.md (*): Use TFmode, not XFmode.
+ * config/i960/i960.c (*): Likewise.
+ (i960_arg_size_and_align): Remove XFmode alignment hack.
+ (i960_round_align): Merge code from ROUND_TYPE_ALIGN.
+ * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
+ (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
+ (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
+
+2002-10-07 Richard Henderson <rth@redhat.com>
+
+ * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
+ entry points; use void return value and argument list.
+
+2002-10-06 Andreas Bauer <baueran@in.tum.de>
+
+ * calls.c (expand_call): Fix function-is-volatile check.
+
+2002-10-05 Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
+
+ * t-pdp11: Add MULTILIB support for msoft-float.
+ * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
+
+ * t-pdp11: Add LIB2FUNCS_EXTRA.
+ * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
+ add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
+ 'fldd' to 'ldd', rename 'fstd' to 'std'.
+ (pdp11_output_function_epilogue): Likewise.
+ (output_move_quad): Make the comment gas compatible.
+ (output_ascii): Add preceding 0 to the octal constant.
+ (print_operand_address): Add pre_modify, post_modify.
+ (output_addr_const_pdp11): Add preceding 0 to the octal constant.
+ * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
+ with the indication of Paul Koning.
+ (PRINT_OPERAND): Fix floating constant.
+ * pdp11.md (movdi): Restrict matching pattern.
+ (movqi): Generalize the matching pattern.
+ (movdf): Restrict matching pattern.
+ (zero_extendqihi2): Change constant representation.
+ (floatsidf2): Fix wrong operands.
+ (addqi3): Fix wrong instruction name.
+ (subqi3): Fix wrong instruction name.
+ (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
+ (xorsi3): Fix wrong insn.
+ (one_cmplqi2): Add two operand pattern.
+ (lsrsi3): New.
+ (negsi2): New.
+ (call): Add register indirect case.
+ (mod): Fix wrong subreg.
+
+2002-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ PR c/7411
+ * expr.c (expand_expr) [PLUS]: Simplify after the operands
+ have been expanded in EXPAND_NORMAL mode.
+
+2002-10-06 Richard Henderson <rth@redhat.com>
+
+ * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
+
+2002-10-06 Richard Henderson <rth@redhat.com>
+
+ PR optimization/2960
+ * toplev.c (rest_of_compilation): Don't copy_loop_headers if
+ optimize_size.
+
+2002-10-06 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
+ previously definitions.
+
+2002-10-06 Frank Ch. Eigler <fche@redhat.com>
+
+ * cppinit.c (init_standard_includes, parse_option): Use strncmp.
+ * c-opts.c (find_opt): Similarly.
+
+Sat Oct 5 22:48:06 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * athlon.md: rewrite to DFA.
+ * i386 (ix86_adjust_cost): Drop memory latency code.
+ (ia32_use_dfa_pipeline_interface): Return true for Athlon.
+
+2002-10-05 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (set_multilib_dir): Don't access *end.
+ Use memcpy instead of strncpy. Don't write beyond malloced buffer.
+ (print_multilib_info): Don't show paths starting with ".:".
+ * genmultilib: Add new option, "yes" if multilibs are enabled.
+ Update comments. If multilibs not enabled, print .:${osdirout}
+ for each directory. If multilibs are enabled, always print
+ ${dirout}:${osdirout}, even if the two are the same.
+ * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
+ Pass all MULTILIB_* variables to genmultilib even if
+ --disable-multilib but MULTILIB_OSDIRNAMES is not empty.
+
+2002-10-04 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c (process_command): Set .validated for -pipe. Correct
+ grammar in comment.
+
+2002-10-04 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def(hpux11_abs): use format fix
+ * fixinc/fixincl.x: regenerate
+ * fixinc/tests/base/stdlib.h: accommodate new fix test
+
+Sat Oct 5 19:42:45 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * c-common.c (cb_register_builtins): Use really_no_inline.
+
+2002-10-04 David Edelsohn <edelsohn@gnu.org>
+
+ * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
+ copied instruction if the note is not loop invariant.
+
+2002-10-04 Loren J. Rittle <ljrittle@acm.org>
+
+ * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
+
+2002-10-04 Steve Ellcey <sje@cup.hp.com>
+
+ * doc/invoke.texi (HPPA): Add -mlinker-opt, -mgnu-ld,
+ and -mhp-ld options to list of options. Add -mgnu-ld
+ and -mhp-ld option descriptions.
+
+2002-10-04 Steve Ellcey <sje@cup.hp.com>
+
+ * fixinc/inclhack.def (hpux11_abs): New.
+ (stdio_va_list): change __va_list__ to __gnuc_va_list.
+ * fixinc/fixincl.x: Rebuild.
+
+2002-10-04 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.h (processor_costs): Add new fields fadd,
+ fmul, fdiv, fabs, fchs and fsqrt to costs structure.
+ (RTX_COSTS): Use these fields to determine the RTX costs
+ of floating point addition/subtraction, multiplication,
+ division, fabs, negation and square root respectively.
+ * config/i386/i386.c (size_cost): Provide instruction sizes
+ for these new fields.
+ (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
+ k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
+ counts for these new fields for all x86 processor variants.
+
+2002-10-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.c (mips_const_double_ok): Delete unused variable.
+
+ * gengtype.c (rtx_next): Change type to int.
+
+2002-10-04 Andreas Jaeger <aj@suse.de>
+
+ * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
+
+2002-10-04 Richard Henderson <rth@redhat.com>
+
+ * real.h (SIGNIFICAND_BITS): Add one more word.
+ (CONST_DOUBLE_FORMAT): Accomodate 6 words.
+ * real.c (times_pten): New.
+ (real_to_decimal, real_from_string): Use it.
+ (sticky_rshift_significand): Use & to find modulus.
+ (rshift_significand, lshift_significand): Likewise.
+ (do_divide): Apply sticky bit after normalization.
+ (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
+
+2002-10-03 Andreas Bauer <baueran@in.tum.de>
+
+ * doc/tm.texi (FUNCTION_OK_FOR_SIBCALL): Remove.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
+
+2002-10-03 Andreas Jaeger <aj@suse.de>
+
+ * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
+ to unsigned long, adjust printf format string.
+ (output_mangled_typename): Likewise.
+
+2002-10-03 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
+ * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
+ (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
+ assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
+ (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
+ (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
+ * config/vax/elf.h (FUNCTION_PROFILER): Remove.
+ (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
+
+2002-10-03 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi (-Wabi): Document mangling bug.
+
+2002-10-04 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
+ name for the tbtab label that depends on the function asm name.
+ Don't output tbtab label unless optional_tbtab.
+ (output_mi_thunk): Formatting.
+
+2002-10-03 Richard Henderson <rth@redhat.com>
+
+ * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
+ * config/m68k/m68k.c (override_options): ... here.
+ * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
+ * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
+ * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
+ * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
+
+2002-10-03 Richard Henderson <rth@redhat.com>
+
+ * real.h (struct real_value): Use ENUM_BITFIELD.
+
+2002-10-03 Richard Henderson <rth@redhat.com>
+
+ * config/i960/i960.md (call, call_value): Use emit_call_insn.
+
+2002-10-03 Steve Ellcey <sje@cup.hp.com>
+
+ * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
+
+2002-10-03 Steve Ellcey <sje@cup.hp.com>
+
+ * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
+ * config/pa/pa.h (MASK_GNU_LD): New.
+ (TARGET_GNU_LD): New.
+ * config/pa/pa64-hpux.h (LINK_SPEC): Set based
+ on gnu-ld and MASK_GNU_LD.
+ (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
+
+Thu Oct 3 23:35:51 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (athlon_cost): Fix the move costs.
+
+Thu Oct 3 23:20:58 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * final.c (final): Use symbol name as function name for profiling.
+ * profile.c (get_exec_counts): Likewise.
+ (branch_prob): Likewise.
+
+2002-10-03 Jakub Jelinek <jakub@redhat.com>
+
+ * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
+
+2002-10-03 Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (print_multi_os_directory): New variable.
+ (option_map): Support --print-multi-os-directory.
+ (struct prefix_list): Add os_multilib field.
+ (multilib_os_dir): New variable.
+ (static_specs): Add multilib_options.
+ (find_a_file): Add multilib argument. Search in GCC or OS multilib
+ subdirs if nonzero.
+ (read_specs, execute): Update callers.
+ (find_file): Likewise. Don't prefix name with multilib_dir, instead
+ pass 1 as multilib option.
+ (display_help): Include --print-multi-os-directory.
+ (add_prefix): Add os_multilib argument. Initialize pl->os_multilib.
+ (process_command): Update callers. Handle --print-multi-os-directory.
+ (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
+ set.
+ (main): Update find_a_file and add_prefix callers.
+ Handle print_multi_os_directory.
+ (struct mdswitchstr): New.
+ (mdswitches, n_mdswitches): New variables.
+ (used_arg): Add MULTILIB_DEFAULT switches too if they are not
+ present on the command line nor their mutually incompatible
+ switches.
+ (default_arg): Optimize.
+ (set_multilib_dir): Compute multilib_os_dir. Initialize mdswitches
+ array.
+ (print_multilib_info): Only print GCC multilib dir name, not OS
+ multilib dirname.
+ * genmultilib: Add osdirnames parameter. Output multilib_options
+ variable. If osdirnames is specified, output dirnames as
+ dirname:osdirname.
+ * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
+ and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
+ to compute libgcc_s soname and install path.
+ * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
+ SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
+ (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
+ argument.
+
+ * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
+ (SHLIB_SLIBDIR_SUFFIXES): Remove.
+ * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
+ ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
+ (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
+ and -m64.
+ * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
+ (SHLIB_SLIBDIR_SUFFIXES): Remove.
+ * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
+ (STARTFILE_ARCH_SPEC): Remove.
+ * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
+ (SHLIB_SLIBDIR_SUFFIXES): Remove.
+ * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
+ * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
+ (SHLIB_SLIBDIR_SUFFIXES): Remove.
+
+Thu Oct 3 21:42:20 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (choose_function_section): Avoid choice for linkonce functions.
+
+Thu Oct 3 15:15:00 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (lea to mul peep2): Fix condition.
+
+2002-10-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
+ * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
+
+2002-10-02 David Mosberger-Tang <David.Mosberger@acm.org>
+
+ * unwind.h (_Unwind_GetTextRelBase): Mark _C argument with
+ attribute "unused".
+
+ * config/t-libunwind: Mention unwind-sjlj.c.
+ * unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__
+ to #ifndef __USING_SJLJ_EXCEPTIONS__.
+
+ * configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions
+ before inclusion of config.gcc, but after configuring the compiler etc.
+ Determine default value for --enable-libunwind-exceptions based on
+ whether the host has a libunwind library (not guaranteed to be correct,
+ but it's a reasonable first guess and can always be overridden with an
+ explicit --enable/disable-libunwind-exceptions.
+ * config.gcc: For target ia64*-*-linux*, mention t-libunwind as a
+ tmake_file when $use_libunwind_exceptions is enabled.
+ * Makefile.in: Update comment: LIB2ADDEH is updated not just by
+ ia64 (e.g., config/t-linux also updates it).
+ * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind
+ along with the shared version of libgcc since the latter requires
+ the former.
+ * unwind-libunwind.c: New file.
+ * config/t-libunwind: Ditto.
+
+2002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Remove support for vax-*-vms*.
+ * config/vax/vms.h: Remove.
+ * config/vax/xm-vms.h: Remove.
+ * config/vax/vax-protos.h: Remove VMS-specific code.
+ * config/vax/vax.c: Remove VMS-specific code.
+
+2002-10-02 Richard Henderson <rth@redhat.com>
+
+ PR opt/7124
+ * config/i386/i386.c (ix86_register_move_cost): Increase cost
+ for secondary_memory_needed pairs.
+
+2002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * doc/vms.texi: Blow away false include file section.
+
+2002-10-02 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/6627
+ * toplev.c (force_align_functions_log): New global variable.
+ * flags.h (force_align_functions_log): Add extern prototype.
+ * varasm.c (assemble_start_function): Use it to force minimum
+ function alignment.
+ * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
+ minimum function alignment to one byte.
+ (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
+ the least significant bit of vtable member function pointers.
+ * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
+ here from cp/cp-tree.h.
+
+Wed Oct 2 17:01:36 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (print_operand_address): Use RIP addressing for offsetted
+ label refs too.
+
+2002-09-30 David S. Miller <davem@redhat.com>
+
+ PR middle-end/7151
+ * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
+ (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
+
+2002-10-01 Andreas Bauer <baueran@in.tum.de>
+
+ * calls.c (expand_call): Remove the `no indirect check'
+ for sibcall optimization; use function_ok_for_sibcall
+ target hook; refine check for `function is volatile'.
+ (FUNCTION_OK_FOR_SIBCALL): Remove the redefinition.
+ * hooks.c (hook_tree_tree_bool_false): New.
+ * hooks.h (hook_tree_tree_bool_false): Declare.
+ * target-def.h (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
+ (TARGET_INITIALIZER): Add it.
+ * target.h (struct gcc_target): Add function_ok_for_sibcall.
+ * config/alpha/alpha.c: (alpha_function_ok_for_sibcall): New.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
+ * config/alpha/alpha.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/arm/arm-protos.h: (arm_function_ok_for_sibcall):
+ Remove function declaration.
+ * config/arm/arm.c: (arm_function_ok_for_sibcall): Make
+ function static and accept another argument of type `tree'.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
+ * config/arm/arm.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/frv/frv.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/i386/i386.c: (ix86_function_ok_for_sibcall): New.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
+ * config/i386/i386.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/pa/pa-linux.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ (TARGET_HAS_STUBS_AND_ELF_SECTIONS): New definition.
+ * config/pa/pa.c: (pa_function_ok_for_sibcall): New.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
+ * config/pa/pa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/rs6000/rs6000-protos.h: (function_ok_for_sibcall):
+ Remove function declaration.
+ * config/rs6000/rs6000.c: (rs6000_function_ok_for_sibcall):
+ Rename function_ok_for_sibcall to rs6000_function_ok_for_sibcall;
+ rename first argument to `decl'; accept another argument
+ of type `tree'; make static.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
+ * config/rs6000/rs6000.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/sh/sh.c: (sh_function_ok_for_sibcall): New.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
+ * config/sh/sh.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/sparc/sparc.c: (sparc_function_ok_for_sibcall): New.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
+ * config/sparc/sparc.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+ * config/xtensa/xtensa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
+
+2002-10-01 Roger Sayle <roger@eyesopen.com>
+
+ * unroll.c (loop_iterations): Revert 2002-09-08 change.
+
+2002-10-01 Richard Henderson <rth@redhat.com>
+
+ * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
+ (real_to_hexadecimal): Likewise.
+ * print-rtl.c (print_rtx): If we are linked with real.c, don't
+ dump the XWINT fields of a floating point CONST_DOUBLE.
+
+2002-10-01 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
+
+2002-10-01 Richard Henderson <rth@redhat.com>
+
+ * calls.c (precompute_register_parameters): Force non-legitimate
+ constants into pseudos.
+
+2002-10-01 Nick Clifton <nickc@redhat.com>
+
+ * config/rs6000/spe.md (spe_evrlwi): Add missing third operand
+ to assembler template.
+
+2002-10-01 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (loc_descriptor_from_tree): Relax requirement
+ for TLS debug info to !DECL_EXTERNAL.
+
+2002-10-01 Matt Thomas <matt@3am-software.com>
+ Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (vax-*-netbsdelf*): Enable configuration.
+ * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
+ if not already defined.
+ * config/vax/elf.h: New file.
+ * config/vax/netbsd-elf.h: New file.
+ * config/vax/vax.c: Include "debug.h".
+ (vax_output_function_prologue): Add dwarf2 support. Use
+ MAIN_NAME_P when checking for VMS_TARGET stack adjust.
+ * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
+ 'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
+ 'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
+ (VAX_ISTREAM_SYNC): Remove.
+ (INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
+ (JUMP_TABLES_IN_TEXT_SECTION): Define.
+ (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
+ (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
+ and assemble_name.
+ (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
+ (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
+ (PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
+ (INCOMING_RETURN_ADDR_RTX): Define.
+ * config/vax/vax.md (VUNSPEC_BLOCKAGE)
+ (VUNSPEC_SYNC_ISTREAM): Define.
+ (blockage): Use VUNSPEC_BLOCKAGE.
+ (sync_istream): New insn.
+
+2002-10-01 Richard Henderson <rth@redhat.com>
+
+ * config/vax/vax.md (call_pop, *call_pop, call_value_pop)
+ (*call_value_pop, call, call_value): Add dwarf2 EH support.
+ (*call): New insn.
+
+2002-10-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c/8083
+ * c-typeck.c (build_c_cast): Warn about type punning which breaks
+ type based aliasing.
+
+2002-10-01 Mark Mitchell <mark@codesourcery.com>
+
+ * stor-layout.c (update_alignment_for_field): New function.
+ (place_union_field): Use it.
+ (place_field): Likewise.
+
+2002-10-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR other/8077
+ * gcc.c (cc1_options): Add space on -auxbase-strip.
+
+2002-10-01 Jim Wilson <wilson@redhat.com>
+
+ * config/v850/v850.h (EPILOGUE_USES): Define.
+
+2002-09-30 Andrew Haley <aph@redhat.com>
+
+ * flow.c (insn_dead_p): When using non-call-exceptions, don't
+ eliminate insns that may trap.
+ * cse.c (insn_live_p): Likewise.
+
+2002-10-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
+ (TARGET_MIPS4121): Rename to TARGET_MIPS4120.
+ * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
+ * config/mips/mips.md: Apply same renaming here.
+
+2002-10-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
+ (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
+ * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
+ * config/mips/mips.md (define_attr cpu): Remove r4320.
+ Remove vr4320 scheduler and uses of TARGET_MIPS4320.
+
+2002-10-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips16_strings): New variable.
+ (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
+ symbol in mips16_strings. Free the list.
+ (mips_encode_section_info): Keep track of local strings.
+
+2002-10-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
+ (sordered_df, sordered_sf): Remove.
+ * config/mips/mips.c (get_float_compare_codes): New fn.
+ (gen_int_relational, gen_conditional_move): Use it.
+
+2002-10-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
+ * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
+ * config/mips/mips.c (fcc_register_operand): New function.
+ (mips_emit_fcc_reload): New function, extracted from reload_incc.
+ (override_options): Allow TFmode values in float registers
+ if ISA_HAS_8CC.
+ * cnfig/mips/mips.md (reload_incc): Change destination prediate
+ to fcc_register_operand. Remove misleading source constraint.
+ Use mips_emit_fcc_reload.
+ (reload_outcc): Duplicate reload_incc.
+
+2002-09-30 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c (validate_switches): Handle all new forms of spec
+ syntax introduced recently. Now returns a char *.
+ (validate_all_switches): Repetitive logic broken out to...
+ (validate_switches_from_spec): ...here.
+ * mklibgcc.in: Don't @-flag commands to generate .oS files.
+
+2002-09-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * longlong.h: Partially synchronize with GMP-4.1 version:
+ Use i370 definitions also for s390.
+ Add generic definition of umul_ppmm in terms of smul_ppmm.
+ [s390] (umul_ppmm): Remove.
+ [s390] (smul_ppmm): Fix incorrect assembler constraints.
+ [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
+
+2002-09-30 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
+ Add new RL_REGS register class.
+ (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
+ Call xtensa_preferred_reload_class for both input and output reloads.
+ * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
+ (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
+ instead of either AR_REGS or GR_REGS classes.
+ (xtensa_secondary_reload_class): Use new RL_REGS class.
+ * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
+
+2002-09-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (hppa_encode_label): Don't drop '*' from function labels.
+ (pa_strip_name_encoding): Strip '@' and '*', in that order.
+ * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
+ there is a '*' prefix in NAME.
+
+Mon Sep 30 21:33:23 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * reload.c (push_reload): Handle subregs and secondary memory.
+ * reload1.c (gen_reload): Likewise.
+
+ * jump.c (reg_or_subregno): New function.
+ * rtl.h (reg_or_subregno): Declare
+ * unroll.c (find_splittable_givs): Handle subregs.
+
+2002-09-30 Mark Mitchell <mark@codesourcery.com>
+
+ * store-layout.c (finish_record_layout): Add free_p parameter.
+ (layout_type): Pass it.
+ * tree.h (finish_record_layout): Update prototype.
+
+Mon Sep 30 14:57:18 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
+
+ * gcse.c (cprop_jump): Check that the register has not
+ been modified
+ (cprop_jump): Likewise.
+
+2002-09-30 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
+ (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
+ that we have a SImode access, and only then if reload hasn't completed;
+ for all other cases, use LO_REGS.
+
+2002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * openbsd.h: Fix typo in last change.
+
+2002-09-29 Richard Henderson <rth@redhat.com>
+
+ * real.c (real_from_string): Apply sign last. Tidy exponent handling.
+
+2002-09-29 Richard Henderson <rth@redhat.com>
+
+ PR c/8002
+ * combine.c (force_to_mode): Handle FLOAT_MODE destinations
+ for CONST_INT.
+
+2002-09-29 David Edelsohn <edelsohn@gnu.org>
+
+ * real.h (ibm_extended_format): Declare.
+ * real.c (encode_ibm_extended, decode_ibm_extended): New
+ functions.
+
+2002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
+
+ * ia64.c (ia64_hpux_asm_file_end): Const-ify.
+
+2002-09-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
+
+2002-09-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.def: Fix comment formatting.
+ * c-common.def: Likewise.
+ * cfgcleanup.c: Likewise.
+ * combine.c: Likewise.
+ * gengtype.c: Likewise.
+ * params.def: Likewise.
+ * predict.def: Likewise.
+ * rtl.def: Likewise.
+ * stab.def: Likewise.
+ * stor-layout.c: Likewise.
+ * tree.def: Likewise.
+ * config/darwin.c: Likewise.
+ * config/darwin.h: Likewise.
+ * config/dbxcoff.h: Likewise.
+ * config/elfos.h: Likewise.
+ * config/fp-bit.c: Likewise.
+ * config/freebsd-spec.h: Likewise.
+ * config/interix.h: Likewise.
+ * config/libgloss.h: Likewise.
+ * config/linux-aout.h: Likewise.
+ * config/linux.h: Likewise.
+ * config/lynx-ng.h: Likewise.
+ * config/lynx.h: Likewise.
+ * config/netbsd-aout.h: Likewise.
+ * config/netbsd.h: Likewise.
+ * config/netware.h: Likewise.
+ * config/psos.h: Likewise.
+ * config/ptx4.h: Likewise.
+
+2002-09-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog.4: Fix typos.
+ * ChangeLog.6: Likewise.
+ * FSFChangeLog.10: Likewise.
+ * genattrtab.c: Fix comment typos.
+ * haifa-sched.c: Likewise.
+ * real.c: Likewise.
+ * tree.h: Likewise.
+ * config/arm/arm.c: Likewise.
+ * config/arm/crti.asm: Likewise.
+ * config/arm/crtn.asm: Likewise.
+ * config/frv/frv.c: Likewise.
+ * config/frv/frv.md: Likewise.
+ * config/h8300/h8300.md: Likewise.
+ * config/i386/rtemself.h: Likewise.
+ * config/ia64/unwind-ia64.c: Likewise.
+ * config/ip2k/ip2k.h: Likewise.
+ * config/m88k/m88k.c: Likewise.
+ * config/m88k/m88k.md: Likewise.
+ * config/mips/sr71k.md: Likewise.
+ * config/mmix/mmix.c: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/sh/sh.md: Likewise.
+
+2002-09-26 Theodore A. Roth <troth@verinet.com>
+
+ * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
+ * config/avr/avr.md: Ditto.
+
+2002-09-27 Alexander N. Kabaev <ak03@gte.com>
+
+ PR preprocessor/8055
+ * cppmacro.c (stringify_arg): Do not overflow the buffer
+ with the terminating NUL when the argument to be stringified
+ has no tokens.
+
+2002-09-27 Richard Henderson <rth@redhat.com>
+
+ * unroll.c (simplify_cmp_and_jump_insns): New.
+ (unroll_loop): Use it. Use simplify_gen_foo+force_operand
+ instead of expand_simple_foo.
+
+2002-09-27 Richard Henderson <rth@redhat.com>
+
+ PR optimization/7520
+ * cfganal.c (flow_active_insn_p): New.
+ (forwarder_block_p): Use it.
+
+2002-09-27 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (active_insn_p): Revert last change.
+
+2002-09-27 Jakub Jelinek <jakub@redhat.com>
+
+ * doc/extend.texi (tls_model): Document.
+ * varasm.c (decl_tls_model): New.
+ * c-common.c (handle_tls_model_attribute): New.
+ (c_common_attribute_table): Add tls_model.
+ * config/alpha/alpha.c (alpha_encode_section_info): Use
+ decl_tls_model.
+ * flags.h (enum tls_model, flag_tls_default): Move...
+ * tree.h (enum tls_model, flag_tls_default): ...here.
+ (decl_tls_model): New prototype.
+ * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
+ * config/i386/i386.c (ix86_encode_section_info): Likewise.
+ * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
+ Allow !flag_pic.
+
+2002-09-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * LANGUAGES: Follow spelling conventions.
+ * rtl.def: Likewise.
+ * sbitmap.c: Likewise.
+ * sched-int.h: Likewise.
+ * sched-rgn.c: Likewise.
+ * sibcall.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * ssa.c: Likewise.
+ * stab.def: Likewise.
+ * stmt.c: Likewise.
+ * stor-layout.c: Likewise.
+ * target.h: Likewise.
+ * timevar.c: Likewise.
+ * toplev.c: Likewise.
+ * tree-dump.c: Likewise.
+ * tree-inline.c: Likewise.
+ * tree.c: Likewise.
+ * tree.def: Likewise.
+ * tree.h: Likewise.
+ * unroll.c: Likewise.
+ * varasm.c: Likewise.
+ * vmsdbgout.c: Likewise.
+ * treelang/treelang.texi: Likewise.
+ * treelang/treetree.c: Likewise.
+
+2002-09-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (compute_saved_regs): Use a macro
+ instead of a hard register number.
+ (get_shift_alg): Use an enumerated type instead of numbers.
+ (h8300_shift_needs_scratch_p): Likewise.
+
+2002-09-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * varasm.c (force_data_section): Remove.
+ (assemble_constant_align): Likewise.
+ * output.h: Remove corresponding prototypes.
+
+2002-09-26 Roger Sayle <roger@eyesopen.com>
+
+ * stmt.c (expand_exit_loop_if_false): Expand a simple conditional
+ jump, if the loop to exit is the top of the current nesting stack.
+
+2002-09-26 Torbjorn Granlund <tege@swox.com>
+
+ * libgcc2.c (fixunsdfdi, fixunssfdi): Rewrite, avoiding `long long'
+ arithmetic.
+
+2002-09-26 David S. Miller <davem@redhat.com>
+
+ PR optimization/7335
+ * calls.c (emit_library_call_value_1): Passing args by reference
+ converts a CONST function into a PURE one.
+
+2002-09-26 David Edelsohn <edelsohn@gnu.org>
+
+ * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
+ text_section.
+ * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
+ text section.
+ * config/rs6000/rs6000.c (rs6000_override_options): Allow
+ function-sections and data-sections functionality on AIX.
+
+2002-09-26 David Edelsohn <edelsohn@gnu.org>
+ Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
+ in RTL for sub-word loads from memory.
+
+2002-09-26 Richard Henderson <rth@redhat.com>
+
+ PR c/7160
+ * sched-deps.c (sched_analyze_insn): Make clobber insns depend
+ on call insns.
+
+2002-09-26 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (const_double_htab_eq): Remove unused variable.
+
+2002-09-26 Chris Lattner <sabre@nondot.org>
+
+ * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
+ handling undefined values.
+
+2002-09-26 Richard Henderson <rth@redhat.com>
+
+ PR opt/7520
+ * emit-rtl.c (active_insn_p): Consider a clobber of the
+ function return value to be active even after reload.
+
+2002-09-27 Alan Modra <amodra@bigpond.net.au>
+
+ * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
+ by absolute loop increment, not loop increment.
+
+2002-09-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.h: Follow spelling conventions.
+ * cpplex.c: Likewise.
+ * cpplib.h: Likewise.
+ * gthr-dce.h: Likewise.
+ * gthr-posix.h: Likewise.
+ * optabs.c: Likewise.
+ * output.h: Likewise.
+ * profile.c: Likewise.
+ * protoize.c: Likewise.
+ * ra-rewrite.c: Likewise.
+ * real.c: Likewise.
+ * recog.c: Likewise.
+ * reg-stack.c: Likewise.
+ * regclass.c: Likewise.
+ * regmove.c: Likewise.
+ * reload.c: Likewise.
+ * reload.h: Likewise.
+ * reload1.c: Likewise.
+ * reorg.c: Likewise.
+ * resource.c: Likewise.
+ * rtl.h: Likewise.
+ * rtlanal.c: Likewise.
+
+2002-09-26 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode
+ for symbol address.
+
+2002-09-24 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/elf.h: Add HANDLE_SYSV_PRAGMA.
+ * config/mips/elf64.h: Ditto.
+
+2002-09-24 Eric Christopher <echristo@redhat.com>
+
+ * except.c (expand_builtin_extract_return_address): Handle case
+ where Pmode != ptr_mode.
+
+2002-09-26 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New
+
+2002-09-26 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32.
+
+2002-09-26 Igor Shevlyakov <igor@microunity.com>
+
+ * combine.c (simplify_set): Don't call to force_to_mode if size
+ of integer type is larger than HOST_BITS_PER_WIDE_INT.
+
+2002-09-26 Janis Johnson <janis187@us.ibm.com>
+
+ * Makefile.in (qmtest-g++): Fix file path.
+
+2002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to
+ A + (-const) on RTX level, even for unsigned types.
+
+2002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * reload.c (dup_replacements): New function.
+ (find_reloads): Use it to duplicate replacements at the top level
+ of match_dup operands.
+
+2002-09-26 Miles Bader <miles@gnu.org>
+
+ * v850.md ("length"): Change default value to 4.
+
+2002-09-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog.1: Follow spelling conventions.
+ * ChangeLog.4: Likewise.
+ * ChangeLog.6: Likewise.
+ * FSFChangeLog.11: Likewise.
+ * doc/cpp.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+ * doc/tm.texi: Likewise.
+
+2002-09-26 Nick Clifton <nickc@redhat.com>
+
+ * config.gcc: Add x prefix to v850e case for handling
+ --with-cpu=v850e.
+
+2002-09-25 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c (input_suffix_matches, switch_matches,
+ mark_matching_switches, process_marked_switches,
+ process_brace_body): New functions - split from handle_braces.
+ (handle_braces): Rewrite; handle %{S:X;T:Y;:D} syntax; accept
+ and ignore whitespace in more places.
+ (specs documentation comment): Document %{S:X;T:Y;:D}.
+ Clarify other %{...} docs.
+ * doc/invoke.texi: Document %{S:X;T:Y;:D}. Clarify other
+ %{...} docs.
+
+ * config/arm/aof.h (LINK_SPEC): Change %{ov*,*} to %{ov*}.
+ * config/rs6000/sysv4.h: Use N-way choice spec syntax.
+
+2002-09-25 David S. Miller <davem@redhat.com>
+
+ PR target/7842
+ * config/sparc/sparc.c (set_extends): SImode ASHIFT does not
+ extend.
+
+2002-09-25 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (const_double_htab_eq): Distinguish integer and
+ fp CONST_DOUBLE; use real_identical.
+
+2002-09-25 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi: Add more -Wabi examples.
+
+2002-09-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (TARGET_MIPS4100): Add missing bracket.
+
+2002-09-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * profile.c (end_branch_prob): Only look for __gcov_init on
+ weak-enabled native compilers.
+
+2002-09-24 Denis Chertykov <denisc@overta.ru>
+
+ * config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in
+ cases of optimizing "add sp,w" to "inc sp".
+
+2002-09-24 Adam Nemet <anemet@lnxw.com>
+
+ * config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate
+ epilogue for naked functions.
+
+2002-09-24 Adam Nemet <anemet@lnxw.com>
+ Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove.
+ (FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it
+ is defined.
+
+2002-09-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (preferred_la_operand_p): New function.
+ * config/s390/s390-protos.h (preferred_la_operand_p): Declare it.
+ * config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ...
+ ("*la_64_cc", "*la_31_cc", splitters): ... these.
+ ("*la_31"): Deactivate for TARGET_64BIT.
+ ("*la_31_and", "*la_31_and_cc"): New.
+
+2002-09-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * real.h (real_value): Make `exp' explicitly signed.
+
+2002-09-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/elfos.h: Follow spelling conventions.
+ * config/alpha/alpha.h: Likewise.
+ * config/arc/arc.h: Likewise.
+ * config/arm/arm.md: Likewise.
+ * config/avr/avr.h: Likewise.
+ * config/cris/cris.md: Likewise.
+ * config/d30v/d30v.h: Likewise.
+ * config/frv/frv.c: Likewise.
+ * config/frv/frv.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+ * config/i386/cygwin.h: Likewise.
+ * config/i386/i386.h: Likewise.
+ * config/i386/sysv3.h: Likewise.
+ * config/i960/i960.h: Likewise.
+ * config/ia64/ia64.h: Likewise.
+ * config/ia64/ia64.md: Likewise.
+ * config/ip2k/ip2k.h: Likewise.
+ * config/m32r/m32r.h: Likewise.
+ * config/m68k/m68k.h: Likewise.
+ * config/m88k/m88k.h: Likewise.
+ * config/mcore/mcore.c: Likewise.
+ * config/mcore/mcore.h: Likewise.
+ * config/mcore/mcore.md: Likewise.
+ * config/mips/mips.h: Likewise.
+ * config/mmix/mmix.h: Likewise.
+ * config/mmix/mmix.md: Likewise.
+ * config/ns32k/netbsd.h: Likewise.
+ * config/ns32k/ns32k.h: Likewise.
+ * config/ns32k/ns32k.md: Likewise.
+ * config/pa/pa.h: Likewise.
+ * config/romp/romp.h: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/rs6000/rs6000.md: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/stormy16/stormy-abi: Likewise.
+ * config/stormy16/stormy16.h: Likewise.
+ * config/vax/vax.h: Likewise.
+
+2002-09-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.h: Remove commented-out macro
+ definitions of HAVE_{POST|PRE}_{INC|DEC}REMENT.
+ * config/avr/avr.h: Likewise.
+ * config/d30v/d30v.h: Likewise.
+ * config/dsp16xx/dsp16xx.h: Likewise.
+ * config/i370/i370.h: Likewise.
+ * config/i386/i386.h: Likewise.
+ * config/i960/i960.h: Likewise.
+ * config/m68k/m68k.h: Likewise.
+ * config/m88k/m88k.h: Likewise.
+ * config/mips/mips.h: Likewise.
+ * config/ns32k/ns32k.h: Likewise.
+ * config/pdp11/pdp11.h: Likewise.
+ * config/romp/romp.h: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/s390/s390.h: Likewise.
+ * config/sh/sh.h: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/stormy16/stormy16.h: Likewise.
+ * config/vax/vax.h: Likewise.
+
+2002-09-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * function.c (push_temp_slots_for_block): Remove.
+ (push_temp_slots_for_target): Likewise.
+ (get_target_temp_slot_level): Likewise.
+ (set_target_temp_slot_level): Likewise.
+ (get_first_block_beg): Likewise.
+ * function.h: Remove corresponding prototypes.
+
+2002-09-23 Zack Weinberg <zack@codesourcery.com>
+
+ * version.c (version_string): Now const char[].
+ * version.h: Update to match.
+
+2002-09-23 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET,
+ MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill.
+ (TARGET_SWITCHES): Don't reference them.
+ * config/i386/i386.c (override_options): Use target_flags_explicit
+ to examine bits set by the user.
+
+2002-09-23 Dale Johannesen <dalej@apple.com>
+
+ * dbxout.c (dbxout_parms): Set current_sym_code for params
+ passed on stack by invisible reference.
+
+2002-09-23 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate
+ at least one byte of space.
+
+2002-09-23 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (flag_abi_version): Fix typo in comment.
+ * doc/invoke.texi (flag_abi_version): Document default value.
+
+2002-09-23 Hans-Peter Nilsson <hp@axis.com>
+
+ * doc/extend.texi (Extended Asm): Clarify that overlap between
+ asm-declared register variables used in an asm and the asm clobber
+ list is not allowed.
+ * stmt.c (decl_conflicts_with_clobbers_p): New function.
+ (expand_asm_operands): Keep track of clobbered registers. Call
+ decl_conflicts_with_clobbers_p for each input and output operand.
+ If no conflicts found before, also do conflict sanity check when
+ emitting clobbers.
+
+2002-09-23 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (cpp_define_data_format): Remove.
+ (cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__,
+ __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
+ __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
+ * doc/cpp.texi: Don't document them either.
+ (__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__,
+ __LONG_LONG_MAX__): Document.
+ (__TARGET_FLOAT_FORMAT__): Remove.
+
+2002-09-23 Richard Henderson <rth@redhat.com>
+
+ * real.c (do_multiply): Normalize U before addition.
+
+2002-09-23 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.c (flag_abi_version): New variable.
+ * c-common.h (flag_abi_version): Declare it.
+ * c-opts.c (missing_arg): Add -fabi-version.
+ (c_common_decode_option): Process -fabi-version.
+ * doc/invoke.texi (-fabi-version): Document it.
+ (-Wabi): Add information about bit-fields in unions.
+
+2002-09-22 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c (STORE_BY_PIECES_P): New target macro.
+ (can_store_by_pieces, store_by_pieces): Use STORE_BY_PIECES_P
+ instead of MOVE_BY_PIECES_P.
+ * doc/tm.texi: Document this new macro.
+
+2002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC
+ unless -fno-pic or -fno-PIC is specified.
+
+2002-09-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * c-common.c (preprocessing_trad_p): Define.
+ * pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete.
+ (TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define.
+ * pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
+ * pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define.
+ * pa-linux.h (CPP_PREDEFINES): Delete.
+ (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
+ * pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete.
+ * pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete.
+ (TARGET_OS_CPP_BUILTINS): Define.
+ * pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define.
+ (TARGET_SWITCHES): Reformat. Use N_() macro. Add SUBTARGET_SWITCHES.
+ (SUBTARGET_SWITCHES): Provide default definition.
+ (TARGET_OPTIONS): Reformat. Use N_() macro.
+ (CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC,
+ CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS,
+ EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete.
+ (TARGET_CPU_CPP_BUILTINS): Define.
+ (TARGET_OS_CPP_BUILTINS): Define for BSD-like systems.
+ * doc/invoke.texi (msio, mwsio): Document new hppa options.
+ * doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro
+ preprocessing_trad_p().
+
+2002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * doc/install.texi: Document behavior of --with-headers and
+ --with-libs when arguments are omitted.
+
+2002-09-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * dbxout.c: Follow spelling conventions.
+ * defaults.h: Likewise.
+ * df.c: Likewise.
+ * diagnostic.h: Likewise.
+ * doloop.c: Likewise.
+ * dwarf2out.c: Likewise.
+ * dwarfout.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * except.c: Likewise.
+ * explow.c: Likewise.
+ * expmed.c: Likewise.
+ * expr.c: Likewise.
+ * expr.h: Likewise.
+ * flags.h: Likewise.
+ * flow.c: Likewise.
+ * fold-const.c: Likewise.
+ * function.c: Likewise.
+ * function.h: Likewise.
+ * gcc.c: Likewise.
+ * gcov-io.h: Likewise.
+ * gcov.c: Likewise.
+ * gcse.c: Likewise.
+ * genattrtab.c: Likewise.
+ * genconfig.c: Likewise.
+ * genrecog.c: Likewise.
+ * ggc-page.c: Likewise.
+ * ggc.h: Likewise.
+ * global.c: Likewise.
+ * gthr-win32.h: Likewise.
+ * integrate.c: Likewise.
+ * jump.c: Likewise.
+ * langhooks.c: Likewise.
+ * langhooks.h: Likewise.
+ * line-map.h: Likewise.
+ * local-alloc.c: Likewise.
+ * longlong.h: Likewise.
+ * loop.c: Likewise.
+ * loop.h: Likewise.
+
+Tue Aug 27 22:26:35 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
+
+Tue Aug 27 20:07:01 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
+ for -Os/TARGET_64BIT too.
+
+2002-09-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog: Follow spelling conventions.
+ * ChangeLog.0: Likewise.
+ * ChangeLog.1: Likewise.
+ * ChangeLog.2: Likewise.
+ * ChangeLog.3: Likewise.
+ * ChangeLog.4: Likewise.
+ * ChangeLog.5: Likewise.
+ * ChangeLog.6: Likewise.
+ * FSFChangeLog.10: Likewise.
+ * FSFChangeLog.11: Likewise.
+ * alias.c: Likewise.
+ * basic-block.h: Likewise.
+ * c-aux-info.c: Likewise.
+ * c-common.c: Likewise.
+ * c-common.h: Likewise.
+ * c-decl.c: Likewise.
+ * c-format.c: Likewise.
+ * c-semantics.c: Likewise.
+ * c-typeck.c: Likewise.
+ * calls.c: Likewise.
+ * cfganal.c: Likewise.
+ * cfgloop.c: Likewise.
+ * collect2.c: Likewise.
+ * combine.c: Likewise.
+ * conflict.c: Likewise.
+ * cppexp.c: Likewise.
+ * cppfiles.c: Likewise.
+ * cpphash.h: Likewise.
+ * cppinit.c: Likewise.
+ * cpplex.c: Likewise.
+ * cpplib.c: Likewise.
+ * cpplib.h: Likewise.
+ * cppmacro.c: Likewise.
+ * cse.c: Likewise.
+
+2002-09-21 Richard Earnshaw <rearnsha@arm.com>
+
+ * netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of
+ LINK_SPEC.
+ (LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT.
+ * arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT.
+ (LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT).
+
+2002-09-21 Richard Earnshaw <rearnsha@arm.com>
+
+ PR opt/7930
+ * cse.c (fold_rtx): Calculate old_cost before we fold each
+ operand.
+
+2002-09-21 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__,
+ __GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
+ __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
+ __TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__,
+ __TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__.
+ * doc/cpp.texi: Don't document them.
+
+2002-09-21 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (builtin_define_float_constants): Use real_format
+ to get the floating-point parameters.
+
+2002-09-21 Richard Henderson <rth@redhat.com>
+
+ * real.c (struct real_format): Move to real.h.
+ (real_format_for_mode): Rename from fmt_for_mode; update all users;
+ initialize with ieee defaults.
+ (real_to_target_fmt, real_from_target_fmt): New.
+ (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
+ ieee_extended_intel_96_format, ieee_extended_intel_128_format,
+ ieee_quad_format, i370_single_format, i370_double_format,
+ c4x_single_format, c4x_extended_format): Rename from s/_format//.
+ (ieee_quad_format): Fix emin.
+ (format_for_size, init_real_once): Remove.
+ * real.h (struct real_format): Move from real.c.
+ (real_format_for_mode): Declare.
+ (real_to_target_fmt, real_from_target_fmt): Declare.
+ (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
+ ieee_extended_intel_96_format, ieee_extended_intel_128_format,
+ ieee_quad_format, vax_f_format, vax_d_format, vax_g_format,
+ i370_single_format, i370_double_format, c4x_single_format,
+ c4x_extended_format): Declare.
+ * toplev.c (do_compile): Don't call init_real_once.
+
+ * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
+ * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove.
+
+ * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define.
+ * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode.
+ * config/alpha/alpha.c (override_options): Set real_format_for_mode
+ for VAX, if enabled.
+
+ * config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode
+ for C4X.
+
+ * config/i370/i370.h (OVERRIDE_OPTIONS): New.
+ * config/i370/i370.c (override_options): New.
+ * config/i370/i370-protos.h: Update.
+
+ * config/i386/i386.c (override_options): Set real_format_for_mode
+ for Intel 80-bit extended.
+ * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
+
+ * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64.
+ (OVERRIDE_OPTIONS): Move code...
+ * config/i960/i960.c (i960_initialize): ... here. Set
+ real_format_for_mode for Intel 80-bit extended.
+
+ * config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode
+ for Intel 80-bit extended, if enabled.
+
+ * config/m68k/m68k.c (override_options): Set real_format_for_mode
+ for Motorola 96-bit extended.
+
+ * config/vax/vax.h (OVERRIDE_OPTIONS): New.
+ * config/vax/vax.c (override_options): New.
+ * config/vax/vax-protos.h: Update.
+
+2002-09-21 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md (builtin_setjmp_receiver): Add
+ #if TARGET_MACHO.
+
+ * config/rs6000/rs6000.md (floatdisf2_internal2): Combine
+ insns. Supply missing clobber of scratch reg.
+
+2002-09-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.c: Follow spelling conventions.
+ * config/m32r/m32r.h: Likewise.
+ * config/m32r/m32r.md: Likewise.
+ * config/m68k/m68k.c: Likewise.
+ * config/m88k/m88k.c: Likewise.
+ * config/mcore/mcore.c: Likewise.
+ * config/mips/mips.c: Likewise.
+ * config/mips/mips.h: Likewise.
+ * config/mmix/mmix.c: Likewise.
+ * config/mn10200/mn10200.c: Likewise.
+ * config/ns32k/ns32k.h: Likewise.
+ * config/pa/pa.c: Likewise.
+ * config/pa/pa64-linux.h: Likewise.
+ * config/pdp11/pdp11.h: Likewise.
+ * config/romp/romp.c: Likewise.
+ * config/romp/romp.h: Likewise.
+ * config/rs6000/eabi.asm: Likewise.
+ * config/rs6000/linux64.h: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/rs6000/rs6000.md: Likewise.
+ * config/rs6000/sysv4.h: Likewise.
+ * config/rs6000/xcoff.h: Likewise.
+
+2002-09-20 Jim Wilson <wilson@redhat.com>
+
+ * config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28.
+
+2002-09-20 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New.
+ * config/i386/i386.c (legitimate_pic_address_disp_p): Handle
+ UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF.
+ (legitimate_address_p): Likewise.
+ (legitimize_address): Use @gotntpoff and @indntpoff.
+ (output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF.
+ (output_addr_const_extra): Likewise.
+
+2002-09-20 Jim Wilson <wilson@redhat.com>
+
+ * combine.c (try_combine): When split an instruction pair, where the
+ first has a sign_extend src, verify that the src and dest modes match.
+
+2002-09-20 Richard Henderson <rth@redhat.com>
+
+ * config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove.
+ (override_options): Do not initialize them.
+ (mips_const_double_ok): Allow no fp constants except zero,
+ and not even that for mips16.
+ (const_float_1_operand): Use dconst1.
+ * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
+ movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
+ Don't allow arbitrary constants; fix predicates and C constraint.
+
+2002-09-20 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppmacro.c: Don't warn about function-like macros without
+ '(' during pre-expansion.
+
+2002-09-20 Jim Wilson <wilson@redhat.com>
+
+ * config/v850/v850.c (current_function_anonymous_args): Delete.
+ (expand_prologue): Use current_function_args_info.anonymous_args.
+ (expand_epilogue): Delete use of current_function_anonymous_args.
+ * config/v850/v850.h (struct cum_arg): Add anonymous_args field.
+ (INIT_CUMULATIVE_ARGS): Clear anonymous_args field.
+ (current_function_anonymous_args): Delete extern declaration.
+ (SETUP_INCOMING_VARARGS): Set anonymous_args field.
+
+2002-09-20 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change
+ to load_macho_picbase.
+ * config/rs6000/rs6000.md: Document Darwin-specific unspec IDs.
+ (load_macho_picbase): Take the symbol to use as a parameter.
+ (macho_correct_pic): New insn.
+ (builtin_setjmp_reciever): On Darwin, restore the PIC register.
+
+ * config/rs6000/rs6000.h (ELIMINABLE_REGS): Use
+ RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30.
+ (CAN_ELIMINATE): Likewise.
+ (INITIAL_ELIMINATION_OFFSET): Likewise.
+ (TOC_REGISTER): Likewise.
+
+2002-09-20 Richard Henderson <rth@redhat.com>
+
+ * real.c (real_hash): New.
+ * real.h: Declare it.
+ * cse.c (canon_hash): Use it.
+ * cselib.c (hash_rtx): Likewise.
+ * emit-rtl.c (const_double_htab_hash): Likewise.
+ * rtl.h (CONST_DOUBLE_REAL_VALUE): New.
+ * varasm.c (struct rtx_const): Reduce vector size; separate
+ integer and fp vectors.
+ (HASHBITS): Remove.
+ (const_hash_1): Rename from const_hash. Use real_hash. Do not
+ take modulus MAX_HASH_TABLE.
+ (const_hash): New. Do take modulus MAX_HASH_TABLE.
+ (output_constant_def): Do not take modulus MAX_HASH_TABLE.
+ (SYMHASH): Don't use HASHBITS.
+ (decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE.
+ Fix CONST_VECTOR thinko wrt fp vectors. Fix kind comparison.
+ (simplify_subtraction): Fix kind comparison.
+ (const_hash_rtx): Return unsigned int. Don't use HASHBITS.
+ Use a union to pun integer array.
+ * config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash;
+ only hash two words of integral CONST_DOUBLE.
+
+2002-09-20 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (STARTFILE_SPEC): Modify.
+ (STARTFILE_PREFIX_SPEC): New.
+ (LINK_SPEC): Modify.
+ (LIB_SPEC): Modify.
+ (LIBGCC_SPEC): New.
+
+2002-09-20 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (legitimate_pic_address_disp_p): Allow
+ UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant.
+
+2002-09-20 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
+
+ * config/arm/arm.md (sign_extract_onebit, not_signextract_onebit):
+ Add clobber of the condition code register.
+
+2002-09-20 Richard Henderson <rth@redhat.com>
+
+ * real.c (do_fix_trunc): Static.
+ (encode_ieee_single, encode_ieee_double, encode_ieee_extended,
+ encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g,
+ encode_i370_single, encode_i370_double, encode_c4x_single,
+ encode_c4x_extended): Add default abort case.
+
+2002-09-20 Richard Henderson <rth@redhat.com>
+
+ * real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS,
+ MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c.
+ (struct realvaluetype): Remove.
+ (REAL_VALUE_TYPE): Use struct real_value.
+ (REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS.
+ (test_real_width): New.
+ * real.c: Global replace struct real_value with REAL_VALUE_TYPE.
+ (real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters.
+ (real_compare, real_exponent, real_ldexp, real_isinf, real_isnan,
+ real_isneg, real_isnegzero, real_identical, exact_real_inverse,
+ real_to_integer, real_to_integer2, real_to_decimal,
+ real_to_hexadecimal, real_from_string, real_from_integer,
+ real_inf, real_nan, real_2expN, real_convert, real_to_target,
+ real_from_target): Likewise.
+ * tree.h (struct tree_real_cst): Use real_value not realvaluetype.
+ * gengtype-yacc.y (bitfieldopt): Accept an ID as well.
+
+2002-09-20 Richard Henderson <rth@redhat.com>
+
+ * real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT,
+ IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ...
+ * defaults.h: ... here.
+ * config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h,
+ config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h,
+ config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h,
+ config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove.
+
+2002-09-20 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.md ("negdf2"): Rewrite.
+ ("*expanded_negdf2"): New.
+
+2002-09-19 Jim Wilson <wilson@redhat.com>
+
+ * combine.c (simplify_set): When optimizing a subreg src with a
+ cc0 dest, use GET_MODE (src) for mask instead of inner_mode.
+
+2002-09-19 Dale Johannesen <dalej@apple.com>
+ * combine.c (make_extraction): Don't create
+ invalid subreg.
+
+2002-09-19 Roger Sayle <roger@eyesopen.com>
+
+ * tree.c (integer_nonzerop): New predicate for nonzero integers.
+ * tree.h (integer_nonzerop): Add function prototype.
+ * stmt.c (expand_end_loop): Don't rotate the loop when there
+ are no instructions in the test, i.e. the loop is unconditional.
+ (expand_exit_loop_if_false): Optimize RTL generation of loop
+ tests when the condition is always true or always false.
+ * c-semantics.c (genrtl_do_stmt): Optimize RTL generation of
+ do-loops when the condition is always true.
+ (genrtl_for_stmt): Optimize RTL generation of for-loops when
+ the for-expression is empty.
+
+2002-09-19 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c (use_pipes): New flag.
+ (process_command): Set it. Adjust check for -pipe conflicting
+ with -time or -save-temps.
+ (do_spec_1): Use it. Handle %|SUFFIX, %mSUFFIX, and
+ %<SWITCH. Drop %| (without a SUFFIX).
+ (handle_braces): Drop %{<SWITCH}, %{^SWITCH}, %{|...}.
+ (give_switch): Third argument eliminated.
+ (invoke_as, @assembler_with_cpp spec): Use %|.s or %m.s
+ depending on AS_NEEDS_DASH_FOR_PIPED_INPUT.
+ (specs documentation comment): Update.
+
+ * config/netbsd-aout.h, config/openbsd.h, config/ptx4.h,
+ config/svr4.h, config/i386/freebsd-aout.h,
+ config/m68k/netbsd-elf.h, config/m68k/netbsd.h,
+ config/m68k/openbsd.h, config/mips/openbsd.h,
+ config/sparc/sparc.h: Define AS_NEEDS_DASH_FOR_PIPED_INPUT
+ instead of putting %| into ASM_SPEC and/or ASM_FINAL_SPEC.
+ * config/avr/avr.h: Delete do-nothing ASM_FINAL_SPEC.
+ * config/cris/cris.h: Update comment.
+
+ * ada/lang-specs.h: Use %(invoke_as). Straighten out
+ error messages. Don't use %{^SWITCH}.
+ * ada/misc.c (gnat_decode_option): Handle -I with a
+ separate argument.
+
+ * f/lang-specs.h: Use %| and %m.
+ * java/jvspec.c: Use %m and %(invoke_as). Change all
+ uses of %{<SWITCH} to %<SWITCH.
+
+ * doc/invoke.texi: Update documentation of specs.
+ * doc/tm.texi: Document AS_NEEDS_DASH_FOR_PIPED_INPUT.
+
+2002-09-19 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG
+ and STRICT_LOW_PART within SET_DEST.
+ * config/s390/s390.md ("*extractqi", "*extracthi"): New insns with
+ splitters, replacing pre-reload splitters.
+ ("*zero_extendhisi2_31", "*zero_extendqisi2_31",
+ "*zero_extendqihi2_31"): New insns.
+ ("*zero_extendqihi2_64"): Do not clobber CC.
+
+2002-09-18 Devang Patel <dpatel@apple.com>
+
+ * cp/cp-tree.h: New prototype for walk_vtables().
+ * cp/decl.c (walk_vtables_r): New function.
+ (struct cp_binding_level): Add new members, namespaces,
+ names_size and vtables.
+ (add_decl_to_level): Add decl in namespaces or vtables
+ chain, if conditions match.
+ (walk_vtables): New function.
+ (walk_namespaces_r): Travers separate namespace chain
+ for namespace decls.
+ (wrapup_globals_for_namespace): Use names_size instead
+ of list_length().
+ * cp/decl2.c (finish_file): Use walk_vtables() instead of
+ walk_globals() to walk vtable decls.
+
+2002-09-19 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New.
+ (DTORS_SECTION_ASM_OP): Ditto.
+ (READONLY_DATA_SECTION_ASM_OP): Moved.
+ (DATA_SECTION_ASM_OP): New.
+ (SDATA_SECTION_ASM_OP): New.
+ (BSS_SECTION_ASM_OP): New.
+ (SBSS_SECTION_ASM_OP): New.
+ (TEXT_SECTION_ASM_OP): New.
+
+2002-09-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/fp-bit.c: Follow spelling conventions.
+ * config/d30v/d30v.c: Likewise.
+ * config/d30v/d30v.h: Likewise.
+ * config/fr30/fr30.c: Likewise.
+ * config/fr30/fr30.h: Likewise.
+ * config/fr30/fr30.md: Likewise.
+ * config/frv/frv.c: Likewise.
+ * config/frv/frv.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/lib1funcs.asm: Likewise.
+ * config/i370/i370.c: Likewise.
+ * config/i386/i386.h: Likewise.
+ * config/i386/i386.md: Likewise.
+ * config/i386/pentium.md: Likewise.
+ * config/i386/winnt.c: Likewise.
+ * config/i960/i960.c: Likewise.
+ * config/ia64/ia64.h: Likewise.
+ * config/ip2k/ip2k.c: Likewise.
+ * config/ip2k/ip2k.h: Likewise.
+ * config/ip2k/ip2k.md: Likewise.
+ * config/ip2k/libgcc.S: Likewise.
+
+2002-09-19 Stephen Clarke <stephen.clarke@superh.com>
+
+ * config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
+ (GOTOFF_P): Extend to allow gotoff plus constant.
+
+2002-09-18 Richard Henderson <rth@redhat.com>
+
+ * ifcvt.c (noce_process_if_block): Correctly detect X modified
+ with INSN_B before COND_EARLIEST. Don't check A and B for
+ modification in condition range. Reorder INSN_B for A==B properly.
+ (if_convert): Iterate until no matches for a block.
+
+2002-09-18 Richard Henderson <rth@redhat.com>
+
+ * calls.c (store_one_arg): Rename default_align to parm_align;
+ always adjust parm_align for downward padding.
+
+2002-09-18 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (backend_init): Move init_real_once invocation ...
+ (do_compile): ... here.
+
+2002-09-18 Richard Henderson <rth@redhat.com>
+
+ * sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove
+ RTX_UNCHANGING_P markers for successful tail-recursive replacement.
+
+2002-09-18 Richard Henderson <rth@redhat.com>
+
+ * real.c (round_for_format): Collect sticky as unsigned long, not bool.
+
+2002-09-19 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md: (floatdisf2): Rename to
+ floatdisf2_internal1.
+ (floatdisf2): New define_expand.
+ (floatdisf2_internal2): Likewise.
+
+2002-09-18 Richard Henderson <rth@redhat.com>
+
+ * real.c (sticky_rshift_significand): Collect sticky as
+ unsigned long, not bool.
+
+2002-09-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_address_cost): New function.
+ config/s390/s390-protos.h (s390_address_cost): Add prototype.
+ config/s390/s390.h (ADDRESS_COST): Call s390_address_cost.
+ (RTX_COST): Use COSTS_N_INSNS.
+
+2002-09-18 Douglas Rupp <rupp@gnat.com>
+ Donn Terry <donnte@microsoft.com>
+
+ * stor-layout.c (place_field): Handle alignment of whole
+ structures when MSVC compatible bitfields are involved.
+ Change method of computing location of MS bitfields to
+ be compatible with #pragma pack(n).
+
+ * tree.h (record_layout_info): Add new field
+ remaining_in_alignment.
+
+ * doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update.
+ (pragma pack): Add paragraph on MSVC bitfield packing.
+
+2002-09-18 Richard Earnshaw (reanrsha@arm.com)
+
+ PR optimization/7967
+ * arm.md (ne_zeroextractsi): Add clobber of the condition code
+ register.
+
+2002-09-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/s390/s390.c: Follow spelling conventions.
+ * config/sh/lib1funcs.asm: Likewise.
+ * config/sh/sh.c: Likewise.
+ * config/sh/sh.h: Likewise.
+ * config/sparc/sparc.c: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/sparc/sparc.md: Likewise.
+ * config/stormy16/stormy16.c: Likewise.
+ * config/stormy16/stormy16.h: Likewise.
+ * config/v850/v850.c: Likewise.
+ * config/v850/v850.h: Likewise.
+ * config/vax/vax.c: Likewise.
+ * config/vax/vax.h: Likewise.
+
+2002-09-18 Nick Clifton <nickc@redhat.com>
+
+ * config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves.
+ * config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode.
+ * config/rs6000/spe.md (movv1di, movv1di_internal): New patterns.
+
+2002-09-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * function.c (max_parm_reg_num): Remove.
+ * stmt.c (in_control_zone_p, stmt_loop_nest_empty,
+ drop_through_at_end_p, move_cleanups_up,
+ expand_end_case_dummy, case_index_expr_type): Likewise.
+ * stor-layout.c (pos_from_byte): Likewise.
+ * tree.c (chain_member_value, chain_member_purpose, listify,
+ tree_int_cst_msb, index_type_equal): Likewise.
+ * tree.h: Remove prototypes for unused functions.
+
+2002-09-17 Zack Weinberg <zack@codesourcery.com>
+
+ * ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date
+ statement that the only translation is to en_UK.
+
+2002-09-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.c: Follow spelling conventions.
+ * config/alpha/alpha.h: Likewise.
+ * config/alpha/alpha.md: Likewise.
+ * config/arc/arc.h: Likewise.
+ * config/arm/arm.c: Likewise.
+ * config/arm/arm.h: Likewise.
+ * config/arm/arm.md: Likewise.
+ * config/arm/pe.c: Likewise.
+ * config/arm/unknown-elf.h: Likewise.
+ * config/avr/avr.c: Likewise.
+ * config/avr/avr.h: Likewise.
+ * config/c4x/c4x.c: Likewise.
+ * config/cris/cris.c: Likewise.
+ * config/cris/cris.h: Likewise.
+
+2002-09-17 Samuel Figueroa <figueroa@apple.com>
+
+ * final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP.
+ * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro.
+ * doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description.
+
+2002-09-17 Dale Johannesen <dalej@apple.com>
+
+ * cfgcleanup.c (try_forward_edges): Do not forward a
+ branch to just after a loop exit before loop optimization;
+ this interfered with doloop detection.
+
+2002-09-17 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (output_return_instruction): Do not
+ writeback the stack pointer when it is being loaded.
+ (arm_output_epilogue): Likewise.
+
+2002-09-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * optabs.c (prepare_cmp_insn): Let emit_library_call_value
+ generate a pseudo reg that receives the result of a libcall.
+ (prepare_float_lib_cmp): Likewise.
+
+2002-09-17 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/elf.h: Remove CPP_PREDEFINES.
+
+Tue Sep 17 13:58:04 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ Fix PR/7014 and related objc bugs:
+ * c-typeck.c (comp_target_types): Added a reflexive argument.
+ Pass it to ObjC when/if calling objc_comptypes(). Updated all
+ callers to provide the appropriate reflexive argument.
+ * objc/objc-act.c (objc_comptypes): Carefully checked and fixed
+ typechecking for all cases of comparisons and assignments,
+ particularly the obscure and less common ones involving protocols.
+
+2002-09-17 Nick Clifton <nickc@redhat.com>
+
+ * machmode.def (V1DImode): New mode. A single element vector.
+ * tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums.
+ (unsigned_V1DI_type_node, V1D1_type_node): New type nodes.
+ * tree.c (build_common_tree_nodes_2): Build
+ unsigned_V1DI_type_node and V1D1_type_node.
+ * c-common.c (c_common_type_for_mode): Return
+ unsigned_V1DI_type_node or V1D1_type_node for V1DImode.
+ * rtl.c (class_narrowest_): Start integer vector nodes with V1DImode.
+
+Tue Sep 17 13:40:13 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * doc/objc.texi (Constant string objects): Extended documentation
+ to make clear that the constant string class ivar layout is
+ completely fixed.
+
+2002-09-17 Roger Sayle <roger@eyesopen.com>
+
+ * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
+ NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
+
+2002-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * config/mips/mips.c (save_restore_insns): Remove unused variable.
+ * gcc.c (make_relative_prefix): Likewise.
+ * loop.c (check_final_value): Likewise.
+ * jump.c (init_label_info): Remove return value.
+ * cse.c (prev_insn): Move variable between #ifdef HAVE_cc0 ... #endif.
+
+2002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dsp16xx.h (ASM_FORMAT_PRIVATE_NAME): Delete.
+ (ASM_PN_FORMAT): Define.
+
+2002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.h, alpha/vms.h, arc.h, arm/aof.h, arm/aout.h, avr.h,
+ c4x.h, cris.h, d30v.h, fr30.h, frv.h, h8300.h, i370.h, i386.h,
+ i960.h, ia64.h, ip2k.h, m32r.h, m68hc11.h, m68k/3b1.h,
+ m68k/hp320.h, m68k.h, m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h,
+ m88k.h, mcore.h, mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h,
+ pa.h, pdp11.h, romp.h, rs6000.h, s390/linux.h, sh.h, sparc.h,
+ stormy16.h, v850.h, vax.h, xtensa.h (ASM_FORMAT_PRIVATE_NAME):
+ Delete.
+ * alpha/vms.h, h8300.h, i370.h, ia64.h, m68k/3b1.h, m68k/hp320.h,
+ m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h, mmix.h, mn10200.h,
+ mn10300.h, pa.h, v850.h (ASM_PN_FORMAT): Define.
+
+ * defaults.h (ASM_PN_FORMAT, ASM_FORMAT_PRIVATE_NAME): Define.
+ * doc/tm.texi (ASM_FORMAT_PRIVATE_NAME): Update documentation.
+
+2002-09-16 Richard Henderson <rth@redhat.com>
+
+ * expr.c (emit_block_move): Set memory block size as appropriate
+ for the copy.
+
+2002-09-16 Richard Henderson <rth@redhat.com>
+
+ PR fortran/3924
+ * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol.
+
+2002-09-16 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE
+ as well as OFFSET for BITPOS.
+
+2002-09-16 Jeff Garzik <jgarzik@mandrakesoft.com>
+
+ * config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx.
+ * config/i386/i386.c (processor_alias_table): Add winchip-c6,
+ winchip2 and c3.
+ * doc/invoke.texi: Mention new aliases.
+
+2002-09-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * calls.c (store_one_arg): Set default alignment for BLKmode arguments
+ to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is
+ downward.
+ * function.c (pad_below): Always compile.
+ (locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to
+ alignment when it is not in a register or REG_PARM_STACK_SPACE is true.
+ Pad below when the argument is not in a register and the padding
+ direction is downward.
+
+ * pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h.
+ (PAD_VARARGS_DOWN): Define.
+ * pa.c (function_arg_padding): Revise padding directions to make them
+ compatible with the 32 and 64-bit runtime architecture documentation.
+ (hppa_va_arg): Add code to handle variable and size zero arguments
+ passed by reference on TARGET_64BIT. Reformat.
+ (function_arg): Use a PARALLEL for BLKmode and aggregates args on
+ TARGET_64BIT. Use a DImode PARALLEL for BLKmode args 5 to 8 bytes
+ wide when !TARGET_64BIT. Move forward check for mode==VOIDmode.
+ Add comments.
+ * pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT.
+ (RETURN_IN_MEMORY): Return size zero types in memory.
+ (FUNCTION_VALUE): Return TFmode in general registers.
+ (MUST_PASS_IN_STACK): Define.
+ (FUNCTION_ARG_BOUNDARY): Simplify.
+ (FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types
+ by reference.
+ (FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE.
+
+2002-09-16 Richard Henderson <rth@redhat.com>
+
+ * real.c (do_fix_trunc): New.
+ (real_arithmetic): Call it.
+ * simplify-rtx.c (simplify_unary_operation): Handle FIX
+ with a floating-point result mode.
+
+2002-09-16 Richard Henderson <rth@redhat.com>
+
+ * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
+ (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
+ * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
+ (__builtin_nans, __builtin_nansf, __builtin_nansl): New.
+ * builtins.c (fold_builtin_nan): New.
+ (fold_builtin): Call it.
+ * real.c (real_nan): Parse a non-empty string.
+ (round_for_format): Fix NaN significand truncation.
+ * real.h (real_nan): Return bool.
+ * doc/extend.texi: Document new builtins.
+
+2002-09-16 Jason Merrill <jason@redhat.com>
+ Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/winnt.c (ix86_handle_dll_attribute): Set
+ DECL_EXTERN and TREE_PUBLIC for dllimported variables here...
+ (i386_pe_mark_dllimport): Not here.
+
+2002-09-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-semantics.c (genrtl_do_stmt): Cope with NULL cond.
+
+2002-09-16 Geoffrey Keating <geoffk@redhat.com>
+
+ * config/rs6000/rs6000.c (build_mask64_2_operands): Suppress
+ warnings about unused operands when HOST_BITS_PER_WIDE_INT is
+ < 64.
+ (rs6000_emit_cmove): Use real_isinf not target_isinf.
+
+2002-09-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * calls.c (emit_library_call_value_1): Don't refer to
+ hard_libcall_value.
+ * optabs.c (prepare_float_lib_cmp): Likewise.
+
+2002-09-16 Geoffrey Keating <geoffk@apple.com>
+
+ * ggc-common.c (ggc_mark_rtx_children_1): Update for changed name
+ mangling.
+
+ The following changes are merged from pch-branch:
+
+ * doc/gty.texi (GTY Options): Document %a.
+ * gengtype.c (do_scalar_typedef): New function.
+ (process_gc_options): Handle `length' option.
+ (set_gc_used_type): A pointer to an array of structures doesn't
+ qualify as a pointer to a structure.
+ (output_escaped_param): Add `%a' escape.
+ (write_gc_structure_fields): Allow 'desc' on array of unions.
+ (main): Define `uint8', `jword' and `JCF_u2' as scalars; use
+ do_scalar_typedef.
+
+ * gengtype.c (enum rtx_code): Make global.
+ (rtx_format): Make global.
+ (rtx_next): New.
+ (gen_rtx_next): New.
+ (write_rtx_next): New.
+ (adjust_field_rtx_def): Skip fields marked by chain_next.
+ (open_base_files): Delete redundant prototype.
+ (write_enum_defn): New.
+ (output_mangled_typename): Correct abort call.
+ (write_gc_marker_routine_for_structure): Handle chain_next and
+ chain_prev options.
+ (finish_root_table): Don't output redundant \n.
+ (main): Call gen_rtx_next, write_rtx_next, write_enum_defn.
+ * c-tree.h (union lang_tree_node): Add chain_next option.
+
+ * gengtype.h (NUM_PARAM): New definition.
+ (struct type): For TYPE_PARAM_STRUCT, allow multiple parameters.
+ * gengtype.c (find_param_structure): New.
+ (adjust_field_type): Handle param<n>_is option.
+ (process_gc_options): Detect use_params option. Update callers.
+ (set_gc_used_type): Add 'param' parameter, update callers. Handle
+ 'use_params' option.
+ (open_base_files): Add splay-tree.h to list of files included.
+ (output_mangled_typename): New.
+ (write_gc_structure_fields): Update 'param' parameter to support
+ multiple parameters. Change name mangling. Allow parameterized
+ fields to have an apparent scalar type. Handle param<n>_is options,
+ use_param option.
+ (write_gc_marker_routine_for_structure): Update for change to name
+ mangling. Better guess the output file for parameterized types.
+ (write_gc_types): Update for change to name mangling.
+ (write_gc_root): Update for change to name mangling. Handle (ignore)
+ param<n>_is options.
+ * doc/gty.texi (GTY Options): Add description of param<n>_is
+ options, use_params option.
+ * ggc.h (ggc_mark_rtx): Update for changed name mangling.
+ * gengtype-lex.l: Produce token for param<n>_is.
+ * gengtype-yacc.y: Parse param<n>_is.
+
+ * gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'.
+
+ * rtl.c: Update comment describing rtx_format.
+ * rtl.h (union rtunion): Separate definition and typedef.
+ (struct rtx_def): Use gengtype to mark.
+ * Makefile.in (gengtype.o): Also depend on rtl.def.
+ * ggc.h (ggc_mark_rtx_children): Delete prototype.
+ (ggc_mark_rtx): Change to alias of gengtype-generated routine.
+ * ggc-common.c (ggc_mark_rtx_children): Delete.
+ (ggc_mark_rtx_children_1): Delete.
+ (gt_ggc_m_rtx_def): Delete.
+ * gengtype.c (adjust_field_rtx_def): New.
+ (adjust_field_type): Call adjust_field_rtx_def.
+ (write_gc_structure_fields): Add 'default' case to switch if none
+ is specified; remove unused code.
+
+ * tree.h (struct tree_exp): Update for change to meaning
+ of special.
+ * gengtype.c (adjust_field_tree_exp): New function.
+ (adjust_field_type): Handle `tree_exp' special here.
+ (write_gc_structure_fields): Don't handle `tree_exp' special here.
+ Handle new `dot' option.
+
+ * gengtype.h: Make `info' a pointer-to-const.
+ * gengtype-yacc.y (yacc_ids): Use xasprintf.
+
+ * gengtype.c (write_gc_structure_fields): Remove implementation
+ of `always' option, add `default' option.
+ * doc/gty.texi (GTY Options): Remove documentation of `always',
+ add `default'.
+
+2002-09-16 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE.
+
+2002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * m68hc11.md (addhi_sp): Fix uninitialized variable bug.
+
+ * c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h
+ instead of the *-protos.h file directly.
+ * t-c4x, t-i370, t-v850: Depend on $(TM_P_H).
+ * darwin.c (machopic_output_stub): Move prototype ...
+ * darwin-protos.h (machopic_output_stub): ... here.
+ * rs6000-protos.h (machopic_output_stub): Don't declare.
+
+2002-09-16 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__.
+
+2002-09-16 Richard Henderson <rth@redhat.com>
+
+ * real.c, real.h: Rewrite from scratch.
+
+ * Makefile.in (simplify-rtx.o): Depend on TREE_H.
+ (paranoia): New target.
+ * builtins.c (fold_builtin_inf): Use new real.h interface.
+ * c-common.c (builtin_define_with_hex_fp_value): Likewise.
+ * c-lex.c (interpret_float): Likewise.
+ * emit-rtl.c (gen_lowpart_common): Likewise.
+ * optabs.c (expand_float): Use real_2expN.
+ * config/ia64/ia64.md (divsi3, udivsi3): Likewise.
+ * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New.
+ (FLOAT_WORDS_BIG_ENDIAN): New.
+ * cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE
+ directly to REAL_VALUE_NEGATIVE.
+ * loop.c (canonicalize_condition): Likewise.
+ * simplify-rtx.c: Include tree.h.
+ (simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX
+ with floating-point result modes.
+ * toplev.c (backend_init): Call init_real_once.
+
+ * fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE.
+ * tree.c (build_real): Likewise.
+ * config/alpha/alpha.c, config/vax/vax.c (float_strings,
+ float_values, inited_float_values, check_float_value): Remove.
+ * config/alpha/alpha.h, config/m68hc11/m68hc11.h,
+ config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove.
+ * doc/tm.texi (CHECK_FLOAT_VALUE): Remove.
+ (VAX_HALFWORD_ORDER): Remove.
+
+2002-09-16 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c: (legitimize_la_operand): Remove, replace by ...
+ (s390_load_address): ... this new function.
+ (s390_decompose_address): Allow the argument pointer and all
+ virtual registers as 'pointer' registers.
+ (s390_expand_plus_operand): Use s390_load_address.
+ config/s390/s390.md (movti, movdi, movdf splitters): Likewise.
+ ("force_la_31"): New insn pattern.
+ config/s390/s390-protos.h (legitimize_la_operand): Remove.
+ (s390_load_address): Add prototype.
+
+ * config/s390/s390.c: Include "optabs.h".
+ (s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New.
+ config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr,
+ s390_expand_cmpstr): Add prototypes.
+ config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr.
+ ("movstrdi_short"): Rename to "movstr_short_64". Change predicates
+ for operands 0 and 1 to "memory_operand". Add type attribute.
+ ("movstrsi_short"): Rename to "movstr_short_31". Change predicates
+ for operands 0 and 1 to "memory_operand". Add type attribute.
+ ("movstrdi_long", "movstrsi_long"): Remove.
+ ("movstrdi_64"): Rename to "movstr_long_64". Add type attribute.
+ ("movstrsi_31"): Rename to "movstr_long_31". Add type attribute.
+ ("clrstrdi", "clrstrsi"): Call s390_expand_clrstr.
+ ("clrstrsico"): Remove, replace by ...
+ ("clrstr_short_64", "clrstr_short_31"): ... these new patterns.
+ ("clrstrsi_64"): Rename to "clrstr_long_64".
+ ("clrstrsi_31"): Rename to "clrstr_long_31".
+ ("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr.
+ ("cmpstr_const"): Remove, replace by ...
+ ("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns.
+ ("cmpstr_64"): Rename to "cmpstr_long_64".
+ ("cmpstr_31"): Rename to "cmpstr_long_31".
+
+2002-09-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ABOUT-NLS: Follow spelling conventions.
+ * ChangeLog: Likewise.
+ * ChangeLog.1: Likewise.
+ * ChangeLog.2: Likewise.
+ * ChangeLog.3: Likewise.
+ * ChangeLog.4: Likewise.
+ * ChangeLog.5: Likewise.
+ * ChangeLog.6: Likewise.
+ * FSFChangeLog.10: Likewise.
+ * FSFChangeLog.11: Likewise.
+ * c-common.c: Likewise.
+ * c-lex.c: Likewise.
+ * c-objc-common.c: Likewise.
+ * cppexp.c: Likewise.
+ * cppinit.c: Likewise.
+ * cpplex.c: Likewise.
+ * doloop.c: Likewise.
+ * flow.c: Likewise.
+ * function.c: Likewise.
+ * integrate.c: Likewise.
+ * loop.c: Likewise.
+ * reg-stack.c: Likewise.
+ * reload.h: Likewise.
+ * ssa.c: Likewise.
+
+2002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (vmsdbgout.o): Depend on $(TARGET_H)
+ * vmsdbgout.c: Include "target.h".
+
+2002-09-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog: Follow spelling conventions.
+ * ChangeLog.0: Likewise.
+ * ChangeLog.1: Likewise.
+ * ChangeLog.2: Likewise.
+ * ChangeLog.4: Likewise.
+ * ChangeLog.6: Likewise.
+ * config.gcc: Likewise.
+ * dwarfout.c: Likewise.
+ * reload1.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * unwind-sjlj.c: Likewise.
+ * config/avr/avr.h: Likewise.
+ * config/d30v/d30v.h: Likewise.
+ * config/frv/frv.c: Likewise.
+ * config/frv/frv.h: Likewise.
+ * config/ip2k/ip2k.h: Likewise.
+ * config/m88k/m88k-move.sh: Likewise.
+ * config/stormy16/stormy16.c: Likewise.
+ * config/stormy16/stormy16.h: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/interface.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+ * doc/md.texi: Likewise.
+ * doc/rtl.texi: Likewise.
+ * doc/tm.texi: Likewise.
+ * doc/trouble.texi: Likewise.
+ * ginclude/float.h: Likewise.
+ * treelang/treelang.texi: Likewise.
+
+2002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * i386-protos.h (i386_pe_dllexport_name_p,
+ i386_pe_dllimport_name_p, i386_pe_unique_section,
+ i386_pe_declare_function_type, i386_pe_record_external_function,
+ i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add
+ prototype.
+ * i386/t-cygwin (winnt.o): Depend on $(TM_P_H).
+ * i386/t-interix (winnt.o): Likewise.
+
+ * v850-protos.h (v850_output_addr_const_extra): Prototype.
+
+2002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add
+ MIPS ABI CPP macros.
+ (TARGET_CPU_CPP_BUILTINS): Redefine.
+ (SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default.
+ (SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove.
+
+2002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo.
+
+2002-09-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog: Follow spelling conventions.
+ * ChangeLog.0: Likewise.
+ * ChangeLog.1: Likewise.
+ * ChangeLog.2: Likewise.
+ * ChangeLog.3: Likewise.
+ * ChangeLog.4: Likewise.
+ * ChangeLog.5: Likewise.
+ * ChangeLog.6: Likewise.
+ * FSFChangeLog.10: Likewise.
+ * FSFChangeLog.11: Likewise.
+ * c-common.c: Likewise.
+ * c-common.h: Likewise.
+ * c-format.c: Likewise.
+ * c-opts.c: Likewise.
+ * cpplib.c: Likewise.
+ * langhooks.h: Likewise.
+ * real.c: Likewise.
+ * reg-stack.c: Likewise.
+ * toplev.c: Likewise.
+ * config/arm/arm.c: Likewise.
+ * config/arm/arm.md: Likewise.
+ * config/arm/linux-gas.h: Likewise.
+ * config/arm/netbsd.h: Likewise.
+ * config/c4x/c4x.c: Likewise.
+ * config/c4x/c4x.h: Likewise.
+ * config/c4x/c4x.md: Likewise.
+ * config/c4x/libgcc.S: Likewise.
+ * config/fr30/fr30.md: Likewise.
+ * config/frv/frv.md: Likewise.
+ * config/ia64/ia64.md: Likewise.
+ * config/mips/mips.h: Likewise.
+ * config/mn10300/mn10300.c: Likewise.
+ * config/stormy16/stormy16.c: Likewise.
+ * config/v850/v850.md: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+ * doc/md.texi: Likewise.
+
+2002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/netbsd.h (LIB_SPEC): Include the appropriate pthread
+ library if -pthread is specified.
+
+2002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (*-*-netbsd*): Set thread_file to 'posix'
+ for --enable-threads=yes and --enable-threads=posix.
+
+2002-09-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/sparc/cypress.md: Replace Sparc with SPARC.
+ * config/sparc/freebsd.h: Likewise.
+ * config/sparc/gmon-sol2.c: Likewise.
+ * config/sparc/hypersparc.md: Likewise.
+ * config/sparc/lb1spc.asm: Likewise.
+ * config/sparc/lb1spl.asm: Likewise.
+ * config/sparc/linux.h: Likewise.
+ * config/sparc/linux64.h: Likewise.
+ * config/sparc/lynx.h: Likewise.
+ * config/sparc/sol2.h: Likewise.
+ * config/sparc/sparc-modes.def: Likewise.
+ * config/sparc/sparc.c: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/sparc/sparc.md: Likewise.
+ * config/sparc/sparclet.md: Likewise.
+ * config/sparc/supersparc.md: Likewise.
+ * config/sparc/sysv4.h: Likewise.
+ * config/sparc/vxsim.h: Likewise.
+ * config/sparc/vxsparc64.h: Likewise.
+
+2002-09-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-lex.c (cb_ident): Mark variable with ATTRIBUTE_UNUSED.
+ * collect2.c (ignore_library, aix_std_libs): Move into the context
+ where it is used.
+ * m68hc11.c (m68hc11_autoinc_compatible_p): Delete prototype.
+ (autoinc_mode, m68hc11_make_autoinc_notes): Add prototypes.
+ * m88k.c (output_call): Wrap variables with macro controlling use.
+ * rs6000.md: Likewise. Const-ify variable.
+ * sh.h (ASM_OUTPUT_LABELREF): Likewise.
+ * final.c (only_leaf_regs_used): Likewise.
+ * regrename.c (maybe_mode_change): Mark parameter with
+ ATTRIBUTE_UNUSED.
+ * reload.c (find_valid_class): Likewise. Likewise for variable.
+ (find_reloads_address_1): Likewise.
+ * varasm.c (weak_finish): Wrap variable with macro controlling use.
+
+2002-09-14 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * config/avr/avr.c (output.h): Move after inclusion of tree.h.
+
+2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ChangeLog: Follow spelling conventions.
+ * ChangeLog.0: Likewise.
+ * ChangeLog.2: Likewise.
+ * ChangeLog.3: Likewise.
+ * ChangeLog.4: Likewise.
+ * ChangeLog.5: Likewise.
+ * ChangeLog.6: Likewise.
+ * cppfiles.c: Likewise.
+ * cppinit.c: Likewise.
+ * cpplib.h: Likewise.
+ * cse.c: Likewise.
+ * debug.h: Likewise.
+ * df.c: Likewise.
+ * dominance.c: Likewise.
+ * hashtable.c: Likewise.
+ * hashtable.h: Likewise.
+ * loop.c: Likewise.
+ * config/arm/README-interworking: Likewise.
+ * config/arm/arm.c: Likewise.
+ * config/arm/arm.h: Likewise.
+ * config/arm/arm.md: Likewise.
+ * config/dsp16xx/dsp16xx.h: Likewise.
+ * config/frv/frv.c: Likewise.
+ * config/frv/frv.h: Likewise.
+ * config/ip2k/ip2k.h: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/stormy16/stormy-abi: Likewise.
+ * config/stormy16/stormy16.h: Likewise.
+ * config/v850/v850.c: Likewise.
+
+2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * loop.c: Fix a comment typo.
+
+2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/fr30/fr30.h: Fix comment typos.
+ * config/frv/frv.c: Likewise.
+ * config/i386/xmmintrin.h: Likewise.
+ * config/mips/mips.c: Likewise.
+ * config/sh/sh.c: Likewise.
+
+2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * haifa-sched.c: Follow spelling conventions.
+ * regclass.c: Likewise.
+ * regrename.c: Likewise.
+ * config/fp-bit.c: Likewise.
+ * config/frv/frv.h: Likewise.
+ * config/m88k/m88k.c: Likewise.
+ * config/mcore/mcore.c: Likewise.
+ * config/rs6000/darwin.h: Likewise.
+ * config/rs6000/gnu.h: Likewise.
+ * config/rs6000/linux.h: Likewise.
+ * config/rs6000/linux64.h: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/sh/sh.c: Likewise.
+ * config/sparc/sparc.c: Likewise.
+ * config/sparc/ultra1_2.md: Likewise.
+
+2002-09-14 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable
+ memory operand when source is 0 (K constraint).
+ ("movsi_internal"): Likewise.
+ ("movdf_internal"): Likewise.
+ ("movsf_internal"): Likewise.
+
+2002-09-14 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use
+ targetm.binds_local_p to set SYMBOL_REF_FLAG.
+ (rs6000_xcoff_encode_section_info): Likewise.
+ * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
+
+2002-09-10 Theodore A. Roth <troth@verinet.com>
+
+ * gcc/config/avr/avr.h: Set default options for C++ for avr.
+
+2002-09-13 Roger Sayle <roger@eyesopen.com>
+
+ * stmt.c (struct nexting): Remove unused alt_end_label field.
+ (expand_start_loop): Delete initialization of alt_end_label.
+ (expand_start_null_loop): Likewise.
+ (expand_exit_loop_if_false): Delete updating of alt_end_label.
+
+2002-09-13 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (toplev.o): Depend on real.h.
+ (print-rtl.o, varasm.o, ifcvt.o): Likewise.
+
+2002-09-14 Alan Modra <amodra@bigpond.net.au>
+
+ * doc/tm.texi (DBX_OUTPUT_NFUN): Describe.
+ * dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN.
+ * config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define.
+
+2002-09-13 Nathan Sidwell <nathan@codesourcery.com>
+
+ * ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables.
+
+2002-09-13 Steve Ellcey <sje@cup.hp.com>
+
+ * config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*,
+ ia64*-*-linux*): Set extra_parts.
+ * config/ia64/t-aix (EXTRA_PARTS): Remove.
+ * config/ia64/t-ia64 (EXTRA_PARTS): Remove.
+
+2002-09-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/fixunssfsi.c: Replace H8/S with H8S.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+ * doc/invoke.texi: Likewise.
+
+2002-09-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_init_once): Fix formatting.
+
+2002-09-13 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.md (attr type): Add callpal.
+ (imb, trap, load_tp, set_tp): Use it.
+ * config/alpha/ev4.md (ev4_callpal): New.
+ * config/alpha/ev5.md (ev5_callpal): New.
+ * config/alpha/ev6.md (ev6_ibr): Handle callpal.
+ * config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL.
+ (alphaev5_insn_pipe): Likewise.
+
+2002-09-13 Andreas Jaeger <aj@suse.de>
+
+ * Makefile.in (print-rtl.o): Depend on CONFIG_H.
+
+2002-09-13 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO,
+ LIB2ADDEH): New, set to NULL.
+ (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New.
+
+2002-09-13 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/quadlib.c (_U_Qfcmp): Make extern.
+ (_U_Qfcnvfxt_quad_to_sgl): Remove declaration.
+ (_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp):
+ Add declarations.
+ (_U_Qfneg): Remove.
+
+2002-09-13 Dhananjay Deshpande <dhananjayd@kpit.com>
+
+ * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support
+ for H8/300, H8S aa:8 mode.
+ (TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode.
+ * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length
+ for H8/300 aa:8 mode.
+
+2002-09-13 Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/s390/s390.md ("trap", "conditional_trap", "*trap"): New
+ insns.
+
+2002-09-12 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (HOST_PRINT): Use print-rtl1.o
+ (print-rtl.o): Don't define GENERATOR_FILE.
+ (print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o.
+ * print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output
+ unless GENERATOR_FILE.
+
+2002-09-12 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (USER_LABEL_PREFIX): Define here...
+ * config/i386/darwin.h: ... instead of here.
+
+ * target.h (struct gcc_target): New field
+ terminate_dw2_eh_frame_info.
+ * target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
+ (TARGET_INITIALIZER): Add it.
+ * dwarf2out.c (output_call_frame_info): Use target hook.
+ * dwarf2asm.c (dw2_asm_output_delta): Use macro
+ ASM_OUTPUT_DWARF_DELTA if defined.
+ * doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document.
+ (ASM_OUTPUT_DWARF_DELTA): Ditto.
+ (ASM_OUTPUT_DWARF_OFFSET): Ditto.
+ (ASM_OUTPUT_DWARF_PCREL): Ditto.
+ * config.gcc (i[34567]86-*-darwin*): Define extra_parts.
+ (powerpc-*-darwin*): Ditto.
+ * crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits
+ to work correctly for Darwin.
+ * config/darwin.h (OBJECT_FORMAT_MACHO): Define.
+ (STARTFILE_SPEC): Add crtbegin.o.
+ (ENDFILE_SPEC): Define.
+ (EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment.
+ (ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases.
+ (ASM_OUTPUT_DWARF_DELTA): Define.
+ (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
+ * config/darwin.c (darwin_asm_output_dwarf_delta): New function.
+
+2002-09-13 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if"
+ nesting. Correct test for non-PowerPC64 ELF ABI_AIX.
+ * config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX.
+
+2002-09-12 Zack Weinberg <zack@codesourcery.com>
+
+ * toplev.c: Move default definition of USER_LABEL_PREFIX...
+ * defaults.h: ... here.
+
+2002-09-12 Richard Henderson <rth@redhat.com>
+
+ * vax.c: Include tree.h earlier.
+
+2002-09-12 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.c (machopic_finish): Remove #if 0 chunks.
+ (machopic_operand_p): Ditto.
+
+2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arm/arm.c (arm_compute_initial_elimination_offset):
+ Fix a comment typo.
+
+2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * toplev.c (do_abort): Fix a comment typo.
+
+2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cselib.c: Fix comment formatting.
+ * gengtype.c: Likewise.
+
+2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (udivmodqi4): Do not use an expander.
+ (udivmodhi4): Likewise.
+
+2002-09-12 Graham Stott <graham.stott@btinternet.com>
+ Roger Sayle <roger@eyesopen.com>
+
+ * i386.c (any_fp_register_operand, fp_register_operand,
+ register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand):
+ New predicate functions.
+ * i386-protos.h: Add their prototypes.
+ * i386.h: Add them to PREDICATE_CODES.
+ * i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1,
+ "*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2,
+ "*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1,
+ "*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1,
+ "*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2,
+ "*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1,
+ "*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2,
+ "*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1,
+ "*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1,
+ "*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2,
+ "*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2):
+ Use these new predicates to simplify and correct the use of
+ FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P.
+
+2002-09-12 Jason Merrill <jason@redhat.com>
+
+ * diagnostic.c (output_add_identifier): New fn.
+ * diagnostic.h: Declare it.
+
+ * calls.c (store_one_arg): Use size_in_bytes to determine the
+ amount of space to push.
+
+2002-09-12 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo.
+
+2002-09-12 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes.
+ * config/s390/s390.c (s390_match_ccmode_set): Support new CC modes.
+ (s390_select_ccmode): Likewise.
+ (s390_branch_condition_mask): Likewise.
+ (optimization_options): Do not set flag_branch_on_count.
+ (s390_split_branches): Handle doloop branches.
+ (s390_chunkify_pool): Likewise.
+ * config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns.
+ ("doloop_end"): New expander.
+ ("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long",
+ associated splitters): New.
+
+2002-09-11 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * genattrtab.c (simplify_cond): Remove unused variable(s).
+ * global.c (record_conflicts): Likewise.
+ * jump.c (rebuild_jump_labels): Likewise.
+ * loop.c (scan_loop, check_final_value): Likewise.
+ * ra-colorize.c (colorize_one_web, assign_colors): Likewise.
+ * reload1.c (eliminate_regs_in_insn, do_input_reload): Likewise.
+ * rtlanal.c (reg_set_p): Likewise.
+ * stmt.c (expand_asm_operands, expand_decl): Likewise.
+ * genautomata.c (empty_reserv): Remove.
+ * loop.c (max_luid): Likewise.
+ * sched-rgn.c (bitlst_table_size): Likewise.
+
+2002-09-11 Nathan Sidwell <nathan@codesourcery.com>
+
+ Reimplement gcov format.
+ * gcov-io.h: Replace.
+ * gcov.c: Reimplement.
+ * gcov-iov.c: New file.
+ * gcov-dump.c: New file.
+ * libgcc2.c (L_bb): Replace with ...
+ (L_gcov): ... this.
+ (struct bb_function_info, struct bb): Remove.
+ (inhibit_libc): Never inhibit.
+ (gcov_list, gcov_crc): New static variables.
+ (gcov_version_mismatch): New static function.
+ (__bb_exit_func): Renamed to ...
+ (__gcov_exit): ... here. Made static. Reimplement.
+ (__gcov_init_func): Rename to ...
+ (__gcov_init): ... here. Check version, update crc.
+ (__bb_fork_func): Rename to ...
+ (__gcov_flush): ... here.
+ * libgcc2.h (struct bb, __bb_exit_func, __bb_init_func,
+ __bb_fork_func, gcov_type, __bb_find_arc_counters): Remove.
+ * calls.c (expand_call): Call __gcov_flush.
+ * profile.c (bb_file, last_bb_file_name): Remove.
+ (bbg_file_name): New global variable.
+ (output_gcov_string): Remove.
+ (get_exec_counts): Reimplement.
+ (branch_prob): Reimplement gcov file writing.
+ (init_branch_prob): Create bbg_file_name, don't create
+ bb_file_name.
+ (end_branch_prob): Adjust. Don't remove counter file when
+ instrumenting ourselves.
+ (create_profiler): Adjust.
+ * doc/gcov.texi (Gcov Data Files): Remove detailed specification,
+ point to gcov-io.h.
+ * Makefile.in (LANGUAGES): Add gcov-dump.
+ (coverageexts): Remove .bb.
+ (STAGESTUFF): Add gcov-dump.
+ (LIB2FUNCS_ST): Replace _bb with _gcov.
+ (profile.o): Depend on gcov-iov.h.
+ (final.o): Don't depend on profile.h, gcov.h.
+ (gcov.o): Depend on gcov-iov.h.
+ (gcov-iov.o): New target.
+ (gcov-iov): New target.
+ (gcov-iov.h): New target.
+ (gcov-dump.o): New target.
+ (GCOV_DUMP_OBJS): New variable.
+ (gcov-dump): New target.
+ (distclean): Remove coverageexts.
+ (stage1): Remove coverageexts.
+
+2002-09-11 Hartmut Penner <hpenner@de.ibm.com>
+
+ * fold-const.c (make_range): Only narrow to signed range if
+ the signed range is smaller than the unsigned range.
+
+2002-09-12 Alan Modra <amodra@bigpond.net.au>
+
+ * emit-rtl.c (set_mem_size): New function.
+ * expr.h (set_mem_size): Declare.
+ * config/rs6000/rs6000.c (expand_block_move_mem): Exterminate.
+ (expand_block_move): Instead, use adjust_address and
+ replace_equiv_address to generate proper aliasing info.
+ Move common code out of conditionals. Localize vars.
+
+2002-09-11 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * optabs.c (expand_binop): Minor cleanup.
+ (expand_twoval_binop): Convert CONST_INTs like in expand_binop.
+
+2002-09-11 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * print-tree.c (print_node): Print the restrict qualifier.
+
+2002-09-11 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/install.texi: Fix typos.
+
+2002-09-11 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in: Remove all references to s-under and underscore.c.
+ * collect2.c, tlink.c: Change all uses of prepends_underscore
+ to look directly at USER_LABEL_PREFIX.
+
+2002-09-11 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append
+ alignment to csect.
+ (rs6000_xcoff_unique_section): Only set section name for public
+ data.
+ (rs6000_xcoff_section_type_flags): Store log2 alignment in flags.
+ * config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove
+ duplicate definition.
+
+2002-09-10 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (extzv): Check predicates before emitting extzv_32.
+ (insv): Likewise.
+
+2002-09-10 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (MOVE_MAX): Define to correct value.
+ (MAX_MOVE_MAX): Define.
+ (MOVE_BY_PIECES_P): Define.
+ (CLEAR_BY_PIECES_P): Define.
+
+2002-09-10 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md (movstrhi): Use right operands for conversion.
+
+2002-09-10 Richard Earnshaw <rearnsha@arm.com>
+
+ PR c/7873
+ * arm.md (insv): Use reg_or_int_operand for operand[3].
+
+2002-09-10 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (rs6000_assemble_visibility): Protect declaration
+ inside macro. Correct function definition typo.
+ (rs6000_xcoff_section_type_flags): New function.
+ (TARGET_SECTION_TYPE_FLAGS): Remove definition.
+ (rs6000_elf_section_type_flags): Call default_section_type_flags_1
+ with appropriate PIC test.
+ (rs6000_xcoff_select_section): Use decl_readonly_section_1 to
+ determine readonly.
+ (rs6000_binds_local_p): Combine PIC flags.
+ * sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define.
+ * xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define.
+
+2002-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * h8300.md: Fix signed/unsigned warnings.
+ * mcore.md: Likewise.
+ * mn10300.c (mask_ok_for_mem_btst): Likewise.
+
+2002-09-09 Per Bothner <per@bothner.com>
+
+ * print-tree.c (print_node): In a STRING_CST, escape non-ascii
+ characters, and only print TREE_STRING_LENGTH chars.
+
+2002-09-09 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
+ (ASM_FILE_END) New.
+ * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false.
+ * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New.
+ * config/ia64/ia64.c (ia64_asm_output_external): Create list
+ of external functions if TARGET_HPUX_LD is true.
+ (ia64_hpux_add_extern_decl): New, routine to put names on
+ list of external functions.
+ (ia64_hpux_asm_file_end): Put out declarations for external
+ functions if and only if they are used.
+
+2002-09-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage
+ on TARGET_64BIT before pic register restore.
+
+2002-09-09 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description.
+ (TARGET_HAVE_TLS): New description.
+
+2002-09-09 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/extend.texi (Statement Exprs): Fix broken link.
+
+2002-09-09 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
+ right conversion of operands[1].
+
+2002-09-09 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
+ commutative. Use "nonimmediate_operand" instead of "register_operand"
+ as predicate for operand 0. Move to after the "*tmXX_mem" insns.
+
+ ("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark
+ as commutative.
+
+ ("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not
+ mark as commutative. Use "nonimmediate_operand" instead of
+ "register_operand" as predicate for operand 1.
+
+ ("movstrictsi"): Fix typo in insn name.
+
+2002-09-09 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (index_register_operand): New.
+ * i386.h (predicate_codes): Add new predicate.
+ * i386.md (lea_general_*): Use index_register_operand
+ (ashift to lea splitter): Do not produce invalid leas
+ (ashift to mov+ashift split): New.
+
+2002-09-09 Nick Clifton <nickc@redhat.com>
+
+ * config/fr30/fr30.c (output.h): Move after inclusion of tree.h.
+ Fix folding marks.
+
+2002-09-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
+ J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits.
+
+2002-09-09 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool.
+ (function_ok_for_sibcall): Use binds_local_p. Respect longcall
+ attributes.
+
+2002-09-08 Nathan Sidwell <nathan@codesourcery.com>
+
+ * basic_block.h (gcov_type): Explain why it is signed.
+ * final.c: Don't include profile.h.
+ (struct function_list, functions_head, functions_tail,
+ end_final): Moved to profile.c
+ (final): Move arc chaining code to profile.c.
+ * function.c (prepare_function_start): Remove duplicate line.
+ * output.h (end_final): Remove prototype.
+ * predict.c (estimate_loops_at_level): Use gcov_type.
+ * profile.c (struct function_list, functions_head,
+ functions_tail): Moved from final.c
+ (need_func_profiler): Remove.
+ (instrument_edges): Don't set need_func_profiler.
+ (get_exec_counts): Avoid signed/unsigned warning.
+ (compute_checksum): Use crc32.
+ (branch_prob): Adjust. Chain onto functions_head.
+ (init_branch_prob): Absorb init_edge_profiler.
+ (init_edge_profiler): Remove.
+ (create_profiler): Moved and renamed from final.c:end_final.
+ Emit data and constructor.
+ (output_func_start_profiler): Remove.
+ * profile.h (struct profile_info): checksum is unsigned.
+ * rtl.h (output_func_start_profiler): Remove prototype.
+ (create_profiler): Declare.
+ * toplev.c (compile_file): Call create_profiler, if instrumenting
+ arcs. Don't call end_final.
+
+2002-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE.
+
+2002-09-08 Richard Henderson <rth@redhat.com>
+
+ * dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli.
+ (DW_OP_GNU_push_tls_address): New.
+ (DW_OP_lo_user): Fix.
+ * dwarf2out.c (INTERNAL_DW_OP_tls_addr): New.
+ (dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes.
+ (size_of_loc_descr): Likewise.
+ (output_loc_operands): Handle INTERNAL_DW_OP_tls_addr.
+ (add_AT_location_description): Take a dw_loc_descr_ref not an rtx.
+ (loc_descriptor_from_tree): Handle TLS variables.
+ (rtl_for_decl_location): Do avoid_constant_pool_reference here ...
+ (add_location_or_const_value_attribute): ... not here. Defer
+ to loc_descriptor_from_tree for TLS variables.
+
+ * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New.
+ * config/i386/i386.c (i386_output_dwarf_dtprel): New.
+ * config/i386/i386-protos.h: Update.
+
+2002-09-08 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/6405
+ * unroll.c (loop_iterations): last_loop_insn should be the previous
+ non-note instruction before loop->end.
+ * loop.c (strength_reduce): The conditional jump is the last
+ non-note instruction before loop->end (as above).
+
+2002-09-08 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (try_combine): Handle the case that undobuf.other_insn
+ has been turned into a return or unconditional jump, by inserting
+ a BARRIER if necessary.
+ (simplify_set): Test if a condition code setter has a constant
+ comparison at compile time, if so convert this insn to a no-op move
+ and update/simplify the condition code user (undobuf.other_insn).
+
+2002-09-08 Krister Walfridsson <cato@df.lth.se>
+
+ * config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine.
+ (CLEAR_INSN_CACHE): Define.
+
+2002-09-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * basic-block.h: Fix comment formatting.
+ * c-common.c: Likewise.
+ * c-common.h: Likewise.
+ * c-lex.c: Likewise.
+ * c-pretty-print.c: Likewise.
+ * cfglayout.c: Likewise.
+ * cfgloop.c: Likewise.
+ * defaults.h: Likewise.
+ * et-forest.c: Likewise.
+ * explow.c: Likewise.
+ * function.h: Likewise.
+ * gcov.c: Likewise.
+ * genattrtab.c: Likewise.
+ * gengtype.c: Likewise.
+ * ifcvt.c: Likewise.
+ * libgcc2.c: Likewise.
+ * loop.c: Likewise.
+ * profile.c: Likewise.
+ * ra-build.c: Likewise.
+ * real.c: Likewise.
+ * rtl.h: Likewise.
+ * tracer.c: Likewise.
+ * tree-inline.c: Likewise.
+ * varasm.c: Likewise.
+
+2002-09-08 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref
+ handling.
+
+ * loop.c (loop_givs_reduce): Emit addition after.
+
+2002-09-08 Alan Modra <amodra@bigpond.net.au>
+
+ * varasm.c (default_assemble_visibility): Rename from
+ assemble_visibility.
+ * output.h: Here too.
+ * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here.
+ * config/rs6000/rs6000.c (rs6000_assemble_visibility): And here.
+
+2002-09-08 Alan Modra <amodra@bigpond.net.au>
+
+ * reload.c (find_reloads <p constraint>): Pass operand_mode to
+ find_reloads_address.
+
+2002-09-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (udivmodqi4): Enable on H8/300.
+ (anonymous pattern): Likewise.
+
+2002-09-07 Igor Shevlyakov <igor@microunity.com>
+
+ * machmode.def: Add modes for half-float vectors.
+
+2002-09-07 Scott Snyder <snyder@fnal.gov>
+
+ PR target/7374
+ * config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'.
+
+2002-09-07 Roger Sayle <roger@eyesopen.com>
+
+ * basic-block.h (struct loop): Remove unused cont_dominator field.
+
+2002-09-07 Igor Shevlyakov <igor@microunity.com>
+
+ * varasm.c (decode_rtx_const): Don't check undefined field for
+ CONST_VECTOR.
+
+2002-09-07 Glen Nakamura <glen@imodulo.com>
+
+ PR opt/7814
+ * sched-deps.c (sched_analyze_insn): Make sure to add insn
+ to reg_last->sets after flushing the dependency lists to guarantee
+ that subsequent clobbers will be dependent on it.
+
+2002-09-07 Igor Shevlyakov <igor@microunity.com>
+
+ * combine.c (simplify_shift_const): Calculate rotate count
+ correctly for vector operands.
+
+2002-09-07 Ansgar Esztermann <ansgar@thphy.uni-duesseldorf.de>
+
+ * c-typeck.c (c_tree_expr_nonnegative_p): New function.
+ (build_binary_op): Call c_tree_expr_nonnegative_p rather than
+ tree_expr_nonnegative_p.
+ (build_conditional_expr): Likewise.
+ * c-tree.h (c_tree_expr_nonnegative_p): Declare.
+
+2002-09-07 Richard Henderson <rth@redhat.com>
+
+ * builtins.def (inf, inff, infl): Mark const.
+ (huge_val, huge_valf, huge_vall): Likewise.
+ (BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove.
+
+ * real.c (ereal_inf): Clear E before use.
+
+2002-09-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (udivmodqi4): Split the pattern into
+ an expander and an anonymous pattern. Zero out the upper half
+ of the dividend in the expander.
+ (udivmodqi4): Likewise.
+
+2002-09-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c: Fix formatting.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+
+2002-09-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness
+ information.
+
+2002-09-07 Graham Stott <graham.stott@btinternet.com>
+
+ * rtlanal.c (dead_or_set_regno_p): Fix typo.
+
+2002-09-07 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
+
+ * doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe.
+ * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
+ (TARGET_ASM_OUT): Add the above here.
+ * target.h (struct gcc_target): Add "visibility" field.
+ * varasm.c (maybe_assemble_visibility): Call targetm visibility func.
+ * config/rs6000/rs6000.c (rs6000_assemble_visibility): New function.
+ (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
+ (rs6000_legitimize_reload_address, first_reg_to_save): Formatting.
+
+2002-09-06 Ziemowit Laski <zlaski@apple.com>
+
+ * c-lang.c (objc_is_id): New stub.
+ * c-tree.h (objc_is_id): New forward declaration.
+ * c-typeck.c (build_c_cast): Do not strip protocol
+ qualifiers from 'id' type.
+ * objc/objc-act.c (objc_comptypes): Correct handling
+ of protocol qualifiers.
+ (objc_is_id): New.
+
+Fri Sep 6 13:10:08 2002 Jeffrey A Law (law@redhat.com)
+
+ * pentium.md (pentium-firstvboth): Fix typo.
+
+2002-09-06 Dhananjay Deshpande <dhananjayd@kpit.com>
+
+ * h8300.c (enum shift_alg): Move to earlier in h8300.c.
+ (enum shift_type, enum h8_cpu): Likewise.
+ (INL, ROT, LOP, SPC macros): Likewise.
+ (shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise. Lose
+ const designator.
+ (h8300_init_once): Update shift_alg_{qi,hi,si} to use more
+ space efficient algorithms when optimize for codesize.
+
+Fri Sep 6 16:35:32 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ Fix PR/1727 and long-standing failing testcase
+ objc/formal-protocol-6.m.
+ * objc-act.c (build_protocol_expr): If compiling for the GNU
+ runtime, create a list of Protocol statically allocated instances
+ if it doesn't exist, then add the Protocol object to this same
+ list.
+ (get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used
+ instead of TREE_CHAIN.
+
+Fri Sep 6 16:17:33 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * objc/objc-act.c (dump_interface): Enlarged the char * buffer to
+ 10k. Fixed category dumping - print out category names with the
+ proper syntax. Print '@end\n' and not '\n@end' at the end of the
+ interface.
+ (finish_objc): Fixed the -gen-decls option. It was printing out
+ only the last class. Dump an interface declaration of all classes
+ being compiled instead.
+
+2002-09-06 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/arm/arm-protos.h (arm_gen_return_addr_mask): New
+ prototype.
+ * config/arm/arm.c (arm_gen_return_addr_mask): New function.
+ * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
+ if not APCS26 and not Thumb or ARMv4-or-higher. Use gen_int_mode
+ rather than GEN_INT.
+ * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
+ (return_addr_mask, *check_arch2): New.
+
+2002-09-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly",
+ "*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3",
+ "*addsi3_carry1_cc", "*addsi3_carry1_cconly",
+ "*addsi3_carry2_cc", "*addsi3_carry2_cconly",
+ "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3",
+ "adddf3", "*adddf3", "*adddf3_ibm",
+ "addsf3", "*addsf3", "*addsf3_ibm",
+ "muldi3", "mulsi3", "mulsidi3",
+ "muldf3", "*muldf3", "*muldf3_ibm",
+ "mulsf3", "*mulsf3", "*mulsf3_ibm",
+ "*anddi3_cc", "*anddi3_cconly", "anddi3",
+ "*andsi3_cc", "*andsi3_cconly", "andsi3",
+ "*iordi3_cc", "*iordi3_cconly", "iordi3",
+ "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
+ "*xordi3_cc", "*xordi3_cconly", "xordi3",
+ "*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand"
+ instead of "register_operand" as predicate for "%0" operand.
+
+2002-09-06 Jakub Jelinek <jakub@redhat.com>
+
+ * configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9
+ unconditionally when gcc_cv_as_flags64 checks are gone.
+ * configure: Rebuilt.
+
+2002-09-06 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
+ 2002-07-26 change. Comment.
+
+2002-09-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * frv.c (frv_unique_section, frv_select_section,
+ frv_select_rtx_section): Delete.
+ (frv_in_small_data_p): New.
+ (TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION,
+ TARGET_ASM_SELECT_RTX_SECTION): Delete.
+ (TARGET_IN_SMALL_DATA_P): Define.
+
+2002-09-05 Dale Johannesen <dalej@apple.com>
+
+ * reload1.c (reload): Retain only those memory clobbers
+ added for variable-array handling.
+
+2002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/arm/arm.c (arm_return_in_memory): Implement ATPCS
+ return-in-memory rules.
+ * config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define.
+
+2002-09-05 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete.
+ (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete.
+
+2002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
+ not a compile-time constant for the non-IBM case.
+ * config/arm/arm-protos.h (arm_float_words_big_endian): New
+ prototype.
+ * config/arm/arm.c (arm_float_words_big_endian): New function.
+ * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
+ if TARGET_VFP and not TARGET_HARD_FLOAT.
+ (ARM_FLAG_VFP, TARGET_VFP): Define.
+ (FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
+
+2002-09-05 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux*
+ URLs. Fix AIX wording.
+
+2002-09-05 Stan Shebs <shebs@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and
+ -fPIC equivalent on Darwin.
+
+Thu Sep 5 16:27:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (sh_expand_builtin): Return early if encountering an
+ error_mark for a type.
+
+2002-09-05 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_expand_plus_operand): Do not require
+ double-word scratch register.
+ config/s390/s390.md ("reload_indi", "reload_insi"): Adapt.
+
+ ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem",
+ "*cli"): Replace s_operand by memory_operand.
+ ("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand.
+
+2002-09-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (asm_file_start): Add a missing
+ semicolon.
+
+2002-09-04 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * c-typeck.c (build_function_call): Remove unused variable(s).
+ (build_c_cast): Likewise.
+ * calls.c (rtx_for_function_call): Likewise.
+ * cfglayout.c (duplicate_insn_chain): Likewise.
+ * cfgloop.c (flow_loop_nodes_find): Likewise.
+ * cfgrtl.c (split_edge): Likewise.
+ * df.c (df_ref_create): Likewise.
+ * except.c (expand_end_catch): Likewise.
+ * expr.c (emit_push_insn, store_constructor, expand_expr): Likewise.
+ * function.c (emit_return_into_block): Likewise.
+ (reposition_prologue_and_epilogue_notes): Likewise.
+ * gengtype.c (get_file_basename, write_gc_structure_fields): Likewise.
+ * combine.c (subst_prev_insn, need_refresh): Remove.
+ * dwarf2out.c (primary_filename): Remove.
+ * final.c (new_block): Remove.
+ * gcse.c (orig_bb_count): Remove.
+
+2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dsp16xx-protos.h (dsp16xx_compare_gen): Change to bool.
+ * dsp16xx.c (dsp16xx_compare_gen): Likewise.
+ * dsp16xx.md: Treat dsp16xx_compare_gen as a bool. Call functions
+ directly instead of using a function pointer.
+
+2002-09-04 Krister Walfridsson <cato@df.lth.se>
+
+ * config/i386/i386.h (GOT_SYMBOL_NAME): Define.
+ * config/i386/i386.c (output_set_got): Use GOT_SYMBOL_NAME.
+ (ix86_output_addr_diff_elt) Likewise.
+ (x86_output_mi_thunk) Likewise.
+ * config/i386/netbsd.h (GOT_SYMBOL_NAME): Redefine.
+
+2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * frv.c (frv_encode_section_info): Fix error in last change.
+
+2002-09-04 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_flag_pic): New variable.
+ (rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED.
+ (TARGET_BINDS_LOCAL_P): Define.
+ (rs6000_override_options): Save original flag_pic value.
+ (rs6000_elf_select_section): Call default_elf_select_section_1.
+ (rs6000_elf_unique_section): Call default_unique_section_1.
+ (rs6000_elf_in_small_data_p): New function.
+ (rs6000_xcoff_asm_named_section): Determine storage mapping class.
+ (rs6000_xcoff_select_section): Update based on defaults.
+ (rs6000_xcoff_unique_section): Set to basic name if not common.
+ (rs6000_binds_local_p): New function.
+ * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
+ targetm.have_srodata_section if SDATA_EABI.
+ (TARGET_IN_SMALL_DATA_P): Define.
+
+2002-09-04 Dale Johannesen <dalej@apple.com>
+
+ * varasm.c (struct rtx_const, decode_rtx_const):
+ Make veclo and vechi fields not share storage.
+
+Thu Sep 5 00:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * loop.c (scan_loop): Don't mark separate insns out of a libcall
+ for moving.
+ (move_movables): Abort if we see the first insn of a libcall.
+
+2002-09-04 Richard Henderson <rth@redhat.com>
+
+ * builtin-types.def (BT_FN_FLOAT): New.
+ (BT_FN_DOUBLE, BT_FN_LONG_DOUBLE): New.
+ * builtins.def (BUILT_IN_INF, BUILT_IN_INFF, BUILT_IN_INFL,
+ BUILT_IN_HUGE_VAL, BUILT_IN_HUGE_VALF, BUILT_IN_HUGE_VALL): New.
+ * builtins.c (fold_builtin_inf): New.
+ (fold_builtin): Call it.
+ * real.c (ereal_inf): New.
+ * real.h: Declare it.
+ * doc/extend.texi: Document new builtins.
+
+2002-09-04 Richard Henderson <rth@redhat.com>
+
+ * cse.c (cse_insn): Avoid subreg games if the equivalence
+ is already in the proper mode.
+
+2002-09-04 Eric Botcazou <ebotcazou@multimania.com>
+
+ PR c/7102
+ * optabs.c (expand_binop): Convert CONST_INTs in all cases.
+
+2002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (setccfp0, setccfp1): New patterns.
+
+2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * frv-protos.h (frv_init_builtins, frv_expand_builtin,
+ frv_select_section, frv_select_rtx_section,
+ frv_encode_section_info, frv_unique_section): Delete.
+ * frv.c: Update for target hooks.
+ * frv.h (STRIP_NAME_ENCODING, SLOW_ZERO_EXTEND, SELECT_SECTION,
+ SELECT_RTX_SECTION, ENCODE_SECTION_INFO, UNIQUE_SECTION,
+ EASY_DIV_EXPR, MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Delete.
+
+2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ip2k-protos.h (function_prologue, function_epilogue,
+ encode_section_info): Update to match target hook specification.
+ * ip2k.c: Wrap `MDR' code in IP2K_MD_REORG_PASS.
+ (function_prologue, function_epilogue, encode_section_info):
+ Update to match target hook specification.
+ * ip2k.h (SELECT_SECTION, SELECT_RTX_SECTION, ASM_OPEN_PAREN,
+ ASM_CLOSE_PAREN, EASY_DIV_EXPR): Delete.
+ (NOTICE_UPDATE_CC): Cast to void.
+ * ip2k.md: Add defaults in switch statements.
+
+2002-09-04 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/trouble.texi (Interoperation): Update information about C++ ABI
+ issues.
+
+2002-09-04 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/sparc/t-netbsd64: Disable multilib for now.
+
+2002-09-04 David Edelsohn <edelsohn@gnu.org>
+
+ * target-def.h (TARGET_HAVE_SRODATA_SECTION): New macro.
+ * target.h (gcc_target): Add have_srodata_section member.
+ * varasm.c (section_category): Add SECCAT_SRODATA.
+ (categorize_decl_for_section): Return SECCAT_SRODATA for sdata if
+ READONLY_SDATA_SECTION defined.
+ (decl_readonly_section_1): True for SECCAT_SRODATA also.
+ (default_elf_select_section_1): Map SECCAT_SRODATA to .sdata2.
+ (default_unique_section_1): Likewise.
+
+2002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * expr.c (emit_group_load): Revise to allow splitting TCmode source
+ into DImode pieces.
+
+ * pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128.
+ * pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode
+ for floating-point register class.
+ * pa.c (function_arg): Fix handling of modes wider than one word for
+ TARGET_64BIT.
+
+Wed Sep 4 18:48:10 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * combine.c (make_compound_operation): Don't generate zero / sign
+ extensions in floating point modes.
+
+2002-09-04 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/c-tree.texi: Fix overfull hboxes.
+ * doc/cppopts.texi: Ditto.
+ * doc/extend.texi: Ditto.
+ * doc/gty.texi: Ditto.
+ * doc/invoke.texi: Ditto.
+ * doc/makefile.texi: Ditto.
+ * doc/rtl.texi: Ditto.
+ * doc/standards.texi: Ditto.
+ * doc/tm.texi: Ditto.
+
+2002-09-04 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (builtin_define_with_hex_fp_value): New.
+ (builtin_define_float_constants): Use it. Fix H_FLOAT mant_dig.
+
+2002-09-04 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/invoke.texi (-fshort-wchar): Move to Code Generation Options.
+ (-fpcc-struct-return, -freg-struct-return, -fshort-enums,
+ -fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore):
+ Warn that these options can break ABI compatibility.
+
+2002-09-04 Richard Henderson <rth@redhat.com>
+
+ * real.c (ereal_to_decimal): Add digits parameter.
+ * real.h (REAL_VALUE_TO_DECIMAL): Remove format; add digits parameter.
+ * c-pretty-print.c (pp_c_real_literal): Update call.
+ * print-rtl.c (print_rtx): Likewise.
+ * print-tree.c (print_node_brief, print_node): Likewise.
+ * sched-vis.c (print_value): Likewise.
+ * config/arc/arc.c (arc_print_operand): Likewise.
+ * config/c4x/c4x.c (c4x_print_operand): Likewise.
+ * config/i370/i370.h (PRINT_OPERAND): Likewise.
+ * config/i386/i386.c (print_operand): Likewise.
+ * config/i960/i960.c (i960_print_operand): Likewise.
+ * config/ip2k/ip2k.c (asm_output_float): Likewise.
+ * config/m32r/m32r.c (m32r_print_operand): Likewise.
+ * config/m68hc11/m68hc11.c (print_operand): Likewise.
+ * config/m68k/hp320.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT_OPERAND,
+ ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
+ * config/m68k/m68k.h (ASM_OUTPUT_FLOAT_OPERAND,
+ ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
+ * config/m68k/sun2o4.h (ASM_OUTPUT_FLOAT_OPERAND,
+ ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
+ * config/m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND,
+ ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
+ * config/mips/mips.c (print_operand): Likewise.
+ * config/ns32k/ns32k.c (print_operand): Likewise.
+ * config/pdp11/pdp11.h (PRINT_OPERAND): Likewise.
+ * config/vax/vax.h (PRINT_OPERAND): Likewise.
+ * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Update docs.
+
+2002-09-04 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/elf.h (TARGET_SECTION_TYPE_FLAGS): Define to
+ xtensa_multibss_section_type_flags.
+ * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Define.
+
+2002-09-04 Richard Henderson <rth@redhat.com>
+
+ * doc/install-old.texi: Don't mention enquire.
+ * doc/sourcebuild.texi: Update float.h description.
+
+Wed Sep 4 11:22:14 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract.
+
+2002-09-03 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (build_function_call_expr): Remove prototype, export
+ as non-static and add a comment above function definition.
+ (builtin_mathfn_code): New function to check for math builtins.
+ (fold_builtin): Optimize sqrt(0.0) as 0.0, sqrt(1.0) as 1.0,
+ exp(0.0) as 1.0, and log(1.0) as 0.0. Optimize exp(log(x)) and
+ log(exp(x)) as x. Optimize sqrt(exp(x)) as exp(x/2.0) and
+ log(sqrt(x)) as log(x)/2.0.
+
+ * tree.h: Prototype build_function_call_expr and builtin_mathfn_code
+ in new "builtins.c" section. Place the build_range_type prototype
+ with the other prototypes from "tree.c".
+
+ * fold-const.c (fold) [ABS_EXPR]: Fold fabs(sqrt(x)) as sqrt(x)
+ and fabs(exp(x)) as exp(x). [MULT_EXPR]: Fold sqrt(x)*sqrt(y)
+ as sqrt(x*y) and exp(x)*exp(y) as exp(x+y). [RDIV_EXPR]: Fold
+ x/exp(y) as x*exp(-y).
+
+2002-09-03 David Edelsohn <edelsohn@gnu.org>
+
+ * varasm.c (default_section_type_flags): Append _1 to name with
+ shlib parameter. Use original name to call new function with
+ implicit flag_pic.
+ (decl_readonly_section): Likewise.
+ (default_elf_select_section): Likewise.
+ (default_unique_section): Likewise.
+ (default_bind_local_p): Likewise.
+ (categorize_decl_for_section): Add shlib parameter to use in place
+ of implicit flag_pic.
+ * output.h: Declare new functions with _1 and shlib argument.
+
+2002-09-03 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/install.texi: Fix typos, formatting problems, and obvious
+ overfull/underfull boxes.
+
+ * Makefile.in (TEXI_GCC_FILES): Add compat.texi.
+ * doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and
+ include its file, compat.texi.
+ * doc/compat.texi: New file with new chapter, Binary Compatibility.
+
+2002-09-03 Neil Booth <neil@daikokuya.co.uk>
+
+ Debian BTS Bug #157416
+ * cpphash.h (FIRST, LAST, CUR, RLIMIT): Fix definitions.
+ * cpplib.c (destringize_and_run): Kludge around getting
+ tokens from in-progress macros.
+ (_cpp_do__Pragma): Simplify.
+
+2002-09-03 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.h (EXTRA_SPECS): Remove cpp_cpu.
+ (CPP_CPU_SPEC): Remove.
+ (TARGET_CPU_CPP_BUILTINS): New.
+ * config/ia64/hpux.h (CPP_PREDEFINES): Remove.
+ (CPP_SPEC): Remove.
+ (TARGET_OS_CPP_BUILTINS): New.
+ * config/ia64/linux.h (CPP_PREDEFINES): Remove.
+ (TARGET_OS_CPP_BUILTINS): New.
+ * config/ia64/aix.h (CPP_SPEC): Move some stuff to
+ TARGET_OS_CPP_BUILTINS.
+ (CPP_PREDEFINES): Remove.
+ (CPLUSPLUS_CPP_SPEC): Remove.
+ (TARGET_OS_CPP_BUILTINS): New.
+
+2002-09-03 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (USER_H): Add ginclude/float.h.
+ (FLOAT_H): Remove.
+ (stmp-int-hdrs, install-mkheaders): Don't handle FLOAT_H.
+ (mostlyclean): Don't remove float.h intermediate files.
+ (distclean): Don't remove float.h.
+ * config.gcc: Remove all float_format references.
+ * configure.in (float_format, float_h_file): Remove.
+
+ * c-common.c: Include tree-inline.h.
+ (builtin_define_with_int_value): New.
+ (builtin_define_type_precision): Use it.
+ (builtin_define_float_constants): New.
+ (cb_register_builtins): Use it. Define __FLT_RADIX__ and
+ __FLT_EVAL_METHOD__.
+ * defaults.h (TARGET_FLT_EVAL_METHOD): New.
+ * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): New.
+ * config/m68k/m68k.h (TARGET_FLT_EVAL_METHOD): New.
+ * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Mention moto 96-bit format.
+ (TARGET_FLT_EVAL_METHOD): New.
+
+ * config/float-c4x.h, config/float-i128.h, config/float-i32.h,
+ config/float-i386.h, config/float-i64.h, config/float-m68k.h,
+ config/float-sh.h, config/float-sparc.h, config/float-vax.h: Remove.
+ * ginclude/float.h: New.
+
+2002-09-03 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (WARN_FOUR_CHAR_CONSTANTS): Remove, never used.
+ (DWARF2_DEBUGGING_INFO): Remove until assembler accepts Dwarf-2.
+ (PREFERRED_DEBUGGING_TYPE): Ditto.
+ (ASM_OUTPUT_IDENT): Remove empty definition.
+
+2002-09-03 Steve Ellcey <sje@cup.hp.com>
+
+ * config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and
+ cxx_target.
+ * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma
+ handling routine for builtin pragma.
+ * config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma):
+ Registered pragma handling routine.
+ * ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto.
+ (ia64_hpux_add_pragma_builtin) New subroutine used by above.
+ If builtin pragma seen for math routine and C89 conformance is
+ requested use different math function in order to set errno.
+ * t-ia64 (ia64-c.o): Add new rule for new file.
+
+2002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("movti"): Add Q->Q alternative.
+ ("*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
+ "movqi", "*movdf_64", "*movdf_31", "*movsf"): Likewise.
+
+ ("*movti_ss", "*movdi_ss", "*movsi_ss", "*movdf_ss",
+ "*movsf_ss"): Remove.
+
+2002-09-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa32-regs.h (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P):
+ Delete macros.
+
+2002-09-03 Arati Dikey <aratid@kpit.com>
+
+ * h8300.c (asm_file_start): Corrected optimization comment.
+
+2002-09-03 Stan Shebs <shebs@apple.com>
+
+ * c-lang.c (recognize_objc_keyword): Remove, no longer used.
+ * c-tree.h (recognize_objc_keyword): Remove decl.
+ * c-typeck.c (comp_target_types): Update a comment.
+
+2002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_decompose_address): Remove STRICT parameter
+ and register validity checks.
+ (general_s_operand): Adapt to s390_decompose_address interface change.
+ (q_constraint): Likewise.
+ (s390_expand_plus_operand): Likewise.
+ (legitimiate_address_p): Likewise.
+ (legitimate_la_operand_p): Likewise.
+ (legitimize_la_operand): Likewise.
+ (print_operand_address): Likewise.
+ (print_operand): Likewise.
+
+Tue Sep 3 11:32:14 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ PR objc/5956:
+ * objc/objc-act.c (build_typed_selector_reference): Fix typo which
+ was causing the new selector never to match the existing ones
+ (Patch by Alexander Malmberg <alexander@malmberg.org>).
+
+2002-09-03 Graham Stott <graham.stott@btinternet.com>
+
+ * config/i386/i386.md ("femms"): Add "memory" attr "none".
+
+2002-09-03 Graham Stott <graham.stott@btinternet.com>
+
+ * expr.c (expand_expr): Remove extraneous comment and code.
+
+2002-09-02 Nathan Sidwell <nathan@codesourcery.com>
+
+ * stor-layout (finish_builtin_struct): Renamed and moved from c++
+ frontend. Take chain of fields. Allow NULL alignment type.
+ * tree.h (finish_builtin_struct): Declare.
+
+2002-09-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/alpha/alpha.c config/alpha/alpha.h config/alpha/alpha.md
+ config/alpha/elf.h config/alpha/unicosmk.h config/alpha/vms.h
+ config/arc/arc.c config/arc/arc.h config/arm/aout.h
+ config/arm/arm.c config/arm/arm.h config/arm/arm.md
+ config/avr/avr.h config/d30v/d30v.h config/dbxcoff.h
+ config/dbxelf.h config/elfos.h config/fr30/fr30.h config/frv/frv.h
+ config/i386/i386.c config/i386/i386.md config/i386/sco5.h
+ config/ia64/ia64.h config/ip2k/ip2k.h config/m68hc11/m68hc11.md
+ config/m68k/hp320.h config/m68k/m68k.c config/m68k/m68k.md
+ config/m68k/mot3300.h config/m68k/sgs.h config/m68k/tower-as.h
+ config/m88k/m88k.c config/m88k/m88k.h config/mcore/mcore-pe.h
+ config/mcore/mcore.c config/mips/mips.c config/mips/mips.h
+ config/ns32k/ns32k.md config/pa/pa-linux.h config/pa/pa.c
+ config/pa/pa.h config/pa/pa.md config/romp/romp.h
+ config/rs6000/linux64.h config/rs6000/lynx.h
+ config/rs6000/rs6000.c config/rs6000/sysv4.h config/rs6000/xcoff.h
+ config/s390/s390.c config/s390/s390.md config/sh/sh.c
+ config/sparc/sparc.c config/sparc/sysv4.h
+ config/stormy16/stormy16.h dbxout.c defaults.h dwarf2out.c
+ dwarfout.c except.c final.c varasm.c vmsdbgout.c: Replace
+ ASM_OUTPUT_INTERNAL_LABEL macro with a call to the target hook.
+
+ * doc/tm.texi: Update docs.
+ * default.h (ASM_OUTPUT_INTERNAL_LABEL): Don't define.
+ * system.h (ASM_OUTPUT_INTERNAL_LABEL): Poison.
+
+2002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (sdbout.o, insn-output.o): Depend on $(TARGET_H).
+ * arc.c (arc_internal_label): New function.
+ (TARGET_ASM_INTERNAL_LABEL): Set.
+ * arc.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
+ * arm.c (arm_internal_label): New function.
+ (TARGET_ASM_INTERNAL_LABEL): Set.
+ * arm.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
+ * arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
+ * i370.c (i370_internal_label): New function.
+ (TARGET_ASM_INTERNAL_LABEL): Set.
+ * i370.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
+ * m68k/hp320.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
+ * m68k.c (m68k_hp320_internal_label): New function.
+ (TARGET_ASM_INTERNAL_LABEL): Set.
+ * m88k.c (m88k_internal_label): New function.
+ (TARGET_ASM_INTERNAL_LABEL): Set.
+ * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
+ * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Set to target hook.
+ * genoutput.c (output_prologue): Include target.h in output file.
+ * output.h (default_internal_label): Declare.
+ * sdbout.c: Include target.h.
+ * target-def.h (TARGET_ASM_INTERNAL_LABEL): Set and add to
+ TARGET_ASM_OUT.
+ * target.h (internal_label): Add to struct gcc_target.
+ * varasm.c (default_internal_label): New function.
+
+2002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
+ * avr.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * c4x.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * cris.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * d30v.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * darwin.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * dsp16xx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * elfos.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * h8300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * i386/att.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * i386/bsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * i386/i386-coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * i386/lynx-ng.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * i386/lynx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * i386/sco5.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * i960/i960.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k/3b1.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k/mot3300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k/tower-as.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * mcore.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * mips.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * mmix-protos.h (mmix_asm_output_internal_label): Likewise.
+ * mmix.c (mmix_asm_output_internal_label): Likewise.
+ * mmix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * ns32k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * pa.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * pdp11.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * romp.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * rs6000/xcoff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sh/coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sh/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc/freebsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc/linux.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc/linux64.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc/netbsd-elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc/pbd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc/sol2.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * sparc/vxsim.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * stormy16.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * svr3.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * vax.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+
+ * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
+
+2002-08-31 Richard Henderson <rth@redhat.com>
+
+ * expr.c (block_move_libcall_safe_for_call_parm): Fix thinko.
+
+2002-08-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (pa_globalize_label): Add ATTRIBUTE_UNUSED to prototype.
+
+2002-08-30 Richard Henderson <rth@redhat.com>
+
+ PR opt/7515
+ * c-objc-common.c: Include target.h.
+ (c_cannot_inline_tree_fn): Don't auto-inline functions that
+ don't bind locally. Factor setting DECL_UNINLINABLE.
+ * Makefile.in (c-objc-common.o): Update.
+
+2002-08-30 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/install.texi (Configuration, Building): Fix a typo and
+ some formatting directives.
+
+2002-08-30 Paul Koning <pkoning@equallogic.com>
+
+ * doc/c-tree.texi (RDIV_EXPR): Fix typo.
+ * doc/rtl.texi (post_modify): Remove misplaced text, remove "not
+ implemented" note.
+ * doc/md.texi (IP2K): Move machine-specific constraints before MIPS
+ for alphabetic order.
+ * doc/tm.texi (TARGET_FLOAT_FORMAT): Update description for
+ VAX_FLOAT_FORMAT. Remove reference to HOST_FLOAT_FORMAT.
+ (VAX_HALFWORD_ORDER): Document.
+ (LARGEST_EXPONENT_IS_NORMAL): Remove note about being only for
+ IEEE float format.
+ (TARGET_SCHED_ISSUE_RATE): Reword reference to MAX_DFA_ISSUE_RATE.
+ (ASM_OUTPUT_LABEL_REF): Fix font.
+ (CASE_VECTOR_SHORTEN_MODE): Ditto.
+
+2002-08-30 Denis Chertykov <denisc@overta.ru>
+
+ * config/ip2k/ip2k.c (ip2k_set_compare): Remove all const_double
+ stuff.
+ (ip2k_gen_unsigned_comp_branch): Handle CONST_INT and
+ CONST_DOUBLE constants.
+
+2002-08-30 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Move language-
+ related defines to...
+ (SUBTARGET_LANGUAGE_CPP_BUILTINS): ...here.
+ * config/alpha/netbsd.h (SUBTARGET_LANGUAGE_CPP_BUILTINS): Redefine
+ as a no-op.
+
+2002-08-30 Krister Walfridsson <cato@df.lth.se>
+
+ * config/arm/arm.c (arm_asm_output_labelref): New function.
+ * config/arm/arm.h (ASM_OUTPUT_LABELREF): Call arm_asm_output_labelref.
+ * config/arm/arm-protos.h: Add prototype for arm_asm_output_labelref.
+
+2002-08-29 Rodney Brown <rbrown64@csc.com.au>
+
+ * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual
+ memory exhausted" workarounds.
+
+2002-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * diagnostic.c (fancy_abort): Don't repeat "internal error".
+ * toplev.c (crash_signal): Likewise.
+
+Fri Aug 30 00:33:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * doc/cpp.texi (__NEXT_RUNTIME__): Extended documentation.
+ * doc/invoke.texi (-fnext-runtime, -Wno-protocol, -Wselector):
+ Extended, updated documentation.
+ (-Wundeclared-selector): Documented.
+
+2002-08-29 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/chorus.h: Consistently define *_DEBUGGING_INFO with
+ the value 1. Do not undef before defining.
+ * config/darwin.h: Likewise.
+ * config/dbx.h: Likewise.
+ * config/dbxcoff.h: Likewise.
+ * config/dbxelf.h: Likewise.
+ * config/elfos.h: Likewise.
+ * config/interix.h: Likewise.
+ * config/lynx-ng.h: Likewise.
+ * config/lynx.h: Likewise.
+ * config/netware.h: Likewise.
+ * config/psos.h: Likewise.
+ * config/svr3.h: Likewise.
+ * config/alpha/alpha.h: Likewise.
+ * config/alpha/elf.h: Likewise.
+ * config/alpha/vms.h: Likewise.
+ * config/arc/arc.h: Likewise.
+ * config/arm/aout.h: Likewise.
+ * config/arm/coff.h: Likewise.
+ * config/c4x/c4x.h: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/i386/cygwin.h: Likewise.
+ * config/i386/djgpp.h: Likewise.
+ * config/i386/gas.h: Likewise.
+ * config/i386/gstabs.h: Likewise.
+ * config/i386/i386-coff.h: Likewise.
+ * config/i386/i386-interix.h: Likewise.
+ * config/i386/sco5.h: Likewise.
+ * config/i386/svr3dbx.h: Likewise.
+ * config/i386/sysv3.h: Likewise.
+ * config/i386/win32.h: Likewise.
+ * config/i386/x86-64.h: Likewise.
+ * config/i960/i960.h: Likewise.
+ * config/ia64/ia64.h: Likewise.
+ * config/ip2k/ip2k.h: Likewise.
+ * config/m32r/m32r.h: Likewise.
+ * config/m68k/3b1.h: Likewise.
+ * config/m68k/3b1g.h: Likewise.
+ * config/m68k/ccur-GAS.h: Likewise.
+ * config/m68k/coff.h: Likewise.
+ * config/m68k/hp2bsd.h: Likewise.
+ * config/m68k/hp310g.h: Likewise.
+ * config/m68k/hp320g.h: Likewise.
+ * config/m68k/hp3bsd.h: Likewise.
+ * config/m68k/hp3bsd44.h: Likewise.
+ * config/m68k/linux-aout.h: Likewise.
+ * config/m68k/m68k-aout.h: Likewise.
+ * config/m68k/mot3300.h: Likewise.
+ * config/m68k/netbsd.h: Likewise.
+ * config/m68k/openbsd.h: Likewise.
+ * config/m68k/pbb.h: Likewise.
+ * config/m68k/plexus.h: Likewise.
+ * config/m68k/sun2.h: Likewise.
+ * config/m68k/sun3.h: Likewise.
+ * config/m68k/tower-as.h: Likewise.
+ * config/m68k/vxm68k.h: Likewise.
+ * config/m88k/aout-dbx.h: Likewise.
+ * config/m88k/m88k-aout.h: Likewise.
+ * config/mcore/mcore-elf.h: Likewise.
+ * config/mcore/mcore-pe.h: Likewise.
+ * config/mips/elf.h: Likewise.
+ * config/mips/elf64.h: Likewise.
+ * config/mips/iris5gas.h: Likewise.
+ * config/mips/iris6.h: Likewise.
+ * config/mips/mips.h: Likewise.
+ * config/mips/sni-gas.h: Likewise.
+ * config/mmix/mmix.h: Likewise.
+ * config/ns32k/netbsd.h: Likewise.
+ * config/pa/pa64-hpux.h: Likewise.
+ * config/romp/romp.h: Likewise.
+ * config/rs6000/sysv4.h: Likewise.
+ * config/rs6000/xcoff.h: Likewise.
+ * config/sh/coff.h: Likewise.
+ * config/sh/elf.h: Likewise.
+ * config/sparc/linux64.h: Likewise.
+ * config/sparc/liteelf.h: Likewise.
+ * config/sparc/netbsd.h: Likewise.
+ * config/sparc/openbsd.h: Likewise.
+ * config/sparc/pbd.h: Likewise.
+ * config/sparc/sp64-elf.h: Likewise.
+ * config/sparc/sp86x-elf.h: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/vax/vax.h: Likewise.
+ * config/vax/vaxv.h: Likewise.
+
+2002-08-29 "Dhananjay R. Deshpande" <dhananjayd@kpit.com>
+
+ * h8300.c (shift_alg_hi): Various tweaks to improve performance
+ of HImode shifts.
+ (get_shift_alg): Corresponding changes.
+
+2002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * som.h (ALWAYS_STRIP_DOTDOT): Define to 1.
+
+2002-08-29 Richard Henderson <rth@redhat.com>
+
+ * expr.h (enum block_op_methods): New.
+ (emit_block_move): Update prototype.
+ * expr.c (block_move_libcall_safe_for_call_parm): New.
+ (emit_block_move_via_loop): New.
+ (emit_block_move): Use them. New argument METHOD.
+ (emit_push_insn): Always respect the given alignment.
+ (expand_assignment): Update call to emit_block_move.
+ (store_expr, store_field, expand_expr): Likewise.
+ * builtins.c (expand_builtin_apply): Likewise.
+ (expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
+ * function.c (expand_function_end): Likewise.
+ * config/sh/sh.c (sh_initialize_trampoline): Likewise.
+ * config/sparc/sparc.c (sparc_va_arg): Likewise.
+ * calls.c (expand_call, emit_library_call_value_1): Likewise.
+ (save_fixed_argument_area): Use emit_block_move with
+ BLOCK_OP_CALL_PARM instead of move_by_pieces.
+ (restore_fixed_argument_area): Likewise.
+ (store_one_arg): Fix alignment parameter to emit_push_insn.
+
+2002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * install.texi (hppa64-hp-hpux11*): Document installation procedure.
+
+2002-08-29 Catherine Moore <clm@redhat.com>
+
+ * config/v850/v850.h (MULDI3_LIBCALL, UCMPDI2_LIBCALL, CMPDI2_LIBCALL,
+ NEGDI2_LIBCALL, INIT_TARGET_OPTABS, MASK_STRICT_ALIGN): Define.
+ (PREDICATE_CODES): Include new predicates.
+ (RTX_COSTS): Handle UMOD and UDIV. Tune MULT for v850e.
+ (TARGET_SWITCHES): Add strict-align.
+ (TARGET_STRICT_ALIGN): New.
+ (MASK_DEFAULT, STRICT_ALIGNMENT): Redefine.
+ * config/v850/t-v850 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
+ Define.
+ (LIB1ASMFUNCS): Add v850_negdi2, v850_cmpdi2, v850_ucmpdi2,
+ v850_muldi3.
+ * config/v850/lib1funcs.asm (L_callt_save_r2_r29, L_return_r2_r29,
+ L_callt_save_r2_r31, L_return_r2_r31,
+ L_save_all_interrupt): Change addi to add.
+ (L_save_interrupt, L_return_interrupt): Rework.
+ (__return_r31): Correct .size directive.
+ (mulsi3, divsi3, udivsi3, umodsi3, modsi3): Tune for v850e.
+ (v850_negdi2, v850_cmpdi2, v850_ucmpdi2, v850_muldi3):
+ New routines.
+ * config/v850/v850.c (expand_prologue): Call
+ gen_callt_save_interrupt, gen_callt_restore_all_interrupt,
+ gen_callt_return_interrupt and gen_callt_save_all_interrupt.
+ (reg_or_int9_operand): New predicate.
+ (reg_or_const_operand): New routine.
+ * config/v850/v850.md (return_interrupt): Changed from
+ restore_interrupt.
+ (callt_save_all_interrupt): Changed from save_all_interrupt_v850e.
+ (callt_save_interrupt): Change save sequence.
+ (callt_return_interrupt): New.
+ (save_interrupt): Don't use runtime function for LONG_CALLS
+ and TARGET_PROLOG_FUNCTION.
+ (save_all_interrupt): Likewise.
+ (mulsi3): Use new predicate.
+ (moviscc): Disallow some combination of constants.
+ Fix define_split for sasf insns, so that it will not generate bad
+ code if operand0 and operand5 are the same.
+ * config/v850/v850-protos.h: Prototype new predicates.
+
+2002-08-29 Zack Weinberg <zack@codesourcery.com>
+
+ * config/rs6000/rs6000.c (processor_target_table): Add 405f.
+ * config/rs6000/rs6000.h (ASM_CPU_SPEC): Likewise.
+
+2002-08-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-common.c (builtin_define_type_precision): New function.
+ (cb_register_builtins): Use it. Define __WCHAR_UNSIGNED__ is
+ wchar_t is unsigned in C++.
+ * doc/cpp.texi (Common Predefined Macros): Document
+ __WCHAR_UNSIGNED__, __CHAR_BIT__, __WCHAR_BIT__, __SHRT_BIT__,
+ __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
+ __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
+
+2002-08-28 Sylvain Pion <pion@cs.nyu.edu>
+
+ * doc/invoke.texi (-Wreorder): Remove remaining pieces from the generic
+ section. Mention that it is enabled by -Wall.
+ (-Wall): Mention that there can be language-specific warnings as well.
+ (-Wctor-dtor-privacy): Mention that it is enabled by default.
+ (-Wnon-virtual-dtor): Mention that it is enabled by -Wall.
+
+Wed Aug 28 15:35:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (calc_live_regs): Save FPSCR_REG in an interrupt handler
+ if it is ever live.
+
+ * sh.c (sh_handle_interrupt_handler_attribute): Reject interrupt_handler
+ attribute for SHCOMPACT.
+
+ * sh.h (OVERRIDE_OPTIONS): If align_function isn't set, set it
+ appropriately.
+ (FUNCTION_BOUNDARY): Specify only the minimum alignment required
+ by the ABI.
+
+ * sh.h (SH5_WOULD_BE_PARTIAL_NREGS): Also handle TImode case.
+
+2002-08-28 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config.gcc (mips*-*-netbsd*): Set target_cpu_default to
+ "MASK_GAS|MASK_ABICALLS".
+ * config/mips/netbsd.h (TARGET_ENDIAN_DEFAULT)
+ (TARGET_DEFAULT): Remove.
+ (MACHINE_TYPE): Undefine before defining.
+ (DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Remove.
+
+2002-08-27 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.c (warn_abi): New variable.
+ * c-common.h (warn_abi): Likewise.
+ * c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi.
+ (c_common_decode_option): Handle it.
+ * doc/invoke.texi: Document -Wabi.
+
+Tue Aug 27 23:03:52 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * c-common.c (warn_undeclared_selector): New variable.
+ * c-common.h (warn_undeclared_selector): Idem.
+ * c-opts.c (c_common_decode_option): Set warn_undeclared_selector
+ to on when -Wundeclared-selector is found.
+ (COMMAND_LINE_OPTIONS): Added -Wundeclared-selector.
+ * objc/objc-act.c (build_selector_expr): If
+ warn_undeclared_selector is set, check that the selector has
+ already been defined, and emit a warning if not.
+
+2002-08-27 Nick Clifton <nickc@redhat.com>
+ Catherine Moore <clm@redhat.com>
+ Jim Wilson <wilson@cygnus.com>
+
+ * config.gcc: Add v850e-*-* target.
+ Add --with-cpu= support for v850.
+ * config/v850/lib1funcs.asm: Add v850e callt functions.
+ * config/v850/v850.h: Add support for v850e target.
+ * config/v850/v850.c: Add functions to support v850e target.
+ * config/v850/v850-protos.h: Add prototypes for new functions in v850.c.
+ * config/v850/v850.md: Add patterns for v850e instructions.
+ * doc/invoke.texi: Document new v850e command line switches.
+
+Tue Aug 27 18:30:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
+ Aldy Hernandez <aldyh at redhat dot com>
+
+ * doc/tm.texi: Applied numerous fixes to the automaton based
+ scheduler descrition.
+
+Tue Aug 27 19:51:05 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (classify_argument): Handle variable sized objects.
+
+Tue Aug 27 19:18:16 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem
+
+Tue Aug 27 18:01:45 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * libgcc2.c (__bb_exit_func): Properly write the summarized statistics.
+
+Tue Aug 27 18:00:11 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (classify_argument): Properly compute word size of the analyzed object.
+
+Tue Aug 27 14:39:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp,
+ mac_gp ftrc_s and cwb. Add / Adjust definitions in individual insn
+ accordingly.
+ (attribute insn_class): Provide default definitions based on type.
+ Remove all insn-specific settings.
+ (various function units): Remove old SH4 scheduling.
+ (branch_zero, dfp_comp, late_fp_use, any_fp_comp, any_int_load):
+ New attributes. Set them where appropriate.
+ (cpu unit FS): Don't define / use.
+ (F3, load_store): New cpu units.
+ (F01): New reservation.
+ (all insn_reservations): Make dependent on sh4 pipeline model.
+ Fix latencies.
+ (nil, reg_mov, freg_mov, sh4_fpul_gp, sh4_call): New insn_reservations.
+ (sh4_mac_gp, fp_arith_ftrc, arith3, arith3b): Likewise.
+ (mt insn_reservation): Use type mt_group.
+ (insn_reservation load_store): Split into sh4_load, sh4_load_si,
+ sh4_fload and sh4_store.
+ (insn_reservation branch_zero and branch): Replace with sh4_branch.
+ (insn_reservation branch_far): Replace with sh4_return.
+ (insn_reservation return_from_exp): Rename to:
+ (sh4_return_from_exp). Change to be just d_lock*5.
+ (insn_reservation lds_to_pr): Rename to:
+ (sh4_lds_to_pr). Change to be just d_lock*2.
+ (insn_reservation ldsmem_to_pr, sts_from_pr): Change to be just
+ d_lock*2.
+ (insn_reservation prload_mem): Rename to:
+ (sh4_prstore_mem). Change to d_lock*2,nothing,memory.
+ (insn_reservation fpscr_store): Rename to:
+ (fpscr_load). Change to d_lock,nothing,F1*3.
+ (insn_reservation fpscr_store_mem): Rename to:
+ (fpscr_load_mem). Change to d_lock,nothing,(F1+memory),F1*2.
+ (insn_reservation multi): Change to
+ d_lock,(d_lock+f1_1),(f1_1|f1_2)*3,F2.
+ (insn_reservation fp_arith): Change to issue,F01,F2.
+ (insn_reservation fp_div: Change to issue,F01+F3,F2+F3,F3*7,F1+F3,F2.
+ (insn_reservation dp_float): Change to issue,F01,F1+F2,F2.
+ (insn_reservation fp_double_arith): Change to issue,F01,F1+F2,fpu*4,F2.
+ (insn_reservation fp_double_cmp): Change to
+ d_lock,(d_lock+F01),F1+F2,F2.
+ (insn_reservation dp_div): Change to
+ issue,F01+F3,F1+F2+F3,F2+F3,F3*16,F1+F3,(fpu+F3)*2,F2.
+ * sh.c (flow_dependent_p, flow_dependent_p_1): New functions.
+ (sh_adjust_cost, SHcompact): Differentiate between different
+ kinds of dependencies. Drop factor of ten for superscalar.
+ Use new instruction types. Add new exception rules.
+
+ * sh.md (mulhisi3, umulhisi3: Add a REG_EQUAL note.
+
+ * sh.md (mperm_w): Add DONE.
+
+2002-08-27 David Edelsohn <edelsohn@gnu.org>
+
+ * longlong.h: Import current PowerPC defintion from GMP-4.1.
+
+ * config/rs6000/rs6000.h (MIN_UNITS_PER_WORD): Add IN_LIBGCC2 case.
+
+ * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Undef before define.
+
+Tue Aug 27 13:53:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (MAX_FIXED_MODE_SIZE): Define.
+
+2002-08-27 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
+
+ * doc/cpp.texi (Common Predefined Macros): Don't mess with table
+ delimiter.
+
+2002-08-27 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-common.c (cpp_define_data_format): New function.
+ (cb_register_builtins): Call it.
+
+ * doc/cpp.texi (Common Predefined Macros): Document
+ __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
+ __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
+ __TARGET_FLOAT_FORMAT__, __TARGET_USES_VAX_F_FLOAT__,
+ __TARGET_USES_VAX_D_FLOAT__, __TARGET_USES_VAX_G_FLOAT__,
+ __TARGET_USES_VAX_H_FLOAT__.
+
+2002-08-26 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (get_super_receiver): If inside a class method
+ of a category, cast the receiver to 'id' before accessing the 'isa'
+ field so that <objc/objc-class.h> is not needed. For NeXT runtime.
+
+2002-08-26 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_function_prologue,
+ s390_function_epilogue): Remove.
+ config/s390/s390.c (s390_function_prologue, s390_function_epilogue,
+ TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove.
+
+ config/s390/s390.c (s390_machine_dependent_recorg): New function.
+ config/s390/s390-protos.h (s390_machine_dependent_reorg): Declare it.
+ config/s390/s390.h (MACHINE_DEPENDENT_REORG): Call it.
+ config/s390/s390.c (s390_split_branches, s390_chunkify_pool): Adapt
+ to being called from MACHINE_DEPENDENT_REORG. Update regs_ever_live.
+
+ config/s390/s390.c (s390_frame_info): Inline save_fprs_p. Always
+ assume BASE_REGISTER and RETURN_REGNUM need to be saved.
+ (s390_emit_prologue): Assume RETURN_REGNUM to be saved iff
+ function is not a leaf function. Use save_gprs and restore_gprs.
+ (s390_emit_epilogue): Likewise.
+ (save_gprs, restore_gprs): New functions.
+ (struct s390_frame): Remove return_reg_saved_p member.
+ (save_fprs_p): Remove.
+ (s390_optimize_prolog): New function.
+ (s390_legitimate_reload_constant): Remove now unnecessary check.
+
+ (s390_function_count): Remove.
+ (s390_output_symbolic_const): Replace s390_function_count by
+ current_function_funcdef_no.
+ (s390_output_constant_pool): Likewise.
+
+ (legitimize_pic_address): Use regs_ever_live to track PIC register
+ instead of current_function_uses_pic_offset_table.
+ (s390_emit_prologue): Likewise.
+ config/s390/s390.md ("call", "call_value"): Likewise.
+
+2002-08-26 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (find_opt): Don't complain about wrong languages
+ here. Return exact matches even for wrong language.
+ (c_common_decode_option): Complain about wrong languages
+ here.
+
+2002-08-24 Stuart Hastings <stuart@apple.com>
+
+ * function.h (struct function): Add flag
+ all_throwers_are_sibcalls.
+ * except.c (set_nothrow_function_flags): Replaces
+ nothrow_function_p. Set new flag.
+ * except.h (set_nothrow_function_flags): Replaces
+ nothrow_function_p.
+ * dwarf2out.c (struct dw_fde_struct): Add flag
+ all_throwers_are_sibcalls.
+ (output_call_frame_info): Test it.
+ (dwarf2out_begin_prologue) Propagate it from cfun to
+ dw_fde_struct.
+ * toplev.c (rest_of_compilation): Update calls to
+ nothrow_function_p.
+
+2002-08-23 Zack Weinberg <zack@codesourcery.com>
+
+ * ggc-page.c (compute_inverse): Short circuit calculation for
+ object sizes larger than half a page.
+
+2002-08-23 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_elf_select_section): Treat
+ DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly
+ default.
+ (rs6000_elf_unique_section): Likewise.
+
+2002-08-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ns32k.c (ns32k_globalize_label): Delete.
+ * ns32k.h (ASM_OUTPUT_LABEL, TARGET_ASM_GLOBALIZE_LABEL): Delete.
+
+2002-08-23 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (output_mi_thunk): Don't determine insns
+ for loading delta with num_insns_constant_wide. Calculate
+ delta_low, delta_high without using a conditional.
+
+2002-08-22 Jason Merrill <jason@redhat.com>
+
+ * c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR.
+ * c-common.def: Adjust.
+ * c-dump.c (c_dump_tree): Adjust.
+ * c-semantics.c (genrtl_return_stmt): Adjust.
+ * c-pretty-print.c (pp_c_statement): Adjust.
+ * tree-inline.c (copy_body_r): Adjust.
+
+2002-08-22 Zack Weinberg <zack@codesourcery.com>
+
+ * ggc-page.c: Avoid division in ggc_set_mark.
+ (DIV_MULT, DIV_SHIFT, OFFSET_TO_BIT, inverse_table,
+ compute_inverse): New.
+ (ggc_set_mark, ggc_marked_p): Use OFFSET_TO_BIT.
+ (init_ggc): Initialize inverse_table.
+
+2002-08-22 Tom Tromey <tromey@redhat.com>
+
+ * doc/install.texi (Configuration): Document --datadir.
+
+2002-08-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in ($(BUILD_PREFIX_1)varray.o): Depend on $(GGC_H).
+
+2002-08-22 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * gengtype-lex.l (ID): Allow underscore as first character.
+
+2002-08-21 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_xcoff_asm_globalize_label): New
+ function.
+ (rs6000_xcoff_asm_named_section): Rename.
+ * config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
+
+2002-08-21 Tom Tromey <tromey@redhat.com>
+
+ For PR java/6005 and PR java/7611:
+ * fold-const.c (fold_truthop): Use can_use_bit_fields_p.
+ (fold): Likewise.
+ * langhooks.c (lhd_can_use_bit_fields_p): New function.
+ * langhooks-def.h (lhd_can_use_bit_fields_p): Declare.
+ (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): New define.
+ (LANG_HOOKS_INITIALIZER): Use it.
+ * langhooks.h (struct lang_hooks) [can_use_bit_fields_p]: New
+ field.
+
+2002-08-21 Stan Shebs <shebs@apple.com>
+
+ * tree.c (finish_vector_type): Fix a typo in a comment.
+ * Makefile.in: Fix "the the" stutters in comments.
+ * genautomata.c: Ditto.
+ * ifcvt.c: Ditto.
+ * regrename.c: Ditto.
+ * config/alpha/alpha.c: Ditto.
+ * config/alpha/vms-crt0-64.c: Ditto.
+ * config/alpha/vms-crt0.c: Ditto.
+ * config/alpha/vms-psxcrt0-64.c: Ditto.
+ * config/alpha/vms-psxcrt0.c: Ditto.
+ * config/d30v/d30v.h: Ditto.
+ * config/fr30/fr30.h: Ditto.
+ * config/rs6000/rs6000.c: Ditto.
+ * config/stormy16/stormy16.h: Ditto.
+ * doc/md.texi: Ditto.
+
+2002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * cppinit.c (remove_dup_nonsys_dirs): Fix warning and return value.
+
+2002-08-21 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-decl.c (grokdeclarator): Make invalid combinations with long,
+ short, signed or unsigned into hard errors. Fixes PR c/4319.
+ Also make duplicate modifiers such as "short short" into hard
+ errors.
+
+2002-08-21 Andrew Pinski <pinskia@physics.uc.edu>
+ Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * doc/tm.texi (TARGET_ASM_GLOBALIZE_LABEL): Move '@end deftypefn'
+ to the actual end. Add '@end table' and '@table @code'.
+
+2002-08-20 Geoffrey Keating <geoffk@redhat.com>
+
+ * doc/tm.texi (Label Output): Add missing '@end deftypefn'.
+
+ * unroll.c (biv_total_increment): Don't try to compute the total
+ increment for FP BIVs.
+
+2002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.c (TARGET_ASM_GLOBALIZE_LABEL): Define for unicosmk.
+ * alpha/elf.h (ASM_OUTPUT_EXTERNAL_LIBCALL,
+ ASM_OUTPUT_ALIGNED_BSS): Use target hook.
+ * alpha/osf.h (ASM_OUTPUT_WEAK_ALIAS): Likewise.
+ * alpha/unicosmk.h (ASM_GLOBALIZE_LABEL): Delete.
+ * arm/aof.h (ASM_GLOBALIZE_LABEL): Likewise.
+ (GLOBAL_ASM_OP): Define.
+ * arm.c (aof_globalize_label): New function.
+ (TARGET_ASM_GLOBALIZE_LABEL): Define for AOF.
+ * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
+ * c4x.c (c4x_globalize_label): New function.
+ (TARGET_ASM_GLOBALIZE_LABEL): Define for c4x.
+ * c4x.h (ASM_GLOBALIZE_LABEL): Delete.
+ (GLOBAL_ASM_OP): Define.
+ * cris/aout.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
+ * darwin-protos.h (darwin_globalize_label): Declare.
+ * darwin.c (darwin_globalize_label): New function.
+ * darwin.h (ASM_DECLARE_CLASS_REFERENCE): Use target hook.
+ (ASM_GLOBALIZE_LABEL): Delete.
+ (GLOBAL_ASM_OP, TARGET_ASM_GLOBALIZE_LABEL): Define.
+ * dsp16xx.c (asm_output_common): Use target hook.
+ * elfos.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
+ * frv.h (ASM_GLOBALIZE_LABEL): Delete.
+ (GLOBAL_ASM_OP): Define.
+ * i370.c (i370_globalize_label): New function.
+ (TARGET_ASM_GLOBALIZE_LABEL): Define for i370.
+ * i370.h (ASM_GLOBALIZE_LABEL): Delete.
+ * i386.c (ix86_asm_file_end): Use target hook.
+ * i386/sco5.h (ASM_GLOBALIZE_LABEL): Don't undef.
+ (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
+ * ia64.c (ia64_asm_output_external): Likewise.
+ * ia64/sysv4.h: Update comment.
+ * m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
+ * mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
+ * mips/iris5.h (ASM_OUTPUT_WEAK_ALIAS): Use target hook.
+ * mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
+ * mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use target hook.
+ * mmix-protos.h (mmix_asm_globalize_label): Delete.
+ * mmix.c (mmix_asm_globalize_label): Likewise.
+ * mmix.h (ASM_GLOBALIZE_LABEL): Likewise.
+ (GLOBAL_ASM_OP): Define.
+ * ns32k.c (ns32k_globalize_label): New function.
+ * ns32k.h (TARGET_ASM_GLOBALIZE_LABEL): Define for ns32k.
+ (ASM_GLOBALIZE_LABEL): Delete.
+ * pa/pa-linux.h (ASM_GLOBALIZE_LABEL): Don't undef.
+ (TARGET_ASM_GLOBALIZE_LABEL): Undefine.
+ * pa.c (pa_globalize_label): New function.
+ * pa.h (ASM_GLOBALIZE_LABEL): Delete.
+ (TARGET_ASM_GLOBALIZE_LABEL): Define for pa.
+ * rs6000/darwin.h (ASM_GLOBALIZE_LABEL): Delete.
+ (GLOBAL_ASM_OP): Define.
+ (TARGET_ASM_GLOBALIZE_LABEL): Undef.
+ * rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
+ * rs6000/xcoff.h (ASM_GLOBALIZE_LABEL): Delete.
+ (GLOBAL_ASM_OP): Define.
+ * v850.c (v850_output_aligned_bss): Use target hook.
+ * vax.c (vms_globalize_label): New function.
+ (TARGET_ASM_GLOBALIZE_LABEL): Define for vms.
+ * vax/vms.h (ASM_GLOBALIZE_LABEL): Delete.
+ (GLOBAL_ASM_OP): Define.
+ * defaults.h (ASM_GLOBALIZE_LABEL): Delete.
+ * doc/tm.texi: Update docs.
+ * dwarf2out.c (default_eh_frame_section, output_die_symbol): Use
+ target hook.
+ * final.c (output_alternate_entry_point): Likewise.
+ * hooks.c (hook_FILEptr_constcharptr_void): New function.
+ * hooks.h (hook_FILEptr_constcharptr_void): Declare.
+ * output.h (assemble_global): Delete.
+ (default_globalize_label): Declare.
+ * system.h (ASM_GLOBALIZE_LABEL): Poison.
+ * target-def.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
+ (TARGET_ASM_OUT): Add TARGET_ASM_GLOBALIZE_LABEL.
+ * target.h (gcc_target): Add globalize_label member.
+ * varasm.c (asm_output_bss, asm_output_aligned_bss,
+ globalize_decl): Use target hook.
+ (assemble_global): Delete.
+ (default_globalize_label): New function.
+
+2002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dsp16xx.h (dsp16xx_umulhi3_libcall): Delete.
+
+2002-08-20 Devang Patel <dpatel@apple.com>
+ * tree.c (get_qualified_type): Add TYPE_CONTEXT check.
+
+2002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * arc.c (output_shift): Use stdio instead of asm_fprintf.
+ * arm.c (thumb_output_function_prologue): Likewise.
+ * avr.c (print_operand): Likewise.
+ * c4x.c (c4x_print_operand): Likewise.
+ * c4x.h (ASM_OUTPUT_INTERNAL_LABEL, TRAMPOLINE_TEMPLATE,
+ ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
+ * cris.c (cris_target_asm_function_prologue,
+ cris_asm_output_mi_thunk): Likewise.
+ * h8300.c (print_operand): Likewise.
+ * h8300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
+ * ip2k.c (print_operand): Likewise. Fix format specifier.
+ * m68hc11.c (asm_print_register, print_operand,
+ print_operand_address): Use stdio instead of asm_fprintf.
+ (print_operand_address): Fix format specifier.
+ * m68hc11.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT,
+ ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ALIGN): Use stdio instead of
+ asm_fprintf.
+ * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
+ * m68k.c (m68k_output_function_prologue,
+ m68k_output_function_epilogue, print_operand): Likewise.
+ * mmix.c (mmix_asm_output_mi_thunk, mmix_asm_weaken_label):
+ Likewise. Fix format specifier.
+ * mn10200.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
+ * mn10300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
+ * v850.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
+
+2002-08-15 Eric Christopher <echristo@redhat.com>
+ Jeff Knaggs <jknaggs@redhat.com>
+
+ * config.gcc (mipsisa64sr71k-elf): New target.
+ * config/mips/sr71k.md: New file.
+ * config/mips/mips.md: Use it.
+ (rot*): Add sr71k specifics.
+ * config/mips/t-sr71k: New file.
+ * config/mips/mips.h (sr71k): New cpu.
+ (TARGET_SR71K): Use it.
+ (TUNE_SR71K): Ditto.
+ (GENERATE_BRANCHLIKELY): Ditto.
+ (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC,
+ ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto.
+ * config/mips/mips.c (sr71k): New cpu.
+ (mips_use_dfa_pipeline_interface): Use.
+
+2002-08-15 Eric Christopher <echristo@redhat.com>
+ Richard Sandiford <rsandifo@redhat.com>
+ Aldy Hernandez <aldyh@redhat.com>
+ Graham Stott <grahams@redhat.com>
+ Michael Meissner <meissner@redhat.com>
+ Gavin Romig-Koch <gavin@redhat.com>
+ Ken Raeburn <raeburn@cygnus.com>
+ Alexandre Oliva <aoliva@redhat.com>
+
+ * config.gcc (mips64vr-elf): New target.
+ * config/mips/5400.md: New file.
+ * config/mips/5500.md: Ditto.
+ * config/mips/mips.md: Use them.
+ (frsqrt): New.
+ * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New
+ cpus.
+ (mips_issue_rate): Use them.
+ (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500.
+ (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above.
+ * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New
+ cpus.
+ (TARGET_MIPSx): Use them.
+ (TUNE_MIPSx): Ditto.
+ (GETNATE_MULT3_SI): Ditto.
+ (ISA_HAS_BRANCHLIKELY): Ditto.
+ (ISA_HAS_CONDMOVE): Ditto.
+ (ISA_HAS_NMADD_NMSUB): Ditto.
+ (ISA_HAS_MULHI): New. Ditto.
+ (ISA_HAS_MULS): Ditto.
+ (ISA_HAS_MSAC): Ditto.
+ (ISA_HAS_MACC): Ditto.
+ (ISA_HAS_ROTR_SI): Ditto.
+ (ISA_HAS_ROTR_DI): Ditto.
+ (RTX_COSTS): Use.
+
+2002-08-20 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * cppinit.c (remove_dup_dir): Add head_ptr argument to handle removal
+ at head.
+ (remove_dup_nonsys_dirs): New function.
+ (remove_dup_dirs): Change argument head to head_ptr. Remove warnings.
+ (merge_include_chains): Remove non-system include directories from
+ quote and bracket include chains when they duplicate equivalent system
+ directories.
+ * doc/cpp.texi (-I): Update.
+ * doc/cppopts.texi (-I): Update.
+ * doc/install.texi (--with-local-prefix): Further document usage of
+ this option.
+ * doc/invoke.texi (-I): Update.
+
+2002-08-20 Richard Henderson <rth@redhat.com>
+
+ * expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean.
+ (emit_block_move): Split out subroutines.
+ (emit_block_move_via_movstr): New.
+ (emit_block_move_via_libcall): New. Emit bcopy via normal call also.
+ (emit_block_move_libcall_fn): New. Construct function prototype for
+ bcopy as well.
+ (clear_storage): Split out subroutines.
+ (clear_storage_via_clrstr): New.
+ (clear_storage_via_libcall): New. Emit bzero as a normal call also.
+ (clear_storage_libcall_fn): New. Construct function prototype for
+ bzero as well.
+ (emit_push_insn): Use emit_block_move.
+ (expand_assignment): Booleanize TARGET_MEM_FUNCTIONS.
+ (store_constructor): Likewise.
+
+2002-08-19 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (building_objc_message_expr): Rename to
+ current_objc_message_selector.
+
+2002-08-19 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (build_ivar_chain): Remove.
+ (objc_copy_list): Likewise.
+ (get_class_ivars): Inline call to removed build_ivar_chain
+ function. Save off a clean copy of ivars in the CLASS_OWN_IVARS
+ slot; use that slot (rather than CLASS_IVARS) when accessing
+ ivars for base classes. Call copy_list and chainon instead of
+ objc_copy_list.
+ (build_private_template): Call get_class_ivars instead of
+ build_ivar_chain.
+ (start_class): Allocate room for the CLASS_OWN_IVARS slot.
+ (continue_class): Call get_class_ivars instead of
+ build_ivar_chain.
+ (encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead
+ of DECL_BIT_FIELD (which may have been cleared).
+ * objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro.
+
+2002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * genautomata.c (output_translate_vect, output_state_ainsn_table,
+ output_min_issue_delay_table): Mark variable with ATTRIBUTE_UNUSED
+ in output file.
+ (output_internal_min_issue_delay_func): Initialize variable in
+ output file.
+
+2002-08-19 Alexandre Oliva <aoliva@redhat.com>
+
+ * Makefile.in (GCC_FOR_TARGET): Prepend STAGE_CC_WRAPPER.
+ (stage2_build, stage3_build, stage4_build): Likewise, to CC.
+
+2002-08-19 Geoffrey Keating <geoffk@redhat.com>
+ Steve Ellcey <sje@cup.hp.com>
+
+ * machmode.h (SCALAR_INT_MODE_P): New macro to test for
+ scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
+ * explow.c (trunc_int_for_mode): Abort when the mode is not
+ a scaler integer mode.
+ * combine.c (expand_compound_operation): Don't expand Vector
+ or Complex modes into shifts.
+ (expand_field_assignment): Don't do bitwise arithmatic and
+ shifts on Vector or Complex modes.
+ (simplify_comparison): Don't call trunc_int_for_mode
+ for VOIDmode.
+ * recog.c (general_operand): Likewise.
+ (immediate_operand): Likewise.
+ (nonmemory_operand): Likewise.
+
+2002-08-19 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_emit_set_const): Inline
+ multi-instruction SImode constant. Add REG_EQUAL note.
+ * config/rs6000/rs6000.md (movsi splitter): Use
+ rs6000_emit_set_const.
+
+2002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * tree-inline.c (initialize_inlined_parameters): Wrap variable in
+ the macro test controlling its use.
+
+2002-08-18 H.J. Lu (hjl@gnu.org)
+
+ * config.gcc (*-*-linux*): Set extra_parts="crtbegin.o
+ crtbeginS.o crtbeginT.o crtend.o crtendS.o", gas=yes and
+ gnu_ld=yes.
+ (alpha*-*-linux*, cris-*-linux*, i370-*-linux*,
+ i[34567]86-*-linux*, x86_64-*-linux*, mips*-*-linux*,
+ s390-*-linux*, s390x-*-linux*, sparc-*-linux*, sparc64-*-linux*,
+ xtensa-*-linux*): Remove setting extra_parts, gas, and gnu_ld
+ here.
+ (cris-*-linux*): Remove setting thread_file here.
+
+2002-08-18 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/7602
+ * cppinit.c (path_include): Treat the system environment
+ variables as being cxx_aware.
+
+2002-08-17 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-decl.c (flexible_array_type_p): New function.
+ (grokdeclarator, finish_struct): Use it.
+ * doc/extend.texi: Document constraints on use of structures with
+ flexible array members.
+
+2002-08-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/t-coff, config/mips/t-elf, config/mips/t-isa3264,
+ config/mips/t-r3900 (MULTILIB_MATCHES): Define.
+ * config/mips/mips.h (ASM_SPEC): Use %(endian_spec).
+
+2002-08-16 Stan Shebs <shebs@apple.com>
+
+ * c-common.c (cb_register_builds): Define __NEXT_RUNTIME__
+ for ObjC with -fnext-runtime.
+ * doc/cpp.texi: Document it.
+
+2002-08-16 Janis Johnson <janis187@us.ibm.com>
+
+ * doc/install.texi (Final installation): Replace links to individual
+ build status pages with a link to a common page that lists them all.
+
+2002-08-16 Sylvain Pion <pion@cs.nyu.edu>
+
+ * doc/invoke.texi: Fix typo.
+
+2002-08-16 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
+
+2002-08-16 Andrew Haley <aph@redhat.com>
+
+ * tree-inline.c: Add includes for Java inliner.
+ (remap_decl): Don't handle anonymous types for Java.
+ (remap_block): Add handling for Java trees.
+ (copy_scope_stmt): Conditionalize for non-Java use only.
+ (copy_body_r): Handle Java trees. Add handling for
+ LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, Java blocks.
+ (initialize_inlined_parameters): Handle Java trees.
+ (declare_return_variable): Likewise.
+ (expand_call_inline): Handle Java trees.
+ (walk_tree): Likewise.
+ (copy_tree_r): Don't handle SCOPE_STMTs for Java.
+ (add_stmt_to_compound): New function.
+
+2002-08-15 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (LOOSE_WARN): Remove -fno-common.
+ (NOCOMMON_FLAG): New substitution point.
+ (GCC_WARN_CFLAGS): Include it.
+ * configure.in (ac_checking): Set nocommon_flag.
+ (nocommon_flag): New substitution point.
+
+2002-08-15 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-tree.h (skip_evaluation): Move declaration...
+ * c-common.h: ... here.
+ * c-typeck.c (build_external_ref): Don't assemble_external nor
+ mark a tree as used if skip_evaluation is set.
+ * c-parse.in (typeof): New non-terminal to set skip_evaluation
+ around TYPEOF.
+ (typespec_nonreserved_nonattr): Use it.
+
+2002-08-15 Douglas B Rupp <rupp@gnat.com>
+
+ * dbxout.c (dbx_debug_hooks): Update end_prologue, end_epilogue.
+ (xcoff_debug_hooks): Update end_prologue.
+ * debug.c (do_nothing_debug_hooks): Update end_prologue, end_epilogue.
+ * debug.h (end_prologue): Add file arg.
+ (end_epilogue): Add line and file args.
+ (dwarf2out_end_epilogue): Add line and file args.
+ (vmsdbgout_after_prologue): Remove.
+ * dwarf2out.c (dwarf2out_end_epilogue): Add line and file args.
+ (dwarf2_debug_hooks): Update end_prologue.
+ * dwarfout.c (dwarfout_end_epilogue): Add line and file args.
+ (dwarfout_end_prologue): Add file arg.
+ * final.c (vmsdbgout_after_prologue): Remove
+ (final_end_function): Update end_epilogue call.
+ (final_scan_insn): Update end_prologue call.
+ * sdbout.c (sdbout_end_epilogue): Add line and file args.
+ (sdbout_end_prologue): Add file arg.
+ (sdb_debug_hooks): Update end_prologue.
+ (sdb_begin_prologue): Update sdbout_end_prologue call.
+ * vmsdbgout.c (vmsdbg_debug_hooks): Add vmsdbgout_end_prologue,
+ vmsdbgout_end_function.
+ (vmsdbgout_end_prologue): New function renamed from
+ vmsdbgout_after_prologue. Call vmsdbgout_source_line.
+ (vmsdbgout_end_function): New function.
+ (vmsdbgout_end_epilogue): Add line and file args. Call
+ vmsdbgout_source_line.
+ (write_pclines): Write only valid line numbers.
+ (write_srccorr): Don't write source correlation records if 0 lines.
+ * xcoffout.c (xcoffout_end_epilogue): Add line and file args.
+
+2002-08-15 Steve Ellcey <sje@cup.hp.com>
+
+ * gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX.
+ (_Unwind_Internal_Ptr): 32 bit version for use in
+ read_encoded_value_with_base.
+ * gcc/unwind-pe.h (read_encoded_value_with_base): Use
+ _Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the
+ right size.
+
+2002-08-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * loop.c (scan_loop, move_movables, count_one_set): Cast to avoid
+ signed/unsigned warnings.
+
+ * regclass.c (init_reg_sets_1, choose_hard_reg_mode,
+ record_reg_classes): Likewise.
+
+ * reload.c (reload_inner_reg_of_subreg, push_reload,
+ find_reloads_address_1): Likewise.
+
+2002-08-15 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (output_mi_thunk): Return to function section on
+ TARGET_ELF.
+
+ * rs6000-c.c (rs6000_cpu_cpp_builtins): Define __PPC405__ if PPC405.
+
+2002-08-15 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (legitimize_address): Optimize loading
+ of large displacements.
+
+2002-08-14 Douglas B Rupp <rupp@gnat.com>
+
+ * config/alpha/alpha-protos.h: Update.
+
+ * config/alpha/alpha.c: (LINKAGE_SYMBOL_REF_P): New macro.
+ (alpha_legitimate_address_p): Test LINKAGE_SYMBOL_REF_P.
+ (alpha_linkage_symbol_p): New static function.
+ (print_operand_address): Print linkage operand.
+
+ (alpha_funcs_num, alpha_funcs_tree, alpha_links_tree): New static
+ variables.
+ (reloc_kind): New enum.
+ (struct alpha_funcs): New struct.
+ (struct alpha_links): Add reloc_kind field. Rename links_kind field.
+
+ (alpha_need_linkage): Rewrite.
+ (alpha_use_linkage): New global function.
+ (alpha_write_linkage): Rewrite and make static.
+ (alpha_write_one_linkage): Rewrite
+
+ (alpha_start_function): Remove procedure descriptor output.
+ (alpha_end_function): Write linkages at end of each function.
+
+ * config/alpha/alpha.md (call_vms, call_value_vms): Rewrite.
+ (call_vms_1, call_value_vms_1): Rewrite.
+
+ * config/alpha/vms.h (ASM_FILE_END): Remove.
+
+2002-08-14 Richard Henderson <rth@redhat.com>
+
+ * ggc-page.c (RTL_SIZE): New.
+ (extra_order_size_table): Add specializations for 2 and 10 rtl slots.
+ * rtl.def (BARRIER, NOTE): Pad to 9 slots.
+
+2002-08-14 Richard Henderson <rth@redhat.com>
+
+ * calls.c: Include target.h.
+ * Makefile.in (calls.o): Update.
+
+ * config/alpha/alpha.c (alpha_end_function): Use targetm.binds_local_p.
+ * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
+
+2002-08-14 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (LOOSE_WARN): Add -fno-common.
+ * c-common.h (constant_string_class_name): Add missing extern.
+
+2002-08-15 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/7358
+ * c-opts.c (check_deps_environment_vars): Ignore main file
+ for SUNPRO_DEPENDENCIES.
+ * cppfiles.c (stack_include_file): Ignore main file if
+ appropriate.
+ * cpplib.h (struct cpp_options): New member in deps.
+ * doc/cppenv.texi: Update.
+
+2002-08-14 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/7526
+ * cpplib.c (run_directive): Kludge so _Pragma dependency works.
+
+2002-08-14 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/invoke.texi (-a): Remove documentation.
+ (-fprofile-arcs): Remove reference to -a, -ax options.
+ * doc/gcov.texi (Gcov Data Files): Data might be merged.
+
+2002-08-14 Gabriel Dos Reis <gdr@nerim.net>
+
+ Fix PR/7566
+ * c-semantics.c (genrtl_case_label): Don't (mis)use
+ warning_with_decl.
+
+2002-08-14 Dale Johannesen <dalej@apple.com>
+
+ * explow.c (emit_stack_restore): Emit memory clobbers
+ preceding the stack pop, to prevent the scheduler from
+ moving refs to variable arrays below this pop.
+ * reload1.c (reload): Preserve these clobbers for sched2.
+ * doc/rtl.texi: Document clobber (mem:BLK (scratch)).
+
+2002-08-14 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (c_common_post_options): Correct test.
+
+2002-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * m88k.h (ASM_OUTPUT_SOURCE_FILENAME): Fix incorrect argument
+ order in call to fprintf.
+
+2002-08-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/sparc/sol2.h (SUBTARGET_EXTRA_SPECS): Define.
+
+2002-08-14 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * reload.c (find_reloads): Handle constraint letters marked by
+ EXTRA_ADDRESS_CONSTRAINT and EXTRA_MEMORY_CONSTRAINT.
+ (alternative_allows_memconst): Likewise.
+ * reload1.c (maybe_fix_stack_asms): Likewise.
+ * recog.c (asm_operand_ok, preprocess_constraints,
+ constrain_operands): Likewise.
+ * regclass.c (record_operand_costs, record_reg_classes): Likewise.
+ * local-alloc.c (block_alloc, requires_inout): Likewise.
+ * stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
+
+ * defaults.h (EXTRA_MEMORY_CONSTRAINT): Provide a default.
+ (EXTRA_ADDRESS_CONSTRAINT): Likewise.
+ * doc/tm.texi: Document these two new target macros.
+
+ * config/s390/s390.c (s390_expand_plus_operand): Accept already
+ valid operands.
+ (q_constraint): New function.
+ config/s390/s390-protos.h (q_constraint): Declare it.
+ config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
+ (EXTRA_MEMORY_CONSTRAINT): New macro.
+
+ * config/s390/s390.md: Throughout the machine description,
+ replace all instances of the constraint combinations 'Qo'
+ or 'oQ' with simply 'Q'.
+
+2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.h (LINK_SPEC): Support -mrelax.
+ * config/m68hc11/t-m68hc11-gas (LIBGCC2_DEBUG_CFLAGS): Can use -g now.
+ (LIBGCC2_CFLAGS): Compile with -mrelax.
+
+2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
+
+ * doc/invoke.texi: Document -minmax for 68HC12.
+
+ * config/m68hc11/m68hc11.md ("umaxqi3"): Use TARGET_MIN_MAX.
+ ("uminqi3"): Likewise.
+ ("uminhi3", "umaxhi3"): Likewise.
+
+ * config/m68hc11/m68hc11.h (MASK_MIN_MAX): Define.
+ (TARGET_MIN_MAX): Define.
+ (TARGET_SWITCHES): New option -minmax/-mnominmax.
+
+2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build __far_trampoline.
+ (MULTILIB_OPTIONS): Must also generate for -mlong-calls.
+
+ * config/m68hc11/larith.asm: Put a mode for ELF ABI flags.
+ (ret, declare, farsym): New gas macros.
+ (__premain, exit, abort, _cleanup, memcpy, memset, ___adddi3,
+ ___subdi3, ___notdi2, __mulhi32, __mulsi3): Use them to use 'rtc'
+ and declare the symbol far when compiled with -mlong-calls.
+ (__far_trampoline): New for 68HC12 trampoline code to invoke a
+ far handler using jsr/bsr.
+
+ * config/m68hc11/m68hc11-crt0.S: Put a mode for ELF ABI flags.
+ (jsr): New macro to transform a 'jsr' into a 'call'.
+
+2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
+
+ * doc/invoke.texi: Document -mlong-calls for 68HC12.
+
+ * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__USE_RTC__ when
+ -mlong-calls is specified.
+ (ASM_DECLARE_FUNCTION_NAME): Define to generate .far and .interrupt
+ assembler directives.
+ (TARGET_LONG_CALL, MASK_LONG_CALL): Declare.
+ (TARGET_SWITCHES): Add -mlong-calls options.
+ (current_function_far): Declare.
+
+ * config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset): Take
+ into account the page register saved on the stack.
+ (m68hc11_override_options): Take into account -mlong-calls option.
+ (m68hc11_asm_file_start): Put a mode for the ELF flags ABI.
+
+ * config/m68hc11/m68hc11.md ("*return_32bit"): Return rtc
+ if the function is going to be in 68HC12 banked memory (-mlong-calls).
+ ("*return_16bit"): Likewise.
+ ("*return_void"): Likewise.
+ ("call", "call_value"): Use call for a far function call.
+
+2002-08-14 Neil Booth <neil@daikokuya.co.uk>
+
+ * toplev.c (parse_options_and_default_flags): Don't call
+ post_options here.
+ (general_init): Initialize GC, pools and tree hash here,
+ instead of lang_independent_init.
+ (lang_independent_init): Rename backend_init.
+ (do_compile): Call post_options hook; exit early if there
+ have been errors after switch processing.
+ (toplev_main): Update.
+
+2002-08-14 Gabriel Dos Reis <gdr@nerim.net>
+
+ * c-pretty-print.h: Guard against multiple inclusion.
+ Robustify macros.
+ (pp_c_attributes): Declare.
+ * c-pretty-print.c (pp_c_attributes): New function.
+
+2002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * m68k.c (m68k_output_function_prologue,
+ m68k_output_function_epilogue): Delete versions for DPX2/MOTOROLA
+ and NEWS/MOTOROLA.
+ * genattrtab.c: Remove dpx2 comment.
+ * libgcc2.c (__enable_execute_stack): Delete versions for
+ NeXT/__MACH__, __convex__, __sysV88__, __pyr__ and
+ sony_news/SYSTYPE_BSD.
+ * longlong.h: Delete code for __a29k__, _AM29K, __clipper__,
+ __gmicro__, __i860__, __NeXT__ and __pyr__.
+ * rtl.h: Remove convex comment.
+ * varasm.c: Likewise.
+
+2002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-opts.c (lang_flags): Const-ify.
+ * ra-build.c (undef_table): Likewise.
+ * ra.c (eliminables): Likewise.
+
+2002-08-14 Gabriel Dos Reis <gdr@nerim.net>
+
+ * tree.h: Guard against multiple inclusion.
+
+2002-08-14 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * reload1.c (reload_cse_simplify): Before checking
+ REG_FUNCTION_VALUE_P, check REG_P.
+
+2002-08-13 Geoffrey Keating <geoffk@redhat.com>
+
+ * Makefile.in (attribs.o): Remove $(OBSTACK_H) dependency.
+
+2002-08-13 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (c_common_init_options): Extra braces needed.
+
+Tue Aug 13 17:40:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (sh_init_builtins): Add PARAMS to declaration.
+ (sh_media_init_builtins, sh_expand_builtin): Likewise.
+ (sh_expand_unop_v2sf): Use PARAMS for variable declaration.
+ (sh_expand_binop_v2sf): Likewise.
+ * sh-protos.h (sh_expand_unop_v2sf): Add PARAMS to declaration.
+ (sh_expand_binop_v2sf, sh_cfun_interrupt_handler_p): Likewise.
+ (sh_initialize_trampoline): Likewise.
+
+2002-08-13 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * s390-modes.def [CCL1, CCL2, CCT1, CCT2, CCT3, CCUR, CCSR]: Declare
+ new condition code modes.
+ s390.c (s390_match_ccmode_set): Handle those new CC modes.
+ (s390_select_ccmode): Likewise.
+ (s390_branch_condition_mask): Likewise.
+
+ * s390-protos.h (s390_tm_ccmode): Declare.
+ s390.c (s390_tm_ccmode): New function.
+ (s390_match_ccmode): Allow VOIDmode as REQ_MODE.
+
+ * s390.md ("*cmpdi_tm2"): Rename to "*tmdi_ext".
+ ("*cmpsi_tm2"): Rename to "*tmsi_ext".
+ ("*cmpqi_tm2"): Rename to "*tmqi_ext".
+
+ ("*cmpdi_tm_reg", "*cmpdi_tm_mem", "*cmpsi_tm_reg", "*cmpsi_tm_mem",
+ "*cmphi_tm_sub","*cmphi_cct_0", "*cmpqi_tm", "*cmpqi_tm_sub",
+ "*cmpqi_cct_0", "*tm_0"): Remove, replace by ...
+ ("*tmdi_reg", "*tmsi_reg", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem",
+ "*tmqi_mem", "*tmhi_full", "*tmqi_full"): ... these new patterns.
+
+ ("*ltgr", "*cmpdi_ccs_0_64", "*cmpdi_ccs_0_31", "*ltr", "*icm15",
+ "*icm15_cconly", "*cmpsi_ccs_0", "*icm3", "*cmphi_ccs_0", "*icm1",
+ "*cmpqi_ccs_0"): Remove, replace by ...
+ ("*tstdi_sign", "*tstdi", "*tstdi_cconly", "*tstdi_cconly_31",
+ "*tstsi", "*tstsi_cconly", "*tstsi_cconly2", "*tsthi", "*tsthi_cconly",
+ "*tstqi", "*tstqi_cconly"): ... these new patterns.
+
+ ("*cmpsidi_ccs"): Remove, replace by ...
+ ("*cmpsi_ccs_sign"): ... this new pattern.
+ ("*cmpdi_ccs_sign", "*cmpdi_ccu_zero"): New patterns.
+
+ ("*cmpqi_ccu_0", "*cmpqi_ccu_immed"): Remove, replace by ...
+ ("*cli"): ... this new pattern.
+
+ ("*adddi3_sign", "*adddi3_zero_cc", "*adddi3_zero_cconly",
+ "*adddi3_zero", "*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2"):
+ New patterns.
+ ("adddi3_64"): Rename to "*adddi3_64".
+ ("adddi3_31"): Replace by insn and splitter "*adddi3_31".
+ ("adddi3"): Adapt expander.
+
+ ("*addsi3_cc"): Allow "general_operand" for operand 2.
+ ("*addsi3_carry1_cc", "*addsi3_carry1_cconly",
+ "*addsi3_carry2_cc", "*addsi3_carry2_cconly"): New patterns.
+
+ ("addhi3", "addqi3"): Remove, replace by ...
+ ("*addsi3_sign", "*addsi3_sub"): ... these new patterns.
+
+ ("*subdi3_sign", "*subdi3_zero_cc", "*subdi3_zero_cconly",
+ "*subdi3_zero", "*subdi3_cc", "*subdi3_cconly"): New patterns.
+ ("subdi3"): Replace by insn and splitter "*subdi3_31".
+ ("subdi3"): New expander.
+
+ ("*subsi3_borrow_cc", "*subsi3_borrow_cconly"): New patterns.
+
+ ("subhi3", "subqi3"): Remove, replace by ...
+ ("*subsi3_sign", "*subsi3_sub"): ... these new patterns.
+
+ ("*muldi3_sign"): New pattern.
+ ("muldi3"): Do not clobber CC.
+ ("mulsi3"): Likewise.
+ ("mulsi_6432"): Likewise.
+
+2002-08-13 Denis Chertykov <denisc@overta.ru>
+
+ * config/avr/avr.md: Call CC_STATUS_INIT in all peepnoles
+ which can change CC0.
+
+Tue Aug 13 14:49:20 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * gcse.c (adjust_libcall_notes): New function.
+ (do_local_cprop): Use it. Add fourth parameter. Changed caller.
+
+2002-08-13 Nathan Sidwell <nathan@codesourcery.com>
+
+ * libgcc2.c (L_bb): Remove unneeded #includes.
+ (__global_counters, __gthreads_active): Remove unused globals.
+ (__bb_exit_func): Merge counts into files rather than appending.
+ * Makefile.in (INTERNAL_CFLAGS): Move COVERAGE_FLAGS from here ...
+ (ALL_CFLAGS): ... to here.
+
+2002-08-13 Denis Chertykov <denisc@overta.ru>
+
+ * config/ip2k/ip2k.c (commands_in_file): Variable removed.
+ (function_epilogue): Don't calculate function size.
+ (ip2k_set_compare): Don't use lookup_const_double.
+ (asm_file_start): Initialization of commands_in_file removed.
+ (asm_file_end): Output of commands_in_file removed.
+
+ * config/ip2k/ip2k.c (CPP_PREDEFINES): Remove definition of
+ __INT_MAX__.
+
+2002-08-13 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (c_common_init_options): Check option array is
+ sorted if checking enabled.
+
+2002-08-13 Gabriel Dos Reis <gdr@nerim.net>
+
+ * c-pretty-print.c: #include "c-tree.h".
+ (pp_c_simple_type_specifier): Tweak.
+ (pp_c_storage_class_specifier): New.
+ (pp_c_function_specifier): Likewise.
+ (pp_c_declaration_specifiers): Likewise.
+ (pp_c_init_declarator): Likewise.
+ (pp_c_declaration): Likewise.
+ (pp_c_direct_declarator): Stub.
+ (pp_c_declarator): Likewise.
+ (pp_c_parameter_declaration): Likewise.
+
+2002-08-13 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (deps_seen, deps_file, deferred_count, deferred_size,
+ handle_deferred_opts, sanitize_cpp_opts, defer_opt,
+ struct deferred_opt): New.
+ (COMMAND_LINE_OPTIONS): Add -M*.
+ (missing_arg): Update.
+ (c_common_decode_option): Handle -M*.
+ (c_common_post_options): Handle -M*. Use sanitize_cpp_opts;
+ don't call cpp_post_options.
+ (c_common_finish, check_deps_environment_vars): Update.
+ * cppfiles.c (stack_include_file, handle_missing_header): Update.
+ * cpphash.h (CPP_PRINT_DEPS): Remove.
+ * cppinit.c: Don't include version.h.
+ (cpp_create_reader): Don't call deps_init. Initialize
+ warn_long_long.
+ (cpp_read_main_file): Init deps if necessary.
+ (cpp_destroy): Conditionally free deps.
+ (cpp_finish): Update.
+ (no_tgt): Remove.
+ (COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*.
+ (cpp_post_options): Rename post_options.
+ * cpplib.h (struct cpp_options): Remove some dependency options;
+ move others to a new structure.
+ (cpp_post_options): Remove.
+ (cpp_finish): Comment.
+ * fix-header.c (read_scan_file): Don't call cpp_post_options.
+
+2002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix.md (define_constants): Add MMIX_rR_REGNUM.
+ ("divdi3", "*divdi3_nonknuth", "moddi3", "*moddi3_nonknuth"): Mark
+ MMIX_rR_REGNUM as clobbered.
+ * config/mmix/mmix.h (MMIX_REMAINDER_REGNUM): Use MMIX_rR_REGNUM.
+
+2002-08-12 Gabriel Dos Reis <gdr@nerim.net>
+
+ * diagnostic.h (output_formatted_scalar): Rename from
+ output_formatted_integer.
+ * diagnostic.def: Add DK_DEBUG.
+ * diagnostic.c (output_decimal): Adjust.
+ (output_long_decimal): Likewise.
+ (output_unsigned_decimal): Likewise.
+ (output_octal): Likewise.
+ (output_long_octal): Likewise.
+ (output_hexadecimal): Likewise.
+ (output_long_hexadecimal): Likewise.
+ * c-pretty-print.c (pp_c_type_specifier): New function.
+ (pp_c_specifier_qualifier_list): Likewise.
+ (pp_c_abstract_declarator): Likewise.
+ (pp_c_char): Replace pp_format_integer with pp_format_scalar.
+
+2002-08-12 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/trouble.texi (Disappointments): Add static constructor and
+ destructor dependency information for AIX.
+
+2002-08-12 Neil Booth <neil@daikokuya.co.uk>
+
+ * cpphash.h (struct printer): New from cppmain.c.
+ (cpp_reader): New member.
+ * cppmain.c (struct printer): Move to cpphash.h.
+ (options, print): Remove.
+ (account_for_newlines, print_line, maybe_print_line,
+ cpp_preprocess_file, setup_callbacks, scan_translation_unit,
+ scan_translation_unit_trad, cb_line_change, cb_ident,
+ cb_define, cb_undef, cb_include, cb_file_change, dump_macro,
+ cb_def_pragma): Make reentrant.
+
+2002-08-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * real.c (ieee_64): Always define.
+ (ieee_113): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
+ (dec_h): Not used yet, hide it.
+ (emdnorm): Mark parameter in ATTRIBUTE_UNUSED. Guard label with
+ macro controlling use.
+ (TFbignan, TFlittlenan): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
+
+Mon Aug 12 12:48:20 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (tablejump): Sign extend the operand.
+ * i386.c (classify_argument): Fix missed case from previous patch.
+
+2002-08-12 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move
+ to c-copts.c.
+ (warn_multichar): Die.
+ (cb_register_builtins): Export.
+ * c-common.h (warn_multichar, preprocess_file): Remove.
+ (cb_register_builtins): New.
+ * c-lang.c (c_init): Remove.
+ (LANG_HOOKS_INIT): Use c_objc_common_init.
+ * c-lex.c (init_c_lex): Don't canonicalize filename.
+ * c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New.
+ (preprocess_file): Make static. Update for cpplib.
+ (c_common_decode_option): Remove warn_multichar. Use in_fname.
+ (c_common_post_options): Set some cpp options here.
+ (c_common_init): Move from c-common.c.
+ * cppinit.c (cpp_post_options): Don't canonicalize in_fname.
+ * cpplib.h (struct cpp_options): Remove in_fname.
+ (cpp_preprocess_file): Update.
+ * cppmain.c (cpp_preprocess_file): Update for new prototypes.
+
+2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config.gcc (mips*-*-netbsd*): Include ${tm_file}.
+
+2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * i370.h (TARGET_CPU_CPP_BUILTINS): Remove spurious trailing
+ backslash in comment preceeding macro definition.
+ * i370/linux.h (TARGET_OS_CPP_BUILTINS): Likewise.
+ * i370/mvs.h (TARGET_OS_CPP_BUILTINS): Likewise.
+ * i370/oe.h (TARGET_OS_CPP_BUILTINS): Likewise.
+
+2002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * expr.c (store_expr): In condition for checking if value is
+ generated in TARGET, move call to expr_size last.
+
+2002-08-11 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.c (c_common_init): Call preprocess_file instead.
+ (c_common_finish): Move to c-opts.c.
+ * c-common.h (preprocess_file): new.
+ * c-opts.c (out_fname, out_stream, deps_append, preprocess_file,
+ check_deps_environment_vars, c_common_finish): New.
+ (c_common_decode_option): Update for out_fname and dependencies.
+ * cppinit.c (init_dependency_output, output_deps): Remove.
+ (cpp_destroy): Update prototype.
+ (cpp_add_dependency_target): New.
+ (cpp_read_main_file): Don't overlay a buffer.
+ (cpp_finish): Take a deps output stream and write deps to it.
+ Return the error count.
+ (cpp_post_options): Don't canonicalize out_fname, or do anything
+ with dependencies.
+ * cpplib.h (struct cpp_options): Remove out_fname and
+ preprocess_only.
+ (cpp_add_dependency_target): New.
+ (cpp_destroy, cpp_finish, cpp_preprocess_file): Update.
+ * cppmain.c (cpp_preprocess_file): Update prototype. Don't
+ set preprocess_only. Don't handle the output stream directly.
+
+2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dsp16xx.c (print_operand): Fix format specifier.
+ * dsp16xx.md: Avoid automatic aggregate initialization.
+ * frv.h (REG_CLASS_FROM_LETTER): Avoid char as array index.
+ * h8300.c (emit_a_rotate, h8300_adjust_insn_length): Avoid U
+ integer constant modifier.
+ * ip2k.c (ip2k_set_compare): Avoid signed/unsigned warning.
+ * mmix-protos.h (mmix_use_simple_return): Move outside TREE_CODE
+ guards.
+ * sh/netbsd-elf.h (FUNCTION_PROFILER): Fix format specifier.
+ * v850.c (v850_select_section): Mark parameter with
+ ATTRIBUTE_UNUSED.
+ * global.c (global_alloc): Const-ify.
+ * ra-colorize.c (hardregset_to_string): Fix format specifier.
+
+2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * darwin-c.c (darwin_pragma_options): Const-ify.
+ * darwin.c (machopic_non_lazy_ptr_name,
+ machopic_validate_stub_or_non_lazy_ptr): Likewise.
+ (machopic_indirect_data_reference): Wrap variables in macros
+ controlling their use.
+ (machopic_finish, update_non_lazy_ptrs, update_stubs): Const-ify.
+ (machopic_select_section): Use parentheses around && within ||.
+ * i386/darwin.h (ASM_OUTPUT_ALIGN): Avoid ambiguous-else.
+
+2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ip2k.c (mdr_resequence_xy_yx, mdr_propagate_reg_equivs,
+ mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
+ ip2k_adjust_stack_ref, mdr_try_move_pushes, mdr_try_propagate_clr,
+ ip2k_xexp_not_uses_reg_for_mem, mdr_try_propagate_move,
+ mdr_try_remove_redundant_insns, track_w_reload,
+ mdr_try_wreg_elim): Make function static to match prototype.
+ * mmix.c (mmix_target_asm_function_epilogue): Likewise. Mark
+ parameter with ATTRIBUTE_UNUSED.
+
+2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * arc.c (arc_init): Don't use ISO C style function definitions.
+ * arm.c (count_insns_for_constant, thumb_far_jump_used_p,
+ arm_get_strip_length, arm_strip_name_encoding): Likewise.
+ * avr.h (progmem_section): Likewise.
+ * h8300.c h8300_asm_insn_count): Likewise.
+ * m32r.c (init_idents): Likewise.
+ * s390.c (s390_split_branches, s390_chunkify_pool): Likewise.
+ * sh.c (sh_cfun_interrupt_handler_p): Likewise.
+ * xtensa.c (xtensa_build_va_list): Likewise.
+
+2002-08-11 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.h (enum c_language_kind): Emphasize that clk_c is 0.
+ * c-opts.c (parse_option): Rename find_opt.
+ (set_std_c99): New function.
+ (COMMAND_LINE_OPTIONS): Handle -remap and -o. Remove OPT_std_bad.
+ (missing_arg): Remove OPT_std_bad. Handle -o.
+ (c_common_decode_option): Handle input and output file names,
+ -o and -remap. Clean up -std= handling.
+ * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_o and OPT_remap.
+ (cpp_handle_option): Similarly. Don't handle filenames.
+
+Sun Aug 11 14:43:17 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (classify_argument): Fix computing of field's offsets.
+
+2002-08-11 Andreas Jaeger <aj@suse.de>
+
+ PR target/7531:
+ * doc/invoke.texi (i386 and x86-64 Options): Document -mcmodel.
+
+2002-08-10 Ziemowit Laski <zlaski@apple.com>
+
+ * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Replace
+ reference to clk_objective_c with flag_objc.
+ * config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS):
+ Likewise.
+ * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Likewise.
+
+2002-08-10 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (set_std_cxx98, set_std_c89): New.
+ (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
+ (c_common_decode_option): Handle new switches from cppinit.c.
+ Add -std=gnu++98.
+ * cppinit.c (set_lang): Rename cpp_set_lang. Export.
+ (no_arg, no_num): Remove.
+ (COMMAND_LINE_OPTIONS): Move more to c-opts.c. Drop all lang-
+ switches apart from -lang-objc and lang-asm.
+ (cpp_handle_option): Similarly.
+ * cpplib.h (cpp_set_lang): New.
+ * doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
+ -std=gnu++98.
+ * objc/lang-specs.h: Remove -ansi.
+
+Sat Aug 10 19:59:43 CEST 2002 Jan Hubicka <jh@suse.cz>
+ Graham Stott
+
+ * cfg.c (redirect_edge_succ_nodup): Avoid overflows due to roundoff
+ errors.
+
+2002-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * emit-rtl.c (emit_jump_insn_before, emit_call_insn_before,
+ emit_jump_insn): Fix uninitialized variable.
+ * gcov.c (init_line_info): Likewise.
+ * genautomata.c (transform_3): Add braces around ambiguous
+ else.
+ * ifcvt.c (cond_exec_process_insns): Mark parameter with
+ ATTRIBUTE_UNUSED.
+ * ra-build.c (parts_to_webs_1): Fix uninitialized variable.
+ * regrename.c (copyprop_hardreg_forward): Fix uninitialized
+ variable.
+
+ * gengtype.c (write_gc_structure_fields): Avoid signed/unsigned
+ warnings in output files.
+
+2002-08-09 Ziemowit Laski <zlaski@apple.com>
+
+ * c-common.c (flag_objc): New.
+ * c-common.h (c_language_kind): Get rid of clk_objective_c
+ enum value.
+ (flag_objc): New extern declaration.
+ * c-decl.c (implicitly_declare): Call objc_check_decl
+ instead of maybe_objc_check_decl.
+ (finish_decl): Likewise.
+ (grokfield): Likewise.
+ (finish_struct): Likewise.
+ * c-lang.c (maybe_objc_check_decl): Rename to objc_check_decl.
+ (maybe_objc_comptypes): Rename to objc_comptypes.
+ (maybe_building_objc_message_expr): Rename to
+ objc_message_selector.
+ * c-lex.c (lex_charconst): Remove uses of clk_objective_c,
+ replace with flag_objc as needed.
+ * c-opts.c (c_common_init_options): Likewise.
+ (c_common_decode_option): Likewise.
+ * c-parse.in (init_reswords): Likewise.
+ * c-tree.h (maybe_objc_check_decl): Rename to objc_check_decl.
+ (maybe_objc_comptypes): Rename to objc_comptypes.
+ (maybe_building_objc_message_expr): Rename to
+ objc_message_selector.
+ * c-typeck.c (comptypes): Call objc_comptypes instead of
+ maybe_objc_comptypes, and/or objc_message_selector instead of
+ maybe_building_objc_message_expr.
+ (comp_target_types): Likewise.
+ (convert_for_assignment): Likewise.
+ (warn_for_assignment): Likewise.
+ * cppinit.c (init_builtins): Set __OBJC__ manifest constant
+ independently of those for other languages.
+ * objc/objc-act.c (maybe_objc_comptypes): Delete.
+ (maybe_objc_check_decl): Delete.
+ (maybe_building_objc_message_expr): Rename to
+ objc_message_selector.
+ * objc/objc-lang.c (objc_init_options): Use clk_c instead of
+ clk_objective_c; set flag_objc flag.
+
+2002-08-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
+
+ * ifcvt.c (find_if_case_2): Test correct basic block for size.
+
+2002-08-09 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.md: Add sibcall patterns.
+ * config/rs6000/rs6000.h (FUNCTION_OK_FOR_SIBCALL): Define.
+ * config/rs6000/rs6000.c (rs6000_ra_ever_killed):
+ Rewritten to handle sibcalls.
+ * config/rs6000/rs6000.c (function_ok_for_sibcall): New.
+ * config/rs6000/rs6000-protos.h (function_ok_for_sibcall): New.
+
+2002-08-08 Nathan Sidwell <nathan@codesourcery.com>
+
+ * profile.c (da_file_name): New static var.
+ (init_branch_prob): Initialize it.
+ (end_branch_prob): Remove da file.
+
+ * Makefile.in (stage1_build): Pass empty COVERAGE_FLAGS.
+ * configure.in (coverage_flags): Default to nothing.
+ * configure: Rebuilt.
+
+2002-08-09 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in (c-opts.o): Update
+ * c-opts.c: Include intl.h.
+ (print_help): Move from cppinit.c. Remove unused options.
+ (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
+ (missing_arg): Complain for switches without an argument.
+ (c_common_decode_option): Reject missing joined arguments.
+ Handle new switches from cppinit.c.
+ * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
+ (cpp_handle_option): Similarly.
+ (print_help): Moved to c-opts.c.
+ * cpplib.h (struct cpp_options): Remove help_only.
+ * gcc.c (cpp_unique_options): Remove -$.
+ * doc/cppopts.texi: Undocument -h.
+
+2002-08-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (legitimate_constant_p): UNSPEC_TP is not
+ legitimate constant.
+ (legitimate_pic_operand_p): Neither pic operand.
+ (legitimate_address_p): But legitimate address.
+ (get_thread_pointer): Generate MEM/u instead of CONST around
+ UNSPEC_TP.
+ (print_operand): Remove printing of UNSPEC_TP.
+ (print_operand_address): And print it here.
+
+2002-08-08 Devang Patel <dpatel@apple.com>
+
+ * objc/objc-act.c (build_selector_translation_table): Issue warning,
+ when -Wselector is used,if method for which selector is being
+ created does not exist.
+
+2002-08-08 Stephen Clarke <stephen.clarke@superh.com>
+
+ * config/sh/sh.c (prepare_move_operands): Only call
+ target_reg_operand if TARGET_SHMEDIA.
+
+2002-08-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000.h, config/rs6000/aix.h,
+ config/rs6000/darwin.h, config/rs6000/linux64.h: Revert last
+ two patches.
+ * config/rs6000/sysv4.h: Likewise, remove #undef ADJUST_FIELD_ALIGN.
+
+2002-08-08 Lars Brinkhoff <lars@nocrew.org>
+ Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (gen_rtx_REG): After reload, only return
+ frame_pointer_rtx or hard_frame_pointer_rtx if frame_pointer_needed.
+
+2002-08-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove.
+ * config/rs6000/rs6000.c (rs6000_field_alignment): Move...
+ * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the
+ macro.
+
+2002-08-08 Adam Nemet <anemet@lnxw.com>
+
+ * config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC
+ register.
+ (thumb_expand_prologue): Likewise.
+ (thumb_output_function_prologue): Likewise.
+ * config/arm/arm.h (THUMB_INITIAL_ELIMINATION_OFFSET): Account for
+ the additional push of the PIC register.
+
+2002-08-08 Nathan Sidwell <nathan@codesourcery.com>
+
+ * configure.in (enable_coverage): New enable switch.
+ * configure: Rebuilt.
+ * Makefile.in (COVERAGE_FLAGS, coverageexts): New variables.
+ (INTERNAL_CFLAGS): Append COVERAGE_FLAGS.
+ (ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS.
+ (mostlyclean): Remove coverage files.
+ * doc/install.texi: Document enable_coverage.
+
+ * cp/Make-lang.in (c++.mostlyclean): Remove coverage files.
+ * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
+ * f/Make-lang.in (f.mostlyclean): Remove coverage files.
+ * java/Make-lang.in (java.mostlyclean): Remove coverage files.
+ * objc/Make-lang.in (objc.mostlyclean): Remove coverage files.
+ * treelang/Make-lang.in (treelang.mostlyclean): Remove coverage
+ files.
+
+2002-08-08 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (cpp_opts): New.
+ (COMMAND_LINE_OPTIONS): Add switches from cppinit.c.
+ (c_common_decode_options): Handle cpplib switches.
+ (c_common_init_options): Set cpp_opts.
+ * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
+ (cpp_handle_option): Similarly.
+
+2002-08-08 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/aix.h (TARGET_ALTIVEC): Define to 0.
+ (TARGET_ALTIVEC_ABI): Same.
+ (TARGET_ALTIVEC_VRSAVE): Same.
+
+ * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Check
+ icode not CODE_FOR_nothing. Change switch to if.
+
+2002-08-08 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.h (ASM_CPU_SPEC): Pass -mpower4 when cpu=power4.
+
+2002-08-08 Jakub Jelinek <jakub@redhat.com>
+
+ * stor-layout.c (place_union_field): For bitfields if
+ PCC_BITFIELD_TYPE_MATTERS and TYPE_USER_ALIGN, set record's
+ TYPE_USER_ALIGN.
+
+2002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (struct deferred_plabel): Constify name field.
+
+2002-08-07 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppmacro.c (_cpp_builtin_macro_text): Remove unused variable.
+
+2002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * configure.in (PREFIX_INCLUDE_DIR): Don't define if prefix and
+ local_prefix are the same.
+ * configure: Rebuilt.
+
+2002-08-07 Jakub Jelinek <jakub@redhat.com>
+ Richard Henderson <rth@redhat.com>
+
+ * stor-layout.c (place_union_field): Apply ADJUST_FIELD_ALIGN
+ to type_align when PCC_BITFIELD_TYPE_MATTERS. Only apply
+ ADJUST_FIELD_ALIGN if not DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
+ (place_field): Likewise.
+ * config/i386/i386.c (x86_field_alignment): Don't check
+ DECL_USER_ALIGN here.
+ * config/rs6000/rs6000.c (rs6000_field_alignment): New.
+ * config/rs6000/rs6000-protos.h (rs6000_field_alignment): New
+ prototype.
+ * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): Define.
+ * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Remove.
+ * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Remove.
+ * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Remove.
+ * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Remove.
+ * doc/tm.texi (ADJUST_FIELD_ALIGN): Update description.
+
+2002-08-07 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update.
+ * c-common.c: Don't include tree-inline.h.
+ (c_common_init_options, c_common_post_options): Move to c-opts.c.
+ * c-common.h (c_common_decode_option): New.
+ * c-decl.c (c_decode_option): Remove.
+ * c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
+ * c-opts.c: New file.
+ * c-tree.h (c_decode_option): Remove.
+ * doc/passes.texi: Update.
+ * objc/objc-act.c (objc_decode_option): Remove.
+ * objc/objc-act.h (objc_decode_option): Remove.
+ * objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use
+ c_common_decode_option.
+
+2002-08-07 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md (sunlt_sf, suneq_sf, sunle_sf): Remove
+ dependency on TARGET_DOUBLE_FLOAT.
+
+2002-08-07 Stephen Clarke <stephen.clarke@superh.com>
+
+ * config/sh/lib1funcs.asm (GCC_shcompact_incoming_args): Don't
+ overwrite callee-save registers. Fix comment.
+
+2002-08-06 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.c (override_options): Set MASK_BRANCHLIKELY
+ in target_flags based on ISA, if it was not set on the command
+ line. Warn if MASK_BRANCHLIKLEY is set but the ISA does not
+ support Branch Likely instructions.
+ * config/mips/mips.h (MASK_BRANCHLIKLEY): New macro.
+ (TARGET_BRANCHLIKELY): Likewise.
+ (TARGET_SWITCHES): Add -mbranch-likely and -mno-branch-likely.
+ (GENERATE_BRANCHLIKELY): Use TARGET_BRANCHLIKELY rather than
+ ISA_HAS_BRANCHLIKELY.
+ (ISA_HAS_BRANCHLIKELY): Do not include MIPS16 check.
+ * doc/invoke.texi: Document new MIPS -mbranch-likely and
+ -mno-branch-likely options.
+
+2002-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ip2k.c (ip2k_set_compare): Add missing iteration variable.
+
+ * Makefile.in (dummy-conditions.o): Depend on $(HCONFIG_H) not
+ $(GCONFIG_H).
+
+2002-08-06 Aldy Hernandez <aldyh@redhat.com>
+
+ * c-decl.c (duplicate_decls): Error out for incompatible TLS
+ declarations.
+
+ * testsuite/gcc.dg/tls/diag-3.c: New.
+
+2002-08-06 Dale Johannesen <dalej@apple.com>
+
+ * c-common.c (fname_decl): Use line number 0 for
+ __func__, to avoid confusing debuggers.
+
+2002-08-06 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcov.c: Tidy.
+ (struct line_info, struct coverage): New structures.
+ (gcov_file_name, gcov_file): Remove globals.
+ (output_data): Take source file parameter. Fix memory leak. Break
+ up into ...
+ (init_line_info, output_line_info, make_gcov_file_name,
+ accumulate_branch_counts): ... here.
+ (calculate_branch_probs, function_summary): Adjust.
+ (main): Adjust.
+ (function_*): Remove global variables.
+
+2002-08-06 Neil Booth <neil@daikokuya.co.uk>
+
+ * dwarf2out.c: Remove unused macros.
+
+2002-08-06 Neil Booth <neil@daikokuya.co.uk>
+
+ * function.c (TRAMPOLINE_ALIGNMENT): Always defined.
+
+2002-08-06 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppinit.c (struct lang_flags): Rename trigraphs std.
+ (set_lang): Update.
+ * cpplib.h (struct cpp_options): New member std.
+ * cppmacro.c (_cpp_builtin_macro_text): Use std.
+ (collect_args): Flag whether to swallow a possible future
+ comma pasted with varargs.
+ (replace_args): Use this flag.
+ * doc/cpp.texi: Update varargs extension documentation.
+
+2002-08-06 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/mmintrin.h (__m64): Make the type 64-bit aligned.
+
+2002-08-06 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (x86_field_alignment): Apply min for all MODE_INT
+ and MODE_CLASS_INT modes.
+
+2002-08-06 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (*-*-linux*): Default to --enable-threads=posix if no
+ --{enable,disable}-threads is given to configure.
+ (alpha*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux*,
+ x86_64-*-linux*, ia64*-*-linux*, m68k-*-linux*, mips*-*-linux*,
+ powerpc-*-linux-gnualtivec*, powerpc-*-linux*, s390-*-linux*,
+ s390x-*-linux*, sh-*-linux*, sparc-*-linux*, sparc64-*-linux*):
+ Remove thread_file setting here.
+
+2002-08-06 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi (Binaries): Update Bull Freeware URL.
+
+2002-08-06 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/gcc.texi (Top): Rename Index to Keyword Index.
+
+2002-08-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcov.c (output_data): Round to % to nearest, tweak formatting.
+
+2002-08-05 Jakub Jelinek <jakub@redhat.com>
+
+ * fold-const.c (associate_trees): Only optimize NEGATE_EXPR in one
+ of the operands into MINUS_EXPR if code is PLUS_EXPR.
+
+2002-08-05 Douglas B Rupp <rupp@gnat.com>
+
+ * config.gcc (i[34567]86-*-interix*): Replace interix.o with winnt.o
+ * config/i386/i386-interix.h (TARGET_NOP_FUN_DLLIMPORT,
+ drectve_section): Define.
+ * config/i386/t-interix: Replace interix.o rule with winnt.o.
+ * config/i386/interix.c: Remove.
+
+2002-08-05 Geoffrey Keating <geoffk@redhat.com>
+
+ * attribs.c: Don't include obstack.h.
+ * builtins.c: Likewise.
+ * cfganal.c: Likewise.
+ * cfgbuild.c: Likewise.
+ * cfgcleanup.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * loop.c: Likewise.
+ * stmt.c: Likewise.
+
+ * Makefile.in (s-gtype): Re-add dependency on $(GTFILES).
+
+2002-08-05 Gabriel Dos Reis <gdr@nerim.net>
+
+ * doc/c-tree.texi (Expression trees): Document VA_ARG_EXPR
+
+2002-08-04 Chris Demetriou <cgd@broadcom.com>
+
+ * doc/invoke.texi: Remove duplicated paragraph describing
+ TARGET_SWITCHES.
+
+2002-08-04 Geoffrey Keating <geoffk@redhat.com>
+
+ * Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H).
+ * collect2.h (permanent_obstack): Delete declaration.
+ * collect2.c (permanent_obstack): Delete definition.
+ (main): Don't initialize permanent_obstack. Use xstrdup instead.
+ * expr.c: Don't include obstack.h.
+ (permanent_obstack): Delete declaration.
+ * function.c: Don't include obstack.h.
+ (permanent_obstack): Delete declaration.
+ * integrate.c: Don't include obstack.h.
+ (function_maybepermanent_obstack): Delete declaration.
+ * print-tree.c (debug_tree): Use x*alloc not permalloc.
+ * sdbout.c (gen_fake_label): Use x*alloc not permalloc.
+ * tlink.c (pfgets): Use xstrdup not permanent_obstack.
+ * toplev.c (lang_independent_init): Rename init_obstacks to init_ttree.
+ * tree.h: Rename init_obstacks to init_ttree. Remove declarations
+ of permalloc, expralloc, perm_calloc.
+ * tree.c (permanent_obstack): Delete definition.
+ (init_ttree): Rename from init_obstacks.
+ (permalloc): Delete.
+ (perm_calloc): Delete.
+ (dump_tree_statistics): Don't print information about
+ permanent_obstack.
+ * varasm.c (assemble_start_function): Use xstrdup instead of
+ permalloc/strcpy.
+ (assemble_variable): Likewise.
+ * config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of
+ permalloc.
+ (unicosmk_add_extern): Likewise.
+ * config/c4x/c4x.c (c4x_external_ref): Likewise.
+ (c4x_global_label): Likewise.
+ * config/frv/frv.c (frv_encode_section_info): Likewise.
+ * config/i386/winnt.c (i386_pe_record_external_function): Likewise.
+ (i386_pe_record_exported_symbol): Likewise.
+ * config/mips/mips.c (mips_output_external): Likewise.
+ (mips_output_external_libcall): Likewise.
+ * config/pa/pa.c: (permanent_obstack): Delete declaration.
+ (output_call): Use ggc_strdup instead of allocating on
+ permanent_obstack.
+ * config/romp/romp.c: Include ggc.h.
+ (get_symref): Don't declare permanent_obstack, use ggc_strdup
+ intead of permanent_obstack.
+ * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat
+ instead of permalloc.
+ * config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc
+ instead of permalloc
+ * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat
+ instead of permalloc.
+ * config/vax/vax.c (vms_check_external): Use xmalloc instead of
+ permalloc.
+
+2002-08-04 Bernd Schmidt <bernds@redhat.com>
+
+ Contribute a port developed primarily by Michael Meissner,
+ Catherine Moore, and Richard Sandiford <rsandifo@redhat.com>.
+ * config.gcc: Add frv-elf target.
+ * config/frv/cmovd.c: New file.
+ * config/frv/cmovh.c: New file.
+ * config/frv/cmovw.c: New file.
+ * config/frv/frv-abi.h: New file.
+ * config/frv/frv-asm.h: New file.
+ * config/frv/frv-modes.def: New file.
+ * config/frv/frv-protos.h: New file.
+ * config/frv/frv.c: New file.
+ * config/frv/frv.h: New file.
+ * config/frv/frv.md: New file.
+ * config/frv/frvbegin.c: New file.
+ * config/frv/frvend.c: New file.
+ * config/frv/lib1funcs.asm: New file.
+ * config/frv/media.h: New file.
+ * config/frv/modi.c: New file.
+ * config/frv/t-frv: New file.
+ * config/frv/uitod.c: New file.
+ * config/frv/uitof.c: New file.
+ * config/frv/ulltod.c: New file.
+ * config/frv/ulltof.c: New file.
+ * config/frv/umodi.c: New file.
+ * config/frv/xm-frv.h: New file.
+
+ * config/frv/media.h: Removed again.
+
+2002-08-04 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcov.c (bb_file_time): New static variable.
+ (object_directory): May also be object file.
+ (preserve_paths): New static variable.
+ (print_usage): Adjust.
+ (options): Adjust.
+ (process_args): Adjust.
+ (open_files): Simplify. Cope when OBJECT_DIRECTORY is an object
+ file. Find modification date on bb file.
+ (read_profile): Don't rewind a NULL file.
+ (format_hwint): New static function.
+ (function_summary): Use format_hwint.
+ (output_data): SOURCE_FILE_NAME is never relative to
+ OBJECT_DIRECTORY. Use format_hwint. Adjust gcov file name
+ mangling. Adjust output format to make it more machine readable.
+ * doc/gcov.texi: Document & clarify semantics.
+
+2002-08-04 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/include/gcc-common.texi (version-GCC): Increase to 3.3.
+
+2002-08-04 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcc.c (cc1_options): Pass output file as auxbase when
+ appropriate.
+ * profile.c (init_branch_prob): FILENAME has already had ending
+ stripped.
+ * final.c (end_final): Likewise.
+ * toplev.c (aux_base_name): New global.
+ (compile_file): Pass aux_base_name to init init_branch_prob and
+ end_final.
+ (independent_decode_option, case 'a'): New auxinfo options.
+ (case 'd'): Protect against mising basename.
+ (do_compile): Initialize aux_base_name.
+ * toplev.h (aux_base_name): New global.
+ * doc/invoke.texi: Adjust documentation.
+
+2002-08-04 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/i386/i386.c (x86_field_alignment): Remove duplicate test
+ of TARGET_ALIGN_DOUBLE.
+
+2002-08-04 Gabriel Dos Reis <gdr@nerim.net>
+
+ * diagnostic.c (inform): New function.
+ * diagnostic.h (inform): Declare.
+
+2002-08-03 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (movsi_internal1): Add nop mnemonic.
+ (movhi_internal): Same.
+ (movqi_internal): Same.
+ (movdi_internal64): Same.
+
+ * config/rs6000/t-ppccomm (MULTILIB_MATCHES_FLOAT): Add mcpu=405.
+
+ * config/rs6000/xcoff.h (SKIP_ASM_OP): Define.
+ (ASM_OUTPUT_SKIP): Use it. SIZE unsigned.
+ (COMMON_ASM_OP): Define.
+ (ASM_OUTPUT_ALIGNED_COMMON): Use it. SIZE unsigned.
+ Use ALIGN parameter.
+ (LOCAL_COMMON_ASM_OP): Define.
+ (ASM_OUTPUT_LOCAL): Use it. SIZE unsigned.
+
+2002-08-03 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def: Define new builtin functions exp, expf, expl,
+ log, logf and logl (and their __builtin_* variants).
+ * optabs.h (enum optab_index): Add new OTI_exp and OTI_log.
+ Define exp_optab and log_optab.
+ * optabs.c (init_optans): Initialize exp_optab and log_optab.
+ * genopinit.c (optabs): Implement exp_optab and log_optab
+ using exp?f2 and log?f2 patterns.
+ * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP*
+ and BUILT_IN_LOG* using exp_optab and log_optab respectively.
+ (expand_builtin): Ignore the new builtins (and all cos and
+ sin variants) when not optimizing. Expand new builtins via
+ expand_builtin_mathfn when flag_unsafe_math_optimizations.
+
+ * doc/extend.texi: Document new exp and log builtins.
+ * doc/md.texi: Document new exp?f2 and log?f2 patterns
+ (and previously undocumented cos?f2 and sin?f2 patterns).
+
+2002-08-03 Jason Merrill <jason@redhat.com>
+
+ * explow.c (int_expr_size): New fn.
+ * expr.c (expand_expr) [CONSTRUCTOR]: Use it.
+ * expr.h: Declare it.
+
+2002-08-02 Krister Walfridsson <cato@df.lth.se>
+
+ * Makefile.in (gengtype-lex.o, gengtype-yacc.o): Add path to
+ gengtype-* dependencies.
+
+2002-08-02 Eric Christopher <echristo@redhat.com>
+
+ * config.gcc (mips*-*-linux*): Fix ordering of tm_file.
+ * config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Change
+ #ifndef to #undef.
+ (TARGET_MEM_FUNCTIONS): Define instead of define to 1.
+
+2002-08-02 David Edelsohn <edelsohn@gnu.org>
+
+ PR optimize/7067
+ * config/rs6000/rs6000.h (RTX_COSTS): Artificially make MULT
+ small if optimizing for size.
+
+2002-08-02 Daniel Jacobowitz <drow@mvista.com>
+
+ * configure.in (FORBUILD): Use $build_alias.
+ * configure: Regenerated.
+
+2002-08-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * config.gcc: Don't include mips/abi64.h in $tm_file.
+ * hard-reg-set.h (call_really_used_regs): Declare.
+ * config/mips/abi64.h: Remove file.
+ * config/mips/linux.h,
+ * config/mips/iris6.h: Don't include it.
+ * config/mips/mips-protos.h (mips_conditional_register_usage): Declare.
+ * config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Use it.
+ (REG_PARM_STACK_SPACE, STACK_BOUNDARY, STRICT_ARGUMENT_NAMING,
+ FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_ARG_PADDING,
+ FUNCTION_ARG_CALLEE_COPIES, MUST_PASS_IN_STACK, MIPS_STACK_ALIGN):
+ Bring across definitions from abi64.h.
+ (GP_ARG_LAST, FP_ARG_LAST): Use MAX_ARGS_IN_REGISTERS.
+ (BIGGEST_MAX_ARGS_IN_REGISTERS): New.
+ (struct mips_args): Use it.
+ * config/mips/mips.c (mips_conditional_register_usage): Define.
+
+2002-08-02 Jason Merrill <jason@redhat.com>
+
+ * langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro.
+ * langhooks.c (lhd_expr_size): Define default.
+ * langhooks.h (struct lang_hooks): Add expr_size.
+ * explow.c (expr_size): Call it.
+ * expr.c (store_expr): Don't copy an expression of size zero.
+ (expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much
+ to store.
+ * Makefile.in (builtins.o): Depend on langhooks.h.
+
+2002-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (ra-debug.o): Depend on $(TM_P_H).
+ * ra-debug.c: Include "tm_p.h".
+ * ra-rewrite.c (is_partly_live_1): Change return type to bool.
+
+2002-08-02 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * simplify-rtx.c (simplify_binary_operation): x * 1 is allowed
+ when not honoring signalling NaNs.
+ (simplify_ternary_operation): a == b has a definite value
+ when not honoring NaNs.
+
+2002-08-02 Jason Merrill <jason@redhat.com>
+
+ * gdbinit.in (pct): New macro.
+
+2002-08-01 Stan Shebs <shebs@apple.com>
+ Andreas Tobler <toa@pop.agri.ch>
+
+ * ginclude/stddef.h (_BSD_SIZE_T_DEFINED_): Define if not defined,
+ plays nice with Darwin headers.
+ (_BSD_RUNE_T_DEFINED_): Likewise.
+
+2002-08-01 Zack Weinberg <zack@codesourcery.com>
+
+ * c-common.c (c_common_init): -Wtraditional also implies -Wlong-long.
+ * cppinit.c (cpp_post_options): Likewise.
+
+ * cppexp.c (cpp_classify_number): Suppress -Wtraditional
+ warning about 'LL' suffix (but not 'ULL' etc) when
+ -Wno-long-long is in effect.
+
+ * cppmacro.c (_cpp_builtin_macro_text) [BT_TIME, BT_DATE]:
+ Check for failing time()/localtime(), issue a warning, and
+ make __TIME__ and __DATE__ expand to fallback strings.
+
+ * doc/cpp.texi, doc/extend.texi: Document behavior of __DATE__
+ and __TIME__ when the date and time cannot be determined.
+
+2002-08-02 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (output_cbranch): Hint differently for power4.
+
+2002-08-01 Daniel Jacobowitz <drow@mvista.com>
+
+ * Makefile.in ($(BUILD_PREFIX_1)ggc-none.o): Use $(GGC_H).
+
+2002-08-01 Chris Demetriou <cgd@broadcom.com>
+
+ * config.gcc (mipsisa64sb1-*-elf*): New configuration.
+ (mipsisa64sb1el-*-elf*): Likewise.
+ * config/mips/mips.c (mips_cpu_info_table): Add sb1.
+ * config/mips/mips.h (processor_type): Add PROCESSOR_SB1.
+ (TARGET_SB1, TUNE_SB1): New macros.
+ * doc/invoke.texi: Add sb1 to documentation for MIPS -march and
+ -mtune flags.
+
+2002-08-01 David Edelsohn <edelsohn@gnu.org>
+
+ * varasm.c (asm_emit_uninitialized): Return false if global BSS
+ and ASM_EMIT_BSS not supported by target.
+ (assemble_variable): Do not duplicate uninitialized logic.
+ Fall through if asm_emit_uninitialized failed.
+
+2002-08-01 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.h (BRANCH_LIKELY_P): Remove unused macro.
+
+2002-08-02 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Define.
+ (DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC): Define.
+
+ * config/rs6000/rs6000.c (output_toc): Don't use lshift_double when
+ HOST_BITS_PER_WIDE_INT == 64.
+
+2002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * df.c (df_insn_table_realloc): Change parameter to unsigned.
+ * optabs.c (expand_binop): Make variable unsigned.
+ * simplify-rtx.c (simplify_subreg): Likewise.
+ * unroll.c (unroll_loop): Cast to avoid signed/unsigned warnings.
+
+2002-08-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * c-common.c (cb_register_builtins): Always define __GXX_ABI_VERSION.
+
+2002-08-01 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (parse_options_and_default_flags): Don't set
+ flag_reorder_blocks for -Os.
+
+ * config/avr/avr.c (avr_optimization_options): Remove.
+ * config/avr/avr.h (OPTIMIZATION_OPTIONS): Remove.
+ * config/m68hc11/m68hc11.c (m68hc11_optimization_options): Remove.
+ * config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Remove.
+
+2002-08-01 H.J. Lu <hjl@gnu.org>
+ Richard Henderson <rth@redhat.com>
+
+ * output.h (DECL_READONLY_SECTION): Remove.
+ (decl_readonly_section): Declare.
+ * varasm.c (decl_readonly_section): New.
+ (default_section_type_flags, default_select_section): Use it.
+ * config/arm/pe.c (arm_pe_unique_section): Likewise.
+ * config/i386/interix.c (i386_pe_unique_section): Likewise.
+ * config/i386/winnt.c (i386_pe_unique_section): Likewise.
+ * config/mcore/mcore.c (mcore_unique_section): Likewise.
+ * config/mips/mips.c (mips_unique_section): Likewise.
+
+2002-08-01 Richard Henderson <rth@redhat.com>
+
+ * integrate.c (copy_rtx_and_substitute): Squash MEM_EXPR when it
+ refers to a subroutine parameter.
+
+2002-08-01 Jakub Jelinek <jakub@redhat.com>
+
+ * varasm.c (assemble_visibility): Strip name encoding.
+
+2002-08-01 Ian Dall <ian@sibyl.beware.dropbear.id.au>
+
+ * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch.
+ (RETURN_ADDR_RTX): Cannot determine return address for FRAME > 0
+ when there is no frame pointer.
+ (INITIAL_FRAME_POINTER_OFFSET): Count stack space for saved fp
+ registers properly.
+ * config/ns32k/__unorddf2.c: New file.
+ * config/ns32k/__unordsf2.c: New file.
+ * config/ns32k/t-ns32k: New file.
+ * config.gcc (ns32k-*-netbsd*): Use it.
+
+2002-08-01 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.h (SPU_CONST_OFFSET_OK): Change to 0xff.
+
+2002-08-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.c (__GXX_ABI_VERSION): Correct spelling.
+
+2002-08-01 Benjamin Kosnik <bkoz@redhat.com>
+
+ * c-common.c (cb_register_builtins): Set __GXX_ABI_VERSION__ to 102.
+
+2002-08-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Add [!]TARGET_MIPS16 to sgtu conditions.
+
+2002-08-01 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * gcse.c (expr_hash_table_size, n_exprs, set_hash_table_size,
+ n_sets): Removed.
+ (expr_hash_table, set_hash_table): Type changed to ...
+ (struct hash_table): New type.
+ (hash_scan_insn, hash_scan_set, hash_scan_clobber, hash_scan_call,
+ insert_expr_in_table, insert_set_in_table, compute_hash_table,
+ dump_hash_table, lookup_expr, lookup_set, compute_local_properties,
+ compute_ae_gen, compute_ae_kill): Modified to pass the table explicitly.
+ (alloc_set_hash_table, alloc_expr_hash_table): Merged to ...
+ (alloc_hash_table): New.
+ (free_set_hash_table, free_expr_hash_table): Merged to ...
+ (free_hash_table): New.
+ (compute_set_hash_table, compute_expr_hash_table): Merged to ...
+ (compute_hash_table_work): New.
+ (classic_gcse, one_classic_gcse_pass, compute_cprop_data,
+ find_avail_set, one_cprop_pass, find_bypass_set, compute_pre_data,
+ pre_edge_insert, pre_insert_copies, pre_delete, pre_gcse,
+ one_pre_gcse_pass, compute_transpout, compute_code_hoist_vbeinout,
+ hoist_code, one_code_hoisting_pass,
+ trim_ld_motion_mems): Altered due to changed type of hash tables.
+
+2002-08-01 Zack Weinberg <zack@codesourcery.com>
+
+ * final.c (output_alternate_entry_point):
+ If ASM_OUTPUT_TYPE_DIRECTIVE is defined, use it.
+
+2002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * objc/objc-act.c (encode_complete_bitfield): Add prototype and
+ avoid ISO C style function definition.
+
+ * expr.c (expand_assignment): Delete unused variable.
+
+2002-08-01 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * c-common.c (cb_register_builtins): Set
+ __FINITE_MATH_ONLY__ to 1 if -ffinite-math-only
+ is given, and to 0 otherwise.
+ * combine.c (simplify_if_then_else): HONOR_NANS
+ implies FLOAT_MODE_P.
+
+2002-08-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_dollar.
+ (cpp_handle_option): Don't handle it.
+ (print_help): Update.
+ * doc/cppopts.texi: Update.
+
+2002-08-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.c (cb_register_builtins): If C++, define
+ __EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
+ * gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
+cp:
+ * lang-specs.h: Simplify in accordance with new code in
+ c-common.c.
+
+2002-08-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.c: Define all C/ObjC/C++ warning and flag variables.
+ * c-common.h: Declare all C/ObjC/C++ warning and flag variables.
+ * c-decl.c: Move all warning and flag variables to c-common.c.
+ * c-format.c: Move all warning variables to c-common.c.
+ * c-tree.h: Move all warning and flag declarations to c-common.h.
+ * objc/objc-act.c: Move all warning variables to c-common.c.
+ (flag_warn_protocol): Rename warn_protocol.
+
+2002-07-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa-linux.h (GLOBAL_ASM_OP): Fix typo.
+
+2002-07-31 Graham Stott <graham.stott@btinternet.com>
+
+ * config/stormy16/stormy16.h (BSS_SECTION_ASM_OP): Add missing
+ .section prefix.
+
+2002-07-31 Stan Shebs <shebs@apple.com>
+
+ * config.gcc (i[34567]86-*-darwin*): New configuration.
+ * config/darwin.h (TARGET_ENCODE_SECTION_INFO): Undefine before
+ defining.
+ (TARGET_ENCODE_SECTION_INFO): Ditto.
+ (ASM_PREFERRED_EH_DATA_FORMAT): Ditto.
+ * config/darwin.c (machopic_indirect_data_reference): Remove
+ setting of RTX_UNCHANGING_P.
+ (machopic_legitimize_pic_address): Move RTX_UNCHANGING_P up so as
+ not to be applied to sums.
+ * config/i386/t-darwin: New file.
+ * config/i386/darwin.h: New file.
+ * config/i386/i386.h (TARGET_MACHO): Add default definition.
+ * config/i386/i386.md (tablejump): Add TARGET_MACHO case.
+ * config/i386/i386.c (output_set_got): For Mach-O, output Mach-O
+ label and not the GOT add.
+ (constant_address_p): For Mach-O, seeing a CONST is enough.
+ (legitimate_pic_address_disp_p): Add a Mach-O case.
+ (legitimate_address_p): Also test machopic_operand_p if Mach-O.
+ (legitimize_pic_address): Use generic Mach-O code to legitimize.
+ (output_pic_addr_const): Suppress @PLT if Mach-O, and parens
+ if outputting a difference.
+ (ix86_output_addr_diff_elt): Add Mach-O case.
+ (ix86_expand_move): Similarly.
+ (ix86_expand_call): Similarly.
+ (current_machopic_label_num): New global.
+ (machopic_output_stub): New function.
+ (ix86_value_regno): New function.
+ (ix86_function_value): Use it instead of VALUE_REGNO.
+ (ix86_libcall_value): Ditto.
+ * config/i386/unix.h (VALUE_REGNO): Remove.
+
+2002-07-31 Graham Stott <grahas@btinternet.com>
+
+ * config/rs6000/rs6000.c(rs6000_hash_constant): Fix
+ hash for LABEL_REF's.
+
+2002-07-31 Graham Stott <grahams@btinternet.com>
+
+ * config/rs6000/rs6000.c (spe_init_builtins,
+ altivec_init_builtins, rs6000_common_init_builtins):
+ Replace ANSI with K&R function def.
+
+2002-07-31 David Edelsohn <edelsohn@gnu.org>
+
+ * rs6000.c (validate_condition_mode): Test flag_finite_math_only
+ for CCFPmode.
+
+2002-07-31 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/crtn.asm: Don't use __mips16 to determine the
+ return-address offset. Define RA to a suitable temporary
+ register for the return address.
+
+2002-07-31 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (eh_set_lr_si, eh_set_lr_di): Change
+ constraints to 'd'.
+
+2002-07-30 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/elf.h (STARTFILE_SPEC): Define differently if
+ default ABI is MEABI. (Undoes incorrect change in Eric Christopher's
+ patch on 2002-07-29.)
+ * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
+
+2002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h,
+ fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h,
+ ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h,
+ openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h,
+ s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h:
+ (ASM_GLOBALIZE_LABEL): Delete.
+ (GLOBAL_ASM_OP): Define.
+
+ * m68hc11.h, m68k.h, m88k.h (ASM_GLOBALIZE_LABEL): Delete.
+
+ * defaults.h (ASM_GLOBALIZE_LABEL): Provide a default.
+ * doc/tm.texi (ASM_GLOBALIZE_LABEL): Update docs.
+
+2002-07-30 Geoffrey Keating <geoffk@redhat.com>
+
+ * doc/extend.texi (Hints implementation): Document that GCC
+ mostly ignores `register'.
+
+2002-07-30 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * flags.h: Declare flag_finite_math_only.
+ Use it in definition of HONOR_NANS and
+ HONOR_INFINITIES.
+ * c-common.c (cb_register_builtins): Emit
+ __FINITE_MATH_ONLY__ when flag_finite_math_only
+ is set.
+ * combine.c (simplify_if_then_else): If
+ flag_finite_math_only is set, a == b has a
+ definite value.
+ * toplev.c: Initialize flag_finite_math_only.
+ (set_flags_fast_math): Set it on -ffast-math.
+ (flag_fast_math_set_p): Test it.
+ * doc/invoke.texi: Document -ffinite-math-only.
+
+2002-07-30 Richard Henderson <rth@redhat.com>
+
+ * ifcvt.c (noce_get_alt_condition): Use reg_overlap_mentioned_p.
+ (noce_process_if_block): Likewise.
+
+2002-07-30 Bernd Schmidt <bernds@redhat.com>
+
+ * ifcvt.c (cond_exec_process_if_block): Fix a merging error.
+ Bail out early if false_expr is NULL and we'd crash due to this.
+ * genemit.c (gen_expand): Recognize return insns even if the return
+ appears in a parallel.
+ * libgcc2.c: Expand macro DECLARE_LIBRARY_RENAMES if it is defined.
+ * config/fp-bit.c: Likewise.
+ * doc/tm.texi: Document it.
+
+2002-07-30 David Edelsohn <edelsohn@gnu.org>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * rs6000.c (rs6000_expand_unop_builtin): Check icode not
+ CODE_FOR_nothing. Change switch to if.
+ (rs6000_expand_binop_builtin): Same.
+ (rs6000_expand_builtin): Expand builtin if target support enabled.
+ (rs6000_init_builtins): Init builtin if target support enabled.
+ (rs6000_common_init_builtins): Check icode not CODE_FOR_nothing.
+
+2002-07-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * gcc.c (cpp_unique_options): Define __GXX_ABI_VERSION, bump it to 101.
+
+2002-07-30 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Fix typo.
+
+Tue Jul 30 18:31:31 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (cond_delay_slot): New attribute.
+ (cbranch delay): Use it for anulled-true case.
+ (stuff_delay_slot): New pattern.
+ * sh.c (print_operand, case '.'): Don't print .s / /s fore zero-length
+ delay slot insn.
+ (gen_far_branch): Emit stuff_delay_slot pattern.
+
+Tue Jul 30 11:21:44 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * unroll.c (copy_loop_body): Don't copy NOTE_INSN_LOOP_CONT.
+
+2002-07-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c: Fix comment typos.
+ * gcse.c: Likewise.
+ * reload1.c: Likewise.
+
+2002-07-29 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md: Disallow CCEQ compare with crnor/crnot
+ for TARGET_SPE.
+
+2002-07-30 Gabriel Dos Reis <gdr@nerim.net>
+
+ * c-pretty-print.h (pp_c_statement): Declare.
+ * c-pretty-print.c (pp_c_postfix_expression): #if 0 support for SRCLOC.
+ (pp_c_statement): Define.
+
+2002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h,
+ darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h,
+ ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h,
+ mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h,
+ rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h,
+ v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition.
+
+ * defaults.h (ASM_OUTPUT_LABEL): Provide a default.
+ * doc/tm.texi (ASM_OUTPUT_LABEL): Update docs.
+
+2002-07-30 Gabriel Dos Reis <gdr@nerim.net>
+
+ * c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
+ (pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR,
+ COMPOUND_LITERAL_EXPR, VA_ARG_EXPR.
+ (pp_c_expression): Update.
+
+2002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or
+ concat in lieu of xmalloc/strcpy/memcpy/sprintf.
+ * alpha/vms-ld.c (main): Likewise.
+ * dsp16xx.c (double_reg_to_memory): Likewise.
+ * mcore.c (mcore_expand_prolog): Likewise.
+ * cppfiles.c (read_name_map): Likewise.
+ * gensupport.c (process_rtx, identify_predicable_attribute,
+ alter_test_for_insn): Likewise.
+ * vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise.
+
+2002-07-29 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin): Change the default behavior to
+ only issue an error if the builtin function doesn't have a
+ fallback library call. Remove several cases handled by the
+ new default.
+
+2002-07-29 John David Anglin <dave@hiauly1.hia.nrc>
+
+ * real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the
+ floating point format of the target is IEEE.
+ * (dec_f, dec_d, dec_g, dec_h): Define only if the floating point
+ format of the target is DEC.
+
+2002-07-29 Richard Henderson <rth@redhat.com>
+
+ * unroll.c (verify_addresses): Remove.
+ (find_splittable_givs): Never split DEST_ADDR givs.
+
+2002-07-29 Geoffrey Keating <geoffk@redhat.com>
+
+ * doc/gty.texi (GGC Roots): Clarify that the list of syntaxes
+ is exhaustive.
+ (Files): Improve documentation on generated source files.
+
+ * doc/extend.texi (Translation implementation): Document what
+ diagnostics look like.
+ (Identifiers implementation): Document that there's normally no
+ limit on identifier names.
+ (Integers implementation): Document two's complement.
+ (Hints implementation): Document that GCC honors 'inline', mostly.
+ (Preprocessing directives implementation): Document that GCC
+ requires the current time.
+
+2002-07-30 Gabriel Dos Reis <gdr@nerim.net>
+
+ * c-pretty-print.h (struct c_pretty_print_info): Add new member.
+ (pp_initializer): New macro.
+ (pp_c_initializer): Declare.
+ * c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR.
+ (pp_c_initializer): Define.
+ (pp_c_initializer_list): New function.
+ (pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST,
+ VECTOR_CST, CONSTRUCTOR.
+ (pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR,
+ IMAGPART_EXPR.
+ (pp_c_cast_expression): Handle FLOAT_EXPR.
+ (pp_c_assignment_expression): Handle INIT_EXPR.
+ (pp_c_expression): Update.
+
+2002-07-30 Neil Booth <neil@daikokuya.co.uk>
+
+ * objc/objc-act.c (objc_init): Return immediately if filename
+ is NULL.
+
+2002-07-29 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/elf.h: Remove ecoff.h and gofast includes.
+ (DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally.
+ (SDB_DEBUGGING_INFO): Undefine.
+ (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
+ (PUT_SDB_SIZE): Remove.
+ (SUBTARGET_ASM_DEBUGGING_SPEC): Redefine.
+ (STARTFILE_SPEC): Add isa3264 define.
+ * config/mips/elf64.h: Ditto. Move TARGET_MEM_FUNCTIONS from here...
+ * config/mips/ecoff.h: Remove. and here...
+ * config/mips/iris3.h: and here...
+ * config/mips/sni-svr4.h: and here...
+ * config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs.
+ Add assembler -mmdebug options for non-dwarf debugging.
+ * config/mips/r3900.h: Remove debug info defines.
+ * config/mips/isa32-linux.h: Remove, move functionality to config.gcc.
+ * config/mips/isa3264.h: Ditto.
+ * config/mips/t-isa3264: Fix up for file removal and gofast configure
+ change.
+ * config/mips/t-elf: Ditto.
+ * config/mips/t-ecoff: Ditto.
+ * config/mips/t-r3900: Ditto.
+ * config/mips/t-iris5-6: Ditto.
+ * config/mips/t-isa3264: Ditto.
+ * config/mips/t-linux: Remove.
+ * config/mips/t-netbsd: Remove.
+ * config/mips/t-mips: New file.
+ * config/mips/t-gofast: Ditto.
+ * config/mips/netbsd.h: Remove unnecessary undefines.
+ * config/mips/linux.h: Remove #include of mips.h.
+ * config.gcc: Add mips.h include for elf targets. Remove tm_file
+ for ecoff. Add gofast configure option for mips.
+
+2002-07-29 Chris Demetriou <cgd@broadcom.com>
+
+ * configure.in (mips*-*-*): Add a test to see if MIPS libgloss
+ linker scripts use STARTUP directives consistently.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based
+ on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined.
+ * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
+ * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if
+ HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result
+ will be the same.
+
+2002-07-29 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute.
+
+2002-07-29 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540.
+
+2002-07-29 Aldy Hernandez <aldy@quesejoda.com>
+
+ * config/rs6000/rs6000.md: Move altivec patterns from here...
+
+ * config/rs6000/altivec.md: ...to here.
+
+2002-07-29 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md ("spe_evmra"): Change to unspec.
+
+2002-07-29 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from
+ set_mem_attributes and add BITPOS argument. Subtract it from
+ OFFSET when same is adjusted.
+ (set_mem_attributes): New wrapper function.
+ * expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos;
+ remove offset adjustment hack.
+ * expr.h (set_mem_attributes_minus_bitpos): Declare.
+
+2002-07-29 Gabriel Dos Reis <gdr@nerim.net>
+
+ * Makefile.in (C_OBJS): Include c-pretty-print.o
+ (c-pretty-print.o): Add depency rule.
+ * pretty-print.h: Add more macros.
+ * c-pretty-print.c: New file.
+ * c-pretty-print.h: Likewise.
+
+2002-07-29 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
+ constants to __ev64_s32__.
+ (__internal_ev_mwhgsmian): Same.
+ (__internal_ev_mwhgsmfan): Same.
+ (__internal_ev_mwhgssfan): Same.
+ (__internal_ev_mwhgumiaa): Same.
+ (__internal_ev_mwhgsmiaa): Same.
+ (__internal_ev_mwhgsmfaa): Same.
+ (__internal_ev_mwhgssfaa): Same.
+
+2002-07-29 David Edelsohn <edelsohn@gnu.org>
+
+ * varasm.c (assemble_variable): Narrow test for uninitialized
+ without BSS target support.
+
+2002-07-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * profile.c: Add file comment describing the overall algorithm and
+ structures.
+ (struct edge_info): Add comments.
+ (struct bb_info): Add comments.
+ * basic-block.h (EDGE_*): Add comments.
+ * doc/gcov.texi (Gcov Data Files): Document bit flags.
+
+2002-07-29 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/elf.h, config/xtensa/linux.h
+ (TARGET_OS_CPP_BUILTINS): Define.
+ (CPP_PREDEFINES): Remove.
+ * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define.
+ (CPP_SPEC): Remove.
+
+2002-07-29 Zack Weinberg <zack@codesourcery.com>
+
+ * gensupport.c: Include hashtab.h.
+ (insn_elision, condition_table, hash_c_test, cmp_c_test,
+ maybe_eval_c_test): New routines and data structures to
+ support insn elision.
+ (init_md_reader): Read and initialize the condition_table.
+ (read_md_rtx): Discard insn patterns whose C test is provably
+ always false.
+ * gensupport.h: Declare new functions and data structures.
+
+ * genconditions.c, dummy-conditions.c: New files.
+ * Makefile.in: Build genconditions; run it to construct
+ insn-conditions.c; build that and link it into most gen*
+ programs.
+ (HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables.
+ (GEN): Delete, unused.
+ (STAGESTUFF): Update.
+
+ * gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to
+ CODE_FOR_nothing for all elided patterns.
+ (main): Tweaked to support this.
+ * genflags.c (gen_proto): Emit a static inline generator
+ function here for all elided patterns, which simply returns
+ NULL_RTX.
+ (gen_insn): Do not define HAVE_xxx for elided patterns.
+ (main): Tweaked to support this. No need to forward-declare
+ struct rtx_def.
+ * genrecog.c: Do not bother emitting the C test if it's known
+ to be true at compile time.
+
+2002-07-29 Mike Stump <mrs@apple.com>
+
+ * config.gcc (target_gtfiles): Initialize, as otherwise cross
+ compilers hosted on powerpc-apple-darwin6.0 won't even build.
+
+2002-07-29 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern,
+ remove clobber of LR.
+ (sibcall_insn, sibcall_value_insn): Update accordingly.
+ (sibcall_epilogue): Remove debugging comment from assembler stream.
+
+2002-07-29 Gabriel Dos Reis <gdr@nerim.net>
+
+ * pretty-print.h: Define more macros.
+ * diagnostic.h (output_formatted_integer): Moved from...
+ * diagnostic.c: ... here.
+
+2002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF.
+
+2002-07-28 Zack Weinberg <zack@codesourcery.com>
+
+ * defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two
+ arguments. Always use ".-symbol" as expression argument.
+ * doc/tm.texi: Update to match. Document requirement for
+ ".size symbol, .-symbol" to be acceptable to assembler.
+
+ * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
+ config/arm/elf.h, config/avr/avr.h, config/cris/aout.h,
+ config/i386/freebsd-aout.h, config/i386/sco5.h,
+ config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h,
+ config/xtensa/linux.h: Update uses of ASM_OUTPUT_MEASURED_SIZE.
+
+2002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (gengtype-lex.c): Fix error in last change.
+
+ * alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing
+ backslash.
+
+ * Makefile.in (vmsdbgout.o): Depend on function.h.
+
+ * vmsdbgout.c: Include function.h.
+
+2002-07-28 Alan Modra <amodra@bigpond.net.au>
+
+ * prefix.c (update_path): Don't strip single `.' path components
+ unless stripping a later `..' component. Exit loop as soon as
+ a valid path is found.
+
+2002-07-27 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS
+ argument. Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN,
+ BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99
+ floating point unordered comparisons (e.g. __builtin_isgreater)
+ as const, and leave the remaining GCC_BUILTINs unchanged.
+
+ * c-decl.c (builtin_function): No need to explicitly mark
+ BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
+
+2002-07-27 Roger Sayle <roger@eyesopen.com>
+
+ * Makefile.in: rtlanal.o now depends upon real.h.
+
+ * flags.h [flag_signaling_nans]: New flag.
+ [HONOR_SNANS]: New macro.
+
+ * toplev.c [flag_signaling_nans]: Initialize to false.
+ (f_options): Add processing for "-fsignaling-nans".
+ (set_fast_math_flags): Clear flag_signaling_nans with -ffast-math.
+ (process_options): flag_signaling_nans implies flag_trapping_math.
+
+ * c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__
+ when -fsignaling-nans. First step to implementing WG14's N965.
+
+ * fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming
+ 1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS.
+ [RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS.
+
+ * simplify-rtx.c (simplify_relational_operation): Conditionalize
+ transforming abs(x) < 0.0 into false on !HONOR_SNANS.
+
+ * rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions
+ required by HONOR_SNANS. (may_trap_p): Floating point DIV, MOD,
+ UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with
+ -fsignaling_nans. EQ and NE only trap for flag_signaling_nans
+ not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS).
+
+ * doc/invoke.texi: Document new -fsignaling-nans compiler option.
+
+2002-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (gengtype-lex.c): Work around a bug in flex.
+ * gengtype-lex.l (YY_USE_PROTOS): Undef.
+ (YY_DECL): Define.
+
+2002-07-27 Roger Sayle <roger@eyesopen.com>
+
+ * doc/invoke.texi: Document that both -fno-builtin-foo and
+ -fno-builtin are supported by the g++ front-end.
+
+2002-07-27 Stan Shebs <shebs@apple.com>
+
+ * configure.in: Rename config_gtfiles to target_gtfiles.
+ * configure: Regenerate.
+ * doc/gty.texi: Update reference.
+ * config.gcc (powerpc-*-darwin*): Set target_gtfiles
+ instead of appending to it.
+
+2002-07-25 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (function_arg_advance): SPE vararg
+ vectors are split into two registers.
+ (function_arg): Same.
+
+Thu Jul 26 23:00:13 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * pa.md (extv): Check predicates before emitting extv_32.
+
+2002-07-27 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_traceback_name): New var.
+ (rs6000_traceback): New var.
+ (rs6000_override_options): Set rs6000_traceback.
+ (rs6000_output_function_epilogue): Implement traceback options.
+ * config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=".
+ (rs6000_traceback_name): Declare.
+
+ * config/rs6000/rs6000.c (output_profile_hook): Don't generate profile
+ label reference when NO_PROFILE_COUNTERS.
+
+2002-07-26 Jason Merrill <jason@redhat.com>
+
+ * function.c (assign_parms): Handle frontend-directed pass by
+ invisible reference.
+
+2002-07-26 Neil Booth <neil@daikokuya.co.uk>
+
+ * doc/cppopts.texi: Update.
+
+2002-07-26 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppmacro.c (_cpp_create_definition): Don't attempt redefinition
+ warnings on assertions.
+
+2002-07-26 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ,
+ RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR,
+ RID_COMPL): Remove.
+ * c-parse.in (rid_to_yy): Similarly.
+
+2002-07-26 Jason Merrill <jason@redhat.com>
+
+ * c-dump.c: Resurrect.
+ * tree-dump.c: Move C-specific stuff to c-dump.c.
+ * c-common.h: Declare c_dump_tree.
+ * c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define.
+ * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
+ (c-dump.o): New rule.
+
+2002-07-26 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md: Enable patterns using rlwinm for
+ PowerPC64. Replace "T" and "S" constraints with "n" when the
+ predicate will do. Formatting fixes.
+ (extzvsi_internal2): Use "andi.", "andis." and attr type of "compare"
+ as for extzvsi_internal1.
+
+2002-07-25 Neil Booth <neil@daikokuya.co.uk>
+
+ * dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT,
+ DERIV_END_LABEL_FMT): Remove.
+ (SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move.
+
+2002-07-25 Neil Booth <neil@daikokuya.co.uk>
+
+ * objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE):
+ Remove.
+
+2002-07-25 Stan Shebs <shebs@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused
+ local var dwarfp.
+ (output_compiler_stub): Remove unused locals.
+ (output_call): Always initialize line number.
+
+Thu Jul 25 20:34:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
+ * sh.md (truncdiqi2, movqi_media): Likewise.
+
+2002-07-25 Neil Booth <neil@daikokuya.co.uk>
+
+ * gcse.c (obstack_chunk_alloc): Remove.
+ (gcse_alloc): Fix to count allocated bytes.
+ * collect2.c (SYMBOL__MAIN): Remove.
+
+2002-07-25 Neil Booth <neil@daikokuya.co.uk>
+
+ * gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if
+ HAVE_TARGET_EXECUTABLE_SUFFIX.
+
+Thu Jul 25 18:57:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN,
+ SIZE, EXPR and OFFSET.
+
+2002-07-25 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos
+ in ARRAY_REF of DECL_P case.
+
+2002-07-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Document -mabi=meabi, and expand on the EABI
+ description. Document -mips32, -mips64, and the associated -march
+ values. Describe the "mipsN" arguments to -march. Say that the
+ -mipsN options are equivalent to -march. Reword the description
+ of default type sizes.
+ * toplev.h (target_flags_explicit): Declare.
+ * toplev.c (target_flags_explicit): New var.
+ (set_target_switch): Update target_flags_explicit.
+ * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine.
+ * config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine.
+ * config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3.
+ * config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine.
+ * config/mips/mips.h (mips_cpu_info): New struct.
+ (mips_cpu_string, mips_explicit_type_size_string): Remove.
+ (mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare.
+ (MIPS_CPP_SET_PROCESSOR): New macro.
+ (TARGET_CPP_BUILTINS): Declare a macro for each supported processor.
+ Define _MIPS_ARCH and _MIPS_TUNE.
+ (MIPS_ISA_DEFAULT): Don't provide a default value. Instead...
+ (MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor
+ MIPS_ISA_DEFAULT were already defined.
+ (MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT.
+ (TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size.
+ (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New.
+ (GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules.
+ (ABI_GAS_ASM_SPEC): Remove.
+ (MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros.
+ (ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64.
+ Invoke %(asm_abi_default_spec) if no ABI was specified.
+ (CC1_SPEC): Remove ISA -> register-size rules.
+ (EXTRA_SPECS): Remove abi_gas_asm_spec. Add asm_abi_default_spec.
+ * config/mips/mips.c (mips_arch_info, mips_tune_info): New vars.
+ (mips_cpu_string, mips_explicit_type_size_string): Remove.
+ (mips_cpu_info_table): New array.
+ (mips_set_architecture, mips_set_tune): New fns.
+ (override_options): Rework to make -mipsN equivalent to -march.
+ Detect more erroneous cases, including those removed from CC1_SPEC.
+ Don't change the ABI based on architecture, or vice versa.
+ Unify logic with GAS.
+ (mips_asm_file_start): Get architecture name from mips_arch_info.
+ (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
+ (mips_parse_cpu): Take the name of the option as argument. Handle
+ 'from-abi'. Raise an error if the option is wrong.
+ (mips_cpu_info_from_isa): New fn.
+
+2002-07-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
+ (tablejump_mips162): Likewise.
+
+Thu Jul 25 10:23:41 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to
+ int_mode_for_mode.
+
+2002-07-25 Gabriel Dos Reis <gdr@nerim.net>
+
+ * c-common.c (c_sizeof_or_alignof_type): Take a third argument for
+ complaining.
+ * c-common.h (c_sizeof): Adjust definition.
+ (c_alignof): Likewise.
+ * c-tree.h (c_sizeof_nowarn): Now macro.
+ * c-typeck.c (c_sizeof_nowarn): Remove definition.
+
+2002-07-25 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-decl.c (c_decode_option): No need to handle switches
+ cpplib handles.
+
+2002-07-24 Zack Weinberg <zack@codesourcery.com>
+
+ * defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE,
+ ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros.
+ * doc/tm.texi: Document them. Also document SIZE_ASM_OP,
+ TYPE_ASM_OP, and TYPE_OPERAND_FMT.
+
+ * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
+ config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h,
+ config/cris/aout.h, config/i386/freebsd-aout.h,
+ config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h,
+ config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h,
+ config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h,
+ config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h,
+ config/pa/pa64-hpux.h, config/rs6000/sysv4.h,
+ config/xtensa/elf.h, config/xtensa/linux.h:
+ Use the new macros.
+ Where possible, remove redundant definitions of SIZE_ASM_OP,
+ TYPE_ASM_OP, and TYPE_OPERAND_FMT.
+
+2002-07-24 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
+ TARGET_ISEL, and TARGET_FPRS.
+
+ * doc/invoke.texi (RS/6000 and PowerPC Options): Document
+ -mabi=spe, -mabi=no-spe, and -misel=.
+
+ * config/rs6000/rs6000-protos.h: Add output_isel.
+ Move vrsave_operation prototype here.
+
+ * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
+ (smaxsi3): Same.
+ (uminsi3): Same.
+ (umaxsi3): Same.
+ (abssi2_nopower): Disallow when TARGET_ISEL.
+ (*ne0): Same.
+ (negsf2): Change to expand and rename old pattern to *negsf2.
+ (abssf2): Change to expand and rename old pattern to *abssf2.
+
+ New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
+ fixunssfsi2.
+
+ Change patterns that check for TARGET_HARD_FLOAT or
+ TARGET_SOFT_FLOAT to also check TARGET_FPRS.
+
+ * config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
+ rs6000_isel, rs6000_fprs, rs6000_isel_string.
+ (rs6000_override_options): Add 8540 case to
+ processor_target_table.
+ Set rs6000_isel for the 8540.
+ Call rs6000_parse_isel_option.
+ (enable_mask_for_builtins): New.
+ (rs6000_parse_isel_option): New.
+ (rs6000_parse_abi_options): Add spe and no-spe.
+ (easy_fp_constant): Treat !TARGET_FPRS as soft-float.
+ (rs6000_legitimize_address): Check for TARGET_FPRS when checking
+ for TARGET_HARD_FLOAT.
+ Add case for SPE_VECTOR_MODE.
+ (rs6000_legitimize_reload_address): Handle SPE vector modes.
+ (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
+ vector modes.
+ Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
+ (rs6000_emit_move): Check for TARGET_FPRS.
+ Add cases for SPE vector modes.
+ (function_arg_boundary): Return 64 for SPE vector modes.
+ (function_arg_advance): Check for TARGET_FPRS and
+ Handle SPE vectors.
+ (function_arg): Same.
+ (setup_incoming_varargs): Check for TARGET_FPRS.
+ (rs6000_va_arg): Same.
+ (struct builtin_description): Un-constify mask field. Move up in
+ file.
+ (bdesc_2arg): Un-constify and add SPE builtins.
+ (bdesc_1arg): Same.
+ (bdesc_spe_predicates): New.
+ (bdesc_spe_evsel): New.
+ (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
+ (rs6000_expand_binop_builtin): Same.
+ (bdesc_2arg_spe): New.
+ (spe_expand_builtin): New.
+ (spe_expand_predicate_builtin): New.
+ (spe_expand_evsel_builtin): New.
+ (rs6000_expand_builtin): Call spe_expand_builtin for SPE.
+ (rs6000_init_builtins): Initialize SPE builtins. Call
+ rs6000_common_init_builtins.
+ (altivec_init_builtins): Move all non-altivec builtin code to...
+ (rs6000_common_init_builtins): ...here. New function.
+ (branch_positive_comparison_operator): Allow NE code for SPE.
+ (ccr_bit): Return correct ccr bit for SPE fp.
+ (print_operand): Emit crnor in 'D' case for SPE.
+ New case 't'.
+ Add SPE code for 'y' case.
+ (rs6000_generate_compare): Generate rtl for SPE fp.
+ (output_cbranch): Handle SPE hard floats.
+ (rs6000_emit_cmove): Handle isel.
+ (rs6000_emit_int_cmove): New.
+ (output_isel): New.
+ (rs6000_stack_info): Adjust stack frame so GPRs are saved in
+ 64-bits for SPE.
+ (debug_stack_info): Add SPE info.
+ (gen_frame_mem_offset): New.
+ (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
+ Change mode of frame pointer, when saving it, to Pmode.
+ (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
+ Misc cleanups and use gen_frame_mem_offset when appropriate.
+
+ * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
+ (TARGET_SPE_ABI): New.
+ (TARGET_SPE): New.
+ (TARGET_ISEL): New.
+ (TARGET_FPRS): New.
+ (FIXED_SCRATCH): New.
+ (RTX_COSTS): Add PROCESSOR_PPC8540.
+ (ASM_CPU_SPEC): Add case for 8540.
+ (TARGET_OPTIONS): Add isel= case.
+ (rs6000_spe_abi): New.
+ (rs6000_isel): New.
+ (rs6000_fprs): New.
+ (rs6000_isel_string): New.
+ (UNITS_PER_SPE_WORD): New.
+ (LOCAL_ALIGNMENT): Adjust for SPE.
+ (HARD_REGNO_MODE_OK): Same.
+ (DATA_ALIGNMENT): Same.
+ (MEMBER_TYPE_FORCES_BLK): New.
+ (FIRST_PSEUDO_REGISTER): Set to 113.
+ (FIXED_REGISTERS): Add SPE registers.
+ (reg_class): Same.
+ (REG_CLASS_NAMES): Same.
+ (REG_CLASS_CONTENTS): Same.
+ (REGNO_REG_CLASS): Same.
+ (REGISTER_NAMES): Same.
+ (DEBUG_REGISTER_NAMES): Same.
+ (ADDITIONAL_REGISTER_NAMES): Same.
+ (CALL_USED_REGISTERS): Same.
+ (CALL_REALLY_USED_REGISTERS): Same.
+ (SPE_ACC_REGNO): New.
+ (SPEFSCR_REGNO): New.
+ (SPE_SIMD_REGNO_P): New.
+ (HARD_REGNO_NREGS): Adjust for SPE.
+ (VECTOR_MODE_SUPPORTED_P): Same.
+ (REGNO_REG_CLASS): Same.
+ (FUNCTION_VALUE): Same.
+ (LIBCALL_VALUE): Same.
+ (LEGITIMATE_OFFSET_ADDRESS_P): Same.
+ (SPE_VECTOR_MODE): New.
+ (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
+ the GPRs. Set FIXED_SCRATCH fixed in SPE case.
+ (rs6000_stack): Add spe_gp_size, spe_padding_size,
+ spe_gp_save_offset.
+ (USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
+ (LEGITIMATE_LO_SUM_ADDRESS_P): Same.
+ (SPE_CONST_OFFSET_OK): New.
+ (rs6000_builtins): Add SPE builtins.
+
+ * testsuite/gcc.dg/ppc-spe.c: New.
+
+ * config/rs6000/eabispe.h: New.
+
+ * config/rs6000/spe.h: New.
+
+ * config/rs600/spe.md: New.
+
+ * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
+ __SIMD__ for TARGET_SPE.
+
+ * config.gcc: Add powerpc-*-eabispe* case.
+ Add spe.h to user headers for powerpc.
+
+2002-07-24 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/elf.h (STARTFILE_SPEC): Undo previous change.
+ * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
+ * config/mips/isa3264.h (STARTFILE_SPEC): Likewise.
+
+2002-07-24 Richard Henderson <rth@redhat.com>
+
+ * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR
+ form when not optimizing.
+
+2002-07-24 David Mosberger <davidm@hpl.hp.com>
+
+ * config/ia64/ia64.c (gen_thread_pointer): Fix typo in marking
+ thread_pointer_rtx as unchanging.
+
+2002-07-24 Michael Matz <matz@suse.de>
+
+ * ra-colorize.c (INV_REG_ALLOC_ORDER): New macro.
+ (free_reg): Use it.
+
+2002-07-24 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (arm_buneq, arm_bltgt): put '\' before ';' in output
+ pattern.
+ (arm_buneq_reversed, arm_bltgt_reversed): Likewise.
+ (movsicc, movsfcc, movdfcc): FAIL if UNEQ or LTGT.
+
+2002-07-24 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/elf.h (STARTFILE_SPEC): Never include crt0.o.
+ * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
+ * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine.
+
+Wed Jul 24 17:59:12 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Dump loops before clobbering
+ the structure.
+
+Wed Jul 24 17:23:16 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * rtlanal.c (keep_with_call_p): Avoid overflow in fixed_regs.
+
+2002-07-24 Frank van der Linden <fvdl@wasabisystems.com>
+
+ PR optimization/7291
+ * config/i386/i386.c (ix86_expand_clrstr): Fix bzero alignment
+ problem on x86_64.
+
+2002-07-24 Gabriel Dos Reis <gdr@nerim.net>
+
+ * pretty-print.h: Add macros from cp/error.c
+
+2002-07-24 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000-protos.h (mask_operand_wrap): Declare.
+ (mask64_2_operand): Declare.
+ (build_mask64_2_operands): Declare.
+ (and64_2_operand): Declare.
+ (extract_MB): Declare.
+ (extract_ME): Declare.
+ * config/rs6000/rs6000.c (mask64_operand): Allow all ones. Remove
+ CONST_DOUBLE code.
+ (mask_operand_wrap): New insn predicate.
+ (mask64_2_operand): Likewise.
+ (and64_2_operand): Likewise.
+ (build_mask64_2_operands): New function.
+ (extract_MB): New function.
+ (extract_ME): New function.
+ (print_operand <case m,M>): Use extract_MB and extract_ME.
+ (print_operand <case S>): Allow all ones. Remove CONST_DOUBLE support.
+ * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 't'.
+ (PREDICATE_CODES): Add and64_2_operand, mask_operand_wrap and
+ mask64_2_operand. Remove CONST_DOUBLE from mask64_operand.
+ * config/rs6000/rs6000.md (andsi3_internal3): New
+ (andsi3_internal3+1): Enable split for powerpc64.
+ (andsi3_internal3+2): New split.
+ (andsi3_internal4): Renamed old andsi3_internal3.
+ (andsi3_internal5): New.
+ (andsi3_internal5+1): Enable split for powerpc64.
+ (andsi3_internal5+2): New split.
+ (andsi3_internal6, andsi3_internal7, andsi3_internal8): New.
+ (anddi3): Handle 't' constraint.
+ (anddi3+1): New split.
+ (anddi3_internal2): Handle 't' constraint.
+ (anddi3_internal2+1): New split.
+ (anddi3_internal3): Handle 't' constraint.
+ (anddi3_internal3+1): New split.
+
+2002-07-24 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md: Remove scratch reg on insns using
+ addze and similar (plus (comparison r1 r2) r3) insns. Add
+ missing scratch reg in one case. Formatting fixes.
+
+2002-07-24 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppexp.c (parse_defined): Mark macro used.
+ * cpphash.h (struct cpp_macro): New member "used".
+ (_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New.
+ (struct cpp_reader): New member.
+ * cppinit.c (cpp_finish_options): Set first_unused_line.
+ (cpp_finish): Warn of unused macros if requested.
+ (OPT_TABLE): New switches.
+ (cpp_handle_option): Handle them.
+ * cpplib.c (do_undef): Warn if macro unused.
+ (do_ifdef, do_ifndef): Mark macro used.
+ * cpplib.h (struct cpp_options): New member.
+ * cppmacro.c (_cpp_warn_if_unused_macro): New.
+ (enter_macro_context): Mark macro used.
+ (_cpp_create_definition): Mark macro unused; warn if unused
+ when redefined.
+ * cpptrad.c (scan_out_logcial_line, push_replacement_text):
+ Mark macros used.
+ * doc/cppopts.texi: Update.
+
+2002-07-23 Neil Booth <neil@daikokuya.co.uk>
+
+ * dwarf2out.c (SECTION_ASM_OP,
+ ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
+ * system.h (SECTION_ASM_OP): Poison.
+ * tree.c (FILE_FUNCTION_PREFIX_LEN): Remove.
+ * config/alpha/alpha-interix.h, config/mips/linux.h
+ (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
+ * config/mmix/mmix-protos.h, config/mmix/mmix.c
+ (mmix_asm_output_define_label_difference_symbol): Remove.
+ * config/mmix/mmix.h
+ (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
+ * doc/tm.texi: Remove documentation.
+
+Tue Jul 23 21:49:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * recog.c (asm_operand_ok): Allow float CONST_VECTORs for 'F'.
+ (constrain_operands): Likewise.
+ * regclass.c (record_reg_classes): Likewise.
+ * reload.c (find_reloads): Likewise.
+ * doc/md.texi: Likewise.
+
+ * reload.c (find_reloads_toplev): Use simplify_gen_subreg.
+ * simplify-rtx.c (simplify_subreg): When converting to a non-int
+ mode, try to convert to an integer mode of matching size first.
+
+ * simplify-rtx.x (simplify_subreg): When constructing a CONST_VECTOR
+ from individual subregs, check that each subreg has been generated
+ sucessfully.
+
+2002-07-23 Neil Booth <neil@daikokuya.co.uk>
+
+ * genautomata.c (VLA_HWINT_SHORTEN, VLA_HWINT_LAST): Remove.
+ * df.c (HANDLE_SUBREG, FOR_EACH_BB_IN_BITMAP_REV,
+ FOR_EACH_BB_IN_SBITMAP): Remove.
+ * gcse.c (NEVER_SET, FOLLOW_BACK_EDGES): Remove.
+ * haifa-sched.c (DONE_PRIORITY, MAX_PRIORITY, TAIL_PRIORITY,
+ LAUNCH_PRIORITY, DONE_PRIORITY_P, LOW_PRIORITY_P): Remove.
+ * loop.c (PREFETCH_BLOACK_IN_LOOP_MIN,
+ PREFETCH_LIMIT_TO_SIMULTANEOUS): Remove.
+ * regrename.c (REGNO_MODE_OK_FOR_BASE_P): Remove.
+
+2002-07-23 Gabriel Dos Reis <gdr@nerim.net>
+
+ * pretty-print.h: New file.
+
+2002-07-23 Paul Koning <pkoning@equallogic.com>
+
+ * real.c (REAL_WORDS_BIG_ENDIAN): Make 1 for DEC.
+ (LARGEST_EXPONENT_IS_NORMAL): Ditto.
+ (VAX_HALFWORD_ORDER): Define (1 for DEC VAX, 0 otherwise).
+ (TARGET_G_FLOAT): Default to 0 if not defined.
+ (ieeetoe): New, common routine to convert target format floats
+ to internal form.
+ (e24toe, e53toe): Change to use ieeetoe, distinguish DEC
+ vs. others.
+ (e113toe): Change to use ieeetoe.
+
+2002-07-23 Roman Lechtchinsky <rl@cs.tu-berlin.de>
+
+ * real.c (REAL_WORDS_BIG_ENDIAN): Make sure it is 0 for DEC and 1 for
+ IBM.
+ (e53toe): Assume IEEE if non of DEC, IBM and C4X is defined.
+ (e64toe): Remove special cases for DEC and IBM. Remove support for
+ ARM_EXTENDED_IEEE_FORMAT.
+ (e24toe): Remove special cases for DEC.
+ (significand_size): Simplify. Indent.
+ (ieee_format, ieee_24, ieee_53, ieee_64, ieee_113): New.
+ (etoieee, toieee): New.
+ (etoe113, toe113, etoe64, toe64, etoe53, toe53, etoe24, toe24): Use
+ etoieee and toieee for IEEE arithmetic.
+
+2002-07-23 Gabriel Dos Reis <gdr@nerim.net>
+
+ * doc/extend.texi: Say ISO C90, not ISO C89.
+ * doc/invoke.texi: Likewise.
+ * doc/standards.texi: Likewise.
+
+2002-07-23 Steve Ellcey <sje@cup.hp.com>
+
+ * gcc/explow.c (convert_memory_address): Fix conversion of CONSTs.
+ Fix permutation of conversion and plus/mult.
+ * gcc/builtins.c (expand_builtin_memcpy) Ensure return pointer is
+ ptr_mode and not Pmode when POINTERS_EXTEND_UNSIGNED is defined.
+ (expand_builtin_strncpy) Ditto.
+ (expand_builtin_memset) Ditto.
+
+2002-07-23 Gabriel Dos Reis <gdr@nerim.net>
+
+ Fix PR/7363:
+ * c-common.c (c_sizeof_or_alignof_type): New function.
+ (c_alignof): Remove definition.
+ * c-common.h (c_sizeof, c_alignof): Define as macros.
+ (c_sizeof_or_alignof_type): Declare.
+ (my_friendly_assert): Moved from cp/cp-tree.h
+ * c-typeck.c (c_sizeof): Remove definition.
+
+2002-07-23 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (try_replace_reg): Use num_changes_pending.
+ * recog.c (num_changes_pending): New function.
+ (validate_replace_src): Use validate_repalce_src_group.
+ (validate_replace_src_group): New.
+ * recog.h (validate_repalce_src_group): New.
+ (num_changes_pending): Likewise.
+
+Tue Jul 23 12:16:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * calls.c (emit_library_call_value_1): If
+ FUNCTION_ARG_PASS_BY_REFERENCE is true, pretend this is neither
+ libcall, const call nor pure call.
+
+2002-07-23 Neil Booth <neil@daikokuya.co.uk>
+
+ * config/m88k/m88k.h (SECTION_ASM_OP): Remove.
+
+2002-07-23 Neil Booth <neil@daikokuya.co.uk>
+
+ * vmsdbgout.c (SECTION_ASM_OP): Remove.
+
+2002-07-23 Neil Booth <neil@daikokuya.co.uk>
+
+ * config/i386/i386.c (AT_BP): Remove.
+
+2002-07-23 Neil Booth <neil@daikokuya.co.uk>
+
+ * defaults.h (obstack_chunk_alloc, obstack_chunk_free):
+ Default definition.
+ * gcse.c: Don't define obstack_chunk_free.
+ * collect2.c, conflict.c, df.c, diagnostic.c, fix-header.c,
+ flow.c, gcc.c, genattrtab.c, genautomata.c, genflags.c, gensupport.c,
+ integrate.c, loop.c, ra.c, read-rtl.c, regrename.c, reload1.c,
+ reorg.c, tlink.c, tree.c, config/arm/arm.c, objc/objc-act.c:
+ Don't define obstack macros.
+
+2002-07-22 Stephane Carrez <stcarrez@nerim.fr>
+
+ PR target/6744
+ * config/m68hc11/m68hc11.c (m68hc11_z_replacement): Also replace
+ ASM_OPERANDS instructions.
+
+2002-07-22 Stephane Carrez <stcarrez@nerim.fr>
+
+ PR target/7361
+ * config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept
+ constant addresses only on 68HC12.
+
+2002-07-22 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppfiles.c (stack_include_file): Correct test of whether
+ a dependency should be output.
+
+2002-07-22 David Edelsohn <edelsohn@gnu.org>
+
+ * collect2.c (is_ctor_dtor): Add other possible JOINER values.
+
+2002-07-22 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (movqi): If optimizing and we can create pseudos, use
+ a ZERO_EXTEND to load from memory, then copy the result into the
+ target.
+ (movhi): Likewise, but only for ARMv4.
+
+2002-07-22 Neil Booth <neil@daikokuya.co.uk>
+
+ * ssa-ccp.c (PHI_PARMS): Remove.
+
+2002-07-22 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS
+ on big-endian targets.
+
+2002-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE,
+ HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
+ HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE):
+ New formatting macros.
+
+ * ra-debug.c (dump_static_insn_cost): Avoid string concatenation.
+
+Mon Jul 22 15:27:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * rtlanal.c (subreg_regno_offset): Return correct offset for
+ big endian paradoxical subregs.
+
+ * optabs.c (expand_vector_unop): Don't expand using sub_optab
+ if we got the wrong mode.
+
+ * hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
+ * genrecog.c (write_switch, write_cond): Use it.
+ * genemit.c (gen_exp): Likewise.
+
+2002-07-22 Jakub Jelinek <jakub@redhat.com>
+
+ * c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE.
+
+2002-07-22 Jakub Jelinek <jakub@redhat.com>
+
+ * c-decl.c (build_compound_literal): Defer compound literal decls
+ until until file end to emit them only if they are actually used.
+
+2002-07-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ra-build.c (check_conflict_numbers): Hide unused function.
+ (livethrough_conflicts_bb): Avoid automatic aggregate
+ initialization.
+ (parts_to_webs_1): Avoid `U' integer constant modifier.
+ (conflicts_between_webs): Wrap a variable in the macro controlling
+ its usage.
+ * ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE.
+ (dump_igraph, dump_graph_cost): Avoid string concatenation
+ (dump_static_insn_cost): Avoid automatic aggregate
+ initialization.
+ * ra-rewrite.c (insert_stores): Avoid automatic aggregate
+ initialization.
+ (dump_cost): Avoid string concatenation
+
+2002-07-21 Richard Henderson <rth@redhat.com>
+
+ * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use
+ GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.
+
+2002-07-21 Richard Henderson <rth@redhat.com>
+
+ * unroll.c (find_splittable_givs): Do not split DEST_ADDR givs
+ that are not unrolled completely.
+
+2002-07-21 Richard Henderson <rth@redhat.com>
+
+ * loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
+ * loop.c (strength_reduce): Update.
+ * toplev.c (rest_of_compilation): Do unrolling in the first
+ loop pass, not the second.
+
+2002-07-21 Richard Henderson <rth@redhat.com>
+
+ * emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL
+ when flag_argument_noalias == 2.
+ * alias.c (nonoverlapping_memrefs_p): Handle that.
+ * print-rtl.c (print_mem_expr): Likewise.
+
+2002-07-21 Hartmut Schirmer <hartmut.schirmer@arcor.de>
+
+ * libgcc2.c (__divdi3, __moddi3): Use unary minus operator
+ instead of __negdi2 directly.
+
+2002-07-21 Neil Booth <neil@daikokuya.co.uk>
+
+ * gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
+ * function.c (SYMBOL__MAIN): Remove definition.
+ * global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove.
+ * predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove.
+ * profile.c (GCOV_INDEX_TO_BB): Remove.
+ * sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove.
+ * simplify-rtx.c (FIXED_BASE_PLUS_P): Remove.
+
+2002-07-21 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-lex.c (GET_ENVIRONMENT): Remove.
+ * collect2.c (GET_ENV_PATH_LIST): Remove.
+ (prefix_from_env): Use GET_ENVIRONMENT.
+ * cppinit.c (GET_ENV_PATH_LIST): Remove.
+ (init_standard_includes): Use GET_ENVIRONMENT.
+ * defaults.h (GET_ENVIRONMENT): Define here if not already.
+ * gcc.c (GET_ENV_PATH_LIST): Remove.
+ (make_relative_prefix, process_command): Update.
+ * protoize.c (GET_ENV_PATH_LIST): Remove.
+ (do_processing): Update.
+
+2002-07-21 Gabriel Dos Reis <gdr@nerim.net>
+
+ * c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
+ (grokdeclarator): Likewise.
+ * c-format.c (C_STD_NAME): Likewise.
+ * c-lex.c (interpret_integer): Likewise.
+ * c-typeck.c (build_array_ref): Likewise.
+ * cpplex.c (_cpp_lex_direct): Likewise.
+ * toplev.c (documented_lang_options): Likewise.
+
+2002-07-21 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-format.c (T99_I, T99_UI): Remove.
+
+2002-07-21 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-typeck.c (SAVE_SPELLING_DEPTH): Remove.
+
+Sun Jul 21 21:36:41 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (do_local_cprop): Do not extend lifetimes of registers set by
+ do_local_cprop.
+
+2002-07-21 Andreas Jaeger <aj@suse.de>
+
+ * reload1.c (fixup_abnormal_edges): Remove unused variable.
+
+2002-07-21 Bernd Schmidt <bernds@redhat.com>
+
+ Improvements for the ifcvt pass from Michael Meissner, with patches
+ by Richard Sandiford <rsandifo@redhat.com>
+ * basic-block.h (struct ce_if_block, ce_if_block_t): New types.
+ * ifcvt.c (cond_exec_changed_p): New static variable.
+ (last_active_insn): New function, renamed from last_active_insn_p
+ and changed to return the last active insn in a basic block. All
+ callers updated.
+ (block_fallthru): New function.
+ (cond_exec_process_insns): New argument CE_INFO. Pass it to
+ IFCVT_MODIFY_INSN. All callers updated.
+ Return false if START or END are NULL.
+ Handle case where we're processing an insn that is already
+ conditional.
+
+ (noce_process_if_block): CE_INFO argument rather than
+ multiple args containing the involved basic blocks. All callers
+ changed.
+ (process_if_block, merge_if_block, find_if_block,
+ cond_exec_process_if_block): Likewise.
+
+ (cond_exec_process_if_block): New arg DO_MULTIPLE_P. All callers
+ changed.
+ Use new function last_active_insn to simplify some code.
+ New code to handle multiple tests.
+ Call IFCVT_MODIFY_CANCEL in all failure cases, otherwise set
+ cond_exec_changed_p to TRUE.
+
+ (process_if_block): New code to handle multiple tests.
+ (merge_if_block): Likewise.
+ (find_if_header): New arg PASS. Changed to return the currently
+ processed basic block or NULL instead of true/false. All callers
+ changed.
+ Call IFCVT_INIT_EXTRA_FIELDS.
+ (block_jumps_and_fallthru_p): New function.
+ (find_if_block): Discover opportunities to convert multiple tests.
+ Add additional debugging output.
+ Update the ce_info structure before returning.
+
+ (if_convert): Run multiple passes of if-conversion.
+ * doc/tm.texi (IFCVT_MODIFY_TESTS, IFCVT_MODIFY_INSN,
+ IFCVT_MODIFY_FINAL, IFCVT_MODIFY_CANCEL, IFCVT_MODIFY_MULTIPLE_TESTS,
+ IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS): Update documentation for
+ these macros.
+
+Sun Jul 21 00:54:54 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c: Include cselib.h
+ (constptop_register): Break out from ...
+ (cprop_insn): ... here; kill basic_block argument.
+ (do_local_cprop, local_cprop_pass): New functions.
+ (one_cprop_pass): Call local_cprop_pass.
+
+2002-07-20 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_relational_operation): Optimize
+ abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).
+
+2002-07-20 Michae Matz <matz@suse.de>
+
+ * ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
+
+2002-07-20 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppexp.c (struct op): Add token pointer.
+ (check_promotion, CHECK_PROMOTION): New.
+ (optab): Update.
+ (_cpp_parse_expr): Update, use token pointer of struct op.
+ (reduce): Warn about change of sign owing to promotion.
+ * cppinit.c (cpp_handle_option): New warning if -Wall.
+ * cpplib.h (struct cpp_options): New member.
+
+2002-07-19 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
+ fpu list. Separate Power4 compare and delayed_compare. Correct
+ Power4 fpcompare.
+ (fix_truncdfsi2_internal): Restore FPR preference.
+ * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
+ mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc.
+
+2002-07-19 Momchil Velikov <velco@fadata.bg>
+
+ * reload1.c (reload_as_needed): Duplicate oldpat.
+
+2002-07-20 Alan Modra <amodra@bigpond.net.au>
+
+ PR optimization/7130
+ * loop.h (struct loop_info): Add "preconditioned".
+ * unroll.c (unroll_loop): Set it.
+ * doloop.c (doloop_modify_runtime): Correct count for unrolled loops.
+
+2002-07-19 Zack Weinberg <zack@codesourcery.com>
+
+ * rtl.def (CODE_LABEL): Remove slot 8.
+ * rtl.h (struct rtx_def): Document new uses of jump and call fields.
+ (LABEL_ALTERNATE_NAME): Delete.
+ (LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
+ * defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.
+
+ * final.c (output_alternate_entry_point): New.
+ (final_scan_insn): Use it instead of
+ ASM_OUTPUT_ALTERNATE_LABEL_NAME. Do not consider possibility
+ of a case label being an alternate entry point.
+
+ * cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
+ * emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
+ Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
+ (field deleted).
+ * print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.
+
+ * doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
+ LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
+ * doc/tm.texi: Delete documentation of
+ ASM_OUTPUT_ALTERNATE_LABEL_NAME.
+
+2002-07-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
+ (PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
+ (LINK_SPEC): Define.
+ (STARTFILE_SPEC): Define.
+ (ENDFILE_SPEC): Define.
+
+ * config/mips/iris6-o32.h (LINK_SPEC): Move ...
+ * config/mips/iris6-o32-as.h (LINK_SPEC): ... here.
+
+ * config/mips/iris6-o32-gas.h: New file.
+ * config.gcc (mips-sgi-irix6*o32): Use it.
+
+ * config/mips/t-iris5-gas: New file.
+ * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
+
+2002-07-19 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppexp.c (ALWAYS_EVAL): Remove.
+ (optab, reduce): Always evaluate.
+ (num_unary_op, num_binary_op, num_div_op): Issue diagnostics
+ only if not skipping evaluation.
+
+2002-07-19 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * config/avr/avr.c (debug_hard_reg_set): Remove.
+
+2002-07-19 Chris Demetriou <cgd@broadcom.com>
+
+ * gcc.c (cpp_options): Include "%1" (cc1_spec).
+
+2002-07-19 Richard Henderson <rth@redhat.com>
+
+ * loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
+
+2002-07-19 Alan Modra <amodra@bigpond.net.au>
+
+ * prefix.c (update_path): Don't zap single `.' path components
+ unless followed by another `.' and fix typo last patch.
+
+2002-07-18 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppexp.c (cpp_num_mul): Remove unused parameter.
+ (UNARY, BINARY, OTHER, binary_handler): Remove.
+ (ALWAYS_EVAL): New.
+ (optab): Update.
+ (reduce): Refactor to a large switch, don't use a function
+ pointer.
+
+2002-07-18 Bo Thorsen <bo@berlioz.suse.de>
+
+ * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always.
+
+Thu Jul 18 19:39:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
+ (sh_expand_binop_v2sf): Likewise.
+ * sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA.
+ (int_gpr_dest, trunc_hi_operand): New functions.
+ * sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and
+ trunc_hi_operand.
+ (SPECIAL_MODE_PREDICATES, any_register_operand): Define.
+ * sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about.
+ (adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise.
+ (ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise.
+ (and_shl_scratch+[12], zero_extendhidi2+1): Likewise.
+ (zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise.
+ (extendhisi2_media+1, extendqisi2_media+1): Likewise.
+ (movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise.
+ (movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise.
+ (movsf_ie+1): Likewise.
+ (loaddi_trunc): Use int_gpr_dest predicate.
+ (use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s).
+ (mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise.
+ (casesi_worker_0+[12], casesi_worker): Likewise.
+ (shcompact_preserve_incoming_args): Likewise.
+ (mov_nop): Use any_register_operand predicate.
+ (mperm_w0): Use trunc_hi_operand predicate.
+
+2002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa-linux.h (DWARF2_UNWIND_INFO): Delete define.
+ * pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct
+ numbering.
+
+2002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.c (output_deferred_plabels): Remove unused millicode enum mulU.
+
+2002-07-18 Richard Henderson <rth@redhat.com>
+
+ PR optimization/7147
+ * ifcvt.c (noce_get_condition): Make certain that the condition
+ is valid at JUMP.
+
+Thu Jul 18 13:44:51 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (barrier_align, push): Shut up compiler warnings.
+ (initial_elimination_offset,sh_media_init_builtins): Likewise.
+ (reg_no_subreg_operand): Delete.
+
+2002-07-17 Bo Thorsen <bo@suse.de>
+
+ * config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option.
+ (STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations.
+ (STARTFILE_SPEC): Remove hardcoded library paths.
+ (ENDFILE_SPEC): Likewise.
+
+Thu Jul 18 09:38:59 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached.
+
+ * gcse.c (try_replace_reg): Do not return false positives.
+
+2002-07-18 Alan Modra <amodra@bigpond.net.au>
+
+ * prefix.c: (update_path): Strip ".." components when prior dir
+ doesn't exist. Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.
+
+ * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
+ (ASM_OUTPUT_REG_POP): Likewise.
+
+2002-07-18 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (first_reg_to_save): Remove bogus
+ adjustments to first_reg for profiling case.
+ (output_function_profiler): Correct lr save slot for ABI_AIX_NODESC.
+ Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC.
+ Save static chain reg to sp + 12 on ABI_AIX_NODESC.
+ * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define.
+ (ASM_OUTPUT_REG_POP): Define.
+ * config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef.
+ (ASM_OUTPUT_REG_POP): Undef.
+
+2002-07-17 Neil Booth <neil@daikokuya.co.uk>
+
+ * cpplib.c (do_sccs): Handle #sccs on all systems.
+ * system.h (SCCS_DIRECTIVE): Poison.
+ * config/darwin.h, config/freebsd.h, config/netbsd.h,
+ config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h,
+ config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h,
+ config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h,
+ config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h,
+ config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h,
+ config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h,
+ config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h:
+ Remove all references to SCCS_DIRECTIVE.
+ * doc/cpp.texi, doc/tm.texi: Update.
+
+Wed Jul 17 19:23:32 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * regrename.c (maybe_mode_change): New function.
+ (find_oldest_value_reg, copyprop_hardreg_forward_1): Use it.
+
+2002-07-17 Rodney Brown <rbrown64@csc.com.au>
+
+ * config/i386/i386.c (ix86_expand_int_movcc): In the general case
+ suppress addition when either ct or cf are zero.
+
+2002-07-17 Eric Botcazou <ebotcazou@multimania.com>
+ Glen Nakamura <glen@imodulo.com>
+
+ PR optimization/6713
+ * loop.c (loop_givs_rescan): Explicitly delete the insn that
+ sets a non-replaceable giv after issuing the new one.
+
+2002-07-17 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
+ eval_token): Clarify and correct use of "bool" variables.
+ * cpplib.h (struct cpp_options): Similarly.
+ * cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
+ * cpptrad.c (recursive_macro): Similarly.
+
+Wed Jul 17 17:08:06 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config/sh/lib1funcs.asm (udivsi3_i4): Implement SHcompact version in
+ SHmedia code.
+
+ * sh.md (cmpgtudi_media): Remove spurious @.
+
+ * config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
+ * sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian.
+
+ * config/sh/lib1funcs.asm (init_trampoline): New entry point.
+ * sh-protos.h (sh_initialize_trampoline): Declare.
+ * sh.c (sh_initialize_trampoline): New function.
+ * sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32.
+ (TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA.
+ (INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline.
+ (TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact.
+ * sh.md (initialize_trampoline, double_shori): New patterns.
+ (initialize_trampoline_compact): Likewise.
+ (shmedia32_initialize_trampoline_big): Remove.
+ (shmedia32_initialize_trampoline_little): Likewise.
+
+ * sh-protos.h (binary_float_operator): Remove declaration.
+ (sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare.
+ * sh.c (print_operand, case 'N'): Check against CONST0_RTX.
+ (unary_float_operator, sh_expand_unop_v2sf): New functions.
+ (sh_expand_binop_v2sf): Likewise.
+ (zero_vec_operand): Delete.
+ (SH_BLTIN_UDI): New builtin shared signature define. Renumbered
+ all non-shared ones.
+ (bdesc): Change all the mextr builtins to use SH_BLTIN_UDI.
+ Enable nsb and byterev.
+ * sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS.
+ (HARD_REGNO_MODE_OK): Allow TImode in fp regs. Allow V2SFmode
+ in general regs.
+ (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. Remove clause for
+ immediate operands.
+ (SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands.
+ Add DF_HI_REGS.
+ (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow
+ lowpart fp regs - only for big endian for now.
+ (LEGITIMATE_CONSTANT_P): Don't allow nonzero float vectors
+ when FPU is in use.
+ (EXTRA_CONTRAINT_U): Check against CONST0_RTX.
+ (LOAD_EXTEND_OP): NIL for SImode.
+ (REGISTER_MOVE_COST): Add DF_HI_REGS. Const for moves between
+ general and fp registers is 4.
+ PREDICATE_CODES: Amend binary_float_operator entry.
+ Remove zero_vec_operand. Add unary_float_operator.
+ * sh.md (udivsi3_i4_media): Use truncate instead of paradoxical
+ subreg SET_DEST.
+ (truncdisi2, truncdihi2, movv2sf): Allow memory destinations.
+ (truncdiqi2): Do sign extension.
+ (movsi_media, movdi_media): Allow to use r63 to an fp register.
+ (movdf_media, movsf_media): Likewise.
+ (movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS.
+ Collapse to one define_insn_and_split. Allow immediate sources.
+ (addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns.
+ (movv4sf_i): Allow immediate sources. Use simplify_gen_subreg.
+ (movv4sf): Allow immediate sources.
+ (movsf_media_nofpu+1): Don't split moves to FP registers.
+ (unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns.
+ (movv8qi_i+3): Check against CONST0_RTX.
+ (mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode
+ for input and output operands. Fix argument 3 to gen_mextr_rl.
+ (mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/
+ (msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise.
+ (mshf0_w, fipr, ftrv): Likewise.
+ (mshfhi_l_di): Now insn_and_split. Can handle FP regs.
+
+2002-07-17 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
+
+ * arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from
+ NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively. All uses changed.
+ * arm.c: Similarly.
+
+2002-07-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_sign_extend): Declare.
+ * config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove.
+ (TARGET_SWITCHES): Remove debugh.
+ (ISA_HAS_TRUNC_W): New macro.
+ (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64.
+ (PREDICATE_CODES): Remove se_nonimmediate_operand.
+ * config/mips/mips.c (movdi_operand): Allow sign-extensions of
+ any SImode move_operand.
+ (se_nonimmediate_operand): Remove.
+ (mips_sign_extend): New.
+ (mips_move_2words): Use it for sign-extended source operands.
+ (override_options): Allow integers to be put into single FPRs.
+ (mips_secondary_reload_class): Handle integers in float registers.
+ * config/mips/mips.md (extendsidi2): Turn into a define_expand.
+ (fix_truncsfsi2, fix_truncdfsi2): Likewise.
+ (fix_truncdfsi2_insn, fix_truncdfsi2_macro): New.
+ (fix_truncsfsi2_insn, fix_truncsfsi2_macro): New.
+ (fix_truncdfdi2): Provide only a single alternative, in which the
+ integer is in a float register. Depend on TARGET_FLOAT64 rather
+ than TARGET_64BIT.
+ (fix_truncsfdi2, floatdidf2, floatdisf2): Likewise.
+ (floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency.
+ (movdi_internal2): Don't allow the source operand to be sign-extended.
+ Add alternatives for float registers.
+ (*movdi_internal2_extend): New. Version of movdi_internal2 that
+ allows sign-extension.
+ (*movdi_internal2_mips16): Name the existing mips16 movdi pattern.
+ (movsi_internal2): Rename to movsi_internal. Add alternatives for
+ float registers. Remove TARGET_DEBUG_H_MODE test.
+ (movhi_internal1): Rename to movhi_internal. Don't check
+ TARGET_DEBUG_H_MODE. Fix transposed *d and *f source constraints.
+ (movqi_internal1): Rename to movqi_internal and remove
+ TARGET_DEBUG_H_MODE dependency.
+ (movsi_internal1, movhi_internal2, movqi_internal2): Remove.
+
+2002-07-16 Jim Wilson <wilson@redhat.com>
+
+ * toplev.c (lang_dependent_init): Create function context for
+ init_expr_once.
+
+2002-07-16 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't
+ --gc-sections if -r.
+ * config/cris/cris.h: Ditto.
+
+2002-07-16 Rodney Brown <rbrown64@csc.com.au>
+
+ * config/i386/i386.c (ix86_expand_int_movcc): In the case where
+ the comparison directly gives a mask suppress addition when cf is
+ zero by complementing the mask.
+
+2002-07-16 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in: Delete references to enquire.
+ * enquire.c: Move to contrib.
+
+2002-07-16 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (ASM_OUTPUT_LABEL): Move to here from
+ config/rs6000/darwin.h.
+ (ASM_OUTPUT_SKIP): Ditto.
+ (TEXT_SECTION_ASM_OP): Ditto.
+ (DATA_SECTION_ASM_OP): Ditto.
+ (ASM_APP_ON): Define.
+ (ASM_APP_OFF): Define.
+ * config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP,
+ TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove.
+
+ * config/darwin.c (func_name_maybe_scoped): Remove unused decl.
+ (machopic_function_base_name): Declare result to be const.
+ (machopic_non_lazy_ptr_name): Ditto.
+ (machopic_stub_name): Ditto.
+ * config/darwin-protos.h: Ditto for the prototypes.
+
+Wed Jul 17 00:22:39 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * m68hc11.c (m68hc11_reorg): Do not rebuild CFG.
+
+Wed Jul 17 00:20:48 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (prefetch): Fix for 64bit mode.
+ (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
+
+Wed Jul 17 00:19:20 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.h (MACHINE_DEPENDENT_REORG): New macro.
+ * i386.c (x86_machine_dependent_reorg): New function.
+ * i386-protos.h (x86_machine_dependent_reorg): Declare.
+
+2002-07-16 Zack Weinberg <zack@codesourcery.com>
+
+ * builtins.c (std_expand_builtin_va_start): Remove unused
+ first argument.
+ (expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
+ std_expand_builtin_va_start with just two arguments.
+ * expr.h: Update prototypes.
+
+ * alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
+ arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
+ i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
+ m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
+ mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
+ rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
+ s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
+ sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
+ xtensa-protos.h, xtensa.h, xtensa.c: Remove unused first
+ argument from all implementations of EXPAND_BUILTIN_VA_START
+ and all uses of std_expand_builtin_va_start.
+
+Tue Jul 16 19:32:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * regrename.c (copy_value): Don't record high part copies.
+
+2002-07-16 Steve Ellcey <sje@cup.hp.com>
+
+ * gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
+ (fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL.
+ * gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function.
+
+2002-07-16 Ian Dall <ian@sibyl.beware.dropbear.id.au>
+
+ * doc/invoke.texi (NS32K Options): Document -mieee-compare option
+
+ * config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge
+ into addsi3 using register class "x" and "y".
+
+ * config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
+ "earlyclobber" constraint modifier for some alternative.
+
+ * config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
+ (*ble, *blt): Flag to indicate bCOND and sCOND should check for
+ unordered.
+ config/ns32k/ns32k.h (CC_UNORD): define corresponding mask.
+
+ * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE)
+ (TARGET_SWITCHES): Add -mieee-compare option.
+ (OVERRIDE_OPTIONS): 32332 is a subset of
+ 32532. Don't use IEEE_COMPARE -funsafe-math-optimizations.
+ (TARGET_SWITCHES): Fix description of bitfield option.
+ * config/ns32k/netbsd.h (TARGET_DEFAULT): Add
+ -mieee-compare option. Remove 32332 flag.
+
+2002-07-16 Steve Ellcey <sje@cup.hp.com>
+
+ * explow.c (convert_memory_address): Remove special handling
+ when POINTERS_EXTEND_UNSIGNED < 0.
+ * config/ia64.md (movsi_symbolic): New instruction for ILP32 mode.
+ (movedi_symbolic): Fix typo.
+ (load_fptr): Remove mode restriction so it works for SI and DI.
+ (load_fptr_internal1): Ditto.
+ (load_gprel): Ditto.
+ (load_symptr_internal1): Ditto.
+ (call_pic): Ditto.
+ * config/ia64.c (call_operand): Modify mode check.
+ (ia64_expand_load_address): Handle DI and SI addresses and symbols.
+ (ia64_expand_move): Ditto.
+ (ia64_assemble_integer): Handle SImode function pointers.
+ (ia64_expand_fetch_and_op): Handle SImode mem addresses.
+ (ia64_expand_op_and_fetch): Ditto.
+ (ia64_expand_compare_and_swap): Ditto.
+ (ia64_expand_lock_test_and_set): Ditto.
+ (ia64_expand_lock_release): Ditto.
+
+2002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
+
+ * arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.
+
+2002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
+ Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
+ CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic.
+
+2002-07-16 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (stack_tie): New insn. Use an idiom that the alias code
+ understands to be a memory clobber.
+ * arm.c (arm_expand_prologue): Use it.
+
+2002-07-16 Daniel Berlin <dberlin@dberlin.org>
+
+ * ra-rewrite.c: #include reload.h, insn-config.h
+ * ra-build.c: #include reload.h
+ * Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
+ depend on reload.h, insn-config.h.
+
+Tue Jul 16 11:57:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * expr.c (emit_move_insn_1): Handle arbitrary moves that are
+ the same size as a word.
+
+ * regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN /
+ BYTES_BIG_ENDIAN into account.
+
+Tue Jul 16 12:22:44 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (prefetch): Fix for 64bit mode.
+ (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
+
+ * i386.md (movss, movsd): Use xorps/xorpd for Athlon.
+
+2002-07-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.
+
+2002-07-15 Zack Weinberg <zack@codesourcery.com>
+
+ * ginclude/varargs.h: Replace with stub which issues #error.
+ * ginclude/stdarg.h: __builtin_stdarg_start is renamed
+ __builtin_va_start.
+
+ * builtins.def (BUILT_IN_VARARGS_START): Delete.
+ (BUILT_IN_VA_START): New.
+ * builtins.c (expand_builtin_va_start): Eliminate first
+ argument and code to implement pre-ISO varargs.
+ (std_expand_builtin_va_start): Ignore first argument; it is
+ always 1.
+ (expand_builtin): Handle BUILT_IN_VA_START and
+ BUILT_IN_STDARG_START identically. Delete
+ BUILT_IN_VARARGS_START case.
+
+ * function.c (assign_parms): Delete hide_last_arg and all
+ its uses.
+ (mark_varargs): Delete function.
+ * function.h (struct function): Delete 'varargs' bit.
+ (current_function_varargs): Delete macro.
+ * tree.h: Don't declare mark_varargs.
+
+ * c-decl.c (c_function_varargs, c_mark_varargs): Delete.
+ (c_expand_body): Don't call mark_varargs.
+ * c-objc-common.c: Handle BUILT_IN_VA_START and
+ BUILT_IN_STDARG_START identically. Delete
+ BUILT_IN_VARARGS_START case.
+ * c-tree.h: Don't declare c_mark_varargs.
+ * c-parse.in: Remove grammar rules for '&...' (which has been
+ commented out since before 2.7.2) and for '...' in K+R
+ argument declarations.
+
+ * builtins.c, function.c, integrate.c, sibcall.c,
+ config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h,
+ config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c,
+ config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c,
+ config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h,
+ config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
+ config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c,
+ config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h,
+ config/stormy16/stormy16.c: Delete all references to
+ current_function_varargs, and code predicated on that flag.
+
+ * config/alpha/alpha.c (alpha_va_start),
+ config/arc/arc.c (arc_va_start),
+ config/i386/i386.c (ix86_va_start),
+ config/mips/mips.c (mips_va_start),
+ config/mn10300/mn10300.c (mn10300_va_start),
+ config/rs6000/rs6000.c (rs6000_va_start),
+ config/s390/s390.c (s390_va_start),
+ config/sh/sh.c (sh_va_start),
+ Ignore first argument; it is always 1.
+
+ * config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start.
+ * config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start.
+ * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
+ Delete m68hc11_va_start.
+ * config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h:
+ No need to define EXPAND_BUILTIN_VA_START.
+
+ * doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi,
+ doc/trouble.texi: Remove references to GCC-provided <varargs.h>.
+
+2002-07-15 Eric Botcazou <ebotcazou@multimania.com>
+
+ PR optimization/7153
+ * regmove.c (optimize_reg_copy_3): Don't optimize if the register
+ dies in more than one insn.
+
+2002-07-15 Jason Thorpe <thorpej@wasabisystems.com>
+
+ * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Remove.
+
+2002-07-15 Michael Matz <matz@suse.de>,
+ Daniel Berlin <dberlin@dberlin.org>,
+ Denis Chertykov <denisc@overta.ru>
+
+ Add a new register allocator.
+
+ * ra.c: New file.
+ * ra.h: New file.
+ * ra-build.c: New file.
+ * ra-colorize.c: New file.
+ * ra-debug.c: New file.
+ * ra-rewrite.c: New file.
+
+ * Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
+ (ra-rewrite.o): New .o files for libbackend.a.
+ (GTFILES): Add basic-block.h.
+
+ * toplev.c (flag_new_regalloc): New.
+ (f_options): New option "new-ra".
+ (rest_of_compilation): Call initialize_uninitialized_subregs()
+ only for the old allocator. If flag_new_regalloc is set, call
+ new allocator, instead of local_alloc(), global_alloc() and
+ friends.
+
+ * doc/invoke.texi: Document -fnew-ra.
+ * basic-block.h (FOR_ALL_BB): New.
+ * config/rs6000/rs6000.c (print_operand): Write small constants
+ as @l+80.
+
+ * df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
+ (df_reg_table_realloc): Make size at least as large as max_reg_num().
+ (df_insn_table_realloc): Size argument now is absolute, not relative.
+ Changed all callers.
+
+ * gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
+ * regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.
+
+ 2002-06-20 Michael Matz <matz@suse.de>
+
+ * df.h (struct ref.id): Make unsigned.
+ * df.c (df_bb_reg_def_chain_create): Remove unsigned cast.
+
+ 2002-06-13 Michael Matz <matz@suse.de>
+
+ * df.h (DF_REF_MODE_CHANGE): New flag.
+ * df.c (df_def_record_1, df_uses_record): Set this flag for refs
+ involving subregs with invalid mode changes, when
+ CLASS_CANNOT_CHANGE_MODE is defined.
+
+ 2002-05-07 Michael Matz <matz@suse.de>
+
+ * reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.
+
+ 2002-05-03 Michael Matz <matz@suse.de>
+
+ * sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.
+
+ Sat Feb 2 18:58:07 2002 Denis Chertykov <denisc@overta.ru>
+
+ * regclass.c (regclass): Work with all regs which have sets or
+ refs.
+ (reg_scan_mark_refs): Count regs inside (clobber ...).
+
+ 2002-01-04 Michael Matz <matzmich@cs.tu-berlin.de>
+
+ * df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
+ (df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
+ add new refs.
+ (df_bb_refs_update): Don't clear insns_modified here, ...
+ (df_analyse): ... but here.
+
+ * sbitmap.c (dump_sbitmap_file): New.
+ (debug_sbitmap): Use it.
+
+ * sbitmap.h (dump_sbitmap_file): Add prototype.
+
+ 2001-08-07 Daniel Berlin <dan@cgsoftware.com>
+
+ * df.c (df_insn_modify): Grow the UID table if necessary, rather
+ than assume all emits go through df_insns_modify.
+
+ 2001-07-26 Daniel Berlin <dan@cgsoftware.com>
+
+ * regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
+ increase REG_N_REFS (like flow does), so that regclass doesn't
+ think a reg is useless, and thus, not calculate a class, when it
+ really should have.
+
+ 2001-01-28 Daniel Berlin <dberlin@redhat.com>
+
+ * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
+ dataflow analysis.
+
+2002-07-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/7245
+ * config/i386/i386.c (const_int_1_31_operand): New.
+ * config/i386/i386.h (PREDICATE_CODES): Add it.
+ * config/i386/i386.md (ashlsi3_cmp, ashlsi3_cmp_zext, ashlhi3_cmp,
+ ashlqi3_cmp, ashrsi3_cmp, ashrsi3_cmp_zext, ashrhi3_cmp, ashrqi3_cmp,
+ lshrsi3_cmp, lshrsi3_cmp_zext, lshrhi3_cmp, lshrqi3_cmp): Use it.
+
+2002-07-14 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/7282
+ * config/rs6000/rs6000.md (floatsidf2): Enable for POWERPC64.
+ (floatunssidf2): Likewise.
+ (floatsidf_ppc64): New insn_and_split.
+ (floatunssidf_ppc64): Likewise.
+
+2002-07-14 Andreas Jaeger <aj@suse.de>
+
+ * config.gcc (sh64): Remove unused
+ target_requires_64bit_host_wide_int.
+
+2002-07-12 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c [CLEAR_RATIO]: New macro defining the maximum number
+ of move instructions to use when clearing memory, c.f. MOVE_RATIO.
+ [CLEAR_BY_PIECES]: New macro, using CLEAR_RATIO, to determine
+ whether clear_by_pieces should be used to clear storage.
+ (clear_storage): Use CLEAR_BY_PIECES instead of MOVE_BY_PIECES.
+
+ * doc/tm.texi: Document these two new target macros.
+
+2002-07-12 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("zero_extendsidi2"): Use D_REG only for
+ the scratch register.
+ ("*movhi2_push"): Accept Z_REG because a split pattern can make use
+ of it, forbid reload to use it.
+
+2002-07-12 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * config/avr/avr.c (test_hard_reg_class): Fix TEST_HARD_REG_BIT
+ usage on 64-bit hosts, return value was truncated to 32 bits.
+
+Fri Jul 12 00:49:36 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * simplify-rtx.c (simplify_subreg): Handle floating point
+ CONST_DOUBLEs. When an integer subreg of a smaller mode than
+ the element mode is requested, compute a subreg with an
+ integer mode of the same size as the element mode first.
+
+Thu Jul 11 22:02:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * combine.c (try_combine): When converting a paradoxical subreg
+ to an extension, take LOAD_EXTEND_OP into account.
+
+2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (mips-sgi-irix6*o32): New configuration.
+
+ * configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32
+ configurations.
+ * configure: Regenerate.
+
+ * config/mips/iris6-o32-as.h: New file.
+ * config/mips/iris6-o32.h: New file.
+
+ * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define.
+ (NM_FLAGS): Define.
+ (HAVE_AS_SHF_MERGE): Undefine.
+
+ * config/mips/t-iris5-as: New file.
+ * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
+
+ * config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME,
+ SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK,
+ SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT,
+ dp-bit.c, fp-bit.c): Move ...
+ * config/mips/t-iris5-6: ... here.
+ New file, shared by IRIX 5 and IRIX 6.
+ * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*,
+ mips-sgi-irix5*): Use it.
+
+ * config/mips/iris6.h: Remove duplicate comment.
+
+ * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
+ !TARGET_IRIX6]: Define.
+ (mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6.
+
+ * config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment.
+
+2002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
+ and delete code to force constant to register.
+ * pa-protos.h (adddi3_operand): Add prototype.
+ * pa.c (adddi3_operand): New function.
+
+2002-07-11 Roger Sayle <roger@eyesopen.com>
+
+ * c-decl.c (duplicate_decls): Preserve the noreturn attribute on
+ non-ANSI builtin functions.
+
+Thu Jul 11 11:31:12 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * rtl.h (gen_rtx_CONST_VECTOR): Declare.
+ * gengenrtl.c (special_rtx): Check for CONST_VECTOR.
+ * emit-rtl.c (gen_rtx_CONST_VECTOR): New function.
+ (gen_const_vector_0): Use it.
+
+2002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * pa.md (adddi3): For 32-bit targets, force constants to a register
+ if they don't fit in an 11-bit immediate. Change insn predicate to
+ arith11_operand. Remove comment.
+ * pa.c (cint_ok_for_move): Fix comment.
+ (emit_move_sequence): Don't directly split DImode constants on 32-bit
+ targets.
+
+2002-07-11 Tim Josling <tej@melbpc.org.au>
+
+ Remove front end hard coding from gengtype.c.
+
+ * Makefile.in
+ (STAGESTUFF): add gtyp-gen.h
+ (GTFILES): Remove front end specific files.
+ (GTFILES_FILES_LANGS): New, from configure..
+ (GTFILES_FILES_FILES): Likewise.
+ (GTFILES_LANG_DIR_NAMES): Likewise.
+ (GTFILES_SRCDIR): Likewise.
+ (gtyp-gen.h): Build from configure information.
+ (s-gtype): Remove command line parameters from gengtype.
+ (gengtype.o): Remove dependency on GTFILES. Depend on gtyp-gen.h.
+ (mostlyclean): Delete files generated by and for gengtype.
+
+ * c-config-lang.in: New file.
+
+ * configure.in (all_gtfiles_files_langs): New. Accumulate files
+ for each language.
+ (all_gtfiles_files_files): New. Accumulate language for each file
+ accumulated.
+ (gtfiles): Pick up value for C.
+ (srcdir): AC-SUBST this variable.
+ (all_gtfiles_files_langs): AC-SUBST this variable.
+ (all_gtfiles_files_files): AC-SUBST this variable.
+
+ * configure: Regenerate.
+
+ * gengtype-lex.l (parse_file): Make parameter const.
+
+ * gengtype.c (toplevel): include gtyp-gen.h.
+ (BASE_FILE_<language> unnamed enum): Delete.
+ (lang_names): Delete (replaced by gtyp-gen.h)
+ (lang_dir_names): From gtyp-gen.h, replaces lang_names; changed
+ all references.
+ (NUM_GT_FILES): New.
+ (NUM_LANG_FILES): New.
+ (srcdir_len): New.
+ (NUM_BASE_FILES): Change calculation.
+ (open_base_files): Change prototype to avoid warning.
+ (startswith): Delete.
+ (get_file_basename): Iterate through generated language list not
+ hard coded list.
+ (get_base_file_bitmap): Use generated list of files and languages.
+ (close_output_files): Add prototype to rmove warning.
+ (main): Iterate through list of generated files from gtyp-gen.h
+ rather than command line paramaters. Ignore duplicated file
+ names.
+
+ * gengtype.h (parse_file): Amend prototype for const parameter.
+
+ * doc/sourcebuild.texi: Document gtfiles variable.
+
+ * doc/gty.texi: Document changes to gtfiles variable for front
+ ends.
+
+ * objc/config-lang.in (gtfiles): Add files needed for objc front
+ end.
+
+2002-07-10 Roger Sayle <roger@eyesopen.com>
+
+ PR c/2454
+ * combine.c (nonzero_bits): LOAD_EXTEND_OP should only apply
+ to SUBREGs of MEMs. (num_sign_bit_copies): Likewise.
+
+2002-07-10 Roger Sayle <roger@eyesopen.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * builtins.def: Make the argument types of abort and exit
+ independent of the front-end.
+
+2002-07-11 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (ASM_SPEC): Define.
+
+2002-07-10 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (emit_frame_save): New.
+ (rs6000_frame_related): Replace reg2 before reg.
+ (rs6000_emit_prologue): Use emit_frame_save for saving gprs, fprs,
+ and eh_return registers.
+
+2002-07-10 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ Revert all patches for optimization of Complex .op. Real.
+ * complex_part_zero_p: Remove
+ * expand_cmplxdiv_straight: Replace complex_part_zero_p(x)
+ with x.
+ * expand_cmplxdiv_wide: Ditto.
+ * expand_binop: Ditto.
+
+2002-07-10 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * config/avr/avr.md: Fix two 0x80000000 constants to make them
+ negative also on 64-bit hosts.
+
+ Default to -fno-reorder-blocks when optimizing for size.
+ * config/avr/avr-protos.h (avr_optimization_options): Declare.
+ * config/avr/avr.c (avr_optimization_options): New function.
+ * config/avr/avr.h (OPTIMIZATION_OPTIONS): New.
+
+ Optimize returning from simple functions.
+ * config/avr/avr-protos.h (avr_simple_epilogue): Declare.
+ * config/avr/avr.c (avr_simple_epilogue): New function.
+ * config/avr/avr.md (return): New insn.
+
+2002-07-10 Douglas B Rupp <rupp@gnat.com>
+
+ * config/i386/i386.c (ix86_svr3_asm_out_constructor): Add
+ HAS_INIT_SECTION to protection.
+
+2002-07-10 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi (Debugging Options): Mention that -gdwarf is
+ deprecated.
+
+Wed Jul 10 19:50:03 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * combine.c (gen_lowpart_for_combine): Handle vector modes.
+ Supply non-VOID mode to simplify_gen_subreg.
+
+Wed Jul 10 18:48:55 CEST 2002 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_init_mmx_sse_builtins): Fix thinko.
+
+2002-07-10 Jeffrey A Law <law@redhat.com>
+
+ * mn10200.c (expand_prologue): Create REG_MAYBE_DEAD notes
+ as appropriate.
+
+ * mn10200.c (expand_epilogue): Fix test to determine which scratch
+ register to use.
+
+Wed Jul 10 16:06:00 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cse.c (cse_insn): Supply proper SUBREG_BYTE to simplify_gen_subreg.
+ Get mode from dest.
+ If simplify_gen_subreg fails, try next equivalent.
+
+2002-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
+
+ * diagnostic.h: #include location.h
+ (location_t): Move definition to..
+ * location.h: ... here. New file.
+ * tree.h: #include location.h
+ (DECL_SOURCE_LOCATION): New macro.
+ (DECL_SOURCE_FILE): Use.
+ (DECL_SOURCE_LINE): Likewise.
+ (struct tree_decl): REplace filename and linenum with locus.
+ * Makefile.in (TREE_H): add location.h
+ (diagnostic.o): Depends on gt-location.h
+ (gt-location.h): Depends on s-gtype
+
+2002-07-09 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * config/rs6000/aix.h: Convert CPP_PREDEFINES to
+ TARGET_OS_CPP_BUILTINS.
+ * config/rs6000/aix31.h: Likewise.
+ * config/rs6000/aix41.h: Likewise.
+ * config/rs6000/aix43.h: Likewise.
+ * config/rs6000/aix51.h: Likewise.
+ * config/rs6000/beos.h: Likewise.
+ * config/rs6000/darwin.h: Likewise.
+ * config/rs6000/eabi.h: Likewise.
+ * config/rs6000/eabisim.h: Likewise.
+ * config/rs6000/linux.h: Likewise.
+ * config/rs6000/linux64.h: Likewise.
+ * config/rs6000/lynx.h: Likewise.
+ * config/rs6000/mach.h: Likewise.
+ * config/rs6000/rtems.h: Likewise.
+ * config/rs6000/sysv4.h: Likewise.
+ * config/rs6000/vxppc.h: Likewise.
+
+2002-07-09 Devang Patel <dpatel@apple.com>
+ * objc/objc-act.c (adjust_type_for_id_default): Fix my previous patch.
+ Do not allow ObjC objects as a parameter type for Objective-C methods.
+ My previous patch restricted 'struct' also.
+
+2002-07-09 Neil Booth <neil@daikokuya.co.uk>
+
+ * cpperror.c (cpp_error): Default to directive_line within
+ directives here.
+ * cppexp.c (cpp_interpret_integer): Only use traditional
+ number semantics in directives.
+ * cpplib.c (prepare_directive_trad): Don't reset pfile->line.
+ (do_include_common): Similarly.
+ * cpptrad.c (scan_out_logical_line): Implement accurate
+ quoting of <> in #include.
+ * doc/cpp.texi: Update.
+
+Tue Jul 9 22:37:44 2002 Stephen Clarke <stephen.clarke@superh.com>
+ J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (sh_adjust_cost): Special handling of SHMEDIA code.
+ * sh.md (attribute issues): Replace with:
+ (attribute pipe_model). All users changed.
+ (attribute type): Change pt / ptabs to pt_media / ptabs_media.
+ All users changed.
+ (function units sh5issue, sh5fds): New.
+ (attribute is_mac_media): New.
+ (adddi3_media, subdi3_media, divsi3_i1_media, anddi3): Add type.
+ (andcdi3, iordi3, xordi3, ashldi3_media, lshrdi3_media): Likewise.
+ (ashrdi3_media, negdi_media, extendsidi2, movqi_media): Likewise.
+ (movhi_media, shori_media, movv2sf_i, jump_media): Likewise.
+ (call_media, call_value_media, sibcall_media): Likewise.
+ (casesi_jump_media, casesi_shift_media, casesi_load_media): Likewise.
+ (return_media_i, addsf3_media, subsf3_media, mulsf3_media): Likewise.
+ (mac_media, divsf3_media, floatdisf2, floatsisf2_media): Likewise.
+ (fix_truncsfdi2, fix_truncsfsi2_media, cmpeqsf_media): Likewise.
+ (cmpgtsf_media, cmpgesf_media, cmpunsf_media, negsf2_media): Likewise.
+ (sqrtsf2_media, abssf2_media, adddf3_media, subdf3_media): Likewise.
+ (muldf3_media, divdf3_media, floatdidf2, floatsidf2_media): Likewise.
+ (fix_truncdfdi2, fix_truncdfsi2_media, cmpeqdf_media): Likewise.
+ (cmpgtdf_media, cmpgedf_media,cmpundf_media, negdf2_media): Likewise.
+ (sqrtdf2_media, absdf2_media, extendsfdf2_media): Likewise.
+ (truncdfsf2_media): Likewise.
+ (movsi_media, movsi_media_nofpu, movdi_media): Use new types.
+ (movdi_media_nofpui, movdf_media, movdf_media_nofpu): Likewise.
+
+Tue Jul 9 21:39:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (PREDICATE_CODES): Add general_extend_operand and inqhi_operand.
+ * sh.c (general_extend_operand, inqhi_operand): New functions.
+ * sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Collapse
+ alternatives using 'N' modifier. Add type.
+ (adddi3z_media): Likewise. Enable generator function generation.
+ (movdicc_false, movdicc_true, addsi3_media, subsi3_media): Use more
+ exact predicates / constraints. Add type.
+ (subsi3): Allow 0 for SHMEDIA.
+ (udivsi3_i4_media): Use match_operand for input values
+ rather than hard registers.
+ (udivsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values
+ unnecessarily through hard registers. Keep copies of pseudo
+ registers outside of the libcall sequence.
+ (mulsidi3_media, umulsidi3_media): Use more exact predicates. Add type.
+ (ashlsi3_media, ashrsi3_media, lshrsi3_media): Likewise.
+ (zero_extendsidi2, zero_extendhidi2, zero_extendqidi2): Likewise.
+ (extendhidi2, extendqidi2): Likewise.
+ (andsi3_compact): Name.
+ (andcdi3): Enable generator function generation.
+ (zero_extendhisi2, zero_extendqisi2): Rename to
+ (zero_extendhisi2_compact, zero_extendqisi2_compact).
+ (extendhisi2, extendqisi2): Rename to
+ (extendhisi2_compact, extendqisi2_compact).
+ (rotldi3, rotldi3_mextr, rotrdi3, rotrdi3_mextr): New patterns.
+ (loaddi_trunc, zero_extendhisi2, zero_extendhisi2_media): Likewise.
+ (zero_extendhisi2_media+1, zero_extendqisi2): Likewise.
+ (zero_extendqisi2_media, extendhisi2, extendhisi2_media): Likewise.
+ (extendhisi2_media, extendhisi2_media+1, extendqisi2): Likewise.
+ (extendqisi2_media, extendqisi2_media+1, truncdisi2): Likewise.
+ (truncdihi2, truncdiqi2, reload_inqi, reload_inhi): Likewise.
+ (shmedia32_initialize_trampoline_big): Likewise.
+ (shmedia32_initialize_trampoline_little): Likewise.
+ (nsb, nsbsi, nsbdi, ffsdi2, ffssi2, byterev): Likewise.
+ (negdi2): Remove spurious T clobber.
+ (zero_extendhidi2+1, extendhidi2+1, extendqidi2+1): Handle TRUNCATE.
+ (movsi_media, movsi_media_nofpu): Remove spurious *k after b.
+ (movdi_media, movdi_media_nofpu, pt, ptb): Likewise.
+ (movsi_media_nofpu+2, movhi_media+1): Only do split after reload.
+ (ic_invalidate_line_media): Write back data cache before invalidating
+ instruction cache. Add type.
+ (movsf_media): Sign-extend when the destination is a general
+ purpose register. Add type.
+ (bgt_media, bge_media, bgtu_media, bgeu_media, blt_media_i): Allow 0.
+ (casesi_worker_0+1): Only increment ref count for proper label.
+ (casesi_worker_0+2): Likewise.
+
+2002-07-09 Mark Mitchell <mark@codesourcery.com>
+
+ * dwarfout.c (dwarfout_init): Warn that DWARF1 is deprecated.
+
+2002-07-09 Steve Ellcey <sje@cup.hp.com>
+
+ * gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
+ from Pmode to ptr_mode.
+ (get_exception_pointer): Ditto.
+ (connect_post_landing_pads): Ditto.
+ (dw2_build_landing_pads): Ditto.
+
+2002-07-08 Steve Ellcey <sje@cup.hp.com>
+ * gcc/c-pragma.h (add_to_renaming_pragma_list): New function.
+ * gcc/c-pragma.c (add_to_renaming_pragma_list): New function.
+ (handle_pragma_redefine_extname): Change to use new function.
+
+2002-07-08 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (combine_simplify_rtx): Add an explicit cast
+ to avoid signed/unsigned comparison warning.
+ (simplify_if_then_else): Likewise.
+ (extended_count): Likewise.
+ (simplify_shift_const): Likewise.
+ (simplify_comparison): Likewise.
+
+2002-07-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Add imadd type. Update scheduler description
+ to use imadd as well as imul.
+ (*mul_acc_si, *madsi): Change imul alternatives to imadd.
+ (*mul_acc_di, *mul_acc_64bit_di): Likewise.
+ (*mul_sub_si): Likewise for first alternative. Change second
+ alternative from imul to multi.
+
+2002-07-07 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.c (c_common_post_options): Update prototype;
+ don't init backends if preprocessing only.
+ * langhooks-def.h (LANG_HOOKS_POST_OPTIONS): Update.
+ * langhooks.h (struct lang_hooks): Update post_options to
+ return a boolean.
+ * toplev.c (parse_options_and_default_flags, do_compile,
+ lang_independent_init): Update prototypes. Allow the
+ front end to specify that there is no need to initialize
+ the back end.
+ (general_init): Move call to hex_init here...
+ (toplev_main): ...from here. Pass flag for back end init
+ suppression.
+
+Sun Jul 7 20:38:38 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (PRINT_OPERAND_PUNCT_VALID_P): Allow '\''.
+ (PREDICATE_CODES): Add entries for equality_comparison_operator,
+ greater_comparison_operator and less_comparison_operator.
+ * sh.c (print_operand): Add '\'' code. Make 'o' handle
+ more operators.
+ (equality_comparison_operator): New function.
+ (greater_comparison_operator, less_comparison_operator): Likewise.
+ * sh.md (beq_media_i): Disable generator function generation.
+ Use match_operator to handle a whole class of comparisons. Add
+ modifier in output template to provide branch prediction. Add type.
+ (bgt_media_i, ble_media_i): Likewise. Allow zero operands.
+ (bne_media_i, bge_media_i, bgtu_media_i, bgeu_media_i): Delete.
+ (blt_media_i, bleu_media_i, bltu_media_i): Likewise.
+ (bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Allow zero operands.
+
+2002-07-07 Hans-Peter Nilsson <hp@bitrange.com>
+
+ Emit MMIX function prologue and epilogue as rtl.
+ * config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val,
+ not unprototyped get_hard_reg_initial_val.
+ ("call_value", "nonlocal_goto_receiver"): Ditto.
+ ("return"): Make define_expand. Move real insn to...
+ ("*expanded_return"): New pattern.
+ ("prologue", "epilogue"): New define_expands.
+ * config/mmix/mmix.h (MMIX_rO_REGNUM): New macro.
+ (struct machine_function): New member in_prologue.
+ (FIRST_PSEUDO_REGISTER): Adjust for including rO as register.
+ (FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto.
+ (MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto.
+ (MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto.
+ (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto.
+ (LOCAL_REGNO): Define. Adjust comment.
+ * config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS):
+ Consider regs_ever_live[MMIX_rJ_REGNUM], not just
+ leaf_function_p.
+ (MMIX_OUTPUT_REGNO): Don't translate registers while outputting
+ the prologue.
+ (mmix_target_asm_function_prologue): Make static. Just mark that
+ the prologue is being emitted. Move guts to...
+ (mmix_expand_prologue): New function. Adjust for emitting
+ prologue as rtl. For sizes, use HOST_WIDE_INT only.
+ (mmix_target_asm_function_epilogue): Make static. Simply emit a
+ \n. Move guts to...
+ (mmix_expand_epilogue): New function. Adjust for emitting
+ epilogue as rtl. For sizes, use HOST_WIDE_INT only.
+ (mmix_target_asm_function_end_prologue): Mark that the prologue
+ has ended.
+ (TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
+ (mmix_conditional_register_usage): Improve comments.
+ (mmix_local_regno): New function.
+ (mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto.
+ * config/mmix/mmix-protos.h (mmix_local_regno): Prototype.
+ (mmix_expand_prologue, mmix_expand_epilogue): Ditto.
+ (mmix_get_hard_reg_initial_val): Ditto.
+
+2002-07-06 Andreas Jaeger <aj@suse.de>
+
+ * toplev.c (set_fast_math_flags): Don't use ISO C style function
+ definitions.
+ * gengtype.c (open_base_files): Likewise.
+ (close_output_files): Likewise.
+ * tracer.c (find_best_predecessor): Likewise.
+ (find_best_successor): Likewise.
+ (ignore_bb_p): Likewise.
+
+2002-07-05 Roger Sayle <roger@eyesopen.com>
+
+ PR c++/7099
+ * builtin-attrs.def: Define new attribute lists for use in
+ builtins.def.
+ * builtins.def [DEF_BUILTIN]: Modify to take an additional
+ ATTRS argument, an enumerated value defined in builtin-attrs.def
+ that represents the attribute list for the builtins. Modify
+ all builtin functions to pass an appropriate attribute list.
+ Specify "abort", "exit", "_exit" and "_Exit" builtins here with
+ their required noreturn attributes.
+ * tree.h (enum_builtin_function): Ignore the additional parameter
+ to DEF_BUILTIN.
+ * builtins.c (built_in_names): Likewise.
+ * c-common.c: (builtin_function_2): Replace the "int noreturn_p"
+ argument with a tree representing the functions attribute list.
+ Pass this "attrs" argument to builtin_function. No longer handle
+ the noreturn_p processing manually.
+ (built_in_attributes): Move the definitions from builtin-attrs.def
+ before c_common_nodes_and_builtins.
+ (c_common_nodes_and_builtins): Handle the new ATTRS parameter in
+ DEF_BUILTIN, passing it to both builtin_function and the changed
+ builtin_function_2.
+
+ * doc/extend.texi: Document __builtin_abort, __builtin_exit,
+ __builtin__exit and __builtin__Exit.
+
+2002-07-05 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*movqi_68hc12"): Avoid allocating
+ QI mode registers in soft registers.
+ ("zero_extendqihi2"): Do not take into account soft registers
+ for register allocation (use '*' constraint).
+
+2002-07-05 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*ashlsi3"): Avoid saving y if we know
+ it is dead.
+ ("*ashrsi3"): Likewise.
+ ("*lshrsi3"): Likewise.
+
+2002-07-05 Vladimir Makarov <vmakarov@redhat.com>
+
+ * genautomata.c (output_max_insn_queue_index_def): Take latencies
+ into account.
+
+2002-07-05 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md (peephole2): New peephole2 to optimize
+ address computation and memory moves.
+
+2002-07-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/6706
+ * dwarfout.c (output_reg_number): Fix warning message.
+ (output_bound_representation): Check SAVE_EXPR_RTL is not NULL
+ before using it.
+
+2002-07-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * gcc/gcc.c (asm_debug): Move initialization ...
+ (init_spec): ... here.
+
+2002-07-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-parse.in (extdef): Append ';'.
+ (old_style_parm_decls): Append ';'.
+
+2002-07-04 Daniel Jacobowitz <drow@mvista.com>
+
+ * configure.in: Correct typos: gcc_cv_as_gdwarf2_debug_flag to
+ gcc_cv_as_gdwarf2_flag and gcc_cv_as_gstabs_debug_flag
+ to gcc_cv_as_gstabs_flag.
+ * configure: Rebuilt.
+
+2002-07-04 Geoffrey Keating <geoffk@redhat.com>
+
+ * ggc.h (ggc_add_root): Document as obsolete.
+
+Thu Jul 4 07:58:01 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (mshfhi_b, mshflo_b, mshfhi_l, mshflo_l, mshfhi_w): Add DONE.
+ (mshflo_w): Likewise.
+
+Thu Jul 4 07:36:29 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * simplify-rtx.c (simplify_subreg): Reduce problem of finding
+ vector mode subregs of constants to finding integer mode
+ subregs of constants.
+ * cse.c (cse_insn): Use simplify_gen_subreg.
+ * convert.c (convert_to_integer): Don't strip a NOP_EXPR
+ From a vector mode expression of different size than the
+ target mode.
+
+2002-07-03 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/linux.h: Add #undef for SUBTARGET_CPP_SPEC.
+ * config/mips/mips.h: Remove deprecated -m<processor> options
+ and cc1_cpu_spec associated.
+ (CONSTANT_ADDRESS_P): Fix last patch.
+ (ASM_DECLARE_FUNCTION_NAME): Declare. Fix comment.
+ * config/mips/mips.md (bungt, bunge, sungt_df, sungt_sf, sunge_df,
+ sunge_sf): Remove.
+
+2002-07-03 Stan Shebs <shebs@apple.com>
+
+ * config/darwin.h (APPLE_CC): Remove, not meaningful in FSF GCC.
+ (STRINGIFY_THIS, REALLY_STRINGIFY): Remove.
+ (CPP_SPEC): Remove insertion of APPLE_CC definition.
+
+2002-07-03 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (struct_undo): Change types of recorded substitutions
+ to be either "int" or "rtx", instead of "unsigned int" and "rtx".
+ (do_SUBST_INT): Change types of the substitution from unsigned int
+ to int, to avoid compilation warning from SUBST_INT's only caller.
+
+ (make_extraction): Add cast to avoid compilation warning.
+ (force_to_mode): Remove cast to avoid compilation warning.
+
+2002-07-03 Eric Botcazou <ebotcazou@multimania.com>
+ Jeff Law <law@redhat.com>
+
+ * i386.md (length_immediate attribute): Fix typo.
+ (length_address attribute): Likewise.
+ (modrm attribute): Set it to 0 for immediate call instructions.
+ (jcc_1 pattern): Set modrm attribute to 0.
+ (jcc_2 pattern ): Likewise.
+ (jump pattern): Likewise.
+ (doloop_end_internal pattern): Explicitly set length.
+ (leave pattern): Fix typo.
+ (leave_rex64 pattern): Likewise.
+
+2002-07-03 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (fix_truncdfsi2_internal): Ignore DImode
+ in FPR as preference.
+ (fctiwz): Same.
+ (floatdidf2, fix_truncdfdi2): Same.
+ (floatdisf2, floatditf2, fix_trunctfdi2): Same.
+ (floatditf2): Same.
+ (floatsitf2, fix_trunctfsi2): SImode in GPR.
+ (ctrdi): Remove FPR alternative and splitter.
+
+2002-07-03 Will Cohen <wcohen@redhat.com>
+
+ * config/i386/i386.c (x86_integer_DFmode_moves): Disable for PPro.
+
+Wed Jul 3 10:24:16 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * optabs.c (expand_vector_binop): Don't store using a SUBREG smaller
+ than UNITS_PER_WORD, unless this is little endian and the first unit
+ in this word. Let extract_bit_field decide how to load an element.
+ Force arguments to matching mode.
+ (expand_vector_unop): Likewise.
+
+ * simplify-rtx.c (simplify_subreg): Don't assume that all vectors
+ consist of word_mode elements.
+ * c-typeck.c (build_binary_op): Allow vector types for BIT_AND_EXPR,
+ BIT_ANDTC_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR.
+ (build_unary_op): Allow vector types for BIT_NOT_EPR.
+ * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg for
+ CONST_VECTOR.
+ * optabs.c (expand_vector_binop): Try to perform operation in
+ smaller vector modes with same inner size. Add handling of AND, IOR
+ and XOR. Reject expansion to inner-mode sized scalars when using
+ OPTAB_DIRECT. Use simplify_gen_subreg on constants.
+ (expand_vector_unop): Try to perform operation in smaller vector
+ modes with same inner size. Add handling of one's complement.
+ When there is no vector negate operation, try a vector subtract
+ operation. Use simplify_gen_subreg on constants.
+ * simplify-rtx.c (simplify_subreg): Add capability to convert vector
+ constants into smaller vectors with same inner mode, and to
+ integer CONST_DOUBLEs.
+
+2002-07-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-parse.in (parsing_iso_function_signature): New variable.
+ (extdef_1): New, copied from...
+ (extdef): ... here. Reset parsing_iso_function_signature.
+ (old_style_parm_decls): Reset parsing_iso_function_signature.
+ (old_style_parm_decls_1): New, copied from old_style_parm_decls.
+ Warn about ISO C style function definitions.
+ (nested_function, notype_nested_function): Reset
+ parsing_iso_function_signature.
+ (parmlist_2): Set parsing_iso_function_signature.
+
+ * doc/invoke.texi (-Wtraditional): Document new behavior.
+
+2002-07-02 Chris Demetriou <cgd@broadcom.com>
+
+ * config.gcc (mips*el-*-*): Use tm_defines to set
+ TARGET_ENDIAN_DEFAULT, rather than including mips/little.h.
+ * config/mips/little.h: Remove.
+
+2002-07-02 Devang Patel <dpatel@apple.com>
+
+ * objc/objc-act.c (adjust_type_for_id_default): Do not allow an
+ object as parameter. Prevent something like 'NSObject' to be
+ used as the type for a method argument.
+
+2002-07-03 Neil Booth <neil@daikokuya.co.uk>
+
+ * cpptrad.c: Update comment.
+
+2002-07-02 Neil Booth <neil@daikokuya.co.uk>
+
+ * doc/cpp.texi: Update for traditional preprocessing changes.
+ * goc/cppopts.texi: Similarly.
+
+2002-07-02 Ziemowit Laski <zlaski@apple.com>
+
+ * c-parse.in (designator): Enable designated initializers if ObjC.
+ (objcmessageexpr): Remove references to objc_receiver_context.
+ * objc/objc-act.h (objc_receiver_context): Remove decl.
+ * objc/objc-act.c (objc_receiver_context): Remove.
+ (lookup_objc_ivar): Test objc_method_context instead of
+ objc_receiver_context.
+
+Tue Jul 2 18:45:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (print_operand, case 'N'): Allow zero vector.
+ (arith_reg_or_0_operand): Likewise.
+ (zero_vec_operand): Check for CONST_VECTOR, not PARALLEL.
+ * sh.h (CONST_COSTS): 0 has 0 cost. Check OUTER_CODE for
+ IOR, XOR, PLUS and SET and take their respective constant
+ ranges into account.
+ (PREDICATE_CODES, arith_reg_or_0_operand): Can be CONST_VECTOR.
+ * sh.md (subdi3, subdi3_media): Allow zero operand.
+ (movv8qi_i+3): Only vector that is not split is the zero vector.
+ Fix operand 3 to simplify_subreg.
+ (movv2si_i): Split alternative 1.
+ (mshfhi_l_di_rev+1): New splitter.
+
+2002-07-02 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/7029
+ * cppinit.c (cpp_handle_option): Suppress warnings with an
+ implicit "-w" for "-M" and "-MM".
+ * doc/cppopts.texi: Update.
+
+2002-07-01 Roger Sayle <roger@eyesopen.com>
+
+ * config/sh/sh.c (sh_media_init_builtins): Change use of poisoned
+ identifier "bzero" to "memset". Pass extra NULL_TREE argument to
+ builtin_function.
+
+2002-07-02 Alan Modra <amodra@bigpond.net.au>
+
+ * README.Portability: Fix typos.
+
+2002-07-01 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/7177
+ * config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Correct number
+ of indirections for register inside sign-extended mem part.
+
+2002-07-01 Roger Sayle <roger@eyesopen.com>
+
+ * tree.h: Modify builtin_function interface to take an extra
+ argument ATTRS, which is a tree representing an attribute list.
+
+ * c-decl.c (builtin_function): Accept additional parameter.
+ * objc/objc-act.c (builtin_function): Likewise.
+ * f/com.c (builtin_function): Likewise.
+ * java/decl.c (builtin_function): Likewise.
+ * ada/utils.c (builtin_function): Likewise.
+ * cp/decl.c (builtin_function): Likewise.
+ (builtin_function_1): Likewise.
+
+ * c-common.c (c_common_nodes_and_builtins): Pass an additional
+ NULL_TREE argument to builtin_function. (builtin_function_2):
+ Likewise.
+ * cp/call.c (build_java_interface_fn_ref): Likewise.
+ * objc/objc-act.c (synth_module_prologue): Likewise.
+ * java/decl.c (java_init_decl_processing): Likewise.
+ * f/com.c (ffe_com_init_0): Likewise.
+
+ * config/alpha/alpha.c (alpha_init_builtins): Pass an additional
+ NULL_TREE argument to builtin_function.
+ * config/arm/arm.c (def_builtin): Likewise.
+ * config/c4x/c4x.c (c4x_init_builtins): Likewise.
+ * config/i386/i386.c (def_builtin): Likewise.
+ * config/ia64/ia64.c (def_builtin): Likewise.
+ * config/rs6000/rs6000.c (def_builtin): Likewise.
+
+2002-07-01 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ip2k/t-ip2k: Remove LIBGCC1, CROSS_LIBGCC1, and LIBGCC1_TEST.
+ * config/mips/t-isa3264: Likewise.
+ * config/mmix/t-mmix: Likewise.
+
+2002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * emit-rtl.c (init_emit_once): Add missing cast to HOST_WIDE_INT.
+
+2002-07-01 Roger Sayle <roger@eyesopen.com>
+
+ PR opt/4046
+ * fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A,
+ A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and
+ B are truth values.
+
+2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config/mmix/t-mmix: Eliminate last reference to LIBGCC1_TEST.
+
+2002-07-01 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * README.Portability (Function prototypes): Give an example of
+ declaring and defining a function with no arguments.
+
+ * README.Portability (Function prototypes): Document new
+ variable-argument function macros.
+
+Mon Jul 1 19:55:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (langhooks.h): Include.
+ (sh_init_builtins, sh_media_init_builtins): New functions.
+ (sh_expand_builtin, arith_reg_dest,and_operand): Likewise.
+ (mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise.
+ (sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise.
+ (builtin_description): New struct tag.
+ (signature_args, bdesc): New arrays.
+ (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define.
+ (print_operand): Add 'N' modifier.
+ * sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes.
+ (EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros.
+ (EXTRA_CONSTRAINT): Add 'U' and 'W' cases.
+ (CONST_COSTS): Add special case for SHmedia AND.
+ (PREDICATE_CODES): Add and_operand, arith_reg_dest,
+ extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset,
+ sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand.
+ target_operand can also be const or unspec.
+ * sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants.
+ (UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise.
+ (attribute type): Add new types.
+ (anddi3): Add splitter.
+ (movdi_const_16bit+1): Add code to handle vector constants and
+ bitmasks efficiently.
+ (shori_media): Have generator function made.
+ (movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns.
+ (movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise.
+ (movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise.
+ (ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise.
+ (negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise.
+ (negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise.
+ (mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise.
+ (mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise.
+ (mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise.
+ (mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise.
+ (mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise.
+ (mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise.
+ (mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise.
+ (mshflo_b, mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie.
+ (mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise.
+ (mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise.
+ (mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise.
+ (lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise.
+ (ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise.
+ (ftrv): Likewise.
+
+ (fpu_switch+1, fpu_switch+2): Remove constraint.
+
+2002-07-01 Aldy Hernandez <aldyh@redhat.com>
+
+ * tree.c (build_function_type_list): Update function comment.
+ Rename first argument to return_type.
+
+2002-07-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in: Remove all trace of tradcpp.c, tradcpp.h,
+ tradcif.y and related files.
+
+2002-07-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * cpptrad.c (skip_whitespace): Pass pointer to prior char.
+
+2002-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses.
+
2002-06-30 Devang Patel <dpatel@apple.com>
* objc/objc-act.c (finish_file): Avoid finish_objc() if
@@ -21539,5 +35986,3 @@ Tue Jan 1 17:12:56 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
(mmix_asm_output_labelref): Revert condition for global symbol.
(mmix_print_operand): <case '+'>: Emit P for a likely branch.
(mmix_print_operand_punct_valid_p): A '+' is valid.
-
-See ChangeLog.6 for earlier changes.
diff --git a/gcc/ChangeLog.9 b/gcc/ChangeLog-2003
index 8eed245136d..8d2e12da9e9 100644
--- a/gcc/ChangeLog.9
+++ b/gcc/ChangeLog-2003
@@ -1,3 +1,16379 @@
+2003-12-31 Jan Hubicka <jh@suse.cz>
+
+ PR opt/13473
+ * recog.c (validate_replace_rtx_1): Take care for RTL sharing inside
+ ASM input operands
+
+ PR opt/12617
+ * toplev.c (dump_file_index): Reorder ce3 and bbro.
+ (dump_file): Likewise.
+ (rest_of_compilation): Likewise.
+
+ PR debug/13367
+ * cgraph.c (cgraph_function_possibly_inlined): Even with
+ flag_really_no_inline we inline always_inline functions.
+ * cgraphunit.c (cgraph_analyze_function): Clear inlinable flag
+ for non-always_inline functions when there is flag_really_no_inline.
+ (cgraph_decide_inlining): Limit work done when not inlining.
+ (cgraph_decide_inlining_incrementally): Likewise.
+ (cgraph_optimize_function): Check whether something got inlined.
+ * c-objc-common.c (c_disregard_inline_limits): Do not always inline
+ extern inline functions when not inlining.
+
+ * opts.c (decode_options): Disable crossjumping at -O1
+ * invoke.texi (-O1): Document change.
+
+2003-12-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * print-rtl.c (print_rtx): For hard register, write out register
+ number and register name instead of calling PRINT_REG.
+ * defaults.h (PRINT_REG): Deleted.
+ * config/i386/i386.c (print_reg): Remove handling of CODE of -1.
+ Move comments here from i386.h.
+ (print_operand, print_operand_address): Call print_reg directly.
+ * config/i386/i386.h (PRINT_REG): Deleted.
+
+2003-12-31 Roger Sayle <roger@eyesopen.com>
+
+ * config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define
+ _INCLUDE_LONGLONG.
+
+2003-12-31 Zack Weinberg <zack@codesourcery.com>
+
+ * gcc.c (init_spec): Add -lunwind to shared case too if
+ USE_LIBUNWIND_EXCEPTIONS.
+
+2003-12-31 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/include/texinfo.tex: Update to version 2003-12-21.10.
+ * doc/gcc.texi, doc/gccint.texi: Don't set font for
+ @def... commands.
+ * doc/invoke.texi: Don't use empty @opindex.
+
+2003-12-31 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.c (c_expand_expr): Remove code to return a value
+ different from that returned by expand_expr.
+ * expr.c (store_expr): Use the validity of a target MEM, rather
+ than checking DECL_RTL (exp), to figure out if a copy is
+ required.
+
+2003-12-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/v850/lib1funcs.asm: Fix comment formatting.
+ * config/v850/v850.c: Likewise.
+ * config/v850/v850.h: Likewise.
+ * config/v850/v850.md: Likewise.
+
+2003-12-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.md (*movqi_insv_2): Remove AND in the
+ set source.
+
+2003-12-31 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config.gcc: Added m32r-linux m32rle-elf and m32le-linux targets.
+ * doc/invoke.texi: Document -mflush-func, -mflush-trap options.
+ Also add documentation for -mdebug, -malign-loops, -missue-rate,
+ and -mbranch-cost options.
+ * config/m32r/t-linux: New file: m32r-linux support.
+ * config/m32r/xm-linux.h: Likewise.
+ * config/m32r/xm-m32r.h: Likewise.
+ * config/m32r/linux.h: Likewise.
+ * config/m32r/little.h: New file: Little endian code generation
+ support.
+ * config/m32r/m32r-protos.h (m32r_legitimize_pic_address,
+ m32r_legitimate_pic_operand_p, load_pic_register): Add
+ prototypes.
+ * config/m32r/m32r.c (m32r_init): Add options for cache-flush.
+ (addr24_operand): Changes for PIC code generation.
+ * config/m32r/m32r.h (LABEL_ALIGN): Define to calculate PNOP
+ length at labels.
+ (ASM_SPEC): Add PIC support.
+ (FUNCTION_PROFILER): New define.
+ (TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE): Changed to support
+ trampoline.
+ (CONDITIONAL_REGISTER_USAGE, CONSTANT_ADDRESS_P,
+ LEGITIMIZE_ADDRESS, JUMP_TABLES_IN_TEXT_SECTION,
+ PIC_OFFSET_TABLE_REGNUM, FINALIZE_PIC, LEGITIMATE_PIC_OPERAND_P,
+ ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE): Define for PIC.
+ (move_src_operand, m32r_compute_frame_size, m32r_expand_prologue,
+ m32r_finalize_pic): Changes for PIC and profile support.
+ (global_offset_table, load_pic_register, m32r_legitimate_pic_operand_p,
+ m32r_legitimize_pic_address): Add for PIC support.
+ (m32r_file_start): Changed for little-endian-target.
+ * config/m32r/m32r.md (mvqi, movhi, movsi, movdi, movsf, movdf,
+ tablejump, tablejump_insn, call, call_value, call_value_via_label):
+ Changes for PIC.
+ (pic_load_addr, get_pc, builtin_setjmp_receiver): Added for PIC.
+ (flush_icache): Changes for cache-flush trap.
+
+2003-12-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.h: Remove an unnecessary #undef.
+
+2003-12-30 Roger Sayle <roger@eyesopen.com>
+
+ * cppfiles.c (pch_open_file): Minor tweak to work-around native
+ HPPA compiler bug.
+
+2003-12-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/rs6000/aix.h: Fix comment formatting.
+ * config/rs6000/rs6000-modes.def: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/rs6000/rs6000.md: Likewise.
+
+2003-12-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386-protos.h: Remove prototype for
+ const_int_1_operand.
+ * config/i386/i386.c (const_int_1_operand): Remove.
+ * config/i386/i386.h (PREDICATE_CODES): Remove
+ const_int_1_operand.
+ * config/i386/i386.md: Replace all uses of const_int_1_operand
+ with const1_operand.
+ * config/i386/pentium.md: Likewise.
+
+2003-12-30 Geoffrey Keating <geoffk@greed.local>
+
+ * doc/tm.texi (PREFERRED_RELOAD_CLASS): Describe use of NO_REGS
+ with constants.
+
+2003-12-30 Mark Mitchell <mark@codesourcery.com>
+
+ * stor-layout.c (layout_decl): Turn bitfields into ordinary
+ fields, even if they are the first field in a structure.
+
+2003-12-30 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <COND_EXPR>: Don't require strict type
+ equality, instead just prevent replacing a COND_EXPR of non-void
+ type by one of its operands of void type.
+
+2003-12-30 Andreas Schwab <schwab@suse.de>
+
+ * doc/c-tree.texi: Fix @item vs. @itemx.
+ * doc/cpp.texi: Likewise.
+ * doc/install.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+
+2003-12-30 Nathan Sidwell <nathan@codesourcery.com>
+
+ * builtins.c (expand_builtin_apply_args_1): Fix typo in previous
+ change.
+
+2003-12-30 Jan Hubicka <jh@suse.cz>
+
+ PR target/11936
+ * i386.h (CLASS_LIKELY_SPILLED_P): Return true for
+ FP_TOP_REG/FP_SECOND_REG.
+
+2003-12-30 Steven Bosscher <steven@gcc.gnu.org>
+
+ Backport from tree-ssa (relevant changes only):
+ 2003-12-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * et-forest.h (et_forest_create, et_forest_delete,
+ et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
+ et_forest_remove_edge, et_forest_parent,
+ et_forest_common_ancestor, et_forest_node_value,
+ et_forest_enumerate_sons): Declarations removed.
+ (struct et_node): New.
+ (et_new_tree, et_free_tree, et_set_father, et_split, et_nca,
+ et_below): Declare.
+ * et-forest.c (struct et_forest_occurrence, struct et_forest,
+ struct et_forest_node): Removed.
+ (et_forest_create, et_forest_delete,
+ et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
+ et_forest_remove_edge, et_forest_parent,
+ et_forest_common_ancestor, et_forest_node_value,
+ et_forest_enumerate_sons, splay, remove_all_occurrences,
+ find_leftmost_node, find_rightmost_node, calculate_value): Removed.
+ (struct et_occ): New.
+ (et_nodes, et_occurences): New.
+ (set_depth, set_depth_add, set_prev, set_next, et_recomp_min,
+ et_check_occ_sanity, et_check_sanity, et_check_tree_sanity,
+ record_path_before_1, record_path_before, check_path_after_1,
+ check_path_after, et_splay, et_new_occ, et_new_tree,
+ et_free_tree, et_set_father, et_split, et_nca, et_below): New.
+ * basic-block.h (struct basic_block_def): New field dom.
+ (struct dominance_info): Type removed.
+ (calculate_dominance_info, free_dominance_info,
+ nearest_common_dominator, set_immediate_dominator,
+ get_immediate_dominator, dominated_by_p, get_dominated_by,
+ add_to_dominance_info, delete_from_dominance_info,
+ recount_dominator, redirect_immediate_dominators,
+ iterate_fix_dominators, verify_dominators): Declarations
+ changed.
+ (enum dom_state): New.
+ (dom_computed): New variable.
+ (first_dom_son, next_dom_son): Declare.
+ * dominance.c (struct dominance_info): Removed.
+ (BB_NODE, SET_BB_NODE): Removed.
+ (calculate_dominance_info, free_dominance_info,
+ nearest_common_dominator, set_immediate_dominator,
+ get_immediate_dominator, dominated_by_p, get_dominated_by,
+ add_to_dominance_info, delete_from_dominance_info,
+ recount_dominator, redirect_immediate_dominators,
+ iterate_fix_dominators, verify_dominators,
+ debug_dominance_info): Work over new datastructure. Access
+ dominance datastructures through CFG.
+ (assign_dfs_numbers, compute_dom_fast_query, first_dom_son,
+ next_dom_son): New.
+ * bt-load.c (dom): Variable removed.
+ (augment_live_range, combine_btr_defs, migrate_btr_def,
+ migrate_btr_defs, branch_target_load_optimize): Updated for the
+ new interface for dominance information.
+ * cfg.c {exit_entry_blocks): Update initializer.
+ * cfglayout.c (copy_bbs): Removed loops argument. Updated for
+ the new interface for dominance information.
+ * cfglayout.h (copy_bbs): Declaration changed.
+ * cfgloop.c (flow_loop_pre_header_find, flow_loops_cfg_dump,
+ flow_loop_scan, canonicalize_loop_headers, flow_loops_find): Updated
+ for the new interface for dominance information.
+ (flow_loop_scan): Loops argument removed.
+ (flow_loops_free): Don't release dominators.
+ * cfgloop.h (struct cfg): Dom field removed.
+ (flow_loop_scan, loop_split_edge_with, simple_loop_p,
+ just_once_each_iteration_p, split_loop_bb): Declaration changed.
+ * cfgloopanal.c (simple_loop_exit_p, simple_increment,
+ just_once_each_iteration_p, simple_loop_p): Remove loops argument.
+ Updated for the new interface for dominance information.
+ * cfgloopmanip.c (remove_bbs, find_path, create_preheader,
+ split_loop_bb, loopify, duplicate_loop_to_header_edge,
+ force_single_succ_latches, loop_split_edge_with): Ditto.
+ * gcse.c (dominators): Variable removed.
+ (free_code_hoist_mem, compute_code_hoist_data, hoist_code):
+ Updated for the new interface for dominance information.
+ * ifcvt.c (post_dominators): Variable removed.
+ (mark_loop_exit_edges, merge_if_block, find_if_header,
+ find_cond_trap, find_if_case_1, find_if_case_2, if_convert):
+ Updated for the new interface for dominance information.
+ * loop-init.c (rtl_loop_optimizer_init,
+ rtl_loop_optimizer_finalize): Ditto.
+ * loop-unroll.c (decide_peel_simple, decide_peel_once_rolling,
+ decide_peel_completely, decide_unroll_stupid,
+ decide_unroll_constant_iterations,
+ decide_unroll_runtime_iterations): Loops argument removed.
+ Updated for the new interface for dominance information.
+ (unroll_and_peel_loops, peel_loops_completely,
+ unroll_loop_runtime_iterations): Updated for the new interface for
+ dominance information.
+ * loop-unswitch.c (may_unswitch_on_p, unswitch_loops,
+ unswitch_single_loop, unswitch_loop): Updated for the new
+ interface for dominance information.
+ * predict.c (process_note_predictions, process_note_prediction,
+ estimate_probability, note_prediction_to_br_prob): Ditto.
+ * sched-rgn.c (find_rgns, init_regions): Ditto.
+ * toplev.c (rest_of_handle_branch_prob): Free the dominators.
+
+2003-12-30 Jan Hubicka <jh@suse.cz>
+
+ PR target/13456
+ * i386.md (allocate_stack_worker): Use different pattern for pre and
+ post reload expansion.
+ (allocate_stack_worker_1, allocate_stack_worker_rex64): Use
+ match_scratch.
+ (allocate_stack_worder_1_postreload,
+ allocate_stack_worker_rex64_postreload): New.
+
+2003-12-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * builtins.c (expand_builtin_apply_args_1): Add pretend args size
+ to the virtual incoming args pointer for downward stacks.
+
+2003-12-29 Roger Sayle <roger@eyesopen.com>
+
+ PR fortran/12632
+ * fold-const.c (fold) <COND_EXPR>: Don't fold a constant condition,
+ if the type of the selected branch doesn't match its' parent.
+
+2003-12-29 Jan Hubicka <jh@suse.cz>
+
+ * coverage.c (read_counts_file): Better error messages; cause corrupted
+ profiles to produce hard errors, not just warnings
+ (get_coverage_counts): Similarly.
+
+ * toplev.c (rest_of_handle_loop_optimize): Enable LOOP_AUTO_UNROLL.
+
+2003-12-29 Phil Edwards <phil@codesourcery.com>
+
+ * doc/cppopts.texi: Use of -idirafter, -iprefix, -iwithprefix, and
+ -iwithprefixbefore is not discouraged.
+
+2003-12-28 Mostafa Hagog <mustafa@il.ibm.com>
+
+ * sbitmap.c (sbitmap_union_of_diff_cg, sbitmap_a_and_b_cg,
+ sbitmap_a_xor_b_cg): Accumulate "changed" properly.
+ (sbitmap_not): Zero all bits past n_bit.
+
+2003-12-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR opt/13159
+ * cfgloopanal.c (mark_irreducible_loops): Fix the strongly connected
+ components detection.
+ * loop-unswitch.c (unswitch_loop): Preserve simple preheaders.
+
+2003-12-27 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/uclinux.h (LIB_SPEC): Add elf2flt magic required for
+ correct linking of executables using id-based shared libraries.
+
+2003-12-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386-interix.h: Remove uses of "register"
+ specifier in declarations of arguments and local variables.
+ * config/i386/i386.c: Likewise.
+ * config/i386/i386elf.h: Likewise.
+ * config/i386/ptx4-i.h: Likewise.
+ * config/i386/sysv4.h: Likewise.
+
+2003-12-26 Fariborz Jahanian <fjahanian@apple.com>
+ Geoffrey Keating <geoffk@apple.com>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (legitimate_offset_address_p): Do not
+ restrict DFmode and TFmode to word alignment.
+ * config/rs6000/rs6000.md (movdf_hardfloat64): Use 'o' constraint
+ for ld/std and order before mr.
+
+2003-12-26 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/darwin.h (LINK_COMMAND_SPEC): Arrange
+ -fprofile-generate to imply -lgcov.
+
+2003-12-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (ldm_h8300s_2_normal): Use HImode for
+ addresses.
+
+2003-12-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.md: Remove a constraint from a splitter.
+
+2003-12-25 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR C++/13429, C/11944
+ * c-common.c (c_build_qualified_type): Return early when type is
+ error_mark_node.
+ (c_apply_type_quals_to_decl): Likewise.
+
+2003-12-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha-modes.def: Fix comment formatting.
+ * config/alpha/alpha.c: Likewise.
+ * config/alpha/alpha.h: Likewise.
+ * config/alpha/elf.h: Likewise.
+ * config/alpha/lib1funcs.asm: Likewise.
+ * config/alpha/openbsd.h: Likewise.
+ * config/alpha/vms-cc.c: Likewise.
+ * config/alpha/vms-crt0-64.c: Likewise.
+ * config/alpha/vms-crt0.c: Likewise.
+ * config/alpha/vms-ld.c: Likewise.
+ * config/alpha/vms-psxcrt0-64.c: Likewise.
+ * config/alpha/vms-psxcrt0.c: Likewise.
+ * config/alpha/vms.h: Likewise.
+ * config/arc/arc.c: Likewise.
+ * config/arm/aof.h: Likewise.
+ * config/arm/arm-modes.def: Likewise.
+ * config/arm/arm.c: Likewise.
+ * config/arm/arm.h: Likewise.
+ * config/arm/arm.md: Likewise.
+ * config/arm/linux-elf.h: Likewise.
+ * config/arm/vxworks.h: Likewise.
+ * config/avr/avr.c: Likewise.
+ * config/avr/avr.h: Likewise.
+
+2003-12-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/xtensa/elf.h: Fix comment formatting.
+ * config/xtensa/xtensa-protos.h: Likewise.
+ * config/xtensa/xtensa.c: Likewise.
+ * config/xtensa/xtensa.h: Likewise.
+
+2003-12-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/avr/avr.c: Fix comment formatting.
+ * config/avr/avr.md: Likewise.
+
+2003-12-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/12721.
+ * config/avr/avr.c: Include ggc.h.
+ (tmp_reg_rtx): Declare with GTY.
+ (zero_reg_rtx): Likewise.
+ (ldi_reg_rtx): Remove.
+ (avr_override_options): Initialize zero_reg_rtx and
+ ldi_reg_rtx.
+ (avr_init): Remove.
+ Include gt-avr.h.
+ * config/avr/avr.h (LDI_REG_REGNO): Remove.
+ Remove externs for tmp_reg_rtx, zero_reg_rtx, and ldi_reg_rtx.
+
+2003-12-24 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/md.texi: Document PowerPC vector register constraint letter.
+
+2003-12-23 Mark Mitchell <mark@codesourcery.com>
+
+ * calls.c (expand_call): Recognize calls to "sqrt" and create
+ corresponding notes.
+
+2003-12-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/mips/mips.c (override_options): Use `inform' instead
+ of `warning' for -g -mabi=32 and native assembler.
+
+ * config/mips/t-iris6 (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS):
+ Don't pass -Wno-error.
+
+2003-12-23 David Edelsohn <edelsohn@gnu.org>
+
+ * function.c (assign_parms): Update max_parm_reg and
+ parm_reg_stack_loc when adding new parm reg.
+
+2003-12-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ns32k/ns32k.c: Convert to ISO-C.
+
+2003-12-23 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.c (ia64_va_arg): Pass pointer for
+ variable-sized type through convert_memory_address.
+ (ia64_in_small_data_p): Always return false for FUNCTION_DECLs.
+
+2003-12-23 Jan Hubicka <jh@suse.cz>
+
+ * common.opt (fprofile-generate,fprofile-use): Add.
+ * gcc.c (LINK_COMMAND_SPEC): Arrange -fprofile-generate to imply -lgcov
+ * opts.c (profile_arc_flag_set, flag_profile_values_set,
+ flag_unroll_loops_set, flag_tracer_set,
+ flag_value_profile_transformations_set,
+ flag_peel_loops_set): New static variables.
+ (common_handle_option): Deal with -fprofile-generate/-fprofile-use
+ * invoke.texi (-fprofile-generate, -fprofile-use): Describe.
+
+2003-12-23 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (OBJS-common): Remove dwarfout.o.
+ (dwarfout.o): Remove.
+ * common.opt: Remove -gdwarf, -gdwarf+.
+ * defaults.h (PREFERRED_DEBUGGING_TYPE): Do not check for
+ DWARF_DEBUGGING_INFO.
+ * dwarf2out.c: Fix typo in comment.
+ * dwarfout.c: Remove.
+ * opts.c (common_handle_option): Remove OPT_gdwarf, OPT_gdwarf_.
+ * toplev.c (process_options): Remove check for
+ DWARF_DEBUGGING_INFO.
+ * config/elfos.h (DWARF_DEBUGGING_INFO): Do not #define it or
+ #undef it.
+ * config/netware.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/ptx4.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/vxworks.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/alpha/unicosmk.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/arc/arc.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/i386/sco5.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/i386/x86-64.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/m32r/m32r.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/mcore/mcore-elf.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/sparc/linux64.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/sparc/liteelf.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/sparc/sol26-sld.h (DWARF_DEBUGGING_INFO): Likewise.
+ * config/sparc/sp86x-elf.h (DWARF_DEBUGGING_INFO): Likewise.
+ * doc/invoke.texi: Do not mention -gdwarf, -gdwarf-1, -gdwarf-1+,
+ or -gdwarf+.
+ * doc/tm.texi: Likewise.
+
+ * c-common.c (flag_abi_version): Default to 2.
+ * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_ABI_VERSION
+ uniformly for versions above 2.
+ * doc/invoke.texi: Update documentation for -fabi-version.
+
+2003-12-22 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.md: Change many instances of '!
+ TARGET_POWERPC64' to 'TARGET_32BIT' when the pattern being guarded
+ was guarded only because it changed CR0 or the carry bit in XER.
+
+2003-12-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/13394
+ * toplev.c (rest_of_compilation): Move call to
+ check_function_return_warnings right after the sibcall
+ optimization pass.
+
+2003-12-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/13382
+ * c-typeck.c (convert_for_assignment): When converting from
+ integral type to pointer type, always call convert.
+
+2003-12-22 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi: Deprecate -fwritable-strings.
+
+ * c-common.c (flag_external_templates): Remove.
+ (flag_alt_external_templates): Likewise.
+ * c-common.h (flag_external_templates): Remove.
+ (flag_alt_external_templates): Likewise.
+ * c-opts.c (c_common_handle_option): Unsupport
+ -falt-external-templates and -ftemplates.
+ * doc/invoke.texi: Remove mention of -fexternal-templates and
+ -falt-external-templates.
+
+2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/13466
+ * config.gcc (powerpc-*-darwin): Remove overridden value of need_64bit_hwint.
+
+ * emit-rtl.c (copy_rtx_if_shared): Add comment about its use of
+ copy_rtx_if_shared_1.
+ (copy_rtx_if_shared_1): Add comment about what the function does.
+
+ * c-decl.c (finish_function): Change order of checks.
+ (c_expand_body): Likewise.
+
+2003-12-22 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (legitimate_offset_address_p): Correct
+ check for the legitimate offset when memory of
+ DImode/DFmode/TFmode/TImode mode is being referenced and target
+ is TARGET_POWERPC64.
+
+2003-12-22 Dale Johannesen <dalej@apple.com>
+
+ * reload1.c: Add reg_reloaded_call_part_clobbered.
+ (reload_as_needed): Use it.
+ (forget_old_reloads_1): Ditto.
+ (emit_reload_insns): Ditto.
+
+2003-12-22 Dale Johannesen <dalej@apple.com>
+
+ PR optimization/12828
+ * loop.c: Add find_regs_nested to look inside CLOBBER(MEM).
+ (scan_loop): Call it.
+ * regclass.c (reg_scan_mark_regs): Look inside CLOBBER(MEM).
+
+2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c/9163
+ * c-decl.c (poplevel): Only set DECL_INITIAL of a current function
+ if it is non-null.
+ (finish_function): Check for error_mark_node or null on DECL_RESULT and
+ DECL_RESULT of fndecl.
+ (c_expand_body): Only expand when DECL_INITIAL of fndecl is not
+ error_mark_node and not null.
+
+2003-12-21 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * rtl.h (dump_rtx_statistics): Declare it.
+ * rtl.c (rtx_alloc_counts, rtx_alloc_sizes, rtvec_alloc_counts,
+ rtx_alloc_sizes): New static vars.
+ (rtx_alloc, rtvec_alloc): Update them.
+ (dump_rtx_statistics): New function.
+ * toplev.c (finalize): Call it.
+ * ggc-page.c (struct globals): Fix comments. Add new member
+ total_allocated_per_order.
+ (ggc_alloc): Keep track of the total allocated memory.
+ (ggc_print_statistics): Clarify message. Print total allocated
+ memory stats.
+ * configure.in (gather-detailed-mem-stats): New flag.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * doc/install.texi (Configuration): Document
+ --enable-gather-detailed-mem-stats.
+
+2003-12-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (CONVERT_HARD_REGISTER_TO_SSA_P): Poison.
+ * config/i386/i386.h (CONVERT_HARD_REGISTER_TO_SSA_P): Remove.
+
+2003-12-21 Roger Sayle <roger@eyesopen.com>
+
+ * config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define _ILP32
+ when compiling in ILP32 mode.
+
+2003-12-21 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.c (rs6000_tls_referenced_p): Return early if
+ TARGET_HAVE_TLS is false.
+
+2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ip2k/ip2k-protos.h: Remove the prototype for
+ asm_output_section_name.
+ * config/ip2k/ip2k.c (asm_output_section_name): Remove.
+
+2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c: Fix comment formatting.
+ * alloc-pool.c: Likewise.
+ * bitmap.c: Likewise.
+ * bitmap.h: Likewise.
+ * bt-load.c: Likewise.
+ * c-common.c: Likewise.
+ * c-common.h: Likewise.
+ * c-decl.c: Likewise.
+ * c-opts.c: Likewise.
+ * c-pretty-print.c: Likewise.
+ * caller-save.c: Likewise.
+ * cfghooks.h: Likewise.
+ * cgraph.c: Likewise.
+ * collect2.c: Likewise.
+ * cppfiles.c: Likewise.
+ * cpplib.h: Likewise.
+ * dwarf2out.c: Likewise.
+ * dwarfout.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * final.c: Likewise.
+ * function.c: Likewise.
+ * gcov.c: Likewise.
+ * gcse.c: Likewise.
+ * genemit.c: Likewise.
+ * ggc.h: Likewise.
+ * haifa-sched.c: Likewise.
+ * ifcvt.c: Likewise.
+ * libgcc2.h: Likewise.
+ * loop.c: Likewise.
+ * predict.h: Likewise.
+ * unwind-libunwind.c: Likewise.
+ * varasm.c: Likewise.
+
+2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
+ a warning.
+
+2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arm/arm.c: Convert to ISO-C.
+ * config/avr/avr.h: Likewise.
+ * config/fr30/fr30.c: Likewise.
+ * config/ip2k/ip2k.c: Likewise.
+ * config/mn10300/mn10300.c: Likewise.
+
+2003-12-20 Andrew Pinski <pinskia@gcc.gnu.org>
+ Matt Thomas <matt@3am-software.com>
+
+ PR target/12749
+ * config/i386/i386.c (print_operand): Print only the first
+ 8 characters of the float in hex.
+
+2003-12-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.h (TRAMPOLINE_TEMPLATE): Shorten sequence when generating PA
+ 2.0 code.
+ (TRAMPOLINE_CODE_SIZE, MIN_CACHELINE_SIZE): New defines.
+ (INITIALIZE_TRAMPOLINE): Rework to pass line length, and aligned start
+ and end addresses to I and D cache instruction patterns.
+ * pa.md (anddi3, iordi3): Change predicates of operands 1 and 2 to
+ and_operand and ior_operand, respectively. When generating 64-bit
+ code, only one operand needs to be a register operand.
+ (xordi3): Change predicates of operands 1 and 2 to register_operand.
+ (one_cmpldi2): Change predicate of operand 1 to register_operand.
+ (dcacheflush, icacheflush): Revise to flush an arbitrary number of
+ cache lines.
+
+2003-12-20 Josef Zlomek <zlomekj@suse.cz>
+
+ PR optimization/13430, PR optimization/12322
+ * bb-reorder.c (copy_bb_p): Do not allow block with many successors to
+ be copied.
+ (find_traces_1_round): Surround check for fake edges by
+ #ifdef ENABLE_CHECKING #endif.
+
+2003-12-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR other/7956
+ * genmultilib: New variable disable_multilib. Set it to 'yes'
+ if enable_multilib was set to 'no'. Emit DISABLE_MULTILIB
+ if disable_multilib was set to 'yes'.
+ * gcc.c: Include multilib.h before tm.h.
+ * config/sparc/sol2-bi.h (LINK_ARCH_SPEC): Emit an error
+ message for multiarch options if DISABLE_MULTILIB is set.
+ * config/sparc/sol2-gld-bi.h (LINK_ARCH_SPEC): Likewise.
+
+2003-12-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/12085
+ * c-typeck.c (build_function_call): Issue a warning if a
+ function is called through an incompatible prototype and
+ replace the call by a trap in this case.
+
+2003-12-19 James E Wilson <wilson@specifixinc.com>
+
+ * install.texi (ia64-*-linux): Document minimum libunwind version
+ number.
+
+2003-12-19 Per Bothner <per@bothner.com>
+
+ * langhooks.c (lhd_print_error_function): Fix for PR c/13110.
+ Don't do pp_newline; it causes an extra blank line.
+ * pretty-print.c (pp_base_flush): Clear pp_needs_newline.
+
+2003-12-19 Jason Merrill <jason@redhat.com>
+
+ * tree.c (get_unwidened): Decide whether to narrow a bitfield
+ reference based on TYPE_SIZE, not TYPE_PRECISION.
+
+ * stmt.c (parse_output_constraint): Warn about in-out constraint
+ that doesn't allow a register.
+ (parse_input_constraint): Warn about matching constraint that
+ doesn't allow a register.
+
+2003-12-19 James E Wilson <wilson@specifixinc.com>
+
+ * flow.c (mark_set_regs, case PARALLEL): Scan loop forwards.
+ Add case for ASM_OPERANDS.
+ * global.c (global_alloc): Set regs_ever_live for regs_asm_clobbered
+ registers.
+
+2003-12-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (check_max_integer_computation_mode): Remove.
+ * dojump.c (do_jump): Don't use MAX_INTEGER_COMPUTATION_MODE.
+ * fold-const.c (fold): Likewise.
+ * system.h (MAX_INTEGER_COMPUTATION_MODE): Poison.
+ * doc/tm.texi (MAX_INTEGER_COMPUTATION_MODE): Remove.
+
+2003-12-19 James E Wilson <wilson@specifixinc.com>
+
+ * configure.in: Delete libunwind_has_eh_support test.
+ * configure: Regenerate.
+ * config.gcc (ia64*-*-linux*): Delete reference to t-libunwind-no-eh
+ and libunwind_has_eh_support check.
+ * config/t-libunwind-no-eh: Delete.
+
+2003-12-19 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-format.c (print_char_table): Allow 'I' flag on floating point
+ decimal formats.
+
+2003-12-19 Stuart Hastings <stuart@apple.com>
+
+ * gcc/config/i386/i386.c (ix86_expand_call, x86_output_mi_thunk):
+ Trivial fixes for i386.c on Darwin/x86.
+
+2003-12-19 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Add code to
+ recognize macho-style lo_sum adrress patterns.
+
+2003-12-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * dwarfout.c: Remove uses of "register" specifier in
+ declarations of arguments and local variables.
+ * gensupport.c: Likewise.
+ * local-alloc.c: Likewise.
+ * regclass.c: Likewise.
+
+2003-12-19 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * config.guess: Remove.
+
+2003-12-19 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/unwind-ia64.c (ia64_copy_rbs): New function.
+ (unw_access_gr): Only call ia64_rse_rnat_addr if addr is above
+ regstk_top.
+ (uw_frame_state_for): Handle locations inside bundles.
+ (uw_init_context_1): Initialize context->rnat.
+ Set context->regstk_top to lowest rbs address which has nat collection
+ in context->rnat.
+ (uw_install_context): Fix rnat restoring.
+ Restore ar.rsc to previous state.
+ * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR,
+ MD_HANDLE_UNWABI): Handle unwinding through SA_ONSTACK frames.
+
+2003-12-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/13239
+ * builtins.c (expand_builtin_expect_jump): Update
+ TREE_VALUE (arglist) if unsave_expr_now langhook
+ created a new tree.
+
+2003-12-19 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (thumb_base_register_rtx_p): Use regno in comparison against
+ FIRST_PSEUDO_REGISTER.
+
+2003-12-18 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (USE_ALTIVEC_FOR_ARG_P): Don't check
+ for SVR4 ABI.
+
+2003-12-18 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/aix.h (OS_MISSING_POWERPC64): Define.
+ (OS_MISSING_ALTIVEC): Define.
+ * config/rs6000/darwin.h (ASM_SPEC): Be generous about supplying
+ -force_cpusubtype_ALL.
+ * config/rs6000/rs6000.c (rs6000_override_options): Rearrange
+ CPU information table; now always set all CPU-specific values.
+ Also, use Altivec and powerpc64 when chip and OS supports them.
+
+2003-12-18 Geoffrey Keating <geoffk@apple.com>
+
+ * fixinc/inclhack.def (darwin_macho_dyldh): New.
+ * fixinc/fixincl.x: Regenerate.
+
+2003-12-18 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ * version.c (version_string): Renumber as 3.4.0
+ * doc/include/gcc-common.texi: Likewise
+
+2003-12-18 Richard Henderson <rth@redhat.com>
+
+ * genrecog.c (print_host_wide_int): New.
+ (write_switch, write_cond): Use it.
+
+2003-12-18 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (check_bitfield_type_and_width): Remove enum special
+ case suppression of pedwarn.
+ * system.h (ENUM_BITFIELD): Use __extension__.
+ (CHAR_BITFIELD): Likewise.
+
+2003-12-18 Ulrich Weigand <uweigand@de.ibm.com>
+ Mark Dettinger <dettinge@de.ibm.com>
+
+ * config/s390/s390.md (UNSPEC_SRST): New constant.
+ ("strlendi", "strlensi"): New expanders.
+ ("*strlendi", "*strlensi"): New insns.
+
+2003-12-18 Mark Mitchell <mark@codesourcery.com>
+
+ * config/sol2.h (LINK_ARCH32_SPEC): Define in terms of ...
+ (LINK_ARCH32_SPEC_BASE): ... this new macro.
+ * config/sparc/sol2-bi.h (LINK_ARCH64_SPEC): Define in terms of
+ ...
+ (LINK_ARCH64_SPEC_BASE): ... this new macro.
+ * config/sparc/sol2-gld-bi.h (LINK_ARCH32_SPEC): New macro.
+ (LINK_ARCH64_SPEC): Likewise.
+
+2003-12-18 Jason Merrill <jason@redhat.com>
+
+ PR middle-end/13234
+ * tree-dump.c (dequeue_and_dump): Handle 'r' and 's' code
+ classes.
+
+2003-12-18 Steven Bosscher <stevenb@suse.de>
+
+ * Makefile.in (tracer.o, bb-reorder.o): Depend on timevar.h
+ * toplev.c (rest_of_handle_reorder_blocks, rest_of_handle_tracer):
+ Don't push and pop TV_REORDER_BLOCKS timevars, do it...
+ * bb-reorder.c (reorder_basic_blocks): ...here, and...
+ * tracer.c (tracer): here.
+
+2003-12-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * loop.c (move_movables): Handle combination of m->consec,
+ m->move_insn_first, and m->insert_temp all nonzero correctly.
+
+2003-12-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * calls.c (load_register_parameters): Don't use
+ LOAD_ARGS_REVERSED.
+ * system.h (LOAD_ARGS_REVERSED): Poison.
+ * doc/tm.texi (LOAD_ARGS_REVERSED): Remove.
+
+2003-12-17 Per Bothner <per@bothner.com>
+
+ * emit-rtl.c (set_new_first_and_last_label_num): Remove function.
+ * rtl.h (set_new_first_and_last_label_num): Remove declaration.
+
+2003-12-17 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/frv/frv.c (frv_ifcvt_modify_insn): Don't leave alone
+ scratch insns of the then branch that clobber regs needed by the
+ else branch.
+
+2003-12-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * calls.c (expand_call): Update comments.
+ * system.h (PRETEND_OUTGOING_VARARGS_NAMED): Poison.
+ * targhooks.c: Do not refer to PRETEND_OUTGOING_VARARGS_NAMED.
+
+2003-12-17 James E Wilson <wilson@specifixinc.com>
+ Roger Sayle <roger@eyesopen.com>
+
+ * Makefile.in (gcse.o): Add $(TREE_H) to dependencies.
+ * gcse.c: Include tree.h.
+ (implicit_set_cond_p): New.
+ (find_implicit_sets): Call it.
+
+2003-12-17 Santiago Vila <sanvila@unex.es>
+
+ * config/kfreebsdgnu.h (TARGET_OS_CPP_BUILTINS): Rename from
+ TARET_OS_CPP_BUILTINS.
+
+2003-12-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * emit-rtl.c: Fix signed/unsigned comparison warnings.
+
+2003-12-17 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * predict.c (struct block_info_def, struct edge_info_def): Change
+ bit-fields of width 1 to unsigned int.
+
+2003-12-16 Geoffrey Keating <geoffk@apple.com>
+
+ PR 12480
+ * c-pch.c (pch_init): Improve error message when precompiled
+ header can't be written.
+
+ PR 12606
+ * c-pch.c (pch_init): Make a PCH file appear invalid while it's
+ being written.
+ (c_common_write_pch): Make it valid once it's done.
+
+2003-12-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR target/11992
+ * config/s390/s390.md ("*cmpmem_long_64"): Use CLCLE instruction
+ instead of CLCL.
+ ("*cmpmem_long_31"): Likewise.
+
+2003-12-17 Vladimir Makarov <vmakarov@redhat.com>
+
+ * config/ia64/ia64.c: Add more comments about insn bundling.
+
+2003-12-17 Richard Earnshaw <rearnsha@arm.com>
+
+ PR optimization/10592
+ * caller-save.c (mark_referenced_regs): Don't short-circuit a reg
+ or subreg in SET_DEST if it isn't a hard register.
+
+2003-12-17 David Edelsohn <edelsohn@gnu.org>
+
+ * collect2.c (main): Add -fno-profile-arcs -fno-test-coverage
+ -fno-branch-probabilities to arguments when compiling ctors and
+ dtors.
+
+2003-12-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2.h: Set SUPPORTS_INIT_PRIORITY to 0.
+ * config/sparc/sol2-gld.h: Set SUPPORTS_INIT_PRIORITY to 1.
+
+2003-12-17 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (thumb_base_register_rtx_p): Don't allow virtual registers
+ as base registers for sub-word operations.
+ (thumb_legitimate_address_p): Simplify REG+REG test.
+
+2003-12-17 Segher Boessenkool <boessen@de.ibm.com>
+
+ * opts.c (wrap_help): Fix overflow.
+
+2003-12-17 Fred Fish <fnf@redhat.com>
+
+ * configure.in: Remove code to examine linker scripts and set
+ HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES.
+ * configure, config.in: Regenerate.
+
+2003-12-16 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/12218
+ * varasm.c (initializer_constant_valid_p): Allow a conversion from
+ an integral constant to an OFFSET_TYPE.
+
+2003-12-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/11012
+ * config/m32r/m32r.c (gen_compare): Call gen_addsi3 instead of
+ gen_cmp_ne_small_const_insn.
+ * config/m32r/m32r.md (cmp_ne_small_const_insn): Remove.
+
+2003-12-17 Neil Booth <neil@daikokuya.co.uk>
+ Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/3347
+ * c-decl.c (enum_decl_context): Remove BITFIELD.
+ (grokdeclarator): Take bit-field width as an input.
+ Perform bit-field width validation with
+ check_bitfield_type_and_width rather than waiting for
+ finish_struct.
+ (groktypename, groktypename_in_parm_context, start_decl,
+ push_parm_decl, grokfield, start_function): Update calls to
+ grokdeclarator.
+ (check_bitfield_type_and_width): New function.
+ (finish_struct): Move bit-field validation to grokdeclarator
+ and check_bitfield_type_and_width.
+
+2003-12-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR bootstrap/13386
+ * configure.in (gcc_cv_ld_hidden): Set to yes on hppa64*-*-hpux* when
+ using HP native linker.
+ * configure: Rebuilt.
+
+2003-12-16 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13275
+ * c-common.h (enum rid): Add RID_OFFSETOF.
+ * c-parser.in (rid_to_yy): Ignore RID_OFFSETOF.
+ * ginclude/stddef.h (offsetof): Reimplement for C++, using
+ __offsetof__.
+ * doc/extend.texi: Document __offsetof__.
+
+2003-12-16 Stan Cox <scox@redhat.com>
+
+ * config/iq2000/iq2000.h: Formatting.
+ (MAX_INT_TYPE_SIZE, MAX_INT_TYPE_SIZE, CONST_COSTS, RTX_COSTS)
+ (ADDRESS_COST, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL)
+ (IMPLICIT_FIX_EXPR, EASY_DIV_EXPR, SLOW_ZERO_EXTEND): Remove
+ * config/iq2000/iq2000.c: Formatting.
+ (iq2000_rtx_costs): New.
+
+2003-12-16 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (addsi3_carryin_shift): Add missing register constraints.
+
+2003-12-16 Loren James Rittle <ljrittle@acm.org>
+
+ * testsuite/g++.old-deja/g++.eh/badalloc1.C: Tweak to
+ pass with -pthread on FreeBSD systems.
+
+2003-12-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_file_end): Only write symbols that have
+ been referenced at some point.
+
+2003-12-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c: Include langhooks.h
+ (mips_build_builtin_va_list): Use lang_hooks.types.make_type.
+
+2003-12-16 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/13313
+ * combine.c (make_extraction) [REG]: Do not use
+ gen_lowpart_for_combine when POS is non-zero.
+
+2003-12-16 Hartmut Penner <hpenner@de.ibm.com>
+
+ * altivec.h (vec_cmple, vec_all_numeric): Fix typo.
+ * testsuite/gcc.dg/altivec-10.c: Test for above.
+
+2003-12-15 David O'Brien <obrien@FreeBSD.org>
+
+ * Makefile.in (CPPFLAGS): Initialize from configure.
+
+2003-12-15 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/13400
+ * ifcvt.c (noce_process_if_block): Disable unconditional write
+ optimizations if we could introduce a store to trapping memory
+ that wasn't present previously.
+
+2003-12-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (DEFAULT_CALLER_SAVES): Poison.
+ * toplev.c (flag_caller_saves): Always initialize with 0.
+ * doc/tm.texi (DEFAULT_CALLER_SAVES): Remove.
+
+2003-12-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * flow.c (EXIT_IGNORE_STACK): Move to ...
+ * defaults.h (EXIT_IGNORE_STACK): ... here.
+ * dojump.c (clear_pending_stack_adjust): Don't use #ifdef
+ EXIT_IGNORE_STACK.
+ * function.c (expand_function_end): Likewise.
+ * global.c (global_alloc): Likewise.
+ * ra.c (init_ra): Likewise.
+ * reload1.c (init_elim_table): Likewise.
+ * reorg.c (fill_simple_delay_slots): Likewise.
+ * resource.c (init_resource_info): Likewise.
+ * doc/tm.texi (EXIT_IGNORE_STACK): Document that the default
+ is 0.
+
+2003-12-15 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * reload.c (reg_overlap_mentioned_for_reload_p):
+ When looking at a PLUS in X, avoid spuriously returning nonzero
+ when IN is a REG or another simple PLUS, or a MEM containing one.
+
+ * loop.c (loop_invariant_p): Amend comment about where new registers
+ might come from.
+
+2003-12-15 Andreas Jaeger <aj@suse.de>
+
+ * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Remove
+ handling of obsolete language CHILL.
+
+2003-12-15 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ * tree.c (initializer_zerop): Add test for empty set.
+ * integrate.c (function_cannot_inline_p): Forbid inlining
+ functions calling `longjmp'.
+
+2003-12-15 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/11773
+ * doc/gcov.texi (Gcov and Optimization): Document inline function
+ behaviour. Fix some file suffixes.
+
+2003-12-14 David O'Brien <obrien@FreeBSD.org>
+
+ * config/i386/i386.h (__amd64, __amd64__): Remove duplicates.
+
+2003-12-14 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.h (c_parse_error): Declare it.
+ * c-common.c (c_parse_error): New function.
+ * c-parse.y (yyerror): Use it.
+
+2003-12-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/13054
+ * pa-protos.h (indexed_memory_operand, borx_reg_operand,
+ move_dest_operand, move_src_operand): New protypes.
+ (basereg_operand, move_operand, reg_or_nonsymb_mem_operand): Deleted.
+ * pa.c (copy_reg_pointer, indexed_memory_operand, move_dest_operand,
+ move_src_operand): New functions.
+ (basereg_operand, reg_or_nonsymb_mem_operand, move_operand): Delete.
+ (reg_or_0_or_nonsymb_mem_operand): Return false for unscaled indexed
+ address until cse is not expected on targets with non-equivalent
+ space registers.
+ (hppa_legitimize_address): Canonicalize unscaled indexed addresses
+ on targets non-equivalent space registers.
+ (emit_move_sequence): Break out indexed addresses from destination
+ operand. Similarly, break out unscaled indexed addresses from
+ source operand on targets with non-equivalent space registers. Fix
+ REG_POINTER flag when possible. Mark register pointer when creating
+ new pointers.
+ (print_operand): Handle unscaled index addresses.
+ * pa.h (IS_INDEX_ADDR_P, IS_LO_SUM_DLT_ADDR_P): New macro subroutines
+ for EXTRA_CONSTRAINT.
+ (EXTRA_CONSTRAINT): Rework to make more readable.
+ (MODE_OK_FOR_SCALED_INDEXING_P, MODE_OK_FOR_UNSCALED_INDEXING_P): New
+ subroutines for GO_IF_LEGITIMATE_ADDRESS.
+ (GO_IF_LEGITIMATE_ADDRESS): Rework using new subroutines. Allow scaled
+ and unscaled addresses. Canonicalize unscaled indexed addresses on
+ targets with non-equivalent space registers. Document issues in
+ handling indexed address modes on PA-RISC.
+ (PREDICATE_CODES): Update for new and deleted predicates.
+ * pa.md (move_dest_operand, move_src_operand, indexed_memory_operand):
+ Use new predicates in move patterns.
+ Add peephole2 patterns to optimize floating point stores. Fix
+ constrain preferencing in move patterns. Delete patterns for handling
+ unscaled indexed memory loads. Add missing load and store with
+ base-register modification patterns. Correct SFmode floating point
+ store pattern. Add missing zero extension loads.
+
+2003-12-13 Steven Bosscher <stevenb@suse.de>
+
+ * ggc-zone.c (struct alloc_zone): Don't pre-declare, it already
+ comes in with ggc.h. Add a new bool field `dead'.
+ (destroy_ggc_zone): Don't destroy a zone at once. Instead, only
+ set the `dead' flag for the dead zone. Wrap a sanity check in
+ ENABLE_CHECKING.
+ (ggc_collect_1): Always mark and sweep if a zone has the `dead'
+ flag set.
+ (ggc_collect): Free dead zones after collecting.
+
+2003-12-13 Jan Hubicka <jh@suse.cz>
+
+ * coverage.c (get_coverage_counts): Use inform instead of warning
+ about missing profile.
+
+2003-12-12 Steven Bosscher <stevenb@suse.de>
+
+ * Makefile.in (opts.o, explow.o): Depend on langhooks.h
+
+2003-12-12 Geoffrey Keating <geoffk@apple.com>
+
+ * config.gcc <i[34567]86-*-darwin*>: Don't use fixproto.
+ <powerpc-*-darwin*>: Likewise.
+
+2003-12-12 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/linux.h (IA64_GATE_AREA_END): Increase by 64K.
+ (MD_FALLBACK_FRAME_STATE_FOR): Set fpsr_loc, br_loc[6] and
+ br_loc[7]. Update comment.
+ (MD_HANDLE_UNWABI): Define.
+ * config/ia64/unwind-ia64.c (struct unw_state_record): Add
+ unwabi field.
+ (struct _Unwind_Context): Increase br_loc array size to 8 entries.
+ (desc_abi): Set unwabi.
+ (uw_update_reg_address): Allow br up to 7.
+ (uw_update_context): Invoke MD_HANDLE_UNWABI if defined.
+ (uw_install_context): Load b1..b5 from correct locations.
+ Fix insn loading ar.fpsr.
+ * doc/tm.texi: Document MD_HANDLE_UNWABI.
+
+2003-12-12 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/13037
+ * loop.c (update_giv_derive): Ignore redundant sets of a biv when
+ calculating how to derive a giv from a biv.
+
+2003-12-12 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/12935 preprocessor/12952 preprocessor/13046
+ * cpplib.c (prepare_directive_trad): Clear skipping only in
+ #if and #elif directives.
+ (do_undef): Call the handler even if the identifier is not a macro.
+ * cpptrad.c (scan_parameters): Emit an error message.
+ (_cpp_create_trad_definition): Remember the params list even on
+ failure.
+
+2003-12-11 Zack Weinberg <zack@codesourcery.com>
+
+ * arm.c (ARM_ADDRESS_COST, THUMB_ADDRESS_COST): Convert macros
+ to inline functions: arm_arm_address_cost, arm_thumb_address_cost
+ respectively.
+ (arm_address_cost): Use 'em.
+
+2003-12-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Define
+ __STDC_VERSION__ to ISO C94 for C++.
+
+ * fixinc/inclhack.def (alpha_wchar): New fix.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/wchar.h: New file.
+
+2003-12-11 David Mosberger <davidm@hpl.hp.com>
+
+ * unwind-libunwind.c (_Unwind_SetGR): Clear the NaT bit as
+ required by C++ ABI for Itanium.
+ * config/t-libunwind (LIB2ADDEH): Remove unwind-libunwind.c.
+ * config/t-libunwind-no-eh: New file.
+ * configure.in: Check libunwind for _Unwind_Resume() and if it's
+ present, set libunwind_has_eh_support to "yes".
+ * configure: Regenerate.
+ * config.gcc (ia64*-*-linux*): If $libunwind_has_eh_support is
+ set to yes, use t-libunwind, otherwise, use t-libunwind-no-eh.
+
+2003-12-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_global_pointer): Force functions with
+ a nonlocal goto to set up $gp.
+
+2003-12-11 James E Wilson <wilson@specifixinc.com>
+
+ PR target/13132
+ * function.c (gen_mem_addressof): When no decl, explicitly clear flag
+ bits.
+
+2003-12-12 Nick Clifton <nickc@redhat.com>
+
+ * config/m32r/m32r.c: Convert to ISO-C
+
+2003-12-12 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * doc/invoke.texi: Replace Mitsubishi with Renesas.
+ * config/m32r/m32r.h: Ditto.
+ * config/m32r/m32r.c: Ditto.
+ * config/m32r/m32r.md: Ditto.
+
+2003-12-11 Steven Bosscher <steven@gcc.gnu.org>
+
+ * basic-block.h (BLOCK_HEAD, BLOCK_END): Remove.
+ (BLOCK_HEAD_TREE, BLOCK_END_TREE): Remove.
+ (basic_block_def): Rename `head' to `head_' and `end' to `end_'.
+ (BB_HEAD, BB_END): New accessor macros for the `head_' and `end_'
+ fields of a basic block.
+ * bb-reorder.c, bt-load.c, caller-save.c, cfg.c, cfganal.c,
+ cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c, cfgloopanal.c,
+ cfgloopmanip.c, cfgrtl.c, combine.c, conflict.c, df.c, emit-rtl.c,
+ final.c, flow.c, function.c, gcse.c, global.c, graph.c,
+ haifa-sched.c, ifcvt.c, lcm.c, local-alloc.c, loop-unswitch.c,
+ loop.c, postreload.c, predict.c, profile.c, ra-build.c, ra-debug.c,
+ ra-rewrite.c, ra.c, recog.c, reg-stack.c, regclass.c, regmove.c,
+ regrename.c, reload1.c, resource.c, sched-ebb.c, sched-rgn.c,
+ sibcall.c, tracer.c, config/frv/frv.c, config/i386/i386.c,
+ config/ia64/ia64.c: Use the BB_HEAD and BB_END macros instead of
+ accessing the `head' and `end' fields of a basic block directly.
+
+ * gengtype.c: Teach about "void**" pointers and "void *" function
+ types. Fixes earlier commit.
+
+2003-12-10 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/extend.texi (Vector Extensions): Document that bitwise
+ operations also work on vectors.
+
+2003-12-10 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md: New split patterns for optimizing bitfield accesses.
+
+2003-12-10 Steven Bosscher <stevenb@suse.de>
+
+ * README.Portability: Remove K+R section.
+
+ * gengtype-lex.l: Teach about "void**" pointers and
+ "void*" function types.
+
+2003-12-10 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13354
+ * config/sparc/sparc.c (sparc_output_mi_thunk): Load DELTA
+ manually if one can do that with only one instruction.
+
+2003-12-10 Nick Clifton <nickc@redhat.com>
+
+ * config.gcc (arm-linux): Include linux.h in tm_file so that
+ LINUX_TARGET_OS_CPP_BUILTINS is defined.
+ * config/arm/linux-elf.h (LIB_SPEC): Protect the definition.
+
+2003-12-09 James E Wilson <wilson@specifixinc.com>
+
+ * rtl.def (CODE_LABEL, NOTE): Correct operand numbers in comments.
+
+2003-12-09 Matt Austern <austern@apple.com>
+
+ PR c/13134
+ * c-decl.c (duplicate_decls): Copy visibility flag when appropriate.
+
+2003-12-09 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h: Add support for m32r2 processor. Including
+ a new command line option -m32r2 to select it.
+ * config/m32r/m32r.c: Add support for the new processor variant.
+ * config/m32r/m32r.md: Likewise.
+ * config/m32r/t-m32r: Add m32r2 multilibs.
+ * doc/invoke.texi: Document the new command line switch.
+
+2003-12-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * defaults.h (LOCAL_REGNO): Give the default definition.
+ * flow.c (LOCAL_REGNO): Remove.
+ * reload1.c (LOCAL_REGNO): Likewise.
+
+2003-12-08 Geoffrey Keating <geoffk@apple.com>
+
+ PR target/11848
+ * rs6000.h (CANNOT_CHANGE_MODE_CLASS): Allow change of mode
+ in floating-point registers between TFmode and DImode.
+ * rs6000.c (rs6000_emit_move): Split moves early.
+ (secondary_reload_class): Random Whitespace Change.
+ (rs6000_split_multireg_move): Support moves involving FP registers.
+ Emit instructions directly.
+ * rs6000-protos.h (rs6000_split_multireg_move): Update prototype.
+ * altivec.md: Update for changes to rs6000_split_multireg_move.
+ * rs6000.md: Update for changes to rs6000_split_multireg_move.
+ (movtf_internal): Support moves to/from GPRs.
+
+2003-12-08 Stuart Hastings <stuart@apple.com>
+
+ * config/i386/i386.md: Typo in split of fp-valued if_then_else.
+
+2003-12-08 James E Wilson <wilson@specifixinc.com>
+
+ PR target/13132
+ * expmed.c (extract_bit_field): Only call mode_for_size for scalar
+ integer modes.
+
+2003-12-08 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * doc/install.texi: Revert change of Dec 7; gcc is still a 2.13
+ directory.
+
+2003-12-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/frv/frv.md (subdi2): Merge with _internal insn_and_split,
+ by using match_scratch.
+ (negdi2): New.
+
+2003-12-08 Jason Merrill <jason@redhat.com>
+ Daniel Berlin <dberlin@dberlin.org>
+
+ PR debug/11114
+ Support namespaces in DWARF 2 output.
+ * dwarf2out.c (gen_namespace_die): New function.
+ (force_namespace_die, setup_namespace_context): New fns.
+ (declare_in_namespace): New fn.
+ (gen_decl_die): Call declare_in_namespace. Handle namespaces.
+ (dwarf2out_decl): Handle namespaces.
+ (scope_die_for): Pass through a namespace scope.
+ (class_scope_p): Rename to class_or_namespace_scope_p.
+ (gen_subprogram_die, gen_variable_die): Adjust.
+ (gen_struct_or_union_die): Always emit a declaration
+ if context_die is a namespace.
+
+2003-12-08 Jan Hubicka <jh@suse.cz>
+
+ * unwind-pe.h (read_uleb128): Fix handling of large values
+ (read_sleb128): Fix handling of large values
+
+2003-12-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/10060
+ * emit-rtl.c (copy_rtx_if_shared): Split out into ...
+ (copy_rtx_if_shared_1): here and optimize the last one
+ in the sequence into tail-recursion.
+ (reset_used_flags): Optimize the last one
+ in the sequence into tail-recursion.
+
+2003-12-08 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md: New split to transform ((X << y) - 1) into ~(~(X-1) << y)
+ for constant X.
+
+2003-12-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * calls.c (expand_call): Don't try using tail or recursive calls
+ after the function body has been expanded.
+
+2003-12-08 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (cmpstr expander): Obey TARGET_INLINE_ALL_STRINGOPS
+
+2003-12-08 Arnaud Charlet <charlet@act-europe.fr>
+
+ PR ada/13324, PR ada/12614
+ * doc/install.texi: Update requirements for building Ada.
+
+2003-12-07 David Edelsohn <edelsohn@gnu.org>
+ Graham Reed <greed@pobox.com>
+
+ * collect2.c (GCC_OK_SYMBOL): Add support for AIX C_WEAKEXT.
+ (GCC_UNDEF_SYMBOL): Same.
+
+2003-12-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * final.c (final_scan_insn): Don't use FINAL_PRESCAN_LABEL.
+ * system.h (FINAL_PRESCAN_LABEL): Poison.
+ * doc/tm.texi (FINAL_PRESCAN_LABEL): Remove.
+
+2003-12-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (compare): Combine toplevel and $(SUBDIRS) cases.
+
+2003-12-07 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in, aclocal.m4: Revert to pre-2.5x conversion status.
+ * configure: Regenerate with autoconf 2.13.
+
+ * configure.in: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM
+ with modern equivalents.
+ * configure: Regenerate.
+
+ * configure.in: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE.
+ * aclocal.m4 (gcc_AC_CHECK_TYPE): Remove.
+ * configure: Regenerate.
+
+ * configure: Regenerate with (preferred) autoconf 2.57.
+ * doc/install.texi: Note that 'gcc' is now a 2.57 directory.
+
+2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/12965
+ * caller-save.c (save_call_clobbered_regs): Do not save/restore
+ registers around no-return calls.
+
+2003-12-07 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Make minimum necessary changes for autoconf 2.5x.
+ * aclocal.m4: Make minimum necessary changes for autoconf 2.5x.
+ * configure: Regenerate with autoconf 2.58.
+
+2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/13318
+ * loop.c (express_from): Protect integer division from overflow.
+
+2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/13060
+ * function.c (fixup_var_refs_1) [SUBREG]: Recognize even if a
+ replacement already exists. Fix again the whole insn if that fails.
+
+2003-12-06 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.c (macho_branch_islands): Use
+ HOST_WIDE_INT_PRINT_UNSIGNED.
+
+2003-12-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * varasm.c (incorporeal_function_p): New.
+ (assemble_external): Use it as a filter.
+ * config/mips/mips.c (mips_output_external): Don't check for builtin
+ functions here.
+
+2003-12-06 Richard Earnshaw <reanrsha@arm.com>
+
+ * arm.md (IOR (COMPARISON) (AND)): New define_splits.
+
+2003-12-06 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (program_transform_cross_name): Delete.
+ (GCC_CROSS_NAME, CPP_CROSS_NAME): Delete.
+ (PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): Delete.
+ (AR_FOR_TARGET, RANLIB_FOR_TARGET, NM_FOR_TARGET): Adjust for above.
+ (install_cpp, install_driver, install-man, uninstall): Likewise.
+
+2003-12-06 Alan Modra <amodra@bigpond.net.au>
+
+ PR 13169
+ * basic-block.h (PROP_ASM_SCAN): Define.
+ * final.c (regs_asm_clobbered): New array.
+ * regs.h (regs_asm_clobbered): Declare.
+ * flow.c (life_analysis): Init it.
+ (mark_set_regs): Set PROP_ASM_SCAN for asms.
+ (mark_set_1): Set regs_asm_clobbered.
+ * global.c (global_alloc): Don't set eliminable_regset when
+ regs_asm_clobbered.
+
+2003-12-05 Mark Mitchell <mark@codesourcery.com>
+
+ * config/ia64/ia64.h (MUST_PASS_IN_STACK): Define.
+
+ PR c++/13314
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Robustify.
+
+2003-12-05 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR driver/13211
+ * gcc.c (execute) Increment execution_count when returning
+ early because verbose_only_flag is true.
+
+2003-12-05 Per Bothner <pbothner@apple.com>
+
+ * cppfiles.c (file_hash_hash): New static function.
+ (hash_string_eq): Renamed static function to file_hash_eq.
+ (_cpp_init_files): Create file_hash table with above callbacks.
+ (cpp_included): Must use htab_find_with_hash insead of htab_find.
+ (_cpp_find_find, make_cpp_dir): Must use htab_find_slot_with_hash.
+
+2003-12-05 Per Bothner <pbothner@apple.com>
+
+ * line-map.h (source_location): New typedef.
+ (fileline): Redefined as source_location.
+ (struct line_map, linemap_add, linemap_lookup): Replace filefile
+ by source_location.
+ * line-map.c (linemap_add, linemap_lookup): Use source_location.
+
+2003-12-05 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_build_builtin_va_list): Add dummy
+ field to suppress -Wpadded warnings.
+
+2003-12-05 Stuart Hastings <stuart@apple.com>
+
+ * config/rs6000/rs6000.md: Correct macro test of TARGET_MACHO.
+
+2003-12-05 Stuart Menefy <stuart.menefy@st.com>
+ J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR target/13302
+ * sh.c (sh_build_builtin_va_list): Use (*lang_hooks.types.make_type).
+
+2003-12-05 Roger Sayle <roger@eyesopen.com>
+
+ * dojump.c (do_jump): If the expression being compared against
+ zero, is the subreg of a promoted variable, perform the comparison
+ in the promoted mode.
+ * simplify-rtx.c (simplify_unary_operation): Optimize sign and
+ zero-extensions of subregs of promoted variables where the
+ extension is identical to that used to promote the variable.
+
+2003-12-05 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/13256
+ * resource.h (enum mark_resource_type): Remove member MARK_DEST.
+ The only user changed as follows:
+ * resource.c (mark_set_resources) <case SET>: Always recurse for
+ SET_SRC (x).
+ <case SIGN_EXTRACT, case ZERO_EXTRACT>: Always recurse on
+ operands.
+ <case STRICT_LOW_PART>: Delete, deferring to default code.
+
+2003-12-05 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ * stmt.c (expand_nl_goto_receiver): Copy hard register clobbers
+ and ASM_INPUT barrier from expand_builtin_setjmp_receiver.
+
+2003-12-05 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_expand_call): Don't allow laziy binding
+ for n32 & n64 abicalls.
+
+2003-12-05 Richard Sandiford <rsandifo@redhat.com>
+
+ PR bootstrap/13145
+ * config/mips/mips.h (FIRST_PSEUDO_REGISTER): Adjust comment.
+ * config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Add $fcall.
+ (mips_load_got): Always create a constant MEM.
+ (mips_expand_call): Use load_callsi and load_calldi.
+ * config/mips/mips.md (UNSPEC_LOAD_CALL, FAKE_CALL_REGNO): New consts.
+ (load_callsi, load_calldi): New patterns.
+
+2003-12-05 Peter Gerwinski <peter@gerwinski.de>
+
+ * tree.def (PLACEHOLDER_EXPR): Clarify commentary.
+
+2003-12-05 Steven Bosscher <stevenb@suse.de>
+
+ * config/d30v/d30v-protos.h , config/d30v/d30v.c,
+ config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c,
+ config/fr30/fr30-protos.h, config/fr30/fr30.c,
+ config/i370/i370-protos.h, config/i370/i370.c,
+ config/i960/i960-protos.h, config/i960/i960.c,
+ config/ip2k/ip2k-protos.h, config/ip2k/ip2k.c,
+ config/m32r/m32r-protos.h, config/m32r/m32r.c,
+ config/mn10300/mn10300-protos.h, config/mn10300/mn10300.c,
+ config/ns32k/ns32k-protos.h, config/ns32k/ns32k.c:
+ Convert to ISO C90 function declarations and definitions.
+
+2003-12-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/extend.texi (Constructing Calls): Add warning about
+ the limitations of the functions.
+
+2003-12-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/11151
+ * function.h (struct function): New field 'x_naked_return_label'.
+ * function.c (free_after_compilation): Set it to NULL.
+ (expand_function_end): Emit 'naked_return_label' if it exists.
+ * rtl.h (expand_naked_return): Declare.
+ * stmt.c (expand_naked_return): New function to generate a
+ jump to 'naked_return_label'.
+ * builtins.c (expand_builtin_return): Call expand_naked_return
+ instead of expand_null_return.
+ * config/sparc/sparc.md (untyped_return): Likewise.
+
+2003-12-04 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/11322
+ * config/sh/netbsd-elf.h (NO_PROFILE_COUNTERS): Define.
+
+ PR target/12467
+ * config/rs6000/altivec.md (altivec_vmsummbm): Fix typo.
+
+2003-12-04 Stuart Hastings <stuart@apple.com>
+
+ * rs6000.c (output_call, macho_branch_islands,
+ add_compiler_branch_island, no_previous_def, get_previous_label)
+ Revisions of xx_stub functions for branch islands,
+ add -fPIC support for Darwin.
+ * rs6000-protos.h (output_call) Prototype.
+ * rs6000.md Use output_call.
+ * invoke.texi Explain Darwin semantics of -longcall.
+ * testsuite/gcc.dg/darwin-abi-1.c Revise testcase for -longcall/jbsr.
+
+2003-12-04 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.md (addqi3_carry): Use q not r constraints.
+ (subqi3_carry): Likewise.
+
+2003-12-04 J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR optimization/13260
+ * sh-protos.h (sh_expand_t_scc): Declare.
+ * sh.h (PREDICATE_CODES): Add cmpsi_operand.
+ * sh.c (cmpsi_operand, sh_expand_t_scc): New functions.
+ * sh.md (cmpsi): Use cmpsi_operand. If T_REG is compared to
+ something that is not a CONST_INT, copy it into a pseudo register.
+ (subc): Fix description of new T value.
+ (slt, sgt, sge, sgtu): Don't clobber T after rtl generation is over.
+ (sltu, sleu, sgeu): Likewise.
+ (seq, sne): Likewise. Use sh_expand_t_scc.
+
+2003-12-04 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Generalize the CONFIG_HEADERS pattern under which
+ we stamp cstamp-h.
+ * configure: Regenerate.
+
+ * configure.in: Pull AC_CHECK_HEADER call out of shell if statement
+ to avoid trouble when updating to autoconf 2.5x.
+ * configure: Regenerate (with autoconf 2.13 still).
+
+2003-12-04 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.md (truncdiqi2): Use andi opcode for immediate.
+ (reload_outdf+1,reload_outdf+2): Remove constraints.
+ (movv16sf_i): Fxi multiplier for SUBREG_BYTE.
+ (movv8qi_i+2): Zero-extend low byte before adding it to high byte.
+ (fipr, ftrv): Add .s suffix to opcode.
+
+2003-12-04 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/13186
+
+ Revert all of the following patch, except the addition of
+ hook_bool_machine_mode_true:
+
+ 2003-11-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * Makefile.in (targhooks.o, reload.o): Update dependencies.
+ (GTFILES): Add targhooks.c.
+ (gt-targhooks.h): New rule; depend on s-gtype.
+ * target.h (direct_pool_load_p): New hook.
+ * target-def.h (TARGET_DIRECT_POOL_LOAD_P): New macro.
+ (TARGET_INITIALIZER): Include it.
+ * targhooks.h (default_direct_pool_load_p): Declare.
+ (hook_bool_machine_mode_true): Declare.
+ * targhooks.c: Include insn-config.h, recog.h, ggc.h and
+ gt-targhooks.h.
+ (pool_symbol): New variable.
+ (default_direct_pool_load_p): New function.
+ (hook_bool_machine_mode_true): New function.
+ * reload.c: Include target.h.
+ (find_reloads): If an alternative will force a constant into memory,
+ count an extra reload if constant pool symbols are not valid
+ addresses. If an alternative uses memory to move values between
+ registers, count the move as two reloads rather than one.
+ * config/s390/s390.c (TARGET_DIRECT_POOL_LOAD_P): Define.
+ * doc/tm.texi (TARGET_DIRECT_POOL_LOAD_P): Document.
+
+2003-12-03 Mark Mitchell <mark@codesourcery.com>
+
+ * config/ia64/hpux.h (TARGET_HAVE_TLS): Define it to false.
+ * config/ia64/ia64.h (TARGET_HAVE_TLS): Define it to true if
+ HAVE_AS_TLS is true.
+ * config/ia64/ia64.c (TARGET_HAVE_TLS): Do not define it.
+
+2003-12-03 James E Wilson <wilson@specifixinc.com>
+
+ * gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name.
+
+ * gcc-page.c (extra_order_size_tab): Correct comment.
+
+2003-12-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (push): Call gen_push_h8300hs_advanced
+ instead of gen_push_h8300hs.
+ (pop): Call gen_pop_h8300hs_advanced instead of
+ gen_pop_h8300hs.
+ * config/h8300/h8300.h (TRAMPOLINE_SIZE): Use Pmode.
+ * config/h8300/h8300.md (*tablejump_h8300hs_advanced):
+ Tighten the predicate.
+ (*tablejump_h8300hs_normal): Tighten the predicate.
+ (push_h8300hs): Change to
+ push_h8300hs_advanced.
+ (pop_h8300hs): Change to pop_h8300hs_advanced.
+
+2003-12-03 Eric Christopher <echristo@redhat.com>
+
+ * rtl.c: Fix typo.
+ * config/mips/mips.h: Ditto. Fix formatting.
+
+2003-12-04 Ben Elliston <bje@wasabisystems.com>
+
+ * future.options: Remove. Move to gnu.org web pages.
+
+2003-12-03 Eric Christopher <echristo@redhat.com>
+
+ * c-parse.in (c_in_iteration_stmt, c_in_case_stmt): Move
+ from here...
+ * c-tree.h: to here.
+
+2003-12-03 Jan Hubicka <jh@suse.cz>
+
+ PR optimization/12324
+ * toplev.c (rest_of_decl_compilation): Do not deffer when compiling
+ in unit-at-a-time mode.
+
+2003-12-03 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (store_constructor): Only set RTX_UNCHANGING_P for
+ read-only field if cleared is 0.
+
+2003-12-03 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Mark obsolete targets for GCC 3.4.
+
+2003-12-03 Zack Weinberg <zack@codesourcery.com>
+
+ * aclocal.m4 (AM_ICONV): Add explicit check for iconv.h.
+ * config.in, configure.in: Regenerate.
+ * cpphash.h: Check both HAVE_ICONV and HAVE_ICONV_H before
+ including iconv.h.
+
+2003-12-03 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/11229
+ * cse.c (cse_insn): Set classp using src_const_elt if
+ src_eqv_elt is NULL.
+
+2003-12-03 Richard Earnshaw <rearnsha@arm.com>
+
+ * gcse.c (reg_clear_last_set): New function.
+ (reg_set_info): If data is non-null, treat it as an sbitmap of
+ registers, set the bit for the register being set.
+ (compute_store_table): Allocate last_set_in with xcalloc. Do not
+ memset this array on each iteration. Pass reg_set_in_block[bb->index]
+ to note_stores while computing last_set_in instead of scanning
+ last_set_in after the first pass through the insns.
+ Clear last_set_in using reg_clear_last_set instead of explicitly
+ rescanning after each insn. If checking is enabled, assert that
+ last_set_in is completely zeroed after each bb has been processed.
+
+2003-12-02 Geoffrey Keating <geoffk@geoffk.org>
+
+ * df.c (df_uses_record) <MEM>: The argument of a MEM is read-only,
+ never read-write.
+ <REG>: Delete incorrect comment.
+ <SET>: Remove 'use_flags' variable.
+
+2003-12-03 David Edelsohn <edelsohn@gnu.org>
+
+ * function.c (assign_parms): Make sure parm PARALLEL combined
+ in reg is composed of more than one object and the mode really
+ produces a reg.
+
+2003-12-03 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (classify_argument): Make it 64bit clean.
+
+2003-12-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_output_external): Replace checks for
+ specific builtin-in functions with a check for DECL_BUILTIN_IN.
+
+2003-12-02 Richard Henderson <rth@redhat.com>
+
+ * rtl.h (PUT_CODE, PUT_MODE): Remove ENUM_BITFIELD cast.
+ * tree.h (TREE_SET_CODE): Likewise.
+ * recog.h (struct insn_operand_data): Move const after ENUM_BITFIELD.
+
+2003-12-02 Ben Elliston <bje@wasabisystems.com>
+
+ * dbxstclass.h: Rename from this ..
+ * xcoff.h: .. to this.
+ * xcoffout.c: Include xcoff.h.
+
+2003-12-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (GCC_CFLAGS): Add -Wold-style-definition.
+
+2003-12-01 James Lemke <jim@wasabisystems.com>
+
+ * config/arm/arm.c (arm_rtx_costs): Improve for xscale multiply.
+
+2003-12-01 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/11634
+ * recog.c (split_insn): Factor test of INSN_P and handling of
+ set_noop_p out of here into the two callers.
+ (split_all_insns): Add INSN_P test and set_noop_p handling here.
+ If deleting a no-op set after reload that has a REG_UNUSED note,
+ mark the basic block as changed and recalculate life information.
+ (split_all_insns_noflow): Add INSN_P test and set_noop_p handling
+ here.
+
+2003-12-01 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/12322
+ * gcse.c (struct ls_expr): Change type of hash_index from int to
+ unsigned int.
+ (hash_expr): Document hash_table_size parameter and wrap long line.
+ (ldst_entry): Calculate expression's hash_index and record in ptr.
+ (trim_ld_motion_mems): Use hash_index to search a single bucket
+ instead of scanning the entire hash_table. Remove the "del" local
+ variable and use the equivalent "expr == 0" instead. Change last
+ to be a pointer to the pointer to the current element, to simplify
+ and speed-up deleting from a linked list.
+
+2003-12-01 James E Wilson <wilson@specifixinc.com>
+
+ * doc/contrib.texi: Update David Mosberger.
+
+ * doc/c-tree.texi (CONSTRUCTOR): Clarify element order and handling
+ of missing fields.
+
+ PR target/8407
+ * config/ia64/ia64.c (ia64_function_arg): For single-reg HFA, call
+ gen_rtx_REG to create new reg with argument mode.
+
+2003-12-01 Steven Bosscher <stevenb@suse.de>
+
+ * ggc.h (struct alloc_zone): Move forward declaration up.
+ (new_ggc_zone): New function prototype.
+ (destroy_ggc_zone): Ditto.
+ * ggc-simple.c (new_ggc_zone): New function, does nothing.
+ (destroy_ggc_zone): Ditto.
+ * ggc-page.c (new_ggc_zone): New function, does nothing.
+ (destroy_ggc_zone): Ditto.
+ * ggc-zone.c (struct page_entry): Fix comment.
+ (ggc_alloc_typed): Use a switch statement instead of ifs.
+ (new_ggc_zone): New function to set up a new GC zone.
+ (destroy_ggc_zone): New function to remove a GC zone.
+ init_ggc): Use new_ggc_zone to set up the default zones.
+ (ggc_collect): Walk a list of zones, instead of just the
+ default zones. Report statistics using the zone name.
+
+2003-12-01 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * unroll.c (find_splittable_givs): Add missing extend_value_for_giv.
+
+2003-12-01 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/12628
+ * toplev.c (rest_of_handle_jump_bypass): Call reg_scan.
+ * regclass.c (reg_scan): Include allocate_reg_info time in
+ TV_REG_SCAN. Minor clean-ups.
+ (reg_scan_update): Minor clean-ups.
+
+2003-12-01 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config.gcc (s390x-ibm-tpf*): Add extra_parts.
+
+2003-12-01 James E Wilson <wilson@specifixinc.com>
+
+ * config/ia64/ia64.h (FUNCTION_ARG_REGNO_P): Use AR_REG_FIRST not
+ GR_ARG_FIRST.
+
+2003-12-01 Zack Weinberg <zack@codesourcery.com>
+
+ * common.opt: Remove -fgnu-linker.
+ * flags.h: Remove flag_gnu_linker.
+ * opts.c: Don't handle OPT_fgnu_linker.
+ * toplev.c: Don't initialize flag_gnu_linker.
+ Remove gnu-linker entry from f_options.
+ * config/dsp16xx/dsp16xx.h (OPTIMIZATION_OPTIONS):
+ Don't reset flag_gnu_linker.
+ * config/mips/mips.c (override_options): Likewise.
+ * doc/invoke.texi: Remove all mention of -fgnu-linker.
+
+2003-12-01 Daniel Berlin <dberlin@dberlin.org>
+
+ * ggc-zone.c (ggc_pch_write_object): Calculate object size using
+ ggc_get_size (which accounts for large objects properly).
+
+2003-12-01 Jeff Sturm <jsturm@one-point.com>
+
+ PR optimization/13024
+ * toplev.c (rest_of_handle_new_regalloc): Remove rebuild_notes
+ parameter.
+ (rest_of_handle_old_regalloc): Likewise. Add rebuild_notes
+ declaration. Rebuild jump labels following local_alloc if necessary.
+ (rest_of_compilation): Remove rebuild_label_notes_after_reload
+ declaration. Don't pass rebuild_notes parameter to
+ rest_of_handle_new_regalloc and rest_of_handle_old_regalloc.
+ Don't rebuild jump labels.
+
+2003-12-01 Jeff Law <law@redhat.com>
+
+ * flow.c (count_or_remove_death_notes_bb): New. Extracted from
+ count_or_remove_death_notes.
+ (count_or_remove_death_notes): Use EXECUTE_IF_SET_IN_SBITMAP.
+
+2003-12-01 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * builtins.c (expand_builtin_longjmp): Added two memory clobbers.
+
+2003-12-01 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * reload.c (find_reloads_address): Split addresses of type
+ (plus (plus (reg) (reg)) (const_int)) only if one register
+ is either a valid base register or else one of the stack
+ frame related registers (sp/fp/ap).
+
+2003-12-01 Steven Bosscher <stevenb@suse.de>
+
+ * function.c (update_epilogue_consts): Don't use PARAMS.
+ * rtl.h (web_main): Ditto.
+ * target.h (is_costly_dependence): Ditto
+
+2003-12-01 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/7847
+ * expr.c (expand_expr) [normal_inner_ref]: When 'offset' is non-zero,
+ do not recheck that 'op0' is a MEM. Move comment. When testing for
+ unaligned objects, take also into account the alignment of 'op0' and
+ 'mode1' if 'op0' is a MEM.
+
+2003-12-01 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * doc/c-tree.texi (Function Bodies): Update HANDLER documentation.
+
+2003-12-01 Kelley Cook <kcook@gcc.gnu.org>
+
+ * doc/install.texi: Note that fastjar is built with automake 1.7.x
+ and autoconf 2.57.
+
+2003-12-01 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Test
+ target_flags directly rather than using TARGET_* defines.
+
+2003-11-30 Ben Elliston <bje@wasabisystems.com>
+
+ * doschk.c: Remove.
+
+2003-11-30 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/12727
+ * config/mips/mips.c (mips_save_reg): Fix frame information for sdc1
+ on 32-bit big-endian targets.
+
+2003-11-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genemit.c (register_constraints): Remove.
+
+2003-11-30 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("tmdi_reg", "tmsi_reg", "*movdi_64", "*movdi_31",
+ "iordi3"): Insns now use multiple letter constraints.
+ ("*movdi_lhi", "*movdi_lli", "*movdi_lay"): Insns deleted. They are now
+ covered by "*movdi_64".
+ ("*movsi_lhi", "*movsi_lli", "*movsi_lay"): Insns deleted. They are now
+ covered by "*movsi_zarch" and "*movsi_esa".
+ ("*movsi_zarch", "*movsi_!zarch"): New insns.
+ ("*llgt_sisi_split", "*llgt_didi_split"): Insns deleted. Now covered
+ by "*andsi3_zarch" and "anddi3".
+ ("*anddi3_ni"): Insn merged with "anddi3".
+ ("*andsi3_ni"): Insn merged with "*andsi3_zarch".
+ ("*andsi3_zarch", "*andsi3_esa"): New insns.
+ ("*iordi3_oi"): Insn merged with "iordi3".
+ ("*iorsi3_oi"): Insn merged with "*iorsi3_zarch".
+ ("*iorsi3_zarch", "*iorsi3_esa"): New insns.
+
+ * config/s390/s390.c (s390_single_qi, s390_single_hi): Functions
+ merged to s390_single_part.
+ (s390_single_part): New function.
+ NOTE: Semantics have changed a bit. Now the value of the part must
+ be different from the others to get a non-negative return value.
+ (s390_extract_qi, s390_extract_hi): Functions merged to
+ s390_extract_part.
+ (s390_extract_part, s390_extra_constraint_str,
+ s390_const_ok_for_constraint_p): New functions. The L constraint got a
+ new meaning and the N constraint was added as a multiple letter
+ constraint.
+ (s390_extra_constraint): Function deleted.
+ (print_operand): New output modifier 'i' and 'j' added.
+ All uses of CONST_OK_FOR_LETTER_P were replaced by
+ CONST_OK_FOR_CONSTRAINT_P.
+
+ * config/s390/s390-protos.h: Function prototypes adapted.
+ * doc/md.texi: Documentation for new constraint letters added.
+
+2003-11-30 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.in ($(DESTDIR)$(infodir)/%.info): Fix missing semicolon.
+
+2003-11-29 James E Wilson <wilson@specifixinc.com>
+
+ * gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name
+ instead of in shared_name.
+
+ * final.c (final_start_function): Delete code for NON_SAVING_SETJMP.
+ * reload1.c (reload): Re-add it here.
+
+2003-11-30 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_elf_section_type_flags): Don't
+ set SECTION_WRITE on TARGET_RELOCATABLE.
+
+2003-11-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (LIBCALL_VALUE): Use R0_REG.
+
+2003-11-28 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (MOTOROLA): Move from here...
+ * config/m68k/m68k.h (MOTOROLA): ... to here.
+ (OUTPUT_JUMP): Use do {...} while (0).
+ * config/m68k/m68k.md: Replace #ifdef MOTOROLA with C statements.
+
+2003-11-28 Gunther Nikl <gni@gecko.de>
+
+ * config.gcc (m68020-*-elf*, m68k-*-elf*, m68010-*-netbsdelf*,
+ m68k*-*-netbsdelf*, m68k-*-rtems*): Add tm_defines containing
+ MOTOROLA and USE_GAS.
+ * config/m68k/rtemself.h (MOTOROLA): Delete.
+ * config/m68k/netbsd-elf.h (MOTOROLA, USE_GAS): Delete.
+ * config/m68k/m68kelf.h (MOTOROLA, USE_GAS, SGS_CMP_ORDER): Delete.
+
+2003-11-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (WORDS_BIG_ENDIAN): Update the comment.
+
+2003-11-29 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (install-info): Install gccinstall.info too.
+
+2003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("cmpint_di"): Fix incorrect instruction lengths.
+
+2003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("movhi"): Do not emit extender pattern
+ when loading from a (MEM (ADDRESSOF ...)).
+ ("movqi"): Likewise.
+
+2003-11-29 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/10333
+ * c-parse.in (typespec_reserved_nonattr): Reject typeof on
+ bit-fields.
+
+2003-11-29 Richard Sandiford <rsandifo@redhat.com>
+
+ * stmt.c (expand_asm_operands): Check whether force_const_mem
+ succeeded.
+
+2003-11-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/gnu.h (HURD_TARGET_OS_CPP_BUILTINS): New.
+ * config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): New.
+
+ * config/alpha/gnu.h, config/alpha/linux.h,
+ config/arm/linux-elf.h, config/cris/cris.h, config/cris/linux.h,
+ config/i370/linux.h, config/i386/gnu.h, config/i386/i386.h,
+ config/i386/linux-aout.h, config/i386/linux.h,
+ config/i386/linux64.h, config/ia64/linux.h, config/m68k/linux.h,
+ config/m68k/uclinux.h, config/mips/linux.h,
+ config/mn10300/linux.h, config/pa/pa-linux.h,
+ config/rs6000/sysv4.h, config/s390/linux.h, config/sh/linux.h,
+ config/sparc/linux.h, config/sparc/linux64.h,
+ config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Use
+ HURD_TARGET_OS_CPP_BUILTINS/LINUX_TARGET_OS_CPP_BUILTINS or ensure
+ all necessary assertions are included.
+
+2003-11-28 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (set_used_flags): New.
+ (verify_rtx_sharing, verify_rtl_sharing): New.
+ (unshare_all_rtl_1): Rename to....
+ (unshare_all_rtl_in_chain): ... this one; make static.
+ (copy_rtx_if_shared): LABEL_REF chan be shared.
+ * ifcvt.c (unshare_ifcvt_sequence): New.
+ (noce_try_move, noce_try_store_flag, noce_try_store_flag_constants,
+ noce_try_addcc, noce_try_addcc, noce_try_store_flag_mask,
+ noce_try_cmove, noce_try_store_flag_mask, noce_try_minmax,
+ noce_try_abs, noce_process_if_block, find_cond_trap
+ * rtl.h (verify_rtl_sharing, set_used_flags, unshare_all_rtl_in_chain):
+ Declare.
+
+2003-11-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Fix a comment typo.
+
+2003-11-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*movsf_h8300h): Change to
+ *movsf_h8300hs.
+ (addsi_h8300): Change to *addsi_h8300.
+ (addsi_h8300h): Change to *addsi_h8300hs.
+ (subsi3_h8300): Change to *subsi3_h8300.
+ (subsi3_h8300h): Change to *subsi3_h8300hs.
+ (neghi2_h8300h): Change to *neghi2_h8300hs.
+ (negsi2_h8300h): Change to *negsi2_h8300hs.
+
+2003-11-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*subhi3_h8300): Remove '&' from the
+ constraint.
+ (*subhi3_h8300hs): Likewise.
+
+2003-11-28 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.h (MASK_MFCRF): New.
+ (TARGET_MFCRF): Test target_flags, not processor type.
+ (TARGET_SWITCHES): Add mfcrf and no-mfcrf.
+ Change Don't to Do not.
+ * config/rs6000/rs6000.c (processors_target_table): Add MASK_MFCRF
+ to power4, 970, G5.
+
+2003-11-27 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cse.c (cse_set_around_loop): When changing a constant load
+ to a register -register copy, add a REG_EQUAL note.
+
+2003-11-27 Randolph Chung <tausq@debian.org>
+ John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (hppa_profile_hook): Split gen_call_profiler into separate
+ insns. Use the regular call expander for the call to the profiler.
+ * pa.md (call_profiler): Delete.
+ (load_offset_label_address): New insn to load the address of the
+ current function for the profiler.
+ (lcla1, lcla2): New insns to output a code label and load its address.
+
+2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * final.c (final_scan_insn): Remove commented-out code.
+
+2003-11-27 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * doc/install.texi: Remove ADAC reference and make accurate.
+
+2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (FUNCTION_VALUE): Use R0_REG.
+ (FUNCTION_VALUE_REGNO_P): Likewise.
+ * config/h8300/h8300.md: Define R0_REG.
+
+2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c: Fix formatting.
+ * config/h8300/h8300.md: Likewise.
+
+2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (ELIMINABLE_REGS): Update a comment.
+
+2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Give names to anonymous insns.
+
+2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (extendqisi2): Remove constraints.
+
+2003-11-27 Gunther Nikl <gni@gecko.de>
+
+ * doc/tm.texi (SYSROOT_HEADERS_SUFFIX_SPEC): Fix typo.
+
+2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/13041
+ * final.c (frame_pointer_needed): Fix comment.
+ * reload1.c (reload): Decrease alignment of the frame
+ pointer if it was used for register allocation.
+
+2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/12900
+ * reg-stack (move_for_stack_reg): New prototype. Return
+ whether a control flow insn was deleted.
+ (subst_stack_regs_pat): Likewise, using the information provided
+ by move_for_stack_reg.
+ (subst_stack_regs): Likewise, using the information provided
+ by subst_stack_regs_pat.
+ (convert_regs_1): Record whether a control flow insn was deleted,
+ using the information provided by subst_stack_regs. Purge dead
+ edges only if a control flow insn was deleted.
+
+2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/8028
+ PR middle-end/9890
+ PR middle-end/11151
+ PR middle-end/12210
+ PR middle-end/12503
+ PR middle-end/12692
+ * builtins.c (expand_builtin_apply): Use virtual_outgoing_args_rtx
+ as the base address to copy the memory arguments to.
+
+2003-11-26 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Declare
+ function aliases as functions.
+
+2003-11-26 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * aclocal.m4 (gcc_AC_PROG_GNAT): Rewrite to account for removal
+ of ADAC.
+ * configure: Regenerate.
+
+ * Makefile.in: Remove references to ADAC.
+
+ * configure.in: Remove check for whether ${ADAC} accepts -Wno-long-long.
+ * configure: Regenerate.
+
+2003-11-26 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Olivier Hainque <hainque@act-europe.fr>
+
+ PR target/6466
+ * config/sparc/sparc-protos.h (compute_frame_size): New prototype.
+ (sparc_flat_compute_frame_size): Likewise.
+ (sparc_flat_save_restore): Move prototype...
+ * config/sparc/sparc.c (sparc_flat_save_restore): ...here.
+ (save_regs): New prototype.
+ (build_big_number): Likewise.
+ (apparent_fsize): Change type to HOST_WIDE_INT.
+ (actual_fsize): Likewise.
+ (frame_base_offset): Likewise.
+ (build_big_number): Add support for HOST_BITS_PER_WIDE_INT == 64.
+ Change string descriptor to HOST_WIDE_INT_PRINT_DEC.
+ [TARGET_ARCH64]: Use the sequence of sparc_emit_set_const64_longway
+ to load a 64-bit constant.
+ (sparc_nonflat_function_prologue): Change string descriptor to
+ HOST_WIDE_INT_PRINT_DEC. Change offset type to HOST_WIDE_INT.
+ (output_restore_regs): Change offset type to HOST_WIDE_INT.
+ (sparc_nonflat_function_epilogue): Change string descriptor to
+ HOST_WIDE_INT_PRINT_DEC. Use build_big_number.
+ (output_sibcall): Change size type to HOST_WIDE_INT. Use
+ build_big_number. Change string descriptor to HOST_WIDE_INT_PRINT_DEC.
+ (sparc_frame_info): Change types for several components.
+ (sparc_flat_compute_frame_size): Update types according to previous
+ change.
+ (sparc_flat_function_prologue): Change string descriptor to
+ HOST_WIDE_INT_PRINT_DEC. Change offset type to int. Use
+ build_big_number.
+ (sparc_flat_function_epilogue): Change offset type to int.
+ Rename 'size1' into 'reg_offset1'. Change string descriptor to
+ HOST_WIDE_INT_PRINT_DEC. Use build_big_number. Change big number
+ limit to 4096 instead of 4095.
+
+ * config/sparc/sparc.c (mems_ok_for_ldd_peep): Change offset type to
+ HOST_WIDE_INT.
+
+2003-11-24 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ * function.c: Make outer_function-chain external.
+ * function.h: Likewise.
+
+2003-11-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * config.gcc (mips-sgi-irix6*): Add t-iris6gld to tmake_file when
+ using GNU ld.
+ * config/mips/iris6.h (IRIX6_STARTFILE_SPEC): New, taking the
+ whole of the previous STARTFILE_SPEC except crtbegin.o%s.
+ (IRIX6_ENDFILE_SPEC): Likewise ENDFILE_SPEC and crtend.o%s.
+ (STARTFILE_SPEC, ENDFILE_SPEC): Define in terms of the above.
+ (SUBTARGET_EXTRA_SPECS): Define.
+ * config/mips/iris6gld.h (LINK_SPEC): Change -init function
+ to __gcc_init and -fini function to __gcc_fini.
+ (STARTFILE_SPEC): Redefine, including irix6-crti.o before crtbegin.o.
+ (ENDFILE_SPEC): Likewise, including irix6-crtn.o after crtend.o.
+ (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Define.
+ * config/mips/t-iris6gld,
+ * config/mips/irix6-crti.asm,
+ * config/mips/irix6-crtn.asm: New files.
+
+2003-11-24 Eric Christopher <echristo@redhat.com>
+
+ PR C/13014
+ * c-decl.c (c_in_iteration_stmt, c_in_case_stmt): New.
+ (start_function): Use.
+ (c_push_function_context): Ditto.
+ (c-pop_function_context): Ditto.
+ (language_function): Move...
+ * c-tree.h: ... here. Add x_in_iteration_stmt, and
+ x_in_case_stmt.
+ * c-parse.in (do_stmt_start, select_or_iter_stmt, stmt): Use
+ c_in_iteration_stmt, c_in_case_stmt for parser state. Move
+ check for valid break or continue statment here...
+ * c-semantics.c (genrtl_break_stmt, genrtl_continue_stmt): From
+ here. Change original errors to abort.
+
+2003-11-24 Jan Hubicka <jh@suse.cz>
+
+ * fold-const.c (fold): Do not return early when optimizing
+ COMPONENT_REF and constant.
+
+2003-11-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (tablejump_h8300): Change to
+ *tablejump_h8300.
+ (tablejump_h8300h): Change to *tablejump_h8300hs_advanced.
+ (tablejump_normal_mode): Change to *tablejump_h8300hs_normal.
+ (indirect_jump_h8300): Change to *indirect_jump_h8300.
+ (indirect_jump_h8300h): Change to
+ *indirect_jump_h8300hs_advanced.
+ (indirect_jump_normal_mode): Change to
+ *indirect_jump_h8300hs_normal.
+
+2003-11-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Remove constraints from expanders.
+
+2003-11-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: (stm_h8300s_2): Change the name to
+ stm_h8300s_2_advanced.
+ (stm_h8300s_2_normal): New.
+ (stm_h8300s_2): Likewise.
+ (stm_h8300s_3): Change the name to stm_h8300s_3_advanced.
+ (stm_h8300s_3_normal): New.
+ (stm_h8300s_3): Likewise.
+ (stm_h8300s_4): Change the name to stm_h8300s_4_advanced.
+ (stm_h8300s_4_normal): New.
+ (stm_h8300s_4): Likewise.
+ (ldm_h8300s_2): Change the name to ldm_h8300s_2_advanced.
+ (ldm_h8300s_2_normal): New.
+ (ldm_h8300s_2): Likewise.
+ (ldm_h8300s_3): Change the name to ldm_h8300s_3_advanced.
+ (ldm_h8300s_3_normal): New.
+ (ldm_h8300s_3): Likewise.
+ (ldm_h8300s_4): Change the name to ldm_h8300s_4_advanced.
+ (ldm_h8300s_4_normal): New.
+ (ldm_h8300s_4): Likewise.
+ (two peephole2's): Enable only with !TARGET_NORMAL_MODE.
+ (two peephole2's): New.
+
+2003-11-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * genattrtab.c (simplify_cond): Update indices correctly.
+ (attr_alt_subset_p, attr_alt_subset_of_compl_p, attr_alt_intersection,
+ attr_alt_union, attr_alt_complement, attr_alt_bit_p, mk_attr_alt): New.
+ (check_attr_test, encode_units_mask, compute_alternative_mask,
+ make_alternative_compare, simplify_and_tree,
+ attr_rtx_cost, simplify_test_exp, gen_attr,
+ write_test_expr, walk_attr_value): Handle EQ_ATTR_ALT.
+ * rtl.def (EQ_ATTR_ALT): New.
+
+2003-11-23 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * genattrtab.c (strcmp_check, DEF_ATTR_STRING): New macros.
+ (length_str, delay_type_str, delay_1_0_str, num_delay_slots_str):
+ New variables.
+ (main): Initialize them.
+ (find_attr): Canonicalize the attribute name string.
+ (attr_rtx_1, copy_boolean, expand_delays, gen_unit): Always canonicalize
+ string arguments.
+ (attr_printf, attr_eq): Use DEF_ATTR_STRING.
+ (check_attr_test, check_attr_value, make_length_attrs,
+ write_length_unit_log, simplify_by_exploding, gen_attr,
+ write_test_expr, write_attr_value, write_eligible_delay,
+ write_complex_function, make_internal_attr,
+ write_const_num_delay_slots): Changed due to change of type of
+ find_attr.
+ (fill_attr, evaluate_eq_attr, simplify_and_tree,
+ attr_rtx_cost, simplify_by_exploding, walk_attr_value): Use
+ strcmp_check.
+
+2003-11-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/13122
+ * config/h8300/h8300.c (push): Call push_h8300hs_normal in
+ normal mode.
+ (pop): Call pop_h8300hs_normal in normal mode.
+ * config/h8300/h8300.md: Likewise.
+ (pushqi1_h8300hs_normal): New.
+ (pushqi1): Call pushqi1_h8300hs_normal in normal mode.
+ (pushhi1_h8300hs_normal): New.
+ (pushhi1): Call pushhi1_h8300hs_normal in normal mode.
+ (push_h8300hs_normal): New.
+ (pop_h8300hs_normal): Likewise.
+
+2003-11-23 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * genattrtab.c (count_sub_rtxs): Removed.
+
+2003-11-23 Richard Earnshaw <rearnsha@arm.com>
+
+ * recog.c (preprocess_constraints): Only zero those elements of
+ recog_op_alt that are needed for this insn.
+ * arm.c (note_invalid_constants): A function can't contain invalid
+ constants if it has no constraints.
+
+2003-11-22 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (classify_argument): Pass __float128 in memory.
+ (ix86_return_in_memory): Likewise.
+ (ix86_libcall_value): Likewsie.
+
+2003-11-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (dosize): Convert to ISO-C.
+
+2003-11-22 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * flow.c (update_life_info): Amend comment about when a register
+ can become dead.
+
+2003-11-21 Kelley Cook <kcook@gcc.gnu.org>
+
+ * doc/.cvsignore: Delete.
+
+2003-11-21 Daniel Berlin <dberlin@dberlin.org>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * dwarf2out.c (add_location_or_const_value_attribute): Add support
+ for PARALLEL.
+
+2003-11-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/t-iris6 (CRTSTUFF_T_CFLAGS): Add -Wno-error.
+ (TARGET_LIBGCC2_CFLAGS): Define.
+
+ * crtstuff.c [HAS_INIT_SECTION] (__do_global_dtors): Declare.
+ (__do_global_ctors): Likewise.
+
+2003-11-21 Mark Wielaard <mark@klomp.org>
+
+ * doc/invoke.texi (-O2): Doesn't enable -fweb.
+
+2003-11-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Mention dV and dZ.
+
+2003-11-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Update dump file names.
+ Remove de, dW, and dX.
+
+2003-11-20 James E Wilson <wilson@specifixinc.com>
+
+ PR c/13133
+ * reload1.c (reload): Delete special handling for setjmp.
+
+2003-11-21 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * mklibgcc.in: Evaluate shlib_slibdir_qual during link
+ step too.
+ * config/t-slibgcc-darwin: Adjust install path.
+ * config/rs6000/t-darwin: Revert multilib matches since
+ it is not used on darwin.
+
+2003-11-20 Richard Henderson <rth@redhat.com>
+
+ * ssa.c, ssa-dce.c, ssa-ccp.c: Remove files.
+ * Makefile.in (OBJS-common, GTFILES): Don't reference them.
+ (gtype-desc.o, toplev.o, flow.o): Remove ssa.h.
+ (ssa.o, ssa-dce.o, ssa-ccp.o): Remove.
+ * flow.c: Don't include ssa.h.
+ (set_phi_alternative_reg): Remove.
+ (calculate_global_regs_live): Don't call it.
+ (mark_used_regs): Don't handle PHI.
+ * gengtype.c (open_base_files): Don't reference ssa.h.
+ * rtl.def (PHI): Remove.
+ * timevar.def (TV_TO_SSA, TV_SSA_CCP, TV_SSA_DCE, TV_FROM_SSA): Kill.
+ * common.opt: Remove -fssa, -fssa-ccp, -fssa-dce.
+ * opts.c (common_handle_option): Likewise.
+ * toplev.c (f_options): Likewise.
+ (DFI_ssa, DFI_ssa_ccp, DFI_ssa_dce, DFI_ussa): Remove.
+ (dump_file): Update to match.
+ (flag_ssa, flag_ssa_ccp, flag_ssa_dce): Remove.
+ (rest_of_handle_ssa): Remove.
+ (rest_of_compilation): Don't call it.
+ * toplev.h (flag_ssa, flag_ssa_dce, flag_ssa_ccp): Remove.
+ * doc/invoke.texi: Remove -fssa, -fssa-ccp, -fssa-dce.
+ * doc/passes.texi (SSA optimizations): Remove.
+
+2003-11-20 Bob Wilson <bob.wilson@acm.org>
+
+ * configure.in: Add xtensa-*-* targets to test for dwarf2 debug_line.
+ * configure: Regenerate.
+
+2003-11-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (Makefile): Pass along CONFIG_SHELL.
+
+2003-11-20 David Mosberger <davidm@hpl.hp.com>
+
+ * config/t-libunwind (LIB2ADDEH): Add unwind-c.c.
+ (SHLIB_LC): Define.
+ * unwind-libunwind.c (_Unwind_GetCFA): Implement.
+ (_Unwind_GetBSP) [UNW_TARGET_IA64]: New function.
+
+2003-11-20 Fariborz Jahanian <fjahanian@apple.com>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * calls.c (expand_call): Allocate new temp in pass1.
+ (store_one_arg): If PARALLEL, calculate excess using mode size of
+ rtvec elt.
+ * expr.c (emit_push_insn): If PARALLEL, calculate offset using
+ mode size of rtvec elt.
+ * function.c (assign_parms): Use parm in register, if available.
+
+2003-11-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (MOVP): Remove.
+ (ADDP): Likewise.
+ (CMPP): Likewise.
+
+2003-11-20 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (use_return_insn): New argument, SIBLING. Support returning
+ with a single instruction if the stack has been decremented by 4
+ and we have a frame pointer. Update all callers.
+ (output_return_instruction): Likewise.
+ (arm_output_epilogue): Change argument to SIBLING. Calculate
+ really_return from the new argument. Update all callers.
+ * arm.h (USE_RETURN_INSN): Pass NULL for the sibling.
+ * arm.md (sibcall_epilogue): Call use_return_insn directly, and
+ pass the sibling call.
+ * arm-protos.h (use_return_insn, arm_output_epilogue): Update
+ prototypes.
+
+2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * Makefile.in (extraclean): Delete.
+ * configure.in (target_list): Remove extraclean.
+ * configure: Regenerate.
+ * doc/makefile.texi, doc/sourcebuild.texi: Update.
+ * objc/Make-lang.in (objc.extraclean): Delete.
+
+2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * Makefile.in (lang_checks): Add.
+ (check-c++, check-f77, check-java, check-g++, check-g77,
+ check-objc): Remove hardcoded targets.
+ * doc/sourcebuild.texi: Document testsuite hooks.
+ * objc/Make-lang.in (check-objc, lang_checks): Add.
+
+2003-11-19 Scott Snyder <snyder@fnal.gov>
+
+ PR target/13131
+ * dwarf2out.c (gen_array_type_die): DW_AT_declaration should be a
+ flag, not a constant.
+
+2003-11-19 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/arc/arc-protos.h: Update to C90 prototypes.
+ * config/arc/arc.c: Likewise.
+ * config/arc/initfini.c: Likewise.
+
+2003-11-19 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * stmt.c (expand_goto): Memory clobbers added.
+
+2003-11-19 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * reload.c (find_reloads): Added missing type casts.
+
+2003-11-19 James E Wilson <wilson@specifixinc.com>
+
+ * combine.c (sets_function_arg_p): Delete unused function.
+
+2003-11-19 Eric Christopher <echristo@redhat.com>
+
+ * reload1.c (reload): Revert 2 previous checkins.
+
+2003-11-19 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * cpptrad.c (_cpp_scan_out_logical_line): Improve test for
+ whether directive begins at the beginning of a line.
+
+2003-11-19 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/frv/frv.c (frv_init_libfuncs): Correct ufix_optab entries.
+
+2003-11-19 Gerald Pfeifer <gp@suse.de>
+
+ * doc/install.texi (Specific): Remove information on old versions
+ of glibc versus old versions of GCC.
+
+2003-11-19 Richard SAndiford <rsandifo@redhat.com>
+
+ * emit-rtl.c (gen_lowpart): Don't force MEMs into a register unless
+ the register lowpart is a TRULY_NOOP_TRUNCATION.
+
+2003-11-19 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (print_reg): Handle QI and HI modes for
+ non Q regs.
+
+2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * config/config.gcc (powerpc-*-darwin*): Add libgcc build
+ specification file.
+ * config/t-slibgcc-darwin: New file, libgcc build specification.
+ * config/t-darwin: Add libgcc2 flag -fPIC.
+ * config/rs6000/t-darwin: Multilib matches float.
+ * libgcc-darwin.ver: New file, contains libgcc symbols.
+
+2003-11-18 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config/ns32k/ns32k.h: Remove obsolete comment.
+
+2003-11-18 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/11821
+ * config/arm/arm.c (arm_rtx_costs_1): Improve estimate of the code
+ size for calls to libgcc's div & mod subroutines when using -Os.
+
+2003-11-18 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (change_decl_assembler_name): Avoid bogus warnings.
+
+2003-11-18 Marc Espie <espie@openbsd.org>
+
+ * config/rs6000/sysv4.h: OpenBSD hooks.
+
+2003-11-18 Richard Henderson <rth@redhat.com>
+
+ * expr.c (expand_expr): Don't look through constant arrays if
+ they don't bind locally.
+
+2003-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (convert_move): Use GET_MODE_PRECISION instead of bitsize
+ when seeing if truncation or extension.
+
+2003-11-17 Eric Christopher <echristo@redhat.com>
+
+ * reload1.c (reload): Fix previous change.
+
+2003-11-17 Scott Snyder <snyder@fnal.gov>
+
+ PR debug/11325
+ * dwarf2out.c (struct die_struct): Add die_definition field.
+ (add_AT_specification): New.
+ (gen_subprogram_die, gen_variable_die,
+ gen_struct_or_union_type_die): Use it.
+ (prune_unused_types_mark): If we're marking a forward declaration,
+ also mark the full definition, if it exists.
+
+2003-11-16 Nick Clifton <nickc@redhat.com>
+
+ * config/stormy16/stormy16.h (BUILD_VA_LIST_TYPE): Delete.
+ * config/stormy16/stormy16-protos.h (xstormy16_build_va_list):
+ Remove prototype.
+ * config/stormy16/stormy16.c (xstormy16_build_va_list): Rename
+ to xstormy16_build_builtin_va_list and make static.
+ (TARGET_BUILD_BUILTIN_VA_LIST): Define.
+
+2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add the prototype for
+ same_cmp_following_p.
+ * config/h8300/h8300.c (same_cmp_following_p): New.
+ * config/h8300/h8300.md (peephole2): Use it.
+
+2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Don't use REGNO when its operand is
+ not guaranteed to be a REG.
+
+2003-11-16 Richard Sandiford <rsandifo@redhat.com>
+
+ * Makefile.in (expr.o): Depend on $(TARGET_H).
+ * target.h (return_in_msb): New target hook.
+ * target-def.h (TARGET_RETURN_IN_MSB): New macro.
+ (TARGET_CALLS): Include it.
+ * calls.c (shift_returned_value): New function.
+ (expand_call): Use it.
+ * expr.c: Include target.h.
+ (copy_blkmode_from_reg): Check targetm.calls.return_in_msb when
+ deciding what padding is needed. Change the name of the local
+ padding variable from big_endian_correction to padding_correction.
+ * stmt.c (shift_return_value): New function.
+ (expand_return): Use it. Adjust memory->register copy in the same
+ way as copy_blkmode_from_reg. Only change the return register's
+ mode if it was originally BLKmode.
+ * doc/tm.texi (TARGET_RETURN_IN_MSB): Document.
+ * config/mips/mips.c (TARGET_RETURN_IN_MSB): Define.
+ (mips_fpr_return_fields): New, split out from mips_function_value.
+ (mips_return_in_msb, mips_return_fpr_pair): New functions.
+ (mips_function_value): Rework to use the functions above.
+ * config/mips/irix6-libc-compat.c: Delete.
+ * config/mips/t-iris6 (LIB2FUNCS_STATIC_EXTRA): Undefine.
+
+2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/install.texi (--enable-checking): Update valgrind's URL.
+
+2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Fix warnings by replacing -2147483648
+ with -2147483647 - 1.
+
+2003-11-16 Gerald Pfeifer <gerald@pfeifer.com>
+
+ Fix links in online manuals.
+ * doc/invoke.texi (H8/300 Options): @xref to ld, not ld.info.
+ (Precompiled Headers): @pxref to cpp, not cpp.info.
+
+2003-11-16 Jason Merrill <jason@redhat.com>
+
+ * Makefile.in, objc/Make-lang.in (objc.tags): Create TAGS.sub
+ files in each directory and TAGS files that include them for each
+ front end.
+
+2003-11-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (divnorm): Store the sign in bit
+ 3 of S2L.
+ (modnorm): Likewise.
+ (exitdiv): Look at bit 3 of S2L only.
+
+2003-11-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (DO_GLOBAL_CTORS_BODY): Fix warnings.
+ (DO_GLOBAL_DTORS_BODY): Likewise.
+
+2003-11-15 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/install.texi (Prerequisites): Refine documentation of
+ autoconf, automake and perl requirements. Document required
+ gettext version.
+
+<2003-11-14 Jason Merrill <jason@redhat.com>
+
+ * function.c (assign_parms): Use TREE_TYPE to determine the real
+ type of the argument object.
+
+2003-11-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___udivsi3): Peel off the first
+ iteration.
+
+2003-11-14 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_move_block_from_reg):
+ New routine to save vararg registers on stack. Support for
+ -mpowerpc64 in mixed mode.
+
+2003-11-14 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c: Use C statements instead of #ifdef's when testing
+ for MOTOROLA versus MIT syntax. Improves readability and provides
+ better compile-time error checking for both code paths.
+
+2003-11-14 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/frv/frv-protos.h: Update for C90.
+ * config/frv/frv.h: Likewise.
+ * config/frv/frvbegin.c: Likewise.
+ * config/frv/frv.c: Likewise.
+ (frv_adjust_field_align): Delete unused variable.
+
+2003-11-14 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.md: Add 'DEFAULT_ABI == ABI_DARWIN'
+ to each place where TARGET_LONG_DOUBLE_128 is used with
+ DEFAULT_ABI == ABI_AIX.
+
+ * cppfiles.c (_cpp_find_file): Make 'one or more PCH files were found'
+ message comply with GNU standards.
+
+2003-11-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ PR/6552
+ * function.c (struct epi_info): New field const_equiv.
+ (update_epilogue_consts): New function.
+ (keep_stack_depressed): Clear new field and verify scratch register
+ doesn't have it set.
+ Call new function via note_stores.
+ (handle_epilogue_set): Allow setting SP equiv reg in different mode.
+ Allow PLUS where second operand is register known set to constant.
+ (emit_equiv_load): Write load using proper mode if source different.
+ * config/mips/mips.md (return_internal): Put (return) first.
+
+2003-11-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___udivsi3): Add a comment.
+
+2003-11-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (modsi3): Don't save unused
+ registers.
+ (divsi3): Likewise.
+ (reti): Don't restore unused registers.
+
+2003-11-14 Nick Clifton <nickc@redhat.com>
+
+ * config/fr30/fr30.c: Include toplev.h
+
+2003-11-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * except.c (sjlj_emit_function_enter): Mark internal label as LOCAL.
+
+2003-11-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_emit_vector_const, arm_output_load_gr): Use ISO C
+ function definition syntax.
+
+2003-11-14 Eric Christopher <echristo@redhat.com>
+
+ * reload1.c (reload): Revert previous patch. Make
+ check for assignment into reg_equiv_address stricter.
+
+2003-11-14 Arnaud Charlet <charlet@act-europe.fr>
+
+ * Makefile.in (POSTSTAGE1_FLAGS_TO_PASS): Pass ADAFLAGS.
+
+2003-11-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/frv/frv.c (frv_in_small_data_p): Return false for unknown
+ section names.
+
+2003-11-14 Jason Merrill <jason@redhat.com>
+
+ PR middle-end/12526
+ * tree.c (build): A CALL_EXPR has side-effects if its arguments do.
+ * calls.c (call_expr_flags): New fn.
+ * tree.h: Declare it.
+
+2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (__udivsi3): Remove.
+ (divmodsi3): Change the name to ___udivsi3.
+ Update all callers.
+
+2003-11-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * libgcc2.c (__negdi2, __addvsi3, __addvdi3, __subvsi3, __subvdi3,
+ __mulvsi3, __negvsi2, __negvdi2, __mulvdi3, __lshrdi3, __ashldi3,
+ __ashrdi3, __ffsDI2, __muldi3, __clzDI2, __ctzDI2, __parityDI2,
+ __udivmoddi4, __divdi3, __moddi3, __cmpdi2, __ucmpdi2,
+ __fixunstfDI, __fixunsxfDI, __fixunsdfDI, __fixunssfDI,
+ __floatdixf, __floatditf, __floatdidf, __floatdisf, __gcc_bcmp):
+ Const-ify and/or initialize automatic variables at declaration.
+
+2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (divmodsi4): Replace all the uses
+ of er4 with er3. Adjust all callers.
+
+2003-11-13 Andrew Pinski <apinski@apple.com>
+
+ * config/darwin.c (machopic_output_possible_stub_label):
+ Allow stub symbol be not defined when outputting possible
+ stub label.
+
+2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___udivsi3): Jump to reti
+ instead of exitdiv.
+ (___umodsi3): Likewise.
+ (exitdiv): Do not restore any register.
+ (reti): Restore registers.
+
+2003-11-13 Steven Bosscher <stevenb@suse.de>
+
+ * tree-inline.c (walk_tree): Handle PLACEHOLDER_EXPR.
+
+2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm: Fix comment typos.
+
+2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (udivsi3): Don't save/restore
+ unused registers. Don't jump to exitdiv.
+ (umodsi3): Likewise.
+
+2003-11-13 Mark Mitchell <mark@codesourcery.com>
+ Kean Johnston <jkj@sco.com>
+
+ PR c/13029
+ * toplev.c (check_global_declarations): Do not warn about unused
+ static consts.
+
+2003-11-13 Pavel Pisa <pisa@cmp.felk.cvut.cz>
+ Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (DenHighNonZero): Optimize using
+ the approximate quotient method.
+
+2003-11-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * combine.c (distribute_notes): When re-distributing the notes from
+ an insn we are about to delete, ensure we can't end up with a cyclic
+ list of notes.
+
+2003-11-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/12926
+ * expr.c (expand_assignment) [COMPONENT_REF]: Don't put
+ the UNCHANGING_RTX_P flag on memory references to read-only
+ components that are not addressable.
+
+2003-11-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (divmodsi4): Clear S0P in
+ DenHighNonZero.
+
+2003-11-13 Jan Hubicka <jh@suse.cz>
+
+ PR opt/12275
+ * c-decl.c (finish_decl): Use change_decl_assembler_name.
+ * c-pragma.c (handle_pragma_redefine_extname): Likewise.
+ * varasm.c (make_decl_rtl): Likewise.
+ * cgraph.c (change_decl_assembler_name): New function.
+ * tree.h (set_decl_assembler_name): Kill dead declaration.
+ (change_decl_assembler_name): Declare.
+
+ * decl.c (make_rtl_for_nonlocal_decl): Use change_decl_assembler_name.
+ * decl2.c (make_rtl_for_nonlocal_decl): Use change_decl_assembler_name.
+
+2003-11-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___mulsi3): Don't save/restore
+ an unused register.
+
+2003-11-12 Richard Sandiford <rsandifo@redhat.com>
+
+ PR bootstrap/12752
+ * config/mips/t-iris6 (MULTILIB_OPTIONS): Put -mabi=n32 first.
+ (MULTILIB_OSDIRNAMES): Reorder accordingly.
+
+2003-11-12 Janis Johnson <janis187@us.ibm.com>
+
+ * rs6000-protos.h (rs6000_initial_elimination_offset): Add.
+ (rs6000_stack_info): Remove. (debug_stack_info): Remove.
+ (rs6000_emit_eh_reg_restore): Add
+ * rs6000.c (rs6000_stack_t): Move from rs6000.h, change data type
+ of vars_size and total_size to HOST_WIDE_INT.
+ (emit_frame_save): Change parameter size to HOST_WIDE_INT.
+ (rs6000_stack_info): Make static; change data size to HOST_WIDE_INT.
+ (debug_stack_info): Make static; change output format of HOST_WIDE_INT
+ values.
+ (rs6000_emit_eh_reg_restore): New, with code formerly in rs6000.md.
+ (rs6000_initial_elimination_offset): New, with code formerly in
+ INITIAL_ELIMINATION_OFFSET.
+ * rs6000.h (rs6000_stack_t): Remove.
+ (INITIAL_ELIMINATION_OFFSET): Replace code with call to function
+ rs6000_initial_elimination_offset.
+ * rs6000.md (UNSPECV_EH_RR split): Replace code with call to
+ rs6000_emit_eh_reg_restore.
+
+2003-11-12 Mike Stump <mrs@apple.com>
+
+ * c-typeck.c (c_convert_parm_for_inlining): Add argnum, which
+ is the argumnt we are processing so that warnings and errors
+ will have that information.
+ * c-tree.h (c_convert_parm_for_inlining): Add argnum.
+ * lang-hooks-def.h
+ (lhd_tree_inlining_convert_parm_for_inlining): Likewse.
+ * langhooks.c (lhd_tree_inlining_convert_parm_for_inlining): Likewise.
+ * langhooks.h (convert_parm_for_inlining): Likewise.
+ * tree-inline.c (initialize_inlined_parameters): Compute and
+ pass argnum down.
+
+2003-11-12 Alexey Starovoytov <alexey.starovoytov@sun.com>
+ Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/12953
+ * tree-inline.c (inline_forbidden_p_1): Added check for BUILT_IN
+ before switch by FUNCTION_CODE.
+
+2003-11-12 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (storehi): Avoid use of explicit subreg.
+ (storehi_bigend, storeinthi, movhi_bigend): Likewise.
+
+2003-11-12 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config/sh/sh.md (prefetch): New pattern.
+
+2003-11-11 Eric Christopher <echristo@redhat.com>
+
+ * reload1.c (reload): Verify that addresses for
+ reg_equiv_* are valid for the architecture.
+
+2003-11-11 Eric Christopher <echristo@redhat.com>
+
+ * function.c (purge_addressof_1): Add libcall check.
+ Remove test for cached replacements on fallback case.
+ Simplify mode comparisons. Add libcall test for
+ paradoxical subregs.
+
+2003-11-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/t-h8300: Fix an obsolete comment.
+
+2003-11-11 James E Wilson <wilson@specifixinc.com>
+
+ * expmed.c (store_bit_field, extract_bit_field): Revert last two
+ changes.
+
+2003-11-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm: Replace DenHighZero with
+ DenHighNonZero.
+
+2003-11-11 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_function_possibly_inlined_p): Use
+ really_no_inline.
+
+2003-11-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.h (TRAMPOLINE_TEMPLATE): Fix flushing of cache lines when
+ generating 64-bit code.
+
+2003-11-10 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Remove
+ accidental commit in previous change.
+
+2003-11-10 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.h (STACK_SIZE_MODE): Add definition.
+ * config/rs6000/rs6000.c (reg_or_mem_operand): Add macho-style
+ address recognition.
+ (macho_lo_sum_memory_operand): Routine to recognize macho-style
+ address recognition.
+
+2003-11-10 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (gen_label_die): Cope with DECL_RTL not set.
+
+2003-11-10 Matt Austern <austern@apple.com>
+
+ * config/darwin-protos.h (darwin_assemble_visibility): Declare.
+ * config/darwin.c (darwin_assemble_visibility): Define. Warn for
+ anything other than VISIBILITY_DEFAULT and VISIBILITY_HIDDEN.
+ * config/darwin.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Use
+ darwin_assemble_visibility instead of default.
+
+2003-11-10 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ PR target/12865
+ * config/sparc/sparc.c (sparc_initialize_trampoline): Call
+ __enable_execute_stack only after writing onto the stack.
+ (sparc64_initialize_trampoline): Likewise.
+
+2003-11-09 Roger Sayle <roger@eyesopen.com>
+
+ * loop.c (check_dbra_loop): Try swapping the comparison operands
+ of the loop condition to identify a suitable induction variable.
+ * unroll.c (loop_iterations): Likewise.
+
+2003-11-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/sparc/sparc.h (TARGET_CPU_CPP_BUILTINS): Fix sparc vs
+ sparc64 #cpu and #machine assertions.
+
+2003-11-09 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (rtlanal.o): Depend on BASIC_BLOCK_H.
+
+2003-11-09 Jan Hubicka <jh@suse.cz>
+
+ * tree-optimize.c (tree_rest_of_compilation): Fix warning.
+
+ * cgraphunit.c (cgraph_expand_function): Use
+ cgraph_possibly_inlined_p.
+ * tree-optimize.c (tree_rest_of_compilation): Do not kill saved tree.
+
+ * opts.c (common_handle_option): Do not set max-inline-insns.
+ * params.def: Update comments.
+ (PARAM_MAX_INLINE_INSNS): Kill.
+ * invoke.texi (max-inline-insns): Kill.
+
+2003-11-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/3190
+ PR c/8714
+ * c-format.c (set_Wformat): Do not enable -Wformat-y2k by default.
+ * invoke.texi: Update.
+
+2003-11-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR optimization/12630
+ * pa.c (compute_movstrsi_length): Rename to compute_movstr_length.
+ Handle length computation 64-bit moves.
+ (compute_clrstr_length, output_block_clear): Implement block clear.
+ (output_block_move): Handle 64-bit moves.
+ (pa_adjust_insn_length): Use compute_movstr_length and
+ compute_clrstr_length.
+ * pa.md (movstrsi): Revise operand order and comments. Don't use
+ match_scratch.
+ (movstrsi_internal): Delete.
+ (movstrsi_prereload, movstrsi_postreload): New insns. Define splitter
+ and peephole2 patterns to transform prereload to postreload form.
+ (movstrdi, movstrdi_prereload, movstrdi_postreload, clrstrsi,
+ clrstrsi_prereload, clrstrsi_postreload, clrstrdi, clrstrdi_prereload,
+ clrstrdi_postreload): New patterns for 64-bit block move, and block
+ clear.
+ * pa-protos.h (output_block_clear): New prototype.
+
+2003-11-08 Andreas Schwab <schwab@suse.de>
+
+ * dbxout.c (current_file): Also wrap inside DBX_DEBUGGING_INFO ||
+ XCOFF_DEBUGGING_INFO.
+
+2003-11-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * dbxout.c (current_file): Wrap declaration in DBX_USE_BINCL.
+
+2003-11-07 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_legitimize_address): Remove
+ redundant parens.
+
+ * cppfiles.c (pch_open_file): New parameter 'invalid_pch', set it.
+ (find_file_in_dir): Likewise.
+ (_cpp_find_file): Print message if no header file is found
+ but an invalid PCH file was.
+
+2003-11-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (pedantic_lvalue_warning): Deprecate compound
+ expressions as lvalues.
+ (internal_build_compound_expr): Remove special handling for
+ non-pedantic case.
+ * doc/extend.texi: Document that all extended lvalues are now
+ deprecated.
+
+2003-11-07 Geoffrey Keating <geoffk@apple.com>
+
+ PR 11654
+ * dbxout.c (struct dbx_file): Do not save for PCH.
+ (current_file): Likewise.
+ (dbxout_init): Don't allocate struct dbx_file using GC.
+ (dbxout_start_source_file): Likewise.
+
+2003-11-07 Falk Hueffner <falk@debian.org>
+
+ * config/alpha/elf.h, config/alpha/unicosmk.h,
+ config/alpha/vms.h: Convert to ISO C90.
+
+2003-11-07 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config/arm/pe.h: Convert to ISO C90.
+
+2003-11-07 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh-protos.h (sh_pch_valid_p): Declare.
+ * sh.c ("intl.h"): Include.
+ (TARGET_PCH_VALID_P): Override.
+ (sh_target_switches): New variable.
+ (target_switches): Define.
+ (sh_pch_valid_p): New function.
+
+ * sh.h (MODE_AFTER): Don't change mode unless TARGET_HITACHI.
+
+2003-11-07 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_64_sign_extended_value): Return false from tls variables.
+ (x86_64_zero_extended_value): likewise.
+
+2003-11-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (loadgp): Take $25 as a second operand.
+ * config/mips/mips.c (mips_expand_prologue): Modify accordingly.
+
+2003-11-06 Matt Austern <austern@apple.com>
+
+ * c-common.c (handle_visibility_attribute): Set DECL_VISIBILITY
+ field instead of hanging an attribute object off the decl.
+ * tree.h (DECL_VISIBLITY): New accessor macro for
+ symbol_visibility field in struct tree_decl.
+ (enum symbol_visibility): Move definition to before tree_decl.
+ (struct tree_decl): Define new two-bit field, symbol_visibility.
+ (decl_visibility): Remove declaration.
+ * varasm.c (maybe_assemble_visibility): Use DECL_VISIBILITY
+ instead of decl_visibility.
+ (default_binds_local_p_1): Use DECL_VISIBILITY instead of
+ decl_visibility.
+ (decl_visibility): Remove.
+
+2003-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_emit_epilogue): Recognize more cases
+ where register 14 will be saved.
+
+2003-11-06 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.h (USE_FP_FOR_ARG_P): Move to rs6000.c.
+ (USE_ALTIVEC_FOR_ARG_P): Likewise.
+ * config/rs6000/rs6000.c (USE_FP_FOR_ARG_P): Move from rs6000.h.
+ Take a pointer as the CUM parameter. Update callers.
+ (USE_ALTIVEC_FOR_ARG_P): Likewise. Also correct for Darwin/AIX
+ 32-bit ABIs.
+ (function_arg_advance): Use USE_ALTIVEC_FOR_ARG_P. Correct case
+ of vector parameters as named arguments of stdarg function.
+ (function_arg): Likewise.
+
+ * config/rs6000/darwin.h (ASM_SPEC): Use -force_cpusubtype_ALL when
+ -maltivec is specified, not the non-existent -faltivec.
+
+2003-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_function_value): Declare.
+ * config/s390/s390.c (TARGET_RETURN_IN_MEMORY): Define.
+ (s390_return_in_memory): New function.
+ (s390_function_value): New function.
+ (s390_function_arg_float): Return false for all arguments larger
+ than 8 bytes.
+ (s390_function_arg_pass_by_reference): Likewise. Return true for
+ all vector arguments.
+ (s390_function_arg_integer): New function.
+ (s390_function_arg_advance): Call it. Add sanity checks.
+ (s390_function_arg): Likewise.
+ * config/s390/s390.h (FUNCTION_VALUE): Call s390_function_value.
+ (LIBCALL_VALUE): Likewise.
+ (RET_REG): Remove.
+ (RETURN_IN_MEMORY): Remove.
+
+2003-11-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_initial_elimination_offset): Change
+ return type to HOST_WIDE_INT.
+ * config/mips/mips.c (mips_frame_info): Give sizes type HOST_WIDE_INT.
+ Make initialized a bool. Make register masks unsigned ints.
+ (compute_frame_size): Make same mask change here. Use HOST_WIDE_INT
+ where appropriate.
+ (mips_initial_elimination_offset): Return a HOST_WIDE_INT.
+ (mips_output_function_prologue): Print sizes as HOST_WIDE_INTs.
+
+2003-11-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/frv/frv.c (frv_initial_elimination_offset): Remove bogus
+ negation.
+
+2003-11-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/frv/frv.h (ASM_OUTPUT_ALIGN_WITH_NOP): Define.
+
+2003-11-06 Momchil Velikov <velco@fadata.bg>
+
+ * config/mips/mips.c (override_options): Set MASK_SOFT_FLOAT
+ for VR4111 too.
+
+2003-11-06 Jan Hubicka <jh@suse.cz>
+
+ * builtins.c (simplify_builtin_strrchr, simplify_builtin_strpbrk): Add
+ missing casts.
+
+2003-11-06 Zack Weinberg <zack@codesourcery.com>
+
+ * genmodes.c: Change the word "bitsize" to "precision" throughout.
+ * machmode.def: Likewise.
+ * machmode.h (GET_MODE_SIZE): Cast value to unsigned short.
+ (GET_MODE_BITSIZE): Define as GET_MODE_SIZE * BITS_PER_UNIT.
+ (GET_MODE_PRECISION): New macro.
+ (mode_bitsize): Renamed mode_precision.
+ * stor-layout.c (mode_for_size, smallest_mode_for_size):
+ Use GET_MODE_PRECISION; clarify comments.
+
+2003-11-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/install-old.texi: Remove old documentation of building
+ cross-compilers.
+ * doc/install.texi: Move some of it to here.
+
+2003-11-05 Per Bothner <pbothner@apple.com>
+
+ PR preprocessor/12891
+ * c-opts.c (finish_options): Set include_cursor to disable premature
+ calls to push_command_line_include from cpp_scan_nooutput.
+ Fixes bug reported by DJ Delorie.
+
+2003-11-05 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.c (setup_incoming_varargs): Remove
+ code supporting old-style varargs.
+
+ * config/rs6000/rs6000.c (rs6000_machopic_legitimize_pic_address): Use
+ an intermediate register for better optimisation.
+
+2003-11-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR optimization/10080
+ * cfgloopanal.c (variable_initial_value, variable_initial_values,
+ simple_loop_exit_p): Record the fact that initial value is extended
+ from inner mode.
+ (count_strange_loop_iterations, count_loop_iterations): Handle
+ ivs that iterate in a narrower mode. Fix handling of overflows.
+ Improve handling of NE conditions.
+ (inverse, fits_in_mode_p): New static functions.
+ (simple_increment): Detect variables that iterate in a narrower mode.
+ * cfgloop.h (struct loop_desc): Fields inner_mode and extend added.
+
+2003-11-05 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.c (compute_vrsave_mask): Correct off-by-one
+ error.
+
+ * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Darwin
+ needs VRSAVE.
+
+2003-11-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (pedantic_lvalue_warning): Deprecate use of
+ conditional expressions as lvalues.
+
+2003-11-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * tsystem.h: Add the prototype of strlen.
+ * unwind-pe.h (read_encoded_value_with_base): Add an
+ appropriate cast to handle a case where the pointer size is
+ smaller than sizeof (int).
+
+2003-11-04 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_global_pic_constant_p): Delete.
+ (mips_delegitimize_address): Delete.
+ (mips_gotoff_global, mips_load_got_page): Declare.
+ (mips_load_got_global, mips_rewrite_small_data): Declare.
+
+ * config/mips/mips.h (FIND_BASE_TERM): Remove definition.
+ (DANGEROUS_FOR_LA25_P): Use global_got_operand.
+ (PREDICATE_CODES): Add global_got_operand, local_got_operand and
+ small_data_pattern. Remove CONST from const_arith_operand's entry.
+
+ * config/mips/mips.c (UNSPEC_ADDRESS_P, CONST_GP_P): New macros.
+ (UNSPEC_ADDRESS, UNSPEC_ADDRESS_TYPE): Likewise.
+ (mips_constant_type): Delete.
+ (mips_symbol_type): Add SYMBOL_GOTOFF_PAGE, SYMBOL_GOTOFF_GLOBAL,
+ SYMBOL_GOTOFF_CALL and SYMBOL_GOTOFF_LOADGP.
+ (NUM_SYMBOL_TYPES): New macro.
+ (mips_address_type): Remove ADDRESS_INVALID.
+ (machine_function): Add has_gp_insn_p.
+ (mips_constant_info): Delete.
+ (mips_address_info): Add the address type as an extra field. Replace
+ the c field with symbol_type.
+ (mips_split_p, mips_lo_relocs, mips_hi_relocs): New arrays.
+ (TARGET_DELEGITIMIZE_ADDRESS): Remove definition.
+ (mips_reloc_offset_ok_p, mips_classify_constant): Delete.
+ (mips_split_const, mips_symbolic_constant_p): New functions.
+ (mips_symbolic_address_p): Take the symbol type and mode as arguments.
+ (mips_classify_address): Return true if the address is valid, storing
+ its type in INFO. Use mips_symbolic_constant_p. Use mips_lo_relocs[]
+ to test whether a LO_SUM address is allowed.
+ (mips_symbol_insns): Return 0 for general mips16 symbols.
+ Reorder SYMBOL_GOT_GLOBAL case to match mips_symbol_type definition.
+ Handle the new SYMBOL_GOTOFF_*s.
+ (mips_address_insns): Update call to mips_classify_address.
+ (mips_const_insns): Be more fussy about HIGH constants. Remove use
+ of mips_classify_constant. Be more accurate about CONSTs.
+ (mips_global_pic_constant_p): Delete.
+ (const_arith_operand): Only accept CONST_INTs.
+ (call_insn_operand): Remove call to mips_classify_constant.
+ Let mips_symbolic_constant_p check for invalid offsets.
+ (move_operand): Check for general_operands first. Only accept symbolic
+ constants if they satisfy mips_symbolic_constant_p and cannot be split.
+ (symbolic_constant): Use mips_symbolic_constant_p.
+ (global_got_operand, local_got_operand): New predicates.
+ (stack_operand): Update call to mips_classify_address.
+ (mips_legitimate_address_p): Likewise.
+ (mips_reloc, mips_lui_reloc): Delete.
+ (mips_force_temporary): Only use the given temporary if no_new_pseudos.
+ Use emit_move_insn.
+ (mips_split_symbol, mips_unspec_address): New functions.
+ (mips_unspec_offset_high): New function.
+ (mips_load_got): Replace reloc argument with a symbol_type.
+ Use mips_unspec_address to create the address and put it in a
+ LO_SUM with the base register.
+ (mips_load_got16, mips_load_got32): Delete.
+ (mips_emit_high, mips_legitimize_symbol): Delete.
+ (mips_gotoff_global): New function.
+ (mips_load_got_page, mips_load_got_global): New functions.
+ (mips_legitimize_symbol): Inline handling of LO_SUM splits.
+ (mips_legitimize_const_move): Likewise. Remove HIGH handling.
+ Inline code to handle constants plus invalid offsets. Use
+ mips_split_symbol to legitimize constant pool addresses.
+ (mips_delegitimize_address): Delete.
+ (mips_rtx_costs): Give legitimate symbolic constants and CONST_DOUBLEs
+ a cost of 1 insn. Give the rest a cost of CONSTANT_POOL_ADDRESS.
+ (mips_subword): Pass memrefs through mips_rewrite_small_data.
+ (mips_output_move): Remove use of mips_classify_constant.
+ (mips_expand_call): Use mips_unspec_offset_high to calculate the
+ high part of the GOT address for calls to global functions.
+ (override_options): Initialize mips_split_p[], mips_lo_relocs[]
+ and mips_hi_relocs[].
+ (print_operand): Use print_operand_reloc to handle '%h' and '%R'.
+ Remove use of mips_classify_constant.
+ (mips_reloc_string): Delete.
+ (print_operand_reloc): New function.
+ (print_operand_address): Update call to mips_classify_address.
+ (mips_rewrite_small_data_p, small_data_pattern_1): New functions.
+ (small_data_pattern): New predicate.
+ (mips_rewrite_small_data_1, mips_rewrite_small_data): New functions.
+ (mips_function_has_gp_insn): New function.
+ (mips_global_pointer): Use it.
+ (mips_gp_insn): Delete.
+ (mips_expand_prologue): When compiling for n32/n64 abicalls, use a
+ single loadgp pattern to initialize $gp. Pass it the offset of _gp
+ from the start of the current function.
+ (mips16_gp_pseudo_reg): Revert last patch.
+
+ * config/mips/mips.md (RELOC_*): Delete.
+ (UNSPEC_LOADGP, UNSPEC_FIRST_ADDRESS): New constants.
+ (got): New insn attribute.
+ (type): Set to "load" if got == load.
+ (length): Set to 4 if got == load, 8 if got == xgot_high.
+ (lui[sd]i): Delete.
+ (*xgot_hi[sd]i, *xgot_lo[sd]i): New patterns.
+ (*got_disp[sd]i, *got_page[sd]i): Likewise.
+ (*low[sd]i): Change constraints to "d". Add a new define_split to
+ rewrite small data constants into LO_SUMs.
+ (loadgp): New insns.
+
+2003-11-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/_tilib.c: Use _ABI* in _MIPS_SIM tests.
+
+2003-11-04 DJ Delorie <dj@redhat.com>
+
+ * config/v850/v850.md (mulhisi3): Expand the const_int case
+ separately to avoid trying to sign extend the const.
+
+2003-11-04 Richard Sandiford <rsandifo@redhat.com>
+
+ * emit-rtl.c (copy_rtx_if_shared): Don't allow MEMs with constant
+ addresses to be shared.
+ (force_const_mem): Return a copy of the pool entry.
+
+2003-11-03 Andreas Jaeger <aj@suse.de>
+
+ * Makefile.in (GCC_CFLAGS): Remove @WERROR@ again.
+
+2003-11-03 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (cpp.dvi): New target split from cpp.info.
+ (gcc.dvi): New target split from gcc.info.
+ (gccint.dvi): New target split from gccint.info.
+ (cppinternals.dvi): New target split from cppinternals.info
+ (gccinstall.info): New specific rule.
+ (gccinstall.dvi): Likewise.
+ (dvi): Move targets to $(docobjdir).
+ ($(docobjdir)/%.dvi): New implicit rule.
+
+2003-11-03 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * doc/gty.texi (tag, desc): Say more about role of desc values in
+ selecting between tags.
+
+2003-11-03 Alexander Kabaev <ak03@gte.com>
+
+ * real.c (encode_ieee_single): Ensure proper promotion.
+
+2003-11-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * doc/contrib.texi: Add Giovanni Bajo, Dara Hazeghi, Falk Hueffner,
+ and Andrew Pinski.
+
+2003-11-03 Syd Polk <spolk@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Add G3, G4, and G5
+ marketing names to the list of supported processors.
+ * config/rs6000/rs6000.h: Ditto.
+ * doc/invoke.texi: Ditto.
+ * config.gcc: Ditto.
+
+2003-11-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (stdio_va_list): Allow tab before va_list.
+ Merge two substitutions.
+ * fixinc/fixincl.x: Regenerate.
+ Fixes PR bootstrap/12666.
+
+2003-11-03 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/install-old.texi: Remove VMS documentation.
+
+2003-11-03 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (override_options): Remove hack enabling 128bit long double
+ commited by accident.
+
+2003-11-02 Per Bothner <per@bothner.com>
+
+ * c-opts.c (needValue): Do cpp_find_main_file before processing
+ any imacros flags, so pfile->main_file is set for the latter.
+
+2003-11-03 Andreas Jaeger <aj@suse.de>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (GCC_CFLAGS): Allow blacklisting of warnings.
+ (SYSCALLS.c.X-warn): Suppress warnings.
+
+2003-11-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR optimization/12845
+ * pa.c (output_cbranch): Use cmpb for DImode comparisons with 0.
+
+2003-11-02 Zack Weinberg <zack@codesourcery.com>
+
+ * print-rtl.c (print_rtx): Call PRINT_REG with second argument -1.
+ * config/i386/i386.c (print_reg): Abort on a virtual register
+ if code != -1; not if file == asm_out_file.
+ * config/i386/i386.h (PRINT_REG): Document meaning of CODE == -1.
+ (DEBUG_PRINT_REG): Delete, unused.
+
+2003-11-02 Andreas Schwab <schwab@suse.de>
+
+ * config/ia64/fde-glibc.c (_GNU_SOURCE): Define to 1 instead of
+ empty to avoid conflict with the definition from configure.
+
+2003-11-02 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/10817
+ * ifcvt.c (noce_emit_move_insn): Improve documentation comment.
+ (noce_try_move): New function to optimize an if-the-else into an
+ unconditional move, i.e. "if (a!=b) x=a; else x=b" into "x=a".
+ (noce_process_if_block): Attempt simplification with noce_try_move.
+
+ * simplify-rtx.c (simplify_ternary_operation): Some minor fixes
+ and improvements to the optimizations of IF_THEN_ELSE expressions.
+ (simplify_subreg): Silence signed/unsigned comparison warning.
+
+2003-11-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * Makefile.in (targhooks.o, reload.o): Update dependencies.
+ (GTFILES): Add targhooks.c.
+ (gt-targhooks.h): New rule; depend on s-gtype.
+ * target.h (direct_pool_load_p): New hook.
+ * target-def.h (TARGET_DIRECT_POOL_LOAD_P): New macro.
+ (TARGET_INITIALIZER): Include it.
+ * targhooks.h (default_direct_pool_load_p): Declare.
+ (hook_bool_machine_mode_true): Declare.
+ * targhooks.c: Include insn-config.h, recog.h, ggc.h and
+ gt-targhooks.h.
+ (pool_symbol): New variable.
+ (default_direct_pool_load_p): New function.
+ (hook_bool_machine_mode_true): New function.
+ * reload.c: Include target.h.
+ (find_reloads): If an alternative will force a constant into memory,
+ count an extra reload if constant pool symbols are not valid
+ addresses. If an alternative uses memory to move values between
+ registers, count the move as two reloads rather than one.
+ * config/s390/s390.c (TARGET_DIRECT_POOL_LOAD_P): Define.
+ * doc/tm.texi (TARGET_DIRECT_POOL_LOAD_P): Document.
+
+2003-11-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/12799
+ * postreload.c (reload_cse_move2add): Generate the add2
+ patterns manually.
+
+2003-11-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_partial_nregs) [TARGET_ARCH64]:
+ Return 0 for all complex modes whose size is lesser or equal to
+ a word. Add a ??? comment for the condition used with 16-byte
+ aligned modes.
+
+2003-11-01 Kelley Cook <kcook@gcc.gnu.org>
+
+ * .cvsignore: Remove c-parse* and tradcif.c.
+ * objc/.cvsignore: Delete.
+
+2003-11-01 Roger Sayle <roger@eyesopen.com>
+
+ * unwind-sjlj.c (_Unwind_GetCFA): Return (_Unwind_Word)0 instead
+ of NULL.
+
+2003-11-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * som.h (DO_GLOBAL_DTORS_BODY): Change to C90 declaration.
+
+ * libgcc2.c (SYMBOL__MAIN): Provide C90 declaration.
+
+ * collect2.c (scan_libraries): Fix typos.
+
+ PR preprocessor/12847
+ * cppfiles.c, cppexp.c, cpperror.c, cpplib.h, cpplib.c, cpplex.c,
+ cppinit.c, cpptrad.c, cppmacro.c, fix-header.c, cpppch.c, c-pch.c,
+ c-incpath.c, cppcharset.c (DL_WARNING, DL_WARNING_SYSHDR, DL_PEDWARN,
+ DL_ERROR, DL_ICE, DL_EXTRACT, DL_WARNING_P): Prefix macro names with
+ "CPP_".
+
+2003-11-01 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Correct
+ no_units calculation.
+
+2003-11-01 Andreas Jaeger <aj@suse.de>
+
+ * unwind-dw2.c (_Unwind_FrameState): Remove commas at end of
+ enumeration list.
+
+2003-11-01 Andreas Schwab <schwab@suse.de>
+
+ * config/ia64/sysv4.h (SDATA_SECTION_FUNCTION): Update to C90
+ prototypes.
+ (SBSS_SECTION_FUNCTION): Likewise.
+
+2003-11-01 Andreas Jaeger <aj@suse.de>
+
+ * Makefile.in (GCC_CFLAGS): Add @WERROR@ for target files.
+
+2003-11-01 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * config/rs6000/sysv4.h (EXTRA_SECTION_FUNCTIONS): Update to C90
+ prototypes.
+
+2003-11-01 Andreas Jaeger <aj@suse.de>
+
+ * unwind-dw2.c (_Unwind_FindEnclosingFunction): Constify variable.
+ (uw_frame_state_for): Constify variables.
+ (extract_cie_info): Constify first argument.
+
+ * unwind-dw2-fde-darwin.c: Adjust prototype of
+ _Unwind_Find_registered_FDE for recent changes.
+ (examine_objects): Constify return value and local variable result.
+ (_Unwind_Find_FDE): Constify return value and local variable ret.
+
+2003-10-31 Per Bothner <pbothner@apple.com>
+
+ * c-opts.c (finish_options): Change to returns boolean - false iff
+ the call to cpp_find_main_file fails.
+ (c_common_init): Skip preprocess_file if finish_options failed.
+ (c_common_parse_file): Break if finish_options failed.
+ Fixes PR preprocessor/12545.
+
+2003-10-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * aclocal.m4: Blacklist ultrix* for mmap file.
+ * configure: Rebuilt.
+
+ * function.c (assign_parms): Add ATTRIBUTE_UNUSED to variable
+ reg_parm_stack_space.
+ * toplev.c (default_get_pch_validity): Fix warning.
+
+ * vax.c: Include toplev.h.
+ (vax_init_libfuncs): Fix typo (umod).
+ * vax.h (ASM_COMMENT_START): Define.
+ (PRINT_OPERAND): Fix warning when HOST_WIDE_INT is a long long.
+
+2003-10-31 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/11968
+ * expr.c (expand_expr <MULT_EXPR>): Remove inappropriate and
+ confusing comment; distributivity isn't handled in expand_expr.
+ * fold-const.c (extract_muldiv_1 <PLUS_EXPR>): Allow overflow
+ in distributivity, if wrap-around semantics are specified with
+ -fwrapv.
+
+2003-11-01 Alan Modra <amodra@bigpond.net.au>
+
+ PR 12315
+ * final.c (profile_function): Allow for NULL svrtx.
+
+2003-10-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (pa_select_section): Use new style declaration.
+ * som.h (readonly_data): Likewise.
+
+2003-10-31 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/rs6000/rs6000.c: Update to C90 prototypes.
+
+2003-10-31 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/7513
+ * arm.h (CONDITIONAL_REGISTER_USAGE): Disable use of LR in Thumb
+ code.
+
+2003-10-31 Andreas Jaeger <aj@suse.de>,
+ Zack Weinberg <zack@codesourcery.com>
+
+
+ * crtstuff.c (__register_frame_info, __register_frame_info_bases)
+ (__deregister_frame_info, __deregister_frame_info_bases):
+ Constify void * argument.
+ * unwind-dw2-fde.h (struct fde_vector):
+ Constify 'orig_data' and 'array' fields.
+ (__register_frame_info, __register_frame_info_bases)
+ (__deregister_frame_info, __deregister_frame_info_bases):
+ Constify void * argument.
+ (get_cie, next_fde, _Unwind_Find_FDE): Constify arguments,
+ return values, and casts of type fde *, struct dwarf_fde *,
+ and struct dwarf_cie *.
+ * unwind-dw2-fde.c (__register_frame_info, __register_frame_info_bases)
+ (__deregister_frame_info, __deregister_frame_info_bases):
+ Constify void * argument.
+ (get_cie_encoding, ): Constify struct dwarf_cie * argument.
+ (get_fde_encoding, fde_unencoded_compare, fde_single_encoding_compare)
+ (fde_mixed_encoding_compare, fde_compare_t, start_fde_sort, fde_insert)
+ fde_split, SWAP, frame_downheap, frame_heapsort)
+ (classify_object_over_fdes, add_fdes, linear_search_fdes,
+ binary_search_unencoded_fdes, binary_search_single_encoding_fdes,
+ binary_search_mixed_encoding_fdes, search_object, _Unwind_Find_FDE):
+ Constify arguments, local variables, return values, and casts
+ of type fde *, fde **, struct dwarf_fde *, and struct dwarf_cie *.
+ Use const pointer types in sizeof expressions, for clarity.
+ * unwind-dw2-fde-glibc.c
+ (_Unwind_find_registered_FDE, _Unwind_find_FDE): Constify return value.
+ (struct unw_eh_callback_data): Constify 'ret' field.
+
+2003-10-31 Fariborz Jahanian <fjahanian@apple.com>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_mixed_function_arg): New.
+ (function_arg): Call it.
+ (rs6000_function_value): Widen integral return value to mode based
+ on TARGET_32BIT, not word_mode.
+ * config/rs6000/rs6000.h (PROMOTE_MODE): Likewise.
+ (UNITS_PER_ARG): New.
+ (RS6000_ARG_SIZE): Use it.
+
+2003-10-31 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * .cvsignore: No longer ignore gengtype-lex.c, gengtype-yacc.c,
+ and gengtype-yacc.h.
+
+2003-10-31 Richard Earnshaw <rearnsha@arm.com>
+
+ PR optimization/8896
+ * postreload.c (reload_combine): Check that REGY doesn't die in an
+ insn of the form (set (regx) (plus (regx) (regy))), ie REGX != REGY.
+
+2003-10-31 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/10239
+ * cfgrtl.c (delete_insn): Decrease LABEL_NUSES for all REG_LABEL notes.
+
+2003-10-31 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/11640
+ * cfgrtl.c (try_redirect_by_replacing_jump): Move jump
+ immediatelly before BARRIER.
+
+2003-10-31 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (STRICT2_WARN): Add -Wold-style-definition.
+
+2003-10-31 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/11271
+ * reload.c (find_reloads_address): Handle any register in
+ (PLUS (PLUS (REG) (REG)) (CONST_INT).
+
+2003-10-31 Richard Earnshaw <rearnsha@arm.com>
+
+ * ggc-page.c (ggc_pch_read): Wrap call to poison_pages in
+ ENABLE_GC_CHECKING not in GGC_POISON.
+
+2003-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR bootstrap/9863
+ * configure.in: Bail out if awk is missing.
+ * configure: Regenerate.
+
+ PR ada/12761
+ * Makefile.in: Move default definitions of X_ADA_CFLAGS,
+ T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from ada/Make-lang.in to here.
+
+2003-10-30 Richard Henderson <rth@redhat.com>
+
+ * c-objc-common.c (c_tree_printer): Handle types correctly.
+ Factor code a bit.
+
+2003-10-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * value-prof.c, web.c: Update to C90.
+
+2003-10-30 Eric Christopher <echristo@redhat.com>
+
+ * function.c (purge_addressof_1): Add case for REG_RETVAL
+ notes when modes are unequal.
+
+2003-10-31 Jan Hubicka <jh@suse.cz>
+
+ * i386-modes.def: Add XFmode format adjustment.
+
+2003-10-30 Jan Hubicka <jh@suse.cz>
+
+ * real.c (encode_ieee_extended): Back out previous patch.
+
+2003-10-30 Jan Hubicka <jh@suse.cz>
+
+ * real.c (encode_ieee_extended): Initialize whole array.
+ * reg-stack.c (move_for_stack_reg0: Use always XFmode.
+ * i386-modes.def: Change definitions of TFmode and XFmode.
+ * i386.c (classify_argument): Rename TFmodes to XFmodes; add new TFmode
+ code.
+ (construct_container): Allow constructing of TFmode integer containers.
+ (ix86_return_in_memory): XFmode is not returned in memory.
+ (init_ext_80387_constants): Always use XFmode.
+ (print_operand): Likewise.
+ (ix86_prepare_fp_compare_regs): Likewise.
+ (split_to_parts): Deal with TFmode.
+ (split_long_move): Simplify.
+ (ix86_init_mmx_sse_builtins): Add __float80, __float128.
+ (ix86_memory_move_cost): Do not confuse TFmode.
+ * i386.h (LONG_DOUBLE_TYPE_SIZE): Set to 96.
+ (IS_STACK_MODE): TFmode is not stack mode.
+ (HARD_REGNO_NREGS, CLASS_MAX_NREGS): Deal nicely with XFmode.
+ (VALID_SSE_REG_MODE): Allow TFmode.
+ (VALID_FP_MODE_P): Disallow TFmode.
+ (VALID_INT_MODE_P): Allow TFmode in 64bit mode.
+ * i386.md (TFmode patterns): Kill.
+ (movtf, motf_rex64): New patterns.
+
+2003-10-30 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (adddi3): Fix typo in mips16 stack pointer code.
+
+2003-10-30 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (mov_lwl): Use memory_operand where appropriate.
+ (mov_lwr, mov_swl, mov_swr): Likewise.
+ (mov_ldl, mov_ldr, mov_sdl, mov_sdr): Likewise.
+
+2003-10-30 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_global_pointer): Don't try to use $25.
+
+2003-10-30 Richard Henderson <rth@redhat.com>
+
+ * config/mips/mips.c (mips_build_builtin_va_list): Use runtime
+ test for irix6 rather than preprocessor test.
+
+2003-10-30 Richard Henderson <rth@redhat.com>
+
+ * cppcharset.c (one_utf8_to_utf16): Initialize 's' to silence warning.
+
+2003-10-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (struct machine_function): Use save_return_addr_p
+ as a general flag that the return address register needs to be saved,
+ not necessarily because of __builtin_return_addr (0).
+ (s390_split_branches): Remove TEMP_REG and TEMP_USED arguments,
+ remove special handling of zSeries machines.
+ (s390_optimize_prolog): Remove TEMP_USED argument, treat the return
+ register as a regular register on zSeries machines.
+ (s390_reorg): Adjust calls to s390_split_branches and
+ s390_optimize_prolog.
+ (s390_frame_info): On zSeries machines, do not assume the return
+ register is always used. Update regs_ever_live with current data
+ for the special registers.
+ (s390_emit_epilogue): Use save_return_addr_p to determine whether
+ the return register was saved.
+ * config/s390/s390.h (CONDITIONAL_REGISTER_USAGE): Do not mark
+ RETURN_REGNUM fixed on zSeries machines.
+ (REG_ALLOC_ORDER): Use RETURN_REGNUM last.
+ * config/s390/s390.md ("*doloop_si"): Handle branch overflow
+ via ahi-jgne pair on zSeries machines.
+ ("*doloop_di"): Likewise.
+ ("*doloop_di_long"): Remove.
+
+2003-10-30 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_override_options): Revert change of arm_constant_limit
+ when optimizing for size.
+
+2003-10-29 Richard Henderson <rth@redhat.com>
+
+ * fold-const.c (fold_single_bit_test): Convert the input to the
+ operational intermediate type.
+
+2003-10-29 Richard Henderson <rth@redhat.com>
+
+ * builtins.c (std_build_builtin_va_list): New.
+ * expr.h (std_build_builtin_va_list): Declare.
+ * defaults.h (BUILD_VA_LIST_TYPE): New.
+ * system.h (BUILD_VA_LIST_TYPE): Poison.
+ * target-def.h (TARGET_BUILD_BUILTIN_VA_LIST): New.
+ * target.h (struct gcc_target): Add build_builtin_va_list.
+ * tree.c (build_common_tree_nodes_2): Use it.
+
+ * config/alpha/alpha-protos.h, config/alpha/alpha.c,
+ config/alpha/alpha.h, config/alpha/unicosmk.h,
+ config/d30v/d30v-protos.h, config/d30v/d30v.c, config/d30v/d30v.h,
+ config/i386/i386-protos.h, config/i386/i386.c, config/i386/i386.h,
+ config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h,
+ config/i960/i960-protos.h, config/i960/i960.c, config/i960/i960.h,
+ config/mips/iris6.h, config/mips/mips-protos.h, config/mips/mips.c,
+ config/mips/mips.h, config/rs6000/rs6000-protos.h,
+ config/rs6000/rs6000.c, config/rs6000/rs6000.h,
+ config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
+ config/sh/sh-protos.h, config/sh/sh.c, config/sh/sh.h,
+ config/xtensa/xtensa-protos.h, config/xtensa/xtensa.c,
+ config/xtensa/xtensa.h: Rename foo_build_va_list to
+ foo_build_builtin_va_list; make it static. Define
+ TARGET_BUILD_BUILTIN_VA_LIST. Remove BUILD_VA_LIST_TYPE.
+ Update protos.
+
+ * config/i386/i386.c (ix86_expand_carry_flag_compare): Make static.
+ * config/iq2000/iq2000.h (BUILD_VA_LIST_TYPE): Remove.
+
+2003-10-29 James E Wilson <wilson@specifixinc.com>
+
+ * recog.c (asm_operand_ok): Add missing break after case 'X'.
+ Change if statements to else if statements in default case.
+ (extract_constrain_insn_cached): Fix misspelling of constrain_operands
+ in comment.
+ (constrain_operands_cached): Likewise.
+ (constrain_operands): Change if statements to else if statements in
+ default case.
+ * reload.c (find_reloads): Likewise.
+
+2003-10-29 Richard Henderson <rth@redhat.com>
+
+ * config/m68k/m68k.c (notice_update_cc): Clear cc status for
+ shifts and rotates.
+
+2003-10-30 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md: Remove duplicate pattern.
+
+2003-10-29 Hans-Peter Nilsson <hp@axis.com>
+
+ * real.c (do_divide): Initialize result with a 0.
+
+ * configure.in <enable-checking for valgrind>: Look for
+ <valgrind/memcheck.h> first. AC_DEFINE HAVE_VALGRIND_MEMCHECK_H
+ if it exists.
+ * configure, config.in: Regenerate.
+ * ggc-common.c [ENABLE_VALGRIND_CHECKING &&
+ HAVE_VALGRIND_MEMCHECK_H]: Include <valgrind/memcheck.h>. Use
+ #elif for other alternatives.
+ * ggc-page.c: Ditto.
+ * ggc-zone.c: Don't assume <valgrind/memcheck.h>; instead copy
+ include structure from ggc-common.c.
+
+2003-10-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-linux.h (ASM_OUTPUT_ADDR_VEC_ELT): Use label in big switch ELTs.
+ (ASM_OUTPUT_ADDR_DIFF_ELT): Use label difference in big switch ELTs.
+ * pa.c (pa_adjust_insn_length): Check for btable branches using
+ attribute TYPE_BTABLE_BRANCH.
+ (pa_reorg): Simplify.
+ * pa.h (CASE_VECTOR_MODE): Change big switch mode to SImode.
+ (ASM_OUTPUT_ADDR_VEC_ELT): As above.
+ (ASM_OUTPUT_ADDR_DIFF_ELT): As above.
+ * pa.md (btable_branch): New instruction type.
+ (in_branch_delay, in_nullified_branch_delay, in_call_delay): Disallow
+ btable branches.
+ (define_delay): Add btable branches to insn types that may have an
+ insn in the delay position.
+ (Z2, Z3): Add btable branch to list.
+ Simplify unamed pattern set copy pic_label_operand to register. Add
+ PA 2.0 variant.
+ (short_jump): New jump for use in branch tables.
+ (casesi, casesi0): Revise for new branch table formats.
+ (casesi32, casesi32p, casesi64p): New casesi patterns.
+ (indirect_jump): Move.
+
+2003-10-29 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.h (UNITS_PER_WORD): Revert to
+ !TARGET_POWERPC64.
+ (UNITS_PER_GPR_WORD): Delete.
+ (HARD_REGNO_NREGS): Revert to UNITS_PER_WORD.
+ (HARD_REGNO_MODE_OK): Same.
+ (CLASS_MAX_NREGS): Same.
+
+2003-10-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.h (ASM_COMMENT_START): Define.
+
+2003-10-29 Zack Weinberg <zack@codesourcery.com>
+
+ * genmodes.c (complete_mode): Record MODE_CC, MODE_INT,
+ MODE_FLOAT, and MODE_PARTIAL_INT modes as having one
+ component, not zero.
+
+2003-10-29 Andreas Schwab <schwab@suse.de>
+
+ * config/ia64/t-ia64 (LIB2ADDEH): Add $(srcdir)/gthr-gnat.c.
+
+2003-10-29 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_partial_nregs) [TARGET_ARCH64]:
+ Never return 1 for complex integral modes whose size is lesser or
+ equal to a word.
+ (function_arg_pass_by_reference) [TARGET_ARCH64]: Mention CTImode
+ in the comment.
+ (function_arg_advance) [TARGET_ARCH64]: Don't special-case complex
+ modes.
+ (sparc_va_arg) [TARGET_ARCH64]: Handle any types whose size is
+ greater than 16 bytes by reference.
+
+2003-10-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/ia64/ia64.c (ia64_assemble_integer): Test POINTER_SIZE,
+ not TARGET_ILP32.
+ (ia64_initialize_trampoline): Use globalize_label target call.
+
+2003-10-29 Andreas Schwab <schwab@suse.de>
+
+ * doc/install.texi (Building): Add a sentence about building Ada
+ for a canadian cross.
+
+2003-10-28 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.c (cmptf_libfunc): New static.
+ (ia64_expand_compare): Add logic to open-code calls to
+ _U_Qfcmp for TFmode comparisons.
+ (ia64_hpux_init_libfuncs): Initialize cmptf_libfunc.
+ Set libfuncs for TFmode eq/ne/gt/ge/lt/gt to 0; these should
+ never be generated anymore.
+ * config/ia64/ia64.md (cmptf): New expander.
+
+2003-10-28 Zack Weinberg <zack@codesourcery.com>
+
+ * ia64.md (UNSPEC_SETF_EXP,UNSPEC_FR_SQRT_RECIP_APPROX): New constants.
+ (*sqrt_approx): New instruction pattern for approximate square roots.
+ (*setf_exp_xf): New instruction pattern for exponentiation.
+ (*maddxf4_alts_truncsf): New instruction pattern for truncation.
+ (sqrtsf2_internal_thr): New define_and_split implementing
+ throughput-optimized inline calculation of SFmode square root.
+ (sqrtdf2_internal_thr): Likewise for DFmode.
+ (sqrtxf2_internal_thr): Likewise for XFmode.
+ (sqrtsf2, sqrtdf2, sqrtxf2): New expanders to choose between
+ latency- and throughput-optimized square root algorithms.
+ * ia64.h (MASK_INLINE_SQRT_LAT, MASK_INLINE_SQRT_THR,
+ TARGET_INLINE_SQRT_LAT, TARGET_INLINE_SQRT_THR, TARGET_INLINE_SQRT):
+ New macros.
+ (TARGET_SWITCHES): Add -minline-sqrt-min-latency and
+ -minline-sqrt-max-throughput.
+ * ia64.c (ia64_override_options): If both -minline-sqrt-min-latency
+ and -minline-sqrt-max-throughput are given, notify the user
+ that both options cannot be used simultaneously.
+ If -minline-sqrt-min-latency is given, notify the user that
+ this mode is not yet implemented.
+ (rtx_needs_barrier): Reformat initial comment to obey
+ 72-character width limit. Support UNSPEC_SETF_EXP and
+ UNSPEC_FR_SQRT_RECIP_APPROX.
+
+2003-10-29 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md (movdf_softfloat64): Allow dummy ctr,ctr
+ moves.
+
+2003-10-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ PR target/11598
+ PR libgcj/10610
+ * config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro.
+
+2003-10-28 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_output_epilogue): When using a frame pointer, don't emit
+ an extra stack adjustment insn if the stack pointer is already
+ pointing at the right place.
+ (use_return_insn): Allow a return insn to be used when we have a
+ frame pointer if the stack pointer is in the right place.
+ (output_return_instruction): Handle it.
+
+2003-10-28 Andreas Jaeger <aj@suse.de>
+
+ * ggc-zone.c (check_cookies): Add missing variable.
+ Add void to prototypes.
+
+2003-10-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/mips/irix6-libc-compat.c (inet_makeaddr): Prototype.
+ * crtstuff.c (__do_global_ctors_1): Move prototype.
+ * unwind-dw2.c (NO_SIZE_OF_ENCODED_VALUE): Define when
+ appropriate.
+ * unwind-sjlj.c (_Unwind_GetCFA, _Unwind_FindEnclosingFunction):
+ Mark parameter with __attribute__((unused)).
+
+2003-10-27 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (pushdecl): Clarify comment.
+
+2003-10-27 Arnaud Charlet <charlet@act-europe.fr>
+
+ * doc/install.texi: Update instructions for Ada cross builds
+
+ PR ada/5909:
+ * doc/sourcebuild.texi: Document Ada test suite.
+
+2003-10-27 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c: Convert to ISO C90.
+ * config/m68hc11/m68hc11-protos.h: Likewise.
+
+2003-10-27 Jan Hubicka <jh@suse.cz>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * toplev.c (enum dump_file_index, dump_file): Fix ordering of
+ webizer pass dump.
+
+2003-10-27 Jakub Jelinek <jakub@redhat.com>
+ Jan Hubicka <jh@suse.cz>
+
+ * reload1.c (struct elim_table): Change offset, initial_offset and
+ previous_offset fields to HOST_WIDE_INT.
+ (offsets_at): Change from int to HOST_WIDE_INT.
+ (reload): Adjust offsets_at initialization.
+ (eliminate_regs_in_insn): Change type of offset to HOST_WIDE_INT.
+ (verify_initial_elim_offsets): Change type of t to HOST_WIDE_INT.
+ * config/i386/i386.c (ix86_compute_frame_layout): Change offset type
+ to HOST_WIDE_INT. Don't save regs using mov for huge frame sizes
+ if TARGET_64BIT.
+ (pro_epilogue_adjust_stack): New function.
+ (ix86_expand_prologue, ix86_expand_epilogue): Use it.
+ * config/i386/i386.md (pro_epilogue_adjust_stack): Remove.
+ (pro_epilogue_adjust_stack_1): Remove * in front of name.
+ (pro_epilogue_adjust_stack_rex64): Handle -2147483648 properly.
+ (pro_epilogue_adjust_stack_rex64_2): New insn.
+
+ * config/i386/i386.c (ix86_expand_epilogue): Fix comment typo.
+
+ * config/i386/i386.c (ix86_expand_call): Replace 40 with
+ FIRST_REX_INT_REG + 3 /* R11 */.
+
+2003-10-26 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.md (attr cannot_copy): New.
+ (call_osf_2_er, call_value_osf_2_er, ldgp_er_1, ldgp_er_2,
+ prologue_ldgp_er_2, prologue_ldgp_1): Set it.
+ * config/alpha/alpha.c (alpha_cannot_copy_insn_p): Test it.
+
+2003-10-26 Daniel Berlin <dberlin@dberlin.org>
+
+ * ggc-zone.c: New file, zone allocating collector.
+ * configure: Accept zone option for --with-gc
+ * configure.in: Ditto.
+ * ggc.h (ggc_pch_count_object): Pass bool indicating
+ stringiness. Update all callers.
+ (ggc_pch_alloc_object): Ditto.
+ (ggc_pch_write_object): Ditto.
+ (ggc_alloc_rtx): Use typed allocation, since all RTX's are of a single
+ type.
+ (ggc_alloc_rtvec): Ditto.
+ (ggc_alloc_tree): Use zone allocation, since some things using this macro
+ aren't a single typecode.
+ * ggc-none.c (ggc_alloc_typed): New function.
+ (ggc_alloc_zone): Ditto.
+ * ggc-page.c: Ditto on both functions.
+
+2003-10-26 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (m68k_compute_frame_layout): Ensure FPU related
+ frame information is always valid.
+ (m68k_output_function_prologue): Remove superfluous TARGET_68881
+ test; fix formatting.
+
+2003-10-26 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (m68k_compute_frame_layout): Swap reg_mask and
+ reg_rev_mask computation.
+ (m68k_output_function_prologue): Fix usage of current_frame (one typo
+ and one missing); use reg_rev_mask not reg_mask.
+ (m68k_output_function_epilogue): Fix usage of current_frame;
+ use fpu_rev_mask not fpu_mask.
+
+2003-10-26 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c (m68k_output_function_prologue): Eliminate
+ num_saved_regs, use current_frame.reg_no instead.
+
+2003-10-26 Bernardo Innocenti <bernie@develer.com>
+ Paul Dale <pauli@snapgear.com>
+
+ * doc/extend.texi (interrupt_handler): Add m68k to the
+ list of processors implementing it.
+ * doc/invoke.texi (-msep-data): Document new m68k option.
+ (-mno-sep-data): Likewise.
+ (-mid-shared-library): Likewise.
+ (-mno-id-shared-library): Likewise.
+ (-mshared-library-id): Likewise.
+
+2003-10-26 Andreas Jaeger <aj@suse.de>
+
+ * unwind-dw2.c (_Unwind_GetGR): Avoid warning about unsigned
+ comparison.
+ (_Unwind_SetGR): Likewise.
+
+2003-10-26 Ottavio Campana <ottavio@campana.vi.it>
+
+ PR target/12690
+ * config/i386/mmintrin.h (_mm_set1_pi8): Fix comment.
+
+2003-10-26 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (m68k_output_function_prologue): Move front
+ comment from here to...
+ (m68k_save_reg): ...here. Fix comment formatting.
+ (m68k_output_function_prologue): Fix comment formatting.
+ (m68k_output_function_epilogue): Likewise.
+ (const_method): Likewise.
+
+2003-10-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * toplev.c (default_get_pch_validity): Guard the use of
+ target_options with #ifdef TARGET_OPTIONS.
+ (default_pch_valid_p): Likewise.
+
+2003-10-26 Andreas Jaeger <aj@suse.de>
+ Zack Weinberg <zack@codesourcery.com>
+ Andreas Tobler <toa@pop.agri.ch>
+
+ * dwarf2out.c (output_cfi): Use HOST_WIDE_INT_PRINT.
+ (output_die): Likewise.
+ (print_die): Likewise.
+
+2003-10-26 Andreas Jaeger <aj@suse.de>
+
+ * tree.h (dwarf2out_def_cfa, dwarf2out_args_size,
+ dwarf2out_reg_save, new_loc_descr): Update prototypes for recent
+ dwarf2out.c change.
+
+ * toplev.c (default_pch_valid_p): Fix warning.
+
+2003-10-25 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_replace_rtx): Avoid allocating duplicate
+ RTL nodes. If an operator's operands are unchanged, return the
+ original argument unchanged.
+
+2003-10-26 Graham Stott <graham.stott@btinternet.com>
+
+ Fix bootstrap failure.
+ * expmed.c (store_bit_field): Don't compare bitsize against
+ modes with zero bit-size.
+
+ (extract_bit_field): Likewise
+
+2003-10-25 Jan Hubicka <jh@suse.cz>
+
+ * dwarf2out.c (dw_cfi_oprnd_struct): Offset is HOST_WIDE_INT.
+ (cfa_loc): Likewise.
+ (reg_save, stack_adjust_offset, queue_reg_save): Replace long by
+ HOST_WIDE_INT.
+ (args_size, old_args_size): change type to HOST_WIDE_INT.
+ (dwarf2out_def_cfa, dwarf2out_args_size,
+ dwarf2out_reg_save, new_loc_descr): offset is HOST_WIDE_INT.
+ (dw_val_struct): integers, unsigneds and offsets are HOST_WIDE_INT.
+ (add_AT_int, add_AT_unsigned, att_AT_offset, AT_int, AT_unsigned,
+ AT_offset): Use HOST_WIDE_INT.
+ (based_loc_descr): offset is HOST_WIDE_INT.
+ (add_data_member): Likewise.
+ (add_const_value_attribute): Simplify.
+
+2003-10-25 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.c (ix86_eax_live_at_start_p): New.
+ (ix86_expand_prologue): Save and restore eax around stack probe
+ if it's live.
+
+2003-10-25 Jan Hubicka <jh@suse.cz>
+
+ * cppcharset.c (one_utf8_to_utf32): Initialize 's' to silence warning.
+
+2003-10-25 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/12712
+ * reg-stack.c (convert_regs_1): Create an arbitrary input stack
+ if the block has no predecessors.
+ (convert_regs_2): Document the problem with successors whose
+ only predecessor is the block to be processed.
+ (convert_regs): Don't create the arbitrary input stack here.
+
+2003-10-24 Zack Weinberg <zack@codesourcery.com>
+
+ * genmodes.c (struct mode_data): Add contained and next_cont
+ fields.
+ (complete_mode): Maintain linked list of modes that have a
+ given component.
+ (emit_mode_unit_size): Delete.
+ (emit_mode_nunits): New.
+ (emit_insn_modes_c): Update to match.
+ (emit_mode_adjustments): Propagate size and alignment
+ adjustments from component modes to their containers.
+ * machmode.h (mode_unit_size): Delete.
+ (mode_nunits): New.
+ (GET_MODE_NUNITS): Just return the value in the table.
+ (GET_MODE_UNIT_SIZE): Compute using GET_MODE_INNER and
+ GET_MODE_SIZE.
+ * expmed.c (store_bit_field, extract_bit_field): Can use a
+ plain move instruction if bitsize >= GET_MODE_BITSIZE of
+ destination/source mode, respectively.
+ * varasm.c (assemble_real): Write out the full size of the
+ constant, not just its bitsize.
+ (output_constant): Honor TYPE_MODE of TREE_REAL_CSTs.
+
+ * config/ia64/ia64-modes.def: Define XFmode as well as TFmode.
+ Use ADJUST_BYTESIZE and ADJUST_ALIGNMENT to set size and
+ alignment of XF and TF modes in compliance with ia64 ABIs.
+ Can now hardwire the format of both modes.
+ * config/ia64/ia64.c: Change TFmode to XFmode wherever appropriate.
+ (general_tfmode_operand, destination_tfmode_operand)
+ (tfreg_or_fp01_operand, spill_tfmode_operand): Rename to
+ general_xfmode_operand, destination_xfmode_operand,
+ xfreg_or_fp01_operand, spill_xfmode_operand respectively.
+ (ia64_init_builtins): Make TYPE_PRECISION of fpreg_type
+ and float80_type be 96 so they get XFmode. Use !TARGET_HPUX,
+ not INTEL_EXTENDED_IEEE_FORMAT, to decide how to define
+ __float128.
+ * config/ia64/ia64.h: Default TARGET_HPUX to 0.
+ Change TFmode to XFmode wherever appropriate. Remove all
+ references to INTEL_EXTENDED_IEEE_FORMAT.
+ (LONG_DOUBLE_TYPE_SIZE): Varies with TARGET_HPUX.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define (always 96).
+ (PREDICATE_CODES): Update to match function renames.
+ * config/ia64/ia64.md: Change TF to XF throughout; rename all
+ patterns to match. Remove all references to
+ INTEL_EXTENDED_IEEE_FORMAT. Update predicate calls to match
+ function renames.
+ * config/ia64/ia64-protos.c: Update all prototypes to match
+ renamed functions.
+ * config/ia64/hpux.h: Redefine TARGET_HPUX to 1.
+ Remove all references to INTEL_EXTENDED_IEEE_FORMAT.
+ * config/ia64/lib1funcs.asm: Add __divxf3 as new name for
+ __divtf3; keep old name for backward compatibility.
+ (L__compat): New section providing forwarding stubs for
+ __fixtfti, __fixunstfti, __floattitf.
+ * config/ia64/t-ia64: Add __compat to LIB1ASMFUNCS.
+
+2003-10-24 Geoffrey Keating <geoffk@apple.com>
+
+ PR 10757
+ * c-pch.c: Include target.h. Improve comments.
+ (struct c_pch_validity): Add target_data_length.
+ (pch_init): Add target's validity data.
+ (c_common_valid_pch): Check target's validity data.
+ * target-def.h (TARGET_GET_PCH_VALIDITY): New.
+ (TARGET_PCH_VALID_P): New.
+ (TARGET_INITIALIZER): Add new fields.
+ * target.h: Include tm.h.
+ (struct gcc_target): Add get_pch_validity, pch_valid_p.
+ * toplev.h (default_get_pch_validity): New prototype.
+ (default_pch_valid_p): New prototype.
+ * toplev.c (default_get_pch_validity): New routine.
+ (default_pch_valid_p): New routine.
+ * Makefile.in (TARGET_H): Add TM_H. Replace all users of
+ target.h with $(TARGET_H).
+ (c-pch.o): Add TARGET_H.
+ * doc/tm.texi (PCH Target): New node.
+ (TARGET_GET_PCH_VALIDITY): Document.
+ (TARGET_PCH_VALID_P): Document.
+
+2003-10-24 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in: Define a vpath for %.texi. Remove explicit $(docdir)
+ and $(docdir)/include from any *.texi dependencies.
+ ($(docobjdir)/%.dvi): Depend on stmp-docobjdir.
+ ($(docobjdir)/%.1): Depend on .pod instead of .texi.
+ ($(docobjdir)/%.7): Likewise.
+ (%.pod): New implicit rule.
+ (cpp.pod): New dependency only rule.
+ (gcc.pod): New intermediate rule with dependencies and commands.
+ (gfdl.pod): Likewise.
+ (fsf-funding.pod): Likewise.
+
+2003-10-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/mkfixinc.sh: Remove special cases for svr4 and ptx, and
+ related code.
+ * fixinc/fixinc.ptx: Remove.
+ * fixinc/fixinc.svr4: Remove.
+
+2003-10-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (load_multiple_operation): Allow both SImode
+ and DImode if word_mode is DImode.
+ (store_multiple_operation): Likewise.
+ * config/s390/s390.md ("load_multiple", "store_multiple"): Likewise.
+ ("*load_multiple_di"): Allow only if word_mode == DImode.
+ ("movqi"): Use LLGC whenever TARGET_ZARCH.
+ ("fix_truncdfsi2"): Fix incorrect temporary size.
+ ("fix_truncsfsi2"): Likewise.
+ ("*bras_r", "*brasl_r", "*basr_r"): Remove predicate and constraint
+ string for function return value operand.
+ ("*bras_tls", "*brasl_tls", "*basr_tls"): Likewise.
+
+2003-10-24 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-parse.in (array_declarator): Use expr_no_commas.
+ Fixes PR c/11943.
+
+2003-10-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/linux.h: Wrap MD_FALLBACK_FRAME_STATE_FOR and
+ associated includes in #ifndef inhibit_libc.
+
+2003-10-24 Roger Sayle <roger@eyesopen.com>
+
+ * doc/libgcc.texi: Document some more of the libgcc API.
+
+2003-10-24 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_rtx_costs_1, case TARGET_THUMB): Adjust costs for
+ comparing a constant with small negative numbers and add costing
+ for constants in conjunction with AND.
+ (note_invalid_constants): Tidy previous change.
+ (thumb_cmp_operand): Tidy.
+ (thumb_cmpneg_operand): New function.
+ * arm.h (CONDITIONAL_REGISTER_USAGE): Don't use HI regs if optimizing
+ for size.
+ (FIRST_LO_REGNUM, FIRST_HI_REGNUM, LAST_HI_REGNUM): Define.
+ (PREDICATE_CODES): Add thumb_cmpneg_operand.
+ * arm.md (cbranchsi4): Convert to define_expand. Handle comparison
+ with a negative constant.
+ (cbranchsi4_insn): Matcher for cbranchsi4.
+ (cbranchsi4_scratch): Similar, but a scratch is available for
+ handling negative constants.
+ (movsi_cbranchsi4): New pattern.
+ (tstsi3_cbranch): Renamed from andsi3_cbranch_scratch, remove scratch
+ and use the TST instruction.
+ (andsi3_cbranch, orrsi3_cbranch, xorsi3_cbranch, cbranchne_decr1)
+ (addsi3_cbranch, subsi3_cbranch): Ensure that register preferencing
+ cannot see high regs or memory alternatives.
+ (bicsi3_cbranch_scratch, bicsi3_cbranch): New patterns.
+
+2003-10-24 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (note_invalid_constants): Try to extract the constant
+ pool value using avoid_constant_pool_reference; only use
+ get_pool_constant if that returns the original reference.
+
+2003-10-24 Jan Hubicka <jh@suse.cz>
+
+ PR c++/12624
+ * varasm.c (notice_global_symbol): Disqualify global registers.
+
+2003-10-23 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/11414
+ * loop.c (load_mems): Use redirect_jump to forward jumps from
+ the original loop end label to the new "loop sink" block's label.
+
+2003-10-23 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/12705
+ * optabs.c (expand_binop): When expanding complex operations
+ inline, always calculate result into a new temporary register.
+ Minor code clean-ups.
+
+2003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * objc/lang-specs.h: Handle -print-objc-runtime-info.
+ * doc/invoke.texi (Objective-C Dialect Options): Document it.
+
+2003-10-24 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/cygwin.asm: Add copyright notice. Add comment
+ on why this code is needed.
+
+2003-10-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/clzhi2.c: Fix warnings.
+ * config/h8300/ctzhi2.c: Likewise.
+ * config/h8300/fixunssfsi.c: Likewise.
+ * config/h8300/parityhi2.c: Likewise.
+ * config/h8300/popcounthi2.c: Likewise.
+
+2003-10-23 James E Wilson <wilson@specifixinc.com>
+
+ * gcc.c (option_map): Delete --target and --use-version.
+
+2003-10-23 Fariborz Jahanian <fjahanian@apple.com>
+ David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.h (UNITS_PER_WORD): Use TARGET_32BIT, not
+ TARGET_POWREPC64.
+ (UNITS_PER_GPR_WORD): Define.
+ (HARD_REGNO_NREGS): Use UNITS_PER_GPR_WORD.
+ (HARD_REGNO_CALL_PART_CLOBBERED): Define.
+ (HARD_REGNO_MODE_OK): Use UNITS_PER_GPR_WORD.
+ (CLASS_MAX_NREGS): Use UNITS_PER_GPR_WORD.
+ * config/rs6000/rs6000.c (function_arg): Generate PARALLEL for
+ DFmode and DImode in 32-bit ABI / 64-bit computation mode.
+ (rs6000_emit_prologue): Select reg_mode and reg_size using
+ TARGET_32BIT, not TARGET_POWERPC64.
+ (rs6000_function_value): Generate PARALLEL for DImode in 32-bit
+ ABI / 64-bit computation mode
+
+2003-10-22 Andrew Haley <aph@redhat.com>
+
+ * toplev.c (output_file_directive): Allow for null input_name.
+
+2003-10-22 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ * config/i386/i386.c (classify_argument): Handle SET_TYPE.
+
+2003-10-22 Chris Demetriou <cgd@broadcom.com>
+
+ * configure.in: In --enable-generated-files-in-srcdir option
+ handling, fix default case handling.
+ * configure: Regenerate.
+
+2003-10-22 Phil Edwards <phil@codesourcery.com>
+
+ * config.gcc: Update *-*-vxworks* generic hook and comments.
+ (arm-wrs-vxworks, i[4567]86-wrs-vxworks, mips-wrs-vxworks,
+ mips-wrs-windiss, sh-wrs-vxworks): New stanzas.
+ * genmultilib: Allow the MULTILIB_OSDIRNAMES to be mapped directly.
+ * config/svr4.h (SWITCH_TAKES_ARG): Undefine it before redefining it.
+ * config/windiss.h: New file.
+ * config/arm/t-vxworks: New file.
+ * config/arm/vxworks.h: New file.
+ * config/i386/t-vxworks: New file.
+ * config/i386/vxworks.h: New file.
+ * config/mips/t-vxworks: New file.
+ * config/mips/vxworks.h: New file.
+ * config/mips/windiss.h: New file.
+ * config/sh/t-vxworks: New file.
+ * config/sh/vxworks.h: New file.
+
+2003-10-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_output_function_epilogue): Remove.
+ (h8300_saveall_function_p): New.
+ (h8300_insert_attributes): Insert the saveall attribute if
+ #pragma saveall is specified.
+ (h8300_attribute_table): Add saveall.
+ (TARGET_ASM_FUNCTION_EPILOGUE): Remove.
+ * doc/extend.texi: Mention the saveall attribute.
+
+2003-10-22 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (pedantic_lvalue_warning): Unconditionally warn of
+ deprecation of casts as lvalues.
+ * fixinc/inclhack.def (obstack_lvalue_cast): New fix.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/obstack.h: New test.
+
+2003-10-22 Andreas Schwab <schwab@suse.de>
+
+ PR target/12676
+ * config/m68k/m68k.c (output_addsi3): Fix range check to work on
+ LP64 platforms.
+
+2003-10-22 Jan Hubicka <jh@suse.cz>
+
+ * dwarf2out.c (dwarf2out_abstract_function): Use DW_AT to check
+ presence of DW_AT_inline.
+ (gen_subprogram_die): Likewise; do not abort instead of emitting
+ DW_AT_not_inline.
+
+2003-10-22 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_function_possibly_inlined_p): Be conservative when
+ global info is not ready.
+
+2003-10-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/extend.texi: Mention H8S wherever H8/300H is mentioned.
+
+2003-10-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("movstr_short_64", "movstr_short_31"): Merge ...
+ ("*movstr_short"): ... into this insn pattern.
+ ("movstr_short"): New expander.
+ ("*movstr_long_64"): Rename from "movstr_long_64", simplify.
+ ("*movstr_long_31"): Rename from "movstr_long_31", simplify.
+ ("movstr_long"): New expander.
+ ("clrstr_short_64", "clrstr_short_31"): Merge ...
+ ("*clrstr_short"): ... into this insn pattern.
+ ("clrstr_short"): New expander.
+ ("*clrstr_long_64"): Rename from "clrstr_long_64", simplify.
+ ("*clrstr_long_31"): Rename from "clrstr_long_31", simplify.
+ ("clrstr_long"): New expander.
+ ("cmpmem_short_64", "cmpmem_short_31"): Merge ...
+ ("*cmpmem_short"): ... into this insn pattern.
+ ("cmpmem_short"): New expander.
+ ("*cmpmem_long_64"): Rename from "cmpmem_long_64".
+ ("*cmpmem_long_31"): Rename from "cmpmem_long_31".
+ ("cmpmem_long"): New expander.
+ * config/s390/s390.c (s390_expand_movstr): Use new expanders.
+ (s390_expand_clrstr): Likewise.
+ (s390_expand_cmpmem): Likewise.
+
+2003-10-22 Mark Mitchell <mark@codesourcery.com>
+
+ * c-pch.c (struct c_pch_validity): Add pch_init field.
+ (pch_init): Set it.
+ (c_common_valid_pch): Check it.
+
+2003-10-22 David Taylor <dtaylor@emc.com>
+
+ PR debug/12500
+ * dbxout.c (dbxout_typedefs): Use COMPLETE_OR_VOID_TYPE_P.
+
+2003-10-22 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/alpha/alpha.c (function_value [ENABLE_CHECKING]): Don't call
+ alpha_return_in_memory if no VALTYPE specified.
+
+2003-10-22 Jan Hubicka <jh@suse.cz>
+
+ PR debug/12389
+ * Makefile.in (dwarf2out.o): Depend on cgraph.h.
+ * cgraph.c (cgraph_function_possibly_inlined_p): New function.
+ * cgraph.h (cgraph_function_possibly_inlined_p): Declare.
+ (cgraph_global_info): Add flag inlined
+ * dwarf2out.c (gen_subprogram_die, gen_decl_die): Use
+ cgraph_function_possibly_inded_p
+ * cgraphunit.c (mark_inline): Set inlined flag.
+ * toplev.c (rest_of_decl_compilation): Call outlining_inline_function
+ only for possibly inlined functions.
+ * c-decl.c (duplicate_decls): Never output abstract DIE representing old
+ body of function.
+
+2003-10-22 Andrew Haley <aph@redhat.com>
+
+ * varasm.c (output_constructor): Make constructor annotation
+ conditional on ASM_COMMENT_START.
+
+2003-10-21 Jason Merrill <jason@redhat.com>
+
+ * tree.c (get_unwidened): Check TREE_UNSIGNED on the field's type.
+ (get_narrower): Likewise.
+
+ * stor-layout.c (layout_decl): Do packed field alignment for
+ bit-fields, too.
+
+2003-10-21 Eric Christopher <echristo@redhat.com>
+
+ * expr.c (convert_move): Use FLOAT_EXTEND for extensions.
+
+2003-10-21 Geoffrey Keating <geoffk@apple.com>
+
+ * c-pch.c: Add comments in various places.
+ (struct c_pch_validity): Add the lengths of various strings.
+ (host_machine): New static.
+ (target_machine): New static.
+ (get_ident): Bump version number.
+ (pch_init): Write out version, host, target validity data.
+ (c_common_valid_pch): Check version, host, target.
+ * Makefile.in (c-pch.o): Add version.h; define HOST_MACHINE and
+ TARGET_MACHINE.
+
+2003-10-21 Jason Merrill <jason@redhat.com>
+
+ * tree.h (IS_EXPR_CODE_CLASS): Use strchr.
+ (EXPR_P): New macro.
+
+2003-10-21 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.md (cmpxchg_acq_si): Mark operand 3 as DImode.
+ * config/ia64/ia64.c (ia64_expand_fetch_and_op,
+ ia64_expand_op_and_fetch): Make sure the REG for ar.ccv is
+ DImode. Use convert_move to load ar.ccv.
+ (ia64_expand_compare_and_swap): Likewise.
+ If expand_expr doesn't put 'old' and 'new' in the proper
+ modes, run them through convert_to_mode.
+
+2003-10-21 Eric Christopher <echristo@redhat.com>
+
+ * config/frv/frv.c (frv_adjust_field_align): Check DECL_ARTIFICIAL
+ for too large bitfields.
+
+2003-10-21 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in ($(docobjdir)/%.info): Honor BUILD_INFO.
+
+2003-10-21 Andrew Haley <aph@redhat.com>
+
+ * varasm.c (output_constructor): Annotate constructor.
+
+2003-10-21 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in ($(DESTDIR)$(infodir)/%.info): Conditionalize chmod
+ on existence of destination file.
+
+2003-10-21 Jan Hubicka <jh@suse.cz>
+
+ * haifa-sched.c (choose_ready): Initialize index.
+
+2003-10-21 Jason Merrill <jason@redhat.com>
+
+ * tree.c (build1): Fix off-by-one error.
+
+2003-10-21 Robert Millan <robertmh@gnu.org>
+
+ * config/i386/kfreebsdgnu.h: New. i386-*-kfreebsd-gnu definitions.
+ * config/kfreebsdgnu.h: New. *-*-kfreebsd-gnu definitions.
+ * config/t-kfreebsd-gnu: New. *-*-kfreebsd-gnu tmake_file.
+ * config.gcc: Add *-*-kfreebsd*-gnu and i[34567]86-*-kfreebsd*-gnu.
+
+2003-10-21 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * web.c: Fix various comments.
+
+2003-10-20 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/arm.c (arm_override_options): Set arm_constant_limit
+ to 2 instead of 1 when optimize_size is true. Gather code based on
+ optimize_size together. Add comment about XScale load latency.
+
+2003-10-21 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (m68k_output_function_prologue): Remove
+ obsolete comments.
+
+2003-10-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in: Get parsedir and docobjdir from configure.
+ * configure.in: Recogonize --enable-generated-files-in-srcdir.
+ Pass along parsedir and docobjdir.
+ * configure: Regenerate.
+ * doc/install.texi: Document --enable-generated-files-in-srcdir.
+
+2003-10-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in: Define $(docdir) before the Make-lang.in fragments are
+ included.
+
+2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-common.c (expand_tree_builtin): Ensure creal and cimag
+ functions do not return lvalues.
+
+2003-10-20 Jason Merrill <jason@redhat.com>
+
+ PR c/12553
+ * tree.c (build1) <ADDR_EXPR>: Set TREE_SIDE_EFFECTS
+ appropriately.
+
+ PR c/11446
+ * stor-layout.c (layout_decl): Fix alignment handling.
+
+2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/extend.texi: Deprecate casts as lvalues.
+
+2003-10-20 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Fix webizer pass ordering.
+
+ * cgraphunit.c (decide_is_function_needed): Fix test dealing
+ with functions implicitly made inline.
+
+ * cgraphunit.c (cgraph_decide_inlining_incrementally): New function.
+ (cgraph_finalize_function): Use it.
+ (cgraph_mark_inline): Allow incrmental decisions
+ * invoke.texi (max-inline-slope, min-inline-insns): Kill.
+ * params.def (PARAM_MAX_INLINE_SLOPE, PARAM_MIN_INLINE_INSNS): Kill.
+ * tree-inline.c (limits_allow_inlining): Kill.
+ (expand_call_inline): Always use unit-at-a-time path.
+
+2003-10-20 Zack Weinberg <zack@codesourcery.com>
+
+ * fixinc/inclhack.def (hpux11_snprintf): New edit.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/stdio.h: Add test for hpux11_snprintf.
+
+2003-10-20 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (install-info): Simplify.
+ ($(DESTDIR)$(infodir)/%.info): New rule.
+ * configure.in (target_list): Remove install-info.
+ * doc/.cvsignore (gcc.info*): Remove.
+ (gccint.info*): Likewise.
+ (gccinstall.info*): Likewise.
+ (cpp.info*): Likewise.
+ (cppinternals.info*): Likewise.
+ (*.info*): Add it.
+ * doc/sourcebuild.texi: Update description of install-info.
+ * objc/Make-lang.in (objc.install-info): Remove.
+
+2003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Define _ABIO32.
+ Use it in _MIPS_SIM definition.
+ * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Likewise.
+
+2003-10-20 Zack Weinberg <zack@codesourcery.com>
+
+ * config/i386/i386.c (print_reg): Abort if REGNO (x) is a
+ virtual register, but only if file == asm_out_file.
+ * config/i386/i386.h (HI_REGISTER_NAMES): Use "argp", not "",
+ for ARG_POINTER_REGNUM.
+
+2003-10-20 Zack Weinberg <zack@codesourcery.com>
+
+ * c-common.c (registered_builtin_types): New static.
+ (c_common_type_for_mode): Consult registered_builtin_types.
+ (c_register_builtin_type): Add type to registered_builtin_types.
+ * optabs.c (init_floating_libfuncs): Initialize libfuncs for
+ all MODE_FLOAT modes, not just the ones corresponding to
+ float_type_node, double_type_node, and long_double_type_node.
+
+2003-10-20 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.h (PREDICATE_CODES): Add normal_memory_operand.
+ * config/alpha/alpha-protos.h: Remove PREDICATE_CODES prototypes.
+
+2003-10-20 Dorit Naishlos <dorit@il.ibm.com>
+
+ * config/rs6000/rs6000.h: (rs6000_sched_insert_nops):
+ support new flag -minsert-sched-nops.
+ (DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Define.
+ * config/rs6000/rs6000.c: (rs6000_sched_insert_nops):
+ support new flag -minsert-sched-nops.
+ (is_cracked_insn, is_microcoded_insn): New functions.
+ (rs6000_sched_finish): New function.
+ (rs6000_issue_rate): Return 5 for power4.
+ (get_next_active_insn, insn_terminates_group_p): New
+ functions.
+ (is_costly_group, force_new_group): New functions.
+ (redefine_groups, pad_groups): New functions.
+ (rs6000_variable_issue): Use new functions.
+ * doc/invoke.texi (-minsert-sched-nops): Document new
+ option.
+
+2003-10-20 David S. Miller <davem@redhat.com>
+
+ * config/sparc/sparc.md (type attribute): Add new insn types
+ fpa, fpm_pack, fgm_mul, fgm_pdist, and fgm_cmp for VIS.
+ (patterns emitting VIS insns): Use them.
+ * config/sparc/ultra1_2.md: Add VIS scheduling rules.
+ * config/sparc/ultra3.md: Likewise.
+
+2003-10-20 Falk Hueffner <falk@debian.org>
+
+ PR target/12654
+ * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't do
+ comparison against constant by adjusting the argument except for
+ EQ and NE.
+
+2003-10-19 Mark Mitchell <mark@codesourcery.com>
+
+ * config.gcc: Add support for arm926ejs, arm1026ejs, arm1136js,
+ arm1136jfs, and armv6j.
+ * config/arm/arm.c (FL_ARCH6J): New macro.
+ (FL_VFPV2): Likewise.
+ (all_cores): Add entries for arm926ejs, arm1026ejs, arm1136js,
+ and arm1136jfs.
+ (all_architectures): Add entry for armv6j.
+ (arm_override_options): Add entries for arm926ejs, arm1026ejs,
+ arm1136js, and arm1136jfs.
+ * config/arm/arm.h (TARGET_CPU_arm926ej_s): New macro.
+ (TARGET_CPU_arm1026ej_s): Likewise.
+ (TARGET_CPU_arm1136j_s): Likewise.
+ (TARGET_CPU_arm1136jf_s): Likewise.
+ * doc/invoke.texi: Document new ARM cores and architecture
+ variants.
+
+2003-10-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (toplev.o): Add value-prof.h dependency.
+ (value-prof.o): Add REGS_H dependency.
+ * common.opt (fprofile-values, fvpt): New.
+ * flags.h (flag_value_profile_transformations): Declare.
+ * opts.c (common_handle_option): Handle -fprofile_values and
+ -fvpt.
+ * profile.c (branch_prob): Don't remove death notes here.
+ * timevar.def (TV_VPT): New.
+ * value-prof.c: Include regs.h.
+ (insn_divmod_values_to_profile, gen_divmod_fixed_value, gen_mod_pow2,
+ gen_mod_subtract, divmod_fixed_value_transform,mod_pow2_value_transform,
+ mod_subtract_transform, value_profile_transformations): New.
+ (insn_values_to_profile): Call insn_divmod_values_to_profile.
+ (find_values_to_profile): Add dumps.
+ * value-prof.h (value_profile_transformations): Declare.
+ * toplev.c: Include value-prof.h.
+ (rest_of_handle_value_profile_transformations): New.
+ (enum dump_file_index): Add DFI_vpt.
+ (dump_file): Add vpt dump.
+ (flag_value_profile_transformations): New.
+ (lang_independent_options): Add flag_profile_values and
+ flag_value_profile_transformations.
+ (rest_of_compilation): Call
+ rest_of_handle_value_profile_transformations.
+ (process_options): Let -fvpt imply -fprofile-values.
+ * doc/invoke.texi (-fvpt): Document.
+
+2003-10-19 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (print_reg): Do not abort on certain registers.
+
+ PR optimization/12612
+ * reg-stack.c (subst_stack_regs_pat): Use st(1) for clobbers.
+ * i386.md (fpatan, fyl2x, fscale patterns and expanders): Use
+ match_scratch; avoid bogus paralles.
+
+ PR target/12674
+ * i386.c (ix86_function_regparm): Disable implicit register passing
+ conventions when profiling.
+
+2003-10-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Richard Henderson <rth@redhat.com>
+
+ PR optimization/8178
+ * config/i386/i386.md (*movsi_zero): Delete.
+ (*ffs_no_cmove): Use ix86_expand_clear to zero the third operand.
+
+2003-10-19 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (fix_operator): New.
+ (divmod_operator): Tidy.
+ (alpha_emit_xfloating_cvt): Handle UNSIGNED_FIX.
+ * config/alpha/alpha.h (FIXUNS_TRUNC_LIKE_FIX_TRUNC): Remove.
+ (PREDICATE_CODES): Update.
+ * config/alpha/alpha.md (fix_truncdfsi_ieee): Use match_operator.
+ (fix_truncdfsi_internal, fix_truncdfdi_ieee): Likewise.
+ (fix_truncsfsi_ieee, fix_truncsfsi_internal): Likewise.
+ (fix_truncsfdi_ieee): Likewise.
+ (fix_truncdfdi2, fix_truncsfdi2): Turn into define_expand.
+ (fixuns_truncdfdi2, fixuns_truncsfdi2, fixuns_trunctfdi2): New.
+ * config/alpha/alpha-protos.h: Update.
+
+2003-10-19 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (INITIALIZE_TRAMPOLINE): Simplify.
+ * config/mips/mips.c (mips_load_got): Assume Pmode == ptr_mode.
+ * config/mips/mips.md (extendsidi2, *extendsidi2): Merge. Don't accept
+ constant operands.
+
+2003-10-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/extend.texi: Fix typos.
+ * doc/invoke.texi: Likewise.
+
+2003-10-18 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/arm.c (arm_override_options): Use arm_tune_xscale for
+ XScale optimizations not arm_arch_xscale.
+ * config/arm/arm.h (CONSTANT_ALIGNMENT_FACTOR, MOVE_RATIO): Likewise.
+
+2003-10-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (shift_count_operand): Add prototype.
+ * config/s390/s390.c (shift_count_operand): New function.
+ (s390_extra_constraint): Use it to implement 'Y' constraint.
+ (print_shift_count_operand): New function.
+ (print_operand): Use it to implement '%Y'.
+ * config/s390/s390.h (EXTRA_ADDRESS_CONSTRAINT): Add 'Y' constraint.
+ (PREDICATE_CODES): Add shift_count_operand.
+ * config/s390/s390.md ("rotldi3"): Merge alternatives,
+ using "shift_count_operand" predicate and "Y" constraint,
+ and "%Y" to output the combined shift count.
+ ("rotlsi3"): Likewise.
+ ("ashldi3", "*ashldi3_31", "*ashldi3_64"): Likewise.
+ ("ashrdi3", "*ashrdi3_31", "*ashrdi3_64", "*ashrdi3_cc_31",
+ "*ashrdi3_cc_64", "*ashrdi3_cconly_31", "*ashrdi3_cconly_64"): Likewise.
+ ("ashlsi3", "ashrsi3", "*ashrsi3_cc", "*ashrsi3_cconly"): Likewise.
+ ("lshrdi3", "*lshrdi3_31", "*lshrdi3_64"): Likewise.
+ ("lshrsi3"): Likewise.
+
+2003-10-18 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (m68k_output_function_epilogue): Add missing
+ argument to asm_fprintf statement.
+
+2003-10-18 Fariborz Jahanian <fjahanian@apple.com>
+
+ * rs6000.md: Separate TARGET_POWERPC64 patterns for TARGET_64BIT or TARGET_32BIT.
+ (ashrdisi3_noppc64) Generate more efficient code for 32-bit right-shift of
+ a "long long" argument.
+
+2003-10-18 Alexandre Oliva <aoliva@redhat.com>
+
+ * final.c (final_scan_insn): Run FINAL_PRESCAN_INSNS on asm insns
+ as well.
+
+2003-10-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * rtl.h (rtl_size): Declare.
+ (rtunion): Remove rtwint.
+ (rtx_def): Replace 'fld' with a union of an rtunion or a HOST_WIDE_INT.
+ (RTX_HDR_SIZE, RTX_SIZE): New macros.
+ (RTL_CHECK1): Adjust for new rtx_def layout.
+ (RTL_CHECK2, RTL_CHECKC1, RTL_CHECKC2): Likewise.
+ (XWINT, XCWINT): Likewise. Access the rtx structure directly.
+ (X0WINT): Remove.
+ (X0ANY): New macro.
+ * rtl.def: Adjust comments for new rtx_def layout.
+ * ggc.h (ggc_alloc_rtx): Take the rtx code as argument, not the
+ number of slots.
+ * rtl.c (rtx_size): New array.
+ (rtx_alloc): Adjust call to ggc_alloc_rtx. Use RTX_HDR_SIZE.
+ (copy_rtx): Use RTX_HDR_SIZE. Adjust for new rtx_def layout.
+ (shallow_copy_rtx): Adjust call to ggc_alloc_rtx. Use RTX_SIZE.
+ * integrate.c (copy_rtx_and_substitute): Use X0ANY to copy '0' fields.
+ * emit-rtl.c (copy_most_rtx): Likewise.
+ (copy_rtx_if_shared): Use RTX_SIZE.
+ (copy_insn_1): Use RTX_HDR_SIZE. Adjust for new rtx_def layout.
+ * gengenrtl.c (gendef): Adjust ggc_alloc_rtx call. Use RTX_HDR_SIZE.
+ * gengtype.c (write_rtx_next): Use RTX_HDR_SIZE.
+ (adjust_field_rtx_def): Expect "rtx_def" to be a union rather than
+ an array. Adjust output for new rtx_def layout.
+ * ggc-page.c (RTL_SIZE): Use RTX_HDR_SIZE.
+ * reload1.c (eliminate_regs): Use RTX_SIZE.
+ * rtlanal.c (loc_mentioned_in_p): Adjust for new rtx_def layout.
+ * gdbinit.in (pi): Likewise.
+
+2003-10-18 Jan Hubicka <jh@suse.cz>
+
+ * integrate.c (copy_decl_for_inlining): Revert previous patch.
+
+2003-10-18 Jan Hubicka <jh@suse.cz>
+
+ * integrate.c (copy_decl_for_inlining): Fix copying of copies.
+
+2003-10-18 Roger Sayle <roger@eyesopen.com>
+
+ * libgcc.texi: Group multi-word types, such as "long double" and
+ "unsigned int", using braces in @deftypefn and @deftypefnx nodes.
+ Document __unord?f2 as returning a non-zero value, not just one.
+
+2003-10-18 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/t-mmix (CRTSTUFF_T_CFLAGS): Define.
+ ($(T)crti.o, $(T)crtn.o): Pass CRTSTUFF_T_CFLAGS here too.
+
+2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/i386/k6.md (k6_alux): Use the 'mode' attribute instead of
+ match_operand.
+
+2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_record_value_1): New fourth
+ parameter packed_p. Search for a DECL_PACKED field only if
+ packed_p is false. Pass packed_p recursively.
+ (function_arg_record_value_2): Likewise.
+ (function_arg_record_value): Update calls to
+ function_arg_record_value_1 and function_arg_record_value_2.
+
+2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * cse.c (cse_insn) [src_folded]: Check that the tentative replacement
+ was successfully forced to memory before using the result.
+
+2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/8178
+ * config/i386/i386.md (*movsi_zero): New insn to set
+ a register to zero on TARGET_USE_MOV0 targets.
+
+2003-10-18 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (Makefile): Depend on the all Make-lang.in fragments.
+ (POSTSTAGE1_FLAGS_TO_PASS): Pass down MAKEINFO and MAKEINFOFLAGS.
+
+2003-10-17 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/invoke.texi (gcse-las): Fix typo.
+
+2003-10-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * doc/install.texi: Remove first part of the sentence for
+ zsh not working. Change gcc to GCC.
+
+ PR bootstrap/12546
+ * doc/install.texi: Document that zsh does not work when
+ configuring gcc.
+
+2003-10-17 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config/ptx4.h: Switch to DWARF 2; update comments.
+
+2003-10-17 Segher Boessenkool <boessen@de.ibm.com>
+ Hartmut Penner <hpenner@de.ibm.com>
+
+ PR 10404, partial 11591, partial 11601
+ * config/rs6000/altivec.md ("altivec_dst", "altivec_dstt",
+ "altivec_dstst", "altivec_dststt", "altivec_lvsl", "altivec_lvsr",
+ "altivec_lvebx", "altivec_lvehx", "altivec_lvewx", "altivec_lvxl",
+ "altivec_lvx", "altivec_stvx", "altivec_stvxl", "altivec_stvebx",
+ "altivec_stvehx", "altivec_stvewx"): Use a memory_operand.
+ * config/rs6000/rs6000.c (altivec_expand_lv_builtin): New function.
+ (altivec_expand_stv_builtin): Adjust for the memory_operand.
+ (altivec_expand_builtin): Call altivec_expand_lv_builtin.
+ (altivec_init_builtins): Use `long int' for memory offsets.
+
+2003-10-17 Jan Hubicka <jh@suse.cz>
+
+ * opts.c (common_handle_option): Handle OPT_fweb
+ * invoke.texi (-fweb): Add missing parts of documentation.
+
+2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/linux.h (FUNCTION_NAME_ALREADY_DECLARED): Undef
+ before redefinition.
+
+2003-10-17 Mostafa Hagog <mustafa@il.ibm.com>
+
+ * common.opt: Add description of the new -fgcse-las flag.
+ * flags.h (flag_gcse_las): Declaration of global flag_gcse_las.
+ * gcse.c (hash_scan_set): Handle the case of store expression and
+ insert the memory expression to the hash table, this way we make it
+ possible to discover redundant loads after stores and remove them.
+ (pre_insert_copy_insn): moved the call to update_ld_motion_stores,
+ to pre_insert_copies, it is not the correct place to call it after
+ adding stores to be in the available expression hash table.
+ (pre_insert_copies): Added the call to update_ld_motion_stores when
+ one or more copies were inserted.
+ * opts.c (common_handle_option): Handle the -fgcse-las flag.
+ * toplev.c (flag_gcse_las): Initialization of flag_gcse_las.
+
+ * doc/invoke.tex: Document new -fgcse-las flag.
+
+2003-10-18 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/crtsavres.asm: Correct alignment of powerpc64 code
+ for posterity, then remove it.
+
+2003-10-17 Richard Earnshaw <rearnsha@arm.com>
+ Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/arm/arm.c (use_return_insn): Not a single instruction, if
+ there's a frame pointer.
+ (arm_output_epilogue): Protect stack pointer from being corrupted
+ on interrupt.
+
+2003-10-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * ifcvt.c (noce_try_addcc): Handle ifs with 'else' case.
+
+2003-10-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (simplify_set): Do not clear out undobuf.other_insn
+ already set elsewhere.
+
+2003-10-17 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/i386/i386.c (ix86_expand_prologue): Use
+ gen_allocate_stack_worker.
+
+2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (mips-sgi-irix6*o32): Only enable use_collect2
+ without gas.
+ (mips-sgi-irix6*): Likewise.
+
+ * config/mips/iris6gas.h: New file.
+ * gcc/config.gcc (mips-sgi-irix6*): Use it.
+
+ * config/mips/mips.h (TARGET_IRIX): Provide default.
+ (TARGET_IRIX5): Likewise.
+ (TARGET_SGI_O32_AS): Likewise.
+ * config/mips/iris5.h (TARGET_IRIX): Redefine as 1.
+ (TARGET_IRIX5): Likewise.
+ * config/mips/iris6.h (TARGET_IRIX6): Remove.
+ (TARGET_IRIX5): Redefine as 0.
+
+ * config/mips/mips.c (mips_output_external): Test for IRIX 6 O32
+ linker workaround with TARGET_IRIX and mips_abi instead of
+ ASM_OUTPUT_UNDEF_FUNCTION.
+ (mips_file_end): Inline old ASM_OUTPUT_UNDEF_FUNCTION definition,
+ testing TARGET_IRIX and mips_abi explicitly.
+ * config/mips/iris5.h (ASM_OUTPUT_UNDEF_FUNCTION): Remove.
+ * config/mips/iris6.h (ASM_OUTPUT_UNDEF_FUNCTION): Remove undef.
+
+ * config/mips/mips.c (irix_output_external_libcall): Renamed from
+ mips_output_external_libcall.
+ Use new TARGET_IRIX in guard.
+ * config/mips/mips-protos.h (irix_output_external_libcall): Match
+ this.
+ * config/mips/iris5.h (TARGET_ASM_EXTERNAL_LIBCALL): Likewise.
+
+ * config/mips/iris5gas.h (HAVE_GAS_SHF_MERGE): Update comment.
+ Define as 0.
+
+ * config/mips/iris6.h (FUNCTION_NAME_ALREADY_DECLARED): Define
+ depending on mips_abi.
+ * config/mips/linux.h (FUNCTION_NAME_ALREADY_DECLARED): Define as 1.
+ * config/mips/mips.c (mips_output_function_prologue): Test
+ FUNCTION_NAME_ALREADY_DECLARED at runtime.
+ (mips_output_function_epilogue): Likewise.
+ (build_mips16_function_stub): Likewise.
+ (build_mips16_call_stub): Likewise.
+ * config/mips/mips.h (FUNCTION_NAME_ALREADY_DECLARED): Provide
+ default.
+
+ * config/mips/iris6.h (DWARF2_UNWIND_INFO): Don't define for native
+ IRIX 6 O32 assembler.
+ (SUBTARGET_CC1_SPEC): Enforce mips2 ISA with O32 ABI.
+ (TARGET_OS_CPP_BUILTINS): Define _ABIO32, use it to define
+ _MIPS_SIM for O32 ABI.
+ (DWARF2_FRAME_INFO): Don't define for native IRIX 6 O32 assembler.
+ (ASM_DECLARE_FUNCTION_NAME): Integrate mips.h version.
+ (ASM_DECLARE_FUNCTION_SIZE): Move undef before redefinition.
+ Integrate O32 version.
+ (SUBTARGET_ASM_SPEC): Handle -mabi=32.
+ (SUBTARGET_ASM_DEBUGGING_SPEC): Add mdebug_asm_spec for gas with
+ O32 ABI.
+ (BSS_SECTION_ASM_OP_32): Define.
+ (BSS_SECTION_ASM_OP_64): Likewise.
+ (BSS_SECTION_ASM_OP): Define differently for O32 and N32/N64 ABIs
+ using them.
+ (TARGET_ASM_NAMED_SECTION): Reflect renaming.
+ Move up to allow override for O32 ABI without GNU as.
+ (EH_FRAME_SECTION_NAME): Define explicitly.
+ (MUST_USE_SJLJ_EXCEPTIONS): Define.
+ [_MIPS_SIM == _ABIO32 && !GAS] (CTORS_SECTION_ASM_OP,
+ DTORS_SECTION_ASM_OP): Dummy definitions.
+ (TARGET_ASM_NAMED_SECTION): Undef statically.
+ (EH_FRAME_SECTION_NAME): Likewise.
+ (ASM_OUTPUT_FILENAME): Integrate mips.h version.
+ (LINK_SPEC): Only use default options -call_shared -no_unresolved
+ without -r.
+ Don't pass -init, -fini with -mabi=32.
+ (COLLECT_PARSE_FLAG): Define.
+
+ * config/mips/mips.c (iris6_asm_named_section_1): Changed guard to
+ TARGET_IRIX.
+ Renamed to use irix_ prefix.
+ (iris6_asm_named_section): Likewise.
+ (iris_section_align_entry_eq): Likewise.
+ (iris_section_align_entry_hash): Likewise.
+ (iris6_file_start): Likewise.
+ (iris6_section_align_1): Likewise.
+ (iris6_file_end): Likewise.
+ (iris6_section_type_flags): Likewise.
+ (iris_section_align_htab): Likewise.
+ (iris_orig_asm_out_file): Likewise.
+ [TARGET_IRIX] (TARGET_ASM_FILE_START): Reflect rename.
+ (TARGET_ASM_FILE_END): Likewise.
+ (TARGET_SECTION_TYPE_FLAGS): Likewise.
+
+ * config/mips/mips.c [TARGET_IRIX5 && !TARGET_IRIX6]
+ (TARGET_ASM_UNALIGNED_HI_OP): Use runtime initialization in
+ override_options instead.
+ (TARGET_ASM_UNALIGNED_SI_OP): Likewise.
+ (TARGET_ASM_UNALIGNED_DI_OP): Likewise.
+ * config/mips/mips.c (override_options) [USE_COLLECT2]: Restore
+ flag_gnu_linker to defaults without USE_COLLECT2 for non-IRIX O32
+ assemblers.
+ Likewise for constructor/destructor handling.
+ (override_options): Handle IRIX O32 assembler quirks.
+ [TARGET_IRIX] (irix_asm_named_section): Handle O32 ABI with and
+ without gas.
+ (mips_file_start): Use new TARGET_IRIX.
+ (mips_declare_object_name): No special processing for IRIX O32
+ assembler.
+ (mips_finish_declare_object): Likewise.
+ (irix_asm_output_align): Renamed from iris6_asm_output_align.
+ Don't record alignment for O32 ABI.
+ (irix_file_start): Renamed from iris6_file_start.
+ Return early for O32 ABI.
+ (irix_file_end): Renamed from iris6_file_end.
+ Don't emit .section directives for O32 ABI.
+ * config/mips/iris6.h (ASM_OUTPUT_ALIGN): Reflect renaming.
+ * config/mips/mips-protos.h (irix_asm_output_align): Likewise.
+
+ * config/mips/t-iris6 (MULTILIB_OPTIONS): Add mabi=32.
+ (MULTILIB_OSDIRNAMES): Likewise.
+
+2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * collect2.c (COLLECT_PARSE_FLAG): Provide default.
+ (main): Use it.
+ * doc/tm.texi (COLLECT_PARSE_FLAG): Document it.
+
+2003-10-17 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm-modes.def (CC_Nmode): New condition code mode.
+ * arm.c (thumb_condition_code): Delete.
+ (arm_select_cc_mode): Handle single-bit test for Thumb.
+ (arm_print_operand, cases 'd' and 'D'): Don't special case the
+ condition code logic for Thumb.
+ (get_arm_condition_code): Handle CC_Nmode.
+ (thumb_cbrch_target_operand): New function.
+ * arm.h (PREDICATE_CODES): Add thumb_cbrch_target_operand.
+ * arm-protos.h (thumb_cbrch_target_operand): Add prototype.
+ * arm.md: Add Thumb split patterns for zero_extract and
+ sign_extract.
+ (tbit_cbranch, andsi3_cbranch_scratch, andsi3_cbranch)
+ (orrsi3_cbranch_scratch, orrsi3_cbranch, xorsi3_cbranch_scratch)
+ (xorsi3_cbranch, addsi3_cbranch, addsi3_cbranch_scratch)
+ (subsi3_cbranch, subsi3_cbranch_scratch): New Thumb patterns.
+ (cbranchne_decr1): Re-work to use CC_Nmode.
+
+ * arm.c (thumb_expand_epilogue): Add clobbers of registers restored
+ by the return instruction. Add a use of the link register if it
+ wasn't stored.
+
+2003-10-17 Richard Earnshaw <rearnsha@arm.com>
+
+ * flow.c (init_propagate_block_info): Don't abort if a conditional
+ jump is not a comparison of a register. Instead, just don't record
+ conditional life information.
+
+2003-10-16 Jan Hubicka <jh@suse.cz>
+
+ PR optimization/12630
+ * pa.md (movstrsi, movstrsi_internal): Use match_scratch in clobbers
+ for operands 7 and 8.
+
+2003-10-16 Kelley Cook <kcook@gcc.gnu.org>
+
+ * objc/Make-lang.in (objc-parse.o): Honor $(parsedir) for objc-parse.c.
+
+2003-10-16 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Define.
+
+ * config/i386/winnt.c (gen_stdcall_suffix): Make static
+ (gen_fastcall_suffix): Likewise.
+ (i386_pe_dllexport_p): Likewise.
+ (i386_pe_dllimport_p): Likewise.
+ (i386_pe_mark_dllexport): Likewise.
+ (i386_pe_mark_dllimport): Likewise.
+ (i386_pe_asm_named_section): Fix formatting.
+
+2003-10-16 Zack Weinberg <zack@codesourcery.com>
+
+ * configure.in: Add snprintf to gcc_AC_CHECK_DECLS list.
+ * system.h: Declare snprintf if necessary.
+ * configure, config.in: Regenerate.
+
+2003-10-15 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_va_arg): Only align vector
+ arguments if TARGET_ALTIVEC_ABI.
+
+2003-10-15 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (fold_builtin_memcpy, fold_builtin_mempcpy,
+ fold_builtin_memmove, fold_builtin_strcpy, fold_builtin_strncpy,
+ fold_builtin_memcmp, fold_builtin_strcmp, fold_builtin_strncmp):
+ New functions.
+ (expand_builtin_memcpy): Use integer_zerop instead of testing
+ host_integerp and tree_low_cst directly. Move misapplied hunk
+ for optimization wher SRC and DEST point to the same location.
+ (expand_builtin_mempcpy): From here.
+ (expand_builtin_memmove): Use integer_zerop instead of testing
+ host_integerp and tree_low_cst_directly.
+ (expand_builtin_memset): Likewise.
+ (expand_builtin_memcmp): Likewise (and for integer_onep).
+ (expand_builtin_strncmp): Likewise.
+ (fold_builtin): Call the appropriate fold_builtin_foo functions
+ to optimize memcpy, mempcpy, memmove, strcpy, strncpy, memcmp,
+ strcmp and strncmp.
+
+2003-10-15 Geoffrey Keating <geoffk@apple.com>
+
+ * config/darwin-protos.h (machopic_non_lazy_ptr_name): Delete
+ prototype. Clean up some whitespace.
+ * config/darwin.c: Use gen_rtx_FOO (...) rather than
+ gen_rtx (FOO, ...).
+ (machopic_non_lazy_ptr_name): Make static.
+ (name_needs_quotes): Allow '.' and '$' unquoted.
+ (machopic_legitimize_pic_address): Improve codegen in dynamic-no-pic
+ case.
+
+2003-10-15 Gábor Lóki <alga@rgai.hu>
+
+ * fold-const.c (tree_swap_operands_p): Disable some features
+ when optimizing for size.
+
+2003-10-15 David Daney <ddaney@avtrex.com>
+
+ * config/mips/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New
+ * config/mips/mips.h (DWARF_FRAME_REGNUM): Fixed to allow unwind
+ from leaf functions.
+ (DWARF_FRAME_RETURN_COLUMN): Ditto.
+ (SIGNAL_UNWIND_RETURN_COLUMN): New, used
+ by MD_FALLBACK_FRAME_STATE_FOR.
+ * testsuite/gcc.dg/cleanup-9.c: Added mips*-*-linux* target.
+
+2003-10-15 Zack Weinberg <zack@codesourcery.com>
+
+ * genmodes.c: Include hashtab.h.
+ (modes_by_name, hash_mode, eq_mode, struct mode_adjust)
+ (adj_bytesize, adj_alignment, adj_format, new_adjust)
+ (_ADD_ADJUST, ADJUST_BYTESIZE, ADJUST_ALIGNMENT, ADJUST_FORMAT)
+ (print_maybe_const_decl, emit_mode_adjustments): New.
+ (known_modes): Rename to modes.
+ (find_mode): Kill class argument; look up in hash table.
+ (new_mode): Insert into hash table also.
+ (new_adjust): New.
+ (reset_float_format, make_partial_integer_mode)
+ (make_vector_mode): Tweak error reporting.
+ (reset_float_format): Correct type of fourth argument.
+ (emit_insn_modes_h): Add #defines to help make mode_size,
+ mode_base_align, and real_format_for_mode conditionally const.
+ (emit_mode_size, emit_mode_base_align): Use print_maybe_const_decl.
+ (emit_real_format_for_mode): Likewise, but temporarily disabled.
+ (emit_insn_modes_c): Call emit_mode_adjustments.
+ (main): Initialize modes_by_name.
+ * Makefile.in: Update dependencies.
+ * machmode.def: Document EXPR arguments and new ADJUST_* statements.
+ * machmode.h: Use CONST_MODE_SIZE and CONST_MODE_BASE_ALIGN in
+ declarations of mode_size and mode_base_align. Declare
+ init_adjust_machine_modes.
+ * toplev.c (backend_init): Call init_adjust_machine_modes.
+
+2003-10-15 Olivier Hainque <hainque@act-europe.fr>
+
+ * genmodes.c (calc_wider_mode): Allocate enough room for all the
+ entries we'll possibly assign in the sort buffer.
+
+2003-10-15 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config.gcc (s390x-ibm-tpf*): New target.
+ * doc/install.texi: Document it.
+ * config/s390/t-tpf: New file.
+ * config/s390/tpf.h: New file.
+
+2003-10-15 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/12598
+ * config/cris/cris.md (define_split "*mov_sidesi_biap_mem"+1)
+ (define_splits "*mov_sidesi_mem"+1, "casesi"+9, +10, +11, +12):
+ Use cris_mem_op and replace_equiv_address, not gen_rtx_MEM.
+ ("call", "call_value", define_split "*mov_sidesi_mem"+19, +20)
+ (define_split "*mov_sidesi_mem"+21, +22, +23, +24, +25, +26, +27)
+ (define_split "*mov_sidesi_mem"+28, +29, +30): Use
+ replace_equiv_address, not gen_rtx_MEM.
+ * config/cris/cris.c (cris_mem_op): New match_operator function.
+ (cris_notice_update_cc): Use replace_equiv_address, not
+ gen_rtx_MEM.
+ * config/cris/cris.h (PREDICATE_CODES): Add cris_mem_op.
+
+2003-10-15 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h (MASK_SEP_DATA, TARGET_SEP_DATA,
+ MASK_ID_SHARED_LIBRARY, TARGET_ID_SHARED_LIBRARY): Move
+ definitions after the other flags.
+
+2003-10-14 Ziemowit Laski <zlaski@apple.com>
+
+ * c-parse.in (methoddef, methodproto): Call objc_add_method()
+ instead of add_method().
+ * objc/objc-act.c (objc_check_decl): Do not check for
+ constant_string_type.
+ (add_method): Rename to objc_add_method().
+ (really_start_method): Call objc_add_method() instead of
+ add_method().
+ * objc/objc-act.h (add_method): Rename to objc_add_method().
+
+2003-10-14 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_alc_comparison): Add prototype.
+ (s390_slb_comparison): Likewise.
+ * config/s390/s390.c (s390_alc_comparison, s390_slb_comparison):
+ New functions.
+ * config/s390/s390.h (PREDICATE_CODES): Add s390_alc_comparison
+ and s390_slb_comparison.
+ * config/s390/s390.md ("*adddi3_31", "*subdi3_31"): Do not use on
+ zSeries machines.
+ ("*adddi3_31z", "*subdi3_31z"): New insns.
+ ("*adddi3_alc_cc", "*adddi3_alc", "*subdi3_slb_cc", "*subdi3_slb",
+ "*addsi3_alc_cc", "*addsi3_alc", "*subsi3_slb_cc", "*subsi3_slb"):
+ New insns.
+
+2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Clean up some feedback echoes.
+ * configure: Regenerate.
+
+ * aclocal.m4: Properly quote names of macros being defined.
+
+ * config.gcc (am33_2.0-*-linux*): Use t-slibgcc-elf-ver.
+
+2003-10-14 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.c (ia64_expand_call): Force function address
+ to DImode.
+ * config/ia64/ia64.md (call_gp): Put DImode on operand 0.
+
+2003-10-14 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("muldf3", "*muldf3", "*muldf3_ibm",
+ "mulsf3", "*mulsf3", "*mulsf3_ibm"): Do not clobber CC.
+ ("divdf3", "*divdf3", "*divdf3_ibm", "divsf3", "*divsf3",
+ "*divsf3_ibm"): Likewise.
+
+2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc, config/m68hc11/t-m68hc11-gas: Replace uses of
+ target_alias with target_noncanonical.
+
+2003-10-14 Geoffrey Keating <geoffk@apple.com>
+
+ * expr.c (block_move_libcall_safe_for_call_parm): Clean up,
+ and add case for machines where outgoing register parameters
+ get stack space.
+
+ * config/darwin.c (machopic_indirect_data_reference): Use a scratch
+ register when generating indirect address.
+
+2003-10-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_addimm_operand): MODE arguemnt is unused.
+ * arm.md (cbranchne_decr1): Fix bootstrap warning.
+
+2003-10-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (alpha_pthread_gcc): New fix.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_GCC_CHECK]: New
+ testcase.
+ Fixes PR bootstrap/9330.
+
+2003-10-13 Eric Christopher <echristo@redhat.com>
+
+ * config/frv/frv.c (frv_adjust_field_align): Redo check for
+ too wide bitfields.
+ (frv_hard_regno_mode_ok): Add SPR_P and AP_FIRST.
+ * config/frv/frv.h (FUNCTION_PROFILER): Remove abort call.
+ (SBSS_SECTION_ASM_OP): Remove.
+ (EXTRA_SECTIONS): Remove in_sbss.
+ (EXTRA_SECTION_FUNCTIONS): Remove SBSS_SECTION_FUNCTION.
+ (SBSS_SECTION_FUNCTION, sbss_section): Remove.
+ (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Change sbss_section to
+ named_section.
+
+2003-10-13 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in, configure.in, config.host, mkheaders.in: Replace
+ uses of ${target_alias} for directory names (and other places which
+ won't like the empty string) with ${target_noncanonical}. Introduce
+ call early in configure.in to _GCC_TOPLEV_NONCANONICAL_TARGET so it's
+ available.
+ * configure: Regenerate.
+
+2003-10-13 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/iwmmxt.md (cond_iwmmxt_movsi_insn): New pattern.
+ * config/arm/arm.md: For splits which rely on conditional moves,
+ remove ! TARGET_IWMMXT condition.
+
+2003-10-13 David S. Miller <davem@redhat.com>
+
+ * ifcvt.c (num_removed_blocks): Rename to num_true_changes.
+ (find_cond_trap): Always increment if we emit a conditional
+ trap insn.
+
+2003-10-13 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (BUILD_RTL): Replace $(BUILD_PREFIX)insn-modes.o
+ with min-insn-modes.o.
+ (STAGESTUFF): Add min-insn-modes.c.
+ (genobjs): Add genmodes.o.
+ (print-rtl.o, print-rtl1.o): Depend on $(TM_P_H).
+ (insn-modes.o): Depend on $(TM_H) not $(GTM_H); also real.h.
+ (min-insn-modes.c, min-insn-modes.o): New rules.
+ (s-modes): Also generate min-insn-modes.c.
+ ($(BUILD_PREFIX_1)insn-modes.o): Kill.
+ * genmodes.c (struct mode_data): Add format field.
+ (blank_mode, validate_mode, complete_mode): Update to match.
+ (make_scalar_mode): Separate into make_int_mode and make_float_mode.
+ (_SCALAR_MODE): Kill.
+ (FLOAT_MODE, FRACTIONAL_FLOAT_MODE): Add format argument.
+ (emit_insn_modes_c_header): Adjust.
+ (emit_min_insn_modes_c_header, emit_real_format_for_mode)
+ (emit_min_insn_modes_c): New functions.
+ (emit_insn_modes_c): Call emit_real_format_for_mode.
+ (main): Add -m option to generate min-insn-modes.c.
+ * machmode.h: Update documentation. Add format argument to
+ all uses of FLOAT_MODE.
+ * real.c: Don't define real_format_for_mode here.
+
+ * dwarfout.c: Move default definition of PRINT_REG...
+ * defaults.h: ...here.
+ * print-rtl.c: Include tm_p.h.
+ (DEBUG_PRINT_REG, DEBUG_REGISTER_NAMES, debug_reg_names, reg_names):
+ Kill.
+ (print_rtx): Use PRINT_REG, not DEBUG_PRINT_REG. But surround
+ this entire block with #ifndef GENERATOR_FILE.
+ * regclass.c: Unconditionally define reg_names.
+ * config/mips/mips.h, config/rs6000/rs6000.h, config/sh/sh.h
+ Don't define DEBUG_REGISTER_NAMES.
+ * config/rs6000/darwin.h: Don't use DEBUG_REGISTER_NAMES in
+ redefinition of REGISTER_NAMES.
+ * config/i386/i386.h: Don't define DEBUG_PRINT_REG.
+
+ * combine.c: Change all preprocessor conditionals on
+ EXTRA_CC_MODES to use SELECT_CC_MODE instead; rearrange a bit
+ for clarity.
+ * genopinit.c: Remove mention of EXTRA_CC_MODES in comment.
+ * configure.in: Don't define EXTRA_CC_MODES.
+ * configure, config.in: Regenerate.
+ * doc/tm.texi: Remove documentation of EXTRA_CC_MODES.
+
+ * config/arc/arc.c, config/m32r/m32r.c, config/sparc/sparc.c:
+ May assume that GET_MODE_CLASS is accurate for extra CC modes
+ at all times.
+
+ * config/i860/i860.h (INIT_CUMULATIVE_ARGS): Pass correct
+ number of arguments to aggregate_value_p.
+
+ * genmodes.c (RESET_FLOAT_FORMAT, reset_float_format): New.
+ * machmode.def: Explain ARCH-modes.def. Document
+ RESET_FLOAT_FORMAT. Improve commentary on various mode
+ clusters. Do not define OI, PQI, PHI, PSI, PDI, QF, HF, TQF,
+ XF, or TF modes here. Remove backward-compatibility
+ definition of CC.
+
+ * config/alpha/alpha-modes.def: New file; define TF mode.
+ * config/arc/arm-modes.def: Define XF mode.
+ * config/c4x/c4x-modes.def: Define QF and HF modes. Unset
+ float format for SF and DF modes.
+ * config/dsp16xx/dsp16xx-modes.def: New file; define HF mode.
+ * config/i386/i386-modes.def: Define XF and TF modes.
+ * config/i960/i960-modes.def: Define TF mode.
+ * config/ia64/ia64-modes.def: Define TF and OI modes.
+ * config/m68k/m68k-modes.def: New file; define XF mode.
+ * config/mips/mips-modes.def: New file; define TF mode, reset
+ formats for SF and DF modes.
+ * config/pa/pa-modes.def: Define TF mode.
+ * config/rs6000/rs6000.c: Define TF and PSI modes.
+ * config/s390/s390-modes.def: Define OI mode.
+ * config/sh/sh-modes.def: New file; define PSI mode.
+ * config/sparc/sparc-modes.def: Define TF mode.
+ * config/vax/vax-modes.def: New file; reset formats for SF and
+ DF modes.
+
+ * config/c4x/c4x.c (c4x_override_options): No need to mess
+ with real_format_for_mode or set REAL_MODE_FORMATs.
+ (c4x_immed_int_constant): Don't apply GET_MODE_CLASS to rtx
+ variable.
+ * config/i386/i386.c (override_options): No need to set
+ REAL_MODE_FORMATs here.
+ * config/i960/i960.c (i960_initialize): Likewise.
+ * config/m68k/m68k.c (m68k_override_options): Likewise.
+ * config/ia64/ia64.c (ia64_override_options): Set REAL_MODE_FORMAT
+ for TFmode only if not the default.
+ * config/mips/mips.c (override_options): Likewise.
+ * config/vax/vax.c (override_optionms): Set REAL_MODE_FORMAT for
+ DFmode only if not the default.
+
+ * config/i370/i370.h (RET_REG): Don't consider TFmode.
+ * config/m68hc11/m68hc11.c (print_operand): Don't consider XFmode.
+ * config/dsp16xx/dsp16xx.c (hard_regno_mode_ok): #if 0 out use
+ of modes that don't appear anywhere in the machine description.
+
+ * config/arc/arc-modes.def, config/arm/arm-modes.def
+ * config/c4x/c4x-modes.def, config/frv/frv-modes.def
+ * config/i386/i386-modes.def, config/i960/i960-modes.def
+ * config/ia64/ia64-modes.def, config/mmix/mmix-modes.def
+ * config/pa/pa-modes.def, config/pdp11/pdp11-modes.def
+ * config/rs6000/rs6000-modes.def, config/s390/s390-modes.def
+ * config/sparc/sparc-modes.def: Convert to new style for
+ declaring extra CC modes.
+
+2003-10-13 Zack Weinberg <zack@codesourcery.com>
+
+ * cpplex.c (_cpp_clean_line): In the common case of a line
+ with no trigraphs and no \-newline, avoid writing to memory.
+ (_cpp_skip_block_comment): Use a local 'cur' pointer instead
+ of the buffer member. Make c an uchar to avoid unnecessary
+ sign extensions.
+
+2003-10-13 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Remove unnecessary test.
+ * configure: Regenerate.
+
+ * configure.in: Fix grammatical error. Move UWIN host error to...
+ * config.host: Here.
+ * configure: Regenerate.
+
+2003-10-13 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("*fmadddf4", "*fmsubdf4", "*fmaddsf4",
+ "*fmsubsf4"): Insns are now dependent on TARGET_FUSED_MADD instead
+ of flag_unsafe_math_optimizations.
+ * config/s390/s390.h ("MASK_NO_FUSED_MADD", "TARGET_NO_FUSED_MADD",
+ "TARGET_FUSED_MADD", "TARGET_SWITCHES"): Introduced new target flags
+ fused-madd and no-fused-madd.
+ * doc/invoke.texi: Documented the new options fused-madd and
+ no-fused-madd for S/390.
+
+2003-10-14 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Choose
+ MASK_ALIGN_NATURAL if rs6000_alignment_string not given. Don't
+ assign DEFAULT_ABI.
+ (ADJUST_FIELD_ALIGN, ROUND_TYPE_ALIGN): Update comment.
+ * config/rs6000/rs6000.c: Formatting.
+ (rs6000_parse_alignment_option): Only set rs6000_alignment_flags
+ when rs6000_alignment_string given.
+
+2003-10-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/12538
+ * config/sparc/sparc.c (MUST_SAVE_REGISTER): Delete.
+ (sparc_flat_must_save_register_p): New function to decide whether
+ a register must be saved/restored in the function prologue/epilogue.
+ (sparc_flat_compute_frame_size): Use it instead of MUST_SAVE_REGISTER.
+
+2003-10-12 Steven Bosscher <steven@gcc.gnu.org>
+
+ * config/avr/avr.c, config/avr/avr-protos.h: Convert to
+ ISO C90 function declarations and definitions.
+ * config/sh/sh.c, config/sh/sh-protos.h: Likewise.
+
+2003-10-12 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (*-*-freebsd*): Use tm_defines instead of tiny
+ config files which do the same thing.
+ * config/freebsd3.h, config/freebsd4.h, config/freebsd5.h,
+ config/freebsd6.h: Remove now unnecessary files.
+
+2003-10-12 Steven Bosscher <steven@gcc.gnu.org>
+
+ * c-common.c (c_common_truthvalue_conversion): Warn if the
+ address of a non-weak function is used as a truth value.
+
+2003-10-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (WORD_REG_USED): Use SP_REG instead of
+ a literal.
+ * config/h8300/h8300.h (REGNO_OK_FOR_BASE_P): Use MAC_REG
+ instead of a literal.
+
+2003-10-12 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * doc/extend.texi (Function Attributes): Mention the exceptional
+ path for noreturn-marked functions.
+
+2003-10-12 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_decide_inlining): Fix uninitialized variable
+ warning.
+
+2003-10-12 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/i386.c (x86_this_parameter): Fix typo.
+
+203-10-11 Jan Hubicka <jh@suse.cz>
+
+ * Makefile.in (web.o): New.
+ * web.c: New file.
+ * rtl.h (web_main): Declare.
+ * timervar.def (TV_WEB): New.
+ * toplev.c (dump_file_index, dump_file_info): Add DFI_web.
+ (rest_of_hanle_web): New.
+ (flag_web): New static variable.
+ (lang_independent_options): Add "web".
+ (rest_of_compilation): Call rest_of_handle_web.
+ * invoke.texi (-fweb): Document.
+ * common.opt (fweb): New.
+ * flags.h (flag_web): New.
+ * opts.c (decode_options): Set flag_web at -O3.
+
+ * passes.texi (web construction): Document.
+ * invoke.texi (-O3): Document that -fweb is enabled.
+
+ * regrename.c (regrename_optimize): Deal better with situation when
+ replacement failed.
+
+ * sched-ebb.c: Include params.h and profile.h
+ (schedule_ebbs): Use tracer parameters to discover superblocks
+ * Makefile.in (sched-ebb.o): Add dependencies.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (negate_mathfn_p): New function to determine whether
+ a built-in mathematical function is sign preserving, f(-x) == -f(x).
+ Add support for BUILT_IN_ASIN, BUILT_IN_ASINF and BUILT_IN_ASINL.
+ (tree_swap_operands_p): Change API to take an additional argument
+ indicating that the swapped operands evaluate in reverse order.
+ Canonicalize VAR_DECLs and PARM_DECLs last if we can, i.e. neither
+ operand side-effects or we don't care about flag_evaluation_order.
+ (reorder_operands_p): New function to check whether its safe to
+ evaluate the given operands in reverse order.
+ (negate_expr_p): We can always negate integer constants unless
+ we honor -ftrapv and the signed type would overflow. Only allow
+ -(A-B) into B-A if reorder_operands_p says that its OK. Allow
+ negation of COMPLEX_CST if both real and imaginary parts can be
+ negated. Allow negation through floating point extensions and
+ sign-preserving built-in functions.
+ (negate_expr): Move the code to negate integers from "fold" to
+ here. Always negate integer constants unless we honor -ftrapv
+ and the signed type would overflow. Always negate real constants
+ unless we honor -ftrapping-math. Only convert -(A-B) into B-A
+ if allowed by reorder_operands_p. Add support for COMPLEX_CST.
+ Optimize negation through floating point extensions and
+ sign-preserving built-in functions (as defined by negate_mathfn_p).
+ (fold): Adjust calls to tree_swap_operands_p.
+ (fold <NEGATE_EXPR>): Move the remaining negation optimizations
+ to negate_expr_p/negate_expr.
+ (fold <MINUS_EXPR>): Use reorder_operands_p to check whether we're
+ allowed to convert (-A) - B into (-B) - A.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_strcmp): Defend against the possibility
+ that gen_cmpstrsi may fail: Stabilize the argument list against
+ re-evaluation and expand the library call directly using this saved
+ argument list if a cmpstrsi sequence can't be generated.
+ (expand_builtin_strncmp): Likewise.
+
+ * config/i386/i386.md (cmpstrsi, movstrsi): Disable with -Os.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/12260
+ * simplify-rtx.c (simplify_unary_operation): Simplify all unary
+ operations through CONST nodes. Optimize (neg (plus X C)) as
+ (minus -C X) for constant values C.
+ (simplify_binary_operation): Optimize (minus (neg X) C) as
+ (minus -C X) for constant values C.
+ (simplify_plus_minus): Avoid creating (neg (const (plus X C)),
+ instead create (minus -C X).
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c (expand_expr <PLUS_EXPR>): Let expand_operands call
+ safe_from_p for us, once it chooses an evaluation order.
+ (expand_expr <MULT_EXPR>): Likewise.
+ (expand_expr <MIN_EXPR> <MAX_EXPR>): Likewise. If expand_operands
+ places the second operand in "target", swap the operands.
+ (do_store_flag): Let expand_operands call safe_from_p for us.
+
+2003-10-11 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/12544
+ * function.c (put_var_into_stack): Don't generate ADDRESSOFs
+ for DECL_NONLOCAL decls.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c: Follow spelling conventions.
+ * final.c: Likewise.
+ * optabs.c: Likewise.
+ * sched-deps.c: Likewise.
+ * sdbout.c: Likewise.
+
+Sat Oct 11 12:24:23 CEST 2003 Jan Hubicka <jh@suse.cz>
+
+ * varasm.c (notice_global_symbol): Fix handling of variables; avoid
+ re-computing of variable.
+
+2003-10-11 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_return_in_memory): Rename from
+ return_in_memory, make static, change signature to match target hook.
+ (alpha_setup_incoming_varargs): Make static, change signature to
+ match target hook, add code for vms and unicos.
+ (TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
+ TARGET_PROMOTE_PROTOTYPES, TARGET_STRUCT_VALUE_RTX,
+ TARGET_RETURN_IN_MEMORY, TARGET_SETUP_INCOMING_VARARGS,
+ TARGET_STRICT_ARGUMENT_NAMING,
+ TARGET_PRETEND_OUTGOING_VARARGS_NAMED): New.
+ * config/alpha/alpha-protos.h: Update.
+ * config/alpha/alpha.h (PROMOTE_FUNCTION_ARGS,
+ PROMOTE_FUNCTION_RETURN, RETURN_IN_MEMORY,
+ SETUP_INCOMING_VARARGS): Remove.
+ * config/alpha/unicosmk.h (SETUP_INCOMING_VARARGS): Remove.
+ * config/alpha/vms.h (SETUP_INCOMING_VARARGS): Remove.
+
+2003-10-11 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/arm.c (arm_regno_class): Handle IWMMXT_GR_REGS.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68k/lb1sf68.asm: Follow spelling conventions.
+ * config/m68k/m68k.c: Likewise.
+ * config/m68k/m68k.h: Likewise.
+ * config/m68k/m68k.md: Likewise.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_memcpy): Optimize case when the two
+ pointer arguments are the equal, non-volatile and side-effect free.
+ (expand_builtin_mempcpy): Likewise.
+ (expand_builtin_memmove): Likewise.
+ (expand_builtin_strcpy): Likewise.
+ (expand_builtin_memcmp): Likewise.
+ (expand_builtin_strcmp): Likewise.
+ (expand_builtin_strncmp): Likewise.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (apply_distributive_law): Enable "distributive" floating
+ point optimizations with -funsafe-math-optimizations.
+
+2003-10-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * genmodes.c (emit_mode_mask) Change MASK to MODE_MASK.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68k/m68k-protos.h: Remove the prototype for
+ finalize_pic.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68k/m68k.c: Fix comment typos.
+
+2003-10-11 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k-protos.h (use_return_insn): Change return type from
+ int to bool.
+ * config/m68k/m68k.c (struct m68k_frame): Add funcdef_no member.
+ (current_frame): New global var.
+ (m68k_compute_frame_layout): Cache computations in current_frame.
+ (m68k_initial_elimination_offset): Use values from current_frame
+ instead of recomputing them.
+ (use_return_insn): Likewise.
+ (m68k_output_function_prologue): Likewise.
+ (m68k_output_function_epilogue): Likewise.
+ * config/m68k/m68k.h (TARGET_CPU_CPP_PREDEFINES): Fold __PIC__ handling
+ inside the block for __pic__.
+
+2003-10-11 Peter Barada <peter@baradas.org>
+ Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c (m68k_frame): Move before protos referencing it.
+ (m68k_save_reg): Add boolean parameter `interrupt_handler'.
+ (m68k_interrupt_function_p): New function.
+ (m68k_handle_fndecl_attribute): Ditto.
+ (m68k_compute_frame_layout): Ditto.
+ (m68k_attribute_table): Define back-end specific attributes.
+ (m68k_output_function_epilogue): Emit RTE instruction for interrupt
+ functions.
+
+2003-10-11 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/t-uclinux: New target Makefile fragment.
+ * config/m68k/uclinux.h: New target macro file.
+ * config.gcc (m68k-*-uclinux): New target definition.
+
+2003-10-10 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (builtin_mathfn_code): Generalize to check whether
+ the call is to any built-in function by comparing the call's
+ argument list against the builtin decl's function type.
+
+2003-10-10 Roger Sayle <roger@eyesopen.com>
+
+ * cse.c (constant_pool_entries_regcost): New global variable to
+ hold the register cost component of constant_pool_entries_cost.
+ (fold_rtx): Calculate constant_pool_entries_regcost at the same
+ time as constant_pool_entries_cost.
+ (cse_insn): Set both src_folded_cost and src_folded_regcost from
+ constant_pool_entries_cost and constant_pool_entries_regcost.
+ (cse_main): Initialize constant_pool_entries_regcost to zero.
+
+ * optabs.c (expand_unop): Attach a REG_EQUAL note describing
+ the semantics of the sequence of bit operations used to negate
+ a floating-point value.
+ (expand_abs_nojump): Likewise attach a REG_EQUAL note describing
+ the semantics of the bit operations used to abs a floating point
+ value.
+
+2003-10-11 Bernardo Innocenti <bernie@develer.com>
+ Paul Dale <pauli@snapgear.com>
+
+ * config/m68k/lb1sf68.asm: Add __PIC__ and __ID_SHARED_LIBRARY__
+ support.
+ * config/m68k/m68k-none.h (ASM_SPEC): Pass --pcrel to assembler on
+ -fpic, -fPIC, -msep-data and -mid-shared-library.
+ * config/m68k/m68k.c (m68k_library_id_string): New global variable.
+ (override_options): Add -msep-data and -mshared-library-id support.
+ (m68k_output_function_prologue): Generate code to load A5 for
+ TARGET_ID_SHARED_LIBRARY and TARGET_SEP_DATA.
+ (m68k_output_mi_thunk): Emit indirect jump on TARGET_ID_SHARED_LIBRARY.
+ (m68k_output_pic_call): New function.
+ * gcc/config/m68k/m68k.h (TARGET_SEP_DATA): New target flag.
+ (TARGET_ID_SHARED_LIBRARY): Ditto.
+ (TARGET_SWITCHES): Add switches for -mid-shared-library and -msep-data.
+ * gcc/config/m68k/m68k.md (call): Call m68k_output_pic_call().
+ (call_value): Likewise.
+
+2003-10-10 Zack Weinberg <zack@codesourcery.com>
+
+ * gengenrtl.c (find_formats, genheader): Make i an unsigned
+ int, remove cast of NUM_RTX_CODE.
+ * machmode.h: Make the HAVE_MACHINE_MODES #ifdef encompass the
+ entire file. Remove the #ifs on GET_MODE_MASK etc and
+ GET_MODE_WIDER_MODE etc.
+
+2003-10-10 Eric Christopher <echristo@redhat.com>
+
+ * lcm.c (optimize_mode_switching): Change NORMAL_MODE
+ to MODE_ENTRY and MODE_EXIT. Add MODE_AFTER for insns
+ that set mode.
+ * config/sh/sh.h (MODE_ENTRY): New macro.
+ (MODE_EXIT): Ditto.
+ (MODE_AFTER): Ditto.
+ * config/sh/sh.md: Change for MODE_AFTER. Add
+ fp_set attribute.
+ * doc/tm.texi: Document MODE_AFTER, MODE_ENTRY, and MODE_EXIT.
+
+2003-10-10 Zack Weinberg <zack@codesourcery.com>
+
+ * genmodes.c, mode-classes.def: New files.
+ * machmode.def: Rewritten to genmodes.c interface.
+ * Makefile.in (extra_modes_file): New substitution variable.
+ (MACHMODE_H): No longer includes machmode.def or
+ @extra_modes_file@; instead, mode-classes.def and insn-modes.h.
+ (BUILD_RTL): Add $(BUILD_PREFIX)insn-modes.o.
+ (OBJS-common): Add insn-modes.o.
+ (STAGESTUFF): Add insn-modes.c, insn-modes.h, s-modes, and
+ genmodes$(build_exeext).
+ (insn-modes.o, insn-modes.c, insn-modes.h, s-modes, genmodes.o,
+ genmodes$(build_exeext), $(BUILD_PREFIX_1)insn-modes.o): New targets.
+ (s-genrtl): Don't depend on $(RTL_BASE_H).
+ (gengenrtl.o): Don't depend on coretypes.h, $(GTM_H), real.h,
+ or $(RTL_BASE_H); just rtl.def.
+ * gengenrtl.c: Don't include coretypes.h, tm.h, rtl.h, or
+ real.h. Give fake definition of CONST_DOUBLE_FORMAT and
+ substitute definition of NUM_RTX_CODE. Add casts to avoid
+ warnings.
+ * machmode.h: Include insn-modes.h, not machmode.def. Include
+ mode-classes.def to define enum mode_class. Tweak definitions
+ of GET_MODE_CLASS, GET_MODE_SIZE, GET_MODE_BITSIZE, GET_MODE_MASK,
+ GET_MODE_INNER, GET_MODE_WIDER_MODE, GET_CLASS_NARROWEST_MODE.
+ (inner_mode_array): Renamed mode_inner.
+ (mode_base_align): New.
+ * rtl.c (mode_name, mode_class, mode_bitsize, mode_size,
+ mode_unit_size, mode_wider_mode, mode_mask_array,
+ inner_mode_array, class_narrowest_mode): Delete definitions.
+ * stor-layout.c (get_mode_alignment): Use mode_base_align.
+ * real.h: Use MIN_MODE_FLOAT and MAX_MODE_FLOAT, not QFmode
+ and TFmode, in real_format_for_mode and REAL_MODE_FORMAT.
+
+ * config/ip2k/ip2k.h, config/iq2000/iq2000.h:
+ No need to define BITS_PER_UNIT.
+
+2003-10-10 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/ia64/ia64.c (ia64_vms_init_libfuncs): New function.
+ (ia64_output_function_prologue): Only write .prologue if --with-gnu-as.
+ (ia64_initialize_trampoline): If not using GAS, declare trampoline
+ as global.
+ * config/ia64/ia64.h (ASM_APP_ON, ASM_APP_OFF): Add vers for not GAS.
+ (ASM_OUTPUT_DEBUG_LABEL): Likewise.
+
+ * stor-layout.c (compute_record_mode): Don't force BLKmode if
+ field is zero-length BLKmode.
+ * expr.c (expand_expr, case COMPONENT_REF): Handle case of BLKmode
+ zero-size references.
+
+ * combine.c (distribute_links): Properly test for REG being set.
+
+ * config/alpha/alpha.c (alpha_expand_block_mode): Don't use
+ gen_lowpart and company except for REG.
+
+2003-10-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa64-hpux.h (LINK_SPEC): Use `-z' option with HP ld.
+
+2003-10-10 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (mips*-*-netbsd*): Remove content-free line.
+
+2003-10-10 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
+
+ * gcov-io.h: Check BITS_PER_UNIT when defining gcov_unsigned_t,
+ gcov_position_t and gcov_type.
+
+2003-10-09 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * configure.in (HAVE_AS_TLS): Add sh-*-* and sh[34]*-*-* cases.
+ * configure: Regenerate.
+
+2003-10-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (define_asm_attributes): Specify
+ the length of an asm insn more precisely.
+
+2003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris6.h (SUBTARGET_CPP_SPEC): Define.
+
+2003-10-09 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_dbx_register_number): Change first
+ FP register number to 48 and MAC16 accumulator to 0x210.
+
+2003-10-09 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Remove redundant thread_file setting clauses for
+ various *-*-linux* targets.
+
+2003-10-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (define_asm_attributes): New.
+
+2003-10-09 Roger Sayle <roger@eyesopen.com>
+
+ * optabs.c (prepare_float_lib_cmp): Always attach a REG_EQUAL note
+ to the comparison, as emit_libcall_block calls copy_rtx on equiv.
+
+2003-10-09 Dorit Naishlos <dorit@il.ibm.com>
+
+ * haifa-sched.c (ok_for_early_schedule): New function.
+ (early_queue_to_ready): New function.
+ (schedule_block): Allow early removal of insns from Q.
+ (schedule_insn): Update INSN_TICK in case of premature
+ issue.
+ * common.opt (sched_stalled_insns): New flag.
+ (sched_stalled_insns_dep): New flag.
+ * flags.h: Same above flags.
+ * opts.c: Same as above.
+ * toplev.c: Same as above.
+ * target.h (targetm.sched.is_costly_dependence): New
+ hook.
+ * target-def.h: Same as above.
+ * config/rs6000/rs6000.h: (rs6000_sched_costly_dep):
+ Support new flag -msched-costly-dep.
+ (DEFAULT_SCHED_COSTLY_DEP): Define.
+ * config/rs6000/rs6000.c:
+ (rs6000_is_costly_dependence): New function.
+ (is_load_insn, is_store_insn): New functions.
+ (is_load_insn1, is_store_insn1, is_mem_ref): New
+ functions.
+ * doc/invoke.texi (-fsched-stalled-insns-dep)
+ (-fsched-stalled-insns, -msched-costly-dep): Document
+ options.
+ * doc/tm.texi (is_costly_dependence): Define new
+ scheduler target hook.
+
+2003-10-09 Jason Merrill <jason@redhat.com>
+
+ PR c++/6392
+ * c-common.c (c_build_qualified_type): Look through arrays first.
+ (c_apply_type_quals_to_decl): Look through arrays.
+
+ * c-common.c (c_apply_type_quals_to_decl): Unset TREE_READONLY for
+ types with constructors.
+
+ * coverage.c (build_ctr_info_value): Use build_decl to make a
+ VAR_DECL.
+ (create_coverage): Likewise.
+
+ * stmt.c (resolve_asm_operand_names): Call check_unique_operand_names
+ here.
+ (expand_asm_operands): Not here.
+ (parse_input_constraint): No longer static.
+ * tree.h: Declare it.
+
+2003-10-08 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/t-linux (SHLIB_LINK): Override to use a linker script
+ libgcc_s.so.
+ (SHLIB_INSTALL): Likewise.
+
+2003-10-08 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * doc/install.texi: Remove reference to removed 'pthreads' thread
+ option.
+
+2003-10-08 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md ("abssi2_isel"): Add early clobber to
+ operand 2.
+
+2003-10-08 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Don't accept --enable-threads=pthreads. Clean
+ up related case statements.
+ * configure.in: Don't accept --enable-threads=pthreads,
+ decosf1, mach, or os2 (none of which work anyway). Alphabetize
+ supported thread files in case clause.
+ * configure: Regenerate.
+
+2003-10-08 Geoffrey Keating <geoffk@apple.com>
+
+ * function.c (pad_to_arg_alignment): Move 'boundary_in_bytes'
+ definition to above SPARC_STACK_BOUNDARY_HACK.
+
+2003-10-08 Jason Merrill <jason@redhat.com>
+
+ * c-pretty-print.c (pp_c_postfix_expression)
+ <COMPOUND_LITERAL_EXPR>: Fix thinko.
+
+2003-10-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * mklibgcc.in: Don't hide undefined or typeless symbols.
+
+2003-10-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR optimization/12142
+ * cse.c (count_reg_usage): In a SET with a REG SET_DEST, count the
+ uses of the register in the SET_SRC. Remove unnecessary argument.
+ * pa.c (legitimize_pic_address): Before reload, use a scratch register
+ for the intermediate result in loading the address of a SYMBOL_REF.
+ Set the MEM_NOTRAP_P flag for the MEM. Add a REG_EQUAL to the insn
+ which loads the SYMBOL_REF address.
+
+2003-10-08 Timo Kokkonen <tjko@iki.fi>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR bootstrap/12490
+ * scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant
+ to define the size of the extern_C_braces array. Set it to 200.
+ (scan_decls): Abort when extern_C_braces_length is out-of-bounds.
+
+2003-10-08 Carlo Wood <carlo@alinoe.com>
+
+ * Makefile.in (gengtype-lex.c): flex 2.5.4[a] doesn't understand
+ a space after the -o option. flex 2.5.31 understands both, with
+ and without the space. Removed that space.
+
+2003-10-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_frame_info): Add cprestore_size field.
+ (compute_frame_size): Initialize it. Remove the .cprestore slot
+ from args_size.
+ (mips_output_function_prologue): Simplify accordingly.
+ (mips_debugger_offset): Change the mips16 frame pointer offset from
+ current_function_outgoing_args to cfun->machine->frame.args_size.
+ (mips_initial_elimination_offset): Likewise.
+ (mips_expand_prologue): Likewise.
+ (mips_expand_epilogue): Likewise.
+
+2003-10-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (EXTRA_CONSTRAINT): Add 'W' constraint.
+ (EXTRA_MEMORY_CONSTRAINT): Define.
+ (CAN_ELIMINATE): Remove lwu workaround.
+ * config/mips/mips.md (*zero_extendsidi2_mem): Enable for mips16 too.
+ Use a 'W' constraint for the source operand.
+
+2003-10-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genopinit.c (main): Output code to declare undefined
+ variables.
+
+2003-10-07 Kelley Cook <kcook@gcc.gnu.org>
+
+ * gengtype-lex.l: Remove -Wtraditional cruft.
+ * Makefile.in (gengtype-lex.c): Likewise.
+
+2003-10-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgloopmanip.c (fix_irreducible_loops): Initialize e correctly.
+
+2003-10-07 Jason Merrill <jason@redhat.com>
+
+ PR c++/12519
+ * c-semantics.c (genrtl_cleanup_stmt): Ignore the CLEANUP_DECL if
+ it isn't a decl.
+
+2003-10-07 Alexandre Oliva <aoliva@redhat.com>
+
+ * gcc.c (cpp_options): Only pass -fworking-directory for -g* if
+ not overridden.
+ Fixes PR bootstrap/12173.
+
+2003-10-07 Zack Weinberg <zack@codesourcery.com>
+
+ * errors.c: Don't include coretypes.h or tm.h.
+ (trim_filename): Use IS_DIR_SEPARATOR.
+ * Makefile.in: Update dependencies of errors.o and
+ $(BUILD_PREFIX_1)errors.o.
+
+2003-10-07 Geoffrey Keating <geoffk@apple.com>
+
+ * function.c (pad_to_arg_alignment): Take STACK_POINTER_OFFSET into
+ account when aligning arguments.
+ * calls.c (STACK_POINTER_OFFSET): Move default from here ...
+ * defaults.h (STACK_POINTER_OFFSET): ... to here.
+ * config/sparc/sparc.h (STACK_BOUNDARY): Add comment about how
+ it's wrong when TARGET_ARCH64 && TARGET_STACK_BIAS.
+ (SPARC_STACK_BOUNDARY_HACK): Define.
+ * config/rs6000/rs6000.c (function_arg): On non-SVR4 systems,
+ arrange for vector parameters to varargs functions to be passed
+ in both memory and GPRs when appropriate.
+ (rs6000_va_arg): Vector arguments passed in memory are 16-byte
+ aligned.
+
+ * hooks.c (hook_bool_tree_true): New.
+ (hook_rtx_tree_int_null): New.
+ (hook_rtx_rtx_null): Use NULL, not 0.
+ * hooks.h: Add 'extern' to everything.
+ (hook_bool_tree_true): New.
+ (hook_rtx_tree_int_null): New.
+ * targhooks.c (hook_bool_CUMULATIVE_ARGS_true): New.
+ * targhooks.h (hook_bool_CUMULATIVE_ARGS_true): New.
+ * config/rs6000/rs6000-protos.h (setup_incoming_varargs): Remove
+ prototype.
+ * config/rs6000/rs6000.c (rs6000_return_in_memory): New.
+ (setup_incoming_varargs): Prototype.
+ (TARGET_PROMOTE_FUNCTION_ARGS): Define.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Define.
+ (TARGET_STRUCT_VALUE_RTX): Define.
+ (TARGET_RETURN_IN_MEMORY): Define.
+ (TARGET_SETUP_INCOMING_VARARGS): Define.
+ (TARGET_STRICT_ARGUMENT_NAMING): Define.
+ (TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Define.
+ (init_cumulative_args): Use rs6000_return_in_memory.
+ (setup_incoming_varargs): Make 'static'.
+ * config/rs6000/rs6000.h (PROMOTE_FUNCTION_ARGS): Delete.
+ (PROMOTE_FUNCTION_RETURN): Delete.
+ (STRUCT_VALUE): Delete.
+ (RETURN_IN_MEMORY): Delete.
+ (SETUP_INCOMING_VARARGS): Delete.
+
+2003-10-07 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/invoke.texi (Warning Options): Simplify and clarify the
+ descriptions of -Wnonnull and -Winit-self.
+
+2003-10-07 Richard Earnshaw <rearnsha@arm.com>
+
+ * optabs.c (init_intraclass_conv_libfuncs): Fix order of array
+ indicees for floating-point conversersion libcalls.
+
+2003-10-07 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in: Add more comments separating large conceptually
+ separate sections.
+
+ * configure.in: Clean up thread file logic.
+ * configure: Regenerate.
+
+2003-10-07 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/cygming.h (READONLY_DATA_SECTION_ASM_OP): Define.
+ (switch_to_section): Handle in_readonly_data.
+ * config/i386/winnt.c (i386_pe_asm_named_section): Handle
+ readonly data.
+
+2003-10-07 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (cmpsi2_addneg): New ARM pattern. Add peephole2 to generate
+ it.
+ (cbranchne_decr1): New Thumb pattern.
+ * arm.c (arm_addimm_operand): New insn predicate.
+ * arm-protos.h: Add a prototype for it.
+ * arm.h (PREDICATE_CODES): Add it.
+
+2003-10-07 Dorit Naishlos <dorit@il.ibm.com>
+
+ * sched-int.h (sched_info): New field
+ sched_max_insns_priority.
+ * sched-rgn.c (init_ready_list): Add invocations to
+ targetm.sched.adjust_priority.
+ (sched_max_insns_priority): Init new field.
+ * sched-ebb.c (sched_max_insns_priority): Init new field.
+ * haifa-sched.c (set_priorities): Set
+ sched_info->sched_max_insns_priority.
+ * config/rs6000/rs6000.h:
+ (rs6000_sched_restricted_insns_priority_str): Support new
+ flag -mprioritize-restricted-insns.
+ (DEFAULT_RESTRICTED_INSNS_PRIORITY): Define.
+ * config/rs6000/rs6000.c (is_dispatch_slot_restricted): New
+ function.
+ (rs6000_adjust_priority): Change priority of restricted
+ insns, using above new function and new flag.
+ * doc/invoke.texi (-mprioritize-restricted-insns): Document
+ new option.
+
+2003-10-07 Zack Weinberg <zack@codesourcery.com>
+
+ * expr.c (cmpstr_optab, cmpmem_optab): New.
+ * genopinit.c: Initialize them.
+ * optabs.h: Declare them.
+ * optabs.c (init_optabs): Clear them.
+ (prepare_cmp_insn): Use cmpstr_optab and cmpmem_optab to find
+ block memory compare insns, not conditional chains. Restructure
+ the fallback generation of a call to memcmp/bcmp for better
+ readability.
+
+2003-10-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): New macro.
+ (mips_save_restore_fn): New typedef.
+ (mips_add_large_offset_to_sp, mips_emit_frame_related_store): Remove.
+ (mips_set_frame_expr, mips_frame_set): Move above prologue code.
+ (save_restore_insns): Remove, replacing with...
+ (mips_save_restore_reg, mips_for_each_saved_reg): ...these new fns.
+ (mips_save_reg, mips_restore_reg): New function.
+ (mips_expand_prologue, mips_expand_epilogue): Rework.
+ * config/mips/mips.h (MIPS_TEMP1_REGNUM, MIPS_TEMP2_REGNUM): Remove.
+ (MIPS_PROLOGUE_TEMP_REGNUM, MIPS_EPILOGUE_TEMP_REGNUM): New macros.
+ (MIPS_PROLOGUE_TEMP, MIPS_EPILOGUE_TEMP): New macros.
+
+2003-10-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_expand_prologue): Remove unused
+ traversal of function arguments.
+
+2003-10-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Remove documentation of -mentry.
+ * config/mips/mips.c (mips_entry_string, mips_entry): Remove.
+ (override_options, mips_save_reg_p): Remove handling.
+ (compute_frame_size, mips_output_function_prologue): Likewise.
+ (mips_expand_prologue, mips_expand_epilogue): Likewise.
+ * config/mips/mips.h (mips_entry_string): Remove declaration.
+ (TARGET_OPTIONS): Remove -mentry.
+ * config/mips/mips16.S: Remove mention of -mentry.
+
+2003-10-06 Zack Weinberg <zack@codesourcery.com>
+
+ * libfuncs.h (LTI_extendsfdf2, LTI_extendsfxf2, LTI_extendsftf2)
+ (LTI_extenddfxf2, LTI_extenddftf2, LTI_truncdfsf2, LTI_truncxfsf2)
+ (LTI_trunctfsf2, LTI_truncxfdf2, LTI_trunctfdf2, LTI_floatsisf)
+ (LTI_floatdisf, LTI_floattisf, LTI_floatsidf, LTI_floatdidf)
+ (LTI_floattidf, LTI_floatsixf, LTI_floatdixf, LTI_floattixf)
+ (LTI_floatsitf, LTI_floatditf, LTI_floattitf, LTI_fixsfsi, LTI_fixsfdi)
+ (LTI_fixsfti, LTI_fixdfsi, LTI_fixdfdi, LTI_fixdfti, LTI_fixxfsi)
+ (LTI_fixxfdi, LTI_fixxfti, LTI_fixtfsi, LTI_fixtfdi, LTI_fixtfti)
+ (LTI_fixunssfsi, LTI_fixunssfdi, LTI_fixunssfti, LTI_fixunsdfsi)
+ (LTI_fixunsdfdi, LTI_fixunsdfti, LTI_fixunsxfsi, LTI_fixunsxfdi)
+ (LTI_fixunsxfti, LTI_fixunstfsi, LTI_fixunstfdi, LTI_fixunstfti)
+ (extendsfdf2_libfunc, extendsfxf2_libfunc, extendsftf2_libfunc)
+ (extenddfxf2_libfunc, extenddftf2_libfunc, truncdfsf2_libfunc)
+ (truncxfsf2_libfunc, trunctfsf2_libfunc, truncxfdf2_libfunc)
+ (trunctfdf2_libfunc, floatsisf_libfunc, floatdisf_libfunc)
+ (floattisf_libfunc, floatsidf_libfunc, floatdidf_libfunc)
+ (floattidf_libfunc, floatsixf_libfunc, floatdixf_libfunc)
+ (floattixf_libfunc, floatsitf_libfunc, floatditf_libfunc)
+ (floattitf_libfunc, fixsfsi_libfunc, fixsfdi_libfunc, fixsfti_libfunc)
+ (fixdfsi_libfunc, fixdfdi_libfunc, fixdfti_libfunc, fixxfsi_libfunc)
+ (fixxfdi_libfunc, fixxfti_libfunc, fixtfsi_libfunc, fixtfdi_libfunc)
+ (fixtfti_libfunc, fixunssfsi_libfunc, fixunssfdi_libfunc)
+ (fixunssfti_libfunc, fixunsdfsi_libfunc, fixunsdfdi_libfunc)
+ (fixunsdfti_libfunc, fixunsxfsi_libfunc, fixunsxfdi_libfunc)
+ (fixunsxfti_libfunc, fixunstfsi_libfunc, fixunstfdi_libfunc)
+ (fixunstfti_libfunc): Delete.
+ * optabs.h (struct optab_handlers): Break out of struct optab.
+ (struct convert_optab, convert_optab, enum convert_optab_index,
+ convert_optab_table, sext_optab, zext_optab, trunc_optab,
+ sfix_optab, ufix_optab, sfixtrunc_optab, ufixtrunc_optab,
+ sfloat_optab, ufloat_optab): New.
+ (set_conv_libfunc): Prototype.
+ (GEN_FCN): Use C90 indirect call syntax, remove unnecessary cast.
+ (trunc_optab): Renamed btrunc_optab.
+ * builtins.c (expand_builtin_mathfn): Update to match.
+ * optabs.c (extendtab, fixtab, fixtrunctab, floattab): Delete.
+ (convert_optab_table, new_convert_optab, init_convert_optab)
+ (init_interclass_conv_libfuncs, init_intraclass_conv_libfuncs)
+ (set_conv_libfunc): New.
+ (can_extend_p, gen_extend_insn, can_fix_p, can_float_p)
+ (expand_float, expand_fix): Use new conversion optabs,
+ not old insn code tables or long chains of ifs.
+ (init_optabs): No need to clear old insn code tables.
+ Initialize the new optabs, not the old libfunc array entries.
+ Don't handle FIXUNS_TRUNC_LIKE_FIX_TRUNC here.
+ * genopinit.c: Initialize conversion optabs, not the
+ former insn code tables. Remove unnecessary casts.
+ Handle FIXUNS_TRUNC_LIKE_FIX_TRUNC here.
+ * expr.c (convert_move): Remove redundant check that
+ to_real==from_real. Use the conversion optabs instead
+ of long chains of tests of modes. Move partial-integer-mode
+ interconversion above all integer conversion. Do not recurse
+ on a value forced into a register in the original mode.
+
+ * config/gofast.h, config/frv/frv.c, config/ia64/ia64.c
+ * config/mips/mips.c, config/pa/pa.c, config/rs6000/rs6000.c
+ * config/sparc/sparc.c: Use set_conv_libfunc to adjust entries
+ in new conversion optabs; do not reference the old libfunc
+ array entries. No need to include libfuncs.h.
+
+2003-10-06 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.c (ix86_expand_setcc): Annotate the floating
+ point comparison sequence with a REG_EQUAL note that describes
+ the comparison's semantics.
+
+2003-10-06 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c (expand_expr <COND_EXPR>): Handle the void type semantics
+ of COND_EXPR when expanding the "A op 0 ? FOO : A" optimizations.
+
+2003-10-06 Roger Sayle <roger@eyesopen.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * optabs.c (prepare_float_lib_cmp): Avoid searching for REG_RETVAL
+ instruction by using LCT_CONST and then calling emit_libcall_block
+ ourselves.
+
+2003-10-06 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
+
+ PR optimization/11974
+ * optabs.c (expand_unop): Promote libcall outmode according to
+ hard_libcall_value.
+
+2003-10-06 Zack Weinberg <zack@codesourcery.com>
+
+ * real.h (REAL_MODE_FORMAT): New macro.
+ * c-cppbuiltin.c, optabs.c, real.c, config/alpha/alpha.c
+ * config/c4x/c4x.c, config/i370/i370.c, config/i386/freebsd.h
+ * config/i386/i386.c, config/i960/i960.c, config/ia64/ia64.c
+ * config/m68k/m68k.c, config/mips/mips.c, config/rs6000/rs6000.c
+ * config/vax/vax.c: Use REAL_MODE_FORMAT instead of referring
+ directly to real_format_for_mode array, wherever possible.
+
+2003-10-06 Devang Patel <dpatel@apple.com>
+
+ * dwarf2out.c (is_main_source): Remove variable.
+ (dwarf2out_start_source_file): Do not check is_main_source.
+ Do not reset is_main_source.
+ (dwarf2out_init): Do not initialize is_main_source.
+
+2003-10-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (stdio_va_list): Removed _ap fix.
+ (irix_stdio_va_list): Don't require leading printf, IRIX 6.5.21
+ introduced some multi-line prototypes.
+ * fixinc/fixincl.x: Regenerate.
+
+2003-10-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (PREDICATE_CODES): Add stack_operand.
+ * config/mips/mips.c (stack_operand): New predicate.
+ * config/mips/mips.md: Use it for the destination of mips16 insns
+ that store $31.
+
+2003-10-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (*lowsi): Renamed from lowsi.
+ (*lowdi): Likewise lowdi.
+ (*lowsi_mips16, *lowdi_mips16): New patterns.
+ * config/mips/mips.c (mips_const_insns, mips_output_move): Remove
+ mips16 CONSTANT_RELOC handling.
+ (mips_delegitimize_address): Adjust for new sdata representation.
+
+2003-10-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_arg_info): If MUST_PASS_IN_STACK,
+ skip any remaining register arguments.
+
+2003-10-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * reload.c (find_reloads_subreg_address): Use correct offset for
+ paradoxical MEM subregs on big-endian targets.
+
+2003-10-06 Andrew Haley <aph@redhat.com>
+
+ * tree.c (get_callee_fndecl): Call
+ lang_hooks.lang_get_callee_fndecl.
+ * langhooks-def.h (LANG_HOOKS_GET_CALLEE_FNDECL): New.
+ (lhd_get_callee_fndecl): New.
+
+2003-10-06 Andrew Pinski <apinski@apple.com>
+
+ * config/darwin.c (machopic_non_lazy_ptr_name): Fix off by one
+ error in calculating the length of the string.
+ (machopic_stub_name): Likewise.
+
+2003-10-06 Roger Sayle <roger@eyesopen.com>
+
+ * optabs.c (prepare_float_lib_cmp): Attach a REG_EQUAL note
+ describing the return value of the comparison libcall to the
+ REG_RETVAL instruction of the emitted sequence.
+
+2003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/12215
+ * cse.c (cse_set_around_loop): Emit the move at the beginning
+ of the next basic block for trapping sets.
+
+2003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11637
+ * combine.c (adjust_for_new_dest): New function to adjust the
+ notes and LOG_LINKS when the dest of an insn has changed.
+ (try_combine): Use it when deleting the first insn of a two-insn
+ parallel or splitting a two-load parallel.
+
+2003-10-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_classify_constant): Only allow UNSPECs
+ if TARGET_EXPLICIT_RELOCS.
+
+2003-10-06 Mark Mitchell <mark@codesourcery.com>
+
+ PR bootstrap/12512
+ * Makefile.in (info): Use double-colon rules.
+ (dvi): Likewise.
+ (generated-manpages): Likewise.
+ * configure.in: Do not create lang.info, lang.dvi, or
+ lang.generated-manpages hooks.
+ * configure: Regenerated.
+ * objc/Make-lang.in (objc.info): Remove.
+ (objc.dvi): Remove.
+ (objc.generated-manpages): Remove.
+ * doc/sourcebuild.texi: Update description of info, dvi, and
+ generated-manpages hooks.
+
+2003-10-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Merge mips16 lw/srl pattern with its splitter.
+
+2003-10-05 Andrew Pinski <apinski@apple.com>
+
+ * config/darwin.c (machopic_non_lazy_ptr_name): Fix off by one
+ errors in memcpy destinations.
+ (machopic_stub_name): Likewise.
+
+2003-10-05 Andrew Pinski <apinski@apple.com>
+
+ * config/darwin.c (machopic_non_lazy_ptr_name):
+ Change strcat to memcpy and add length together.
+ (machopic_stub_name): Likewise.
+
+2003-10-05 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Handle new
+ signal trampoline codes.
+
+2003-10-05 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md (*divsf3): Move description of
+ SB-1 F2 erratum from here to...
+ (divsf3): Here. Disable if TARGET_FIX_SB1 is set and
+ flag_unsafe_math_optimizations is not.
+
+2003-10-05 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/linuxspe.h: Define TARGET_SPE_ABI, TARGET_SPE,
+ TARGET_E500, TARGET_ISEL, and TARGET_FPRS.
+
+2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-pretty-print.c: Fix comment typos.
+ * c-pretty-print.h: Likewise.
+ * calls.c: Likewise.
+ * cfgloopmanip.c: Likewise.
+ * cgraphunit.c: Likewise.
+ * cppfiles.c: Likewise.
+ * final.c: Likewise.
+ * function.c: Likewise.
+ * gcov-io.h: Likewise.
+ * gcse.c: Likewise.
+ * genoutput.c: Likewise.
+ * loop.c: Likewise.
+ * postreload.c: Likewise.
+ * reg-stack.c: Likewise.
+ * regmove.c: Likewise.
+ * sched-int.h: Likewise.
+ * sched-rgn.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * tree-inline.c: Likewise.
+ * config/m68hc11/m68hc11.h: Likewise.
+ * config/mmix/mmix.c: Likewise.
+ * config/mn10300/mn10300.md: Likewise.
+ * config/sh/sh.h: Likewise.
+
+2003-10-05 Richard Henderson <rth@redhat.com>
+
+ * tree-inline.c (remap_type): New.
+ (remap_decl): Use it. Remap DECL_SIZE*.
+ (copy_body_r): Use it.
+ (walk_tree): Walk TREE_TYPE too.
+ (copy_tree_r): Don't walk subtrees of types.
+ * tree.c (variably_modified_type_p): Restructure. Consider integer
+ types with non-const bounds variably modified.
+
+2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Fix typos.
+
+2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c: Follow spelling conventions.
+ * function.c: Likewise.
+ * config/c4x/c4x.h: Likewise.
+ * config/c4x/c4x.md: Likewise.
+ * config/frv/frv.md: Likewise.
+ * config/rs6000/aix.h: Likewise.
+ * config/rs6000/linux64.h: Likewise.
+ * config/xtensa/xtensa.c: Likewise.
+
+2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-pretty-print.c: Fix comment formatting.
+ * cfglayout.c: Likewise.
+ * cfgloopanal.c: Likewise.
+ * cppcharset.c: Likewise.
+ * dbxout.c: Likewise.
+ * ggc-page.c: Likewise.
+ * ggc.h: Likewise.
+ * target.h: Likewise.
+
+2003-10-04 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * gengtype-lex.l: Recognize typedef of functions without PARAMS macro.
+
+2003-10-04 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config/v850/v850-c.c, config/v850/v850-protos.h, config/v850/v850.c:
+ Convert to ISO C90 function declarations and definitions.
+
+2003-10-04 Zack Weinberg <zack@codesourcery.com>
+
+ * libfuncs.h
+ (LTI_eqhf2, LTI_nehf2, LTI_gthf2, LTI_gehf2, LTI_lthf2)
+ (LTI_lehf2, LTI_unordhf2, LTI_eqsf2, LTI_nesf2, LTI_gtsf2)
+ (LTI_gesf2, LTI_ltsf2, LTI_lesf2, LTI_unordsf2, LTI_eqdf2)
+ (LTI_nedf2, LTI_gtdf2, LTI_gedf2, LTI_ltdf2, LTI_ledf2)
+ (LTI_unorddf2, LTI_eqxf2, LTI_nexf2, LTI_gtxf2, LTI_gexf2)
+ (LTI_ltxf2, LTI_lexf2, LTI_unordxf2, LTI_eqtf2, LTI_netf2)
+ (LTI_gttf2, LTI_getf2, LTI_lttf2, LTI_letf2, LTI_unordtf2)
+ (eqhf2_libfunc, nehf2_libfunc, gthf2_libfunc, gehf2_libfunc)
+ (lthf2_libfunc, lehf2_libfunc, unordhf2_libfunc, eqsf2_libfunc)
+ (nesf2_libfunc, gtsf2_libfunc, gesf2_libfunc, ltsf2_libfunc)
+ (lesf2_libfunc, unordsf2_libfunc eqdf2_libfunc, nedf2_libfunc)
+ (gtdf2_libfunc, gedf2_libfunc, ltdf2_libfunc, ledf2_libfunc)
+ (unorddf2_libfunc eqxf2_libfunc, nexf2_libfunc, gtxf2_libfunc)
+ (gexf2_libfunc, ltxf2_libfunc, lexf2_libfunc, unordxf2_libfunc
+ (eqtf2_libfunc, netf2_libfunc, gttf2_libfunc, getf2_libfunc)
+ (lttf2_libfunc, letf2_libfunc, unordtf2_libfunc):
+ Delete.
+ * optabs.h (OTI_eq, OTI_ne, OTI_gt, OTI_ge, OTI_lt, OTI_le)
+ (OTI_unord, eq_optab, ne_optab, gt_optab, ge_optab, lt_optab)
+ (le_optab, unord_optab): New.
+
+ * optabs.c (prepare_float_lib_cmp): Rewrite. Get the libfuncs
+ from the code_to_optab table, not a giant switch; use
+ swap_condition; do widening only if a comparison function that
+ we can call exists in a wider mode, not if a cmp_optab insn or
+ libfunc exists in a wider mode; call protect_from_queue
+ exactly once on each operand.
+ (init_optabs): Initialize the new optabs, not the deleted libfuncs.
+
+ * config/gofast.h, config/ia64/ia64.c, config/mips/mips.c
+ * config/pa/pa.c, config/rs6000/rs6000.c, config/sparc/sparc.c:
+ Set floating point comparison libfuncs using set_optab_libfunc
+ on the appropriate optab.
+
+ * config/ia64/ia64.c (ia64_hpux_init_libfuncs): Fix typo.
+ * config/rs6000/rs6000.c (rs6000_init_libfuncs): Correct ABI
+ selector conditionals.
+
+2003-10-04 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/t-m68hc11-gas (MULTILIB_MATCHES): m68hcs12 is
+ identical to m68hc12 as far as libraries are concerned.
+
+2003-10-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/12446
+ * c-typeck.c (convert_for_assignment): Issue an error for
+ array to pointer assignment after default conversion.
+ (digest_init): Likewise.
+
+2003-10-04 Fariborz Jahanian <fjahanian@apple.com>
+
+ * c-decl.c (duplicate_decls): retain DECL_COMMON of old declaration
+
+2003-10-03 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/extend.texi (Function Attributes): Fix title of GNU C
+ Preprocessor manual.
+ (C++ Extensions): Fix reference to "Predefined Macros" in the
+ GNU C Preprocessor manual.
+
+2003-10-04 Richard Earnshaw <reanrsha@arm.com>
+
+ * doc/extend.texi: Document how GCC estimates and relies on the size
+ of an asm.
+
+2003-10-04 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_pad_arg_upward): Pad floating-point
+ arguments downward for big-endian o64.
+
+2003-10-03 Robert Bowdidge <bowdidge@apple.com>
+
+ * ggc-page.c (ggc_pch_write_object): Replace fseek() with fwrite() in
+ PCH generation, avoiding too-frequent flushes when writing to NFS
+ file system.
+
+2003-10-03 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (lookup_category): Mark as 'inline'.
+
+2003-10-03 Alexander Malmberg <alexander@malmberg.org>
+ Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (add_method_to_hash_list, lookup_category):
+ New functions.
+ (lookup_method_in_hash_lists): New parameter indicating whether
+ we are messaging 'Class' or 'id'.
+ (check_duplicates): Likewise; do not assume all methods will
+ be either class or instance methods.
+ (generate_category, finish_class): Use lookup_category().
+ (add_method): Use add_method_to_hash_list(); insert instance
+ methods of root classes into the global class method hash table.
+ (add_category): Use lookup_category(); avoid constructing
+ duplicate categories.
+ (really_start_method): Add method to corresponding @interface,
+ if not already there (and if the @interface exists).
+ (finish_message_expr, finish_objc): Adjust calls to
+ check_duplicates().
+
+2003-10-03 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/9325, PR java/6391
+ * fold-const.c (fold_convert): For floating point to integer
+ conversions, return the maximum/minimum representable integer
+ value if the real constant overflows the destination type.
+ * tree.c (real_value_from_int_cst): Allow the type to be NULL,
+ meaning don't truncate the result to a floating point mode.
+ Simplify the logic by calling real_from_integer directly.
+ * simplify-rtx.c (simplify_unary_operation): Implement the
+ same semantics for folding floating point to integer conversions
+ in RTL.
+
+2003-10-03 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.c (mips_emit_prefetch): Restructure
+ to avoid use of arrays, handle indexed prefetch.
+ * config/mips/mips.h (ISA_HAS_FP4, ISA_HAS_PREFETCH): Update comments.
+ (ISA_HAS_PREFETCHX): New deffine.
+ * config/mips/mips.md ("type" attr): Add new "prefetchx" value,
+ update comments.
+ (prefetch_indexed_di, prefetch_indexed_si): New insns.
+
+2003-10-03 Jeff Sturm <jsturm@one-point.com>
+ Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/12289
+ * calls.c (emit_call_1): Pretend to have popped the arguments
+ to noreturn and longjmp functions instead of ignoring them.
+ (expand_call): Don't adjust stack_pointer_dela while
+ inhibit_defer_pop is set.
+
+2003-10-03 Andreas Schwab <schwab@suse.de>
+
+ PR bootstrap/12276
+ * configure.in: Check for libunwind on the host only if building
+ a native compiler.
+ * configure: Regenerated.
+
+2003-10-03 Paolo Carlini <pcarlini@unitus.it>
+
+ * unwind-pe.h (read_encoded_value_with_base): Constify u and
+ its inizialization cast.
+
+2003-10-03 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/12485
+ * config/mips/mips.c (mips_load_got): GOT accesses can't trap.
+
+2003-10-02 Mark Mitchell <mark@codesourcery.com>
+
+ PR optimization/12180
+ * tree-inline.c (inline_forbidden_p_1): Do not permit inlining of
+ functions containing calls to __builtin_next_arg.
+
+2003-10-02 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.c (mips_emit_prefetch): Use operand 3
+ in instructions being output.
+ * config/mips/mips.md (prefetch_si_address): Change third
+ operand's constraint letter to 'I'.
+ (prefetch_di_address): Likewise.
+ (prefetch_si, prefetch_di): Set third operand to const0_rtx.
+
+2003-10-02 Zack Weinberg <zack@codesourcery.com>
+
+ * system.h: Poison macros obsoleted by earlier patch.
+ * config/cris/cris.c: C90-ify a function definition.
+
+2003-10-02 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/12292
+ * combine.c (make_field_assignment): Check whether rtx's code
+ is CONST_INT before using INTVAL.
+
+2003-10-02 Josef Zlomek <zlomekj@suse.cz>
+
+ * cgraph.c (cgraph_node): Use INSERT instead of 1 in
+ htab_find_slot_with_hash.
+ (cgraph_node_for_identifier): Use NO_INSERT.
+ (cgraph_remove_node): Use NO_INSERT.
+ (cgraph_varpool_node): Use INSERT.
+ (cgraph_varpool_node_for_identifier): Use NO_INSERT.
+
+2003-10-02 Josef Zlomek <zlomekj@suse.cz>
+
+ Waldek Hebisch <hebisch@math.uni.wroc.pl>
+ PR/12072
+ * varasm.c (compare_constant): Fix thinko.
+
+2003-10-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/frv/frv.c (frv_issue_rate): New function.
+ (frv_pack_insns): Use it.
+ (TARGET_SCHED_ISSUE_RATE): Define.
+
+2003-10-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
+
+ * config/mcore/mcore.c: Convert to ISO C90 function declarations
+ and definitions.
+ * config/mcore/mcore.h: Likewise.
+ * config/mcore/mcore-protos.h: Likewise.
+
+2003-10-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/frv/frv.c (frv_use_dfa_pipeline_interface): New function.
+ (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define.
+
+2003-10-01 Per Bothner <pbothner@apple.com>
+
+ * c-lex.c (src_line): Remove unneeded static variable.
+ (cb_line_change): Set input_line directly, instead of src_line.
+ (get_non_padding_token): We no longer need to compensate for the
+ "horrible things" the C++ front-end does with the current line number,
+
+ * cpplib.c (_cpp_pop_buffer): Do generate a _cpp_do_file_change
+ callback even when popping the main file.
+ * c-lex.c (fe_file_change): Handle a NULL new_map.
+ * fix-header.c (cb_file_change): Likewise.
+ * c-ppoutput.c (pp_file_change): Likewise.
+
+ * cppinit.c (cpp_read_main_file): Split into two functions:
+ Distribute _cpp_stack_file call over the two functions.
+ (cpp_find_main_file): New function.
+ Don't call _cpp_do_file_change even if working_directory flag set.
+ (cpp_push_main_file): New function.
+ * cppfiles.c (_cpp_find_failed): New helper function.
+ (find_file): Made non-static and renamed to _cpp_find_file.
+ (_cpp_stack_file): No longer needed. But note the following.
+ (stack_file): Made non-static and renamed to _cpp_stack_file.
+ * fix-header.c (cpp_read_main_file): Replace cpp_read_main_file
+ call with calls to cpp_find_main_file and cpp_push_main_file.
+ (search_path_head): If there is no current buffer, use main_file.
+ * cpphash.h: Update function declarations.
+ * cpplib.h: Update function declarations.
+
+ * c-opts.c (c_common_post_options): Don't call cpp_find_main_file yet.
+ (c_common_parse_file): No longer need to call cpp_read_main_file
+ when file_index > 0 (as in multi-file or server compiation).
+ (finish_options): Change to <built-in> is an LC_ENTER, not LC_RENAME
+ as this now happens before cpp_push_main_file.
+ (push_command_line_include): When done with options, pass LC_LEAVE
+ instead of LC_RENAME to cpp_change_file and finally cpp_push_main_file.
+ (fe_file_change): Handle NULL new_map, and simplify.
+ * cpplex.c (_cpp_get_fresh_line): Revert my no-longer-needed
+ 08-28 change, since we're never called with a NULL buffer.
+ (_cpp_lex_direct): Likewise.
+ * cpptrad.c (_cpp_read_logical_line_trad): Likewise.
+ Return false if buffer is NULL at end.
+
+ * cpplex.c (_cpp_get_fresh_line): Return value now just depends on
+ whether pfile->buffer is NULL after pop, ignoring return_at_eof.
+ * cpphash.h (struct cpp_buffer): Remove unused return_at_eof field.
+ * cpplib.c (cpp_push_buffer): Since we no longer set return_at_eof,
+ remove the unused return_at_eof parameter.
+ * cppfiles.c, cpplib.c, cppmacro.c, cpppch.c, fix-header.c:
+ Update callers of cpp_push_buffer.
+
+2003-10-01 Zack Weinberg <zack@codesourcery.com>
+
+ * target.h (init_libfuncs): New hook.
+ * target-def.h: Default TARGET_INIT_BUILTINS and
+ TARGET_INIT_LIBFUNCS to hook_void_void. Add
+ TARGET_INIT_LIBFUNCS to TARGET_INITIALIZER.
+ * builtins.c (default_init_builtins): Delete.
+ * expr.h (default_init_builtins): Delete prototype.
+ * doc/tm.texi: Document TARGET_INIT_LIBFUNCS and US_SOFTWARE_GOFAST.
+ Tweak documentation of TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL.
+ Remove documentation of INIT_TARGET_OPTABS, MULSI3_LIBCALL,
+ DIVSI3_LIBCALL, UDIVSI3_LIBCALL, MODSI3_LIBCALL, UMODSI3_LIBCALL,
+ MULDI3_LIBCALL, DIVDI3_LIBCALL, UDIVDI3_LIBCALL, MODDI3_LIBCALL,
+ and UMODDI3_LIBCALL,
+
+ * Makefile.in (optabs.o): Depends on target.h.
+ * defaults.h: Provide default for FLOAT_LIB_COMPARE_RETURNS_BOOL.
+ * optabs.c: Include target.h.
+ (prepare_float_lib_cmp): No need for #ifdef around use of
+ FLOAT_LIB_COMPARE_RETURNS_BOOL.
+ (set_optab_libfunc): New function.
+ (init_optabs): Delete use of all *_LIBCALL defines.
+ Call targetm.init_libfuncs not INIT_TARGET_OPTABS.
+ * optabs.h: Prototype set_optab_libfunc.
+
+ * config.gcc: Remove all references to pa/long_double.h,
+ ia64/hpux_longdouble.h, and gofast.h.
+ (mips-*-*): When --enable-gofast, just add US_SOFTWARE_GOFAST
+ to tm_defines; don't set INIT_SUBTARGET_OPTABS or change tm_file.
+
+ * config/alpha/alpha.c, config/c4x/c4x.c, config/cris/cris.c
+ * config/frv/frv.c, config/h8300/h8300.c, config/i860/i860.c
+ * config/ia64/ia64.c, config/ip2k/ip2k.c, config/m68hc11/m68hc11.c
+ * config/mips/mips.c, config/pa/pa.c, config/rs6000/rs6000.c
+ * config/sparc/sparc.c, config/vax/vax.c:
+ Provide a definition for TARGET_INIT_LIBFUNCS. Where
+ necessary, include optabs.h, libfuncs.h, and/or config/gofast.h.
+
+ * config/alpha/unicosmk.h, config/alpha/vms.h, config/c4x/c4x.h
+ * config/avr/avr.h, config/cris/cris.h, config/frv/frv.h
+ * config/h8300/h8300.h, config/i860/i860.h, config/ip2k/ip2k.h
+ * config/iq2000/iq2000.h, config/m68hc11/m68hc11.h, config/mips/mips.h
+ * config/rs6000/aix.h, config/rs6000/sysv4.h, config/sparc/elf.h
+ * config/sparc/lite.h, config/sparc/netbsd-elf.h, config/sparc/sol2.h
+ * config/sparc/sparc.h, config/v850/v850.h, config/vax/vax.h
+ * config/vax/elf.h: Don't define or use INIT_TARGET_OPTABS,
+ INIT_SUBTARGET_OPTABS, or any *_LIBCALL macros.
+
+ * config/ia64/hpux.h: Redefine INTEL_EXTENDED_IEEE_FORMAT to 0.
+ Set TARGET_INIT_LIBFUNCS and FLOAT_LIB_COMPARE_RETURNS_BOOL here.
+ * config/pa/pa-hpux.h: Define LONG_DOUBLE_TYPE_SIZE,
+ HPUX_LONG_DOUBLE_LIBRARY, and FLOAT_LIB_COMPARE_RETURNS_BOOL here.
+ * config/ia64/hpux_longdouble.h, config/pa/long_double.h: Delete.
+
+ * config/rs6000/xcoff.h: Don't define RS6000_ITRUNC nor RS6000_UITRUNC.
+ * config/sparc/sparc.h: Default SUN_CONVERSION_LIBFUNCS and
+ SUN_INTEGER_MULTIPLY_64 to 0.
+ * config/sparc/sol2.h: Redefine SUN_CONVERSION_LIBFUNCS and
+ SUN_INTEGER_MULTIPLY_64 to 1.
+ * config/sparc/elf.h: Redefine SUN_CONVERSION_LIBFUNCS and
+ SUN_INTEGER_MULTIPLY_64 to 0.
+ * config/sparc/lite.h, config/sparc/liteelf.h, config/sparc/sp86x-elf.h:
+ Define US_SOFTWARE_GOFAST.
+ * config/vax/vax.h: Default TARGET_ELF to 0.
+ * config/vax/elf.h: Redefine TARGET_ELF to 1.
+
+ * config/gofast.h: Don't define any macros here. Provide one
+ static function, gofast_maybe_init_libfuncs, which does what
+ INIT_GOFAST_LIBFUNCS used to do but only if US_SOFTWARE_GOFAST
+ is already defined. Do not clear negation libfuncs. Do
+ not mess with HFmode, XFmode, or TFmode libfuncs.
+
+ * config/avr/avr.c (avr_init_once): #if 0 out; mark FIXME.
+
+2003-10-01 Kelley Cook <kelleycook@wideopenwest.com>
+
+ PR C/12466
+ * c-parse.in (parmlist_2): Mark declaration with an ellipsis as ISO C.
+
+2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/xm-iris5.h: Remove, unnecessary.
+ * config.build (mips-sgi-irix5*): Remove.
+ (mips-sgi-irix6*o32): Likewise.
+ * config.gcc (mips-sgi-irix6*o32): Remove xm_file.
+ (mips-sgi-irix5cross64): Likewise.
+ (mips-sgi-irix5*): Likewise.
+ * config.host (mips-sgi-irix5*): Remove.
+ (mips-sgi-irix6*o32): Likewise.
+
+2003-10-01 Zack Weinberg <zack@codesourcery.com>
+
+ * dbxout.c (dbxout_fptype_value): Delete.
+ (dbxout_type): Emit R3 for all COMPLEX_TYPEs.
+
+2003-10-01 Alexandre Oliva <aoliva@redhat.com>
+
+ * output.h (compute_reloc_for_constant): Declare.
+ * varasm.c (compute_reloc_for_constant): Extract from...
+ (output_addressed_constants): ... here. Adjust all callers.
+
+2003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * aclocal.m4: Add hpux10* and hpux11.00 to /dev/zero blacklist.
+ * configure: Rebuilt.
+
+2003-10-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * fold-const.c (make_range): When handling unsigned, don't reverse
+ range if high bound is zero.
+
+2003-09-30 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/frv/frv.h (PREDICATE_CODES): Added
+ condexec_si_media_operator, condexec_sf_add_operator and
+ condexec_sf_conv_operator. Removed condexec_sf_binary_operator
+ and condexec_sf_unary_operator.
+
+2003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * aclocal.m4: Add ultrix* to /dev/zero blacklist.
+ * configure: Rebuilt.
+
+2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * except.h (MUST_USE_SJLJ_EXCEPTIONS): Revert 2003-09-23 change.
+ Allow override.
+ * doc/tm.texi (MUST_USE_SJLJ_EXCEPTIONS): Document.
+
+2003-09-23 David S. Miller <davem@redhat.com>
+
+ * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Undefine
+ before redefining.
+ * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Likewise.
+
+2003-10-01 Steven Bosscher <steven@gcc.gnu.org>
+
+ * config/cris/cris-protos.h, config/cris/cris.c: Convert to ISO
+ C90 function declarations and definitions.
+
+2003-10-01 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (cris-*-linux*): Revert mistaken commit.
+
+2003-10-01 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11753
+ * config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to
+ the length in the non-V9 case.
+
+2003-09-30 Richard Henderson <rth@redhat.com>
+
+ * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Honor
+ DWARF_ALT_FRAME_RETURN_COLUMN.
+ * unwind-dw2.c (dwarf_reg_size_table): Expand by one.
+ (_Unwind_GetGR, _Unwind_SetGR): Validate lookup column.
+ (uw_frame_state_for): Return end-of-stack for null return address.
+ * doc/tm.texi (DWARF_ALT_FRAME_RETURN_COLUMN): Add.
+
+ * config/alpha/alpha.c (alpha_sa_mask): Add r31 for eh_return.
+ (alpha_expand_prologue): Store a zero for it.
+ (alpha_expand_epilogue): Don't reload it.
+ * config/alpha/alpha.h (DWARF_ALT_FRAME_RETURN_COLUMN): New.
+ * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Use column 64
+ for the sigframe return address.
+
+2003-09-30 Kelley Cook <kelleycoook@wideopenwest.com>
+
+ * sdbout.c: Convert to ISO C90 prototypes.
+ * objc/objc-act.c: Likewise.
+
+2003-09-30 Kelley Cook <kelleycoook@wideopenwest.com>
+
+ * config/i386/cygwin1.c: Convert to ISO C90 prototypes.
+ * config/i386/winnt.c: Likewise.
+ * config/i386/cygming.h: Likewise.
+
+2003-09-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Fold (A & ~B) - (A & B) into
+ (A ^ B) - B for any B.
+
+2003-09-30 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (arm*-*-kaos*, i[34567]86-*-kaos*, powerpc-*-kaos*,
+ powerpcle-*-kaos*, strongarm-*-kaos*): Disable fixproto.
+
+2003-09-30 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm/ieee754-sf.S: Tidy formatting.
+
+2003-09-30 Nicolas Pitre <nico@cam.org>
+
+ * arm/lib1funcs.asm (ARM_DIV_MOD_BODY): Split into ARM_DIV_BODY
+ and ARM_MOD_BODY.
+ (ARM_MOD_BODY): Rewritten. added clz insns for __ARM_ARCH__ >= 5.
+ (ARM_DIV_BODY): Added clz insns for __ARM_ARCH__ >= 5,
+ added better divisor alignment in the other case.
+ (ARM_DIV2_ORDER): Added, finds the order of a single bit divisor.
+ (__divsi3, __udivsi3, __modsi3, __umodsi3): rewritten using the
+ macros above, add fast exits for divisor >= dividend, etc.
+
+2003-09-30 Nicolas Pitre <nico@cam.org>
+
+ * arm/ieee754-df.S: Split compilation of fixunsdfsi from
+ L_fixdfsi target.
+ * arm/t-arm-elf (LIB1ASMFUNCS): Add _fixunsdfsi.
+
+2003-09-30 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Default use_fixproto to 'no'.
+
+2003-09-30 Richard Sandiford <rsandifo@redhat.com>
+
+ PR optimization/12345
+ * config/mips/mips-protos.h (mips_restore_gp): Remove.
+ (mips_gp_save_slot): Declare.
+ * config/mips/mips.c (mips_restore_gp): Remove in favor of...
+ (mips_gp_save_slot): ...this new function.
+ * config/mips/mips.md (exception_receiver): Use mips_gp_save_slot
+ and mips_output_move to generate the output template.
+ (call_internal): Force splitting if TARGET_SPLIT_CALLS. Don't emit
+ a gp load after a noreturn call. Load the gp using a move rather
+ than an exception_receiver pattern.
+ (call_value_internal, call_value_multiple_internal): Likewise.
+ (call_split, call_value_split, call_value_multiple_split): Clobber $28.
+
+2003-09-30 Carlo Wood <carlo@alinoe.com>
+
+ PR debug/12319
+ * cfglayout.c (insn_scope): Use prologue_locator and
+ epilogue_locator; return the outer function scope for
+ pro- and epilogue insns.
+
+2003-09-29 Zack Weinberg <zack@codesourcery.com>
+
+ * objc/objc-act.c (encode_type): Encode INTEGER_TYPEs and
+ REAL_TYPEs based on the bitsize of the type's mode, not the
+ mode directly.
+
+2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * dwarf2out.c (default_eh_frame_section): Split into ...
+ (named_section_eh_frame_section, collect2_eh_frame_section): ... new
+ functions.
+ * output.h (named_section_eh_frame_section): Declare.
+ (collect2_eh_frame_section): Likewise.
+
+2003-09-29 Zack Weinberg <zack@codesourcery.com>
+
+ * real.c (real_sqrt): Use get_canonical_qnan directly.
+
+ * dwarf2out.c (add_const_value_attribute): Use real_to_target.
+
+ * varasm.c (assemble_real): Use real_to_target directly,
+ calculate the number of significant elements of the result
+ array and write them out in a loop, instead of using a giant
+ switch statement to pick the correct REAL_VALUE_TO_TARGET_*
+ macro.
+
+2003-09-29 Jan Hubicka <jh@suse.cz>
+
+ PR c++/12175
+ * varasm.c (notice_global_symbol): Discard external symbols.
+
+ PR optimization/12286
+ * gcov-io.c (gcov_read_words): Fix memmove call.
+ * profile.c (compute_branch_probabilities): Add extra sanity checks.
+
+2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (sparc-*-solaris2*): Handle Solaris 10 and up like
+ Solaris 7-9.
+
+ * fixinc/inclhack.def (solaris_widec): Replace solaris2.[0-5]* by
+ wildcards which explicitly match micro versions.
+ * fixinc/fixincl.x: Regenerate.
+
+2003-09-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Fold (A & ~B) - (A & B) into
+ (A ^ B) - B, where B is any power of 2 minus 1.
+
+2003-09-29 Jan Hubicka <jh@suse.cz>
+
+ * libgcov.c (gcov_exit): Fix two pastos.
+
+2003-09-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*tst_extzv_1_n): Combine with the
+ define_split immediately below to form define_insn_and_split.
+
+2003-09-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*tstsi_variable_bit): New.
+ (*tstsi_variable_bit_qi): Likewise.
+
+2003-09-28 Phil Edwards <phil@codesourcery.com>
+
+ * doc/cppopts.texi: Use 'dashMP' instead of '-MP' as a cross-
+ reference name.
+
+2003-09-28 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (duplicate_decls): Copy DECL_SOURCE_LOCATION, not
+ file and line separately.
+
+2003-09-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*adddi3_carry1_cc", "*adddi3_carry1_cconly",
+ "*adddi3_carry2_cc", "*adddi3_carry2_cconly", "*subdi3_borrow_cc",
+ "*subdi3_borrow_cconly"): New insns.
+ ("*addsi3_sub", "*subsi3_sub"): Remove.
+ ("*subdi3_cc", *subdi3_cconly"): Use only if TARGET_64BIT.
+ ("*subsi3_cc"): Fix op_type attribute.
+
+2003-09-28 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (expand_asm_operands): Take a location_t, instead of
+ individual file and line.
+ * c-typeck.c (c_expand_asm_operands): Likewise.
+ * tree.h (expand_asm_operands): Update decl.
+ * c-common.h (c_expand_asm_operands): Likewise.
+ * c-semantics (genrtl_asm_stmt): Update call.
+
+2003-09-28 Philip Blundell <philb@gnu.org>
+
+ * config/arm/arm.c (legitimize_pic_address): Check
+ SYMBOL_REF_LOCAL_P, not ENCODED_SHORT_CALL_ATTR_P.
+ (arm_assemble_integer): Likewise.
+
+2003-09-28 Steven Bosscher <steven@gcc.gnu.org>
+
+ * config/pdp11/pdp11-protos.h, config/pdp11/pdp11.c,
+ config/c4x/c4x-c.c, config/c4x/c4x-protos.h, config/c4x/c4x.c,
+ config/c4x/c4x.h:
+ Convert to ISO C90 function declarations and definitions.
+
+2003-09-28 Steven Bosscher <steven@gcc.gnu.org>
+
+ * config/stormy16/stormy16.c, config/stormy16/stormy16-protos.h:
+ Convert to ISO C90 function declarations and definitions.
+
+2003-09-28 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_constant_info): Add reloc field.
+ (mips_classify_constant): Initialize it. Always set SYMBOL to the
+ underlying symbol, not to an unspec.
+ (mips_delegitimize_address, print_operand): Clean up accordingly.
+
+2003-09-28 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips16_gp_pseudo_reg): Remove.
+ * config/mips/mips.h (LEGITIMATE_CONSTANT_P): Remove orphaned comment.
+ * config/mips/mips.c (mips_reloc_offset_ok_p): New function.
+ (mips_classify_constant): Use it.
+ (mips_splittable_symbol_p): Add an offset argument.
+ (mips_classify_address): Adjust call accordingly.
+ (mips_legitimize_symbol): Handle sdata references with LO_SUM rather
+ than a relocation unspec. Update call to mips_splittable_symbol_p.
+ Generalize the code that copes with symbols + invalid offsets.
+ (print_operand): Allow '%R' to be applied to small data addresses.
+ (mips_reloc_string): Remove RELOC_GPREL16.
+ (mips_sdata_pointer): Renamed from mips16_gp_pseudo_reg. Return $gp
+ for TARGET_EXPLICIT_RELOCS. Return null if we can't use gp-relative
+ relocation operators.
+ * config/mips/mips.md (RELOC_GPREL16): Remove. Shuffle other reloc
+ constants accordingly.
+
+2003-09-27 Roger Sayle <roger@eyesopen.com>
+
+ * toplev.c (flag_evaluation_order): New global variable.
+ * flags.h (flag_evaluation_order): Prototype here.
+ * expr.c (expand_operands): If we need to preserve observable
+ evaluation order, protect exp1 from clobbering exp0's result.
+
+2003-09-28 Andreas Jaeger <aj@suse.de>
+
+ * c-decl.c (finish_function): Convert definition to ISO C90.
+ * ifcvt.c (mark_loop_exit_edges): Likewise.
+ * ra-rewrite.c (emit_colors): Likewise.
+
+2003-09-27 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (alpha*-dec-osf[45]*): Disable fixproto.
+ * config.gcc (arm*-*-uclinux*): Disable fixproto.
+ * config.gcc (powerpc-*-eabispe*, powerpc-*-eabisimaltivec*,
+ powerpc-*-eabialtivec*): Disable fixproto.
+
+2003-09-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/12340
+ * loop.h (struct induction): Document the new semantics
+ of the 'same' field for bivs.
+ * unroll.c (biv_total_increment): Don't count the same
+ biv increment several times.
+ (loop_iterations) [GENERAL_INDUCT]: Likewise.
+
+2003-09-27 Graham Stott <graham.stott@btinternet.com>
+
+ * unroll.c (loop_interations)[GT]: Add missing break.
+
+2003-09-27 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/chorus.h, config/darwin-c.c, config/darwin-protos.h,
+ config/darwin.c, config/darwin.h, config/dbx.h, config/dbxcoff.h,
+ config/dbxelf.h, config/elfos.h, config/fp-bit.h,
+ config/freebsd-nthr.h, config/freebsd-spec.h, config/freebsd.h,
+ config/freebsd3.h, config/freebsd4.h, config/freebsd5.h,
+ config/freebsd6.h, config/netbsd-aout.h, config/netbsd-elf.h,
+ config/netbsd.h, config/netware.h, config/openbsd-oldgas.h,
+ config/openbsd.h, config/ptx4.h, config/alpha/alpha-protos.h,
+ config/alpha/alpha.c, config/alpha/alpha.h, config/alpha/alpha.md,
+ config/alpha/elf.h, config/alpha/ev4.md, config/alpha/ev5.md,
+ config/alpha/ev6.md, config/alpha/freebsd.h, config/alpha/linux-elf.h,
+ config/alpha/linux.h, config/alpha/netbsd.h, config/alpha/openbsd.h,
+ config/alpha/osf.h, config/alpha/osf5.h, config/alpha/unicosmk.h,
+ config/alpha/vms-cc.c, config/alpha/vms-crt0-64.c,
+ config/alpha/vms-crt0.c, config/alpha/vms-dwarf2.asm,
+ config/alpha/vms-dwarf2eh.asm, config/alpha/vms-ld.c,
+ config/alpha/vms-psxcrt0-64.c, config/alpha/vms-psxcrt0.c,
+ config/alpha/vms.h, config/alpha/vms64.h, config/alpha/vms_tramp.asm,
+ config/alpha/xm-vms.h, config/arc/arc-modes.def,
+ config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h,
+ config/arc/arc.md, config/arc/initfini.c, config/arc/lib1funcs.asm,
+ config/avr/avr-protos.h, config/avr/avr.c, config/avr/avr.h,
+ config/avr/avr.md, config/d30v/d30v-protos.h, config/d30v/d30v.h,
+ config/d30v/d30v.md, config/fr30/fr30-protos.h, config/fr30/fr30.c,
+ config/fr30/fr30.h, config/fr30/fr30.md, config/fr30/lib1funcs.asm,
+ config/frv/cmovd.c, config/frv/cmovh.c, config/frv/cmovw.c,
+ config/frv/frv-abi.h, config/frv/frv-asm.h, config/frv/frv-modes.def,
+ config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
+ config/frv/frv.md, config/frv/frvbegin.c, config/frv/frvend.c,
+ config/frv/lib1funcs.asm, config/h8300/clzhi2.c, config/h8300/ctzhi2.c,
+ config/h8300/parityhi2.c, config/h8300/popcounthi2.c,
+ config/i370/i370-c.c, config/i370/i370-protos.h, config/i370/i370.c,
+ config/i370/i370.h, config/i370/i370.md, config/i370/linux.h,
+ config/i370/mvs.h, config/i370/oe.h, config/i386/darwin.h,
+ config/i960/i960-c.c, config/i960/i960-coff.h,
+ config/i960/i960-modes.def, config/i960/i960-protos.h,
+ config/i960/i960.c, config/i960/i960.h, config/i960/i960.md,
+ config/i960/rtems.h, config/ia64/elf.h, config/ia64/ia64.h,
+ config/m32r/initfini.c, config/m32r/m32r-protos.h, config/m32r/m32r.c,
+ config/m32r/m32r.h, config/m32r/m32r.md, config/m68hc11/larith.asm,
+ config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c,
+ config/m68hc11/m68hc11.h, config/m68hc11/m68hc11.md,
+ config/m68hc11/m68hc12.h, config/m68k/coff.h, config/m68k/crti.s,
+ config/m68k/crtn.s, config/m68k/hp320.h, config/m68k/hp320base.h,
+ config/m68k/lb1sf68.asm, config/m68k/linux.h, config/m68k/m68020-elf.h,
+ config/m68k/m68k-aout.h, config/m68k/m68k-none.h,
+ config/m68k/m68k-protos.h, config/m68k/m68k.c, config/m68k/m68k.h,
+ config/m68k/m68k.md, config/m68k/m68kelf.h, config/m68k/m68kv4.h,
+ config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
+ config/m68k/rtemself.h, config/m68k/sgs.h, config/mcore/lib1.asm,
+ config/mcore/mcore-elf.h, config/mcore/mcore-pe.h,
+ config/mcore/mcore-protos.h, config/mcore/mcore.c,
+ config/mcore/mcore.md, config/mips/elf.h, config/mips/elf64.h,
+ config/mips/elforion.h, config/mips/iris5.h, config/mips/iris6.h,
+ config/mips/iris6gld.h, config/mips/irix6-libc-compat.c,
+ config/mips/linux.h, config/mips/mips-protos.h, config/mips/mips.c,
+ config/mips/mips.h, config/mips/mips.md, config/mips/netbsd.h,
+ config/mips/openbsd.h, config/mips/r3900.h, config/mips/rtems.h,
+ config/mips/vr.h, config/mn10300/linux.h,
+ config/mn10300/mn10300-protos.h, config/mn10300/mn10300.c,
+ config/mn10300/mn10300.h, config/mn10300/mn10300.md,
+ config/ns32k/__unorddf2.c, config/ns32k/__unordsf2.c,
+ config/ns32k/netbsd.h, config/ns32k/ns32k-protos.h,
+ config/ns32k/ns32k.c, config/ns32k/ns32k.h, config/ns32k/ns32k.md,
+ config/pdp11/2bsd.h, config/pdp11/pdp11-modes.def,
+ config/pdp11/pdp11-protos.h, config/pdp11/pdp11.c,
+ config/pdp11/pdp11.h, config/pdp11/pdp11.md, config/rs6000/biarch64.h,
+ config/rs6000/default64.h, config/sh/coff.h, config/sh/crt1.asm,
+ config/sh/crti.asm, config/sh/crtn.asm, config/sh/elf.h,
+ config/sh/embed-elf.h, config/sh/linux.h, config/sh/little.h,
+ config/sh/netbsd-elf.h, config/sh/rtems.h, config/sh/rtemself.h,
+ config/sh/sh-protos.h, config/sh/sh.c, config/sh/sh.h,
+ config/sh/sh.md, config/sh/sh64.h, config/sh/shmedia.h,
+ config/sh/sshmedia.h, config/sh/ushmedia.h, config/sparc/pbd.h,
+ config/sparc/sparc.h, doc/install-old.texi, fixinc/fixinc.ptx,
+ fixinc/fixinc.svr4: GNU CC -> GCC.
+
+2003-09-26 Loren James Rittle <ljrittle@acm.org>
+
+ * objc/objc-act.c (tm_p.h): Tweak order.
+ * objc/Make-lang.in (objc/objc-act.o): Add $(TM_P_H).
+
+2003-09-26 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (hppa*64*-*-linux* | parisc*64*-*-linux*):
+ Include t-slibgcc-elf-ver and t-linux in tmake_file.
+ * config.gcc (hppa*64*-*-linux* | parisc*64-*-linux*):
+ Disable fixproto.
+ * config.gcc (i960-*-coff*, m68k-*-aout*, sparclite-*-coff*):
+ Disable fixproto.
+ * config.gcc (i[34567]86-*-solaris2*, sparc64-*-solaris2*,
+ sparcv9-*-solaris2*, sparc-*-solaris2*): Disable fixproto.
+
+ * config/i386/unix.h: Remove (unused) DEFAULT_ASSEMBLER_DIALECT.
+
+2003-09-26 Loren James Rittle <ljrittle@acm.org>
+
+ * config/i386/i386.h (ix86_return_in_memory): Revert my last patch.
+ * objc/objc-act.c (tm_p.h): Include.
+
+2003-09-26 Per Bothner <pbothner@apple.com>
+
+ * dbxout.c (dbxout_typedefs): Output typedefs in forward order.
+ No longer any need to reverse by recursion.
+
+2003-09-26 Roger Sayle <roger@eyesopen.com>
+ Richard Henderson <rth@redhat.com>
+
+ PR optimization/11741
+ * gcse.c (pre_insert_copy_insn): Tweak the logic for finding the
+ appropriate set to match that in hash_scan_insn. Fall back to
+ the original copy method, if we can't validate changing insn.
+ (pre_delete): Only delete instructions that have a single_set,
+ instead of aborting when we encounter an PARALLEL insn with more
+ then one SET.
+
+2003-09-26 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("builtin_setjmp_setup"): Insn deleted.
+ ("builtin_longjmp"): Insn deleted.
+ ("save_stack_nonlocal"): Save literal pool base pointer behind
+ backchain and stack pointer.
+ ("restore_stack_nonlocal"): Restore literal pool base pointer.
+ * config/s390/s390.h (STACK_SAVEAREA_MODE): Double size of
+ the stack save area for the nonlocal goto case.
+
+2003-09-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR bootstrap/12358
+ * pa.c (output_bvb): Fix typo.
+
+2003-09-26 Richard Sandiford <rsandifo@redhat.com>
+
+ * expmed.c (store_bit_field): Don't search for an integer mode
+ unless we need the result.
+
+2003-09-26 Richard Sandiford <rsandifo@redhat.com>
+
+ * expr.c (emit_move_insn_1): If there is no move pattern for the
+ original mode, try using a pattern for the corresponding integer mode.
+
+2003-09-26 Richard Sandiford <rsandifo@redhat.com>
+
+ PR middle-end/9200
+ * combine.c (if_then_else_cond): Tighten mode check.
+
+2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * cppcharset.c, cpphash.h: Rename 'struct strbuf' to
+ 'struct _cpp_strbuf'.
+
+ * config/i386/netbsd-elf.h, config/i386/netbsd64.h,
+ config/i386/netware.h, config/i386/nto.h, config/i386/openbsd.h,
+ config/i386/pentium.md, config/i386/pmmintrin.h, config/i386/ppro.md,
+ config/i386/ptx4-i.h, config/i386/rtemself.h, config/i386/sco5.h,
+ config/i386/sol2.h, config/i386/svr3gas.h, config/i386/sysv3.h,
+ config/i386/sysv4-cpp.h, config/i386/sysv4.h, config/i386/sysv5.h,
+ config/i386/unix.h, config/i386/uwin.h, config/i386/vsta.h,
+ config/i386/xm-cygwin.h, config/i386/xm-djgpp.h,
+ config/i386/xm-mingw32.h, config/i386/xmmintrin.h: Replace
+ "GNU CC", "GNU compiler", and "GNU C-compiler" with "GCC".
+ * config/i386/i386-aout.h, config/i386/i386-coff.h,
+ config/i386/i386-interix.h, config/i386/i386-interix3.h,
+ config/i386/i386-modes.def, config/i386/i386-protos.h,
+ config/i386/i386.c, config/i386/i386.h, config/i386/i386.md,
+ config/i386/i386elf.h, config/i386/k6.md, config/i386/kaos-i386.h,
+ config/i386/linux-aout.h, config/i386/linux.h, config/i386/linux64.h,
+ config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mingw32.h,
+ config/i386/mmintrin.h, config/i386/moss.h: GNU CC -> GCC.
+ "GNU compiler" -> GCC.
+ * config/i386/att.h, config/i386/beos-elf.h, config/i386/biarch64.h,
+ config/i386/bsd.h, config/i386/crtdll.h, config/i386/cygming.h,
+ config/i386/cygwin.h, config/i386/cygwin1.c, config/i386/cygwin2.c,
+ config/i386/darwin.h, config/i386/djgpp.h, config/i386/emmintrin.h,
+ config/i386/freebsd-aout.h, config/i386/freebsd.h,
+ config/i386/freebsd64.h, config/i386/gas.h: GNU CC -> GCC.
+
+2003-09-25 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * cgraph.c (dump_cgraph): Don't output newline before dump. Add in
+ "local" to the callgraph dump. Output "after inlining" earlier.
+ * cgraphunit.c: Fix dumpfile whitespace and commonize headers of the
+ callgraph dumps. Correct misspellings.
+ (cgraph_decide_inlining): Output number of insns before inlining.
+ Output the calling function into which a function is inlined.
+ (cgraph_decide_small_functions): Format dump file like always_inline.
+
+2003-09-25 Loren James Rittle <ljrittle@acm.org>
+
+ * config/i386/i386.h (ix86_return_in_memory): Add prototype.
+
+2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_emit_prologue): Simplify accesses to
+ FPR slots in the save area.
+ (s390_emit_epilogue): Likewise.
+
+2003-09-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * cgraph.h (cgraph_remove_edge): Declare.
+ * cgraph.c (cgraph_remove_edge): Make extern.
+ * cgraphunit.c (cgraph_finalize_function): Call cgraph_remove_edge
+ instead of cgraph_remove_call.
+
+2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * objc/objc-act.c (gen_declaration_1): Fix printf format.
+
+2003-09-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (all_cores): arm710t, arm720t and arm740t are all based on the
+ arm7tdmi core.
+
+2003-09-25 Ziemowit Laski <zlaski@apple.com>
+
+ * config/darwin-protos.h (objc_image_info_section):
+ New prototype.
+
+2003-09-25 Ziemowit Laski <zlaski@apple.com>
+
+ * Makefile.in (stub-objc.o): Depend on $(GGC_H).
+
+2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Get rid of more gratuitious 'x'es. Actually allow
+ tsc701 as a --with-cpu, --with-tune setting for sparc.
+
+2003-09-25 Ziemowit Laski <zlaski@apple.com>
+
+ * c-parse.in (objc_try_stmt): Do not specify a %type.
+
+2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: New 'widely ported system' clause for rtems.
+ Set thread file there, not in individual clauses.
+
+2003-09-25 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/6222
+ * config/mips/mips.c (mips_va_arg): Handle arguments that must be
+ passed on the stack.
+
+2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (widely ported systems section): Mostly alphabetize
+ by system. Comment the case where we can't.
+ * config.gcc (widely ported systems section): Reindent and clean up.
+
+ * config.gcc: Remove some unnecessary uses of 'x' in case statements.
+ Actually allow ep9312 as an arm --with-arch setting.
+
+ * config.gcc (*-hpux11): Disable fixproto.
+
+2003-09-24 Phil Edwards <phil@codesourcery.com>
+
+ PR pch/12112
+ * gcc/cppfiles.c (pch_open_file): Return based on combined
+ result of all files.
+ (validate_pch): Return validate flag for current file.
+
+2003-09-24 Roger Sayle <roger@eyesopen.com>
+
+ PR bootstrap/12358
+ * fold-const.c (tree_swap_operands_p): Only reorder operands when
+ one of the operands is constant.
+
+2003-09-24 Ziemowit Laski <zlaski@apple.com>
+
+ MERGE OF objc-improvements-branch into MAINLINE:
+ * Makefile.in (C_OBJS): Add in stub-objc.o.
+ (c-parse.y): Change sed demarcations to begin with '@@'.
+ (stub-objc.o): New rule.
+ * c-common.c (flag_nil_receivers, flag_objc_exceptions, flag_zero_link,
+ flag_replace_objc_classes): New flags.
+ * c-common.h (RID_AT_THROW, RID_AT_TRY, RID_AT_CATCH, RID_AT_FINALLY,
+ RID_AT_SYNCHRONIZED): New keywords.
+ (flag_nil_receivers, flag_objc_exceptions, flag_zero_link,
+ flag_replace_objc_classes): New flags.
+ (lookup_interface, is_class_name, objc_is_object_ptr, objc_check_decl,
+ objc_comptypes, objc_message_selector, lookup_objc_ivar,
+ get_current_scope, objc_mark_locals_volatile): New prototypes,
+ some moved from c-tree.h.
+ * c-decl.c (get_current_scope, objc_mark_locals_volatile): New functions.
+ (finish_decl): Adjust where objc_check_decl() gets called.
+ * c-lang.c (lookup_interface, is_class_name, objc_is_id, objc_check_decl,
+ objc_comptypes, objc_message_selector, lookup_objc_ivar): Remove stubs.
+ * c-opts.c (c_common_handle_option): Add handling for flag_nil_receivers,
+ flag_objc_exceptions, flag_replace_objc_classes and flag_zero_link.
+ * c-parse.in: Replace 'ifc' and 'end ifc' sed markers with '@@ifc' and
+ '@@end_ifc', respectively.
+ (AT_THROW, AT_TRY, AT_CATCH, AT_FINALLY, AT_SYNCHRONIZED): New %tokens.
+ (objc_try_stmt, superclass, class_ivars, objc_try_catch-stmt,
+ objc_finally_block): New rules.
+ (component_decl_list2): Clean up semantic action for @defs construct.
+ (component_decl, c99_block_start): Remove call to add_objc_decls().
+ (poplevel): Add call to objc_clear_super_receiver().
+ (stmt): Add rules for @throw, @try..@catch..@finally and @synchronized
+ constructs.
+ (classdef, methodprotolist): Clean up/simplify.
+ (methodprotolist2): Eliminate.
+ (methodproto): Call add_method() instead of add_class_method() and
+ add_instance_method().
+ (receiver): Add TYPENAME production.
+ (reswords): Add "throw", "try", "catch", "finally" and "synchronized".
+ (rid_to_yy): Add AT_THROW, AT_TRY, AT_CATCH, AT_FINALLY and
+ AT_SYNCHRONIZED.
+ * c-tree.h (lookup_interface, is_class_name, objc_is_id, objc_check_decl,
+ objc_comptypes, objc_message_selector)
+ * c-typeck.c (comptypes): In ObjC mode, call objc_comptypes() for
+ struct and pointer types.
+ (build_c_cast): Do not discard ObjC protocol qualifiers.
+ (convert_for_assignment): Cache result of comp_target_types() instead
+ of calling it more than once.
+ * c.opt (fnext-runtime): Update description string.
+ (fnil-receivers, fobjc-exceptions, freplace-objc-classes, fzero-link):
+ New ObjC/ObjC++-specific flags.
+ * function.h (GCC_FUNCTION_H): Header guard.
+ * gengtype-lex.l: Teach lexer about new @@... sed demarcations.
+ * stub-objc.c: New file, to be used to satisfy references to ObjC
+ functions by the C and C++ front-ends.
+ * config/darwin.c (_OBJC_IMAGE_INFO): New global metadata.
+ * config/darwin.h (FUNCTION): Add in_objc_image_info.
+ (SECTION_FUNCTION): Add objc_image_info_section.
+ * doc/invoke.texi: Link to GCC web site for Objective-C information.
+ (-fconstant-string-class): Update documentation.
+ (-fno-nil-receivers, -fobjc-exceptions, -freplace-objc-classes,
+ -fzero-link): New documentation.
+ * objc/Make-lang.in (objc-parse.y): Change sed demarcations to begin
+ with '@@'.
+ * objc/lang-specs.h (@objective-c-header): Fix -E spec.
+ * objc/objc/objc-act.c: Replace TYPE_NAME with OBJC_TYPE_NAME
+ throughout; provide casts for return values from memory allocation
+ functions (xmalloc, alloca, ggc_alloc, etc.).
+ (OBJC_VOID_AT_END): New macro.
+ (rtl.h): Do not #include any more.
+ (STRING_OBJECT_GLOBAL_NAME): Replaced with STRING_OBJECT_GLOBAL_FORMAT.
+ (TAG_MSGSEND_STRET, TAG_MSGSENDSUPER_STRET, TAG_MSGSEND_NONNIL,
+ TAG_MSGSEND_NONNIL_STRET, TAG_EXCEPTIONEXTRACT, TAG_EXCEPTIONTRYENTER,
+ TAG_EXCEPTIONTRYEXIT, TAG_EXCEPTIONMATCH, TAG_EXCEPTIONTHROW,
+ TAG_SYNCENTER, TAG_SYNCEXIT): New NeXT runtime entry points.
+ (struct val_stack, catch_count_stack, exc_binding_stack, val_stack_push,
+ val_stack_pop): New.
+ (objc_check_decl): Fix precondition for error message, along with
+ the message itself.
+ (lookup_and_install_protocols): Remove nonexistent protocols from
+ protocol list instead of returning error_mark_node.
+ (create_builtin_decl): Use DECL_ARTIFICIAL only for VAR_DECLs.
+ (setup_string_decl): Generalize to use STRING_OBJECT_GLOBAL_FORMAT.
+ (synth_module_prologue): General clean-up; construct NeXT-specific
+ runtime API prototypes if needed.
+ (build_string_class_template): Remove.
+ (check_string_class_template, string_layout_checked): New.
+ (build_objc_string_object): Generalize to work with
+ -fconstant-string-class.
+ (build_objc_symtab_template): Fix layout for the NeXT runtime.
+ (build_metadata_decl): New.
+ (forward_declare_categories): Call build_metadata_decl() instead of
+ create_builtin_decl() et al.
+ (build_module_descriptor): Use OBJC_VOID_AT_END instead of
+ void_list_node_1.
+ (build_selector_reference_decl, build_class_reference_decl,
+ build_objc_string_decl): Do not set TREE_READONLY.
+ (get_proto_encoding): Do not call hack_method_prototype().
+ (get_class_reference): Add failure mode for invalid class names;
+ support -fzero-link; defer if in an ObjC++ template declaration.
+ (objc_declare_alias, objc_declare_class): Fix up duplicate name
+ lookup; check for global scope if in ObjC++.
+ (is_class_name): Generalize to work with various tree nodes (TYPE_DECL,
+ RECORD_TYPE, IDENTIFIER_NODE, etc.)
+ (objc_is_id): Removed.
+ (objc_is_object_ptr): New function.
+ (get_class_ivars_from_name): New function, used for @defs construct.
+ (get_class_ivars): Add option to return raw ivars; create a
+ ClASS_OWN_IVARS list for each class as needed.
+ (objc_enter_block, objc_exit_block, objc_declare_variable,
+ objc_build_throw_stmt, val_stack_push, val_stack_pop,
+ objc_build_try_enter_fragment, objc_build_extract_expr,
+ objc_build_try_exit_fragment, objc_build_extract_fragment,
+ objc_build_try_prologue, objc_build_try_epilogue,
+ objc_build_catch_stmt, objc_build_catch_epilogue,
+ objc_build_finally_prologue, objc_build_finally_epilogue,
+ objc_build_try_catch_finally_stmt, objc_build_synchronized_prologue,
+ objc_build_synchronized_epilogue, build_objc_exception_stuff):
+ New functions.
+ (_JBLEN): _setjmp jmpbuf size (needs to be made a target hook in
+ the future).
+ (build_private_template): Fix up calls to get_class_ivars().
+ (offset_is_register, forwarding_offset): Remove.
+ (objc_method_parm_type, objc_encoded_type_size): New functions.
+ (encode_method_prototype): Simplify to no longer depend on
+ back-end information.
+ (build_tmp_function_decl_xxx, build_tmp_function_decl,
+ hack_method_prototype): Removed.
+ (generate_protocol_references): Remove calls to
+ build_tmp_function_decl().
+ (generate_protocols): Adjust calls to encode_method_prototype().
+ (build_class_template): Generate sel_id' and 'gc_object_type' fields
+ for the NeXT runtime.
+ (synth_forward_declarations): Call build_metadata_decl().
+ (check_ivars): Check that the number of ivars matches also.
+ (build_super_template): Modify super_type directly; disable debugging
+ output while generating decl.
+ (build_ivar_list_initializer): Skip list elements that are not
+ FIELD_DECLs.
+ (ivar_list_length): New function.
+ (generate_ivar_lists): Call ivar_list_length() instead of list_length()
+ and encode_method_prototype() instead of encode_method_def().
+ (build_shared_structure_initializer): Generate 'sel_id' field for
+ the NeXT runtime.
+ (generate_category): Do not set TREE_USED.
+ (build_keyword_selector): Ditto; transform into a function argument
+ chain.
+ (get_arg_type_list): If there are no user-specified arguments, use
+ '...'; use OBJC_VOID_AT_END.
+ (check_duplicates): Add a parameter indicating whether methods or
+ selectors are being checked.
+ (receiver_is_class_object): Add parameters indicating whether
+ receiver is 'self' or 'super'; robustify.
+ (build_message_expr): Defer call to finish_message_expr() if
+ inside an ObjC++ template.
+ (lookup_method_in_hash_lists): New function.
+ (finish_message_expr): Complete rewrite/fix.
+ (build_objc_method_call): Ditto; factor out commonalities between
+ the GNU and NeXT runtimes; acccommodate ..._stret and ...NonNil
+ messenger variants on the NeXT.
+ (lookup_instance_method_static, lookup_class_method_static):
+ Fold into a single lookup_method_static() function with an
+ additional parameter.
+ (add_class_method, add_instance_method): Fold into a single
+ add_method() function with an additional parameter.
+ (add_category): Make duplicate categories a hard error in ObjC++.
+ (add_instance_variable): Properly handle unnamed ivars, arrays of
+ zero or no size and bitfields. In ObjC++, check for nontrivial
+ C++ class instances.
+ (is_public): Allow C functions to access non-@public ivars, with
+ a warning.
+ (start_class): Move common initializations to
+ synth_module_prologue(); check for global scope if in ObjC++.
+ (continue_class): Fix calls to finish_struct().
+ (objc_declare_protocols, start_protocol): Check for global scope
+ if in ObjC++.
+ (encode_pointer): Encode 'BOOL *' specially on the NeXT.
+ (encode_aggregate_within): Rewrite to properly distinguish
+ struct tags from typedefs in both ObjC and ObjC++.
+ (encode_bitfield, encode_complete_bitfield): Remove.
+ (encode_next_bitfield, encode_gnu_bitfield): New functions.
+ (encode_field_decl): Call encode_next_bitfield() or
+ encode_gnu_bitfield() as needed.
+ (synth_self_and_ucmd_args): New function.
+ (start_method_def): Use it.
+ (objc_types_are_equivalent): New function.
+ (comp_proto_with_proto): Use it instead of comptypes(), since
+ we need symmetry.
+ (really_start_method): Use lookup_method_static() instead of
+ lookup_class_method_static() and lookup_instance_method_static();
+ Emit 'extern "C"' if in ObjC++ mode.
+ (add_objc_decls): Removed.
+ (UOBJC_SUPER_scope): New variable.
+ (get_super_receiver): Move construction of 'super' from
+ add_objc_decls(); remove dependency on struct objc_class.
+ (encode_method_def): Removed; encode_method_prototype() is
+ used instead.
+ (objc_clear_super_receiver): New function.
+ (objc_expand_function_end): Do not do anything for ordinary
+ C functions.
+ (finish_method_def): Mark ObjC methods as un-inlinable.
+ (gen_declaration_1): Emit widths of bitfields.
+ (finish_objc): Call generate_objc_image_info() if needed;
+ use check_duplicates() when checking for selector duplicates.
+ (generate_objc_image_info): New function.
+ * objc/objc-act.h (add_instance_method, add_class_method,
+ get_class_ivars): Remove prototypes.
+ (objc_build_throw_stmt, objc_build_try_catch_finally_stmt,
+ objc_build_synchronized_prologue, objc_build_synchronized_epilogue,
+ objc_build_catch_stmt, objc_build_catch_epilogue,
+ objc_build_finally_prologue, objc_build_finally_epilogue,
+ add_method, get_class_ivars_from_name): New prototypes.
+ (CLASS_BINFO_ELTS, PROTOCOL_BINFO_ELTS): New.
+ (TYPE_PROTOCOL_LIST): Robustify to distinguish from
+ TRANSLATION_UNIT_DECLs.
+ (OBJC_TYPE_NAME): New.
+ (objc_tree_code): Ensure that either <c-tree.h> or <cp/cp-tree.h>
+ got included.
+ (IS_SUPER): Robustify.
+ (umsg_stret_decl, umsg_super_stret_decl, umsg_nonnil_decl,
+ umsg_nonnil_stret_decl, objc_storage_class, objc_exception_extract_decl,
+ objc_exception_try_enter_decl, objc_exception_try_exit_decl,
+ objc_exception_match_decl, objc_exception_throw_decl,
+ objc_sync_enter_decl, objc_sync_exit_decl, objc_exception_data_template,
+ objc_setjmp_decl, objc_stack_exception_data, objc_caught_exception,
+ objc_rethrow_exception, objc_eval_once, objc_exception_block_stack,
+ objc_catch_type): New ObjC/ObjC++ roots.
+ * objc/objc-tree.def (MESSAGE_SEND_EXPR, CLASS_REFERENCE_EXPR): New
+ ObjC/ObjC++ tree node codes.
+
+2003-09-24 Alexandre Oliva <aoliva@redhat.com>
+
+ * cpplib.c (do_pragma): Reintroduce cb_line_change call in the
+ code path that calls a handler.
+
+2003-09-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (c4x-*, tic4x-*, d30v-*, mmix-knuth-mmixware):
+ Disable fixproto.
+
+ * config.gcc: Clean up and reindent $with_cpu=yes|no clause and
+ the section giving $with_cpu defaults by target.
+
+ * config.gcc (arm-*-coff*, armel-*-coff*, arm*-*-ecos-elf,
+ arm*-*-elf, ep9312-*-elf, arm*-wince-pe*, arm*-*-pe*, arm*-*-pe*,
+ rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*,
+ rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*,
+ rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*,
+ i[34567]86-pc-msdosdjgpp*): Disable fixproto.
+
+2003-09-24 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (movti_power): Collapse case 1 and 2
+ together. Protect load string instruction with TARGET_STRING.
+ (movti_string): Collapse case 1 and 2 together.
+
+2003-09-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-common.c (c_common_type_for_mode): Check for VOIDmode.
+
+2003-09-24 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Wrap in
+ do...while(0)
+
+2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Move use_fixproto=no from generic vxworks clause to
+ specific one.
+
+ * config.gcc (powerpc-*-gnu-gnualtivec*): Disable fixproto
+ (accidentally missed in last pass).
+
+2003-09-23 Andrew Pinski <apinski@apple.com>
+
+ PR bootstrap/12383
+ * configure: Regenerate.
+
+2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (x86_64-*-freebsd*): Disable fixproto (accidentally
+ missed in last pass).
+
+2003-09-23 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.md (andsi3): Fix cut&pasto in 0xfffffffe
+ constant.
+
+2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Move vax-*-vms* unsupported notice up with the rest.
+
+ * config.gcc (alpha64*-dec-*vms*, alpha*-dec-*vms*,
+ powerpc-*-eabisim*, powerpc-*-eabi*, powerpcle-*-eabisim*,
+ powerpcle-*-eabi*): Disable fixproto.
+
+ * config.gcc: Move use_fixproto=no from generic FreeBSD clause to
+ specific FreeBSD clauses.
+ * config.gcc: Move use_fixproto=no from generic NetBSD clause to
+ specific NetBSD clauses.
+ * config.gcc: Move use_fixproto=no from generic OpenBSD clause
+ to specific OpenBSD clauses.
+
+2003-09-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (hppa_expand_prologue): Do pic register save in frame marker
+ without adding a frame note.
+ * pa.md (allocate_stack): Save pic register in new frame marker when
+ generating pic code.
+
+2003-09-23 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * cgraphunit.c (cgraph_expand_all_functions): Renamed from
+ cgraph_expand_functions.
+
+2003-09-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (gnucompare*): Merge into ...
+ (slowcompare*): ... here.
+ (fastcompare*): New targets.
+ * aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): Add checks for
+ other "fast" cmp programs.
+ * configure: Regenerate.
+
+2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * targhooks.c: Include output.h.
+ * Makefile.in (targhooks.o): Add output.h to dependency list.
+
+2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.host: Removed superfluous newline.
+
+2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Use ${target}, not $machine.
+ * configure.in: Don't set $machine.
+ * configure: Regenerate.
+
+2003-09-23 Geoffrey Keating <geoffk@apple.com>
+
+ * config/t-darwin (crt2.o): Add stmp-int-hdrs to dependencies.
+
+ * config/rs6000/rs6000.c (function_arg_pass_by_reference): Don't
+ pass zero-size arrays by reference.
+ (rs6000_va_arg): Likewise.
+
+2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Set use_fixproto=no in each specific *-gnu*
+ configuration, rather than the generic one.
+
+2003-09-23 Richard Henderson <rth@redhat.com>
+
+ * tree-inline.c (remap_save_expr): Map new save_expr to identity
+ rather than to error_mark_node.
+
+2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in (HAVE_GAS_SHF_MERGE): Always define to test result.
+ Update description.
+ * configure: Regenerate.
+ * config.in: Likewise.
+ * dwarf2out.c (DEBUG_STR_SECTION_FLAGS): Test for
+ HAVE_GAS_SHF_MERGE value.
+ * varasm.c (mergeable_string_section): Likewise.
+ (mergeable_constant_section): Likewise.
+
+2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * except.h (MUST_USE_SJLJ_EXCEPTIONS): Test for DWARF2_UNWIND_INFO
+ value.
+
+2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * target.h (struct gcc_target): New member external_libcall.
+ * target-def.h (TARGET_ASM_EXTERNAL_LIBCALL): Provide default.
+ (TARGET_ASM_OUT): Use it.
+ * doc/tm.texi (TARGET_ASM_EXTERNAL_LIBCALL): Document.
+ * targhooks.c: Convert to ISO C 90.
+ (default_external_libcall): New function.
+ * targhooks.h (default_external_libcall): Declare.
+ * varasm.c (assemble_external_libcall): Use
+ targetm.asm_out.external_libcall instead of
+ ASM_OUTPUT_EXTERNAL_LIBCALL.
+ * config/mips/mips-protos.h [TARGET_IRIX5 || TARGET_IRIX 6]
+ (mips_output_external_libcall): Declare.
+ * config/mips/mips.c (mips_output_external_libcall): Change
+ definition guard.
+ Change to match TARGET_ASM_EXTERNAL_LIBCALL.
+ Only operate for O32 ABI.
+ * config/mips/iris5.h (TARGET_ASM_EXTERNAL_LIBCALL): Define
+ instead of ASM_OUTPUT_EXTERNAL_LIBCALL.
+ * config/mips/iris6.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Don't undef,
+ superceded by TARGET_ASM_EXTERNAL_LIBCALL.
+
+2003-09-22 Nathnael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Do per-target disabling of fixproto here in clauses,
+ not in t- fragments.
+ * configure.in: Adjust to set STMP_FIXPROTO correctly.
+ * configure: Regenerate.
+ * config/arm/t-semi, config/cris/t-cris, config/i386/t-beos,
+ config/i386/t-cygming, config/i386/t-nto, config/ia64/t-hpux,
+ t-freebsd, t-linux, t-netbsd, t-openbsd, t-rtems, t-vxworks,
+ xtensa/t-xtensa: Remove setting of STMP_FIXPROTO.
+ * config/i370/t-oe, config/i386/t-netware, config/pa/t-bsd,
+ t-interix, t-linux-aout: Delete files consisting only of
+ setting of STMP_FIXPROTO.
+
+ * config.host: Allow unknown hosts (not targets). Allow
+ ns32k-*-netbsdelf* as a host (not a target). Remove redundant
+ empty clauses. Remove useless obsolete-configuration clause.
+ Prune unsupported configuration list. Collapse identical
+ clauses for closely related systems. Rewrite comment for
+ unsupported hosts list. Reorganize a little.
+
+2003-09-22 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (c_common_signed_or_unsigned_type): Examine mode,
+ not precision.
+
+2003-09-22 David Edelsohn <edelsohn@gnu.org>
+ Hartmut Penner <hpenner@de.ibm.com>
+ Segher Boessenkool <boessen@de.ibm.com>
+
+ * config/rs6000/rs6000.c (altivec_in_gprs_p): Rename to ...
+ (gpr_or_gpr_p): Test INT_REGNO_P and convert to boolean.
+ (rs6000_split_altivec_in_gprs): Rename to ...
+ (rs6000_split_multireg_move): Add support for update addressing.
+ * config/rs6000/rs6000-protos.h: Same.
+ * config/rs6000/altivec.md: Same.
+ * config/rs6000/rs6000.md (movdi_internal32): Use new splitter for
+ multiple GPRs.
+ (movti): Remove TARGET_STRING || TARGET_POWERPC64 final condition.
+ (movti_power): Use new splitter for multiple GPRs.
+ (movti_string): Same.
+ (movti_ppc64): Same.
+
+2003-09-22 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa-protos.h: Convert to ISO C90.
+ * config/xtensa/xtensa.c: Convert to ISO C90. Minor formatting fixes.
+
+2003-09-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.md: Revert 2003-09-17's patch.
+ (andsi3): Set attr cc to set_zn when using shifts or adds.
+
+2003-09-22 Bernardo Innocenti <bernie@develer.com>
+
+ * doc/contrib.texi: Add Peter Barada, Paul Dale and myself.
+
+2003-09-22 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h (MASK_RTD, TARGET_RTD, RETURN_POPS_ARGS):
+ Resurrect -mrtd option.
+
+2003-09-21 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/12281
+ * config/darwin.c (machopic_validate_stub_or_non_lazy_ptr): Call
+ mark_referenced instead of setting TREE_SYMBOL_REFERENCED.
+
+2003-09-22 Olivier Hainque <hainque@act-europe.fr>
+
+ PR target/9786
+ * reg-stack.c (convert_regs_1): Purge possible dead eh edges
+ after potential deletion of trapping insn. Avoids later ICE
+ from call to fixup_abnormal_edges.
+ (convert_regs_2): Stack the current block successors before
+ processing this block, that is, before the potential deletion of
+ dead edges by convert_regs_1, because these edges have been used
+ to initialize the predecessors count.
+
+2003-09-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * real.c: Fix several nits in the head comment.
+
+2003-09-21 Richard Henderson <rth@redhat.com>
+
+ * tree.h c-aux-info.c, c-decl.c, c-parse.in, coverage.c, dbxout.c,
+ diagnostic.c, dwarf2out.c, dwarfout.c, function.c, integrate.c,
+ print-tree.c, stmt.c, toplev.c, tree-dump.c, tree-inline.c,
+ tree-optimize.c, tree.c, tree.def, xcoffout.c, config/alpha/alpha.c,
+ config/mips/mips.c, doc/c-tree.texi, objc/objc-act.c: Revert.
+
+2003-09-21 Richard Henderson <rth@redhat.com>
+
+ * tree.h (TREE_LOCUS): Rename from DECL_SOURCE_LOCATION; make const.
+ (TREE_FILENAME, TREE_LINENO): Likewise.
+ (set_tree_locus, copy_tree_locus, set_tree_file_line): New.
+ (TREE_LOCUS_SET_P): New.
+ * c-aux-info.c, c-decl.c, c-parse.in, coverage.c, dbxout.c,
+ diagnostic.c, dwarf2out.c, dwarfout.c, function.c, integrate.c,
+ print-tree.c, stmt.c, toplev.c, tree-dump.c, tree-inline.c,
+ tree-optimize.c, tree.c, tree.def, xcoffout.c, config/alpha/alpha.c,
+ config/mips/mips.c, doc/c-tree.texi, objc/objc-act.c: Update to match.
+
+2003-09-21 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config/vax/vax-protos.h: Convert to ISO C90.
+ * config/vax/vax.c: Convert to ISO C90.
+
+2003-09-21 Graham Stott <grahams@btinternet.com>
+
+ PR target/12353
+ * config/i386/i386.md(ffs_no_cmove): Fix operand 2 constraint.
+
+2003-09-21 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/12301
+ * reorg.c (stop_search_p): Return 1 for insns that can
+ throw internally.
+
+2003-09-20 Richard Henderson <rth@redhat.com>
+
+ * c-format.c (gcc_diag_char_table): Add %J.
+ (gcc_cdiag_char_table, gcc_cxxdiag_char_table): Likewise.
+ (check_format_types): Fix wanted_type name lookup.
+ (init_dynamic_diag_info): Setup %J.
+ * diagnostic.c (text_specifies_location): Implement %J.
+ * c-common.c, c-decl.c, c-objc-common.c, c-pragma.c, calls.c,
+ dwarfout.c, expr.c, function.c, stmt.c, stor-layout.c, toplev.c,
+ tree-inline.c, tree-optimize.c, varasm.c, config/arm/pe.c,
+ config/i386/winnt.c, config/ia64/ia64.c, config/mcore/mcore.c,
+ config/v850/v850.c, objc/objc-act.c: Use %J in diagnostics.
+
+ * tree-inline.c: Include intl.h
+ (inline_forbidden_p_1): Fix i18n of inline_forbidden_reason.
+ * Makefile.in (tree-inline.o): Update.
+
+2003-09-20 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.c (ix86_expand_carry_flag_compare): Fix
+ transformation of a>=0 into (unsigned)a<0x80000000.
+
+2003-09-20 Andrew Pinski <apinski@apple.com>
+
+ * config/darwin.c (machopic_select_rtx_section): Fix check for PIC code.
+
+2003-09-20 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in: Don't set (unused) DLLTOOL.
+
+ * config/arm/t-linux, config/arm/t-netbsd, config/arm-t-semi:
+ Remove obsolete references to ENQUIRE.
+
+2003-09-19 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Remove --with-elf, which doesn't work.
+ * configure: Regenerate.
+ * config.gcc: Remove references to $elf, which does nothing.
+
+ * config/i386/xm-vsta.h: Remove xm-file believed useless.
+ * config.build (i386-vsta): Remove reference to it.
+ * config.host (i386-vsta): Remove reference to it.
+
+2003-09-19 Phil Edwards <phil@codesourcery.com>
+
+ * doc/install.texi: Document the multiple testsuite options.
+
+2003-09-19 Gerald Pfeifer <gerald@pfeifer.com>
+
+ * doc/install.texi (Specific): Add the specific versions of GCC
+ where support for FreeBSD 1, HP-UX version 9 and older, and AIX
+ version 3 and older was discontinued.
+
+2003-09-19 Joel Sherrill <joel@oarcorp.com>
+
+ * config/m68k/t-m68kbare, config/m68k/t-rtems: Change 68681 to
+ 68881.
+
+2003-09-19 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h (TARGET_CPU_CPP_PREDEFINES): Add predefines
+ for -m68030, -m68020-60 and -m68020-40.
+ * config/m68k/m68k.h (TARGET_68030): New target flag.
+ * config/m68k/m68k.h (MASK_RTD, TARGET_RTD, MASK_REGPARM,
+ TARGET_REGPARM): Remove.
+ * config/m68k/m68k.h: Regroup and renumber target flags.
+ * config/m68k/m68k.h (TARGET_SWITCHES): Fix some tabulations.
+ * config/m68k/m68k.h (RETURN_POPS_ARGS): Always evaluate to 0.
+ * config/m68k/m68k.h (FUNCTION_ARG): Likewise.
+ * config/m68k/m68k.h (FUNCTION_ARG_PARTIAL_NREGS): Likewise.
+ * config/m68k/m68k-none.h: Use MASK_xxx values in M68K_CPU_xxx macros.
+
+2003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * config/m68k/t-rtems (m68k-*-rtems*): New.
+ * config.gcc: Use config/m68k/t-rtems.
+
+2003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * config/mips/t-rtems: New.
+ * config.gcc (mips*-*-rtems*): Use config/mips/t-rtems.
+
+2003-09-19 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * cgraph.c: Fix typo in debugging output.
+
+2003-09-19 T. Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/12166
+ * config/sparc/sol2-c1.asm (start): Set __Argv if GCRT1.
+
+2003-09-18 Mike Stump <mrs@apple.com>
+
+ * c-ppoutput.c (print): Use fileline typedef for field 'line'.
+ (print_line, maybe_print_line, cb_define, cb_undef, cb_include,
+ cb_ident, cb_def_pragma): Use fileline typedef.
+ * cpphash.h (struct cpp_reader): Likewise for field out.first_line.
+
+2003-09-18 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/winnt.c (gen_stdcall_suffix): Quit summation of
+ total parm size if a parm has incomplete type.
+ (gen_fastcall_suffix): Likewise.
+
+2003-09-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * except.c (output_function_exception_table): Adjust last change
+ to handle TYPE of INTEGER_CST.
+
+2003-09-18 Mark Mitchell <mark@codesourcery.com>
+
+ PR target/11184
+ * builtins.c (expand_builtin_apply): Use convert_memory_address
+ before returning the value.
+
+ * alias.c (find_base_value): Simplify use of
+ convert_memory_address.
+ (find_base_term): Likewise.
+ * builtins.c (expand_builtin_stejmp_setup): Likewise.
+ (expand_builtin_longjmp): Likewise.
+ (expand_builtin_prefetch): Likewise.
+ (get_memory_rtx): Likewise.
+ (expand_builtin_return): Likewise.
+ (expand_builtin_memcpy): Likewise.
+ (expand_builtin_strncpy): Likewise.
+ (expand_builtin_memset): Likewise.
+ (expand_builtin_va_arg): Likewise.
+ (expand_builtin_va_copy): Likewise.
+ (expand_builtin_alloca): Likewise.
+ * calls.c (expand_call): Likewise.
+ * except.c (expand_builtin_extract_return_addr): Likewise.
+ (expand_builtin_eh_return): Likewise.
+ * explow.c (convert_memory_address): Define even when
+ POINTER_EXTEND_UNSIGNED is not defined. Do nothing if the address
+ is already in the right mode.
+ * explow.c (memory_address): Simplify use of convert_memory_address.
+ (probe_stack_range): Likewise.
+ * expmed.c (make_tree): Likewise.
+ * expr.c (emit_block_move_in_libcall): Likewise.
+ (expand_assignment): Likewise.
+ (expand_expr): Likewise.
+ * function.c (assign_parms): Likewise.
+ (expand_function_end): Likewise.
+ * integrate.c (copy_rtx_and_substitute): Likewise.
+ * stmt.c (expand_computed_goto): Likewise.
+
+2003-09-18 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_unary_operation): Only transform
+ (not (eq X Y)) into (ne X Y) when mode is BImode or STORE_FLAG_VALUE
+ is -1. RTL "not" is a bit-wise not, "~", not a logical not "!".
+
+2003-09-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR target/11674
+ * config/i386/i386.c (x86_emit_floatuns): Also handle SImode operand.
+
+2003-09-18 Roger Sayle <roger@eyesopen.com>
+
+ * tree.def (FFS_EXPR, CLZ_EXPR, CTZ_EXPR, POPCOUNT_EXPR,
+ PARITY_EXPR): Delete unused tree codes.
+ * c-common.c (c_common_truthvalue_conversion): Delete references
+ to FFS_EXPR and POPCOUNT_EXPR.
+ * c-pretty-print.c (pp_c_postfix_expression): Remove FFS_EXPR.
+ (pp_c_expression): Likewise.
+ * expr.c (expand_expr): Delete RTL expansion of FFS_EXPR, CLZ_EXPR,
+ CTZ_EXPR, POPCOUNT_EXPR and PARITY_EXPR.
+ * fold-const.c (tree_expr_nonnegative_p): Remove FFS_EXPR, CLZ_EXPR,
+ CTZ_EXPR, POPCOUNT_EXPR and PARITY_EXPR. Add support for calls to
+ BUILT_IN_FFS, BUILT_IN_PARITY and BUILT_IN_POPCOUNT and their long
+ and long long variants.
+
+2003-09-18 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-pretty-print.h (pp_type_specifier_seq): Fix thinko.
+ * c-pretty-print.c: Fix formatting.
+ (pp_c_integer_constant): Append type annotation to literals. Tidy.
+ (pp_c_type_specifier): Tidy.
+ (pp_c_compound_literal): New function.
+ (pp_c_initializer): Simplify..
+ (pp_c_initializer_list): Likewise.
+ (pp_c_brace_enclosed_initializer_list): New function.
+ (pp_c_postfix_expression): Simplify.
+
+2003-09-17 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.md (andsi3, iorsi3, xorsi3,
+ one_complsi2, bit-clear, bit-set, iorqi3): Make them set_zn.
+
+2003-09-17 Richard Henderson <rth@redhat.com>
+
+ * tree-optimize.c (tree_rest_of_compilation): Save and restore
+ input_location.
+
+2003-09-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/rs6000/sysv4.h (LIB_LINUX_SPEC): Give -lpthread before -lc.
+
+2003-09-17 Richard Henderson <rth@redhat.com>
+
+ * cfg.c (dump_flow_info): Skip register dump if reg_n_info null.
+
+2003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in (gcc_cv_ld_hidden): Don't test gnu_ld_flag.
+ * configure: Regenerate.
+
+2003-09-17 Mark Mitchell <mark@codesourcery.com>
+
+ PR debug/12066
+ * dbxout.c (dbxout_init): Use a langhook to find builtin types.
+ * langhooks-def.h (lhd_return_null_tree_v): New function.
+ (LANG_HOOKS_BUILTIN_TYPE_DECLS): New macro.
+ (LANG_HOOKS_DECLS): Add it to the intializer.
+ * langhooks.c (lhd_return_null_tree_v): New function.
+ * langhooks.h (lang_hooks_for_decls): Add builtin_type_decls.
+
+2003-09-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * configure.in: Quote gcc_config_arguments for configargs.h.
+ * configure: Regenerated.
+ * gccbug.in: Don't shell-expand gcc_config_arguments.
+
+2003-09-17 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR c++/11357
+ * c-pretty-print.c (pp_c_floating_constant): Append
+ type-annotation to floating constants.
+
+2003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5.h (TARGET_OS_CPP_BUILTINS): Define _LONGLONG.
+ Define _ABIO32.
+ Use it for _MIPS_SIM.
+ * config/mips/iris6-o32.h (TARGET_OS_CPP_BUILTINS): Removed.
+
+ * config/mips/iris6-o32-as.h (SUBTARGET_ASM_OPTIMIZING_SPEC):
+ Moved ...
+ * config/mips/iris5.h (SUBTARGET_ASM_OPTIMIZING_SPEC): ... here,
+ updating comment.
+ Fixes PR target/10190.
+
+2003-09-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/rs6000/sysv4.h (LIB_LINUX_SPEC): Make -pthread apply
+ to shared libraries.
+
+2003-09-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11646
+ * cfgrtl.c (purge_dead_edges) [JUMP_INSN]: Rematerialize the
+ EDGE_ABNORMAL flag for EH edges.
+ * toplev.c (rest_of_handle_cse): Delete unreachable blocks
+ if dead edges were purged.
+
+2003-09-16 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Add target predefines.
+ * config/m68k/m68k-none.h (CPP_CPU_DEFAULT_SPEC): Kill all definitions.
+ * config/m68k/m68k-none.h (CPP_FPU_SPEC): Remove.
+ * config/m68k/m68k-none.h (CPP_SPEC): Likewise.
+
+2003-09-16 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * cfgcleanup.c (label_is_jump_target_p): Correct use of table
+ returned by tablejump_p.
+
+2003-09-16 Joel Brobecker <brobecker@gnat.com>
+
+ * dwarf2asm.c (dw2_asm_output_nstring): Add comment.
+
+2003-09-16 Roger Sayle <roger@eyesopen.com>
+
+ PR bootstrap/12269
+ * simplify-rtx.c (simplify_gen_relational): Allow the cmp_mode
+ argument to be VOIDmode, taking the mode of the comparison from
+ the operands. Only call simplify_relational_operation if we
+ know the mode of the comparison. Honor FLOAT_STORE_FLAG_VALUE
+ if comparison has a floating point result. Ensure that the
+ result is always of the specified mode.
+ (simplify_replace_rtx): Simplify call to simplify_gen_relational.
+ (simplify_unary_operation): Ensure the correct mode and cmp_mode
+ are always passed to simplify_gen_relational. Simplify NOT of
+ comparison operator in any mode, not just BImode.
+ (simplify_ternary_operation): Correct tests on the return value
+ of simplify_relational_operation to use const_true_rtx, not
+ const1_rtx. Abort if it ever returns a non-constant result.
+
+ * cfgloopanal.c (count_strange_loop_iterations): Use the function
+ simplify_relational_operation, not simplify_gen_relational, if
+ we're only interested in constant comparisons and will ignore
+ non-constant results.
+
+2003-09-16 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (tree_swap_operands_p): New function to determine
+ the prefered ordering of operands.
+ (fold): Numerous clean-ups. Use tree_swap_operands_p when swapping
+ operands to commutative, comparison or ternary operators. Replace
+ uses of TREE_SET_CODE with recursive call to fold. Remove duplicate
+ transformation of A ? B : C into !A ? C : B.
+
+2003-09-16 Jakub Jelinek <jakub@redhat.com>
+
+ * config/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+ * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+ * config/arm/linux-elf.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+ * config/rs6000/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+ * config/rs6000/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+ * config/sh/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+ * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+ * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
+
+2003-09-16 Jason Merrill <jason@redhat.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ * c-common.c (handle_warn_unused_result_attribute): New function.
+ (c_common_attribute_table): Add warn_unused_result.
+ (c_expand_expr): Issue warning when result of inlined function
+ with warn_unused_result attribute is ignored.
+ * calls.c (expand_call): Issue warning when result of function
+ with warn_unused_result attribute is ignored.
+ * c-common.h (STMT_EXPR_WARN_UNUSED_RESULT): Define.
+ * expr.c (expr_wfl_stack): Define.
+ (expand_expr) <case EXPR_WITH_FILE_LOCATION>: If ignore,
+ pass const0_rtx as target. Chain locations into expr_wfl_stack.
+ * tree-inline.c (expand_call_inline): Set STMT_EXPR_WARN_UNUSED_RESULT
+ bit if inlined function has warn_unused_result attribute.
+ * input.h (expr_wfl_stack): Declare.
+ * doc/extend.texi: Document warn_unused_result attribute.
+
+2003-09-15 Alexandre Oliva <aoliva@redhat.com>
+
+ * cpplib.c (do_pragma): Remove unnecessary cb_line_change.
+
+2003-09-15 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Add
+ ATTRIBUTE_UNUSED.
+ (call_insn_operand): For PIC, don't allow a direct call to a
+ function in a different section than the current one.
+
+2003-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ * doc/invoke.texi (Warning Options): Add missing hyphen before
+ "Wimport". Change "-Wno-endif-labels" to "-Wendif-labels".
+ Move "-Wold-style-definition" to the C-only section.
+ Fix the ordering of the warning options.
+
+2003-09-15 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+ Jeff Law <law@redhat.com>
+
+ * gcse.c (remove_reachable_equiv_notes): New.
+ replace_store_insn): Call it. Update antic list.
+ (store_killed_in_insn): Take REG_EQUAL notes into account.
+ (build_store_vectors, delete_store): Add parameter to
+ replace_store_insn call.
+
+2003-09-15 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (LEGITIMATE_PIC_OPERAND_P): Use
+ SYMBOL_REF_LOCAL_P.
+
+2003-09-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.h (DEFAULT_FUNCTION_ARG_PADDING): New.
+ (FUNCTION_ARG_PADDING): Use DEFAULT_FUNCTION_ARG_PADDING.
+ * config/ia64/ia64.c (ia64_hpux_function_arg_padding):
+ Likewise.
+ * config/m68hc11/m68hc11.c (m68hc11_function_arg_padding):
+ Likewise.
+ * config/rs6000/rs6000.c (function_arg_padding): Likewise.
+ * config/sparc/sparc.c (function_arg_padding): Likewise.
+
+2003-09-15 Vladimir Makarov <vmakarov@redhat.com>
+
+ * haifa-sched.c (schedule_block): Use ready_remove_first instead
+ of choose_ready for non-dfa insn scheduling.
+
+2003-09-15 Andreas Jaeger <aj@suse.de>
+ Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * doc/invoke.texi (Warning Options): Describe -Wold-style-definition.
+ * c-opts.c (c_common_handle_option): Handle OPT_Wold_style_definition.
+ * c-parse.in: Warn about old-style parameter definition.
+ * c-common.c: Define warn_old_style_defintion.
+ * c-common.h: Declare it.
+ * c.opt: Add Wold-style-defintion.
+
+2003-09-15 Andreas Jaeger <aj@suse.de>
+
+ * config/rs6000/altivec.h: Convert () prototypes to ISO C90.
+ * config/rs6000/rs6000.c: Likewise.
+
+2003-09-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR optimization/10914
+ * expr.h (get_condition, canonicalize_condition): Declaration changed.
+ * cfgloopanal.c (simple_loop_exit_p): Add parameter to a get_condition
+ and canonicalize_condition calls.
+ * gcse.c (fis_get_condition, delete_null_pointer_checks_1,
+ delete_null_pointer_checks): Ditto.
+ * ifcvt.c (noce_get_alt_condition, noce_get_condition): Ditto.
+ * predict.c (estimate_probability, expected_value_to_br_prob): Ditto.
+ * loop.c (check_dbra_loop, get_condition_for_loop): Ditto.
+ (canonicalize_condition, get_condition): Allow to return comparisons
+ of cc mode registers.
+ * loop-unswitch.c (may_unswitch_on_p, unswitch_single_loop): Allow
+ cc mode registers comparison in condition.
+
+2003-09-12 Mark Mitchell <mark@codesourcery.com>
+
+ * coverage.c (create_coverage): Do not call pushlevel/poplevel.
+ * langhooks-def.h (lhd_do_nothing_iii_return_null_tree): New
+ function.
+ * langhooks.c (lhd_do_nothing_iii_return_null_tree): Define it.
+
+2003-09-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c (simplify_comparison): Convert
+ (ne (and (lshiftrt (xor X CST) Y) 1) 0) into
+ (eq (and (lshiftrt X Y) 1) 0).
+
+2003-09-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c: Follow spelling conventions.
+ * cpphash.h: Likewise.
+ * fold-const.c: Likewise.
+
+2003-09-14 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-ppoutput.c (cb_line_change): Revert 2003-08-04's change.
+ * c-lex.c (cb_line_change): Skip line changing whenever
+ c-ppoutput.c would.
+
+2003-09-14 Steven Bosscher <steven@gcc.gnu.org>
+
+ * ra.c: Convert to ISO C90 prototypes.
+ * ra-build.c: Likewise.
+ * ra-colorize.c: Likewise.
+ * ra-debug.c: Likewise.
+ * ra-rewrite.c: Likewise.
+
+2003-09-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * Makefile.in (%.dvi): Remove excess $(docdir).
+
+2003-09-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * function.c (STACK_BYTES): Move definition to head of file.
+ (assign_parms): Don't pass current_function_pretend_args_size
+ directly to SETUP_INCOMING_VARARGS. For partial register arguments,
+ round current_function_pretend_args_size up to STACK_BYTES. Skip any
+ excess before laying out the argument.
+
+2003-09-14 Andreas Jaeger <aj@suse.de>
+
+ * objc/objc-act.c: Convert to ISO C90 prototypes.
+ * objc/objc-act.h: Likewise.
+
+2003-09-14 Olaf Hering <olh@suse.de>
+
+ * config/rs6000/rs6000.c: Fix typo: Remove extra ')'.
+
+2003-09-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/12021
+ * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Remove the asserts
+ as they already are done in config/m68k/m68k.h.
+ * config/m68k/netbsd.h (TARGET_OS_CPP_BUILTINS): Likewise
+
+ * config/rs6000/rs6000.c (GEN_LOCAL_LABEL_FOR_SYMBOL): Remove.
+ (machopic_output_stub): Only generate pic base symbols when using pic
+ and generate them in the form L00000000$spb.
+
+2003-09-13 Richard Henderson <rth@redhat.com>
+
+ * cgraphunit.c (cgraph_assemble_pending_functions): Export.
+ (cgraph_finalize_function): Revert TREE_ASM_WRITTEN check.
+ * cgraph.h: Update.
+
+2003-09-12 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.c: Fix typos in previous.
+
+2003-09-12 Ziemowit Laski <zlaski@apple.com>
+
+ * pretty-print.c (pp_construct): Use xcalloc instead of xmalloc
+ when allocating pp->buffer.
+
+2003-09-12 Geoffrey Keating <geoffk@apple.com>
+
+ * config/darwin.c (machopic_select_rtx_section): Use
+ const_data_section for things that might require relocation.
+
+2003-09-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR bootstrap/12264
+ * tree-inline.c (inline_forbidden_p_1): Cast the 3rd arg to tree.
+
+2003-09-12 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/elf.h (ASM_SPEC): Remove no-density option. Reformat.
+ * config/xtensa/linux.h (ASM_SPEC): Likewise.
+ * config/xtensa/xtensa.h (TARGET_SWITCHES): Remove -mbig-endian,
+ -mlittle-endian, -m[no-]density, -m[no-]abs, -m[no-]addx, -m[no-]mac16,
+ -m[no-]mul16, -m[no-]mul32, -m[no-]nsa, -m[no-]minmax, -m[no-]sext,
+ -m[no-]booleans, -mhard-float, -msoft-float, -m[no-]hard-float-div,
+ -m[no-]hard-float-recip, -m[no-]hard-float-sqrt, and
+ -m[no-]hard-float-rsqrt options. Delete corresponding MASK_* macros
+ and redefine corresponding TARGET_* macros with constants from the
+ xtensa-config.h header.
+ * doc/invoke.texi (Option Summary, Xtensa Options): Remove documention
+ for the options listed above.
+
+2003-09-12 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000-protos.h: Use C90 prototypes.
+ * config/rs6000/rs6000-c.c: Ditto.
+ * config/rs6000/rs6000.c: Ditto.
+ * config/rs6000/ sysv4.h: Ditto.
+
+2003-09-12 Chris Lattner <sabre@nondot.org>
+
+ * loop.c: Move comments describing BIV's and GIV's to top of file
+
+2003-09-12 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/8967
+ * alias.c (write_dependence_p): Modify to take an additional constp
+ argument that controls whether the UNCHANGING_RTX_P flags are used.
+ (anti_dependence, output_dependence): Adjust write_dependence_p
+ callers to pass this additional argument, to return the same result.
+ (unchanging_anti_dependence): New variant of anti_dependence that
+ ignores the UNCHANGING_RTX_P property on memory references.
+ * rtl.h (unchaning_anti_dependence): Prototype here.
+ * flow.c (init_propagate_block): Place fake constant mem writes on
+ the mem_set_list so that dead writes to const variables are deleted.
+ (insn_dead_p): Change anti_dependence to unchanging_anti_dependence.
+ (mark_used_regs): Likewise.
+
+2003-09-12 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mcore/mcore-protos.h (mcore_r15_operand_p): Declare.
+ (mcore_secondary_reload_class): Declare.
+ (mcore_output_inline_const_forced): Remove.
+ * config/mcore/mcore.md (movsi): Remove the code that forced
+ non-inlineable constants into a register if the target was r15
+ or the stack pointer. Remove constant restrictions from the main
+ define_insn. Remove r <- I, r <- M and r <- N alternatives in favor
+ of an r <- P alternative. Remove fallback define_insn for reload.
+ (movhi, movqi): Use gen_lowpart rather than gen_SUBREG. Remove reload
+ define_insn. Use mcore_output_move in the remaining define_insn.
+ Adjust condition and constraints in the way as for movsi.
+ (movdi): Always split unacceptable constants into two. Use
+ simplify_gen_subreg instead of operand_subword{,_force}.
+ * config/mcore/mcore.c (mcore_output_inline_const_forced): Remove.
+ (mcore_output_move): Support HImode and QImode moves as well.
+ (mcore_m15_operand_p): New function.
+ (mcore_reload_class): Use it to detect cases where LRW_REGS are better.
+ (mcore_secondary_reload_class): New function.
+ * config/mcore/mcore.h (SECONDARY_RELOAD_CLASS): Redefine in
+ terms of mcore_secondary_reload_class.
+
+2003-09-11 Mike Stump <mrs@apple.com>
+
+ * c-lex.c (fe_file_change): Don't transform to_line with SOURCE_LINE.
+
+2003-09-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin_logarithm): if N can't be truncated to
+ MODE exactly, then only convert logN(N) -> 1.0 if
+ flag_unsafe_math_optimizations is set.
+
+ * builtins.c (builtin_dconsts_init, dconstpi, dconste,
+ init_builtin_dconsts): Delete.
+ * emit-rtl.c (dconstpi, dconste): Define.
+ (init_emit_once): Initialize dconstpi & dconste.
+ * real.h (dconstpi, dconste): Declare.
+
+2003-09-11 Alexandre Oliva <aoliva@redhat.com>
+
+ PR fortran/11522
+ * dwarf2out.c (gen_inlined_subroutine_die): Emit abstract function
+ for ultimate origin even if block is abstract.
+
+2003-09-11 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (combine_simplify_rtx): Move several NOT and NEG
+ optimizations from here...
+ * simplify-rtx.c (simplify_unary_operation): to here. Recursively
+ simplify expressions using simplify_gen_*ary instead of gen_rtx_*.
+
+2003-09-11 Richard Henderson <rth@redhat.com>
+
+ * cgraphunit.c (cgraph_finalize_function): Add nested arg.
+ Tweek tests for function already generated.
+ (cgraph_expand_function): Don't double announce in !unit-at-a-time.
+ * cgraph.h (cgraph_finalize_function): Update for extra arg.
+ * c-decl.c (finish_function): Likewise.
+
+2003-09-10 Joe Buck <jbuck@welsh-buck.org>
+
+ * c-decl.c (poplevel): Eliminate use of |= in function_body assignment.
+
+2003-09-10 Jerry Quinn <jlquinn@optonline.net>
+
+ * real.c: Update URL to VAX floating point docs.
+ (decode_vax_d): Extract 8 exponent bits instead of 7.
+
+2003-09-10 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * combine.c (force_to_mode): Set fuller_mask based only on mask,
+ not op_mode.
+
+2003-09-11 Jan Hubicka <jh@suse.cz>
+
+ * c-objc-common.c (c_cannot_inline_tree_fn): Warn
+ on why function is not inlinable; do not check
+ the body.
+ (inline_forbidden_p): Move to...
+ * tree-inline.c (inline_forbidden_p_1): ... here; Add warnings;
+ deal with alloca, longjmp.
+ (inline_forbidden_p): New static function.
+ (find_alloca_call_1, find_alloca_call, find_builtin_longjmp_call_1,
+ find_builtin_longjmp_call): Kill.
+
+2003-09-10 Richard Henderson <rth@redhat.com>
+
+ * cgraph.h (struct cgraph_node): Rename lowered to analyzed.
+ * cgraphunit.c: Update to match.
+ (record_call_1): Rearrange. Call lang hook for language nodes.
+ (cgraph_analyze_function): Don't call lower_function.
+ * langhooks.h (struct lang_hooks_for_callgraph): Replace
+ lower_function with analyze_expr.
+ * langhooks-def.h: Update to match.
+ * langhooks.c (lhd_callgraph_analyze_expr): New.
+
+2003-09-10 Martin Husemann <martin@duskware.de>
+
+ PR target/11965
+ * config/sparc/sparc.c (sparc_v8plus_shift): Protect against
+ constants greater than 63.
+ * config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect
+ against constants greater than 31.
+ (*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against
+ constants greater than 63.
+
+2003-09-09 Richard Henderson <rth@redhat.com>
+
+ * cgraphunit.c (cgraph_finalize_function): Remove unused argument.
+ * cgraph.h (cgraph_finalize_function): Update.
+ * c-decl.c (finish_function): Update.
+
+2003-09-09 Devang Patel <dpatel@apple.com>
+
+ * config/darwin.h (LINK_SPEC): Pass -nofixprebinding to linker.
+ * doc/invoke.texi: Document new Darwin linker option -nofixprebinding.
+
+2003-09-09 Eric Christopher <echristo@redhat.com>
+
+ * configure.in: Change usage of 'head' to 'sed 1q'.
+ * configure: Regenerate.
+
+2003-09-09 Richard Henderson <rth@redhat.com>
+
+ * except.c: Include cgraph.h.
+ (output_function_exception_table): Invoke
+ cgraph_varpool_mark_needed_node.
+ * Makefile.in (except.o): Update.
+
+2003-09-07 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * Makefile.in: Define REMAKEFLAGS for LANGUAGES & BOOT_CFLAGS
+ and use it throughout.
+
+2003-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (real_dconstp, fold_builtin_logarithm,
+ fold_builtin_exponent): New, split out from fold_builtin. Also
+ generalize to add log2, log10, exp2 and exp10/pow10 equivalents.
+ * emit-rtl.c (dconst3, dconst10, dconstthird): New.
+ (init_emit_once): Initialize new dconsts, use ARRAY_SIZE in lieu
+ of hardcoded array size.
+ * fold-const.c (fold): Add cases for exp2, exp10 and pow10.
+ (tree_expr_nonnegative_p): Likewise.
+ * real.h (dconst3, dconst10, dconstthird): New.
+
+2003-09-09 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_finalize_function): Fix handling of extern
+ inline functions.
+ (cgraph_finalize_compilation_unit): Fix crash when dealing with lost
+ DECL_SAVED_TREE.
+
+2003-09-09 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (fold_builtin_cabs): Protect the complex argument
+ against multiple evaluation when optimizing cabs* into sqrt*.
+
+2003-09-09 Jan Hubicka <jh@suse.cz>
+
+ * varasm.c (notice_global_symbol): Properly deal with weak symbols.
+
+2003-09-08 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * Makefile.in: Revert yesterday's change.
+
+2003-09-08 Bernardo Innocenti <bernie@develer.com>
+ Peter Barada <peter@baradas.org>
+
+ * config/m68k/coff.h (REGISTER_NAMES): Add fake register `argptr'
+ * config/m68k/hp320.h (REGISTER_NAMES): Likewise.
+ * config/m68k/linux.h (REGISTER_NAMES): Likewise.
+ * config/m68k/m68kelf.h (REGISTER_NAMES): Likewise.
+ * gcc/config/m68k/sgs.h (REGISTER_NAMES): Likewise.
+ * config/m68k/m68k-protos.h (m68k_initial_elimination_offset): Add prototype.
+ * config/m68k/m68k.c (m68k_frame): New struct, simular to ix86 back-end.
+ (m68k_compute_frame_layout): New function.
+ (m68k_initial_elimination_offset): New function.
+ (m68k_output_function_prologue): ColdFire-specific movem handling.
+ (m68k_output_function_epilogue): Likewise.
+ * config/m68k/m68k.h (FIRST_PSEUDO_REGISTER): Make room for argptr reg.
+ (ARG_POINTER_REGNUM): Add new definition.
+ (INITIAL_FRAME_POINTER_OFFSET): Remove macro.
+ (ELIMINABLE_REGS): Define new macro, like in ix86 back-end.
+ (CAN_ELIMINATE): Likewise.
+ (INITIAL_ELIMINATION_OFFSET): Likewise.
+
+2003-09-08 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c (m68k_output_function_prologue): Simplify
+ by removing redundant variable cfa_store_offset.
+
+2003-09-08 Mark Mitchell <mark@codesourcery.com>
+
+ * langhooks-def.h (lhd_register_builtin_type): New function.
+ (LANG_HOOKS_REGISTER_BUILTIN_TYPE): New macro.
+ (LANG_HOOKS_FOR_TYPES_INITIALIZER): Update.
+ * langhooks.h (lang_hooks_for_types): Add register_builtin_type.
+ * langhooks.c (lhd_register_builtin_type): New function.
+ * c-common.h (c_register_builtin_type): Declare.
+ * c-common.c (c_register_builtin_type): New function.
+ * c-lang.c (LANG_HOOKS_REGISTER_BUILTIN_TYPE): Define to
+ c_register_builtin_type.
+ * config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Remove __fpreg,
+ __float80, and __float128 macros.
+ * config/ia64/ia64.c (ia64_init_builtins): Create __fpreg,
+ __float80, and __float128 types.
+
+2003-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-types.def
+ (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
+ BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
+ BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT): New.
+ * builtins.def (BUILT_IN_CACOS, BUILT_IN_CACOSF, BUILT_IN_CACOSH,
+ BUILT_IN_CACOSHF, BUILT_IN_CACOSHL, BUILT_IN_CACOSL,
+ BUILT_IN_CARG, BUILT_IN_CARGF, BUILT_IN_CARGL, BUILT_IN_CASIN,
+ BUILT_IN_CASINF, BUILT_IN_CASINH, BUILT_IN_CASINHF,
+ BUILT_IN_CASINHL, BUILT_IN_CASINL, BUILT_IN_CATAN,
+ BUILT_IN_CATANF, BUILT_IN_CATANH, BUILT_IN_CATANHF,
+ BUILT_IN_CATANHL, BUILT_IN_CATANL, BUILT_IN_CCOS, BUILT_IN_CCOSF,
+ BUILT_IN_CCOSH, BUILT_IN_CCOSHF, BUILT_IN_CCOSHL, BUILT_IN_CCOSL,
+ BUILT_IN_CEXP, BUILT_IN_CEXPF, BUILT_IN_CEXPL, BUILT_IN_CPOW,
+ BUILT_IN_CPOWF, BUILT_IN_CPOWL, BUILT_IN_CPROJ, BUILT_IN_CPROJF,
+ BUILT_IN_CPROJL, BUILT_IN_CSIN, BUILT_IN_CSINF, BUILT_IN_CSINH,
+ BUILT_IN_CSINHF, BUILT_IN_CSINHL, BUILT_IN_CSINL, BUILT_IN_CSQRT,
+ BUILT_IN_CSQRTF, BUILT_IN_CSQRTL, BUILT_IN_CTAN, BUILT_IN_CTANF,
+ BUILT_IN_CTANH, BUILT_IN_CTANHF, BUILT_IN_CTANHL, BUILT_IN_CTANL):
+ New.
+ * doc/extend.texi: Document new builtins.
+
+2003-09-09 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_varpool_finalize_decl): Sanity check duplicated
+ finalization.
+ * cgraphunit.c (decide_is_fnction_needed): Avoid special case of nested
+ functions, check for COMDAT.
+ (cgraph_assemble_pending_functions): Break out from...
+ (cgraph_finalize_function): ... here; allow redefinig of extern inline
+ functions.
+ (record_call_1): Record function references only in non-unit-at-a-time
+ mode.
+ (cgraph_analyze_function): Reset current_function_decl.
+ (cgraph_finalize_compilation_unit): Assemble pending functions.
+
+2003-09-08 Mark Mitchell <mark@codesourcery.com>
+
+ * mklibgcc.in (libcc.a): Depend on stmp-dirs.
+ (libgov.a): Likewise.
+ (libgcc_eh.a): Likewise.
+
+2003-09-08 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (operand_equal_p): Clarify documentation.
+
+2003-09-08 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (c_expand_body_1): Push and pop function context here.
+ * tree-optimize.c (tree_rest_of_compilation): ... not here. Take
+ nested argument instead of computing nesting ourselves.
+
+2003-09-08 Jakub Jelinek <jakub@redhat.com>
+
+ * toplev.c (rest_of_handle_stack_regs): Call split_all_insns before
+ regstack if optimizing but not scheduling after reload.
+
+2003-09-08 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.c (struct machine_function): New type.
+ (TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
+ (sparc_override_options): Initialize init_machine_status.
+ (tls_symbolic_operand, tgd_symbolic_operand, tld_symbolic_operand,
+ tie_symbolic_operand, tle_symbolic_operand): New functions.
+ (symbolic_operand): Disallow tls_symbolic_operand.
+ (symbolic_memory_operand): Likewise.
+ (tls_call_delay, sparc_cannot_force_const_mem, legitimate_constant_p,
+ constant_address_p, legitimate_pic_operand_p, legitimate_address_p):
+ New functions.
+ (sparc_tls_symbol): New variable.
+ (sparc_tls_get_addr, sparc_tls_got, legitimize_tls_address,
+ legitimize_address): New functions.
+ (print_operand): Handle %&.
+ (sparc_init_machine_status, get_some_local_dynamic_name,
+ get_some_local_dynamic_name_1): New functions.
+ (sparc_output_dwarf_dtprel): New function.
+ * config/sparc/sparc.h (CONSTANT_ADDRESS_P): Moved into
+ constant_address_p.
+ (LEGITIMATE_PIC_OPERAND_P): Moved into legitimate_pic_operand_p.
+ (LEGITIMATE_CONSTANT_P): Moved into legitimate_constant_p.
+ (GO_IF_LEGITIMATE_ADDRESS): Moved into legitimate_address_p.
+ (LEGITIMIZE_ADDRESS): Moved into legitimize_address.
+ (PRINT_OPERAND_PUNCT_VALID_P): Add '&'.
+ (TARGET_TLS, TARGET_SUN_TLS, TARGET_GNU_TLS): Define.
+ (ASM_OUTPUT_DWARF_DTPREL): Define.
+ (PREDICATE_CODES): Add tgd_symbolic_operand, tld_symbolic_operand,
+ tie_symbolic_operand, tle_symbolic_operand.
+ * config/sparc/sparc.md (UNSPEC_TLSGD, UNSPEC_TLSLDM, UNSPEC_TLSLDO,
+ UNSPEC_TLSIE, UNSPEC_TLSLE, UNSPEC_TLSLD_BASE): New constants.
+ (tls_call_delay): New attribute.
+ (in_call_delay): Use it.
+ (movqi, movhi, movsi, movdi): Call legitimize_tls_address if needed.
+ (tgd_hi22, tgd_lo10, tgd_add32, tgd_add64, tgd_call32, tgd_call64,
+ tldm_hi22, tldm_lo10, tldm_add32, tldm_add64, tldm_call32, tldm_call64,
+ tldo_hix22, tldo_lox10, tldo_add32, tldo_add64, tie_hi22, tie_lo10,
+ tie_ld32, tie_ld64, tie_add32, tie_add64, tle_hix22_sp32,
+ tle_lox10_sp32, tle_hix22_sp64, tle_lox10_sp64): New insns.
+ (tldo_ldub_sp32, tldo_ldub1_sp32, tldo_ldub2_sp32, tldo_ldsb1_sp32,
+ tldo_ldsb2_sp32, tldo_ldub_sp64, tldo_ldub1_sp64, tldo_ldub2_sp64,
+ tldo_ldub3_sp64, tldo_ldsb1_sp64, tldo_ldsb2_sp64, tldo_ldsb3_sp64,
+ tldo_lduh_sp32, tldo_lduh1_sp32, tldo_ldsh1_sp32, tldo_lduh_sp64,
+ tldo_lduh1_sp64, tldo_lduh2_sp64, tldo_ldsh1_sp64, tldo_ldsh2_sp64,
+ tldo_lduw_sp32, tldo_lduw_sp64, tldo_lduw1_sp64, tldo_ldsw1_sp64,
+ tldo_ldx_sp64, tldo_stb_sp32, tldo_stb_sp64, tldo_sth_sp32,
+ tldo_sth_sp64, tldo_stw_sp32, tldo_stw_sp64, tldo_stx_sp64): New
+ insns.
+ * config/sparc/sparc-protos.h (legitimate_constant_p,
+ constant_address_p, legitimate_pic_operand_p, legitimate_address_p,
+ legitimize_tls_address, legitimize_address, tls_symbolic_operand,
+ tls_call_delay, sparc_output_dwarf_dtprel): New prototypes.
+ * config/sparc/linux.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Define.
+ * config/sparc/linux64.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Likewise.
+ * configure.in (sparc*-*-*): Add TLS check.
+ * configure: Rebuilt.
+
+2003-09-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/11689
+ * config/i386/i386.c (memory_address_length): Fix computation when
+ the base is esp or ebp.
+
+2003-09-07 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11852
+ * varasm.c (initializer_constant_valid_p): Correct logic for
+ CONSTRUCTORs.
+
+2003-09-07 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c (expand_operands): New function to expand an operand pair.
+ (expand_expr): Call expand_operands whenever we need to expand both
+ operands of a binary operator.
+ (do_store_flag): Likewise for operands of comparison operations.
+
+2003-09-07 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (combine_simplify_rtx): Don't convert -(A*B) into
+ (-A)*B if we care about sign-dependent rounding.
+
+2003-09-07 Gabriel Dos Reis <gcc@integrable-solutions.net>
+
+ * c-pretty-print.h (pp_c_left_brace): Declare.
+ (pp_c_right_brace): Likewise.
+ * c-pretty-print.c (pp_c_left_brace): Now a function
+ (pp_c_right_brace): Likewise.
+
+2003-09-07 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch.
+
+2003-09-07 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * diagnostic.c (warn_deprecated_use): Move to toplev.c
+
+2003-09-07 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * langhooks.c (lhd_print_error_function): Move from diagnostic.c.
+ * Makefile.in (langhooks.o): Depend on diagnostic.h
+
+2003-09-06 James E Wilson <wilson@tuliptree.org>
+
+ * loop.c (loop_regs_update): Delete else clause for PATTERN rtx and
+ simplify.
+
+2003-09-07 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * Makefile.in: Define $REMAKE to be $MAKE with LANGUAGES & BOOT_CFLAGS
+ and use it throughout.
+
+2003-09-07 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (try_simplify_condjump): Fix my previous patch.
+
+ * toplev.c (rest_of_decl_compilation): Do not finalize external
+ virables.
+
+ * cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized
+ functions.
+ (cgraph_varpool_finalize_decl): Notice global symbol when needed.
+
+2003-09-06 Jan Hubicka <jh@suse.cz>
+
+ PR target/12070
+ * calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments.
+
+ PR opt/12082
+ * cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning.
+
+2003-09-06 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * diagnostic.c (announce_function): Move to toplev.c.
+
+2003-09-06 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * gcse.c (expr_equiv_p): Don't consider anything to be equal to
+ volatile mem.
+
+2003-09-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ggc-common.c (init_ggc_heuristics): Don't use the heuristics
+ when gc checking is enabled.
+
+2003-09-06 Steven Bosscher <steven@gcc.gnu.org>
+
+ PR c/9862
+ * c-decl.c (c_expand_body_1): Move return warning from here...
+ (finish_function): ...to here.
+
+2003-09-05 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Always return
+ a subset of the input class.
+
+2003-09-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i860/i860.c: Follow spelling conventions.
+ * config/i860/i860.h: Likewise.
+ * config/sh/sh.h: Likewise.
+
+2003-09-05 Nitin Yewale <NitinY@KPITCummins.com>
+
+ * config/h8300/h8300-protos.h: Declare h8300_hard_regno_rename_ok
+ * config/h8300/h8300.h (HARD_REGNO_RENAME_OK): New.
+ * config/h8300/h8300.c (h8300_hard_regno_rename_ok): New.
+
+2003-09-05 Roger Sayle <roger@eyesopen.com>
+ Richard Henderson <rth@redhat.com>
+
+ PR optimization/1823
+ * expmed.c (expand_divmod <EXACT_DIV_EXPR>): Use an unsigned
+ multiplication to implement division by constant integer.
+
+2003-09-05 Jan Hubicka <jh@suse.cz>
+
+ * opts.c (decode_options): Enable unit-at-a-time at -O2.
+ * params.def (max-inline-insns-single): Set to 500
+ (max-inline-insns-auto): Set to 150
+ * invoke.texi (max-inline-insns-single, max-inline-insns-auto): Update.
+
+2003-09-04 Richard Henderson <rth@redhat.com>
+
+ * cgraph.c (cgraph_mark_reachable_node): Split out from ...
+ (cgraph_mark_needed_node): Remove needed argument.
+ * cgraph.h: Update to match.
+ * cgraphunit.c (decide_is_function_needed): Split out from ...
+ (cgraph_finalize_function): Reorg. Avoid deferred_inline_function
+ if we generated the function.
+ (record_call_1): Update for cgraph_mark_reachable_node.
+ * varasm.c (mark_referenced): Likewise.
+ * objc/objc-act.c (mark_referenced_methods): Likewise.
+
+2003-09-04 DJ Delorie <dj@redhat.com>
+
+ * targhooks.c: Add comment explaining the migration process.
+
+2003-09-04 Eric Christopher <echristo@redhat.com>
+
+ * config/frv/t-frv: Fix path for frv-abi.h.
+ * config/frv/frv-asm.h: Fix string concatenation.
+
+2003-09-04 DJ Delorie <dj@redhat.com>
+
+ * builtins.c (apply_args_size): Guard against a NULL cfun.
+ (expand_builtin_apply_args_1): Likewise.
+ (expand_builtin_apply): Likewise.
+ Fixes PR bootstrap/12172.
+
+2003-09-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in (gcc_cv_as_ix86_cmov_sun_syntax): Check if
+ assembler supports Sun syntax for cmov.
+ * configure: Regenerate.
+ * config.in: Likewise.
+ * config/i386/i386.c: Rename CMOV_SUN_AS_SYNTAX to
+ HAVE_AS_IX86_CMOV_SUN_SYNTAX.
+ * config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Remove.
+ Fixes PR target/12101.
+
+2003-09-04 Matt Austern <austern@apple.com>
+
+ * c-common.c (fname_as_string): Use lang_hooks.decl_printable_name
+ with verbosity 0, instead of DECL_NAME, for human-readable string.
+
+2003-09-04 Eric Christopher <echristo@redhat.com>
+
+ * targhooks.c (default_return_in_memory): Allow
+ unconverted ports.
+
+2003-09-04 Eric Christopher <echristo@redhat.com>
+
+ * targhooks.c (default_return_in_memory): Fix typo
+ in last checkin.
+
+2003-09-04 Eric Christopher <echristo@redhat.com>
+
+ * targhooks.c (default_return_in_memory): Fix default
+ definition.
+
+2003-09-04 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c (m68k_coff_asm_named_section): Restore
+ deleted function.
+ * config/m68k/coff.h (M68K_TARGET_COFF): Add flag used to
+ enable coff-only code in m68k.c.
+
+2003-09-04 Nick Clifton <nickc@redhat.com>
+
+ * config.gcc: Add v850e1 target. Allow --with-cpu to accept
+ v850e1.
+ * config/v850/v850.h: Accept v850e1 as a default CPU.
+ Accept -mv850e1 as a command line option.
+ * doc/invoke.texi: Document new -mv850e1 command line switch.
+ * config/v850/t-v850: Treat -mv850e1 as a multilib alias for
+ -mv850e.
+
+2003-09-04 Nick Clifton <nickc@redhat.com>
+
+ * config.gcc (v850e-*-*): Use t-v850e makefile fragment.
+ * config/v850/t-v850: Only produce one extra multilib - for
+ the v850e.
+ * config/v850/t-v850e: New file: Only produce one extra
+ multilib - for the v850.
+
+2003-09-04 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2.
+ * config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function.
+ * unwind.h (_Unwind_GetBSP): New prototype.
+ * libgcc-std.ver: Add empty GCC_3.3.2 version.
+ * mkmap-symver.awk: For symbol versions with no exported symbols,
+ don't put anything into version script, just change all symbol
+ versions which inherit from it to inherit from its ancestor.
+
+2003-09-04 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.c (mips_expand_prologue): Convert to
+ calls.struct_value_rtx hook.
+ (reg_or_const_float_1_operand): New.
+ * config/mips/mips.h: Update Comments.
+ (mips_arg): Add reg_or_const_float_1_operand.
+ * config/mips/mips.md (divdf3); Convert to expander.
+ (divsf3): Ditto.
+ (*divdf3): New pattern.
+ (*divsf3): Ditto.
+
+2003-09-04 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (wrapup_global_declarations): Fix final pass in
+ unit-at-atime mode.
+
+2003-09-04 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/extend.texi: Document removal of cast-as-lvalue extension in
+ C++.
+
+2003-09-04 Nicolas Roche <roche@act-europe.fr>
+
+ * gcc.c (process_command): Fix typo.
+
+2003-09-03 David O'Brien <obrien@FreeBSD.org>
+
+ optimization/11980
+ * config/i386/freebsd.h (SIZE_TYPE): Support TARGET_64BIT.
+ (PTRDIFF_TYPE): Likewise.
+ (WCHAR_TYPE_SIZE): Likewise.
+
+2003-09-03 DJ Delorie <dj@redhat.com>
+
+ * targhooks.c: New file.
+ * targhooks.h: New file.
+ * Makefile.in: Add targhooks.o support.
+ (function.o): Depend on$(TARGET_H).
+ (stmt.o): Likewise.
+ (combine.o): Depend on $(TREE_H) and $(TARGET_H).
+ * builtins.c (apply_args_size, expand_builtin_apply_args_1,
+ expand_builtin_apply): Convert to calls.struct_value_rtx hook.
+ (expand_builtin_saveregs): Convert to
+ calls.expand_builtin_saveregs hook.
+ * c-decl.c (start_decl): Handle new calls.promote_prototypes hook
+ here, instead of ...
+ (get_parm_info) ... here.
+ (store_parm_decls_oldstyle): Convert to calls.promote_prototypes
+ hook.
+ (finish_function): Handle calls.promote_prototypes hook here too.
+ * c-typeck.c (convert_arguments): Convert to
+ calls.promote_prototypes hook.
+ (c_convert_parm_for_inlining): Likewise.
+ * calls.c (initialize_argument_information): Convert to
+ calls.promote_function_args hook.
+ (expand_call): Convert to calls.struct_value_rtx,
+ calls.strict_argument_naming,
+ calls.pretend_outgoing_varargs_named, and
+ calls.promote_function_return hooks. Pass fndecl to
+ aggregate_value_p. Initialize CUMULATIVE_ARGS before calling
+ hooks, so they can use that.
+ (emit_library_call_value_1): Likewise.
+ * combine.c (setup_incoming_promotions): Convert to
+ calls.promote_function_args hook.
+ * emit-rtl.c: Convert to calls.struct_value_rtx hook.
+ * expr.c (expand_assignment): Pass call to aggregate_value_p.
+ (expand_expr): Likewise.
+ * expr.h: Remove support for SETUP_INCOMING_VARARGS,
+ STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED,
+ RETURN_IN_MEMORY macro defaults.
+ * final.c (profile_function): Convert to calls.struct_value_rtx
+ hook.
+ * function.c (aggregate_value_p): Accept function type tree as
+ second parameter; try to deduce fntype from it. Convert to
+ calls.return_in_memory hook.
+ (assign_parms): Convert to calls.setup_incoming_varargs,
+ calls.strict_argument_naming, calls.promote_function_args,
+ calls.pretend_outgoing_varargs_named hooks. Pass fndecl to
+ aggregate_value_p.
+ (expand_function_start): Likewise. Convert to
+ calls.struct_value_rtx hook.
+ (expand_function_end): Convert to calls.promote_function_return hook.
+ (allocate_struct_function): Pass fndecl to aggregate_value_p.
+ * hard-reg-set.h: Update comments to new hook names.
+ * integrate.c (expand_inline_function): Pass fndecl to aggregate_value_p.
+ * reg-stack.c (stack_result): Likewise.
+ * rtl.h (struct_value_rtx, struct_value_incoming_rtx): Delete.
+ * stmt.c (expand_value_return): Convert to
+ calls.promote_function_return hook.
+ * target-def.h: Add TARGET_PROMOTE_FUNCTION_ARGS,
+ TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES,
+ TARGET_STRUCT_VALUE_RTX, TARGET_RETURN_IN_MEMORY,
+ TARGET_EXPAND_BUILTIN_SAVEREGS, TARGET_SETUP_INCOMING_VARARGS,
+ TARGET_STRICT_ARGUMENT_NAMING,
+ TARGET_PRETEND_OUTGOING_VARARGS_NAMED, and TARGET_CALLS.
+ * target.h: Likewise.
+ * tree.h (aggregate_value_p): Also takes a tree to deduce function
+ attributes from (for target hooks).
+ * doc/tm.texi (PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN,
+ PROMOTE_PROTOTYPES, RETURN_IN_MEMORY, STRUCT_VALUE_REGNUM,
+ STRUCT_VALUE, STRUCT_VALUE_INCOMING_REGNUM, STRUCT_VALUE_INCOMING,
+ EXPAND_BUILTIN_SAVEREGS, SETUP_INCOMING_VARARGS,
+ STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED): Convert
+ to hooks.
+
+ * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Pass function
+ to aggregate_value_p.
+ * config/arm/arm.c (arm_init_cumulative_args,
+ arm_output_mi_thunk): Likewise.
+ * config/i386/i386.c (ix86_return_pops_args, x86_this_parameter):
+ Likewise.
+ * config/mips/mips.c (mips_save_reg_p, mips_expand_prologue,
+ mips_can_use_return_insn): Likewise.
+ * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Likewise.
+ * config/s390/s390.c (s390_output_mi_thunk): Likewise.
+ * config/sparc/sparc.c (sparc_output_mi_thunk): Pass function to
+ aggregate_value_p.
+ * config/story16/stormy16.c (xstormy16_asm_output_mi_thunk): Pass
+ function to aggregate_value_p.
+ * objc/objc-act.c (generate_struct_by_value_array): Pass NULL to
+ aggregate_value_p.
+
+ * config/sh/sh-protos.h (sh_builtin_saveregs): Remove.
+ (sh_attr_renesas_p, sh_cfun_attr_renesas_p, sh_function_arg,
+ sh_function_arg_advance, sh_pass_in_reg_p): New. * config/sh/sh.c
+ (sh_handle_renesas_attribute, sh_promote_prototypes,
+ sh_struct_value_rtx, sh_return_in_memory, sh_builtin_saveregs,
+ sh_setup_incoming_varargs, sh_strict_argument_naming,
+ sh_pretend_outgoing_varargs_named): New decls.
+ (targetm): Add new hooks.
+ (calc_live_regs): Save MACL and MACH if the function has the
+ renesas attribute.
+ (sh_expand_prologue): Support renesas attribute.
+ (sh_builtin_saveregs): Make static.
+ (sh_build_va_list): Support renesas attribute.
+ (sh_va_start): Likewise.
+ (sh_va_arg): Likewise.
+ (sh_promote_prototypes): New.
+ (sh_function_arg): New, moved from sh.h. Support renesas
+ attribute.
+ (sh_function_arg_advance): Likewise.
+ (sh_return_in_memory): Likewise.
+ (sh_strict_argument_naming): Likewise.
+ (sh_pretend_outgoing_varargs_named): Likewise.
+ (sh_struct_value_rtx): New.
+ (sh_attribute): Add renesas attribute.
+ (sh_handle_renesas_attribute): New.
+ (sh_attr_renesas_p, sh_cfun_attr_renesas_p): New.
+ (sh_ms_bitfield_layout_p): Support renesas attribute also.
+ (sh_output_mi_thunk): Pass function to aggregate_value_p. *
+ config/sh/sh.h (TARGET_SWITCHES): Add -mrenesas as an alias for
+ -mhitachi.
+ (STRUCT_VALUE_REGNUM, STRUCT_VALUE, RETURN_IN_MEMORY): Moved to
+ target hooks.
+ (sh_args): Add renesas_abi flag.
+ (INIT_CUMULATIVE_ARGS): Set it. Pass fndecl to aggregate_value_p.
+ (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Move to sh.c.
+ (PASS_IN_REG_P): Support renesas attribute. Pass DF and TF on the
+ stack for the renesas abi.
+ (STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED,
+ SETUP_INCOMING_VARARGS, EXPAND_BUILTIN_SAVEREGS,
+ PROMOTE_PROTOTYPES): Moved to sh.c. * config/sh/sh.md (call): Set
+ call cookie to indicate renesas calls.
+
+2003-09-03 Mostafa Hagog <mustafa@il.ibm.com>
+
+ * gcse.c (replace_one_set): New function.
+ (pre_insert_copy_insn): Change the order of copying
+ to make copy propagation discover additional PRE opportunities.
+
+2003-09-03 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/11700.
+ * simplify-rtx.c (simplify_subreg): Check that the subreg offset
+ of a hard register is representable before trying to simplify it
+ using subreg_hard_regno.
+
+2003-09-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in (gcc_cv_ld_hidden): Disable unless using GNU ld.
+ * configure: Regenerate.
+
+2003-09-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * intl.h (N_): Remove parentheses.
+
+2003-09-03 Bernardo Innocenti <bernie@develer.com>
+
+ * config.gcc (m68k-*-linux*): Remove definition of LINUX_DEFAULT_ELF.
+ * config/i370/linux.h (LINUX_DEFAULT_ELF): Remove unconditional
+ definition and code blocks compiled when not defined.
+ * config/i386/linux.h (LINUX_DEFAULT_ELF): Likewise.
+ * config/i386/linux64.h (LINUX_DEFAULT_ELF): Likewise.
+ * config/sparc/linux.h: (LINUX_DEFAULT_ELF): Likewise.
+ * config/sparc/linux64.h: (LINUX_DEFAULT_ELF): Likewise.
+
+2003-09-03 Jeff Sturm <jsturm@one-point.com>
+
+ * cgraphunit.c (visited_nodes): New static variable.
+ (record_call_1): Use walk_tree with visited_nodes.
+ (cgraph_create_edges): Use walk_tree with visited_nodes.
+ Setup/teardown visited_nodes hashtable.
+
+2003-09-03 Roger Sayle <roger@eyesopen.com>
+
+ * toplev.c (flag_rounding_math): New global variable.
+ (f_options): Add to the list of language independent options.
+ * flags.h (flag_rounding_math): Prototype here.
+ (HONOR_SIGN_DEPENDENT_ROUNDING): Use flag_rounding_math instead.
+ * common.opt (frounding-math): New common command line option.
+ * opts.c (common_handle_option): Handle OPT_frounding_math.
+ (set_fast_math_flags): -ffast-math clears flag_rounding_math.
+
+ * doc/invoke.texi: Document this new command line option.
+
+2003-09-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/sol2.h (NO_IMPLICIT_EXTERN_C): Update comment.
+
+2003-09-03 Jan Hubicka <jh@suse.cz>
+
+ * Makefile.in (c-objc-common.o): Kill gt-c-objc-common.h dependency.
+ * c-decl.c (finish_function): Kill arguments, always use cgraph path.
+ * c-objc-common.c: Kill include of gt-c-objc-common.h
+ (expand_deferred_fns, deffer_fn): Kill function.
+ (deferred_fns): Kill variable.
+ (finish_cdtor): Update finish_function call.
+ (c_objc_common_finish_file): Always call cgraph code.
+ * c-parse.c: Regenerate.
+ * c-parse.y: Regenerate.
+ * c-tree.h (finish_function): Update prototype.
+ * objc-acct.c (build_module_descriptor, finish_method_def):
+ Update call of finish_function.
+ * cgraphunit.c (cgraph_default_inline_p, cgraph_analyze_function): Add
+ forward prototype.
+ (cgraph_finalize_function): In non-unit-at-a-time mode analyze the
+ function and assemble it if needed.
+ (cgraph_finalize_compilation_unit): Do nothing in non-unit-at-a-time
+ mode.
+ (cgraph_optimize): Likewise.
+ (cgraph_expand_function): In non-unit-at-a-time mode keep function body
+ even when it has no inline callees.
+ * c-parse.in: Update calls to finish_function.
+
+2003-09-03 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.h: Handle TARGET_CPU_iwmmxt.
+ Use #error to generate the message if TARGET_DEFAULT is not
+ recognised.
+
+2003-09-03 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (MASK_UNUSED1): Remove.
+ (MASK_XGOT, TARGET_XGOT): Define.
+ (TARGET_SWITCHES): Add an entry for -mxgot.
+ (ASM_SPEC): Map -mxgot to -xgot.
+ * config/mips/mips.c (mips_symbol_insns): Use TARGET_XGOT to decide
+ whether we're using a big-GOT sequences.
+ (mips_legitimize_const_move, mips_expand_call): Likewise.
+ (override_options): Revert 2003-01-09 change.
+ * doc/invoke.texi: Document -mxgot.
+
+2003-09-02 Jason Merrill <jason@redhat.com>
+
+ * config/sol2.h (NO_IMPLICIT_EXTERN_C): Define here.
+ * config/sparc/sol2.h: Not here.
+
+2003-09-02 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c (expand_expr): The code following both_summands performs
+ the same task as simplify_gen_binary. Replace all gotos to
+ both_summands with a call to simplify_gen_binary and delete the
+ now unused label.
+
+2003-09-02 Jason Merrill <jason@redhat.com>
+
+ PR c++/7327
+ * config/sparc/sol2.h (NO_IMPLICIT_EXTERN_C): Define.
+
+2003-09-02 Jeff Sturm <jsturm@one-point.com>
+
+ * cgraphunit.c (record_call_1): Use walk_tree_without_duplicates.
+ (cgraph_optimize_function): Set current_function_decl to the
+ fndecl we're integrating from.
+
+2003-09-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def: Break out _Complex math functions into their
+ own category.
+
+2003-09-02 Andreas Jaeger <aj@suse.de>
+
+ * langhooks-def.h (LANG_HOOKS_RTL_EXPAND_STMT): Cast properly.
+
+2003-09-02 Josef Zlomek <zlomekj@suse.cz>
+
+ * cfgbuild.c (compute_outgoing_frequencies): Use NOTE instead of
+ finding the note again.
+
+2003-09-02 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Remove host-specific rewrites of target_alias.
+
+2003-09-01 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (genprogs): Fix typo.
+
+ * Makefile.in (gencheck.o): Remove build commands.
+ (dummy-conditions.o): Likewise.
+ (read-rtl.o): Likewise.
+ (gensupport.o): Likewise.
+ (genconfig$(build_exeext)): Remove rule.
+ (genconfig.o): Remove build commands.
+ (genflags$(build_exeext)): Remove rule.
+ (genflags.o): Remove build commands.
+ (gencodes$(build_exeext)): Remove rule.
+ (gencodes.o): Remove build commands.
+ (genconstants.o): Remove build commands.
+ (genemit$(build_exeext)): Remove rule.
+ (genemit.o): Remove build commands.
+ (genrecog$(build_exeext)): Remove rule.
+ (genrecog.o): Remove build commands.
+ (genextract$(build_exeext)): Remove rule.
+ (genextract.o): Remove build commands.
+ (genpeep$(build_exeext)): Remove rule.
+ (genpeep.o): Remove build commands.
+ (genattr$(build_exeext)): Remove rule.
+ (genattr.o): Remove build commands.
+ (genprognames): New variable.
+ (genprogs): Likewise.
+ (genobjs): Likewise.
+ (genprogs): New rule.
+ (genobjs): Likewise.
+ (genattrtab.o): Remove build commands.
+ (genautomata.o): Likewise.
+ (genoutput$(build_exeext)): Remove rule.
+ (genoutput.o): Remove build commands.
+ (gengenrtl.o): Likewise.
+ (genpreds.o): Likewise.
+ (gengtype.o): Likewise.
+ (genconditions.o): Likewise.
+ (gen-protos.o): Likewise.
+ (scan.o): Likewise.
+ (fix-header.o): Likewise.
+ (scan-decls.o): Likewise.
+ (check-g++): Combine with other check targets.
+ (check-gcc): Likewise.
+ (check-g77): Likewise.
+ (check-objc): Likewise.
+
+2003-09-01 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Remove host-specific stuff which is unused here
+ since the introduction of config.host.
+
+ * doc/fragments.texi: Mention config.host.
+ * doc/sourcebuild.texi: Mention config.host. Give brief descriptions
+ of config.build, config.host, and config.gcc.
+
+2003-09-01 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (pushdecl): Don't put variables on
+ C_TYPE_INCOMPLETE_VARS of a type unless that type is itself
+ incomplete.
+
+2003-09-01 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.host: New file.
+ * config.gcc: Remove some host-specific stuff and some
+ logic needed only for repeated invocation.
+ * configure.in: Use config.host.
+ * configure: Regenerate.
+
+2003-09-01 Josef Zlomek <zlomekj@suse.cz>
+
+ * c-typeck.c (build_binary_op): Kill BIT_ANDTC_EXPR.
+ * convert.c (convert_to_integer): Kill BIT_ANDTC_EXPR.
+ * fold-const.c (int_const_binop): Kill BIT_ANDTC_EXPR.
+ (fold): Kill BIT_ANDTC_EXPR and label bit_and.
+ * tree.def (BIT_ANDTC_EXPR): Kill.
+
+2003-08-31 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Remove uses of "for x in .. ${foo}" idiom.
+ * configure: Regenerate.
+
+ * config.gcc: Remove references to install_headers_dir, now unused
+ since introduction of config.build.
+ * config.gcc (i860-*-sysv4*): Don't set unused USG, SVR3 defines.
+
+ * doc/fragments.texi, doc/sourcebuild.texi: Mention new file
+ config.build.
+
+ * config.build: New file.
+ * config.gcc: Remove some build-specific stuff.
+ * configure.in: Use config.build.
+ * configure: Regnerate.
+
+2003-08-31 Steven Bosscher <steven@gcc.gnu.org>
+ Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/11823
+ * stmt.c (expand_end_case_type): Only use jump tables for dense
+ switch statements when optimizing for size.
+
+2003-08-31 Olivier Hainque <hainque@act-europe.fr>
+
+ * builtins.c (expand_builtin_setjmp): Use emit_jump to jump around
+ the != 0 case, which ensures pending stack adjustments are flushed.
+
+2003-08-30 Zack Weinberg <zack@codesourcery.com>
+
+ * configure.frag: Delete file.
+ * configure.in: Rename the substitution variables
+ dep_host_xmake_file and dep_tmake_file to xmake_file and
+ tmake_file respectively. Do not expand $srcdir in the
+ value of these; leave that for Make. Introduce a new
+ substitution varaible, all_lang_makefrags, which lists
+ subdirectory Make-lang.in files; exclude these from
+ all_lang_makefiles, which is now only for subdirectory
+ outputs. Do not invoke configure.frag. Do not set nor
+ AC_SUBST_FILE target_overrides, host_overrides, or
+ language_fragments. Create build subdirectories in
+ config.status extra commands.
+ * configure: Regenerate.
+ * Makefile.in: Update substitutions to match changes to
+ configure. Use include directives instead of @-insertions
+ to read in host, target, and language fragments.
+ (Makefile rule): Do not invoke configure.frag. Do not copy
+ config.status to config.run before executing it. Set
+ CONFIG_HEADERS and CONFIG_FILES so that only Makefile gets
+ regenerated.
+ (cstamp-h rule): Set CONFIG_FILES as well as CONFIG_HEADERS.
+
+2003-08-30 Zack Weinberg <zack@codesourcery.com>
+
+ * c-tree.h: Delete COMPARE_DIFFERENT_TU from enumeration.
+ * c-typeck.c (same_translation_unit_p): New function.
+ (comptypes): Use it instead of flags parameter to identify
+ structure types from different translation units.
+ * c-decl.c (duplicate_decls): Always call comptypes with
+ COMPTYPE_STRICT flags argument.
+ (c_reset_state): Set BLOCK_SUPERCONTEXT of the block formed
+ to file_scope_decl.
+
+2003-08-30 Zack Weinberg <zack@codesourcery.com>
+
+ * c-tree.h (C_TYPE_INCOMPLETE_VARS): New macro.
+ * c-decl.c (struct c_scope): Remove "incomplete" field.
+ (pushdecl): Attach variables with incomplete types to
+ the TYPE_MAIN_VARIANT of the incomplete type in question.
+ (finish_struct): Look at C_TYPE_INCOMPLETE_VARS for variables
+ to complete, not at current_scope->incomplete. All such
+ variables do need completion.
+
+2003-08-30 Richard Earnshaw <rearnsha@arm.com>
+ Nicolas Pitre <nico@cam.org>
+
+ * arm/lib1funcs.asm (RETCOND): Delete.
+ (RETLDM): New assembler macro. Use it for returning with ldm/ldr.
+ (ARM_LDIV0, THUMB_LDIV0): Collapse multiple definitions.
+ (__ARM_ARCH__): Move here from ieee754-?f.S.
+ (RET, RETc): Clean up definitions.
+ (DIV_FUNC_END): Renamed from FUNC_END. All uses changed.
+ (FUNC_END): New macro that marks the end of any function.
+ (ARM_FUNC_START): New macro that allows an assembler routine to be
+ implemented in ARM code even if a Thumb-only build.
+ Unconditionally include ieee754-?f.S.
+ * arm/ieee754-df.S: Delete macros moved to lib1funcs.asm.
+ Mark ends of functions.
+ Split into separate conditionally-compiled units.
+ Use RETLDM to return from routines.
+ * arm/ieee754-sf.S: Similarly.
+ * t-arm-elf (LIB1ASMFUNCS): Remove _ieee754_dp and _ieee754_sp.
+ Add _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi
+ _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2
+ _fixsfsi and _fixunssfsi.
+
+ * arm/ieee754-df.S (__muldf3): Fix bug when result of a
+ multiplication underflows to zero.
+ (__adddf3): Fix bug when using VFP ordering on little-endian
+ processors.
+ (__fixdfsi): Use rrx to extract the carry into a register instead of
+ MRS instruction. Optimize later use of result.
+ * arm/ieee754-sf.S (__fixsfsi): Likewise.
+ (__fixunssfsi): Use a better sequence for handling negative-or-zero.
+
+2003-08-29 Richard Henderson <rth@redhat.com>
+
+ * tree-optimize.c: New file.
+ * Makefile.in (OBJS-archive): Add tree-optimize.o.
+ (tree-optimize.o): New.
+ * c-decl.c (store_parm_decls): Use allocate_struct_function.
+ (finish_function): Don't free_after_parsing or free_after_compilation.
+ (set_save_expr_context): Move to tree-optimize.c.
+ (c_expand_body_1): Use tree_rest_of_compilation.
+ * c-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
+ * objc/objc-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
+ * c-objc-common.c (expand_deferred_fns): Don't emit unused inlines;
+ iterate until closure.
+ * langhooks-def.h (LANG_HOOKS_RTL_EXPAND_START,
+ LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_RTL_EXPAND_END): New.
+ (LANG_HOOKS_RTL_EXPAND_INITIALIZER): New.
+ * langhooks.h (struct lang_hooks_for_rtl_expansion): New.
+ * toplev.h (tree_rest_of_compilation): Declare it.
+
+2003-08-29 Richard Henderson <rth@redhat.com>
+
+ * function.h (struct function): Add rtl_inline_init, saved_for_inline.
+ * integrate.c (save_for_inline): Set saved_for_inline.
+ * c-semantics.c (genrtl_scope_stmt): Check it.
+ * toplev.c (wrapup_global_declarations): Check it.
+ (rest_of_handle_inlining): Set and check rtl_inline_init.
+ (rest_of_compilation): Remove out of date comment.
+
+2003-08-29 Richard Henderson <rth@redhat.com>
+
+ * function.c (allocate_struct_function): New, split out of ...
+ (prepare_function_start, init_function_start): ... here.
+ * expr.c (init_expr): Use ggc_alloc_cleared.
+ * stmt.c (init_stmt_for_function): Likewise.
+ * tree.h (allocate_struct_function): Declare.
+
+2003-08-29 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Don't use negated character class in shell case
+ clause.
+
+2003-08-29 Richard Henderson <rth@redhat.com>
+
+ * function.h (struct function): Move function_frequency and
+ max_jumptable_ents before start of bit field members.
+
+2003-08-29 Richard Henderson <rth@redhat.com>
+
+ * builtins.c (expand_builtin_constant_p): Check cse_not_expected here,
+ (fold_builtin_constant_p) ... not here.
+
+2003-08-29 Richard Henderson <rth@redhat.com>
+
+ * c-tree.h (C_DECL_FILE_SCOPE): Move ...
+ * tree.h (DECL_FILE_SCOPE_P): ... here, and rename.
+ * c-decl.c, c-objc-common.c, c-typeck.c: Update to match.
+
+2003-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def: Fix typos.
+ (ATTR_MATHFN_FPROUNDING_STORE): New macro.
+ (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL, BUILT_IN_MODF,
+ BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO, BUILT_IN_REMQUOF,
+ BUILT_IN_REMQUOL, BUILT_IN_SINCOS, BUILT_IN_SINCOSF,
+ BUILT_IN_SINCOSL): Use ATTR_MATHFN_FPROUNDING_STORE.
+
+ * builtins.def (BUILT_IN_ERFC, BUILT_IN_ERFCF, BUILT_IN_ERFCL):
+ Use ATTR_MATHFN_FPROUNDING_ERRNO.
+
+2003-08-29 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (i386-*-vsta): Fix obvious bogosity.
+
+ * fixinc/inclhack.def: Remove special cases for unsupported
+ PTX 1 and PTX 2 (including i[34567]86-sequent-sysv3).
+ * fixinc/fixincl.x: Regenerate.
+
+2003-08-29 Mark Mitchell <mark@codesourcery.com>
+
+ * Makefile.in (cpp.info): Just state dependencies.
+ (gcc.info): Likewise.
+ (gccint.info): Likewise.
+ (gccinstall.info): Likewise.
+ (cppinternals.info): Likewise.
+ (cpp.dvi): Likewise.
+ (gcc.dvi): Likewise.
+ (gccint.dvi): Likewise.
+ (gccinstall.dvi): Likewise.
+ (cppinternals.dvi): Likewise.
+ (gcov.1): Likewise.
+ (cpp.1): Likewise.
+ (gcc.1): Likewise.
+ (gfdl.7): Likewise.
+ (gpl.7): Likewise.
+ (fsf-funding.7): Likewise.
+ ($(objdir)/%.info): New pattern rule.
+ (%.dvi): Likewise.
+
+2003-08-29 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * Makefile.in (restage1): Pass BOOT_CFLAGS to recursive make.
+ (restage2): Likewise.
+ (restage3): Likewise.
+ (restage4): Likewise.
+ (restageprofile): Likewise.
+ (restagefeedback): Likewise.
+ (bubblestrap): Likewise.
+
+2003-08-29 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Narrow unsupported target match to avoid clobbering
+ i?86-sequent-sysv4*.
+
+2003-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (mathfn_built_in): Handle new math builtins.
+
+2003-08-28 Per Bothner <per@bothner.com>
+
+ Fix (hopefully temporary) for breakage caused by my 08-21 patch.
+ * cpplex.c (_cpp_get_fresh_line): Check for null buffer.
+ (_cpp_lex_buffer): Likewise.
+ * cpptrad.c (_cpp_read_logical_line_trad): Likewise.
+
+2003-08-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*mulsi3_sign"): New insn.
+ ("mulsidi3" expander, "mulsi_6432" insn): Remove, replace by ...
+ ("mulsidi3"): ... this new insn.
+ ("umulsidi3"): New insn.
+ ("divmoddi3", "divmodtidi3", "divmodtisi3"): Simplify by using
+ mixed-mode matching constraints.
+ ("udivmodsi4", "udivmoddisi3"): New insns.
+ ("udivsi3", "umodsi3"): Use only in ESA/390 mode.
+
+2003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-types.def (BT_INT_PTR, BT_FLOAT_PTR, BT_DOUBLE_PTR,
+ BT_LONGDOUBLE_PTR, BT_FN_FLOAT_FLOAT_FLOATPTR,
+ BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
+ BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
+ BT_FN_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_INTPTR,
+ BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
+ BT_FN_FLOAT_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
+ BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
+ BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
+ BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
+ BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR): New.
+ * builtins.def (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL,
+ BUILT_IN_MODF, BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO,
+ BUILT_IN_REMQUOF, BUILT_IN_REMQUOL, BUILT_IN_SINCOS,
+ BUILT_IN_SINCOSF, BUILT_IN_SINCOSL): New.
+ * tree.c: Assign new type_nodes.
+ * tree.h (tree_index): Add TI_FLOAT_PTR_TYPE, TI_DOUBLE_PTR_TYPE,
+ TI_LONG_DOUBLE_PTR_TYPE, TI_INTEGER_PTR_TYPE.
+ (float_ptr_type_node, double_ptr_type_node,
+ long_double_ptr_type_node, integer_ptr_type_node): New type_nodes.
+
+ * doc/extend.texi: Document new builtins.
+
+2003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-types.def (BT_FN_FLOAT_INT_FLOAT,
+ BT_FN_DOUBLE_INT_DOUBLE, BT_FN_LONGDOUBLE_INT_LONGDOUBLE): New.
+
+ * builtins.def (BUILT_IN_ERF, BUILT_IN_ERFC, BUILT_IN_ERFCF,
+ BUILT_IN_ERFCL, BUILT_IN_ERFF, BUILT_IN_ERFL, BUILT_IN_GAMMA,
+ BUILT_IN_GAMMAF, BUILT_IN_GAMMAL, BUILT_IN_J0, BUILT_IN_J0F,
+ BUILT_IN_J0L, BUILT_IN_J1, BUILT_IN_J1F, BUILT_IN_J1L,
+ BUILT_IN_JN, BUILT_IN_JNF, BUILT_IN_JNL, BUILT_IN_LGAMMA,
+ BUILT_IN_LGAMMAF, BUILT_IN_LGAMMAL, BUILT_IN_SIGNIFICAND,
+ BUILT_IN_SIGNIFICANDF, BUILT_IN_SIGNIFICANDL, BUILT_IN_TGAMMA,
+ BUILT_IN_TGAMMAF, BUILT_IN_TGAMMAL, BUILT_IN_Y0, BUILT_IN_Y0F,
+ BUILT_IN_Y0L, BUILT_IN_Y1, BUILT_IN_Y1F, BUILT_IN_Y1L,
+ BUILT_IN_YN, BUILT_IN_YNF, BUILT_IN_YNL): New.
+
+ * doc/extend.texi: Document new builtins.
+
+2003-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/mkfixinc.sh: Remove special case code for unsupported
+ variants of i?86, powerpcle, and thumb.
+ * fixinc/mkfixinc.sh: Remove special case code for unsupported
+ arm and hppa variants.
+
+2003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-types.def (BT_FN_INT_FLOAT, BT_FN_INT_DOUBLE,
+ BT_FN_INT_LONGDOUBLE, BT_FN_LONG_FLOAT, BT_FN_LONG_DOUBLE,
+ BT_FN_LONG_LONGDOUBLE, BT_FN_LONGLONG_FLOAT,
+ BT_FN_LONGLONG_DOUBLE, BT_FN_LONGLONG_LONGDOUBLE,
+ BT_FN_FLOAT_FLOAT_LONGDOUBLE, BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
+ BT_FN_FLOAT_FLOAT_INT, BT_FN_DOUBLE_DOUBLE_INT,
+ BT_FN_LONGDOUBLE_LONGDOUBLE_INT, BT_FN_FLOAT_FLOAT_LONG,
+ BT_FN_DOUBLE_DOUBLE_LONG, BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
+ BT_FN_FLOAT_FLOAT_FLOAT_FLOAT, BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
+ BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE): New.
+
+ * builtins.def (BUILT_IN_ACOS, BUILT_IN_ACOSF, BUILT_IN_ACOSH,
+ BUILT_IN_ACOSHF, BUILT_IN_ACOSHL, BUILT_IN_ACOSL, BUILT_IN_ASIN,
+ BUILT_IN_ASINF, BUILT_IN_ASINH, BUILT_IN_ASINHF, BUILT_IN_ASINHL,
+ BUILT_IN_ASINL, BUILT_IN_ATANH, BUILT_IN_ATANHF, BUILT_IN_ATANHL,
+ BUILT_IN_CBRT, BUILT_IN_CBRTF, BUILT_IN_CBRTL, BUILT_IN_COPYSIGN,
+ BUILT_IN_COPYSIGNF, BUILT_IN_COPYSIGNL, BUILT_IN_COSH,
+ BUILT_IN_COSHF, BUILT_IN_COSHL, BUILT_IN_DREM, BUILT_IN_DREMF,
+ BUILT_IN_DREML, BUILT_IN_EXP10, BUILT_IN_EXP10F, BUILT_IN_EXP10L,
+ BUILT_IN_EXP2, BUILT_IN_EXP2F, BUILT_IN_EXP2L, BUILT_IN_EXPM1,
+ BUILT_IN_EXPM1F, BUILT_IN_EXPM1L, BUILT_IN_FDIM, BUILT_IN_FDIMF,
+ BUILT_IN_FDIML, BUILT_IN_FMA, BUILT_IN_FMAF, BUILT_IN_FMAL,
+ BUILT_IN_FMAX, BUILT_IN_FMAXF, BUILT_IN_FMAXL, BUILT_IN_FMIN,
+ BUILT_IN_FMINF, BUILT_IN_FMINL, BUILT_IN_HYPOT, BUILT_IN_HYPOTF,
+ BUILT_IN_HYPOTL, BUILT_IN_ILOGB, BUILT_IN_ILOGBF, BUILT_IN_ILOGBL,
+ BUILT_IN_LDEXP, BUILT_IN_LDEXPF, BUILT_IN_LDEXPL, BUILT_IN_LLRINT,
+ BUILT_IN_LLRINTF, BUILT_IN_LLRINTL, BUILT_IN_LLROUND,
+ BUILT_IN_LLROUNDF, BUILT_IN_LLROUNDL, BUILT_IN_LOG10,
+ BUILT_IN_LOG10F, BUILT_IN_LOG10L, BUILT_IN_LOG1P, BUILT_IN_LOG1PF,
+ BUILT_IN_LOG1PL, BUILT_IN_LOG2, BUILT_IN_LOG2F, BUILT_IN_LOG2L,
+ BUILT_IN_LOGB, BUILT_IN_LOGBF, BUILT_IN_LOGBL, BUILT_IN_LRINT,
+ BUILT_IN_LRINTF, BUILT_IN_LRINTL, BUILT_IN_LROUND,
+ BUILT_IN_LROUNDF, BUILT_IN_LROUNDL, BUILT_IN_NEXTAFTER,
+ BUILT_IN_NEXTAFTERF, BUILT_IN_NEXTAFTERL, BUILT_IN_NEXTTOWARD,
+ BUILT_IN_NEXTTOWARDF, BUILT_IN_NEXTTOWARDL, BUILT_IN_POW10,
+ BUILT_IN_POW10F, BUILT_IN_POW10L, BUILT_IN_REMAINDER,
+ BUILT_IN_REMAINDERF, BUILT_IN_REMAINDERL, BUILT_IN_RINT,
+ BUILT_IN_RINTF, BUILT_IN_RINTL, BUILT_IN_SCALB, BUILT_IN_SCALBF,
+ BUILT_IN_SCALBL, BUILT_IN_SCALBLN, BUILT_IN_SCALBLNF,
+ BUILT_IN_SCALBLNL, BUILT_IN_SCALBN, BUILT_IN_SCALBNF,
+ BUILT_IN_SCALBNL, BUILT_IN_SINH, BUILT_IN_SINHF, BUILT_IN_SINHL,
+ BUILT_IN_TANH, BUILT_IN_TANHF, BUILT_IN_TANHL): New.
+
+ * doc/extend.texi: Document new builtins.
+
+2003-08-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (legitmate_constant_p): Use LARL on
+ zSeries machines even in 31-bit addressing mode.
+ (legitimate_reload_constant_p): Likewise.
+ (legitimize_pic_address): Likewise.
+ (legitimize_tls_address): Likewise.
+ (s390_split_branches): Likewise.
+ (s390_dump_pool): Likewise.
+ (s390_mainpool_finish): Likewise.
+ (s390_chunkify_start): Likewise.
+ (s390_select_rtx_section): Likewise.
+ * config/s390/s390.md ("doloop_si"): Likewise.
+ ("pool_start_31", "pool_end_31"): Likewise.
+ ("pool_start_64", "pool_end_64"): Likewise.
+ ("main_base_31_small", "main_base_31_large"): Likewise.
+ ("main_base_64"): Likewise.
+ ("reload_base_31", "reload_base_64"): Likewise.
+ ("*movsi_larl"): New insn.
+ ("cjump", "icjump"): Use long branches on zSeries machines.
+ ("jump"): Likewise.
+ ("call"): Use BRASL on zSeries machines.
+ ("call_value", "call_value_tls"): Likewise.
+ ("brasl", "bras", "basr_64", "basr_31", "bas_64", "bas_31"): Remove
+ and replace by ...
+ ("*bras", "*brasl", "*basr") ... these new insns.
+ ("brasl_r", "bras_r", "basr_64_r", "basr_31_r", "bas_64_r",
+ "bas_31_r"): Remove and replace by ...
+ ("*bras_r", "*brasl_r", "*basr_r") ... these new insns.
+ ("brasl_tls", "bras_tls", "basr_64_tls", "basr_31_tls",
+ "bas_64_tls", "bas_31_tls"): Remove and replace by ...
+ ("*bras_tls", "*brasl_tls", "*basr_tls") ... these new insns.
+ ("*return_si", "*return_di"): Remove and replace by ...
+ ("*return"): ... this new insn.
+ ("rotlsi3"): Allow on zSeries machines.
+
+ * config/s390/s390.c (legitimize_reload_constant_p): Use
+ LL/LH type instructions in z/Architecture mode.
+ * config/s390/s390.md ("*movsi_lli"): Likewise.
+ ("*andsi3_ni", "*andhi3_ni", "*andqi3_ni"): Likewise.
+ ("*iorsi3_ni", "*iorhi3_ni", "*iorqi3_ni"): Likewise.
+ ("*extendqisi2"): Use LB in z/Architecture mode.
+ ("*zero_extendqisi2_64", "*zero_extendqisi2_31"): Use LLGC in
+ z/Architecture mode.
+ ("zero_extendqihi2", "*zero_extendqihi2_64", "*zero_extendqihi2_31"):
+ Likewise.
+
+ * config/s390/s390.md ("*tmdi_ext"): Allow in both 64-bit
+ and 31-bit mode.
+ ("ptr_extend"): Allow only in 64-bit mode.
+
+2003-08-27 Daniel Jacobowitz <drow@mvista.com>
+
+ * gcc.c (STANDARD_EXEC_PREFIX, STANDARD_STARTFILE_PREFIX)
+ (TOOLDIR_BASE_PREFIX, STANDARD_BINDIR_PREFIX): Remove unnecessary
+ definitions.
+ (main): Only use standard_startfile_prefix if native.
+ * doc/tm.texi (STANDARD_STARTFILE_PREFIX): Update.
+
+2003-08-27 Per Bothner <pbothner@apple.com>
+
+ * cpperror.c (print_location): Don't check for !pfile->buffer. That
+ test fails following my 08-21 change, and it seems unnecessary anyway.
+ (cpp_error): Likewise.
+
+2003-08-27 Jason Merrill <jason@redhat.com>
+
+ * real.c (do_multiply): Initialize with memset.
+
+2003-08-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * gcov.c (typedef struct arc_info): New field cs_count.
+ (accumulate_line_counts): Find cycles correctly.
+
+2003-08-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (struct machine_function): Remove member
+ literal_pool_label.
+ (s390_optimize_prolog): Replace TEMP_REG argument with
+ TEMP_USED and BASE_USED. Do not check get_pool_size ().
+ (general_s_operand): Accept all immediates before reload if
+ ALLOW_IMMEDIATE. If not ALLOW_IMMEDIATE, reject literal pool
+ references.
+ (s390_output_symbolic_const): Remove UNSPEC_LTREL_OFFSET handling.
+ (find_constant_pool_ref): Ignore UNSPECV_POOL_ENTRY insns.
+ (s390_alloc_pool): New function.
+ (s390_new_pool): Call it.
+ (s390_dump_pool): Add REMOTE_LABEL argument.
+ (s390_chunkify_start): Add BASE_REG argument. Do not check
+ get_pool_size ().
+ (s390_chunkify_finish): Add BASE_REG argument. Adapt
+ s390_dump_pool call.
+ (s390_pool_count, s390_nr_constants): Remove.
+ (s390_output_constant_pool): Remove.
+ (s390_mainpool_start): New function.
+ (s390_mainpool_finish): New function.
+ (s390_mainpool_cancel): New function.
+ (s390_reorg): Implement main literal pool handling.
+ (s390_emit_prologue): Emit main_pool placeholder instead of
+ literal_pool_31 / literal_pool_64 insns.
+ * config/s390/s390.h (s390_pool_count, s390_nr_constants): Remove.
+ (ASM_OUTPUT_POOL_PROLOGUE, ASM_OUTPUT_SPECIAL_POOL_ENTRY): Remove.
+ * config/s390/s390.md (UNSPEC_MAIN_BASE): New symbolic constant.
+ ("main_base_31_small", "main_base_31_large"): New insns.
+ ("main_base_64", "main_pool"): New insns.
+ ("literal_pool_31", "literal_pool_64"): Remove.
+
+2003-08-27 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (ptx_netswap): New disabled fix, ported from
+ fixinc.ptx.
+ * fixinc/inclhack.def (undefine_null): Don't generate \r characters.
+ Prettify a little.
+ * fixinc/fixincl.x: Regenerate.
+
+2003-08-27 Richard Earnshaw <rearnsha@arm.com>
+
+ * lib1funcs.asm (L_ieee754_sp): New. Include ieee754-sf.S.
+ (L_ieee754_dp): New. Include ieee754-df.S.
+ * arm/ieee754-sf.S: Rework to allow interworking, calling from Thumb,
+ and compilation in apcs-26 mode.
+ * arm/ieee754-df.S: Likewise.
+ * t-arm-elf (DPBIT, FPBIT, fp-bit.c dp-bit.c): Delete rules
+ (LIB1ASMFUNCS): Add _ieee754_sp and _ieee754_dp targets.
+
+2003-08-27 Nicolas Pitre <nico@cam.org>
+
+ * arm/ieee754-sf.S: New.
+ * arm/ieee754-df.S: New.
+
+2003-08-27 Jakub Jelinek <jakub@redhat.com>
+
+ * builtins.c (expand_builtin_expect_jump): Save pending_stack_adjust
+ and restore it if returning NULL.
+
+2003-08-27 Richard Sandiford <rsandifo@redhat.com>
+
+ * calls.c (initialize_argument_information): If an argument has no
+ stack space associated with it, and BLOCK_REG_PADDING is defined,
+ use it to decide at which end the argument should be padded.
+ * function.c (assign_parms): Allocate BLKmode stack slots.
+ * config/mips/mips-protos.h (mips_pad_arg_upward): Declare.
+ (mips_pad_reg_upward): Declare.
+ * config/mips/mips.h (PAD_VARARGS_DOWN): Use FUNCTION_ARG_PADDING.
+ (CUMULATIVE_ARGS): Remove num_adjusts and adjusts.
+ (FUNCTION_ARG_PADDING): Use mips_pad_arg_upward.
+ (BLOCK_REG_PADDING): Use mips_pad_reg_upward.
+ * config/mips/mips.c (struct mips_arg_info): Remove struct_p.
+ (mips_expand_call): Remove code for generating structure shifts.
+ (mips_arg_info): Don't set struct_p. Don't set fpr_p for non-float
+ types unless using the EABI.
+ (function_arg_advance): Don't generate shift instructions.
+ (function_arg): Don't return them. Don't short-circuit the
+ check for double structure chunks for DFmode arguments.
+ (mips_pad_arg_upward, mips_pad_reg_upward): New functions.
+ (mips_expand_prologue): Remove code to emit structure shifts.
+ * config/mips/irix6-libc-compat.c: Remove workarounds for buggy
+ structure passing (inet_ntoa, inet_lnaof, inet_netof). Update
+ comments to say that only structure returns are a problem.
+
+2003-08-26 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/tests/base/string.h, fixinc/tests/base/sys/regset.h:
+ Fix to match produced versions.
+ * fixinc/inclhack.def (longlong_t): New disabled test, ported
+ from fixinc.svr4.
+ * fixinc/inclhack.def (ptx_pwd_h): New disabled fix, ported
+ from fixinc.ptx.
+ * fixinc/inclhack.def (ptx_sys_mc_param_h): New disabled fix,
+ ported from fixinc.ptx.
+
+2003-08-26 Per Bothner <pbothner@apple.com>
+
+ * cpplib.h (struct cpp_token): Change type of field line to fileline.
+ (cpp_error_with_line): Use fileline for appropriate parameter.
+ * cpphash.h (struct cpp_macro): Change type of field line to fileline.
+ (struct cpp_reader): Likewise for fields line and directive_line.
+ (_cpp_begin_message): Use fileline for appropriate parameter.
+ * cpperror.c (print_location, _cpp_begin_message, cpp_error_with_line,
+ cpp_error): Use fileline for appropriate parameters and variables.
+ (print_location): New local lin, since it is not a fileline.
+
+2003-08-26 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/12002
+ * tree.h (SCALAR_FLOAT_TYPE_P, COMPLEX_FLOAT_TYPE_P): New macros.
+ (FLOAT_TYPE_P): Define in terms of these two new macros.
+ * fold-const.c (fold <PLUS_EXPR>): Don't convert x+x into x*2.0
+ for complex floating point types.
+
+2003-08-26 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (emit_prologue): Don't check literal pool size.
+ * config/s390/s390.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Call
+ s390_output_pool_entry.
+
+2003-08-26 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (svr4_preproc_lint_on,
+ svr4_preproc_lint_off, svr4_preproc_machine): New disabled
+ fixes, ported from fixinc.svr4.
+
+2003-08-26 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/install.texi (Prerequisites): Mention GNU make requirement.
+
+ * Makefile.in (AR_FOR_TARGET): Export it.
+ (AR_CREATE_FOR_TARGET): Likewise.
+ (AR_FLAGS_FOR_TARGET): Likewise.
+ (AR_EXTRACT_FOR_TARGET): Likewise.
+ (AWK): Likewise.
+ (BUILD_PREFIX): Likewise.
+ (BUILD_PREFIX_1): Likewise.
+ (DESTDIR): Likewise.
+ (GCC_FOR_TARGET): Likewise.
+ (INCLUDES): Likewise.
+ (INSTALL_DATA): Likewise.
+ (LIB1ASMSRC): Likewise.
+ (LIBGCC2_CFLAGS): Likewise.
+ (MACHMODE_H): Likewise.
+ (NM_FOR_TARGET): Likewise.
+ (RANLIB_FOR_TARGET): Likewise.
+ (libsubdir): Likewise.
+ (slibdir): Likewise.
+ (ORDINARY_FLAGS_TO_PASS): Remove stuff that we're
+ exporting.
+ (libgcc.a): Don't pass them here.
+ (stmp-multilib): Or here.
+ (install-libgcc): Or here.
+ (install-multilib): Or here.
+ (POSTSTAGE1_FLAGS_TO_PASS): Or here.
+ (stage1_build): Or here.
+
+2003-08-26 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("*llgt_sisi", "*llgt_sisi_split", "*llgt_didi",
+ "*llgt_didi_split", "*llgt_sidi", "*llgt_sidi_split"): New insns.
+
+2003-08-26 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("*fmadddf", "*fmsubdf",
+ "*fmaddsf", "*fmsubsf"): New insns.
+
+2003-08-26 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold <MULT_EXPR>): Optimize (C1/X)*C2 into
+ (C1*C2)/X when unsafe math optimizations are allowed.
+ (fold <RDIV_EXPR>): Optimize C1/(X*C2) into (C1/C2)/X with unsafe
+ math optimizations. Minor code clean-ups. Recursively call
+ fold when constructing sub-expressions.
+
+2003-08-26 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (fold_builtin_bitop): New function to perform constant
+ folding of ffs, clz, ctz, popcount and parity builtin functions
+ and their long and long long variants (such as ffsl and ffsll).
+ (fold_builtin): fold_builtin_bitop when appropriate.
+ * simplify-rtx.c (simplify_unary_operation): Honor both
+ CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO when
+ evaluating clz and ctz at compile-time, for operands wider
+ than HOST_WIDE_INT.
+
+2003-08-26 Nathan Sidwell <nathan@codesourcery.com>
+
+ * builtins.c (build_function_call_expr): Don't set
+ TREE_SIDE_EFFECTS here.
+ * expr.c (emit_block_move_via_libcall): Likewise.
+ (clear_storage_via_libcall): Likewise.
+ * tree.c (build): Set TREE_SIDE_EFFECTS for non-const, non-pure
+ CALL_EXPRs.
+
+ * gcse.c (is_too_expensive): New function.
+ (gcse_main, delete_null_pointer_checks, bypass_jumps): Use it.
+
+2003-08-25 Zack Weinberg <zack@codesourcery.com>
+
+ * config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove
+ commented-out logic to use DCE threads (if present), add
+ support for POSIX threads.
+ * config/ia64/hpux.h: Define CPP_SPEC to set appropriate
+ #defines for -pthread. Add -lpthread to LIB_SPEC when
+ -pthread. In both cases take -mt as a synonym for -pthread
+ for acc compatibility.
+ Define GTHREAD_USE_WEAK to 0.
+ * config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC.
+ Remove old logic for DCE threads from LIB_SPEC.
+ * config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0.
+
+2003-08-25 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_mathfn): Rearrange so that we only
+ return 0 for invalid argument types. Instead drop through to a
+ call of expand_call at the bottom of function. If op is SQRT,
+ try attaching a SQRT rtx as the REQ_EQUAL note of the libcall.
+
+2003-08-25 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.c (ia64_expand_tls_address): Properly truncate
+ result when op0 is SImode.
+
+2003-08-25 Nathanael Nerode <neroden@twcny.rr.com>
+
+ * fixinc/inclhack.def (svr4_sighandler_type): New fix, ported
+ from fixinc.svr4.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/sys/signal.h: Regenerate.
+
+2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (simplify_comparison): Re-enable widening of comparisons
+ with non-paradoxical subregs of non-REG expressions.
+
+2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (distribute_notes): Handle REG_ALWAYS_RETURN.
+
+2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (combine_simplify_rtx): Fix RTL sharing bug.
+
+2003-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * pretty-print.h (pp_maybe_newline_and_indent): New macro.
+ * c-pretty-print.h (c_pretty_printer): Now typedef to the
+ structure. Be consistent with pretty-print.h abd cxx-pretty-print.h
+ (struct c_pretty_print_info): Document. Add new fields.
+ (pp_type_specifier_seq): Rename from pp_c_type_specifier.
+ (pp_direct_abstract_declarator): New macro.
+ (pp_ptr_operator): Likewise.
+ (pp_simple_type_specifier): Likewise.
+ (pp_expression): Likewise.
+ (pp_parameter_list): Rename from pp_parameter_declaration.
+ * c-pretty-print.c (pp_c_whitespace): Now a function.
+ (pp_c_left_paren): Likewise.
+ (pp_c_right_paren): Likewise.
+ (pp_c_dot): Likewise.
+ (pp_c_ampersand): Likewise.
+ (pp_c_arrow): Likewise.
+ (pp_c_semicolon): Likewise.
+ (pp_c_type_cast): New function.
+ (pp_c_space_for_pointer_operator): Likewise.
+ (pp_c_call_argument_list): Likewise.
+ (pp_c_cv_qualifier): Adjust prototype.
+ (pp_c_type_qualifier_list): Likewise.
+ (pp_c_pointer): Likewise. Handle REFERENCE_TYPE here.
+ (pp_c_type_specifier): Rename from pp_c_simple_type_specifier.
+ Adjust to follow standard grammar.
+ (pp_c_specifier_qualifier_list): Adjusr prototype. Handle
+ REFERENCE_TYPE. Tidy.
+ (pp_c_parameter_type_list): Adjust prototype. Tidy.
+ (pp_c_parameter_declaration): Remove.
+ (pp_c_abstract_declarator): Adjust prototype.
+ (pp_c_direct_abstract_declarator): Likewise.
+ (pp_c_type_id): Likewise.
+ (pp_c_storage_class_specifier): Likewise.
+ (pp_c_function_specifier): Likewise.
+ (pp_c_declaration_specifiers): Likewise.
+ (pp_c_direct_declarator): Likewise.
+ (pp_c_declarator): Likewise.
+ (pp_c_declarator): Likewise.
+ (pp_c_declaration): Likewise.
+ (pp_c_attributes): Likewise. Tidy.
+ (pp_c_function_definition): Adjust prototype.
+ (pp_c_char): Likewise.
+ (pp_c_string_literal): Likewise.
+ (pp_c_integer_constant): Likewise.
+ (pp_c_character_constant): Likewise.
+ (pp_c_bool_constant): Likewise.
+ (pp_c_enumeration_constant): Likewise.
+ (pp_c_floating_constant): Likewise.
+ (pp_c_constant): Likewise.
+ (pp_c_identifier): Likewise.
+ (pp_c_primary_expression): Likewise. Remove TARGET_EXPR case. Tidy.
+ (pp_c_initializer): Adjust prototype.
+ (pp_c_init_declarator): Likewise.
+ (pp_c_initializer_list): Likewise.
+ (pp_c_id_expression): Likewise.
+ (pp_c_postfix_expression): Likewise.
+ (pp_c_expression_list): Likewise.
+ (pp_c_unary_expression): Likewise.
+ (pp_c_cast_expression): Likewise.
+ (pp_c_multiplicative_expression): Likewise.
+ (pp_c_additive_expression): Likewise.
+ (pp_c_shift_expression): Likewise.
+ (pp_c_relational_expression): Likewise.
+ (pp_c_equality_expression): Likewise.
+ (pp_c_and_expression): Likewise.
+ (pp_c_exclusive_or_expression): Likewise.
+ (pp_c_inclusive_or_expression): Likewise.
+ (pp_c_logical_and_expression): Likewise.
+ (pp_c_logical_or_expression): Likewise.
+ (pp_c_conditional_expression): Likewise.
+ (pp_c_assignment_expression): Likewise.
+ (pp_c_expression): Likewise. Tidy.
+ (pp_c_statement): Likewise. Document.
+ (pp_c_pretty_printer_init): Adjust prototype. Tidy.
+
+ * c-lang.c (c_initialize_diagnostics): Update.
+ * c-common.h (strip_pointer_operator): Declare.
+ * c-common.c (strip_pointer_operator): Define.
+
+2003-08-25 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/8795
+ * tree.h (build_method_type_directly): Declare.
+ * c-common.c (handle_vector_size_attributes): Handle METHOD_TYPEs.
+ (vector_size_helper): Likewise.
+ * tree.c (build_method_type_directly): New function.
+ (build_method_type): Use it.
+
+2003-08-24 Richard Henderson <rth@redhat.com>
+
+ * config/i386.i386.c (ix86_return_in_memory): Reformat. Return true
+ for 16-byte vector modes if sse not enabled; warn for abi change.
+ (ix86_value_regno): Only return xmm0 for 16-byte vector types.
+
+2003-08-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * rtlanal.c (may_trap_p): Simplify an integer comparison.
+
+2003-08-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (AAB_svr4_replace_byteorder): Enhance
+ comment. Enable for DYNIX/ptx systems (when they switch to
+ regular fixincludes).
+ * fixinc/fixincl.x: Regenerate.
+
+2003-08-23 Jason Eckhardt <jle@rice.edu>
+
+ * config/i860/t-i860: New.
+ * config.gcc (i860-*-sysv4*): Add t-i860 to tmake_file.
+
+2003-08-23 Jakub Jelinek <jakub@redhat.com>
+
+ * c-decl.c (pushdecl): Only put decls which finish_struct will do
+ something about onto incomplete chain.
+ (finish_struct): If not removing type from incomplete
+ list, update prev.
+
+2003-08-20 Jan Hubicka <jh@suse.cz>
+
+ PR target/11369
+ * i386.c (ix86_expand_carry_flag_compare): Validate operand.
+
+ PR target/11031
+ * i386.c (const_0_to_3_operand, const_0_to_7_operand,
+ const_0_to_15_operand, const_0_to_255_operand): New predicates.
+ * i386.h (PREDICATE_CODES): Add these.
+ * i386.c (pinsrw and pextrw patterns): Use them.
+
+ PR target/10984
+ * i386.c (ix86_expand_binop_builtin): Behave sanely for VOIDmodes.
+
+ PR target/8869
+ * expr.c (convert_modes): Deal properly with integer to vector
+ constant conversion.
+
+ PR target/8871
+ * i386.md (zero_extendsidi2*): Add MMX and SSE alternatives.
+
+2003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (LOAD_EXTEND_OP): Remove.
+ * config/s390/s390.md ("movhi"): New expander; old insn renamed to ...
+ ("*movhi"): ... this.
+ ("movqi", "*movqi"): Likewise.
+ ("movqi_64"): Remove.
+ ("*zero_extendhisi2_31"): Change predicate to s_operand.
+
+2003-08-23 Dale Johannesen <dalej@apple.com>
+ * calls.c (emit_library_call_value_1): Fix obvious errors in
+ arguments to emit_group_store.
+
+2003-08-23 Jason Eckhardt <jle@rice.edu>
+
+ * calls.c (emit_library_call_value_1): Remove code related
+ to LIBGCC_NEEDS_DOUBLE.
+ * config/stormy16/stormy16.h: Remove mention of LIBGCC_NEEDS_DOUBLE.
+ * doc/tm.texi: Likewise.
+ * system.h: Poison the LIBGCC_NEEDS_DOUBLE macro.
+
+2003-08-23 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
+
+2003-08-23 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_setup_incoming_varargs): Handle o32 and o64
+ as well. Put memory references in the varargs alias set.
+ (mips_expand_prologue): Remove varargs handling from here.
+
+2003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_expand_movstr, s390_expand_clrstr,
+ s390_expand_cmpmem, s390_output_constant_pool, s390_build_va_list,
+ s390_function_profiler, s390_output_mi_thunk): Use ISO C syntax
+ for function pointer calls.
+ * config/s390/s390.md ("*negdi2_31"): Likewise.
+
+2003-08-23 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (apply_distributive_law): Correct comment.
+
+2003-08-23 Jason Eckhardt <jle@rice.edu>
+
+ * config/i860/i860.h: Remove comment mentioning LIBGCC_NEEDS_DOUBLE.
+
+2003-08-22 Jason Eckhardt <jle@rice.edu>
+
+ * config/i860/i860.c (i860_build_va_list): Create the va_decl
+ declaration. Document the va_list structure.
+ (i860_va_start): Initialize the va_list structure.
+ (i860_va_arg): Rewrite completely.
+ * config/i860/i860.h (LIBGCC_NEEDS_DOUBLE): Don't define.
+ * config/i860/varargs.asm: Do not allocate or initialize
+ a va_list. Return the address of the register save area.
+
+2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/iq2000/iq2000.c: Fix comment typos.
+ * config/iq2000/iq2000.md: Likewise.
+
+2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/iq2000/iq2000.c: Follow spelling conventions.
+ * config/iq2000/iq2000.h: Likewise.
+ * config/mn10300/mn10300.c: Likewise.
+
+2003-08-22 Jason Eckhardt <jle@rice.edu>
+
+ * config/i860/i860.c (output_move_double): Don't set latehalf
+ to zero for CONST_INT (since it could be, e.g., -1).
+
+ * config/i860/i860.h (REMSI3_LIBCALL): Replace this macro...
+ (MODSI3_LIBCALL): ...with this one.
+ (UREMSI3_LIBCALL): Replace this macro...
+ (UMODSI3_LIBCALL): ...with this one.
+
+2003-08-22 Jason Eckhardt <jle@rice.edu>
+
+ * config/i860/i860-protos.h (output_delay_insn): Remove prototype.
+ (output_delayed_branch): Remove prototype.
+ (single_insn_src_p): Remove prototype.
+ * config/i860/i860.c (single_insn_src_p): Remove function.
+ (output_delayed_branch): Remove function.
+ (output_delay_insn): Remove function.
+ (va_start): Remove unconditional test and dead code, re-format.
+ Fix coding style and spelling problems in various comments.
+ * config/i860/i860.md (UNSPECV_BLOCKAGE): Define constant...
+ (blockage pattern): ...and use it here.
+ (all define_peephole patterns related to delayed branches): Remove.
+ Fix coding style and spelling problems in various comments.
+
+2003-08-22 Jason Eckhardt <jle@rice.edu>
+
+ * config/i860/i860.c: Replace all occurrences of 'GNU CC' with 'GCC'.
+ Remove all uses of the PARAMS macro. Remove superflous prototypes.
+ Convert all function definitions from traditional to ISO C90 syntax.
+ * config/i860/i860-protos.h: Replace all occurrences of 'GNU CC'
+ with 'GCC'. Remove all uses of the PARAMS macro.
+ * config/i860/i860.h: Replace all occurrences of 'GNU CC' with 'GCC'.
+ * config/i860/i860.md: Likewise.
+ * config/i860/sysv4.h: Likewise.
+ * config/i860/varargs.asm: Likewise.
+
+2003-08-22 Jason Eckhardt <jle@rice.edu>
+
+ * config/i860/i860-protos.h (i860_va_start): Remove 'stdarg_p'
+ argument.
+ (tdesc_section): Add prototype.
+ Update copyright dates.
+ * config/i860/i860.c: Include coretypes.h, tm.h, and toplev.h.
+ (TARGET_ASM_FUNCTION_PROLOGUE): Move definition to end of file.
+ (TARGET_ASM_FUNCTION_EPILOGUE): Likewise.
+ (targetm): Likewise.
+ (i860_output_function_prologue): Substitute HOST_WIDE_INT_PRINT_DEC
+ for '%d' where necessary.
+ (i860_va_start): Remove 'stdarg_p' argument. Make conditional checks
+ on 'stdarg_p' unconditional. Divide current_function_args_info.ints
+ by UNITS_PER_WORD when referencing (likewise for .floats).
+ (I860_SVR4_VARARGS): Rename...
+ (I860_SVR4_VA_LIST): ...to this.
+ Call build() with 't' rather than 'field'.
+ (i860_rtx_costs): New function.
+ (TARGET_RTX_COSTS): Define.
+ (i860_internal_label): New function.
+ (TARGET_ASM_INTERNAL_LABEL): Define.
+ (i860_file_start): New function.
+ Update copyright dates.
+ * config/i860/i860.h (CPP_PREDEFINES): Remove.
+ (TARGET_CPU_CPP_BUILTINS): Define.
+ (EXPAND_BUILTIN_VA_START): Remove 'stdarg' argument.
+ (CONST_COSTS): Remove (and move code to i860_rtx_costs).
+ (ASM_FILE_START): Remove.
+ (ASM_FILE_START_1): Remove.
+ (ASM_GLOBALIZE_LABEL): Remove.
+ (ASM_OUTPUT_INTERNAL_LABEL): Remove.
+ (ASM_OUTPUT_CASE_LABEL): Replace call of ASM_OUTPUT_INTERNAL_LABEL
+ with targetm.asm_out.internal_label.
+ Update copyright dates.
+ * config/i860/sysv4.h (USER_LABEL_PREFIX): Define.
+ (CPP_PREDEFINES): Remove.
+ (TARGET_OS_CPP_BUILTINS): Define.
+ (GLOBAL_ASM_OP): Define.
+ (ASM_FILE_START): Remove.
+ (TARGET_ASM_FILE_START_FILE_DIRECTIVE): Define.
+ (TARGET_ASM_FILE_START): Define.
+ Update copyright dates.
+
+2003-08-22 Jason Eckhardt <jle@rice.edu>
+
+ * gcc/config.gcc (i860-*-sysv4*): Add target.
+ * config/i860/i860-protos.h: New.
+ * config/i860/i860.c: New.
+ * config/i860/i860.h: New.
+ * config/i860/i860.md: New.
+ * config/i860/sysv4.h: New.
+ * config/i860/varargs.asm: New.
+ * config/i860/x-sysv4: New.
+
+2003-08-22 Jason Eckhardt <jle@rice.edu>
+
+ * config/pa/pa.c: Replace 'GNU CC' with 'GCC'.
+ Remove all uses of PARAMS macro.
+ Convert all function definitions to ISO C90 syntax.
+ * config/pa/elf.h: Replace 'GNU CC' with 'GCC'.
+ * config/pa/fptr.c: Likewise.
+ * config/pa/lib2funcs.asm: Likewise.
+ * config/pa/long_double.h: Likewise.
+ * config/pa/milli64.S: Likewise.
+ * config/pa/pa-64.h: Likewise.
+ * config/pa/pa-hpux.h: Likewise.
+ * config/pa/pa-hpux10.h: Likewise.
+ * config/pa/pa-hpux11.h: Likewise.
+ * config/pa/pa-linux.h: Likewise.
+ * config/pa/pa-modes.def: Likewise.
+ * config/pa/pa-osf.h: Likewise.
+ * config/pa/pa-pro-end.h: Likewise.
+ * config/pa/pa.md: Likewise.
+ * config/pa/pa32-linux.h: Likewise.
+ * config/pa/pa64-linux.h: Likewise.
+ * config/pa/pa64-hpux.h: Likewise.
+ * config/pa/pa64-regs.h: Likewise.
+ * config/pa/quadlib.c: Likewise.
+ * config/pa/rtems.h: Likewise.
+ * config/pa/pa-protos.h: Replace 'GNU CC' with 'GCC' and remove
+ all uses of the PARAMS macro.
+ * config/pa/pa.h: Likewise.
+ * config/pa/som.h: Likewise.
+
+ * config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'.
+ Remove all uses of PARAMS macro.
+ Convert all function definitions to ISO C90 syntax.
+ * config/iq2000-protos.h: Replace 'GNU CC' with 'GCC'.
+ Remove all uses of PARAMS macro.
+ * config/iq2000.h: Remove all uses of PARAMS macro.
+ * config/iq2000/iq2000.md: Replace 'GNU CC' with 'GCC'.
+
+2003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_output_pool_entry): Declare.
+ * config/s390/s390.c (gen_consttable): Remove.
+ (s390_dump_pool): Use UNSPECV_POOL_ENTRY for pool entry insns.
+ (s390_output_pool_entry): New function.
+ * config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI,
+ UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI,
+ UNSPECV_POOL_SF, UNSPECV_POOL_DF): Remove, replace by ...
+ (UNSPECV_POOL_ENTRY): ... this new constant.
+ ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
+ "consttable_ti", "consttable_sf", "consttable_df"): Remove ...
+ ("*pool_entry"): ... and replace by this new insn.
+ ("literal_pool_31"): Do not emit anchor label if pool empty.
+
+ * config/s390/s390.c (struct machine_function): Add save_return_addr_p.
+ (s390_optimize_prolog): Save RETURN_REGNUM if save_return_addr_p.
+ (s390_fixup_clobbered_return_reg): Remove.
+ (s390_reorg): Don't call s390_fixup_clobbered_return_reg.
+ (s390_return_addr_rtx): Always retrieve return address from save area
+ slot. Use save_return_addr_p to force slot to be filled.
+ (s390_emit_prologue): Remove has_hard_reg_initial_val test.
+
+2003-08-22 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.h (MASK_FIX_SB1, TARGET_FIX_SB1): New defines.
+ (TARGET_SWITCHES): Add -mfix-sb1 and -mno-fix-sb1.
+ * config/mips/mips.md (divdf3, divsf3, sqrtdf2, sqrtsf2): Work
+ around SB-1 errata if TARGET_FIX_SB1 is set.
+ (recip.d insn, recip.s insn, rsqrt.d insn, rsqrt.s insn): Likewise.
+ * doc/invoke.texi: Document MIPS -mfix-sb1 and -mno-fix-sb1.
+
+2003-08-22 Roger Sayle <roger@eyesopen.com>
+
+ * hashtable.c (ht_expand): Avoid calculating rehash for the common
+ case that the first probe hits an empty hash table slot.
+
+2003-08-22 Mark Mitchell <mark@codesourcery.com>
+
+ * config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0.
+
+2003-08-22 Mark Mitchell <mark@codesourcery.com>
+
+ * config/ia64/ia64.md (*ptr_extend_plus_1): Rename to ...
+ (ptr_extend_plus_imm): ... this.
+ * config/ia64/ia64.c (addp4_optimize_ok): Do not disable addp4
+ optimization in C++.
+ (ia64_output_mi_thunk): Support ILP32 mode.
+
+2003-08-22 Bernardo Innocenti <bernie@develer.com>
+
+ * gcc/config/m68k/m68k.c (m68k_coff_asm_named_section): remove unused
+ function.
+ * gcc/config/m68k/m68k.c (-m68k_svr3_asm_out_constructor): likewise.
+
+2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.c (const_int_1_operand): Simplify an
+ integer comparison.
+
+2003-08-22 Alan Modra <amodra@bigpond.net.au>
+
+ * config/fp-bit.c: Specify config/ dir for include of fp-bit.h.
+ * config/rs6000/ppc64-fp.c: Likewise.
+
+2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cfgcleanup.c: Fix comment typos.
+ * emit-rtl.c: Likewise.
+ * optabs.c: Likewise.
+ * ra-build.c: Likewise.
+ * rtlanal.c: Likewise.
+ * tree.h: Likewise.
+
+2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-decl.c: Fix comment formatting.
+ * cfgrtl.c: Likewise.
+ * combine.c: Likewise.
+ * convert.c: Likewise.
+ * dominance.c: Likewise.
+ * dwarf2out.c: Likewise.
+ * dwarfout.c: Likewise.
+ * expmed.c: Likewise.
+ * fold-const.c: Likewise.
+ * gcov.c: Likewise.
+ * genattrtab.c: Likewise.
+ * ggc-common.c: Likewise.
+ * mips-tfile.c: Likewise.
+ * regmove.c: Likewise.
+
+2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtin-attrs.def: Fix comment formatting.
+ * c-pretty-print.c: Likewise.
+ * diagnostic.h: Likewise.
+ * langhooks.h: Likewise.
+ * recog.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * tree.def: Likewise.
+
+2003-08-22 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k-protos.h: Convert to ISO C90.
+ * config/m68k/m68k.c: Likewise.
+
+2003-08-21 Bernardo Innocenti <bernie@develer.com>
+ Paul Dale <pauli@snapgear.com>
+ Peter Barada <peter@baradas.org>
+
+ * config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for
+ ColdFire cores.
+
+2003-08-21 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (INCLUDES): Remove -I$(srcdir)/config.
+ * config.gcc (*-*-openbsd): Don't set tm_file.
+ (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*,
+ arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*,
+ h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*,
+ i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*,
+ i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*,
+ m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*,
+ m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*,
+ m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*,
+ mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka,
+ sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*,
+ xscale-*-coff): Use explicit and complete lists of target headers
+ to include. Move definitions to tm_defines where appropriate.
+ (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for
+ not-yet-contributed configuration.
+
+ * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h
+ * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h
+ * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h
+ * config/i386/nto.h, config/iq2000/iq2000.h,
+ * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h
+ * config/m68k/linux.h, config/m68k/m68k-aout.h
+ * config/m68k/m68k-none.h, config/m68k/m68kv4.h
+ * config/m68k/netbsd.h, config/m68k/openbsd.h
+ * config/m68k/sgs.h, config/mcore/mcore-pe.h,
+ * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h,
+ * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h:
+ Remove includes of other target config headers, and
+ definitions of macros moved to tm_defines lists. Add #undefs
+ where now necessary to prevent redefinition warnings.
+
+ * config/h8300/coff.h: New file split out of...
+ * config/h8300/elf.h: ...here.
+ * config/m68k/hp320base.h: New file split out of...
+ * config/m68k/hp320.h: ...here.
+ * config/rs6000/lynxbase.h: New file split out of...
+ * config/rs6000/lynx.h: ...here.
+
+ * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h
+ * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file.
+
+ * config/sol2.h: Remove #if 0-ed #include of sys/mman.h.
+ * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h.
+ * config/mcore/mcore.h: Don't include hwint.h nor machmode.h.
+ Remove unnecessary #ifndef.
+ * config/s390/s390.h: Prefix #include of s390/fixdfdi.h
+ [under IN_LIBGCC2] with config/.
+
+2003-08-21 Per Bothner <pbothner@apple.com>
+
+ * cppfiles.c (stack_file): Correctly pass return_at_eof parameter
+ to cpp_push_buffer.
+ * cpplex.c (_cpp_get_fresh_line): Don't buffer->prev - handled
+ by return_at_eof check. Always call _cpp_pop_buffer at end.
+
+2003-08-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/11805
+ * config/h8300/h8300.md (two anonymous patterns): Remove.
+
+2003-08-21 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (MUST_PASS_IN_STACK): Remove BLKmode clause.
+ * config/mips/mips.c (function_arg_pass_by_reference): Never return
+ true for n32 & n64.
+
+2003-08-21 Josef Zlomek <zlomekj@suse.cz>
+
+ * fold-const.c (fold): Fix bug in (A & C) == D where D & ~C != 0
+ and similarly in (A | C) == D where C & ~D != 0.
+
+2003-08-20 Geoffrey Keating <geoffk@apple.com>
+
+ PR 8180
+ * configure.in: When testing with_libs and with_headers, treat
+ 'no' as unset. Based on a patch by Dan Kegel <dank@kegel.com>.
+ * configure: Regenerate.
+
+2003-08-20 Peter Barada <peter@baradas.org>
+
+ * longlong.h (umul_ppmm): Add ColdFire support.
+
+2003-08-20 Peter Barada <peter@baradas.org>
+ Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k-none.h: Introduce new ColdFire archs.
+ * config/m68k/m68k.h: Likewise.
+ * config/m68k/lb1sf68.asm: Rename __mcf5200__ to __mcoldfire__.
+ * config/m68k/coff.h: Rename TARGET_5200 to TARGET_COLDFIRE.
+ * config/m68k/linux.h: Likewise.
+ * config/m68k/m68k.c: Likewise.
+ * config/m68k/m68k.md: Likewise.
+ * config/m68k/m68kelf.h: Likewise.
+ * config/m68k/netbsd-elf.h: Likewise.
+ * config/m68k/t-m68kelf: Add multilib targets for new ColdFire archs.
+
+2003-08-20 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c: Strip away code depending on NO_ADDSUB_Q definition.
+ * config/m68k/m68k.md: Likewise.
+
+2003-08-20 Mark Mitchell <mark@codesourcery.com>
+
+ PR java/11996
+ Revert this change:
+ 2003-08-19 Mark Mitchell <mark@codesourcery.com>
+ * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
+ types with precisions other than those given by native machine
+ modes.
+
+2003-08-20 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.md (anonymous define_insn): remove obsolete code
+ selected by FSGLMUL_USE_S and FSGLDIV_USE_S
+ * config/m68k/m68k.c (output_move_himode): remove SGS_NO_LI check
+ * config/m68k/m68k.md (anonymous define_insn): Likewise
+ * config/m68k/m68k.md (anonymous define_insn): remove ISI_OV check
+ * config/m68k/m68k.c (standard_68881_constant_p): remove obsolete
+ code selected by NO_ASM_FMOVECR
+
+2003-08-20 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (output_move_const_into_data_reg,
+ output_move_himode): unify MOTOROLA/MIT handling of moveq
+ * config/m68k/m68k.md (movsi_const0, anonymous define_insn):
+ Likewise
+
+2003-08-20 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (m68k_output_function_prologue): use %U in
+ label name
+ * config/m68k/m68k.c (m68k_output_function_epilogue): replace
+ HOST_WIDE_INT_PRINT_DEC with %wd
+
+2003-08-20 Loren James Rittle <ljrittle@acm.org>
+
+ * config/i386/freebsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Handle
+ redefine warning.
+
+2003-08-20 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/11984
+ * fold-const.c (fold <PLUS_EXPR>): Check for integer constant
+ operands before calling tree_int_cst_lt when performing associative
+ transformations.
+
+2003-08-20 Jason Merrill <jason@redhat.com>
+
+ * tree.h (IS_EXPR_CODE_CLASS): Also include 'r' and 's'.
+ (EXPR_CHECK): Don't check for 'r' or 's' if we're
+ checking IS_EXPR_CODE_CLASS.
+ * calls.c (calls_function_1): Likewise.
+ * fold-const.c (fold): Likewise.
+ * tree.c (iterative_hash_expr): Likewise.
+ * tree-inline.c (walk_tree, copy_tree_r): Likewise.
+
+2003-08-20 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c (m68k_output_mi_thunk): delete obsolete code
+ depending on MOTOROLA_BSR
+ * config/m68k/m68k.md (anonymous define_insn): Likewise
+
+2003-08-20 Jason Merrill <jason@redhat.com>
+
+ * builtins.c (expand_builtin_mathfn): Use get_callee_fndecl.
+ (expand_builtin_mathfn2, expand_builtin, builtin_mathfn_code,
+ fold_trunc_transparent_mathfn, fold_builtin): Likewise.
+ * dojump.c (do_jump): Likewise.
+ * fold-const.c (operand_equal_p, fold): Likewise.
+ (tree_expr_nonnegative_p): Likewise.
+
+ * stor-layout.c (do_type_align): Only copy DECL_USER_ALIGN from
+ TYPE_USER_ALIGN for FIELD_DECLs.
+
+ * attribs.c (decl_attributes): Rebuild the function pointer type after
+ changing the target type.
+ * tree.c (get_qualified_type): Also check that the attributes match.
+
+2003-08-19 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * Makefile.in (STAGESTUFF): Move cc1obj$(exeext) from here ...
+ * objc/config-lang.in (stagestuff): ... to here.
+
+2003-08-19 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11946
+ * convert.c (convert_to_integer): Use CONVERT_EXPR (instead of
+ NOP_EXPR) when necessary.
+ * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
+ types with precisions other than those given by native machine
+ modes.
+
+2003-08-19 Geoffrey Keating <geoffk@apple.com>
+
+ * cpppch.c (cpp_valid_state): Re-add warning about PCH not used
+ because some macro is defined.
+
+ * config/darwin.h (LINK_COMMAND_SPEC): Add -arch and -arch_only
+ options.
+ * config/i386/darwin.h (ASM_SPEC): New.
+ (SUBTARGET_EXTRA_SPECS): New.
+ * config/rs6000/darwin.h (ASM_SPEC): New.
+ (SUBTARGET_EXTRA_SPECS): New.
+ * configure.in: Don't set CROSS or SYSTEM_HEADER_DIR when building
+ a cross-compiler between two different processors on Darwin.
+ * configure: Regenerate.
+
+2003-08-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c: Fix comment typos.
+ * c-common.c: Likewise.
+ * c-decl.c: Likewise.
+ * c-pretty-print.c: Likewise.
+ * cfgbuild.c: Likewise.
+ * cfglayout.c: Likewise.
+ * cfgloopanal.c: Likewise.
+ * cgraphunit.c: Likewise.
+ * cppfiles.c: Likewise.
+ * dwarfout.c: Likewise.
+ * expr.c: Likewise.
+ * fold-const.c: Likewise.
+ * gcse.c: Likewise.
+ * ggc-page.c: Likewise.
+ * haifa-sched.c: Likewise.
+ * pretty-print.c: Likewise.
+ * tree.c: Likewise.
+ * tree.h: Likewise.
+ * value-prof.c: Likewise.
+
+2003-08-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-decl.c: Follow spelling conventions.
+ * cppfiles.c: Likewise.
+
+2003-08-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.c: Fix comment formatting.
+ * c-common.h: Likewise.
+ * c-decl.c: Likewise.
+ * cppinit.c: Likewise.
+ * cpplib.h: Likewise.
+ * emit-rtl.c: Likewise.
+ * input.h: Likewise.
+ * line-map.h: Likewise.
+ * opts.c: Likewise.
+ * opts.h: Likewise.
+ * simplify-rtx.c: Likewise.
+
+2003-08-19 Daniel Jacobowitz <drow@mvista.com>
+
+ * unwind-c.c: Add libgcc-style exception.
+ * unwind-dw2.c: Likewise.
+ * unwind-pe.h: Likewise.
+ * unwind-sjlj.c: Likewise.
+ * unwind.inc: Likewise.
+
+2003-08-19 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c/5582 PR c++/10538
+ * langhooks-def.h (lhd_decl_uninit): Declare.
+ (LANG_HOOKS_DECL_UNINIT): New macro.
+ (LANG_HOOKS_INITIALIZER): Adjust.
+ * langhooks.h (struct lang_hooks): Add new field
+ decl_uninit.
+ * langhooks.c (lhd_decl_uninit): Define.
+ * c-common.c (c_decl_uninit_1): New function.
+ (c_decl_uninit): New function.
+ (warn_init_self): Define.
+ * c-common.h (c_decl_uninit): Declare.
+ (warn_init_self): Declare.
+ * c.opt: Introduce -Winit-self.
+ * c-opts.c (c_common_handle_options): Set warn_init_self.
+ * c-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
+ * objc/objc-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
+ * function.c (uninitialized_vars_warning): Call the language hook.
+ * doc/invoke.texi: Document -Winit-self.
+
+2003-08-19 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md: Adjust SI-mode "trap_if" instruction
+ to use better predicates and constraints. Define new
+ instruction to handle "trap_if" with DI-mode arguments.
+ (conditional_trap): FAIL if trap code is not 0.
+
+2003-08-19 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/i386/i386.c (legitimate_pic_address_disp_p): Change the
+ strstr with $pb to a strcompare with "<pic base>"
+ (ix86_output_addr_diff_elt): Output the real pic base.
+
+2003-08-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * langhooks-def.h (LANG_HOOKS_INITIALIZE_DIAGNOSTICS): Fix spelling.
+ (LANG_HOOKS_INITIALIZER): Correct.
+ * c-lang.c: Likewise.
+
+2003-08-19 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_mark_needed_node): Call notice_global_symbol.
+ (cgraph_varpool_mark_needed_node): Likewise.
+ * cgraph.h (notice_global_symbol): Declare
+ * varasm.c (notice_global_symbol): Break out from ...
+ (assemble_start_function): ... here; update for variables.
+ (assemble_variable): Use notice_global_symbol.
+
+2003-08-19 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_va_arg): If EABI_FLOAT_VARARGS_P,
+ expect SFmode and DFmode arguments to be passed in FPRs,
+ regardless of the underlying type.
+
+2003-08-19 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/11924
+ * config/mips/mips.c (INTERNAL_SYMBOL_P): New macro.
+ (mips_classify_symbol, m16_usym8_4, m16_usym5_4): Use it.
+
+2003-08-18 Matt Kraai <kraai@alumni.cmu.edu>
+
+ PR c/11207
+ * c-typeck.c (set_init_index): Check for negative index.
+
+2003-08-18 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/crti.asm (_init, _fini): Add alternate code for new
+ call0 ABI.
+ * config/xtensa/crtn.asm (_init, _fini): Likewise.
+ * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
+ __umodsi3, __modsi3): Likewise.
+ * config/xtensa/t-xtensa (crti.o, crtn.o): Add $(GCC_CFLAGS) and
+ $(INCLUDES).
+
+2003-08-18 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md ("*nabssf2_gpr"): New.
+
+2003-08-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Quote C code in braces. Remove use of
+ fake const0_rtx operands. Remove double backslashes. Use \;.
+ Remove workarounds for bogus warnings.
+
+2003-08-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (muldf3, mulsf3): Don't call a gen_* function.
+ (muldf3_internal, muldf3_r4300): Select based on TARGET_4300_MUL_FIX
+ rather than TARGET_MIPS4300.
+ (mulsf3_internal, mulsf3_r4300): Likewise.
+
+2003-08-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Renumber unspecs. Clean up comments.
+
+2003-08-17 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (associative_constant_p): New function to test
+ whether an RTX expression is an immediate constant.
+ (simplify_associative_operation): New function to perform some
+ reassociation optimizations of associative binary expressions.
+ (simplify_binary_operation): Use simplify_associative_operation
+ to simplify PLUS, MULT, AND, IOR, XOR, SMIN, SMAX, UMIN and UMAX.
+ Floating point expressions are only reassociated when unsafe
+ math optimizations are permitted.
+
+2003-08-17 Andreas Jaeger <aj@suse.de>
+
+ * config/alpha/alpha.md: Remove usage of PARAMS.
+
+ * config/i386/cygwin.h: Convert K&R prototypes to ISO C90.
+ * config/i386/i386-interix.h: Likewise.
+ * config/i386/winnt.c: Likewise.
+ * config/i386/cygming.h: Likewise.
+ * config/i386/cygwin2.c: Likewise.
+ * config/darwin.c: Likewise.
+ * config/darwin-c.c: Likewise.
+ * config/darwin-protos.h: Likewise.
+ * config/darwin.h: Likewise.
+ * config/s390/s390-protos.h: Likewise.
+ * config/s390/s390.c: Likewise.
+ * config/ia64/ia64.c: Likewse
+ * config/ia64/ia64-protos.h: Likewise.
+ * config/ia64/ia64-c.c: Likewise.
+
+2003-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/sparc/sparc.c: Convert to ISO C.
+
+ * config/sparc/sparc-protos.h: Don't use the PARAMS macro.
+ * config/sparc/sparc.c: Likewise.
+
+2003-08-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/11512
+ * stmt.c (expand_expr_stmt_value): Don't warn about any void
+ typed expression.
+
+2003-08-16 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_fntype_regparm): Rename from ...
+ (ix86_function_regparm): ... this one; add fastcall and local
+ functions.
+ (ix86_function_ok_for_sibcall): Update.
+ (ix86_return_pops_args): Likewise.
+ (init_cumulative_args): Likewise.
+ (x86_can_output_mi_thunk): Likewise.
+ (function_arg): Fix formating.
+ (x86_this_parameter): Fix fastcall.
+ (x86_output_mi_thunk): Likewise.
+
+ * cgraph.c (cgraph_mark_needed_node): Do not mark functions without
+ body as reachable; mark nested functions as needed too.
+ (dump_cgraph): Do not output global.calls.
+ * cgraph.h (cgraph_global_info): Kill.
+ * cgraphunit.c (cgraph_finalize_function): Enqueue needed functions.
+ (record_call_1): Speedup.
+ (cgraph_analyze_function): Break out from ...; compute inlining
+ parameters.
+ (cgraph_finalize_compilation_unit): ... here.
+ (cgraph_mark_inline): Kill computation of calls.
+ (cgraph_decide_inlining): Do not compute most of initial values.
+
+2003-08-14 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (negate_expr_p): MULT_EXPRs and RDIV_EXPRs are easy
+ to negate if either operand is easy to negate, if we don't care
+ about sign-dependent rounding.
+ (negate_expr): Make the logic to negate a REAL_CST explicit.
+ Attempt to negate a MULT_EXPR or RDIV_EXPR by negating an operand
+ that's easy to negate, if we don't honor sign-dependent rounding.
+ (fold <MULT_EXPR>): Optimize -A * B as A * -B if B is easy to
+ negate, and the symmetric A * -B as -A * B if A is easy to negate.
+ (fold <RDIV_EXPR>): Likewise, optimize -A/B and C/-D as A/-B and
+ -C/D if B and C are cheap to negate. Add an explicit rule to
+ optimize X/-1.0 as -X when we don't care about signaling NaNs.
+
+2003-08-14 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (tm_file): Rename tm_include_list.
+ (tm_p_file): Rename tm_p_include_list.
+ (build_xm_file): Rename build_xm_include_list.
+ (host_xm_file): Rename host_xm_include_list.
+ (xm_file): Rename xm_include_list.
+ (xm_file_list): Add to be substituted.
+ (cs-config.h, cs-bconfig.h, cs-tconfig.h, cs-tm.h, cs-tm_p.h):
+ Update to match.
+ (bt-load.o): Add missing dependency on $(TM_H).
+ * configure.in: Prefix value of EXTRA_MODES_FILE with config/.
+ For each of tm_file, tm_p_file, xm_file, host_xm_file, and
+ build_xm_file, generate both *_file_list and *_include_list
+ values from it. (xm_file_list was formerly not being generated.)
+ In *_include_list, prefix the names of all headers found in
+ $(srcdir)/config with config/. In each loop, consider only
+ the special case files that can actually appear in that list.
+ AC_SUBST all *_file_list and all *_include_list variables; do
+ not AC_SUBST the plain *_file variables.
+ * configure: Regenerate.
+
+2003-08-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfg.c (dump_edge_info): Add name of loop_exit edge flag.
+
+2003-08-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (pa_adjust_insn_length): Delete adjustment for delay slot in
+ direct calls.
+ (attr_length_call): Include it here. Improve length estimate for
+ local calls.
+ (output_call): Use targetm.binds_local_p.
+
+2003-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (CASE_MATHFN): New helper macro.
+ (mathfn_built_in): Simplify and sort.
+
+ * protoize.c (substr): Delete, callers changed to `strstr'.
+
+2003-08-13 Zack Weinberg <zack@codesourcery.com>
+
+ * config.gcc (iq2000*-*-elf*): Don't set xm_file.
+ * config/iq2000/xm-iq2000.h: Delete file.
+
+2003-08-13 Geoffrey Keating <geoffk@apple.com>
+
+ * gengtype.c (walk_type): Process a subobject before processing
+ the pointer that points to the subobject.
+
+2003-08-13 Per Bothner <pbothner@apple.com>
+
+ * regclass.c (init_reg_modes): Make non-static.
+ Rename to init_reg_modes_once per new naming convention.
+ (init_regs): Don't call init_reg_modes here.
+ * emit-rtl.c (init_emit_once): Call init_reg_modes_once here instead.
+ * rtl.h (init_reg_modes_once): New declaration.
+ * toplev.c (backend_init): Call init_regs after init_emit_once.
+
+2003-08-13 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/linux.h (DBX_REGISTER_NUMBER): Define so to map a
+ special index for MD_FALLBACK_FRAME_STATE_FOR to itself.
+
+2003-08-13 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (sh_get_pr_initial_val): Always wrap in unspec for TARGET_SH1.
+ * sh.md (load_ra): Change insn predicate to TARGET_SH1.
+
+2003-08-13 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.md (ctrsi, ctrdi): Reenable
+ handling of decrement-and-branch farther than 32 bits.
+
+2003-08-12 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * configure.in (make_compare_target): Move test to ...
+ * aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): here.
+ * configure: Regenerate.
+
+2003-08-12 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/iris6.h: Convert to C90 prototypes.
+ * config/mips/irix6-libc-compat.c: Likewise.
+ * config/mips/mips-protos.h: Likewise.
+ * config/mips/mips.c: Likewise.
+
+2003-08-12 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ fixinc/inclhack.def (svr4_krnl): Rename from svr4_kernel. Enable
+ for selected machines. Comment heavily.
+ fixinc/fixincl.x: Rebuild.
+ fixinc/tests/base/fs/rfs/rf_cache.h: New file.
+
+2003-08-12 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h: Tweak various comments.
+ * config/mips/mips.c: Likewise.
+
+2003-08-11 James E Wilson <wilson@tuliptree.org>
+
+ PR optimization/11319
+ PR target/10021
+ * alias.c (find_base_value, case REG): Return 0 not src if no base
+ found.
+
+2003-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcse.c (gmalloc): Fix last change.
+
+2003-08-11 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_binary_operation): Replace calls to
+ gen_rtx_NEG and gen_rtx_NOT with calls to simplify_gen_unary,
+ and calls to gen_rtx_PLUS, gen_rtx_MULT, gen_rtx_LSHIFTRT,
+ gen_rtx_ASHIFT and gen_rtx_AND with calls to simplify_gen_binary.
+
+2003-08-11 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c (expand_expr): If an ABS_EXPR has a complex type, abort.
+ * c-typeck.c (build_unary_op): COMPLEX_TYPE is not a valid
+ typecode for an ABS_EXPR.
+
+ * doc/c-tree.texi: Document ABS_EXPR.
+
+2003-08-11 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold): Optimize any associative floating point
+ operator with -funsafe-math-optimizations, not just MULT_EXPR.
+
+2003-08-11 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/lib1funcs.asm (__udivdi3): Add .type and .size
+ information in SHmedia case too.
+ (__divdi3, __umoddi3, __moddi3, __init_trampoline, __ic_invalidate):
+ Likewise.
+ (__set_fpscr): Use an access via GOT for PIC case.
+
+2003-08-11 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * configure.in (intermodule): Make switch test more portable.
+ * configure: Regenerate.
+
+2003-08-11 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * Makefile.in (cleanstrap): Pass BOOT_CFLAGS to bootstrap.
+ (restrap): Likewise.
+
+2003-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gcse.c (gmalloc): Argument is a size_t. Add ATTRIBUTE_MALLOC.
+ (grealloc): Size argument is a size_t.
+ (gcalloc): New function. Use throughout in lieu of
+ gmalloc/memset.
+
+ * config/avr/avr.c (avr_init_once): Use xcalloc in lieu of
+ xmalloc/memset.
+ * config/ia64/ia64.c (ia64_reorg): Likewise.
+ * conflict.c (conflict_graph_new): Likewise.
+ * fixinc/fixincl.c (run_compiles): Likewise.
+ * genattrtab.c (optimize_attrs): Likewise.
+ * genrecog.c (new_decision): Likewise.
+ * haifa-sched.c (schedule_block): Likewise.
+ * hashtable.c (ht_create): Likewise.
+
+2003-08-11 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/lib2funcs.S: Fix whitespace.
+ * config/xtensa/xtensa.md (all insns and expanders): Use brace block
+ syntax where appropriate. Remove unnecessary backslash escapes.
+ Reformat comments and fix some code formatting.
+ (extendqisi2): Rearrange conditional.
+ (*btrue, *bfalse, *ubtrue, *ubfalse, *bittrue, *bitfalse, *masktrue,
+ *maskfalse, movsicc_internal0, movsfcc_internal0): Call abort instead
+ of fatal_insn.
+
+2003-08-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c: Various formatting fixes.
+ (override_options): Resync -mtune handling with gas.
+ (mips_issue_rate): Rearrange like mips_use_dfa_pipeline_interface.
+ * config/mips/mips.h: More formatting fixes.
+ (mips_abi): Move declaration.
+ * config/mips/mips.md (exception_receiver): Add mode to
+ unspec_volatile.
+
+2003-08-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (spe_init_builtins): Handle evsplati and
+ evsplatfi here.
+ (bdesc_1arg): Remove evsplati and evsplatfi.
+
+2003-08-11 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * dwarf2asm.c (dw2_output_indirect_constant_1): Take user_label_prefix
+ into account.
+
+2003-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_strcat): Optimize constant strings.
+
+2003-08-10 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * pretty-print.c (pp_base_indent): Rename from pp_indent.
+ * c-pretty-print.h (pp_c_pretty_print_flag)s: New datatype.
+ (struct c_pretty_print_info): Add more fields.
+ (pp_c_left_paren): Move to c-pretty-print.c.
+ (pp_c_right_paren): Likewise.
+ (pp_c_left_brace): Likewise.
+ (pp_c_right_brace): Likewise.
+ (pp_c_left_bracket): Likewise.
+ (pp_c_right_bracket): Likewise.
+ (pp_c_declarator): Declare.
+ (pp_c_direct_declarator): Likewise.
+ (pp_c_specifier_qualifier_list): Likewise.
+ (pp_c_type_id): Likewise.
+ * c-pretty-print.c (pp_c_cv_qualifier): Change prootype. Rework..
+ (pp_c_type_qualifier_list): New.
+ (pp_c_pointer): Likewise.
+ (pp_c_parameter_type_list): Likewise.
+ (pp_c_function_definition): Likewise.
+ (pp_c_id_expression): Likewise.
+ (pp_c_simple_type_specifier): Tidy.
+ (pp_c_unary_expression): Likewise.
+ (pp_c_expression): Likewise.
+ (pp_c_pretty_printer_init): Likewise.
+ (pp_c_specifier_qualifier_list): Rework..
+ (pp_c_abstract_declarator): Likewise.
+ (pp_c_postfix_expression): Likewise.
+ (pp_c_primary_expression): Likewise.
+ (pp_c_cast_expression): Likewise.
+ (pp_c_direct_abstract_declarator): Likewise.
+ (pp_c_storage_class_specifier): Likewise.
+ (pp_c_function_specifier): Likewise.
+ (pp_c_declaration_specifiers): Likewise.
+ (pp_c_direct_declarator): Likewise.
+ (pp_c_declarator): Likewise.
+ (pp_c_declaration): Likewise.
+ (pp_c_statement): Likewise.
+ (pp_c_integer_constant): Rename from pp_c_integer_literal.
+ (pp_c_character_constant): Rename from pp_c_character_literal.
+ (pp_c_bool_constant): Rename from pp_c_bool_literal.
+ (pp_c_enumeration_constant): Rename from pp_c_enumerator.
+ (pp_c_floating_constant): Rename from pp_c_real_literal.
+ (pp_c_constant): Rename from pp_c_literal.
+ * c-lang.c: Include diagnostic.h and c-pretty-print.h
+ (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): Define.
+ (c_initialize_diagnostics): New.
+ * Makefile.in (c-lang.o): Update dependency.
+
+2003-08-10 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-typeck.c (digest_init): Add conversion for VECTOR_TYPEs.
+
+2003-08-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_no_mips16_string): Remove.
+ (override_options): Don't handle -mips16 as part of -mipsN.
+ * config/mips/mips.h (mips_no_mips16_string): Remove declaration.
+ (TARGET_SWITCHES): Add -mips16 and -mno-mips16 entries.
+ (TARGET_OPTIONS): Remove -mno-mips16.
+
+2003-08-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (coprocessor_operand): Remove declaration.
+ (coprocessor2_operand): Likewise.
+ * config/mips/mips.c (STAB_CODE_TYPE): Remove.
+ (lookup_name): Remove declaration.
+ (abort_with_insn): Remove. Replace all uses with fatal_insn.
+ (mips16, mips_abicalls): Remove.
+ (mips_char_to_class): Remove initialiser: all entries are NO_REGS.
+ (arith32_operand, large_int, true_reg_or_0_operand): Remove.
+ (coprocessor_operand, coprocessor2_operand): Remove.
+ (override_options): Don't set mips16 or mips_abicalls.
+ (print_operand): Don't expect SIGN_EXTEND operands.
+ (mips_secondary_reload_class): Likewise.
+ (mips_output_conditional_branch): Remove disabled long-branch code.
+ * config/mips/mips.h (call_used_regs): Remove declaration.
+ (may_call_alloca): Likewise.
+ (mips_cpu_attr, mips_abicalls_type, mips_abicalls_attr): Remove.
+ (mips_abicalls, mips16): Remove declarations.
+ (ASM_FINAL_SPEC, LIB_SPEC): Remove.
+ (CC1_SPEC): Remove outdated comment.
+ (MIPS_VERSION, MACHINE_TYPE): Remove.
+ (TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove.
+ (PC_REGNUM, STACK_POINTER_OFFSET): Remove disabled definitions.
+ (STRUCT_VALUE_RETURN_REGNUM, STACK_DYNAMIC_OFFSET): Likewise.
+ (PUSH_ROUNDING): Likewise.
+ (ASSEMBLER_SCRATCH_REGNUM): Remove.
+ * config/mips/mips.md: Replace mips_cpu_attr with mips_tune
+ and mips16 with TARGET_MIPS16.
+
+2003-08-09 Per Bothner <pbothner@apple.com>
+
+ * cppinit.c (cpp_read_main_file): Split out source-independent
+ initialization to separate function ...
+ (cpp_post_options): New function.
+ * cppfiles.c (cpp_stack_file): Rename public name to ...
+ (_cpp_stack_file): New internal function name.
+ * cpplib.h: Update accordingly.
+ * cppinit.c: (cpp_create_reader): Initialize cpp_readers line here.
+ (cpp_read_main_file): Don't initialize line here.
+ * c-opts.c (c_common_post_options): Call cpp_post_options.
+ (c_common_parse_file): Call cpp_read_main_file, not cpp_stack_file.
+ * fix-header.c (read_scan_file): Call cpp_post_options.
+
+2003-08-09 Per Bothner <per@bothner.com>
+
+ * c-decl.c (SCOPE_LIST_APPEND): Remove bogus line continuation.
+
+2003-08-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (pa_asm_output_mi_thunk): Fix typo.
+
+2003-08-09 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/11839
+ * cppfiles.c (open_file): Handle ENOTDIR.
+
+2003-08-09 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/11699
+ * config/mips/mips.c (override_options): Reject -mabi=eabi -mabicalls.
+
+2003-08-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md (extzv, extv, insv): Fix operand limit checks. Fail if
+ source/destination is not a register operand.
+
+2003-08-08 Richard Henderson <rth@redhat.com>
+
+ PR target/11535
+ * config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
+ RETURN_ADDRESS_POINTER_REGNUM.
+ (ia64_expand_prologue): Don't frob it.
+ (ia64_output_function_epilogue): Likewise.
+ (ia64_return_addr_rtx): New.
+ (ia64_split_return_addr_rtx): New.
+ * config/ia64/ia64-protos.h: Update.
+ * config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
+ (RETURN_ADDRESS_POINTER_REGNUM): Remove.
+ (GENERAL_REGNO_P): Don't check it.
+ (AR_*_REGNUM): Renumber.
+ (FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
+ (CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
+ (REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
+ (ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
+ (RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
+ * config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
+ (movdi_ret_addr): New.
+
+2003-08-08 Geoffrey Keating <geoffk@apple.com>
+
+ * config.gcc (powerpc-*-darwin*): Don't build a soft-float multilib.
+
+2003-08-08 Roger Sayle <roger@eyesopen.com>
+
+ * tree.h (get_identifier) Define a macro form of get_identifier
+ that calls get_identifier_with_length when the string is constant.
+ (get_identifier_with_length): Change type of second argument to
+ size_t in prototype.
+ * stringpool.c (get_identifier): Undefine the macro before giving
+ the function definition.
+ (get_identifier_with_length): Change type of second argument to
+ size_t in function definition.
+ * hashtable.c (calc_hash): Change type of second argument to size_t.
+ (ht_lookup): Change type of third argument to size_t. Reorganize
+ to speed-up the cases where the hash table slot is empty, or the
+ first probe matches (i.e. there isn't a collision).
+ * hashtable.h (ht_lookup): Adjust function prototype.
+
+2003-08-08 Bernardo Innocenti <bernie@develer.com>
+
+ PR target/9697
+ PR target/11777
+ * longlong.h (count_leading_zeros): Exclude on __mcpu32__.
+
+2003-08-08 Neil Booth <neil@daikokuya.co.uk>
+
+ * common.opt: Add debug switches.
+ * flags.h (use_gnu_debug_info_extensions): Boolify.
+ * opts.c (write_symbols, debug_info_level,
+ use_gnu_debug_info_extensions): Move from toplev.c.
+ (set_debug_level): New.
+ (common_handle_options): Handle debug switches.
+ (print_help): Display target options directly.
+ * toplev.c (debug_hooks): Don't initialize.
+ (write_symbols, debug_info_level,
+ use_gnu_debug_info_extensions): Move to opts.c.
+ (debug_args, display_help, decode_g_option): Remove.
+ (process_options): Set no debug if level zero here,
+ and no-debug-hooks. Error here if impossible debug format selected.
+ * toplev.h (display_help, decode_g_option): Remove.
+
+2003-08-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * tree.c (get_file_function_name_long): Fix size of alloca() area.
+
+2003-08-08 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * configure.in (gcc_cv_prog_cmp_skip): Flipflop make_compare_target
+ and gcc_cv_prog_cmp_skip.
+ * configure: Regenerate.
+
+2003-08-08 Stan Cox <scox@redhat.com>
+
+ * config/iq2000: New port.
+ * config.gcc (iq2000-*-elf): Added.
+ * doc/install.texi (Specific): Add iq2000 description.
+
+2003-08-08 Andreas Schwab <schwab@suse.de>
+
+ * configure.in (gcc_cv_as_ia64_ltoffx_ldxmov_relocs): Fix quoting
+ and insert missing empty argument.
+ * configure: Regenerate.
+
+2003-08-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (update_total_code_bytes): Use new macro IN_NAMED_SECTION_P.
+ (attr_length_millicode_call): Likewise.
+ (attr_length_call): Likewise. Revise some maximum insn lengths.
+ (attr_length_indirect_call): Likewise.
+ (output_call): Fix thinko that added extra nop.
+ * pa.h (IN_NAMED_SECTION_P): Define.
+
+ PR c++/11712
+ * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
+ __STDC_EXT__ when using C++ dialect.
+
+2003-08-07 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (calc_live_regs): If the return address pointer is live,
+ force pr live.
+ (sh5_schedule_saves): Exclude PR_MEDIA_REG from being a temp register
+ for saves / restores.
+ (sh_expand_epilogue): If sh_media_register_for_return returns a
+ register number, flag the instructions that restores PR_MEDIA_REG
+ as possibly dead.
+ Remove dead update of offset.
+ (sh_get_pr_initial_val): Use UNSPEC_RA if we don't know yet if
+ we can use the result of get_hard_reg_initial_val.
+ * sh.md (UNSPEC_RA): New constant.
+ (movsi_i_lowpart+1): Changed into a define_insn_and_split, named:
+ (load_ra). Handle UNSPEC_RA.
+ (sibcall_media): Use PR_MEDIA_REG.
+
+ * sh.h (CALL_USED_REGISTERS): Include PR_REG and PR_MEDIA_REG.
+ * sh.c (calc_live_regs): Use sh_pr_n_sets to determine if pr
+ needs saving on SHmedia.
+
+2003-08-07 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md: Replace all occurrences of \\t with \t.
+
+2003-08-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * local-alloc.c (combine_regs): Fix comment typo.
+
+2003-08-06 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (builtin_decls): Replace with first_builtin_decl
+ and last_builtin_decl.
+ (c_init_decl_processing): Initialize both.
+ (c_reset_state): Iterate from first_builtin_decl to
+ last_builtin_decl inclusive to reintroduce builtins.
+
+2003-08-06 David Mosberger <davidm@hpl.hp.com>
+
+ * doc/extend.texi (Function Attributes): Document the IA-64 version
+ of the "model" attribute.
+
+ * config/ia64/ia64.h (SYMBOL_FLAG_SMALL_ADDR): New macro.
+ (SYMBOL_REF_SMALL_ADDR_P): Ditto.
+ (PREDICATE_CODES): Mention "small_addr_symbolic_operand".
+
+ * config/ia64/ia64.c (ia64_handle_model_attribute): New function.
+ (ia64_encode_section_info): Likewise.
+ (ia64_attribute_table): Add "model" attribute.
+ (TARGET_ENCODE_SECTION_INFO): Define.
+ (small_addr_symbolic_operand): New function.
+ (got_symbolic_operand): Return 0 for a symbolref to an object
+ in the small address area.
+ (enum ia64_addr_area): New type.
+ (small_ident1): New variable.
+ (small_ident2): Likewise.
+ (init_idents): New function.
+ (ia64_get_addr_area): Likewise.
+ (ia64_encode_addr_area): Likewise.
+ (ia64_encode_section_info): Likewise.
+ (ia64_expand_load_address): For symbolic references to objects in
+ the small-address-area, load the address via gen_rtx_SET() (which,
+ eventually, will expand into "addl").
+
+2003-08-06 Per Bothner <pbothner@apple.com>
+
+ * line-map.h (fileline): New typedef.
+ (struct line_map, linemap_add, linemap_lookup): Use it.
+ * input.h (struct location_s): Comment notes that long-term we want
+ to replace it by fileline.
+
+2003-08-06 J"orn Rennecke <joern.rennecke@superh.com>
+
+ Fix SHcompact exception handling:
+ * sh.c (sh_get_pr_initial_val): If PR is or miight be clobbered
+ by the prologue, return a MEM with return_address_pointer_rtx
+ as address.
+ * sh.h (HARD_REGNO_MODE_OK): PR is OK for SImode.
+ (RETURN_ADDR_OFFSET): Don't define.
+ (SH_DBX_REGISTER_NUMBER): Use SHmedia numbers for SHmedia
+ registers that are visible in compact mode. Show that SHmedia
+ registers still exist in compact mode, even if there are not
+ readily accessible.
+ (ASM_PREFERRED_EH_DATA_FORMAT): Supply DW_EH_PE_indirect
+ if GLOBAL. Use DW_EH_PE_textrel (nominally) for CODE,
+ and DW_EH_PE_pcrel for pic data.
+ (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): If DW_EH_PE_textrel,
+ set SYMBOL_FLAG_FUNCTION in symbol, and actually use
+ DW_EH_PE_pcrel / DW_EH_PE_absptr encoding.
+ (ALLOCATE_INITIAL_VALUE): Put PR on stack if prologue clobbers it.
+ * sh.md (movsi_media-1): New splitter.
+
+2003-08-06 Graeme Peterson <gp@qnx.com>
+
+ * config/i386/nto.h: New.
+ * config/i386/t-nto: New.
+ * config.gcc (i[34567]86-*-nto-qnx*): New.
+
+2003-08-06 Phil Edwards <pme@gcc.gnu.org>
+
+ * doc/install.texi (*-*-solaris2*): Refine configure instructions.
+
+2003-08-06 Alan Modra <amodra@bigpond.net.au>
+
+ * calls.c (load_register_parameters): Arrange for call_fusage to
+ report the whole register as used when shifting to the msb.
+
+2003-08-05 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin): When not optimizing, call the library
+ function for all builtins that have library functions (except alloca).
+
+2003-08-05 Alexandre Oliva <aoliva@redhat.com>
+
+ * c.opt: Introduce -fworking-directory.
+ * doc/cpp.texi, doc/invoke.texi, doc/cppopts.texi: Document it.
+ * c-common.h (flag_working_directory): Declare.
+ * c-common.c (flag_working_directory): Define.
+ * c-opts.c (c_common_handle_options): Set it.
+ (sanitize_cpp_opts): Set...
+ * cpplib.h (struct cpp_options): ... working_directory option.
+ (struct cpp_callbacks): Add dir_change.
+ * cppinit.c (read_original_filename): Call...
+ (read_original_directory): New. Look for # 1 "directory//"
+ and process it.
+ (cpp_read_main_file): Call dir_change callback if working_directory
+ option is set.
+ * gcc.c (cpp_unique_options): Pass -g*.
+ * c-lex.c (cb_dir_change): New.
+ (init_c_lex): Set dir_change callback.
+ * toplev.c (src_pwd): New static variable.
+ (set_src_pwd, get_src_pwd): New functions.
+ * toplev.h (get_src_pwd, set_src_pwd): Declare.
+ * dbxout.c (dbxout_init): Call get_src_pwd() instead of getpwd().
+ * dwarf2out.c (gen_compile_unit_die): Likewise.
+ * dwarfout.c (output_compile_unit_die, dwarfout_init): Likewise.
+
+2003-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * pretty-print.h (pp_set_line_maximum_length): Make macro.
+ (pp_set_prefix): Likewise.
+ (pp_destroy_prefix): Likewise.
+ (pp_remaining_character_count_for_line): Likewise.
+ (pp_clear_output_area): Likewise.
+ (pp_formatted_text): Likewise.
+ (pp_last_position_in_text): Likewise.
+ (pp_emit_prefix): Likewise.
+ (pp_append_text): Likewise.
+ (pp_flush): Likewise.
+ (pp_format_text): Likewise.
+ (pp_format_verbatim): Likewise.
+ (pp_tree_identifier): Tidy.
+ * pretty-print.c (pp_base_format_text): Rename from pp_format_text.
+ (pp_base_format_verbatim): Rename from pp_format_verbatim.
+ (pp_base_flush): Rename from pp_flush.
+ (pp_base_set_line_maximum_length): Rename from
+ pp_set_line_maximum_length.
+ (pp_base_clear_output_area): Rename from pp_clear_output_area.
+ (pp_base_set_prefix): Rename from pp_set_prefix.
+ (pp_base_destroy_prefix): Rename from pp_destroy_prefix.
+ (pp_base_emit_prefix): Rename from pp_emit_prefix.
+ (pp_base_append_text): Rename from pp_append_text.
+ (pp_base_formatted_text): Rename from pp_formatted_text.
+ (pp_base_last_position_in_text): Rename from pp_last_position_in_text.
+ (pp_base_remaining_character_count_for_line): Rename from
+ pp_remaining_character_count_for_line.
+ * diagnostic.h (diagnostic_format_decoder): Tidy.
+ (diagnostic_flush_buffer): Likewise.
+ * c-pretty-print.h: (pp_c_string_literal): Declare.
+ (pp_c_real_literal): Likewise.
+ (pp_c_integer_literal): Likewise.
+ * c-pretty-print.c (pp_c_char): Use pp_string in lieu of
+ pp_identifier.
+ (pp_c_character_literal): Tidy.
+ (pp_c_string_literal): Make public.
+ (pp_c_bool_literal): Likewise.
+ (pp_c_integer_literal): Likewise.
+ (pp_c_real_literal): Likewise.
+
+ * Makefile.in (C_PRETTY_PRINT_H): New variable.
+ (c-pretty-print.o): Update dependence.
+
+2003-08-05 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md (fix_truncdfsi2_macro): Properly restore
+ ".set nomacro" state.
+ (fix_truncsfsi2_macro): Likewise.
+
+2003-08-05 Steven Bosscher <steven@gcc.gnu.org>
+
+ * tree.h (DID_INLINE_FUNC): Remove macro.
+ (DECL_DECLARED_INLINE_P): Move from c-tree.h and cp/cp-tree.h,
+ add tree check for FUNCTION_DECL.
+ (DECL_ESTIMATED_INSNS): Move from c-common.h and java/java-tree.h.
+ (struct tree_decl): Rename inlined_function_flag to
+ declared_inline_flag.
+ * c-common.h (c_lang_decl): Remove.
+ (DECL_ESTIMATED_INSNS): Remove.
+ * c-tree.h (struct lang_decl): Don't include c_lang_decl.
+ (DECL_DECLARED_INLINE_P): Remove.
+ * c-decl.c (grokdeclarator): Update comment. With -finline-functions,
+ do not reset DECL_DECLARED_INLINE_P. Don't use DID_INLINE_FUNC.
+ (finish_function): Make uninlinable a bool. Fixup call to
+ tree_inlinable_function_p() and fix some code style issues.
+ * cgraph.h (disgread_inline_limits): Fix spelling: `disregard'.
+ * cgraph.c (dump_cgraph): Likewise.
+ * cgraphunit.c (cgraph_decide_inlining): Likewise
+ (cgraph_finalize_compilation_unit): Likewise.
+ Also update call to tree_inlinable_function_p().
+ (cgraph_default_inline_p): Don't use DID_INLINE_FUNC. Instead
+ look at DECL_DECLARED_INLINE and reverse logic.
+ * print-tree.c (print_node): Likewise.
+ * toplev.c (rest_of_handle_inlining): Don't use DID_INLINE_FUNC.
+ * tree-inline.h (tree_inlinable_function_p): Make a bool. Update
+ prototype.
+ * tree-inline.c (inlinable_function_p): Split up in this function to
+ check for basic inlining inhibiting conditions, and new
+ limits_allow_inlining() function. Warn if inlining is impossible
+ because the inline candidate calls alloca or uses sjlj exceptions.
+ (limits_allow_inlining): this new function to check if the inlining
+ limits are satisfied. Throttle from currfn_max_inline_insns, not from
+ MAX_INLINE_INSNS_SINGLE. The latter only makes sense if
+ MAX_INLINE_INSNS_AUTO and MAX_INLINE_INSNS_SINGLE are equal.
+ Update prototypes.
+ (tree_inlinable_function_p): Make a bool. Update call to
+ inlinable_function_p
+ (expand_call_inline): Use limits_allow_inlining() when not in
+ unit-at-a-time mode to decide on inlining. Don't use DID_INLINE_FUNC,
+ instead see if the function was declared `inline'.
+
+2003-08-05 Josef Zlomek <zlomekj@suse.cz>
+
+ * gcse.c (try_replace_reg): Fix updating of note.
+
+2003-08-04 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/11771
+ * fold-const.c (negate_expr_p <MINUS_EXPR>): Change to match the
+ logic in negate_expr, i.e. we don't invert (A-B) for floating
+ point types unless flag_unsafe_math_optimizations.
+
+2003-08-04 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold <PLUS_EXPR>): Transform x+x into x*2.0.
+ Optimize x*c+x and x+x*c into x*(c+1) and x*c1+x*c2 into x*(c1+c2)
+ for floating point expressions with -ffast-math.
+ (fold <MULT_EXPR>): Don't transform x*2.0 into x+x.
+ * expmed.c (expand_mult): Wrap long line. Expand x*2.0 as x+x.
+
+2003-08-04 Roger Sayle <roger@eyesopen.com>
+
+ * c-common.c (flag_noniso_default_format_attributes): Delete.
+ (built_in_attribute): Don't define/undefine DEF_FN_ATTR.
+ (c_attrs_initialized): Delete.
+ (c_common_nodes_and_builtins): Don't test c_attrs_initialized,
+ always call c_init_attributes.
+ (c_init_attributes): Don't define/undefine DEF_FN_ATTR. Don't
+ set c_attrs_initialized when done.
+ (c_common_insert_default_attributes): Delete.
+ * c-common.h (flag_noniso_default_format_attributes): Delete.
+ (c_coomon_insert_default_attributes): Delete prototype.
+ * c-opts.c (set_std_c89, set_std_c99, set_std_cxx98): Dont set
+ flag_noniso_default_format_attributes.
+
+ * c-decl.c (c_insert_default_attributes): Delete.
+ * c-tree.h (c_insert_default_attributes): Delete prototype.
+
+ * attribs.c (decl_attributes): Don't call insert_default_attributes
+ langhook. Update function description comment.
+ * langhooks.h (lang_hooks): Remove insert_default_attributes field.
+ * langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Delete.
+ * c-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't define.
+ * system.h: Poison LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES macro.
+
+ * objc/objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't
+ define.
+
+2003-08-04 Richard Sandiford <rsandif@redhat.com>
+
+ * config/mips/mips.c (override_options): Disable -G on targets that
+ have no .section support.
+ (mips_select_section): Use default_select_section for such targets.
+
+2003-08-04 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (svr4_undeclared_getrnge): Introduce and enable.
+ * fixinc/inclhack.def (static_getrnge): Remove disabled hack.
+ * fixinc/fixincl.x: Rebuild.
+ * fixinc/tests/base/regexp.h: New test.
+
+2003-08-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-ppoutput.c (cb_line_change): Don't skip line changing while
+ parsing macro arguments in the top-level context.
+
+2003-08-04 Neil Booth <neil@daikokuya.co.uk>
+
+ * config.in: Remove HAVE_LSTAT.
+ * configure, configure.in: Don't test for lstat.
+
+2003-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * opts.c (decode_options): Do language-specific initialization for
+ the global diagnostic context.
+ * langhooks-def.h (lhd_initialize_diagnostics): Declare.
+ (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): New macro.
+ (LANG_HOOKS_INITIALIZER): Adjust.
+ * langhooks.h (struct lang_hooks): Add new field
+ initialize_diagnostics.
+ * langhooks.c (lhd_initialize_diagnostics): Define.
+
+2003-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * pretty-print.h: Adjust macro definitions.
+ * pretty-print.c (pp_newline): Rename to pp_base_newline.
+ (pp_character): Rename to pp_base_character.
+ (pp_string): Rename to pp_base_string.
+ * c-pretty-print.c (pp_buffer): Move to pretty-print.h
+ (pp_newline): Likewise. Adjust.
+ (pp_c_char): Adjust.
+
+2003-08-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def (BUILT_IN_ABS, BUILT_IN_IMAXABS, BUILT_IN_LABS,
+ BUILT_IN_LLABS): Move to miscellaneous section.
+
+2003-08-03 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/11534
+ * cppexp.c (parse_defined): Warn only if -pedantic.
+
+2003-08-03 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppfiles.c (stack_file): Use file path.
+
+2003-08-02 Roger Sayle <roger@eyesopen.com>
+
+ * builtin-types.def (BT_SSIZE): New primitive type.
+ (BT_FN_INT_PTR_CONST_STRING_VALIST_ARG,
+ BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
+ BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
+ BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR): New function types.
+ * builtins.def (BUILT_IN_DCGETTEXT, BUILT_IN_DGETTEXT,
+ BUILT_IN_FSCANF, BUILT_IN_GETTEXT, BUILT_IN_STRFMON,
+ BUILT_IN_STRFTIME, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): New builtins.
+ * builtin-attrs.def: Remove DEF_FN_ATTR construct and the last
+ few functions that define default attributes using it.
+ * c-common.c (c_common_insert_default_attributes): Do nothing.
+
+ * doc/extend.texi: Document these "new" builtins.
+
+2003-08-02 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
+ (LIB_SPEC): Set -lpthread always when -pthread set. Set -lieee
+ when -mieee-fp set and -shared not set.
+ (SH_FALLBACK_FRAME_FLOAT_STATE): Don't define for SH5.
+
+2003-08-02 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppfiles.c (struct _cpp_file): Rename once_only_next to
+ next_file. Remove import and pragma_once, add once_only.
+ (find_file): Add new file structures to the all_files list.
+ (should_stack_file): Mark #import-ed files once-only, and
+ don't stack them if the file has already been stacked.
+ (_cp_mark_file_once_only): Simplify.
+ * cpphash.h (struct cpp_reader): Rename once_only_files
+ to all_files. Rename saw_pragma_once to seen_once_only.
+ (_cpp_mark_file_once_only): Update prototype.
+ * cpplib.c (do_pragma_once): Update.
+
+2003-08-02 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppfiles.c (ENOTDIR): Remove.
+ (open_file_in_dir): Rename find_file_in_dir. Handle errors
+ other than ENOENT here.
+ (once_only_file_p): Rename should_stack_file.
+ (find_file, open_file_failed, read_file_guts): Report errors
+ with full path name.
+ (read_file): Move pch handling to should_stack_file.
+ (should_stack_file): Handle PCH and once-only issues, and
+ reading the file.
+ (stack_file): Don't do file reads.
+
+2003-08-02 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * libgcov.c (gcov_exit): Cleanup and fix.
+ * profile.c (compute_value_histograms): Don't try to read profiles
+ that are not present.
+
+2003-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def: Categorize.
+
+ * builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
+ Mind fp rounding.
+ (BUILT_IN_FFSL): Use DEF_EXT_LIB_BUILTIN.
+
+2003-08-02 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * config.gcc: Enable posix threads by default on darwin.
+
+2003-08-01 Jakub Jelinek <jakub@redhat.com>
+
+ * cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION notes
+ even if nehedges1 is 0.
+
+2003-08-01 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/fixfixes.c, fixinc/fixlib.c, fixinc/fixlib.h,
+ fixinc/fixtests.c, fixinc/procopen.c, fixinc/server.c,
+ fixinc/server.h, fixinc/fixincl.c: ANSIfy function prototypes
+ and defintions.
+
+ * fixinc/inclhack.def (broken_cabs): Make matching more generous.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/math.h: Regenerate to match test_text change.
+
+2003-08-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * ggc-common.c (gt_pch_restore): Case MAP_FAILED to void *.
+
+2003-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * except.c (sjlj_emit_dispatch_table): Use ptr_mode, not Pmode,
+ for accesses to exc_ptr.
+
+2003-08-01 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/sourcebuild.texi (Front End Directory): Don't make references
+ to libsubdir, it's not part of the interface to frontends.
+ * doc/install.texi (Configuration): Help users read faster by saying
+ that GCC's configure options are the standard autoconf ones.
+ Mention --libdir. Update the default rules for finding the
+ assembler. Don't use libsubdir since we haven't said what it means.
+ (Specific): In the Solaris 7 notes, update the place to put the
+ assembler.
+ * doc/invoke.texi: Update lib/gcc-lib to lib/gcc.
+ * doc/cpp.texi (Search Path): Actually, the search path
+ depends on libdir, which can relocate with cpp.
+ * doc/tm.texi (Driver): Don't document STANDARD_EXEC_PREFIX, it's
+ now a private interface between the Makefile and the driver.
+
+2003-08-01 Richard Henderson <rth@redhat.com>
+
+ * system.h: Poison ASM_SIMPLIFY_DWARF_ADDR.
+
+ * varasm.c (lookup_constant_def): New function.
+ * rtl.h (lookup_constant_def): Declare it.
+ * dwarf2out.c (loc_descriptor_from_tree): Use it.
+ Use targetm.delegitimize_address, not ASM_SIMPLIFY_DWARF_ADDR.
+
+2003-08-01 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (gettags, pushdecl_function_level): Delete.
+ (last_function_parm_vars): Rename last_function_parm_others.
+ (current_function_parm_vars): Rename current_function_parm_others.
+ (struct c_scope): Rewrite comment explaining this data structure.
+ Add names_last, blocks_last, parms_last fields. Rename
+ incomplete_list to incomplete.
+ (SCOPE_LIST_APPEND, SCOPE_LIST_CONCAT): New macros.
+ (poplevel): Ignore second argument. No need to nreverse
+ anything. Restructure such that each list is processed
+ exactly once. Use 'const location_t *locus' syntactic sugar
+ variable where useful. Issue unused variable warnings
+ ourselves, do not rely on function.c.
+ (insert_block, pushdecl, bind_label): Use SCOPE_LIST_APPEND.
+ (pushdecl_top_level): Likewise. Don't call duplicate_decls.
+ (implicitly_declare): decl cannot be error_mark_node.
+ (undeclared_variable): Manipulate scope structure directly.
+ (c_make_fname_decl): Likewise.
+ (getdecls, c_init_decl_processing): Fix comment.
+ (mark_forward_parm_decls): Use SCOPE_LIST_CONCAT. No need
+ for 'last' variable.
+ (grokparms): No need to nreverse parms list.
+ (store_parm_decls_newstyle): Set up the parms_last and
+ names_last fields of the new scope too.
+ (store_parm_decls_oldstyle): Can assume DECL_WEAK is not set
+ on parms to begin with; check this under ENABLE_CHECKING. Set
+ up parms_last.
+ (check_for_loop_decls): Refer directly to current_scope->tags.
+ Use consistent quote style in diagnostics.
+ (c_write_global_declarations): The names list is not backward.
+
+ * c-common.h: Don't prototype gettags.
+ * c-parse.in: Call poplevel with second argument 0 always.
+
+2003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def: Resort builtins.
+
+2003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def (DEF_GCC_BUILTIN, DEF_LIB_BUILTIN,
+ DEF_EXT_LIB_BUILTIN, DEF_C99_BUILTIN, DEF_C99_C90RES_BUILTIN):
+ Prepend "__builtin_" onto NAME with string concatenation. Remove
+ explicit "__builtin_" from each macro call.
+
+ Reformat entire file.
+
+2003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def (ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
+ ATTR_MATHFN_FPROUNDING_ERRNO): New macros. Use throughout.
+
+2003-08-01 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.c (s390_select_ccmode): Do not attempt to use CCL,
+ CCL1, or CCL2 modes with floating point operations.
+
+ * config/s390/s390.md ("*addsf3_cc", "*addsf3_cconly", "*adddf3_cc",
+ "*adddf3_cconly", "*subsf3_cc", "*subsf3_cconly", "*subdf3_cc",
+ "*subdf3_cconly"): New insns.
+ ("*negabssi2", "*negabsdi2", "*negabsdf2", "*negabssf2"): Likewise.
+
+2003-08-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in: Refine dependencies.
+ * c-opts.c (c_common_handle_option): Do nothing for -Wimport.
+ * c.opt: Update help for -Wimport.
+ * cppfiles.c: Include hashtab.h. Update comments.
+ (stack_file): Read the file before updating dependencies.
+ (once_only_file_p): Be smarter about marking once-only files.
+ (_cpp_mark_file_once_only): Correct the check for existence on
+ the list.
+ (open_file_failed): Use name not path, which is NULL.
+ * cpphash.h: Don't include hashtab.h.
+ (struct _cpp_file): Remove.
+ (struct cpp_reader): Update.
+ * cppinit.c (cpp_create_reader): Don't initialize warn_import.
+ * cpplib.h (struct cpp_options): Remove warn_import.
+ (cpp_simplify_path): Remove.
+
+2003-08-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/11295
+ * doc/extend.texi (Statement Expressions): Document C++ semantics.
+
+2003-07-31 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
+
+ * config.gcc (sh-*-linux*): Do not override sh/t-linux with sh/t-le.
+
+2003-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-types.def: Use `LONGDOUBLE' instead of `LONG_DOUBLE'
+ throughout.
+ * builtins.def: Likewise.
+
+2003-07-31 Jason Merrill <jason@redhat.com>
+
+ * Makefile.in (bubblestrap): Don't require a previous full
+ bootstrap.
+
+ * expr.c (mostly_zeros_p): No longer static.
+ * tree.h: Declare it.
+ * stmt.c (resolve_asm_operand_names): Don't copy the pattern
+ unless we need to do substitutions.
+
+2003-07-31 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold <MULT_EXPR>): Optimize both x*pow(x,c) and
+ pow(x,c)*x as pow(x,c+1) for constant values c. Optimize x*x
+ as pow(x,2.0) when the latter will be expanded back into x*x.
+ (fold <RDIV_EXPR>): Optimize pow(x,c)/x as pow(x,c-1).
+ * builtins.c (expand_builtin_pow): Ignore flag_errno_math as
+ pow can never set errno when used with an integer exponent.
+ Always use expand_powi when exponent is -1, 0, 1 or 2.
+ (fold_builtin): Don't rewrite pow(x,2.0) as x*x nor pow(x,-2.0)
+ as 1.0/(x*x). This avoids unbounded recursion as we now prefer
+ the pow forms of these expressions.
+
+2003-07-31 Geoffrey Keating <geoffk@apple.com>
+
+ * Makefile.in (libexecdir): New.
+ (libsubdir): Use gcc instead of gcc-lib.
+ (libexecsubdir): New.
+ (ORDINARY_FLAGS_TO_PASS): Add libexecsubdir.
+ (DRIVER_DEFINES): Add STANDARD_LIBEXEC_PREFIX, use gcc instead of
+ gcc-lib.
+ (installdirs): Make libexecsubdir.
+ (install-common): Put executables in libexecsubdir.
+ (itoolsdir): Use libexecsubdir.
+ (itoolsdatadir): New.
+ (install-mkheaders): Separate data files and executables.
+ (install-collect2): Put executables in libexecsubdir.
+ (uninstall): Remove libexecsubdir.
+ * mkheaders.in: Update for new arrangement of files.
+ (libexecdir): New.
+ (libexecsubdir): New.
+ (itoolsdir): Use libexecsubdir.
+ (itoolsdatadir): New.
+ * gcc.c (gcc_libexec_prefix): New.
+ (STANDARD_LIBEXEC_PREFIX): Use gcc instead of gcc-lib.
+ (standard_exec_prefix_1): Use libexec.
+ (standard_exec_prefix_2): New.
+ (standard_libexec_prefix): New.
+ (process_command): Update for new arrangement of files. Compute
+ gcc_libexec_prefix. Update for change from gcc-lib to gcc.
+
+2003-07-31 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * inclhack.def (stdio_va_list): Avoid bogus replacement which
+ triggers on Interix.
+ * fixincl.x: Regenerate.
+
+2003-07-31 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (legitimate_pic_address_disp_p): Disallow TLS
+ SYMBOL_REFs not inside UNSPEC even in PLUS rtx.
+
+2003-07-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * dwarf2out.c (loc_descriptor_from_tree, case CONSTRUCTOR): New case.
+
+2003-07-31 Per Bothner <pbothner@apple.com>
+
+ * opts.c (in_fnames, num_in_fnames): Moved here from c-opts.
+ (add_input_filename): New function.
+ (handle_options): Call add_input_filename directly instead of
+ with a lang hook.
+ * opts.h (in_fnames, num_in_fnames): Moved here.
+ (add_input_filename): Declare.
+ * c-decl.c: Need to #include opts.h.
+ * Makefile.in (c-decl.o): Also depends on opts.h.
+ * c-opts.c (in_fnames, num_in_fnames): Moved to opts.c.
+ (c_common_handle_filename): Replaced by add_input_filename.
+ * c-common.h (in_fnames, num_in_fnames, c_common_handle_filename):
+ Remove.
+ * langhooks.h (struct lang_hooks): Remove handle_filename hook.
+ * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME): Remove macro.
+ (LANG_HOOKS_INITIALIZER): Remove use of LANG_HOOKS_HANDLE_FILENAME.
+ * c-lang.c (LANG_HOOKS_HANDLE_FILENAME): Remove macro.
+
+2003-07-31 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * combine.c (try_combine): Set JUMP_LABEL for newly created
+ unconditional jump.
+
+2003-07-31 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * fold-const.c (fold): Fold some comparisons of bit operations.
+
+2003-07-31 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (create_edge): Fix typo.
+ * i386.c (pic_symbolic_operand): Reorder tests.
+
+2003-07-31 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/gcov.texi (Invoking Gcov): Describe output name mangling
+ more fully.
+ (Gcov Data Files): Update.
+
+2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (alpha*-dec-osf[45]*): Enable POSIX thread support by
+ default.
+
+ * gthr-posix.c: New file.
+ * gthr-posix.h: Define _REENTRANT if missing.
+ Make _LIBOBJC #pragma weak visible with _LIBOBJC_WEAK.
+
+ * config/alpha/t-osf4 (SHLIB_LINK): Hide dummy functions provided
+ by gthr-posix.o.
+ * config/alpha/t-osf-pthread: New file.
+
+ * fixinc/inclhack.def (alpha_pthread): New fix.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: New testcase.
+
+ * doc/install.texi (alpha*-dec-osf*): Remove --enable-threads
+ warning.
+ Fixes PR bootstrap/9330.
+
+2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in (gcc_cv_ld_hidden): Also disable on mips-sgi-irix5*
+ without GNU ld.
+ Update comment.
+ * configure: Regenerate.
+
+2003-07-31 Vladimir Makarov <vmakarov@redhat.com>
+
+ * sched-deps.c (sched_analyze_2): Prevent interblock move of CC0
+ setter.
+
+2003-07-30 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def: Alphabetize.
+
+2003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * doc/c-tree.texi: Normalize spellings of "lowercase" and
+ "uppercase".
+ * doc/cpp.texi: Likewise.
+ * doc/md.texi: Likewise.
+ * doc/rtl.texi: Likewise.
+ * doc/tm.texi: Likewise.
+
+2003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * objc/Make-lang.in (objc.stage1, objc.stage2, objc.stage3)
+ (objc.stage4, objc.stageprofile, objc.stagefeedback): Remove moves
+ of cc1obj.
+
+2003-07-30 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Undef these
+ macros before defining them.
+
+2003-07-31 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md (UNSPEC_ROUND, UNSPEC_SETHIGH,
+ UNSPECV_BLOCKAGE): New constants.
+ ("*sethighqisi", "*sethighhisi", "*sethiqidi_64", "*sethiqidi_31",
+ "*extractqi", "*extracthi", "*extendqidi2" splitter, "*extendqisi2"
+ splitter, "fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee",
+ "fix_truncsfdi2", "fix_truncsfsi2", "blockage"): Use them.
+
+ (all insns and expanders): Write output control string as brace block
+ where appropriate. Remove \-escapes for doublequote characters.
+
+2003-07-31 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (insert_store): Fix typo in previous patch.
+
+2003-07-30 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppfiles.c (stack_file, open_file_failed): Use path for deps.
+
+2003-07-30 Andi Kleen <ak@muc.de>
+
+ * loop.c (check_dbra_loop): Allow LTU in the loop condition.
+
+2003-07-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * combine.c (distribute_notes): Cancel REG_VALUE_PROFILE notes.
+ * gcov-io.h (GCOV_FIRST_VALUE_COUNTER, GCOV_LAST_VALUE_COUNTER,
+ GCOV_N_VALUE_COUNTERS): New.
+ * profile.c (compute_value_histograms): New static function.
+ (branch_prob): Read back the value histograms.
+ * rtl.c (reg_note_name): Add name for REG_VALUE_PROFILE note.
+ * rtl.h (enum reg_note): Add REG_VALUE_PROFILE note.
+ * value-prof.c: Add comment on reading the profile.
+ * value-prof.h (COUNTER_FOR_HIST_TYPE, HIST_TYPE_FOR_COUNTER): New.
+ * doc/invoke.texi (-fprofile-values): Document behavior with
+ -fbranch-probabilities.
+
+2003-07-30 David Edelsohn <edelsohn@gnu.org>
+
+ * longlong.h (PowerPC umul_ppmm): Do not test __vxworks__.
+
+2003-07-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
+ symbolically.
+
+2003-07-30 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (insert_store): Ignore fake edges.
+
+ * c-common.c (flag_vtable_gc): Kill.
+ * c-common.g (flag_vtable_gc): Kill.
+ * c-opts (c_common_handle_option): Kill.
+ * c.opt (fvtable-gc): Kill.
+ * final.c (final_scan_insn): Do not call assemble_vtable_entry.
+ * output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill.
+ * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill.
+
+ * invoke.texi (-ftable-gc): Kill documentation.
+
+ * tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE
+ just because function body is missing.
+
+ * i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs.
+
+2003-07-30 Ranjit Mathew <rmathew@hotmail.com>
+
+ * unwind-sjlj.c: Fix typo in file description.
+
+2003-07-30 Alan Modra <amodra@bigpond.net.au>
+
+ * calls.c (load_register_parameters): When shifting reg sized values
+ to the msb, move the value to a reg first.
+
+2003-07-29 Geoffrey Keating <geoffk@apple.com>
+
+ * cppfiles.c (stack_file): Leave filename as "" rather than "<stdin>".
+ * line-map.h (linemap_add): Update comments.
+ * line-map.c (linemap_add): Update comments, interpret zero-length
+ filename as "<stdin>".
+
+2003-07-29 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.
+
+2003-07-29 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (last_function_parm_vars, current_function_parm_vars):
+ New static variables.
+ (struct c_scope): Add parms and warned_forward_parm_decls
+ fields; remove parm_order.
+ (storedecls, storetags): Delete.
+ (poplevel): Also clear bindings on the parms chain.
+ (pushdecl): Handle forward declarations of parameters, and
+ chain PARM_DECLs on the parms list, not the names list.
+ (lookup_name_current_level): Check for PARM_DECLs on the parms
+ list too.
+ (push_parm_decl): Don't update parm_order.
+ (clear_parm_order): Rename mark_forward_parm_decls. Issue the
+ warning, only once per parameter list, and set TREE_ASM_WRITTEN
+ on the decls here. Then move the forward decls to the names list.
+ (grokparms): Set last_function_parm_vars.
+ (get_parm_info): Don't use gettags or getdecls. No need to
+ extract non-parms from the parms list, or reorganize the parms
+ list. Feed nonparms back in the TREE_TYPE of the list node
+ returned. Issue only one error per parameter list for "void"
+ appearing more than once in said parameter list. Collapse
+ parmlist_tags_warning into this function to avoid double scan
+ of tags list.
+ (start_function): Set current_function_parm_vars.
+ (store_parm_decls_newstyle): Bypass pushdecl, manipulate scope
+ directly. Get non-parms from current_function_parm_vars; no
+ need to extract them from the parms chain. Properly bind tags
+ in the new scope.
+ (store_parm_decls_oldstyle): No need to extract non-parameters
+ from the parms chain, nor to store them back afterward. Move
+ declaration to top of function, restructure code reordering
+ DECL_ARGUMENTS.
+ (store_parm_decls): No need to save and restore warn_shadow.
+ * c-parse.in: Don't call parmlist_tags_warning nor
+ clear_parm_order. Call mark_forward_parm_decls when forward
+ parm decls are encountered.
+ * c-tree.h: Prototype mark_forward_parm_decls; not
+ clear_parm_order or parmlist_tags_warning.
+
+2003-07-29 Geoffrey Keating <geoffk@apple.com>
+
+ * c-common.c (allow_pch): Remove.
+ * c-common.h (allow_pch): Remove.
+ (c_common_no_more_pch): Declare.
+ * c-lex.c (c_lex): Call c_common_no_more_pch when appropriate.
+ * c-pch.c: Include hosthooks.h.
+ (c_common_valid_pch): Don't check allow_pch.
+ (c_common_read_pch): Clear valid_pch to prevent reading PCH files.
+ (c_common_no_more_pch): New.
+ * ggc-common.c: Include hosthooks.h.
+ (gt_pch_save): Call gt_pch_get_address.
+ (gt_pch_restore): Call gt_pch_use_address.
+ * hooks.c (hook_voidp_size_t_null): New.
+ (hook_bool_voidp_size_t_false): New.
+ * hooks.h (hook_voidp_size_t_null): New.
+ (hook_bool_voidp_size_t_false): New.
+ * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): New.
+ (HOST_HOOKS_GT_PCH_USE_ADDRESS): New.
+ (HOST_HOOKS_INITIALIZER): Add HOST_HOOKS_GT_PCH_GET_ADDRESS,
+ HOST_HOOKS_GT_PCH_USE_ADDRESS.
+ * hosthooks.h (struct host_hooks): Add gt_pch_get_address,
+ gt_pch_use_address.
+ * doc/hostconfig.texi (Host Common): Document
+ HOST_HOOKS_GT_PCH_GET_ADDRESS, HOST_HOOKS_GT_PCH_USE_ADDRESS.
+ * Makefile.in (c-pch.o): Depend on hosthooks.h.
+ (ggc-common.o): Likewise.
+
+ * config/rs6000/host-darwin.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Define.
+ (HOST_HOOKS_GT_PCH_USE_ADDRESS): Define.
+ (pch_address_space): New.
+ (darwin_rs6000_gt_pch_get_address): New.
+ (darwin_rs6000_gt_pch_use_address): New.
+
+2003-07-29 Neil Booth <neil@daikokuya.co.uk>
+
+ PR preprocessor/11569
+ PR preprocessor/11649
+ * Makefile.in (LIBCPP_DEPS): Add HASHTAB_H.
+ * cppfiles.c: Completely rewritten.
+ * c-incpath.c (free_path, remove_duplicates, heads, tails, add_path):
+ struct cpp_path is now struct cpp_dir.
+ (remove_duplicates): Don't simplify path names.
+ * c-opts.c (c_common_parse_file): cpp_read_next_file renamed
+ cpp_stack_file.
+ * cpphash.h: Include hashtab.h.
+ (_cpp_file): Declare.
+ (struct cpp_buffer): struct include_file is now struct _cpp_file,
+ and struct cpp_path is now struct cpp_dir. Rename members.
+ (struct cpp_reader): Similarly. New members once_only_files,
+ file_hash, file_hash_entries, quote_ignores_source_dir,
+ no_search_path, saw_pragma_once. Remove all_include_files and
+ max_include_len. Make some members bool.
+ (_cpp_mark_only_only): Renamed from _cpp_never_reread.
+ (_cpp_stack_file): Renamed from _cpp_read_file.
+ (_cpp_stack_include): Renamed from _cpp_execute_include.
+ (_cpp_init_files): Renamed from _cpp_init_includes.
+ (_cpp_cleanup_files): Renamed from _cpp_cleanup_includes.
+ * cppinit.c (cpp_create_reader): Initialize no_search_path. Update.
+ (cpp_read_next_file): Rename and move to cppfiles.c.
+ (cpp_read_main_file): Update.
+ * cpplib.c (run_directive): Update for renamed members.
+ (do_include_common, _cpp_pop_buffer): Update.
+ (do_import): Undeprecate #import.
+ (do_pragma_once): Undeprecate. Use _cpp_mark_file_once_only.
+ * cpplib.h: Remove file_name_map_list.
+ (cpp_options): Remove map_list.
+ (cpp_dir): Rename from cpp_path. New datatype for name_map.
+ (cpp_set_include_chains, cpp_stack_file, cpp_included): Update.
+
+2003-07-29 Phil Edwards <pme@gcc.gnu.org>
+
+ * Makefile.in: Make stamp-objdir safe for parallel builds.
+
+2003-07-29 Phil Edwards <pme@gcc.gnu.org>
+
+ * Makefile.in (stmp-docobjdir): New target; ensure $docobjdir exists.
+ (info): Depend on stmp-docobjdir.
+
+2003-07-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure: Regenerate.
+
+2003-07-29 Jan Hubicka <jh@suse.cz>
+
+ PR C++/11131
+ * tree-inline.c (expand_call_inline): Always call inlinable_function_p
+ in !unit-at-a-time mode.
+
+2003-07-28 Geoffrey Keating <geoffk@apple.com>
+
+ * c-decl.c (c_expand_body_1): Use C_DECL_FILE_SCOPE to detect
+ main function.
+
+2003-07-28 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11667
+ * c-common.c (shorten_compare): Take into account differences
+ between C and C++ representation for enumeration types.
+ * tree.h (set_min_and_max_values_for_integral_type): Declare.
+ * stor-layout.c (set_min_and_max_values_for_integral_type): New
+ function, broken out from ...
+ (fixup_signed_type): ... here and ...
+ (fixup_unsigned_type): ... here.
+
+2003-07-28 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c: Update commentary, adjust blank lines throughout.
+ (struct c_scope): Fix indentation. Reorder members so
+ outer-context pointers come first, booleans last.
+ (duplicate_decls, define_label): Use a 'locus' variable for
+ diagnostic locations in a few more places.
+ (warn_if_shadowing): Un-split a conditional that fits on one line.
+ (c_init_decl_processing): No need to clear current_scope and
+ current_function_scope.
+ (start_decl): Merge if/else if statements with same action.
+ (push_parm_decl): Rename old_immediate_size_expand to use
+ save_foo convention; save/restore around entire function.
+ (grokdeclarator): Remove unnecessary braces.
+
+2003-07-28 Hans-Peter Nilsson <hp@bitrange.com>
+ Michael Culbertson <Michael.J.Culbertson@wheaton.edu>
+
+ * c-parse.in (lineno_stmt_decl_or_labels_ending_decl): Also warn
+ when warn_declaration_after_statement. Call pedwarn_c90, not
+ pedwarn. Correct message: it's "ISO C90", not "ISO C89".
+ * c-common.c (warn_declaration_after_statement): Define.
+ * c-common.h (warn_declaration_after_statement): Declare.
+ * c.opt (Wdeclaration-after-statement): New.
+ * c-errors.c (pedwarn_c90): New function.
+ * c-opts.c (c_common_handle_option) <case
+ OPT_Wdeclaration_after_statement>: New.
+ * c-tree.h (pedwarn_c90): Declare.
+ * doc/invoke.texi (Option Summary): Document
+ -Wdeclaration-after-statement.
+ (Warning Options): Ditto.
+
+2003-07-28 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (memory attribute) Avoid accessing uninitialized memory
+ for ishift1 type instructions.
+
+2003-07-28 Jakub Jelinek <jakub@redhat.com>
+
+ * configure.in (--enable-checking): Add fold category.
+ (ENABLE_FOLD_CHECKING): Define if requested.
+ * configure: Rebuilt.
+ * config.in: Rebuilt.
+ * doc/install.texi: Document it.
+ * fold-const.c: Include md5.h.
+ [ENABLE_FOLD_CHECKING] (fold): Define to fold_1.
+ [ENABLE_FOLD_CHECKING] (fold, fold_checksum_tree, fold_check_failed,
+ print_fold_checksum): New functions.
+
+ * fold-const.c (fold): Never modify argument passed to fold, instead
+ change a copy and return it.
+ * convert.c (convert_to_integer): Likewise.
+
+2003-07-27 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/fixinc.svr4: Remove dead code. Remove now-unnecessary
+ cleanup of junk after #else and #endif directives. Collapse repeated
+ clauses into for statment.
+
+ * fixinc/fixincl.sh: GNU C -> GCC. Add usage comment.
+
+2003-07-27 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (struct c_scope): Remove keep_if_subblocks field.
+ (keep_next_if_subblocks): Rename next_is_function_body.
+ (pushlevel): Adjust commentary. Always set ->keep on the
+ outermost level of a function. Don't set ->keep_if_subblocks.
+ (poplevel): Adjust commentary. Don't look at ->keep_if_subblocks.
+ (store_parm_decls): Adjust to match.
+ (finish_function): Adjust to match.
+ Call poplevel with all three arguments zero.
+
+ * c-decl.c (store_parm_decls_newstyle, store_parm_decls_oldstyle):
+ New functions split out of store_parm_decls.
+ Avoid unnecessary work. Use local variables consistently.
+ (store_parm_decls): Likewise.
+
+ (finish_function): No need to set functionbody flag on call to
+ poplevel.
+ (struct language_function): Remove scope field.
+ (c_push_function_context, c_pop_function_context): No need to
+ save and restore current_scope.
+
+2003-07-27 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/extend.texi (Deprecated Features): Implicit typename is
+ gone. Default args on types is going.
+
+2003-07-26 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * Makefile.in (ifcvt.o): Depend on target.h
+ * ifcvt.c (target.h): Include.
+ (if_convert): Don't call mark_loop_exit_edges if we can't
+ modify jumps.
+
+2003-07-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi (Testing): Adjust required versions of DejaGnu.
+
+2003-07-26 Richard Henderson <rth@redhat.com>
+
+ PR inline-asm/11676
+ * cse.c (count_reg_usage): Handle asm_operands properly.
+
+2003-07-26 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def (DEF_FALLBACK_BUILTIN): Delete.
+ (DEF_EXT_FALLBACK_BUILTIN): Delete.
+ (BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Declare using
+ the regular DEF_EXT_LIB_BUILTIN macro.
+ (BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE): Declare using
+ the regular DEF_LIB_BUILTIN macro.
+ (BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS_UNLOCKED,
+ BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED,
+ BUILT_IN_FWRITE_UNLOCKED): Declare using the regular
+ DEF_EXT_LIB_BUILTIN macro.
+
+ * c-decl.c (duplicate_decls): Remove code to handle builtin
+ functions prototyped without an argument list.
+
+2003-07-26 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/winnt.c: Revert 2003-07-08 change.
+ (i386_pe_section_type_flags): Remove error_with_decl here too.
+
+2003-07-26 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * config/arm/pe.c (arm_mark_dllimport): Don't use xxx_with_decl.
+ * config/mcore/mcore.c (mcore_mark_dllimport): Likewise.
+ * config/v850/v850.c (v850_handle_data_area_attribute): Likewise.
+ (v850_handle_data_area_attribute): Likewise.
+
+2003-07-26 Geoffrey Keating <geoffk@apple.com>
+
+ * varasm.c (output_constant_def_contents): Use
+ ASM_DECLARE_CONSTANT_NAME if defined.
+ * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
+ * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
+ objects get at least one byte to prevent assembler problems.
+ (ASM_DECLARE_CONSTANT_NAME): New.
+
+ * Makefile.in (libbackend.o): Remove options_.h.
+ (mostlyclean): Likewise.
+
+ * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
+ insert a label at the end of an function under Mach-O.
+
+ * c-decl.c (c_static_assembler_name): Remove TREE_STATIC test.
+
+2003-07-25 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
+ equality.
+ (spe_init_builtins): Declare __ev64_opaque__ as a builtin type.
+
+ * config/rs6000/spe.h: Remove __ev64_opaque__ definition.
+
+2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * doc/passes.texi (Passes): Mention pretty-printing and
+ diagnostic files.
+
+2003-07-25 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/extend.texi (Function Attributes): GNU C++ does now allow
+ unused parameter decls.
+ (Attribute Syntax): GNU C++ does not allow label attributes to be
+ after the ':'.
+
+2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * objc/objc-act.c (objc_check_decl): Don't use xxx_with_decl.
+ (objc_declare_class): Likewise.
+ (error_with_ivar): Likewise.
+ (start_class): Likewise.
+ (warn_with_method): Likewise.
+
+2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ Remove pedwarn_with_decl, warning_with_decl and error_with_decl
+ from GCC.
+ * calls.c (try_to_integrate): Don't use xxx_with_decl.
+ (expand_call): Likewise.
+ * dwarfout.c (output_reg_number): Likewise.
+ * expr.c (expand_expr): Likewise.
+ * function.c (assign_temp): Likewise.
+ (uninitialized_vars_warning): Likewise.
+ (setjmp_args_warning): Likewise.
+ (expand_function_end): Likewise.
+ * stmt.c (fixup_gotos): Likewise.
+ (warn_about_unused_variables): Likewise.
+ (expand_end_bindings): Likewise.
+ * stor-layout.c (layout_decl): Likewise.
+ (place_field): Likewise.
+ * toplev.c (check_global_declarations): Likewise.
+ (rest_of_handle_inlining): Likewise.
+ (default_tree_printer): New function.
+ (general_init): Initialize diagnostic machinery before routing
+ signals to the ICE machinery. Set default tree printer.
+ * toplev.h (pedwarn_with_decl): Remove declaration.
+ (warning_with_decl): Likewise.
+ (error_with_decl): Likewise.
+ (pedwarn): Remove attribute for the time being.
+ * tree-inline.c (expand_call_inline): Don't use xxx_with_decl.
+ * varasm.c (named_section): Likewise.
+ (make_decl_rtl): Likewise.
+ (assemble_variable): Likewise.
+ (merge_weak): Likewise.
+ (declare_weak): Likewise.
+
+ * diagnostic.h: Move non-diagnostic stuff into pretty-print.h.
+ * diagnostic.c: Move non-diagnostic stuff into pretty-print.c.
+ (format_with_decl): Remove.
+ (diagnostic_for_decl): Likewise.
+ (pedwarn_with_decl): Likewise.
+ (warning_with_decl): Likewise.
+ (error_with_decl): Likewise.
+ (diagnostic_initialize): Adjust.
+ (diagnostic_count_diagnostic): Likewise.
+ (announce_function): Likewise.
+ (lhd_print_error_function): Likewise.
+ (diagnostic_report_current_module): Likewise.
+ (default_diagnostic_starter): Likewise.
+ (diagnostic_report_diagnostic): Likewise.
+ (default_diagnostic_finalizer): Likewise.
+ (verbatim): Likewise.
+ (error): Likewise.
+ (warning): Likewise.
+ * opts.c (common_handle_option): Likewise.
+ * pretty-print.c: New file.
+ * c-pretty-print.h (pp_base): Override.
+ * c-pretty-print.c: Adjust use of macros throughout.
+ (pp_buffer): New macro.
+ (pp_newline): Likewise.
+ * c-objc-common.c (c_tree_printer): Adjust prototype. Tidy.
+ * Makefile.in (DIAGNOSTIC_H): New variable.
+ (c-errors.o): Use it.
+ (c-objc-common.o): Likewise.
+ (c-common.o): Likewise.
+ (c-opts.o): Likewise.
+ (c-format.o): Likewise.
+ (diagnostic.o): Likewise.
+ (opts.o): Likewise.
+ (toplev.o): Likewise.
+ (rtl-error.o): Likewise.
+ (dwarf2out.o): Likewise.
+ (jump.o): Likewise.
+ (pretty-print.o): New rule.
+
+2003-07-24 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from
+ front-end builtins to normal builtins, using DEF_LIB_BUILTIN.
+ (BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed
+ from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN.
+ (DEF_FRONT_END_LIB_BUILTIN): Delete.
+ (DEF_EXT_FRONT_END_LIB_BUILTIN): Delete.
+ (BUILT_IN_FWRITE_UNLOCKED): Wrap long line.
+
+ * builtins.c (build_string_literal): New function to construct
+ a char* pointer to a string literal.
+ (expand_builtin_fputs): Change 2nd argument from "int ignore" to
+ "rtx target" to be consistent with other expand_builtin_* functions.
+ Change 3rd argument from "int unlocked" to "bool unlocked".
+ (expand_builtin_printf): Rewrite of c_expand_builtin_printf from
+ c-common.c to avoid front-end dependencies. Optimize printf("")
+ as a no-op when the result isn't required. Handle embedded NULs
+ in format string.
+ (expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf
+ from c-common.c to avoid front-end dependencies. Likewise, optimize
+ fprintf(fp,"") as a no-op when the result isn't required, evaluating
+ fp for side-effects. Handle embedded NULs in format string.
+ (expand_builtin_sprintf): Fix typo.
+ (expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not
+ optimizing. Adjust calls of expand_builtin_fputs to match the API
+ change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using
+ expand_builtin_printf. Likewise, expand BUILT_IN_FPRINTF_UNLOCKED
+ and BUILT_IN_FPRINTF using expand_builtin_fprintf.
+
+ * c-common.c (is_valid_printf_arglist): Delete.
+ (c_expand_builtin): Delete.
+ (c_expand_builtin_printf): Moved to builtins.c. Delete.
+ (c_expand_builtin_fprintf): Moved to builtins.c. Delete.
+ (c_expand_expr): No longer treat CALL_EXPRs specially.
+ (CALLED_AS_BUILT_IN): Delete.
+
+2003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR optimization/11631
+ * gcse.c (store_motion): Connect infinite loops to exit.
+
+2003-07-24 Jason Merrill <jason@redhat.com>
+
+ * tree.h (boolean_type_node): Move from C/C++/Java frontends.
+ (boolean_true_node, boolean_false_node): Likewise.
+ (enum tree_index): Add TI_BOOLEAN_{TYPE,FALSE,TRUE}.
+ * tree.c (build_common_tree_nodes): Init boolean_type_node.
+ (build_common_tree_nodes_2): Init boolean_{true,false}_node.
+ * stor-layout.c (set_sizetype): Handle an early BOOLEAN_TYPE.
+ * c-common.h (truthvalue_type_node): Renamed from boolean_type_node.
+ (truthvalue_true_node): Renamed from boolean_true_node.
+ (truthvalue_false_node): Renamed from boolean_false_node.
+ * c-decl.c: Just set truthvalue_* to integer_*.
+ * c-*.[ch]: s/boolean/truthvalue/. s/c_bool/boolean/.
+
+2003-07-24 Roger Sayle <roger@eyesopen.com>
+
+ * c-decl.c (match_builtin_function_types): New subroutine of
+ duplicate_decls to test whether a redeclaration of a builtin
+ function is suitably close, i.e. the return type and all of
+ the argument types have the same modes as the builtin expects.
+ (duplicate_decls): Fuzzy type matching for builtin functions
+ moved to match_builtin_function_types.
+
+2003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgloopmanip.c (duplicate_loop_to_header_edge): Update irreducible
+ flag correctly.
+
+2003-07-24 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c: Search-and-replace change 'binding level' to
+ 'scope' in commentary.
+ (struct binding_level): Now struct c_scope.
+ (current_binding_level): Now current_scope.
+ (free_binding_level): Now scope_freelist.
+ (current_function_level): Now current_function_scope.
+ (global_binding_level): Now global_scope.
+ (make_binding_level): Now make_scope.
+ (pop_binding_level): Now pop_scope.
+
+2003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.in (libgcc_visibility): Add missing whitespace.
+
+2003-07-24 Richard Henderson <rth@redhat.com>
+
+ * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
+ __gcc_personality_v0.
+
+2003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in: Replace pwd by ${PWD_COMMAND}.
+
+2003-07-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/invoke.texi (-fprofile-arcs, -ftest-coverage): Update
+ documentation missed from my 2003-07-09 patch.
+
+2003-07-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Set patch level to 0 if
+ it's not provided.
+ * configure: Rebuild.
+
+2003-07-24 Steven Bosscher <steven@gcc.gnu.org>
+
+ PR c/10602
+ * c-typeck.c (type_lists_compatible_p): Do not compare
+ arguments if one of them is an error_mark_node
+
+2003-07-24 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_emit_prologue): Save fp regs inline
+ if current_function_calls_eh_return.
+
+2003-07-23 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/c-tree.texi (OFFSET_TYPE): Update description.
+
+2003-07-23 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/crti.asm (_init, _fini): Increase frame size to 64.
+ * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
+ __umodsi3, __modsi3): Increase frame size to 32.
+
+2003-07-23 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/host-darwin.c: ANSIfy, update comment for sigaltstack
+ prototype.
+
+2003-07-23 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/c-tree.texi (Types): Update documentation for OFFSET_TYPE.
+
+ PR optimization/10679
+ * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
+
+2003-07-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/11607 and PR target/11516
+ * pa.md (extzv, extv, insv): Revert latter half of last patch.
+
+2003-07-22 Mark Mitchell <mark@codesourcery.com>
+
+ * fold-const.c (force_fit_type): Handle OFFSET_TYPE.
+ * varasam.c (output_constant): Likewise.
+
+2003-07-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c: Fix comment formatting.
+ * c-common.c: Likewise.
+ * c-decl.c: Likewise.
+ * c-opts.c: Likewise.
+ * combine.c: Likewise.
+ * cpplib.c: Likewise.
+ * diagnostic.c: Likewise.
+ * dojump.c: Likewise.
+ * final.c: Likewise.
+ * fold-const.c: Likewise.
+ * gcc.c: Likewise.
+ * gcse.c: Likewise.
+ * ggc-page.c: Likewise.
+ * jump.c: Likewise.
+ * loop.c: Likewise.
+ * mips-tfile.c: Likewise.
+ * recog.c: Likewise.
+ * regclass.c: Likewise.
+ * regmove.c: Likewise.
+ * tree.c: Likewise.
+ * tree.h: Likewise.
+
+2003-07-22 Per Bothner <pbothner@apple.com>
+
+ * line-map.c (add_line_map): Handle invalid LEAVE request.
+ Fixes PR preprocessor/11361.
+
+2003-07-22 Per Bothner <pbothner@apple.com>
+
+ * diagnostic.c.(diagnostic_report_current_module): Update to match
+ 2003-06-05 changes to push_srcloc and pop_srcloc.
+
+2003-07-22 Wolfgang Bangerth <bangerth@dealii.org>
+
+ * doc/trouble.texi: Better document two-stage name lookup.
+
+2003-07-22 Eric Christopher <echristo@redhat.com>
+
+ * config/s390.c (s390_valid_pointer_mode): New.
+ (TARGET_VALID_POINTER_MODE): Use.
+ (s390_emit_prologue): Add tpf profiling hooks.
+ (s390_emit_epilogue): Ditto.
+ * config/s390.h (MASK_TPF): New.
+ (TARGET_TPF): Use.
+ (POINTERS_EXTEND_UNSIGNED): Define.
+ * config/s390.md (ptr_extend): New pattern.
+
+2003-07-22 Zack Weinberg <zack@codesourcery.com>
+
+ * hashtable.c (approx_sqrt): Make static.
+ * hashtable.h: Don't prototype approx_sqrt.
+ * line-map.c (init_line_maps): Rename linemap_init.
+ (free_line_maps): Rename linemap_free.
+ (add_line_map): Rename linemap_add.
+ (lookup_line): Rename linemap_lookup.
+ (print_containing_files): Rename linemap_print_containing_files.
+ * linemap.h: Update to match.
+
+ * cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
+ linemap routines to use new names.
+
+2003-07-16 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-common.c (handle_packed_attribute): Don't pack a struct via a
+ typedef. Propagate packedness from a main variant.
+
+2003-07-22 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in (install-common): Add dependency on installdirs.
+
+2003-07-21 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-common.c (c_common_type_for_mode): Return integer types for
+ pointer modes.
+
+2003-07-22 Geoffrey Keating <geoffk@apple.com>
+
+ * c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.
+ (finish_decl): Call maybe_apply_pragma_weak here.
+ (grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before
+ TREE_PUBLIC and TREE_STATIC are decided.
+ (start_function): Move call to maybe_apply_pragma_weak. Check that
+ DECL_ASSEMBLER_NAME isn't set too early.
+
+ * cpplex.c (_cpp_process_line_notes): Mention option name in
+ trigraphs warning.
+
+2003-07-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c (if_then_else_cond): Simplify the comparison of
+ rtx against -1, 0, and 1.
+ * loop.c (check_dbra_loop): Likewise.
+ * optabs.c (emit_conditional_move): Likewise.
+ (emit_conditional_add): Likewise.
+ * config/i386/i386.md (*movsi_or): Likewise.
+ (*movdi_or_rex6): Likewise.
+
+2003-07-22 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.
+
+2003-07-21 Neil Booth <neil@daikokuya.co.uk>
+
+ * cppfiles.c (open_file_pch): Don't put unused entries in the
+ splay tree. Remove dead code.
+
+2003-07-21 Geoffrey Keating <geoffk@apple.com>
+
+ * c-common.h (num_in_fnames): Declare.
+ (c_static_assembler_name): Move from here...
+ * c-tree.h (c_static_assembler_name): ... to here.
+ * c-opts.c: Don't include langhooks-def.h.
+ (c_static_assembler_name): Move to c-decl.c.
+ (num_in_fnames): Make externally visible.
+ * c-decl.c: Include langhooks-def.h.
+ (c_static_assembler_name): Move from c-opts.c.
+ * Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H).
+ (c-opts.o): Remove $(LANGHOOKS_DEF_H).
+
+ * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
+ when it's not needed.
+
+2003-07-21 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000.h (machine_function): Add ra_need_lr.
+ * config/rs6000/rs6000.c (rs6000_return_addr): Set it.
+ (rs6000_emit_prologue): Save FPRs inline if set.
+
+2003-07-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/ia64/ia64.md (prefetch): Support predicate.
+
+2003-07-21 Josef Zlomek <zlomekj@suse.cz>
+
+ * cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.
+ * rtlanal.c (tablejump_p): Use next_active_insn for finding the jump
+ table.
+
+2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11536
+ * unroll.c (loop_iterations): Do not replace a register holding
+ the final value by its equivalent before the loop if it is not
+ invariant.
+
+2003-07-21 Dave Fluri <dave.fluri@onlink.net>
+
+ * doc/extend.texi: Fixes to spelling, grammar, and diction.
+
+2003-07-21 Ben Elliston <bje@wasabisystems.com>
+
+ * doc/invoke.texi (Optimize Options): Replace "it's" with "its".
+ (V850 Options): Spelling fixes.
+
+2003-07-20 Lisa M. Goldstein <opus@gnu.org>
+
+ * doc/invoke.texi: Fixes to style, grammar and diction.
+
+2003-07-20 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.
+ * system.h (SMALL_STACK): Poison obsolete target macro.
+ * doc/tm.texi (SMALL_STACK): Remove target macro documentation.
+
+2003-07-20 Phil Edwards <pme@gcc.gnu.org>
+
+ * configure.in: Cache the results of testing for cmp's capabilities.
+ * configure: Regenerate.
+
+2003-07-20 Mark Mitchell <mark@codesourcery.com>
+
+ PR debug/11279
+ * dwarf2out.c (gen_enumeration_type_die): Remember that
+ enumerators can be unsigned.
+
+2003-07-19 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (named_labels, shadowed_labels, label_level_chain)
+ (push_label_level, pop_label_level): Kill.
+ (struct binding_level): Rename level_chain to outer.
+ Add outer_function field. Change parm_flag, function_body,
+ keep, keep_if_subblocks to 1-bit bitfields of type bool.
+ (current_function_level): New variable.
+ (keep_next_level_flag, keep_next_if_subblocks): Change type to bool.
+ (keep_next_level, declare_parm_level, warn_if_shadowing):
+ Update to match.
+ (struct language_function): Kill named_labels, shadowed_labels fields.
+ (c_init_decl_processing, start_function, c_push__function_context)
+ (c_pop_function_context): No need to muck with named_labels nor
+ shadowed_labels.
+
+ (make_binding_level): No need to clear the structure here.
+ (pop_binding_level): Always operate on current_binding_level.
+ Update current_function_level if necessary.
+ (pushlevel): Don't clear named_labels. Update current_function_level
+ if necessary. Use "true" and "false" where appropriate.
+ (poplevel): Diagnose labels defined but not used, or vice
+ versa, and clear out label-meanings leaving scope, while
+ walking down the decls list, for all binding levels.
+ Handle LABEL_DECLs appearing in the shadowed list.
+ pop_binding_level takes no arguments.
+ (pushdecl_function_level): Use current_function_level.
+
+ (make_label, bind_label): New static functions.
+ (declare_label): New exported function.
+ (lookup_label, define_label): Rewritten for new data structure.
+ (shadow_label): Kill.
+
+ * c-tree.h: Prototype declare_label; don't prototype
+ push_label_level, pop_label_level, nor shadow_label.
+ * c-parse.in: Remove all calls to push_label_level and
+ pop_label_level. Use declare_label for __label__ decls.
+
+ * doc/extend.texi: Clarify that __label__ can be used to
+ declare labels with local scope in any nested block, not
+ just statement expressions. Cross-reference nested functions
+ section from local labels section.
+
+2003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * sched-rgn.c (find_rgns): Initialize current_edge correctly.
+
+2003-07-19 Phil Edwards <pme@gcc.gnu.org>
+
+ * doc/makefile.texi (restrap, profiledbootstrap): Document targets.
+
+2003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
+ fixinc/server.c objc/objc-act.c: Remove unnecessary casts.
+
+2003-07-19 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (legitimize_pic_address): Access local symbols
+ relative to the GOT instead of relative to the literal pool base.
+ (s390_output_symbolic_const): Handle new GOT-relative accesses.
+ * config/s390/s390.md ("call"): Access local functions and PLT stubs
+ relative to the GOT instead of relative to the literal pool base.
+ ("call_value"): Likewise.
+ ("call_value_tls"): Likewise.
+
+ * config/s390/s390.c (s390_chunkify_start): Remove pool anchor
+ reloading. Support LTREL_BASE / LTREL_OFFSET construct.
+ (s390_chunkify_finish): Likewise.
+ (s390_chunkify_cancel): Likewise.
+ (s390_reorg): Adapt caller.
+ (find_base_register_in_addr,
+ find_base_register_ref, replace_base_register_ref): Delete.
+ (find_ltrel_base, replace_ltrel_base): New functions.
+ (find_constant_pool_ref): Handle LTREL_BASE unspecs.
+ (s390_decompose_address): Handle LTREL_BASE unspecs. Optimize
+ base vs. index register usage.
+ (struct constant_pool): Remove 'anchor'.
+ (s390_add_anchor): Delete.
+ (s390_dump_pool): Remove anchor handling.
+ * config/s390/s390.md ("reload_anchor"): Remove.
+
+ * config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET.
+ (s390_load_got): New function. Use LTREL_BASE/OFFSET.
+ (s390_emit_prologue): Use it.
+ * config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup",
+ "builtin_setjmp_receiver"): Cleanup. Use s390_load_got. Do not
+ hard-code register 14.
+ * config/s390/s390-protos.h (s390_load_got): Declare.
+
+ * config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable):
+ Support TImode constants.
+ * config/s390/s390.md ("consttable_ti"): New.
+ ("consttable_si", "consttable_di"): Handle TLS symbols correctly.
+
+ * config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE,
+ UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF,
+ UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END,
+ UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI,
+ UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL):
+ New symbolic constants.
+ ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
+ "consttable_sf", "consttable_df", "pool_start_31", "pool_end_31",
+ "pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64",
+ "pool", "literal_pool_31", "literal_pool_64"): Cleanup. Use
+ symbolic UNSPEC values.
+ * config/s390/s390.c (larl_operand, s390_short_displacement,
+ bras_sym_operand, s390_cannot_force_const_mem,
+ s390_delegitimize_address, s390_decompose_address,
+ legitimize_pic_address, s390_output_symbolic_const,
+ s390_function_profiler): Use symbolic UNSPEC values.
+
+2003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c
+ c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
+ c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
+ collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
+ cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
+ cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
+ dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
+ fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
+ gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
+ genemit.c genextract.c genoutput.c genrecog.c gensupport.c
+ ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
+ integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
+ loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
+ postreload.c prefix.c print-tree.c protoize.c ra-build.c
+ ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
+ regmove.c regrename.c reload.c reload1.c reorg.c resource.c
+ sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
+ simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
+ tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
+ varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
+ casts.
+
+2003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.
+ * toplev.h (warning): Remove attribute.
+
+2003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.
+ (pop_label_level): Likewise.
+ (duplicate_decls): Likewise.
+ (implicitly_declare): Likewise.
+ (shadow_label): Likewise.
+ (start_decl): Likewise.
+ (finish_decl): Likewise.
+ (grokdeclarator): Likewise.
+ (get_parm_info): Likewise.
+ (detect_field_duplicates): Likewise.
+ (finish_struct): Likewise.
+ (start_function): Likewise.
+ (store_parm_decls): Likewise.
+ (finish_function): Likewise.
+ (c_expand_body_1): Likewise.
+ (check_for_loop_decls): Likewise.
+ (merge_translation_unit_decls): Likewise.
+
+2003-07-19 Neil Booth <neil@daikokuya.co.uk>
+
+ * common.opt: Document --param.
+ * opts.c (columns, undocumented_msg): New.
+ (print_help): Get number of columns from environment. Print
+ --param help. Tweak newline handling.
+ (print_param_help): New.
+ (print_filtered_help): Better handling of duplicates. Complain
+ about undocumented switches.
+ (print_switch): New.
+ (wrap_help): Improve wrapping, use COLUMNS.
+ * opts.sh: Ignore comments in records.
+ * params.def: Fix typos and remove trailing periods.
+ * toplev.c (display_help): Don't dump --param help.
+ * doc/sourcebuild.texi: Update.
+
+2003-07-18 Richard Henderson <rth@redhat.com>
+
+ PR target/11556
+ * optabs.c (prepare_operand): Fail gracefully instead of abort
+ if the predicate doesn't satisfy.
+ (gen_cond_trap): Allow prepare_operand to fail.
+
+2003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-common.c: Don't undefine GCC_DIAG_STYLE.
+ (fname_decl): Don't use xxx_with_decl.
+ (c_add_case_label): Likewise.
+ (handle_section_attribute): Likewise.
+ (handle_alias_attribute): Likewise.
+ (handle_no_instrument_function_attribute): Likewise.
+ (handle_no_limit_stack_attribute): Likewise.
+ * c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs.
+ * c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier.
+
+2003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (ifcvt.o): Add cfgloop.h.
+ * basic-block.h (EDGE_LOOP_EXIT): New flag.
+ * cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
+ * ifcvt.c: Include cfgloop.h.
+ (mark_loop_exit_edges): New static function.
+ (if_convert): Call it.
+ (find_if_header): Ignore branches out of loops.
+
+2003-07-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c (simplify_comparison): Don't share rtx when converting
+ (ne (and (not X) 1) 0) to (eq (and X 1) 0).
+
+2003-07-18 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define.
+ (AGGREGATES_PAD_UPWARD_ALWAYS): Define.
+ (MUST_PASS_IN_STACK): Define.
+ (BLOCK_REG_PADDING): Define.
+
+2003-07-18 Richard Henderson <rth@redhat.com>
+
+ * cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p
+ to skip the addr_vec.
+
+2003-07-18 Alexandre Oliva <aoliva@redhat.com>
+
+ * combine.c (combinable_i3pat): Don't forbid occurrences of
+ i2dest or i1dest in inner_dest if inner_dest is a mem.
+
+2003-07-18 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_remove_node): Clear the hash table slot.
+
+2003-07-17 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/11087
+ * loop.c (basic_induction_var): Check if convert_modes emitted any
+ instructions. Remove them and return 0 if so.
+
+2003-07-18 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11083
+ * toplev.c (rest_of_handle_addresof): Rename into
+ rest_of_handle_addressof. Delete unreachable blocks
+ if dead edges were purged after the addressof pass.
+
+2003-07-18 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in, configure, configure.in: Remove handling of
+ lang-options.h and options_.h.
+ * toplev.c (struct lang_opt, documented_lang_options): Remove.
+ (display_help): Don't use documented_lang_options.
+
+2003-07-17 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (pushdecl_function_level): Make static, return nothing.
+ (kept_level_p): Fold into poplevel.
+ (undeclared_variable): Moved here from c-typeck.c. Export.
+ * c-tree.h (KEEP_YES, KEEP_NO, KEEP_MAYBE): New #defines.
+ (undeclared_variable): Prototype here. Don't prototype
+ kept_level_p nor pushdecl_function_level.
+ * c-parse.in: Change first argument to poplevel from
+ "kept_level_p()" to "KEEP_MAYBE".
+ * c-typeck.c (undeclared_variable): Moved to c-decl.c.
+
+2003-07-17 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_rtx): Use simplify_gen_binary to swap
+ commutative operands instead of modifying the RTL in-place.
+
+2003-07-17 Mark Mitchell <mark@codesourcery.com>
+
+ PR optimization/11557
+ * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
+ unless we know which function is being called.
+
+2003-07-17 Roger Sayle <roger@eyesopen.com>
+
+ * cse.c (fold_rtx): Use swap_commutative_operands_p to determine
+ whether to reorder the operands of a commutative binary operator.
+
+2003-07-17 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (const_binop): Avoid performing the FP operation at
+ compile-time, if either operand is NaN and we honor signaling NaNs,
+ or if we're dividing by zero and either flag_trapping_math is set
+ or the desired mode doesn't support infinities.
+ (fold_initializer): New function to fold an expression ignoring any
+ potential run-time exceptions or traps.
+ * tree.h (fold_initializer): Prototype here.
+ * c-typeck.c (build_binary_op): Move to the end of the file so
+ that intializer_stack is in scope. If constructing an initializer,
+ i.e. when initializer_stack is not NULL, use fold_initializer to
+ fold expressions.
+ * simplify-rtx.c (simplify_binary_operation): Likewise, avoid
+ performing FP operations at compile-time, if they would raise an
+ exception at run-time.
+
+2003-07-17 Geoffrey Keating <geoffk@apple.com>
+
+ PR 11498
+ * Makefile.in (c-opts.o): Add $(LANGHOOKS_DEF_H).
+ (langhooks.o): Add $(GGC_H), gt-langhooks.h.
+ (GTFILES): Add langhooks.c.
+ (gt-langhooks.h): New.
+ * c-common.h (c_static_assembler_name): Prototype.
+ * c-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
+ * objc/objc-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
+ * c-opts.c: Include langhooks-def.h.
+ (c_static_assembler_name): New.
+ * langhooks.c: Include ggc.h. Include gt-langhooks.h.
+ (var_labelno): New.
+ (lhd_set_decl_assembler_name): Give static objects with context
+ unique names.
+ * varasm.c (var_labelno): Delete.
+ (make_decl_rtl): Don't change the assembler name once it's set.
+
+ * c-opts.c (this_input_filename): New.
+ (finish_options): Take new parameter, name of file being compiled.
+ Update callers. Set this_input_filename.
+ (push_command_line_include): Use this_input_filename not
+ main_input_filename.
+
+2003-07-17 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in: Depend .pot generation on options.c.
+ * po/exgettext: Add an extra_files variable containing additional
+ files to scan.
+
+2003-07-17 Zack Weinberg <zack@codesourcery.com>
+
+ * objc/objc-lang.c: Override LANG_HOOKS_WRITE_GLOBALS to
+ c_write_global_declarations.
+
+ * c-decl.c: Fix typos in several comments. Remove all
+ #if 0 blocks; reindent as needed. Remove unused argument
+ to declare_parm_level; all callers changed.
+ * c-parse.in: Update calls to declare_parm_level. Avoid
+ issuing a double warning in some circumstances.
+ * c-typeck.c: Update calls to declare_parm_level.
+ * c-tree.h: Update prototype of declare_parm_level.
+
+ * c-pragma.c (apply_pragma_weak): Don't complain about a
+ redundant #pragma weak.
+
+ * objc/objc-act.c (forward_declare_categories,
+ build_selector_reference_decl, build_class_reference_decl,
+ build_objc_string_decl, synth_forward_declarations,
+ build_protocol_reference): Set TREE_PUBLIC on synthetic
+ forward decl to 0, consistent with eventual definition.
+ Correct comments to match.
+
+ * fixinc/inclhack.def (solaris_mutex_init_2): Escape braces
+ in regexp that don't form a range expression.
+ * fixinc/fixincl.def: Regenerate.
+
+2003-07-17 Richard Henderson <rth@redhat.com>
+
+ PR target/10907
+ * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
+ even with !TARGET_CONST_GP.
+ (ia64_function_ok_for_sibcall): Reject non-local functions.
+
+2003-07-17 Steven Bosscher <steven@gcc.gnu.org>
+
+ * c-common.c (c_estimate_num_insns_1): Don't handle
+ METHOD_CALL_EXPR.
+ * expr.c (safe_from_p): Likewise.
+ * gengtype.c (adjust_field_tree_exp): Likewise.
+ * stmt.c (warn_if_unused_value): Likewise
+ * tree.c (first_rtl_op): Likewise.
+ * tree.def: Don't define METHOD_CALL_EXPR.
+ * java/lang.c (java_estimate_num_insns_1): Don't handle
+ METHOD_CALL_EXPR.
+
+2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR other/11466
+ * doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
+ and its restrictions for the SPARC64 port.
+ Move the entry of "-mimpure-text" before that of "-mv8".
+
+2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Phil Edwards <phil@jaj.com>
+
+ * doc/install.texi (*-*-solaris2*): Document the step-by-step
+ procedure to bootstrap and install.
+ Document the preference for the legacy Sun tools in /usr/bin
+ over the POSIX tools in /usr/xpg4/bin for the build process.
+
+2003-07-17 Neil Booth <neil@daikokuya.co.uk>
+
+ * c.opt: Document Uncodumented; use it. Document ObjC options.
+ * opts.c (print_filtered_help): Skip undocumented switches.
+ * opts.h (CL_UNDOCUMENTED): New.
+ * opts.sh: Handle Undocumented.
+ * toplev.c (documented_lang_options): Prevent its becoming empty.
+objc:
+ * lang-options.h: Remove.
+
+2003-07-16 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * loop.c (check_ext_dependent_givs): Pass const struct loop *
+ instead of struct loop_info * as argument. Accept BIVs with
+ increment +/- 1 provided there is a friendly exit test against
+ a loop-invariant value.
+ (strength_reduce): Adapt call to check_ext_dependent_givs.
+
+2003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
+ Con Bradley <con.bradley@superh.com>
+
+ * sh-protos.h (sh_get_pr_initial_val): Declare.
+ * sh.c (regno_reg_class): Make its elements type enum reg_class.
+ (output_stack_adjust): Remove emit_fn argument. Add epilogue_p
+ and live_regs_mask arguments. Changed all callers.
+ (save_schedule_s): New structure.
+ (save_schedule): New typedef.
+ (scavenge_reg, sh5_schedule_saves, sh5_schedule_saves): New functions.
+ (calc_live_regs): For TARGET_SHMEDIA, use leaf_function_p.
+ In interrupts handlers, also save registers that are usually
+ partially saved, and make sure there is at least one general purpose
+ register saved if a target register needs saving.
+ Add casts in comparisons to avoid warnings.
+ (sh_media_register_for_return): return -1 for interrupt handlers.
+ (MAX_SAVED_REGS, MAX_TEMPS): New defines.
+ (sh_expand_prologue): Use sh5_schedule_saves. Check that any temp
+ registers used are available.
+ Set RTX_FRAME_RELATED_P where appropriate.
+ Add an REG_FRAME_RELATED_EXPR for r0 + offset addressing.
+ (sh_expand_epilogue, sh_set_return_address): Use sh5_schedule_saves.
+ (initial_elimination_offset): Likewise.
+ * sh.h (DWARF_CIE_DATA_ALIGNMENT): Set to -4.
+ (LOCAL_ALIGNMENT, GENERAL_REGISTER_P): Add casts to avoid warnings.
+ (FP_REGISTER_P): Add casts to fix broken handling of unsigned REGNO.
+ (XD_REGISTER_P, TARGET_REGISTER_P): Likewise.
+ (HARD_REGNO_CALL_PART_CLOBBERED): Also yield nonzero for r15,
+ and for target registers.
+ (RETURN_IN_MEMORY): Add parentheses to avoid warnings.
+ (regno_reg_class): Make its elements type enum reg_class.
+ (CONSTRAINT_LEN): Don't use isdigit.
+ (FUNCTION_ARG_REGNO_P): Add casts to avoid warnings.
+ (FUNCTION_ARG): Add parentheses to avoid warnings.
+ (RETURN_ADDR_RTX): Use sh_get_pr_initial_val.
+ (RETURN_ADDR_OFFSET): Define to -1 for TARGET_SH5.
+ (SH_DBX_REGISTER_NUMBER): Add casts to avoid warnings.
+ (EH_RETURN_DATA_REGNO): Use unsigned constants to avoid warnings.
+ * sh.md (xordi3+1): Remove unused variable regno.
+ (return_media): Check that tr0 is available before using it.
+
+2003-07-16 Neil Booth <neil@daikokuya.co.uk>
+
+ * c.opt: Document more options.
+
+2003-07-16 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (subst): Also handle (subreg (const_double ...)) case
+ if created by a substitution, by using the original inner mode.
+
+2003-07-16 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_replace_rtx): Convert constant comparisons
+ to MODE_FLOAT constants if FLOAT_STORE_FLAG_VALUE is defined.
+ (simplify_rtx): Likewise. Simplify (lo_sum (high X) X) as X.
+
+2003-07-16 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * doc/install.texi (--without-headers): New.
+
+ Partial Fix PR/10129
+ * config/darwin.c (machopic_function_base_name): Only Return "<pic base>".
+ (machopic_output_function_base_name): New; print the true pic label.
+ (machopic_classify_ident): Pic Base is always a defined data.
+ * config/darwin.h (ASM_OUTPUT_LABELREF): Support the pic base label.
+ * config/darwin-proto.h (machopic_output_function_base_name): Prototype.
+
+ * gcse.c (gcse_constant_p): COMPARE of the same registers is a constant
+ if they are not floating point registers.
+
+ PR c/10962
+ * ggc.h: Add header guards.
+ * c-decl.c (finish_struct): Sort fields if
+ number greater than 15 and there are no
+ anonymous structs/unions.
+ * c-common.h: Include ggc.h.
+ (sorted_fields_type): New struct.
+ (field_decl_cmp): New prototype.
+ (resort_sorted_fields): New prototype.
+ (DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro.
+ * c-tree.h: (lang_type): Use pointer to sorted_fields_type
+ as s, removing other fields.
+ * c-typeck.c (lookup_field): Use s in lang_type.
+ These were mostly moved from cp/class.c:
+ * c-common.c (field_decl_cmp): New static function.
+ (field_decl_cmp): New function.
+ (resort_sorted_fields): New function.
+
+2003-07-16 Geoffrey Keating <geoffk@apple.com>
+
+ * config/darwin.c (machopic_select_section): Use decl_readonly_section
+ to do most of the work.
+
+2003-07-16 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * config/mmix/mmix-protos.h: Convert prototypes to ISO C90.
+ * config/mmix/mmix.c: Convert functions to ISO C90.
+ (mmix_eh_return_handler_rtx, mmix_output_shifted_value): Tweak
+ formatting.
+ (mmix_get_hard_reg_initial_val): Tweak section head comment.
+
+2003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * c-pragma.h (HANDLE_PRAGMA_WEAK): Always define to SUPPORTS_WEAK.
+
+2003-07-16 Jakub Jelinek <jakub@redhat.com>
+
+ * unwind-dw2.c (MD_FROB_UPDATE_CONTEXT): Define.
+ (uw_update_context_1): Use it.
+ * config/rs6000/rs6000.c (insn_after_throw): Remove.
+ (rs6000_aix_emit_builtin_unwind_init): Save $r2 to its location
+ in parent frame if _Unwind_* called directly instead of through
+ .plt.
+ (rs6000_emit_eh_toc_restore): Remove.
+ (rs6000_emit_prologue): Update stack pointer before doing any saving
+ if current_function_calls_eh_return. Generate unwind info for $r2.
+ (rs6000_emit_epilogue): Restore stack pointer after doing all
+ restoring if current_function_calls_eh_return. Restore $r2.
+ * config/rs6000/rs6000-protos.h (rs6000_emit_eh_toc_restore): Remove.
+ * config/rs6000/rs6000.md (eh_return): Remove call to
+ rs6000_emit_eh_toc_restore.
+ * config/rs6000/linux64.h (MD_FROB_UPDATE_CONTEXT): Define.
+ * config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Define.
+
+2003-07-15 Jakub Jelinek <jakub@redhat.com>
+
+ * expr.c (emit_block_move): Don't move anything if size is const 0.
+ (clear_storage): Test against const0_rtx instead of comparing INTVAL
+ against 0.
+
+2003-07-15 David S. Miller <davem@redhat.com>
+
+ * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
+ emit nop if the last real insn is CALL_INSN.
+
+2003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/xm-mingw32.h (HOST_BIT_BUCKET): Define
+ as "nul".
+ * config/i386/xm-mingw32.h: Change GNU CC to GCC.
+
+2003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/winnt.c (associated_type): Artificial methods are not
+ affected by the import/export status of their class unless they are
+ COMDAT.
+ (i386_pe_dllimport_p): Do not mark artificial methods as dllimport.
+
+ * config/i386/winnt.c: Fix GCC copyright comment.
+
+2003-07-16 Gabriel Dos Reis <gcc@integrable-solutions.net>
+
+ PR c++/11531
+ * diagnostic.c (diagnostic_report_diagnostic): Don't ICE if we're
+ not recursing on hard error.
+ (diagnostic_for_decl): Likewise.
+ * diagnostic.def: Rearrange.
+
+2003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
+ If DWARF_FRAME_RETURN_COLUMN doesn't have a register mode, use Pmode.
+
+2003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
+ Richard Henderson <rth@redhat.com>
+
+ * unwind-dw2.c (_Unwind_GetGR): Use dwarf_reg_size_table
+ to decide if to access a _Unwind_Ptr or a _Unwind_Word.
+ (_Unwind_SetGR): Likewise.
+ (_Unwind_GetPtr, _Unwind_SetSpColumn): New functions.
+ (Unwind_SpTmp): New typedef.
+ (uw_update_context_1): Use _Unwind_SetSpColumn and _Unwind_GetPtr.
+ (uw_update_context): Use _Unwind_GetPtr.
+ (init_dwarf_reg_size_table): Move above uw_init_context_1.
+ (uw_init_context_1): Initialize dwarf_reg_size_table if necessary.
+ Use _Unwind_SetSpColumn.
+ (uw_install_context_1): Don't initialize dwarf_reg_size_table.
+ Use _Unwind_GetPtr.
+
+2003-07-15 Neil Booth <neil@daikokuya.co.uk>
+
+ * c.opt: Document more options.
+ * toplev.c (documented_lang_options): Remove all local help strings.
+
+2003-07-15 Mark Mitchell <mark@codesourcery.com>
+
+ PR debug/11473
+ * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
+ base classes.
+
+2003-07-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/10795
+ * config/i386/i386.c (ix86_expand_carry_flag_compare): Don't
+ swap comparison operands if doing so would generate an
+ unrecognizable insn.
+
+2003-07-15 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11320
+ * sched-int.h (struct deps) [reg_conditional_sets]: New field.
+ (struct sched_info) [compute_jump_reg_dependencies]: New prototype.
+ * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
+ current_sched_info->compute_jump_reg_dependencies. Record which
+ registers are used and which registers are set by the jump.
+ Clear deps->reg_conditional_sets after a barrier.
+ Set deps->reg_conditional_sets if the insn is a COND_EXEC.
+ Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
+ (init_deps): Initialize reg_conditional_sets.
+ (free_deps): Clear reg_conditional_sets.
+ * sched-ebb.c (compute_jump_reg_dependencies): New prototype.
+ Mark registers live on entry of the fallthrough block and conditionally
+ set as set by the jump. Mark registers live on entry of non-fallthrough
+ blocks as used by the jump.
+ * sched-rgn.c (compute_jump_reg_dependencies): New prototype.
+ Mark new parameters as unused.
+
+2003-07-15 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Resync MIPS -march documentation.
+
+2003-07-15 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (PROCESSOR_R9000): New processor_type.
+ (TARGET_MIPS9000, TUNE_MIPS9000): New macros.
+ (GENERATE_MULT3_SI): True for TARGET_MIPS9000.
+ * config/mips/mips.c (mips_cpu_info_table): Add rm9000 entry.
+ (mips_rtx_costs): Adjust integer multiplication costs for the rm9000.
+ (mips_issue_rate): Handle PROCESSOR_R9000.
+ (mips_use_dfa_pipeline_interface): Likewise.
+ * config/mips/9000.md: New file.
+ * config/mips/mips.md: Include it.
+ (define_attr cpu): Add r9000.
+ (mulsi3_mult3): Use "mul" for rm9000 code.
+
+2003-07-15 Stan Cox <scox@redhat.com>
+
+ * config/mips/mips.h (PROCESSOR_R7000): New processor_type.
+ (TARGET_MIPS7000, TUNE_MIPS7000): New macros.
+ (GENERATE_MULT3_SI): True for TARGET_MIPS7000.
+ * config/mips/mips.c (mips_cpu_info_table): Add rm7000 entry.
+ (mips_rtx_costs): Adjust integer multiplication costs for the rm7000.
+ (mips_issue_rate): Handle PROCESSOR_R7000.
+ (mips_use_dfa_pipeline_interface): Likewise.
+ * config/mips/7000.md: New file.
+ * config/mips/mips.md: Include it.
+ (define_attr cpu): Add r7000.
+ (mulsi3_mult3): Use "mul" for rm7000 code.
+
+2003-07-15 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (define_attr type): Add condmove. Use it for
+ the conditional move patterns.
+ * config/mips/5400.md (ir_vr54_move): Rename to ir_vr54_condmove.
+ Check for condmove type.
+ (ir_vr54_arith): Add move type.
+ * config/mips/5500.md (ir_vr55_move, ir_vr55_arith): Likewise.
+ * config/mips/sr71k.md (ir_sr70_move, ir_sr70_arith): Likewise.
+
+2003-07-15 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-opts.c (print_help): Remove.
+ (c_common_handle_option): Don't handle --help.
+ * c.opt: Document some options.
+ (--help): Remove.
+ * opts.c (print_filtered_help): New.
+ (print_help): Use it.
+
+2003-07-14 Geoffrey Keating <geoffk@apple.com>
+
+ * c-common.c (c_common_type_for_mode): Handle V4DFmode.
+ * tree.c: (build_common_tree_nodes_2): Likewise.
+ * tree.h (enum tree_index): Add TI_V4DF_TYPE.
+ (V4DF_type_node): New.
+
+ * c-opts.c (push_command_line_include): Don't free deferred_opts,
+ we'll need it.
+ (finish_options): Reset init_cursor.
+
+2003-07-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c (expand_assignment): Remove an unused argument
+ SUGGEST_REG.
+ * expr.h: Update the prototype.
+ * function.c: Update the callers.
+ * stmt.c: Likewise.
+
+2003-07-14 Mark Mitchell <mark@codesourcery.com>
+
+ PR debug/11098
+ * integrate.c (copy_decl_for_inlining): Do not mark copied decls
+ as DECL_ABSTRACT.
+
+2003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (avoid_bool_define, avoid_bool_type): Bypass
+ with __cplusplus, not "we must use the C++ compiler's type"
+ * fixinc/inclhack.def (void_null): Note that Interix needs this.
+ * fixinc/fixincl.x: Regenerate.
+
+2003-07-14 Geoffrey Keating <geoffk@apple.com>
+
+ * unwind-dw2-fde-darwin.c (live_image_destructor): Get seen_objects
+ and unseen_objects from the global data before calling
+ __deregister_frame_info_bases.
+ (examine_objects): Insert objects into the seen_objects list,
+ not unseen_objects.
+ (_Unwind_Find_FDE): Always unlock the global object lists, even if
+ we couldn't allocate a data structure to put in it.
+
+ * objc/objc-act.h (CLASS_SUPER_NAME): Add a little typechecking.
+ (TYPE_PROTOCOL_LIST): Share use of type.context with C frontend.
+ (SET_TYPE_PROTOCOL_LIST): New.
+ * objc/objc-act.c (get_static_reference): Use SET_TYPE_PROTOCOL_LIST.
+ (get_object_reference): Likewise.
+
+2003-07-14 Jan Hubicka <jh@suse.cz>
+
+ * cfglayout.c (locator_file): Break out from ....
+ (insn_file): ... here.
+ (locator_line): Break out from ....
+ (insn_line): ... here.
+ * rtl.h (locator_file, locator_line): Declare.
+ (final_start_function): Set proper line/file info.
+
+2003-07-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-pretty-print.c (pp_c_unary_expression): A CONVERT_EXPR is
+ handled by pp_c_cast_expression.
+
+2003-07-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_expand_prologue): Use a single insn to
+ allocate 32768 bytes of stack. Use addition rather than subtraction
+ when a single insn is enough.
+ * config/mips/mips.md: Remove insns and splitters for subtracting
+ constants.
+ (subsi3): Only accept register operands.
+ (subsi3_internal): Likewise. Use for TARGET_MIPS16 as well.
+ (subdi3_internal_3, subsi3_internal_2): Likewise.
+ (casesi): Use expand_binop to subtract the lower bound.
+
+2003-07-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_in_small_data_p): Don't handle
+ TARGET_MIPS16 specially.
+
+2003-07-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Use
+ mips_output_aligned_bss.
+ * config/mips/linux.h: Likewise.
+ * config/mips/mips-protos.h (mips_output_aligned_bss): Declare.
+ * config/mips/mips.c (mips_output_aligned_bss): New function.
+
+ * config/mips/elf.h (DBX_DEBUGGING_INFO): Delete.
+ * config/mips/elf64.h: Likewise.
+
+ * config/mips/elf.h (ASM_DECLARE_OBJECT_NAME): Use
+ mips_declare_object_name.
+ (ASM_FINISH_DECLARE_OBJECT): Likewise mips_finish_declare_object.
+ * config/mips/elf64.h: As for elf.h.
+ * config/mips/iris6.h: Likewise.
+ * config/mips/linux.h (ASM_DECLARE_OBJECT_NAME): As for elf.h.
+ * config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Remove unnecessary
+ do...while (0) block.
+ * config/mips/mips-protos.h (mips_declare_object_name): Declare.
+ (mips_finish_declare_object): Declare.
+ * config/mips/mips.c (mips_declare_object_name): New function.
+ (mips_finish_declare_object): New function.
+
+ * config/mips/elf.h (SBSS_SECTION_ASM_OP): Delete.
+ * config/mips/linux.h: Likewise.
+
+ * config/mips/mips.c (inside_function): Delete.
+ (file_in_function_warning, ignore_line_number): Delete.
+ (mips_output_filename): Don't warn about changing filenames within
+ a function.
+ (mips_output_lineno): Update accordingly.
+ (mips_output_function_prologue): Don't reset the deleted variables.
+ * config/mips/mips.h (inside_function): Delete.
+ (file_in_function_warning, ignore_line_number): Delete.
+
+ * config/mips/elf.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Remove undefs.
+ * config/mips/elf64.h: Likewise.
+ * config/mips/openbsd.h: Likewise.
+ * config/mips/iris5.h (OBJECT_FORMAT_COFF): Remove undefs.
+ * config/mips/linux.h: Likewise.
+ * config/mips/mips.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Delete.
+ (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB): Delete.
+
+ * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Add mips/sdb.h
+ to the list of include files when using gas.
+ (mips*el-*-openbsd*, mips*-*-openbsd*): Add mips/sdb.h unconditionally.
+ * config/mips/elf.h: Remove #undef SDB_DEBUGGING_INFO.
+ * config/mips/elf64.h: Likewise.
+ * config/mips/iris5.h: Likewise.
+ * config/mips/linux.h: Likewise.
+ * config/mips/iris5gas.h (SDB_DEBUGGING_INFO): Remove definition.
+ * config/mips/mips.h (PREFERRED_DEBUGGING_TYPE): Likewise.
+ (SDB_DEBUGGING_INFO, sdb*, SDB_ALLOW_*, PUT_SDB*): Move to...
+ * config/mips/sdb.h: ...this new file.
+
+2003-07-14 Douglas Rupp <rupp@gnat.com>
+
+ * fixinc/server.c (server_setup): Don't use non-POSIX NULL first
+ argument to getcwd; use fixed buffer instead.
+
+2003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/mkfixinc.sh: Treat OpenBSD normally.
+ * fixinc/fixinc.wrap: Delete.
+
+2003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * ggc-page.c (extra_order_size_table): Insns have 9 slots. Regs
+ don't have 2.
+
+2003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * ggc-page.c (struct globals): Add new fields to keep track of the
+ total allocated memory and overhead.
+ (ggc_print_statistics): Print them.
+ (ggc_alloc): Keep track of the total allocated memory and the
+ overhead.
+
+ * tree.c (dump_tree_statistics): Increase spacing.
+ (enum tree_node_kind): Move to ...
+ * tree.h (enum tree_node_kind): ... here.
+ (tree_node_counts, tree_node_sizes): Declare.
+
+2003-07-14 James A. Morrison <ja2morri@student.math.uwaterloo.ca>
+
+ * doc/include/texinfo.tex: Upgrade to texinfo 4.6.
+
+2003-07-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ PR optimization/11440
+ * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
+ SIGN_EXTRACT SETs.
+
+2003-07-14 Alan Modra <amodra@bigpond.net.au>
+
+ * doc/tm.texi (BLOCK_REG_PADDING): Describe.
+ * expr.h (struct locate_and_pad_arg_data): Add where_pad.
+ (emit_group_load, emit_group_store): Adjust declarations.
+ Remove most occurrences of #ifdef TREE_CODE.
+ * expr.c (emit_group_load): Add "type" param, and use
+ BLOCK_REG_PADDING to determine need for a shift. Optimize non-
+ aligned accesses if !SLOW_UNALIGNED_ACCESS.
+ (emit_group_store): Likewise.
+ (emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
+ emit_group_load and emit_group_store calls.
+ * calls.c (store_unaligned_arguments_into_pseudos): Tidy. Use
+ BLOCK_REG_PADDING to determine whether we need endian_correction.
+ (load_register_parameters): Localize vars. Handle shifting of
+ small values to the correct end of regs. Adjust emit_group_load
+ call.
+ (expand_call, emit_library_call_value_1): Adjust emit_group_load
+ and emit_group_store calls.
+ * function.c (assign_parms): Set mem alignment for stack slots.
+ Adjust emit_group_store call. Store values at the "wrong" end
+ of regs to the stack. Use BLOCK_REG_PADDING.
+ (locate_and_pad_parm): Save where_pad.
+ (expand_function_end): Adjust emit_group_load call.
+ * stmt.c (expand_value_return): Adjust emit_group_load call.
+ * Makefile.in (calls.o): Depend on $(OPTABS_H).
+ * config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
+ (AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
+ (MUST_PASS_IN_STACK): Define.
+ (BLOCK_REG_PADDING): Define.
+ * config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
+ (PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
+ * config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
+ (function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
+ Act on AGGREGATES_PAD_UPWARD_ALWAYS.
+
+2003-07-13 Aaron W. LaFramboise <awlaframboise@aol.com>
+
+ * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
+
+2003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case COMPONENT_REF): If reg, copy OP0 to MEM
+ both if OFFSET specified and if result BLKmode for ARRAY_RANGE_REF.
+
+2003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR other/11123
+ * toplev.c: Don't cut off option names.
+
+2003-07-13 Andreas Jaeger <aj@suse.de>
+
+ * c-decl.c (link_hash_hash): Avoid warning about casting pointer
+ to integer of different size.
+
+2003-07-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c (simplify_comparison): Convert (ne (and (not X) 1) 0)
+ to (eq (and X 1) 0).
+
+2003-07-13 Andreas Jaeger <aj@suse.de>
+
+ * config.gcc: Add pmmintrin.h for x86_64-*-*.
+
+2003-07-13 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H).
+ (hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
+ list. Move these all together down by cpplib.
+
+ * cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
+ definition of CPPCHAR_SIGNED_T.
+
+ * cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
+ * cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
+ * line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.
+
+ * cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
+ * cppinit.c (cpp_create_reader): Likewise.
+
+ * cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
+ * cpptrad.c: Likewise. All callers changed.
+ * cpplib.c: All callers changed.
+ * c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
+ * hashtable.h: Define GTY(x) to nothing here too.
+
+2003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * stor-layout.c (compute_record_mode): Remove very obsolete test
+ that forces BLKmode for records with fields crossing word boundary.
+
+2003-07-13 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in: Remove orphan reference to acconfig.h.
+
+2003-07-13 Andreas Jaeger <aj@suse.de>
+
+ * cgraphunit.c: Convert prototypes to ISO C90.
+
+2003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (avoid_wchar_t_type): Use __cplusplus bypass
+ (for OpenBSD).
+ * fixinc/fixincl.x: Rebuild.
+
+2003-07-12 Zack Weinberg <zack@codesourcery.com>
+
+ * configure.in: Always define HAVE_AS_GOTOFF_IN_DATA for
+ i?86-*-*. Use correct name of cache variable.
+ * configure: Regenerate.
+
+2003-07-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.c: Fix comment typos.
+ * config/alpha/alpha.md: Likewise.
+ * config/arm/arm.c: Likewise.
+ * config/arm/arm.md: Likewise.
+ * config/arm/lib1funcs.asm: Likewise.
+ * config/avr/avr.md: Likewise.
+ * config/arm/README-interworking: Fix typos.
+
+2003-07-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-format.c: Fix comment formatting.
+ * c-typeck.c: Likewise.
+ * coverage.c: Likewise.
+ * cppcharset.c: Likewise.
+ * cpplib.c: Likewise.
+ * dbxout.c: Likewise.
+ * gcov-io.h: Likewise.
+ * toplev.c: Likewise.
+
+2003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (alpha_sbrk): Note that OpenBSD needs this
+ fix.
+
+2003-07-12 Zack Weinberg <zack@codesourcery.com>
+
+ * aclocal.m4 (gcc_AC_CHECK_TYPE): Clone of AC_CHECK_TYPE,
+ uses three-argument AC_DEFINE so no acconfig.h entries are
+ needed.
+ (_gcc_COMPUTE_GAS_VERSION): Also provide gcc_cv_gas_vers
+ which contains the GAS version number as a scaled integer.
+ (gcc_GAS_VERSION_GTE_IFELSE): Use gcc_cv_gas_vers. Add
+ ability to check for ELF assembler.
+ (gcc_GAS_CHECK_FEATURE): New macro.
+ * configure.in: Use gcc_AC_CHECK_TYPE. Rewrite all
+ assembler feature checks using gcc_GAS_CHECK_FEATURE.
+ Use three-argument AC_DEFINE everywhere.
+ * acconfig.h: Deleted.
+ * config.in, configure: Regenerate.
+
+2003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/inclhack.def (struct_sockaddr): Avoid "fixing" sockaddr_in
+ (on OpenBSD).
+ * fixinc/fixincl.x: Regenerate.
+
+ * fixinc/inclhack.def (gnu_types): Improve comment.
+
+2003-07-12 Andreas Jaeger <aj@suse.de>
+
+ * fp-test.c (main): Use ISO C90 prototype.
+
+ * version.c: Remove unneded include of ansidecl.h.
+
+ * cgraph.h: Convert prototypes to ISO C90.
+ * cgraph.c: Likewise.
+ * fix-header.c: Likewise.
+ * ra.h: Likewise.
+ * protoize.c: Likewise.
+
+2003-07-12 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_inlined_into, cgraph_inlined_calees): Fix
+ warning.
+
+2003-07-12 Jan Hubicka <jh@suse.cz>
+ Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * cgraph.c (cgraph_max_uid): New global variable.
+ (cgraph_node): Set uid field.
+ (create_edge): Keep inline flags consistent.
+ (dump_cgraph): Dump more info.
+ * cgraph.h (struct cgraph_local_info): Remove inline_many and
+ can_inline_once; add inlinable, disgread_inline_limits, and self_insn
+ (struct cgraph_global_info): Add insns, calls, cloned_times,
+ will_be_output.
+ (struct cgraph_node): Add uid.
+ (struct cgraph_edge): Add inline_call.
+ (cgraph_max_uid, cgraph_inline_p): Declare.
+ * cgraph.c: Include params.h and fibheap.h
+ (cgraph_mark_functions_to_inline_once): Kill.
+ (INSNS_PER_CALL): New constant.
+ (ncalls_inlined, nfunctions_inlined, initial_insns, overall_insns): New
+ static variables.
+ (cgraph_finalize_function): Do not analyze inlining.
+ (cgraph_finalize_compilation_unit): Set inlining attributes.
+ (cgraph_mark_functions_to_output): More consistency checks.
+ (cgraph_optimize_function): Set current_function_decl to NULL.
+ (cgraph_expand_function): Use new inline flags.
+ (cgraph_postorder): Expand from cgraph_expand_functions.
+ (INLINED_TIMES, SET_INLINED_TIMES): New macros.
+ (cgraph_inlined_into, cgraph_inlined_callees,
+ cgraph_estimate_size_after_inlining, cgraph_estimate_growth,
+ cgraph_mark_inline, cgraph_check_inline_limits,
+ cgraph_default_inline_p, cgraph_decide_inling_of_small_functions,
+ cgraph_decide_inlining, cgraph_inline_p): New functions.
+ * params.def (PARAM_LARGE_FUNCTION_INSNS, PARAM_LARGE_FUNCTION_GROWTH,
+ PARAM_INLINE_UNIT_GROWTH): New parameters.
+ * tree-inline.c (struct inline_data): New field current_decl.
+ (expand_call_inline): Avoid forward declarations; use
+ inlinable_function_p.
+ (optimize_inline_calls): Set id.current_decl.
+
+2003-07-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * configure.in: Remove wrongly added definition of
+ local_prefix.
+ * configure: Regenerate.
+
+2003-07-11 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * rtl.def (NOTE): Do not use padding.
+
+2003-07-11 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ * doc/install.tex: Update required binutils for i?86-*-linux*
+
+2003-07-11 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (stage1_build): Force OBJS-onestep=OBJS.
+
+2003-07-11 Mark Mitchell <mark@codesourcery.com>
+
+ * varasm.c (make_decl_rtl): Treat decls with a DECL_CONTEXT of
+ TRANSLATION_UNIT_DECL as top_level.
+
+2003-07-11 Jakub Jelinek <jakub@redhat.com>
+
+ * optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists,
+ then fall back to cmpstrM.
+ * builtins.c (expand_builtin_memcmp): Likewise.
+ * config/s390/s390-protos.h (s390_expand_cmpstr): Rename to...
+ (s390_expand_cmpmem): ... this.
+ * config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64,
+ cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed
+ from cmpstr* patterns. Rename call to s390_expand_cmpstr
+ to s390_expand_cmpmem.
+ * config/s390/s390.c (s390_expand_cmpstr): Rename to...
+ (s390_expand_cmpstr): ... this. Rename cmpstr* instructions
+ to cmpmem*.
+ * config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from
+ cmpstr* patterns.
+ * doc/md.texi (cmpstrM): Describe as String compare insn, not
+ Block compare insn.
+ (cmpmemM): Add.
+
+2003-07-11 Loren James Rittle <ljrittle@acm.org>
+
+ * config/i386/freebsd.h (SET_ASM_OP): Remove.
+ (SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
+ (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
+ MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.
+
+2003-07-11 Richard Henderson <rth@redhat.com>
+
+ * function.c (assign_parms): Don't recombine complex args if
+ fnargs is unchanged from orig_fnargs.
+ (split_complex_args): Return args without complex before copying.
+ Re-layout the modified parameters.
+
+2003-07-11 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * regclass.c (choose_hard_reg_mode): Add third argument.
+ Changed all callers.
+ * rtl.h (choose_hard_reg_mode): Update declaration.
+ * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
+ Take HARD_REGNO_CALL_PART_CLOBBERED into account.
+
+2003-07-11 Geoffrey Keating <geoffk@apple.com>
+
+ * c-decl.c (finish_decl): Handle 'used' here...
+ * cgraphunit.c (cgraph_finalize_function): ... and here ...
+ * c-common.c: (handle_used_attribute): ... not here.
+
+ * configure.in (onstep): Support --enable-intermodule.
+ * Makefile.in (OBJS-common): New.
+ (OBJS-md): New.
+ (OBJS-archive): New.
+ (OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
+ (OBJS-onestep): New.
+ (libbackend.a): Support @onestep@.
+ (libbackend.o): New.
+ * configure: Regenerate.
+
+ * c-common.h (c_reset_state): New prototype.
+ (c_parse_file): New prototype.
+ (finish_file): Move prototype from c-tree.h.
+ * c-decl.c: Include <hashtab.h>.
+ (builtin_decls): New.
+ (current_file_decl): New.
+ (duplicate_decls): Add extra parameter. Change all callers. Don't
+ output duplicate common symbols.
+ (link_hash_hash): New.
+ (link_hash_eq): New.
+ (poplevel): Handle popping of the top level.
+ (warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
+ (pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
+ (pushdecl_top_level): Likewise.
+ (redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
+ (c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
+ (finish_decl): Handle TRANSLATION_UNIT_DECL.
+ (merge_translation_unit_decls): New.
+ (c_write_global_declarations): New.
+ (c_reset_state): New.
+ (implicitly_declare): Handle TRANSLATION_UNIT_DECL.
+ * c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
+ * c-objc-common.c (c_cannot_inline_tree_fn): Handle
+ TRANSLATION_UNIT_DECL.
+ (c_objc_common_finish_file): Call merge_translation_unit_decls.
+ * c-opts.c (in_fnames): Rename from in_fname.
+ (c_common_decode_option): Handle multiple input filenames.
+ (c_common_post_options): Likewise.
+ (c_common_parse_file): Likewise; also, call c_parse_file rather than
+ yyparse.
+ * c-parse.in: Move cleanup code to c_parse_file.
+ (free_parser_stacks): Move contents to c_parse_file.
+ (c_parse_file): New.
+ * c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
+ for integer types.
+ (C_DECL_FILE_SCOPE): New.
+ (finish_file): Move prototype to c-common.h.
+ (merge_translation_unit_decls): New prototype.
+ (comptypes): Add extra parameter to prototype.
+ (c_write_global_declarations): New prototype.
+ * c-typeck.c (tagged_types_tu_compatible_p): New.
+ (function_types_compatible_p): Add extra parameter, change all callers.
+ (type_lists_compatible_p): Likewise.
+ (comptypes): Likewise.
+ (struct tagged_tu_seen): New.
+ (tagged_tu_seen_base): New.
+ (build_unary_op): Handle TRANSLATION_UNIT_DECL.
+ (c_mark_addressable): Remove #if 0 code.
+ * calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
+ comment explaining why it shouldn't have to.
+ * cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
+ options.
+ * cppinit.c (cpp_read_next_file): New.
+ (cpp_read_main_file): Use it.
+ * cpplib.c (undefine_macros): New.
+ (cpp_undef_all): New.
+ * cpplib.h (cpp_read_next_file): Prototype.
+ (cpp_undef_all): Prototype.
+ * langhooks-def.h (write_global_declarations): Remove prototype.
+ * toplev.h (write_global_declarations): Add prototype.
+ * tree.c (decl_type_context): Use switch statement, handle
+ TRANSLATION_UNIT_DECL.
+ * tree.def: Update documentation for TRANSLATION_UNIT_DECL.
+ (TRANSLATION_UNIT_DECL): New kind of tree.
+ * tree.h: Update documentation for TRANSLATION_UNIT_DECL.
+ * Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
+ * doc/invoke.texi: Make attempt to document new functionality.
+
+ 2003-05-19 Per Bothner <bothner@apple.com>
+
+ * gcc.c (combine_inputs): New.
+ (process_command): Set combine_inputs.
+ (do_spec_1): Handle combine_inputs.
+ (main): Likewise.
+
+2003-07-10 James E Wilson <wilson@tuliptree.org>
+
+ PR optimization/9745
+ * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
+ loop_insn_emit_before.
+ (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
+
+2003-07-10 Zack Weinberg <zack@codesourcery.com>
+
+ * cppcharset.c: Fix comment.
+ (iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
+ (EILSEQ): #define to EINVAL if not already defined.
+ (convert_using_iconv): #if out when !HAVE_ICONV.
+ (init_iconv_desc): Handle !HAVE_ICONV here...
+ (cpp_init_iconv): ...not here.
+
+2003-07-11 Neil Booth <neil@daikokuya.co.uk>
+
+ * common.opt: More --help messages.
+ * opts.c (print_help): Use puts().
+ * toplev.c (f_options): Remove help text.
+ (display_help): Don't dump f_options.
+
+2003-07-11 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
+ Move i?86-*-interix* to the don't-fix list.
+ * fixinc/fixinc.interix: Delete with extreme prejudice.
+
+2003-07-10 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ PR bootstrap/10758
+ * doc/install.texi: Document requirements for ia64-*-hpux* target.
+
+2003-07-10 Roger Sayle <roger@eyesopen.com>
+
+ * config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.
+
+2003-07-10 Zack Weinberg <zack@codesourcery.com>
+
+ * cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
+ one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
+ one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
+ convert_utf8_utf32, convert_utf16_utf8, convert_utf32_utf8,
+ convert_no_conversion, convert_using_iconv): New functions.
+ (APPLY_CONVERSION): New macro.
+ (struct conversion, conversion_tab): New data structure.
+ (init_iconv_desc): Check conversion_tab for a custom conversion
+ primitive before trying to use iconv.
+ (convert_cset): Deleted.
+ (cpp_init_iconv): Use UTF- terminology, not UCS-.
+ (_cpp_destroy_iconv): Update to match.
+ (_cpp_valid_ucn): We don't need iconv to implement UCNs.
+ (convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
+ (convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
+ (_cpp_interpret_string_notranslate): New function, moved here
+ from cpplib.c.
+
+ * cpphash.h (convert_f, struct cset_converter): New types.
+ (struct cpp_reader): narrow_cset_desc and wide_cset_desc
+ are now struct cset_converter, not bare iconv_t.
+ Update prototypes.
+ * cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
+ all callers changed.
+
+2003-07-10 Kelley Cook <kelleycook@wideopenwest.com>
+
+ * Makefile.in (options.h): Depend on Makefile. Add move-if-change
+ to opts.sh command line.
+ * opts.sh: Write to temporary files with a move-if-change at the end.
+
+2003-07-10 Denis Chertykov <denisc@overta.ru>
+ Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * combine.c (gen_binary): Handle the CLOBBER rtx and
+ don't build a binary operation with it.
+
+2003-07-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * gcse.c (load_kills_store, find_loads, store_killed_in_insn,
+ store_killed_after, store_killed_before): Keep track of the correct
+ dependency function to use.
+
+2003-07-10 Steven Bosscher <steven@gcc.gnu.org>
+ * toplev.c (do_compile): Don't try to open dump files before
+ lang_dependent_init initializes dump_base_name.
+
+2003-07-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
+ Use ARRAY_SIZE.
+ * config/frv/frv.c (frv_expand_builtin): Likewise.
+ * config/sh/sh.c (sh_media_init_builtins): Likewise.
+
+2003-07-09 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/10032
+ * doc/invoke.texi (C++ Dialect Options): Change documentation of
+ -fpermissive.
+
+2003-07-10 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * tm.texi (RETURN_ADDR_OFFSET): Document.
+
+2003-07-10 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcov-io.h: Update documentation.
+ (GCOV_UNSIGNED2STRING): New.
+ (GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
+ GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
+ GCOV_TAG_SUMMARY_LENGTH): Adjust.
+ (GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
+ GCOV_TAG_COUNTER_NUM): New.
+ (GCOV_BLOCK_SIZE): Number of words.
+ (gcov_var): Adjust buffer type.
+ * gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
+ (gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
+ count, not byte count.
+ (gcov_open): Adjust overread init.
+ (gcov_allocate, gcov_write_unsigned, gcov_write_counter,
+ gcov_write_string, gcov_write_tag, gcov_write_length,
+ gcov_write_tag_length): Adjust.
+ (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
+ (gcov_sync, gcov_seek): Adjust.
+ * gcov-dump.c (print_usage): Show gcc version only.
+ (dump_file): Use GCOV_UNSIGNED2STRING.
+ (tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
+ * gcov.c (print_version): Show gcc version only.
+ (read_graph_file): Use GCOV_UNSIGNED2STRING. Use
+ GCOV_TAG_*_NUM macros.
+ (read_count_file): Use GCOV_UNSIGNED2STRING. Use
+ GCOV_TAG_COUNTER_LENGTH.
+ * coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
+ Use GCOV_TAG_COUNTER_NUM.
+ * libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
+ (__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.
+
+2003-07-10 Andreas Schwab <schwab@suse.de>
+
+ * gcov-dump.c (dump_file): Fix missing address operator.
+
+2003-07-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR c/11449
+ * fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
+ of HOST_WIDE_INT.
+ (fold_single_bit_test): If sign_bit_p() fails, assume that the
+ bit being tested is not a sign bit.
+
+2003-07-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (a peephole2): New.
+
+2003-07-10 Alexandre Oliva <aoliva@redhat.com>
+
+ 2001-12-13 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
+ from ld-linux.so.2 to ld.so.1.
+ 2001-11-18 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
+ * config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
+ nor -Wl,-rpath-link.
+ (LIB_SPEC): Add -rpath-link if !static.
+ 2001-08-22 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.c (mn10300_protect_label): New
+ variable.
+ * config/mn10300/linux.h (PRINT_OPERAND,
+ PRINT_OPERAND_ADDRESS): Set it during their execution.
+ (ASM_OUTPUT_LABELREF): Output `+' before symbol name if
+ mn10300_protect_label is set.
+ * config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
+ -Wl,-rpath-link.
+ (LIB_SPEC, STARTFILE_SPEC): Define.
+ 2001-05-11 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
+ FLOAT_BIT_ORDER_MISMATCH.
+ 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
+ * config.gcc (am33_2.0-*-linux*): Added.
+ * config/mn10300/linux.h: New.
+ * config/mn10300/t-linux: New.
+
+2003-07-10 Andreas Jaeger <aj@suse.de>
+
+ * fold-const.c: Properly wrap prototypes.
+
+2003-07-09 Alexandre Oliva <aoliva@redhat.com>
+
+ 2003-06-16 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
+ Moved from...
+ * config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
+ * config/mn10300/mn10300.h: GTY-declare it.
+ 2003-06-11 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
+ prototype. Use incoming RTL argument.
+ 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.md (int_label): Move C statements...
+ (GOTaddr2picreg): ... here.
+ 2002-08-15 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
+ * config/mn10300/mn10300.c (mn10300_encode_section_info):
+ ... here. New function.
+ (TARGET_ENCODE_SECTION_INFO): Define to it.
+ 2001-11-04 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
+ pattern name.
+ (mn10300_loadPC): Define as insn splittable after reload.
+ 2001-05-13 Alexandre Oliva <aoliva@redhat.com>
+ * config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
+ be defined in .rodata even in PIC, now that the assembler
+ supports that.
+ 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
+ symbol take an underscore prefix.
+ 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
+ legitimize_pic_address): Declare.
+ * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
+ the PIC register as fixed.
+ (EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
+ (GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
+ PIC.
+ (LEGITIMATE_PIC_OPERAND_P): Define.
+ (PIC_OFFSET_TABLE_REGNUM): Define.
+ (GOT_SYMBOL_NAME): Define.
+ (SYMBOLIC_CONST_P): Define.
+ (ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
+ symbols.
+ (MN10300_GLOBAL_P): Test it.
+ (OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
+ (JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
+ * config/mn10300/mn10300.c (print_operand): Handle unspec.
+ (expand_prologue): Set PIC register.
+ (call_address_operand): Don't match SYMBOL_REFs in PIC.
+ (legitimize_address): Call legitimize_pic_address.
+ (legitimize_pic_address): New fn.
+ (legitimate_pic_operand_p): New fn.
+ * config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
+ (UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
+ UNSPEC_PLT): New constants.
+ (pop_pic_reg): New insn.
+ (movsi): Adjust non-PIC addresses.
+ (builtin_setjmp_receiver): Restore the PIC register.
+ (casesi): New insn.
+ (call): Adjust non-PIC addresses.
+ (int_label, GOTaddr2picreg): New expands.
+ (am33_loadPC): New insn.
+ (mn10300_loadPC): New expand.
+ (call_next_insn): New insn.
+ (add_GOT_to_pic_reg): New expand.
+ (symGOT2reg, symGOT2reg_i): New expands.
+ (symGOTOFF2reg, symGOTOFF2reg_i): New expands.
+ (sym2PIC, sym2PLT): New expands.
+
+2003-07-09 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.h (PREDICATE_CODES): Define.
+ 2001-05-01 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
+ to flag_unsafe_math_optimizations.
+ 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.c (expand_prologue): Mark
+ FP-register-saving insns as frame-related.
+ 2001-02-13 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.c
+ (mn10300_get_live_callee_saved_regs): Don't search past
+ LAST_EXTENDED_REGNUM.
+ (mn10300_gen_multiple_store, store_multiple_operation): Likewise.
+ * config/mn10300/mn10300.md: Remove excessive line breaks from
+ `@' output patterns that were accounted as additional
+ alternatives.
+ * config/mn10300/mn10300.md, config/mn10300/mn10300.c:
+ Re-introduce changes accidentally removed in Richard Sandiford's
+ 2000-12-05's patch.
+ * config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
+ Re-instate am33-2 lost in merge from net GCC.
+ 2000-08-26 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
+ floating-point registers.
+ 2000-08-07 Alexandre Oliva <aoliva@redhat.com>
+ * config/mn10300/mn10300.md (movdf): Revert some am33-specific
+ pessimizations that had gone in on 2000-05-08.
+ 2000-06-28 Graham Stott <grahams@cygnus.co.uk>
+ * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
+ 2000-06-22 Graham Stott <grahams@cygnus.co.uk>
+ * config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
+ operand 0.
+ * (movhi): Likewise.
+ * (movsi): Likewise.
+ * (movsf): Likewise.
+ * (movdi): Likewise.
+ * (movdf): Likewise.
+ 2000-05-24 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.c (fp_regs_to_save): New function.
+ (can_use_return_insn, initial_offset): Add fp_regs_to_save.
+ (expand_prologue, expand_epilogue): Save and restore FP regs.
+ 2000-05-20 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
+ 2000-05-13 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
+ subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
+ Do not clobber cc0.
+ 2000-05-12 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
+ Discourage the two-argument, longer opcodes.
+ (addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
+ ones.
+ * config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
+ (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
+ * config/mn10300/mn10300.md (cmpsf): New pattern.
+ (branch): Test mdep.fpCC and output fbCC.
+ * config/mn10300/mn10300.c (print_operand): Output conditions.
+ (notice_cc_update): Recognize fcmp and set mdep.fpCC.
+ 2000-05-10 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
+ mulsf3, divsf3): Use the `F' constraint for FP values.
+ * config/mn10300/mn10300.c (const_1f_operand): New function.
+ * config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
+ * config/mn10300/mn10300.md (sqrtsf2): New expand.
+ (rsqrtsf2): New insn.
+ 2000-05-09 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.md (movdf): Oops, I missed it in my
+ previous check-in.
+ 2000-05-08 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.md (abssf2, negdf2): On
+ TARGET_AM33_2, expand to...
+ (abssf2_am33_2, negdf2_am33_2): New insns.
+ (addsf3, subsf3, mulsf3, divsf3): Likewise.
+ (fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
+ * config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
+ movdi, movdf): Added FP regs.
+ * invoke.texi (-mam33-2, -mno-am33-2): Document.
+ 2000-04-29 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
+ New macros.
+ (REGNO_AM33_2_FP_P): Renamed to...
+ (REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
+ (CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
+ 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
+ regs from GENERAL_REGS.
+ 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
+ * config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
+ * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
+ 2000-04-23 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
+ as FP_REGS.
+ 2000-04-21 Alexandre Oliva <aoliva@cygnus.com>
+ * config/mn10300/mn10300.h (OK_FOR_Q): New macro.
+ (EXTRA_CONSTRAINT): Added OK_FOR_Q.
+ * config/mn10300/mn10300.c (secondary_reload_class): Adjust.
+ * config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
+ * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
+ (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
+ AM33/2.0 floating-point registers.
+ (CONDITIONAL_REGISTER_USAGE): Adjust.
+ (enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
+ (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
+ (REG_CLASS_FROM_LETTER): Added `f' and `A'.
+ (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
+ * config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
+ (MULTILIB_DIRNAMES): Likewise.
+ * config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
+ `__AM33_2__' when `-mam33-2' is given.
+ (TARGET_AM33_2): Define.
+ (TARGET_SWITCHES): Adjust.
+ * config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
+ when appropriate.
+
+2003-07-09 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * doc/install.texi: Add missing @.
+
+2003-07-09 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
+
+2003-07-09 Aldy Hernandez <aldyh@redhat.com>
+
+ PR/11144
+ * config/i386/i386.c (ix86_function_arg_boundary): Remove abort.
+
+2003-07-09 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR bootstrap/11043
+ * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
+ "x-crtfini.o" with "crtinit.o", "crtfini.o".
+
+ * fixinc/inclhack.def (limits_ifndefs): Add select test.
+ * fixinc/fixincl.x: Rebuild.
+
+ * fixinc/inclhack.def (math_exception): Improve bypass and comment.
+ * fixinc/fixincl.x: Rebuild.
+
+2003-07-09 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * doc/install.texi (Configuration): Document the valgrind option
+ to --enable-checking.
+
+2003-07-09 Jan Hubicka <jh@suse.cz>
+
+ * objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
+
+2003-07-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * c-lex.c (cb_ident): Cast cstr.text to const char *.
+
+2003-07-09 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcov-io.h: Update documentation.
+ (GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
+ GCOV_NOTE_MAGIC.
+ (GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
+ (GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
+ (struct gcov_var): Change buffer's type. Add endian flag.
+ (gcov_open): Remove mode in libgcov.
+ (gcov_magic): Prototype.
+ * gcov-io.c (from_file): New.
+ (gcov_open): Clear endian flag.
+ (gcov_magic): New.
+ (gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
+ pointers.
+ (gcov_write_unsigned, gcov_write_counter, gcov_write_string,
+ gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
+ (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
+ * gcov-iov.c (main): Correct cast.
+ * coverage.c (read_counts_file): Use gcov_magic. Remove endianness
+ conversion.
+ (gcov_begin_output): Use GCOV_NOTE_MAGIC.
+ (coverage_init): Use GCOV_NOTE_SUFFIX.
+ * libgcov.c (gcov_version_mismatch): Remove endianness conversion.
+ Rename to gcov_version, and return flag.
+ (gcov_exit): Use gcov_version.
+ (__gcov_init): Use gcov_version.
+ * Makefile.in (coverageexts): Update.
+ * gcov.c (print_version): Remove endianness conversion.
+ (create_file_names): Use GCOV_NOTE_SUFFIX.
+ (read_graph_file): Use gcov_magic.
+ (read_count_file): Likewise.
+ * gcov-dump.c (dump_file): Remove endianness conversion, use
+ gcov_magic.
+
+2003-07-09 Nathan Sidwell <nathan@codesourcery.com>
+
+ * configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
+ coverage is on.
+ * configure: Regenerated.
+ * Makefile.in (ALL_CFLAGS): Correct its comment.
+
+2003-07-08 Mark Mitchell <mark@codesourcery.com>
+
+ * fold-const.c (make_range): Do not access operand 1 for a
+ zero-operand operator.
+
+2003-07-09 Neil Booth <neil@daikokuya.co.uk>
+
+ * toplev.c (warn_dummy, W_options): Die.
+ (display_help): Don't print W_options.
+ * common.opt: Add W_options help from toplev.c.
+
+2003-07-09 Andreas Jaeger <aj@suse.de>
+
+ * opts.c (wrap_help): Only pass int arguments as arguments to
+ printf's '*' modifier. Change argument of function.
+
+2003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * doc/invoke.texi: Fix misspelling of "@item".
+
+2003-07-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.md: Remove an old comment about
+ NOTICE_UPDATE_CC.
+
+2003-07-09 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_node_name): New function.
+ (dump_cgraph): Use it.
+ * cgraph.h (cgraph_dump_file): Declare.
+ (cgraph_node_name): Declare.
+ * cgraphunit.c: Include timevar.h
+ (cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
+ (cgraph_optimize_function): Use TV_INTEGRATION.
+ (cgraph_mark_local_functions): reorganize dumps.
+ (cgraph_mark_functions_to_inline_once): Likewise.
+ (cgraph_optimize): Likewise; use timevar.
+ * timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
+ * toplev.c (dump_file_index): Add DFI_cgraph.
+ (dump_file_info): Likewise.
+ (cgraph_dump_file): New global variable.
+ (do_compile): Open and close cgraph dump.
+ * invoke.texi (-d): Document new flag; renumber.
+
+2003-07-08 Roger Sayle <roger@eyesopen.com>
+
+ PR c/11370
+ * calls.c (emit_call_1): Don't bother popping the arguments off of
+ the stack after a noreturn function call; The adjustment is dead.
+ (expand_call): Likewise.
+
+2003-07-08 Geoffrey Keating <geoffk@apple.com>
+
+ * expr.c (MOVE_MAX_PIECES): Move from here...
+ * defaults.h (MOVE_MAX_PIECES): ... to here.
+
+2003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * Makefile.in (stage1-start): Handle an empty SUBDIRS.
+
+2003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * genattr.c (internal_dfa_insn_code): Don't prototype.
+ * genattrtab.c (attr_desc): Add `static_p' field.
+ (expand_units): Make blockage range and ready cost functions
+ static.
+ (write_attr_get): Don't add extern prototypes in C file. Mark
+ static functions as appropriate.
+ (find_attr, make_internal_attr): Initialize static_p.
+ * genattrtab.h (ATTR_STATIC): New macro.
+ * genautomata.c (output_internal_reset_func): Mark output function
+ as inline.
+ (make_internal_dfa_insn_code_attr): Mark output function as static.
+
+2003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * genattrtab.h: Add new macros for attr `special' flags.
+ * genattrtab.c (attr_desc): Reorder/resize fields better.
+ Use attr `special' macros in all calls to make_internal_attr.
+ * genautomata.c: Likewise.
+
+2003-07-09 Jan Hubicka <jh@suse.cz>
+
+ * c-common.c (c_estimate_num_insns_1): New static function.
+ (c_estimate_num_insns): New global function.
+ * c-common.h (DECL_NUM_STMTS): Rename to...
+ (DECL_ESTIMATED_INSNS): ... this.
+ (c_estimate_num_insns): Declare.
+ * c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
+ * c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
+ * c-semantics.c (add_stmt): Do not account statements.
+ * langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
+ New.
+ * langhooks.h (lang_hooks_for_tree_inlining): Add
+ estimate_num_insns
+ * params.def (max-inline-insns-auto, max-inline-insns-auto): set
+ to 100.
+ (max-inline-insns): set to 300.
+ (min-inline-insns): set to 10.
+ * tree-inline.c (struct inline_data): Rename inlined_stmts to
+ inlined-insns.
+ (INSNS_PER_STMT): Kill.
+ (inlinable_function_p): Compute and store body size.
+ (expand_call_inline): Likewise.
+ (optimize_inline_calls): Likewise.
+
+2003-07-08 James E Wilson <wilson@tuliptree.org>
+
+ PR target/10021
+ * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
+ loop over new variable t2 instead of t.
+
+2003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR bootstrap/11455
+ * config/i386/winnt.c: Replace use of error(), warning() with
+ error_with_decl(), warning_with_decl(), throughout.
+
+2003-07-08 Neil Booth <neil@daikokuya.co.uk>
+
+ * opts.c (wrap_help): Use unsigned int, not size_t.
+
+2003-07-08 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
+ as .file/.loc directives are incompatible with linker relaxation.
+
+2003-07-08 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
+ * fixinc/Makefile.in: Remove all references to gnu-regex.[och].
+ * fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
+ * fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
+ * fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
+ * fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
+ Escape { and } characters which are not part of range expressions.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
+
+2003-07-08 Steven Bosscher <steven@gcc.gnu.org>
+
+ PR c/1687
+ * tree-inline.c (find_alloca_call): Use
+ walk_tree_without_duplicates, instead of walk_tree.
+ (find_builtin_longjmp_call): Likewise.
+ * c-objc-common.c (c_cannot_inline_fn): Likewise.
+ * c-semantics.c (find_reachable_label): Likewise.
+
+2003-07-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/11420
+ * config/i386/i386.c (ix86_check_movabs): New function.
+ * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
+ * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
+ (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
+
+2003-07-08 Chris Demetriou <cgd@broadcom.com>
+
+ * Makefile.in (install-po): Cope with empty CATALOGS.
+
+2003-07-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
+ (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
+ (SECTION_FUNCTION_TEMPLATE): Delete.
+ * config/mips/elf.h: As for elf64.h.
+ (ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
+ * config/mips/linux.h: As for elf.h
+ * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
+ * config/mips/iris6.h (EXTRA_SECTIONS): Delete.
+ (EXTRA_SECTION_FUNCTIONS): Remove sdata_section. Remove the handling
+ of in_sdata from current_section_name and current_section_flags.
+ * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
+ * config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
+ (MASK_GP_OPT, TARGET_GP_OPT): Delete.
+ (MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
+ (TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
+ (SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
+ * config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
+ (TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
+ (mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
+ (override_options): Remove setting of MASK_GPOPT.
+ (mips_output_external): Use mips_in_small_data_p to check whether a
+ symbol needs an .extern directive. Don't emit such directives for
+ TARGET_EXPLICIT_RELOCS.
+ (mips_declare_object): Update accordingly.
+ (mips_select_rtx_section): Call named_section rather than
+ SMALL_DATA_SECTION.
+ (mips_select_section): Use default_elf_section_section for everything
+ except .text string constants.
+ (mips_in_small_data_p): New function.
+ (mips_encode_section_info): Remove small data handling.
+ (mips_unique_section): Delete.
+ (iris6_section_type_flags): New function.
+ * doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
+
+2003-07-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR Target/11453
+ * pa.md: Disparage all mtsar constraints.
+ (extzv, extv, insv): Don't fail on length of {32|64}.
+
+2003-07-08 Zack Weinberg <zack@codesourcery.com>
+
+ * system.h: Poison MAP_CHARACTER.
+ * config/i370/i370-protos.h (mvs_map_char): Delete.
+ * config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
+ * config/i370/i370.h (MAP_CHARACTER): Delete definition.
+ (ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.
+
+2003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * toplev.c (randomize): Correct call to time().
+
+2003-07-08 Jakub Jelinek <jakub@redhat.com>
+
+ * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
+ REG_EQUIV notes as well.
+
+2003-07-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/md.texi: Fix the description of addmodecc.
+
+2003-07-07 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (top_builddir): Set to "..", not ".".
+ (INTLLIBS, INTLDEPS): Delete.
+ (LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
+ (LIBDEPS): Add $(LIBICONV_DEP).
+ (LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
+ (INCLUDES): Replace -I../intl with @INCINTL@.
+ ($(top_builddir)/intl/libintl.a): Delete rule.
+ (stage2-start, stage3-start, stage4-start, stageprofile-start,
+ stagefeedback-start): Use $$ for variable to be evaluated by
+ shell, not make.
+ * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
+ HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
+ * aclocal.m4: sinclude ../config/progtest.m4. Add
+ contents of lcmessage.m4 from gettext distro.
+ * configure.in: Check for wchar.h and setlocale. Set
+ LIBICONV_DEP to the empty string and substitute it.
+ Call AM_LC_MESSAGES. Delete AC_ARG_ENABLE for --enable-nls;
+ this is handled elsewhere. Use ZW_GNU_GETTEXT_SISTER_DIR,
+ not CY_GNU_GETTEXT. Clear $LIBICONV if its text is included
+ in $LIBINTL, to avoid linking it twice.
+ * configure, config.in: Regenerate.
+
+2003-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * fixinc/mkfixinc.sh: Remove winnt support.
+ * fixinc/fixinc.winnt: Delete with extreme prejudice.
+
+2003-07-08 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in: Update.
+ * c-opts.c (c_common_handle_option): opt_text now contains the '-'.
+ * c.opt: Update documentation.
+ * common.opt: Add some help text.
+ * opts.c: Include intl.h.
+ (wrap_help, print_help): New.
+ (find_opt, handle_option, common_handle_option): opt_text now
+ contains the '-'. Use print_help to output help.
+ * opts.h (struct cl_option): New member "help".
+ * opts.sh: Update to handle help text output and to prepend
+ options with '-'.
+ * toplev.c (display_help): Remove some help text.
+
+2003-07-07 David Edelsohn <edelsohn@gnu.org>
+ Fariborz Jahanian <fjahanian@apple.com>
+
+ * configure.in: Test for PowerPC mfcr field support in assembler.
+ * config.in, configure: Regenderated.
+
+ * config/rs6000/power4.md: Add mfcrf reservation.
+ * config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
+ * config/rs6000/rs6000.c (mfcr_operation): Define.
+ (print_operand): Add 'Q' case for mfcrf.
+ * config/rs6000/rs6000.h (TARGET_MFCRF): New.
+ * config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
+ (movcc_internal1): Emit optional field operand for mfcr and set
+ "type" attribute appropriately.
+ (mfcr SCC): Likewise.
+ (movesi_from_cr_one): New.
+
+2003-07-07 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.md: Correct check-in of incorrect version.
+
+2003-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
+ adjacent stdio calls.
+ * c-decl.c (c_print_identifier): Likewise.
+ * mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
+ * print-rtl.c (print_rtx): Likewise.
+ * print-tree.c (print_node_brief, print_node): Likewise.
+ * system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
+
+ * configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
+ * config.in, configure: Regenerated.
+
+2003-07-07 Roger Sayle <roger@eyesopen.com>
+
+ PR target/10979
+ * config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
+ Changed to define_expand patterns that copy operand[1] to prevent
+ it from being clobbered before emitting an atan2?f3_1 insn.
+ (atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
+ patterns that actually specify the behaviour of x87's FPATAN.
+
+2003-07-07 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
+ clearing of SYMBOL_FLAG_LOCAL bit.
+ If vcall_offset fits into signed 16-bit immediate, use
+ one instruction for both addition and load.
+
+2003-07-07 Neil Booth <neil@daikokuya.co.uk>
+
+ * opts.c (common_handle_option): Correct handling of the
+ -falign- switches that do and don't take an argument.
+
+2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
+ today.
+ (pushhi1_h8300hs): Likewise.
+
+2003-07-07 Andreas Jaeger <aj@suse.de>
+
+ * genextract.c: Convert remaining prototypes to ISO C90.
+
+ * cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
+ * fold-const.c (fold_single_bit_test): Likewise.
+ * diagnostic.c (default_diagnostic_finalizer): Likewise.
+ * cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.
+
+ * gengtype.c (write_array): Generate ISO C90 prototypes.
+
+ * genflags.c (gen_proto): Generate ISO C90 prototypes.
+
+2003-07-07 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/11059
+ * expr.c (can_store_by_pieces): Return true if length is zero.
+ (store_by_pieces): If length is zero and endp is two, abort,
+ othwerise, if length is zero and endp is not two, return "to".
+ (clear_by_pieces): Do nothing if length is zero.
+ (clear_storage): Do nothing if length is zero.
+ (store_constructor): Simplify code when size is zero, or the
+ target has already been cleared. This avoids emitting a
+ blockage instruction when initializing empty structures.
+
+2003-07-07 Andreas Jaeger <aj@suse.de>
+
+ * mips-tfile.c: Convert prototypes to ISO C90.
+ * mips-tdump.c: Convert prototypes to ISO C90.
+
+2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
+
+ * rtl.h (emit_line_note): Take a location_t.
+ (emit_line_note_force): Remove.
+ (set_file_and_line_for_statement): Take a location_t.
+ * tree.g (emit_line_note): Take a location_t.
+ * emit-rtl.c (emit_line_note): Take a location_t.
+ (emit_line_note_force): Remove.
+ * function.c (init_function_start): Adjust emit_line_note call.
+ (expand_function_end): Use force_next_line_note, not
+ emit_line_note_force.
+ * c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
+ * c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
+ genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
+ genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
+ genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
+ genrtl_continue_stmt, genrtl_switch_stmt,
+ genrtl_asm_stmt): Likewise.
+ * expr.c (expand_expr): Likewise.
+ * integrate.c (expand_inline_function): Likewise.
+ * stmt.c (set_file_and_line_for_stmt): Take a location_t.
+ (expand_decl_init): Adjust emit_line_note call.
+
+2003-07-07 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/darwin-tramp.asm: Fix trampolines. PR 10900.
+
+2003-07-07 Andreas Jaeger <aj@suse.de>
+
+ * config/i386/i386-protos.h: Convert prototypes to ISO C90.
+ * config/i386/i386.c: Likewise.
+
+2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Use gen_int_mode instead of
+ GEN_INT (trunc_int_for_mode (...)).
+
+2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
+ 2 bytes and then subtract 2 from the stack pointer.
+ (pushhi1_h8300hs): Likewise.
+
+2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
+
+ * configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
+ -frandom-seed.
+ * configure: Regenerated.
+ * Makefile.in: Remove extraneous comment.
+ * toplev.c (randomize): Protect against potential multiple calls.
+ * doc/invoke.texi (-frandom-seed): Document use for in coverage
+ files.
+
+2003-07-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11198
+ * alias.c (objects_must_conflict_p): Return 1 if the types have
+ the same alias set, not if the alias sets only conflict.
+
+2003-07-07 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
+ (convert_cset): Change inbuf to type ICONV_CONST char.
+ * Makefile.in (LIBS): Add LIBICONV.
+
+ * doc/invoke.texi (-falign-functions): Document that
+ when n is zero then a machine-dependent default is used.
+ (-falign-labels): Document that when n is zero then a
+ machine-dependent default is used and that -falign-labels =1
+ is equivalent to -fno-align-labels.
+ (-falign-loops): Likewise.
+ (-falign-jumps): Likewise.
+
+2003-07-06 Art Haas <ahaas@airmail.net>
+
+ * f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
+ initializer syntax.
+
+2003-07-06 James E Wilson <wilson@tuliptree.org>
+
+ PR optimization/9812
+ * rtl.h (mem_for_const_double): Delete prototype.
+ * varasm.c (mem_for_const_double): Delete function.
+ * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
+ config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
+ (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
+ * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
+ (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
+ * config/m68k/m68k.md (movxf): Add reload_in_progress guard. Add
+ comment about confused support for XFmode constants.
+
+2003-07-07 Jan Hubicka <jh@suse.cz>
+
+ * cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.
+
+2003-07-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c: Fix comment typos.
+ * config/h8300/h8300.md: Likewise.
+ * config/i386/athlon.md: Likewise.
+ * config/i386/i386.c: Likewise.
+ * config/i386/pentium.md: Likewise.
+ * config/ia64/ia64.c: Likewise.
+ * config/ia64/itanium1.md: Likewise.
+ * config/ia64/itanium2.md: Likewise.
+ * config/m32r/m32r.md: Likewise.
+ * config/m68hc11/m68hc11.c: Likewise.
+ * config/mcore/mcore.c: Likewise.
+ * config/mips/sr71k.md: Likewise.
+ * config/mips/t-iris5-as: Likewise.
+ * config/mmix/mmix.h: Likewise.
+ * config/ns32k/ns32k.h: Likewise.
+ * config/ns32k/NOTES: Fix a typo.
+
+2003-07-06 Andreas Jaeger <aj@suse.de>
+
+ * stmt.c: Convert remaining prototypes to ISO C90.
+ * cfglayout.c: Likewise.
+ * dbxout.c: Likewise.
+ * gcc.c: Likewise.
+ * genemit.c: Likewise.
+
+ * basic-block.h: Convert prototypes to ISO C90.
+ * c-parse.in: Likewise.
+ * c-pragma.h: Likewise.
+ * c-typeck.c: Likewise.
+ * cfghooks.h: Likewise.
+ * cfgloopanal.c: Likewise.
+ * dbxout.h: Likewise.
+ * debug.h: Likewise.
+ * dwarf2asm.h: Likewise.
+ * gcov.c: Likewise.
+ * gengtype-lex.l: Likewise.
+ * sched-int.h: Likewise.
+ * timevar.c: Likewise.
+
+2003-07-06 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.h (c_comon_handle_filename,
+ c_common_missing_arguement): New.
+ * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
+ LANG_HOOKS_MISSING_ARGUMENT): New.
+ * c-opts.c (missing_arg): Rename c_common_missing_argument,
+ update to be an appropriate langhook.
+ (c_common_handle_option): Don't handle filenames.
+ (c_common_handle_filename): New.
+ * hooks.c (hook_void_constcharptr,
+ hook_bool_constcharptr_size_t_false): New.
+ * hooks.h (hook_void_constcharptr,
+ hook_bool_constcharptr_size_t_false): New.
+ * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
+ LANG_HOOKS_MISSING_ARGUMENT): New.
+ (LANG_HOOKS_INITIALIZER): Update.
+ * langhooks.h (struct lang_hooks): Add handle_filename and
+ missing_argument.
+ * opts.c (handle_option): Don't handle filenames here, but ...
+ (handle_options): ... here.
+ (common_handle_option): Don't handle missing arguments here.
+ * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
+ LANG_HOOKS_MISSING_ARGUMENT): New.
+
+2003-07-06 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makfile.in: Remove traces of mbchar.
+ * c-parse.in (MULTIBYTE_CHARS): Remove.
+ * config.in (MULTIBYTE_CHARS): Remove.
+ * configure: Remove --enable-mbchar.
+ * configure.in: Remove --enable-mbchar.
+ * mbchar.c, mbchar.h: Remove.
+ * system.h: Poison MULTIBYTE_CHARS.
+ * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
+ * config/linux.h (MULTIBYTE_CHARS): Remove.
+ * config/svr4.h (MULTIBYTE_CHARS): Remove.
+ * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
+
+2003-07-06 Andreas Jaeger <aj@suse.de>
+
+ * varray.c (varray_check_failed): Fix typo.
+
+ * unroll.c: Convert prototypes to ISO C90.
+ * varasm.c: Likewise.
+ * varray.c: Likewise.
+ * varray.h: Likewise.
+ * vmsdbgout.c: Likewise.
+ * xcoffout.c: Likewise.
+ * xcoffout.h: Likewise.
+
+2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gcov-io.h: Add a local time stamp.
+ (struct gcov_info): Add stamp field.
+ (gcov_truncate): New.
+ * coverage.c (read_counts_file): Skip the stamp.
+ (coverage_begin_output): Write the stamp.
+ (build_gcov_info): Declare and init the stamp.
+ (coverage_finish): Only unlink data file, if stamp is zero.
+ * gcov-dump.c (dump_file): Dump the stamp.
+ * gcov.c (bbg_stamp): New.
+ (release_structures): Clear bbg_stamp.
+ (read_graph_file): Read stamp.
+ (read_count_file): Check stamp.
+ * libgcov.c (gcov_exit): Check stamp and truncate if needed.
+
+2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
+
+ * tree.h (default_flag_random_seed): Remove.
+ * toplev.h (local_tick): Declare.
+ * tree.c (flag_random_seed, default_flag_random_seed): Move to
+ toplev.c.
+ (append_random_chars): Don't call default_flag_random_seed.
+ * toplev.c (flag_random_seed): Define here. Set local_tick.
+ (local_tick): Define.
+ (randomize): New, moved from tree.c.
+ (print_switch_values): Adjust.
+ (toplev_main): Call randomize.
+
+2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
+
+ * tree.h (crc32_string): Declare.
+ * tree.c (append_random_chars): Remove.
+ (crc32_string): New.
+ (get_file_function_name_long): Use crc32_string here.
+
+2003-07-06 Andreas Jaeger <aj@suse.de>
+
+ * gcc.c: Convert prototypes to ISO C90.
+ * gcc.h: Likewise.
+ * gcov-dump.c: Likewise.
+ * gcov-iov.c: Likewise.
+ * gcse.c: Likewise.
+ * genattrtab.h: Likewise.
+ * ggc.h: Likewise.
+ * global.c: Likewise.
+ * graph.c: Likewise.
+ * graph.h: Likewise.
+ * hosthooks.h: Likewise.
+ * hooks.h: Likewise.
+ * hooks.c: Likewise.
+ * hashtable.h: Likewise.
+ * hashtable.c: Likewise.
+ * haifa-sched.c: Likewise.
+ * integrate.h: Likewise.
+ * integrate.c: Likewise.
+ * input.h: Likewise.
+ * ifcvt.c: Likewise.
+ * jump.c: Likewise.
+ * langhooks-def.h: Likewise. Add extern to prototypes.
+ * langhooks.c: Likewise.
+ * langhooks.h: Likewise.
+ * lcm.c: Likewise.
+ * local-alloc.c: Likewise.
+ * loop-init.c: Likewise.
+ * loop-unroll.c: Likewise.
+ * loop-unswitch.c: Likewise.
+ * loop.c: Likewise.
+ * loop.h: Likewise. Add extern to prototypes.
+ * machmode.h: Likewise.
+ * main.c: Likewise.
+ * mbchar.c: Likewise.
+ * mbchar.h: Likewise.
+ * mkdeps.c: Likewise.
+ * mkdeps.h: Likewise.
+ * optabs.c: Likewise.
+ * optabs.h: Likewise.
+ * output.h: Likewise.
+ * gccspec.c: Likwise.
+ * postreload.c: Likewise.
+ * prefix.c: Likewise.
+ * prefix.h: Likewise.
+ * print-rtl.c: Likewise.
+ * print-tree.c: Likewise.
+ * profile.c: Likewise.
+ * read-rtl.c: Likewise.
+ * real.c: Likewise.
+ * real.h: Likewise.
+ * recog.c: Likewise.
+ * recog.h: Likewise.
+ * reg-stack.c: Likewise.
+ * regclass.c: Likewise.
+ * regmove.c: Likewise.
+ * regrename.c: Likewise.
+ * regs.h: Likewise.
+ * reload.c: Likewise.
+ * reload.h: Likewise.
+ * reload1.c: Likewise.
+ * reorg.c: Likewise.
+ * resource.c: Likewise.
+ * resource.h: Likewise.
+ * rtl-error.c: Likewise.
+ * rtl.c: Likewise.
+ * rtl.h: Likewise.
+ * rtlanal.c: Likewise.
+ * sbitmap.c: Likewise.
+ * sbitmap.h: Likewise.
+ * scan-decls.c: Likewise.
+ * scan.c: Likewise.
+ * sched-deps.c: Likewise.
+ * sched-ebb.c: Likewise.
+ * sched-int.h: Likewise.
+ * sched-rgn.c: Likewise.
+ * sched-vis.c: Likewise.
+ * sibcall.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * sreal.c: Likewise.
+ * sreal.h: Likewise.
+ * ssa-ccp.c: Likewise.
+ * ssa-dce.c: Likewise.
+ * ssa.c: Likewise.
+ * ssa.h: Likewise.
+ * stack.h: Likewise.
+ * stmt.c: Likewise.
+ * stor-layout.c: Likewise.
+ * stringpool.c: Likewise.
+ * target.h: Likewise.
+ * timevar.c: Likewise.
+ * timevar.h: Likewise.
+ * tlink.c: Likewise.
+ * tracer.c: Likewise.
+ * tree-inline.c: Likewise.
+ * tree-inline.h: Likewise.
+ * tree.c: Likewise.
+ * tree.h: Likewise.
+
+2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c (nonzero_bits1): Fix a warning.
+
+2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (compute_mov_length): Correct the
+ length of loading CONST0_RTX (SFmode).
+
+2003-07-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ * toplev.c (output_clean_symbol_name): Remove.
+ * toplev.h (output_clean_symbol_name): Remove.
+ * config/alpha/alpha.c (unicosmk_output_module_name): Use
+ lbasename & clean_symbol_name.
+
+2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * ggc.h: Follow spelling conventions.
+ * config/i386/i386.c: Likewise.
+ * config/i386/winnt.c: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+
+2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bt-load.c: Fix comment typos.
+ * c-incpath.c: Likewise.
+ * cfg.c: Likewise.
+ * cfgcleanup.c: Likewise.
+ * cfgloop.h: Likewise.
+ * cfgloopmanip.c: Likewise.
+ * cfgrtl.c: Likewise.
+ * diagnostic.h: Likewise.
+ * dwarfout.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * et-forest.c: Likewise.
+ * et-forest.h: Likewise.
+ * expr.c: Likewise.
+ * gcse.c: Likewise.
+ * genattr.c: Likewise.
+ * jump.c: Likewise.
+ * langhooks.h: Likewise.
+ * local-alloc.c: Likewise.
+ * loop-unroll.c: Likewise.
+ * loop-unswitch.c: Likewise.
+ * ra-build.c: Likewise.
+ * regclass.c: Likewise.
+ * regmove.c: Likewise.
+ * rtl.def: Likewise.
+ * rtlanal.c: Likewise.
+ * sched-ebb.c: Likewise.
+ * sched-rgn.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * ssa.c: Likewise.
+ * tracer.c: Likewise.
+ * tree.c: Likewise.
+
+2003-07-05 Zack Weinberg <zack@codesourcery.com>
+
+ * cppcharset.c: Use the correct return type for the fallback iconv
+ macro.
+
+2003-07-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ Blame to Jan Hubicka <jh@suse.cz>
+ * cfglayout.c (record_effective_endpoints): Split insns before
+ first basic block correctly.
+
+2003-07-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
+ bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
+ if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
+
+2003-07-05 Andreas Jaeger <aj@suse.de>
+
+ * genattrtab.c (write_attr_get): Revert part of last patch to
+ always write out a prototype.
+
+ * genemit.c (gen_split): Readd lost unused attributes in last
+ patch.
+
+2003-07-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgloopmanip.c (force_single_succ_latches): Force latch to be
+ different from header.
+
+2003-07-05 Andreas Schwab <schwab@suse.de>
+
+ * config/m68k/m68k.c: Remove code protected by CRDS.
+ * config/m68k/m68k.md: Likewise.
+
+2003-07-05 Neil Booth <neil@daikokuya.co.uk>
+
+ PR driver/11417
+ * c-opts.c (permit_fortran_options): New.
+ (c_common_init_options): Accept fortran front end options if
+ it looks like we might be preprocessing Fortran.
+ (c_common_handle_option): Don't reject switch if permit_fotran_options.
+
+2003-07-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * genattr.c (internal_dfa_insn_code): Output prototype.
+ * genattrtab.c: Don't output unnecessary decls, output in ISO C.
+ * genautomata.c: Likewise.
+ * genconditions.c: Likewise.
+ * genemit.c: Likewise.
+ * genextract.c: Likewise.
+ * gengenrtl.c: Likewise.
+ * gengtype.c: Likewise.
+ * genopinit.c: Likewise.
+ * genoutput.c: Likewise.
+ * genpeep.c: Likewise.
+ * genrecog.c: Likewise.
+
+2003-07-04 Zack Weinberg <zack@codesourcery.com>
+
+ * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
+ (struct cpp_options): Add narrow_charset, wide_charset,
+ bytes_big_endian fields. Remove EBCDIC field.
+ (cpp_init_iconv, cpp_interpret_string): New external interfaces.
+
+ * cpphash.h: Include <iconv.h> if we have it, otherwise
+ provide a dummy definition of iconv_t.
+ (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
+ (_cpp_valid_ucn): Update prototype.
+ (_cpp_destroy_iconv): New prototype.
+
+ * doc/cpp.texi: Document character set handling.
+ * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
+ * doc/extend.texi: Delete entire section on multiline strings.
+ Rewrite section on __FUNCTION__ etc now that these are
+ variables in C.
+
+ * cppucnid.tab, cppucnid.pl: New files.
+ * cppucnid.h: New generated file.
+ * cppcharset.c: Include cppucnid.h. Lots of commentary added.
+ (iconv_open, iconv, iconv_close): Provide dummy definitions
+ if !HAVE_ICONV.
+ (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
+ _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
+ emit_numeric_escape, convert_hex, convert_oct, convert_escape,
+ cpp_interpret_string, narrow_str_to_charconst,
+ wide_str_to_charconst): New.
+ (ucn_valid_in_identifier): Use a binary search through the
+ ucnranges table defined in cppucnid.h, not a long chain of if
+ statements.
+ (_cpp_valid_ucn): Add a limit pointer. Downgrade "universal
+ character names are only valid in C++ and C99" to a warning.
+ Issue the "meaning of \[uU] is different in traditional C"
+ warning here. Take care not to let iconv see an invalid UCS
+ value if we get a malformed UCN. Issue an error if we don't
+ have iconv.
+ (cpp_interpret_charconst): Moved here from cpplex.c. Use
+ cpp_interpret_string to do the heavy lifting.
+
+ * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
+ narrow_charset, wide_charset fields of options structure.
+ (cpp_destroy): Call _cpp_destroy_iconv.
+ * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
+ (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
+ (cpp_interpret_charconst): Moved to cppcharset.c.
+ * cpplib.c (dequote_string): Delete.
+ (interpret_string_notranslate): New.
+ (do_line, do_linemarker): Use interpret_string_notranslate.
+
+ * Makefile.in (cppcharset.o): Depend on cppucnid.h.
+
+ * c-common.c (fname_string, combine_strings): Delete.
+ * c-common.h (fname_string, combine_strings): Delete prototypes.
+ * c-lex.c (ignore_escape_flag): Delete.
+ (cb_ident): Use cpp_interpret_string, not lex_string.
+ (get_nonpadding_token): New function.
+ (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
+ Adjust calls to lex_string. Don't write *value twice.
+ (lex_string): Now handles string constant concatenation.
+ Most of the work handed off to cpp_interpret_string.
+ Call fix_string_type here.
+ * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
+ FUNC_NAME, throughout.
+ (OBJC_STRING): New token type.
+ (primary:STRING): No need to call fix_string_type here.
+ (primary:objc_string): Make that OBJC_STRING.
+ (objc_string nonterminal): Delete.
+ (yylexname): Delete code to handle fake string constants.
+ (yylexstring): Delete entirely.
+ (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING. No need
+ to handle CPP_ATSIGN.
+
+ * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
+ * c-opts.c (missing_arg, c_common_handle_option): Handle
+ OPT_fexec_charset_ and OPT_fwide_exec_charset_.
+ (c_common_init): Set cpp_opts->bytes_big_endian, not
+ cpp_opts->EBCDIC. Call cpp_init_iconv.
+ (print_help): Document -fexec-charset= and -fexec-wide-charset=.
+ (TARGET_EBCDIC): Delete default definition.
+
+ * objc/objc-act.c (build_objc_string_object): No need to
+ handle string constant concatenation.
+
+2003-07-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/install.texi: Fix typos.
+ * doc/invoke.texi: Likewise.
+ * doc/tm.texi: Likewise.
+
+2003-07-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/pa/fptr.c: Fix comment typos.
+ * config/pa/pa-64.h: Likewise.
+ * config/pa/pa.c: Likewise.
+ * config/pa/pa.h: Likewise.
+ * config/rs6000/603.md: Likewise.
+ * config/rs6000/7xx.md: Likewise.
+ * config/rs6000/darwin.h: Likewise.
+ * config/rs6000/freebsd.h: Likewise.
+ * config/rs6000/rs6000.c: Likewise.
+ * config/rs6000/rs6000.md: Likewise.
+ * config/rs6000/spe.h: Likewise.
+
+2003-07-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/2064.md: Change GNU CC to GCC.
+ * config/s390/2084.md: Likewise.
+ * config/s390/fixdfdi.h: Likewise.
+ * config/s390/linux.h: Likewise.
+ * config/s390/s390-modes.def: Likewise.
+ * config/s390/s390-protos.h: Likewise.
+ * config/s390/s390.c: Likewise.
+ * config/s390/s390.h: Likewise.
+ * config/s390/s390.md: Likewise.
+ * config/s390/s390x.h: Likewise.
+
+2003-07-04 Jeff Law <law@redhat.com>
+
+ PR c/11428
+ * expr.c (do_store_flag): Pass in the correct result type
+ when calling fold_single_bit_test.
+ * fold-const.c (fold_single_bit_test): Use result_type for the
+ result when folding a sign bit test.
+
+2003-07-04 Neil Booth <neil@daikokuya.co.uk>
+
+ * opts.c (common_handle_options): Negate sense of -falign- switches.
+
+2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * Makefile.in: Replace PWD with PWD_COMMAND.
+
+2003-07-04 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgloopanal.c (count_strange_loop_iterations): New static function.
+ (constant_iterations, count_loop_iterations, simple_loop_exit_p):
+ Handle strange loops.
+
+2003-07-04 Toon Moene <toon@moene.indiv.nluug.nl>
+
+ * install.texi: Even the g77 manpage is derived from
+ the full g77 manual.
+
+2003-07-04 Zack Weinberg <zack@codesourcery.com>
+
+ * ABOUT-NLS: Delete.
+ * intl: Delete entire directory.
+ * aclocal.m4: Include ../config/gettext.m4. Delete
+ AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
+ AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
+ * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
+ Remove intl/Makefile from all_outputs.
+ * configure, config.in: Regenerate.
+ * Makefile.in: Expunge all references to intl subdirectory.
+ Add -I../intl to INCLUDES.
+ * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
+
+2003-07-04 Roger Sayle <roger@eyesopen.com>
+
+ * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
+ * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
+
+2003-07-04 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR c++/5287, PR c++/7910, PR c++/11021
+ * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
+ dllimport attribute if function is defined at declaration, but
+ report error instead. Likewise for dllimport'd variable
+ definitions. Set implicit TREE_PUBLIC for dllimport'd variables
+ declared within functions, Report error if dllimport or dllexport
+ symbol is not global.
+ (i386_pe_dllimport_p): Ignore dllimport attribute of functions
+ if defined after declaration or if inlined. Don't allow definition
+ of static data members of C++ classes. Don't dllimport virtual
+ methods.
+ (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
+ (i386_pe_mark_dllimport): Remove unnecessary checks.
+ (i386_pe_encode_section_info): Warn if the dllimport attribute
+ and symbol prefix have been instantiated and then overridden.
+
+ * doc/extend.texi: Document dllimport and dllexport attributes.
+
+ * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
+
+2003-07-03 Uwe Stieber <uwe@kaos-group.de>
+
+ * config/kaos.h (CPP_PREDEFINES): Delete.
+ (TARGET_OS_CPP_BUILTINS): New.
+
+2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-aux-info.c: Include toplev.h after c-tree.h.
+ * c-common.c: Likewise.
+ (GCC_DIAG_STYLE): Undef.
+ * c-semantics.c (GCC_DIAG_STYLE): Define.
+ * c-tree.h (GCC_DIAG_STYLE): Likewise.
+ * diagnostic.h (inform): Move prototype to toplev.h.
+ * jump.c: Include diagnostic.h before toplev.h.
+ * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
+ (warning, error, fatal_error, pedwarn, sorry, inform,
+ error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
+
+2003-07-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
+ at all if edge is not specified.
+ (can_copy_bbs_p, copy_bbs): New.
+ * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
+ * cfgloop.c (get_loop_body): Comment more precisely.
+ * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
+ (scale_bbs_frequencies): Fix comment typo.
+ (can_duplicate_loop_p): Use can_copy_bbs_p.
+ (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
+
+2003-07-03 Devang Patel <dpatel@apple.com>
+
+ * c-opts.c (c_common_parse_file): Remove extra
+ debug_hooks->start_source_file call.
+
+2003-07-03 Roger Sayle <roger@eyesopen.com>
+
+ * real.c (real_trunc, real_floor, real_ceil): New functions
+ to implement trunc, floor and ceil respectively.
+ * real.h (real_trunc, real_floor, real_ceil): Prototype here.
+ * builtins.c (integer_valued_real_p): New function to test if
+ a floating point expression has an integer valued result.
+ (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
+ foo(x) where foo is an integer rounding function. Similarly,
+ optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
+ (double)(int)x when both foo and bar are integer rounding
+ functions and we don't need to honor errno.
+ (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
+ New functions to fold trunc, floor and ceil.
+ (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
+ fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
+ to fold BUILT_IN_CEIL*.
+ * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
+ the remaining integer rounding functions.
+
+2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_partial_nregs): Use
+ SPARC_INT_ARG_MAX to determine where to split unnamed
+ complex FP arguments.
+
+2003-07-03 Jan Hubicka <jh@suse.cz>
+
+ * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
+ * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
+ (merge_blocks_move_predecessor_nojumps,
+ merge_blocks_move_successor_nojumps): Use merge_blocks.
+ (try_optimize_cfg): Use merge_blocks_move.
+ * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
+ (merge_blocks_nomove): Rename to rtl_merge_blocks.
+ (cfg_layout_create_basic_block): New.
+ (rtl_can_merge_blocks): New.
+ (cfg_layout_split_block): Do not alloc aux by hand.
+ * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
+ merge_blocks.
+ (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
+ * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
+ * cfgloopmanip.c (loop_split_edge_with): Likewise.
+ * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
+
+ * basic-block.h (basic_block_def): Add field 'rbi'.
+ * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
+ find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
+ * cfg.c (entry_exit_blocks): Add new field.
+ * cfglayout.c: Include alloc-pool.h;
+ (cfg_layout_pool): New.
+ (record_effective_endpoints, fixup_reorder_chain,
+ fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
+ of rbi.
+ (cfg_layout_initialize_rbi): New function.
+ (cfg_layout_initialize): Use it.
+ (cfg_layout_finalize): Clear rbi fields.
+ * cfglayout.h (RBI): Kill.
+ (cfg_layout_initialize_rbi): Declare.
+ * cfgloopmanip.c (copy_bbs): Use rbi.
+ (record_exit_edges): Likewise.
+ (duplicate_loop_to_header_edge): Likewise.
+ * cfgrtl.c (cfg_layout_create_basic_block): Use
+ cfg_layout_initialize_rbi.
+ (cfg_layout_split_block): Use rbi.
+ (cfg_layout_delete_block): Likewise.
+ * loop-init.c (loop_optimizer_finalize): Likewise.
+ * loop-unswitch.c (unswitch_loop): Likewise.
+ * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
+
+ * cfgrtl.c: Update comments.
+ (try_redirect_by_replacing_jump): New argument.
+ (redirect_branch_edge): Break out from ...
+ (rtl_redirect_edge_and_branch): ... this one.
+ (update_cfg_after_block_merging): Break out from ...
+ (rtl_merge_blocks): ... this one.
+ (cfg_layout_split_edge): New.
+ (cfg_layout_merge_blocks): New.
+ (cfg_layout_can_merge_blocks_p): New.
+ (cfg_layout_redirect_edge_and_branch): Reorganize.
+ (cfg_layout_rtl_cfg_hooks): Fill in.
+ (cfg_layout_delete_block): Kill barriers.
+ * cfganal.c (can_fallthru): Deal with exit blocks
+ * cfglayout.c (cfg_layout_function_header): New function
+ (record_effective_endpoints): Record function header.
+ (fixup_reorder_chain): Fixup dead jumptables; place header
+
+ * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
+ * bb-reorder.c (cfg_layout_initialize): Update call.
+ * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
+ edges in cfglayout mode.
+ * cfglayout.c (cleanup_unconditional_jumps): Kill.
+ (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
+ * cfglayout.h (cfg_layout_initialize): Update prototype.
+ * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
+ * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
+ * flow.c (propagate_block): Do not crash when basic block ends
+ by first insn in the chain.
+ * loop-init.c (loop_optimizer_init): First enter cfglayout mode; later
+ do loop discovery.
+ * tracer.c (tracer): Update call of cfg_layout_initialize.
+
+2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in: Use dependency variables in lieu of explicit
+ files throughout.
+
+2003-07-03 Steven Bosscher <steven@gcc.gnu.org>
+
+ * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
+ * tree.h: ...to here.
+
+2003-07-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/s390/2064.md: Fix comment typos.
+ * config/s390/2084.md: Likewise.
+ * config/s390/s390.c: Likewise.
+ * config/s390/s390.md: Likewise.
+ * config/sh/sh.c: Likewise.
+ * config/sh/sh.h: Likewise.
+ * config/sh/sh.md: Likewise.
+ * config/sparc/sparc.c: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/sparc/sparc.md: Likewise.
+ * config/stormy16/stormy16.c: Likewise.
+ * config/stormy16/stormy16.h: Likewise.
+ * config/stormy16/stormy-abi: Fix a typo.
+
+2003-07-03 Kelley Cook <kelleycook@wideopenwest.org>
+
+ * Makefile.in (ifcvt.o): Depend on OPTABS_H.
+
+2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/mips/mips.h (save_argv): Delete.
+
+2003-07-03 Roger Sayle <roger@eyesopen.com>
+
+ PR target/10700
+ * fold-const.c (extract_muldiv_1): There's nothing that can be done
+ if the expression is a SAVE_EXPR.
+
+2003-07-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.c: Fix comment typos.
+ * config/m68hc11/m68hc11.c: Likewise.
+ * config/m68hc11/m68hc11.h: Likewise.
+ * config/m68k/m68k.c: Likewise.
+ * config/mcore/mcore.c: Likewise.
+ * config/mcore/mcore.h: Likewise.
+ * config/mcore/mcore.md: Likewise.
+ * config/mips/mips.c: Likewise.
+ * config/mips/mips.h: Likewise.
+ * config/mips/mips.md: Likewise.
+ * config/mips/netbsd.h: Likewise.
+ * config/mn10300/mn10300.c: Likewise.
+
+2003-07-03 Andreas Schwab <schwab@suse.de>
+
+ * dbxout.c (pending_bincls): Move decl down inside
+ DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
+
+2003-07-02 Nathan Sidwell <nathan@codesourcery.com>
+
+ * rtl.h (NOTE_DATA): Refer to whole union.
+ * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
+
+2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11381
+ * simplify-rtx.c (simplify_relational_operation): Check that
+ two equal operands have no side-effects before simplifying
+ the comparison.
+
+2003-07-02 Jeff Law <law@redhat.com>
+
+ * expr.c (do_store_flag): Remove special case folding for
+ single bit tests. Instead call back into the commonized folder
+ routine.
+ * fold-const.c (fold_single_bit_test): New function, mostly
+ extracted from do_store_flag, with an additional case extracted
+ from fold.
+ (fold): Call fold_single_bit_test appropriately.
+ * tree.h (fold_single_bit_test): Prototype.
+
+2003-07-02 Zack Weinberg <zack@codesourcery.com>
+
+ * system.h: Include filenames.h.
+ (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
+ (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
+ define based on HAVE_DOS_BASED_FILE_SYSTEM.
+ * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
+ * config/i386/xm-mingw32.h: Don't define
+ HAVE_DOS_BASED_FILE_SYSTEM,
+ DIR_SEPARATOR, or DIR_SEPARATOR_2.
+ * doc/hostconfig.texi: Update to match.
+
+ * cppfiles.c, gcc.c, gensupport.c, protoize.c,
+ config/i386/cygwin.h:
+ Use IS_ABSOLUTE_PATH throughout.
+ * gcc.c (DIR_UP): Delete, unused.
+ * protoize.c (IS_SAME_PATH): Define in terms of
+ FILENAME_CMP.
+ (is_abspath): Delete.
+
+2003-07-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/emmintrin.h: Fix comment typos.
+ * config/i386/i386.c: Likewise.
+ * config/i386/i386.h: Likewise.
+ * config/i386/sco5.h: Likewise.
+ * config/ia64/ia64.c: Likewise.
+ * config/ia64/itanium2.md: Likewise.
+
+2003-07-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
+ DBX_USE_BINCL.
+ (emit_bincl_stab): Same.
+ (emit_pending_bincls): Same.
+
+2003-07-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (compute_mov_length): Fix the length of
+ loading CONST0_RTX (SFmode).
+ * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
+ 'G' to CONST0_RTX (SFmode).
+ * config/h8300/h8300.md (movsf_h8300): Change the first
+ constraint to 'G'.
+ (movsf_h8300h): Likewise.
+
+2003-07-02 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-common.h (c_common_init_options): New prototype.
+ * c-opts.c (deferred_size): Remove.
+ (defer_opt): Array is now pre-allocated.
+ (c_common_init_options): Pre-allocate deferred_opts. Make
+ lang_flags unsigned.
+ (push_command_line_options): Free deferred_opts.
+ * hooks.c (hook_uint_uint_constcharptrptr_0): New.
+ * hooks.h (hook_uint_uint_constcharptrptr_0): New.
+ * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
+ * langhooks.h (struct lang_hooks): New prototype for init_options.
+ * main.c (main): Cast argv.
+ * opts.c (handle_option, handle_options): Update prototypes.
+ (decode_options): save_argc, save_argv are not global. Constify.
+ * opts.h (decode_options): New prototype.
+ * toplev.c (general_init): New protoype.
+ (save_argv): Make static.
+ (save_argc): Remove.
+ (print_switch_values, general_init): Constify.
+ (toplev_main): Save argv.
+ * toplev.h (toplev_main): Update prototype.
+ (save_argc, save_argv): Remove.
+
+2003-07-02 David Edelsohn <edelsohn@gnu.org>
+
+ * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
+ (emit_bincl_stab): Same.
+ (emit_pending_bincls): Same.
+
+2003-07-02 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/11072
+ * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
+
+2003-07-02 Andreas Schwab <schwab@suse.de>
+
+ * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
+
+2003-07-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/11210
+ * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
+ about the behaviour with regard to bitfields.
+ * fold-const (decode_field_reference): Record outermost type in
+ case the expression is a NOP. Strip all NOPs. Set the signedness
+ to that of the outermost type (if any) when the bitsize is equal
+ to the size of the type.
+
+2003-07-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
+ (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
+ (adddi3_internal_3, addsi3_internal_2): Likewise.
+
+2003-07-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (machine_function): Add new fields:
+ ignore_hazard_length_p and all_noreorder_p.
+ (mips_flag_delayed_branch): New variable.
+ (override_options): Treat '/' as an operand punctuation character.
+ Set up mips_flag_delayed_branch.
+ (print_operand): Handle '/'.
+ (mips_output_function_prologue): Put the whole function in
+ .set noreorder and .set nomacro if all_noreorder_p is true.
+ (mips_output_function_epilogue): End the noreorder/nomacro sequence.
+ (mips16_optimize_gp): Remove "first insn" parameter.
+ (mips16_lay_out_constants): New function, split out from mips_reorg.
+ (mips_avoid_hazard, mips_avoid_hazards): New functions.
+ (mips_reorg): For mips16 code, call mips16_lay_out_constant
+ and (optionally) mips16_optimize. If TARGET_EXPLICIT_RELOCS,
+ do delayed-branch scheduling followed by hazard detection.
+ (mips_adjust_insn_length): Only account for hazards if
+ !ignore_hazard_length_p.
+ (mips_output_load_label): Add a nop to the o32 sequence if
+ the target suffers from load delays.
+ (mips_output_conditional_branch): Add %/ to the end of branches.
+ (mips_output_division): Fill the branch delay slot with %#.
+ * config/mips/mips.md: Remove redundant '%*' from mips16 branch
+ instructions. End all other %* branches with %/.
+ (ffssi2, ffsdi2): Fix lengths.
+ (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
+ (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
+ (fix_truncsfsi2_macro): Likewise.
+ (mov_lwl): Set hazard to "none".
+ (ashldi3_internal): Fill the branch delay slot with %#.
+ (ashrdi3_internal, lshrdi3_internal): Likewise.
+ (exception_receiver): Explicitly set $28.
+ (hazard_nop): New pattern.
+
+2003-07-02 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
+ before calling tree_inlinable_function_p.
+
+2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
+ <internal/stdio_core.h> too.
+ (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
+ <internal/wchar_core.h> too.
+ Substitute va_list uses in inline definition.
+ * fixinc/fixincl.x: Regenerate.
+
+2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
+ Undef before redefinition.
+ (LABEL_AFTER_LOC): Likewise.
+ (DEFAULT_SIGNED_CHAR): Likewise.
+ (ASM_OUTPUT_ASCII): Moved here from iris4.h.
+ Fix IRIX spelling.
+
+ * config/mips/iris3.h: Remove, unused.
+ * config/mips/iris4.h: Likewise.
+
+ * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
+
+ * config/mips/iris5.h (TARGET_DEFAULT): Move ...
+ * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
+ target_cpu_default.
+
+ * config/mips/iris5.h: Move explicit includes ...
+ * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
+
+ * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
+ * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
+ tm_defines.
+
+ * config/mips/iris6.h (TARGET_DEFAULT): Move ...
+ * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
+ target_cpu_default.
+
+ * config/mips/iris6.h: Fix IRIX spelling.
+ (MULTILIB_DEFAULTS): Undef before redefinition.
+
+ * config/mips/iris6.h: Move explicit includes ...
+ * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
+
+2003-07-02 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
+ cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
+ Use next_needed field instead of aux to maintain the queue.
+ * cgraph.h (cgraph_node): Add next_needed.
+ (cgraph_varpool_node): Add next_needed; remove aux.
+ * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
+
+2003-07-02 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_finalize_function): Set finalized.
+ (cgraph_finalize_function): Do not examine inlinablility.
+ (cgraph_finalize_compilation_unit): Do it here.
+ * cgraph.h (cgraph_local_info): Add finalized field.
+
+2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
+ (gt_pch_restore): Likewise.
+
+2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.c: Fix comment typos.
+ * config/alpha/elf.h: Likewise.
+ * config/arm/arm.c: Likewise.
+ * config/arm/arm.h: Likewise.
+ * config/arm/arm.md: Likewise.
+ * config/arm/t-arm-coff: Likewise.
+ * config/arm/t-strongarm-pe: Likewise.
+ * config/arm/xscale-elf.h: Likewise.
+ * config/avr/avr.h: Likewise.
+
+2003-07-01 Jeff Law <law@redhat.com>
+
+ * stmt.c (any_pending_cleanups): Remove another redundant test.
+
+2003-07-01 David Edelsohn <edelsohn@gnu.org>
+ J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
+ for MEM case.
+
+2003-07-01 Devang Patel <dpatel@apple.com>
+
+ * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
+ (binclstatus): New.
+ (struct dbx_file): New members - bincl_status, pending_bincl_name and
+ prev.
+ (pending_bincls): New.
+ (dbxout_init): Initialize new dbx_file members.
+ (dbxout_start_source_file): Same.
+ (emit_bincl_stab): New function.
+ (emit_pending_bincls): Same.
+ (emit_pending_bincls_if_required): Same.
+ (dbxout_end_source_file): Emit EINCL stab only if BINCL is already
+ processed.
+ (dbxout_begin_block): Emit pending BINCL stabs.
+ (dbxout_end_block): Same.
+ (dbxout_function_decl): Same.
+ (dbxout_continue): Same.
+ (dbxout_type): Same.
+ (dbxout_class_name_qualifiers): Same.
+ (dbxout_symbol): Same.
+ (dbxout_symbol_location): Same.
+ (dbxout_parms): Same.
+
+2003-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * c-semantics.c (genrtl_case_label): Fix format specifier bug.
+ * cfgrtl.c (rtl_verify_flow_info_1): Likewise.
+
+2003-07-01 Andreas Jaeger <aj@suse.de>
+
+ * fold-const.c: Convert prototypes to ISO C90.
+ * function.c: Likewise.
+ * function.h: Likewise.
+
+2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/contrib.texi: Fix typos.
+ * doc/invoke.texi: Likewise.
+ * doc/passes.texi: Likewise.
+ * doc/sourcebuild.texi: Likewise.
+ * doc/tm.texi: Likewise.
+
+2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * basic-block.h: Fix comment typos.
+ * bb-reorder.c: Likewise.
+ * c-format.c: Likewise.
+ * cfgcleanup.c: Likewise.
+ * cfghooks.h: Likewise.
+ * cfgloop.c: Likewise.
+ * cfgloopmanip.c: Likewise.
+ * cfgrtl.c: Likewise.
+ * cgraph.h: Likewise.
+ * cgraphunit.c: Likewise.
+ * combine.c: Likewise.
+ * convert.c: Likewise.
+ * dbxout.c: Likewise.
+ * df.c: Likewise.
+ * df.h: Likewise.
+ * diagnostic.c: Likewise.
+ * dwarf2out.c: Likewise.
+ * et-forest.h: Likewise.
+ * flow.c: Likewise.
+ * fold-const.c: Likewise.
+ * function.h: Likewise.
+ * gcov-io.h: Likewise.
+ * gcov.c: Likewise.
+ * gcse.c: Likewise.
+ * genautomata.c: Likewise.
+ * ggc-common.c: Likewise.
+ * ggc-page.c: Likewise.
+ * loop-unroll.c: Likewise.
+ * loop-unswitch.c: Likewise.
+ * loop.c: Likewise.
+ * mips-tfile.c: Likewise.
+ * optabs.c: Likewise.
+ * ra-build.c: Likewise.
+ * ra-colorize.c: Likewise.
+ * ra-rewrite.c: Likewise.
+ * ra.h: Likewise.
+ * regmove.c: Likewise.
+ * reload.c: Likewise.
+ * rtlanal.c: Likewise.
+ * sched-ebb.c: Likewise.
+ * sched-int.h: Likewise.
+ * sched-vis.c: Likewise.
+ * sreal.c: Likewise.
+ * ssa-ccp.c: Likewise.
+ * ssa.c: Likewise.
+ * toplev.c: Likewise.
+ * tree-inline.c: Likewise.
+ * value-prof.c: Likewise.
+ * value-prof.h: Likewise.
+
+2003-07-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ * rtl.h (emit_line_note_after): Remove.
+ (emit_note_copy_after, emit_note_copy): New.
+ * emit-rtl.c (reorder_insns_with_line_notes): Replace
+ emit_line_note_after with emit_note_copy_after.
+ (emit_insn_after_with_line_notes): Likewise.
+ (emit_line_note_after): Kill.
+ (emit_note_copy_after): New.
+ (emit_note_copy): New.
+ * function.c (emit_return_into_block): Use emit_note_copy_after.
+ (thread_prologue_and_epilogue_insns): Likewise.
+ * integrate.c (expand_inline_function): Use emit_note_copy.
+ (copy_insn_list): Likewise.
+ * unroll.c (copy_loop_body): Likewise.
+ * cfglayout.c (duplicate_insn_chain): Likewise.
+
+2003-07-01 Nathan Sidwell <nathan@codesourcery.com>
+
+ * c-tree.h (define_label): Replace filename and lineno arguments
+ with a location_t.
+ * c-decl.c (poplevel): Adjust define_label call.
+ (pop_label_level): Likewise.
+ (define_label): Replace filename and lineno arguments with a
+ location_t.
+ (store_parm_decls): Use DECL_SOURCE_LOCATION.
+ * c-parse.in (label): Adjust define_label call.
+
+2003-07-01 Neil Booth <neil@daikokuya.co.uk>
+
+ * config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
+ config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
+ config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
+ config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
+ config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.
+
+2003-07-01 Andreas Jaeger <aj@suse.de>
+
+ * final.c: Convert prototypes to ISO C90.
+ * flow.c: Likewise.
+ * flags.h: Likewise.
+ * gcov-io.c: Likewise.
+ * gcov-io.h: Likewise.
+
2003-06-30 Bruno Haible <bruno@clisp.org>
PR middle-end/6578
@@ -21484,5 +37860,3 @@ Mon Mar 24 20:03:03 CET 2003 Jan Hubicka <jh@suse.cz>
* config/sh/sh.h (REGISTER_TARGET_PRAGMAS): Update.
* config/v850/v850.h (REGISTER_TARGET_PRAGMAS): Update.
* doc/tm.texi (REGISTER_TARGET_PRAGMAS): Update
-
-See ChangeLog.8 for earlier changes.
diff --git a/gcc/ChangeLog.12 b/gcc/ChangeLog-2004
index 7c3a2ffa331..19e215eefa3 100644
--- a/gcc/ChangeLog.12
+++ b/gcc/ChangeLog-2004
@@ -26887,4 +26887,20992 @@
* libfuncs.h (LTI_gcov_init, gcov_init_libfunc): Remove.
* optabs.c (init_optabs): Don't set gcov_init_libfunc.
-See ChangeLog.11 for earlier changes.
+2004-06-30 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (expand_shift): Consider expanding LSHIFT_EXPR by a
+ constant as a sequence of additions depending upon the rtx_costs.
+ (synth_mult): Update the "observed" cost of a shift, based upon
+ the above optimization.
+
+2004-06-28 Geoffrey Keating <geoffk@apple.com>
+ Andreas Tobler <a.tobler@schweiz.ch>
+
+ PR 15813
+ * dwarf2out.c (reg_save): Output DW_CFA_same_value when a
+ register is saved in itself.
+ (initial_return_save): If the return address is a register,
+ it's already there, don't bother to mention it in the CFI.
+ (struct queued_reg_save): Add field saved_reg.
+ (struct reg_saved_in_data): New.
+ (regs_saved_in_regs): New.
+ (num_regs_saved_in_regs): New.
+ (queue_reg_save): Add extra parameter to specify register saved
+ in register. Remove duplicate entries from queue. Add comment
+ for function.
+ (flush_queued_reg_saves): Handle registers saved in registers.
+ Update regs_saved_in_regs. Add comment for function.
+ (clobbers_queued_reg_save): Add comment for function. Allow
+ for regs_saved_in_regs.
+ (reg_saved_in): New.
+ (dwarf2out_frame_debug_expr): Handle saving registers in other
+ registers.
+ (dwarf2out_frame_debug): Reset regs_saved_in_regs.
+ * unwind-dw2.c (execute_cfa_program): Correct handling of
+ DW_CFA_same_value. Add FIXME comment about incorrect implementation
+ of DW_CFA_restore_extended.
+ * config/rs6000/rs6000.c (rs6000_emit_prologue): Let
+ dwarf2out_frame_debug_expr see instructions that save registers
+ in other registers or save those other registers in memory.
+
+ * unwind-dw2.c (DWARF_FRAME_REGISTERS): Move to unwind-dw2.h.
+ (_Unwind_FrameState): Likewise.
+ * unwind-dw2.h: New.
+ * Makefile.in (LIB2ADDEHDEP): Add unwind-dw2.h.
+ * config/rs6000/darwin-fallback.c: New file.
+ * config/rs6000/darwin.h (MD_FALLBACK_FRAME_STATE_FOR): Define.
+ * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Add darwin-fallback.o.
+
+2004-07-01 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Rewrite.
+ (function_arg): Use rs6000_arg_size rather than CLASS_MAX_NREGS in
+ calculating gpr size for altivec. Simplify and correct
+ rs6000_mixed_function_arg calls. Call rs6000_mixed_function_arg
+ for ABI_V4 gpr case too. Fix off-by-one error in long double
+ reg test. Generate the correct PARALLEL to handle long double
+ for ABI_AIX 32-bit. Use this for -m32 -mpowerpc64 fpr case too.
+ (function_arg_partial_nregs): Align before calculating regs left.
+ Don't return info on partial fprs when we need info on gprs.
+ Correct long double fpr off-by-one error.
+
+2004-06-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h (prefetch_operand): Add prototype.
+ * pa.c (prefetch_operand): New function.
+ * pa.h (prefetch_operand): Add to PREDICATE_CODES.
+ * pa.md (prefetch, prefetch_32, prefetch_64): New prefetch patterns.
+
+2004-06-30 Richard Henderson <rth@redhat.com>
+
+ * function.h (struct function): Remove x_whole_function_mode_p.
+ * c-decl.c (store_parm_decls): Don't set it.
+ * tree-optimize.c (tree_rest_of_compilation): Likewise.
+ * passes.c (rest_of_compilation): Don't check it.
+ * stmt.c (expand_fixup): Likewise.
+ * function.c (fixup_var_refs_insn): Remove unused variable.
+
+2004-06-30 Richard Henderson <rth@redhat.com>
+
+ * tree.h (immediate_size_expand): Delete.
+ * stor-layout.c (immediate_size_expand): Delete.
+ (variable_size): Don't look at it.
+ * c-decl.c (push_parm_decl): Don't frob immediate_size_expand.
+ (start_function): Likewise.
+ * cfgexpand.c (construct_exit_block): Likewise.
+ * function.c (init_function_start, expand_function_end): Likewise.
+ * tree-optimize.c (tree_rest_of_compilation): Likewise.
+
+2004-06-30 Richard Henderson <rth@redhat.com>
+
+ * gimplify.c (gimplify_compound_lval): Take fallback argument
+ instead of want_lvalue.
+ (gimplify_call_expr): Take want_value argument instead of test
+ function. Gimplify arguments to val only if reg_type; otherwise
+ allow lvalue forms.
+ (gimplify_expr): Update gimplify_compound_lval and gimplify_call_expr
+ calls.
+ * tree-gimple.c: Update GIMPLE grammer. Use true/false not 1/0.
+ Tidy commentary globally.
+ (get_call_expr_in): Remove RETURN_EXPR handling. Tidy.
+ * tree-gimple.h (is_gimple_call_addr): Mark extern.
+
+ * gimplify.c (gimplify_modify_expr_to_memcpy): Fix typo.
+
+2004-06-30 Richard Henderson <rth@redhat.com>
+
+ * tree-gimple.c (right_assocify_expr): Kill
+ (rationalize_compound_expr): Kill.
+ * tree-gimple.h: Likewise.
+ * tree-inline.c (expand_call_inline): Don't call it.
+
+ * function.h (struct function): Remove x_last_parm_insn,
+ inl_last_parm_insn.
+ (last_parm_insn): Remove.
+ * function.c (free_after_compilation): Don't clear them.
+ (fixup_var_refs_insn, assign_parms): Don't set them.
+
+ * function.c, rtl.h (get_first_nonparm_insn): Remove.
+
+2004-06-30 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-common.h (check_function_format): Remove first parameter.
+ * c-format.c (format_check_context): Remove status.
+ (check_format_info, check_format_info_main,
+ maybe_read_dollar_number, avoid_dollar_number,
+ finish_dollar_format_checking, check_format_types,
+ check_function_format): Remove first parameter. Don't use
+ status_warning.
+ (check_format_arg): Don't use status_warning.
+ (status_warning): Remove.
+ * c-common.c (check_function_arguments): Update call to
+ check_function_format.
+
+2004-06-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc-protos.h (output_cbranch): Constify return
+ value.
+ (output_v9branch): Likewise.
+ (sparc_v8plus_shift): Likewise. Rename into output_v8plus_shift.
+ * config/sparc/sparc.c (output_cbranch): Constify return value.
+ Prettify output for delay slots.
+ (output_v9branch): Likewise.
+ (sparc_v8plus_shift): Constify return value. Rename into
+ output_v8plus_shift.
+ * config/sparc/sparc.md (ashldi3_v8plus): Adjust call to
+ sparc_v8plus_shift.
+ (ashrdi3_v8plus): Likewise.
+ (lshrdi3_v8plus): Likewise.
+ (call_address_struct_value_sp32): Prettify output for delay slots.
+ (call_symbolic_struct_value_sp32): Likewise.
+ (call_address_untyped_struct_value_sp32): Likewise.
+ (call_symbolic_untyped_struct_value_sp32): Likewise.
+
+2004-06-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * common.opt (ftree-loop-optimize): New flag.
+ * tree-flow.h (kill_redundant_phi_nodes): Declare.
+ * tree-optimize.c (init_tree_optimization_passes): Add pass_loop.
+ * tree-pass.h (pass_loop_init, pass_loop_done): Declare.
+ * tree-ssa-loop.c (current_loops): New variable.
+ (tree_loop_optimizer_init, gate_loop, tree_ssa_loop_init,
+ tree_ssa_loop_done): New functions.
+ (pass_loop, pass_loop_init, pass_loop_done): New passes.
+ * tree-ssa.c (kill_redundant_phi_nodes): Export.
+ * doc/invoke.texi (-ftree-loop-optimize): Document.
+
+2004-06-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * tree-ssa-loop-ch.c: New file.
+ * Makefile.in (tree-ssa-loop-ch.o): Add.
+ (tree-into-ssa.o): Add GGC_H dependency.
+ * tree-cfg.c (tree_duplicate_bb): Copy virtual arguments.
+ * tree-flow.h (rewrite_into_ssa): Declaration changed.
+ (rewrite_ssa_into_ssa, compute_global_livein, duplicate_ssa_name):
+ Declare.
+ * tree-into-ssa.c: Include ggc.h.
+ (struct def_blocks_d): Add phi_blocks field.
+ (struct mark_def_sites_global_data): Add names_to_rename field.
+ (struct ssa_name_info): New.
+ (compute_global_livein): Export.
+ (set_def_block, insert_phi_nodes, mark_def_sites, set_livein_block,
+ insert_phi_nodes_1, rewrite_finalize_block, insert_phi_nodes_for,
+ register_new_def, get_reaching_def, def_blocks_free,
+ get_def_blocks_for, rewrite_into_ssa): Modified to work with
+ rewrite_ssa_into_ssa.
+ (get_ssa_name_ann, get_phi_state, set_phi_state, get_current_def,
+ set_current_def, ssa_mark_def_sites_initialize_block,
+ ssa_mark_phi_uses, ssa_mark_def_sites, duplicate_ssa_name,
+ ssa_register_new_def, ssa_rewrite_initialize_block,
+ ssa_rewrite_phi_arguments, ssa_rewrite_finalize_block,
+ ssa_rewrite_stmt, rewrite_ssa_into_ssa, rewrite_all_into_ssa): New
+ functions.
+ (pass_build_ssa): Call rewrite_all_into_ssa.
+ * tree-optimize.c (execute_todo, execute_one_pass,
+ tree_rest_of_compilation): Allocate vars_to_rename only once.
+ * tree-ssa-dom.c (tree_ssa_dominator_optimize): Provide parameter
+ to rewrite_into_ssa.
+ * tree-ssa-loop.c (should_duplicate_loop_header_p,
+ mark_defs_for_rewrite, duplicate_blocks, do_while_loop_p,
+ copy_loop_headers, gate_ch, pass_ch): Moved to tree-ssa-loop-ch.c.
+ Use rewrite_ssa_into_ssa.
+ * tree-ssa-operands.c (copy_virtual_operands): New function.
+ * tree-ssa-operands.h (copy_virtual_operands): Declare.
+ * tree.h (struct tree_ssa_name): Add aux field.
+ (SSA_NAME_AUX): New macro to access it.
+
+2004-05-28 Aaron W. LaFramboise <aaronraolete36@aaronwl.com>
+
+ * prefix.c (lookup_key): Cast buffer to LPBYTE.
+
+2004-06-30 Per Bothner <per@bothner.com>
+
+ Conditionally compile support for --enable-mapped_location.
+ * input.h: #include line-map.h for source_location typedef.
+ (BUILTINS_LOCATION, UNKNOWN_LOCATION, expand_location,
+ LOCATION_FILE, LOCATION_LINE): New macros and functions.
+ (expanded_location, source_locus): New typedefs.
+ (push_srcloc): Change parameter list if USE_MAPPED_LOCATION.
+ * rtl.def (NOTE, ASM_OPERANDS): Modify specifcation, if
+ USE_MAPPED_LOCATION.
+ * rtl.h (NOTE_DELETED_LABEL_NAME): New macro.
+ (NOTE_SOURCE_LOCATION, NOTE_EXPNDED_LOCATION, SET_INSN_DELETED):
+ New conditional macros.
+ (ASM_OPERANDS_SOURCE_FILE, ASM_OPERANDS_SOURCE_LINE): Replace
+ by ASM_OPERANDS_SOURCE_LOCATION if USE_MAPPED_LOCATION.
+ * tree.h (EXPR_LOCATION, SET_EXPR_LOCATION, EXPR_HAS_LOCATION,
+ EXPR_LOCUS, SET_EXPR_LOCUS, EXPR_FILENAME, EXPR_LINENO,
+ DECL_IS_BUILTIN): New macros, most depending on USE_MAPPED__LOCATION.
+ (tree_exp): Change type of locus to use new source_locus typedef.
+ * tree.c (build1_stat): Use SET_EXPR_LOCATION.
+ (annotate_with_locus, annotate_with_file_line): Conditionalize.
+ (expand_location): New function.
+ * toplev.c (unknown_location): New static, when USE_MAPPED_LOCATION.
+ (push_srcloc, pop_loc): Adjust parameter handling.
+ (process_options): Don't set input_filename by itself.
+ (lang_dependent_init): Save, set input_location to <built-in>.
+ (warn_deprecated_use): Use expand_location.
+
+ * basic-block.h (struct edge_def): Use new source_locus typedef.
+ * c-common.c (fname_decl): Update save/clear/store of input_location.
+ (c_do_switch_warnings): Update for USE_MAPPED_LOCATION case.
+ * c-decl.c: Likewise.
+ * c-dump.c (dump_stmt): Likewise.
+ * c-gimplify.c (c-gimplify.c): Generalize using SET_EXPR_LOCATION.
+ * c-lex.c (cb_line_change): If USE_MAPPED_LOCATION use token's src_loc
+ to set input_location direction, rather than using linemap_lookup.
+ (fe_file_change, cb_def_pragma): Again use source_location directly.
+ * c-opts.c (saved_lineno): Remove static variable.
+ (c_common_post_options, c_common_init): Don't bothner to save,
+ clear and restore input_Location - now handled by lang_dependent_init.
+ * function.c (init_function_start): Use new DECL_IS_BUILTIN macro.
+ * xcoffout.c (xcoff_assign_fundamental_type_number): Likewise.
+ * tree-mudflap.c (mf_file_function_line_tree): Take a location_t
+ rather than a pointer to one. Use expand_location.
+ (mf_varname_tree): Use expand_location.
+ * tree-dump.c: Use expand_location on DECL_SOURCE_LOCATION.
+ * coverage.c: Likewise.
+ * print-tree.c: Likewise.
+ * c-aux-info.c (gen_aux_info_record): Likewise.
+ * c-parse.in: Use SET_EXPR_LOCATION macro.
+ * gimple-low.c: Likewise.
+ * tree-mudflap.c: Likewise.
+ * gimplify.c: Likewise. Also use EXPR_LOCATION and EXPR_HAS_LOCATION.
+ * c-ppoutput.c: Use new source_location typedef instead of fileline.
+ * c-semantics.c: Use new macros.
+ * c-typeck.c: Likewise.
+ * cfgexpand.c: Handle USE_MAPPED_LOCATION case for function_end_locus.
+ * cfglayout.c (insn_locators_initialize): Const cleanup. New macros.
+ * cfgrtl.c (delete_insn): Use new NOTE_DELETED_LABEL_NAME macro.
+ * print-rtl.c (print_rtx): Likewise.
+ * emit-rtl.c: Don't clear NOTE_SOURCE_FILE if USE_MAPPED_LOCATION.
+ * combine.c: Use new SET_INSN_DELETED macro.
+ * flow.c: Likewise.
+ * haifa-sched.c: Likewise.
+ * ifcvt.c: Likewise.
+ * recog.c: Likewise.
+ * reload1.c: Likewise.
+ * diagnostic.c: Use expand_location macro.
+ * pretty-print.c (pp_base_format_text): Likewise.
+ * profile.c: Likewise.
+ * dwarf2out.c: Likewise. Also use expand_location, DECL_IS_BUILTIN.
+ * dwarf2out.c (dwarf2out_decl: Use BUILTINS_LOCATION.
+ * emit-rtl.c (emit_line_note): Simplify if USE_MAPPED_LOCATION.
+ (force_next_line_note, insn_emit): Handle USE_MAPPED_LOCATION case.
+ * final.c (final): Likewise.
+ * haifa-sched.c: Likewise.
+ * integrate.c: Likewise.
+ * jump.c: Likewise.
+ * rtl-error.c: Likewise.
+ * stmt.c (check_seenlabel): Likewise.
+ * tree-pretty-print.c: Likewise.
+ * gengtype-lex.l: Temporary kludge to avoid duplicate typedef.
+ * gengtype.c: Update for now typdefs in input.h. More kludges.
+ * modulo-sched.c (sms_schedule): Use NOTE_EXPANDED_LOCATION macro.
+ * ra-debug.c (ra_print_rtl): Likewise.
+ * sched-rgn.c: Likewise.
+ * sched-vis.c: Likewise.
+ * rtl.h (gen_rtx_ASM_OPERANDS): Redefine if USE_MAPPED_LOCATION.
+ * stmt.c (expand_asm_operands): Adjust calls to gen_rtx_ASM_OPERANDS.
+ * tree-cfg.c: Use new macros and typedefs.
+ * tree-flow-inline.h: Likewise.
+
+2004-06-30 Richard Sandiford <rsandifo@redhat.com>
+ Eric Christopher <echristo@redhat.com>
+
+ * config/mips/3000.md: Improve description.
+
+2004-06-30 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/cirrus.md (cirrus_arm_movdi, cirrus_movsf_hard_insn,
+ cirrus_movdf_hard_insn): Set pool ranges for coprocessor loads.
+
+2004-06-30 Sebastian Pop <pop@cri.ensmp.fr>
+
+ * Makefile.in (OBJS-common): Add tree-chrec.o.
+ (tree-chrec.o): New rule.
+ (GTFILES): Add tree-chrec.h.
+ * gengtype.c (open_base_files): Add tree-chrec.h.
+ * tree-chrec.c: New file.
+ * tree-chrec.h: New file.
+ * tree.def (SCEV_KNOWN, SCEV_NOT_KNOWN, POLYNOMIAL_CHREC): New nodes.
+
+2004-06-30 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c: Include "output.h" to define dump_file.
+ (uid_insn_cost, last_insn_cost): New global variables.
+ (combine_insn_cost): New function to estimate cost of an insn.
+ (combine_validate_cost): New function to determine whether a
+ try_combine replacement sequence is cheaper than the original.
+ (combine_instructions): Allocate and populate uid_insn_cost
+ array at the start of the combine pass, and deallocate it after.
+ (try_combine): Check combine_validate_cost to determine whether
+ a "recombination" should be rejected as being more expensive.
+ * Makefile.in (combine.o): Add dependency upon output.h.
+
+2004-06-30 Roger Sayle <roger@eyesopen.com>
+
+ * config/rs6000/rs6000.c (rs6000_rtx_costs) <MINUS_EXPR>: Handle
+ subtractions identically to additions, always COSTS_N_INSNS (1).
+
+2004-06-30 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * expmed.c (expand_smod_pow2): Fix sign of mask.
+
+2004-06-29 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-ssa-pre.c (phi_trans_add): Use is_gimple_min_invariant
+ to check for constants.
+ (set_remove): Likewise.
+ (value_replace_in_set): Likewise.
+ (find_leader): Likewise.
+ * tree-vn.c (set_value_handle): Likewise.
+ (vn_lookup): Likewise.
+ (vn_lookup_or_add): Likewise.
+
+2004-06-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ RTL prologue/epilogue for SPARC
+ * config/sparc/sparc-protos.h (sparc_emitting_epilogue): Delete.
+ (sparc_skip_caller_unimp): Likewise.
+ (load_pic_register): Likewise.
+ (leaf_return_peephole_ok): Likewise.
+ (compute_frame_size): Rename into sparc_compute_frame_size.
+ (sparc_expand_prologue): New prototype.
+ (sparc_expand_epilogue): Likewise.
+ (output_return): Likewise.
+ (eligible_for_epilogue_delay): Rename into eligible_for_return_delay.
+ * config/sparc/sparc.h (INITIAL_ELIMINATION_OFFSET): Adjust call to
+ compute_frame_size. Move comment up.
+ (DELAY_SLOTS_FOR_EPILOGUE): Delete.
+ (ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.
+ (EPILOGUE_USES): Return true for %g1 if the function uses EH return.
+ * config/sparc/sparc.md (UNSPECV_SAVEW): New constant.
+ (type attribute): Add 'return' and 'savew'.
+ (eligible_for_return_delay): New attribute.
+ (return): New delay_slot.
+ (sibcall_epilogue): Call sparc_expand_epilogue.
+ (prologue): Likewise. Move up.
+ (save_register_window): New expander.
+ (save_register_windowsi): New pattern.
+ (save_register_windowdi): Likewise.
+ (epilogue): New expander.
+ (return_internal): New pattern.
+ (Return peepholes): Delete.
+ * config/sparc/sparc.c (SIBCALL_SLOT_EMPTY_P): New macro.
+ (sparc_emitting_epilogue): Delete.
+ (sparc_skip_caller_unimp): Likewise.
+ (sparc_sr_alias_set): New global variable.
+ (frame_base_name): Delete.
+ (frame_base_reg): New global variable.
+ (sparc_override_options): Get new alias set for save/restore.
+ (leaf_return_peephole_ok): Delete.
+ (eligible_for_epilogue_delay): Rename into eligible_for_return_delay.
+ Factor out code into eligible_for_restore_insn_delay.
+ (eligible_for_restore_insn_delay): New function extraced from above.
+ Use IN_UNCOND_BRANCH_DELAY_TRUE instead of IN_BRANCH_DELAY_TRUE.
+ (eligible_for_sibcall_delay): Use SIBCALL_SLOT_EMPTY_P.
+ Factor out code into eligible_for_restore_insn_delay.
+ (load_pic_register): Make static. Remove check.
+ (save_regs): Delete.
+ (restore_regs): Likewise.
+ (compute_frame_size): Rename into sparc_compute_frame_size.
+ Rename leaf_function into leaf_function_p.
+ (build_big_number): Delete.
+ (save_or_restore_regs): New function.
+ (emit_save_regs): Likewise.
+ (emit_restore_regs): Likewise.
+ (emit_stack_pointer_increment ): Likewise.
+ (emit_stack_pointer_decrement): Likewise.
+ (sparc_expand_prologue): Likewise.
+ (sparc_function_prologue): Rename into sparc_asm_function_prologue.
+ Remove all code to emit instructions.
+ (sparc_expand_epilogue): New function.
+ (sparc_function_epilogue): Rename into sparc_asm_function_epilogue.
+ Remove all code to emit instructions.
+ (output_restore): New function.
+ (output_return): Likewise.
+ (output_sibcall): Factor out code into output_restore.
+ (print_operand): Adjust for frame_base_reg.
+ * target.h (struct gcc_target): New field 'late_rtl_prologue_epilogue'.
+ * target-def.h (TARGET_LATE_RTL_PROLOGUE_EPILOGUE): New define.
+ (TARGET_INITIALIZER): Add it.
+ * passes.c (rest_of_compilation): Set the conditional predicate
+ 'current_function_uses_only_leaf_regs' before sched2. If target
+ has 'late_rtl_prologue_epilogue', emit RTL prologue/epilogue right
+ before sched2.
+ * reorg.c (return_insn_p): New predicate.
+ (find_end_label): Use it.
+ (relax_delay_slots): Do not thread an unconditional jump that points
+ to the end return label.
+ * doc/tm.texi (Registers) <Leaf Functions>: Clarify the validity
+ domain of 'current_function_uses_only_leaf_regs'.
+ (Stack and Calling) <Function Entry>: Document new target hook
+ TARGET_LATE_RTL_PROLOGUE_EPILOGUE.
+
+2004-06-30 Jakub Jelinek <jakub@redhat.com>
+
+ * simplify-rtx.c (simplify_binary_operation): Simplify
+ ((A & N) + B) & M -> (A + B) & M if M is pow2 minus 1 constant and
+ N has at least all bits in M set as well.
+
+ PR tree-optimization/15310
+ * expr.c (expand_assignment): Optimize += or -= on a bit field in
+ most significant bits.
+
+2004-06-30 Steven Bosscher <stevenb@suse.de>
+
+ * config/c4x/c4x.md: Fix comment.
+
+2004-06-30 Akos Kiss <akiss@inf.u-szeged.hu>
+
+ * arm.md (cond_return_inverted): Add "length" attribute.
+
+2004-06-29 Per Bothner <per@bothner.com>
+
+ * config/i386/winnt.c (i386_pe_encode_section_info): Smash rtlname's
+ XSTR in place, so we don't lose SYMBOL_REF_DECL info.
+
+2004-06-29 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/hpux.h: Target does too support thread-local storage.
+
+2004-06-29 Zack Weinberg <zack@codesourcery.com>
+
+ * combine.c (distribute_notes): Don't look at global_regs for
+ pseudos.
+
+2004-06-29 Richard Henderson <rth@redhat.com>
+
+ * gimplify.c (gimplify_modify_expr_rhs): Move immediately before
+ gimplify_modify_expr.
+ (gimplify_init_constructor): Likewise. Gimplify the null
+ CONSTRUCTOR assignment.
+ (gimplify_modify_expr_to_memcpy): New.
+ (gimplify_modify_expr_to_memset): New.
+ (gimplify_modify_expr): Use them.
+
+2004-06-29 Roman Zippel <zippel@linux-m68k.org>
+
+ * web.c (union_defs): use all defs of an instruction to create a
+ union with a read/write use
+
+2004-06-29 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/16216
+ * builtins.c (gimplify_va_arg_expr): Check for valist being
+ an error_mark_node.
+
+2004-06-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/16195
+ * config/rs6000/rs6000.c (rs6000_conditional_register_usage): Make
+ r30 fixed if TARGET_TOC && TARGET_MINIMAL_TOC.
+ (first_reg_to_save): Pretend call_used_regs[30] is 0 if
+ TARGET_TOC && TARGET_MINIMAL_TOC.
+ (rs6000_emit_prologue, rs6000_emit_epilogue): Likewise.
+
+2004-06-29 J"orn Rennecke <joern.rennecke@superh.com>
+
+ Fix gcc.dg/builtin-apply2.c failures:
+ * sh.h (TARGET_VARARGS_PRETEND_ARGS): Define.
+ * sh.c (extra_push): Delete.
+ (sh_expand_prologue): Don't do extra stack adjustment for
+ current_function_pretend_args_size if it comes from varargs setup.
+ Use TARGET_VARARGS_PRETEND_ARGS. Don't set extra_push.
+ (sh_expand_epilogue): Don't use extra_push.
+ (sh_setup_incoming_varargs): Set pretend_arg_size when necessary.
+
+2004-06-29 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (expand_smod_pow2): Provide alternate implementations
+ that avoid conditional jumps, and choose between them based upon
+ the target's rtx_costs.
+
+2004-06-29 Andrew Pinski <apinski@apple.com>
+
+ * tree-sra.c: Include expr.h for definition of MOVE_RATIO.
+ * Makefile.in (tree-sra.c): Update dependencies.
+
+2004-06-29 Richard Henderson <rth@redhat.com>
+
+ * tree-sra.c: Rewrite from scratch. Handle nested aggregates.
+
+2004-06-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * vec.h (VEC_T_safe_push, VEC_T_safe_insert): Tweak for when
+ size_t is bigger than int.
+
+2004-06-29 Paul Brook <paul@codesourcery.com>
+
+ * target-def.h (TARGET_CXX_GET_COOKIE_SIZE,
+ TARGET_CXX_COOKIE_HAS_SIZE): Define.
+ (TARGET_CXX): Use them.
+ * target.h (struct gcc_target): Add cxx.get_cookie_size and
+ cxx.cookie_has_size.
+ * targhooks.c (default_cxx_get_cookie_size): New fucntion.
+ * targhooks.h (default_cxx_get_cookie_size): Add prototype.
+ * config/arm/arm.c (TARGET_CXX_GET_COOKIE_SIZE,
+ TARGET_CXX_COOKIE_HAS_SIZE): Define.
+ (arm_get_cookie_size, arm_cookie_has_size): New functions.
+ * Make-lang.in (cp/init.o): Add dependency on $(TARGET_H).
+ * doc/tm.texi: Document TARGET_CXX_GET_COOKIE_SIZE and
+ TARGET_CXX_COOKIE_HAS_SIZE.
+
+2004-06-29 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cfglayout.c (fixup_reorder_chain): Don't do anything for
+ e_fall->dest == EXIT_BLOCK_PTR.
+
+2004-06-28 Richard Henderson <rth@redhat.com>
+
+ * tree-cfg.c (verify_stmt): Add last_in_block parameter. Verify
+ that eh stmts can throw.
+ (verify_stmts): Update verify_stmt call.
+ (tree_purge_dead_eh_edges, tree_purge_all_dead_eh_edges): New.
+ * tree-eh.c (remove_stmt_from_eh_region): New.
+ (lower_eh_constructs): Fix throw_stmt_table delete routine.
+ (tree_could_trap_p): Match may_trap_p.
+ (maybe_clean_eh_stmt): New.
+ * tree-flow.h: Update decls.
+ * tree-ssa-ccp.c (pass_ccp): Add TODO_verify_stmts.
+ (substitute_and_fold): Clean eh edges.
+ * tree-ssa-dce.c (mark_control_dependent_edges_necessary): Handle
+ empty basic blocks.
+ * tree-ssa-dom.c (need_eh_cleanup): New.
+ (tree_ssa_dominator_optimize): Allocate it. Cleanup eh edges.
+ (optimize_stmt): Cleanup eh stmts; set need_eh_cleanup.
+
+2004-06-29 Alan Modra <amodra@bigpond.net.au>
+
+ * function.c (assign_parms): Don't abort with zero size stack
+ parm failing the PARM_BOUNDARY check.
+
+2004-06-28 Diego Novillo <dnovillo@redhat.com>
+
+ * common.opt (ftree-fre): New flag.
+ * flags.h (flag_tree_fre): Declare.
+ * opts.c (decode_options): Set.
+ * timevar.def (TV_TREE_FRE): Define.
+ * tree-flow-inline.h (may_propagate_copy): Re-arrange for
+ readability. Handle destinations that are not SSA_NAMEs.
+ * tree-flow.h (struct ptr_info_def): Move from tree.h
+ (cprop_into_stmt, cprop_into_successor_phis): Remove.
+ (vn_compute, vn_lookup_or_add, vn_add, vn_lookup): Add
+ vuse_optype parameter.
+ * tree-pass.h (pass_fre): Declare.
+ * tree-ssa-copy.c (cprop_operand): Move to tree-ssa-dom.c
+ (cprop_into_stmt): Likewise.
+ (cprop_into_successor_phis): Likewise.
+ * tree-ssa-dom.c (eliminate_redundant_computations): Fix
+ argument ordering in call to may_propagate_copy.
+ * tree-ssa-pre.c (is_undefined_value): Assume hard registers
+ to be always defined.
+ (add_to_sets): New local function.
+ (create_value_expr_from): New local function.
+ (compute_avail): Call them.
+ (eliminate): Don't ignore statements with virtual operands.
+ (init_pre): New local function.
+ (fini_pre): New local function.
+ (execute_pre): Call them.
+ Add argument DO_FRE. Don't do insertion if DO_FRE is true.
+ (do_pre): New function.
+ (do_fre): New function.
+ (gate_fre): New function.
+ (pass_fre): Declare.
+ * tree-ssa.c (init_tree_ssa): Don't call vn_init.
+ (delete_tree_ssa): Don't call vn_delete.
+ * tree-vn.c (val_expr_pair_d): Add documentation.
+ (vn_compute): Add VUSES argument to incorporate in computing
+ hash values. Update all callers.
+ (expressions_equal_p): Call operand_equal_p with
+ OEP_PURE_SAME.
+ (vn_add): Add VUSES argument. Update all callers.
+ (vn_lookup): Likewise.
+ (vn_lookup_or_add): Likewise.
+ * doc/invoke.texi: Document -ftree-fre and -fdump-tree-fre.
+
+2004-06-28 Steven Bosscher <stevenb@suse.de>
+
+ * config/m32r/m32r.c (m32r_sched_odd_word_p, m32r_adjust_cost,
+ m32r_sched_init, m32r_sched_reorder, m32r_variable_issue): Remove.
+ (TARGET_SCHED_ADJUST_COST, TARGET_SCHED_VARIABLE_ISSUE,
+ TARGET_SCHED_INIT, TARGET_SCHED_REORDER): Don't define.
+ * config/m32r/m32r.md: Rewrite the pipeline description as a DFA.
+
+2004-06-28 Richard Henderson <rth@redhat.com>
+
+ * tree.def (REALPART_EXPR, IMAGPART_EXPR): Change class to 'r'.
+ * fold-const.c (operand_equal_p <case 'r'>): Add REALPART_EXPR,
+ IMAGPART_EXPR.
+ * tree-dump.c (dequeue_and_dump): Handle REALPART_EXPR and
+ IMAGPART_EXPR explicitly.
+ * tree-inline.c (estimate_num_insns_1): Don't handle REALPART_EXPR
+ and IMAGPART_EXPR specially.
+ * tree.c (build1_stat): Copy TREE_THIS_VOLATILE into class 'r'.
+
+2004-06-28 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config.gcc (sh*-*elf*): Remove dead assignment of sh_multilibs.
+
+2004-06-28 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * builtins.def (execl, execlp, execle, execv, execvp, execve,
+ fork): Change to DEF_EXT_LIB_BUILTIN.
+
+2004-06-28 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (expand_smod_pow2): New function to expand signed
+ remainder by a constant power of 2, such as "x % 16".
+ (expand_divmod): Call new expand_smod_pow2 when appropriate.
+ Minor corrections to comments, e.g. wrapping long lines.
+
+2004-06-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * Makefile.in (vec.o): Fix dependencies.
+
+2004-06-28 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * Makefile.in: Fix parallel make dependency problem on vec.o.
+
+2004-06-28 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
+
+ PR target/14041
+ * config/h8300/h8300.h (ASM_OUTPUT_ALIGNED_BSS): Define.
+
+2004-06-28 Nathan Sidwell <nathan@codesourcery.com>
+
+ * tree.h (tree_check_failed): Make varadic.
+ (tree_not_check_failed): New prototype.
+ (tree_check2_failed, tree_check3_failed,
+ tree_check4_failed, tree_check5_failed): Remove.
+ (TREE_CHECK, TREE_CHECK2, TREE_CHECK3, TREE_CHECK4,
+ TREE_CHECK5): Adjust.
+ (TREE_NOT_CHECK, TREE_NOT_CHECK2, TREE_NOT_CHECK3, TREE_NOT_CHECK4,
+ TREE_NOT_CHECK5): New.
+ (TREE_VEC_ELT_CHECK, PHI_NODE_ELT_CHECK, TREE_OPERAND_CHECK_CODE,
+ TREE_RTL_OPERAND_CHECK): Adjust.
+ * tree.c (tree_check_failed): Make varadic.
+ (tree_not_check_failed): New.
+ (tree_check2_failed, tree_check3_failed,
+ tree_check4_failed, tree_check5_failed): Remove.
+
+2004-06-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (can_combine_p): Do not prevent building insns that use
+ and clobber the same fixed hard register.
+ (reg_dead_at_p): Likewise.
+
+2004-06-28 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree-sra.c (is_sra_candidate_ref): Remove second arg; all callers
+ changed.
+ (is_sra_candidate_complex_ref): New function.
+ (scalarize_modify_expr): Call it and check for LHS also.
+
+ * tree-pretty-print.c (dump_function_declaration): New.
+ (dump_generic_node, case FUNCTION_TYPE): Call it.
+ (dump_generic_node, case RECORD_TYPE): Don't output dup semicolon.
+ (dump_generic_node, case DECL_EXPR): New case.
+ (dump_generic_node, case PLACEHOLDER_EXPR): Handle.
+ (print_declaration): Handle type and function declarations.
+
+ * tree-nested.c (create_tmp_var_for): Allow ARRAY_TYPE.
+ (convert_nonlocal_reference, convert_local_reference): Properly
+ convert nest of handled component references.
+
+2004-06-28 Nathan Sidwell <nathan@codesourcery.com>
+
+ * vec.h, vec.c: New, type safe vector API.
+ * Makefile.in (OBJS-common): Add vec.o.
+ (vec.o): New target.
+ (gengtype-lex.o): Depend on vec.h.
+
+2004-06-28 Paolo Bonzini <bonzini@gnu.org>
+
+ * fold-const.c (fold_cond_expr_with_comparison): Add ARG1
+ parameter. Use it instead of ARG00 to produce the result.
+
+2004-06-28 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300-protos.h (legitimate_address_p): Declare.
+ * config/mn10300/mn10300.c (legitimate_address_p): New. Test that
+ index is legitimate, compared with code moved from...
+ * config/mn10300/mn10300.h (GO_IF_LEGITIMATE_ADDRESS): here.
+ (REG_STRICT): Define, according to REG_OK_STRICT.
+ (REGNO_IN_RANGE_P, REGNO_DATA_P, REGNO_ADDRESS_P, REGNO_SP_P,
+ REGNO_EXTENDED_P, REGNO_AM33_P, REGNO_FP_P): Introduce strict
+ argument.
+ (REGNO_STRICT_OK_FOR_BASE_P, REGNO_STRICT_OK_FOR_BIT_BASE_P,
+ REGNO_STRICT_OK_FOR_INDEX_P): New.
+ (REGNO_OK_FOR_BASE_P, REG_OK_FOR_BASE_P, REGNO_OK_FOR_BIT_BASE_P,
+ REG_OK_FOR_BIT_BASE_P, REGNO_OK_FOR_INDEX_P, REG_OK_FOR_INDEX_P,
+ RTX_OK_FOR_BASE_P): Use them.
+
+2004-06-28 Ben Elliston <bje@au.ibm.com>
+
+ * doc/cfg.texi (Basic Blocks): Define dominators.
+
+2004-06-27 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/16205
+ * c-common.c (warn_for_collisions_1): Warn for only decls which
+ have a name.
+
+ PR c++/15145
+ * c.opt (Wsequence-point): Enable for C++ and ObjC++.
+
+ PR c/14963
+ * c-decl.c (start_decl): Check for null types.
+
+2004-06-27 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
+ Accept TOC addresses.
+
+2004-06-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_load_got): Update prototype.
+ * config/s390/s390.c (struct machine_function): Add member base_reg.
+ (s390_decompose_address): Accept UNSPEC_LTREF. Simplify logic.
+ (s390_split_branches): Annotate late pool references.
+ (annotate_constant_pool_refs): New function.
+ (find_constant_pool_ref): Work on annotated pool references.
+ (replace_constant_pool_ref): Likewise. Use explicit base.
+ (replace_ltrel_base): Use explicit base.
+ (s390_mainpool_start): Reflect main_pool pattern change.
+ (s390_mainpool_finish): Use base register from main_pool.
+ Update calls to replace_ltrel_base and replace_constant_pool_ref.
+ (s390_chunkify_start): Use base_reg from struct machine_function.
+ (s390_chunkify_finish): Remove base_reg argument. Update calls
+ to replace_ltrel_base and replace_constant_pool_ref.
+ (s390_reorg): Don't decide upon base register. Update calls.
+ (s390_load_got): Remove MAYBE_DEAD handling. Do not emit insns
+ but return sequence instead.
+ (s390_emit_prologue): Decide upon base register to use. Annotate
+ all literal pool references. Adapt to main_pool pattern change.
+ Update s390_load_got call; move MAYBE_DEAD handling here.
+ (s390_emit_epilogue): Annotate late literal pool references.
+ Remove barrier before register restore instruction.
+ * config/s390/s390.md (UNSPEC_LTREF): New constant.
+ ("builtin_setjmp_receiver"): Update s390_load_got call.
+ ("main_pool"): Explicitly reference base register.
+
+2004-06-27 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <BIT_IOR_EXPR>: Optimize ~X|X and X|~X as -1.
+ <BIT_XOR_EXPR>: Optimize ~X|X and X|~X as -1.
+ <BIT_AND_EXPR>: Optimize ~X&X and X&~X as 0.
+ <TRUTH_AND_EXPR, TRUTH_ANDIF_EXPR>: Optimize !X&&X and X&&!X as false.
+ <TRUTH_OR_EXPR, TRUTH_ORIF_EXPR>: Optimize !X||X and !X||X as true.
+ <TRUTH_XOR_EXPR>: Optimize !X^X and X^X! as true. Now that
+ TRUTH_XOR_EXPR is a commutative tree code, don't test whether arg0
+ is a constant.
+
+2004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * c-common.c (c_safe_from_p, c_walk_subtrees): Deleted.
+ * c-common.def (DECL_STMT): Remove.
+ * c-common.h (DECL_STMT_DECL): Deleted.
+ (COMPOUNT_LITERAL_EXPR_DECL): Use DECL_EXPR_DECL.
+ (c_safe_from_p, c_walk_subtrees): Deleted.
+ * c-decl.c, c-parse.in, c-pretty-print.c: DECL_STMT now DECL_EXPR.
+ * c-dump.c (c_dump_tree, case DECL_STMT): Deleted.
+ * c-gimplify.c (gimplify_decl_stmt): Deleted.
+ (gimplify_compound_literal_expr): Use DECL_EXPR_DECL
+ and gimplify_and_add.
+ (c_gimplify_expr, case DECL_EXPR): New case.
+ (c_gimplify_expr, case DECL_STMT): Deleted.
+ * c-lang.c (LANG_HOOKS_SAFE_FROM_P): Likewise.
+ (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Likewise.
+ * expr.c (safe_from_p, case 's'): New case.
+ * gimplify.c (gimplify_decl_expr): New function.
+ (gimplify_expr, case DECL_EXPR): New case.
+ * tree-inline.c (walk_tree): Walk into all fields of a type and
+ decl only if they are in a DECL_EXPR.
+ (mark_local_for_remap_r): Minor code cleanup.
+ * tree-outof-ssa.c (discover_nonconstant_array_refs_r): Add else.
+ * tree.c (has_cleanups, case DECL_EXPR): New case.
+ * tree.def (DECL_EXPR): New code.
+ * tree.h (DECL_EXPR_DECL): New macro.
+
+ * objc/objc-lang.c (LANG_HOOKS_SAFE_FROM_P): Deleted.
+
+2004-06-26 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR 13334
+ * doc/install.texi: Document non-standard CFLAGS and bootstrap
+ failures and warnings.
+
+2004-06-26 Andrew Haley <aph@redhat.com>
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Check
+ TREE_THIS_NOTRAP when setting MEM_NOTRAP_P.
+ * tree-eh.c (tree_could_trap_p): Check TREE_THIS_NOTRAP.
+ * tree.h (TREE_THIS_NOTRAP): New.
+
+2004-06-26 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * genattrtab.c (write_test_expr): Put a unsigned cast before
+ the first operand for GEU, GTU, LEU and LTU.
+
+2004-06-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-typeck.c, cfgexpand.c, ddg.c, ddg.h, df.c, fold-const.c,
+ gcov.c, gimplify.c, modulo-sched.c, passes.c, tree-cfg.c,
+ tree-mudflap.c, tree-nrv.c, tree-outof-ssa.c, tree-ssa-dom.c,
+ tree-ssa-dse.c, tree-ssa-operands.c, tree-ssa-pre.c,
+ tree-tailcall.c: Fix comment typos. Follow spelling
+ conventions.
+
+2004-06-25 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.md: Add back scheduling exclusion info.
+
+2004-06-25 Roger Sayle <roger@eyesopen.com>
+
+ * ifcvt.c (seq_contains_jump): Delete function.
+ (end_ifcvt_sequence): Replace call to seq_contains_jump with an
+ inline test for a jump instruction in the existing "insn" loop.
+ (block_fallthru): Document function.
+
+2004-06-25 Philip Blundell <philb@gnu.org>
+
+ PR wrong-code/15089
+ * loop.c (scan_loop): Do not move user-specified register
+ assignments.
+
+2004-06-25 DJ Delorie <dj@redhat.com>
+
+ * c-common.h (warn_cast_qual, warn_missing_format_attribute,
+ warn_pointer_arith, warn_missing_prototypes, warn_parentheses,
+ warn_missing_braces, warn_sign_compare, warn_long_long,
+ warn_redundant_decls, warn_float_equal, warn_char_subscripts,
+ warn_conversion, warn_format_y2k, warn_format_extra_args,
+ warn_format_zero_length, warn_format_nonliteral,
+ warn_format_security, mesg_implicit_function_declaration,
+ warn_bad_function_cast, warn_traditional,
+ warn_declaration_after_statement, warn_strict_prototypes,
+ warn_missing_declarations, warn_nested_externs,
+ warn_sequence_point, warn_init_self, warn_div_by_zero,
+ warn_implicit_int, warn_nonnull, warn_old_style_definition,
+ warn_selector, warn_undeclared_selector, warn_protocol,
+ warn_abi, warn_invalid_offsetof, warn_ctor_dtor_privacy,
+ warn_overloaded_virtual, warn_nonvdtor, warn_reorder,
+ warn_synth, warn_pmf2ptr, warn_ecpp, warn_sign_promo,
+ warn_old_style_cast, warn_nontemplate_friend,
+ warn_deprecated): Remove explicit declarations.
+ * c-common.c: Likewise, remove explicit definitions.
+ * c-opts.c: Likewise, remove explicit assignments.
+ * c.opts: Likewise, add implicit declare/define/assign.
+
+2004-06-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * gimplify.c (lookup_tmp_var): Set TREE_READONLY in is_formal case.
+ (build_addr_expr_with_type): Deleted.
+ (build_addr_expr): Deleted; callers changed to build_fold_addr_expr.
+ (gimplify_compound_lval): Make two passes over reference nest.
+
+ * tree-nested.c (build_addr): Merge real/imagpart with
+ handled_component_p.
+ (convert_nonlocal_reference, convert_local_reference): Process extra
+ args to COMPONENT_REF and ARRAY_REF.
+ * tree-outof-ssa.c (discover_nonconstant_array_refs_r): Check for
+ lower bound and field offset being constant.
+
+2004-06-25 Mark Mitchell <mark@codesourcery.com>
+
+ PR wrong-code/16129
+ * alias.c (get_alias_set): Adjust setting of
+ DECL_POINTER_ALIAS_SET for pointers to aggregates.
+
+2004-06-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree-inline.c (remap_type): Arrange to have just one pointer type
+ for each type, mode, and 'can alias' value.
+ (setup_one_parameter): Remap type when making VAR_DECL for PARM_DECL.
+ (estimate_num_insns_1): Minor code reformatting.
+ (inline_forbidden_p_1): Likewise; add; missing return statement.
+
+2004-06-25 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/15825
+ * ifcvt.c (unshare_ifcvt_sequence): Rename to end_ifcvt_sequence.
+ Use get_isns and end_sequence instead of accepting a seq argument.
+ Scan the instruction sequence for unrecognizable or jump insns.
+ (noce_try_move, noce_try_store_flag, noce_try_store_flag_constants,
+ noce_try_addcc, noce_try_store_flag_mask, noce_try_cmove,
+ noce_try_cmove_arith, noce_try_minmax, noce_try_abs,
+ noce_try_sign_mask): Use end_ifcvt_sequence to factor common code.
+
+2004-06-24 Jeff Law <law@redhat.com>
+
+ * gimplify.c (gimplify_compound_lval): Reset TREE_SIDE_EFFECTS
+ after gimplifying the innermost component.
+
+2004-06-25 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/16176
+ * config/mips/mips.c (mips_expand_unaligned_load): Use a temporary
+ register for the destination of the lwl or ldl.
+
+2004-06-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree-dfa.c (get_virtual_var): Merge real/imaginary parts with
+ handled_component_p handling.
+ * tree-gimple.c (get_base_address): Likewise and fix typo that
+ caused both recursion and looping.
+
+ * tree-cfg.c (verify_expr): Add macro CHECK_OK.
+ Properly test for nest of handled_components in LHS context.
+
+2004-06-25 Devang Patel <dpatel@apple.com>
+
+ * doc/tree-ssa.texi: Document info about MODIFY_EXPR's type
+
+2004-06-25 Paul Brook <paul@codesourcery.com>
+
+ * target-def.h (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT,
+ TARGET_CXX): Define.
+ (TARGET_INITIALIZER): Use TARGET_CXX.
+ * target.h (struct gcc_target): Add struct cxx.
+ * targhooks.h (default_cxx_guard_type): Add prototype.
+ * targhooks.c (default_cxx_guard_type): New function.
+ * config/arm/arm.c (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT):
+ Define.
+ (arm_cxx_guard_type, arm_cxx_guard_mask_bit): New functions.
+ * doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
+ TARGET_CXX_GUARD_MASK_BIT.
+
+2004-06-25 Devang Patel <dpatel@apple.com>
+
+ * config/rs6000/darwin.h (CC1_SPEC): Handle -gused and -gfull.
+ * config/i386/darwin.h (CC1_SPEC): Same.
+
+2004-06-25 Mark G. Adams <mark.g.adams@sympatico.ca>
+
+ * dbxout.h: Add include guards
+
+2004-06-25 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_EABI__.
+
+2004-06-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_arch4t): New variable.
+ (arm_override_options): Initialize it. If compiling for armv5 or
+ higher clear TARGET_INTERWORK.
+ (output_call): Abort if called for armv5. Use BX if it's available.
+ (output_call_mem): Use BLX if available and ensure that all armv5
+ code is interworking safe.
+ (output_return_instruction): Always use BX in preference to MOV if
+ it's available.
+ (arm_output_epilogue): Likewise.
+ (arm_final_prescan_insn): Never conditionally call a subroutine
+ on armv5.
+ * arm.h (arm_arch4t): Declare.
+ * arm.md (call_reg_armv5, call_value_reg_armv5): New.
+ (call_reg_arm, call_value_reg_arm): Renamed from call_reg and
+ call_value_reg respectively.
+ (call_reg_thumb_v5, call_value_reg_thumb_v5): New.
+ (call_reg_thumb, call_value_reg_thumb): Renamed from call_indirect
+ and call_value_indirect respectively.
+
+2004-06-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (reg_or_const_float_1_operand): Reimplement
+ in terms of const_float_1_operand.
+
+2004-06-25 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/16144
+ * config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand
+ is 1.0; force it into a register instead.
+
+2004-06-25 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h: Restore valid comment removed by mistake with
+ the recent m68k comments cleanup.
+
+2004-06-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * c-gimplify.c (gimplify_for_stmt): Use gimplify_and_add.
+ * gimplify.c (internal_get_tmp_var, gimplify_return_expr): Likewise.
+ (gimplify_loop_expr, gimplify_init_constructor): Likewise.
+ (gimplify_self_mod_expr, gimplify_cond_expr): Likewise.
+
+ PR/16131
+ * gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
+
+ * gimplify.c: Remove unneeded forward declarations.
+
+ * gimplify.c (append_to_compound_expr): Deleted.
+ * tree-gimple.h (append_to_compound_expr): Deleted.
+
+ * fold-const.c (fold_addr_expr_with_type): Look through all
+ valid LHS modifiers to find a base to mark addressable.
+
+ * tree.h (debug_find_tree): Add declaration.
+ * tree-inline.c (debug_find_tree): Remove extern declaration.
+
+2004-06-24 Eric Christopher <echristo@redhat.com>
+
+ * config/rs6000/rs6000.md: Apply change mistakenly
+ deleted with 2004-06-22 patch.
+
+2004-06-24 Richard Henderson <rth@redhat.com>
+
+ * c-decl.c (c_in_iteration_stmt, c_in_case_stmt): Remove.
+ (c_break_label, c_cont_label): New.
+ (start_function): Update initializations.
+ (c_push_function_context): Update saves.
+ (c_pop_function_context): Update restores.
+ * c-parse.in: Update expected conflicts.
+ (stmt_count, compstmt_count): Remove. Remove all updates.
+ (if_prefix, simple_if, do_stmt_start): Remove.
+ (lineno_labeled_stmt): Remove.
+ (lineno_labels): New.
+ (c99_block_lineno_labeled_stmt): Use it.
+ (lineno_stmt, lineno_label): Don't clear EXPR_LOCUS before calling
+ annotate_with_locus.
+ (select_or_iter_stmt): Replace by ...
+ (condition, if_statement_1, if_statement_2, if_statement,
+ start_break, start_continue, while_statement, do_statement,
+ for_cond_expr, for_incr_expr, for_statement, switch_statement): New.
+ (stmt): Split out ...
+ (stmt_nocomp): ... this. Use c_finish_bc_stmt, c_finish_goto_label,
+ c_finish_goto_ptr.
+ * c-semantics.c (add_stmt): Don't add line numbers to labels.
+ * c-tree.h: Update prototypes.
+ (struct language_function): Remove x_in_iteration_stmt, x_in_case_stmt;
+ add x_break_label, x_cont_label, x_switch_stack.
+ (c_switch_stack): Declare.
+ * c-typeck.c (c_finish_goto_label, c_finish_goto_ptr): New.
+ (c_finish_return): Return the statement.
+ (c_switch_stack): Rename from switch_stack; export.
+ (if_elt, if_stack, if_stack_space, if_stack_pointer): Remove.
+ (c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_begin_else,
+ c_finish_else): Remove.
+ (c_finish_if_stmt): Rewrite to perform the entire operation.
+ (c_begin_while_stmt, c_finish_while_stmt_cond, c_finish_while_stmt,
+ c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
+ c_finish_for_stmt_incr, c_finish_for_stmt): Remove.
+ (c_finish_loop): New.
+ (c_finish_bc_stmt): New.
+ (c_finish_expr_stmt): Return the statement. Split out...
+ (c_process_expr_stmt): ... this. Don't add locus to error marks.
+ * gimplify.c (gimplify_cond_expr): Accept NULL type statements.
+ * tree-gimple.c (is_gimple_stmt): Likewise.
+ * tree-pretty-print.c (dump_generic_node <COND_EXPR>): Likewise.
+ (print_struct_decl): Delete empty compound statement.
+ * objc/objc-act.c (objc_build_throw_stmt): Return the statement.
+ * objc/objc-act.h: Update decl.
+
+2004-06-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree-pretty-print.c (dump_generic_node, case TYPE_DECL):
+ Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE.
+
+2004-06-24 Andrew Pinski <apinski@apple.com>
+
+ * objc-act.c (build_objc_method_call): Save the lookup_object
+ so we do not call it twice.
+
+2004-06-24 Richard Henderson <rth@redhat.com>
+
+ * tree-ssa-dom.c (real_avail_expr_hash): New.
+ (tree_ssa_dominator_optimize): Use it in the htab.
+
+2004-06-24 Frank Ch. Eigler <fche@redhat.com>
+
+ * tree-mudflap.c (mx_register_decls): Add third (type) argument
+ to synthesized __mf_unregister call.
+
+2004-06-24 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/15239
+ * expmed.c (expand_mult): Remove artificial restriction on the
+ maximum cost of a synthetic multiplication sequence.
+
+2004-06-24 Eric Christopher <echristo@redhat.com>
+
+ * combine.c (distribute_notes): Don't delete sets to
+ global register variables.
+
+2004-06-24 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (ffsdi2, clzdi2): New expanders.
+ (ffs_rex64): New splitter.
+ (ffsdi_1, ctzdi2, bsr_rex64): New instructions.
+
+2004-06-24 Andrew Pinski <apinski@apple.com>
+
+ * config/darwin7.h (MATH_LIBRARY): Remove.
+ (LIB_SPEC): Define.
+ * config/darwin.h (MATH_LIBRARY): Define always to empty.
+ (LIB_SPEC): Only define if not already defined.
+
+2004-06-24 Revital Eres <eres@il.ibm.com>
+
+ * loop-iv.c (iv_analyze, simple_set_p): Support for identifying
+ shifts of induction variable.
+ (iv_shift): New function.
+
+2004-06-24 Richard Henderson <rth@redhat.com>
+
+ * gimplify.c (gimplify_body): Watch for body vanishing.
+
+2004-06-24 Jeff Law <law@redhat.com>
+
+ * tree-ssa-dom.c (record_dominating_conditions): New function.
+ (dom_opt_finalize_block, get_eq_expr_value): Use it.
+
+2004-06-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * calls.c (shift_returned_value): Fix handling of non-integer
+ TYPE_MODEs.
+
+2004-06-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
+ * system.h (DEFAULT_MAIN_RETURN): Poison.
+ * doc/tm.texi (DEFAULT_MAIN_RETURN): Remove documentation.
+
+2004-06-24 Ben Elliston <bje@au.ibm.com>
+
+ * doc/cfg.texi (Edges): Fix typo.
+
+2004-06-24 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_output_epilogue): Remove excess checks.
+
+2004-06-23 Andrew Pinski <apinski@apple.com>
+
+ PR middle-end/15988
+ * fold-const.c (fold_convert): Types which are compatible
+ can be converted with only a NOP_EXPR.
+
+2004-06-24 Alan Modra <amodra@bigpond.net.au>
+
+ * calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and
+ pass raw n_named_args to it.
+ * targhooks.c: Formatting.
+ (hook_bool_CUMULATIVE_ARGS_false): Correct comment.
+
+2004-06-23 Richard Henderson <rth@redhat.com>
+
+ * c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside
+ non-constant size check. Gimplify the type too. Tidy building
+ BUILT_IN_STACK_ALLOC call.
+
+2004-06-23 Roger Sayle <roger@eyesopen.com>
+
+ * c-common.c (expand_unordered_cmp): Delete.
+ (expand_tree_builtin): Delete.
+ * c-common.h (expand_tree_builtin): Delete function prototype.
+ * c-typeck.c (build_function_call): Don't call expand_tree_builtin.
+
+2004-06-23 Richard Henderson <rth@redhat.com>
+
+ * gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or
+ COMPONENT_REF variable fields unless they're non-constant.
+
+2004-06-23 Robert Millan <robertmh@gnu.org>
+
+ * config.gcc: Merge kfreebsd*-gnu with linux* and add knetbsd*-gnu.
+ * config/i386/linux.h: Allow overriding of LINK_EMULATION,
+ DYNAMIC_LINKER and register names in sc_ structure.
+ * config/kfreebsd-gnu.h: New. kfreebsd-gnu followup for linux.h.
+ * config/i386/kfreebsd-gnu.h: New. Ditto for i386-kfreebsd-gnu.
+ * config/knetbsd-gnu.h: New. Ditto for knetbsd-gnu.
+ * config/i386/knetbsd-gnu.h: New. Ditto for i386-knetbsd-gnu.
+
+ * config/kfreebsdgnu.h: Remove.
+ * config/t-kfreebsd-gnu: Likewise.
+ * config/i386/kfreebsdgnu.h: Likewise.
+
+2004-06-23 Eric Christopher <echristo@redhat.com>
+
+ * fold-const.c (make_range): Cleanup type checking through function.
+ Remove orig_type. Replace with checks to exp_type and arg0_type.
+ Clarify comment when converting from unsigned to signed.
+
+2004-06-23 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.c (mips_use_dfa_pipeline_interface): Add R3000.
+ * config/mips/mips.md: Remove R3000 scheduling description.
+ * config/mips/3000.md: New file.
+
+2004-06-23 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_emit_compare): Add prototype.
+ (s390_emit_jump): Likewise.
+ * config/s390/s390.c (s390_emit_compare): New function.
+ (s390_emit_jump): Likewise.
+ * config/s390/s390.md ("beq", "bne", "bgt", "bgtu", "blt", "bltu",
+ "bge", "bgeu", "ble", "bleu", "bunordered", "bordered", "buneq",
+ "bungt", "bunlt", "bunge", "bunle", "bltgt"): Use s390_emit_compare
+ and s390_emit_jump.
+ ("cjump"): Remove, replace by ...
+ ("*cjump_64", "*cjump_31"): ... these insns. Improve length default.
+ ("icjump", "*icjump_64", "*icjump_31"): Likewise.
+ ("trap"): Fix type attribute.
+ ("conditional_trap"): Use s390_emit_compare.
+ ("doloop_si"): Remove, replace by ...
+ ("doloop_si64", "doloop_si31"): ... these new insn_and_split.
+ Merge existing splitter into insn_and_split. Improve length default.
+ ("doloop_di"): Merge with existing splitter into insn_and_split.
+ ("doloop"): Adapt.
+ ("jump"): Convert to expander. Use s390_emit_jump.
+ ("*jump_64", "*jump_31"): New insns. Improve length default.
+
+2004-06-23 Wu Yongwei <adah@sh163.net>
+
+ * gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
+ (__gthr_i486_lock_cmp_xchg): New inline assembly function.
+ (__GTHR_W32_InterlockedCompareExchange): New macro to choose a
+ suitable function for interlocked compare-and-exchange.
+ (__gthread_mutex_trylock): Use
+ __GTHR_W32_InterlockedCompareExchange.
+ (__gthread_mutex_init_function, __gthread_mutex_lock,
+ __gthread_mutex_trylock, __gthread_mutex_unlock): Adjust the
+ initial counter value to work correctly under Windows 95.
+ * config/i386/gthr-win32.c: Adjust include order.
+ Define __GTHREAD_I486_INLINE_LOCK_PRIMITIVES before including
+ gthr-win32.h.
+ (__gthr_win32_mutex_init_function, __gthr_win32_mutex_lock,
+ __gthr_win32_mutex_trylock, __gthr_win32_mutex_unlock): Adjust
+ to match inline versions in gthr-win32.h.
+
+2004-06-23 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_use_dfa_pipeline_interface): Delete.
+ (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Redefine a hook_int_void_1.
+ (insvdi_rshift_rlwimi_p): New function.
+ * config/rs6000/rs6000.md (insvdi_internal2/3): New patterns.
+ (extendsfdf2): Convert to define_insn_and_split.
+ * config/rs6000/rs6000-protos.h (insvdi_rshift_rlwimi_p): Prototype.
+
+2004-06-23 Andrew Pinski <apinski@apple.com>
+
+ * c-typeck.c (composite_type, <case ARRAY_TYPE>): Abort if we have
+ type qualifiers at all.
+ If both of the type domains are null and the new element type is
+ the same as one of the, return the one which the element type.
+ matches.
+ Do not call qualify_type on the new type.
+
+2004-06-23 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (DEFAULT_MAIN_RETURN): Remove.
+
+2004-06-23 Roger Sayle <roger@eyesopen.com>
+
+ * convert.c (strip_float_extension): Skip both NOP_EXPR and
+ CONVERT_EXPR floating point extensions.
+
+2004-06-23 Diego Novillo <dnovillo@redhat.com>
+
+ * Makefile.in (tree-vn.o): New.
+ (tree-ssa-pre.o): Don't depend on RTL_H.
+ * tree-dfa.c (find_referenced_vars): Don't call init_tree_ssa.
+ * tree-flow.h (struct var_ann_d): Remove field expr_set.
+ (add_to_value, expressions_equal_p, get_value_handle, vn_compute,
+ vn_lookup_or_add, vn_add, vn_lookup, vn_init, vn_delete): Declare.
+ * tree-optimize.c (execute_init_datastructures): New local function.
+ (pass_init_datastructures): New local variable.
+ (init_tree_optimization_passes): Sequence pass_init_datastructures.
+ * tree-pretty-print.c (MASK_POINTER): Remove.
+ (dump_generic_node): Handle VALUE_HANDLE.
+ * tree-ssa-pre.c: Move all value numbering routines to tree-vn.c.
+ Update callers to use new function names.
+ Use VALUE_HANDLE_ID and VALUE_HANDLE_EXPR_SET instead of
+ variable annotations.
+ * tree-ssa.c (init_tree_ssa): Call vn_init.
+ (delete_tree_ssa): Call vn_delete.
+ * tree-vn.c: New file.
+ * tree.c (tree_size): Handle VALUE_HANDLE.
+ (tree_node_structure): Likewise.
+ (iterative_hash_expr): Likewise.
+ * tree.def (VALUE_HANDLE): New code.
+ * tree.h (struct tree_value_handle): New.
+ (VALUE_HANDLE_ID): Define.
+ (VALUE_HANDLE_EXPR_SET): Define.
+ (enum tree_node_structure_enum): Add TS_VALUE_HANDLE.
+ (union tree_node): Add struct tree_value_handle.
+
+2004-06-23 Andrew Pinski <apinski@apple.com>
+
+ * c-typeck.c (composite_type):
+ <case POINTER_TYPE>: Build a qualified type of
+ the new type.
+ <case ARRAY_TYPE>: Likewise.
+ <case FUNCTION_TYPE>: Likewise.
+
+2004-06-23 Pat Haugen <pthaugen@us.ibm.com>
+
+ PR optimization/15633
+ * value-prof.c (divmod_fixed_value_transform): Compute probability
+ of taking optimal path and pass along to gen_ routine.
+ (mod_pow2_value_transform): Same.
+ (mod_subtract_transform): Same.
+ (gen_divmod_fixed_value): Add new probability parameter.
+ Add probability to newly created jump.
+ (gen_mod_pow2): Same.
+ (gen_mod_subtract): Same.
+
+2004-06-23 Richard Earnshaw <rearnsha@arm.com>
+
+ * PR target/15948
+ * arm.md (bicsi3_cbranch): Add alternative to handle tying operands
+ one and two.
+
+2004-06-23 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/15927
+ * arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary
+ reload if CLASS is BASE_REGS.
+
+2004-06-23 Richard Sandiford <rsandifo@redhat.com>
+
+ * gengtype-yacc.y (option): Avoid use of non-constant struct
+ initializer.
+
+2004-06-23 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/extend.texi (Function Attributes): Alphabetize.
+
+2004-06-23 Richard Henderson <rth@redhat.com>
+
+ * c-gimplify.c (gimplify_decl_stmt): Update gimplify_type_sizes call.
+ Use gimplify_and_add.
+ * c-typeck.c (c_finish_if_stmt): Use NULL instead of empty stmt.
+ * gimplify.c (build_and_jump, gimplify_exit_expr,
+ gimplify_init_constructor, gimplify_save_expr, gimple_push_cleanup,
+ gimplify_stmt, gimplify_expr): Likewise.
+ (shortcut_cond_expr): Handle NULL arms of COND_EXPR.
+ (gimplify_statement_list): Remove NULL entries.
+ (gimplify_to_stmt_list): Handle NULL results.
+ (gimplify_type_sizes): Add list_p argument.
+ (gimplify_one_sizepos): Don't use internal pre/post queue.
+ * tree-gimple.h (gimplify_type_sizes): Update.
+
+2004-06-22 Eric Christopher <echristo@redhat.com>
+
+ * config/rs6000/rs6000.md (*insvsi_internal5/6): New patterns.
+
+2004-06-22 Pat Haugen <pthaugen@us.ibm.com>
+
+ * cfghooks.c (make_forwarder_block): Decrement count on fallthru edge
+ when redirecting back edges.
+
+ * cfghooks.c (split_block): Call make_single_succ_edge so that edge
+ count/probability are set correctly.
+
+2004-06-22 Richard Henderson <rth@redhat.com>
+
+ * c-typeck.c (emit_side_effect_warnings): Ignore error marks.
+ (c_finish_stmt_expr): Likewise.
+
+ * config/i386/i386.c (TARGET_STRUCT_VALUE_RTX): New.
+ (ix86_return_in_memory): Move SSE vector return warning ...
+ (ix86_struct_value_rtx): ... here. New.
+
+2004-06-22 Richard Henderson <rth@redhat.com>
+
+ * tree.def (VTABLE_REF): Remove.
+ (OBJ_TYPE_REF): New.
+ (TRY_CATCH_EXPR, TRY_FINALLY_EXPR): Set type 's'.
+ * expr.c (expand_expr_real_1): Replace VTABLE_REF with OBJ_TYPE_REF.
+ * fold-const.c (non_lvalue): Likewise.
+ * gimplify.c (gimplify_expr): Likewise.
+ (gimplify_call_expr): Use is_gimple_call_addr.
+ * langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New.
+ * langhooks.h (fold_obj_type_ref): New.
+ * tree-gimple.c (is_gimple_call_addr): New.
+ * tree-gimple.h (is_gimple_call_addr): Declare.
+ * tree-inline.c (inlinable_function_p): Fix merge error.
+ (estimate_num_insns_1): Replace VTABLE_REF with OBJ_TYPE_REF.
+ * tree-pretty-print.c (dump_generic_node): Likewise.
+ (print_call_name): Handle OBJ_TYPE_REF.
+ * tree-ssa-ccp.c (fold_stmt): Fold OBJ_TYPE_REF.
+ * tree-ssa-operands.c (get_expr_operands): Handle OBJ_TYPE_REF.
+ * tree.h (OBJ_TYPE_REF_EXPR): New.
+ (OBJ_TYPE_REF_OBJECT, OBJ_TYPE_REF_TOKEN): New.
+ * doc/c-tree.texi (VTABLE_REF): Remove.
+ * objc/objc-act.c (build_objc_method_call): Build an OBJ_TYPE_REF.
+
+2004-06-22 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/16026
+ * function.c (assign_parms): Don't abort for overaligned PARALLEL.
+
+2004-06-22 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * Makefile.in (distclean): Don't try to remove empty directories.
+
+2004-06-22 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/15869
+ * config/mips/mips.c (mips_avoid_hazards): Call split_all_insns_noflow.
+
+2004-06-22 Alexandre Oliva <aoliva@redhat.com>
+
+ * config/mn10300/mn10300.md (movdi, movdf): Use high/low for movu
+ operands.
+
+2004-06-22 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.c (legitimate_offset_address_p): Make
+ global, rename rs6000_legitimate_offset_address_p.
+ (rs6000_legitimate_address_p): Adjust calls to it.
+ (lmw_operation): Ditto.
+ (stmw_operation): Ditto.
+ * config/rs6000/rs6000-protos.h: Declare it.
+ * config/rs6000/rs6000.md (*movdf_hardfloat32): Use it
+ instead of offsettable_memref_p.
+
+2004-06-22 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_legitimate_address): Disallow
+ [reg+reg] mode for TFmode memory accesses.
+ (rs6000_eliminate_indexed_memrefs): New.
+ (rs6000_emit_move): Call preceding for TImode and TFmode.
+
+2004-06-22 Paolo Bonzini <bonzini@gnu.org>
+
+ * tree-cfg.c (pass_warn_function_return): It needs
+ CFG, not SSA.
+
+2004-06-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ * doc/invoke.texi (Machine Dependent Options): Alphabetize.
+ (Submodel Options): Likewise.
+
+2004-06-21 Andrew Pinski <apinski@apple.com>
+
+ Radar #: 3701874
+ * c-decl.c (push_file_scope): Return early if we already
+ have a file scope.
+
+2004-06-21 Geoffrey Keating <geoffk@apple.com>
+
+ * c-opts.c (c_common_handle_option): Handle -fpch-preprocess.
+ * c-common.h (flag_pch_preprocess): Declare.
+ (c_common_pch_pragma): Likewise.
+ * c-common.c (flag_pch_preprocess): New.
+ * c-pch.c (c_common_read_pch): Support -fpreprocess-only.
+ (c_common_pch_pragma): New.
+ * c-ppoutput.c (cb_read_pch): New.
+ (init_pp_output): Support -fpch-preprocess.
+ * c-pragma.c (init_pragma): Support #pragma GNUC pch_preprocess.
+ * c.opt (fpch-preprocess): New.
+ * gcc.c (cpp_options): When save-temps, pass -fpch-preprocess.
+ * doc/cppopts.texi: Document -fpch-preprocess.
+ * doc/invoke.texi (Precompiled Headers): Mention that
+ -fpreprocessed is safe for PCH. Mention that if an option is
+ listed as safe that doesn't mean it does what you expect.
+
+2004-06-22 Ben Elliston <bje@au.ibm.com>
+
+ * tree-ssa.c (ssa_redirect_edge): Correct leading comment.
+
+2004-06-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * Makefile.in (gimplify.o): Add cgraph.h.
+ * alias.c (adjust_offset_for_component_ref): Use
+ component_ref_field_offset.
+ * c-decl.c (build_array_declarator): Add news args for ARRAY_REF.
+ * c-gimplify.c (gimplify_expr_stmt): Use alloc_stmt_list.
+ (gimplify_decl_stmt): Call gimplify_type_sizes for type.
+ For decl, call gimplify_one_sizepos and use statement list.
+ (gimplify_compound_literal_expr): New arg PRE_P.
+ Add statement to PRE_P list and return DECL.
+ (c_gimplify_expr, case COMPOUND_LITERAL_EXPR): Add arg to
+ gimplify_compound_literal_expr.
+ * c-tree.h (getdecls): Deleted.
+ * c-typeck.c (build_component_ref): Add operand for COMPONENT_REF.
+ (build_array_ref): Add two operands for ARRAY_REF.
+ (build_unary_op): Set TREE_INVARIANT and TREE_CONSTANT for
+ COMPOUND_LITERAL_EXPR.
+ * coverage.c (tree_coverage_counter_ref): Add new operands
+ for ARRAY_REF.
+ * emit-rtl.c (component_ref_for_mem_expr): Add new operand
+ for COMPONENT_REF.
+ (set_mem_attributes_minus_bitpos): Use array_ref_low_bound
+ and array_ref_element_size.
+ (widen_memory_access):Use component_ref_field_offset.
+ * explow.c (update_nonlocal_goto_save_area): Add two operands
+ for ARRAY_REF.
+ * expr.c (array_ref_element_size, array_ref_low_bound): New functions.
+ (component_ref_field_offset): Likewise.
+ (get_inner_reference): Use them.
+ (expand_expr_real_1, case ARRAY_REF): Use array_ref_low_bound.
+ * fold-const.c (fold, case EQ_EXPR): Properly handle DECL_SIZE.
+ (fold_read_from_constant_string): Use array_ref_low_bound.
+ Verify that result is a character type.
+ (build_fold_indirect_ref): Add two operands for ARRAY_REF.
+ * function.c (expand_function_start): Likewise.
+ * gimple-low.c (expand_var_p): Delete duplicated line.
+ * gimplify.c: Add static decls for local functions.
+ (cgraph.h): Now included.
+ (create_tmp_var): Remove check for ARRAY_TYPE.
+ (copy_if_shared_r): Look at bounds and sizes of types.
+ (build_and_jump): Return alloc_stmt_list instead of build_empty_stmt.
+ (gimplify_exit_expr, shortcut_cond_expr): Likewise.
+ (gimplify_save_expr, gimple_push_cleanup): Likewise.
+ (gimplify_init_constructor): Likewise.
+ WANT_VALUE now bool.
+ If empty list with no result wanted, return GS_UNHANDLED.
+ Add additional operands for ARRAY_REF and COMPONENT_REF.
+ (canonicalize_component_ref): Convert to &array[L].
+ (gimplify_array_ref_to_plus): Use array_ref_element_size and
+ array_ref_lower_bound.
+ (build_addr_expr_with_type, build_addr_expr): New functions.
+ (gimplify_compound_lval): WANT_LVALUE now bool.
+ Major rework to allow handle_component_p and initialize and
+ gimplify new operands for ARRAY_REF, ARRAY_RANGE_REF, and
+ COMPONENT_REF.
+ (gimplify_array_ref): Deleted.
+ (gimplify_self_mod_expr): WANT_VALUE now bool.
+ (gimplify_modify_expr): Gimplify to_p and from_p later.
+ Factor out code into gimplify_modify_expr_rhs and call twice.
+ Move variable-size code earlier and handle PLACEHOLDER_EXPR.
+ (gimplify_modify_expr_rhs, gimplify_variable_sized_compare): New fns.
+ (gimplify_addr_expr, case VIEW_CONVERT_EXPR): New case.
+ (gimplify_expr, case ARRAY_REF): Delete special case.
+ Instead handle like COMPONENT_REF; also do ARRAY_RANGE_REF,
+ IMAGPART, and REALPART the same way.
+ (gimplify_expr, case VIEW_CONVERT_EXPR): New case.
+ (gimplify_expr): Call gimplify_variable_sized_compare if applicable.
+ Call alloc_stmt_list instead of build_empty_stmt.
+ Deal with _REF that's volatile.
+ (gimplify_type_sizes, gimplify_one_sizepos): New functions.
+ (unshare_body, unvisit_body): New functions.
+ (gimplify_body): Call them.
+ * stmt.c (expand_stack_alloc): Don't expand TYPE_MAX_VALUE.
+ * stor-layout.c (get_pending_sizes): Don't change SAVE_EXPR_CONTEXT.
+ * tree-alias-common.c (get_alias_var): Also skip ARRAY_RANGE_REF.
+ * tree-cfg.c (tree_node_can_be_shared): Treat ARRAY_RANGE_REF
+ like ARRAY_REF.
+ (verify_expr, case ADDR_EXPR): Use handled_component_p.
+ * tree-dfa.c (get_virtual_var): Likewise.
+ * tree-dump.c (dequeue_and_dump, case COMPONENT_REF, ARRAY_REF):
+ New cases to dump new operands; likewise for ARRAY_RANGE_REF.
+ * tree-eh.c (tree_could_trap, case ARRAY_RANGE_REF): Like ARRAY_REF.
+ * tree-gimple.c (is_gimple_addr_expr_arg): Add ARRAY_RANGE_REF
+ and INDIRECT_REF.
+ (get_base_address): Use handled_component_p.
+ * tree-gimple.h (gimplify_type_sizes, gimplify_one_sizepos): New.
+ * tree-inline.c (walk_tree): Walk more things for types and decls.
+ * tree-mudflap.c (mf_build_check_statement_for): Add new operands
+ for ARRAY_REF and COMPONENT_REF.
+ (mx_xform_derefs_1): Clean up usage of decl sizes.
+ * tree-nested.c (build_addr): Use handled_component_p.
+ (walk_stmts, case CATCH_EXPR): Add missing "break".
+ (get_static_chain, get_frame_field): Add new operand for COMPONENT_REF.
+ (finalize_nesting_tree_1): Likewise.
+ (convert_nonlocal_reference, case ARRAY_RANGE_REF): Like ARRAY_REF
+ and process additional operands.
+ (convert_local_reference): Likewise.
+ * tree-outof-ssa.c (discover_nonconstant_array_refs_r): Treat
+ ARRAY_RANGE_REF similarly to ARRAY_REF.
+ * tree-pretty-print.c (dump_generic_node, case QUAL_UNION_TYPE): Handle
+ like RECORD_TYPE.
+ (dump_generic_node, case COMPONENT_REF): Print offset operand.
+ (dump_generic_node, case ARRAY_RANGE_REF): Treat like ARRAY_REF
+ and print lower bound and element size for both.
+ (op_prio, case ARRAY_RANGE_REF): Like ARRAY_REF.
+ * tree-sra.c (csc_build_component_ref): Add new operand.
+ (scalarize_call_expr): Use get_base_address.
+ * tree-ssa-ccp.c (widen_bitfield): Clean up size handling.
+ (maybe_fold_offset_to_array_ref): Rework to handle input having an
+ ARRAY_REF, refine handling of lower bound, and add new operands
+ for ARRAY_REF.
+ (maybe_fold_to_component_ref): Add new operand for COMPONENT_REF.
+ (maybe_fold_stmt_indirect): Only fold *&B to B if types match.
+ (maybe_fold_stmt_addition): Only handle constant lower bound.
+ * tree-ssa-operands.c (get_expr_operands): Minor rearrangements.
+ Treat ARRAY_REF and ARRAY_RANGE_REF the same; look at extra operands.
+ Look at new offset operand of COMPONENT_REF.
+ * tree-ssa.c (set_is_used): Use handled_component_p.
+ * tree.c (substitute_in_expr, case COMPONENT_REF): Add new operand.
+ (stabilize_reference, case COMPONENT_REF): Likewise.
+ (stabilize_reference, case ARRAY_RANGE_REF, ARRAY_REF): Similarly.
+ (recompute_tree_invariant_for_addr_expr): Completely rework to
+ be more precise. Also set TREE_SIDE_EFFECTS.
+ (build1_stat, case ARRAY_EXPR): Don't handle TREE_SIDE_EFFECTS here.
+ (build2_stat, build3_stat, build4_stat): For references,
+ propagate TREE_THIS_VOLATILE.
+ (get_unwidened): Add new operand for COMPONENT_REF.
+ (get_narrower): Likewise; use host_integerp for DECL_SIZE.
+ * tree.def (COMPONENT_REF): Add new operand.
+ (ARRAY_REF, ARRAY_RANGE_REF): Add two new operands.
+ * tree.h (array_ref_element_size, array_ref_low_bound): New decls.
+ (component_ref_field_offset): Likewise.
+ * config/alpha/alpha.c (alpha_va_start): Add new op for COMPONENT_REF.
+ (alpha_gimplify_va_arg): Likewise.
+ * config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
+ * config/i860/i860.c (i860_va_start, i860_va_arg): Likewise.
+ * config/iq2000/iq2000.c (iq2000_va_arg): Likewise.
+ * config/mips/mips.c (mips_va_start, mips_va_arg): Likewise.
+ * config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg):
+ Likewise.
+ * config/s390/s390.c (s390_va_start, s390_gimplify_va_arg): Likewise.
+ * config/sh/sh.c (sh_va_start, sh_va_arg): Likewise.
+ * config/stormy16/stormy16.c (xstormy1_expand_builin_va_start):
+ Likewise.
+ (xstormy16_expand_builtin_va_arg): Likewise.
+ * config/xtensa/xtensa.c (xtensa_va_start, xtensa_va_arg): Likewise.
+ * objc/objc-act.c (generate_static_references): Likewise.
+ (generate_strings, build_method_prototype_list_template): Likewise.
+ (generate_protocol_list): Likewise.
+
+2004-06-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR rtl-optimization/14782
+ * pa.c (emit_move_sequence): Use SFmode for 4-byte modes when doing
+ the address checks for secondary reloads for loads from and stores
+ to floating-point registers.
+ * pa.h (EXTRA_CONSTRAINT, case T): Use SFmode for 4-byte modes
+ in the address check. Move work around for ELF32 targets to
+ GO_IF_LEGITIMATE_ADDRESS.
+ (GO_IF_LEGITIMATE_ADDRESS): Require constant offsets to be
+ correctly aligned for DImode loads and stores. Don't allow long
+ SFmode displacements on ELF32.
+
+2004-06-21 Richard Henderson <rth@redhat.com>
+
+ PR rtl-opt/16114
+ * cse.c (merge_equiv_classes): Also rehash in response to
+ delete_reg_equiv changes.
+ (rehash_using_reg): Don't exclude REGs from rehashing.
+
+2004-06-21 Richard Henderson <rth@redhat.com>
+
+ * c-common.def (RETURN_STMT): Remove.
+ * c-common.h (RETURN_STMT_EXPR): Remove.
+ (c_expand_return, build_return_stmt): Remove.
+ (c_common_stmt_codes): Remove RETURN_STMT.
+ * c-dump.c (dump_next_stmt): Remove.
+ (c_dump_tree): Remove RETURN_STMT.
+ * c-decl.c (finish_function): Use c_finish_return.
+ * c-parse.in (stmt): Likewise.
+ * c-gimplify.c (gimplify_return_stmt): Remove.
+ (c_gimplify_expr): Remove RETURN_STMT.
+ * c-pretty-print.c (pp_c_statement): Likewise.
+ * c-semantics.c (build_return_stmt): Remove.
+ * c-tree.h (c_finish_return): Declare.
+ * c-typeck.c (c_finish_return): Rename from c_expand_return.
+ Return void. Build RETURN_EXPR directly.
+ * tree-dump.h (dump_next_stmt): Remove.
+
+2004-06-21 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (start_function): Don't call make_decl_rtl. Don't
+ look at TREE_ADDRESSABLE of symbol name.
+
+2004-06-21 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR target/15551
+ * config/i386/i386.md: Change UNSPEC_STACK_PROBE to UNSPECV_STACK_PROBE.
+ (allocate_stack_worker): Make unspec_volatile.
+ (allocate_stack_worker_rex64): Likewise.
+ (allocate_stack_worker_postreload): Likewise.
+ (allocate_stack_worker_rex64_postreload): Likewise.
+
+2004-06-21 Daniel Berlin <dberlin@dberlin.org>
+
+ Fix PR optimization/15982
+ * tree-ssa-pre.c: Update a few comments and todos to
+ reflect constants change.
+ (get_value_handle): Constants now value number to themselves.
+ (lookup): Constants lookup to themselves.
+ (add_to_value): Adjust to always be on.
+ (set_contains_value): Adjust for constants change.
+ (find_leader): Ditto.
+ (phi_translate): 'r' nodes are never ANTIC right now.
+ (valid_in_set): Ditto.
+ (get_expr_set): New function.
+ (find_or_generate_expression): New function, broken out from
+ insert_aux.
+ (create_expression_by_pieces): Ditto, plus additional
+ machinery to handle complex values.
+ (compute_avail): Remove dead RETURN_EXPR handling.
+
+2004-06-21 Steven Bosscher <stevenb@suse.de>
+
+ * config/i386/i386.c: Include insn-codes.h
+ * config/i386/i386.h (FLAGS_REG, FPSR_REG, DIRFLAG_REG): Don't
+ define here.
+ * config/i386/i386.md (BP_REG, SP_REG, FLAGS_REG, FPSR_REG,
+ DIRFLAG_REG): New define_constants. Use them everywhere.
+
+2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/t-linux (MULTILIB_OPTIONS): Remove.
+
+2004-06-21 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionally define.
+ (SUPPORT_SH4_SINGLE): Likewise.
+ (TARGET_SWITCHES): Break out switches for cpu subtargets:
+ (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define.
+ (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise.
+ (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise.
+ (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise.
+ (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise.
+ (TARGET_SWITCHES_SH5_32MEDIA): Likewise.
+ (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise.
+ (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to:
+ (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU)
+ (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to:
+ (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU).
+ (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define.
+ (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise.
+ * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine.
+ (TARGET_DEFAULT): Likewise.
+ * config/sh/t-elf: Amend comment.
+ * config/sh/t-1e, config/sh/t-mlib-sh1: New files.
+ * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise.
+ * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise.
+ * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise.
+ * config/sh/t-mlib-sh4-single: Likewise.
+ * config/sh/t-mlib-sh4-single-only: Likewise.
+ * config/sh/t-mlib-sh5-32media: Likewise.
+ * config/sh/t-mlib-sh5-32media-nofpu: Likewise.
+ * config/sh/t-mlib-sh5-64media: Likewise.
+ * config/sh/t-mlib-sh5-64media-nofpu: Likewise.
+ * config/sh/t-mlib-sh5-compact: Likewise.
+ * config/sh/t-mlib-sh5-compact-nofpu: Likewise.
+ * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb.
+ (MULTILIB_CPUS): Define.
+ (MULTILIB_OPTIONS): Use MULTILIB_CPUS.
+ (MULTILIB_MATCHES): Use some shell code to calculate it.
+ (MULTILIB_EXCEPTIONS): Change to ml/m1.
+ * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC.
+ * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU.
+ (LINK_DEFAULT_CPU_EMUL): Don't redefine.
+ (NO_PROFILE_COUNTERS): Define to 1.
+ * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to.
+ (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
+ * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine.
+ (MULTILIB_MATCHES): Don't zap.
+ (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES.
+ * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine.
+ (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
+ (MULTILIB_RAW_DIRNAMES): Define.
+ (MULTILIB_DIRNAMES): Use it.
+ * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*.
+ (sh*linux configurations): Merge into:
+ (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu,
+ --with-multilib-list options. Support sh-superh-elf configuration.
+ (sh*-netbsd*): Use SELECT_SH* macros.
+ (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu".
+ Merge sh*-*-netbsd* configurations into sh-elf configurations.
+ * config/sh/t-netbsd-sh5, config/sh/t-be, config/sh/t-le: Delete.
+ * config/sh/t-monolib: Likewise.
+
+2004-06-21 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need
+ not imply FPA.
+
+2004-06-21 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (operand_equal_p): Pass flags in recursive calls for
+ binary and relational operations. Add support for TRUTH_ANDIF_EXPR,
+ TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR.
+ * tree.c (commutative_tree_code): Also list UNORDERED_EXPR,
+ ORDERED_EXPR, UNEQ_EXPR, LTGT_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR
+ and TRUTH_XOR_EXPR.
+
+2004-06-21 Paolo Bonzini <bonzini@gnu.org>
+
+ * rtlanal.c (may_trap_p): Mark LTGT as trapping.
+
+2004-06-21 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * tree-alias-common.h (struct tree_alias_ops): Change ip and
+ ip_partial to unsigned int.
+
+2004-06-21 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (verify_sequence_points): Export.
+ (c_expand_expr_stmt): Move to c-typeck.c.
+ * c-common.h (c_expand_expr_stmt): Remove.
+ (verify_sequence_points): Declare.
+ * c-mudflap.c (mflang_flush_calls): Use c_finish_expr_stmt.
+ * c-parse.in (for_init_stmt, stmt): Likewise.
+ * c-tree.h (c_finish_expr_stmt): Declare.
+ (c_tree_expr_nonnegative_p): Remove.
+ * c-typeck.c (c_tree_expr_nonnegative_p): Remove.
+ (build_conditional_expr, build_binary_op): Use tree_expr_nonnegative_p.
+ (emit_side_effect_warnings): New.
+ (c_finish_expr_stmt): Rename from c_expand_expr_stmt. Use it.
+ (c_finish_stmt_expr): Work without EXPR_STMT. Handle eh regions.
+ Use emit_side_effect_warnings.
+ (push_cleanup): Copy STATEMENT_LIST_STMT_EXPR.
+ * fold-const.c (tree_expr_nonnegative_p): Handle TARGET_EXPR.
+ * gimplify.c (gimplify_modify_expr): Don't discard TARGET_EXPR
+ with void initializer.
+ (gimplify_target_expr): Handle void BIND_EXPR initializer.
+ * tree-inline.c (estimate_num_insns_1): Fix type lookup for
+ INIT_EXPR and MODIFY_EXPR.
+ * objc/objc-act.c (build_module_descriptor): Use add_stmt
+ instead of c_expand_expr_stmt.
+
+2004-06-21 Paolo Bonzini <bonzini@gnu.org>
+
+ * fold-const.c (fold_cond_expr_with_comparison):
+ New function, extracted from fold.
+ (fold): Extract code to fold A op B ? A : C, use
+ it to fold A op B ? C : A. Really optimize
+ A & N ? N : 0 where N is a power of two. Avoid
+ relying on canonicalization and recursion for
+ foldings of COND_EXPR to happen.
+
+2004-06-20 David Ayers <d.ayers@inode.at>
+
+ * objc/objc-act.h (get_object_reference): Rename to
+ get_protocol_reference.
+ (super_type): Rename to objc_super_type.
+ (selector_type): Rename to objc_selector_type.
+ (id_type): Rename to objc_id_type.
+ (instance_type): Rename to objc_instance_type.
+ (protocol_type): Rename to objc_protocol_type.
+ (IS_ID): Update reference to id_type.
+ * objc/objc-act.c (get_object_reference): Rename to
+ get_protocol_reference; add documentation; update references to
+ id_type.
+ (lookup_method_in_protocol_list): Rename class_meth to
+ is_class; add documentation.
+ (finish_message_expr): Rename is_class to class_tree.
+ (synth_module_prologue, objc_is_object_ptr, objc_build_exc_ptr,
+ next_sjlj_build_try_catch_finally, objc_begin_catch_clause,
+ build_next_objc_exception_stuff, get_arg_type_list,
+ build_objc_method_call): Update references to id_type.
+ (synth_module_prologue, build_objc_symtab_template,
+ build_selector_reference_decl, build_selector,
+ build_selector_translation_table, build_typed_selector_reference,
+ get_arg_type_list, synth_self_and_ucmd_args, get_arg_type_list,
+ synth_self_and_ucmd_args): Update references to selector_type.
+ (build_private_template, build_ivar_reference): Update references
+ to instance_type.
+ (synth_module_prologue, build_protocol_reference,
+ build_protocol_expr, start_protocol): Update references to
+ protocol_type.
+ (synth_module_prologue, get_arg_type_list, build_objc_method_call):
+ Update references to super_type.
+ * c-parse.in: (typespec_nonreserved_nonattr): Update
+ references to get_object_reference.
+ * objc/objc-tree.def: Add C mode identifier sequence.
+
+2004-06-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * loop-invariant.c: New file.
+ * Makefile.in (loop-invariant.o): New.
+ * cfgloop.h (global_cost_for_size, init_set_costs,
+ move_loop_invariants): Declare.
+ * cfgloopanal.c (seq_cost, init_set_costs, global_cost_for_size): New
+ functions.
+ (avail_regs, res_regs, small_cost, pres_cost, spill_cost): New
+ variables.
+ * common.opt (floop-optimize2, fmove-loop-invariants): New options.
+ * loop-init.c (loop_optimizer_init): Call init_set_costs.
+ * passes.c (rest_of_handle_loop2): Call move_loop_invariants.
+ (rest_of_compilation): Check flag_loop_optimize2.
+ * toplev.c (process_options): Handle flag_loop_optimize2.
+ * doc/invoke.texi (-floop-optimize2, -fmove-loop-invariants): Document.
+ * doc/passes.texi (loop-invariant.c): Document.
+
+2004-06-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * tree-ssa-pre.c (compute_antic): Keep BB_VISITED flag zeroed.
+
+2004-06-20 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (warn_if_unused_value): Add locus argument.
+ * tree.h (warn_if_unused_value): Update decl.
+ * c-typeck.c (internal_build_compound_expr): Update call.
+ * c-gimplify.c (gimplify_expr_stmt): Likewise.
+
+2004-06-20 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR middle-end/16089
+ * builtins.c (entry_of_function): Move to ...
+ * cfgrtl.c (entry_of_function): Here and make non-static.
+ * integrate.c (emit_initial_value_sets): Use entry_of_function.
+ * rtl.h (entry_of_function): Prototype.
+
+2004-06-20 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.c (pentium4_cost): Increase "lea" cost from 1 to 3.
+ (ix86_rtx_costs) <ASHIFT, PLUS>: Consider ix86_cost->lea even when
+ TARGET_DECOMPOSE_LEA.
+
+2004-06-20 Richard Henderson <rth@redhat.com>
+
+ * c-common.h (add_decl_stmt): Move to cp-tree.h.
+ * c-decl.c (finish_decl): Don't use add_decl_stmt.
+ * c-parse.in: Likewise.
+ * c-gimplify.c (gimplify_expr_stmt): Don't build CLEANUP_POINT_EXPR.
+ (gimplify_c_loop, gimplify_return_stmt, gimplify_decl_stmt): Likewise.
+ * c-semantics.c (add_decl_stmt): Move to cp/semantics.c.
+
+2004-06-20 Richard Henderson <rth@redhat.com>
+
+ * c-common.def (IF_STMT, CLEANUP_STMT): Move to cp-tree.def.
+ * c-common.h (IF_COND, THEN_CLAUSE, ELSE_CLAUSE, CLEANUP_BODY,
+ CLEANUP_EXPR, CLEANUP_DECL): Move to cp-tree.h.
+ (c_common_stmt_codes): Remove IF_STMT, CLEANUP_STMT.
+ * c-dump.c (c_dump_tree): Move IF_STMT, CLEANUP_STMT to cp_dump_tree.
+ * c-pretty-print.c (pp_c_statement): Similarly.
+ * c-gimplify.c (gimplify_cleanup_stmt, gimplify_cleanup_stmts,
+ gimplify_if_stmt): Move to cp-gimplify.c.
+ (c_genericize, c_gimplify_expr): Don't call them.
+ * c-semantics.c (push_cleanup): Move to cp/semantics.c.
+ * c-typeck.c (push_cleanup): New.
+ (c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_finish_else,
+ c_finish_if_stmt): Use COND_EXPR.
+ * tree.h (CLEANUP_EH_ONLY): Update documentation.
+
+2004-06-20 Zack Weinberg <zack@codesourcery.com>
+
+ * c-common.h (has_c_linkage): New interface.
+ * c-cppbuiltin.c: Include target.h.
+ (c_cpp_builtins): Define __PRAGMA_REDEFINE_EXTNAME and
+ __PRAGMA_EXTERN_PREFIX when appropriate.
+ * c-pragma.c: Include target.h.
+ Document clarified semantics of symbol-renaming #pragmas.
+ (handle_pragma_redefine_extname, handle_pragma_extern_prefix)
+ (maybe_apply_renaming_pragma): Rewrite according to clarified
+ semantics. Always recognize, but do not necessarily execute.
+ (init_pragma): Unconditionally register symbol-renaming pragmas.
+ * system.h: Poison HANDLE_PRAGMA_REDEFINE_EXTNAME
+ and HANDLE_PRAGMA_EXTERN_PREFIX.
+ * target.h (struct gcc_target): Add handle_pragma_redefine_extname
+ and handle_pragma_extern_prefix flags.
+ * target-def.h: Add defaults for TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME
+ and TARGET_HANDLE_PRAGMA_EXTERN_PREFIX.
+ * Makefile.in (c-pragma.o, c-cppbuiltin.o): Update dependencies.
+ * config/sol2.h: Define TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME,
+ not HANDLE_PRAGMA_REDEFINE_EXTNAME.
+ (TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_REDEFINE_EXTNAME.
+ (TRANSFER_FROM_TRAMPOLINE): Prototype mprotect.
+ * config/alpha/osf.h: Define TARGET_HANDLE_PRAGMA_EXTERN_PREFIX,
+ not HANDLE_PRAGMA_EXTERN_PREFIX.
+ (TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_EXTERN_PREFIX.
+ * doc/extend.texi (Solaris Pragmas, Tru64 Pragmas): Combine
+ into one section "Symbol-Renaming Pragmas"; clarify; document
+ adjusted semantics.
+
+ * builtins.c (expand_builtin): Do not issue error for a builtin
+ with no special case code and no DECL_ASSEMBLER_NAME; just do the
+ library call.
+ * c-decl.c (builtin_function): Don't call make_decl_rtl.
+ * c-objc-common.c (has_c_linkage): Stub implementation.
+ * cgraphunit.c (cgraph_expand_function)
+ (cgraph_remove_unreachable_nodes): Don't clear DECL_ARGUMENTS.
+
+2004-06-19 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (fold_builtin_unordered_cmp): Take an EXP argument
+ instead of both an ARGLIST and a result TYPE. Handle these C99
+ comparison functions as "polymorphic" builtins. Also handle
+ lowering of BUILT_IN_ISUNORDERED to an UNORDERED_EXPR tree node.
+ (fold_builtin_1): Update calls to fold_builtin_unordered_cmp.
+ Move handling of BUILT_IN_ISUNORDERED from here to there.
+
+2004-06-19 Richard Henderson <rth@redhat.com>
+
+ * c-common.c, c-common.h (lang_gimplify_stmt): Remove.
+ * c-gimplify.c: Remove unnecessary prototypes.
+ (c_gimplify_stmt): Merge into ...
+ (c_gimplify_expr): ... here. Don't play with prep_stmt.
+ * c-semantics.c (prep_stmt): Remove.
+ * gimplify.c (annotate_one_with_locus): Break out from ...
+ (annotate_all_with_locus): ... here.
+ (gimplify_expr): Add locus to expressions even if pre/post queues
+ are not present.
+
+2004-06-19 Richard Henderson <rth@redhat.com>
+
+ PR target/15941
+ * function.c (assign_parms): If not padding upward or intentionally
+ forcing upward padding, take offset_rtx into account when determining
+ the alignment for stack_parm.
+
+2004-06-19 Richard Henderson <rth@redhat.com>
+
+ PR target/15550
+ * ifcvt.c (noce_try_move): Recognize all generated instructions.
+
+2004-06-19 Jan Hubicka <jh@suse.cz>
+
+ * function.c (free_after_compilation): Do not free computed_goto_common*.
+ * function.h (struct function): Kill computed_goto_common*.
+ * stmt.c (expand_computed_goto): Do not commonize the computed gotos.
+ * tree-cfg.c (disband_implicit_edges): Do not forward across the
+ commonized computed goto.
+
+2004-06-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * doc/invoke.texi: Remove obsolete comment regarding PA 2.0 support
+ in binutils.
+
+2004-06-19 Andrew Pinski <apinski@apple.com>
+
+ PR c++/15721
+ * toplev.c (wrapup_global_declarations): Do not check
+ TREE_SYMBOL_REFERENCED of the DECL_ASSEMBLER_NAME but check
+ cgraph_varpool_node's needed field.
+
+2004-06-19 Jan Hubicka <jh@suse.cz>
+ Steven Bosscher <stevenb@suse.de>
+
+ CFG transparent RTL expansion:
+ * Makefile.in (cfgexpand.o): New object file.
+ (builtins.o): Add dependency on basic-block.h
+ * builtins.c: Include basic-block.h
+ (entry_of_function): New function.
+ (expand_builtin_apply_args, expand_builtin_saveargs): Use it.
+ * cfgexpand.c: New file.
+ * expr.c (execute_expand, pass_expand): Kill.
+ * pass.c (rest_of_compilation): Do not build CFG unless called from
+ coverage code.
+ * tree-cfg.c (delete_tree_cfg): Rename to..
+ (delete_tree_cfg_annotations): ... this one; Do not remove the CFG itself.
+ * tree-flow.h (delete_tree_cfg_annotations): Declare.
+ (dleete_tree_cfg): Kill.
+ * tree-optimize.c (execute_rebuild_bind, pass_rebuild_bind): Kill.
+ (execute_del_cfg): Rename to...
+ (execute_free_datastructures): This one...
+ (pass_del_cfg): Rename to...
+ (pass_free_datastructures): ... this one; Do not kill PROP_cfg.
+ (init_tree_optimization_passes): Make cfg build and profiling to happen
+ unconditionally.
+
+2004-06-19 Steven Bosscher <stevenb@suse.de>
+
+ * tree-mudflap.c (mf_decl_cache_locals): Skip labels before
+ inserting the cache variables.
+
+ * tree-mudflap.c: Include headers to make basic_block available.
+ Move functions around such that related functions are near each
+ other. Add prototypes for all static functions. Add comments
+ briefly explaining what IR the mudflap1 and mudflap2 work on and
+ what they do.
+ (mudflap_function_decls): Rename to execute_mudflap_function_decls.
+ (mudflap_function_ops): Rename to execute_mudflap_function_ops.
+ (pass_mudflap_1, pass_mudflap_2): Update.
+ (mf_decl_cache_locals): Make it work on the CFG instead of the saved
+ function tree.
+ (mf_build_check_statement_for): Make it work on the CFG.
+ (mf_xform_derefs_1): Likewise. Cleanup code style.
+ (mf_xform_derefs): Likewise.
+
+2004-06-19 Jan Hubicka <jh@suse.cz>
+
+ * tree-cfg.c (label_to_block): Invent the label destination for
+ undefined labels.
+ (cleanup_dead_labels): Update table in the case label_to_block added
+ new label.
+
+2004-06-18 Richard Henderson <rth@redhat.com>
+
+ PR c++/16036
+ * gimple-low.c (lower_function_body): Generate return statement for
+ fall off the end of the function here ...
+ * tree-cfg.c (make_edges): ... instead of here.
+ * gimplify.c (gimplify_return_expr): Mark return temp TREE_NO_WARNING.
+
+2004-06-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * tree-ssa.c (raise_value): Removed.
+ (get_eq_name, check_phi_redundancy): New functions.
+ (kill_redundant_phi_nodes): Use standard ssa minimalization algorithm.
+
+2004-06-18 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <UNORDERED_EXPR, ORDERED_EXPR, UNLT_EXPR,
+ UNLE_EXPR, UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR, LTGT_EXPR>: Add
+ constant folding for unordered comparison tree nodes. If both
+ operands are real constants, call fold_relational_const. If either
+ operand is a NaN, evaluate the other for side-effects and return a
+ constant. Optimize (double)float1 CMP (double)float2 into the
+ equivalent float1 CMP float2.
+ (nondestructive_fold_binary_to_constant) <UNORDERED_EXPR,
+ ORDERED_EXPR, UNLT_EXPR, UNLE_EXPR, UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR,
+ LTGT_EXPR>: Call fold_relational_const for constant operands.
+ (fold_relational_const): Add support for unordered comparison tree
+ nodes. Don't constant fold "ordered" floating point comparisons
+ against NaN if when flag_trapping_math is set.
+
+2004-06-19 Jakub Jelinek <jakub@redhat.com>
+
+ * fold-const.c (build_range_check): If !in_p and recursive call
+ fails, exit immediately. If high - low overflows and etype is
+ a signed type, retry with unsigned etype.
+ (merge_ranges): If !in0_p and !in1_p, handle even range2 adjacent
+ to range1 at TYPE_MAX_VALUE and TYPE_MIN_VALUE.
+
+2004-06-18 Richard Henderson <rth@redhat.com>
+
+ * c-gimplify.c (gimplify_condition): Remove.
+ (gimplify_c_loop, gimplify_if_stmt, gimplify_switch_stmt): Don't
+ call it.
+
+2004-06-18 Richard Henderson <rth@redhat.com>
+
+ * tree-eh.c (decide_copy_try_finally): Fix scaling of copy and
+ switch estimates.
+
+2004-06-18 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/i386/darwin.h (HOT_TEXT_SECTION_NAME): Define.
+ (NORMAL_TEXT_SECTION_NAME): Define.
+ (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Define.
+ (SECTION_FORMAT_STRING): Define.
+
+2004-06-18 Steven Bosscher <stevenb@suse.de>
+
+ * config/xtensa/xtensa.c
+ (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define.
+ * xtensa.md: Replace the old pipeline description with a DFA model.
+
+2004-06-18 Steven Bosscher <stevenb@suse.de>
+ Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * config/s390/s390.md: Remove the generic pipeline description.
+ * config/s390/2064.md: Make all insn reservations apply to
+ the z900, g5 and g6.
+ * config/s390/s390.c (s390_use_dfa_pipeline_interface): Remove.
+ (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
+ Define to hook_int_void_1.
+ (s390_adjust_cost): Cleanup. Don't check address dependency here.
+ (s390_first_cycle_multipass_dfa_lookahead): Always return 4.
+
+2004-06-18 Daniel Berlin <dberlin@dberlin.org>
+ Diego Novillo <dnovillo@redhat.com>
+
+ * tree-dfa.c (create_var_ann): tree_ann -> tree_ann_t.
+ (create_stmt_ann): Ditto.
+ (create_tree_ann): New function.
+ (create_cst_ann): Remove.
+ (create_expr_ann): Ditto.
+
+ * tree-flow-inline.h (cst_ann): Remove.
+ (get_cst_ann): Ditto.
+ (get_expr_ann): Ditto.
+ (expr_ann): Ditto.
+ (get_tree_ann): New function.
+ (tree_ann): Ditto.
+ (ann_type): tree_ann -> tree_ann_t.
+ * tree-flow.h (tree_ann_type): CST_ANN, EXPR_ANN removed.
+ (struct cst_ann_d): Removed.
+ (struct expr_ann_d): Ditto.
+ (union tree_ann_d): Removed cst and expr.
+ (tree_ann): Renamed to tree_ann_t.
+ * tree-ssa-ccp.c (set_rhs): tree_ann -> tree_ann_t.
+ * tree-ssa-pre.c (get_value_handle): Rewrite for single common
+ annotation.
+ (set_value_handle): Ditto.
+ (phi_translate): Ditto.
+ * tree-tailcall.c (adjust_return_value): tree_ann -> tree_ann_t.
+
+2004-06-18 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/t-linux64: New file.
+ * config.gcc: Add it to tmake_file for sh64*-*-linux*.
+
+2004-06-18 Paolo Bonzini <bonzini@gnu.org>
+
+ * emit-rtl.c (unshare_all_rtl_1): New name of unshare_all_rtl.
+ (unshare_all_rtl_again): Call unshare_all_rtl_1.
+ (unshare_all_rtl): New.
+ * function.c (instantiate_virtual_regs): Remove parameters.
+ * function.h (instantiate_virtual_regs): Add prototype.
+ * rtl.h (unshare_all_rtl): Add prototype.
+ * tree.h (instantiate_virtual_regs, unshare_all_rtl): Remove
+ prototype.
+ * passes.c: Remove assertions on the parameters to
+ rest_of_handle_* functions. Remove the parameters to
+ the functions, replacing decl with current_function_decl
+ and insns with get_insns ().
+
+2004-06-17 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (constant_boolean_node): Handle boolean_type_node
+ directly, return either boolean_true_node or boolean_false_node.
+
+2004-06-18 Kelley Cook <kcook@gcc.gnu.org>
+
+ * opts.sh: Delete. Break out generated code to next four files.
+ * opt-gather.awk: New file.
+ * optc-gen.awk: New file.
+ * opth-gen.awk: New file.
+ * opt-functions.awk: New common file.
+ * Makefile.in: Update for above.
+ * configure.ac: Update comment.
+ * configure: Regenerate.
+
+2004-06-17 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (flag_objc_sjlj_exceptions): New.
+ * c-common.h (flag_objc_sjlj_exceptions): Declare.
+ * c-opts.c (c_common_handle_option): Set it.
+ (c_common_post_options): Handle interation of different
+ objective-c exception and runtime switches.
+ * c-decl.c (c_eh_initialized_p): New.
+ (finish_decl): Use it instead of local eh_initialized_p.
+ * c-parse.in (nested_function, notype_nested_function): Record
+ the result of compstmt.
+ (compstmt_or_error): Likewise.
+ (compstmt): Don't add_stmt the result.
+ (stmt): Don't return anything. Rewrite objc try and sync rules.
+ (objc_try_stmt, objc_catch_list): Remove.
+ (objc_catch_block, objc_finally_block): Remove.
+ (objc_catch_prefix, objc_catch_clause, objc_opt_catch_list): New.
+ (objc_try_catch_clause, objc_finally_clause): New.
+ (objc_try_catch_stmt): Rewrite.
+ * c-tree.h (c_eh_initialized_p): Declare.
+ * c-opt (fobjc-sjlj-exceptions): New.
+ * except.c (output_function_exception_table): Don't call cgraph
+ on non-decls.
+ * objc/objc-act.c (UTAG_EXCDATA_VAR, UTAG_CAUGHTEXC_VAR,
+ UTAG_RETHROWEXC_VAR, UTAG_EVALONCE_VAR, struct val_stack,
+ catch_count_stack, exc_binding_stack, if_nesting_count,
+ blk_nesting_count, objc_enter_block, objc_exit_block,
+ objc_declare_variable, val_stack_push, val_stack_pop,
+ objc_build_try_enter_fragment, objc_build_extract_expr,
+ objc_build_try_exit_fragment, objc_build_extract_fragment,
+ objc_build_try_prologue, objc_build_try_epilogue,
+ objc_build_catch_stmt, objc_build_catch_epilogue,
+ objc_build_finally_prologue, objc_build_finally_epilogue,
+ objc_build_try_catch_finally_stmt, objc_build_synchronized_prologue,
+ objc_build_synchronized_epilogue): Remove.
+ (objc_create_temporary_var, struct objc_try_context, cur_try_context,
+ objc_eh_runtime_type, objc_init_exceptions, objc_build_exc_ptr,
+ next_sjlj_build_try_exit, next_sjlj_build_enter_and_setjmp,
+ next_sjlj_build_exc_extract, next_sjlj_build_catch_list,
+ next_sjlj_build_try_catch_finally, objc_begin_try_stmt,
+ objc_begin_catch_clause, objc_finish_catch_clause,
+ objc_build_finally_clause, objc_finish_try_stmt,
+ objc_build_synchronized): New.
+ (objc_is_object_id, objc_is_class_id): New.
+ (objc_comptypes): Use them.
+ (build_next_objc_exception_stuff): Break NeXT sjlj out from
+ build_objc_exception_stuff.
+ (synth_module_prologue): Update to match.
+ (objc_build_throw_stmt): Use cur_try_context to decide if
+ we're in a @catch.
+ * objc/objc-act.h: Update prototypes.
+ (OCTI_EXCEPTION_BLK_STACK, objc_exception_block_stack): Remove.
+
+2004-06-17 Andrew Pinski <apinski@apple.com>
+
+ * c-typeck.c (tagged_types_tu_compatible_p <case UNION_TYPE>):
+ Use TYPE_FIELDS instead of TYPE_VALUES.
+
+2004-06-17 Jason Merrill <jason@redhat.com>
+
+ PR c++/16015
+ * gimplify.c (gimplify_target_expr): Handle void initializer.
+ * expr.c (expand_expr_real_1) [TARGET_EXPR]: Likewise.
+ * doc/c-tree.texi (Expression trees): Update TARGET_EXPR
+ and AGGR_INIT_EXPR.
+
+2004-06-17 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_relational_const): Use constant_boolean_node.
+
+2004-06-17 Jan Hubicka <jh@suse.cz>
+
+ PR target/15433
+ * i386.md (SSE SF cmov 0 splitter): The conditional is VOIDmode; fix
+ operand numbering in the output template.
+ (SSE DF cmov 0 splitter): The conditional is VOIDmode.
+
+2004-06-17 Jan Hubicka <jh@suse.cz>
+
+ * except.c (can_throw_internal): Recognize RESX expresisons.
+
+2004-06-17 Jan Hubicka <jh@suse.cz>
+
+ * cfgbuild.c (make_edges): Do not use label_value_list.
+ (find_basic_blocks_1): Do not collect label_value_list.
+ (find_sub_basic_blocks): Update call of make_edges.
+
+2004-06-17 Andrew MacLeod <amacleod@redhat.com>
+
+ * tree-cfg.c (tree_make_forwarder_block): Use SET_PHI_RESULT.
+ * tree-flow-inline.h (get_use_op_ptr): Return a use_operand_p.
+ (get_use_from_ptr, get_def_from_ptr): New. Return operand pointers.
+ (get_def_op_ptr): Return a def_operand_p instead of a 'tree *'.
+ (get_v_may_def_result_ptr): Return a def_operand_p.
+ (get_v_may_def_op_ptr, get_vuse_op_ptr): Return a use_operand_p.
+ (get_v_must_def_op_ptr): Return a def_operand_p.
+ (get_phi_result_ptr): New. Return a pointer to the result of a PHI.
+ (get_phi_arg_def_ptr): New. Return a pointer to an argument of a PHI.
+ (phi_element_for_edge): Remove.
+ * tree-flow.h (propagate_value, replace_exp): Change prototype.
+ (propagate_tree_value): Add new prototype.
+ (phi_element_for_edge): Remove prototype.
+ * tree-into-ssa.c (mark_def_sites): Use new operand types.
+ (prepare_operand_for_rename): Split into two functions.
+ (prepare_use_operand_for_rename): Prepare use operands.
+ (prepare_def_operand_for_rename): Prepare def operands.
+ (rewrite_stmt): Use new operand types.
+ (rewrite_operand): Use new operand types, change parameter type.
+ * tree-outof-ssa.c (replace_variable): Split into two functions.
+ (replace_use_variable): Rewrite uses.
+ (replace_def_variable): Rewrite defs.
+ (rewrite_trees, rewrite_vars_out_of_ssa): Use new operand types.
+ * tree-phinodes.c (make_phi_node, resize_phi_node): Use new types.
+ (add_phi_arg, remove_phi_arg_num): Use new operand types.
+ * tree-ssa-ccp.c (substitute_and_fold): Use new operand types.
+ (ccp_fold, replace_uses_in): Use new operand types.
+ * tree-ssa-copy.c (replace_ssa_names): Rename to replace_ssa_names_ann
+ and no longer set the value, change parameter type.
+ (replace_exp_1): Use new operand types.
+ (propagate_value): Change parameter type, use new operand types.
+ (propagate_tree_value): Propagate_value without SSA operands.
+ (replace_exp, cprop_operand, cprop_into_stmt): Use new operand types.
+ (cprop_into_successor_phis): Use new operand types.
+ * tree-ssa-dom.c (thread_across_edge): Use new operand types.
+ (eliminate_redundant_computations): Use new operand types.
+ * tree-ssa-dse.c (fix_phi_uses): Use new operand_types.
+ (fix_stmt_v_may_defs): Use new operand_types.
+ * tree-ssa-live.c (create_ssa_var_map): Use new operand_types.
+ (build_tree_conflict_graph): Use new operand_types.
+ * tree-ssa-loop.c (duplicate_blocks): Use PHI_ARG_DEF_FROM_EDGE.
+ * tree-ssa-operands.c (struct freelist_d): Remove.
+ (check_optype_freelist, add_optype_freelist): Remove.
+ (allocate_def_optype, allocate_use_optype, allocate_v_may_def_optype,
+ allocate_vuse_optype, allocate_v_must_def_optype): Call ggc_alloc.
+ (free_uses, free_defs, free_vuses, free_v_may_defs, free_v_must_defs):
+ Call ggc_free instead of add_optype_freelist.
+ (init_ssa_operands, fini_ssa_operands): Remove free list code.
+ (finalize_ssa_defs, finalize_ssa_uses): Set new use/def operands.
+ * tree-ssa-operands.h (struct def_optype_d): Change underlying type.
+ (struct use_optype_d): Change underlying type.
+ (def_operand_p, use_operand_p): New types for pointers to operands.
+ (USE_OP, DEF_OP, V_MAY_DEF_RESULT, V_MAY_DEF_OP, VUSE_OP,
+ V_MUST_DEF_OP): Use new pointer type instead of dereferencing directly.
+ (USE_FROM_PTR, DEF_FROM_PTR): New macros to "dereference" operand
+ pointer types.
+ (SET_USE, SET_DEF): New macros to set operands from their pointer.
+ (SET_USE_OP, SET_DEF_OP, SET_V_MAY_DEF_RESULT, SET_V_MAY_DEF_OP,
+ SET_VUSE_OP, SET_V_MUST_DEF_OP): New SET routines for operands.
+ (PHI_RESULT_PTR, PHI_RESULT, SET_PHI_RESULT): Macros to manage the
+ PHI result as an operand.
+ (PHI_ARG_DEF_PTR, PHI_ARG_DEF, SET_PHI_ARG_DEF, PHI_ARG_DEF_FROM_EDGE,
+ PHI_ARG_DEF_PTR_FROM_EDGE): Macros to manage the PHI arguments.
+ * tree-ssa-pre.c (eliminate): Call propagate_tree_value.
+ * tree-tailcall.c (independent_of_stmt_p, propagate_through_phis): Use
+ PHI_ARG_DEF_FROM_EDGE.
+ * tree.h (PHI_RESULT): Renamed to PHI_RESULT_TREE.
+ (PHI_ARG_DEF): Renamed to PHI_ARG_DEF_TREE.
+
+2004-06-17 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR tree-optimization/15991
+ * tree-cfg.c (tree_block_label): Export.
+ * tree-flow-inline.h (bsi_after_labels): New function.
+ * tree-flow.h (bsi_after_labels, tree_block_label): Declare.
+ * tree-ssa.c (propagate_into_addr): New function.
+ (replace_immediate_uses): Handle propagation of pointer constants.
+ (raise_value): Do not restrict propagation of pointer constants.
+ * tree-ssanames.c (duplicate_ssa_name): New function.
+ * tree.h (duplicate_ssa_name): Declare.
+
+2004-06-17 David Ayers <d.ayers@inode.at>
+
+ * c-parse.in: Unify Objective-C token names.
+
+2004-06-17 Zack Weinberg <zack@codesourcery.com>
+
+ Bug 14610
+ * Makefile.in (min-insn-modes.o): Correct dependencies.
+ * real.c (encode_ieee_extended, decode_ieee_extended): Always
+ produce/consume 12-byte little-endian Intel format.
+ (encode_ieee_extended_128, decode_ieee_extended_128): Delete.
+ (encode_ieee_extended_motorola, decode_ieee_extended_motorola)
+ (encode_ieee_extended_intel_96, decode_ieee_extended_intel_96)
+ (encode_ieee_extended_intel_128, decode_ieee_extended_intel_128):
+ New functions which convert between 12-byte little-endian Intel
+ format and the desired format.
+ (ieee_extended_motorola_format, ieee_extended_intel_96_round_53_format)
+ (ieee_extended_intel_96_format, ieee_extended_intel_128_format):
+ Update.
+
+2004-06-17 Zack Weinberg <zack@codesourcery.com>
+
+ * expmed.c (expand_mult_const): In sanity check, compare only
+ the bits of val and val_so_far that are significant in the
+ result mode.
+
+2004-06-17 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa-pre.c: Update comments.
+ (val_expr_pair_eq): Factor code from here.
+ (expr_pred_trans_eq): and here.
+ (expressions_equal_p): To here.
+ (print_value_set): Print value for expression.
+ (phi_trans_lookup): Rename some variables.
+ (lookup): Ditto.
+ (value_exists_in_set_bitmap): Ditto.
+ (value_remove_from_set_bitmap): Ditto.
+ (value_insert_into_set_bitmap): Ditto.
+
+2004-06-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-modes.def (CCL3mode): New machine mode.
+ * config/s390/s390.c (s390_match_ccmode_set): Support CCL3mode.
+ (s390_alc_comparison, s390_slb_comparison): Likewise.
+ (s390_branch_condition_mask): Likewise.
+ * config/s390/s390.md ("*subdi3_cc2", "*subdi3_cconly2"): New.
+ ("*subsi3_cc2", "*subsi3_cconly2"): New.
+
+ * config/s390/s390.h (PREDICATE_CODE): Accept SIGN_EXTEND and
+ ZERO_EXTEND for s390_alc_comparison and s390_slb_comparison.
+ * config/s390/s390.c (s390_alc_comparison, s390_slb_comparison):
+ Handle SIGN_EXTEND and ZERO_EXTEND.
+
+ * config/s390/s390-protos.h (s390_expand_addcc): New prototype.
+ * config/s390/s390.c (s390_expand_addcc): New function.
+ * config/s390/s390.md ("adddicc", "addsicc"): New expanders.
+ ("*sconddi", "*scondsi", "*sconddi_neg", "*scondsi_neg"): New insns.
+ ("sltu", "sgtu", "sleu", "sgeu"): New expanders.
+
+2004-06-17 Ben Elliston <bje@au.ibm.com>
+
+ * tree-alias-common.c: Add whitespace.
+ * tree-inline.c: Correct comment about this file's purpose.
+ * tree-optimize.c: Likewise.
+ * tree-tailcall.c: Likewise.
+
+ * tree-alias-ander.h: Add standard top-of-file comment.
+ * tree-alias-common.h: Likewise.
+ * tree-alias-type.h: Likewise.
+
+2004-06-16 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa-pre.c (compute_avail): Value number uses as well.
+ Strip useless type conversions.
+ Casts have to be treated slightly different than normal unaries.
+
+2004-06-16 Richard Henderson <rth@redhat.com>
+
+ * c-common.def (COMPOUND_STMT): Remove.
+ * c-common.c (finish_fname_decls): Don't look through it.
+ * c-typeck.c (c_tree_expr_nonnegative_p): Likewise.
+ * c-common.h (COMPOUND_BODY): Remove.
+ (c_common_stmt_codes): Remove COMPOUND_STMT.
+ * c-dump.c (c_dump_tree): Likewise.
+ * c-gimplify.c (c_gimplify_stmt): Likewise.
+ * c-pretty-print.c (pp_c_statement): Likewise.
+ * tree.h (DECL_SAVED_TREE): Update commentary.
+ * doc/c-tree.texi (ASM_EXPR): Rename from ASM_STMT.
+ (CASE_LABEL_EXPR): Rename from CASE_LABEL.
+ (GOTO_EXPR): Rename from GOTO_STMT.
+ (GOTO_FAKE_P): Remove.
+ (COMPOUND_STMT): Remove.
+ (HANDLER): Update wrt COMPOUND_STMT.
+ (STMT_EXPR): Likewise.
+ (LABEL_EXPR): Rename from LABEL_STMT.
+ (SCOPE_STMT): Remove.
+ * objc/objc-act.c (objc_build_try_catch_finally_stmt): Don't look
+ through COMPOUND_STMT.
+
+2004-06-16 Richard Henderson <rth@redhat.com>
+
+ * c-common.h (c_begin_if_stmt, c_begin_while_stmt,
+ c_finish_while_stmt_cond): Remove decls.
+ * c-parse.in (if_prefix): Don't save c_begin_if_stmt result.
+ * c-typeck.c (c_begin_if_stmt): Return void.
+ (c_begin_else): Tidy. Save stmt_count.
+ * c-tree.h (c_begin_if_stmt): Update decl.
+
+ * objc/objc-act.c (objc_build_try_enter_fragment,
+ objc_build_extract_fragment, objc_build_try_epilogue,
+ objc_build_catch_stmt, objc_build_catch_epilogue,
+ objc_build_finally_prologue, objc_build_finally_epilogue): Update
+ for if builder function changes.
+
+2004-06-16 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (struct machine_function): New member
+ last_restore_gpr.
+ (s390_frame_info): Add BASE_USED and RETURN_ADDR_USED parameters.
+ Do not modify machine->save_return_addr_p or regs_ever_live.
+ Fill in machine->last_restore_gpr.
+ (s390_optimize_prolog): Use s390_frame_info to compute registers
+ to save/restore, remove duplicated code.
+ (s390_arg_frame_offset): Use s390_frame_info to compute frame
+ size, remove duplicated code.
+ (s390_emit_prologue): Adapt s390_frame_info call. Update
+ machine->save_return_addr_p and regs_ever_live.
+ (s390_emit_epilogue): Use machine->last_restore_gpr instead of
+ machine->last_save_gpr.
+
+2004-06-16 Richard Henderson <rth@redhat.com>
+
+ * c-parse.in (if_stmt_locus): Remove.
+ (if_prefix): Increment stmt_count; pass it to c_finish_if_cond.
+ (select_or_iter_stmt): Move empty if warnings to c-typeck.c.
+ * c-typeck.c (if_elt): Sort by expected size. Rename locus to
+ empty_locus. Add stmt_count, saw_else.
+ (c_begin_if_stmt): Push if_stack here.
+ (c_finish_if_cond): Rename from c_expand_end_cond. Record stmt_count.
+ (c_finish_then, c_finish_else): Record empty_locus.
+ (c_begin_else): Rename from c_expand_start_else. Record stmt_count.
+ (c_finish_if_stmt): Rename from c_expand_end_cond. Warn for empty
+ if or else body.
+ * c-tree.h: Update prototypes.
+
+2004-06-16 Steven Bosscher <stevenb@suse.de>
+
+ * tree.h (PHI_CHAIN): New.
+ * (tree-cfg.c, tree-dfa.c, tree-flow-inline.h, tree-into-ssa.c,
+ tree-outof-ssa.c, tree-phinodes.c, tree-pretty-print.c,
+ tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-dom.c, tree-ssa-dse.c,
+ tree-ssa-live.c, tree-ssa-loop.c, tree-ssa-phiopt.c, tree-ssa-pre.c,
+ tree-ssa.c, tree-tailcall.c): Use PHI_CHAIN instead of TREE_CHAIN
+ when traversing a list of PHI_NODEs.
+
+2004-06-16 Bernardo Innocenti <bernie@develer.com>
+
+ PR target/13292
+ * config/m68k/m68k.h (TARGET_SWITCHES): Don't remove MASK_68040_ONLY
+ on -msoft-float.
+ (TARGET_FLT_EVAL_METHOD): Don't advertise extended precision for
+ 68040 and soft-float.
+ * config/m68k/m68k.md (truncdfsf2): Explicitly require TARGET_68881
+ in the TARGET_68040_ONLY case.
+
+2004-06-16 Peter Barada <peter@the-baradas.com>
+
+ * config/m68k/m68k.md (movsi_cfv4): New pattern to allow mov3q.
+ (movsi_cf): Make named, don't match TARGET_CFV4.
+ (pushexthisi_const): Use mov3q if possible.
+ (extendhisi2, cvf4_extendhisi2): Split extendhisi2 pattern
+ to special case mvz.w for ColdFire V4.
+ (extendqisi2, cvf4_extendqisi2): Split extendhisi2 pattern
+ to special case mvz.b for ColdFire V4.
+ (udivmodhi4, divmodhi4): Use mvz to zero extend arg for
+ divide.
+ (iorsi3, xorsi3, andsi3): Use bitfield instructions if possible.
+ * config/m68k/m68k.c(valid_mov3q_const): New function.
+ (const_method): SWAP is valid for ColdFire.
+ (MULL_COST, MULW_COST): Fix costs for ColdFire V3/V4.
+ * config/m68k/m68k-protos.h (valid_mov3q_const): Prototype here.
+
+2004-06-16 Richard Henderson <rth@redhat.com>
+
+ * c-common.def (CASE_LABEL): Remove.
+ * c-common.c (c_add_case_label): Use CASE_LABEL, not CASE_LABEL_DECL.
+ (match_case_to_enum_1): Likewise.
+ * c-common.h (c_common_stmt_codes): Remove CASE_LABEL.
+ * c-dump.c (c_dump_tree): Likewise.
+ * c-gimplify.c (c_gimplify_stmt): Likewise.
+ * c-pretty-print.c (pp_c_statement): Likewise.
+ * c-semantics.c (build_case_label): Use CASE_LABEL_EXPR.
+ * tree.h (CASE_LOW): Update commentary.
+
+2004-06-16 Richard Henderson <rth@redhat.com>
+
+ * c-common.def (ASM_STMT): Remove.
+ * c-common.h (c_common_stmt_codes): Remove ASM_STMT.
+ * c-dump.c (c_dump_tree): Likewise.
+ * c-gimplify.c (c_gimplify_stmt): Likewise.
+ * c-pretty-print.c (pp_c_statement): Likewise.
+ * c-typeck.c (build_asm_expr): Use ASM_EXPR.
+ * tree.h: Fix commentary.
+
+2004-06-16 Richard Henderson <rth@redhat.com>
+
+ * c-common.def (GOTO_STMT, LABEL_STMT): Remove.
+ * c-common.c (c_add_case_label): Use LABEL_EXPR.
+ * c-common.h (GOTO_FAKE_P, LABEL_STMT_LABEL): Remove.
+ (c_common_stmt_codes): Remove GOTO_STMT, LABEL_STMT.
+ * c-dump.c (c_dump_tree): Likewise.
+ * c-gimplify.c (c_gimplify_stmt): Likewise.
+ * c-pretty-print.c (pp_c_statement): Likewise.
+ * c-parse.in (stmt): Use GOTO_EXPR.
+ (label): Use LABEL_EXPR.
+ * c-semantics.c (build_stmt): Set TREE_TYPE to void.
+ * tree-inline.c (copy_body_r): Don't build empty BLOCKs.
+
+2004-06-16 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cfgcleanup.c (try_simplify_condjump): Update test to make
+ sure we have a conditional branch around am unconditional branch.
+
+2004-06-16 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-cfg.c (pass_split_crit_edge): Give it a name and a dump file.
+
+2004-06-16 Dale Johannesen <dalej@apple.com>
+
+ * loop.c (loop_givs_reduce): Avoid miscompilation of
+ loops entered at bottom.
+
+2004-06-16 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cfglayout.c (fixup_reorder_chain): Handle case where the
+ destination of E_FALL is EXIT_BLOCK_PTR.
+
+2004-06-16 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR target/15653
+ * config/ia64/ia64.c (ia64_dfa_new_cycle): Do not insert nops
+ after shifts before asm.
+
+2004-06-16 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR tree-optimization/15993
+ * tree-ssa-dom.c (thread_across_edge): Do not thread edge if its
+ destination is unchanged.
+
+2004-06-16 Andreas Jaeger <aj@suse.de>
+
+ * doc/install.texi (Configuration): Update description for
+ --enable-version-specific-runtime-libs.
+
+2004-06-16 Paolo Bonzini <bonzini@gnu.org>
+
+ * doc/install.texi: boehm-gc now uses automake 1.8.5.
+
+2004-06-16 Paolo Bonzini <bonzini@gnu.org>
+
+ * toplev.h (rest_of_compilation): Adjust prototype.
+
+2004-06-16 Paolo Bonzini <bonzini@gnu.org>
+
+ * coverage.c: Remove argument to rest_of_compilation.
+ * expr.c (execute_expand, set_save_expr_context, pass_expand): New.
+ * passes.c (rest_of_compilation): Remove argument.
+ (pass_rest_of_compilation): New.
+ (rest_of_handle_final, rest_of_handle_delay_slots,
+ rest_of_handle_stack_regs, rest_of_handle_variable_tracking
+ rest_of_handle_machine_reorg, rest_of_handle_regrename
+ rest_of_handle_sched, rest_of_handle_sched2, rest_of_handle_gcse2
+ rest_of_handle_regmove, rest_of_handle_tracer
+ rest_of_handle_if_conversion, rest_of_handle_if_after_combine
+ rest_of_handle_web, rest_of_handle_branch_prob
+ rest_of_handle_value_profile_transformations, rest_of_handle_cfg
+ rest_of_handle_addressof, rest_of_handle_jump_bypass
+ rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2):
+ Check that the two arguments are actually superfluous.
+ * tree-optimize.c (register_dump_files): Add properties argument.
+ Track validity of passes. Only initialize dump files for
+ tree-based passes. Store the full set of provided passes in
+ the pass.
+ (init_tree_optimization_passes): Register pass_expand and
+ pass_rest_of_compilation.
+ (execute_one_pass): Do not track the presence of required properties
+ here. Set in_gimple_form. Do not update current_properties.
+ (current_properties): Remove.
+ (set_save_expr_context): Remove.
+ (tree_rest_of_compilation): Do not set in_gimple_form. Do not
+ expand to RTL here, and do not call rest_of_compilation. Push
+ GGC context even before gimplification.
+ * tree-pass.h (PROP_rtl, PROP_trees): New flags.
+ (pass_expand, pass_rest_of_compilation): Declare.
+
+2004-06-15 Jeff Law <law@redhat.com>
+
+ * fold-const.c (swap_tree_comparison): No longer static.
+ (tree_swap_operands_p): Similarly. Return true if both operands
+ are SSA_NAMEs and the first operand has a higher version number than
+ the second operand.
+ * tree.h (swap_tree_comparison): Prototype.
+ (tree_swap_operands_p): Prototype.
+ * tree-ssa-operands.c (get_expr_operands): For commutative
+ operators and relational comparisons, canonicalize the
+ order of the operands.
+
+2004-06-15 Richard Henderson <rth@redhat.com>
+
+ * c-common.c (lang_gimplify_stmt): Remove next_p argument.
+ (if_elt, if_stack, if_stack_space, c_expand_start_cond, c_finish_then,
+ c_expand_end_cond, c_expand_start_else, c_finish_else, c_begin_if_stmt,
+ c_begin_while_stmt, c_finish_while_stmt_cond): Move to c-typeck.c.
+ (finish_fname_decls, fname_decl): Use statement_lists.
+ (c_expand_expr_stmt): Don't set last_expr_type.
+ (c_type_hash): Fix indentation.
+ (c_safe_from_p): Don't follow TREE_CHAIN.
+ (c_tree_chain_matters_p): Remove.
+ * c-common.def (SCOPE_STMT): Remove.
+ (CLEANUP_STMT): Redefine to contain its own body.
+ * c-common.h (struct stmt_tree_s): Remove x_last_stmt,
+ x_last_expr_type, x_last_expr_filename, x_scope_stmt_stack.
+ Add x_cur_stmt_list.
+ (last_tree, last_expr_type, last_expr_filename, RECHAIN_STMTS): Remove.
+ (cur_stmt_list): New.
+ (STATEMENT_LIST_STMT_EXPR): New.
+ (SCOPE_BEGIN_P, SCOPE_END_P, SCOPE_STMT_BLOCK, SCOPE_NULLIFIED_P,
+ SCOPE_NO_CLEANUPS_P, SCOPE_PARTIAL_P, NEW_FOR_SCOPE_P): Remove.
+ (CLEANUP_BODY): New.
+ (CLEANUP_DECL): Move to operand 2.
+ (c_common_stmt_codes): Remove SCOPE_STMT.
+ (COMPOUND_STMT_NO_SCOPE, COMPOUND_STMT_BODY_BLOCK): Remove.
+ * c-decl.c (c_scope_stmt_stack, current_scope_stmt_stack): Remove.
+ (c_push_function_context, c_pop_function_context): Don't save it.
+ (finish_decl): Set TREE_USED on the decl for a cleanup.
+ Use push_cleanup.
+ (store_parm_decls): Use statement lists.
+ (finish_function): Remove compstmt rule workaround. Use statement
+ lists. Call finish_fname_decls after finalizing the body.
+ (c_begin_compound_stmt): Move to c-typeck.c.
+ * c-dump.c (c_dump_tree): Remove SCOPE_STMT.
+ * c-gimplify.c (gimplify_cleanup_stmt, gimplify_cleanup_stmts): New.
+ (c_genericize): Invoke them.
+ (c_gimplify_stmt): Don't look through TREE_CHAIN. Kill SCOPE_STMT.
+ (c_build_bind_expr): Export.
+ (gimplify_block, gimplify_cleanup): Remove.
+ (gimplify_condition): Use gimplify_stmt.
+ (gimplify_for_stmt): Remove FOR_INIT_STMT chaining hack.
+ (gimplify_if_stmt): Remove recursion hack.
+ (c_gimplify_expr): Remove STMT_EXPR handling.
+ (stmt_expr_last_stmt, gimplify_stmt_expr): Remove.
+ (is_last_stmt_of_scope): Remove.
+ * c-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Remove.
+ * c-mudflap.c (mflang_flush_calls): Use c_begin_compound_stmt,
+ c_end_compound_stmt.
+ * c-objc-common.c (build_cdtor): Likewise.
+ * c-parse.in (primary): Use c_finish_stmt_expr.
+ (push_scope, pop_scope): Remove.
+ (c99_block_start, compstmt_start): Use c_begin_compound_stmt.
+ (c99_block_end, compstmt): Use c_end_compound_stmt.
+ (c99_block_lineno_labeled_stmt): Likewise.
+ (compstmt_primary_start): Use c_begin_stmt_expr.
+ (simple_if, select_or_iter_stmt): Update calls to stmt builders.
+ (do_stmt_start): Fill in body directly.
+ (lineno_stmt): Avoid setting lineno on constants.
+ * c-pretty-print.c (pp_c_statement): Handle STATEMENT_LIST.
+ Remove SCOPE_STMT.
+ * c-semantics.c (begin_stmt_tree): Remove.
+ (push_stmt_list, re_push_stmt_list, pop_stmt_list): New.
+ (add_stmt): Use statement lists.
+ (add_scope_stmt, finish_stmt_tree): Remove.
+ (push_cleanup): New.
+ * c-tree.h: Move some decls from c-common.h.
+ * c-typeck.c (c_tree_expr_nonnegative_p): Simplify for statement lists.
+ (do_case, c_finish_case): Likewise.
+ (c_finish_then): Take body for then as argument.
+ (c_finish_else): Similarly.
+ (c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
+ c_finish_for_stmt_incr, c_finish_for_stmt): New.
+ (c_begin_stmt_expr, c_finish_stmt_expr): New.
+ (c_begin_compound_stmt): Do scope management.
+ (c_end_compound_stmt): New.
+ * fold-const.c (tree_expr_nonnegative_p): Fix BIND_EXPR.
+ * gimplify.c (voidify_wrapper_expr): Accept temporary argument.
+ Look through exception handling constructs.
+ (gimplify_bind_expr): Accept temporary argument.
+ (gimplify_target_expr): Special case BIND_EXPR bodies.
+ (gimplify_expr): Handle fallback == fb_none like a statement.
+ * langhooks-def.h (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Kill.
+ * langhooks.c (lhd_tree_inlining_tree_chain_matters_p): Remove.
+ * langhooks.h (tree_chain_matters_p): Remove.
+ * stub-objc.c (objc_clear_super_receiver): New.
+ * tree-gimple.h (voidify_wrapper_expr): Update decl.
+ (append_to_statement_list, append_to_statement_list_force): Move
+ to tree-iterator.h.
+ * tree-inline.c (expand_call_inline): Update call.
+ (clone_body): Use statement lists.
+ (walk_tree): Don't check tree_chain_matters_p.
+ (copy_tree_r): Likewise.
+ * tree-iterator.c (alloc_stmt_list): Clear lang bits.
+ (tsi_link_before, tsi_link_after): Set TREE_SIDE_EFFECTS properly.
+ * tree-iterator.h (append_to_statement_list,
+ append_to_statement_list_force): Moved from tree-gimple.h.
+ * tree-pretty-print.c (dump_generic_node): Clean up TARGET_EXPR dump.
+ * objc/objc-act.c (build_module_descriptor): Use c_begin_compound_stmt.
+ (objc_enter_block): Likewise.
+ (objc_exit_block): Use c_end_compound_stmt.
+ (objc_build_try_enter_fragment): Add #error and comment for
+ rewriting for OBJCPLUS.
+ (objc_build_extract_fragment, objc_build_try_epilogue,
+ objc_build_catch_stmt, objc_build_finally_prologue,
+ objc_build_finally_epilogue): Update for C statement builders.
+ * objc/objc-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P):
+ Remove.
+
+2004-06-15 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * df.c (df_reg_clobber_gen): Removed.
+ (df_bb_rd_local_compute, df_insn_refs_record, df_rd_local_compute):
+ Make more effective for hard regs.
+ * ra-build.c (livethrough_conflicts_bb): Check contains_call.
+
+2004-06-15 Alexandre Oliva <aoliva@redhat.com>
+
+ * c-pragma.h (c_lex_string_translate): Change type to int.
+ * c-parse.in: Change all assignments of c_lex_string_translate
+ to true and false to 1 and 0.
+ * c-lex.c (c_lex_string_translate): Likewise.
+ (lex_string): Convert string without translation in the -1
+ case.
+
+2004-06-15 Mark G. Adams <mark.g.adams@sympatico.ca>
+
+ * convert.h: Add include guards
+
+2004-06-15 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-flow-inline.h: Document all functions.
+
+2004-06-15 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-flow-inline.h (stmt_ann): Remove use of is_essa_node.
+ * tree-dfa.c (create_stmt_ann): Ditto.
+ * tree-pretty-print.c (dump_generic_node): Remove E* node handling.
+ * tree-inline.c (estimate_num_insns_1): Ditto.
+ * tree.c (tree_size): Ditto.
+ (make_node_stat): Ditto.
+ (tree_node_structure): Ditto.
+ (ephi_node_elt_check_failed): Remove.
+ (is_essa_node): Ditto.
+ * tree.def (EPHI_NODE): Ditto.
+ (EEXIT_NODE): Ditto.
+ (EUSE_NODE): Ditto.
+ (EKILL_NODE): Ditto.
+ * tree.h (EREF_NODE_CHECK): Remove.
+ (EPHI_NODE_ELT_CHECK): Ditto.
+ (struct tree_eref_common): Ditto.
+ (struct tree_euse_node): Ditto.
+ (struct ephi_arg_d): Ditto.
+ (struct tree_ephi_node): Ditto.
+ (ephi_node_elt_check_failed): Remove prototype.
+ (is_essa_node): Ditto.
+ (enum tree_node_structure_enum): Remove TS_E*_NODE.
+ (union tree_node): Remove E*_NODE uses.
+
+2004-06-15 Jerry Quinn <jlquinn@optonline.net>
+
+ * alias.c (record_set, record_base_value, canon_rtx, get_addr,
+ nonlocal_mentioned_p_1, init_alias_analysis): Use REG_P.
+ * bt-load.c (find_btr_reference, insn_sets_btr_p, note_btr_set):
+ Likewise.
+ * builtins.c (expand_builtin_setjmp, expand_builtin_apply,
+ expand_builtin_mathfn, expand_builtin_strlen, expand_builtin_memcmp,
+ expand_builtin_strcmp, expand_builtin_strncmp,
+ expand_builtin_frame_address): Likewise.
+ * caller-save.c (mark_set_regs, add_stored_regs, mark_referenced_regs,
+ insert_one_insn): Likewise.
+ * calls.c (prepare_call_address, precompute_register_parameters,
+ precompute_arguments, expand_call, emit_library_call_value_1): Likewise.
+ * cfganal.c (flow_active_insn_p): Likewise.
+ * combine.c (set_nonzero_bits_and_sign_copies, can_combine_p,
+ combinable_i3pat, try_combine, find_split_point, COMBINE_RTX_EQUAL_P,
+ subst, combine_simplify_rtx, simplify_if_then_else, simplify_set,
+ make_extraction, recog_for_combine, gen_lowpart_for_combine,
+ simplify_comparison, record_dead_and_set_regs_1,
+ record_dead_and_set_regs, record_promoted_value,
+ check_promoted_subreg, get_last_value_validate, get_last_value,
+ reg_dead_at_p_1, reg_bitfield_target_p, distribute_notes,
+ unmentioned_reg_p_1): Likewise.
+ * conflict.c (mark_reg): Likewise.
+ * cse.c (HASH, COST, COST_IN, approx_reg_cost_1, notreg_cost,
+ mention_regs, insert_regs, lookup, lookup_for_remove, insert,
+ merge_equiv_classes, flush_hash_table, invalidate,
+ remove_invalid_refs, remove_invalid_subreg_refs, rehash_using_reg,
+ invalidate_for_call, use_related_value, canon_hash, exp_equiv_p,
+ cse_rtx_varies_p, canon_reg, find_best_addr, fold_rtx, equiv_constant,
+ record_jump_cond, cse_insn, addr_affects_sp_p,
+ invalidate_from_clobbers, cse_process_notes, cse_around_loop,
+ cse_set_around_loop, count_reg_usage, set_live_p, cse_change_cc_mode,
+ cse_cc_succs, cse_condition_code_reg): Likewise.
+ * cselib.c (cselib_reg_set_mode, rtx_equal_for_cselib_p,
+ cselib_lookup, cselib_invalidate_regno, cselib_invalidate_rtx,
+ cselib_record_set, cselib_record_sets): Likewise.
+ * dbxout.c (dbxout_symbol_location, dbxout_parms, dbxout_reg_parms,
+ dbxout_block): Likewise.
+ * df.c (df_ref_record, df_def_record_1, df_uses_record): Likewise.
+ * dojump.c (do_jump): Likewise.
+ * dwarf2out.c (dwarf2out_frame_debug_expr, is_pseudo_reg,
+ is_based_loc, rtl_for_decl_location): Likewise.
+ * emit-rtl.c (set_reg_attrs_for_parm, set_decl_rtl,
+ set_decl_incoming_rtl, mark_user_reg): Likewise.
+ * explow.c (copy_all_regs, copy_all_regs, memory_address, force_reg,
+ copy_to_suggested_reg, allocate_dynamic_stack_space,
+ probe_stack_range, hard_function_value): Likewise.
+ * expmed.c (store_bit_field, store_fixed_bit_field,
+ store_split_bit_field, extract_bit_field, extract_fixed_bit_field,
+ extract_split_bit_field, expand_divmod, emit_store_flag_force):
+ Likewise.
+ * expr.c (convert_move, convert_modes,
+ block_move_libcall_safe_for_call_parm, emit_group_load, use_reg,
+ use_group_regs, emit_move_insn, emit_move_insn_1,
+ compress_float_constant, push_block, emit_single_push_insn,
+ emit_push_insn, get_subtarget, expand_assignment, store_expr,
+ store_constructor, store_field, force_operand, safe_from_p,
+ expand_expr_real_1, expand_increment, do_store_flag, do_tablejump):
+ Likewise.
+ * final.c (profile_function, final_scan_insn, alter_subreg,
+ get_mem_expr_from_op, output_asm_operand_names, output_operand,
+ only_leaf_regs_used, leaf_renumber_regs_insn): Likewise.
+ * flow.c (verify_wide_reg_1, mark_regs_live_at_end,
+ find_regno_partial, propagate_one_insn, init_propagate_block_info,
+ insn_dead_p, libcall_dead_p, mark_set_1, not_reg_cond,
+ attempt_auto_inc, find_auto_inc, mark_used_regs,
+ count_or_remove_death_notes_bb): Likewise.
+ * function.c (find_temp_slot_from_address, update_temp_slot_address,
+ preserve_temp_slots, put_var_into_stack, fixup_var_refs_insn,
+ fixup_var_refs_1, fixup_stack_1, optimize_bit_field, flush_addressof,
+ put_addressof_into_stack, purge_addressof_1, insns_for_mem_walk,
+ purge_single_hard_subreg_set, instantiate_decl,
+ instantiate_virtual_regs_1, aggregate_value_p, assign_parms,
+ promoted_input_arg, setjmp_vars_warning, setjmp_args_warning,
+ setjmp_protect, setjmp_protect_args, fix_lexical_addr,
+ expand_function_start, diddle_return_value, clobber_return_register,
+ expand_function_end, keep_stack_depressed, handle_epilogue_set,
+ update_epilogue_consts): Likewise.
+ * genemit.c (gen_exp, gen_insn): Likewise.
+ * genrecog.c (make_insn_sequence): Likewise.
+ * global.c (global_conflicts, expand_preferences, mark_reg_store,
+ mark_reg_conflicts, set_preference, reg_becomes_live,
+ build_insn_chain, mark_reg_change): Likewise.
+ * haifa_sched.c (CONST_BASED_ADDRESS_P, find_set_reg_weight):
+ Likewise.
+ * ifcvt.c (noce_try_abs, noce_get_condition, noce_process_if_block):
+ Likewise.
+ * integrate.c (copy_rtx_and_substitute, try_constants,
+ subst_constants, mark_stores, allocate_initial_values): Likewise.
+ * jump.c (reversed_comparison_code_parts, delete_prior_computation,
+ delete_computation, rtx_renumbered_equal_p, true_regnum,
+ reg_or_subregno): Likewise.
+ * lcm.c (reg_dies, reg_becomes_live): Likewise.
+ * local-alloc.c (validate_equiv_mem_from_store, validate_equiv_mem,
+ update_equiv_regs, no_equiv, block_alloc, combine_regs, reg_is_set,
+ wipe_dead_reg, no_conflict_p): Likewise.
+ * loop-iv.c (simple_reg_p, simple_set_p, kill_sets,
+ iv_get_reaching_def, iv_analyze_biv, altered_reg_used, mark_altered,
+ simple_rhs_p, simplify_using_assignment, implies_p): Likewise.
+ * loop.c (scan_loop, combine_movables, rtx_equal_for_loop_p,
+ move_movables, note_set_pseudo_multiple_uses, consec_sets_invariant_p,
+ find_single_use_in_loop, count_one_set, loop_bivs_init_find,
+ loop_givs_rescan, check_insn_for_bivs, check_insn_for_givs,
+ valid_initial_value_p, simplify_giv_expr, consec_sets_giv,
+ loop_regs_update, check_dbra_loop, maybe_eliminate_biv,
+ maybe_eliminate_biv_1, record_initial, update_reg_last_use,
+ canonicalize_condition, loop_regs_scan, load_mems, try_copy_prop,
+ try_swap_copy_prop): Likewise.
+ * optabs.c (expand_binop, expand_vector_binop, expand_vector_unop,
+ expand_abs, emit_no_conflict_block, emit_libcall_block, expand_float):
+ Likewise.
+ * postreload.c (reload_cse_simplify, reload_cse_simplify_set,
+ reload_cse_simplify_operands, reload_combine,
+ reload_combine_note_store, reload_combine_note_use,
+ reload_cse_move2add, move2add_note_store): Likewise.
+ * print-rtl.c (print_rtx): Likewise.
+ * ra-build.c (copy_insn_p, remember_move, init_one_web_common,
+ contains_pseudo, handle_asm_insn): Likewise.
+ * ra-debug.c (ra_print_rtx_object, dump_constraints,
+ dump_static_insn_cost): Likewise.
+ * ra-rewrite.c (slots_overlap_p, emit_colors,
+ remove_suspicious_death_notes): Likewise.
+ * recog.c (validate_replace_rtx_1, find_single_use_1, find_single_use,
+ register_operand, scratch_operand, nonmemory_operand,
+ constrain_operands): Likewise.
+ * reg-stack (check_asm_stack_operands, remove_regno_note,
+ emit_swap_insn, swap_rtx_condition, subst_stack_regs_pat,
+ subst_asm_stack_regs): Likewise.
+ * regclass.c (scan_one_insn, record_reg_classes, copy_cost,
+ record_address_regs, reg_scan_mark_refs): Likewise.
+ * regmove.c (discover_flags_reg, replacement_quality,
+ copy_src_to_dest, reg_is_remote_constant_p, regmove_optimize,
+ fixup_match_1): Likewise.
+ * regrename.c (note_sets, clear_dead_regs, build_def_use, kill_value,
+ kill_set_value, copyprop_hardreg_forward_1): Likewise.
+ * reload.c (MATCHES, push_secondary_reload, find_reusable_reload,
+ reload_inner_reg_of_subreg, can_reload_into, push_reload,
+ combine_reloads, find_dummy_reload, hard_reg_set_here_p,
+ operands_match_p, decompose, find_reloads, find_reloads_toplev,
+ find_reloads_address, subst_indexed_address, find_reloads_address_1,
+ find_reloads_subreg_address, find_replacement,
+ refers_to_regno_for_reload_p, reg_overlap_mentioned_for_reload_p,
+ refers_to_mem_for_reload_p, find_equiv_reg, regno_clobbered_p): Likewise.
+ * reload1.c (replace_pseudos_in, reload, calculate_needs_all_insns,
+ find_reg, delete_dead_insn, alter_reg, eliminate_regs,
+ elimination_effects, eliminate_regs_in_insn, scan_paradoxical_subregs,
+ forget_old_reloads_1, reload_reg_free_for_value_p, choose_reload_regs,
+ emit_input_reload_insns, emit_output_reload_insns, do_input_reload,
+ do_output_reload, emit_reload_insns, gen_reload,
+ delete_address_reloads_1, inc_for_reload): Likewise.
+ * reorg.c (update_reg_dead_notes, fix_reg_dead_note,
+ update_reg_unused_notes, fill_slots_from_thread): Likewise.
+ * resource.c (update_live_status, mark_referenced_resources,
+ mark_set_resources, mark_target_live_regs): Likewise.
+ * rtlanal.c (nonzero_address_p, get_jump_table_offset,
+ global_reg_mentioned_p_1, reg_mentioned_p, reg_referenced_p,
+ reg_set_p, set_noop_p, find_last_value, refers_to_regno_p,
+ note_stores, dead_or_set_p, dead_or_set_regno_p, find_regno_note,
+ find_reg_fusage, find_regno_fusage, replace_regs, regno_use_in,
+ parms_set, find_first_parameter_load, keep_with_call_p,
+ hoist_test_store, hoist_update_store, address_cost, nonzero_bits1,
+ num_sign_bit_copies1): Likewise.
+ * rtlhooks.c (gen_lowpart_general): Likewise.
+ * sched-deps.c (deps_may_trap_p, sched_analyze_1, sched_analyze_insn,
+ sched_analyze): Likewise.
+ * sched-rgn.c (check_live_1, update_live_1, sets_likely_spilled_1):
+ Likewise.
+ * sdbout.c (sdbout_symbol, sdbout_parms, sdbout_reg_parms): Likewise.
+ * simplify-rtx.c (simplify_replace_rtx, simplify_unary_operation,
+ simplify_binary_operation, simplify_const_relational_operation,
+ simplify_subreg): Likewise.
+ * stmt.c (decl_conflicts_with_clobbers_p, expand_asm_operands,
+ expand_end_stmt_expr, expand_return, expand_decl,
+ expand_anon_union_decl): Likewise.
+ * unroll.c (precondition_loop_p, calculate_giv_inc, copy_loop_body,
+ find_splittable_regs, find_splittable_givs, find_common_reg_term,
+ loop_iterations): Likewise.
+ * var-tracking.c (variable_union, variable_part_different_p,
+ variable_different_p, count_uses, add_uses, add_stores,
+ compute_bb_dataflow, set_variable_part, delete_variable_part,
+ emit_notes_in_bb, vt_get_decl_and_offset, vt_add_function_parameters):
+ Likewise.
+ * varasm.c (assemble_variable): Likewise.
+
+2004-06-15 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
+ definition.
+ * config/mips/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
+ #undef and #if 0'd definition.
+
+2004-06-15 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * combine.c (distribute_notes): Comment typo fix.
+
+2004-06-15 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (synth_mult): Mask bits of the multiplier to the
+ machine mode of the multiplication. Don't consider shifts
+ by more than (or equal to) the width of the operation's mode.
+
+2004-06-15 Paolo Bonzini <bonzini@gnu.org>
+
+ * doc/install.texi: Yet another update for autoconf
+ and automake versions.
+
+2004-06-15 Paolo Bonzini <bonzini@gnu.org>
+
+ * function.h (struct function): Remove cannot_inline field.
+ (current_function_cannot_inline): Remove.
+ * passes.c (rest_of_compilation): Reset DECL_DEFER_OUTPUT.
+ Simplify conditionals to ignore warn_return_type.
+ * tree-optimize.c (tree_rest_of_compilation): Do not reset
+ DECL_DEFER_OUTPUT.
+ * objc/objc-act.c (build_module_descriptor, finish_method_def):
+ Do not set current_function_cannot_inline.
+
+2004-06-15 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * cfglayout.c (fixup_reorder_chain): Handle case where the
+ destination of E_TAKEN is EXIT_BLOCK_PTR.
+
+2004-06-15 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-ssa-copy.c (cprop_into_successor_phis): Fix typo.
+
+2004-06-15 Paolo Bonzini <bonzini@gnu.org>
+
+ * fold-const.c (operand_equal_p): Update comment.
+
+2004-06-15 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (RETURN_ADDR_RTX): Define.
+ (INCOMING_RETURN_ADDR_RTX): Define.
+ * config/m32r/m32r-protos.h (m32r_return_addr): Added.
+ * config/m32r/m32r.c (m32r_exppand_prologue): Changed for
+ __builtin_return_address(0).
+ (m32r_return_addr): Added for __builtin_return_address(0).
+ (m32r_reload_lr): Ditto.
+
+ * longlong.h: Fix macros for m32r add_ssaaaa and sub_ddmmss.
+
+2004-06-15 Paolo Bonzini <bonzini@gnu.org>
+
+ * doc/install.texi (Prerequisites): Update libbanshee,
+ fastjar, libcpp, libjava/libltdl entries to
+ automake 1.8.5.
+
+2004-06-15 Eric Botcazou <ebotcazou@act-europe.fr>
+ Olivier Hainque <hainque@act-europe.fr>
+
+ * function.c (fixup_var_refs): Also adjust the start of sequence
+ after fixing up the insns.
+
+2004-06-15 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ * gccbug.in: Update optimization -> tree-optimization/rtl-optimization.
+
+2004-06-14 Benjamin Kosnik <bkoz@redhat.com>
+
+ * doc/install.texi (Prerequisites): Update libstdc++ entry to
+ automake 1.8.5.
+
+2004-06-14 Eric Christopher <echristo@redhat.com>
+
+ * config/s390/s390.h (TARGET_SWITCHES): Change -mtpf (-mno-tpf)
+ to -mtpf-trace (-mno-tpf-trace).
+ * doc/invoke.texi (S/390 and zSeries Options): Add tpf option
+ documentation.
+
+2004-06-14 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * real.c: Fix bit count in head comment.
+
+2004-06-14 Jeff Law <law@redhat.com>
+
+ * tree-ssa.c (kill_redundant_phi_nodes): More correctly handle
+ PHIs where the destination or an argument is marked with
+ SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
+
+2004-06-14 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/15945
+ * simplify-rtx.c (simplify_binary_operation): Don't optimize out
+ Inf + -Inf, Inf - Inf, Inf / Inf and 0 * Inf if flag_trapping_math.
+
+2004-06-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * opts.sh (var_args): Fix regexp.
+
+2004-06-14 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/15178
+ * config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Define.
+
+2004-06-14 Paul Brook <paul@codesourcery.com>
+
+ * dwarf2out.c (output_call_frame_info): Support dwarf3 cie entries.
+
+2004-06-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (FLAGS_H): New.
+ (flags.h): Replace by FLAGS_H.
+ * c.opt: Document Var, VarExists, Init and Report attributes.
+ * common.opt: Fill the values of the attributes.
+ * diagnostic.c (flag_fatal_errors): Do not define.
+ * except.c (flag_non_call_exceptions): Do not define.
+ * flags.h: Include options.h. Remove declarations conflicting with
+ the automatically defined ones.
+ * opts.c: Remove automatically defined variables.
+ (handle_option): Perform default initialization.
+ (common_handle_option): Do not handle options covered by the
+ default initialization.
+ * opts.h (struct cl_option): Add flag_var, has_set_value and set_value
+ fields.
+ (CL_REPORT): New.
+ * opts.sh: Generate variable declarations, handle CL_REPORT.
+ * toplev.c: Remove automatically defined variables.
+ (f_options): Removed.
+ (print_switch_values): Use cl_options instead of f_options.
+ * toplev.h (version_flag): Declaration removed.
+
+2004-06-14 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/sparc/sparc.h: Correct comment about availability of
+ little endian option.
+
+ * config.gcc: Remove sparc64-*-aout*.
+ * config/sparc/sparc.c (sparc_aout_select_rtx_section): Remove.
+ * config/sparc/sp64-aout.h: Remove.
+ * config/sparc/aout.h: Remove.
+
+2004-06-14 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c: Include "tree-gimple.h".
+ (s390_gimplify_va_arg): New function.
+ (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
+ (s390_va_arg): Remove.
+ * config/s390/s390-protos.h (s390_va_arg): Remove.
+ * config/s390/s390.h (EXPAND_BUILTIN_VA_ARG): Call abort ().
+
+2004-06-14 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * basic-block.h (could_fall_through): Declare.
+ * cfganal.c (can_fallthru): Succeed if the target is EXIT_BLOCK_PTR.
+ Fail if the source already has a fallthrough edge to the exit
+ block pointer.
+ (could_fall_through): New function.
+ * cfgbuild.c (make_edges): Check if we already have a fallthrough
+ edge to the exit block pointer.
+ * cfglayout.c (fixup_fallthru_exit_predecessor): Check that it is
+ not called before reload has completed.
+ Handle special case of first block having a fall-through exit edge.
+ (cfg_layout_finalize): Don't call it before reload or if we have
+ rtl epilogues.
+ (fixup_reorder_chain): A fall through to the exit block does not
+ require the block to come last. Add sanity checks.
+ * cfgrtl.c (rtl_split_edge): Add special handling of fall through
+ edges to the exit block.
+ * function.c (cfglayout.h): #include.
+ (thread_prologue_and_epilogue_insns): If we have neither return nor
+ epilogue, but a fall through to the exit block from mid-function,
+ force a non-fall-through exit.
+ * Makefile.in (function.o): Depend on CFGLAYOUT_H.
+
+2004-06-14 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.h (ASM_CPU_SPEC): Handle -mpowerpc64 and -mcpu
+ for power5 and rs64a. Correct condition for default. Correct power3,
+ 620, 630, 7400, 7450, G4, 970 and G5 -mcpu entries. Add -many.
+
+2004-06-13 Steven Bosscher <stevenb@suse.de>
+
+ * gcse.c (hash_scan_set, hash_scan_insn, mark_set, mark_oprs_set):
+ Revert previous change, don't use CALL_P.
+
+2004-06-13 Jason Merrill <jason@redhat.com>
+
+ * tree.h: Move std_gimplify_va_arg_expr protoype here.
+ * tree-gimple.h: From here.
+
+2004-06-13 Daniel Berlin <dberlin@dberlin.org>
+
+ Fix PR tree-optimization/15979
+ Fix PR tree-optimization/15981
+ * tree-ssa-pre.c (insert_aux): Fix faulty logic so that we don't
+ try to insert values undefined along some path.
+
+2004-06-13 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa-pre.c (add_to_value): is_gimple_min_invariant things
+ are available everywhere too.
+
+2004-06-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * fold-const.c (fold_checksum_tree <case 't'>): Only
+ look at TREE_VALUES if the EXPR is an ENUMERAL_TYPE.
+ Only look at TYPE_MIN_VALUE and TYPE_MAX_VALUE if
+ EXPR is an INTEGERAL_TYPE or a scalar float type.
+
+2004-06-13 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-sra.c (tree_sra): Update documentation.
+
+2004-06-13 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (comptypes, tagged_types_tu_compatible_p,
+ function_types_compatible_p, type_lists_compatible_p): Remove
+ flags parameter.
+ * c-tree.h (comptypes): Likewise.
+ (COMPARE_STRICT): Remove.
+ * c-decl.c, c-lang.c, c-parse.in, c-typeck.c, objc/objc-act.c: All
+ callers changed.
+
+2004-06-13 Eric Christopher <echristo@redhat.com>
+
+ * c-decl.c (diagnose_mismatched_decls): Improve error message.
+ Remove unused code.
+ * c-typeck.c (comptypes): Add location in standard we're checking.
+
+2004-06-13 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/libgcc-std.ver: Add __unorddf2 and __unordsf2 with
+ version 3.3.4.
+
+2004-06-12 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (shift_cost, shiftadd_cost, shiftsub_cost): Additionally
+ index by machine mode.
+ (init_expmed): Initialize shift_cost, shiftadd_cost and shiftsub_cost
+ tables inside the loop over machine modes.
+ (synth_mult, expand_mult_highpart_optab, expand_mult_highpart,
+ expand_divmod): Index shift*_cost by the appropriate machine mode.
+
+2004-06-12 Eric Christopher <echristo@redhat.com>
+
+ * config/s390/s390.h: Rename TARGET_TPF to TARGET_TPF_PROFILING.
+ * config/s390/s390.md: Ditto.
+ * config/s390/s390.c: Ditto.
+ (s390_frame_info): Conditionalize frame and setup info on
+ TARGET_TPF_PROFILING.
+ (s390_arg_frame_offset): Ditto.
+
+2004-06-12 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (omit_two_operands): New function.
+ * tree.h (omit_two_operands): Prototype here.
+ * builtins.c (fold_builtin_unordered_cmp): New function to lower
+ C99 unordered comparison builtins to the appropriate tree nodes.
+ (fold_builtin_1): Use fold_builtin_unordered_cmp to lower
+ BUILT_IN_ISGREATER, BUILT_IN_ISGREATEREQUAL, BUILT_IN_ISLESS,
+ BUILT_IN_ISLESSEQUAL and BUILT_IN_ISLESSGREATER. Manually lower
+ BUILT_IN_ISUNORDERED comparisons to an UNORDERED_EXPR tree node.
+ (simplify_builtin_memcmp, simplify_builtin_strncmp,
+ simplify_builtin_strncat, simplify_builtin_strspn): Use the new
+ omit_two_operands function to build the required COMPOUND_EXPRs.
+
+2004-06-12 Steven Bosscher <stevenb@suse.de>,
+ Andreas Jaeger <aj@suse.de>
+
+ * gcse.c (record_set_info): Use predicates like REG_P.
+ (mems_conflict_for_gcse_p): Likewise.
+ (load_killed_in_block_p): Likewise.
+ (hash_expr_1): Likewise.
+ (insert_set_in_table): Likewise.
+ (gcse_constant_p): Likewise.
+ (hash_scan_set): Likewise.
+ (hash_scan_insn): Likewise.
+ (canon_list_insert): Likewise.
+ (record_last_mem_set_info): Likewise.
+ (record_last_set_info): Likewise.
+ (compute_hash_table_work): Likewise.
+ (mark_set): Likewise.
+ (mark_clobber): Likewise.
+ (mark_oprs_set): Likewise.
+ (compute_transp): Likewise.
+ (find_avail_set): Likewise.
+ (cprop_insn): Likewise.
+ (do_local_cprop): Likewise.
+ (cprop): Likewise.
+ (find_implicit_sets): Likewise.
+ (find_bypass_set): Likewise.
+ (bypass_conditional_jumps): Likewise.
+ (insert_insn_end_bb): Likewise.
+ (pre_insert_copy_insn): Likewise.
+ (compute_transpout): Likewise.
+ (next_ls_expr): Likewise.
+ (invalidate_any_buried_refs): Likewise.
+ (compute_ld_motion_mems): Likewise.
+ (reg_set_info): Likewise.
+ (reg_clear_last_set): Likewise.
+ (find_moveable_store): Likewise.
+ (compute_store_table): Likewise.
+ (find_loads): Likewise.
+ (store_killed_in_insn): Likewise.
+ (insert_insn_start_bb): Likewise.
+ (reg_set_between_after_reload_p): Likewise.
+ (reg_used_between_after_reload_p): Likewise.
+ (is_jump_table_basic_block): Likewise.
+ (gcse_after_reload): Likewise.
+ (hash_scan_set_after_reload): Likewise.
+ (compute_hash_table_after_reload): Likewise.
+
+2004-06-12 Steven Bosscher <stevenb@suse.de>
+
+ * rtl.h (MEM_P, NONJUMP_INSN_P, CALL_INSN_P): New predicates.
+ (INSN_P): Don't look at the rtx code class, just explicitly
+ check for one of the tree RTX_INSN codes.
+
+2004-06-11 Zack Weinberg <zack@codesourcery.com>
+
+ * c-typeck.c (default_function_array_conversion): Use
+ build_pointer_type not TYPE_POINTER_TO.
+
+2004-06-11 Zack Weinberg <zack@codesourcery.com>
+
+ * configure.ac: Don't invoke ACX_HEADER_STDBOOL.
+ * configure, config.in: Regenerate.
+ * system.h: Unconditionally define bool as unsigned char,
+ BOOL_BITFIELD as unsigned int.
+ * domwalk.h: Use BOOL_BITFIELD.
+
+2004-06-12 Andreas Jaeger <aj@suse.de>
+
+ * libgcc-std.ver: Add __unorddf2 and __unordsf2 with version 3.3.4.
+ * libgcc-darwin.ver: Likewise.
+
+2004-06-12 Peter Jakubek <peter@laseranimation.com>
+
+ * reload.c (find_reloads): Force reload for pseudo registers on big
+ endian machines.
+
+2004-06-11 Steven Bosscher <stevenb@suse.de>
+
+ * tree-ssa-dce.c (mark_control_dependent_edges_necessary):
+ Don't try to mark anything control dependent on the entry or
+ exit blocks.
+
+2004-06-11 Daniel Berlin <dberlin@dberlin.org>
+
+ Fix Bug 15899
+ Fix Bug 15460
+ * tree.h (SSA_NAME_VALUE): New macro.
+ (struct tree_ssa_name): Add value_handle member.
+ * tree-ssa-pre.c: Replaced.
+ * tree-flow.h (tree_ann_type): Add CST_ANN, EXPR_ANN.
+ (struct cst_ann_d): New.
+ (struct expr_ann_d): New.
+ (union tree_ann_d): Add cst_ann, expr_ann.
+ * tree-dfa.c (create_cst_ann): New function.
+ (create_expr_ann): Ditto.
+ * tree-flow-inline.h (cst_ann): New function.
+ (expr_ann): Ditto.
+ (get_cst_ann): Ditto.
+ (get_expr_ann): Ditto..
+
+2004-06-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (pa_hpux_init_libfunc): Add support for unord_optab.
+ * pa/quadlib.c (enum qfcmp_magic): Define magic values for call to
+ _U_Qfcmp library function.
+ (_U_Qfltgt, _U_Qfunle, _U_Qfunlt, _U_Qfunge, _U_Qfungt, _U_Qfuneq,
+ _U_Qfunord, _U_Qford): Add more TFmode builtin compare functions.
+
+ * pa.c (legitimize_pic_address): Use UNSPEC_DLTIND14R to identify
+ unspec used for loading address from DLT.
+ * pa.md: Define constants for the uses of UNSPEC and UNSPEC_VOLATILE.
+ Change all users of UNSPEC and UNSPEC_VOLATILE to use new constants.
+ Don't use short code sequence when loading the address of a nonlocal
+ label.
+ (nonlocal_goto): New expander.
+ (indirect_goto): New jump pattern for nonlocal gotos.
+ (short_jump): Remove extra whitespace.
+ (builtin_longjmp): Clobber memory and hard frame pointer. Restore
+ frame pointer via virtual_stack_vars_rtx when we have a nonlocal goto
+ pattern.
+
+2004-06-11 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (synth_mult): Add an additional MODE argument for the
+ machine mode of the multiplication. Update recursive calls. Use
+ mode instead of word_mode for determining operation costs.
+ (choose_mult_variant): Update calls to synth_mult with "mode".
+
+2004-06-11 Richard Henderson <rth@redhat.com>
+
+ * tree-ssa-operands.c (get_stmt_operands): Clear makes_aliased_loads
+ and makes_aliased_stores.
+
+2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * doc/install.text (--enable-shared): Fix typo.
+
+2004-06-11 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_gimplify_va_arg_1): Remove post_p
+ argument. Use internal post for call to gimplify_expr. Tidy
+ rounded type size computation.
+ (alpha_gimplify_va_arg): Use get_formal_tmp_var and
+ get_initialized_tmp_var.
+
+2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * doc/install.texi (--enable-shared): Update libobjc's shared library
+ status. Remove reference to libf2c.
+
+2004-06-11 Jason Merrill <jason@redhat.com>
+
+ * config/i386/i386.h (EXPAND_BUILTIN_VA_ARG): Just abort.
+ * config/i386/i386.c (ix86_va_arg): Remove.
+ * config/rs6000/rs6000.h (EXPAND_BUILTIN_VA_ARG): Just abort.
+ * config/rs6000/rs6000.c (rs6000_va_arg): Remove.
+ * config/alpha/alpha.h (EXPAND_BUILTIN_VA_ARG): Just abort.
+ * config/alpha/alpha.c (alpha_va_arg): Remove.
+ * config/sparc/sparc.h (EXPAND_BUILTIN_VA_ARG): Just abort.
+ * config/sparc/sparc.c (sparc_va_arg): Remove.
+
+ * tree-ssa-operands.c (get_stmt_operands): Use a V_MAY_DEF if the
+ assignment might throw.
+ * tree-eh.c (tree_could_throw_p): Support non-call exceptions in
+ expressions.
+
+2004-06-11 J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR 15886:
+ * sh.h (ALLOCATE_INITIAL_VALUE): Use return_address_pointer_rtx.
+
+2004-06-11 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/install.texi (Prerequisites): Update documentation of
+ required versions of autoconf and automake. Remove mention of
+ libf2c.
+
+2004-06-11 Jason Merrill <jason@redhat.com>
+
+ * config/sparc/sparc.c (sparc_gimplify_va_arg): New fn.
+ (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
+
+2004-06-11 Jerry Quinn <jlquinn@optonline.net>
+
+ * typeclass.h: Add GPL plus exception license. Add include
+ guard.
+
+2004-06-10 Jason Merrill <jason@redhat.com>
+
+ * gimplify.c (gimplify_modify_expr): Don't force a temporary
+ of an aggregate_value_p type.
+
+2004-06-10 Jeff Law <law@redhat.com>
+
+ * fold-const.c (fold_inf_compare): Avoid creating non-gimple
+ code when we are in gimple form.
+
+2004-06-10 Diego Novillo <dnovillo@redhat.com>
+
+ * Makefile.in (tree-ssanames.o): Depend on TREE_FLOW_H.
+ * tree-flow.h (ssa_names, num_ssa_names, ssa_name): Declare.
+ (highest_ssa_version): Remove.
+ * tree-outof-ssa.c (new_temp_expr_table): Replace
+ highest_ssa_version with num_ssa_names.
+ (dump_replaceable_exprs): Likewise.
+ (rewrite_vars_out_of_ssa): Likewise.
+ * tree-ssa-ccp.c (initialize): Likewise
+ * tree-ssa-copyrename.c (rename_ssa_copies): Likewise.
+ * tree-ssa-dce.c (tree_dce_init): Likewise.
+ * tree-ssa-dom.c (tree_ssa_dominator_optimize): Likewise.
+ * tree-ssa-live.c (create_ssa_var_map): Likewise.
+ (dump_var_map): Likewise.
+ * tree-ssa.c (verify_ssa): Likewise.
+ (kill_redundant_phi_nodes): Likewise.
+ Do not build a local array of SSA_NAMEs. Use the ssa_names table.
+ * tree-ssanames.c: Include tree-flow.h
+ (ssa_names): New varray.
+ (init_ssa_names): Initialize ssa_names.
+ Reserve the first slot of the ssa_names table.
+ (make_ssa_name): Push the newly created SSA_NAME into ssa_names.
+ Assign version numbers using num_ssa_names.
+
+2004-06-10 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/sourcebuild.texi (Front End): Add details of more
+ installation documentation required.
+
+2004-06-10 Brian Booth <bbooth@redhat.com>
+
+ * doc/tree-ssa.texi: Remove references to VDEF and add descriptions
+ of V_MAY_DEF and V_MUST_DEF.
+ * tree-dfa.c (dfa_stats_d): Add num_v_must_defs and rename
+ num_vdefs to num_v_may_defs.
+ (compute_immediate_uses_for_stmt): Rename occurences of vdef
+ to v_may_def.
+ (redirect_immediate_uses): Ditto.
+ (dump_dfa_stats): Ditto. Also added code to dump num_v_must_defs.
+ (collect_dfa_stats_r): Rename occurences of vdef to v_may_def.
+ Also add code to sum up the number of v_must_defs.
+ (vdefs_disappeared_p): Replace with...
+ (v_may_defs_disappeared_p): This.
+ (v_must_defs_disappeared_p): New function.
+ (mark_new_vars_to_rename): Rename occurences of vdef to v_may_def.
+ Also add code to mark new variables found in V_MUST_DEFs for
+ renameing.
+ * tree-flow.h (stmt_ann_d): Add v_must_def_ops and replace
+ vdef_ops to v_may_def_ops.
+ (get_vdef_ops): Replace with...
+ (get_v_may_def_ops): This.
+ * tree-flow-inline.h (get_vdef_ops): Replace with...
+ (get_v_may_def_ops): This.
+ (get_v_must_def_ops): New function.
+ (get_vdef_result_ptr): Replace with...
+ (get_v_may_def_result_ptr): This.
+ (get_vdef_op_ptr): Ditto with...
+ (get_v_may_def_op_ptr); This.
+ (get_v_must_def_op_ptr): New function.
+ * tree-into-ssa.c (mark_def_sites): Rename occurences of vdef
+ to v_may_def. Also add code to mark statements with
+ V_MUST_DEFs as definition sites.
+ (rewrite_stmt): Rename occurences of vdef to v_may_def. Also
+ add code to register new V_MUST_DEFs made by the statement.
+ * tree-outof-ssa.c (VIRTUAL_PARTITION): Update comments.
+ (check_replaceable): Rename occurences of vdef to v_may_def. Also
+ add check for V_MUST_DEFs.
+ (find_replaceable_in_bb): Ditto.
+ * tree-pretty-print.c (dump_vops): Rename occurences of vdef
+ to v_may_def. Also add code to dump V_MUST_DEFs.
+ * tree-sra.c (mark_all_vdefs): Replace with...
+ (mark_all_v_may_defs): This.
+ (mark_all_v_must_defs): New function.
+ (create_scalar_copies): Replace call to mark_all_vdefs with
+ calls to mark_all_v_may_defs and mark_all_v_must_defs.
+ (scalarize_structures): Rename occurences of vdef to v_may_def.
+ Also add a check for V_MUST_DEFs.
+ (scalarize_modify_expr): Rename occurences of vdef to v_may_def.
+ * tree-ssa-alias.c (global_var): Update comment.
+ (compute_may_aliases): Ditto.
+ (compute_points_to_and_addr_escape): Rename occurences of vdef
+ to v_may_def. Also add code to mark variables in V_MUST_DEF
+ operands as being written to.
+ (group_aliases): Update comment.
+ (maybe_create_global_var): Ditto.
+ * tree-ssa.c (verify_ssa): Rename occurences of vdef to v_may_def.
+ Also add a check for V_MUST_DEFs on GIMPLE registers.
+ (replace_immediate_uses): Rename occurences of vdef to v_may_def.
+ * tree-ssa-ccp.c (visit_stmt): Rename occurences of vdef
+ to v_may_def. Also add code to mark all V_MUST_DEF operands
+ VARYING.
+ (initialize): Ditto.
+ (set_rhs): Rename occurences of vdef to v_may_def. Also add
+ code to update SSA_NAMEs in V_MUST_DEFs.
+ * tree-ssa-copy.c (cprop_into_stmt): Rename occurences of vdef
+ to v_may_def.
+ * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Rename
+ occurences of vdef to v_may_def. Also add code to mark statements
+ with V_MUST_DEFs as necessary.
+ (propagate_necessity): Rename occurences of vdef to v_may_def.
+ * tree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Rename
+ occurences of vdef to v_may_def. Also add code to mark operands
+ in V_MUST_DEFs for renaming.
+ (eliminate_redundant_computations): Rename occurences of vdef
+ to v_may_def.
+ (record_equivalences_from_stmt): Rename occurences of vdef
+ to v_may_def. Also add code to record VUSEs for V_MUST_DEFs.
+ (optimize_stmt): Remove unnesessary variable vdefs. Update
+ comment.
+ (register_definitions_for_stmt): Rename occurences of vdef
+ to v_may_def. Also add code to register definitions made with
+ V_MUST_DEFs.
+ * tree-ssa-dse.c (fix_stmt_vdefs): Replace with...
+ (fix_stmt_v_may_defs): This.
+ (fix_phi_uses): Rename occurences of vdef to v_may_def.
+ (dse_optimize_stmt): Ditto.
+ * tree-ssa-live.c (create_ssa_var_map): Rename occurences of vdef
+ to v_may_def. Also add code to mark V_MUST_DEF operands as being
+ used in virtual operators.
+ * tree-ssa-loop.c (mark_defs_for_rewrite): Rename occurences of
+ vdef to v_may_def. Also add code to mark V_MUST_DEF operands for
+ renaming.
+ * tree-ssa-operands.c (opf_kill_def): New flag for killing
+ definitions.
+ (build_vdefs): Renamed to...
+ (build_v_may_defs): This.
+ (build_v_must_defs): New variable.
+ (voperands_d): Add v_must_def_ops and replace vdef_ops with
+ v_may_def_ops.
+ (append_vdef): Replace with...
+ (append_v_may_def): This.
+ (append_v_must_def): New function.
+ (NUM_FREE): Increment for V_MUST_DEF
+ (optype_freelist): Increment its size for V_MUST_DEF
+ (allocate_vdef_optype): Replace with...
+ (allocate_v_may_def_optype): This.
+ (allocate_v_must_def_optype): New function.
+ (free_vdefs): Replace with...
+ (free_v_may_defs): This.
+ (free_v_must_defs): New function.
+ (remove_vdefs): Replace with...
+ (remove_v_may_defs): This.
+ (remove_v_must_defs): New function.
+ (init_ssa_operands): Rename occurences of vdef to v_may_def. Also
+ add code to initialize build_v_must_defs.
+ (finalize_ssa_vdefs): Replace with...
+ (finalize_ssa_v_may_defs): This.
+ (finalize_ssa_vuses): Rename occurences of vdef to v_may_def.
+ (finalize_ssa_v_must_defs): New function.
+ (finalize_ssa_stmt_operands): Replace call to finalize_ssa_vdefs
+ with calls to finalize_ssa_v_may_defs and finalize_ssa_v_must_defs.
+ (verify_start_operands): Rename occurences of vdef to v_may_def.
+ Also add check for build_v_must_defs.
+ (get_stmt_operands): Rename occurences of vdef to v_may_def.
+ Also add code to handle V_MUST_DEFs and to use opf_kill_def for
+ killing definitions.
+ (get_expr_operands): Update comment and use opf_kill_def for
+ killing definitions.
+ (add_stmt_operand): Replace code that appends VDEFs with code
+ that appends V_MUST_DEFs when opf_kill_def is set and V_MAY_DEFs
+ otherwise.
+ (add_call_clobber_ops): Update comments.
+ * tree-ssa-operands.h (vdef_optype_d): Replace with...
+ (v_may_def_optype_d): This.
+ (v_must_def_optype_d): New structure.
+ (VDEF_OPS): Replace with...
+ (V_MAY_DEF_OPS): This.
+ (STMT_VDEF_OPS): Same with...
+ (STMT_V_MAY_DEF_OPS): This.
+ (NUM_VDEFS): And...
+ (NUM_V_MAY_DEFS): This.
+ (VDEF_RESULT_PTR): As well as...
+ (V_MAY_DEF_RESULT_PTR): This.
+ (VDEF_RESULT): Same goes for...
+ (V_MAY_DEF_RESULT): This.
+ (VDEF_OP_PTR): And...
+ (V_MAY_DEF_OP_PTR): This.
+ (VDEF_OP): And...
+ (V_MAY_DEF_OP): This.
+ (V_MUST_DEF_OPS): New macro.
+ (STMT_V_MUST_DEF_OPS): Ditto.
+ (NUM_V_MUST_DEFS): Ditto.
+ (V_MUST_DEF_OP_PTR): Ditto.
+ (V_MUST_DEF_OP): Ditto.
+ (remove_vdefs): Replace signature with...
+ (remove_v_may_defs): This.
+ (remove_v_must_defs): New function signature.
+ * tree-ssa-pre.c (subst_phis): Replace call to remove_vdefs
+ with calls to remove_v_may_defs and remove_v_must_defs.
+ (process_left_occs_and_kills): Rename occurences of vdef to v_may_def.
+ Also add code that marks left occurences of operands in V_MUST_DEFs.
+ * tree-tailcall.c (find_tail_calls): Rename occurences of vdef
+ to v_may_def. Also add check for V_MUST_DEFs.
+ (eliminate_tail_call):Rename occurences of vdef to v_may_def.
+
+2004-06-10 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR target/15653
+ * haifa-sched.c (schedule_block): Finish cycle after issuing asm
+ insn.
+
+2004-06-10 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
+
+ PR web/15263
+ * doc/install.texi: Remove superfluous linebreak.
+
+2004-06-10 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin): Fall back to library function call for
+ conj, conjf, conjl, creal, crealf, creall, cimag, cimagf and cimagl.
+ (fold_builtin_1): Lower built-ins BUILT_IN_CONJ{,F,L} to CONJ_EXPR,
+ BUILT_IN_CREAL{,F,L} to REALPART_EXPR, and BUILT_IN_CIMAG{,F,L} to
+ IMAGPART_EXPR respectively.
+
+2004-06-10 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * sh.c (dump_table): New argument start. Changed caller.
+ (fixup_mova): New function.
+ (find_barrier): Use it.
+ (sh_reorg): Likewise. Check for CODE_FOR_casesi_worker_2.
+ If the label a mova refers to is above the mova itself, change
+ the mova into a load.
+ * sh.md (*casesi_worker): Rename to:
+ (casesi_worker_1).
+ (casesi_worker_2): New insn.
+
+2004-06-10 Jason Merrill <jason@redhat.com>
+
+ * target.h (struct gcc_target): Change gimplify_va_arg_expr
+ hook signature.
+ * tree-gimple.h: Adjust.
+ * config/alpha/alpha.c (alpha_gimplify_va_arg): Adjust.
+ * config/i386/i386.c (ix86_gimplify_va_arg): Adjust.
+ Use fold_convert.
+ * config/ia64/ia64.c (ia64_gimplify_va_arg): Adjust.
+ * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust.
+ Use COMPLEX_EXPR for complex numbers. Use fold_convert.
+ * builtins.c (std_gimplify_va_arg_expr): Adjust. Use fold_convert.
+ (gimplify_va_arg_expr): Return GS_ERROR in error case.
+ Gimplify valist rather than calling stabilize_va_list.
+
+2004-06-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (df.o): Remove fibheap dependency.
+ * df.h: Do not include sbitmap.h.
+ (struct ref): New field "data".
+ (DF_REF_DATA): New accessor macro.
+ (struct df): Field "dom" removed.
+ (df_analyze_subcfg): New function.
+ (transfer_function_sbitmap, transfer_function_bitmap): Replaced by ...
+ (transfer_function): ... new type.
+ (iterative_dataflow_sbitmap, iterative_dataflow_bitmap): Replaced by ...
+ (iterative_dataflow): ... new function.
+ (enum set_representation, struct dataflow): New.
+ * df.c: Do not include fibheap.h.
+
+ (df_reg_def_chain_clean, df_reg_use_chain_clean,
+ (df_bb_table_realloc, df_analyse_subcfg, free_reg_ref_chain,
+ prune_to_subcfg, df_bb_modify): New functions.
+ (df_bitmaps_alloc, df_reg_def_chain_create, df_reg_use_chain_create,
+ df_refs_update, df_reg_table_realloc, df_ref_create,
+ df_bb_reg_def_chain_create, df_bb_reg_use_chain_create,
+ df_bb_rd_local_compute, df_bb_ru_local_compute, df_bb_lr_local_compute,
+ df_analyse_1, df_insn_modify): Support analysing only a part of the cfg.
+
+ (dataflow_set_a_op_b, dataflow_set_copy): New functions.
+ (df_rd_transfer_function, df_ru_transfer_function,
+ df_lr_transfer_function): Type of bitmaps changed to void *.
+ (hybrid_search_bitmap, hybrid_search_sbitmap): Merge into ...
+ (hybrid_search): ... new function.
+ (iterative_dataflow_bitmap, iterative_dataflow_sbitmap): Merge into ...
+ (iterative_dataflow): ... new function. Avoid use of fibheaps for
+ a worklist. Do not process basic blocks unnecessarily.
+
+2004-06-10 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_abs_const): Make extern.
+ * tree.h (fold_abs_const): Prototype here.
+ * builtins.c (fold_builtin_fabs): New function to transform
+ fabs, fabsf and fabsl builtins into ABS_EXPR tree nodes.
+ (fold_builtin_abs): New function to transform abs, labs, llabs
+ and imaxabs builtins into ABS_EXPR tree nodes.
+ (expand_builtin): Fall back to a function call for abs, labs,
+ llabs and imaxabs builtins that survive constant folding.
+ (fold_builtin_1): Call fold_builtin_fabs for FABS, FABSF and
+ FABSL, and fold_builtin_abs for ABS, LABS, LLABS and IMAXABS.
+
+2004-06-10 Jakub Jelinek <jakub@redhat.com>
+
+ * config/ia64/unwind-ia64.c (uw_frame_state_for): Don't assume a
+ leaf function without unwind info at RP 0.
+
+2004-06-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/14791
+ * tree.h (enum tree_index): Add TI_FILEPTR_TYPE.
+ (fileptr_type_node): Define.
+ * tree.c (build_common_tree_nodes_2): Initialize
+ fileptr_type_node to ptr_type_node.
+ * c-common.c (c_common_nodes_and_builtins): For C++, make
+ fileptr_type_node a distinct type copy.
+ * builtin-types.def (BT_FILEPTR, BT_FN_INT_CONST_STRING_FILEPTR,
+ BT_FN_INT_INT_FILEPTR, BT_FN_INT_FILEPTR_CONST_STRING_VALIST_ARG,
+ BT_FN_SIZE_CONST_PTR_SIZE_SIZE_FILEPTR,
+ BT_FN_INT_FILEPTR_CONST_STRING_VAR): Add.
+ (BT_FN_INT_CONST_STRING_PTR, BT_FN_INT_INT_PTR,
+ BT_FN_SIZE_CONST_PTR_SIZE_SIZE_PTR, BT_FN_INT_PTR_CONST_STRING_VAR,
+ BT_FN_INT_PTR_CONST_STRING_VALIST_ARG): Remove.
+ * builtins.def (BUILT_IN_FPRINTF, BUILT_IN_FPRINTF_UNLOCKED,
+ BUILT_IN_FPUTC, BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS,
+ BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FSCANF, BUILT_IN_FWRITE,
+ BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): Use
+ the above *FILEPTR* types instead of *PTR*.
+
+2004-06-09 Daniel Berlin <dberlin@dberlin.org>
+
+ * tree-ssa.c (verify_ssa): Verify that vdefs/makes_aliased_stores
+ match.
+
+2004-06-09 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_not_const): New function.
+ (fold) <ABS_EXPR>: Don't bother testing wins.
+ (fold) <BIT_NOT_EXPR>: Call fold_not_const.
+ (nondestructive_fold_unary_to_constant) <BIT_NOT_EXPR>: Likewise.
+
+2004-06-09 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/15228
+ * function.c (assign_parms): Always set_mem_align with the computed
+ FUNCTION_ARG_BOUNDARY. Don't clear stack_parm if !STRICT_ALIGNMENT.
+
+2004-06-09 Richard Henderson <rth@redhat.com>
+
+ PR opt/15108
+ * tree-tailcall.c (find_tail_calls): Don't check early for
+ tail_recursion failure.
+
+2004-06-09 Diego Novillo <dnovillo@redhat.com>
+
+ Move SSA_NAME annotations into tree_ssa_name.
+
+ * tree-dfa.c (create_ssa_name_ann): Remove.
+ * tree-flow-inline.h (ssa_name_ann, get_ssa_name_ann): Remove.
+ * tree-flow.h (enum tree_ann_type): Remove SSA_NAME_ANN.
+ (struct ssa_name_ann_d): Remove.
+ (union tree_ann_d): Update.
+ (ssa_name_ann_t): Remove.
+ * tree-ssa-alias.c: (get_ptr_info): New local function.
+ Replace references to ssa_name_ann_t with struct ptr_info_def.
+ * tree-ssa-operands.c (get_expr_operands): Likewise.
+ * tree.h (SSA_NAME_PTR_INFO): Define.
+ (struct ptr_info_def): Declare.
+ (struct tree_ssa_name): Add field 'ptr_info'.
+
+2004-06-09 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/winnt.c (i386_pe_output_labelref): Correct
+ misplaced ')'.
+
+2004-06-09 Steven Bosscher <stevenb@suse.de>
+
+ * config/i386/k6.md: Rewrite using the DFA model.
+ * config/i386/i386.c (ix86_adjust_cost): Don't increase the
+ cost of load-operation insns for the K6.
+ (ia32_use_dfa_pipeline_interface): Add TARGET_K6.
+ (ia32_multipass_dfa_lookahead): Likewise.
+
+2004-06-09 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_gimplify_va_arg_1,
+ alpha_gimplify_va_arg, TARGET_GIMPLIFY_VA_ARG_EXPR): New.
+
+2004-06-09 Richard Henderson <rth@redhat.com>
+
+ * expmed.c (emit_store_flag): Cope with FLOAT_STORE_FLAG_VALUE.
+
+2004-06-09 Geoffrey Keating <geoffk@apple.com>
+
+ * Makefile.in (CPPLIB_H): Put files in order of inclusion.
+ (CPP_ID_DATA_H): New.
+ (gtype-desc.o): Update dependencies.
+ (GTFILES): Use CPP_ID_DATA_H.
+
+2004-06-09 Mark Mitchell <mark@codesourcery.com>
+
+ Revert:
+ PR c++/15815
+ 2004-06-07 Mark Mitchell <mark@codesourcery.com>
+ * doc/extend.texi: Deprecate #pragma interface and #pragma
+ implementation.
+
+2004-06-09 David S. Miller <davem@nuts.davemloft.net>
+
+ * config/sparc/sparc.h (MOVE_RATIO): New definition.
+
+2004-06-09 Richard Henderson <rth@redhat.com>
+
+ * basic-block.h (struct edge_def): Add goto_locus.
+ * tree-cfg.c (make_goto_expr_edges): Set it.
+ (disband_implicit_edges): Use it.
+ * tree-pretty-print.c (dump_implicit_edges): Print it.
+
+2004-06-08 Anil Paranjpe <anilp1@kpitcummins.com>
+
+ * h8300.md (ldm_h8300s_4): Fix condition for expander.
+
+2004-06-08 Jason Merrill <jason@redhat.com>
+
+ Gimplify VA_ARG_EXPR into simpler forms.
+ * target.h: Add gimplify_va_arg_expr hook.
+ * target-def.h: Add TARGET_GIMPLIFY_VA_ARG_EXPR.
+ * fold-const.c (build_fold_addr_expr)
+ (build_fold_addr_expr_with_type): Move from gimplify.c.
+ * tree.h: Declare them.
+ * gimplify.c (gimplify_and_add): New fn.
+ (build_addr_expr, build_addr_expr_with_type): Move to fold-const.c.
+ (gimplify_array_ref_to_plus, gimplify_modify_expr)
+ (gimplify_expr): Use build_fold_*.
+ (copy_if_shared_r): Only mark VA_ARG_EXPR volatile if we
+ don't know how to gimplify it.
+ * builtins.c (std_gimplify_va_arg_expr): New fn.
+ (dummy_object): New static fn.
+ (gimplify_va_arg_expr): New fn.
+ (stabilize_va_list): Use build_fold_*.
+ * tree-gimple.h: Declare new fns.
+ * config/i386/i386.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
+ (ix86_gimplify_va_arg): New fn.
+ * config/ia64/ia64.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
+ (ia64_gimplify_va_arg): New fn.
+ * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): New fn.
+ (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
+ * alias.c (get_varargs_alias_set): Just return 0 for now.
+
+ * c-objc-common.c (c_tree_printer): Improve handling of %T.
+
+2004-06-09 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * tree-complex.c (expand_complex_comparison): Use fold_convert instead
+ of convert.
+ * tree-inline.c (setup_one_parameter): Likewise.
+ * tree-sra.c (csc_build_component_ref): Likewise.
+ * tree-ssa-ccp.c (ccp_fold): Likewise.
+ * tree-ssa-copy.c (cprop_operand): Likewise.
+ * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
+ * tree-tailcall.c (tree_optimize_tail_calls_1): Likewise.
+
+2004-06-09 J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR rtl-optimization/15521:
+ * sched-int.h (in_post_call_group_p): Change type to enum.
+ * sched-deps.c (sched_analyze_insn):
+ (sched_analyze): When in_post_call_group_p is post_call_initial,
+ don't add a dependency, but still set SCHED_GROUP_P and CANT_MOVE,
+ and also reset in_post_call_group_p to post_call.
+ (sched_analyze): When the previous basic block ended in a CALL_INSN,
+ initialize in_post_call_group_p as post_call_initial.
+ (init_deps): initialize in_post_call_group_p to not_post_call.
+
+2004-06-09 Arnaud Charlet <charlet@act-europe.fr>
+
+ PR ada/6637
+ * doc/install.texi: List ada, libada as options to --enable-shared
+
+2004-06-09 Paolo Bonzini <bonzini@gnu.org>
+
+ * aclocal.m4 (gcc_AC_PROG_LN): Remove.
+ (gcc_AC_CHECK_DECLS): Use AH_TEMPLATE to generate
+ config.in entries.
+ * configure.ac: Call ACX_PROG_LN, falling back to $LN_S
+ if hard links are not available.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+
+2004-06-08 Per Bothner <per@bothner.com>
+
+ * configure.ac: New --enable-mapped-location sets USE_MAPPED_LOCATION.
+
+2004-06-08 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * toplev.c (floor_log2_wide): Correct casts for 64-bit hosts.
+ Correct formatting.
+
+2004-06-08 James E Wilson <wilson@specifixinc.com>
+
+ PR target/15790
+ * config/i386/i386-coff.h (ASM_OUTPUT_ALIGN): Define.
+
+2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * fold-const.c (fold_convert): Treat OFFSET_TYPE like
+ POINTER_TYPE and INTEGER_TYPE.
+
+2004-06-08 Bernardo Innocenti <bernie@develer.com>
+
+ * modulo-sched.c: Compile only when INSN_SCHEDULING is
+ defined.
+
+2004-06-08 Jeff Law <law@redhat.com>
+
+ * doc/contrib.texi: Add entries for Stefan Olsson and
+ Ola Ronnerup.
+
+2004-06-08 DJ Delorie <dj@redhat.com>
+
+ * toplev.c (floor_log2_wide): Replace loop with faster bit
+ operations.
+ (exact_log2_wide): Define in terms of the above.
+ * toplev.h (floor_log2): Use _builtin_clz family of builtins if
+ available.
+
+2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.c (print_operand, <case 'z'>):
+ Make sure that we are in INDIRECT mode when getting the
+ stub name.
+
+2004-06-08 Anil Paranjpe <anilp1@kpitcummins.com>
+
+ * h8300.md (extendqisi2_h8300): Add constraints.
+ (ldm_h8300s_4_normal): Fix typo.
+
+2004-06-08 Richard Henderson <rth@redhat.com>
+
+ * gimple-low.c (struct lower_data): Replace the_return_label and
+ one_return_stmt with return_statements.
+ (lower_function_body): Process the entire list of return_statements.
+ (lower_return_expr): Check source value before unifying return_exprs.
+ * gimplify.c (gimplify_return_expr): Force the use of a temporary
+ for !aggregate_value_p.
+ * tree-gimple.c: Update RETURN_EXPR grammer.
+
+2004-06-08 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR target/15598
+ * config/ia64/ia64.c (bundling): Add missed TYPE_A.
+
+2004-06-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR rtl-optimization/15717
+ * config/i386/i386.c (legitimate_constant_p): Do not allow
+ x - symbol_ref.
+
+2004-06-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * gimplify.c (copy_if_shared_r): Revert:
+ 2004-05-21 Richard Henderson <rth@redhat.com>
+ * gimplify.c [...] Don't mark VA_ARG_EXPRs volatile here.
+
+2004-06-07 Roger Sayle <roger@eyesopen.com>
+
+ * expmed.c (add_cost, neg_cost, sdiv_pow2_cheap, smod_pow2_cheap):
+ Make arrays indexed by machine mode. Rename negate_cost to neg_cost.
+ (init_expmed): Initialize these cost arrays as appropriate.
+ (store_bit_field, extract_bit_field): Correct whitespace.
+ (synth_mult, choose_mult_variant, expand_mult, expand_mult_highpart,
+ expand_mult_highpart_optab, expand_divmod): Update uses of add_cost,
+ neg_cost, sdiv_pow2_cheap, smod_pow2_cheap to index with mode,
+ word_mode or compute_mode as appropriate.
+
+2004-06-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/15783
+ * config/sparc/sparc.c (function_arg_union_value): Add 'mode'
+ parameter. Enumerate the registers inside the PARALLEL.
+ (function_arg): Adjust call to function_arg_union_value.
+ (function_value): Likewise.
+
+ * config/sparc/sparc.c (sparc_function_epilogue): Properly format.
+
+2004-06-07 Roger Sayle <roger@eyesopen.com>
+
+ * real.c (real_copysign): New function to implement libm's copysign.
+ * real.h (real_copysign): Prototype here.
+ * fold-const.c (tree_expr_nonnegative_p): The result of sqrt, sqrtf
+ and sqrtl can be negative, as sqrt(-0.0) = -0.0. Correct whitespace.
+ * builtins.c (fold_builtin_isascii, fold_builtin_toascii,
+ fold_builtin_isdigit): Add function prototypes.
+ (fold_builtin_copysign): New function to fold copysign, copysignf
+ and copysignl. Optimize copysign(x,x) as x. Evaluate copysign of
+ constant arguments at compile-time using real_copysign. Fold
+ copysign(X,Y) as fabs(X) if Y is always non-negative.
+ (fold_builtin_1): Correct minor whitespace/style issues. Call
+ fold_builtin_copysign for BUILT_IN_COPYSIGN{,F,L}.
+
+2004-06-07 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * tree.c (iterative_hash_expr): Use real_hash.
+
+2004-06-07 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/14765
+ * c-parse.in (compstmt_primary_start): Set last_expr_type to
+ NULL_TREE.
+
+2004-06-07 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/15815
+ * doc/extend.texi: Deprecate #pragma interface and #pragma
+ implementation.
+
+2004-06-07 Alexandre Oliva <aoliva@redhat.com>
+
+ PR middle-end/15666
+ * c-decl.c (finish_decl): Use change_decl_assembler_name for the
+ builtin decl as well.
+
+2004-06-07 Roger Sayle <roger@eyesopen.com>
+
+ PR c/14649
+ * c-typeck.c (require_constant_value, require_constant_elements):
+ Move declarations to the top of the file.
+ (build_function_call): If we require a constant value, fold with
+ fold_initializer. If the result is a constant, and the function
+ wasn't called using __builtin_foo, issue a pedantic warning.
+ (build_unary_op): If we require a constant value, fold tree with
+ fold_initializer.
+ (build_binary_op): Use require_constant_value to determine whether
+ to call fold or fold_initializer.
+
+2004-06-07 Richard Henderson <rth@redhat.com>
+
+ * gimple-low.c (struct lower_data): Add the_return_label and
+ one_return_stmt.
+ (lower_function_body): Initialize and use them.
+ (lower_return_expr): New.
+ (lower_stmt): Call it.
+ * gimplify.c (gimplify_return_expr): Force the argument to be either
+ null or a result_decl.
+ * tree-gimple.c: Update gimple grammer to match.
+ * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Deny
+ coalescing of result_decls.
+
+2004-06-07 Richard Henderson <rth@redhat.com>
+
+ PR rtl-opt/15193
+ * expmed.c (extract_bit_field): Fix vector_extract return.
+
+ * config/i386/i386.md (negv4sf2): New pattern.
+
+2004-06-07 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/15337
+ * c-common.c (c_sizeof_or_alignof_type): Use more detailed error
+ message.
+
+2004-06-06 Paolo Bonzini <bonzini@gnu.org>
+
+ * config.in: Regenerate.
+
+2004-06-06 Steven Bosscher <stevenb@suse.de>
+
+ * tree-cfg.c (tree_verify_flow_info): Make sure that labels in
+ SWITCH_LABELS are always sorted.
+
+2004-06-06 Steven Bosscher <stevenb@suse.de>
+
+ * hooks.c (hook_int_void_1): New generic hook.
+ * hooks.h (hook_int_void_1): Add prototype.
+ * config/c4x/c4x.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
+ Define to hook_int_void_1.
+ * config/c4x/c4x.md: Replace dummies for the old pipeline model
+ with dummies for the new one.
+
+2004-06-06 Roger Sayle <roger@eyesopen.com>
+
+ * tree.h (lvalue_or_else): Delete function prototype.
+ * c-typeck.c (lvalue_or_else): Make static. Add static prototype.
+
+2004-06-06 Stephane Carrez <stcarrez@nerim.fr>
+
+ PR target/14542
+ * config/m68hc11/m68hc11.md (move peephole2): Emit a use note to avoid
+ a live change of a register after peephole replacement.
+
+2004-06-06 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/13519
+ * c-typeck.c (composite_type, common_pointer_type): New functions.
+ (common_type): Split parts into composite_type and
+ common_pointer_type. Ensure that arithmetic operations return
+ unqualified types without attributes. Don't make composite type
+ of signed enum and compatible integer be unsigned.
+ (build_conditional_expr, build_binary_op): Use
+ common_pointer_type.
+ * c-decl.c (merge_decls): Use composite_type.
+ * c-tree.h (composite_type): Declare.
+
+2004-06-06 Stephane Carrez <stcarrez@nerim.fr>
+
+ PR target/14457
+ * config/m68hc11/m68hc11.c (splitable_operand): New predicate.
+ * config/m68hc11/m68hc11-protos.h (splitable_operand): Declare.
+ * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register it.
+ (inhibit_libc): Must define.
+ * config/m68hc11/m68hc11.md ("movhi_const0"): Use splitable_operand.
+ ("*andhi3_gen", "iorhi3", "*iorhi3_gen"): Likewise.
+ ("xorhi3"): Likewise.
+
+2004-06-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * cgraphunit.c (cgraph_decide_inlining): Adjust dump lines in
+ always_inline pass.
+
+2004-06-05 David S. Miller <davem@nuts.davemloft.net>
+
+ * config/sparc/linux.h (TARGET_C99_FUNCTIONS): Set.
+ * config/sparc/linux64.h (TARGET_C99_FUNCTIONS): Likewise.
+
+2004-06-05 Bernardo Innocenti <bernie@develer.com>
+
+ * regclass.c (init_reg_sets): Check for missing registers in target
+ initializer macros FIXED_REGISTERS and CALL_USED_REGISTERS.
+
+2004-06-05 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (MKDEPS_H): New shorthand.
+ (c-opts.o): Update dependencies.
+ * c-opts.c: Include mkdeps.h.
+ (handle_deferred_opts): Use cpp_get_deps and deps_add_target,
+ not cpp_add_dependency_target.
+
+2004-06-05 Steven Bosscher <stevenb@suse.de>
+
+ * config/v850/v850.c (v850_use_dfa_pipeline_interface): New.
+ * config/v850/v850.md: Convert to DFA scheduler description.
+
+2004-06-05 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+ PR fortran/15478
+ * doc/install.texi: Document GMP as prerequisite. Document
+ --with-gmp and --with-gmp-dir configure options.
+ * fortran/gfortran.texi: Remove section "Compiling and testing",
+ remove TOC reference to it.
+
+2004-06-05 Graham Stott <graham.stott@btinternet.com>
+
+ * combine.c(simplify_shift_const): Check shift amount is a
+ CONST_INT.
+
+2004-06-05 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * toplev.c (init_asm_output): Add explicit 'b' to mode when
+ opening asm_out_file.
+ * c-pch.c (c_common_write_pch): Remove unnecessary fflush before
+ reading asm_out_file. Replace fflush after reading asm_out_file
+ with fseek.
+ * hosthooks-def.h (HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY): Define
+ default and add to HOST_HOOKS_INITIALIZER.
+ * hosthooks.h (gt_pch_alloc_granularity): Declare hook function.
+ * ggc-common.c (default_gt_pch_alloc_granularity): New function.
+ (gt_pch_save): Use host_hooks.gt_pch_alloc_granularity
+ to set mmi.offset padding.
+ * config.gcc (i[34567]86-*-mingw32*): Set target_gtfiles to
+ $(srcdir)/config/i386/winnt.c.
+ (i[34567]86-*-pe | i[34567]86-*-cygwin*): Likewise.
+ (i[34567]86-*-uwin*): Likewise.
+ *i[34567]86-*-interix3*): Likewise.
+ * config.host (i[34567]86-*-mingw32*): Set out_host_hook_obj.
+ * config/i386/host-mingw32.c: New file.
+ * config/i386/x-mingw32: Add rule for host-mingw32.o.
+ * config/i386/winnt.c: (struct extern_list) Tag as GTY.
+ (extern_head): Likewise.
+ (struct export_list) Likewise.
+ (export_head): Likewise.
+ (i386_pe_record_external_function): Use ggc_alloc.
+ (i386_pe_record_exported_symbol): Likewise.
+ Include "gt-winnt.h" at end.
+ * doc/hostconfig.texi: Document
+ HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY.
+
+2004-06-04 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h: Remove comments copied over from tm.texi.
+ Rename 68000 and 68k to m68k for consistency in comments. Remove
+ trailing whitespace before EOLs and before TABs.
+ (MAX_CODE_ALIGN): Remove unused macro.
+ (CALL_USED_REGISTERS): Reformat and add comments.
+
+2004-06-04 Frank Ch. Eigler <fche@redhat.com>
+
+ * gcc.c (MFLIB_SPEC): Remove library references, to require users
+ to enumerate -lmudflap* and dependencies when linking.
+
+2004-06-04 Paolo Bonzini <bonzini@gnu.org>
+
+ PR target/15822
+ * dojump.c (do_jump): Fix uninitialized variable tcode1.
+
+2004-06-04 Jerry Quinn <jlquinn@optonline.net>
+
+ * Makefile.in (insn-conditions.o): Back out removal of reload.h.
+ * genconditions.c (write_header): Back out removal of reload.h.
+
+2004-06-04 Jan Hubicka <jh@suse.cz>
+
+ Re-apply hopefully fixed patch:
+ * i386.md (UNSPECV_EH_RETURN): Kill.
+ (eh_return): Use jump_insn.
+ (eh_return_si, eh_return_di): Change pattern to jump instruction.
+
+2004-06-04 Jeff Law <law@redhat.com>
+
+ * cfgrtl.c (try_redirect_by_replacing_jump): Fix return value.
+
+2004-06-04 Steven Bosscher <stevenb@suse.de>
+
+ * except.c (for_each_eh_region): New function.
+ * except.h (for_each_eh_region): Add a prototype for it.
+ * tree-cfg.c (update_eh_labels): New function, callback for
+ for_each_eh_region.
+ (label_for_bb): Make global static, unfortunately.
+ (cleanup_dead_labels): Also update label references for
+ exception regions.
+
+2004-06-03 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.c (struct irix_section_align_entry): Fix
+ GTY marker.
+
+2004-06-03 Geoffrey Keating <geoffk@apple.com>
+
+ * toplev.c (check_global_declarations): Don't ask for
+ DECL_ASSEMBLER_NAME unless the function really is declared
+ static and not defined.
+
+2004-06-03 Matt Austern <austern@apple.com>
+
+ PR c++/15428
+ * default.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): New name
+ for TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, with reversed sense.
+ * config/darwin.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Likewise.
+ * doc/tm.texi (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Rewrite
+ documentation to reflect the new macro name and to clarify its
+ meaning.
+
+2004-06-03 Steven Bosscher <stevenb@suse.de>
+
+ * rtl.def (VAR_LOCATION): Make RTX_EXTRA.
+
+2004-06-03 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/darwin.c (machopic_indirect_data_reference): Copy
+ the SYMBOL_REF_DECL from the original RTX for the new
+ non-lazy pointer RTX.
+
+2004-06-03 Mark G. Adams <mark.g.adams@sympatico.ca>
+
+ * tree.h: Remove include of version.h
+ * c-cppbuiltin.c: Include version.h
+ * diagnostic.c: Include version.h
+ * dwarf2out.c: Include version.h
+ * toplev.c: Include version.h
+ * vmsdbgout.c: Include version.h
+ * Makefile.in: Remove dependency on version.h from TREE_H, and
+ add dependencies to required .o targets
+
+2004-06-03 Jerry Quinn <jlquinn@optonline.net>
+
+ * Makefile.in (RA_H, RESOURCE_H, SCHED_INT_H, CFGLAYOUT_H,
+ CFGLOOP_H, DF_H, DDG_H, TREE_SSA_LIVE_H): New.
+ (TARGET_H): Add insn-modes.h.
+ (tree-ssa.o, tree-cfg.o, tree-ssa-loop.o, toplev.o, passes.o,
+ loop.o, loop-doloop.o, unroll.o, cfgloop.o, cfgloopanal.o,
+ loop-iv.o, cfgloopmanip.o, loop-init.o, loop-unswitch.o,
+ loop-unroll.o, ddg.o, modulo-sched.o, predict.o,
+ cfglayout.o, ifcvt.o): Replace cfgloop.h with CFGLOOP_H.
+ (toplev.o, passes.o, cfghooks.o, cfgloopmanip.o, loop-init.o,
+ loop-unswitch.o, loop-unroll.o, ddg.o, modulo-sched.o,
+ bb-reorder.o, tracer.o, cfglayout.o): Replace cfglayout.h with
+ CFGLAYOUT_H.
+ (ra.o, ra-build.o, ra-colorize.o, ra-debug.o, ra-rewrite.o):
+ Replace ra.h with RA_H.
+ (resource.o, regrename.o, insn-conditions.o, insn-emit.o,
+ insn-recog.o): Replace resource.h with RESOURCE_H.
+ (ddg.o, modulo-sched.o, haifa-sched.o, sched-deps.o, sched-rgn.o,
+ sched-ebb.o, sched-vis.o, out_object_file): Replace sched-int.h
+ with SCHED_INT_H.
+ (web.o, lcm.o, df.o, ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
+ ra-rewrite.o): Replace df.h with DF_H.
+ (ddg.o, modulo-sched.o): Replace ddf.h with DDG_H.
+ (tree-outof-ssa.o, tree-ssa-live.o, tree-ssa-copyrename.o):
+ Replace tree-ssa-live.h with TREE_SSA_LIVE_H.
+ (insn-conditions.o): Remove unused reload.h.
+ * cfglayout.h: Add include guard. Include basic-block.h.
+ * cfgloop.h: Add include guard. Include basic-block.h, rtl.h.
+ * ddg.h: Include sbitmap.h, basic-block.h, df.h.
+ * df.h: Add include guard. Include bitmap.h, sbitmap.h,
+ basic-block.h.
+ * genconditions.c: Remove reload.h.
+ * ra.h: Add include guard. Include bitmap.h, sbitmap.h,
+ hard-reg-set.h, insn-modes.h.
+ * resource.h: Add include guard. Include hard-reg-set.h.
+ * sched-int.h: Add include guard. Include insn-attr.h,
+ basic-block.h, rtl.h.
+ * target.h: Add include guard. Include insn-modes.h.
+ * tree-ssa-live.h: Include partition.h.
+
+2004-06-03 Daniel Berlin <dberlin@dberlin.org>
+ Kenneth Zadeck <zadeck@naturalbridge.com>
+
+ * tree-ssa-ccp.c (varying_ssa_edges): New worklist.
+ (add_var_to_ssa_edges_worklist): Add value argument.
+ Update callers.
+ Use new worklist.
+ (process_ssa_edge_worklist): New function.
+ (tree_ssa_ccp): Move worklist processing core to
+ process_ssa_edge_worklist, and just call that for the two worklists.
+
+2004-06-03 Steven Bosscher <stevenb@suse.de>
+
+ * basic-block.c (tail_recursion_label_list): Don't declare.
+ (CLEANUP_PRE_SIBCALL): Remove. Renumber the other CLEANUP_*
+ accordingly.
+ * cfgbuild.c (find_label_refs): Remove.
+ (find_basic_blocks_1): Don't handle CALL_PLACEHOLDER insns.
+ * cfgcleanup.c (tail_recursion_label_p): Remove.
+ (merge_blocks_move): Do not check for tail recursion.
+ (try_optimize_cfg): Likewise.
+ (cleanup_cfg): Never handle CLEANUP_PRE_SIBCALL.
+ * cfgrtl.c (tail_recursion_label_list): Remove.
+ * except.c (remove_unreachable_regions): Don't handle
+ CALL_PLACEHOLDER insns.
+ (convert_from_eh_region_ranges_1, can_throw_internal,
+ can_throw_external): Likewise.
+ * function.c (free_after_compilation): Don't clear
+ x_tail_recursion_label.
+ (fixup_var_refs_insns): Don't handle CALL_PLACEHOLDER insns.
+ (identify_blocks_1): Don't recurse for CALL_PLACEHOLDER insns.
+ (reorder_blocks_1): Likewise.
+ * function.h (struct function): Remove x_tail_recursion_label
+ member. Don't define tail_recursion_label.
+ * jump.c (mark_all_labels): Don't handle CALL_PLACEHOLDER insns.
+ * print-rtl.c (print_rtx): Likewise.
+ * rtl.def (CALL_PLACEHOLDER): Remove.
+ * rtl.h (sibcall_use_t): Remove enum.
+ (optimize_sibling_and_tail_recursive_calls,
+ replace_call_placeholder): Remove function prototypes.
+ * stmt.c (tail_recursion_args): Remove.
+ (optimize_tail_recursion): Remove.
+ (expand_return): Don't check for possible tail recursion.
+ * tree.h (optimize_tail_recursion): Remove prototype.
+
+2004-06-02 Jan Hubicka <jh@suse.cz>
+
+ * tree-cfg.c (tree_find_edge_insert_loc): Allow inserting before
+ return_stmt.
+
+2004-06-02 Jason Merrill <jason@redhat.com>
+
+ * Makefile.in (TAGS): Don't mess with c-parse.[ch].
+ Do include c-parse.in.
+
+2004-06-02 Eric Christopher <echristo@redhat.com>
+
+ * c-typeck.c (common_type): Don't lose type qualifiers
+ when creating new variants.
+
+2004-06-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR tree-optimization/14042
+ PR tree-optimization/14729
+ PR tree-optimization/14736
+ * tree-ssa.c (tree_ssa_useless_type_conversion_1):
+ Check the type which the pointer points to
+ instead of the pointer types.
+
+2004-06-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR tree-optimization/15738.
+ * builtins.c (fold_builtin_strchr): Transform
+ strrchr (s, '\0') to strchr (s, '\0').
+
+2004-06-02 Steven Bosscher <stevenb@suse.de>
+
+ * i386.c (ix86_adjust_cost): Don't increase the cost for
+ load+operation for PROCESSOR_PENTIUMPRO, it is already
+ modelled in the DFA description
+
+2004-06-01 Jerry Quinn <jlquinn@optonline.net>
+
+ * Makefile.in (EXPR_H): Add insn-config.h, function.h,
+ $(RTL_H), flags.h, $(TREE_H), $(MACHMODE_H), $(EXPR_H).
+ (ALIAS_H, EMIT_RTL_H): New.
+ (cselib.o): Replace EXPR_H with EMIT_RTL_H.
+ (cfgcleanup.o): Add EMIT_RTL_H.
+ (alias.o): Replace EXPR_H with EMIT_RTL_H and ALIAS_H.
+ * alias.c: Replace expr.h with emit-rtl.h and alias.h.
+ * attribs.c, c-lex.c, c-obj-common.c, c-semantics.c: Remove expr.h.
+ * cfgcleanup.c, cselib.c: Replace expr.h with emit-rtl.h.
+ * expr.h: Add include guard. Include function.h, rtl.h, flags.h,
+ tree.h, machmode.h, insn-config.h, alias.h, emit-rtl.h.
+ (get_varargs_alias_set, get_frame_alias_set, record_base_value,
+ record_alias_subset, new_alias_set, can_address_p): Move to alias.h.
+ (set_mem_alias_set, set_mem_align, set_mem_expr, set_mem_offset,
+ set_mem_size): Move to emit-rtl.h.
+ * emit-rtl.h: New.
+ * alias.h: New.
+
+2004-06-01 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * function.c (walk_fixup_memory_subreg): New parameter 'var'.
+ Call fixup_memory_subreg only if the MEM is equal to 'var'.
+ Adjust recursive calls to self.
+ (fixup_var_refs_insn): Pass 'var' to walk_fixup_memory_subreg.
+
+2004-06-01 Richard Henderson <rth@redhat.com>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-parse.in (OFFSETOF, offsetof_member_designator): New.
+ (primary): Handle offsetof. Add error productions for faux functions.
+ Move component_ref objc checking to build_component_ref.
+ (reswords): Add offsetof.
+ (rid_to_yy): Add offsetof.
+ * c-tree.h (build_offsetof): Declare.
+ * c-common.h (objc_is_public): Declare.
+ * c-typeck.c (build_component_ref): Check objc_is_public.
+ (build_offsetof): New.
+ * stub-objc.c (objc_is_public): New.
+ * objc/objc-act.c, objc/objc-act.h (objc_is_public): Rename
+ from is_public.
+ * ginclude/stddef.h (offsetof): Use __builtin_offsetof.
+ * doc/extend.texi (Offsetof): Move from C++ section to C section
+ and rewrite for __builtin_offsetof.
+
+2004-06-01 Peter Barada <peter@the-baradas.com>
+ Peter Jakubek <peter@laseranimation.com>
+
+ * config/m68k/m68k.c(m68k_output_mi_thunk): For ColdFire, use %d0 as
+ a scratch to perform an add to memory.
+
+2004-06-01 Bernardo Innocenti <bernie@develer.com>
+
+ PR target/14018
+ * config/m68k/m68k.c (m68k_align_loops_string, m68k_align_jumps_string,
+ m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps,
+ m68k_align_funcs): Remove.
+ (override_options): Remove code to handle -malign-* options.
+ * config/m68k/m68k.h (TARGET_OPTIONS): Remove -malign-* options.
+ (FUNCTION_BOUNDARY, LOOP_ALIGN, LOOP_ALIGN_AFTER_BARRIER): Remove.
+ (m68k_align_loops_string, m68k_align_jumps_string,
+ m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps,
+ m68k_align_funcs): Remove definitions.
+
+2004-06-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ PR target/15626
+ * doc/install.texi (sparc-sun-solaris2*): Document messages issued
+ by the Sun linker in conjunction with the Sun assembler.
+ (sparc-sun-solaris2.7): Update revision info for Sun patch 106950.
+
+2004-06-01 Jeff Law <law@redhat.com>
+
+ * stmt.c (expand_decl): Be more selective about calling
+ mark_reg_pointer.
+
+2004-06-01 Nicola Pero <nicola@brainstorm.co.uk>
+
+ PR objc/7993
+ * objc-act.c (is_private): Do not emit the 'instance variable %s
+ is declared private' error.
+ (is_public): Emit the error after calling is_private.
+ (lookup_objc_ivar): If the instance variable is private, return 0
+ - the instance variable is invisible here.
+
+2004-06-01 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (-static-libgcc): Explicitly mention
+ non-GNU linkers.
+
+2004-06-01 Bernardo Innocenti <bernie@develer.com>
+
+ PR target/12968
+ * doc/invoke.texi: Document stack alignment side-effect of -mshort.
+
+2004-05-31 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/15749
+ * c-decl.c (grokdeclarator, finish_struct): Don't pedwarn for
+ misuses of structures with flexible array members if
+ in_system_header.
+
+2004-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/15693
+ * config/sparc/sparc.c (compare_operand): New predicate.
+ * config/sparc/sparc.h (PREDICATE_CODES): Add it.
+ * config/sparc/sparc.md (cmpsi expander): Use it. If the first
+ operand is a ZERO_EXTRACT and the second operand is not zero,
+ force the former to a register.
+ (cmpdi expander): Likewise.
+
+2004-05-31 Geoffrey Keating <geoffk@apple.com>
+
+ * gengtype-lex.l: Catch stray GTY markers in the files gengtype
+ looks at.
+ * alias.c (alias_invariant_size): Make alias_invariant_size
+ static, fix GTY marker.
+
+2004-05-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR tree-optimization/15743.
+ * builtins.c (fold_builtin_1): Fold index() and rindex().
+
+2004-05-31 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/15069
+ * fold-const.c (fold_single_bit_test): Only perform "(X & C) != 0"
+ into "X < 0" (where C is the signbit) if X's type is a full mode.
+
+2004-05-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md: Disable the peephole2 patterns that generate indexed
+ floating-point stores when indexing is disabled.
+
+2004-05-31 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-pretty-print.c (pp_c_left_bracket): Make a function.
+ (pp_c_right_bracket): Likewise.
+ (pp_c_star): Likewise.
+ (pp_c_ampersand): Define.
+ * c-pretty-print.h (pp_c_left_bracket): Declare.
+ (pp_c_right_bracket): Likewise.
+ (pp_c_star): Likewise.
+ (pp_c_ampersand): Likewise.
+
+2004-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sol2.h (__enable_execute_stack): ANSIfy function
+ definition.
+
+2004-05-31 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * c-incpath.c (add_path): Canonicalize paths to use '/' if
+ HAVE_DOS_BASED_FILESYSTEM.
+
+2004-05-31 Steven Bosscher <stevenb@suse.de>
+
+ * tree-ssa-dom.c (record_equivalences_from_incoming_edge):
+ Only look at case labels if the immediate dominator is also
+ the only predecessor. Don't look for more case labels if the
+ first seen is a case range.
+
+2004-05-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c: Add a prototype for fold_builtin_strchr().
+
+2004-05-31 Paolo Bonzini <bonzini@gnu.org>
+
+ Revert this patch:
+ 2004-05-27 Paolo Bonzini <bonzini@gnu.org>
+
+ * combine.c (gen_binary): Remove.
+ (known_cond, simplify_shift_const
+ find_split_point, combine_simplify_rtx,
+ simplify_if_then_else, simplify_set,
+ simplify_logical, expand_field_assignment,
+ extract_left_shift, force_to_mode,
+ if_then_else_cond, apply_distributive_law,
+ simplify_and_const_int, simplify_shift_const,
+ gen_lowpart_for_combine, simplify_comparison,
+ reversed_comparison): Replace with
+ simplify_gen_binary, simplify_gen_relational or
+ distribute_and_simplify_rtx.
+ (distribute_and_simplify_rtx): New function.
+
+2004-05-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c (emit_move_sequence): Fix loading of non 14-bit CONST operands
+ when generating PIC code.
+
+2004-05-30 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-decl.c (c_expand_body_1): Remove and fold back into ...
+ (c_expand_body): here.
+ (c_expand_decl): Move to ...
+ * c-common.c (c_expand_decl): Here and remove check for nested
+ functions.
+ * c-common.h (c_expand_decl): Add prototype.
+ * c-tree.h (c_expand_decl): Remove.
+
+2004-05-30 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (combine_comparisons, optimize_bit_field_compare,
+ range_binop, fold_truthop, fold_binary_op_with_conditional_arg,
+ fold_mathfn_compare, fold_inf_compare, fold,
+ fold_relational_hi_lo, nondestructive_fold_binary_to_constant):
+ Use constant_boolean_node where appropriate. Don't bother using
+ fold_convert on the second argument to omit_one_operand.
+
+2004-05-30 Roger Sayle <roger@eyesopen.com>
+
+ * doc/c-tree.texi (Expressions): Document FLOOR_DIV_EXPR,
+ CEIL_DIV_EXPR, ROUND_DIV_EXPR, FLOOR_MOD_EXPR, CEIL_MOD_EXPR,
+ ROUND_MOD_EXPR, EXACT_DIV_EXPR. Improve documentation of
+ TRUNC_DIV_EXPR, TRUNC_MOD_EXPR and comparison operations.
+ Add missing (but documented) tree nodes to the index.
+
+2004-05-30 Steven Bosscher <stevenb@suse.de>
+
+ PR tree-optimization/14819
+ * builtins.c (fold_builtin_strchr): New.
+ (fold_builtin_1): Handle BUILT_IN_STRCHR and BUILT_IN_STRRCHR
+ with fold_builtin_strchr().
+
+2004-05-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bb-reorder.c, builtins.c, c-common.c, c-gimplify.c,
+ c-incpath.c, cgraphunit.c, ddg.c, defaults.h, dwarf2out.c,
+ expmed.c, flags.h, gcc.c, gensupport.c, gimplify.c, global.c,
+ passes.c, reg-stack.c, target.h, toplev.c, tree-alias-ander.c,
+ tree-alias-common.c, tree-cfg.c, tree-complex.c, tree-dfa.c,
+ tree-eh.c, tree-mudflap.c, tree-mudflap.h, tree-outof-ssa.c,
+ tree-phinodes.c, tree-pretty-print.c, tree-ssa-alias.c,
+ tree-ssa-ccp.c, tree-ssa-live.c, tree-ssa-live.h,
+ tree-ssa-pre.c, tree.h, value-prof.h, varasm.c: Fix comment
+ formatting.
+
+2004-05-30 Steven Bosscher <stevenb@suse.de>
+
+ * gimplify.c (sort_case_labels): New. Split out from...
+ (gimplify_switch_expr): ...here. Use it.
+ * tree-eh.c (lower_try_finally_switch): Sort the labels of
+ the SWITCH_EXPR created here before leaving the function.
+ * tree.c (sort_case_labels): Add prototype.
+
+2004-05-30 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * fold-const.c (fold) [case TRUTH_NOT_EXPR]: Make sure the type is
+ of BOOLEAN_TYPE.
+
+2004-05-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.c, calls.c, cfgcleanup.c, cgraph.c, cgraphunit.c,
+ ddg.c, ddg.h, df.c, df.h, except.c, expr.c, flags.h,
+ fold-const.c, gcc.c, gimplify.c, haifa-sched.c,
+ modulo-sched.c, tree-inline.c, tree-into-ssa.c, tree-nested.c,
+ tree-nrv.c, tree-ssa-ccp.c, tree-ssa-dom.c, tree-ssa-live.c,
+ tree-ssa-loop.c, tree-ssa-pre.c, tree-tailcall.c, tree.h: Fix
+ comment typos. Follow spelling conventions.
+
+2004-05-29 Geoffrey Keating <geoffk@apple.com>
+
+ * gengtype-yacc.y: Add NESTED_PTR token.
+ (option): Record `nested_ptr' option.
+ * gengtype-lex.l: Handle `nested_ptr' keyword.
+ * gengtype.c (walk_type): Process `nested_ptr' option.
+ * gengtype.h (struct nested_ptr_data): New.
+ * doc/gty.texi (GTY Options): Document `nested_ptr' option.
+ * stringpool.c (struct string_pool_data): Make 'entries' point to
+ ht_identifier instead of tree.
+ (gt_pch_save_stringpool): Don't adjust pointers.
+ (gt_pch_restore_stringpool): Call ht_load.
+
+2004-05-29 Jason Merrill <jason@redhat.com>
+
+ * gimplify.c (gimplify_expr): Don't build a statement list
+ if no gimplification was necessary.
+
+2004-05-29 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * pretty-print.c (pp_base_format_text): Support %< instead of %`
+ and %> as well as %'.
+ * c-format.c: Use %< and %>.
+ (gcc_diag_char_table, gcc_cdiag_char_table,
+ gcc_cxxdiag_char_table): Update.
+
+2004-05-29 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (common_type): Correct comment.
+
+2004-05-29 Peter Barada <peter@the-baradas.com>
+
+ * config/m68k/m68k.c (CONST_METHOD): Add MVZ, MVS.
+ * config/m68k/m68k.c (const_method): Likewise.
+ * config/m68k/m68k.c (const_int_cost): Likewise.
+ * config/m68k/m68k.c (const_int_cost): Likewise.
+ * config/m68k/m68k.c (output_move_const_into_data_reg): Likewise.
+
+2004-05-29 Peter Barada <peter@the-baradas.com>
+
+ * config/m68k/m68k.h (EXTRA_CONSTRAINT): add 'U' for register offset
+ addressing.
+ * config/m68k/m68k.md: Add 'U,U' alternative to ColdFire variants of
+ movsi,movhi,movqi insn patterns.
+
+2004-05-28 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-semantics.c (emit_local_var): Remove code for DECL_INITIAL.
+
+ PR target/15720
+ * config/darwin.c (machopic_indirect_call_target): Copy
+ the SYMBOL_REF_DECL from the original RTX for the new
+ stub RTX.
+
+2004-05-28 DJ Delorie <dj@redhat.com>
+
+ * stor-layout.c (place_field): Revert erroneous commit.
+
+2004-05-28 Ziemowit Laski <zlaski@apple.com>
+
+ * config/rs6000/altivec.h (vec_ctf, vec_vcfsx, vec_vcfux, vec_cts,
+ vec_ctu, vec_dss, vec_dst, vec_dstst, vec_dststt, vec_dstt, vec_ld,
+ vec_ldl, vec_lvsl, vec_lvsr, vec_sld, vec_splat, vec_vspltw,
+ vec_vsplth, vec_vspltb, vec_splat_s8, vec_splat_s16, vec_splat_s32,
+ vec_splat_u8, vec_splat_u16, vec_splat_u32, vec_st, vec_stl,
+ vec_ste): Remove type checks for integral parameters and literals
+ from '..._args_eq' macros.
+
+2004-05-28 Aldy Hernandez <aldyh@redhat.com>
+
+ * c-common.c (fname_as_string): Fix xcalloc to xmalloc.
+
+2004-05-28 Aldy Hernandez <aldyh@redhat.com>
+
+ * testsuite/g++.dg/charset/function.cc: New.
+
+ * testsuite/gcc.dg/charset/function.c: New.
+
+ * c-decl.c (c_make_fname_decl): Free return value from
+ fname_as_string.
+
+ * cp/decl.c (cp_make_fname_decl): Free return value from
+ fname_as_string.
+
+ * c-common.c (fname_as_string): Translate if necessary.
+
+2004-05-28 Geoffrey Keating <geoffk@apple.com>
+
+ * stringpool.c: Add comments to PCH saving/restoring routines.
+
+2004-05-28 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-common.c (c_estimate_num_insns_1): Kill.
+ (c_estimate_num_insns): Kill.
+ * c-common.h (c_estimate_num_insns): Kill.
+
+ * gthr-posix.h: Check for _POSIX_PRIORITY_SCHEDULING
+ when checking for _POSIX_THREAD_PRIORITY_SCHEDULING.
+ Remove comment about not checking for
+ _POSIX_PRIORITY_SCHEDULING.
+ * gthr-posix.c: Likewise.
+
+2004-05-28 Paolo Bonzini <bonzini@gnu.org>
+ Roger Sayle <roger@eyesopen.com>
+
+ PR rtl-optimization/15649
+ Add LTGT_EXPR and improve pretty-printing of unordered
+ comparisons.
+ * c-common.c (c_common_truthvalue_conversion):
+ Handle LTGT_EXPR.
+ * c-typeck.c (build_binary_op): Likewise.
+ * dojump.c (do_jump): Likewise.
+ * expr.c (expand_expr_real_1, do_store_flag): Likewise.
+ * predict.c (tree_predict_by_opcode): Likewise.
+ * real.c (real_compare): Likewise.
+ * tree-cfg.c (verify_expr): Likewise.
+ * tree-inline.c (estimate_num_insns_1): Likewise.
+ * tree-pretty-print.c (dump_generic_node): Likewise.
+ Handle ORDERED_EXPR, UNORDERED_EXPR.
+ (op_symbol): Print unordered comparisons differently
+ than ordered ones.
+ * tree.def (LTGT_EXPR): New '<' tree code.
+ * doc/c-tree.texi (Expressions): Document floating-point
+ comparison nodes.
+
+ Fold comparisons between floating point values.
+ * fold-const.c (enum comparison_code): New, from
+ #define'd constants. Define compcodes for unordered
+ comparisons and for invalid transformations.
+ (invert_tree_comparison): Add "honor_nans" parameter.
+ (fold_truthop): Revamp to work on floating-point types too.
+ (comparison_to_compcode): Support unordered comparisons.
+ Use new enum comparison_code.
+ (compcode_to_comparison): Likewise.
+ (combine_compcodes): New function.
+ (invert_truthvalue): Let invert_tree_comparison decide
+ whether it is valid to fold the comparison. Fold ORDERED
+ and UNORDERED even if flag_unsafe_math_optimizations is off,
+ and the remaining even if flag_unsafe_math_optimizations
+ is off but we are under -fno-trapping-math.
+ (fold_relational_const): Integer modes do not honor NaNs.
+
+2004-05-28 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_output_epilogue): Remove redundant code.
+
+2004-05-28 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (thumb_force_lr_save): New function.
+ (arm_get_frame_offsets, thumb_unexpanded_epilogue,
+ thumb_output_function_prologue): Use it.
+ (thumb_expand_prologue): Set lr_save_eliminated.
+
+2004-05-28 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (extendsidi2): Tie the source and destination
+ of the register alternative. Split it into nothing.
+
+2004-05-28 Richard Sandiford <rsandifo@redhat.com>
+
+ * rtl.h (skip_consecutive_labels): Declare.
+ * emit-rtl.c (skip_consecutive_labels): New function.
+ * reorg.c (relax_delay_slots, dbr_schedule): Use it.
+ * jump.c (follow_jumps): Say what null return values mean.
+
+2004-05-28 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/13250
+ * config/sh/sh.md (rotlsi3): Use emit_move_insn.
+
+2004-05-27 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/t-linux (SHLIB_MAPFILES): Use sh specific
+ libgcc-std.ver.
+ * config/sh/libgcc-std.ver: New file.
+
+2004-05-27 Bryce McKinlay <mckinlay@redhat.com>
+
+ * except.c: Revert change of 2004-05-26.
+ * config/i386/i386.md: Revert change of 2004-05-27.
+
+2004-05-27 Bryce McKinlay <mckinlay@redhat.com>
+
+ * configure.ac: Remove --enable-tree-browser option.
+ Define TREEBROWSER when ac_tree_checking is defined.
+ * configure: Rebuilt.
+
+2004-05-27 Olivier Hainque <hainque@act-europe.fr>
+
+ * expr.c (store_constructor): Restore sanity check on
+ the size of the type before clearing.
+
+2004-05-27 Jan Hubicka <jh@suse.cz>
+
+ * cfgbuild.c (control_flow_insn_p): Notice noreturn call
+
+2004-05-27 Paolo Bonzini <bonzini@gnu.org>
+
+ * combine.c (gen_binary): Remove.
+ (known_cond, simplify_shift_const
+ find_split_point, combine_simplify_rtx,
+ simplify_if_then_else, simplify_set,
+ simplify_logical, expand_field_assignment,
+ extract_left_shift, force_to_mode,
+ if_then_else_cond, apply_distributive_law,
+ simplify_and_const_int, simplify_shift_const,
+ gen_lowpart_for_combine, simplify_comparison,
+ reversed_comparison): Replace with
+ simplify_gen_binary, simplify_gen_relational or
+ distribute_and_simplify_rtx.
+ (distribute_and_simplify_rtx): New function.
+ * simplify-rtx.c (simplify_binary_operation):
+ Use nonzero_bits to simplify ANDs where we are
+ turning off bits already known to be off in OP0.
+
+2004-05-27 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14478
+ * config/rs6000/rs6000.c (reg_or_neg_short_operand): Don't allow zero.
+
+2004-05-27 Josef Zlomek <zlomekj@suse.cz>
+
+ PR middle-end/14084
+ * emit-rtl.c (gen_rtx_REG_offset): Adjust the offset according
+ to size of decl.
+
+2004-05-26 Aldy Hernandez <aldyh@redhat.com>
+
+ PR/14924
+ * config/rs6000/rs6000.c (spe_expand_stv_builtin): New.
+
+2004-05-26 Roger Sayle <roger@eyesopen.com>
+
+ * tree.h: Fix comment typo.
+
+2004-05-27 Steven Bosscher <stevenb@suse.de>
+
+ * gimplify.c (compare_case_labels): New function.
+ (gimplify_switch_expr): Sort case labels, and make sure the
+ last label in the label vector is the default case.
+ * tree-cfg.c (group_case_labels): New function.
+ (build_tree_cfg): Cleanup redundant labels and group case labels
+ before creating edges.
+ (cleanup_dead_labels): Handle GOTO_EXPRs.
+ (find_case_label_for_value): Use a binary search to find the
+ case label for the given value.
+ * tree-gimple.c: Mention that labels are sorted, and that the
+ last label must be the default.
+
+2004-05-27 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (try_optimize_cfg): Do not merge across jumptables.
+
+2004-05-27 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (UNSPECV_EH_RETURN): Kill.
+ (eh_return): Use jump_insn.
+ (eh_return_si, eh_return_di): Change pattern to jump instruction.
+
+2004-05-26 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (try_forward_edges): Do not check loop structure when
+ not loop optimizing.
+
+2004-05-26 Jan Hubicka <jh@suse.cz>
+
+ * except.c (can_throw_internal): Notice RESX instructions.
+
+2004-05-26 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * varasm.c (output_constant) <INTEGER_TYPE>: Pass the minimum
+ of the two sizes to assemble_integer.
+
+2004-05-25 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (thumb_exit, thumb_unexpanded_epilogue): Remove
+ pointless #ifdef.
+
+2004-04-25 Paolo Bonzini <bonzini@gnu.org>
+
+ * Makefile.in (top_builddir): Define to .
+
+2004-05-25 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.ac (gcc_cv_ld): Prefer in-tree ld over whatever the
+ top-level detects, except when in-tree ld is being cross-built.
+ (gcc_cv_as): Likewise for as. Use AS_FOR_TARGET otherwise, and
+ then AS only if target is host.
+ * configure: Rebuilt.
+
+2004-05-25 Vladimir Makarov <vmakarov@redhat.com>
+
+ * global.c (global_alloc): Call make_accurate_live_analysis.
+ (record_one_conflict): Remove dead code.
+ (mark_reg_clobber): Remove ATTRIBUTE_UNUSED for parameter data.
+ (bb_info): New structure.
+ (BB_INFO, BB_INFO_BY_INDEX): New macros.
+ (allocate_bb_info, free_bb_info, mark_reg_change,
+ calculate_local_reg_bb_info, set_up_bb_rts_numbers, rpost_cmp,
+ modify_bb_reg_pav, calculate_reg_pav,
+ make_accurate_live_analysis): New functions.
+
+2004-05-25 Devang Patel <dpatel@apple.com>
+
+ * alias.c (init_alias_analysis): Use ggc_calloc instead of
+ xrealloc.
+ (end_alias_analysis): Use ggc_free instead fo free.
+
+2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/15546
+ * config/ia64/ia64.h (ASM_OUTPUT_FDESC): Mark the DECL
+ as needed to be outputted.
+
+2004-05-25 Jan Hubicka <jh@suse.cz>
+
+ * builtins.def (__builtin_expect): Mark the function as const&nothrow.
+
+2004-05-25 Ayal Zaks <zaks@il.ibm.com>
+ Mostafa Hagog <mustafa@il.ibm.com>
+
+ * Makefile.in (modulo-sched.o, ddg.o): New.
+ * ddg.h, ddg.c, modulo-sched.c: New files.
+ * cfglayout.c (duplicate_insn_chain): Remove "static" and push
+ internals to "dupicate_insn".
+ (duplicate_insn): New function.
+ * cfglayout.h (duplicate_insn_chain, duplicate_insn): New
+ declarations.
+ * common.opt (fmodulo-sched): New flag.
+ * df.c (df_bb_regno_last_use_find, df_bb_regno_first_def_find):
+ Remove static and forward declaration.
+ (df_find_def, df_reg_used, df_bb_regno_last_def_find): New
+ functions.
+ * df.h (df_bb_regno_last_use_find, df_bb_regno_first_def_find,
+ df_bb_regno_last_def_find, df_find_def, df_reg_used): New
+ declarations.
+ * flags.h (flag_modulo_sched): New flag.
+ * opts.c (common_handle_option): Handle modulo-sched flag.
+ * params.def (max-sms-loop-number, sms-max-ii-factor,
+ sms-dfa-history, sms-loop-average-count-threshold): New
+ parameters.
+ * params.h (MAX_SMS_LOOP_NUMBER, SMS_MAX_II_FACTOR,
+ SMS_DFA_HISTORY, SMS_LOOP_AVERAGE_COUNT_THRESHOLD): New
+ parameters.
+ * passes.c ("sms", "sms-vcg"): New dumps.
+ (rest_of_handle_sched): Call sms_schedule.
+ * rtl.h (sms_schedule): New declaration.
+ * timevar.def (TV_SMS): New.
+ * toplev.c (flag_modulo_sched): Initialize.
+ (f_options): Handle -fmodulo-sched option.
+ * docs/invoke.texi: Document -fmodulo-sched & -dm options.
+ * docs/passes.texi: Document new SMS pass.
+
+2004-05-25 Paolo Bonzini <bonzini@gnu.org>
+
+ * Makefile.in (OBJS): Add rtlhooks.o.
+ (rtlanal.o): Depend on function.h.
+ (cse.o): Depend on rtlhooks-def.h.
+ (combine.o): Depend on rtlhooks-def.h.
+ (rtlhooks.o): New rule.
+ * combine.c: Include rtlhooks-def.h.
+ (nonzero_bits, cached_nonzero_bits, nonzero_bits1,
+ num_sign_bit_copies, cached_num_sign_bit_copies,
+ num_sign_bit_copies1): Move most of the code to rtlanal.c.
+ (reg_nonzero_bits_for_combine,
+ reg_num_sign_bit_copies_for_combine): New functions holding
+ the remnants of the above.
+ (combine_rtl_hooks): New.
+ (combine_instructions): Set rtl_hooks instead of gen_lowpart.
+ * cse.c: Include rtlhooks-def.h.
+ (cse_rtl_hooks): New.
+ (cse_main): Set rtl_hooks instead of gen_lowpart.
+ * emit-rtl.c (gen_lowpart): Remove.
+ (gen_lowpart_general): Move to rtlhooks.c.
+ * rtl.h (nonzero_bits, num_sign_bit_copies,
+ struct rtl_hooks, rtl_hooks, general_rtl_hooks): New.
+ (gen_lowpart_general): Remove.
+ (gen_lowpart): Temporarily redefine as a macro.
+ * rtlanal.c: Include function.h.
+ (nonzero_bits, cached_nonzero_bits, nonzero_bits1,
+ num_sign_bit_copies, cached_num_sign_bit_copies,
+ num_sign_bit_copies1): New, from combine.c.
+ * rtlhooks.c: New file.
+ * rtlhooks-def.h: New file.
+
+2004-05-25 Svein E. Seldal <Svein.Seldal@solidas.com>
+
+ * config/avr/avr.h (LONG_LONG_TYPE_SIZE): Changed long long type
+ to support 32-bit -mint8 mode.
+
+ * doc/invoke.texi (-mint8): Added documentation for the -mint8
+ option in the AVR architecture.
+
+2004-05-24 Mike Stump <mrs@apple.com>
+
+ * doc/install.texi: Document that dejagnu 1.4.4 is required.
+
+2004-05-24 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * intl.h (open_quote, close_quote): New.
+ * intl.c (open_quote, close_quote): New.
+ (gcc_init_libintl): Set them.
+ * pretty-print.c: Include "intl.h".
+ (pp_base_format_text): Support 'q' format flag and %` and %'
+ formats. Use ' instead of ` in comments.
+ * c-format.c (gcc_diag_flag_specs, gcc_cxxdiag_flag_specs,
+ gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table,
+ foramt_types_orig): Describe these new formats.
+ (decode_format_attr, check_function_format,
+ check_format_info_main): Use these new formats.
+ (status_warning): Use ATTRIBUTE_GCC_DIAG.
+ * toplev.c (ATTRIBUTE_GCC_DIAG): Increase required GCC version to
+ check these formats to 3.5.
+
+2004-05-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in (CPPLIBS): Renamed to CPPLIB.
+ (BACKEND): Reflect this.
+ (LIBDEPS): Move CPPLIB before LIBIBERTY.
+ (LIBS): Likewise.
+
+2004-05-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR tree-optimization/14197
+ * builtins.c: Include "tree-gimple.h"
+ (readonly_data_expr): Use get_base_address. Make sure to call
+ decl_readonly_section only on trees it can handle.
+ * tree-gimple.c (get_base_address): Accept STRING_CST and
+ CONSTRUCTOR expressions.
+ * Makefile.in: Update dependencies.
+
+2004-05-23 Paolo Bonzini <bonzini@gnu.org>
+
+ Move libcpp to the toplevel.
+ * Makefile.in: Remove references to libcpp files,
+ use CPPLIBS instead of libcpp.a. Define SYMTAB_H
+ and change hashtable.h to that.
+ * aclocal.m4 (gcc_AC_HEADER_STDBOOL,
+ gcc_AC_HEADER_STRING, gcc_AC_C__BOOL): Remove.
+ * configure.ac (gcc_AC_C__BOOL, HAVE_UCHAR): Remove tests.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * c-ppoutput.c: Include ../libcpp/internal.h instead of cpphash.h.
+ * cppcharset.c: Removed.
+ * cpperror.c: Removed.
+ * cppexp.c: Removed.
+ * cppfiles.c: Removed.
+ * cpphash.c: Removed.
+ * cpphash.h: Removed.
+ * cppinit.c: Removed.
+ * cpplex.c: Removed.
+ * cpplib.c: Removed.
+ * cpplib.h: Removed.
+ * cppmacro.c: Removed.
+ * cpppch.c: Removed.
+ * cpptrad.c: Removed.
+ * cppucnid.h: Removed.
+ * cppucnid.pl: Removed.
+ * cppucnid.tab: Removed.
+ * hashtable.c: Removed.
+ * hashtable.h: Removed.
+ * line-map.c: Removed.
+ * line-map.h: Removed.
+ * mkdeps.c: Removed.
+ * mkdeps.h: Removed.
+ * stringpool.h: Include symtab.h instead of hashtable.h.
+ * tree.h: Include symtab.h instead of hashtable.h.
+ * system.h (O_NONBLOCK, O_NOCTTY): Do not define.
+
+2004-05-23 Paolo Bonzini <bonzini@gnu.org>
+
+ * gcc.c (struct prefix_list): Add forward declaration.
+ (do_spec_path): New function, extracted from...
+ (do_spec_1) <'D'>: ... here. Drop support for
+ SPACE_AFTER_L_OPTION.
+ (do_spec_1) <'I'>: Use do_spec_path.
+ (process_command): Do not store the 'include' suffix
+ in include_prefixes.
+ * system.h: Poison SPACE_AFTER_L_OPTION.
+
+2002-05-23 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (non_lvalue): Explicitly list the tree codes that
+ need to be wrapped by NON_LVALUE_EXPR, instead of those that don't.
+
+2004-05-23 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/gcc.texi, doc/gccint.texi, doc/include/gcc-common.texi:
+ Update based on printed manual. Enable setting of offsets for
+ FSFPRINT and move it to gcc-common.texi.
+ * doc/gcc.texi: Update FSF printing details.
+ * doc/gccint.texi: Remove FSF printing details.
+
+2004-05-23 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/t-rs6000: Remove the disabling -Werror.
+
+2004-05-22 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_strstr, expand_builtin_strchr,
+ expand_builtin_strrchr, expand_builtin_strpbrk,
+ expand_builtin_mempcpy, expand_builtin_memcmp,
+ expand_builtin_strcmp, expand_builtin_strncmp,
+ expand_builtin_strcat, std_expand_builtin_va_start,
+ std_expand_builtin_va_arg, expand_builtin_va_copy,
+ expand_builtin_signbit, fold_builtin_cabs,
+ fold_builtin_logarithm, fold_builtin_mempcpy,
+ fold_builtin_signbit, fold_builtin_isascii,
+ fold_builtin_toascii, fold_builtin_isdigit,
+ fold_builtin_1, build_function_call_expr,
+ simplify_builtin_strchr, simplify_builtin_strrchr,
+ simplify_builtin_strpbrk, simplify_builtin_strncpy,
+ simplify_builtin_memcmp, simplify_builtin_strcmp,
+ simplify_builtin_strncmp, simplify_builtin_strncat,
+ simplify_builtin_strspn, simplify_builtin_strcspn,
+ simplify_builtin_fputs, simplify_builtin_sprintf): Replace calls
+ to build with calls to build2, build3 or omit_one_operand.
+
+2004-05-22 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_file_start): Emit a .gcc_compiled_longXX
+ section when generating EABI code.
+
+2004-05-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR 15546
+ * config/i386/i386.c (output_pic_addr_const <case SYMBOL_REF>):
+ Call mark_decl_referenced on the SYMBOL_REF_DECL.
+
+2004-05-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-common.c (c_common_truthvalue_conversion): Handle
+ UNEQ_EXPR, UNLE_EXPR, UNGE_EXPR, UNLT_EXPR, UNGT_EXPR,
+ ORDERED_EXPR, and UNORDERED_EXPR as comparison operators,
+ i.e. set the type to truthvalue_type_node and return.
+
+2004-05-22 Zack Weinberg <zack@codesourcery.com>
+
+ * tree.h (struct tree_decl): Add possibly_inlined bit.
+ (DECL_POSSIBLY_INLINED): New accessor macro.
+ * cgraph.h: Remove declaration of cgraph_inline_hash.
+ * cgraph.c: Remove definition of cgraph_inline_hash.
+ (hash_node): Revert to hashing DECL_UID.
+ (eq_node): Take two pointers to cgraph_node structures.
+ Compare DECL_UIDs.
+ (cgraph_remove_node): Pass the node directly to htab_find_slot.
+ (cgraph_varpool_hash_node): Rename hash_varpool_node;
+ hash on DECL_UID.
+ (eq_cgraph_varpool_node): Rename eq_varpool_node; take two
+ pointers to cgraph_varpool_node structures; compare DECL_UIDs.
+ (cgraph_node): Allocate a temporary node on the stack, fill in
+ its DECL field, and pass that to htab_find_slot.
+ (cgraph_varpool_node): Likewise.
+ (cgraph_function_possibly_inlined_p): If global info is ready,
+ return the DECL_POSSIBLY_INLINED bit.
+ * cgraphunit.c (cgraph_mark_inline_edge): Set DECL_POSSIBLY_INLINED
+ instead of mucking with cgraph_inline_hash.
+
+2004-05-22 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/contrib.texi: Add g77 contributors.
+
+2004-05-22 Richard Sandiford <rsandifo@redhat.com>
+
+ * calls.c (initialize_argument_information): Forbid sibcalls if a
+ callee-copied argument is stored in the current function's frame.
+
+2004-05-22 Eric Christopher <echristo@redhat.com>
+
+ * fix-header.c (read_scan_file): Update for add_path change.
+
+2004-05-22 Ben Elliston <bje@au.ibm.com>
+
+ * c.opt (Wmissing-include-dirs): New.
+ * c-opts.c (c_common_handle_option): Pass true for user_supplied_p
+ to add_path () for -I, but false for OPT_idirafter, OPT_iquote and
+ OPT_isystem. Handle case OPT_Wmissing_include_dirs.
+ * c-incpath.h (add_path): Add fourth (bool) argument.
+ * c-incpath.c (add_env_var_paths): Pass false to add_path ().
+ (add_standard_paths): Likewise.
+ (remove_duplicates) [REASON_NOENT]: Warn if -Wmissing-include-dirs
+ is used and the directory was user-supplied via -I.
+ (add_path): Set p->user_supplied_p. Remove duplicated code by
+ using add_cpp_dir_path ().
+ * cpplib.h (struct cpp_options): Add warn_missing_include_dirs.
+ (struct cpp_dir): Add user_supplied_p.
+ * doc/invoke.texi (Warning Options): Document new option.
+
+2004-05-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * fold-const.c (fold_read_from_constant_string): Convert result to
+ requested type.
+
+2004-05-21 Richard Henderson <rth@redhat.com>
+
+ * gimplify.c (mostly_copy_tree_r): Don't attempt to copy decls.
+ (copy_if_shared_r): Don't copy decls, types, constants, BINDs.
+ Don't mark VA_ARG_EXPRs volatile here.
+ (gimplify_modify_expr): Unshare TYPE_SIZE_UNIT.
+
+2004-05-21 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (tree-dump.o): Depend on tree-iterator.h.
+ * tree-dump.c (dequeue_and_dump): Dump STATEMENT_LISTs.
+
+2004-05-21 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold, fold_relational_hi_lo,
+ nondestructive_fold_binary_to_constant,
+ fold_read_from_constant_string): Use fold_convert instead of convert.
+ * builtins.c (simplify_builtin, simplify_builtin_strstr,
+ simplify_builtin_strchr, simplify_builtin_strrchr,
+ simplify_builtin_strpbrk): Use fold_convert instead of convert.
+
+2004-05-21 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-flow-inline.h (num_immediate_uses): Don't abort if DF
+ is NULL.
+
+2004-05-21 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): If SPARC_BI_ARCH,
+ override sparc.h definition.
+
+2004-05-20 Roger Sayle <roger@eyesopen.com>
+
+ * tree.c (array_type_nelts, save_expr, substitute_in_expr,
+ get_unwidened, get_narrower): Replace build with build2.
+ * fold-const.c (negate_expr, associate_trees, size_binop,
+ fold_convert, eval_subst, omit_one_operand, invert_truthvalue,
+ pedantic_omit_one_operand, distribute_bit_expr,
+ make_bit_field_ref, optimize_bit_field_compare,
+ decode_field_reference, range_binop, make_range,
+ build_range_check, fold_range_test, fold_truthop,
+ optimize_minmax_comparison, extract_muldiv_1,
+ fold_binary_op_with_conditional_arg, fold_mathfn_compare,
+ fold_inf_compare, fold_single_bit_test, fold,
+ fold_relational_hi_lo, nondestructive_fold_binary_to_constant):
+ Likewise replace build with either build2 or build3.
+
+2004-05-20 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * system.h: Poison NO_RECURSIVE_FUNCTION_CSE.
+ * calls.c (prepare_call_address): Don't test
+ NO_RECURSIVE_FUNCTION_CSE.
+ * config/arc/arc.h (NO_RECURSIVE_FUNCTION_CSE): Don't define.
+ * config/arm/arm.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/avr/avr.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/frv/frv.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/i386/i386.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/ip2k/ip2k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/iq2000/iq2000.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/m32r/m32r.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/m68k/m68k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/mcore/mcore.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/mips/mips.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/stormy16/stormy16.h (NO_RECURSIVE_FUNCTION_CSE):
+ Likewise.
+ * config/xtensa/xtensa.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
+ * config/sh/sh.h: Remove NO_RECURSIVE_FUNCTION_CSE comment.
+ * doc/tm.texi (Costs): Remove documentation for
+ NO_RECURSIVE_FUNCTION_CSE.
+
+2004-05-20 Paul Brook <paul@codesourcery.com>
+
+ * unwind-dw2-fde.c (get_cie_encoding): Handle dwarf3 CIE format.
+ * unwind-dw2.c (extract_cie_info): Ditto.
+ (_Unwind_FrameState): Change retaddr_column to word type.
+
+2004-05-20 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/3074
+ * fold-const.c (strip_compound_expr): Delete function.
+ (count_cond): Delete function.
+ (fold_binary_op_with_conditional_arg): Only perform transformations
+ "a + (b?c:d) -> b ? a+c : a+d" and "(b?c:d) + a -> b ? c+a : d+a"
+ when a is constant. This greatly simplifies this routine.
+
+ * tree.c (saved_expr_p): Delete function.
+ * tree.h (saved_expr_p): Delete function prototype.
+
+2004-05-20 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * common.opt (ftree-loop-optimize): Remove.
+
+2004-05-20 Daniel Jacobowitz <dan@debian.org>
+
+ * Makefile.in (AR_FOR_TARGET, RANLIB_FOR_TARGET)
+ (NM_FOR_TARGET): Use := and $(shell).
+ (mainversion): Remove unused variable.
+
+2004-05-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * reorg.c (delete_from_delay_slot): If we have a barrier after the
+ sequence containing the insn to be deleted, always reemit it.
+
+2004-05-20 Richard Henderson <rth@redhat.com>
+
+ PR 15454
+ * tree-nested.c (get_chain_decl): Create a PARM_DECL by hand.
+ * function.c (expand_function_start): Expand static_chain_decl by hand.
+ * gimplify.c (create_tmp_var_name): Export.
+ * tree-gimple.h (create_tmp_var_name): Declare.
+
+2004-05-20 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * rs6000.c (print_operand) <case 'z'>: Call
+ mark_decl_referenced before assemble_name.
+
+2004-05-20 Zack Weinberg <zack@codesourcery.com>
+
+ * cgraph.c (hash_node, eq_node, cgraph_node, cgraph_remove_node)
+ (cgraph_varpool_hash_node, eq_cgraph_varpool_node)
+ (cgraph_varpool_node): Hash on the pointer to the decl, not
+ the DECL_UID. Fixes 64-bit bootstrap failure.
+
+2004-05-20 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (ite_ne_zeroextractsi, ite_ne_zeroextractsi_shifted): Ensure
+ we don't earlyclobber operands used in the second insn.
+
+2004-05-20 Steven Bosscher <stevenb@suse.de>
+
+ * tree-mudflap.c: Formatting fixes.
+
+2004-05-20 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * Makefile.in (GTFILES): Add $(srcdir)/reload.h.
+ * gengtype.c (open_base_files): Include reload.h in ifiles.
+ * reload.h (reg_equiv_memory_loc_varray): Declare.
+ * reload1.c (reg_equiv_memory_loc_varray): New variable.
+ (init_reload): Initialize it.
+ (reload): Instead of freeing reg_equiv_memory_loc, 'grow'
+ reg_equiv_memory_loc_varray to size 0.
+ * ra.c (reg_alloc): Allocate reg_equiv_memory_loc by
+ growing reg_equiv_memory_loc_varray to the desired size.
+ * passes.c (rest_of_handle_old_regalloc): Likewise.
+ * reload.c: Amend comment on calling init_reload.
+
+2004-05-20 Nick Clifton <nickc@redhat.com>
+
+ * config/c4x/c4x.h (INITIALIZE_TRAMPOLINE): Replace 'tramp'
+ with 'TRAMP' in the body of the macro definition.
+
+2004-05-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/15383
+ * config/ia64/ia64.c (ia64_expand_compare): Don't check
+ TARGET_HPUX for TFmode compare. Abort if op0 is in TFmode and
+ cmptf_libfunc isn't set.
+ (ia64_init_libfuncs): Rename TFmode libfuncs using the HPUX
+ conventions.
+ (ia64_sysv4_init_libfuncs): New.
+
+ * config/ia64/sysv4.h (TARGET_INIT_LIBFUNCS): New. Defined as
+ ia64_sysv4_init_libfuncs.
+
+2004-05-20 Falk Hueffner <falk@debian.org>
+
+ PR other/15526
+ * libgcc2.c (__mulvsi3): Fix overflow test.
+
+2004-05-19 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c/14171
+ * reg-stack.c (nan): Rename to ...
+ (not_a_num): Here.
+ (reg_to_stack): Rename nan to not_a_num.
+ (subst_stack_regs_pat): Likewise.
+ (convert_regs_entry): Likewise.
+ (convert_regs_1): Likewise.
+
+ * tree-cfg.c (find_case_label_for_value): Replace call to
+ simple_cst_equal with tree_int_cst_equal.
+
+2004-05-19 Jeff Law <law@redhat.com>
+
+ * tree-into-ssa.c (prepare_operand_for_rename): New argument is_use.
+ If the operand is for a use, then strip away the SSA_NAME, do not
+ strip away the SSA_NAME for a set. Never call release_ssa_name.
+ (mark_def_sites): Appropriately pass additional argument to
+ prepare_operand_for_rename. If a VDEF_RESULT is not an SSA_NAME,
+ then set the VDEF_RESULT to the VDEF_OP.
+ (set_def_block): Strip away any SSA_NAME to get to the real
+ underlying variable.
+
+ * tree-ssa-phiopt.c (value_replacement): Handle the case where
+ the desired edge out of COND_BLOCK reaches OTHER_BLOCK rather than
+ BB directly.
+
+2004-05-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR c++/15463
+ * loop-iv.c (iv_number_of_iterations): Use trunc_int_for_mode on
+ result of inverse.
+
+ PR rtl-optimization/15274
+ * loop-iv.c (determine_max_iter, shorten_into_mode,
+ iv_number_of_iterations): Handle constants correctly.
+ * rtl.h (get_mode_bounds): Declaration changed.
+ * stor-layout.c (get_mode_bounds): Return a constant suitable for
+ the target mode.
+
+ PR rtl-optimization/14692
+ * loop-unswitch.c (may_unswitch_on): Try folding the result.
+ (unswitch_single_loop): Work correctly when may_unswitch_on
+ returns a folded constant.
+
+ * loop-iv.c (implies_p): Handle A < B ==> A + 1 <= B.
+ * simplify-rtx.c (simplify_const_relational_operation): Optimize
+ comparisons with mode bounds.
+
+ * function.c (struct temp_slot): Add new field prev.
+ (free_after_compilation, init_temp_slots): Free new fields.
+ (cut_slot_from_list, insert_slot_to_list,
+ temp_slots_at_level, max_slot_level, move_slot_to_level,
+ make_slot_available): New functions.
+ (assign_stack_temp_for_type, combine_temp_slots,
+ find_temp_slot_from_address, preserve_temp_slots,
+ preserve_rtl_expr_result, free_temp_slots,
+ free_temps_for_rtl_expr, pop_temp_slots): Work with
+ the new structure of lists.
+ (mark_all_temps_used): Removed.
+ * function.h (struct function): Field x_temp_slots
+ replaced by x_used_temp_slots and x_avail_temp_slots.
+ (temp_slots): Replaced by ...
+ (used_temp_slots, avail_temp_slots): New.
+ * tree.h (mark_all_temps_used): Declaration removed.
+
+ * loop-iv.c (mark_single_set, get_biv_step_1, iv_analyze,
+ simplify_using_assignment): Take the expression out of
+ the expr_list wrapper.
+
+ * loop-iv.c (iv_number_of_iterations): Improve clasification of
+ infinite loops.
+
+2004-05-19 Roger Sayle <roger@eyesopen.com>
+
+ * doc/tm.texi (TARGET_RTX_COSTS): Document that instruction
+ costs should be based on code size when optimizing for size.
+
+2004-05-19 Paolo Bonzini <bonzini@gnu.org>
+
+ * fold-const.c: Remove non-printable character 160.
+
+2004-05-19 Nick Clifton <nickc@redhat.com>
+
+ * doc/invoke.texi (ARM Options): Fix typo.
+ Remove descrption of -mshort-load-bytes and
+ -mno-short-load-bytes.
+
+ * config/ip2k/ip2k.c (ip2k_composite_xexp_not_uses_reg_p): Add
+ missing parenthesis.
+ * config/ip2k/ip2k.c (ip2k_unary_operator): Likewise.
+ * config/ip2k/ip2k.c (ip2k_binary_operator): Likewise.
+
+2004-05-19 Steven Bosscher <stevenb@suse.de>
+
+ * expr.c (store_constructor): Build loop start and end by hand
+ instead of via loop functions from stmt.c.
+ (expand_expr_real_1): Abort if we see an EXIT_EXPR or a LOOP_EXPR.
+ Remove the code to expand them.
+
+ * stmt.c (loop_stack): Remove this and everything related.
+ (struct nesting, enum nesting_desc): Update.
+ (expand_fixup): Likewise.
+ (expand_loop_start, expand_start_loop_continue_elsewhere,
+ expand_start_null_loop, expand_loop_continue_here, expand_end_loop,
+ expand_end_null_loop, expand_continue_loop, expand_exit_loop,
+ expand_exit_loop_if_false, expand_exit_loop_top_cond,
+ expand_exit_something): Remove.
+ * tree.h: Remove prototypes.
+
+2004-05-18 Mike Stump <mrs@apple.com>
+ Devang Patel <dpatel@apple.com>
+
+ * doc/tm.texi (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument to indicate
+ if this label is for eh.
+ * config/darwin-protos.h (darwin_emit_unwind_label): Likewise.
+ * config/darwin.c (darwin_emit_unwind_label): Likewise.
+ * dwarf2out.c (output_call_frame_info): Likewise.
+ * output.h (default_emit_unwind_label): Likewise.
+ * target.h (unwind_label): Likewise.
+ * varasm.c (default_emit_unwind_label): Likewise.
+
+ * config/darwin.h (DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE,
+ DEBUG_FRAME_SECTION, DEBUG_INFO_SECTION, DEBUG_ABBREV_SECTION,
+ DEBUG_ARANGES_SECTION, DEBUG_MACINFO_SECTION, DEBUG_LINE_SECTION,
+ DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_STR_SECTION,
+ DEBUG_RANGES_SECTION): Define.
+
+2004-05-18 Zack Weinberg <zack@codesourcery.com>
+
+ * cgraph.c (hash_node, eq_node, cgraph_node, cgraph_remove_node)
+ (cgraph_varpool_hash_node, eq_cgraph_varpool_node)
+ (cgraph_varpool_node):
+ Use DECL_UID for the key, not DECL_ASSEMBLER_NAME.
+ (cgraph_function_possibly_inlined_p): Use the decl itself for
+ the key, not DECL_ASSEMBLER_NAME.
+ (change_decl_assembler_name): No need to muck with the hash tables.
+ (cgraph_node_for_identifier, cgraph_varpool_node_for_identifier):
+ Delete.
+ * cgraphunit.c (cgraph_mark_inline_edge): Use the decl itself
+ for the key, not DECL_ASSEMBLER_NAME.
+ * cgraph.h: Remove prototypes of deleted functions.
+ * varasm.c (mark_referenced): Just set TREE_SYMBOL_REFERENCED.
+ (mark_decl_referenced): New function.
+ * tree.h: Prototype mark_decl_referenced.
+ * final.c (output_addr_const) <case SYMBOL_REF>: Call
+ mark_decl_referenced before assemble_name.
+ * c-decl.c (finish_decl): Use mark_decl_referenced.
+
+2004-05-18 Andrew Pinski <pinskia@physics.uc.edu>
+ Jeff Law <law@redhat.com>
+
+ * tree-ssa-phiopt.c (abs_replacement): New function.
+ (empty_block_p): New function extracted from...
+ (candidate_bb_for_phi_optimization): Break out empty block test.
+ (conditional_replacement): Use empty_block_p.
+ (value_replacement): Similarly.
+
+ * Makefile.in (tree-ssa-phiopt.o): Depends on flags.h.
+ * tree-ssa-phiopt.c: Include flags.h.
+ (conditional_replacement): Remove argument names from prototype.
+ Minor formatting and comment fixes.
+ (tree_ssa_phiopt): If conditional_replacement returns false, then
+ call value_replacement.
+ (value_replacement): New function.
+
+2004-05-18 Jeff Law <law@redhat.com>
+
+ * tree-ssa-phiopt.c (replace_phi_with_stmt): New function extracted
+ from conditional_replacement.
+ (candidate_bb_for_phi_optimization): Similarly.
+ (conditional_replacement): Use replace_phi_with_stmt and
+ candidate_bb_for_phi_optimization.
+
+ * tree-ssa-phiopt.c: Fix various formatting issues.
+
+2004-05-18 Steven Bosscher <stevenb@suse.de>
+
+ * config/s390/s390.c (s390_expand_movstr, s390_expand_clrstr,
+ s390_expand_cmpmem): Do not use expand_start_loop and
+ expand_end_loop, instead build the loop manually.
+
+2004-05-18 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md (ctrsi_internal3): Delete.
+ (ctrsi_internal4, ctrdi_internal3, ctrdi_internal4): Delete.
+
+2004-05-17 Jeff Law <law@redhat.com>
+
+ * toplev.h (flag_delete_null_pointer_checks): Move from here to...
+ * flags.h (flag_delete_null_pointer_checks): Here.
+ * tree-flow.h (cprop_into_successor_phis): Add argument to prototype.
+ * tree-phinodes.c (resize_phi_node): Initialize PHI_ARG_NONZERO.
+ (add_phi_arg, remove_phi_arg_num): Similarly.
+ * tree-ssa-copy.c (cprop_into_successor_phis): Propagate nonzero
+ property into PHI nodes.
+ * tree-ssa-dom.c: Remove redundant inclusion of flags.h.
+ (record_equivalences_from_phis): If all PHI arguments are known to be
+ nonzero, then the result must be nonzero as well.
+ (cprop_into_phis): Pass nonzero_vars bitmap to cprop_into_successor_phis.
+ (record_equivalences_from_stmt): Check flag_delete_null_pointer_checks
+ appropriately. Walk the USE-DEF chains and propagate nonzero property
+ as appropriate.
+ * tree.h (PHI_ARG_NONZERO): Define.
+ (phi_arg_d): Add nonzero flag.
+
+2004-05-17 Zack Weinberg <zack@codesourcery.com>
+
+ * f: Entire directory removed
+
+ * c-common.h (CTI_G77_INTEGER_TYPE, CTI_G77_UINTEGER_TYPE)
+ (CTI_G77_LONGINT_TYPE, CTI_G77_ULONGINT_TYPE)
+ (g77_integer_type_node, g77_uinteger_type_node)
+ (g77_longint_type_node, or g77_ulongint_type_node): Delete.
+ * c-common.c (c_common_nodes_and_builtins): Do not initialize
+ the above set of variables.
+
+ * config/i386/uwin.h: No need to define WIN32_UWIN_TARGET.
+ * doc/invoke.texi, doc/standards.texi: Remove cross-references
+ to g77 manual.
+
+2004-05-17 Steven Bosscher <stevenb@suse.de>
+
+ PR tree-optimization/15438
+ * tree-ssa-operands.c (get_expr_operands): Do not treat malloc
+ attributed functions as pure or const.
+
+2004-05-17 Frank Ch. Eigler <fche@redhat.com>
+
+ * tree-mudflap.c (mx_register_decls): Tolerate decl trees resulting
+ from source code with errors.
+
+2004-05-17 Ranjit Mathew <rmathew@hotmail.com>
+
+ Enable tree browser for all front ends.
+ * Makefile.in (cc1): Moved @TREEBROWSER@ from here...
+ (BACKEND): ...to here.
+
+2004-05-17 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (construct_container): Do not produce BLKmode registers.
+ (classify_argument): Properly compute alignment of complex types.
+
+2004-05-17 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/15084
+ * config/i386/i386.md (*movsi_insv_1_rex64): Changed to DImode
+ and renamed to movdi_insv_1_rex64.
+ (insv): Support SImode for 32bit and DImode for 64bit.
+
+2004-05-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (MASK_DEBUG_G, TARGET_DEBUG_G_MODE): Delete.
+ (TARGET_SWITCHES): Remove debugg.
+ * config/mips/mips.md (adddi3, ashldi3, ashrdi3, lshrdi3): Only handle
+ TARGET_64BIT.
+ (subdi3): Replace the define_expand with a define_insn, the latter
+ renamed from subdi3_internal_3.
+ (negdi2): Likewise negdi2_internal_2.
+ (adddi3_internal_[12], subdi3_internal, ashldi3_internal{,2,3})
+ (ashrdi3_internal{,2,3}, lshrdi3_internal{,2,3}): Remove patterns
+ and associated define_splits.
+ (adddi3_internal): Renamed from adddi3_internal_3.
+ (ashldi3_internal): Likewise ashldi3_internal4.
+ (ashrdi3_internal): Likewise ashrdi3_internal4.
+ (lshrdi3_internal): Likewise lshrdi3_internal4.
+
+2004-05-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * optabs.c (expand_unop): Try implementing negation using subtraction
+ from zero.
+
+2004-05-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md: Fix typo from last change. Remove DFmode move to and from
+ SAR register.
+
+2004-05-16 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/10982
+ * arm.md (ne_zeroextractsi): Convert to insn-and-split.
+ (ne_zeroextractsi_shifted): New pattern.
+ (ite_ne_zeroextractsi): New pattern.
+ (ite_ne_zeroextractsi_shifted): New pattern.
+
+2004-05-15 Steven Bosscher <stevenb@suse.de>
+
+ * c-gimplify.c (c_genericize):
+ Replace calls via (*lang_hooks.foo) with lang_hooks.foo.
+ * c-parse.in <expr_no_commas>: Likewise.
+ <if_prefix>: Likewise.
+ <select_or_iter_stmt>: Likewise.
+ * expr.c (expand_var, expand_expr_real_1): Likewise.
+ * expr.h (expand_expr): Make it a static inline function.
+ Move prototype for expand_expr_real up before this.
+ * fold-const.c (fold_relational_hi_lo, fold_relational_const):
+ Likewise.
+ * gimplify.c (gimple_boolify, gimplify_addr_expr,
+ gimplify_asm_expr, gimplify_expr): Likewise.
+ * tree-cfg.c (dump_tree_cfg, dump_cfg_stats, tree_cfg2vcg,
+ dump_function_to_file): Likewise.
+ * tree-dfa.c (dump_immediate_uses, dump_dfa_stats): Likewise.
+ * tree-inline.c (remap_block, save_body, walk_tree): Likewise.
+ * tree-into-ssa.c (dump_tree_ssa): Likewise.
+ * tree-mudflap.c (mf_varname_tree, mf_file_function_line_tree):
+ Likewise.
+ * tree-optimize.c (execute_one_pass): Likewise.
+ * tree-pretty-print.c (dump_generic_bb_buff): Likewise.
+ * tree-ssa-alias.c (dump_alias_stats, dump_alias_info): Likewise.
+
+ * objc/objc-act.c (objc_build_try_enter_fragment,
+ objc_build_try_epilogue, objc_build_catch_stmt,
+ objc_build_finally_prologue): Replace calls via (*lang_hooks.foo)
+ with lang_hooks.foo ().
+
+2004-05-15 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (simplify_builtin_strcpy): Avoid use of chainon, so
+ that simplify_builtin doesn't destructively modify its argument.
+
+2004-05-15 Richard Earnshaw <reanrsha@arm.com>
+
+ * arm/lib1funcs.asm (_lshrdi3, _ashrdi3, _ashldi3): Add ASM
+ implementations for ARM and Thumb.
+ * arm/t-arm-elf (LIB1ASMFUNCS): Use them.
+
+2004-05-15 Thomas Quinot <quinot@act-europe.fr>
+
+ * prefix.c (update_path): Replace PREFIX with KEY only
+ when it matches a full directory name in PATH.
+
+2004-05-15 Richard Earnshaw <reanrsha@arm.com>
+
+ * arm.h (TARGET_APCS_32): Delete.
+ (TARGET_MMU_TRAPS): Delete.
+ (TARGET_CPU_CPP_BUILTINS): Unconditionally define __APCS_32__. Never
+ define __APCS_26__.
+ (CPP_SPEC): Remove checking of -mapcs-{26,32}.
+ (ARM_FLAG_APCS_32, ARM_FLAG_MMU_TRAPS): Delete.
+ (TARGET_SWITCHES): Remove alignment_traps and apcs-{26,32} switches.
+ (prog_mode_type): Delete.
+ (PROMOTE_MODE): Always promote unsigned for HImode.
+ (SECONDARY_INPUT_RELOAD_CLASS): Simplify.
+ (MASK_RETURN_ADDR): Simplify.
+ * arm.c (arm_prgmode): Delete.
+ (arm_override_options, arm_gen_rotated_half_load): Simplify.
+ (print_multi_reg, output_return_instruction): Simplify.
+ (arm_output_epilogue, arm_final_prescan_insn): Simplify.
+ (arm_return_addr): Simplify.
+ * arm.md (prog_mode): Delete.
+ (conds): Simplify.
+ (zero_extendhisi2, extendhisi2, movhi, movhi_bytes): Simplify.
+ (rotated_loadsi, movhi_insn_littleend, movhi_insn_bigend): Delete.
+ (loadhi_si_bigend, loadhi_preinc, loadhi_shiftpreinc): Delete.
+ (loadhi_shiftpredec): Delete.
+ (peephole for post-increment on HImode load): Delete.
+ * arm/crtn.asm: (FUNC_END): Simplify.
+ * arm/lib1funcs.asm: Remove APCS-26 return macros.
+ * arm/aof.h, arm/coff.h arm/elf.h arm/linux-elf.h arm/netbsd-elf.h
+ * arm/netbsd.h arm/pe.h arm/semi.h arm/semiaof.h arm/unknown-elf.h
+ * arm/vxworks.h arm/wince-pe.h: Tidy TARGET_DEFAULTS and
+ MULTILIB_DEFAULTS as required.
+ * arm/t-arm-elf arm/t-linux arm/t-pe arm/t-semi arm/t-wince-pe
+ * arm/t-xscale-coff arm/t-xscale-elf arm/uclinux-elf: Tidy MULTILIB
+ variables as required.
+ * doc/invoke.texi (ARM Options): Remove obsolete flags.
+
+2004-05-15 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_va_arg <ABI_V4>): Don't use
+ UNITS_PER_WORD to calculate gpr size. Re-instate code to set reg
+ count to 8 to handle n_reg > 2.
+
+2004-05-15 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/extend.texi: Update WG14 URL.
+
+2004-05-15 Steven Bosscher <stevenb@suse.de>
+
+ * basic-block.h (life_analysis, delete_noop_moves):
+ Update prototypes.
+ * bt-load.c (branch_target_load_optimize): Don't take the
+ insns stream as an argument. Update the life_analysis calls.
+ * combine.c (combine_instructions): Update delete_noop_moves
+ calls.
+ * flow.c (notice_stack_pointer_modification): Don't take the
+ insns stream as an argument. Work on the flow graph.
+ (life_analysis): Likewise.
+ (delete_noop_moves): Likewise.
+ * passes.c (rest_of_handle_stack_regs): Update reg_to_stack call.
+ (rest_of_handle_life): Update life_analysis call.
+ (rest_of_compilation): Likewise, and also update
+ branch_target_load_optimize call.
+ * ra.c (reg_alloc): Update life_analysis call.
+ * reg-stack.c (reg_to_stack): Likewise. Also, don't take
+ the insns stream as an argument.
+ * regrename.c (copyprop_hardreg_forward): Update delete_noop_moves
+ call.
+ * rtl.c (branch_target_load_optimize, reg_to_stack): Update
+ prototypes.
+ * value-profile.c (branch_prob): Update life_analysis call.
+ * web.c (web_main): Work on the CFG, not on the insns stream.
+
+ * config/ip2k/ip2k.c (ip2k_reorg): Update life_analysis calls.
+ * config/m68hc11/m68hc11.c (m68hc11_reorg): Likewise.
+ * config/sh/sh.c (sh_output_mi_thunk): Likewise.
+
+2004-05-15 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/15444
+ * c-format.c (avoid_dollar_number): New function.
+ (check_format_info_main): Call avoid_dollar_number when operand
+ numbers might occur but has_operand_number == 0.
+
+2004-05-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.md (all peephole2 patterns): Use predicates that validate
+ register classes as appropriate.
+
+2004-05-14 Steven Bosscher <stevenb@suse.de>
+
+ PR opt/14472
+ * tree-tailcall.c (process_assignment): Use STRIP_NOPS to
+ ignore type conversions that do not inhibit tail calling.
+ (find_tail_calls): Likewise.
+
+2004-05-14 Jeff Law <law@redhat.com>
+
+ * tree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Don't even
+ bother marking bypassed virtuals for out-of-ssa. Instead merge
+ bypassed virtuals into vars_to_rename just before into-ssa pass.
+
+ * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Reorganize
+ so that it picks up more opportunities to eliminate ABS expressions
+ or turn them into negations.
+
+2004-05-14 Steven Bosscher <stevenb@suse.de>
+
+ * passes.c (rest_of_handle_null_pointer): Remove.
+ (rest_of_handle_cse): Don't call rest_of_handle_null_pointer.
+ (rest_of_compilation): Likewise.
+ * rtl.h (delete_null_pointer_checks): Remove prototype.
+ * gcse.c (rd_kill, rd_gen, reaching_defs, rd_out, ae_in, ae_out):
+ Remove declarations.
+ (get_bitmap_width, alloc_rd_mem, free_rd_mem, handle_rd_kill_set,
+ compute_kill_rd, compute_rd, alloc_avail_expr_mem,
+ free_avail_expr_mem, compute_ae_gen, expr_killed_p, compute_ae_kill,
+ expr_reaches_here_p, computing_insn, def_reaches_here_p,
+ can_disregard_other_sets, handle_avail_expr, classic_gcse,
+ one_classic_gcse_pass, invalidate_nonnull_info,
+ delete_null_pointer_checks_1, delete_null_pointer_checks,
+ expr_reached_here_p_work): Remove.
+ (gcse_main): Do not perform classic GCSE when optimizing for size.
+ (alloc_pre_mem, free_pre_mem): Don't touch ae_in and ae_out, they
+ are never used.
+
+2004-05-14 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR optimization/14466
+ * tree-complex.c (make_temp): Remove.
+ (gimplify_val): Replace make_temp with make_rename_temp
+ and add NULL as the second argument.
+ (expand_complex_div_wide): Likewise.
+ * tree-dfa.c (make_rename_temp): New function.
+ * tree-flow.h (make_rename_temp): Declare.
+ * tree-sra.c (make_temp): Remove.
+ (lookup_scalar): Replace make_temp with make_rename_temp.
+ (create_scalar_copies): Likewise.
+ * tree-ssa-phiopt.c (conditional_replacement): When we
+ get non gimple create a temporary variable to hold the
+ casted expression.
+
+2004-05-14 Paul Brook <paul@codesourcery.com>
+
+ * stor-layout.c (update_alignment_for_field): Use
+ targetm.align_anon_bitfield.
+ * target-def.h (TARGET_ALIGN_ANON_BITFIELD): Define.
+ (TARGET_INITIALIZER): Use it.
+ * target.h (struct gcc_target): Add align_anon_bitfield.
+ * config/arm/arm.c (arm_align_anon_bitfield): New function.
+ (TARGET_ALIGN_ANON_BITFIELD): Define.
+ * doc/tm.texi: Document TARGET_ALIGN_ANON_BITFIELD.
+
+2004-05-13 Zack Weinberg <zack@codesourcery.com>
+
+ * tree.def (documentation): Remove mention of class 'b'.
+ (BLOCK): Now in class 'x'.
+ * c-common.c (verify_tree): Remove case 'b'.
+ * c-typeck.c (same_translation_unit_p): Change 'b' to 'x'.
+ * calls.c (calls_function_1): Control cannot get past the switch
+ when exp is a BLOCK.
+ * print-tree.c (print_node): Move code for class 'b' to the class
+ 'c'/'x' switch, as case BLOCK.
+ * tree.c (tree_size, make_node_stat, tree_node_structure): Likewise.
+ (unsafe_for_reeval, substitute_placeholder_in_expr)
+ (stabilize_reference_1): Remove case 'b'.
+ * tree-browser.c (browse_tree): Change all tests for TREE_CODE_CLASS
+ of something being 'b' to tests for TREE_CODE of something being
+ BLOCK.
+ * tree-ssa-operands.c (get_expr_operands): Likewise.
+
+2004-05-13 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-gimple.c: Rename from tree-simple.c.
+ * tree-gimple.h: Rename from tree-simple.h.
+ * c-gimplify.c: Rename from c-simplify.c
+ * Makefile.in, c-decl.c, gimple-low.c, gimplify.c,
+ langhooks.c, tree-alias-ander.c, tree-alias-common.c,
+ tree-complex.c, tree-dfa.c, tree-flow.h, tree-inline.c,
+ tree-into-ssa.c, tree-iterator.c, tree-mudflap.c,
+ tree-nested.c, tree-nomudflap.c, tree-outof-ssa.c, tree-sra.c,
+ tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-copyrename.c,
+ tree-ssa-dce.c, tree-ssa-live.c, tree-ssa-pre.c, tree-ssa.c:
+ Update.
+
+2004-05-14 Ranjit Mathew <rmathew@hotmail.com>
+
+ * doc/sourcebuild.texi: Mention libbanshee and libmudflap.
+
+2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * tree-ssa.c (delete_tree_ssa): XFREE
+ bitmaps allocated with BITMAP_XMALLOC.
+
+ * tree-ssa-pre.c (execute_pre): Free ephi_use_pool and
+ idfs_cache at the end of the function.
+
+ * tree-ssa-live.c (calculate_live_on_entry): Free saw_def
+ at the end of the function.
+
+ * tree-ssa-dce.c (perform_tree_ssa_dce): Free
+ el at the end of the function.
+
+ * tree-into-ssa.c (insert_phi_nodes_for): XFREE
+ bitmaps allocated with BITMAP_XMALLOC.
+
+ * loop-unswitch.c (unswitch_single_loop): Free bbs at
+ the end.
+
+ * final.c (shorten_branches): Free uid_shuid before
+ reallocating it.
+
+ * bb-reoder.c (connect_traces): Free cold_traces at the end.
+
+2004-05-13 Jeff Law <law@redhat.com>
+
+ * tree-ssa-live.c (calculate_live_on_entry): Ignore virtual
+ variables. Simplify slightly by using USE_OP/DEF_OP instead
+ of USE_OP_PTR/DEF_OP_PTR and dereferencing the result.
+
+ * tree-into-ssa.c (compute_global_livein): Use EXECUTE_IF_SET_IN_BITMAP
+ rather than iterating through the blocks testing each bit in
+ livein to initialize the worklist.
+ (mark_def_sites): Remove useless checks of KILLS for virtual
+ operands.
+
+ * tree-ssa-forwprop.c (record_single_argument_cond_exprs): Accept
+ new parameters for the statement and variable worklist as well
+ as a bitmap of interesting SSA_NAMEs. Walk over the statement
+ worklist recording interesting variables in the variable worklist
+ and bitmap. Handle casts between integral and boolean types.
+ (substitute_single_use_vars): Accept new parameters for the statement
+ and variable worklist. When a substitution is made add a new
+ entry to the statement worklist. Handle casts between integral
+ and boolean types.
+ (tree_ssa_forward_propagate_single_use_vars): Rework to pass
+ worklists to children. Iterate until the statement worklist
+ is empty.
+
+2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * tree-outof-ssa.c (rewrite_vars_out_of_ssa): Free map at
+ the end of the block.
+
+ * tree-into-ssa.c (def_blocks_free): XFREE bitmaps allocated
+ with BITMAP_XMALLOC.
+
+ * tree-ssa-alias.c (delete_alias_info): XFREE bitmaps allocated
+ with BITMAP_XMALLOC.
+
+ * tree-ssa-dom.c (tree_ssa_dominator_optimize):
+ Free nonzero_vars at the end of the function.
+
+ * convert.c (convert_to_integer): Make a CONVERT_EXPR when there is a
+ need to generate code instead of a NOP_EXPR.
+
+2004-05-13 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * gcc.c (default_compilers): Fill out initializers for new Fortran
+ entries.
+
+2004-05-13 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.h (PCC_BITFIELD_TYPE_MATTERS): Define.
+
+2004-05-13 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_default_short_enums): New function.
+ (TARGET_DEFAULT_SHORT_ENUMS): Define.
+
+2004-05-13 Diego Novillo <dnovillo@redhat.com>
+
+ Merge from tree-ssa-20020619-branch.
+
+ * Makefile.in (reload1.o-warn): Add.
+ (tree-alias-ander.o-warn): Add.
+ (GMPLIBS): Define.
+ (GMPINC): Define.
+ (BANSHEELIB): Define.
+ (BANSHEEINC): Define.
+ (TREE_DUMP_H): Define.
+ (TREE_SIMPLE_H): Define.
+ (TREE_FLOW_H): Define.
+ (LIBDEPS): Add BANSHEELIB.
+ (INCLUDES): Add BANSHEEINC and GMPINC.
+ (C_AND_OBJC_OBJS): Add c-simplify.o, tree-mudflap.o,
+ c-mudflap.o and c-pretty-print.o.
+ (C_OBJS): Remove c-pretty-print.o.
+ (OBJS-common): Remove sibcall.o.
+ Add tree-cfg.o, tree-dfa.o, tree-eh.o,
+ tree-ssa.o, tree-optimize.o, tree-simple.o,
+ tree-alias-type.o, gimplify.o, tree-pretty-print.o,
+ tree-into-ssa.o, tree-outof-ssa.o, tree-alias-common.o,
+ tree-ssa-ccp.o, @ANDER@, tree-ssa-dce.o, tree-ssa-copy.o,
+ tree-nrv.o, tree-ssa-copyrename.o, tree-ssa-pre.o,
+ tree-ssa-live.o, tree-ssa-operands.o, tree-ssa-alias.o,
+ tree-ssa-phiopt.o, tree-ssa-forwprop.o, tree-nested.o,
+ tree-ssa-dse.o, tree-ssa-dom.o, domwalk.o,
+ tree-tailcall.o, gimple-low.o, tree-iterator.o,
+ tree-phinodes.o, tree-ssanames.o, tree-sra.o,
+ tree-complex.o, tree-ssa-loop.o, rtl-profile.o and
+ tree-profile.o.
+ (OBJC-archive): Add tree-nomudflap.o.
+ (cc1): Add dependency on @TREEBROWSER@.
+ (c-decl.o): Add dependency on TREE_DUMP_H.
+ (c-dump.o): Likewise.
+ (c-common.o): Add dependency on tree-iterator.h
+ (c-pretty-print.o): Add dependency on DIAGNOSTIC_H.
+ (gtype-desc.o): Add dependency on TREE_FLOW_H.
+ (tree.o): Add dependency on tree-iterator.h,
+ BASIC_BLOCK_H and TREE_FLOW_H.
+ (tree-dump.o): Depend on TREE_DUMP_H instead of tree-dump.h.
+ (langhooks.o): Add dependency on TREE_SIMPLE_H.
+ (tree-alias-type.o, tree-alias-ander.o,
+ tree-alias-common.o, tree-ssa.o, tree-into-ssa.o,
+ tree-outof-ssa.o, tree-ssa-dse.o, tree-ssa-forwprop.o,
+ tree-ssa-phiopt.o, tree-nrv.o, tree-ssa-copy.o,
+ tree-ssa-dom.o, tree-ssanames.o, tree-phinodes.o,
+ domwalk.o, tree-ssa-live.o, tree-ssa-copyrename.o,
+ tree-ssa-pre.o, tree-cfg.o, tree-tailcall.o,
+ tree-nested.o, tree-iterator.o, tree-dfa.o,
+ tree-ssa-operands.o, tree-eh.o, tree-ssa-loop.o,
+ tree-ssa-alias.o, tree-optimize.o, c-simplify.o,
+ gimplify.o, gimple-low.o, tree-browser.o, tree-simple.o,
+ tree-mudflap.o, c-mudflap.o, tree-nomudflap.o,
+ tree-pretty-print.o, tree-ssa-dce.o, tree-ssa-ccp.o,
+ tree-sra.o, tree-complex.o, tree-profile.o,
+ rtl-profile.o): New rules.
+ (function.o): Add dependency on basic-block.h
+ (expr.o): Add dependency on tree-iterator.h.
+ (sibcall.o): Remove.
+ (profile.o): Depend on TREE_FLOW_H instead of TREE_H.
+ (cfg.o): Add dependency on TIMEVAR_H.
+ (cfghooks.o): Add dependency on TREE_FLOW_H.
+ (reg-stack.o): Add dependency on basic-block.h.
+ (GTFILES): Add hwint.h, tree-mudflaph.c, tree-flow.h,
+ c-objc-common.c, c-common.c, c-parse.in, tree-ssanames.c,
+ tree-eh.c, tree-phinodes.c, tree-cfg.c, tree-dfa.c,
+ tree-ssa-ccp.c, tree-iterator.c, gimplify.c,
+ tree-alias-type.h, tree-alias-common.h,
+ tree-alias-type.c, tree-alias-common.c,
+ tree-ssa-operands.h, tree-ssa-operands.c, tree-profile.c,
+ rtl-profile.c and tree-nested.c.
+ (gt-tree-alias-common.h, gt-tree-mudflap.h,
+ gt-tree-ssa-ccp.h, gt-tree-eh.h, gt-tree-ssanames.h,
+ gt-tree-iterator.h, gt-gimplify.h, gt-tree-phinodes.h,
+ gt-tree-cfg.h, gt-tree-nested.h): New rules.
+ (TEXI_GCCINT_FILES): Add cfg.texi and tree-ssa.texi.
+ * basic-block.h: Include predict.h
+ (struct edge_def): Add GTY marker.
+ Change field 'insns' to be a union of tree and rtx.
+ (EDGE_TRUE_VALUE): Define.
+ (EDGE_FALSE_VALUE): Define.
+ (EDGE_EXECUTABLE): Define.
+ (struct bb_ann_d): Forward declare.
+ (struct basic_block_def): Add GTY marker.
+ Remove fields head_tree and end_tree.
+ Add fields stmt_list, rbi and tree_annotations.
+ (struct reorder_block_def): Define.
+ (basic_block_info): Add GTY marker.
+ (ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): Change to global
+ variables instead of macros.
+ (flow_call_edges_add): Remove declaration.
+ (make_eh_edge): Remove declaration.
+ (brief_dump_cfg, find_edge, tree_predicted_by_p,
+ rtl_predicted_by_p, tree_predict_edge, rtl_predict_edge,
+ predict_edge_def, rtl_make_eh_edge, find_basic_blocks,
+ cleanup_cfg, delete_unreachable_blocks, merge_seq_blocks,
+ alloc_rbi_pool, initialize_bb_rbi, free_rbi_pool): Declare.
+ (try_redirect_by_replacing_jump): Modfiy return type to
+ edge instead of bool.
+ * bb-reorder.c (copy_bb): Call duplicate_block
+ instead of cfg_layout_duplicate_bb.
+ (copy_bb_p): Call can_duplicate_block_p instead of
+ cfg_layout_can_duplicate_bb_p.
+ * bitmap.c (bitmap_first_set_bit): Abort if word
+ wasn't found.
+ (bitmap_last_set_bit): Likewise.
+ * builtin-types.def (DEF_FUNCTION_TYPE_2): Add
+ (DEF_FUNCTION_TYPE_3): Add.
+ * builtins.c (c_strlen): Make extern.
+ (builtin_save_expr): New.
+ (expand_builtin_nonlocal_goto): New.
+ (expand_builtin_constant_p): Remove.
+ (expand_builtin_mathfn): Call builtin_save_expr instead
+ of save_expr.
+ (expand_builtin_mathfn_2): Likewise.
+ (expand_builtin_strcmp): Likewise.
+ (expand_builtin_strncmp): Likewise.
+ (expand_builtin_strcat): Likewise.
+ (fold_builtin_cabs): Likewise.
+ (expand_builtin_alloca): Don't trigger if -fmudflap is
+ given.
+ (build_string_literal): Set TREE_INVARIANT on new node.
+ (expand_builtin_profile_fun): New.
+ (round_trampoline_addr): New.
+ (expand_builtin_init_trampoline): New.
+ (expand_builtin_adjust_trampoline): New.
+ (expand_builtin) <BUILT_IN_NEXT_ARG>: Call simplify_builtin_next_arg.
+ <BUILT_IN_CONSTANT_P>: Return const0_rtx;
+ <BUILT_IN_STACK_ALLOC, BUILT_IN_STACK_SAVE,
+ BUILT_IN_STACK_RESTORE, BUILT_IN_NONLOCAL_GOTO,
+ BUILT_IN_PROFILE_FUNC_ENTER, BUILT_IN_PROFILE_FUNC_EXIT,
+ BUILT_IN_INIT_TRAMPOLINE, BUILT_IN_ADJUST_TRAMPOLINE>:
+ Handle.
+ (fold_builtin_expect): New.
+ (fold_builtin_isascii): Don't return non-constant results
+ in GIMPLE form.
+ (fold_builtin_isdigit): Likewise.
+ (fold_builtin_1): New.
+ (fold_builtin): Call it.
+ (build_function_call_expr): Update call to build a new
+ CALL_EXPR.
+ (purge_builtin_constant_p): Remove.
+ (simplify_builtin, simplify_builtin_memcmp,
+ simplify_builtin_strcmp, simplify_builtin_strncmp,
+ simplify_builtin_strpbrk, simplify_builtin_strstr,
+ simplify_builtin_strchr, simplify_builtin_strrchr,
+ simplify_builtin_strcat, simplify_builtin_strncat,
+ simplify_builtin_strspn, simplify_builtin_strcspn,
+ simplify_builtin_next_arg, simplify_builtin_va_start,
+ simplify_builtin_sprintf): New.
+ * builtins.def (BUILT_IN_STACK_ALLOC,
+ BUILT_IN_STACK_SAVE, BUILT_IN_STACK_RESTORE,
+ BUILT_IN_INIT_TRAMPOLINE, BUILT_IN_ADJUST_TRAMPOLINE,
+ BUILT_IN_NONLOCAL_GOTO, BUILT_IN_PROFILE_FUNC_ENTER,
+ BUILT_IN_PROFILE_FUNC_EXIT): Define.
+ * c-common.c: Include tree-iterator.h and hashtab.h.
+ (lang_statement_code_p): Declare.
+ (lang_gimplify_stmt): Declare.
+ (fix_string_type): Set TREE_INVARIANT for value.
+ (pointer_int_sum): Rely on build to set TREE_CONSTANT.
+ (c_type_hash): New.
+ (c_common_get_alias_set): Handle multiple type nodes
+ referring to "the same" type, currently for C90 only.
+ (c_add_case_label): Use create_artificial_label.
+ (finish_label_address_expr): Don't set TREE_CONSTANT on
+ result.
+ (c_expand_expr): Don't handle STMT_EXPR.
+ (handle_alias_attribute): Marke aliased variables to be
+ TREE_STATIC.
+ (handle_nonnull_attribute): Initialize arg_num.
+ (check_function_nonnull): Likewise.
+ (c_walk_subtrees): New.
+ (c_estimate_num_insns_1): Don't handle
+ EXPR_WITH_FILE_LOCATION nor FILE_STMT.
+ (c_decl_uninit_1): Remove.
+ (c_decl_uninit): Remove.
+ (c_warn_unused_result): New.
+ * c-common.def (ASM_STMT): Change number of operands
+ to 4.
+ (FILE_STMT): Remove.
+ * c-common.h (lang_expand_stmt, lang_expand_decl_stmt):
+ Remove.
+ (lang_gimplify_stmt): Add.
+ (expand_stmt): Remove.
+ (ASM_CV_QUAL, ASM_STRING, ASM_OUTPUTS, ASM_INPUTS,
+ ASM_CLOBBERS, STMT_EXPR_WARN_UNUSED_RESULT,
+ ASM_VOLATILE_P, FILE_STMT_FILENAME_NODE,
+ FILE_STMT_FILENAME, STMT_LINENO, STMT_LINENO_FOR_FN_P,
+ ASM_INPUT_P, DECL_C_HARD_REGISTER): Remove.
+ (genrtl_do_pushlevel, genrtl_goto_stmt, genrtl_expr_stmt,
+ genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
+ genrtl_while_stmt, genrtl_do_stmt, genrtl_return_stmt,
+ genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
+ genrtl_scope_stmt, genrtl_switch_stmt, genrtl_case_label,
+ genrtl_compound_stmt, genrtl_asm_stmt,
+ genrtl_cleanup_stmt, c_decl_uninit): Remove.
+ (c_do_switch_warnings, c_gimplify_expr, c_walk_subtrees,
+ c_tree_chain_matters_p, c_warn_unused_result,
+ c_genericize, c_gimplify_stmt, stmt_expr_last_stmt):
+ Declare.
+ * c-convert.c (convert): Make convert work when
+ converting to compatible types across translation unit.
+ * c-decl.c: Include langhooks.h, tree-mudflap.h,
+ tree-simple.h, diagnostic.h and tree-dump.h
+ (merge_decls): Initialize oldtype to NULL.
+ (finish_decl): Use DECL_HARD_REGISTER instead of
+ DECL_C_HARD_REGISTER.
+ (check_bitfield_type_and_width): Check for null
+ lang_type_specific when check the precision of an enum.
+ (grokdeclarator): Immediately layout an ARRAY_TYPE used
+ in a pointer-to-array declarator.
+ (finish_struct): Clear allocated struct lang_type.
+ (finish_enum): Set enum_min and enum_max. Set
+ TYPE_MIN/MAX_VALUE to the limits of the compatible type,
+ not to the enumerators.
+ (set_decl_nonlocal): New.
+ (store_parm_decls): Use it via walk_tree.
+ (c_finalize): New.
+ (finish_function): When !targetm.have_ctors_dtors,
+ record static constructors and destructors here...
+ (c_expand_body_1): ... not here.
+ (c_expand_decl): Rename from c_expand_decl_stmt.
+ Handle all C-specific expansion semantics.
+ * c-dump.c (dump_stmt): Use EXPR_LOCUS instead of
+ STMT_LINENO.
+ * c-format.c (handle_format_arg_attribute): Initialize
+ format_num.
+ * c-lang.c: Include tree-inline.h
+ (LANG_HOOKS_EXPAND_DECL,
+ LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P,
+ LANG_HOOKS_TREE_INLINING_WALK_SUBTREES,
+ LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P,
+ LANG_HOOKS_GIMPLIFY_EXPR, LANG_HOOKS_TYPES_COMPATIBLE_P): Define.
+ (LANG_HOOKS_DECL_UNINIT, LANG_HOOKS_RTL_EXPAND_STMT,
+ LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): Remove.
+ (c_types_compatible_p): New.
+ * c-mudflap.c: New file.
+ * c-objc-common.c: Include tree-mudflap.h
+ (start_cdtor, finish_cdtor): Collapse
+ together into
+ (build_cdtor): ...here. Update to construct a complete tree
+ for the function. No need to call push_scope, pop_scope, or
+ clear_last_expr, or set current_function_cannot_inline.
+ (c_missing_noreturn_ok_p): Change prototype to return
+ bool.
+ (c_objc_common_init): Don't set lang_missing_noreturn_ok_p.
+ * c-opts.c (c_common_handle_option): Move handling of -fdump- to
+ opts.c.
+ (c_common_post_options): Don't ever use rtl inlining.
+ * c-parse.in: Use EXPR_LOCUS instead of STMT_LINENO.
+ * c-pragma.c (handle_pragma_redefine_extname): Define
+ always.
+ (init_pragma): Activate #pragma redefine_extname for mudflap.
+ * c-pretty-print.c (pp_c_statement): Remove FILE_STMT.
+ (pp_c_initializer): Accept any type CONSTRUCTOR.
+ (pp_c_initializer_list): Fix code expectations for VECTOR_TYPE and
+ COMPLEX_TYPE.
+ (decl_name_str): New local function.
+ (pp_c_direct_declarator): Call it.
+ (pp_c_primary_expression): Call it.
+ (pp_c_id_expression): Call it.
+ (pp_c_statement): Call it.
+ (print_c_tree): Create new pp object.
+ * c-pretty-print.h (pp_c_tree_decl_identifier,
+ print_c_tree): Declare.
+ * c-semantics.c: Include langhooks.h
+ (lang_expand_stmt, lang_expand_decl_stmt,
+ find_reachable_label_1, find_reachable_label,
+ expand_unreachable_if_stmt, expand_unreachable_stmt,
+ genrtl_do_stmt_1): Remove.
+ (begin_stmt_tree): Don't check for changed filename.
+ Call annotate_with_locus.
+ (finish_stmt_tree): Don't set line for end of function.
+ (build_stmt): Don't check type nodes for
+ side effects.
+ (build_stmt): Set TREE_SIDE_EFFECTS.
+ Set EXPR_LOCUS instead of STMT_LINENO.
+ (lang_expand_stmt, lang_expand_decl_stmt,
+ expand_cond, genrtl_do_pushlevel, genrtl_goto_stmt, genrtl_expr_stmt,
+ genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
+ genrtl_while_stmt, genrtl_do_stmt_1, genrtl_do_stmt,
+ genrtl_return_stmt, genrtl_for_stmt, genrtl_break_stmt,
+ genrtl_continue_stmt, genrtl_scope_stmt, genrtl_switch_stmt,
+ genrtl_case_label, genrtl_compound_stmt, genrtl_asm_stmt,
+ genrtl_cleanup_stmt, expand_stmt, find_reachable_label,
+ find_reachable_label_1, expand_unreachable_if_stmt,
+ expand_unreachable_stmt): Remove.
+ (prep_stmt): Use EXPR_LOCUS instead of STMT_LINENO.
+ * c-simplify.c: New file.
+ * c-tree.h (C_LANG_TREE_NODE_CHAIN_NEXT): Define.
+ (struct lang_type): Add fields enum_min and enum_max.
+ (c_expand_decl_stmt, c_missing_noreturn_ok_p): Remove.
+ (c_expand_decl, c_missing_noreturn_ok_p,
+ c_types_compatible_p): Declare.
+ * c-typeck.c (tagged_types_tu_compatible_p): Allow for
+ compiler-generated TYPE_DECLs without a DECL_ORIGINAL_TYPE.
+ (default_function_array_conversion): Rely on build to
+ set TREE_CONSTANT.
+ (parser_build_binary_op, pointer_diff): Likewise.
+ (build_unary_op, build_binary_op): Likewise.
+ (build_array_ref):
+ (build_external_ref): Set TREE_INVARIANT.
+ (build_c_cast, pop_init_level): Likewise.
+ (process_init_element): Use ASM_VOLATILE_P.
+ (build_asm_expr): Adapt to GENERIC/GIMPLE syntax.
+ (c_finish_case): Call c_do_switch_warnings.
+ * c.opt (fdump-): Remove.
+ * calls.c (try_to_integrate): Remove.
+ (prepare_call_address): Replace fndecl arg with a
+ precomputed static chain value.
+ (emit_call_1): New argument for full call expr.
+ (flags_from_decl_or_type): Call special_function_p.
+ (initialize_argument_information): Add argument
+ may_tailcall.
+ (purge_reg_equiv_notes): New.
+ (expand_call): Do not try to expand calls inline.
+ (fixup_tail_calls): New.
+ * cfg.c: Include timevar.h and ggc.h.
+ (bb_pool, edge_pool): Remove.
+ (ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): Declare.
+ (entry_exit_blocks): Remove.
+ (rbi_pool): Declare.
+ (init_flow): Do not create pools.
+ Allocate entry/exit block.
+ (free_edge, alloc_block, expunge_block, unchecked_make_edge): Use GGC.
+ (alloc_rbi_pool, free_rbi_pool, initialize_bb_rbi): New.
+ (unlink_block): Clear b->prev_bb and b->next_bb.
+ (compact_blocks): Clear all slots of BASIC_BLOCK array.
+ (dump_flow_info): Work on trees too.
+ (dump_cfg_bb_info): New.
+ (brief_dump_cfg): New.
+ * cfganal.c (need_fake_edge_p, flow_call_edges_add): Remove.
+ (find_edge): New.
+ * cfgbuild.c (rtl_make_eh_edge): Rename from
+ make_eh_edge. Update all users.
+ (find_basic_blocks): Don't call VARRAY_FREE on
+ basic_block_info.
+ * cfgcleanup.c (outgoing_edges_match): Initialize newpos1
+ and newpos2.
+ (delete_unreachable_blocks): Return changed status.
+ (merge_seq_blocks): New.
+ * cfghooks.c: Include tree-flow.h
+ (tree_register_cfg_hooks, ir_type): New.
+ (redirect_edge_and_branch): Change return type to edge.
+ (predict_edge, predicted_by_p, can_duplicate_block_p,
+ duplicate_block, block_ends_with_call_p,
+ block_ends_with_condjump_p, flow_call_edges_add): New.
+ * cfghooks.h (redirect_edge_and_branch): Change return
+ type to edge.
+ (predict_edge, predicted_by_p, can_duplicate_block_p,
+ duplicate_block, block_ends_with_call_p,
+ block_ends_with_condjump_p, flow_call_edges_add): Declare.
+ (redirect_edge_and_branch): Change return type to edge.
+ (struct cfg_hooks): Add fields block_ends_with_call_p,
+ block_ends_with_condjump_p, flow_call_edges_add,
+ predict_edge, predicted_by_p, can_duplicate_block_p and
+ duplicate_block.
+ (tree_cfg_hooks, ir_type, tree_register_cfg_hooks): Declare.
+ * cfglayout.c (cfg_layout_pool, cfg_layout_initialize_rbi): Removed.
+ (fixup_reorder_chain): Use initialize_bb_rbi.
+ (cfg_layout_can_duplicate_bb_p, cfg_layout_duplicate_bb): Hookized.
+ (cfg_layout_initialize): Use cfg.c rbi pool manipulation functions.
+ (can_copy_bbs_p, copy_bbs): Use cfghooks for bb duplication.
+ (insn_locators_initialize): Use new info about blocks.
+ * cfglayout.h (typedef struct reorder_block_def): Moved to
+ basic_block.h.
+ (cfg_layout_can_duplicate_bb_p, cfg_layout_duplicate_bb): Declaration
+ removed.
+ * cfgloop.c: Include tree.h and tree-flow.h.
+ * cfgloop.h (create_loop_notes): Declare.
+ * cfgloopmanip.c (create_loop_notes): New.
+ * cfgrtl.c (cfg_layout_create_basic_block): Use initialize_bb_rbi.
+ (rtl_cfg_hooks, cfg_layout_rtl_cfg_hook): Fill in can_duplicate_block_p
+ and duplicate_block fields.
+ (create_basic_block_structure): Don't look at
+ RTX_INTEGRATED_P.
+ (rtl_block_ends_with_call_p): New.
+ (rtl_block_ends_with_condjump_p): New.
+ (need_fake_edge_p): Moved from cfganal.c.
+ (rtl_flow_call_edges_add): Moved from cfganal.c (flow_call_edges_add).
+ (rtl_cfg_hooks): Add rtl_block_ends_with_call_p,
+ rtl_block_ends_with_condjump_p, rtl_flow_call_edges_add.
+ (cfg_layout_rtl_cfg_hooks): Ditto.
+ * cgraph.c (cgraph_mark_reachable_node): Don't force nested
+ functions to be reachable.
+ * cgraphunit.c (decide_is_function_needed):
+ * cgraphunit.c (decide_is_function_needed): Nested functions of extern
+ inline functions don't need to be output.
+ (cgraph_assemble_pending_functions): Don't do anything
+ special for nested functions.
+ (cgraph_mark_functions_to_output): Likewise.
+ (cgraph_finalize_function): Don't zap DECL_STRUCT_FUNCTION.
+ (cgraph_analyze_function): Use estimate_num_insns.
+ (cgraph_mark_functions_to_output): Likewise.
+ (cgraph_estimate_growth, cgraph_clone_inlined_nodes): Likewise.
+ (cgraph_expand_function): Allow functions to not be
+ emitted.
+ (cgraph_remove_unreachable_nodes):
+ (cgraph_recursive_inlining_p): Simplify.
+ (lookup_recursive_calls,
+ cgraph_decide_recursive_inlining): New.
+ (cgraph_decide_inlining_*): Update calls of
+ cgraph_mark_inline.
+ * combine.c (get_pos_from_mask): Always set *plen.
+ * common.opt (fdump-, fmudflap, fmudflapth, fmudflapir,
+ ftree-based-profiling, ftree-ccp, ftree-ch,
+ ftree-combine-temps, ftree-copyrename, ftree-dce,
+ ftree-dominator-opts, ftree-dse, ftree-loop-optimize,
+ ftree-points-to, ftree-pre, ftree-sra, ftree-ter,
+ ftree-lrs): Add.
+ * config.in (HAVE_LD_PIE, HAVE_BANSHEE, PREFIX_INCLUDE_DIR):
+ Undefine.
+ * configure.ac: Add --enable-tree-browser option.
+ Add --with-libbanshee option.
+ Add GMPLIBS and GMPINC.
+ * configure: Regenerate.
+ * coverage.c (tree_ctr_tables): New.
+ (coverage_counter_alloc): Use it.
+ (build_ctr_info_value): Ditto.
+ (coverage_counter_ref): Ditto. Rename to rtl_coverage_counter_ref.
+ (tree_coverage_counter_ref): New.
+ * coverage.h (coverage_counter_ref): Remove declaration.
+ (rtl_coverage_counter_ref): Declare.
+ (tree_coverage_counter_ref): Declare.
+ * cppexp.c (append_digit): Rearrange unsignedp/overflow setting.
+ (eval_token, num_binary_op, num_part_mul, num_div_op): Likewise.
+ * cse.c (fold_rtx): Do not handle CONSTANT_P_RTX.
+ (struct cse_basic_block_data): Rename enum values to not
+ conflict with profile.h; update all uses.
+ * dbxout.c (dbxout_symbol_location): Don't mention integrate.c
+ in comments.
+ * defaults.h (TRAMPOLINE_ALIGNMENT): Move from function.c.
+ * diagnostic.h (debug_output_buffer, dump_generic_node,
+ print_generic_stmt, print_generic_stmt_indented,
+ print_generic_expr, print_generic_decl,
+ debug_generic_expr, debug_generic_stmt, debug_c_tree):
+ Declare.
+ * dominance.c: Cache immediate dominators.
+ * domwalk.c: New file.
+ * domwalk.h: New file.
+ * dwarf2out.c (is_fortran): Support DW_LANG_Fortran95.
+ (gen_subprogram_die): Generate a DIE for a named
+ return value.
+ (loc_descriptor_from_tree): Treat RESULT_DECL like VAR_DECL.
+ (add_location_or_const_value_attribute): Likewise.
+ (add_bound_info): Likewise.
+ (gen_decl_die): Likewise.
+ * emit-rtl.c (maybe_set_first_label_num): New.
+ (copy_most_rtx): Don't copy the integrated flag.
+ Copy the new return_val flag.
+ * et-forest.c (MAX_NODES): Define.
+ (record_path_before_1): Abort if len is greater than
+ MAX_NODES.
+ * except.c (gen_eh_region, gen_eh_region_cleanup, gen_eh_region_try,
+ gen_eh_region_catch, gen_eh_region_allowed,
+ gen_eh_region_must_not_throw, get_eh_region_number,
+ get_eh_region_may_contain_throw, get_eh_region_tree_label,
+ set_eh_region_tree_label, expand_resx_expr): New.
+ (expand_eh_region_start, expand_start_catch): Use them.
+ (expand_end_catch): Tidy.
+ (note_eh_region_may_contain_throw): Take region argument.
+ (note_current_region_may_contain_throw): New.
+ (get_exception_filter): Export.
+ (collect_eh_region_array): Export.
+ (remove_unreachable_regions): Check ERT_TRY based on reachability
+ of catches, not reachability of continue_label. Never remove
+ ERT_MUST_NOT_THROW regions.
+ (collect_rtl_labels_from_trees): New.
+ (convert_from_eh_region_ranges): Use it.
+ (connect_post_landing_pads): Handle dying cleanups.
+ (struct reachable_info): Add callback data.
+ (add_reachable_handler): Invoke the callback.
+ (foreach_reachable_handler): New.
+ (reachable_handlers): Use it.
+ (arh_to_landing_pad, arh_to_label): New.
+ (can_throw_internal_1): Split out from can_throw_internal.
+ (can_throw_external_1): Similarly.
+ * except.h: Update.
+ * explow.c (emit_stack_save): Remove savearea mode check.
+ (update_nonlocal_goto_save_area): New.
+ (allocate_dynamic_stack_space): Use it.
+ (probe_stack_range): Never emit loop notes.
+ * expmed.c (extract_fixed_bit_field): Always propagate the
+ target for the shift if it is a REG.
+ * expr.c: Include tree-iterator.h
+ (is_zeros_p): Remove.
+ (categorize_ctor_elements_1, categorize_ctor_elements): New.
+ (count_type_elements): New.
+ (mostly_zeros_p): Use them.
+ (expr_wfl_stack): Remove.
+ (convert_move): Do nothing if to and from are the same.
+ (emit_block_move_via_loop): Don't emit LOOP notes.
+ (emit_move_insn): Don't handle CONSTANT_P_RTX.
+ (emit_move_insn_1): Don't generate inline warnings.
+ (expand_vars, expand_var): Split from ...
+ (expand_expr_1): ... here.
+ (expand_expr_real, expand_expr_real_1): Use new macros
+ EXPR_LOCATION and EXPR_HAS_LOCATION.
+ * expr.h (simplify_builtin_fputs,
+ simplify_builtin_strcpy, simplify_builtin_strncpy,
+ expand_var, fixup_tail_calls,
+ update_nonlocal_goto_save_area): Declare.
+ (lookup_static_chain, expand_inline_function,
+ mark_seen_cases): Remove.
+ (prepare_call_address): Change type of 2nd argument to
+ rtx.
+ * final.c (profile_function): Update static chain test.
+ (final): Don't look at RTX_INTEGRATED_P.
+ * flags.h (flag_mudflap, flag_mudflap_threads,
+ flag_mudflap_ignore_reads, flag_tree_pre, flag_tree_ccp,
+ flag_tree_dce, flag_tree_combine_temps,
+ flag_tree_live_range_split, flag_tree_dom, flag_tree_ch,
+ flag_tree_dse, flag_tree_sra, flag_tree_copyrename,
+ flag_tree_points_to): Declare.
+ (enum pta_type): Declare.
+ * flow.c (lang_missing_noreturn_ok_p): Remove.
+ (check_function_return_warnings): Remove.
+ (update_life_info): Update comments.
+ (free_basic_block_vars): Don't call VARRAY_FREE for
+ basic_block_info.
+ (regno_uninitialized): Remove.
+ * fold-const.c (int_const_binop): Make extern.
+ (non_lvalue): Rely on build to set TREE_CONSTANT.
+ (operand_equal_p): Replace only_const argument with
+ flags. Allow pure functions if OEP_PURE_SAME.
+ (fold): Use OEP_ONLY_CONST.
+ (invert_truthvalue) <NOP_EXPR> Break if argument is of
+ boolean type.
+ (fold_relational_hi_lo,
+ nondestructive_fold_binary_to_constant,
+ nondestructive_fold_unary_to_constant,
+ fold_read_from_constant_string): New.
+ * function.c (struct function): Remove calls_constant_p.
+ (current_function_calls_constant_p): Remove.
+ (inline_function_decl): Remove.
+ (put_var_into_stack): Don't use it.
+ (fix_lexical_addr): Likewise.
+ (inline_function_decl): Remove extern declaration.
+ (TRAMPOLINE_ALIGNMENT): Move to defaults.h.
+ (trampolines_created): Move to varasm.c.
+ (free_after_compilation): Update for removed fields.
+ (allocate_struct_function): Likewise.
+ (delete_handlers, lookup_static_chain): Remove.
+ (fix_lexical_addr): Don't consider non-local variable refs.
+ (trampoline_address): Remove.
+ (round_trampoline_addr): Move to builtins.c.
+ (adjust_trampoline_addr): Remove.
+ (expand_function_start): Update for changes to static chain
+ and nonlocal goto handling.
+ (initial_trampoline): Move to varasm.c.
+ (expand_function_end): Don't build trampolines or kill
+ unreferenced nonlocal goto labels.
+ (free_after_compilation): Don't set it.
+ (expand_function_end): Likewise.
+ (setjmp_vars_warning): Rename from
+ uninitialized_vars_warning, remove uninitialized vars warning.
+ (uninitialized_vars_warning): Remove old comment
+ and check for DECL_INITIAL, replace with a check of TREE_NO_WARNING
+ and do not call the langhook.
+ (expand_function_start, expand_function_end): Don't do
+ function instrumentation here.
+ (clear_block_marks): Rename from reorder_blocks_0, export.
+ (blocks_nreverse): Export.
+ (uninitialized_vars_warning): Use DECL_RTL_SET_P to test for presence
+ of rtl.
+ (reset_block_changes, record_block_change, finalize_block_changes,
+ check_block_change, free_block_changes): New functions.
+ (assign_parms): Setting of current_function_stdarg
+ moved ...
+ (allocate_struct_function): ... here.
+ * function.h (struct function): Remove x_nonlocal_labels,
+ x_nonlocal_goto_handler_slots, x_nonlocal_goto_stack_level,
+ x_context_display, x_trampoline_list, needs_context.
+ Add static_chain_decl, nonlocal_goto_save_area.
+ (struct function): Remove x_clobber_return_insn.
+ Add tail_call_emit field, last_label_uid,
+ unexpanded_var_list, dont_emit_block_notes,
+ ib_boundaries_block, function_end_locus and saved_tree/saved_args.
+ (clear_block_marks): Declare.
+ * gcc.c (MFWRAP_SPEC, MFLIB_SPEC): Add -fmudflapth support.
+ (mfwrap_spec, mflib_spec): Declare.
+ (cpp_unique_options, cc1_options): Ditto.
+ (default_compilers): Add .F and .f90.
+ (static_specs): Add mfwrap and mflib.
+ * gcse.c (want_to_gcse_p, gcse_constant_p): Don't handle
+ CONSTANT_RTX_P.
+ (reg_used_on_edge, reg_killed_on_edge, bypass_block):
+ Update to match insns field in struct edge_def.
+ * gdbinit.in (pgs, pge): Define.
+ * genattrtab.c (ATTR_PERMANENT_P): Use the return_val flag
+ instead of the integrated flag.
+ * gengtype-lex.l (IWOrD): Add HOST_WIDEST_INT
+ * gengtype-yacc.y (bitfieldlen): Add empty action.
+ (struct_fields): Accept unnamed bitfields.
+ (bitfieldlen): Split from ...
+ (bitfieldopt): ... here.
+ * gengtype.c (ifiles): Add tree-alias-type.h and
+ tree-flow.h.
+ * genrecog.c (validate_pattern): Do not handle
+ CONSTANT_P_RTX.
+ * gimple-low.c: New file.
+ * gimplify.c: New file.
+ * haifa-sched.c (priority): Do not handle CONSTANT_P_RTX.
+ (restore_line_notes): Do not set RTX_INTEGRATED_P.
+ * ifcvt.c (dead_or_predicable): Initialize local variable
+ 'earliest'.
+ * input.h (expr_wfl_stack): Remove.
+ * integrate.c (INTEGRATE_THRESHOLD): Remove.
+ (setup_initial_hard_reg_value_integration): Likewise.
+ (initialize_for_inline): Likewise.
+ (note_modified_parmregs): Likewise.
+ (integrate_parm_decls): Likewise.
+ (process_reg_param): Likewise.
+ (save_parm_insns): Likewise.
+ (copy_insn_list): Likewise.
+ (copy_insn_notes): Likewise.
+ (compare_blocks): Likewise.
+ (find_block): Likewise.
+ (inlining): Likewise.
+ (function_cannot_inline_p): Likewise.
+ (parmdecl_map): Likewise.
+ (in_nonparam_insns): Likewise.
+ (save_for_inline): Likewise.
+ (FIXED_BASE_PLUS): Likewise.
+ (expand_inline_function): Likewise.
+ (copy_rtx_and_substitute): Don't look at map->integrating,
+ map->inline_target, and inlining, since we are never copying
+ for integrating.
+ Don't abort on RTX_INTEGRATED_P.
+ (old_fun): Remove.
+ (output_inline_function): Remove.
+ * integrate.h (struct inline_map): Remove fields integrating,
+ block_map, leaf_reg_map, inline_target, and local_return_label.
+ * jump.c (next_nonnote_insn_in_loop, duplicate_loop_exit_test,
+ copy_loop_headers, never_reached_warning): Removed.
+ (any_uncondjump_p): Reject nonlocal goto.
+ * langhooks-def.h (lhd_types_compatible_p,
+ lhd_expand_decl, lhd_gimplify_expr): Declare.
+ (LANG_HOOKS_EXPAND_DECL, LANG_HOOKS_TYPES_COMPATIBLE_P,
+ LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P,
+ LANG_HOOKS_FUNCTION_LEAVE_NESTED,
+ LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P,
+ LANG_HOOKS_GIMPLIFY_EXPR,
+ LANG_HOOKS_GIMPLE_BEFORE_INLINING,
+ LANG_HOOKS_EXPAND_DECL, LANG_HOOKS_TYPES_COMPATIBLE_P,
+ LANG_HOOKS_GIMPLIFY_EXPR,
+ LANG_HOOKS_GIMPLE_BEFORE_INLINING): Define.
+ (LANG_HOOKS_DECL_UNINIT, LANG_HOOKS_RTL_EXPAND_START,
+ LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_RTL_EXPAND_END,
+ LANG_HOOKS_FUNCTION_LEAVE_NESTED,
+ LANG_HOOKS_RTL_EXPAND_INITIALIZER,
+ LANG_HOOKS_DECL_UNINIT,
+ LANG_HOOKS_RTL_EXPAND_INITIALIZER): Remove.
+ * langhooks.c: Include tree-simple.h.
+ (lhd_expand_decl): New.
+ (lhd_types_compatible_p): New.
+ (lhd_decl_uninit): Remove.
+ (lhd_gimplify_expr): New.
+ * langhooks.h (struct lang_hooks_for_rtl_expansion):
+ Remove.
+ (struct lang_hooks_for_functions): Add field
+ missing_noreturn_ok_p.
+ (struct lang_hooks): Add field expand_decl,
+ types_compatible_p, gimplify_expr and
+ gimple_before_inlining.
+ Remove fields decl_uninit and rtl_expand
+ * opts.c (decode_options): Set flag_tree_ccp,
+ flag_tree_dce, flag_tree_dom, flag_tree_dse,
+ flag_tree_pre, flag_tree_ter,
+ flag_tree_live_range_split, flag_tree_sra,
+ flag_tree_copyrename and flag_tree_ch at -O1 and higher.
+ (common_handle_option): Handle OPT_fdump_, OPT_fmudflap,
+ OPT_fmudflapth, OPT_fmudflapir,
+ OPT_ftree_based_profiling, OPT_ftree_ccp, OPT_ftree_dce,
+ OPT_ftree_combine_temps, OPT_ftree_ter, OPT_ftree_lrs,
+ OPT_ftree_dominator_opts, OPT_ftree_copyrename,
+ OPT_ftree_ch, OPT_ftree_dse, OPT_ftree_sra,
+ OPT_ftree_points_to_ and OPT_ftree_pre.
+ * output.h (regno_uninitialized, find_basic_blocks,
+ cleanup_cfg, delete_unreachable_blocks,
+ check_function_return_warnings): Remove.
+ * params.def (PARAM_MAX_INLINE_INSNS_RECURSIVE,
+ PARAM_MAX_INLINE_INSNS_RECURSIVE_AUTO,
+ PARAM_MAX_INLINE_RECURSIVE_DEPTH,
+ PARAM_MAX_INLINE_RECURSIVE_DEPTH_AUTO,
+ PARAM_GLOBAL_VAR_THRESHOLD, PARAM_MAX_ALIASED_VOPS):
+ * params.h (GLOBAL_VAR_THRESHOLD, MAX_ALIASED_VOPS):
+ Define.
+ * passes.c (rest_of_decl_compilation):
+ (rest_of_handle_sibling_calls): Remove.
+ (rest_of_handle_inlining): Remove.
+ (rest_of_handle_gcse): Do not run
+ purge_builtin_constant_p.
+ (rest_of_compilation): Update.
+ Do not call copy_loop_headers.
+ Do rtl-based profiling only when
+ !flag_tree_based_profiling. Register rtl-based profiling
+ hooks.
+ * predict.c: Include tree-flow.h, ggc.h, tree-dump.h
+ (predicted_by_p): Rename to ...
+ (rtl_predicted_by_p): .. this one; make global
+ (tree_predicted_by_p): New.
+ (dump_prediction): Add FILE argument.
+ (predict_edge): Rename to ...
+ (rtl_predict_edge): .. this one.
+ (tree_predict_edge): New.
+ (combine_predictions_for_insn): Update calls of predict_edge.
+ (predict_loops): Break out from ...
+ (estimate_probability): ... here; update comments; move updating
+ of unknown probabilities from ...
+ (estimate_bb_frequencies): ... here.
+ (combine_predictions_for_bb): New.
+ (tree_predict_by_opcode): New.
+ (tree_estimate_probability): New.
+ * predict.def (PRED_TREE_POINTER, PRED_TREE_OPCODE_POSITIVE,
+ PRED_TREE_OPCODE_NONEQUAL, PRED_TREE_FPOPCODE): New predictors.
+ * predict.h: Add include guard.
+ (predict_edge, predict_edge_def): Move prototypes to basic_block.h
+ * pretty-print.c (pp_write_text_to_stream): Make extern.
+ * pretty-print.h (pp_write_text_to_stream): Declare.
+ * print-rtl.c (print_rtx): Don't print the integrated flag.
+ Print the return_val flag.
+ * print-tree.c: Use TREE_FILENAME and TREE_LINENO instead
+ of DECL_SOURCE_FILE and DECL_SOURCE_LINE respectively.
+ Remove support for EXPR_WITH_FILE_LOCATION nodes.
+ (print_node): Print TREE_INVARIANT and TREE_VISITED.
+ * profile.c: Include cfghooks.h, tree-flow.h.
+ (profile_hooks): New.
+ (profile_dump_file): New.
+ (instrument_edges): Use hooks instead of RTL-specific code.
+ (instrument_values): Ditto.
+ (get_exec_counts): Ditto.
+ (compute_branch_probabilities): Ditto.
+ (compute_value_histograms): Ditto.
+ (branch_prob): Ditto.
+ (find_spanning_tree): Ditto.
+ (end_branch_prob): Ditto.
+ (gen_edge_profiler): Move to rtl-profile.c (rtl_gen_edge_profiler).
+ (gen_interval_profiler): Ditto (rtl_gen_interval_profiler).
+ (gen_pow2_profiler): Ditto (rtl_gen_pow2_profiler).
+ (gen_one_value_profiler): Ditto (rtl_gen_one_value_profiler).
+ (tree_register_profile_hooks): New.
+ (rtl_register_profile_hooks): New.
+ * ra-rewrite.c (rewrite_program): Clear variable info.
+ * recog.c (immediate_operand): Do not handle CONSTANT_P_RTX.
+ * regs.h: Add include guards.
+ * reload.c (decompose): Clear val using memset.
+ * rtl.def (CONSTANT_P_RTX): Remove.
+ * rtl.h (CONSTANT_P): Do not handle CONSTANT_P_RTX.
+ (copy_loop_headers): Remove.
+ (struct rtx_def): Replace the integrated flag with the
+ return_val flag.
+ (maybe_set_first_label_num): Declare.
+ (init_branch_prob): Move declaration to value-prof.h.
+ (end_branch_prob): Ditto.
+ (branch_prob): Ditto.
+ (never_reached_warning): Don't declare it.
+ * rtlanal.c (get_related_value): Initialize get_jump_table_offset
+ (hoist_insn_to_edge): Update to match field insns in
+ struct edge_def.
+ * sbitmap.c (sbitmap_realloc): New.
+ * sbitmap.h (sbitmap_realloc): Declare.
+ * sibcall.c: Remove file.
+ * simplify-rtx.c (simplify_rtx): Do not handle
+ CONSTANT_P_RTX.
+ * stmt.c (parse_output_constraint): Don't warn for read-write
+ memory operand.
+ (tail_recursion_args): Use types_compatible_p langhook.
+ (force_label_rtx): Don't look at inline_function_decl.
+ (label_rtx): Set LABEL_PRESERVE_P appropriately.
+ (expand_label): Handle DECL_NONLOCAL and FORCED_LABEL.
+ (declare_nonlocal_label): Remove.
+ (expand_goto): Don't handle nonlocal gotos.
+ (expand_nl_handler_label): Remove.
+ (expand_nl_goto_receivers): Remove.
+ (expand_end_bindings): Don't expand_nl_goto_receivers. Use
+ update_nonlocal_goto_save_area.
+ (expand_expr_stmt_value): Check TREE_NO_WARNING.
+ (warn_if_unused_value): Likewise.
+ (expand_start_loop, expand_loop_continue_here,
+ expand_end_loop): Don't create loop notes.
+ (all_cases_count, BITARRAY_TEST, BITARRAY_SET,
+ mark_seen_cases, check_for_full_enumeration_handling): Remove.
+ (expand_end_case_type): Don't do warn_switch handling.
+ (pushcase, pushcase_range) Update add_case_node calls.
+ (add_case_node): Add dont_expand_label argument.
+ (same_case_target_p): Don't search rtl.
+ (expand_start_bindings_and_block, expand_end_bindings):
+ Don't emit block notes when dont_emit_block_notes.
+ (using_eh_for_cleanups_p): Export.
+ (expand_return): Allow any typed rhs.
+ (expand_stack_alloc): New.
+ (expand_stack_save, expand_stack_restore): New.
+ (containing_blocks_have_cleanups_or_stack_level): New
+ function.
+ (asm_op_is_mem_input): New fn.
+ (expand_asm_expr): New fn.
+ (warn_if_unused_value): Check operand 0 of SAVE_EXPR
+ nodes.
+ * stor-layout.c (layout_type): Just return if type is
+ error_mark_node.
+ (update_alignment_for_field): Export.
+ (variable_size): We don't care about global_bindings_p if
+ the frontend doesn't want a list of the expressions.
+ * system.h: Poison INTEGRATE_THRESHOLD.
+ * timevar.def (TV_TREE_GIMPLIFY, TV_TREE_EH, TV_TREE_CFG,
+ TV_TREE_CLEANUP_CFG, TV_TREE_PTA, TV_TREE_MAY_ALIAS,
+ TV_TREE_INSERT_PHI_NODES, TV_TREE_SSA_REWRITE_BLOCKS,
+ TV_TREE_SSA_OTHER, TV_TREE_OPS,
+ TV_TREE_SSA_DOMINATOR_OPTS, TV_TREE_SRA, TV_TREE_CCP,
+ TV_TREE_SPLIT_EDGES, TV_TREE_PRE, TV_TREE_PHIOPT,
+ TV_TREE_FORWPROP, TV_TREE_DCE, TV_TREE_CD_DCE,
+ TV_TREE_DSE, TV_TREE_LOOP, TV_TREE_CH,
+ TV_TREE_SSA_TO_NORMAL, TV_TREE_SSA_TO_NORMAL,
+ TV_TREE_NRV, TV_TREE_COPY_RENAME, TV_TREE_SSA_VERIFY,
+ TV_TREE_STMT_VERIFY, TV_DOM_FRONTIERS,
+ TV_CONTROL_DEPENDENCES): Define.
+ * toplev.c: Include tree-alias-common.h
+ (current_file_decl, flag_mudflap, flag_mudflap_threads,
+ flag_mudflap_ignore_reads, flag_tree_based_profiling,
+ flag_tree_gvn, flag_tree_points_to, flag_tree_ccp,
+ flag_tree_dce, flag_tree_ch, flag_tree_sra,
+ flag_tree_combine_temps, flag_tree_ter,
+ flag_tree_live_range_split, flag_tree_dom,
+ flag_tree_copyrename, flag_tree_dse): Declare.
+ (f_options): Add tree-based-profiling, tree-gvn,
+ tree-pre, tree-ccp, tree-dce,
+ tree-dominator-opts, tree-copyrename, tree-dse,
+ tree-combine-temps, tree-ter, tree-lrs and tree-ch.
+ (wrapup_global_declarations): Don't output nested inlined functions.
+ (general_init): Call init_tree_optimization_passes.
+ (process_options): Sorry for -ftree-based-profiling plus
+ -ftest-coverage or -fprofile-values.
+ * toplev.h (init_tree_optimization_passes,
+ flag_tree_based_profiling): Declare.
+ * tracer.c (tail_duplicate): Use cfghooks for bb duplication.
+ * tree-alias-ander.c: New file.
+ * tree-alias-ander.h: New file.
+ * tree-alias-common.c: New file.
+ * tree-alias-common.h: New file.
+ * tree-alias-type.c: New file.
+ * tree-alias-type.h: New file.
+ * tree-browser.c: New file.
+ * tree-browser.def: New file.
+ * tree-cfg.c: New file.
+ * tree-complex.c: New file.
+ * tree-dfa.c: New file.
+ * tree-dump.c (dump_enable_all): New.
+ (dequeue_and_dump): Do not handle EXPR_WITH_FILE_LOCATION.
+ (dump_node): Remove const from field suffix and swtch.
+ (dump_files): Add null entry, .generic, .nested, .vcg,
+ .xml and a match-all entry.
+ (extra_dump_files, extra_dump_files_in_use,
+ extra_dump_files_alloced): Declare
+ (dump_option_value_info): Add raw, details, stats,
+ blocks, vops, lineno, uid and all.
+ (dump_register): New.
+ (get_dump_file_info): New.
+ (dump_begin): Call it.
+ Do nothing for TDI_none.
+ (dump_begin): Include phase number in dump filename.
+ (dump_enable_all): New.
+ (dump_switch_p_1): Split out from dump_switch_p.
+ (dump_switch_p): Handle extra_dump_files.
+ Start our scan at TDI_none + 1.
+ If -fdump-tree-all was given, call dump_enable_all.
+ * tree-dump.h: Include splay-tree.h.
+ (dump_function, dump_function_to_file, dump_register):
+ Declare.
+ * tree-eh.c: New file.
+ * tree-flow-inline.h: New file.
+ * tree-flow.h: New file.
+ * tree-inline.c: Re-write to handle inlining on GIMPLE.
+ * tree-inline.h (walk_tree,
+ walk_tree_without_duplicates): Move to tree.h.
+ (estimate_num_insns): Declare.
+ * tree-into-ssa.c: New file.
+ * tree-iterator.c: New file.
+ * tree-iterator.h: New file.
+ * tree-mudflap.c: New file.
+ * tree-mudflap.h: New file.
+ * tree-nested.c: New file.
+ * tree-nomudflap.c: New file.
+ * tree-nrv.c: New file.
+ * tree-optimize.c (dump_flags, vars_to_rename,
+ in_gimple_form, all_passes, pass_gimple,
+ pass_rebuild_bind, pass_all_optimizations, pass_del_cfg): Declare.
+ (execute_gimple, execute_rebuild_bind,
+ gate_all_optimizations, execute_del_cfg,
+ register_one_dump_file, register_dump_files, dup_pass_1,
+ init_tree_optimization_passes, execute_todo,
+ execute_one_pass, execute_pass_list): New.
+ (clear_decl_rtl): Remove.
+ (tree_rest_of_compilation): Update to use tree
+ optimizers.
+ * tree-outof-ssa.c: New file.
+ * tree-pass.h: New file.
+ * tree-phinodes.c: New file.
+ * tree-pretty-print.c: New file.
+ * tree-profile.c: New file.
+ * tree-simple.c: New file.
+ * tree-simple.h: New file.
+ * tree-sra.c: New file.
+ * tree-ssa-alias.c: New file.
+ * tree-ssa-ccp.c: New file.
+ * tree-ssa-copy.c: New file.
+ * tree-ssa-copyrename.c: New file.
+ * tree-ssa-dce.c: New file.
+ * tree-ssa-dom.c: New file.
+ * tree-ssa-dse.c: New file.
+ * tree-ssa-forwprop.c: New file.
+ * tree-ssa-live.c: New file.
+ * tree-ssa-live.h: New file.
+ * tree-ssa-loop.c: New file.
+ * tree-ssa-operands.c: New file.
+ * tree-ssa-operands.h: New file.
+ * tree-ssa-phiopt.c: New file.
+ * tree-ssa-pre.c: New file.
+ * tree-ssa.c: New file.
+ * tree-ssanames.c: New file.
+ * tree-tailcall.c: New file.
+ * tree.c: Include tree-iterator.h, basic-block.h and
+ tree-flow.h.
+ (tree_node_kind): Add phi_nodes and ssa names.
+ (tree_size): Handle PHI_NODE, EPHI_NODE, SSA_NAME,
+ EUSE_NODE, EKILL_NODE, EEXIT_NODE and STATEMENT_LIST.
+ (make_node_stat): Handle PHI_NODE and SSA_NAME.
+ <'c'> Set TREE_INVARIANT.
+ (copy_node_stat): Abort if trying to copy a
+ STATEMENT_LIST.
+ Clear TREE_VISITED.
+ Clear annotation field.
+ (build_constructor): Copy TREE_INVARIANT from vals.
+ Don't clear TREE_CONSTANT.
+ (expr_first, expr_last, expr_length): Remove.
+ (staticp): Pass unknown component references to the language.
+ (save_expr): Check TREE_INVARIANT instead of TREE_CONSTANT.
+ (skip_simple_arithmetic): Likewise.
+ (stabilize_reference_1): Likewise.
+ (tree_node_structure): Handle PHI_NODE, EPHI_NODE,
+ EUSE_NODE, EKILL_NODE, EEXIT_NODE, SSA_NAME and
+ STATEMENT_LIST.
+ (lhd_unsave_expr_now): Remove.
+ (unsafe_for_reeval): Handle LABEL_EXPR and BIND_EXPR.
+ (recompute_tree_invarant_for_addr_expr): New.
+ (build1_stat): Clear EXPR_LOCUS and TREE_BLOCK.
+ Call recompute_tree_invarant_for_addr_expr.
+ Set TREE_INVARIANT accordingly.
+ (build2_stat): Don't handle CALL_EXPR.
+ (build3_stat): Don't call build2_stat for CALL_EXPRs.
+ (build_expr_wfl): Remove.
+ (annotate_with_file_line, annotate_with_locus): New.
+ (simple_cst_equal): Call simple_cst_list_equal to compare
+ CONSTRUCTOR_ELTS pointers.
+ (iterative_hash_expr): Don't hash types associated
+ with conversions. Instead hash on the signedness of the
+ toplevel object and the operand of the conversion.
+ (dump_tree_statistics): Call ssanames_print_statistics
+ and phinodes_print_statistics.
+ (ephi_node_elt_check_failed, phi_node_elt_check_failed,
+ add_var_to_bind_expr, build_empty_stmt, is_essa_node,
+ needs_to_live_in_memory): New.
+ (initializer_zerop): Handle VECTOR_CST. Don't check
+ AGGREGATE_TYPE_P for CONSTRUCTOR.
+ * tree.def (FILTER_EXPR, CASE_LABEL_EXPR, RESX_EXPR,
+ SSA_NAME, EUSE_NODE, EKILL_NODE, EPHI_NODE, EEXIT_NODE,
+ PHI_NODE, CATCH_EXPR, EH_FILTER_EXPR, STATEMENT_LIST): Define.
+ (GOTO_SUBROUTINE_EXPR): Change type to 's'.
+ (CALL_EXPR): Add another operand.
+ (EXPR_WITH_FILE_LOCATION): Remove.
+ (SWITCH_EXPR): Add another operand.
+ * tree.h: Update various comments.
+ (union tree_ann_d): Forward declare.
+ (struct tree_common): Add fields nowarning_flag,
+ invariant_flag and visited.
+ (EREF_NODE_CHECK, EPHI_NODE_ELT_CHECK,
+ PHI_NODE_ELT_CHECK, EREF_NODE_CHECK, PHI_NODE_ELT_CHECK,
+ EPHI_NODE_ELT_CHECK, TREE_BLOCK,
+ STRIP_USELESS_TYPE_CONVERSION, CALL_EXPR_TAILCALL,
+ TREE_NO_WARNING, FORCED_LABEL, TREE_INVARIANT,
+ IS_EMPTY_STMT, EXPR_LOCUS, SET_EXPR_LOCUS, EXPR_FILENAME,
+ EXPR_LINENO, EXPR_LOCATION, EXPR_HAS_LOCATION,
+ EXIT_EXPR_COND, SWITCH_COND, SWITCH_BODY, SWITCH_LABELS,
+ CASE_LOW, CASE_HIGH, CASE_LABEL, BIND_EXPR_VARS,
+ BIND_EXPR_BODY, BIND_EXPR_BLOCK, GOTO_DESTINATION,
+ ASM_STRING, ASM_OUTPUTS, ASM_INPUTS, ASM_CLOBBERS,
+ ASM_INPUT_P, ASM_VOLATILE_P, COND_EXPR_COND,
+ COND_EXPR_THEN, COND_EXPR_ELSE, LABEL_EXPR_LABEL,
+ CATCH_TYPES, CATCH_BODY, EH_FILTER_TYPES,
+ EH_FILTER_FAILURE, EH_FILTER_MUST_NOT_THROW,
+ SSA_NAME_VAR, SSA_NAME_DEF_STMT, SSA_NAME_VERSION,
+ SSA_NAME_OCCURS_IN_ABNORMAL_PHI, SSA_NAME_IN_FREE_LIST,
+ PHI_RESULT, PHI_REWRITTEN, PHI_NUM_ARGS,
+ PHI_ARG_CAPACITY, PHI_ARG_ELT, PHI_ARG_EDGE, PHI_ARG_DEF,
+ EREF_PROCESSED, EREF_ID, EREF_NAME, EREF_STMT,
+ EREF_RELOAD, EREF_SAVE, EREF_CLASS, EREF_INJURED,
+ EREF_TEMP, EUSE_DEF, EUSE_PHIOP, EUSE_INSERTED,
+ EUSE_LVAL, EPHI_NUM_ARGS, EPHI_ARG_CAPACITY,
+ EPHI_ARG_ELT, EPHI_ARG_EDGE, EPHI_ARG_PRED, EPHI_ARG_DEF,
+ EPHI_ARG_INJURED, EPHI_ARG_DELAYED_RENAME,
+ EPHI_ARG_HAS_REAL_USE, EPHI_ARG_STOPS,
+ EPHI_ARG_PROCESSED2, EPHI_IDENTITY, EPHI_IDENT_INJURED,
+ EPHI_REP_OCCUR_KNOWN, EPHI_IDENTICAL_TO, EPHI_DOWNSAFE,
+ EPHI_CANT_BE_AVAIL, EPHI_DEAD, EPHI_USES, EPHI_STOPS,
+ TREE_VISITED, SSA_VAR_P, DECL_NUM_STMTS,
+ DECL_HARD_REGISTER, DECL_PTA_ALIASVAR, LABEL_DECL_UID,
+ DECL_NEEDS_TO_LIVE_IN_MEMORY_INTERNAL,
+ STATEMENT_LIST_HEAD, STATEMENT_LIST_TAIL, TDF_RAW,
+ TDF_DETAILS, TDF_STATS, TDF_BLOCKS, TDF_VOPS, TDF_LINENO,
+ TDF_UID,): Define.
+ (TREE_NO_UNUSED_WARNING, EXPR_WFL_EMIT_LINE_NOTE,
+ EXPR_WFL_NODE, EXPR_WFL_FILENAME_NODE, EXPR_WFL_FILENAME,
+ EXPR_WFL_LINECOL, EXPR_WFL_LINENO, EXPR_WFL_COLNO,
+ EXPR_WFL_SET_LINECOL): Remove.
+ (phi_node_elt_check_failed, ephi_node_elt_check_failed,
+ make_phi_node, init_phinodes, fini_phinodes,
+ release_phi_node, phinodes_print_statistics,
+ init_ssanames, fini_ssanames, make_ssa_name,
+ release_ssa_name, ssanames_print_statistics,
+ annotate_with_file_line, build_empty_stmt,
+ annotate_with_locus, expr_only, categorize_ctor_elements,
+ count_type_elements, add_var_to_bind_expr, is_essa_node,
+ expand_stack_alloc, expand_stack_save,
+ expand_stack_restore, add_case_node, operand_equal_p,
+ nondestructive_fold_unary_to_constant,
+ nondestructive_fold_binary_to_constant,
+ fold_read_from_constant_string, int_const_binop,
+ strip_float_extensions, simplify_builtin, c_strlen,
+ recompute_tree_invarant_for_addr_expr,
+ needs_to_live_in_memory, make_vector,
+ setjmp_vars_warning, update_alignment_for_field,
+ expand_asm_expr, asm_op_is_mem_input,
+ containing_blocks_have_cleanups_or_stack_level,
+ create_artificial_label, gimplify_function_tree,
+ get_name, unshare_expr, walk_tree,
+ walk_tree_without_duplicates, in_gimple_form): Declare.
+ (struct tree_exp): Add fields locus and block.
+ (struct tree_ssa_name, struct edge_def, struct
+ tree_phi_node, struct tree_eref_common, struct
+ tree_euse_node, struct ephi_arg_d, struct tree_ephi_node,
+ union alias_var_def, struct tree_statement_list_node,
+ struct tree_statement_list, enum operand_equal_flag): Declare.
+ (enum tree_node_structure_enum): Add TS_SSA_NAME,
+ TS_PHI_NODE, TS_EPHI_NODE, TS_EUSE_NODE, TS_EREF_NODE,
+ TS_STATEMENT_LIST.
+ (union tree_node): Add fields ssa_name, phi, eref, ephi,
+ euse and stmt_list.
+ (function_cannot_inline_p, uninitialized_vars_warning,
+ save_for_inline, output_inline_function, all_cases_count,
+ check_for_full_enumeration_handling,
+ declare_nonlocal_label): Remove.
+ (enum tree_dump_index): Add TDI_none, TDI_tu,
+ TDI_generic, TDI_nested, TDI_vcg, TDI_xml.
+ * unroll.c (unroll_loop): Don't clear map->inline_target.
+ * unwind-sjlj.c (uw_install_context): Make a proper static inline
+ function.
+ * value-prof.c (value_prof_hooks): New.
+ (find_values_to_profile): Rename to rtl_find_values_to_profile.
+ Move rtl-specific bits in from branch_prob.
+ (value_profile_transformations): Rename to
+ rtl_value_profile_transformations.
+ (struct value_prof_hooks): New.
+ (rtl_value_prof_hooks): New.
+ (rtl_register_value_prof_hooks): New.
+ (tree_find_values_to_profile): New stub.
+ (tree_value_profile_transformations): New stub.
+ (tree_value_prof_hooks): New stub.
+ (tree_register_value_prof_hooks): New stub.
+ (find_values_to_profile): New.
+ (value_profile_transformations): New.
+ * value-prof.h: Add multiple inclusion guard.
+ (struct histogram_value): Change rtx fields to void *.
+ (rtl_register_value_prof_hooks): New declaration.
+ (tree_register_value_prof_hooks): New declaration.
+ (find_values_to_profile): New declaration.
+ (free_profiled_values): New declaration.
+ (value_profile_transformations): New declaration.
+ (struct profile_hooks): New declaration.
+ (init_branch_prob): Declaration moved from rtl.h.
+ (branch_prob): Declaration moved from rtl.h.
+ (end_branch_prob): Declaration mooved from rtl.h.
+ (tree_register_profile_hooks): New declaration.
+ (rtl_register_profile_hooks): New declaration.
+ (tree_profile_hooks): New declaration.
+ (rtl_profile_hooks): New declaration.
+ * varasm.c: Include tree-mudflap.h.
+ (TRAMPOLINE_ALIGNMENT): Remove.
+ (make_decl_rtl): Call mudflap_enqueue_decl.
+ (assemble_static_space):
+ (assemble_trampoline_template): Set and return
+ TRAMPOLINE_ALIGNMENT.
+ * varray.c (element): Add GENERIC_PTR_NOGC entry.
+ Add entry for 'tree *'.
+ Add entry for struct edge_def *.
+ (varray_copy): New.
+ * varray.h (enum varray_data_enum): Add
+ VARRAY_DATA_GENERIC_NOGC, VARRAY_DATA_EDGE and
+ VARRAY_DATA_TREE_PTR.
+ (union varray_data_tag): Corresponding changes.
+ (VARRAY_GENERIC_PTR_NOGC_INIT, VARRAY_EDGE_INIT,
+ VARRAY_TREE_PTR_INIT, VARRAY_GENERIC_PTR_NOGC,
+ VARRAY_EDGE, VARRAY_TREE_PTR,
+ VARRAY_PUSH_GENERIC_PTR_NOGC, VARRAY_PUSH_EDGE,
+ VARRAY_PUSH_TREE_PTR, VARRAY_TOP_GENERIC_PTR_NOGC,
+ VARRAY_TOP_EDGE, VARRAY_TOP_TREE_PTR): Define.
+
+ * config/*/*: Various updates for changed macros, tree
+ codes, etc. Check ChangeLog.tree-ssa.
+
+ * doc/cfg.texi: New file.
+ * doc/tree-ssa.texi: New file.
+ * doc/c-tree.texi: Document new codes.
+ * doc/gccint.texi: Include new files.
+ * doc/install.texi: Document new features.
+ * doc/invoke.texi: Document new switches.
+ * doc/passes.texi: Document new passes.
+ * doc/rtl.texi: Update changed RTL codes.
+ * doc/sourcebuild.texi: Update build instructions.
+ * doc/standards.texi: Document Fortran changes.
+ * doc/tm.texi: Update.
+
+2004-05-12 Paolo Bonzini <bonzini@gnu.org>
+
+ Replace several arrays with a struct of arrays.
+ * combine.c (struct reg_stat): New.
+ (init_reg_last_arrays): Renamed to...
+ (init_reg_last): ...this. Callers adjusted.
+ (reg_stat): New.
+ (combine_instructions): Allocate it and use it.
+ (reg_last_death, reg_last_set, reg_last_set_value,
+ reg_last_set_label, reg_last_set_table_tick,
+ reg_last_set_invalid, reg_nonzero_bits, reg_sign_bit_copies,
+ reg_last_set_mode, reg_last_set_nonzero_bits,
+ reg_last_set_sign_bit_copies): Replace throughout
+ with items of reg_stat.
+
+2004-05-11 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR optimization/15100
+ * combine.c (distribute_notes): Don't create a dangling
+ REG_LIBCALL/REG_RETVAL note.
+
+2004-05-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md (spe_evneg): Rename to negv2si2.
+
+ * config/rs6000/rs6000.c (bdesc_1arg): Change spe_evneg to
+ negv2si2.
+
+2004-05-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * doc/md.texi (Standard Names): Fix typo in vec_init description.
+
+2004-05-11 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/gty.texi (GTY Options): Clarify example.
+
+2004-05-11 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_handle_altivec_attribute):
+ Add const qualifier to altivec vector type if one is needed.
+
+2004-05-11 Paul Brook <paul@codesourcery.com>
+
+ * flags.h (flag_short_enums): Update comment.
+ * opts.c (decode_options): Set flag_short_enums to 2.
+ * toplev.c (flag_short_enums): Update comment.
+ (process_options): Call default_short_enums target hook.
+
+2004-05-11 Andrew Pinski <pinskia@gcc.gnu.org>
+
+ PR target/14063
+ * config/rs6000/altivec.md (altivec_dssall):
+ Change to unspec_volatile.
+ (altivec_dss): Likewise.
+
+2004-05-10 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/altivec.md ("one_cmplv16qi2"): Change vnot to
+ vnor.
+ ("one_cmplv8hi2"): Same.
+ ("one_cmplv4si2"): Same.
+
+2004-05-10 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR target/15130
+ * config/sh/sh-protos.h (sh_expand_epilogue): Change prototype.
+ * config/sh/sh.c (output_stack_adjust): Take the sibcall epilogue
+ into account. Compute the correct number of general registers
+ for the return value. Generate a special push/pop sequence when
+ failing to get a temporary register for non SHmedia epilogue.
+ (sh_expand_epilogue): Add an argument to show whether it's for
+ sibcall or not. Set the 3rd argument of output_stack_adjust to
+ -1 if needed.
+ (sh_need_epilogue): Call sh_expand_epilogue with 0.
+ * config/sh/sh.md (sibcall_epilogue): Call sh_expand_epilogue
+ with 1.
+ (epilogue): Call sh_expand_epilogue with 0.
+
+2004-05-10 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * gcse.c (eliminate_partially_redundant_loads): Instead of returning early,
+ goto a cleanup label. After the cleanup, free the allocated memory.
+
+2004-05-10 Ziemowit Laski <zlaski@apple.com>
+
+ * config/rs6000/altivec.h (vec_sld): Add overloads for
+ argument/return types of 'vector bool int', 'vector bool short'
+ and 'vector bool char'.
+
+2004-05-10 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (store_parm_decls_newstyle): Correct test for a
+ nested function.
+
+2004-05-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * read-rtl.c (read_rtx): Allow 's' and 'T' strings to be omitted,
+ treating missing ones as "".
+ * config/mips/mips.md: Remove constraints from match_operands and
+ match_scratches if they appear in define_expands (except reload*),
+ define_peephole2s, define_splits or attribute specifications.
+ * config/mips/7000.md, config/mips/sb1.md: Remove match_operand
+ constraint strings.
+
+2004-05-10 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (function_arg_boundary): Always align
+ AltiVec vectors.
+ (function_arg_advance): Pass TARGET_32BIT -mabi=no-altivec AltiVec
+ vectors by refererence. Align the same for TARGET_64BIT to a 16
+ byte boundary. Remove useless code. Add function comment.
+ (function_arg): Similarly. Move gpr rs6000_mixed_function_arg
+ call to where it belongs.
+ (function_arg_partial_nregs): Return true for all TARGET_32BIT
+ -mabi=no-altivec AltiVec vectors. Fix debug output.
+ (rs6000_va_arg): Adjust for AltiVec change.
+
+2004-05-10 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_promote_prototypes): Use TARGET_AAPCS_BASED.
+ * config/arm/arm.h (TARGET_AAPCS_BASED): Define.
+ (TARGET_DOUBLEWORD_ALIGN): Use it.
+ (WCHAR_TYPE): Define.
+ (WCHAR_SIZE_TYPE): Define.
+ (SIZE_TYPE): Define.
+
+2004-05-10 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (function_arg_boundary): Align for ABI_V4
+ when size is 8 bytes.
+ (function_arg_advance): Account for stack space used by AltiVec
+ args when -mabi=altivec. Simplify alignment calculations. For
+ ABI_V4, pass AltiVec vectors by reference when -mabi=no-altivec.
+ (function_arg): Similarly.
+ (function_arg_pass_by_reference): True for ABI_V4 AltiVec when
+ not AltiVec ABI.
+ (rs6000_va_arg): Correct fp arg test. Adjust for AltiVec change.
+ Correct alignment, and align before testing reg count. Remove
+ TREE_THIS_VOLATILE from reg. Don't emit unused labels.
+ (rs6000_complex_function_value): Check TARGET_HARD_FLOAT and
+ TARGET_FPRS here..
+ (rs6000_function_value): .. not here before call.
+
+2004-05-09 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md ("tstsflt_gpr"): Fix typo in unspec.
+
+2004-05-09 Zack Weinberg <zack@codesourcery.com>
+
+ PR 15007
+ * c-decl.c (current_file_decl): Rename to all_translation_units,
+ adjust comment.
+ (pop_scope): If popping file_scope, construct a
+ TRANSLATION_UNIT_DECL and make it the context of all the
+ symbols in the scope.
+ (push_file_scope): Don't construct a TRANSLATION_UNIT_DECL here.
+ (pushdecl): Clarify comment. Do not set DECL_CONTEXT of
+ anything to current_file_decl.
+ (pushdecl_top_level): Likewise.
+ (store_parm_decls_newstyle): Adjust check for nested function.
+ (c_write_global_declarations): Update for renamed variable.
+
+2004-05-09 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000-protos.h
+ (rs6000_conditional_register_usage): Protoize.
+
+ * config/rs6000/rs6000.c (rs6000_conditional_register_usage): New.
+
+ * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Call
+ function.
+
+2004-05-08 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_div_compare): New function to optimize X/C1 op C2
+ where op is a comparison operator and C1 and C2 are integer constants
+ into a range check.
+ (fold): Call fold_div_compare.
+
+2004-05-08 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/install.texi (sparc-sun-solaris2*): Document bootstrap
+ problems with earlier versions of the GNU compiler.
+
+2004-05-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000-protos.h (rs6000_hard_regno_mode_ok_p):
+ Declare.
+
+ * config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok_p): New.
+ (rs6000_hard_regno_mode_ok): New.
+ (rs6000_init_hard_regno_mode_ok): New.
+ (rs6000_override_options): Call rs6000_init_hard_regno_mode_ok.
+
+ * config/rs6000/rs6000.h (HARD_REGNO_NREGS): Use precomputed
+ result.
+
+2004-05-07 Ziemowit Laski <zlaski@apple.com>
+
+ * config/rs6000/altivec.h (vector, pixel, bool): Do not
+ define as macros #ifdef __APPLE_ALTIVEC__.
+
+2004-05-07 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_mixed_function_arg):
+ Generate appropriate parallels for vector arguments
+ passed to vararg functions. (function_arg): make the call
+ to rs6000_mixed_function_arg for vector args as needed.
+
+2004-05-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_va_arg): Fix calculation of osize for
+ EABI_FLOAT_VARARGS_P.
+
+2004-05-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (ISA_HAS_BRANCHLIKELY): Remove TARGET_MIPS5500.
+ * config/mips/mips.c (override_options): Disable branch likely
+ instructions if TUNE_MIPS5500.
+
+2004-05-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (override_options): Allow the hi and lo registers
+ to store any integral mode, not just MODE_INTs.
+
+2004-05-07 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_promote_prototypes): Use TARGET_AAPCS_BASED.
+ * config/arm/arm.h (TARGET_AAPCS_BASED): Define.
+ (TARGET_DOUBLEWORD_ALIGN): Use it.
+ (WCHAR_TYPE): Define.
+ (WCHAR_SIZE_TYPE): Define.
+ (SIZE_TYPE): Define.
+
+2004-05-07 Uros Bizjak <uros@kss-loka.si>
+
+ * config/i386/i386.c (ix86_emit_fp_unordered_jump): Use
+ testb $4, %ah insn instead of sahf insn if !TARGET_USE_SAHF.
+
+2004-05-07 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * loop-doloop.c (doloop_valid_p): Make sure that body
+ gets freed.
+
+2004-05-07 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * config/sparc/sparc-protos.h (sparc_skip_caller_unimp): New
+ declaration.
+ * config/sparc/sparc.c (SKIP_CALLERS_UNIMP_P): Delete.
+ (sparc_skip_caller_unimp): New global variable.
+ (sparc_function_epilogue): Set 'sparc_skip_caller_unimp'.
+ Use it instead of SKIP_CALLERS_UNIMP_P.
+ * config/sparc/sparc.md (call expander): Add sanity check.
+ (call_address_struct_value_sp32): Re-sync with expander.
+ (call_symbolic_struct_value_sp32): Likewise.
+ (return peepholes): Use 'sparc_skip_caller_unimp' instead
+ of custom predicate.
+
+2004-05-07 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c++/14962
+ * c-pragma.c (handle_pragma_redefine_extname): Only change
+ the assembler name of FUNCTION_DECLs and VAR_DECLs.
+
+2004-05-07 Uros Bizjak <uros@kss-loka.si>
+
+ * optabs.h (enum optab_index): Add new OTI_log1p.
+ (log1p_optab): Define corresponding macro.
+ * optabs.c (init_optabs): Initialize log1p_optab.
+ * genopinit.c (optabs): Implement log1p_optab using log1p?f2
+ patterns.
+ * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LOG1P{,F,L}
+ using log1p_optab.
+ (expand_builtin): Expand BUILT_IN_LOG1P{,F,L} using
+ expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
+
+ * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_FYL2XP1.
+
+ * config/i386/i386.c (ix86_emit_i387_log1p): New function.
+ * config/i386/i386-protos.h (ix86_emit_i387_log1p):
+ Prototype here.
+ * config/i386/i386.md (UNSPEC_FYL2XP1): New unspec to represent
+ x87's fyl2xp1 instruction.
+ (*fyl2x_xf3): Rename insn definition to fyl2x_xf3.
+ (fyl2xp1_xf3): New pattern to implement fyl2xp1 x87 instruction.
+ (log1psf2, log1pdf2, log1pxf2): New expanders to implement log1pf,
+ log1p and log1pl built-ins as inline x87 intrinsics.
+
+2004-05-07 Loren James Rittle <ljrittle@acm.org>
+
+ * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Proper redefinition.
+ * config/arm/freebsd.h: Likewise.
+ * config/ia64/freebsd.h: Likewise.
+ * config/sparc/freebsd.h: Likewise.
+
+2004-05-07 Hans-Peter Nilsson <hp@axis.com>
+
+ PR optimization/15296
+ * reorg.c (fill_simple_delay_slots): Use next_real_insn when
+ getting last consecutive label at a branch.
+ (relax_delay_slots): Similar, near top of loop.
+
+2004-05-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/15202
+ * pa.md (movdi, movsi, movhi, movqi): Support move from shift amount
+ register to general register.
+
+2004-05-07 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.h (STACK_BOUNDARY): Use 128 bit for either
+ TARGET_ALTIVEC or TARGET_ALTIVEC_ABI.
+ * config/rs6000/sysv4.h (ABI_STACK_BOUNDARY): Likewise.
+ (STACK_BOUNDARY): Delete.
+
+2004-05-06 Stuart Hastings <stuart@apple.com>
+
+ * gcc/doc/invoke.texi: Restore -fgcse-after-reload doc from 1.421,
+ mistakenly clobbered by 1.423.
+
+2004-05-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Document -mvr4130-align.
+ * config/mips/mips.h (MASK_VR4130_ALIGN, TARGET_VR4130_ALIGN)
+ (TUNE_MIPS4120, TUNE_MIPS4130): New macros.
+ (TUNE_MACC_CHAINS): Include TUNE_MIPS4120 and TUNE_MIPS4130.
+ (TARGET_SWITCHES): Add -mvr4130-align and -mno-vr4130-align.
+ * config/mips/mips.md: Include sched-int.h.
+ (USEFUL_INSN_P, SEQ_BEGIN, SEQ_END, FOR_EACH_SUBINSN): New macros.
+ (mips_rtx_costs): Set integer multiplication costs for TUNE_MIPS4130.
+ (override_options): Enable -mvr4130-align at -O3 and above.
+ (mips_sim_insn): New variable.
+ (mips_sim): New structure.
+ (mips_sim_reset, mips_sim_init, mips_sim_next_cycle, mips_sim_wait_reg)
+ (mips_sim_wait_regs_2, mips_sim_wait_regs_1, mips_sim_wait_regs)
+ (mips_sim_wait_units, mips_sim_wait_insn, mips_sim_record_set)
+ (mips_sim_issue_insn, mips_sim_issue_nop, mips_sim_finish_insn)
+ (vr4130_avoid_branch_rt_conflict, vr4130_align_insns): New functions.
+ (mips_reorg): Call vr4130_align_insns.
+ (vr4130_last_insn): New variable.
+ (vr4130_true_reg_dependence_p_1, vr4130_true_reg_dependence_p)
+ (vr4130_swap_insns_p, vr4130_reorder): New functions.
+ (mips_sched_reorder, mips_variable_issue): Hook in vr4130 code.
+ (mips_issue_rate): Return 2 for PROCESSOR_R4130.
+ (mips_use_dfa_pipeline_interface): Return true for the same.
+ * config/mips/4130.md: New file.
+ * config/mips/mips.md: Include it. Add a peephole2 to convert
+ "mult;mflo" into "mtlo;macc".
+ (*macc, *umul_acc_di, *smul_acc_di): Use $1 rather than $0 as the
+ target of maccs.
+ (*msac_using_macc): New pattern.
+
+2004-05-06 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/5500.md (ir_vr55_store): Set latency to 0.
+ (ir_vr55_hilo): Split into...
+ (ir_vr55_mfhilo, ir_vr55_mthilo): ...these new reservations.
+ (ir_vr55_imul_si, ir_vr55_imadd): Change latency to 5.
+ (ir_vr55_imul_di): Change latency to 9. Reserve vr55_mac for 4 cycles.
+ Add various multiplication bypasses.
+ * config/mips/mips.c (mips_rtx_costs): Adjust VR5500 costs for integer
+ multiplication.
+
+2004-05-06 Uros Bizjak <uros@kss-loka.si>
+
+ * config/i386/i386.md (*fscalexf4): Correct insn "mode"
+ attribute to "XF".
+
+2004-05-05 Uros Bizjak <uros@kss-loka.si>
+
+ * optabs.h (enum optab_index): Add new OTI_fmod and OTI_drem.
+ (fmod_optab, drem_optab): Define corresponding macros.
+ * optabs.c (init_optabs): Initialize fmod_optab and drem_optab.
+ * genopinit.c (optabs): Implement fmod_optab and drem_optab
+ using fmod?f3 and drem?f3 patterns.
+ * builtins.c (expand_builtin_mathfn_2): Handle BUILT_IN_FMOD{,F,L}
+ using fmod_optab and BUILT_IN_DREM{,F,L} using drem_optab.
+ (expand_builtin): Expand BUILT_IN_FMOD{,F,L} and
+ BUILT_IN_DREM{,F,L} using expand_builtin_mathfn_2 if
+ flag_unsafe_math_optimizations is set.
+
+ * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_FPREM_F,
+ UNSPEC_FPREM_U, UNSPEC_FPREM1_F and UNSPEC_FPREM1_U.
+
+ * config/i386/i386.c (ix86_emit_fp_unordered_jump): New function.
+ * config/i386/i386-protos.h (ix86_emit_fp_unordered_jump):
+ Prototype here.
+ * config/i386/i386.md (UNSPEC_FPREM_F, UNSPEC_FPREM_U,
+ UNSPEC_FPREM1_F, UNSPEC_FPREM1_U): New unspecs to represent x87's
+ fprem and fprem1 instructions.
+ (*x86_fnstsw_1): Change input parameter to (reg:CCFP 18).
+ Rename insn definition to x86_fnstsw_1.
+ (fpremxf4, fprem1xf4): New patterns to implement fprem and fprem1
+ x87 instructions.
+ (fmodsf3, fmoddf3, fmodxf3): New expanders to implement fmodf, fmod
+ and fmodl built-ins as inline x87 intrinsics.
+ (dremsf3, dremdf3, dremxf3): New expanders to implement dremf, drem
+ and dreml built-ins as inline x87 intrinsics.
+
+2004-05-05 Roger Sayle <roger@eyesopen.com>
+
+ * reload1.c (inherit_piecemeal_p): Mark parameters potentially unused.
+
+2004-05-05 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR driver/9822
+ * doc/invoke.texi (Spec Files): Remove documentation of %c.
+
+2004-05-05 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md: Update the msub define_split for new mflo/mfhi
+ representation.
+
+2004-05-06 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm-protots.h (vfp_mem_operand): Rename ...
+ (arm_coproc_mem_operand): ... To this.
+ * config/arm/arm.c (arm_legitimate_address_p): Allow ldrd modes.
+ (arm_legitimate_index_p): Ditto.
+ (vfp_mem_operand): Rename ...
+ (arm_coproc_mem_operand): ... To this. Handle writeback modes.
+ (vfp_secondary_reload_class): Use it.
+ (output_move_double): Use doubleword load/store instructions.
+ (arm_hard_regno_mode_ok): Only allow even reg pairs for ldrd.
+ * config/arm/arm.h (TARGET_LDRD): Define.
+ (EXTRA_CONSTRAINT_STR_ARM): Add 'Uy'.
+ * config/gcc/arm/arm.md (arm_movdi): Allow all valid memory operands.
+ New splitter for invalid doubleword loads.
+ * config/arm/iwmmxt.md (iwmmxt_arm_movdi): Use Uy constraint.
+ * config/arm/vfp.md (arm_movdi_vfp): Allow all valid memory operands.
+ * doc/md.texi: Document Uy constraint.
+
+2004-05-05 Jan Hubicka <jh@suse.cz>
+
+ PR opt/14980
+ * cgraphunit.c (cgraph_remove_unreachable_nodes): Deal properly with
+ inline clones.
+
+2004-05-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/15290
+ * config/i386/i386.c (ix86_split_to_parts): Use real_to_target
+ instead of REAL_VALUE_TO_TARGET_LONG_DOUBLE.
+
+2004-05-05 Mike Stump <mrs@apple.com>
+
+ * config/darwin-c.c (add_framework): Copy the directory name as it
+ can be freed later. Also, ensure we always allocate enough room
+ for the cached framework information.
+ (find_subframework_header): Keep track of the directory where the
+ subframework header was found.
+ (framework_construct_pathname): Speed up by not trying to re-add a
+ framework.
+ * cppfiles.c (search_path_exhausted): Arrange for the missing
+ header callback to be able to set the directory where the header
+ was found.
+ (cpp_get_dir): Add.
+ * cpplib.h (missing_header_cb): Add a parameter.
+ (cpp_get_dir): Add.
+
+2004-05-03 Mike Stump <mrs@apple.com>
+
+ * doc/invoke.texi (Directory Options): Document -iquote.
+ * doc/cpp.texi: Likewise.
+ * doc/cppopts.texi: Likewise.
+ * c-opts.c (c_common_missing_argument): Add -iquote processing.
+ (c_common_handle_option): Likewise.
+ * c.opt (iquote): Add.
+ * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -iquote.
+ * c-incpath.c (merge_include_chains): Update comment to use -iquote.
+
+ * c-opts.c (case OPT_I): Deprecate -I- support.
+ * doc/invoke.texi: Likewise.
+ * doc/cpp.texi: Likewise.
+ * doc/cppopts.texi: Likewise.
+
+2004-05-05 Steven Bosscher <stevenb@suse.de>
+
+ * basic-block.h (free_basic_block_vars): Update prototype.
+ * flow.c (free_basic_block_vars): Remove the keep_head_end_p
+ argument.
+ (life_analysis): Update call.
+ * ifcvt.c (if_convert): Likewise.
+ * sibcall.c (optimize_sibling_and_tail_recursive_call): Likewise.
+ * passes.c (rest_of_handle_final): Likewise.
+ (rest_of_compilation): Likewise.
+ * config/sh/sh.c (sh_output_mi_thunk): Likewise.
+
+ * emit-rtl.c (next_real_insn): Use INSN_P.
+ (prev_real_insn): Likewise.
+
+2004-05-05 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.md: Update the madd define_split for new mflo/mfhi
+ representation.
+
+2004-05-05 Paolo Bonzini <bonzini@gnu.org>
+
+ * config/rs6000/rs6000.c (build_opaque_vector_type):
+ New function.
+ (rs6000_init_builtins): Use it.
+
+2004-05-04 Bernard Giroud <bgiroud2@free.fr>
+
+ * gcc/gcc/vmsdbgout.c (vms_func_node, vms_func_ref): New.
+ (func_table): Change type from char ** to vms_func_ref.
+ (write_rtnbeg): Update to reflect func_table change. Use
+ fde->funcdef_number instead of rtnnum in output.
+ (write_rtnend, vmxdbgout_begin_function, vmsdbgout_init): Likewise.
+
+2004-05-04 Paolo Bonzini <bonzini@gnu.org>
+ Richard Henderson <rth@redhat.com>
+
+ PR target/14899
+
+ * c-common.c (vector_types_convertible_p): New function.
+ * c-typeck.c (comptypes): Recurse on vector types.
+ (convert_for_assignment): Use vector_types_convertible_p.
+ (digest_init): Use vector_types_convertible_p to check
+ validness of constant vector initializers; otherwise treat
+ them as scalars.
+ * tree.c (make_or_reuse_type): New.
+ (build_common_tree_nodes): Use it.
+ * cp/call.c (standard_conversion): Likewise.
+ * cp/typeck.c (comptypes): Recurse on vector types.
+ (convert_for_assignment): Use vector_types_convertible_p.
+
+2004-05-04 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.c (override_options): Default to no
+ generation of branch-likely operations when tuning for
+ CPUs where they tend to have a negative performance impact
+ (e.g., SB-1).
+
+2004-05-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (store_constructor_field): Don't call store_constructor
+ if bitsize is not a multiple of a byte.
+
+2004-05-04 Richard Sandiford <rsandifo@redhat.com>
+
+ * reload1.c (inherit_piecemeal_p): New function.
+ (emit_reload_insns): When reloading a group of hard registers, use
+ inherit_piecemeal_p to decide whether the values of individual hard
+ registers can be inherited.
+
+2004-05-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/ia64/t-ia64 (LIB2ADDEH): Remove gthr-gnat.c.
+ * config/s390/t-tpf (LIB2ADDEHDEP): Likewise.
+ * config/t-linux (LIB2ADDEHDEP): Likewise.
+
+2004-05-04 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/crti.asm: Push an even number of registers.
+ * config/arm/crtn.asm: And restore them. Load via sp.
+
+2004-05-04 Paolo Bonzini <bonzini@gnu.org>
+
+ * ggc-zone.c (ggc_alloc_zone_1): Add MEM_STAT_DECL parameter.
+ Collect overhead information.
+ (ggc_alloc_stat): New name of ggc_alloc. Add MEM_STAT_DECL
+ parameter and pass it through.
+ (ggc_alloc_typed_stat): New name of ggc_alloc_typed. Add
+ MEM_STAT_DECL parameter and pass it through.
+ (ggc_alloc_zone_stat): New name of ggc_alloc_zone. Add
+ MEM_STAT_DECL parameter and pass it through.
+
+2004-05-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000-protos.h: Protoize rs6000_hard_regno_nregs.
+
+ * config/rs6000/rs6000.c (rs6000_hard_regno_nregs): New.
+
+ * config/rs6000/rs6000.h (HARD_REGNO_NREGS): Call
+ rs6000_hard_regno_nregs.
+
+2004-05-03 Eric Christopher <echristo@redhat.com>
+
+ * config/s390/s390.c (s390_emit_prologue): Call unspec tpf
+ prologue insn instead of setting up call.
+ (s390_emit_epilogue): Ditto.
+ * config/s390/s390.md (prologue_tpf, epilogue_tpf): New patterns.
+ (define_constants): Add numbers for above patterns.
+
+2004-05-03 Eric Christopher <echristo@redhat.com>
+
+ * config/s390/s390.h (CONDITIONAL_REGISTER_USAGE): Move body...
+ * config/s390/s390.c (s390_conditional_register_usage): ...here.
+ * config/s390/s390-protos.h: Prototype.
+
+2004-05-03 Joe Buck <jbuck@welsh-buck.org>
+
+ * cppfiles.c (pchf_adder): Eliminate use of |= in d->have_once_only
+ assignment.
+
+2004-05-03 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.md: Fix branch length attribute definition.
+
+2004-05-03 Aldy Hernandez <aldyh@redhat.com>
+
+ * config.gcc: Remove --enable-altivec support.
+
+ * config/rs6000/altivec-defs.h: Remove.
+
+2004-05-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (svr4_profil): Don't apply on IRIX 5/6.
+ * fixinc/fixincl.x: Regenerate.
+
+2004-05-03 Uros Bizjak <uros@kss-loka.si>
+
+ * config/i386/i386.md (*fyl2x_sfxf3, *fyl2x_dfxf3): Remove insn
+ definition.
+ (log?f2, log10?f2, log2?f2): Reimplement expanders with
+ float_truncate insn.
+ (*fxtractsf3, *fxtractdf3): Remove insn definition.
+ (logb?f2): Reimplement expanders with float_truncate insn.
+
+2004-05-03 Graham Stott <graham.stott@btinternet.com>
+
+ PR 14718
+ * dwarf2out.c (dwarf2out_imported_module_or_decl): Use
+ force_type_die for CONST_DECL.
+
+2004-05-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (sparc64-*-solaris2*, sparcv9-*-solaris2*): Add
+ tm-dwarf2.h to tm_file.
+ (sparc-*-solaris2*): Add tm-dwarf2.h to tm_file for Solaris 7+.
+ * config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Delete.
+ (ASM_DEBUG_SPEC): Delete.
+
+2004-05-03 Uros Bizjak <uros@kss-loka.si>
+
+ * optabs.h (enum optab_index): Add new OTI_expm1.
+ (expm1_optab): Define corresponding macro.
+ * optabs.c (init_optabs): Initialize expm1_optab.
+ * genopinit.c (optabs): Implement expm1_optab using expm1?f2
+ patterns.
+ * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXPM1{,F,L}
+ using expm1_optab.
+ (expand_builtin): Expand BUILT_IN_EXPM1{,F,L} using
+ expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
+
+ * config/i386/i386.md (expm1df2, expm1sf2, expm1xf2): New expanders
+ to implement expm1, expm1f and expm1l built-ins as inline x87
+ intrinsics.
+
+2004-05-02 Alexandre Oliva <aoliva@redhat.com>
+
+ 2003-11-19 Richard Sandiford <rsandifo@redhat.com>
+ * config/frv/frv.md (*return_true, *return_false): New patterns.
+
+2004-05-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * rtl.h (PHI_NODE_P): Remove.
+
+2004-05-02 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ PR middle-end/14988
+ * function.c (assign_stack_local_1): Use BITS_PER_UNIT alignment
+ when passed -2 as 'align'.
+ (put_var_into_stack): Use 'bool' as the type for the three local
+ predicates. Adjust calls to put_reg_into_stack.
+ When passed a CONCAT, instruct put_reg_into_stack to use
+ a consecutive stack slot for the second part.
+ (put_reg_into_stack): Remove 'promoted_mode' parameter, add
+ 'consecutive_p' parameter. Turn the three predicates into 'bool'
+ parameters. Retrieve the register mode from 'reg'.
+ When consecutive_p is true, instruct assign_stack_local_1 to use
+ BITS_PER_UNIT alignment.
+ (put_addressof_into_stack): Use 'bool' as the type for the two
+ local predicates. Adjust call to put_reg_into_stack.
+
+2004-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c (fold_convert_const, fold): Add missing
+ FIX_ROUND_EXPR case.
+
+2004-05-02 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.ac (FLEX, BISON): Only use tools from the build tree
+ if build equals host.
+ * configure: Rebuilt.
+
+ * config/frv/frv-protos.h (frv_expand_epilogue,
+ frv_expand_fdpic_call): Add bool argument.
+ * config/frv/frv.c (frv_function_ok_for_sibcall): New.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Define to it.
+ (frv_expand_epilogue): Use new argument to decide whether to emit
+ return instruction or copy the return address to LR.
+ (frv_expand_fdpic_call): Inline PLT entry when emitting direct
+ sibcalls.
+ (sibcall_operand): New.
+ * config/frv/frv.h (PREDICATE_CODES): call_operand doesn't match
+ PLUS nor LABEL_REF. Add sibcall_operand.
+ * config/frv/frv.md (call, call_value): Pass false to
+ frv_expand_fdpic_call.
+ (call_fdpicdi, call_value_fdpicdi): Insert %i0 in calll.
+ (sibcall, sibcall_internal, sibcall_fdpicdi, sibcall_value,
+ sibcall_value_internal, sibcall_value_fdpicdi): New.
+ (return_unsigned_true, return_unsigned_false): New.
+ (epilogue): Adjust call to frv_expand_epilogue.
+ (sibcall_epilogue): New.
+
+ * config/frv/frv.h (ASM_SPEC): Pass -mno-fdpic as -mnopic.
+ (CPP_SPEC, CPP_SIMPLE_SPEC): Undefine __FRV_ACC__ and __FRV_FPR__
+ before redefining them.
+
+2004-05-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_fixed_mathfn): New function.
+ (fold_builtin_lround, fold_builtin): Use it.
+
+2004-05-01 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/linux64.h (TARGET_DEFAULT): Make 64-bit by default
+ also for TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3.
+
+2004-05-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/cris/cris.h: Revert my "fix comment typos" patch.
+
+2004-05-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (TUNE_MACC_CHAINS): Fix comment.
+
+2004-05-01 Falk Hueffner <falk@debian.org>
+
+ * config/alpha/alpha.md (builtin_insbl, builtin_inswl,
+ builtin_insll): Disallow 0 as first input operand.
+
+2004-05-01 Falk Hueffner <falk@debian.org>
+
+ * config/alpha/alpha.c (alpha_rtx_costs): Fix shiftadd costs.
+
+2004-05-01 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR middle-end/15054
+ * expr.c (expand_expr_real): Do not call preserve_temp_slots
+ on a TARGET_EXPR temp.
+ * function.c (assign_stack_temp_for_type): Set 'keep' flag for
+ TARGET_EXPR temp slots.
+
+2004-05-01 Paolo Bonzini <bonzini@gnu.org>
+
+ * simplify-rtx.c (simplify_ternary_operation): When
+ converting an IF_THEN_ELSE to a relational op, return
+ correct mode.
+
+2004-04-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin_round): Fix comment typo.
+ (fold_builtin_lround): New function.
+ (fold_builtin): Use it.
+
+2004-04-20 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/11608
+ * config/sh/elf.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Update and make it
+ more like the one in config/dbxelf.h.
+
+2004-04-30 Zack Weinberg <zack@codesourcery.com>
+
+ * tree.h (SET_ARRAY_OR_VECTOR_CHECK): Rename to SET_OR_ARRAY_CHECK
+ and adjust definition accordingly.
+ (TYPE_DOMAIN): Allow only SET_TYPE and ARRAY_TYPE.
+ (TYPE_DEBUG_REPRESENTATION_TYPE): Allow only VECTOR_TYPE.
+ * expr.c (store_constructor): Do not access TYPE_DOMAIN of a
+ VECTOR_TYPE.
+
+2004-04-30 Jason Merrill <jason@redhat.com>
+
+ PR c++/14587
+ * config/i386/winnt.c (associated_type): Look for attributes on
+ the TYPE_MAIN_VARIANT of *this.
+ * attribs.c (decl_attributes): If ATTR_FLAG_TYPE_IN_PLACE, also
+ apply the attributes to the variants.
+
+2004-04-30 Paul Brook <paul@codesourcery.com>
+
+ * config.gcc: Simplify arm --with-{cpu,tune} test.
+ * config/arm/arm-cores.def: Document whitespace restrictions.
+
+2004-04-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR other/1963
+ * config/alpha/osf.h (SWITCHES_NEED_SPACES): Define.
+
+2004-04-30 Brian Ford <ford@vss.fsi.com>
+ DJ Delorie <dj@redhat.com>
+
+ * config/i386/cygming.h [HAVE_GAS_PE_SECREL32_RELOC]
+ (DWARF2_DEBUGGING_INFO): Define to enable.
+ (DBX_REGISTER_NUMBER): Define to use the svr4 register map for
+ DWARF2.
+ * configure.ac (Target-specific assembler checks)
+ <i[34567]86-*-[cygwin*|pe|mingw32*]>: New test for .secrel32
+ relocs.
+ * configure: Regenerate.
+ * config.in: Likewise.
+
+ * config/i386/cygming.h [HAVE_GAS_PE_SECREL32_RELOC]
+ (ASM_OUPUT_DWARF_OFFSET): Define.
+
+2004-04-29 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_emit_epilogue): Parameter added.
+ (s390_emit_call): New function prototype added.
+ (s390_tls_get_offset): Function removed.
+ * config/s390/s390.c (s390_function_ok_for_sibcall,
+ s390_call_saved_register_used_p): New functions.
+ (TARGET_FUNCTION_OK_FOR_SIBCALL): Definition of target macro added.
+ (s390_tls_get_offset): Function merged into s390_emit_tls_call_insn.
+ (s390_emit_tls_call_insn): New function.
+ (legitimize_tls_address): Call s390_emit_tls_call_insn instead of
+ emit_call_insn.
+ (s390_emit_prologue): Use s390_emit_call instead of emit_call_insn.
+ (s390_emit_epilogue): Like s390_emit_prologue. Parameter for sibcalls
+ added.
+ * config/s390/s390.h (SIBCALL_REGNUM): New macro representing the
+ register number used to hold the target address for sibcalls.
+ * config/s390/s390.md ("sibcall", "sibcall_value", "sibcall_epilogue"):
+ New expanders.
+ ("*sibcall_br", "*sibcall_brc", "*sibcall_brcl", "*sibcall_value_br",
+ "*sibcall_value_brc", "*sibcall_value_brcl"): New insns.
+ ("call_exp", "call_value_exp", "call_value_tls", "call_value_tls_exp"):
+ Expanders removed.
+ ("call", "call_value"): Call s390_emit_call to emit the call patterns.
+ ("*bras", "*brasl", "*bras_r", "*brasl_r", "*bras_tls", "*brasl_tls",
+ "*basr", "*basr_r", "*basr_tls"): Added constraint: !SIBLING_CALL_P.
+ ("epilogue"): Changed the call to s390_emit_epilogue to use the
+ new parameter.
+
+2004-04-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bb-reorder.c, c-opts.c, cfglayout.c, cgraph.c, cgraphunit.c,
+ cppfiles.c, fold-const.c, ggc-zone.c, loop-doloop.c, optabs.c,
+ reg-stack.c, varasm.c, config/alpha/ev4.md,
+ config/alpha/ev5.md, config/alpha/ev6.md, config/arm/arm.c,
+ config/c4x/c4x.c, config/c4x/c4x.md, config/cris/cris.c,
+ config/cris/cris.h, config/fr30/fr30.h, config/frv/frv.c,
+ config/frv/frv.h, config/frv/frv.md, config/h8300/h8300.c,
+ config/i386/i386.c, config/i386/i386.md, config/i386/winnt.c,
+ config/ia64/itanium2.md, config/ip2k/ip2k.c,
+ config/mips/mips.c, config/mips/mips.h, config/mips/sr71k.md,
+ config/pa/pa.c, config/s390/s390.c, config/sh/sh.c: Fix
+ comment typos.
+
+2004-04-30 Paul Brook <paul@codesourcery.com>
+
+ * config.gcc: Default ep9312 to hard-float.
+ * config/arm/arm-cores.def: Add ARCH field.
+ * config/arm/arm.c (FL_FOR_ARCH*): Define.
+ (arm_arch_cirrus): New variable.
+ (all_cores): Set and use arch.
+ (all_architectures): Ditto.
+ (arm_arch_name): New variable.
+ (arm_override_options): Set it. Use [SUB]TARGET_CPU_DEFAULT.
+ Set and use arm_arch_cirrus.
+ * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Set arch defines.
+ (enum processor_type): Update ARM_CORE define.
+ (enum target_cpus): Add. Replaces TARGET_CPU_* defines.
+ (CPP_SPEC): Remove %(cpp_cpu_arch).
+ (CPP_ARCH_DEFAULT_SPEC): Remove.
+ (CPP_CPU_ARCH_SPEC): Remove.
+ (EXTRA_SPECS): Don't use CPP_*ARCH*_SPEC.
+ (FPUTYPE_DEFAULT): Don't define here.
+
+2004-04-30 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * flow.c (propagate_one_insn): Call mark_set_regs for stack pointer
+ updates too.
+
+2004-04-30 Paul Brook <paul@codesourcery.com>
+
+ * arm.c (arm_needs_doubleword_align): Use mode alignment.
+
+2004-04-30 Paolo Bonzini <bonzini@gnu.org>
+
+ * config/altivec/altivec.h [__cplusplus] (vec_subsubs): Rename to
+ vec_sububs.
+ [__cplusplus] (vec_subsuhs): Rename to vec_subuhs, without
+ duplicates.
+
+2004-04-30 Uros Bizjak <uros@kss-loka.si>
+
+ * config/i386/i386.md (atansf2, atandf2, atanxf2): Move near
+ atan2?f3 expanders.
+
+2004-04-29 Nick Clifton <nickc@redhat.com>
+
+ Bug 14093
+ * config/sh/sh-protos.h (sh_promote_prototypes): Declare.
+ * config/sh/sh.c (sh_promote_prototypes): Remove declaration.
+ Delete static from definition.
+ * config/sh/sh.h (FUNCTION_VALUE): Add sh_promote_prototypes call.
+
+2004-04-30 Uros Bizjak <uros@kss-loka.si>
+
+ * reg-stack.c (subst_stack_regs_pat): <UNSPEC_SIN, UNSPEC_COS,
+ UNSPEC_FRNDINT, UNSPEC_F2XM1>: abort() if src1 dies.
+ <UNSPEC_SINCOS_COS, UNSPEC_TAN_ONE, UNSPEC_XTRACT_FRACT>: Same.
+ <UNSPEC_SINCOS_SIN, UNSPEC_TAN_TAN, UNSPEC_XTRACT_EXP>: Same.
+
+2004-04-29 Richard Guenther <richard.guenther@uni-tuebingen.de>
+
+ * commom.opt (Wfatal-errors): Add it.
+ * diagnostic.c (flag_fatal_errors): Define it.
+ (diagnostic_action_after_output): Check for flag_fatal_errors.
+ * flags.h (flag_fatal_errors): Declare it.
+ * opts.c (common_handle_option): Add OPT_Wfatal_errors.
+ * doc/invoke.texi (Warning Options): Document -Wfatal-errors.
+
+2004-04-30 Josef Zlomek <zlomekj@suse.cz>
+
+ * gcse.c (remove_reachable_equiv_notes): Delete notes also in
+ blocks which have kill flag set.
+
+2004-04-29 Ben Elliston <bje@au.ibm.com>
+
+ * configure.ac (--with-as): Abort if user-supplied assembler
+ cannot be executed.
+ (--with-ld): Likewise for the linker.
+ * configure: Regenerate.
+
+2004-04-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * convert.c (convert_to_integer): Ensure `long_integer_type_node'
+ isn't NULL before using it.
+
+2004-04-29 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/15189
+ * config/mips/mips.md (load_df_low): Use default length.
+ (load_df_high, store_df_high): Likewise.
+
+2004-04-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mips/mips.md, config/mips/sb1.md,
+ config/rs6000/rs6000.c: Fix comment typos.
+
+2004-04-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c, cgraph.c, cgraphunit.c, final.c, fold-const.c:
+ Fix comment typos.
+
+2004-04-29 Douglas B Rupp <rupp@gnat.com>
+
+ * gcc.c (DELETE_IF_ORDINARY): New macro default definition.
+ (delete_if_ordinary): Use above macro.
+ * config/alpha/xm-vms.h (DELETE_IF_ORDINARY): New macro VMS definition.
+ Update copyright.
+ * doc/hostconfig.texi (DELETE_IF_ORDINARY): Document new macro.
+
+2004-04-29 Richard Earnshaw <rearnsha@arm.com>
+
+ * c-decl.c (get_parm_info): Use the correct tag keywords when
+ warning about type declarations in prototypes.
+
+2004-04-29 Paul Brook <paul@codesourcery.com>
+
+ * config.gcc: Pull list of cores from arm-cores.def.
+
+2004-04-29 Paolo Bonzini <bonzini@gnu.org>
+
+ * combine.c (combine_simplify_rtx): Adjust call to use
+ simplify_relational_operation. Do not use SELECT_CC_MODE
+ when a comparison already has a MODE_CC mode.
+
+2004-04-29 Paolo Bonzini <bonzini@gnu.org>
+
+ (simplify_set): simplify_relational_operation may now
+ return another relational expression.
+ * cse.c (fold_rtx): simplify_relational_operation now
+ takes of computing the comparison mode.
+ * dojump.c (compare_from_rtx): Use simplify_relational_operation,
+ remove dead code.
+ (do_compare_rtx_and_jump): Likewise.
+ * integrate.c (subst_constants): simplify_relational_operation
+ may now return another relational expression.
+ * simplify-rtx.c (simplify_gen_relational): Move most code to
+ the new simplify_relational_operation and
+ simplify_relational_operation_1 functions.
+ (simplify_relational_operation): Rewritten.
+ (simplify_relational_operation_1): New function.
+ (simplify_ternary_operation): simplify_relational_operation
+ may now return another relational expression.
+ (simplify_rtx): Remove unnecessary temp variable.
+
+2004-04-29 Uros Bizjak <uros@kss-loka.si>
+
+ * reg-stack.c (swap_to_top): New function.
+ (subst_stack_regs_pat): UNSPEC_FPATAN, UNSPEC_FYL2X: Use
+ swap_to_top().
+ (subst_stack_regs_pat): UNSPEC_FSCALE: Remove.
+ (subst_stack_regs_pat): Handle UNSPEC_FSCALE_FRACT and
+ UNSPEC_FSCALE_EXP.
+
+ * config/i386/i386.md (UNSPEC_FSCALE): Remove.
+ (*fscale_sfxf3, *fscale_dfxf3, *fscale_xf3): Remove insn pattern.
+ (UNSPEC_FSCALE_FRACT, UNSPEC_FSCALE_EXP): New unspecs to represent
+ x87's fscale insn.
+ (*fscalexf4: Define new insn pattern to implement x87 fscale insn.
+ (exp?f2, exp10?f2, exp2?f2): Use *fscalexf4 and float_truncate
+ patterns.
+
+2004-04-28 Serge Belyshev <1319@bot.ru>
+
+ PR 14944
+ * coverage.c (read_counts_file): Fix usage of warning () call.
+ * pretty-print.c (pp_base_format_text): Fix typo in the comment.
+
+2004-04-28 Ben Elliston <bje@au.ibm.com>
+
+ * doc/invoke.texi (Objective-C Dialect Options): Don't prefix
+ options with "-" in the option index.
+ (SPARC Options): Likewise.
+ (M32R/D Options): Likewise.
+
+2004-04-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * convert.c (convert_to_integer): Convert (long)round -> lround,
+ etc.
+
+2004-04-28 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.c (registers_ok_for_quad_peep):
+ Return false if we do not have fp register.
+ (addrs_ok_for_quad_peep): Rename to ...
+ (mems_ok_for_quad_peep): this.
+ Add check for volatile memory.
+ * config/rs6000/rs6000-protos.h (addrs_ok_for_quad_peep):
+ Rename to ...
+ (mems_ok_for_quad_peep): this.
+ * config/rs6000/rs6000.md: Change peephole's for lfq/stq
+ to peephole2's.
+ (lfq_power2): New instruction.
+ (stfq_power2): Likewise.
+
+2004-04-28 Jan Hubicka <jh@suse.cz>
+
+ PR c/15004
+ * function.c (do_warn_unused_parameter): Break out form ...
+ (expand_function_end): ... here; warn only when not using cgraphunit.
+ * function.h (do_warn_unused_parameter): Declare.
+ * cgraphunit.c: Include function.h.
+ (cgraph_finalize_function): Do unused parameter warning.
+ * Makefile.in (cgraphunit.o): Depend on function.h
+
+2004-04-28 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * Makefile.in ($(DESTDIR)$(infodir)/%.info): Don't condition
+ calling install-info on $(DESTDIR)$(infodir)/dir already being
+ present.
+
+2004-04-28 Paul Brook <paul@codesourcery.com>
+
+ * dwarf2out.c (mem_loc_descriptor): Handle shifts.
+
+2004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * gcse.c (find_moveable_store): Do not accept store insns with
+ REG_EH_REGION note.
+
+2004-04-28 Paul Brook <paul@codesourcery.com>
+
+ * calls.c (precompute_arguments): Remove PROMOTE_FOR_CALL_ONLY.
+ * function.c (assign_temp): Ditto.
+ * system.h (PROMOTE_FOR_CALL_ONLY): Poison.
+
+2004-04-28 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/lib1funcs.asm: Recognize armv5tej and armv6.
+
+2004-04-28 Josef Zlomek <zlomekj@suse.cz>
+
+ * var-tracking.c (variable_different_p): Add a parameter
+ compare_current_location, compare current location of variable parts
+ if it is true.
+ (dataflow_set_different_1): Pass compare_current_location == false.
+ (dataflow_set_different_2): Pass compare_current_location == false.
+ (emit_notes_for_differences_1): Pass compare_current_location == true.
+
+2004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("casesi"): Mark jump table access as
+ non-trapping and unchanging.
+
+2004-04-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR debug/14829
+ * dwarf2out.c (reg_number): Rename to dbx_reg_number. Adjust all
+ callers.
+ (multiple_reg_loc_descriptor, reg_loc_descriptor): Use gcc register
+ number for indexing hard_regno_nregs array.
+
+2004-04-27 Geoffrey Keating <geoffk@apple.com>
+
+ * config/darwin.h (STARTFILE_SPEC): Use %s to find crt2.o.
+ * config/darwin-crt2.c: Only have contents on __ppc__.
+
+2004-04-27 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (call_insn_operand): Check
+ SYMBOL_REF_EXTERNAL_P in addition to SYMBOL_REF_LOCAL_P.
+ * config/xtensa/xtensa.h (LEGITIMATE_PIC_OPERAND): Likewise.
+ * config/xtensa/xtensa.md (call, call_value): Likewise.
+
+2004-04-27 Wu Yongwei <adah@sh163.net>
+
+ * gthr-win32.h (__gthread_mutex_t): Change typedef to new structure.
+ (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
+ (__gthread_mutex_init_function): Replace CreateMutex with
+ initialization of custom mutex using CreateSemaphore.
+ (__gthread_mutex_lock): Use InterlockedIncrement.
+ (__gthread_mutex_trylock): Use InterlockedCompareExchange.
+ (__gthread_mutex_unlock): Use InterlockedDecrement and
+ ReleaseSemaphore to unlock
+ * config/i386/gthr-win32.c (__gthread_mutex_init_function,
+ __gthread_mutex_lock, __gthread_mutex_trylock,
+ __gthread_mutex_unlock): Adjust to match inline versions in
+ gthr-win32.h.
+
+2004-04-27 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_promote_prototypes): New function.
+ (TARGET_PROMOTE_PROTOTYPES): Use it.
+
+2004-04-27 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_expand_epilogue): Count blocks of 4 regs.
+
+2004-04-26 Bernard Giroud <bgiroud@free.fr>
+
+ * config/alpha.c (alpha_end_function): For OpenVMS gas,
+ correctly output .pdesc directive before .end.
+
+2004-04-26 James E Wilson <wilson@specifixinc.com>
+
+ Bug 14927
+ * config/ia64/ia64.md (movxf): New local op0. Handle case where
+ operands[0] is a SUBREG. Handle case where operands[1] is a GR reg.
+
+2004-04-26 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/hpux.h: Predefine __STDCPP__ when compiling C++.
+ * config/pa/pa-hpux10.h: Likewise.
+ * config/pa/pa-hpux11.h: Likewise.
+
+2004-04-26 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/invoke.texi (Overall Options): Document default for -o
+ for PCH files.
+
+2004-04-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * builtins.c (expand_builtin_update_setjmp_buf): New function.
+ (expand_builtin, case BUILT_IN_UPDATE_SETJMP_BUF): New case.
+ * builtins.def (BUILT_IN_UPDATE_SETJMP_BUF): New code.
+
+2004-04-26 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_legitimate_index_p): Correct iwmmxt offsets.
+
+2004-04-26 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_legitimate_index_p): Correct maverick offsets.
+
+2004-04-25 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold): Prefer fold_convert (negate_expr (...)) to
+ fold (build1 (NEGATE_EXPR, ...)). Optimize X / -1 as -X and
+ X % -1 as 0.
+
+2004-04-26 Hans-Peter Nilsson <hp@bitrange.com>
+
+ PR bootstrap/15141
+ * except.c (connect_post_landing_pads): Delete insns after the
+ barrier when generating a unwind_resume_libfunc call.
+
+2004-04-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ PR/c++ 15119
+ * tree.c (substitute_placeholder_in_expr, case 4): New case,
+ for TARGET_EXPR.
+
+2004-04-25 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * gcov-io.h (__gcov_fork, __gcov_execl, __gcov_execlp, __gcov_execle,
+ __gcov_execv, __gcov_execvp, __gcov_execve): Do not declare when
+ inhibit_libc is defined.
+
+2004-04-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_linked_macc_p): Declare.
+ * config/mips/mips.h (TUNE_MACC_CHAINS): New macro.
+ * config/mips/mips.c (TARGET_SCHED_REORDER): Define.
+ (TARGET_SCHED_VARIABLE_ISSUE): Define.
+ (mips_adjust_cost): Move later in file, next to other sched hooks.
+ (mips_macc_chains_last_hilo): New variable.
+ (mips_linked_madd_p, mips_macc_chains_record, mips_macc_chains_reorder)
+ (mips_promote_ready, mips_sched_reorder, mips_variable_issue): New.
+ * config/mips/mips.md (may_clobber_hilo): New attribute.
+
+2004-04-24 Roger Sayle <roger@eyesopen.com>
+ Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def (aix_syswait_2): New fix.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/sys/wait.h: Update for new test.
+
+2004-04-24 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14960
+ * config/rs6000/rs6000.c (rs6000_stack_info): Rename total_raw_size
+ to non_fixed_size, and leave out fixed_size from the sum.
+ (generate_set_vrsave): Correct clobbers.
+ (rs6000_emit_epilogue): Test TARGET_ALTIVEC with TARGET_ALTIVEC_SAVE.
+ (rs6000_function_value): Test TARGET_ALTIVEC and TARGET_ALTIVEC_ABI.
+ (rs6000_libcall_value): Likewise.
+ * config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Likewise.
+ (FUNCTION_ARG_REGNO_P): Likewise.
+
+2004-04-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * expmed.c (expand_mult_highpart_adjust): Do not assume OP1
+ is a CONST_INT.
+ (expand_mult_highpart_optab): Call expand_mult_highpart_adjust
+ with NARROW_OP1 instead of OP1.
+
+2004-04-24 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for __s390__
+ and __s390x__ hosts.
+
+2004-03-23 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (LIBGCOV): Add _gcov_fork, _gcov_execl, _gcov_execlp,
+ _gcov_execle, _gcov_execv, _gcov_execvp, _gcov_execve.
+ * builtin-types.def (BT_PID, BT_PTR_CONST_STRING, BT_FN_PID,
+ BT_FN_INT_CONST_STRING_PTR_CONST_STRING,
+ BT_FN_INT_CONST_STRING_PTR_CONST_STRING_PTR_CONST_STRING): New.
+ * builtins.c (expand_builtin_fork_or_exec): New.
+ (expand_builtin): Call it.
+ * builtins.def (BUILT_IN_EXECL, BUILT_IN_EXECLP,BUILT_IN_EXECLE,
+ BUILT_IN_EXECV, BUILT_IN_EXECVP, BUILT_IN_EXECVE, BUILT_IN_FORK): New.
+ * c-common.c (PID_TYPE): New macro.
+ (c_common_nodes_and_builtins): Initialize pid_type_node.
+ * calls.c (special_function_p): Do not handle fork and exec.
+ (expand_call): Do not handle ECF_FORK_OR_EXEC.
+ * gcov-io.h (__gcov_fork, __gcov_execl, __gcov_execlp, __gcov_execle,
+ __gcov_execv, __gcov_execvp, __gcov_execve): Declare.
+ * libgcov.c (__gcov_fork, __gcov_execl, __gcov_execlp, __gcov_execle,
+ __gcov_execv, __gcov_execvp, __gcov_execve): New.
+ * tree.h (enum tree_index): Add TI_PID_TYPE.
+ (pid_type_node): New macro.
+ (ECF_FORK_OR_EXEC): Removed.
+
+2004-04-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/13985
+ * cfgloopmanip.c (fix_loop_placements): New prototype.
+ Call fix_bb_placements on the preheader of loops that have
+ been reparented.
+ (remove_path): Adjust call to fix_loop_placements.
+
+2004-04-23 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/darwin7.h: New file.
+ * config.gcc (*-*-darwin*): Add darwin7.h if the
+ version is greater than 6.
+ * config/darwin.h (TARGET_C99_FUNCTIONS): Define.
+ (MATH_LIBRARY): Wrap in ifdefs.
+
+2004-04-23 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/arm/arm.c (arm_output_epilogue): Reverse the order of
+ loading iWMMXt registers with a frame pointer. Use post-increment
+ without a frame pointer.
+ (arm_expand_prologue): Reverse the order of saving iWMMXt registers.
+
+2004-04-23 Paolo Bonzini <bonzini@gnu.org>
+
+ * doc/invoke.texi (Optimize Options): Refer to "unit-at-a-time
+ mode" rather than "-funit-at-a-time" since -O2 enables it
+ without requiring -f* options. Refer to -fprofile-generate and
+ -fprofile-use correctly. Move -funit-at-a-time among options
+ enabled by -O. Add information about unit-at-a-time caveats.
+
+2004-04-22 Per Bothner <per@bothner.com>
+
+ * line-map.h (struct line_maps): New field highest_line.
+ (linemap_position_for_column): Make non-inline function.
+ (LINEMAP_POSITION_FOR_COLUMN): New macro.
+ * line-map.c (linemap_init): Clear highest_line field.
+ (linemap_add): Set highest_line field.
+ (linemap_line_start): Minor optimization - use highest_line field.
+ Reduce maximum column hint to 10000. Update highest_line field.
+ (linemap_position_for_column): Moved from line-map.h. Optimize a bit.
+ * cpphash.h (struct cpp_reader): Remove line field - instead use
+ line_table->highest_line.
+ (saved_line): Remove unused field.
+ (CPP_INCREMENT_FILE): Don't do linemap_lookup - just use newest map.
+ Use line_table's highest_line field instead of cpp_reader's line.
+ * cpplib.c (start_directive): Likewise use highest_line field.
+ (do_line, do_linemarker): Likewise just use newest map.
+ (_cpp_do_file_change): Don't need to set cpp_reader's line field.
+ * cpperror.c (cpp_error): Likewise use highest_line field.
+ * cppfiles.c (open_file_failed: Likewise.
+ (cpp_make_system_header): Likewise use newest map and highest_line.
+ * cppinit.c (cpp_create_reader): Don't initialize removed field.
+ * cpplex.c (_cpp_process_line_notes, _cpp_skip_block_comment,
+ skip_line_comment, skip_whitespace, _cpp_get_fresh_line,
+ _cpp_lex_direct): Likewise use highest_line.
+ (_cpp_lex_direct): Use new LINEMAP_POSITION_FOR_COLUMN macro.
+ * cppmacro.c (_cpp_builtin_macro_text): Likewise use highest_line,
+ and use newest map.
+ * cpppch.c (cpp_read_state): Don't save+restore cpp_reader's line.
+ * cpptrad.c (_cpp_overlay_buffer): Don't save cpp_reader's line.
+ (copy_comment, _cpp_scan_out_logical_line): Likewise use highest_line.
+
+2004-04-23 Alan Modra <amodra@bigpond.net.au>
+
+ PR bootstrap/14992
+ * gcc.c (init_gcc_specs): Test USE_LD_AS_NEEDED, not HAVE_LD_AS_NEEDED.
+ * config/linux.h (USE_LD_AS_NEEDED): Define.
+ * gcc/config/alpha/linux.h (USE_LD_AS_NEEDED): Define.
+ * gcc/config/arm/linux-elf.h (USE_LD_AS_NEEDED): Define.
+ * gcc/config/rs6000/linux.h (USE_LD_AS_NEEDED): Define.
+ * gcc/config/rs6000/linux64.h (USE_LD_AS_NEEDED): Define.
+ * gcc/config/sh/linux.h (USE_LD_AS_NEEDED): Define.
+ * gcc/config/sparc/linux.h (USE_LD_AS_NEEDED): Define.
+ * gcc/config/sparc/linux64.h (USE_LD_AS_NEEDED): Define.
+
+2004-04-22 Per Bothner <per@bothner.com>
+
+ * cppinit.c (cpp_read_main_file): Return NULL rather than false.
+ Fixes PR preprocessor/15067.
+
+2004-04-23 Andreas Schwab <schwab@suse.de>
+
+ * config/ia64/ia64intrin.h: Add intermediate cast to void * to
+ avoid aliasing warning.
+
+2004-04-22 Jan Hubicka <jh@suse.cz>
+ Mostafa Hagog <mustafa@il.ibm.com>
+
+ * cfgloopmanip.c (scale_bbs_frequencies): Use RDIV macro
+ * cfgloopanal.c (expected_loop_iterations): Change the return value
+
+2004-04-22 Jakub Jelinek <jakub@redhat.com>
+
+ * cselib.h (struct elt_loc_list): Remove canon_loc field.
+ * cselib.c (new_elt_loc_list): Remove canon_loc initialization.
+ (cselib_invalidate_mem): Remove all canon_loc and canon_x
+ traces.
+
+2004-04-22 Josef Zlomek <zlomekj@suse.cz>
+
+ Revert
+ 2004-04-20 Josef Zlomek <zlomekj@suse.cz>
+
+ * var-tracking.c (variable_part_different_p): Variable parts
+ differ when the most recent locations differ.
+
+2004-04-22 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Remove the MIPS -membedded-pic option.
+ * config/mips/mips-protos.h (embedded_pic_fnaddr_reg): Delete.
+ (embedded_pic_offset): Delete.
+ * config/mips/mips.h (MASK_EMBEDDED_PIC): Delete. Shuffle other
+ MASK_* constants.
+ (TARGET_EMBEDDED_PIC): Delete.
+ (TARGET_SWITCHES): Remove -m{no-,}embedded-pic.
+ (ASM_SPEC): Remove -membedded-pic.
+ (ASM_OUTPUT_ADDR_DIFF_ELT): Remove embedded-pic handling.
+ (ASM_OUTPUT_CASE_LABEL): Likewise.
+ * config/mips/vxworks.h (ASM_SPEC): Remove -membedded-pic.
+ * config/mips/windiss.h (ASM_SPEC): Likewise.
+ * config/mips/mips.c (struct machine_function): Remove
+ embedded_pic_fnaddr_rtx.
+ (TARGET_ENCODE_SECTION_INFO): Remove override.
+ (embedded_pic_fnaddr_reg, embedded_pic_offset): Delete.
+ (override_options): Remove -membedded-pic handling.
+ (print_operand): Remove handling of '%S'.
+ (mips_select_section: Remove -membedded-pic handling.
+ (mips_encode_section_info): Delete.
+ (mips_output_conditional_branch): Remove mention of -membedded-pic.
+ * config/mips/mips.md (define_attr length, movsi, movdi, jump): Remove
+ -membedded-pic handling.
+ (casesi, casesi_internal, casesi_internal_di, get_fnaddr): Delete.
+
+2004-04-22 Alan Modra <amodra@bigpond.net.au>
+
+ * var-tracking.c (frame_base_decl): Remove useless GTY.
+
+2004-04-21 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Error when
+ user wants altivec and e500 instructions.
+
+2004-04-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/14813
+ * config/ia64/crtend.asm: Move pointer to __do_global_ctors_aux
+ in .init_array section to ...
+ * config/ia64/crtbegin.asm: Here.
+
+ * config/ia64/crtend.asm: Mark __do_global_ctors_aux global
+ and hidden if HAVE_INITFINI_ARRAY is defined.
+
+2004-04-21 James E Wilson <wilson@specifixinc.com>
+
+ * config/mips/mips-protos.h (fp_register_operand, lo_operand): Declare.
+ * config/mips/mips.c (mips_multipass_dfa_lookahead): Declare.
+ (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): New.
+ (fp_register_operand, lo_operand): New.
+ (mips_rtx_costs): Add TUNE_SB1 support.
+ (mips_issue_rate): Add comment. Add PROCESSOR_SB1 support.
+ (mips_use_dfa_pipeline_interface): Add PROCESSOR_SB1 support.
+ (mips_multipass_dfa_lookahead): New.
+ * config/mips/mips.h (MASK_FP_EXCEPTIONS, TARGET_FP_EXCEPTIONS,
+ TUNE_SB1): New.
+ (TARGET_SWITCHES): Add -mfp-exceptions support.
+ (TARGET_FP_EXCEPTIONS_DEFAULT): New.
+ (BRANCH_COST): Fix whitespace.
+ * config/mips/mips.md: Include sb1.md.
+ * config/mips/sb1.md: New file.
+ * doc/invoke.texi: Document -mfp-exceptions.
+
+ * Makefile.in (fixinc.sh): Don't set or export WARN_CFLAGS. Fix
+ comment.
+ * fixinc/Makefile.in (FL_LIST): Don't mention WARN_CFLAGS.
+ (fixincl.o-warn): Delete.
+
+2004-04-21 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000 (print_operand) ['z']:
+ Change ifdef of TARGET_MACHO to if TARGET_MACHO.
+
+2004-04-21 Daniel Jacobowitz <drow@mvista.com>
+
+ * config.gcc: Support --with-arch=iwmmxt for ARM.
+
+2004-04-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expmed.c (expand_mult_highpart_optab): Use narrower version of OP1
+ in two more places; remove unneeded force_reg
+
+2004-04-21 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.c (symbol_ref_operand): Remove hack
+ for TARGET_MACHO.
+ (print_operand): For TARGET_MACHO check to see if we need a stub
+ and output one if we need it.
+
+ PR debug/15033
+ * dwarf2out.c (rtl_for_decl_location): Check for NULL
+ rtl.
+
+2004-04-20 James E Wilson <wilson@specifixinc.com>
+
+ * config/ia64/ia64.md (call_value_nogp): Add constraints for op0.
+ (vall_value_gp): Likewise.
+
+2004-04-20 DJ Delorie <dj@redhat.com>
+
+ * dwarf2out.c (rtl_for_decl_location): Adjust rtl for byte
+ variables stored in word registers, then in memory.
+
+2004-04-20 Eric Christopher <echristo@redhat.com>
+
+ * cp/parser.c (cp_parser_declaration): Move translate
+ up before tokens are lexed.
+
+2004-04-20 Uros Bizjak <uros@kss-loka.si>
+
+ * optabs.h (enum optab_index): Add new OTI_asin and OTI_acos.
+ (asin_optab, acos_optab): Define corresponding macros.
+ * optabs.c (init_optabs): Initialize asin_optab and acos_optab.
+ * genopinit.c (optabs): Implement asin_optab and acos_optab
+ using asin?f2 and acos?f2 patterns.
+ * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_ASIN{,F,L}
+ using asin_optab, and BUILT_IN_ACOS{,F,L} using acos_optab.
+ (expand_builtin): Expand BUILT_IN_ASIN{,F,L} and BUILT_IN_ACOS{,F,L}
+ using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
+
+ * config/i386/i386.md (asindf2, asinsf2, asinxf2, acosdf2,
+ acossf2, acosxf2): New expanders to implement asin, asinf, asinl,
+ acos, acosf and acosl built-ins as inline x87 intrinsics.
+
+2004-04-20 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_legitimate_address_p): Use rtx_equal_p.
+
+2004-04-20 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_expand_prologue): Fix size calculation.
+
+2004-04-20 Paolo Bonzini <bonzini@gnu.org>
+
+ Revert part of 2004-04-17 change that moved -frename-registers
+ to -O1. -frename-registers is buggy.
+
+ * toplev.c (flag_rename_registers): Initialize to 0.
+ * doc/invoke.texi (Optimize options): Move -frename-registers
+ to "Not triggered by any -O level" section. Adjust commentary
+ accordingly.
+
+2004-04-20 Anil Paranjpe <anilp1@kpitcummins.com>
+
+ * toplev.c (compile_file): Move targetm.asm_out.file_end call to end.
+
+2004-04-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_legitimize_move): Generate special patterns
+ for mflo and mfhi instructions.
+ (mips_output_move): Remove mflo and mfhi handling.
+ * config/mips/mips.md (UNSPEC_MFHILO): New unspec.
+ (*mulsidi3_64bit): Update for new mfhi/mflo representation.
+ Likewise various define_peephole2s.
+ (*movdi_32bit, *movdi_64bit, *movsi_internal): Merge x<-J and x<-d
+ alternatives.
+ (*movdi_64bit, *movdi_64bit_mips16, *mov[shq]i_internal)
+ (*mov[shq]i_mips16): Remove mflo and mfhi alternatives.
+ (mfhilo_di, mfhilo_si): New patterns.
+
+2004-04-20 Josef Zlomek <zlomekj@suse.cz>
+
+ * function.c (assign_parms): Force
+ MEM_EXPR (DECL_INCOMING_RTL (parm)) == parm.
+
+2004-04-20 Josef Zlomek <zlomekj@suse.cz>
+
+ * var-tracking.c (variable_part_different_p): Variable parts differ
+ when the most recent locations differ.
+
+2004-04-19 James E Wilson <wilson@specifixinc.com>
+
+ * rtl.h (reg_set_last): Delete declaration.
+ * rtlanal.c (reg_set_last): Delete.
+
+2004-04-19 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_convert): Make function extern/public.
+ * tree.h (fold_convert): Prototype here.
+ * builtins.c (expand_builtin_strstr, expand_builtin_strchr,
+ expand_builtin_strrchr, expand_builtin_strpbrk,
+ expand_builtin_mempcpy, expand_builtin_bcopy,
+ expand_builtin_bzero, expand_builtin_memcmp,
+ expand_builtin_strcmp, expand_builtin_strncmp,
+ stabilize_va_list, expand_builtin_sprintf,
+ fold_trunc_transparent_mathfn, fold_builtin_logarithm,
+ fold_builtin_exponent, fold_builtin_mempcpy,
+ fold_builtin_strcpy, fold_builtin_strcmp, fold_builtin_strncmp,
+ fold_builtin_signbit, fold_builtin_isdigit, fold_builtin): Prefer
+ fold_convert to "convert" or "fold (build1 (NOP_EXPR, ...))".
+
+2004-04-19 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): New constant.
+ (move_from_CR_gt_bit): New.
+ (cceq_ior_compare): Name previously unnamed pattern. Disable for
+ E500.
+ (cceq_rev_compare): Name previously unnamed pattern. Allow for
+ E500.
+
+ * config/rs6000/spe.md (cmpsfeq_gpr): Rewrite as unspec.
+ (tstsfeq_gpr): Same.
+ (cmpsfgt_gpr): Same.
+ (tstsfgt_gpr): Same.
+ (cmpsflt_gpr): Same.
+ (tstsflt_gpr): Same.
+ (e500_cceq_ior_compare): New.
+ (e500_flip_gt_bit): New.
+
+ * config/rs6000/rs6000.c (ccr_bit): Remove E500 specific code.
+ (print_operand): Add 'c' and 'D'.
+ (rs6000_generate_compare): Rewrite to generate correct rtl.
+ (rs6000_emit_sCOND): Handle E500.
+ (output_cbranch): Adjust for changes in rs6000_generate_compare.
+ (output_e500_flip_gt_bit): New.
+
+ * config/rs6000/rs6000-protos.h (output_e500_flip_gt_bit):
+ Protoize.
+
+2004-04-19 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.h (DWARF2_ADDR_SIZE): New.
+
+2004-04-19 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi (*-ibm-aix*): Add AIX 5.1 assembler and archiver
+ fix information.
+
+2004-04-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * doc/install.texi (Specific, mips-sgi-irix5): Fix IRIX 5.3 IDO
+ download URL.
+
+2004-04-19 Daniel Jacobowitz <drow@mvista.com>
+
+ * stor-layout.c (layout_decl): Check DECL_PACKED before calling
+ ADJUST_FIELD_ALIGN. Check maximum_field_alignment after.
+
+2004-04-19 Andrew PInski <pinskia@physics.uc.edu>
+
+ * builtins.c (fold_builtin_cabs): Remove fndecl parameter.
+ (fold_builtin): Update caller to match.
+
+ PR bootstrap/15009
+ * bb-reorder.c (fix_up_fall_thru_edges): Init cond_jump.
+
+ PR bootstrap/14999
+ * builtins.c (fold_builtin_cabs): Mark fndecl as unused.
+
+2004-04-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * varasm.c (compare_constant, case VIEW_CONVERT_EXPR): Add case.
+
+ * expmed.c (expand_mult_highpart_adjust): Make OP1 valid for MODE.
+ (expand_mult_highpart_optab): Likewise.
+ (expand_mult_highpart): Make OP1 valid for WIDER_MODE, not MODE.
+
+2004-04-19 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.md (fixuns_truncsfsi2, fixuns_truncdfsi2,
+ floatunssisf2, floatunssidf2): New patterns.
+
+2004-04-18 Mark Mitchell <mark@codesourcery.com>
+
+ PR other/14918
+ * doc/invoke.texi (-fprofile-generate): Document requirement to
+ use -fprofile-generate when linking.
+
+ * doc/extend.texi (Strong Using): Warn users against using this
+ feature.
+
+2004-04-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (m16_usym8_4, m16_usym5_4): Delete.
+ * config/mips/mips.h (mips_entry, mips_string_length): Delete.
+ (CONSTANT_POOL_BEFORE_FUNCTION, ASM_OUTPUT_POOL_EPILOGUE): Undefine.
+ * config/mips/mips.c (struct mips16_constant): Renamed from struct
+ constant. Propogate change throughout file.
+ (struct machine_function): Remove insns_len.
+ (mips_string_length, mips16_strings, string_constants): Delete.
+ (mips_classify_symbol): Return SYMBOL_CONSTANT_POOL for LABEL_REFs
+ when generating mips16 code. Remove special mips16 treatment of
+ string constants.
+ (mips_symbolic_constant_p): Allow mips16 constant pool accesses
+ to have the form LABEL+CONSTANT.
+ (mips_symbolic_address_p): Fix comment.
+ (m16_usym8_4, m16_usym5_4): Delete.
+ (mips_output_function_epilogue): Remove mips16 string handling.
+ (mips_output_mi_thunk): Call mips16_lay_out_constants.
+ (mips_select_section, mips_encode_section_info): Remove mips16
+ string handling.
+ (struct mips16_constant_pool): New.
+ (add_constant): Take a mips16_constant_pool structure. Keep pool
+ sorted into order of ascending mode size. Keep track of the highest
+ possible start address, taking padding and the masking of the base PC
+ value into account.
+ (dump_constants_1): New function, split out from dump_constants.
+ Handle vector constants. Use gen_consttable_{int,float} rather than
+ separate functions for each mode.
+ (dump_constants): Simplify. Use GET_MODE_ALIGNMENT. Use gen_align
+ rather than separate functions for each alignment.
+ (mips_find_symbol): Delete.
+ (mips16_insn_length): New function, split out from
+ mips16_lay_out_constants.
+ (mips16_rewrite_pool_refs): New function.
+ (mips16_lay_out_constants): Rework. Remove string handling.
+ Always create an inline constant pool.
+ * config/mips/mips.md (UNSPEC_CONSTTABLE_INT, UNSPEC_CONSTTABLE_FLOAT)
+ (UNSPEC_ALIGN): New constants.
+ (UNSPEC_CONSTTABLE_[QHSD]I, UNSPEC_CONSTTABLE_[SD]F): Delete.
+ (UNSPEC_ALIGN_[248]): Delete.
+ (consttable_int, consttable_float, align): New patterns.
+ (consttable_[qhsd]i, consttable_[sd]f, align_[248]): Delete.
+
+2004-04-17 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/altivec.h (vec_any_numeric): Correct typo in
+ __unn_args_eq.
+
+2004-04-17 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14715
+ * config/rs6000/rs6000.c (rs6000_stack_info): Make parm_size agree
+ with STARTING_FRAME_OFFSET.
+
+2004-04-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (PREDICATE_CODES): Add macc_msac_operand.
+ * config/mips/mips.c (macc_msac_operand): New function.
+ * config/mips/mips.md (*msac): Move after *macc.
+ (*msac2): New. Generalize macc-related peepholes so that they apply
+ to msac too.
+
+2004-04-17 Paolo Bonzini <bonzini@gnu.org>
+
+ * opts.c (decode_options): Do not enable flag_rename_registers
+ and flag_web at -O3.
+ * toplev.c (flag_rename_registers): Initialize
+ flag_rename_registers and flag_web to
+ AUTODETECT_FLAG_VAR_TRACKING.
+ (default_debug_hooks): New global.
+ (process_options): Initialize default_debug_hooks. Warn if
+ -fvar-tracking specified but not supported by the current
+ debug format. Do not run var tracking at -O0 or if not
+ supported by the current debug format, even if
+ -fvar-tracking was given. If -fno-rename-registers
+ is not specified, always run register renaming if var
+ tracking is supported by the default debugging information
+ format for the target, and we are at -O1 or higher; similarly
+ for -fweb, but only at -O2 or higher.
+ * doc/invoke.texi (Optimize Options): Document this.
+
+2004-04-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * configure.ac (gcc_cv_ld_as_needed): Use AC_CACHE_CHECK.
+ * configure: Regenerate.
+
+2004-04-17 Richard Sandiford <rsandifo@redhat.com>
+
+ * gcc.c (used_arg): Check whether an option has been removed.
+
+2004-04-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (i[34567]86-*-solaris2*): Default to DWARF-2
+ debugging on Solaris 7 and up.
+
+2004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * doc/install.texi (Specific, mips-sgi-irix5): Reflect working
+ IRIX 5 port.
+ Remove -save-temps workaround, handled automatically.
+ Require GNU binutils 2.15 for debugging.
+ Remove SGI make warnings since GNU make is now required.
+ (Specific, mips-sgi-irix6): Some markup fixes.
+ Describe MIPSpro C problems and workarounds.
+ Mention working O32 ABI support.
+ Recommend GNU as 2.15 for O32 with debugging.
+ Remove description of fixed structure pass/return bug.
+
+2004-04-16 DJ Delorie <dj@redhat.com>
+
+ * sdbout.c (sdbout_one_type): Use TYPE_VALUES for enums, not
+ TYPE_FIELDS.
+ (sdbout_finish): Don't free deferred_global_decls; it's GC'd.
+
+2004-04-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md: Remove unnecessary declarations for asm_out_file.
+
+ * pa64-regs.h (DBX_REGISTER_NUMBER): Simplify and correct mapping of
+ SAR register. Fix comment.
+ (ADDITIONAL_REGISTER_NAMES): Correct register number of SAR register
+ (%cr11).
+
+ * pa64-hpux.h (LIB_SPEC): Fix library specification used with GNU ld.
+
+2004-04-16 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (arm_override_options): Revert previous patch.
+ * config/arm/t-xscale-elf: Disable iwmmxt multilibs until they can
+ be safely built.
+
+2004-04-16 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (BIG_ENDIAN_BIT): Deleted to fix endian
+ bug.
+ (TARGET_LITTLE_ENDIAN, TARGET_BIG_ENDIAN,
+ TARGET_DEFAULT): Changed. Ditto.
+ (LITTLE_ENDIAN_BIT, TARGET_CPU_DEFAULT,
+ TARGET_ENDIAN_DEFAULT): Added. Ditto.
+ * config/m32r/little.h (TARGET_LITTLE_ENDIAN): Deleted.
+ (TARGET_ENDIAN_DEFAULT): Added.
+
+2004-04-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def (BUILT_IN_ISDIGIT, BUILT_IN_ISXDIGIT): Mark with
+ ATTR_CONST_NOTHROW_LIST.
+
+2004-04-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ PR/middle-end 14915
+ * builtins.c (expand_builtin_signbit): Test BYTES_BIG_ENDIAN, not
+ BITS_BIG_ENDIAN.
+
+2004-04-15 Pat Haugen <pthaugen@us.ibm.com>
+
+ * ra-debug.c (ra_print_rtx): Add break's to case legs.
+
+2004-04-14 James E Wilson <wilson@specifixinc.com>
+
+ * Makefile.in (fixinc.sh): Set WARN_CFLAGS to empty string.
+
+2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * libada-mk.in: New file.
+ * configure.ac: Create libada-mk from libada-mk.in.
+ * configure: Regenerate.
+
+2004-04-14 Uros Bizjak <uros@kss-loka.si>
+
+ * optabs.h (enum optab_index): Add new OTI_logb and OTI_ilogb.
+ (logb_optab, ilogb_optab): Define corresponding macros.
+ * optabs.c (init_optabs): Initialize logb_optab and ilogb_optab.
+ * genopinit.c (optabs): Implement logb_optab and ilogb_optab
+ using logb?f2 and ilogb?i2 patterns.
+ * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LOGB{,F,L}
+ using logb_optab, and BUILT_IN_ILOGB{,F,L} using ilogb_optab.
+ (expand_builtin): Expand BUILT_IN_LOGB{,F,L} and BUILT_IN_ILOGB{,F,L}
+ using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
+
+ * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_XTRACT_FRACT
+ and UNSPEC_XTRACT_EXP.
+
+ * config/i386/i386.md (*fxtractdf3, *fxtractsf3, *fxtractxf3): New
+ patterns to implement fxtract x87 instruction.
+ (logbdf2, logbsf2, logbxf2, ilogbsi2): New expanders to implement
+ logb, logbf, logbl, ilogb, ilogbf and ilogbl built-ins as inline x87
+ intrinsics.
+ (UNSPEC_XTRACT_FRACT, UNSPEC_XTRACT_EXP): New unspecs to represent
+ x87's fxtract insn.
+
+2004-04-14 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/t-elf: Enable multilibs by default.
+
+2004-04-14 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * bb-reorder.c (fix_crossing_conditional_branches): Adjust the
+ previous fix to check HAVE_return at runtime too.
+
+2004-04-14 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (arm_override_options): If the user has not
+ specified an ABI, then default to AAPCS for the iWMMXt processor.
+ * config/arm/t-xscale-elf: Remove redundant multilib specifications.
+ * config/arm/t-xscale-coff: Likewise.
+
+2004-04-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin_isdigit): New.
+ (fold_builtin): Handle BUILT_IN_ISDIGIT.
+ * defaults.h: Add TARGET_DIGIT0 and sort.
+ * doc/tm.texi: Add TARGET_BS and TARGET_DIGIT0.
+
+2004-04-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin_cabs, fold_builtin): Use
+ `mathfn_built_in' to determine the new builtin.
+ * fold-const.c (fold): Likewise.
+
+2004-04-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Rename MIPS's -mfix-vr4122-bugs to -mfix-vr4120.
+ * config/mips/mips.h (MASK_FIX_VR4120): Renamed from MASK_FIX_VR4122.
+ (TARGET_FIX_VR4120): Likewise TARGET_FIX_VR4122.
+ (TARGET_SWITCHES): Replace -mfix-vr4122-bugs with -mfix-vr4120.
+ (ASM_SPEC): Update accordingly.
+ * config/mips/mips.c: Update after above renaming.
+ * config/mips/mips.md, config/mips/t-vr, config/mips/vr.h: Likewise.
+ * config/mips/vr4120-div.S: Renamed from vr4122-div.S.
+
+2004-04-13 James E Wilson <wilson@specifixinc.com>
+
+ * c-opt.c (c_common_post_options): If this_input_filename is NULL,
+ increment errorcount and return false instead of true.
+
+2004-04-13 Uros Bizjak <uros@kss-loka.si>:
+
+ * optabs.c (expand_twoval_unop): Reorder function arguments.
+ * builtins.c (expand_builtin_mathfn_3): Update calls to
+ expand_twoval_unop.
+
+ * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_TAN_ONE
+ and UNSPEC_TAN_TAN. Add missing comment.
+
+ * config/i386/i386.md (*tandf3_1, *tansf3_1, *tanxf3_1): New
+ patterns to implement fptan x87 instruction.
+ (tandf2, tansf2, tanxf2): New expanders to implement tan, tanf
+ and tanl built-ins as inline x87 intrinsics. Define corresponding
+ peephole2 optimizers for 'fptan; fstp %st(0); fld1' sequence.
+ (UNSPEC_TAN_ONE, UNSPEC_TAN_TAN): New unspecs to represent
+ x87's fptan insn.
+
+2004-03-13 Richard Henderson <rth@redhat.com>
+
+ * bb-reorder.c (fix_crossing_unconditional_branches): Use Pmode
+ for LABEL_REFs.
+
+ * defaults.h (HOT_TEXT_SECTION_NAME): Add leading dot.
+ (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Likewise.
+ * doc/invoke.texi: Update to match.
+
+ * varasm.c (unlikely_text_section): Use assemble_align instead of
+ ASM_OUTPUT_ALIGN. Use it in the correct place with an approximately
+ correct alignment argument.
+
+2004-04-13 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * reload1.c (emit_reload_insns): Set reg_has_output_reload to one
+ after setting reg_last_reload_reg for optional output reloads.
+
+2004-04-12 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/altivec.h (vec_mergeh, vec_mergel):
+ Definition of these two macros are corrected by adding
+ matchine right paren.
+
+2004-04-12 Jonathan Larmour <jifl@eCosCentric.com>
+
+ * fix-header.c: kill(), putenv() and tzset() are POSIX not ANSI.
+
+2004-04-12 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.c (output_387_reg_move): New function.
+ * config/i386/i386-protos.h (output_387_reg_move): Prototype here.
+ * config/i386/i386.md (*movsf_1, *movsf1_nointerunit,
+ *movdf_nointeger, *movdf_integer, *movxf_nointeger, *movxf_integer,
+ *extendsfdf2_1, *extendsfxf2_1, *extenddfxf2_1, truncdfsf2_noop,
+ truncxfsf2_noop, truncxfdf2_noop): Call output_387_reg_move.
+
+2004-04-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * c-decl.c (finish_decl): Make a decl_stmt for a variable-sized
+ TYPE_DECL.
+ * c-semantics.c (genrtl_decl_stmt): Handle TYPE_DECL.
+ * stmt.c (expand_decl): Remove redundant expansion of TYPE_DOMAIN.
+ * stor-layout.c (variable_size): Don't check for MINUS_EXPR.
+ Use skip_simple_arithmetic to find SAVE_EXPR.
+ (force_type_save_exprs, force_type_save_exprs_1): New functions.
+ * tree-inline.c (remap_type, case POINTER_TYPE, case REFERENCE_TYPE):
+ Properly chain multiple pointers.
+ (copy_tree_r): Copy a TYPE_DECL.
+ * tree.c (variably_modified_type_p): Add some missing tests and
+ make some other minor changes.
+ * tree.h (force_type_save_exprs): New declaration.
+
+2004-04-12 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_binary_operation) <UDIV, DIV, UMOD, MOD>:
+ Remove fall throughs. Convert 0/x and 0%x into x&0 when x has
+ side-effects. Don't convert x/1.0 into x if we honor signaling NaNs.
+ Convert x/-1.0 into -x if we don't honor signaling NaNs. Convert
+ x/-1 into -x. Optimize x%1 into x&0 if x has side-effects. Optimize
+ x%-1 into 0 (or x&0 if x has side-effects).
+
+2004-04-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md: Document why a pattern is not
+ available.
+
+ * config/rs6000/rs6000.c (rs6000_emit_cmove): Disable comparisons
+ of floats on the E500.
+ (branch_positive_comparison_operator): Do not allow NE even on the
+ E500.
+
+2004-04-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_assemble_integer): Change
+ in_text_unlikely_section to in_unlikely_text_section.
+
+2004-04-11 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_binary_op_with_conditional_arg): Tweak
+ calling convention to allow a NULL_TREE to be returned. Factor
+ sanity checks from callers, return NULL_TREE when appropriate.
+ (fold): Handle COMPOUND_EXPR operands of binary expressions
+ before COND_EXPR operands. Use reorder_operands_p(a,b) to check
+ whether a op (b,c) can be rewritten as (b, a op c). Simplify
+ calls to fold_binary_op_with_conditional_arg.
+
+2004-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * config/mips/iris5.h (current_section_flags): Add
+ in_unlikely_executed_text and default case.
+
+2004-04-11 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * bb-reorder.c (fix_crossing_conditional_branches): Fix bootstrap
+ failure on solaris. Place ifdef HAVE_return around gen_ret call.
+ * cfgrtl.c (force_nonfallthru_and_redirect): Remove ifdef
+ HAVE_return and place it around the place where it is needed.
+
+2004-04-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * varasm.c (text_section): Use TEXT_SECTION_ASM_OP and
+ ASM_OUTPUT_ALIGN instead of SECTION_FORMAT_STRING
+ and NORMAL_TEXT_SECTION_NAME.
+ (unlikely_text_section): Check targetm.have_named_sections
+ instead of TARGET_ASM_NAMED_SECTION and use TEXT_SECTION_ASM_OP
+ instead of SECTION_FORMAT_STRING.
+ * config/mips/iris5.h (current_section_name): Add
+ in_unlikely_executed_text case and move the abort into the switch.
+ * config/rs6000/sysv4.h (HOT_TEXT_SECTION_NAME): Remove.
+ (NORMAL_TEXT_SECTION_NAME): Remove.
+ (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove.
+ (SECTION_FORMAT_STRING): Remove.
+ * defaults.h (SECTION_FORMAT_STRING): Remove.
+ * tm.texi (NORMAL_TEXT_SECTION_NAME): Remove.
+ (SECTION_FORMAT_STRING): Remove.
+
+2004-04-10 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (common_type): Prefer long long to long when same
+ precision.
+
+2004-04-09 Zack Weinberg <zack@codesourcery.com>
+
+ PR 14887
+ * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Look only at
+ mode argument.
+ * config/ia64/ia64.c (ia64_hpux_file_end): Check
+ TREE_SYMBOL_REFERENCED on DECL_ASSEMBLER_NAME, not DECL_NAME.
+
+2004-04-09 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (mode_signbit_p): New function to check whether
+ an RTX is an immediate constant that represents the most significant
+ bit of a given machine mode.
+ (simplify_unary_operation) <NOT>: Optimize ~(X+C) as X ^ ~C, where
+ C is the sign bit.
+ (simplify_binary_operation) <PLUS>: Optimize (X^C1) + C2 as X^(C1^C2)
+ when C2 is the sign bit.
+ (simplify_binary_operation) <XOR>: Canonicalize X^C as X+C when C
+ is the sign bit. Optimize (X+C1) ^ C2 as X^(C1^C2) when C1 is the
+ sign bit.
+
+2004-04-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (mathfn_built_in): Check TYPE_MAIN_VARIANT, not
+ TYPE_MODE.
+
+2004-04-09 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-common.c (handle_noreturn_attribute): Use TYPE_READONLY instead
+ of TREE_READONLY for types.
+
+2004-04-09 Caroline Tice <ctice@apple.com>
+
+ * basic-block.h (struct edge_def): Add new field, crossing_edge.
+ (struct basic_block_def): Add new field, partition.
+ (UNPARTITIONED, HOT_PARTITION, COLD_PARTITION): New constant macro
+ definitions.
+ (partition_hot_cold_basic_blocks): Add extern function
+ declaration.
+ * bb-reorder.c (function.h, obstack.h, expr.h, regs.h): Add four new
+ include statements.
+ (N_ROUNDS): Increase the maximum number of rounds by 1.
+ (branch_threshold): Add array value for new round.
+ (exec_threshold): Add array value for new round.
+ (push_to_next_round_p): New function.
+ (add_unlikely_executed_notes): New function.
+ (find_rarely_executed_basic_blocks_and_crossing_edges): New function.
+ (mark_bb_for_unlikely_executed_section): New function.
+ (add_labels_and_missing_jumps): New function.
+ (add_reg_crossing_jump_notes): New function.
+ (fix_up_fall_thru_edges): New function.
+ (find_jump_block): New function.
+ (fix_crossing_conditional_branches): New function.
+ (fix_crossing_unconditional_branches): New function.
+ (fix_edges_for_rarely_executed_code): New function.
+ (partition_hot_cold_basic_blocks): New function.
+ (find_traces): Add an extra round for partitioning hot/cold
+ basic blocks.
+ (find_traces_1_round): Add a parameter. Modify to push all cold blocks,
+ and only cold blocks, into the last (extra) round of collecting traces.
+ (better_edge_p): Add a parameter. Modify to favor non-crossing edges
+ over crossing edges.
+ (bb_to_key): Add code to correctly identify cold blocks when
+ doing partitioning.
+ (connect_traces): Modify to connect all the non-cold traces first, then
+ go back and connect up all the cold traces.
+ (reorder_basic_blocks): Add call to add_unlikely_executed_notes.
+ * cfg.c (entry_exit_blocks): Add initialization for partition field in
+ entry and exit blocks.
+ * cfgbuild.c (make_edges): Update current_function_has_computed_jump
+ if we are doing hot/cold partitioning.
+ * cfgcleanup.c (cfglayout.h): Add new include statement.
+ (try_simplify_condjump): Modify to not attempt on blocks with jumps
+ that cross section boundaries.
+ (try_forward_edges): Likewise.
+ (merge_blocks_move_predecessor_nojumps): Likewise.
+ (merge_blocks_move_successor_nojumps): Likewise.
+ (merge_blocks_move): Likewise.
+ (try_crossjump_to_edge): Modify to not attempt after we have done
+ the block partitioning.
+ (try_crossjump_bb): Modify to not attempt on blocks with jumps that
+ cross section boundaries.
+ (try_optimize_cfg): Likewise.
+ * cfghooks.c (tidy_fallthru_edges): Modify to not remove indirect
+ jumps that cross section boundaries.
+ * cfglayout.c (flags.h): Add new include statement.
+ (update_unlikely_executed_notes): New function.
+ (fixup_reorder_chain): Add code so when a new jumping basic block is
+ added, it's UNLIKELY_EXECUTED_CODE and REG_CROSSING_JUMP notes are
+ updated appropriately.
+ (duplicate_insn_chain): Add code to duplicate the new NOTE insn
+ introduced by this optimization.
+ * cfglayout.h (scan_ahead_for_unlikely_executed_note): Add new
+ extern function declaration.
+ * cfgrtl.c (can_delete_note_p): Add NOTE_INSN_UNLIKELY_EXECUTED_CODE to
+ list of notes that can be deleted.
+ (create_basic_block_structure): Add initialization for partition field.
+ (rtl_can_merge_blocks): Modify to test blocks for jumps that cross
+ section boundaries.
+ (try_redirect_by_replacing_jump): Modify to not attempt on jumps that
+ cross section boundaries.
+ (commit_one_edge_insertion): Add code so newly created basic block
+ ends up in correct (hot or cold) section. Modify to disallow
+ insertions before NOTE_INSN_UNLIKELY_EXECUTED_CODE notes.
+ (rtl_verify_flow_info_1): Add code to verify that no fall_thru edge
+ crosses section boundaries.
+ (cfg_layout_can_merge_blocks_p): Modify to test blocks for jumps that
+ cross section boundaries.
+ (force_nonfallthru_and_redirect): Modify to make sure new basic block
+ ends up in correct section, with correct notes attached.
+ * common.opt (freorder-blocks-and-partition): Add new flag for this
+ optimization.
+ * dbxout.c (dbx_function_end): Add code to make sure scope labels at
+ the end of functions are written into the correct (hot or cold)
+ section.
+ (dbx_source_file): Add code so writing debug file information
+ doesn't incorrectly change sections.
+ * defaults.h (NORMAL_TEXT_SECTION_NAME): New constant macro, for use
+ in partitioning hot/cold basic blocks into separate sections.
+ (SECTION_FORMAT_STRING): New constant macro, for linux/i386 hot/cold
+ section partitioning.
+ (HAS_LONG_COND_BRANCH): New constant macro, indicating whether or not
+ conditional branches can span all of memory.
+ (HAS_LONG_UNCOND_BRANCH): New constant macro, indicationg whether or not
+ unconditional branches can span all of memory.
+ * final.c (scan_ahead_for_unlikely_executed_note): New function.
+ (final_scan_insn): Add code to check for NOTE instruction indicating
+ whether basic block belongs in hot or cold section, and to make sure
+ the current basic block is being written to the appropriate section.
+ Also added code to ensure that jump table basic blocks end up in the
+ correct section.
+ * flags.h (flag_reorder_blocks_and_partition): New flag.
+ * ifcvt.c (find_if_case_1): Modify to not attempt if conversion if
+ one of the branches has a jump that crosses between sections.
+ (find_if_case_2): Likewise.
+ (ifcvt): Modify to not attempt to mark loop exit edges after
+ hot/cold partitioning has occurred.
+ * opts.c (decode_options): Code to handle new flag,
+ flag_reorder_blocks_and_partition; also to turn it off if
+ flag_exceptions is on.
+ (common_handle_option): Code to handle new flag,
+ flag_reorder_blocks_and_partition.
+ * output.h (unlikely_text_section): New extern function declaration.
+ (in_unlikely_text_section): New extern function declaration.
+ * passes.c (rest_of_handle_stack_regs): Add
+ flag_reorder_blocks_and_partition as an 'or' condition for calling
+ reorder_basic_blocks.
+ (rest_of_handle_reorder_blocks): Add flag_reorder_blocks_and_partition
+ as an 'or' condition for calling reorder_basic_blocks.
+ (rest_of_compilation): Add call to partition_hot_cold_basic_blocks.
+ * print-rtl.c (print_rtx): Add code for handling new note,
+ NOTE_INSN_UNLIKELY_EXECUTED_CODE
+ * rtl.c (NOTE_INSN_UNLIKELY_EXECUTED_CODE): New note insn (see below).
+ (REG_CROSSING_JUMP): New kind of reg_note, to mark jumps that
+ cross between section boundaries.
+ * rtl.h (NOTE_INSN_UNLIKELY_EXECUTED_CODE): New note instruction,
+ indicating the basic block containing it belongs in the cold section.
+ (REG_CROSSING_JUMP): New type of reg_note, to mark jumps that cross
+ between hot and cold sections.
+ * toplev.c (flag_reorder_blocks_and_partition): Add code to
+ initialize this flag, and to tie it to the command-line option
+ freorder-blocks-and-partition.
+ * varasm.c (cfglayout.h): Add new include statement.
+ (unlikely_section_label_printed): New global variable, used for
+ determining when to output section name labels for cold sections.
+ (in_section): Add in_unlikely_executed_text to enum data structure.
+ (text_section): Modify code to use SECTION_FORMAT_STRING and
+ NORMAL_TEXT_SECTION_NAME macros.
+ (unlikely_text_section): New function.
+ (in_unlikely_text_section): New function.
+ (function_section): Add code to make sure beginning of function is
+ written into correct section (hot or cold).
+ (assemble_start_function): Add code to make sure stuff is written to
+ the correct section.
+ (assemble_zeros): Add in_unlikely_text_section as an 'or' condition
+ to an if statement that was checking 'in_text_section'.
+ (assemble_variable): Add 'in_unlikely_text_section' as an 'or'
+ condition to an if statement that was checking 'in_text_section'.
+ (default_section_type_flags_1): Add check: if in cold section
+ flags = SECTION_CODE.
+ * config/darwin.c (darwin_asm_named_section): Modify to use
+ SECTION_FORMAT_STRING if we are partitioning hot/cold blocks.
+ * config/i386/i386.h (HAS_LONG_COND_BRANCH): Defined this macro
+ specifically for the i386.
+ (HAS_LONG_UNCOND_BRANCH): Defined this macro specifically for the i386.
+ * config/rs6000/darwin.h (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Change
+ text string to something more informative.
+ (NORMAL_TEXT_SECTION_NAME): Add new definition.
+ (SECTION_FORMAT_STRING): Add new definition.
+ * config/rs6000/rs6000.c (rs6000_assemble_integer): Add
+ '!in_unlikely_text_section' as an 'and' condition to an if statement
+ that was already checking '!in_text_section'.
+ * config/rs6000/sysv4.h (HOT_TEXT_SECTION_NAME,NORMAL_TEXT_SECTION_NAME,
+ UNLIKELY_EXECUTED_TEXT_SECTION_NAME,SECTION_FORMAT_STRING): Make
+ sure these are properly defined for linux on ppc.
+ * doc/invoke.texi (freorder-blocks-and-partition): Add documentation
+ for this new flag.
+ * doc/rtl.texi (REG_CROSSING_JUMP): Add documentation for new
+ reg_note.
+ * doc/tm.texi (NORMAL_TEXT_SECTION_NAME, SECTION_FORMAT_STRING,
+ HAS_LONG_COND_BRANCH, HAS_LONG_UNCOND_BRANCH): Add documentation for
+ these new macros.
+
+2004-04-08 Roger Sayle <roger@eyesopen.com>
+
+ * function.c (gen_mem_addressof): When changing the RTX from a REG
+ to a MEM, clear MEM_VOLATILE_P which was formerly REG_USERVAR_P.
+
+2004-04-08 Roger Sayle <roger@eyesopen.com>
+
+ PR target/14888
+ * config/i386/i386.md (truncdfsf2_noop, truncxfsf2_noop,
+ truncxfdf2_noop): Provide dummy "fmov" implementations.
+
+2004-04-08 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * gcc.c (default_compilers): Add missing initializers.
+
+ * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_use_address):
+ Return 1 if file was successfully mapped.
+
+2004-04-08 Geoffrey Keating <geoffk@apple.com>
+
+ PR pch/13419
+ PR pch/14137
+ Radar #: 3315288
+ * doc/invoke.texi (Precompiled Headers): Suggest -o
+ to put an output file in a particular place. Be more detailed
+ about which options affect PCH validity and which options
+ might not work.
+ * c-pch.c (pch_matching): New.
+ (MATCH_SIZE): New.
+ (struct c_pch_validity): New field 'match'.
+ (pch_init): Handle pch_matching.
+ (c_common_valid_pch): Check pch_matching.
+
+ * explow.c: Fix typo defining default of PROMOTE_FUNCTION_MODE.
+
+2004-04-08 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi (Precompiled Headers): Warn about known
+ problems.
+
+2004-04-08 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR c++/14808
+ * defaults.h (TARGET_USE_LOCAL_THUNK_ALIAS_P): New macro. Default
+ to 1 if ASM_OUTPUT_DEF is defined.
+ * doc/tm.texi (TARGET_USE_LOCAL_THUNK_ALIAS_P): Document.
+ * config/i386/cygming.h (TARGET_USE_LOCAL_THUNK_ALIAS_P): Define.
+ Set to non-zero iff not a one_only decl.
+
+2004-04-08 Paul Brook <paul@codesourcery.com>
+
+ * arm.h (CLASS_LIKELY_SPILLED_P): Define.
+
+2004-04-08 Paul Brook <paul@codesourcery.com>
+
+ * explow.c (promote_mode): Use PROMOTE_FUNCTION_MODE instead of
+ PROMOTE_FOR_CALL_ONLY.
+ * config/arm/arm-protos.h (arm_function_value): Declare.
+ * config/arm/arm.h (TARGET_PROMOTE_FUNCTION_ARGS): Define.
+ (TARGET_PROMOTE_PROTOTYPES): Return false.
+ (arm_function_value): New function.
+ * config/arm/arm.h (PROMOTE_FUNCTION_MODE): Define.
+ (FUNCTION_VALUE): Call arm_function_value.
+ * config/cris/cris.h (PROMOTE_MODE): Rename ...
+ (PROMOTE_FUNCTION_MODE): ... to this.
+ (PROMOTE_FOR_CALL_ONLY): Remove.
+ * config/mmix/mmix.h: Likewise.
+ * config/s390/s390.h: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/sparc/sparc.c: Update comments about PROMOTE_MODE.
+ * doc/tm.texi (PROMOTE_FUNCTION_MODE): Document.
+ (TARGET_PROMOTE_FUNCTION_MODE, TARGET_PROMOTE_FUNCTION_RETURN): Update.
+ (PROMOTE_FOR_CALL_ONLY): Remove.
+
+2004-04-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR ada/14538
+ * ada/5rosinte.adb: Remove fake mprotect() body.
+ * ada/5rosinte.ads: Add SA_SIGINFO.
+ * ada/5rtpopsp.adb: Rewrite to use new interface.
+ * ada/init.c: Reorder so the simple single OS conditional __rtems__
+ is tested before more complex ones which mix UNIX and embedded
+ systems in the conditional.
+
+2004-04-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR ada/14665
+ * ada/osint.adb (Find_Program_Name): Rework to properly handle
+ filenames which end in .exe or have versioning suffixes like VMS.
+
+2004-04-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/10129
+ * config/darwin.c (darwin_encode_section_info): When the decl has
+ a DECL_INITIAL, it is only defined also when it is not a common.
+
+2004-04-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin_isascii, fold_builtin_toascii): New.
+ (fold_builtin): Handle BUILT_IN_ISASCII and BUILT_IN_TOASCII.
+
+2004-04-07 H.J. Lu <hongjiu.lu@intel.com>
+
+ * config/ia64/ia64.c (ia64_encode_section_info): Don't prod
+ global register variables.
+
+2004-04-07 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * fixinc/inclhack.def (rpc_xdr_lvalue_cast_a,
+ rpc_xdr_lvalue_cast_b): New fixes.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/rpc/xdr.h: Add new tests.
+
+2004-04-07 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (processor_target_table): Add MASK_MFCRF
+ to power4 and power5 entries.
+
+2004-04-06 Geoffrey Keating <geoffk@apple.com>
+
+ * c-common.h (pending_lang_change): Mark for PCH.
+
+2004-04-07 Caroline Tice <ctice@apple.com>
+
+ * gcc.c (main): Move 'break' in main loops (on an error)
+ to wait until error processing has occurred.
+
+2004-04-06 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Stop changing enable_threads midstream.
+ Replace uses of enable_threads_flag with enable_threads.
+ * configure.ac: Replace uses of enable_threads_flag with
+ enable_threads. Improve autoconf quotation in one place.
+ * configure: Regenerate.
+
+2004-04-06 Uros Bizjak <uros@kss-loka.si>
+
+ * builtins.c: Implement support for sincos function.
+ (expand_builtin_mathfn): Remove BUILT_IN_SIN{,F,L} and
+ BUILT_IN_COS{,F,L}.
+ (expand_builtin_mathfn_3): New function.
+ (expand_builtin): Expand BUILT_IN_SIN{,F,L} and
+ BUILT_IN_COS{,F,L} using expand_builtin_mathfn_3 if
+ flag_unsafe_math_optimization is set.
+
+ * optabs.h (enum optab_index): Add new OTI_sincos.
+ (sincos_optab): Define corresponding macro.
+
+ * optabs.c (init_optabs): Initialize sincos_optab.
+ (expand_twoval_unop): New function.
+
+ * genopinit.c (optabs): Implement sincos_optab using sincos?f3
+ patterns.
+
+ * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_SINCOS_COS
+ and UNSPEC_SINCOS_SIN.
+
+ * config/i386/i386.md (sincosdf3, sincossf3, *sincosextendsfdf3,
+ sincosxf3): New patterns to implement sincos, sincosf and sincosl
+ built-ins as inline x87 intrinsics. Define splits for
+ sindf2, sinsf2, *sinextendsfdf2, sinxf2, cosdf2,
+ cossf2, *cosextendsfdf2 and cosxf2 patterns from corresponding
+ sincos patterns.
+ (sindf2, sinsf2, sinxf2): Rename to *sindf2, *sinsf2, *sinxf2.
+ (cosdf2, cossf2, cosxf2): Rename to *cosdf2, *cossf2, *cosxf2.
+
+ (UNSPEC_SINCOS_SIN, UNSPEC_SINCOS_COS): New unspecs to represent
+ x87's fsincos insn.
+
+2004-04-06 Devang Patel <dpatel@apple.com>
+
+ PR 14467
+ * config/darwin.h (LINK_COMMAND_SPEC): Use c++filt instead of c++filt3.
+
+2004-04-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * doc/install.texi: Update HP-UX 11 installation procedure.
+
+2004-04-06 Paul Brook <paul@codesourcery.com>
+
+ * doc/sourcebuild.texi: Remove obsolete contraint on testcases.
+
+2004-04-05 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/sh.c (prepare_move_operands): Use emit_call_insn
+ when the TLS address is generated by a function call.
+ * config/sh/sh.md (tls_global_dynamic): Use a call expression.
+ (tls_local_dynamic): Likewise.
+
+2004-04-05 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * tree.c (reconstruct_complex_type): Use TYPE_READONLY
+ and TYPE_VOLATILE.
+
+2004-04-05 Caroline Tice <ctice@apple.com>
+
+ * gcc.c (combine_flag): New global variable, for new driver option.
+ (struct compiler): Add two new fields, to be used when
+ combining multiple input files in a single pass (IMA).
+ (default_compilers): Add values for the new fields to all
+ compiler entries. Modify the "@c" compiler entry for doing IMA
+ properly with "-save-temps" and the "combine" flag.
+ (option_map): Add new driver option, "--combine", to tell driver
+ to pass multiple input files to compiler at one time.
+ (have_o_argbuf_index): New global variable.
+ (store_arg): Modify to assign value to have_o_argbuf_index.
+ (struct infile): Add three new fields, to help with IMA.
+ (display_help): Add help for new "combine" option.
+ (process_command): Remove local variable have_o; add code to check
+ for new "combine" option; remove assignment to combine_inputs.
+ (do_spec_1): Modify to deal with IMA better.
+ (main): Make variable 'lang_n_infiles' local to entire function
+ rather than to a single block. Use flag combine_flag to
+ determine whether to do IMA or not; Modify loop initializing
+ infiles to deal properly with linker files.
+ Add code for doing preprocessing in presence of
+ IMA with "-save-temps" flag. Modify "main" loop to handle
+ multiple input files, in multiple languages, with or without
+ preprocessing, gracefully.
+ * toplev.c (set_src_pwd): Modify to not complain if attempting to
+ re-set it to same directory it's previously been set to (avoid
+ irritating, meaningless warning messages when doing IMA with
+ save-temps).
+ * doc/invoke.texi: Add "-combine" to list of Overall Options;
+ remove documentation about IMA that is no longer accurate; Add
+ documentation explaining what "-combine" does.
+ * ada/lang-specs.h: Add initialization values for new fields in
+ "struct compiler".
+ * cp/lang-specs.h: Likewise.
+ * f/lang-specs.h: Likewise.
+ * java/lang-specs.h: Likewise.
+ * objc/lang-specs.h: Likewise.
+ * treelang/lang-specs.h: Likewise.
+
+2004-04-05 David Edelsohn
+
+ * config/rs6000/rs6000.c (VTABLE_NAME_P): Add _ZTI to special
+ symbol handling.
+
+2004-04-05 Jakub Jelinek <jakub@redhat.com>
+ John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR optimization/13424 (hppa), bootstrap/14462, c/14828
+ * pa.md: Use replace_equiv_address to retain the attributes of the
+ memory operands used in the split and peephole2 patterns for optimizing
+ the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.
+
+2004-04-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * c-decl.c (build_compound_literal): Use TYPE_READONLY.
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
+ * objc/objc-act.c (adorn_decl, gen_declspecs): Likewise.
+ * c-typeck.c (decl_constant_value): Don't access DECL_INITIAL of a
+ PARM_DECL.
+ * calls.c (flags_from_decl_or_type): Use TYPE_READONLY and do so only
+ for a type.
+ * print-tree.c (print_node): Properly handle side-effects, readonly,
+ and constant flags.
+ * tree.c (build1_stat, build_expr_wfl): Only look at TREE_SIDE_EFFECTS
+ and TREE_CONSTANT if not a type.
+ * tree.h (IS_NON_TYPE_CODE_CLASS): New macro.
+ (IS_EXPR_CODE_CLASS): Write 'E', not 'e'.
+ (NON_TYPE_CHECK): New macro.
+ (TREE_SIDE_EFFECT, TREE_READONLY, TREE_CONSTANT: Add check.
+
+2004-04-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Set
+ to DWARF2_DEBUG unconditionally.
+ (ASM_DEBUG_SPEC): Set the default to --gdwarf2 unconditionally.
+
+2004-04-04 Ian Lance Taylor <ian@wasabisystems.com>
+ Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR target/14548
+ * config.host: Set the shell variable host_can_use_collect2.
+ Set it to yes by default, and to no for alpha*-dec-*vms*,
+ i[34567]86-*-mingw32*, and powerpc-*-beos*.
+ * configure.ac: Set and substitute the shell variable collect2.
+ Give an error if use_collect2 is yes and host_can_use_collect2 is
+ no.
+ * Makefile.in (COLLECT2): Rename from USE_COLLECT2. Change all
+ uses. Initialize to @collect2@.
+ (STAGESTUFF): Remove $(USE_COLLECT2).
+ * config/alpha/x-vms (USE_COLLECT2): Don't set.
+ * config/i386/t-mingw32 (USE_COLLECT2): Likewise.
+ * config/rs6000/t-beos (USE_COLLECT2): Likewise.
+ * config/pa/t-pa64: Remove commented out USE_COLLECT2.
+ * configure: Regenerate.
+
+2004-04-04 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_binary_operation): Constant fold
+ DIV, MOD, UDIV and UMOD using div_and_round_double.
+
+2004-04-04 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14804
+ * varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to
+ RECORD_TYPEs.
+
+2004-04-04 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/invoke.texi (-mabi=o64): Create link to O64 ABI
+ documentation.
+
+2004-04-04 Roger Sayle <roger@eyesopen.com>
+
+ * cse.c (cse_insn): Correct usage of simplify_replace_rtx when
+ updating the REG_EQUAL note on an insn's libcall_insn.
+
+2004-04-04 Roger Sayle <roger@eyesopen.com>
+
+ * df.h: Tidy up whitespace in the definitions of the DF_ flags.
+
+2004-04-03 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <PLUS_EXPR>: Guard (-A)+B -> B-A transformation
+ with reorder_operands_p.
+
+2004-04-03 Jan Hubicka <jh@suse.cz>
+
+ * md.texi (vec_set, vec_extract, vec_init): Document.
+
+2004-04-02 Gabor Loki <loki@inf.u-szeged.hu>
+
+ * opts.c (decode_options): Do function inlining with very small
+ max-inline-insns-* parameters when optimizing for size.
+
+2004-04-02 Vladimir Makarov <vmakarov@redhat.com>
+
+ * config/i386/i386.h (TARGET_NOCONA): New macro.
+ (TARGET_CPU_CPP_BUILTINS): Add code for Nocona.
+ (processor_type): Add PROCESSOR_NOCONA.
+
+ * config/i386/i386.md (cpu): Add nocona to the attribute values.
+
+ * config/i386/i386.c (nocona_cost): New variable.
+ (m_NOCONA): New macro.
+ (x86_push_memory, x86_movx, x86_cmove, x86_deep_branch,
+ x86_branch_hints, x86_use_sahf, x86_single_stringop,
+ x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8,
+ x86_integer_DFmode_moves, x86_partial_reg_dependency,
+ x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
+ x86_decompose_lea, x86_arch_always_fancy_math_387,
+ x86_sse_partial_reg_dependency, x86_sse_load0_by_pxor,
+ x86_ext_80387_constants, x86_four_jump_limit):
+ (override_options): Add nocona_cost to processor_target_table.
+ Set up PROCESSOR_NOCONA for Nocona entry in processor_alias_table.
+ (incdec_operand): Prevent inc/dec generation for Nocona too.
+ (ix86_issue_rate): Add PROCESSOR_NOCONA.
+
+2004-04-01 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * rtlanal.c (find_reg_note): Manually
+ unswitch the loop.
+
+2004-04-01 Mark Mitchell <mark@codesourcery.com>
+
+ * genemit.c (gen_split): Change prototype of generated code.
+ * genrecog.c (write_action): Adjust prototype for and calls to
+ gen_split_*.
+ * gensupport.c (struct queue_elem): Add split field.
+ (queue_pattern): Return a value. Clear the split field.
+ (process_rtx): Maintain an association between an insn and the
+ split generated from it for a define_insn_and_split.
+ (process_one_cond_exec): Generate a new split for a
+ define_insn_and_split.
+ * config/arm/arm-protos.h (arm_split_constant): Add insn
+ parameter.
+ (emit_constant_insn): New function.
+ (arm_gen_constant): Use it.
+ * config/arm/arm.md: Adjust calls to arm_split_constant.
+
+2004-04-02 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c: Add overall comment.
+ (cgraph_inline_hash): New global variable.
+ (cgraph_create_node): Break out from ...
+ (cgraph_node): ... here.
+ (cgraph_edge): New function.
+ (cgraph_create_edge): New CALL_EXPR argument; some sanity checking.
+ (cgraph_remove_edge): Accept edge, intead of source and destination.
+ (cgraph_redirect_edge_callee): New.
+ (cgraph_remove_node): Update all new datastructures.
+ (cgraph_record_call, cgraph_remove_call): Kill.
+ (dump_cgraph_node): Break out from ... ; dump new datastructures.
+ (dump_cgraph): ... here.
+ (cgraph_function_possibly_inlined_p): Use new hashtable.
+ (cgraph_clone_edge, cgraph_clone_node): New.
+ * cgraph.h: Include hashtab.h
+ (struct cgraph_global_info): Kill cloned_times, inline_once, will_be_output
+ fields, add inlined_to pointer.
+ (cgraph_node): Add pointer to next_clone.
+ (cgraph_remove_edge, cgraph_create_edge): Update prototype.
+ (cgraph_remove_call, cgraph_record_call): Kill.
+ (cgraph_inline_hash): Declare.
+ (dump_cgraph_node, cgraph_edge, cg4raph_clone_edge, cgraph_clone_node,
+ cgraph_redirect_edge_callee): Declare.
+ (cgraph_create_edges, cgraph_inline_p): Update prorotype.
+ (cgraph_preserve_function_body_p, verify_cgraph, verify_cgraph_node,
+ cgraph_mark_inline_edge, cgraph_clone_inlined_nodes): Declare.
+ * cgraphunit.c: Add overall comment.
+ (cgraph_optimize_function): Kill.
+ (cgraph_assemble_pending_functions): Do not assemble inline clones.
+ (cgraph_finalize_function): Update call of cgraph_remove_node
+ (record_call_1): Record call sites.
+ (cgraph_create_edges): Accept node instead of decl argument.
+ (error_found): New static variable.
+ (verify_cgraph_node_1, verify_cgraph_node, verify_cgraph): New functions.
+ (cgraph_analyze_function): Update for new datastructures.
+ (cgraph_finalize_compilation_unit): Plug memory leak.
+ (cgraph_optimize_function): Kill.
+ (cgraph_expand_function): Do not use cgraph_optimize_function.
+ (INLINED_TIMES, SET_INLINED_TIMES, cgraph_inlined_into,
+ cgraph_inlined_callees): Kill.
+ (cgraph_remove_unreachable_nodes): Verify cgraph; update handling of
+ clones.
+ (estimate_growth): Simplify.
+ (cgraph_clone_inlined_nodes): New function.
+ (cgraph_mark_inline_edge): Re-implement.
+ (cgraph_mark_inline): Likewise.
+ (cgraph_check_inline_limits): Simplify.
+ (cgraph_recursive_inlining_p): New.
+ (update_callee_keys): Break out from ...
+ (cgraph_decide_inlining_of_small_functions): ... here; simplify.
+ (cgraph_decide_inlining, cgraph_decide_inlining_incrementally):
+ Likewise.
+ (cgraph_expand_all_functions): Remove inline clones from the ordered
+ list.
+ (cgraph_preserve_function_body_p): New predicate.
+ (cgraph_optimize): Verify cgraph.
+ * function.h (struct function): Add fields saved_tree/saved_args.
+ * timevar.def (TV_CGRAPH_VERIFY): Use verifier.
+ * toplev.c (rest_of_compilation): Do not free cfun.
+ * tree-inline.c: Include function.h
+ (struct inline_data): Add saving_p field; replace decl/current_decl by
+ node/current_node.
+ (insert_decl_map): New function.
+ (copy_body_r): Handle saving; update cgraph datastructure.
+ (copy_body): Handle recursive inlining.
+ (initialize_inlined_parameters): Likewise.
+ (expand_call_inline): Propagate node attributes; update cgraph.
+ (optimize_inline_calls): Verify that datastructure still match.
+ (save_body): New function.
+ * tree-inline.h (save_body): New.
+ * tree-optimize.c (tree_rest_of_compilation): preserve function body; do inlining.
+ * langhooks-def.c (LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): New.
+ * langhooks.c (lang_hooks): Add update_decl_after_saving.
+
+2004-04-01 Serge Belyshev <1319@bot.ru>
+
+ PR target/14702
+ * config/i386/i386.md: fix source operand constraints in
+ mmx_pshufw, sse2_pshufd, sse2_pshuflw, sse2_pshufhw
+
+2004-04-01 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ * fold-const.c (folda): Preserve types of comparisons.
+
+2004-04-01 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (backend_init): Move init_optimization_passes call ...
+ (lang_dependent_init): ... here.
+
+2004-04-01 Alan Modra <amodra@bigpond.net.au>
+ Jakub Jelinek <jakub@redhat.com>
+
+ * gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with
+ -lgcc --as-needed -lgcc_s --no-as-needed by default.
+ * configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed.
+ * configure: Rebuilt.
+ * config.in: Rebuilt.
+ * Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT).
+ (stage2-start, stage3-start, stage4-start): Likewise.
+ (stageprofile-start, stagefeedback-start): Likewise.
+
+2004-04-01 Jakub Jelinek <jakub@redhat.com>
+
+ * config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
+ * config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ * config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ * config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
+ (SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
+ * config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
+ with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
+ * config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
+ * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
+ * config/sparc/t-linux: Removed.
+
+2004-04-01 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/14755
+ * fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
+ "bitfld++ == const" to "++bitfld == const + incr" transformations.
+
+2004-04-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.
+ * stor-layout.c (layout_decl): Likewise.
+ * tree.c (get_narrower): Likewise and also use BIT_FIELD_REF_UNSIGNED.
+ * fold-const.c (make_bit_field_ref): Use BIT_FIELD_REF_UNSIGNED.
+ * print-tree.c (print_node): Handle various used of unsigned_flag.
+ * tree.def (BIT_FIELD_REF): Update comment.
+ * tree.h (TREE_UNSIGNED): Deleted.
+ (DECL_UNSIGNED, BIT_FIELD_REF_UNSIGNED): New macros.
+
+2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * builtins.c, c-aux-info.c, c-common.c, c-cppbuiltin.c, c-decl.c:
+ Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.
+ * c-format.c, c-opts.c, c-pretty-print.c, c-typeck.c: Likewise.
+ * calls.c, convert.c, dbxout.c, dojump.c, dwarf2out.c: Likewise.
+ * expmed.c, expr.c, fold-const.c, function.c, integrate.c: Likewise.
+ * optabs.c, sdbout.c, stmt.c, stor-layout.c, tree-dump.c: Likewise.
+ * tree.c, config/iq2000/iq2000.c, config/m32r/m32r.c: Likewise.
+ * config/mips/mips.c, config/rs6000/rs6000.c: Likewise.
+ * config/s390/s390.c, config/sparc/sparc.c, objc/objc-act.c: Likewise.
+ * stor-layout.c (layout_type, case COMPLEX_TYPE): Test for
+ REAL_TYPE, not INTEGER_TYPE.
+ (layout_type, case VECTOR_TYPE): Simplify code.
+ * tree.c (build_vector_type_for_mode): Remove dup unsigned setting.
+ * tree.h: Update comments.
+ (STRIP_NOPS): Use TYPE_UNSIGNED.
+ (TYPE_UNSIGNED): New macro.
+ (TYPE_TRAP_SIGNED): Remove now redundant check.
+ (SAVE_EXPR_NOPLACEHOLDER): Don't use TREE_UNSIGNED.
+
+2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * function.c (put_var_into_stack): Properly set orig_reg for indirect.
+
+2004-03-31 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/t-darwin (LIB2FUNCS_STATIC_EXTRA):
+ Add darwin-fpsave.asm, darwin-vecsave.asm,
+ and darwin-world.asm.
+ (TARGET_LIBGCC2_CFLAGS): Add -Wa,-force_cpusubtype_ALL
+ as the asm files contain altivec instructions.
+ * config/rs6000/darwin-fpsave.asm: New file.
+ * config/rs6000/darwin-vecsave.asm: New file.
+ * config/rs6000/darwin-world.asm: New file.
+
+2004-03-31 Zack Weinberg <zack@codesourcery.com>
+
+ * gengtype-yacc.y (option, stringseq): Add missing
+ terminating semicolon.
+
+2004-03-30 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (tls_gd_32, tls_gd_64,
+ tls_ld_32, tls_ld_64, tls_dtprel_32, tls_dtprel_64,
+ tls_dtprel_ha_32, tls_dtprel_ha_64,
+ tls_dtprel_lo_32, tls_dtprel_lo_64,
+ tls_got_dtprel_64, tls_tprel_32, tls_tprel_64,
+ tls_tprel_ha_32, tls_tprel_ha_64,
+ tls_tprel_lo_32, tls_tprel_lo_64,
+ tls_got_tprel_32, tls_got_tprel_64,
+ tls_tls_32, tls_tls_64): Replace register_operand with
+ gpc_reg_operand.
+
+2004-03-30 Mostafa Hagog <mustafa@il.ibm.com>
+
+ * config/rs6000/rs6000.md (*ctrsi_internal1, *ctrsi_internal2,
+ *ctrdi_internal1, *ctrdi_internal2, *ctrsi_internal3,
+ *ctrsi_internal4, *ctrdi_internal3, *ctrdi_internal4,
+ *ctrsi_internal5, *ctrsi_internal6, *ctrdi_internal5,
+ *ctrdi_internal6): Replace register_operand with
+ nonimmediate_operand.
+
+2004-03-29 Fariborz Jahanian <fjahanian@apple.com>
+
+ * fold-const.c (fold): Reassociate multiply expression
+ with an adjacent non-multiply expression to use
+ architecture's multiply-add instruction.
+
+2004-03-30 Zack Weinberg <zack@codesourcery.com>
+
+ * gengtype.c (create_option): New function.
+ * gengtype.h: Prototype it.
+ * gengtype-yacc.y (stringseq): New rule.
+ (option): Use create_option. Add new bare ID production. Use
+ stringseq, not STRING directly.
+
+ * alias.c, bitmap.c, c-decl.c, cgraph.h, cpplib.h, cselib.h
+ * dwarf2out.c, emit-rtl.c, function.h, lists.c, tree.h
+ * varray.h, config/alpha/alpha.c:
+ Use new shorter form of GTY markers.
+
+ * doc/gty.texi: Rewrite.
+
+2004-03-30 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/darwin.c (machopic_function_base_name):
+ Remove current_name and getting the name of the
+ current function.
+
+2004-03-30 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.md (thumb_jump): Reduce the backward branch
+ range, and increase the forward branch range, to allow for
+ the fact that the PC will be off by 4.
+
+2004-03-30 Alan Modra <amodra@bigpond.net.au>
+
+ * .cvsignore: Add GPATH, GRTAGS, GSYMS and GTAGS (GNU GLOBAL)
+
+2004-03-30 Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/rs6000/rs6000.c (output_vec_const_move):
+ Find all cases of EASY_VECTOR_15_ADD_SELF.
+ (easy_vector_constant_add_self): Accept
+ all vector constant loadable by vsplt* and vadd*.
+ (easy_vector_same): Use easy_vector_splat_const.
+ (easy_vector_const): Use easy_vector_splat_const.
+ (easy_vector_splat_const): New function.
+ (gen_easy_vector_constant_add_self): New function.
+
+ * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self):
+ New prototype.
+
+ * config/rs6000/altivec.md (movv4si splitter): Change to
+ emit move insn with halfed vector constant.
+ (*movv8hi splitter): Likewise.
+ (*movv16qi splitter): Likewise.
+
+2004-03-30 Hartmut Penner <hpenner@de.ibm.com>
+
+ PR 11591
+ * config/rs6000/rs6000.c (rs6000_legitimate_address):
+ Allow any offset to argument pointer in no-strict case.
+
+2004-03-30 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (backend_init): Add missing call to inint_optimization_passes.
+ * passes.c (init_optimization_passes, finish_optimization_passes): Output cgraph
+ dump file in non-unit-at-a-time mode.
+
+2004-03-29 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.h: Correct #ifdef to test for
+ HAVE_AS_NO_MUL_BUG_ABORT_OPTION, not
+ HAVE_AS_MUL_BUG_ABORT_OPTION.
+
+2004-03-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * function.c (put_var_into_stack): If old RTL was ADDRESSOF, update
+ the address inside the old RTL.
+
+2004-03-28 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c: Verify that C_SIZEOF_STRUCT_LANG_IDENTIFIER is correct.
+ (struct c_binding, struct c_scope): Add chain_next
+ attributes to GTY markers.
+ (struct lang_identifier, struct lang_tree_node): Define
+ here...
+ * c-tree.h: ... not here. No longer need to declare struct
+ c_binding either. Do define C_SIZEOF_STRUCT_LANG_IDENTIFIER.
+ * c-lang.c, objc/objc-lang.c: Set LANG_HOOKS_IDENTIFIER_SIZE
+ to C_SIZEOF_STRUCT_LANG_IDENTIFIER.
+
+ PR 14734, 11944
+ * c-decl.c (get_parm_info): If error_mark_node is encountered
+ in the bindings chain, unbind and discard it; don't abort.
+
+2004-03-28 Olga Golovonevsky <olga@il.ibm.com>
+ Dorit Naishlos <dorit@il.ibm.com>
+
+ * config/rs6000/altivec.md: (andvv16qi3, andv8hi3, one_cmplv16qi2,
+ one_cmplv8hi2, one_cmplv4si2, iorv16qi3, iorv8hi3,): New modelling.
+
+2004-03-28 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11-protos.h (m68hc11_page0_symbol_p): Declare.
+
+ * config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute): New.
+ (m68hc11_attribute_table): New attribute "page0" to mark a global
+ variable as being allocated from within page0 section.
+ (m68hc11_encode_label): New function.
+ (m68hc11_strip_name_encoding): New function.
+ (m68hc11_page0_symbol_p): New function.
+ (m68hc11_indirect_p): Accept global variables marked in page0.
+ (m68hc11_encode_section_info): Lookup "page0" attribute.
+
+ * config/m68hc11/m68hc11.h (EXTRA_CONSTRAINT): 'R' constraint also
+ represents access to page0 variables.
+
+ * config/m68hc11/m68hc11.md ("*logicalsi3_zexthi"): Use gen_rtx_REG.
+ ("*logicalsi3_silshl16_zext"): Likewise.
+ ("*ashldi3_const32"): Likewise.
+ (peephole2 ashift): Likewise.
+
+2004-03-28 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-tree.h (C_DECL_REGISTER): New.
+ * c-aux-info.c (gen_decl), c-decl.c (objc_mark_locals_volatile,
+ finish_decl, grokdeclarator, get_parm_info), c-typeck.c
+ (build_array_ref, c_mark_addressable): Set and use it.
+ * c-decl.c (grokdeclarator), c-typeck.c (c_mark_addressable):
+ Allow structures with volatile fields to be declared register.
+ Don't check TREE_ADDRESSABLE before warning about taking address
+ of register.
+ * c-decl.c (finish_decl): Don't allow structures with volatile
+ fields to be placed in named register.
+ * doc/trouble.texi: Remove reference to structures with volatile
+ fields in registers.
+
+2004-03-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * function.c (thread_prologue_and_epilogue): Move
+ NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes
+ before the epilogue.
+
+2004-03-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * expr.c (store_constructor): Use gen_int_mode to correctly
+ sign-extend CONST_INT value.
+
+2004-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtin-types.def (BT_WINT, BT_FN_INT_WINT, BT_FN_WINT_WINT): New.
+ * builtins.def (DEF_C94_BUILTIN): New. Add wctype builtins.
+ * doc/extend.texi: Likewise.
+
+2004-03-26 Diego Novillo <dnovillo@redhat.com>
+
+ * c-typeck.c (comptypes): Replace calls to TYPE_DOMAIN
+ with TYPE_ORIG_SIZE_TYPE.
+
+2004-03-25 Aldy Hernandez <aldyh@redhat.com>
+
+ PR 14219
+ * c-typeck.c (build_binary_op): Do not allow comparisons of
+ vectors.
+
+2004-03-26 James A. Morrison <ja2morri@uwaterloo.ca>
+
+ * config.gcc: Remove sparc-tti-*.
+ * config/sparc/pbd.h: Delete.
+
+ * config/sparc/sol2.h: Remove note about Sun OS 4.x.
+ * config/sparc/aout.h: Likewise.
+
+ * config/sparc/sparc.h: Remove if 0'd code.
+ * config/sparc/sparc.md (call): Remove if 0'd code.
+ (call_value): Likewise.
+ (nonlocal_goto): Likewise.
+ (unimp_insn): Delete.
+
+2004-03-25 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like
+ BIT_IOR_EXPR; A^B is nonnegative when A and B are nonnegative.
+
+2004-03-25 Richard Henderson <rth@redhat.com>
+
+ PR 11527
+ * c-typeck.c (pop_init_level): Emit pending init elements earlier
+ rather than later.
+
+2004-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin): Fix error in last change.
+
+2004-03-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h: Formatting fix.
+
+2004-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.def: Add ctype builtins.
+ * doc/extend.texi: Likewise.
+
+2004-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (fold_builtin): Add new builtin optimizations for
+ sqrt and/or cbrt.
+ * fold-const.c (fold): Likewise.
+
+2004-03-25 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_always_hint): New variable.
+ (rs6000_sched_groups): New variable.
+ (processor_target_table): Add power5.
+ (rs6000_override_options): Set rs6000_sched_insert_nops,
+ rs6000_sched_costly_dep and rs6000_sched_restricted_insns_priority
+ from rs6000_sched_groups.
+ (output_cbranch): Use rs6000_always_hint.
+ (rs6000_variable_issue): Use rs6000_sched_groups.
+ (rs6000_adjust_cost): Add CPU_POWER5.
+ (is_microcoded_insn): Use rs6000_sched_groups.
+ (is_dispatch_slot_restricted): Use rs6000_sched_groups.
+ Return 2 for POWER5 cracked instructions.
+ (is_cracked_insn): Use rs6000_sched_groups.
+ (is_branch_slot_insn): Use rs6000_sched_groups.
+ (rs6000_issue_rate): Add CPU_POWER5.
+ (rs6000_sched_finish): Use rs6000_sched_groups.
+ (rs6000_rtx_costs): Add PROCESSOR_POWER5.
+ * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER5.
+ (DEFAULT_SCHED_COSTLY_DEP): Delete.
+ (DEFAULT_RESTRICTED_INSNS_PRIORITY): Delete.
+ (DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Delete.
+ * config/rs6000/rs6000.md (define_attr "cpu"): Add power5.
+ * config/rs6000/power5.md: New file.
+ * doc/invoke.texi: Add power5 option.
+
+2004-03-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cfgrtl.c, dbxout.c, tree.def, config/darwin.h,
+ config/arm/arm.c, objc/objc-act.c: Fix comment typos.
+ * doc/invoke.texi: Fix a typo.
+
+2004-03-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR optimization/9707.
+ * stmt.c (emit_case_nodes): Emit equality comparisons instead
+ of recursing if both children are single-valued cases with no
+ children.
+
+2004-03-25 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (vfp_print_multi): Remove.
+ (arm_output_fldmx): New function.
+ (vfp_emit_fstmx): Return block size, not insn. Add ARM10 VFPr1 bugfix.
+ (arm_expand_prologue): Update to match.
+ (arm_get_vfp_saved_size): New Function.
+ (arm_get_frame_offsets): Use it.
+ (arm_output_epilogue): Use new functions.
+
+2004-03-24 Richard Henderson <rth@redhat.com>
+
+ * alias.c (alias_invariant, alias_invariant_size): Mark GTY.
+ (reg_known_value, reg_known_value_size): Likewise; make static.
+ (reg_known_equiv_p): Make static.
+ (clear_reg_alias_info): Update for new indexing.
+ (get_reg_known_value, set_reg_known_value): New.
+ (get_reg_known_equiv_p, set_reg_known_equiv_p): New.
+ (canon_rtx): Use them.
+ (init_alias_analysis): Likewise. Allocate reg_known_value with gc.
+ Don't play queer offsetting games with reg_known_value and
+ reg_known_equiv_p.
+ (end_alias_analysis): Free reg_known_value with gc.
+ * rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare.
+ * sched-deps.c (reg_known_equiv_p, reg_known_value): Remove.
+ (deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new
+ functions instead.
+
+2004-03-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * dwarf2asm.c, loop.h, pretty-print.c, pretty-print.h,
+ config/i386/mmintrin.h: Update copyright.
+
+2004-03-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Add --enable-werror-always (for top level bootstrap
+ support).
+ * configure: Regenerate.
+
+2004-03-24 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (objc_comptypes): Treat comparisons
+ between 'Class' and '<class> *' as explicitly invalid.
+
+2004-03-24 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/invoke.texi (-frename-registers): Add enabled at -O3.
+ (-fprofile-values): Add enabled with profile-{generate,use}.
+ (-fvpt): Same.
+ (-ftracer): Add enabled with profile-use.
+ (-funit-at-a-time): Add enabled at -O2,-O3.
+ (-funroll-loops): Add enabled with profile-use.
+ (-funswitch-loops): Add enabled with profile-use. Remove duplicates.
+ (max-gcse-passes): Mention default.
+ (max-cse-path-length): Mention default.
+
+2004-03-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in (STRICT2_WARN): Reorder.
+ * configure.ac: Check for -Wold-style-definition, and use it
+ in strict1_warn if it's available.
+ * configure: Regnerate.
+
+2004-03-24 Paul Brook <paul@nowt.org>
+
+ * config.gcc <arm>: Add --with-abi=
+ * config/arm/arm-protos.h (arm_get_frame_size, thumb_get_frame_size,
+ thumb_far_jump_used): Remove prototypes.
+ (arm_needs_doubleword_align): Add prototype.
+ (thumb_compute_initial_elimination_offset): Ditto.
+ * config/arm/arm.c (arm_get_frame_offsets): New function.
+ (use_return_insn, output_return_instruction, arm_output_epilogue,
+ arm_output_function_epilogue, arm_compute_initial_elimination_offset,
+ arm_expand_prologue, thumb_expand_epilogue): Use it.
+ (arm_abi, target_abi_name, all_arm_abis): New variables.
+ (arm_override_options): Set them. Set structure padding for AAPCS.
+ (arm_return_in_memory): Update ABI check.
+ (arm_init_cumulative_args): Initialize can_split.
+ (arm_needs_doubleword_align): New function.
+ (arm_function_arg): Don't split args after pushing to stack. Handle
+ doubleword/even reg alignment.
+ (arm_va_arg): Handle all doubleword aligned args.
+ (add_minpoolforward ref, dump_minpool, push_minpool_fix): Align based
+ on ABI, not CPU.
+ (arm_compute_save_reg0_reg12_mask): Fix comment.
+ (thumb_get_frame_size, thumb_get_frame_size): Remove.
+ (thumb_jump_far_used_p): Remove superfluous argument. Return save
+ value for alignment.
+ (thumb_unexpanded_epilogue, thumb_output_function_prologue): Change
+ to match.
+ (thumb_compute_initial_elimination_offset): New function.
+ (thumb_expand_prologue): Use arm_get_frame_offsets. Remove
+ unneccessary rounding.
+ * config/arm/arm.h (target_abi_name): Declare.
+ (ARM_DOUBLEWORD_ALIGN, DOUBLEWORD_ALIGNMENT, TARGET_IWMMXT_ABI,
+ arm_abi_type, ARM_DEFAULT_ABI): Define.
+ (ARM_FLAG_ATPCS): Remove.
+ (TARGET_OPTIONS, OPTION_DEFAULT_SPECS): Add -mabi=.
+ (BIGGEST_ALIGNMENT, PREFERRED_STACK_BOUNDARY, STACK_BOUNDARY): Use it.
+ (ADJUST_FIELD_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT,
+ TYPE_NEEDS_IWMMXT_ALIGNMENT): Remove.
+ (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P):
+ Contitionalize on ABI, not CPU.
+ (struct arm_stack_offsets): Define.
+ (struct machine_function): Add stack_offsets. Remove frame_size.
+ (FUNCTION_ARG_PARTIAL_NREGS): Don't split if previous args have been
+ pushed.
+ (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY): Handle general
+ doubleword alignment.
+ (THUMB_INITIAL_ELIMINATION_OFFSET,
+ ARM_INITIAL_ELIMINATION_OFFSET): Remove.
+ (INITIAL_ELIMINATION_OFFSET): Call functions directly.
+ * config/arm/arm.md (align_8): Enable for all targets.
+ * config/arm/netbsd-elf.h (TARGET_DEFAULT): Remove TARGET_ATPCS.
+ (ARM_DEFAULT_ABI): Define.
+ * doc/invoke.texi <ARM>: Document -mabi=. Update documentation for
+ -mstructure-size-boundary.
+
+2004-03-24 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Check for -Wno-variadic-macros; don't use
+ -pedantic (in stage 1 or a simple 'make all') unless it's available,
+ and if it's available, use it. Also, clean up check for
+ -Wno-long-long.
+ * configure: Regenerate.
+
+2004-03-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Remove tm_defines.
+ * config/mips/vr.h (DEFAULT_VR_ARCH): New macro, defined to vr4130.
+ (MULTILIB_DEFAULTS): Use it.
+ (MIPS_CPU_STRING_DEFAULT): Remove.
+ (MIPS_ABI_DEFAULT, MIPS_MARCH_CONTROLS_SOFT_FLOAT): Define.
+ (DRIVER_SELF_SPECS): Make -mfix-vr4122-bugs imply -march=vr4120. Make
+ EABI64 -mlong32 the default ABI. Enforce the default architecture.
+ * config/mips/t-vr (MULTILIB_OPTIONS): Add mfix-vr4122-bugs,
+ march=vr4130, march=vr4300, march=vr5000 and march=vr5500.
+ (MULTILIB_MATCHES): Use -mfix-vr4122-bugs multilibs for -march=vr4120.
+ (MULTILIB_EXCEPTIONS): Change choice of multilibs. Update comments
+ accordingly.
+
+2004-03-24 DJ Delorie <dj@redhat.com>
+ Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (MASK_FIX_VR4122, TARGET_FIX_VR4122): New macros.
+ (TARGET_SWITCHES): Add -mfix-vr4122-bugs and -mno-fix-vr4122-bugs.
+ (ASM_SPEC): Pass down -mfix-vr4122-bugs.
+ * config/mips/mips.c (mips_avoid_hazards): Don't emit whole functions
+ in .set noreorder and .set nomacro if TARGET_FIX_VR4122.
+ (mips_init_libfuncs): Use special functions for divsi3 and modsi3
+ if TARGET_FIX_VR4122.
+ * config/mips/mips.md (define_attr length): Account for nops inserted
+ after macc and dmult when using -mfix-vr4122-bugs.
+ (umuldi3_highpart, divmodsi4, divmoddi4): Disable if TARGET_FIX_VR4122.
+ * config/mips/t-vr (LIB2FUNCS_STATIC_EXTRA): Define instead of
+ LIB2FUNCS_EXTRA. Add config/mips/vr4122-div.S.
+ * config/mips/vr4122-div.S: New file.
+ * doc/invoke.texi: Document -mfix-vr4122-bugs.
+
+2004-03-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (PROCESSOR_R4130): New processor_type.
+ (TARGET_MIPS4130): New macro.
+ (ISA_HAS_MACC): Return true if TARGET_MIPS4130 && !TARGET_MIPS16.
+ * config/mips/mips.c (mips_cpu_info_table): Add a vr4130 entry.
+ (override_options): Extend MIPS_MARCH_CONTROLS_SOFT_FLOAT to deal
+ with PROCESSOR_R4130.
+ * config/mips/mips.md (define_attr cpu): Add r4130.
+ * doc/invoke.texi: Document vr4130 as a supported MIPS architecture.
+
+2004-03-24 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+ Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Apply missed hunk from 2004-03-03 change.
+
+2004-03-24 Alexandre Oliva <aoliva@redhat.com>
+
+ PR preprocessor/14438
+ * cpplib.c (do_pragma): Remove line_change call after pragma
+ handler.
+
+2004-03-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * doc/extend.texi (ARM Built-in Functions): Replace with correct
+ declarations.
+
+2004-03-23 Roger Sayle <roger@eyesopen.com>
+
+ * reg-stack.c (get_true_reg): Handle FLOAT_TRUNCATE like FLOAT_EXTEND
+ if flag_unsafe_math_optimizations.
+ * config/i386/i386.md (truncdfsf2): If flag_unsafe_math_optimizations
+ and TARGET_80387 expand using truncdfsf2_noop pattern.
+ (truncxfsf2): Likewise using truncxfsf2_noop.
+ (truncxfdf2): Likewise using truncxfdf2_noop.
+ (truncdfsf2_noop, truncxfsf2_noop, truncxfdf2_noop): New patterns.
+
+2004-03-23 Ziemowit Laski <zlaski@apple.com>
+
+ * hooks.c (hook_constcharptr_tree_null): New hook.
+ * hooks.h (hook_constcharptr_tree_null): New prototype.
+ * target-def.h (TARGET_MANGLE_FUNDAMENTAL_TYPE): New target hook.
+ * target.h (mangle_fundamental_type): New target hook.
+ * config/rs6000/rs6000.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Point
+ target hook at rs6000_mangle_fundamental_type.
+ (rs6000_mangle_fundamental_type): New function.
+ * doc/tm.texi (TARGET_MANGLE_FUNDAMENTAL_TYPE): Document.
+
+2004-03-23 Zack Weinberg <zack@codesourcery.com>
+
+ PR 12267, 12391, 12560, 13129, 14114, 14133
+ * c-tree.h: Forward declare struct c_binding. Declare
+ c_override_bindings_to_false. Update prototypes.
+ (struct lang_identifier): Update comments. Change fields to be
+ struct c_binding *.
+ (IDENTIFIER_SYMBOL_VALUE, IDENTIFIER_TAG_VALUE)
+ (IDENTIFIER_LABEL_VALUE, C_DECL_INVISIBLE)
+ (KEEP_NO, KEEP_YES, KEEP_MAYBE): Delete.
+ (C_DECL_IN_EXTERNAL_SCOPE, C_DECL_DECLARED_BUILTIN): New.
+ * c-common.h: Update prototypes.
+ * c-decl.c (struct c_scope): Update commentary. Remove names,
+ names_last, parms, parms_last, tags, and shadowed fields. Add
+ bindings and depth fields.
+ (scope_freelist): Move to more appropriate location.
+ (c_print_identifier): Update for changes to struct lang_identifier.
+ (objc_mark_locals_volatile): Update for new bindings structures.
+ (global_bindings_p): Honor c_override_global_bindings_to_false.
+ (pushlevel): Rename to push_scope; take no arguments; use the
+ scope_freelist; initialize scope->depth and check for overflow.
+ (poplevel): Rename to pop_scope; totally rewritten for new bindings
+ structures.
+ (diagnose_mismatched_decls): Use C_DECL_DECLARED_BUILTIN, not
+ C_DECL_INVISIBLE, for certain decisions. Adjust some diagnostics.
+ Improve some commentary. Adjust handling of forward parm decls.
+ (merge_decls): Set C_DECL_DECLARED_BUILTIN when appropriate.
+ Preserve C_DECL_IN_EXTERNAL_SCOPE.
+ (warn_if_shadowing): Correct indentation. Improve diagnostics.
+ (pushdecl): Remove unnecessary assertion. Short-circuit anonymous
+ decls. Rewrite for new bindings structures. Improve commentary.
+ Eliminate the copy_node call.
+ (implicit_decl_warning): Use the "diag" idiom (as seen in
+ locate_old_decl) to reduce code duplication; call locate_old_decl
+ if appropriate. Relocate to remove need for forward declaration.
+ (implicitly_declare): Adjust for new bindings structures. Kludge
+ around Objective-C not-really-builtin functions.
+ (undeclared_variable): Improve diagnostics. If current_function_decl
+ is nonnull but current_function_scope is null, use current_scope.
+ Use bind.
+ (lookup_tag): Adjust for new bindings structures. Kludge around
+ Objective-C's tag declarations that wind up in the external scope.
+ (lookup_name): Adjust for new bindings structures. Kludge around
+ c-common.c's pseudo-typedefs that wind up in the external scope.
+ (lookup_name_current_level): Rename lookup_name_in_scope; take a
+ second argument indicating the scope to examine; rewrite for
+ new bindings structures.
+ (c_init_decl_processing): Adjust for renamed functions. Do not
+ initialize current_file_decl, first_builtin_decl, last_builtin_decl.
+ First scope pushed is the external scope, not the global scope.
+ (builtin_function): Use bind, not pushdecl. Adjust other bits
+ for new data structures. Keep track of builtins that should be
+ made visible automatically.
+ (start_decl): Adjust diagnostics. Remove unnecessary call to
+ expand_decl.
+ (grokparms): Return 0 if arg_types is error_mark_node.
+ (get_parm_info): Rename "void_at_end" argument to "ellipsis", with
+ reversed sense. Rewrite for new bindings structures. Do not
+ leave any decls in the scope, to prevent pop_scope from doing
+ contradictory things with them.
+ (finish_struct, finish_enum): Remove redundant diagnostics.
+ (build_enumerator): Don't cascade diagnostics for error_mark_node.
+ Mark location where -pedantic changes the meaning of the program.
+ (store_parm_decls_newstyle, store_parm_decls_oldstyle): Load the
+ parameter decls into the function's scope structure using bind.
+ Warn here about function definitions in the wrong style.
+ Adjust diagnostics.
+ (store_parm_decls): Correct the determination of whether a
+ function was defined with a prototype.
+ (c_write_global_declarations): Operate on all file decls and on
+ the external scope. Split body of the loop to...
+ (c_write_global_declarations_1): ... this new function, to avoid
+ code duplication.
+ (truly_local_externals, first_builtin_decl, last_builtin_decl)
+ (make_scope, pop_scope, in_parm_level_p, set_block)
+ (any_external_decl, record_external_decl, bind_label, getdecls)
+ (link_hash_hash, link_hash_eq, merge_translation_unit_decls)
+ (c_reset_state): Delete.
+ (visible_builtins, c_override_global_bindings_to_false)
+ (c_binding, I_SYMBOL_BINDING, I_SYMBOL_DECL, I_TAG_BINDING)
+ (I_TAG_DECL, I_LABEL_BINDING, I_LABEL_DECL, file_scope)
+ (external_scope, binding_freelist, bind, free_binding_and_advance)
+ (push_file_scope, pop_file_scope): New.
+ (pushtag, pushdecl_top_level, lookup_label, declare_label)
+ (define_label, c_make_fname_decl, finish_decl)
+ (mark_forward_parm_decls, build_compound_literal)
+ (grokdeclarator, start_function, check_for_loop_decls)
+ (identifier_global_value, record_builtin_type): Minor adjustments
+ for new bindings structures. Improve diagnostics and commentary.
+ * c-objc-common.c (start_cdtor, finish_cdtor): Adjust calls to
+ pushlevel/poplevel respectively.
+ (c_objc_common_finish_file): Don't call merge_translation_unit_decls.
+ * c-opts.c (c_common_parse_file): Remove spurious ATTRIBUTE_UNUSED.
+ Warn about YYDEBUG not being defined only if -dy. Remove no-longer-
+ correct loop over multiple translation units; call fatal_error if
+ requested to compile more than one file at once. (This disables
+ IMA temporarily - an up-front error being preferable to a crash.)
+ * c-parse.in (pushlevel, poplevel rules): Rename push_scope, pop_scope.
+ (all actions): Adjust calls to pushlevel/poplevel.
+ (parsing_iso_function_signature): Delete.
+ (extdef_1): Fold into extdef.
+ (old_style_parm_decls_1): Fold into old_style_parm_decls. Don't
+ warn here about function definitions in the wrong style.
+ (after_tyle_declarator, parm_declarator_starttypename)
+ (parm_declarator_nostarttypename, notype_declarator): Remove
+ commented-out productions.
+ (parmlist_1, parmlist_2): Use make_node, not tree_cons, to create
+ an empty TREE_LIST node. Adjust calls to get_parm_info.
+ (parmlist_2 : ELLIPSIS): Tag the arg-info block with error_mark_node
+ to suppress -Wold-style-definition after this error.
+ (c_parse_file): Don't clear the binding stack or call
+ finish_fname_decls here. Correct comment.
+ * c-typeck.c (same_translation_unit_p): Export.
+ (common_type): Use c_override_global_bindings_to_false, not
+ pushlevel/poplevel/declare_parm_level.
+ * c-lang.c: Override LANG_HOOKS_CLEAR_BINDING_STACK,
+ LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK,
+ and LANG_HOOKS_GETDECLS with do-nothing stubs.
+ * objc/objc-lang.c: Likewise.
+ * objc/objc-act.c: Adjust all calls to pushlevel, poplevel,
+ get_parm_info.
+ (OBJC_VOID_AT_END): Delete; replace all uses
+ with void_list_node.
+ (generate_forward_declaration_to_string_table): Delete.
+ * objc/objc-act.h (OCTI_STRG_DECL, UOBJC_STRINGS_decl): Delete.
+
+ * coverage.c (create_coverage): Don't pushdecl anything.
+ * langhooks.c (lhd_clear_binding_stack): Call
+ lang_hooks.decls.poplevel, not poplevel.
+ * tree.c (list_length): If ENABLE_TREE_CHECKING, abort on a
+ circular list rather than going into an infinite loop.
+
+2004-03-23 Olivier Hainque <hainque@act-europe.fr>
+
+ * optabs.c (expand_binop): When synthesizing double word rotates
+ from single word shifts, use a new register target if the provided
+ target is not a REG already.
+
+2004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * alias.c (get_alias_set): Add support for TYPE_REF_CAN_ALIAS_ALL.
+ * c-common.c (handle_mode_attribute): Add extra arg to
+ build_pointer_type_for_mode and build_reference_type_for_mode.
+ * c-typeck.c (build_c_cast): Only look at TREE_CONSTANT_OVERFLOW
+ for INTEGER_CST.
+ * tree.c (build_pointer_type_for_mode): Add arg CAN_ALIAS_ALL.
+ Chain pointers via TYPE_NEXT_PTR_TO.
+ (build_reference_type_for_mode): Similarly.
+ (build_type_no_quals): Add extra arg to build_pointer_type_for_mode
+ and build_reference_type_for_mode.
+ (tree_check4_failed): New function.
+ * tree.h (TREE_CHECK4, PTR_OR_REF_CHECK): New macros.
+ (TYPE_REF_CAN_ALIAS_ALL, TYPE_NEXT_PTR_TO, TYPE_NEXT_REF_TO): Likewise.
+ (TREE_NO_UNSUED_WARNING, TREE_VIA_VIRTUAL, TREE_CONSTANT_OVERFLOW):
+ Add check.
+
+2004-03-23 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (tree_expr_nonnegative_p): A&B is nonnegative when
+ A is nonnegative or B is nonnegative. Similarly A|B is nonnegative
+ when both A and B are nonnegative.
+ (tree_expr_nonzero_p): A|B is nonzero when A is nonzero or B is
+ nonzero.
+
+2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Remove cases for INTEGER_CST, REAL_CST,
+ VECTOR_CST, STRING_CST, COMPLEX_CST, and CONSTRUCTOR.
+
+2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR optimization/14669
+ * fold-const.c (fold): Only unwiden integer comparisons for equality
+ and inequality operators, or when the signedness doesn't change.
+
+2004-03-23 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file.
+ * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set.
+ * config/sparc/t-linux: New file.
+
+2004-03-23 Richard Sandiford <rsandifo@redhat.com>
+
+ * gcse.c (can_assign_to_reg_p): New function, split out from...
+ (want_to_gcse_p): ...here.
+ (compute_ld_motion_mems): Use can_assign_to_reg_p to validate
+ the rhs of a store.
+
+2004-03-22 Diego Novillo <dnovillo@redhat.com>
+
+ * c-typeck.c (same_translation_unit_p): Fix pasto.
+
+2004-03-22 David Edelsohn <edelsohn@gnu.org>
+
+ * params.def (PARAM_MAX_SCHED_REGION_BLOCKS): New.
+ (PARAM_MAX_SCHED_REGION_INSNS): New.
+ * sched-rgn.c: Include params.h
+ (MAX_RGN_BLOCKS): Delete.
+ (MAX_RGN_INSNS): Delete.
+ (too_large): Return bool. Convert to PARAM_VALUE.
+ * Makefile.in (sched-rgn.o): Depend on $(PARAMS_H).
+ * doc/invoke.texi (param): Document max-sched-region-blocks and
+ max-sched-region-insns.
+
+2004-03-22 Joel Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (is_subrange_type): Do not emit a subrange_type DIE
+ for base types.
+
+2004-03-22 Joel Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (is_subrange_type): Minor code rework. No behavior
+ change.
+
+2004-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/14069
+ * c-decl.c (finish_struct): Change type of incorrect flexible array
+ field into error_mark_node.
+
+2004-03-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/14580
+ * config/rs6000/rs6000.c (symbol_ref_operand): Reject symbols
+ who are not local for Darwin PIC.
+
+2004-03-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * regrename.c (regrename_optimize): Set regs_ever_live for all
+ registers introduced as replacement.
+
+2004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/14470
+ * expr.c (mark_queue): New function.
+ (emit_insns_enqueued_after_mark): New function replacing
+ emit_queue. Clear the body of emitted queued insns.
+ (emit_queue): Call emit_insns_enqueued_after_mark.
+ (store_expr): Mark the increment queue on entry. Emit
+ only the incrementations queued when expanding the source.
+
+2004-03-22 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Allow --disable-coverage-flags (for the future benefit
+ of top level bootstrap, and consistency). Reindent.
+ * configure: Regenerate.
+
+2004-03-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bt-load.c, builtins.c, cfghooks.c, cfgrtl.c, gcse.c,
+ ggc-page.c, integrate.c, var-tracking.c, web.c: Remove
+ unnecessary casts.
+
+2004-03-22 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR target/14291
+ * gcov-io.h (gcov_truncate): Define ftruncate as _chsize for
+ __MINGW32__.
+
+2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*doloop_si"): Change predicate for operand 2
+ to nonimmediate_operand.
+ ("*doloop_di"): Likewise.
+
+2004-03-21 Alexandre Oliva <aoliva@redhat.com>
+
+ * real.h (struct real_value): Use the same type for all
+ bitfields. Rename exp to uexp.
+ (REAL_EXP, SET_REAL_EXP): New accessor macros for uexp.
+ Adjust all uses of exp...
+ * builtins.c: ... here, ...
+ * emit-rtl.c: ... here, and ...
+ * real.c: ... and here.
+
+2004-03-21 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * pretty-print.c (pp_base_maybe_space): New function.
+ * pretty-print.h (pp_base_maybe_space): Declare.
+ (pp_maybe_space): New macro.
+
+2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("addti3", "subti3"): New insns and splitters.
+
+2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * expmed.c (choose_mult_variant): Pass MULT_COST as argument instead
+ of using register multiplication cost.
+ (expand_mult): Adapt choose_mult_variant call.
+ (expand_mult_highpart): Call choose_mult_variant with WIDER_MODE
+ of MODE; pass appropriate cost bound. Adjust result when
+ performing signed multiplication by a negative constant.
+ Don't use intermediate modes larger than word_mode.
+
+2004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * alias.c (get_alias_set): Remove handling of PLACEHOLDER_EXPR.
+ * emit-rtl.c (component_ref_for_mem_expr): Likewise.
+ (set_mem_attributes_minus_bitpos): Call SUBSTITUTE_PLACEHOLDER_IN_EXPR.
+ * explow.c (expr_size): Likewise.
+ * expr.h (placeholder_list, find_placeholder): Deleted.
+ * expr.c (store_constructor): Likewise.
+ (get_inner_reference): Likewise. Also don't call find_placeholder.
+ (placeholder_list, find_placeholder): Deleted.
+ (is_aligning_offset): Don't handle WITH_RECORD_EXPR, PLACEHOLDER_EXPR.
+ (expand_expr_real, cases PLACEHOLDER_EXPR, WITH_RECORD_EXPR): Likewise.
+ (highest_pow2_factor, case WITH_RECORD_EXPR): Remove.
+ * dojump.c (do_jump, case WITH_RECORD_EXPR): Likewise.
+ * dwarf2out.c (loc_descriptor_from_tree, case WITH_RECORD_EXPR):
+ Likewise.
+ * fold-const.c (invert_truthvalue, case WITH_RECORD_EXPR): Likewise.
+ (extract_muldiv, case WITH_RECORD_EXPR): Likewise.
+ * tree.c (expr_align, case WITH_RECORD_EXPR): Likewise.
+ (contains_placeholder_p): Don't handle WITH_RECORD_EXPR.
+ Clean up by using first_rtl_op.
+ (substitute_in_expr): Use SUBSTITUTE_IN_EXPR for recursive call.
+ (substitute_placeholder_in_expr): New function.
+ * tree.def (WITH_RECORD_EXPR): Deleted.
+ * tree.h (SUBSTITUTE_IN_EXPR, SUBSTITUTE_PLACEHOLDER_IN_EXPR): New.
+ (substitute_placeholder_in_expr): New.
+
+2004-03-21 Andrew Pinski <pinskia@gcc.gnu.org>
+
+ * dojump.c (prefer_and_bit_test): Fix which part of
+ the and_test is replaced.
+
+2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * frontends.texi: Add missing line.
+
+2004-03-21 Zack Weinberg <zack@codesourcery.com>
+ Chris Devers <cdevers@pobox.com>
+ Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/frontends.texi: Rewrite.
+ * doc/gcc.texi: Update last modification date.
+
+2004-03-21 Josef Zlomek <zlomekj@suse.cz>
+
+ * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Print the debug
+ message before redirecting the edge.
+
+2004-03-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Set MEM_POINTER
+ flag.
+ * explow.c (force_not_mem): Set REG_POINTER flag according to
+ MEM_POINTER one.
+ * rtl.h (MEM_POINTER): New macro.
+ (struct rtx_def): Use integrated for MEM_SCALAR_P and frame_related
+ for MEM_POINTER.
+
+2004-03-20 Roger Sayle <roger@eyesopen.com>
+
+ PR target/13889
+ * cse.c (fold_rtx): Avoid substituting constants into unary
+ conversion operations.
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Replace "expr" with "t".
+
+2004-03-20 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR c/12373
+ * c-typeck.c (tagged_types_tu_compatible_p): Don't use
+ DECL_ORIGINAL_TYPE if there isn't one.
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Replace "final_type" with "type".
+ Remove variable "final_type".
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Constify "type".
+ Replace "TREE_TYPE (t)" with "type".
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bb-reorder.c, bt-load.c, c-decl.c, cfgcleanup.c, coverage.c,
+ dwarf2asm.c, ifcvt.c, stor-layout.c, varasm.c: Replace calls
+ via (*targetm.foo) () with targetm.foo ().
+
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR other/14630
+ * doc/install.texi: Add info directory category and entry.
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Replace "t" with "tem" where it is used
+ as a temporary variable. Remove "orig_t" and all of its uses.
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold): Remove variable "invert".
+ Move the handling of relational expressions that can be folded
+ to a constant ...
+ (fold_relational_const): ... here.
+ (tree_expr_nonzero_p): New.
+
+2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/14635
+ * builtins.def (nan, nanf, nanl, nans, nansf, nansl): Change to
+ DEF_GCC_BUILTIN.
+
+2004-03-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * Makefile.in (dojump.o): Depend on $(GGC_H) and dojump.h.
+ (GTFILES): Add $(srcdir)/dojump.h.
+ (gt-dojump.h): New dependency.
+ * dojump.c (and_reg, and_test, shift_test): New static variables.
+ (prefer_and_bit_test): New function.
+ (do_jump): Use it to choose between (X & (1 << C)) and (X >> C) & 1.
+
+2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.c, cfgcleanup.c, cgraphunit.c, c-pretty-print.c,
+ expmed.c, ggc-common.c, jump.c, passes.c, recog.c, regmove.c,
+ reorg.c, tree.h: Fix comment typos.
+
+2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c, attribs.c, bt-load.c, builtins.c, c-common.c,
+ c-decl.c, c-objc-common.c, c-typeck.c, calls.c, cfglayout.c,
+ cse.c, dbxout.c, dwarf2out.c, except.c, final.c,
+ haifa-sched.c, integrate.c, passes.c, rtlanal.c, sched-rgn.c,
+ sched-vis.c, simplify-rtx.c, stor-layout.c, tree.c, varasm.c,
+ vmsdbgout.c: Replace calls via (*targetm.foo) () with
+ targetm.foo ().
+
+2004-03-19 Ziemowit Laski <zlaski@apple.com>
+
+ * config/rs6000/altivec.h (vec_dst, vec_dstst, vec_dststt,
+ vec_dstt, vec_sld, vec_splat): Add prototypes, marked with
+ always_inline attribute.
+ * config/rs6000/rs6000.c (altivec_expand_dst_builtin):
+ Treat expansion as completed even if literal argument is
+ invalid (so that other expansions are not tried in vain).
+
+2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * loop-doloop.c (add_test): Replace GEN_INT (0) with
+ const0_rtx.
+
+2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (fold) <ABS_EXPR>: Move the handling of constants
+ ...
+ (fold_abs_const): ... here.
+
+2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.h (TYPE_ARRAY_MAX_SIZE): Use type.maxval directly.
+
+2004-03-19 Denis Chertykov <denisc@overta.ru>
+
+ PR target/11520
+ * config/avr/avr.md ("call_insn"): Handle explicit integer
+ specially.
+ (call_value_insn): Likewise.
+
+2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.c (substitute_in_expr): Rewrite to simplify and be more generic.
+
+2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * fold-const.c (negate_expr): Move the handling of constants
+ ...
+ (fold_negate_const): ... here.
+
+2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * langhooks-def.h (LANG_HOOKS_HASH_TYPES): New macro and hook.
+ * langhooks.h (struct lang_hooks_for_types): New field hash_types.
+ * tree.c (debug_no_type_hash): Deleted.
+ (type_hash_canon): Abort if passed a variant.
+ Check lang_hooks.types.hash_types.
+ (build_type_no_quals): Copy mode of POINTER_TYPE and REFERENCE_TYPE.
+ (build_array_type): Remove unnecessary allocation of pointer type.
+ (build_complex_type): Properly qualify resulting type.
+
+2004-03-19 Paolo Bonzini <bonzini@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_init_builtins): Fix typo.
+
+2004-03-19 Richard Sandiford <rsandifo@redhat.com>
+
+ * expmed.c (choose_mult_variant, expand_mult_const): New, split from...
+ (expand_mult): ...here.
+ (extract_high_half): New, split out from expand_mult_highpart.
+ (expand_highpart_optab): Likewise. Don't clobber target prematurely.
+ (expand_highpart): Evaluate the cost of a shift/add sequence,
+ then see if any of the specialized optabs are cheaper.
+
+2004-03-18 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * mklibgcc.in: Remove obsolete MAYBE_USE_COLLECT2.
+
+2004-03-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * convert.c (convert_to_real): Add more math builtins.
+
+2004-03-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * convert.c (convert_to_real): Reformat using switch stmt.
+
+2004-03-18 Mark Mitchell <mark@codesourcery.com>
+
+ * c-common.c (pointer_int_sum): Do not complain about using
+ pointers to pointers-to-members.
+
+2004-03-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (MD_ASM_CLOBBERS): Move to "Old target macros that
+ have moved to the target hooks structure".
+
+2004-03-18 James E Wilson <wilson@specifixinc.com>
+
+ * config/mips/mips.md (type): Split move into arith and fmove. Split
+ hilo into mthilo and mfhilo. Add trap. Delete icmp. Fix all uses.
+ * config/mips/5400.md (ir_vr54_hilo, ir_vr54_arith, ir_vr54_fabs):
+ Likewise.
+ * config/mips/5500.md (ir_vr55_hilo, ir_vr55_arith, ir_vr55_fabs):
+ Likewise.
+ * config/mips/7000.md (rm7_int_other, rm7_mthilo, rm7_mfhilo,
+ rm7_fp_quick): Likewise.
+ * config/mips/9000.md (rm9k_int, rm9k_mfhilo, rm9k_mthilo,
+ rm9k_fquick): Likewise.
+ * config/mips/sr71k.md (ir_sr70_hilo, ir_sr70_arith, ir_sr70_fabs):
+ Likewise.
+ (ir_sr70_icmp): Delete.
+
+2004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.h (TREE_CHECK2, TREE_CHECK3, TREE_CHECK5): New macros.
+ (tree_check2_failed, tree_check3_failed, tree_check5_failed): New decl.
+ (FUNC_OR_METHOD_CHECK, SET_ARRAY_OR_VECTOR_CHECK): New macros.
+ (REC_OR_UNION_CHECK, NUMERICAL_TYPE_CHECK): Likewise.
+ (TYPE_VALUES, TYPE_DOMAIN, TYPE_FIELDS, TYPE_METHODS, TYPE_VFIELD):
+ Protect with proper check.
+ (TYPE_ARG_TYPES, TYPE_METHOD_BASETYPE, TYPE_OFFSET_BASETYPE): Likewise.
+ (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Likewise.
+ * tree.c (type_hash_eq): Rewrite to access proper fields for each type.
+ (tree_check2_failed, tree_check3_failed, tree_check5_failed): New.
+ * c-typeck.c (build_array_ref): Use TYPE_DOMAIN, not TYPE_VALUES.
+ * dwarf2out.c (gen_enumeration_type_die): Use TYPE_VALUES,
+ not TYPE_FIELDS.
+ * stor-layout.c (set_sizetype): Use TYPE_ORIG_SIZE_TYPE.
+
+2004-03-18 Mostafa Hagog <mustafa@il.ibm.com>
+
+ * gcse.c (eliminate_partially_redundant_loads): Reject change if
+ dest is set between beginning and current insn.
+
+2004-03-18 Mark Mitchell <mark@codesourcery.com>
+
+ * c-decl.c (grokdeclarator): Do not complain about redeclaring
+ visible "static" identifiers "extern" in a local scope.
+ * dwarf2out.c (loc_descriptor_from_tree): Handle pre- and
+ post-increments/decrements.
+
+2004-03-18 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (current_function_arg_words): Delete.
+ (xtensa_builtin_saveregs): Use current_function_args_info.arg_words.
+ (xtensa_va_start): Remove assignment to current_function_arg_words.
+
+2004-03-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * alias.c (record_set): Detect the case where a register is assigned
+ a new value that has the same base term as the old one.
+
+2004-03-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * doloop.c: Removed.
+ * loop-doloop.c: New file.
+ * Makefile.in (doloop.o): Remove.
+ (loop-doloop.o): New.
+ * cfgloop.h (get_loop_level, doloop_optimize_loops): Declare.
+ * cfgloopanal.c (get_loop_level): New function.
+ * loop-iv.c (iv_number_of_iterations): Handle case when loop
+ is leaved immediatelly.
+ * loop.c (strength_reduce): Do not call doloop optimization.
+ * loop.h (LOOP_BCT): Removed.
+ * passes.c (rest_of_handle_loop_optimize): Do not use LOOP_BCT.
+ (rest_of_handle_loop2): Call doloop_optimize_loops.
+ (rest_of_compilation): Test for optimizations moved to
+ rest_of_handle_loop2.
+
+2004-03-17 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_stack_info): correct reg_size
+ for mixed mode.
+ (rs6000_emit_prologue): Ditto.
+ (rs6000_emit_epilogue): Ditto.
+ * config/rs6000/rs6000.h: Definition of DWARF_CIE_DATA_ALIGNMENT
+ macro for mixed mode.
+
+2004-03-18 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (propagate_freq): Compute correctly frequency of
+ EXIT_BLOCK.
+
+2004-03-17 Eric Christopher <echristo@redhat.com>
+
+ * builtins.c (apply_args_size): Use reg_raw_mode.
+ (apply_result_size): Ditto.
+
+2004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ PR target/14620
+ * config/rtems.h: Add STD_LIB_SPEC and LIB_SPEC.
+
+2004-03-17 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/t-linux64 (bispecs): Don't add -mlong-double-128 for
+ 32-bit builds when defaulting to 32-bit.
+
+2004-03-17 Jan Hubicka <jh@suse.cz>
+
+ * cfgrtl.c (rtl_create_basic_block): Pre-allocate basic_block_info
+ array.
+
+2004-03-17 James E Wilson <wilson@specifixinc.com>
+
+ * config/mips/mips.md (zero_extendsidi2): Add length attribute.
+ (hazard_nop): Change type to nop.
+ (type): Split arith into arith, shift, slt, clz. Delete darith.
+ Fix all uses. Change arith to multi if more than one insn emitted.
+ * config/mips/5400.md (ir_vr54_arith): Likewise.
+ * config/mips/5500.md (ir_vr55_arith): Likewise.
+ * config/mips/7000.md (rm7_int_other): Likewise.
+ * config/mips/9000.md (rm9k_int): Likewise.
+ * config/mips/sr71k.md (ir_sr70_arith): Likewise.
+
+2004-03-17 Joel Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (subrange_type_die): Define new variable "subtype"
+ to hold the subtype tree instead of recomputing it several times.
+
+2004-03-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mn10300/mn10300.c (notice_update_cc): Don't handle
+ CC_INVERT.
+ * config/mn10300/mn10300.md (cc): Remove "invert".
+
+2004-03-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (integer_valued_real_p): Add builtin rint.
+ (fold_builtin): Likewise.
+ * convert.c (convert_to_real): Likewise.
+
+ * convert.c (convert_to_real): Fix typos in `long double'
+ builtins.
+
+2004-03-16 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/14481
+ * fold-const.c (fold): Set TREE_NO_UNUSED_WARNING on implicitly
+ generated COMPOUND_EXPRs.
+
+2004-03-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * config/h8300/t-rtems (h8300-*-rtems*): New.
+
+2004-03-16 Eric Christopher <echristo@redhat.com>
+
+ * doc/cppopts.texi(fwide-exec-charset): Fix typo.
+
+2004-03-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386-protos.h: Add a prototype for
+ ix86_reverse_condition.
+ * config/i386/i386.c (ix86_reverse_condition): New.
+ * config/i386/i386.h (REVERSE_CONDITION): Use
+ ix86_reverse_condition.
+ * config/i386/i386.md: Use ix86_reverse_condition instead of
+ REVERSE_CONDITION.
+
+2004-03-16 J. Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (loc_descriptor_from_tree): Add handling for MIN_EXPR.
+
+2004-03-16 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR bootstrap/12974
+ * Makefile.in: Pass $(INCLUDES) down to libgcc.mk explicitly.
+
+2004-03-16 Paolo Bonzini <bonzini@gnu.org>
+
+ * c-common.c (c_common_type_for_mode): Build vector types on
+ demand.
+ (handle_mode_attribute): Deprecate using the mode attribute
+ to create vector types. Fix indentation.
+ (vector_type_node_list): Remove.
+ (handle_vector_size_attribute): Create vector types on demand.
+ Strip a NON_LVALUE_EXPR from the attribute if there is one.
+ * c-typeck.c (comptypes): Make vector types compatible if they
+ have the same underlying mode.
+ (convert_for_assignment): Use comptypes to convert between
+ vector types.
+ * tree.c (build_common_tree_nodes_2): Do not create vector types.
+ * config/arm/arm.c (arm_init_iwmmxt_builtins): Create necessary
+ vector types.
+ * tree.h: Remove vector types.
+ * config/i386/i386.c (i386_init_mmx_sse_builtins): Likewise.
+ * config/rs6000/rs6000.c (rs6000_init_builtins): Likewise.
+ (V16QI_type_node, V2SI_type_node, V2SF_type_node, V4HI_type_node,
+ V4SI_type_node, V4SF_type_node, V8HI_type_node): New globals.
+ * doc/extend.texi (Vector Types): Document how to use the
+ vector_size attribute to create vectors, rather than mode.
+
+ * config/arm/mmintrin.h: Use vector_size attribute, not mode.
+ * config/i386/emmintrin.h: Likewise.
+ * config/i386/mmintrin.h: Likewise.
+ * config/i386/xmmintrin.h: Likewise.
+ * config/sh/ushmedia.h: Likewise.
+
+2004-03-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/freebsd-spec.h, config/arc/arc-protos.h,
+ config/arm/aout.h, config/arm/elf.h, config/arm/freebsd.h,
+ config/arm/linux-gas.h, config/arm/semi.h,
+ config/cris/cris-protos.h, config/i386/xm-djgpp.h,
+ config/ia64/freebsd.h, config/mips/7000.md,
+ config/mips/9000.md, config/ns32k/ns32k-protos.h,
+ config/sparc/pbd.h: Update copyright.
+
+2004-03-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ PR target/14577
+ * config.gcc: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff.
+
+2004-03-16 Paolo Bonzini <bonzini@gnu.org>
+
+ * combine.c (combine_simplify_rtx): Remove the "last"
+ parameter and its documentation. Adjust recursive calls.
+ (simplify_logical): Always perform the only simplification
+ controlled by "last", if the simplified expression is
+ actually different.
+ (try_combine): Do not pass the "last" parameter to
+ combine_simplify_rtx.
+
+2004-03-16 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/14599
+ * config/mips/mips.md (UNSPEC_GP): New constant.
+ * config/mips/mips.c (CONST_GP_P): Expect the CONST to contain
+ an UNSPEC instead of (reg $gp).
+ (mips16_gp_pseudo_reg): Change accordingly.
+ (print_operand): Print $gp directly when handling CONST_GP_P.
+
+2004-03-16 Richard Zidlicky <rz@linux-m68k.org>
+
+ * config.gcc, config/m68k/linux.h: Implement with-cpu for m68k-linux.
+ * longlong.h: Make code 68060 clean when compiling for m68060.
+
+2004-03-16 Richard Zidlicky <rz@linux-m68k.org>
+
+ * config/m68k/m68k.md: Fix constraints for bitfield instructions.
+ * doc/md.texi: Clarify description of "i" constraint.
+
+2004-03-15 James E Wilson <wilson@specifixinc.com>
+
+ * config/mips/mips.md (type): Split load into load, fpload, fpidxload.
+ Split store into store, fpstore, fpidxstore. Fix all uses.
+ * config/mips/5400.md (ir_vr54_load, ir_vr54_store, ir_vr54_fstore):
+ Likewise.
+ * config/mips/5500.md (ir_vr55_load, i5_vr55_store): Likewise.
+ * config/mips/7000.md (rm7_ld, rm7_st): Likewise.
+ * config/mips/9000.md (rm9k_load, rm9k_store): Likewise.
+ * config/mips/sr71k.md (ir_sr70_load, ir_sr70_store, ir_sr70_fload,
+ ir_sr70_fstore): Likewise.
+
+2004-03-15 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/14535
+ * except.c (collect_one_action_chain): Record action for cleanup
+ outer of exception spec.
+
+2004-03-15 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_use_address):
+ Fix the check for abort and only do the mmap if we can.
+
+2004-03-15 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * config/sparc/sparc.h: Rework comments about the code model
+ in 64-bit environment and the mode 'Pmode'.
+ * doc/invoke.texi (SPARC options): Rework description of the
+ different code models supported in 64-bit environment.
+
+2004-03-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * defaults.h (REVERSIBLE_CC_MODE): Define.
+ * jump.c (reversed_comparison_code_parts): Don't check if
+ REVERSIBLE_CC_MODE is defined.
+
+2004-03-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-incpath.c, c-incpath.h, c-pch.c, c.opt, cppexp.c,
+ et-forest.h, genattr.c, ggc-none.c, hosthooks-def.h,
+ hosthooks.h, params.h, ra-colorize.c, web.c,
+ config/darwin-c.c, config/alpha/freebsd.h, config/arm/pe.c,
+ config/avr/avr-protos.h, config/avr/avr.md,
+ config/fr30/fr30-protos.h, config/fr30/fr30.md,
+ config/h8300/fixunssfsi.c, config/i386/darwin.h,
+ config/i386/freebsd.h, config/i386/freebsd64.h,
+ config/ia64/hpux.h, config/ia64/unwind-ia64.c,
+ config/ip2k/libgcc.S, config/m32r/xm-m32r.h,
+ config/mmix/mmix-modes.def, config/ns32k/netbsd.h,
+ config/ns32k/ns32k.md, config/pa/pa64-hpux.h,
+ config/pa/pa64-regs.h, config/rs6000/aix41.h,
+ config/rs6000/aix43.h, config/rs6000/host-darwin.c,
+ config/sparc/aout.h, config/sparc/freebsd.h,
+ config/sparc/litecoff.h, config/vax/vax-protos.h,
+ doc/hostconfig.texi, doc/include/gcc-common.texi: Update
+ copyright.
+
+2004-03-15 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (thumb_expand_prologue): Tie prologue insns to fp.
+
+2004-03-15 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ * c-pretty-print.c (pp_c_semicolon): Fix formatting.
+ (pp_c_cv_qualifier): Document.
+ (pp_c_space_for_pointer_operator): Likewise.
+ (pp_c_integer_constant): Likewise.
+ (pp_c_identifier): Likewise.
+ (pp_c_init_declarator): Don't print function body.
+
+2004-03-14 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/contrib.texi, doc/extend.texi, doc/gcov.texi,
+ doc/install.texi, doc/invoke.texi, doc/makefile.texi,
+ doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: Capitalize
+ "gcc", "g++" and "g77" or mark up with appropriate markup. Adjust
+ wording and grammar.
+
+2004-03-14 Roger Sayle <roger@eyesopen.com>
+
+ * alias.c (get_alias_set): Replace calls via (*lang_hooks.foo) ()
+ with lang_hooks.foo ().
+ * builtins.c (expand_builtin_va_arg): Likewise.
+ * c-common.c (fname_as_string, c_common_truthvalue_conversion,
+ c_common_type_for_mode, c_common_nodes_and_builtins,
+ handle_mode_attribute, handle_vector_size_attribute): Likewise.
+ * c-convert.c (convert): Likewise.
+ * c-format.c (check_format_types): Likewise.
+ * c-objc-common.c (c_tree_printer): Likewise.
+ * c-typeck.c (build_unary_op, build_conditional_expr,
+ build_binary_op): Likewise.
+ * calls.c (try_to_integrate, expand_call,
+ emit_library_call_value_1): Likewise.
+ * cgraph.c (cgraph_node_name, cgraph_function_possibly_inlined_p):
+ Likewise.
+ * cgraphunit.c (record_call_1, cgraph_analyze_function,
+ cgraph_expand_function): Likewise.
+ * convert.c (convert_to_pointer, convert_to_integer): Likewise.
+ * coverage.c (build_fn_info_type, build_ctr_info_type,
+ build_gcov_info, create_coverage): Likewise.
+ * dbxout.c (dbxout_init): Likewise.
+ * diagnostic.c (diagnostic_report_current_function): Likewise.
+ * dojump.c (do_jump): Likewise.
+ * dwarf2out.c (dwarf2_name): Likewise.
+ * except.c (init_eh): Likewise.
+ * explow.c (expr_size, int_expr_size): Likewise.
+ * expmed.c (make_tree, const_mult_add_overflow_p, expand_mult_add):
+ Likewise.
+ * expr.c (store_expr, store_constructor, safe_from_p,
+ expand_expr_real, do_store_flag, try_casesi): Likewise.
+ * function.c (push_function_context_to, pop_function_context_from,
+ free_after_parsing, assign_stack_local_1, assign_stack_temp_for_type,
+ put_var_into_stack, allocate_struct_function, current_function_name):
+ Likewise.
+ * integrate.c (copy_decl_for_inlining, expand_inline_function):
+ Likewise.
+ * langhooks.c (lhd_clear_binding_stack, write_global_declarations,
+ lhd_print_error_function): Likewise.
+ * opts.c (handle_option, decode_options): Likewise.
+ * passes.c (open_dump_file): Likewise.
+ * print-tree.c (print_node): Likewise.
+ * stmt.c (expand_fixup, fixup_gotos, expand_asm_operands,
+ expand_decl_cleanup, emit_case_nodes): Likewise.
+ * stor-layout.c (variable_size): Likewise.
+ * toplev.c (announce_function, wrapup_global_declarations,
+ check_global_declarations, compile_file, default_tree_printer,
+ process_options, lang_dependent_init, finalize): Likewise.
+ * tree-dump.c (dequeue_and_dump): Likewise.
+ * tree-inline.c (remap_decl, remap_block, copy_body_r,
+ initialize_inlined_parameters, declare_return_variable,
+ inlinable_function_p, expand_call_inline, optimize_inline_calls,
+ walk_tree, copy_tree_r): Likewise.
+ * tree-optimize.c (tree_rest_of_compilation): Likewise.
+ * tree.c (decl_assembler_name, tree_size, size_in_bytes, staticp,
+ unsafe_for_reeval, get_unwidened, get_narrower, get_callee_fndecl,
+ variably_modified_type_p, dump_tree_statistics): Likewise.
+ * varasm.c (assemble_variable, compare_constant, copy_constant,
+ force_const_mem, compute_reloc_for_constant, output_constant,
+ output_addressed_constants, initializer_constant_valid_p): Likewise.
+
+2004-03-14 Kelley Cook <kcook@gcc.gnu.org>
+
+ * doc/install.texi: Make autoconf 2.13 the exception, not the rule.
+
+2004-03-14 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * doc/install.texi: Reflect autoconf and automake version for
+ libffi. Update autoconf version to 2.59.
+
+2004-03-13 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (negate_expr, operand_equal_for_comparison_p,
+ optimize_bit_field_compare, decode_field_reference, all_ones_mask_p,
+ make_range, build_range_check, fold_range_test, unextend,
+ constant_boolean_node, fold_binary_op_with_conditional_arg,
+ fold_truthop, fold_mathfn_compare, fold_inf_compare,
+ fold_single_bit_test, fold): Replace calls via (*lang_hooks.foo) ()
+ with lang_hooks.foo ().
+
+2004-03-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.h (EXTRA_CONSTRAINT_STR_ARM): Update comment.
+
+2004-03-13 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ * doc/install.texi: Note status of -fnew-ra.
+
+2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR middle-end/14470
+ * expr.c (store_expr): Call emit_queue before generating the move
+ from the temporary to the original target. Protect the temporary
+ from emit_queue.
+
+2004-03-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/14533
+ * config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC
+ other than UNSPEC_GOTOFF.
+
+2004-03-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_legitimate_address_p): New argument, OUTER. Pass through
+ to arm_legitimate_index_p. Update all callers with SET as default
+ value.
+ (arm_legitimate_index_p): New argument, OUTER. Restrict the index
+ range if OUTER is a sign-extend operation on QImode. Correctly
+ reject shift operations on sign-extended QImode addresses.
+ (bad_signed_byte_operand): Delete.
+ (arm_extendqisi_mem_op): New function.
+ * arm.h (EXTRA_CONSTRAINT_ARM): Delete. Replace with...
+ (EXTRA_CONSTRAINT_STR_ARM): ... this. Handle extended address
+ constraints.
+ (CONSTRAINT_LEN): New.
+ (EXTRA_CONSTRAINT): Delete. Replace with...
+ (EXTRA_CONSTRAINT_STR): ... this.
+ (PREDICATE_CODES): Remove bad_signed_byte_operand.
+ * arm.md (extendqihi_insn): Use new constraint Uq. Rework. Length
+ is now always default.
+ (define_splits for bad sign-extend loads): Delete.
+ (arm_extendqisi, arm_extendqisi_v5): Likewise.
+ * arm/vfp.md (arm_movsi_vfp, arm_movdi_vfp, movsf_vfp, movdf_vfp):
+ Rework 'U' constraint to 'Uv'.
+ * arm-protos.h: Remove bad_signed_byte_operand. Add
+ arm_extendqisi_mem_op.
+ * doc/md.texi (ARM constraints): Rename VFP constraint (now Uv).
+ Add Uq constraint.
+
+2004-03-13 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_va_arg): Replace SPLIT_COMPLEX_ARGS
+ with targetm version.
+
+ PR target/14567
+ * config/rs6000/rs6000.h (UNITS_PER_ARG, RS6000_ARG_SIZE): Delete.
+ (HARD_REGNO_MODE_OK): Disallow TFmode for fp31.
+ * config/rs6000/rs6000.c (rs6000_arg_size): New function.
+ Update all users of RS6000_ARG_SIZE.
+ (function_arg_advance): Count fregno using mode size.
+ (function_arg): Handle long double split over regs and memory.
+ (function_arg_partial_nregs): Likewise.
+ (rs6000_va_arg): Repackage complex args.
+
+2004-03-13 Dean Ferreyra <dferreyra@igc.org>
+
+ PR target/14047
+ * config/avr/avr.c (avr_progmem_p): Add "attributes" parameter.
+ (avr_insert_attributes): Pass "attributes" to avr_progmem_p.
+ * config/avr/avr-protos.h (avr_progmem_p): Change prototype.
+
+2004-03-12 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Add
+ prototype.
+ * config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): New.
+ * config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Define.
+
+2004-03-12 Andrew Pinski <apinski@apple.com>
+
+ * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_use_address):
+ Use ret instead of result. Use addr instead of base.
+
+2004-03-12 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi (*-ibm-aix*): Document assembler and achiver
+ fixes required by libstdc++ and update installation instructions
+ for libstdc++.a.
+
+2004-03-12 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/winnt.c (i386_pe_strip_name_encoding_full): Strip
+ leading '@' on fastcall symbols before stripping suffix.
+
+2004-03-12 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (unmentioned_reg_p): New function to check whether an
+ expression is a "specialization" of another, i.e. that there are
+ no registers or memory references mentioned in the first that don't
+ appear in the second.
+ (unmentioned_reg_p_1): New helper subroutine of unmentioned_reg_p.
+ (combine_instructions): Also try combining instructions using the
+ REG_EQUAL note from a preceding log-linked instruction.
+
+2004-03-12 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.c (ix86_split_ashrdi): Optimize shift by 63.
+
+2004-03-12 Matt Austern <austern@apple.com>
+
+ * target.h (struct gcc_target): New target hook, unwind_label.
+ * target-def.h (TARGET_ASM_EMIT_UNWIND_LABEL): New hook.
+ * output.h (default_emit_unwind_label): New function.
+ * default.h (TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): New macro.
+ (TARGET_USES_WEAK_UNWIND_INFO): New target macro.
+ (TARGET_SUPPORTS_HIDDEN): New target macro.
+ * dwarf2out.c (struct dw_fde_struct): Add field for function decl
+ that corresponds to this FDE.
+ (FRAME_BEGIN_LABEL): Allow target to override default label.
+ (output_call_frame_info): If FDEs are linknonce, then use extra
+ indirection for FDE encoding, output a label for each FDE, and
+ output an empty label for each function without an FDE.
+ (dwarf2out_begin_prologue): Set up decl field when creating an FDE.
+ * varasm.c (globalize_decl): Call ASM_MAKE_LABEL_LINKONCE for
+ decls with DECL_ONE_ONLY set, if that macro is defined.
+ (make_decl_one_only): Don't use DECL_COMMON if we're compiling
+ for a SUPPORTS_ONE_ONLY target.
+ * config/darwin-protos.h (darwin_unique_section): Declare.
+ (darwin_asm_named_section): Likewise.
+ (darwin_section_type_flags): Likewise.
+ (darwin_non_lazy_pcrel): Likewise.
+ (darwin_emit_unwind_label): Likewise.
+ (darwin_make_decl_one_only): Likewise.
+ * config/darwin.c (machopic_finish): Get rid of tweak that
+ eliminate stubs for symbols that are defined.
+ (darwin_encode_section_info): Don't treat weak functions as defined.
+ (darwin_make_decl_one_only): Define.
+ (darwin_asm_named_section): Likewise.
+ (darwin_section_type_flags): Likewise.
+ (darwin_unique_section): Likewise.
+ (darwin_emit_unwind_label): Likewise.
+ (darwin_non_lazy_pcrel): Likewise.
+ (darwin_asm_output_dwarf_delta): Difference between two labels is
+ local only if both labels are local.
+ * config/darwin.h (MAKE_DECL_ONE_ONLY): Define.
+ (ASM_MAKE_LABEL_LINKONCE): Likewise.
+ (TARGET_SUPPORTS_HIDDEN): Likewise.
+ (TARGET_USES_WEAK_UNWIND_INFO): Likewise.
+ (TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): Likewise.
+ (FRAME_BEGIN_LABEL): Likewise.
+ (ASM_DECLARE_OBJECT_NAME): Make references to weak symbols indirect.
+ (ASM_DECLARE_FUNCTION_NAME): Likewise.
+ (darwin_eh_frame_section): Give __eh_frame section the coalesced flag.
+ (TARGET_ASM_UNIQUE_SECTION): Define.
+ (EH_FRAME_SECTION_NAME): Define.
+ (EH_FRAME_SECTION_ATTR): Likewise.
+ (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Likewise.
+ (TARGET_ASM_NAMED_SECTION): Likewise.
+ (TARGET_SECTION_TYPE_FLAGS): Likewise.
+ * doc/tm.texi: Document TARGET_USES_WEAK_UNWIND_INFO,
+ TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, TARGET_SUPPORTS_HIDDEN,
+ TARGET_ASM_EMIT_UNWIND_LABEL.
+
+2004-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c (expand_builtin_mathfn): Add pow10* to the
+ existing exp10* case.
+ (expand_builtin): Likewise.
+
+2004-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/tm.texi (registers) <Values in Registers>: Add
+ entry for REGMODE_NATURAL_SIZE.
+
+2004-03-12 Richard Henderson <rth@redhat.com>
+
+ PR target/14547
+ * target.h (struct gcc_target): Move calls substructure before
+ booleans. Add split_complex_arg.
+ * function.c (assign_parms, split_complex_args): Use it.
+ * calls.c (expand_call): Likewise.
+ (split_complex_values): Likewise. Check for splittable types
+ before allocating memory.
+ (split_complex_types): Likewise.
+ * system.h (SPLIT_COMPLEX_ARGS): Poison.
+ * expr.h (SPLIT_COMPLEX_ARGS): Remove.
+ * target-def.h (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/alpha/alpha.c (alpha_split_complex_arg): New.
+ (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/alpha/alpha.h (SPLIT_COMPLEX_ARGS): Remove.
+ * config/rs6000/rs6000.c (TARGET_SPLIT_COMPLEX_ARG): New.
+ (rs6000_override_options): Zap it for non-AIX.
+ (rs6000_function_value): Use targetm.calls.split_complex_arg.
+ * config/rs6000/rs6000.h (SPLIT_COMPLEX_ARGS): Remove.
+ * config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): New.
+ * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Remove.
+ * doc/tm.texi (TARGET_SPLIT_COMPLEX_ARG): Modify from old
+ SPLIT_COMPLEX_ARGS entry.
+
+2004-03-11 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (xfloating_ops, vax_cvt_ops): New.
+ (alpha_lookup_xfloating_lib_func): Use them, return rtx.
+ (alpha_emit_xfloating_arith): Update to match.
+ (alpha_emit_xfloating_compare): Likewise.
+ (alpha_emit_xfloating_cvt): Likewise.
+ (alpha_emit_xfloating_libcall): Take already built symbol,
+ mark call const.
+ * config/alpha/alpha.md (extendsftf2, extenddftf2): Take
+ op1 in a register.
+
+2004-03-11 Richard Henderson <rth@redhat.com>
+
+ PR target/14539
+ * config/alpha/alpha.h (STACK_BOUNDARY): Set to 128.
+
+ * simplify-rtx.c (simplify_relational_operation): Fix typo.
+
+2004-03-11 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/14477
+ * except.c (remove_unreachable_regions): Look thru CALL_PLACEHOLDER.
+
+2004-03-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR target/14262
+ * calls.c (load_register_parameters): If BLOCK_REG_PADDING is not
+ defined, pass small BLKmode values in registers in the low-order part.
+
+2004-03-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (if_then_else_cond): Check for NULL return value of
+ simplify_gen_subreg.
+
+2004-03-11 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/14496
+ * config/mips/mips.h (UNITS_PER_FPVALUE): Fix value for
+ TARGET_SINGLE_FLOAT.
+
+2004-03-11 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/hpux.h (TARGET_INIT_LIBFUNCS): Add undef.
+ * config/ia64/ia64.h (TARGET_INIT_LIBFUNCS): Add define.
+ * config/ia64/ia64.c (ia64_init_libfuncs): New.
+ (ia64_hpux_init_libfuncs): Add call to ia64_init_libfuncs.
+
+2004-03-11 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (negate_expr_p) <RSHIFT_EXPR>: We can optimize
+ -((int)X>>C) where C is an integer constant one bit less than the
+ size of X into (unsigned)X>>C. Similarly for unsigned->signed.
+ (negate_expr) <RSHIFT_EXPR>: Implement the above transformations.
+
+ * simplify-rtx.c (simplify_unary_operation): Also implement the
+ above transformations at the RTL level.
+
+2004-03-11 Alan Modra <amodra@bigpond.net.au>
+
+ * real.c (encode_ibm_extended): Do round low word.
+
+2004-03-11 Ben Elliston <bje@wasabisystems.com>
+
+ * config/arm/arm.md (is_xscale): Comment this attribute and move
+ it a bit further up in the file, closer to related attributes.
+
+2004-03-11 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/host-solaris.c (sol_gt_pch_use_address): Add
+ missing terminating marker to comment.
+
+2004-03-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md: Use move_operand in splitters for 64-bit moves.
+ (movdi, movsi, movhi, movqi, movsf, movdf): Remove predicates.
+ (*movdi_32bit_mips16, *movsi_mips16, *movhi_mips16, *movqi_mips16)
+ (*movsf_mips16, *movdf_mips16): Name unnamed patterns. Use
+ move_operand as source predicate in all cases.
+ (*movdi_32bit): Renamed from movdi_internal. Remove 'F' constraint.
+ Test reg_or_0_operand. Use move_operand as source predicate.
+ (*movdi_64bit): Renamed from movdi_internal2. Test reg_or_0_operand.
+ (*movdi_64bit_mips16): Renamed from movdi_internal2_mips16.
+ (*movsi_internal): Renamed from movsi_internal. Test reg_or_0_operand.
+ (movhi, movqi, movsf, movdf): Use mips_legitimize_move.
+ (*movhi_internal): Renamed from movhi_internal. Test reg_or_0_operand.
+ Use move_operand as source predicate. Remove 'K' constraint.
+ (*movqi_internal): Likewise movqi_internal.
+ (*movsf_hardfloat): Renamed from movsf_internal1. Test
+ reg_or_0_operand. Use move_operand as source predicate.
+ (*movsf_softfloat): Likewise movsf_internal2.
+ (*movdf_hardfloat_64bit): Likewise movsf_internal1a.
+ (*movdf_hardfloat_32bit): Likewise movsf_internal1b.
+ (*movdf_softfloat): Likewise movdf_internal2.
+ * config/mips/mips.c (move_operand): Match arbitrary CONST_INTs
+ for DImode if !TARGET_64BIT.
+ (mips_legitimize_move): Simplify accordingly.
+
+2004-03-11 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/14362
+ * var-tracking.c (struct variable_def): Added field refcount.
+ (variable_htab_free): Decrease the refcount and delete variable
+ only if there are no more references.
+ (unshare_variable): New function.
+ (vars_copy_1): Increase refcount instead of copying the variable.
+ (variable_union): Share the variables where possible, unshare
+ the variables if needed.
+ (variable_different_p): Return false if var1 and var2 are
+ the same structure.
+ (variable_was_changed): Init the refcount of new variable.
+ (set_frame_base_location): Unshare variable if needed.
+ (set_variable_part): Init the refcount of new variable.
+ Unshare the variables if needed.
+ (delete_variable_part): Unshare the variables if needed.
+ (emit_notes_for_differences_1): Init the refcount of new variable.
+ (vt_add_function_parameters): Do not add function parameters to
+ IN set of ENTRY_BLOCK_PTR because it is unused anyway.
+ (vt_initialize): Do not add frame_base_decl to IN set of
+ ENTRY_BLOCK_PTR because it is unused anyway.
+
+2004-03-11 Josef Zlomek <zlomekj@suse.cz>
+
+ * var-tracking.c (vars_copy_1): Cleanup and speedup chain operations.
+ (vars_copy): Likewise.
+ (variable_union): Likewise.
+ (set_variable_part): Likewise.
+ (delete_variable_part): Likewise.
+
+2004-03-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-typeck.c, combine.c, cse.c, dominance.c, et-forest.h,
+ ggc-page.c, var-tracking.c, config/fp-bit.c, config/c4x/c4x.c,
+ config/cris/cris.c, config/i386/ppro.md, config/i860/i860.c,
+ config/i860/i860.h, config/m32r/m32r.h, config/m32r/xm-m32r.h,
+ config/m68hc11/m68hc11.h, config/m68hc11/m68hc11.md,
+ config/mips/mips.c, config/mmix/mmix.c, config/ns32k/ns32k.h,
+ config/pa/pa.c, config/pa/pa32-regs.h, config/pa/pa64-regs.h,
+ config/pdp11/pdp11.h, config/rs6000/rs6000.c,
+ config/stormy16/stormy16.c: Fix comment typos and formatting.
+
+2004-03-11 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure: Regenerate, since I forgot to while committing Paolo's
+ changes.
+
+2004-03-08 Paolo Bonzini <bonzini@gnu.org>
+
+ PR ada/14131
+ Move language detection to the top level.
+ * configure.ac: Remove code to detect languages,
+ it now lives exclusively in the top level.
+ * aclocal.m4 (gcc_AC_PROG_GNAT): Moved to the
+ top level, renamed to ACX_PROG_GNAT.
+
+2004-03-10 Richard Henderson <rth@redhat.com>
+
+ * c-pch.c (c_common_no_more_pch): Update for gt_pch_use_address
+ extra arguments.
+ * config.host (*-*-solaris2*, *-*-linux*): Add out_host_hook_obj
+ and host_xmake_file fragments.
+ * ggc-common.c (gt_pch_save): Update for gt_pch_get_address change.
+ (gt_pch_restore): Similarly for gt_pch_use_address.
+ (default_gt_pch_get_address): New.
+ (mmap_gt_pch_get_address): Split out of gt_pch_save.
+ (default_gt_pch_use_address): Split out of gt_pch_restore.
+ (mmap_gt_pch_use_address): Likewise.
+ * hooks.c (hook_voidp_size_t_null): Remove.
+ (hook_bool_voidp_size_t_false): Remove.
+ * hooks.h: Likewise.
+ * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): Use one of the
+ default_ or mmap_ definitions.
+ (HOST_HOOKS_GT_PCH_USE_ADDRESS): Likewise.
+ * hosthooks.h (struct host_hooks): Update gt_pch_get_address
+ and gt_pch_use_address.
+ * config/host-linux.c, config/host-solaris.c: New files.
+ * config/x-linux, config/x-solaris: New files.
+ * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_get_address):
+ Update for changed definition.
+ (darwin_rs6000_gt_pch_use_address): Likewise.
+ * doc/hostconfig.texi: Update docs.
+
+2004-03-10 Richard Henderson <rth@redhat.com>
+
+ PR c/14517
+ * c-decl.c (grokdeclarator): Don't warn for duplicate qualifiers
+ except for pedantic c90 mode.
+
+2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure.ac: Bump AC_PREREQ to 2.59.
+ * configure: Regenerate.
+
+2004-03-10 Uros Bizjak <uros@kss-loka.si>
+
+ * optabs.h (enum optab_index): Add new OTI_exp10 and OTI_exp2.
+ (exp10_optab, exp2_optab): Define corresponding macros.
+ * optabs.c (init_optabs): Initialize exp10_optab and exp2_optab.
+ * genopinit.c (optabs): Implement exp10_optab and exp2_optab
+ using exp10?f2 and exp2?f2 patterns.
+ * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP10{,F,L}
+ using exp10_optab, and BUILT_IN_EXP2{,F,L} using exp2_optab.
+ (expand_builtin): Expand BUILT_IN_EXP10{,F,L} and BUILT_IN_EXP2{,F,L}
+ using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
+
+ * config/i386/i386.md (exp10sf2, exp10df2, exp10xf2, exp2sf2,
+ exp2df2, exp2xf2): New patterns to implement exp10, exp10f, exp10l,
+ exp2, exp2f and exp2l built-ins as inline x87 intrinsics.
+
+2004-03-10 Anthony Green <green@redhat.com>
+
+ * doc/invoke.texi (ARM Options): Fix -mpfu typo.
+
+2004-03-10 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/aix.h (TARGET_OS_CPP_BUILTINS): Rename to ...
+ (TARGET_OS_AIX_CPP_BUILTINS): this. Conditionally define
+ __LONGDOUBLE128.
+ * config/rs6000/aix41.h (TARGET_OS_CPP_BUILTINS): Use
+ TARGET_OS_AIX_CPP_BUILTINS.
+ * config/rs6000/aix43.h (TARGET_OS_CPP_BUILTINS): Same.
+ * config/rs6000/aix51.h (TARGET_OS_CPP_BUILTINS): Same.
+ * config/rs6000/aix52.h (TARGET_OS_CPP_BUILTINS): Same.
+ * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Revert
+ previous change.
+
+2004-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c (tree_expr_nonnegative_p): Add more builtin cases.
+
+2004-03-10 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
+ __LONGDOUBLE128 on AIX.
+
+2004-03-10 Andrew Haley <aph@redhat.com>
+
+ PR optimization/14381
+ * function.c (expand_function_end): Emit a blockage insn before
+ the epilogue when -fnon-call-exceptions is used.
+
+ * except.c (expand_start_all_catch): Make comment more accurate.
+
+2004-03-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR target/14480
+ * config/rs6000/t-rtems: Add missing file on branch.
+
+2004-03-10 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * dbxout.c (dbxout_symbol_location): Do not output references
+ to optimized-out constant pool symbols.
+
+2004-03-10 Andreas Schwab <schwab@suse.de>
+
+ * config/ia64/ia64.md (divsi3, udivsi3): Remove unused variable
+ twon34_r.
+
+2004-03-09 James E Wilson <wilson@specifixinc.com>
+
+ * alias.c (alias_sets_might_conflict_p): New.
+ * c-typeck.c (build_c_cast): Call it if warn_strict_aliasing > 1.
+ * common.opt (Wstrict-aliasing=): New.
+ * flags.h (warn_strict_aliasing): Change type to int.
+ * opts.c (warn_strict_aliasing): Change type to int.
+ (common_handle_option): Handle OPT_Wstrict_aliasing_.
+ * tree.h (alias_sets_might_conflict_p): Declare it.
+ * doc/invoke.tex (-Wstrict-aliasing=2): Document it.
+
+2004-03-10 Roman Zippel <zippel@linux-m68k.org>
+
+ PR bootstrap/12371
+ * config/m68k/m68k.h (FIXED_REGISTERS): Add arg pointer.
+ (CALL_USED_REGISTERS): Likewise.
+ (REG_CLASS_CONTENTS): Likewise.
+ (REG_ALLOC_ORDER): New.
+ (REGNO_REG_CLASS): Use regno_reg_class.
+ * config/m68k/m68k.c: Add regno_reg_class array.
+
+2004-03-09 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.md (divsi3): Fix algorithm.
+ (udivsi3): Ditto.
+ (setf_exp_xf): Remove '*' from name.
+ * testsuite/gcc.dg/20040309-1.c: New test.
+
+2004-03-09 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * system.h (SUNOS4_SHARED_LIBRARIES): Poison.
+ * collect2.c: Remove SUNOS4_SHARED_LIBRARIES code.
+ * config/sparc/aout.h (TARGET_ASM_SELECT_SECTION): Don't define.
+ * config/sparc/sparc.c (sparc_aout_select_section): Remove.
+ (sparc_aout_select_rtx_section): Don't check
+ SUNOS4_SHARED_LIBRARIES.
+ * config/sparc/sparc.h (SUNOS4_SHARED_LIBRARIES): Don't define.
+
+2004-03-10 Hans-Peter Nilsson <hp@axis.com>
+
+ PR other/14474
+ * doc/md.texi (Pattern Ordering, Dependent Patterns)
+ (Jump Patterns, Looping Patterns): Wrap in separate "@ifset
+ INTERNALS".
+
+2004-03-09 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/hpux.h (MULTILIB_DEFAULTS): Define.
+ (LIBGCC_SPEC): Update to match.
+
+2004-03-09 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (last_function_parms, last_function_parm_tags)
+ (last_function_parm_others, current_function_parms)
+ (current_function_parm_tags, current_function_parm_others):
+ Delete.
+ (ARG_INFO_PARMS, ARG_INFO_TAGS, ARG_INFO_TYPES, ARG_INFO_OTHERS):
+ New macros.
+ (grokdeclarator): For function definitions, save the arg-info
+ block from the declarator in DECL_ARGUMENTS.
+ (grokparms): Do not write to last_function_parm*. Use ARG_INFO_*
+ macros to operate on arg-info block. Can assume ARG_INFO_PARMS
+ contains only PARM_DECLs. Improve diagnostics.
+ (get_parm_info): Use ARG_INFO_* macros. Improve comments and
+ diagnostics. Disable some expensive checks if not ENABLE_CHECKING.
+ (store_parm_decls_newstyle): Take the function to operate on,
+ and an arg-info block, as arguments; don't get anything from
+ current_function_* globals.
+ (store_parm_decls_oldstyle): Likewise.
+ (store_parm_decls): Pass fndecl and its arg-info block down to
+ store_parm_decls_newstyle/oldstyle. Send functions with empty
+ argument lists through store_parm_decls_newstyle to reduce
+ overhead.
+ (pushdecl): Comment on the problems with the call to copy_node.
+ Clear DECL_ARGUMENTS of the old node after copying it, if it
+ is an arg-info block instead of a chain of decls.
+ (start_function): Do not manipulate current_function_parm* or
+ last_function_parm*.
+
+2004-03-09 Roger Sayle <roger@eyesopen.com>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ * ifcvt.c (noce_try_sign_mask): New function to transform
+ "x = (y < 0) ? z : 0" into the equivalent "x = (y >> C) & z".
+ (noce_process_if_block): Call noce_try_sign_mask.
+
+2004-03-09 Andrew Pinski <apinski@apple.com>
+
+ * c-typeck.c (tagged_types_tu_compatible_p):
+ Fix typo.
+
+2004-03-09 Roger Sayle <roger@eyesopen.com>
+
+ * simplify-rtx.c (simplify_const_relational_operation): New function
+ renamed from simplify_relational_operation.
+ (simplify_relational_operation): Change prototype to accept an
+ additional mode argument. Call simplify_const_relational_operation.
+ (simplify_gen_relational): Update simplify_relational_operation call.
+ (simplify_ternary_operation): Update simplify_relational_operation
+ subroutine call to use simplify_const_relational_operation instead.
+
+ * rtl.h (simplify_const_relational_operation): Prototype here.
+ (simplify_relational_operation): Add addtional mode argument.
+
+ * combine.c (combine_simplify_rtx): Update calls to
+ simplify_relational_operation.
+ (simplify_set): Likewise.
+ (gen_binary): Likewise.
+ * cse.c (fold_rtx): Likewise.
+ * dojump.c (compare_from_rtx): Likewise.
+ (do_compare_rtx_and_jump): Likewise.
+ * integrate.c (subst_constants): Likewise.
+ * unroll.c (simplify_cmp_and_jump_insns): Likewise.
+
+2004-03-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.md: Remove all define_peephole's.
+
+2004-03-09 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.md: Remove trailing whitespace.
+
+2004-03-08 Eric Christopher <echristo@redhat.com>
+
+ * Makefile.in (site.exp): Add libiconv variable definition.
+
+2004-03-09 Hans-Peter Nilsson <hp@axis.com>
+
+ * configure: Regenerate for config/accross.m4 correction.
+
+2004-03-08 Joel Sherrill <joel@oarcorp.com>
+
+ PR target/14480
+ * config/rs6000/t-rtems: Add missing file on branch.
+
+2004-03-08 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/14289
+ * c-typeck.c (c_mark_addressable): A register variable should
+ be considered global if its not automatic, i.e. TREE_PUBLIC,
+ TREE_STATIC or DECL_EXTERNAL.
+ * function.c (put_var_into_stack): Call abort when placing a
+ hard register into the stack, if x_parm_reg_stack_loc is NULL.
+
+2004-03-08 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*extendqidi2_short_displ"): Add CC clobber.
+ ("*extendqisi2_short_displ"): Likewise.
+
+2004-03-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/pdp11/pdp11.c (comparison_operator_index): Remove.
+ (comp_operator): Likewise.
+ * config/pdp11/pdp11-protos.h: Remove corresponding
+ prototypes.
+
+2004-03-08 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * expr.c (highest_pow2_factor_for_type): Rename into
+ highest_pow2_factor_for_target. Use DECL_ALIGN instead of
+ TYPE_ALIGN when the target is a COMPONENT_REF.
+ (expand_assignment): Ajust call to highest_pow2_factor_for_type.
+
+2004-03-08 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c: Formatting fix.
+ (legitimate_offset_address_p): Correct offset range check.
+
+ * config/rs6000/rs6000.c (rs6000_override_options): Don't override
+ -msoft-float by -mcpu. Consolidate similar code for MASK_MULTIPLE
+ and MASK_STRING.
+
+2004-03-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md (ashrdi3): Do not call ashrdi3_no_power
+ for little endian.
+ ("ashrdi3_no_power"): Disable for little endian.
+ (ashrdi3): Same.
+
+2004-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * fold-const.c (tree_expr_nonnegative_p): Reformat checks for
+ builtins.
+
+2004-03-08 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14471
+ * configure.ac (Target-specific assembler checks) <cris-*-*>: New
+ case, checking for -no-mul-bug-abort option.
+ * configure, config.in: Regenerate.
+ * doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround
+ and -mno-mul-bug-workaround.
+ * config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart")
+ ("mulsidi3", "umulsidi3"): Prefix output template with "%!".
+ ("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"):
+ Ditto. Make attribute "slottable" dependent on TARGET_MUL_BUG.
+ * config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make
+ sure mulu.d is not last on cache-line.
+ * config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround
+ into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION.
+ (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros.
+ (TARGET_SWITCHES): New options -mmul-bug-workaround and
+ -mno-mul-bug-workaround.
+ (TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG.
+ (PRINT_OPERAND_PUNCT_VALID_P): Include '!'.
+ * config/cris/cris.c (cris_operand_extend_operator): Clarify
+ relation to MULT in head comment.
+ (cris_op_str): Abort for MULT.
+ (cris_print_operand) <case '!'>: New case.
+
+2004-03-08 Alan Modra <amodra@bigpond.net.au>
+
+ PR debug/11983
+ * dwarf2out.c (enum dw_val_class): Rename dw_val_class_float to
+ dw_val_class_vec. Replace use throughout file.
+ (dw_float_const): Delete.
+ (dw_vec_const): New.
+ (dw_val_struct_union): Rename val_float to val_vec. Replace use
+ throughout file.
+ (add_AT_vec): Rename from add_AT_float. Add elt_size param.
+ (same_dw_val_p): Adjust vec comparison. Use memcmp.
+ (size_of_die): Adjust dw_val_class_vec sizing.
+ (output_die): Output dw_val_class_vec.
+ (insert_int, extract_int, insert_float): New functions.
+ (add_const_value_attribute): Use insert_float for CONST_DOUBLE.
+ Handle CONST_VECTOR.
+ (add_location_or_const_value_attribute): Handle CONST_VECTOR.
+
+2004-03-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_parse_abi_options): SPE and
+ AltiVec abi cannot co-exist.
+
+ * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Same.
+
+2004-03-07 Jan Hubicka <jh@suse.cz>
+
+ * except.c (emit_to_new_bb_before): Break fallthru edges.
+
+2004-03-07 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*lshrsi3_const"): Disable for 68HC12.
+ ("*lshrsi3"): Also accept an immediate for 68HC12.
+ ("*ashrsi3_const"): Likewise.
+ ("*ashrsi3"): Likewise.
+ ("*ashlsi3_const"): Likewise.
+ ("*ashlsi3"): Likewise.
+ ("cmphi_1_hc12"): Compare two hard register by pushing them and
+ comparing with a pop; don't use a split for that.
+ ("cmphi split"): Disable compare split for 68HC12.
+
+ * config/m68hc11/m68hc11.c (m68hc11_notice_update_cc): Invalidate
+ the status operands if they have side effects.
+
+2004-03-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * defaults.h (LEGITIMIZE_ADDRESS): Provide a default
+ definition.
+ * config/arc/arc.h, config/fr30/fr30.h, config/frv/frv.h,
+ config/h8300/h8300.h, config/ia64/ia64.h,
+ config/mcore/mcore.h, config/mmix/mmix.h,
+ config/ns32k/ns32k.h, config/pdp11/pdp11.h,
+ config/stormy16/stormy16.h, config/v850/v850.h,
+ config/vax/vax.h (LEGITIMIZE_ADDRESS): Remove.
+ * doc/tm.texi (LEGITIMIZE_ADDRESS): Mention the default
+ definition.
+
+2004-03-07 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <IOR_EXPR>: Fold x | x as x.
+ <XOR_EXPR>: Fold x ^ x as zero.
+ <AND_EXPR>: Fold x & x as x.
+
+2004-03-07 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <EQ_EXPR>: Rewrite optimization to transform
+ "foo++ == const" into "++foo == const+incr".
+
+2004-03-07 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_in_small_data_p): Return false if
+ TARGET_ABICALLS.
+
+2004-03-06 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Use 2,-sp to push
+ the stack register.
+ (expand_prologue): Don't make an interrupt or a trap handler a far
+ symbol.
+ (m68hc11_initial_elimination_offset): Likewise.
+
+2004-03-06 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_in_small_data_p): False for functions.
+
+2004-03-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ns32k/ns32k-protos.h: Add a prototype for
+ ns32k_notice_update_cc.
+ * config/ns32k/ns32k.c (ns32k_notice_update_cc): New.
+ * config/ns32k/ns32k.h (NOTICE_UPDATE_CC): Call
+ ns32k_notice_update_cc.
+
+2004-03-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("load_multiple", "*load_multiple_di",
+ "*load_multiple_si"): Allow only if reload_completed.
+ ("store_multiple", "*store_multiple_di", "*store_multiple_si"):
+ Likewise.
+
+2004-03-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/vax/vax-protos.h: Add a prototype for
+ vax_notice_update_cc.
+ * config/vax/vax.c (vax_notice_update_cc): New.
+ * config/vax/vax.h (NOTICE_UPDATE_CC): Call
+ vax_notice_update_cc.
+
+2004-03-06 David Edelsohn <edelsohn@gnu.org>
+
+ * collect2.c (main): Only export initfunc and finifunc if
+ LD_INIT_SWITCH not defined.
+ (scan_prog_file): Only export constructors and destructors if
+ LD_INIT_SWITCH not defined. Only export symbols not found in
+ shared objects.
+
+2004-03-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md (icacheflush): Reorder operands to make match_scratch operand
+ last.
+ * pa.h (INITIALIZE_TRAMPOLINE): Remove unnecessary scratch argument
+ from calls to gen_icacheflush.
+
+2004-03-06 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New.
+ (TARGET_LONG_DOUBLE_128): New.
+ (TARGET_SWITCHES): Add long-double-{128,64}.
+ (TARGET_HAS_XFLOATING_LIBS): Default to TARGET_LONG_DOUBLE_128.
+ (LONG_DOUBLE_TYPE_SIZE): Honor TARGET_LONG_DOUBLE_128.
+ (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New.
+ (WIDEST_HARDWARE_FP_SIZE): New.
+ (TARGET_CPU_CPP_BUILTINS): Define __LONG_DOUBLE_128__.
+ * config/alpha/alpha.c (override_options): Clear MASK_LONG_DOUBLE_128
+ if TARGET_VAX_FLOAT.
+ * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): Remove.
+ (TARGET_DEFAULT): Set MASK_LONG_DOUBLE_128.
+
+2004-03-06 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_swapped_comparison_operator): Fix
+ botched rtx class conversion.
+
+2004-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * tree.h (BUILTIN_EXP10_P, BUILTIN_EXPONENT_P, BUILTIN_SQRT_P,
+ BUILTIN_CBRT_P, BUILTIN_ROOT_P): New macros.
+
+ * builtins.c (fold_builtin_logarithm, fold_builtin): Use new
+ macros.
+ * fold-const.c (fold_mathfn_compare, fold): Likewise.
+
+2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/14343
+ * config/i386/i386.md (movv2di_internal): Conditionalize on
+ TARGET_SSE, not TARGET_SSE2.
+
+2004-03-05 Chris Demetriou <cgd@broadcom.com>
+
+ * config.gcc (mips64orion-*-elf*, mips64orionel-*-elf*): Delete
+ duplicated line.
+
+2004-03-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * builtins.c: Consistently use logN not log* in comments.
+
+2004-03-05 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * rtl.h (mem_expr_equal_p): Function prototype added.
+ * cfgcleanup.c (merge_memattrs): New function.
+ (flow_find_cross_jump): Call merge_memattrs for matching insns.
+ * emit-rtl.c (mem_expr_equal_p): New function.
+
+2004-03-05 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (synth_module_prologue): Const-qualify
+ objc_selector type if using the GNU runtime; fix generated
+ signatures for objc_msg_lookup and objc_msg_lookup_super
+ to match what GNU ObjC headers provide; reformat and clean up.
+ (synth_self_and_ucmd_args): Use previously constructed (and
+ hence possibly const-qualified) objc_selector type.
+
+2004-03-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi (HARD_REGNO_RENAME_OK): Document.
+
+2004-03-05 Jason Merrill <jason@redhat.com>
+
+ * tree.h (TYPE_HASH): Use TYPE_UID.
+ (TREE_HASH): New macro with old definition of TYPE_HASH.
+ * tree.c (build_type_attribute_variant): Use iterative_hash_object.
+ (build_array_type, build_function_type): Likewise.
+ (build_method_type_directly): Likewise.
+ (build_offset_type, build_complex_type): Likewise.
+ (type_hash_list, attribute_hash_list): Likewise. Now static.
+ * except.c: s/TYPE_HASH/TREE_HASH/.
+
+2004-03-05 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (function_arg): Handle 16-byte aligned args.
+ (xtensa_va_start): Initialize __va_stk to ($arg_ptr - 32). Adjust
+ __va_ndx by 2 words when referencing an argument on the stack.
+ (xtensa_va_arg): Handle 16-byte aligned args. Adjust __va_ndx by 2
+ words when an arg on the stack is first seen.
+
+2004-03-05 Paul Brook <paul@codesourcery.com>
+
+ * arm.h (ARM_FLAG_VFP): Remove.
+ (ARM_FLAG_ATPCS, CIRRUS_FIX_INVALID_INSNS): Renumber.
+ * netbsd-elf.h (ARM_FLAG_VFP): Remove.
+
+2004-03-05 Paul Brook <paul@codesourcery.com>
+
+ * function.c (assign_parms): Include pretend alignment offset.
+
+2004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * stor-layout.c (layout_type, case FUNCTION_TYPE): Make size
+ FUNCTION_BOUNDARY, not POINTER_SIZE * 2.
+
+2004-03-05 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * configure.ac: When passing --enable-languages to subdir
+ configure when host != build, make sure we don't pass an empty
+ value.
+ * configure: Regenerate.
+
+2004-03-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR 13577
+ * gcc.c (cc1_options): Robustify -auxbase-strip from multiple -o
+ options.
+
+2004-03-05 Paolo Bonzini <bonzini@gnu.org>
+
+ * simplify-rtx.c (simplify_relational_operation): If
+ flag_wrapv is set, do not move terms between the two
+ side of a relational operator.
+
+2004-03-05 Paolo Bonzini <bonzini@gnu.org>
+
+ * rtlanal.c: Include target.h and output.h
+ (rtx_cost, address_cost, default_address_cost): Move from...
+ * cse.c (rtx_cost, address_cost, default_address_cost):
+ ... this file.
+ * rtl.h (rtx_cost, address_cost): Move under rtlanal.c.
+ * Makefile.in: Adjust dependencies.
+
+2004-03-05 Paolo Bonzini <bonzini@gnu.org>
+
+ * cse.c (cse_end_of_basic_block): Make static.
+ * local-alloc.c (function_invariant_p): Move to
+ reload1.c.
+ * loop.c (libcall_other_reg, record_excess_regs):
+ Make static.
+ * reload1.c (function_invariant_p): Moved here
+ from local-alloc.c, made static.
+ * rtl.h (cse_end_of_basic_block, function_invariant_p,
+ libcall_other_reg, record_excess_regs): Remove
+ declarations.
+
+2004-03-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.c (signed_comparison_operator): Add a
+ missing parenthesis.
+
+2004-03-04 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * ggc-common.c (gt_pch_restore): Don't unmap addr unless we are
+ going to call mmap again. Read the file into the right place.
+ Give a fatal error if we have to relocate.
+
+2004-03-04 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_return_in_msb): New function.
+ (TARGET_RETURN_IN_MSB): Define to xtensa_return_in_msb.
+
+2004-03-05 Hans-Peter Nilsson <hp@axis.com>
+
+ PR other/14354
+ * config/fp-bit.c (_fpdiv_parts): Do not round when pack_d would
+ round the same. When rounding, clear bits that would cause a
+ second rounding in pack_d.
+ (_fpmul_parts): Ditto. Remove #if 0:d code.
+
+2004-03-04 Ziemowit Laski <zlaski@apple.com>
+
+ PR c++/14425, c++/14426
+ * config/rs6000/altivec.h (vec_splat_s8, vec_splat_s16,
+ vec_splat_s32, vec_splat_u8, vec_splat_u16, vec_splat_u32):
+ Change C++ definitions to accept a 'const int' argument;
+ the prototypes already do.
+ * config/rs6000/rs6000.c (rs6000_common_init_builtins):
+ Rename v4si_ftype_char, v8hi_ftype_char, v16qi_ftype_char,
+ v4sf_ftype_v4si_char, v4si_ftype_v4sf_char, v4si_ftype_v4si_char,
+ v8hi_ftype_v8hi_char, v16qi_ftype_v16qi_char,
+ v16qi_ftype_v16qi_v16qi_char, v8hi_ftype_v8hi_v8hi_char,
+ v4si_ftype_v4si_v4si_char and v4sf_ftype_v4sf_v4sf_char to
+ end in ..._int; change them to accept an int instead of a char
+ as the last parameter.
+
+2004-03-04 Phil Edwards <phil@codesourcery.com>
+
+ * genmultilib: Change '=' to '-' when translating option names
+ to directory names.
+
+2004-03-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * expr.c (expand_expr_real, case COMPONENT_REF): Get proper type of
+ stack slot for temp used for result of BLKmode but in integral mode.
+
+2004-03-04 Jan Hubicka <jh@suse.cz>
+
+ * reload.c (find_reloads): Reorganize if seqeunce to switch.
+
+ * cfgrtl.c (rtl_redirect_edge_and_branch): Set the source BB as dirty.
+ (cfglayout_redirect_edge_and_branch): Set the source BB as dirty.
+
+2004-03-04 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.md (divdf3_internal_thr): Fix algorithm.
+ * testsuite/gcc.dg/20040303-1.c: New test.
+
+2004-03-04 Steven Bosscher <stevenb@suse.de>
+
+ * ppro.md: Rewrite as a DFA pipeline description.
+ * i386.md: Remove all uses of the ppro_uops attribute.
+ * i386.c: (ix86_safe_ppro_uops, ix86_dump_ppro_packet,
+ ix86_reorder_insn, ix86_sched_reorder_ppro, ix86_sched_init,
+ ix86_sched_reorder, ix86_variable_issue,
+ struct ix86_sched_data, TARGET_SCHED_VARIABLE_ISSUE,
+ TARGET_SCHED_INIT, TARGET_SCHED_REORDER): Remove.
+ (ia32_use_dfa_pipeline_interface): Add TARGET_PENTIUMPRO.
+ (ia32_multipass_dfa_lookahead): Add TARGET_PENTIUMPRO.
+ * athlon.md (athlon_ssecmp_load): Fix comment
+
+2004-03-04 Stuart Hastings <stuart@apple.com>
+
+ * gcc/doc/invoke.texi: Document -mlongcall for Darwin/PPC.
+
+2004-03-04 Stuart Hastings <stuart@apple.com>
+
+ * gcc/config/i386/darwin.h: Darwin/x86 doesn't support CPUs before
+ 686, tell Darwin assembler to allow prefetch insns, non-empty def
+ of SUBTARGET_OPTION_TRANSLATE_TABLE.
+
+2004-03-04 DJ Delorie <dj@redhat.com>
+
+ PR optimization/14282
+ * sched-deps.c (sched_analyze_insn): Allow a stack adjustment
+ between a call and the assignment of its return value.
+
+2004-03-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c: Put a comment for every function.
+
+2004-03-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Add comments about peephole2's.
+
+2004-03-04 Steven Bosscher <stevenb@suse.de>
+
+ * i386.h (TARGET_CPU_DEFAULT_nocona): Fix value.
+
+2004-03-04 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (thread_jump): Update call of cselib_init.
+ * cselib.c (cselib_record_memory): New static variable.
+ (cselib_lookup_mem, cselib_record_set, cselib_record_sets):
+ Give up on memories when asked for.
+ (cselib_init): Accept new argument.
+ * cselib.h (cselib_init): Update prototype.
+ * gcse.c (local_cprop_pass): Update call of cselib_init.
+ * loop.c (load_mems): Update call of cselib_init.
+ * postreload.c (reload_cse_regs_1): Update call of cselib_init.
+ * sched-deps.c (sched_analyze): Update call of cselib_init.
+
+2004-03-04 David Edelsohn <edelsohn@gnu.org>
+ GP <gp@qnx.com>
+
+ * config/rs6000/rs6000.c (output_function_profiler): Append @plt
+ when compiling PIC.
+
+2004-03-04 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/14362
+ * var-tracking.c (track_expr_p): Do not track variables which
+ should be ignored for debugging purposes.
+
+2004-03-04 Alan Modra <amodra@bigpond.net.au>
+
+ * real.c (encode_ibm_extended): Don't bother rounding low double.
+ * c-cppbuiltin.c (builtin_define_float_constants): Tweak MAX
+ when fmt->pnan < fmt->p.
+
+2004-03-04 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.h (FUNCTION_ARG_REGNO_P): Fix to check
+ only range of valid arg registers and fixed_regs.
+
+2004-03-04 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/14406
+ * config/rs6000/rs6000.md (abstf2, abstf2+1): Delete define_insn.
+ (abstf2, abstf2_internal): New define_expand.
+
+2004-03-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/14235
+ * expr.c (convert_move): Copy the source to a new pseudo
+ when converting from a sub-word source to a larger-than-word
+ register which conflicts with the source.
+
+2004-03-03 Zack Weinberg <zack@codesourcery.com>
+
+ PR 13728
+ * c-decl.c (diagnose_mismatched_decls): Issue an error for two
+ parameters with the same name, unless one is a forward decl.
+ Do not issue a redundant-redeclaration warning for forward
+ decls of parameters.
+
+2004-03-04 David Edelsohn <edelsohn@gnu.org>
+
+ * doc/install.texi (*-ibm-aix*): Document use of Bash to speed up
+ configuration.
+
+2004-03-03 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * ggc-zone.c (ggc_pch_write_object): Don't align file pointer.
+
+2004-03-04 Alan Modra <amodra@bigpond.net.au>
+
+ * target-def.h (TARGET_OPTF): Delete.
+ * c-opts.c (TARGET_OPTF): Define.
+
+2004-03-04 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c (cselib_finish): Fix another miss-application of my previous
+ patch.
+
+2004-03-03 Mike Stump <mrs@apple.com>
+
+ Add framework support for darwin.
+
+ * c-incpath.c: Include target.h and machmode.h.
+ (add_path): Use a consistent style for cpp_dir. Initialize
+ p->construct to 0.
+ (add_cpp_dir_path): New.
+ (register_include_chains): Add use of extra_includes callback.
+ (hook_void_int): Add.
+ (target_c_incpath): Add.
+ * c-incpath.h (add_cpp_dir_path): New.
+ (target_c_incpath_s): Add.
+ (target_c_incpath): Add.
+ (C_INCPATH_INIT): Add.
+ * c-opts.c (c_common_missing_argument,
+ c_common_handle_option): Add -F argument processing.
+ * c.opt: Add -F argument processing.
+ * gcc.c (trad_capable_cpp): Add -F argument processing.
+ * cppfiles.c (find_file_in_dir): Update to use construct
+ callback.
+ (search_path_exhausted, cpp_get_path, cpp_get_buffer,
+ cpp_get_prev): New.
+ (_cpp_find_file): Use search_path_exhausted.
+ (make_cpp_dir): Initialize construct to 0.
+ * cpplib.h (missing_header_cb
+ cpp_get_path, cpp_get_buffer, cpp_get_file, cpp_get_prev): New.
+ (cpp_callbacks): Add missing_header
+ (cpp_dir): Add construct.
+ * target-def.h: (TARGET_OPTF): New.
+ * hooks.c (hook_void_int, hook_void_charptr): Add.
+ * hooks.h (hook_void_int, hook_void_charptr): Add.
+ * Makefile.in (c-incpath.o) : Add $(TARGET_H) and
+ $(MACHMODE_H) dependencies.
+ * doc/invoke.texi (Darwin Options): Document -F.
+ * doc/tm.texi (TARGET_EXTRA_INCLUDES): Add.
+ (TARGET_OPTF): Add.
+ * fix-header.c (target_c_incpath): Add.
+
+ * config/darwin-c.c: Add c-incpath.h include.
+ (using_frameworks, find_subframework_file,
+ find_subframework_header, add_system_framework_path,
+ frameworks_in_use, num_frameworks, max_frameworks,
+ add_framework, find_framework, struct framework_header,
+ framework_header_dirs, framework_construct_pathname,
+ find_subframework_file, add_system_framework_path,
+ add_framework_path, framework_defaults,
+ darwin_register_frameworks, find_subframework_header): Add.
+ * config/darwin.h (TARGET_EXTRA_INCLUDES, TARGET_OPTF): New.
+ (TARGET_OPTION_TRANSLATE_TABLE): Add -framework support.
+ (CPP_SPEC): Add __APPLE_CC__ support.
+ * t-darwin (darwin-c.o): Add c-incpath.h dependency.
+
+2004-03-04 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c (cselib_finish): Fix miss-application of my previous
+ patch.
+
+2004-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * hooks.c (hook_tree_tree_identity): New.
+ * hooks.h: Add a prototype for hook_tree_tree_identity.
+ * stmt.c (expand_asm_operands): Use targetm.md_asm_clobbers
+ instead of MD_ASM_CLOBBERS.
+ * system.h (MD_ASM_CLOBBERS): Poison.
+ * target-def.h (TARGET_MD_ASM_CLOBBERS): New.
+ (TARGET_INITIALIZER): Add TARGET_MD_ASM_CLOBBERS.
+ * target.h (gcc_target): Add md_asm_clobbers.
+ * config/i386/i386.c (TARGET_MD_ASM_CLOBBERS): New.
+ (ix86_md_asm_clobbers): New.
+ * config/i386/i386.h (MD_ASM_CLOBBERS): Remove.
+ * doc/tm.texi (MD_ASM_CLOBBERS): Change to
+ TARGET_MD_ASM_CLOBBERS.
+
+2004-03-03 Stuart Hastings <stuart@apple.com>
+
+ * gcc/config.gcc: Arrange for Darwin/x86 to build libgcc_eh.a.
+
+2004-03-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (noov_compare64_op): Fix typo.
+
+ * config/sparc/sparc.h (ASM_FLOAT): Delete.
+ (ASM_DOUBLE): Likewise.
+ (ASM_LONGDOUBLE): Likewise.
+ * config/sparc/pbd.h (ASM_INT_OP): Delete.
+
+2004-03-03 Richard Henderson <rth@redhat.com>
+
+ PR opt/13862
+ * cselib.c (cselib_record_sets): Don't record multiple sets in
+ asm insns.
+
+2004-03-03 Mostafa Hagog <mustafa@il.ibm.com>
+
+ * common.opt: Add description of the new -fgcse-after-reload flag.
+
+ * flags.h (flag_gcse_after_reload): Declaration of global variable.
+
+ * gcse.c (reg_used_on_edge ,reg_set_between_after_reload_p,
+ reg_used_between_after_reload_p, rtx get_avail_load_store_reg,
+ is_jump_table_basic_block, bb_has_well_behaved_predecessors,
+ get_bb_avail_insn, hash_scan_set_after_reload,
+ compute_hash_table_after_reload, eliminate_partially_redundant_loads,
+ gcse_after_reload, get_bb_avail_insn): New functions to implement
+ gcse-after-reload.
+ (gcse_after_reload_main): New function, the main entry point to
+ gcse-after-reload.
+
+ * rtl.h (gcse_after_reload_main): Declaration of the new function.
+
+ * opts.c (common_handle_option): Handle the -fgcse-after-reload flag.
+
+ * toplev.c (flag_gcse_after_reload): Initialization.
+
+ * passes.c (rest_of_handl_gcse2): Call gcse_after_reload_main.
+
+ * params.def (PARAM_GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
+ PARAM_GCSE_AFTER_RELOAD_CRITICAL_FRACTION): New parameters for tuning
+ the gcse after reload optimization.
+
+ * params.h (GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
+ GCSE_AFTER_RELOAD_CRITICAL_FRACTION): Two macros to access the tuning
+ parameters.
+
+ * doc/invoke.texi: Documentation for the new flag gcse-after-reload.
+
+2004-03-03 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/ieee754-df.S (muldf3, divdf3): Fix denormalization of
+ small negative values.
+
+2004-03-03 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c (hash_table): Remove GTY marker.
+ (reg_values): Turn into array.
+ (used_regs): Likewise.
+ (n_used_regs): New static variable.
+ (reg_values_old): Kill.
+ (clear_table): Update uses of arrays.
+ (cselib_lookup): Likewise.
+ (cselib_record_set): Likewise.
+ (cselib_init): Likewise.
+ (cselib_finish): Likewise.
+ (cselib_udpate_varray_sizes): Kill.
+ * cselib.h (cselib_update_varray_sizes): Kill.
+
+2004-03-03 Paul Brook <paul@codesourcery.com>
+
+ * flow.c (ior_reg_cond, and_reg_cond): Remove stray ")".
+
+2004-03-03 Jan Hubicka <jh@suse.cz>
+
+ * ggc-common.c (ggc_alloc_cleared_stat, ggc_realloc_stat):
+ Rename from ...; make statistics transparent.
+ (ggc_alloc_cleared, ggc_realloc_stat): ... these.
+ (loc_descriptor): New structure.
+ (hash_descriptor, eq_descriptor, loc_descriptor, cmp_statistics,
+ add_statistics):
+ New static function.
+ (ggc_record_overhead, dump_statistics): New global function.
+ * ggc-none.c (ggc_alloc_types_stat, ggc_alloc_stat, ggc_alloc_zone_stat,
+ ggc_alloc_cleared_stat, ggc_realloc_stat, ggc_alloc_typed_stat): Rename
+ from ...; accept locations
+ (ggc_alloc_types, ggc_alloc, ggc_alloc_zone, ggc_alloc_cleared,
+ ggc_realloc, ggc_alloc_typed): ... this one.
+ from ...; accept locations
+ * ggc-page.c (ggc_alloc_typed_stat, ggc_alloc_zone_stat,
+ ggc_alloc_stat): Rename from ... ; pass locations
+ * ggc-page.c (ggc_alloc_typed, ggc_alloc_zone, ggc_alloc):
+ ... this one.
+ (ggc_alloc_stat): Record overehead.
+ * ggc.h (ggc_alloc_types, ggc_alloc, ggc_alloc_zone, ggc_alloc_cleared,
+ ggc_realloc, ggc_alloc_typed): Turn to macros
+ (ggc_alloc_types_stat, ggc_alloc_stat, ggc_alloc_zone_stat,
+ ggc_alloc_cleared_stat, ggc_realloc_stat, ggc_alloc_typed_stat): Declare.
+ (dump_ggc_loc_satistics, ggc_record_overehead): Declare.
+ * langhooks.h (lhd_make_node): Declare.
+ (LANG_HOOKS_MAKE_TYPE): Default to new function,
+ * langhooks.c (lhd_make_node): New.
+ * rtl.c (rtx_alloc_stat, swallow_copy_rtx_stat): Rename from ... ; pass
+ locations.
+ (rtx_alloc, swallow_copy_rtx): ... this one.
+ * rtl.h (rtx_alloc, swallow_copy_rtx): Turn to macros.
+ * rtl.c (rtx_alloc_stat, swallow_copy_rtx_stat): Declare.
+ * toplpev.c (finalize): Dump stats.
+ * tree.c (make_node_stat, copy_node_stat, make_tree_vec_stat,
+ build_tree_list_stat, tree_cons_stat, build?_stat, build_decl_stat):
+ Rename from ... ; pass locators.
+ (make_node, copy_node, make_tree_vec, build_tree_list, tree_cons,
+ build?, build_decl): Declare.
+ * tree.h (make_node_stat, copy_node_stat, make_tree_vec_stat,
+ build_tree_list_stat, tree_cons_stat, build?_stat, build_decl_stat):
+ Declare.
+ (make_node, copy_node, make_tree_vec, build_tree_list, tree_cons,
+ build?, build_decl): New macros.
+ * Makefile.in (RTL_H, TREE_H): Add statistics.h dependency.
+ * statistics.h: New file.
+
+2004-03-03 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+ Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (MASK_FIX_SB1): Bump.
+ (MASK_FIX_R4400, TARGET_FIX_R4400): New macros.
+ (TARGET_SWITCHES): Add -mfix-r4400 and -mno-fix-r4400.
+ * config/mips/mips.c (mips_output_division): Fill the branch delay
+ slot with a nop if TARGET_FIX_R4000. Extend R4000 workarounds to
+ TARGET_FIX_R4400.
+ (mips_output_division): Adjust accordingly.
+ (override_options): Make -march=r4400 imply -mfix-r4400 by default.
+ * doc/invoke.texi: Document -mfix-r4400 and new errata workarounds.
+
+2004-03-03 Paolo Bonzini <bonzini@gnu.org>
+
+ * alias.c (rtx_equal_for_memref_p): Use predicates
+ to test rtx classes and new rtx class codes, possibly
+ splitting conditionals that tested against '<' and 'o'.
+ * caller-save.c (save_call_clobbered_regs): Likewise.
+ * combine.c (contains_muldiv, find_split_point, subst,
+ combine_simplify_rtx, simplify_if_then_else,
+ simplify_set, simplify_logical, expand_compound_operation,
+ make_compound_operation, if_then_else_cond, known_cond,
+ apply_distributive_law, cached_nonzero_bits,
+ cached_num_sign_bit_copies, simplify_shift_const,
+ gen_binary, simplify_comparison, update_table_tick,
+ record_value_for_reg, get_lsat_value_validate): Likewise.
+ * cse.c (mention_regs, find_best_addr, find_comparison_args,
+ fold_rtx, cse_insn, invalidate_memory, cse_basic_block):
+ Likewise.
+ * emit-rtl.c (copy_insn_1): Likewise.
+ * expr.c (force_operand): Likewise.
+ * final.c (final_scan_insn, get_mem_expr_from_op): Likewise.
+ * flow.c (notice_stack_pointer_modification_1,
+ invalidate_mems_from_autoinc, ior_reg_cond, not_reg_cond,
+ and_reg_cond, elim_reg_cond): Likewise.
+ * function.c (update_epilogue_consts): Likewise.
+ * genattrtab.c (attr_rtx_1): Likewise.
+ * genopinit.c (gen_insn): Likewise.
+ * integrate.c (subst_constants): Likewise.
+ * jump.c (reversed_comparison_code_parts,
+ reversed_comparison_code, delete_related_insns,
+ rtx_renumbered_equal_p): Likewise.
+ * local-alloc.c (block_alloc): Likewise.
+ * loop.c (rtx_equal_for_prefetch_p, maybe_eliminate_biv,
+ canonicalize_condition): Likewise.
+ * loop-iv.c (simplify_using_conditions, iv_number_of_iterations):
+ Likewise.
+ * optabs.c (add_equal_node, expand_binop): Likewise.
+ * predict.c (estimate_probability): Likewise.
+ * ra-debug.c (ra_print_rtx_2op, ra_print_rtx): Likewise.
+ * recog.c (validate_replace_rtx_1, comparison_operator,
+ offsettable_address_p, constrain_operands): Likewise.
+ * reg-stack.c (swap_rtx_condition_1, subst_stack_regs_pat):
+ Likewise.
+ * regclass.c (scan_one_insn): Likewise.
+ * regmove.c (stable_and_no_regs_but_for_p): Likewise.
+ * regrename.c (kill_autoinc_value): Likewise.
+ * reload.c (find_reusable_reload, find_reloads,
+ reg_overlap_mentioned_for_reload_p): Likewise.
+ * reload1.c (gen_reload, delete_address_reloads_1): Likewise.
+ * rtl.c (copy_rtx): Likewise.
+ * rtl.h (CONSTANT_P, INSN_P): Likewise.
+ * rtlanal.c (commutative_operand_precedence): Likewise.
+ * sched-deps.c (conditions_mutex_p): Likewise.
+ * sched-rgn.c (is_cfg_nonregular): Likewise.
+ * simplify-rtx.c (simplify_gen_binary,
+ simplify_gen_relational, simplify_replace_rtx,
+ simplify_unary_operation, simplify_binary_operation,
+ simplify_ternary_operation, simplify_rtx): Likewise.
+ * unroll.c (reg_dead_after_loop): Likewise.
+ * config/alpha/alpha.c (alpha_swapped_comparison_operator,
+ print_operand): Likewise.
+ * config/arc/arc.c (proper_comparison_operator): Likewise.
+ * config/arm/arm.c (arm_arm_address_cost, arm_select_cc_mode):
+ Likewise.
+ * config/avr/avr.c (_reg_unused_after): Likewise.
+ * config/frv/frv.c (frv_ifcvt_modify_tests,
+ frv_ifcvt_modify_insn, frv_pack_insn): Likewise.
+ * config/i386/i386.c (ix86_comparison_operator,
+ ix86_carry_flag_operator, fcmov_comparison_operator,
+ arith_or_logical_operator, print_operand,
+ ix86_expand_binary_operator, ix86_binary_operator_ok):
+ Likewise.
+ * config/i386/i386.md: Likewise.
+ * config/ia64/ia64.c (not_postinc_memory_operand,
+ ia64_print_operand, update_set_flags, errata_emit_nops):
+ Likewise.
+ * config/ia64/ia64.h (PREFERRED_RELOAD_CLASS,
+ CONSTRAINT_OK_FOR_S): Likewise.
+ * config/ip2k/ip2k.c (mdr_resequence_xy_yx,
+ mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
+ ip2k_xexp_not_uses_reg_for_mem, ip2k_xexp_not_uses_reg_p,
+ ip2k_composite_xexp_not_uses_reg_p, ip2k_unary_operator):
+ Likewise.
+ * config/iq2000/iq2000.c (cmp_op, symbolic_expression_p,
+ eqne_comparison_operator, signed_comparison_operator):
+ Likewise.
+ * config/mips/mips.c (cmp_op, symbolic_expression_p):
+ Likewise.
+ * config/mmix/mmix (mmix_foldable_comparison_operator,
+ mmix_comparison_operator): Likewise.
+ * config/pa/pa.c (hppa_legitimize_address): Likewise.
+ * config/rs6000/rs6000.c (stmw_operation,
+ branch_comparison_operator, trap_comparison_operator,
+ ccr_bit): Likewise.
+ * config/rs6000/rs6000.h (SELECT_CC_MODE): Likewise.
+ * config/s390/s390.c (s390_alc_comparison,
+ s390_slb_comparison):L Likewise.
+ * config/sh/sh.c (gen_block_redirect, reg_unused_after):
+ Likewise.
+ * config/sparc/sparc.c (eq_or_neq, normal_comp_operator,
+ noov_compare_op, noov_compare64_op, v9_regcmp_op,
+ emit_hard_tfmode_operation, reg_unused_after)
+ * doc/md.texi, doc/rtl.texi: Likewise.
+
+ * ra-debug.c: Add 2004 to list of copyright years.
+ * unroll.c: Likewise.
+
+ * combine.c (simplify_logical): Remove dummy test,
+ (apply_distributive_law): Fix typo in comment.
+ GET_CODE (x) == AND so x is a commutative binary op.
+ * jump.c (delete_related_insns): simplify loop
+ condition, move testing of RTX codes inside the loop.
+ (rtx_renumbered_equal_p): do not use RTX_CODE.
+ * rtl.c (rtx_class): Declare as enum rtx_class.
+ * rtl.def (EQ, NE, UNEQ, LTGT, UNORDERED, ORDERED):
+ Move to RTX_COMM_COMPARE class.
+ (HIGH, SYMBOL_REF, LABEL_REF, CONST, CONST_INT, CONST_DOUBLE):
+ Move to RTX_CONST_OBJ class.
+ * rtl.h (enum rtx_class): New declaration,
+ (RTX_OBJ_MASK, RTX_OBJ_RESULT, RTX_COMPARE_MASK,
+ RTX_COMPARE_RESULT, RTX_ARITHMETIC_MASK, RTX_ARITHMETIC_RESULT,
+ RTX_BINARY_MASK, RTX_BINARY_RESULT, RTX_COMMUTATIVE_MASK,
+ RTX_COMMUTATIVE_RESULT, RTX_NON_COMMUTATIVE_RESULT,
+ RTX_EXPR_FIRST, RTX_EXPR_LAST, UNARY_P, BINARY_P,
+ ARITHMETIC_P, COMMUTATIVE_ARITHMETIC_P, COMPARISON_P,
+ SWAPPABLE_OPERANDS_P, NON_COMMUTATIVE_P, COMMUTATIVE_P,
+ OBJECT_P): New macros.
+ * config/sparc/sparc.c (noov_compare_op): Remove register
+ from parameter.
+
+2004-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * target.h: Remove texi jargons in comments.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Change the
+ threshold to 0x4f.
+
+ Revert:
+ 2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
+ * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
+ as well.
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
+ * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/md.texi (cbranchmode4): New.
+
+2004-03-02 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips16.S: Change fixsfsi and fixdfsi to
+ fix_trunc.
+ * config/mips/mips.c (mips_init_libfuncs): Change accordingly.
+ * config/mips/t-elf (LIB1ASMFUNCS): Ditto.
+ * config/mips/t-isa3264 (LIB1ASMFUNCS): Ditto.
+ * config/mips/t-r3900 (LIB1ASMFUNCS): Ditto.
+
+2004-03-02 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/11767
+ * coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P.
+ * optabs.c (prepare_cmp_insn): Force trapping memories to registers
+ before the compare, if flag_non_call_exceptions.
+
+2004-03-02 Richard Henderson <rth@redhat.com>
+
+ PR middle-end/14327
+ * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before
+ emitting the label, not after.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_addr_mode): New variable.
+ (m68hc11_mov_addr_mode): Likewise.
+ (m68hc11_override_options): Initialize them based on target.
+ (register_indirect_p): Allow a MEM for indirect addressing modes and
+ use flags to control what is allowed.
+ (m68hc11_small_indexed_indirect_p): Use m68hc11_mov_addr_mode for
+ supported addressing modes.
+ (m68hc11_register_indirect_p): Use m68hc11_addr_mode.
+ (go_if_legitimate_address_internal): Likewise.
+ (m68hc11_indirect_p): Likewise and check the mode.
+ (print_operand): Allow a (MEM (MEM)) and generate indirect addressing.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c (BUILTIN_SETJMP_FRAME_VALUE): Remove.
+ (expand_builtin_setjmp_setup): Use
+ targetm.builtin_setjmp_frame_value instead of
+ BUILTIN_SETJMP_FRAME_VALUE.
+ * system.h (BUILTIN_SETJMP_FRAME_VALUE): Poison.
+ * target-def.h (TARGET_BUILTIN_SETJMP_FRAME_VALUE): New.
+ (TARGET_INITIALIZER): Add TARGET_BUILTIN_SETJMP_FRAME_VALUE.
+ * target.h (gcc_target): Add builtin_setjmp_frame_value.
+ * targhooks.c (default_builtin_setjmp_frame_value): New.
+ * targhooks.h: Add a prototype for
+ default_builtin_setjmp_frame_value.
+ * doc/tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Change to
+ TARGET_BUILTIN_SETJMP_FRAME_VALUE.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md (move peephole2): New peepholes to optimize
+ sequences of moves.
+ (add peepholes): New peepholes to optimize sequences adding small
+ constants.
+ (bset peepholes): New peepholes to transform an OR in a bset form
+ (bclr peepholes): Likewise for bclr form.
+ (cmp peepholes): New peepholes to avoid register copies when comparing.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("*pushdi_internal"): New insn and split
+ to separate push from moves.
+ ("*pushdf_internal"): Likewise.
+ ("*pushsf_internal"): Likewise.
+ ("*pushsi_internal"): Likewise.
+ ("movdi_internal"): Use define_insn_and_split; non push operand.
+ ("movdf_internal"): Likewise.
+ ("movsf_internal"): Likewise.
+ ("movsi_internal"): Likewise.
+ ("*movhi_68hc12", "*addhi3_68hc12"): Fix and tune constraints
+ ("*addhi3", "*subhi3", "*andhi3_mem", "*iorhi3_mem"): Likewise.
+ ("*ashlsi3_const1", "*lshrsi3_const1"): Likewise.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("tstqi_z_used"): Use define_insn_and_split.
+ ("cmphi_z_used", "cmpqi_z_used"): Likewise.
+ ("movstrictsi", "movstricthi", "movstrictqi"): Likewise.
+ ("anddi3", "andsi3", "iordi3", "iorsi3"): Likewise.
+ ("xordi3", "xorsi3", "*logicalsi3_zexthi"): Likewise.
+ ("*logicalsi3_zextqi", "*logicalhi3_zexthi_ashift8"): Likewise.
+ ("logicalhi3_zexthi", "*logicalsi3_silshr16"): Likewise.
+ ("*logicalsi3_silshl16", "*logicalsi3_silshl16_zext"): Likewise.
+ ("*ashldi3_const32", "*ashldi3_const1", "addsi_silshr16"): Likewise.
+ ("addsi_andshr16", "*ashlsi3_const16_zexthi"): Likewise.
+ ("*lshrdi3_const32", "*lshrdi_const1"): Likewise.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md (SOFT_TMP_REGNUM): Define.
+ (SOFT_XY_REGNUM): Define.
+ (cmp split): Use the above instead of hard coded numbers.
+ (8-bit op split): No need to check the mode; allow Q_REG.
+ (ashift split): Adjust the first operand if it uses the SP and we
+ are pushing the shifted value.
+ (plus shift split): Fix when a source is in register D+X.
+ ("doloop_end"): Pass dummy arguments to gen_rtx_NE.
+
+2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix when
+ comparing with Z register.
+
+2004-03-02 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgloop.h (struct loop_desc): Removed.
+ (struct loop): Fields simple, desc and has_desc removed.
+ (simple_loop_p, count_loop_iterations): Declaration removed.
+ * cfgloopanal.c (struct unmark_altered_insn_data): Removed.
+ (unmark_altered, blocks_invariant_registers, unmark_altered_insn
+ blocks_single_set_registers, invariant_rtx_wrto_regs_p_helper,
+ invariant_rtx_wrto_regs_p, test_for_iteration, constant_iterations,
+ simple_loop_exit_p, variable_initial_value, variable_initial_values,
+ simple_condition_p, simple_increment, count_strange_loop_iterations,
+ inverse, fits_in_mode_p, simple_loop_p, count_loop_iterations):
+ Removed.
+ * loop-iv.c (check_simple_exit, find_simple_exit): Update comments.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genattrtab.c: Don't handle MATCH_INSN.
+ * genrecog.c: Likewise.
+ * gensupport.c: Likewise.
+ * rtl.def (match_insn): Remove.
+ * doc/md.texi (match_insn, match_insn2): Remove.
+
+2004-03-02 Mark Mitchell <mark@codesourcery.com>
+
+ * doc/c-tree.texi (DECL_ASSEMBLER_NAME): Mention that using this
+ macro results in memory allocation.
+
+2004-03-02 David O'Brien <obrien@FreeBSD.org>
+
+ * config/freebsd-spec.h (FBSD_DYNAMIC_LINKER): Add.
+ * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Define
+ %(fbsd_dynamic_linker),
+ (LINK_SPEC): Use %(fbsd_dynamic_linker), and sync style with
+ config/i386/freebsd.h
+ * config/arm/freebsd.h: Ditto.
+ * config/i386/freebsd.h: Ditto.
+ * config/i386/freebsd64.h: Ditto.
+ * config/ia64/freebsd.h: Ditto.
+ * config/rs6000/sysv4.h: Ditto.
+ * config/sparc/freebsd.h: Ditto.
+
+2004-03-02 Loren James Rittle <ljrittle@acm.org>
+
+ * gcc/doc/install.texi (*-*-freebsd*): Update target information.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * rtl.def (define_combine): Remove.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Tweak formatting.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*cmphi_h8300): Rename to
+ *cmphi_h8300_znvc.
+ (*cmphi_h8300hs): Rename to *cmphi_h8300hs_znvc.
+
+2004-03-01 Mark Mitchell <mark@codesourcery.com>
+
+ PR bootstrap/14356
+ * gcc.c (process_command): Remove const-qualification from argv.
+ (main): Likewise.
+
+2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (pushqi1_h8300hs): Rename to
+ pushqi1_h8300hs_advanced. Adjust its caller.
+ (pushhi1_h8300hs): Rename to pushhi1_h8300hs_advanced.
+ Adjust its caller.
+
+2004-03-02 Nicolas Roche <roche@act-europe.fr>
+
+ * Makefile.in (install-libgcc, install-multilib): Pass
+ mkinstalldirs var to libgcc.mk.
+
+2004-03-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (DBX_OUTPUT_STANDARD_TYPES): Poison.
+ * doc/tm.texi (DBX_OUTPUT_STANDARD_TYPES): Remove.
+
+2004-03-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (gtle_operator): Accept GT and LE.
+ * config/h8300/h8300.md: Split several peephole2's, each into
+ two.
+
+2004-03-02 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * dominance.c (recount_dominator): Handle postdominators.
+
+2004-03-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (enum mips_symbol_type): Move from mips.h.
+ (NUM_SYMBOL_TYPES): Likewise.
+ (SYMBOL_64_HIGH, SYMBOL_64_MID, SYMBOL_64_LOW): New symbol types.
+ (mips_unspec_address): Declare.
+ (mips_gotoff_page, mips_gotoff_global): Delete.
+ * config/mips/mips.h (PREDICATE_CODES): Add general_symbolic_operand.
+ * config/mips/mips.c (enum mips_symbol_type, NUM_SYMBOL_TYPES): Delete.
+ (mips_symbolic_constant_p, mips_symbolic_address_p)
+ (mips_symbol_insns): Handle new symbol types.
+ (general_symbolic_operand): New predicate.
+ (mips_unspec_address): Make extern.
+ (mips_gotoff_page, mips_gotoff_global): Delete.
+ (override_options): Allow -mabi=64 -mno-abicalls -mexplicit-relocs.
+ Handle new symbol types.
+ * config/mips/mips.md (*lea_high64, *lea64): New patterns.
+ (*xgot_hi[sd]i, *xgot_lo[sd]i, *got_disp[sd]i, *got_disp[sd]i): Call
+ mips_unspec_address directly.
+ * doc/invoke.texi: Remove the -mabi=64 -mno-abicalls exception from
+ the documentation of -mexplicit-relocs.
+
+2004-03-01 Jeff Law <law@redhat.com>
+
+ * fold-const.c (fold): An equality comparison of a non-weak object
+ against zero has a known result. Similarly an equality comparison
+ of the address of two non-weak, unaliased symbols has a known result.
+
+ * ggc-page.c (struct page_entry): New field PREV.
+ (ggc_alloc): Update PREV field appropriately.
+ (sweep_pages): Likewise.
+ (ggc_free): Likewise. Use PREV field rather than loop to
+ improve ggc_free performance.
+
+2004-03-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_output_division): Use the division
+ instruction to fill the delay slot of a zero check.
+ (mips_idiv_insns): Adjust accordingly.
+
+2004-03-01 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Create a default tmake_file for linux, and use
+ it in all but two linux clauses. Comment those two.
+
+2004-03-01 Paolo Bonzini <bonzini@gnu.org>
+
+ * combine.c (try_combine): Do not refer to is_replaced.
+ (gen_lowpart_for_combine): Perverse subregs now have a
+ more politically correct name.
+ * cse.c (cse_insn): Likewise.
+ * jump.c: Fix bogus reference to delete_insn.
+
+2004-02-29 Mark Mitchell <mark@codesourcery.com>
+
+ PR debug/14328
+ * dwarf2out.c (gen_enumeration_type_die): Output all enumeration
+ constants as signed values.
+
+ PR middle-end/13448
+ * c-tree.h (readonly_warning): Rename to ...
+ (readonly_error): ... this.
+ * c-typeck.c (build_unary_op): Adjust accordingly.
+ (readonly_warning): Rename to ...
+ (readonly_error): ... this and issue errors, not warnings.
+ (build_modify_expr): Call readonly_error, not readonly_warning.
+ (c_expand_asm_operands): Likewise.
+ * tree-inline.c (optimize_inline_calls): Do not inline functions
+ after errors have occurred.
+
+2004-02-29 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Rearrange some threading code for clarity;
+ add section comment.
+ * configure: Regenerate.
+
+2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * passes.c, config/frv/frv.c, config/sh/sh.c: Fix comment
+ typos.
+ * doc/cppopts.texi: Fix a typo.
+
+2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.md: Fix formatting.
+
+2004-02-29 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Add some comments delineating sections of code.
+
+ * doc/install.texi: Note that libada uses autoconf 2.57 also.
+
+ * doc/install.texi: Fix idiot typo in previous commit.
+
+ * doc/install.texi: Update for conversion of intl to autoconf 2.57.
+
+2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Add comments about peephole2's.
+
+2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Tweak operand numbers of some
+ peephole2's.
+
+2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Tweak comments about peephole2's.
+
+2004-02-29 Waldek Hebisch <hebisch@math.uni.wroc.pl>
+
+ PR middle-end/14203
+ * function.c (uninitialized_vars_warning): Use DECL_RTL_SET_P
+ instead of testing whether DECL_RTL is not NULL.
+
+2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/sh/sh.c: Fix formatting.
+
+2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/sh/sh.c: Convert to ISO-C.
+
+2004-02-28 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * c-typeck.c (tagged_types_tu_compatible_p): Fix pasto in
+ my previous patch.
+
+ * config/darwin.h (machopic_finish): Output stub even if the
+ symbol is already defined.
+
+2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
+
+2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genattr.c (main): Don't define
+ TRADITIONAL_PIPELINE_INTERFACE or DFA_PIPELINE_INTERFACE.
+ * system.h (TRADITIONAL_PIPELINE_INTERFACE): Poison.
+ (DFA_PIPELINE_INTERFACE): Likewise.
+ * doc/tm.texi (TRADITIONAL_PIPELINE_INTERFACE): Remove.
+ (DFA_PIPELINE_INTERFACE): Likewise.
+
+2004-02-28 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (tstsi, tstdi): Delete.
+
+2004-02-28 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * config/mips/mips.c (override_options): Remove an obsolete
+ duplicate definition of the "e" constraint.
+ * config/mips/mips.h: Update a comment accordingly.
+
+2004-02-28 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * config/mips/mips.md: Complete the unfinished R4000
+ multiply/shift errata workaround. Improve documentation.
+ (hazard): Use TARGET_FIX_R4000 to decide whether an "imul" instruction
+ has a hilo hazard.
+ (mulsi3, mulsi3_internal, mulsi3_r4000): Use TARGET_FIX_R4000.
+ (muldi3, muldi3_internal): Likewise.
+ (muldi3_internal2): Remove, replacing with...
+ (muldi3_mult3, muldi3_r4000): ...these new patterns.
+ (mulsidi3): Take the errata into account.
+ (mulsidi3_32bit): Remove, replacing with...
+ (mulsidi3_32bit_internal, mulsidi3_32bit_r4000): ...these new patterns.
+ (mulsidi3_64bit, mulsidi3_64bit_parts): Disable if TARGET_FIX_R4000.
+ (umulsidi3): Take the errata into account.
+ (umulsidi3_32bit): Remove, replacing with..
+ (umulsidi3_32bit_internal, umulsidi3_32bit_r4000): ...these patterns.
+ (umulsi3_highpart, umulsi3_highpart_internal): Disable if
+ TARGET_FIX_R4000.
+ (smulsi3_highpart, smulsi3_highpart_internal): Likewise.
+ (smuldi3_highpart, umuldi3_highpart): Likewise.
+ * doc/invoke.texi: Document the errata workaround.
+
+2004-02-28 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * config/mips/mips-protos.h (mips_idiv_insns): Declare.
+ * config/mips/mips.h (MASK_FIX_SB1): Bump.
+ (MASK_FIX_R4000, TARGET_FIX_R4000): New macros.
+ (TARGET_SWITCHES): Add -mfix-r4000 and -mno-fix-r4000.
+ * config/mips/mips.c (mips_idiv_insns): New function.
+ (override_options): Make -march=r4000 imply -mfix-r4000 by default.
+ (mips_output_division): Add a workaround for the R4000 divide/shift
+ errata.
+ * config/mips/mips.md (length): Use mips_idiv_insns() to calculate
+ the length of an "idiv" instruction.
+ * doc/invoke.texi: Document the new switches.
+
+2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi (IS_COSTLY_DEPENDENCE): Change to
+ TARGET_SCHED_IS_COSTLY_DEPENDENCE.
+
+2004-02-28 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR optimization/14229
+ * cfgrtl.c (rtl_tidy_fallthru_edge): Do not fail for !onlyjump jump.
+
+2004-02-28 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * fold-const.c (fold): Strip NOPs that change the signedness
+ for RSHIFT too. Expand comment.
+
+2004-02-27 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR optimization/7871
+ * flow.c (mark_set_1): Don't add LOG_LINKS for global registers
+ from or to call insns.
+
+2004-02-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/7871
+ * flow.c (propagate_one_insn): Interpret calls as setting global
+ registers, not merely clobbering them.
+
+2004-02-27 Dale Johannesen <dalej@apple.com>
+
+ * config/darwin.c (machopic_output_possible_stub_label): Remove.
+ config/darwin-protos.h: Ditto.
+ config/darwin.h: Remove call to it.
+ * combine.c (distribute_notes): Do not place a REG_DEAD note
+ when value is both set and used.
+
+2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
+ as well.
+ * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
+ * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
+
+2004-02-27 Andrew Pinski <apinski@apple.com>
+
+ * c-typeck.c (tagged_types_tu_compatible_p) <ENUMERAL_TYPE>:
+ Speedup common case of the type values being in the same order.
+
+2004-02-27 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.h (no-inline-float-divide): New option.
+ * config/ia64/ia64.h (no-inline-int-divide): New option.
+ * config/ia64/ia64.h (no-inline-sqrt): New option.
+ (TARGET_DEFAULT): Add MASK_INLINE_FLOAT_DIV_THR to define.
+ * config/ia64/hpux.h (TARGET_DEFAULT): Ditto.
+ * config/ia64/ia64.c (ia64_override_options): Modify error
+ checking for inlined division/sqrt.
+
+2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bb-reorder.c, cfgbuild.c, diagnostic.c, explow.c, profile.c,
+ ra-build.c, read-rtl.c, tracer.c, unwind-dw2-fde-glibc.c,
+ value-prof.c, config/darwin-protos.h, config/frv/frv-abi.h,
+ config/i386/pmmintrin.h, config/pa/pa-hpux.h: Update
+ copyright.
+
+2004-02-27 Paul Brook <paul@codesourcery.com>
+
+ * function.c (assign_parms): Don't count pretend args for alignment.
+
+2004-02-27 Richard Henderson <rth@redhat.com>
+
+ * passes.c: New file.
+ * Makefile.in (OBJS-common): Add it.
+ * diagnostic.c (rtl_dump_and_exit): Move decl ...
+ * flags.h (rtl_dump_and_exit): ... here.
+ * output.h (size_directive_output, last_assemble_variable_decl):
+ Move from toplev.c.
+ * rtl.h (reg_alloc): Move from toplev.c.
+ * toplev.c (HAVE_conditional_execution, DUMPFILE_FORMAT,
+ struct dump_file_info, enum dump_file_index, dump_file_tbl,
+ open_dump_file, close_dump_file, rest_of_decl_compilation,
+ rest_of_type_compilation, rest_of_handle_final,
+ rest_of_handle_delay_slots, rest_of_handle_stack_regs,
+ rest_of_handle_variable_tracking, rest_of_handle_machine_reorg,
+ rest_of_handle_new_regalloc, rest_of_handle_old_regalloc,
+ rest_of_handle_regrename, rest_of_handle_reorder_blocks,
+ rest_of_handle_sched, rest_of_handle_sched2, rest_of_handle_regmove,
+ rest_of_handle_tracer, rest_of_handle_if_conversion,
+ rest_of_handle_if_after_combine, rest_of_handle_web,
+ rest_of_handle_branch_prob,
+ rest_of_handle_value_profile_transformations, rest_of_handle_cfg,
+ rest_of_handle_addressof, rest_of_handle_sibling_calls,
+ rest_of_handle_jump_bypass, rest_of_handle_inlining,
+ rest_of_handle_null_pointer, rest_of_handle_combine,
+ rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2,
+ rest_of_handle_gcse, rest_of_handle_loop_optimize,
+ rest_of_handle_loop2, rest_of_compilation): Move to passes.c.
+ (decode_d_option): Use enable_rtl_dump_file.
+ (compile_file, finalize, do_compile): Move profile+combine+graph
+ cleanup to finish_optimization_passes.
+ * toplev.h (init_optimization_passes, finish_optimization_passes,
+ enable_rtl_dump_file): Declare.
+
+2004-02-27 Eric Botcazou <ebotcazou@act-europe.fr>
+ Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold): Revert 2004-02-25 change. Use the original
+ operands to build a tree with swapped operands.
+ * expr.c (expand_expr_real) <MAX_EXPR>: Consistently use the
+ 'unsignedp' predicate to specify the signedness.
+
+2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-decl.c, c-ppoutput.c, combine.c, cppfiles.c, dwarf2out.c,
+ expr.c, fold-const.c, gcc.c, haifa-sched.c, loop-iv.c,
+ params.def, read-rtl.c, rtl.c, rtlanal.c, toplev.c: Fix
+ comment typos and formatting. Follow spelling conventions.
+
+2004-02-26 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/rs6000.md: Add fixuns_truncsfsi2 and
+ fix_truncsfsi2.
+
+ * config/rs6000/spe.md: Delete spe_efsctuiz.
+ Add spe_fixuns_truncsfsi2.
+ Add spe_fix_truncsfsi2.
+
+2004-02-26 Eric Christopher <echristo@redhat.com>
+
+ * c-lex.c (c_lex_string_translate): New variable.
+ (lex_string): Use to determine string translation.
+ * c-pragma.h: Prototype.
+ * c-parse.in (start_string_translation): New. Set above.
+ (stop_string_translation): Ditto.
+ (attribute, attribute_list, asm_def, asm_stmt,
+ asm_operand): Use above functions.
+ * cp/parser.c (cp_parser_declaration): Translate strings
+ unless token is RID_EXTERN. Set c_lex_string_translate
+ for recursive use.
+ (cp_parser_asm_definition): Only translate argument strings
+ to asms.
+ (cp_parser_asm_operand_list): Ditto.
+ (cp_parser_attribute_list): Do not translate attribute strings.
+
+2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * stmt.c (expand_start_case_dummy): Remove.
+ * tree.h: Remove the corresponding prototype.
+
+2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c (apply_args_register_offset): Remove.
+ * tree.h: Remove the corresponding prototype.
+
+2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * stor-layout.c (is_pending_size): Remove.
+ * tree.h: Remove the corresponding prototype.
+
+2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * recog.c (validate_replace_src): Remove.
+ * recog.h: Remove the corresponding prototype.
+
+2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * calls.c: Don't reference FINAL_REG_PARM_STACK_SPACE or
+ MAYBE_REG_PARM_STACK_SPACE.
+ * function.c: Likewise.
+ * system.h (FINAL_REG_PARM_STACK_SPACE): Poison.
+ (MAYBE_REG_PARM_STACK_SPACE): Likewise.
+ * doc/tm.texi (FINAL_REG_PARM_STACK_SPACE): Remove.
+ (MAYBE_REG_PARM_STACK_SPACE): Likewise.
+
+2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-decl.c (c_expand_deferred_function): Remove.
+ * c-tree.h: Remove the corresponding prototype.
+
+2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * postreload.c (reload_cse_move2add): Generate just a PLUS
+ instead of an entire SET.
+
+2004-02-26 Jan Hubicka <jh@suse.cz>
+
+ * config.gcc: Add support for nocoma/prescott/pentium-m/pentium3m
+ /pentium4m.
+ * i386.c (override_options): Add support for new CPUs.
+ * i386.h (TARGET_CPU_DEFAULT_NAMES): New names.
+ (TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_pentium4e): New
+ constants.
+ * invoke.texi: Extend documentation of -mtune/-march for new CPUs.
+
+2004-02-26 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define __xtensa__.
+
+2004-02-26 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * config/sparc/sparc-protos.h (sparc_emit_floatunsdi): Add 'mode'.
+ (sparc_emit_fixunsdi): New prototype.
+ * config/sparc/sparc.c (sparc_emit_floatunsdi): Use 'mode' argument.
+ (sparc_emit_fixunsdi): New function.
+ * config/sparc/sparc.md (floatunsdisf2): Use 'general_operand' for
+ operand 1. Pass SFmode to sparc_emit_floatunsdi.
+ (floatunsdidf2): Use 'general_operand' for operand 1. Pass DFmode
+ to sparc_emit_floatunsdi.
+ (fixuns_truncsfdi2): New expander.
+ (fixuns_truncdfdi2): Likewise.
+
+2004-02-26 Alan Modra <amodra@bigpond.net.au>
+
+ * gcse.c (delete_null_pointer_checks_1): Do not delete CC setter
+ unless HAVE_cc0.
+
+2004-02-25 Richard Henderson <rth@redhat.com>
+
+ * explow.c (force_reg): Call mark_reg_pointer as appropriate.
+ * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't
+ use (op0-op1) == 0 if op0 is a pointer.
+ * config/alpha/alpha.md (cmpdi): Use some_operand.
+ (three comparison combine splits): Remove.
+
+2004-02-25 Richard Henderson <rth@redhat.com>
+
+ PR c/12794
+ * c-common.c (handle_alias_attribute): Reject the attribute if
+ current_function_decl is set.
+
+2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config.gcc: Add comment describing extra_gcc_objs.
+ i[34567]86-*-cygwin*): Replace host_extra_gcc_objs with extra_gcc_objs.
+ * configure.ac (extra_gcc_objs): New substitution variable.
+ (host_extra_gcc_objs): Don't substitute.
+ * configure: Regenerate.
+ * Makefile.in: Use extra_gcc_objs.
+
+2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
+
+ * doc/contrib.texi: Add an entry for myself.
+
+2004-02-25 Jan Hubicka <jh@suse.cz>
+
+ * basic-block.h (make_eh_edge, break_superblocks): Declare.
+ * cfgbuild.c (make_eh_edge): Make global.
+ * cfglayout.c (break_superblocks): Likewise; fix memory leak.
+ * except.c (build_post_landing_pads, connect_post_landing_pads,
+ dw2_build_landing_pads, sjlj_emit_function_enter,
+ sjlj_emit_function_exit, sjlj_emit_dispatch_table,
+ sjlj_build_landing_pads): Update CFG.
+ (emit_to_new_bb_before): New function.
+ (finish_eh_generation): Do not rebuild the CFG.
+
+2004-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * config.gcc (hppa*-*-*, parisc*-*-*): Add MASK_BIG_SWITCH to all
+ target_cpu_default defines.
+ * pa-hpux.h (TARGET_DEFAULT): Add MASK_BIG_SWITCH to define.
+ * pa.h (TARGET_DEFAULT): Likewise.
+
+2004-02-25 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ * fold-const.c (fold): Treat MAX_EXPR and MIN_EXPR like
+ comparisons with regard to signedness.
+
+2004-02-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (thumb_legitimize_address): New function.
+ * arm-protos.h: Prototype it.
+ * arm.h (THUMB_LEGITIMIZE_ADDRESS): Define.
+ (LEGITIMIZE_ADDRESS): Use it.
+
+2004-02-25 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * reload1.c (reload): Only spill eliminable register with multiple
+ adjacent elimination alternatives if all alternatives fail.
+
+2004-02-25 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_legitimate_index_p): For QImode the range of an offset
+ is -4095...+4095 inclusive.
+
+2004-02-25 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/install.texi (sparc-sun-solaris2* specific notes): Document
+ the bootstrap failure with Sun CC 5.4 and 5.5.
+
+2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cse.c (cse_change_cc_mode_insns): Stop at any instruction
+ which modifies NEWREG.
+ (cse_condition_code_reg): Update the mode of CC_REG in
+ CC_SRC_INSN on our own.
+
+2004-02-24 Michael Matz <matz@suse.de>
+
+ * config/i386/i386.c (ix86_comp_type_attributes): Check for
+ regparm attributes.
+
+2004-02-24 Richard Henderson <rth@redhat.com>
+
+ * toplev.c (dump_file_tbl): Rename from dump_file.
+ * bb-reorder.c, bt-load.c, cfgcleanup.c, cfglayout.c, cfgloopanal.c,
+ cfgloopmanip.c, cfgrtl.c, config/arm/arm.c, config/frv/frv.c,
+ config/i386/i386.c, config/ia64/ia64.c, config/mips/mips.c,
+ config/sh/sh.c, cse.c, flow.c, ifcvt.c, loop-iv.c, loop-unroll.c,
+ loop-unswitch.c, output.h, predict.c, profile.c, ra-build.c,
+ ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, regrename.c, reload1.c,
+ toplev.c, tracer.c, value-prof.c, var-tracking.c, web.c:
+ s/rtl_dump_file/dump_file/g.
+
+2004-02-24 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md (spe_fix_truncsfsi2): Delete.
+ (spe_fixuns_truncsfsi2): Delete.
+
+ * config/rs6000/rs6000.md (fix_truncsfsi2): Delete.
+ (fixuns_truncsfsi2): Delete.
+
+2004-02-24 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/14240
+ * rtlanal.c (replace_label): Fix replacing labels in constant pool.
+
+2004-02-24 Geoffrey Keating <geoffk@apple.com>
+
+ * config/darwin.h (TARGET_HAS_F_SETLKW): Define.
+
+2004-02-24 Jason Merrill <jason@redhat.com>
+
+ * tree.c (check_qualified_type): New fn.
+ (get_qualified_type): Use it. If type already has the desired
+ quals, just return it.
+ * tree.h: Declare it.
+
+2004-02-24 Sanjiv Kumar Gupta <sanjivg@noida.hcltech.com>
+
+ * target-def.h (TARGET_SCHED_INIT_GLOBAL,
+ TARGET_SCHED_FINISH_GLOBAL): New macros.
+
+ * target.h (md_init_global, md_finish_global): Function
+ declarations corresponding to new target macros.
+
+ * haifa-sched.c (sched_init, sched_finish): Allow target to
+ call the new schedular hooks.
+
+ * flow.c (recompute_reg_usage): Add PROP_DEATH_NOTES flag in
+ call to update_life_info.
+
+ * config/sh/sh.h (OVERRIDE_OPTIONS): Re-enable
+ flag_schedule_insns for SH4.
+
+ * config/sh/sh.c (sh_md_init_global, sh_md_finish_global,
+ find_set_regmode_weight, find_insn_regmode_weight,
+ find_regmode_weight), sh_md_init, sh_dfa_new_cycle,
+ sh_variable_issue, high_pressure, ready_reorder,
+ rank_for_reorder, swap_reorder, sh_reorder, sh_reorder2): New
+ functions used to throttle the insn movement in first
+ scheduling pass for SH.
+
+ * gcc/doc/tm.texi: Document TARGET_SCHED_INIT_GLOBAL and
+ TARGET_SCHED_FINISH_GLOBAL.
+
+2004-02-24 Alexandre Oliva <aoliva@redhat.com>
+
+ Implement FR-V FDPIC ABI support for frv-uclinux and frv-linux.
+ 2004-02-05 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (frv_emit_movsi): Use GOT relocations for
+ symbols in sections named by the user.
+ 2004-01-30 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/linux.h (TARGET_OS_CPP_BUILTINS): New.
+ 2004-01-27 Alexandre Oliva <aoliva@redhat.com>
+ * config.gcc (frv-*-*linux*): Handle like *-*-linux*.
+ * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove, obviated by
+ the above.
+ 2004-01-20 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.md (symGOT2reg_hilo, symGOTOFF2reg_hilo): Add
+ one more pseudo to further improve code generation.
+ 2004-01-19 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.md (movdi_ldd): Introduce explicit indirection
+ inside UNSPEC.
+ 2004-01-16 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (frv_legitimate_address_p): Added
+ allow_double_reg_p argument. Adjust all callers. Use it to
+ decide whether to enable double-register indirect addressing.
+ (frv_funcdesc_alias_set): Remove.
+ (frv_expand_fdpic_call): Force non-SYMBOL_REF operand into
+ register. Emit movdi_ldd.
+ (ldd_address_operand): New.
+ * config/frv/frv-protos.h (frv_legitimate_address_p): Adjust.
+ * config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
+ (PREDICATE_CODES): Add ldd_address_operand.
+ * config/frv/frv.md (movdi_ldd): New.
+ (symGOT2reg_hilo, symGOTOFF2reg_hilo): Use separate pseudo for
+ intermediate computations if possible.
+ (symGOTOFF2reg_i): Fix harmless typo.
+ 2003-12-18 Alexandre Oliva <aoliva@redhat.com>
+ * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Cast
+ relocated p_vaddr to vaddr type.
+ * config/frv/frv-protos.h (frv_expand_fdpic_call): Return void.
+ * config/frv/frv.c (frv_get_funcdesc_alias_set): New.
+ (frv_expand_fdpic_call): Propagate incoming MEM's expr to funcdesc
+ MEM, or use a funcdesc alias set. Use regular move instead of
+ ldd.
+ (dbl_memory_one_insn_operand): Recognize function descriptors by
+ type or by alias set, and don't split them.
+ * config/frv/frv.md (call, call_value): Never use call_internal
+ for fdpic.
+ (call_internal, call_value_internal): Never match for FDPIC.
+ (call_fdpicdi, call_fdpicsi, call_value_fdpicdi,
+ call_value_fdpicsi): Require FDPIC.
+ (ldd): Removed.
+ 2003-12-17 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.h (CRT_GET_RFIB_DATA): Define for __FRV_FDPIC__.
+ * unwind-dw2-fde-glibc.c: Don't include elf-fdpic.h any more.
+ (_Unwind_IteratePhdrCallback): Adjust type of load_base for FRV
+ FDPIC. Compute data base address.
+ * config/frv/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Enable -mfdpic
+ before the other self-specs are processed.
+ * config/frv/t-linux (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS):
+ Build with -fPIC.
+ 2003-12-15 Alexandre Oliva <aoliva@redhat.com>
+ * unwind-dw2-fde-glibc.c: Don't include bits/elf-fdpic.h if
+ inhibit_libc is defined.
+ 2003-12-12 Alexandre Oliva <aoliva@redhat.com>
+ * unwind-dw2-fde-glibc.c: Include bits/elf-fdpic.h for
+ __FRV_FDPIC__.
+ (__RELOC_POINTER): Define.
+ (_Unwind_IteratePhdrCallback): Use it.
+ * config/frv/frv.h (Twrite): Define.
+ (TRANSFER_FROM_TRAMPOLINE): Use it.
+ * config/frv/linux.h (INVOKE__main): Undefine.
+ (Twrite): Override.
+ 2003-12-05 Richard Sandiford <rsandifo@redhat.com>
+ * doc/invoke.texi (-mlong-calls, -mlinked-fp): Document FRV options.
+ (-mlibrary-pic): Emphasize that this option generates EABI code.
+ (-mcpu): Add fr550.
+ (-mpack): Remove.
+ 2003-11-30 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (int_2word_operand): Reject LABELs, SYMBOL_REFs
+ and CONSTs in FDPIC mode.
+ * gcc/config.gcc (with_cpu): Default to fr400 on frv-*-*linux*.
+ 2003-11-29 Richard Sandiford <rsandifo@redhat.com>
+ * config/frv/frv.c (move_source_operand): Don't accept symbolic
+ constants.
+ * config/frv/frv.md (*movhi_internal, *movsi_internal): Use an 'n'
+ rather than 'i' constraint for the 2-instruction alternative.
+ (*movsi_2word): New, incorporating existing int_2word_operand splitter.
+ 2003-11-29 Richard Sandiford <rsandifo@redhat.com>
+ * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Q): Renamed from
+ EXTRA_CONSTRAINT_FOR_Y.
+ (EXTRA_CONSTRAINT): Remove handling of 'Y'.
+ * config/frv/frv.md (*movsi_internal): Remove 'Q' constraint.
+ (addsi3): Change 'Y' constraint to 'Q'.
+ 2003-11-27 Richard Sandiford <rsandifo@redhat.com>
+ * reload.c (CONST_POOL_OK_P): New macro.
+ (find_reloads): Use it to decide whether a constant can be forced
+ into memory.
+ * config/frv/frv.h (LEGITIMATE_PIC_OPERAND_P): Return true if the
+ constant satisfies got12_operand.
+ (frv_cannot_force_const_mem): Always return true for TARGET_FDPIC.
+ (frv_legitimate_address_p): Check for valid unspec offsets using
+ got12_operand rather than frv_legitimate_fdpic_operand_p.
+ (frv_legitimate_fdpic_operand_p): Delete.
+ (frv_emit_movsi): Abort if we try to use the FDPIC register during
+ or after reload.
+ (frv_legitimate_constant_p): Return LEGITIMATE_PIC_OPERAND_P if
+ TARGET_FDPIC.
+ * config/frv/frv.md (*movdf_double): Add alternatives for CONST_DOUBLE.
+ 2003-11-19 Richard Sandiford <rsandifo@redhat.com>
+ * config/frv/frv-protos.h (fdpic_operand, fdpic_got12_operand)
+ (frv_fdpic_fptr_operand): Don't declare here.
+ * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Y): Call got12_operand
+ rather than fdpic_got12_operand.
+ (PREDICATE_CODES): Remove symbolic_operand entry. Add entries for
+ got12_operand and const_unspec_operand.
+ * config/frv/frv.c (got12_operand): Renamed from fdpic_got12_operand.
+ (gpr_or_int12_operand, dbl_memory_one_insn_operand): Update calls.
+ (symbolic_operand): Remove.
+ (const_unspec_operand): New predicate.
+ * config/frv/frv.md (*movsi_got): Use got12_operand.
+ (*movsi_high_got, *movsi_lo_sum_got): Use const_unspec_operand.
+ 2003-11-18 Richard Sandiford <rsandifo@redhat.com>
+ * config/frv/frv-protos.h (frv_output_addr_const_extra): Remove.
+ * config/frv/frv.h (OUTPUT_ADDR_CONST_EXTRA): Remove definition.
+ * config/frv/frv.c (frv_unspec): New structure.
+ (frv_small_data_reloc_p, frv_const_unspec_p): New functions.
+ (frv_print_operand_memory_reference): Use frv_const_unspec_p to
+ validate CONST indices. Use frv_output_const_unspec to print them.
+ (frv_print_operand): Update call to unspec_got_name. Use
+ frv_output_const_unspec to print constant unspecs.
+ (frv_legitimate_fdpic_operand_p): Return true if frv_const_unspec_p.
+ Reject UNSPECs otherwise.
+ (unspec_got_name): Take the relocation number as argument, not an
+ rtx containing it.
+ (frv_output_addr_const_extra): Remove, replacing with...
+ (frv_output_const_unspec): ...this new function.
+ (frv_find_base_term): Use frv_const_unspec_p & frv_small_data_reloc_p.
+ (gpr_or_int12_operand): Use fdpic_got12_operand.
+ (dbl_memory_one_insn_operand): Likewise.
+ (fdpic_got12_operand): Use frv_const_unspec_p.
+ (frv_emit_movsi): Use frv_const_unspec_p to check for CONSTs that
+ are already legitimate. Use frv_small_data_reloc_p when deciding
+ whether to use HIGH/LO_SUM for R_FRV_GOTOFF12 and R_FRV_GPREL12.
+ 2003-11-18 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/t-linux (SHLIB_MAPFILES): Override so as to export...
+ * config/frv/libgcc-frv.ver: ... frv-specific symbols. New file.
+ * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local
+ label, for real this time.
+ * config/frv/frv.c (frv_local_funcdesc_p): Update to new
+ representation of visibility.
+ (fdpic_got12_operand, symbolic_operand): Mark unused arguments as
+ such.
+ 2003-11-17 Richard Sandiford <rsandifo@redhat.com>
+ * config/frv/frv.h (MASK_LINKED_FP, TARGET_LINKED_FP): New macros.
+ (TARGET_SWITCHES): Add -mlinked-fp and -mno-linked-fp.
+ * config/frv/frv.c (frv_override_options): Set MASK_LINKED_FP unless
+ it was explicitly disabled.
+ (frv_stack_info): There is no need to save the link register in every
+ frame unless TARGET_LINKED_FP is true.
+ (frv_frame_pointer_required): If !TARGET_LINKED_FP, only require a
+ frame pointer if the stack pointer might change value.
+ (frv_return_addr_rtx): Check and process "count" argument.
+ 2003-11-14 Richard Sandiford <rsandifo@redhat.com>
+ * config/frv/frv-protos.h (frv_legitimize_address): Remove.
+ (frv_find_base_term): Declare.
+ * config/frv/frv.h (LEGITIMIZE_ADDRESS): Do nothing.
+ (FIND_BASE_TERM): Define.
+ (PREDICATE_CODES): Remove pic_register_operand, pic_symbolic_operand,
+ small_data_register_operand, small_data_symbolic_operand. Add
+ symbolic_operand.
+ * config/frv/frv.c (const_small_data_p, plus_small_data_p): Delete.
+ (frv_print_operand_memory_reference, output_move_single): Remove
+ special handling for unlegitimized sdata addresses.
+ (frv_legitimate_address_p): Don't allow sums of SDA_BASE_REG
+ and symbolic addresses.
+ (frv_legitimize_address, frv_legitimize_fdpic_address): Delete.
+ (frv_find_base_term): New function.
+ (int_2word_operand): Check specifically for symbolic address constants.
+ (pic_register_operand, pic_symbolic_operand): Delete.
+ (small_data_register_operand, small_data_symbolic_operand): Delete.
+ (dbl_memory_one_insn_operand): Don't call plus_small_data_p.
+ Allow UNSPEC_GOT constants if !TARGET_FDPIC.
+ (move_source_operand): Only accept CONSTs if they're a two-insn
+ symbolic constant.
+ (fdpic_got12_operand): Don't require TARGET_FDPIC.
+ (frv_emit_movsi): Legitimize sdata and -mlibrary-pic addresses
+ using gen_symGOTOFF2reg*.
+ (frv_ifcvt_rewrite_mem): Remove (plus gr16 ...) special cases.
+ (frv_rtx_costs): Give all MEM addresses a cost of 0. Give MEMs
+ themselves a cost of 3 insns.
+ * config/mips/mips.md (*movsi_got): Allow for !TARGET_FDPIC too.
+ Change predicate to symbolic_operand.
+ (*movsi_high_got, *movsi_lo_sum_got): Likewise.
+ (*movsi_lda_sdata): Delete.
+ (*movsi_pic, movsi_high_pic, movsi_lo_sum_pic): Delete.
+ 2003-11-05 Alexandre Oliva <aoliva@redhat.com>
+ * config.gcc: Add t-slibgcc-elf-ver and support --with-cpu for
+ frv-*-*linux*.
+ * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local
+ label.
+ * config/frv/frv.h (DRIVER_SELF_SPECS): Add blank before
+ -multilib-library-pic.
+ (LINK_SPEC): Add -z text for -mfdpic.
+ * config/frv/frvbegin.c (__ROFIXUP_LIST__): Don't define on FDPIC.
+ * config/frv/frvend.c (__ROFIXUP_END__): Likewise.
+ * config/frv/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC):
+ Override.
+ (OPTION_DEFAULT_SPECS, HAS_INIT_SECTION, INIT_SECTION_ASM_OP,
+ FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): Define.
+ * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Use
+ crtstuff-generated files.
+ 2003-10-31 Alexandre Oliva <aoliva@redhat.com>
+ * config.gcc: Add frv-*-*linux*.
+ * config/frv/linux.h, config/frv/t-linux: New.
+ 2003-10-06 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.h (LINK_SPEC): Pass -melf32frvfd to the linker
+ when -mfdpic even if a linker script is explicitly listed.
+ 2003-10-02 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (frv_override_options): Clear asm_out
+ unaligned_op for SImode on FDPIC.
+ (frv_emit_movsi): Use compute_reloc_for_constant to compute the
+ argument passed to decl_readonly_section.
+ (frv_assemble_integer): Revert 2003-09-30's change, but make the
+ whole block run with FDPIC even with -fno-PIC.
+ 2003-10-02 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (frv_cannot_force_const_mem): Don't force
+ symbol or label plus offset to memory.
+ (frv_emit_movsi): Emit GPREL only if -mgprel-ro. Emit 32-bit
+ GOTOFF and GPREL for LABEL_REF.
+ * config/frv/frv.h (DRIVER_SELF_SPECS): Add -mgprel-ro with
+ -mfdpic unless -mno-gprel-ro, -fpic or -fpie.
+ (MASK_GPREL_RO, TARGET_GPREL_RO): New.
+ (TARGET_SWITCHES): Added gprel-ro and no-gprel-ro.
+ * doc/invoke.texi: Document them.
+ 2003-09-30 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv-protos.h (frv_gen_GPsym2reg): Declare.
+ (frv_splittable_got_operand): Removed.
+ * config/frv/frv.c (frv_cannot_force_const_mem): Reject HIGH and
+ LO_SUM. Add comments.
+ (frv_override_options): Moved enabling of FDPIC to
+ DRIVER_SELF_SPECS. Don't enable MASK_DWORD.
+ (frv_local_funcdesc_p): Remove unnecessary heck for flag_pie.
+ (frv_legitimize_fdpic_address): Don't duplicate logic in
+ frv_emit_movsi.
+ (frv_gen_GPsym2reg): New.
+ (unspec_got_name): Added gprel.
+ (frv_expand_fdpic_call): Add support for inlining PLTs.
+ (fdpic_fptr_operand): Renamed from frv_fdpic_fptr_operand.
+ (gpr_or_int12_operand): Added GPREL12.
+ (pic_symbolic_operand): Match even if !flag_pic for FDPIC.
+ (small_data_symbolic_operand): Fail if FDPIC.
+ (fdpic_splittable_got_operand): Removed.
+ (fdpic_got12_operand): Added GPREL12.
+ (frv_emit_movsi): Reorganize to avoid duplication. Emit GPREL
+ when appropriate. Fix sdata GOTOFF.
+ (frv_legitimate_constant_p): Require legitimate PIC operand for
+ FDPIC with pic, but only a legitimate fdpic operand for non-pic.
+ (frv_assemble_integer): Move FDPIC funcdesc handling out of
+ flag_pic case.
+ (frv_asm_out_constructor, frv_asm_out_destructor): Abort if
+ frv_assemble_integer fails.
+ * config/frv/frv.h (DRIVER_SELF_SPECS): New.
+ (SUBTARGET_DRIVER_SELF_SPECS): New.
+ (ASM_SPEC): Don't pass -mno-fdpic.
+ (LINK_SPEC): Pass -melf32frvfd for FDPIC.
+ (MASK_INLINE_PLT, TARGET_INLINE_PLT): New.
+ (TARGET_SWITCHES): Add -minline-plt, -mno-inline-plt and
+ -multilib-library-pic.
+ (PREDICATE_CODES): Added fdpic_operand, fdpic_fptr_operand,
+ condexec_si_media_operator, condexec_sf_add_operator and
+ condexec_sf_conv_operator. Removed condexec_sf_binary_operator
+ and condexec_sf_unary_operator.
+ * config/frv/frv.md (R_FRV_GPREL12, R_FRV_GPRELHI, R_FRV_GPRELLO):
+ New.
+ (movsi_got, movsi_high_got, movsi_lo_sum_got): Move before
+ movsi_internal. Give them internal names. movsi_got has type
+ int.
+ (fdpic got splitters): Remove.
+ (symGPREL2reg, symGPREL2reg_hilo): New.
+ * config/frv/t-frv (MULTILIB_MATCHES): Don't map -fpic and -fPIC
+ to -mlibrary-pic. Map -multilib-library-pic to it.
+ * doc/invoke.texi: -mfdpic, -minline-plt, -multilib-library-pic:
+ Document.
+ 2003-09-28 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (frv_function_symbol_referenced_p): Declare.
+ (TARGET_CANNOT_FORCE_CONST_MEM): Define to...
+ (frv_cannot_force_const_mem): New function.
+ (const_small_data_p, plus_small_data_p): Update comments on sdata
+ on FDPIC.
+ (frv_override_options): Set flag_pie for FDPIC too.
+ (frv_conditional_register_usage): Mark gr16 and gr17 as non-fixed,
+ call-saved registers on FDPIC.
+ (frv_stack_info): Don't preserve the PIC register on FDPIC, and
+ don't force LR to be preserved.
+ (frv_expand_prologue): Likewise.
+ (frv_asm_output_mi_thunk): Use 12-bit funcdesc gotoff for -fpic.
+ (frv_frame_pointer_required): Don't force it just because the
+ FDPIC register is used.
+ (frv_legitimate_address_p) <CONST>: Accept a legitimate FDPIC
+ operand only if !condexec_p.
+ (frv_legitimize_address): Return the FDPIC-legitimized address.
+ Don't match small data here on FDPIC.
+ (frv_legitimate_fdpic_operand_p): Don't accept unadorned function
+ symbols. Use TRUE/FALSE instead of 1/0.
+ (frv_local_funcdesc_p): New.
+ (frv_legitimize_fdpic_address): Rewrite to use GOTOFF and 12-bit
+ immediates when possible.
+ (pic_symbolic_operand): Accept SYMBOL_REFs and CONSTs in FDPIC.
+ (dbl_memory_one_insn_operand): Accept addresses that add a REG and
+ an UNSPEC_GOT.
+ (frv_emit_movsi): Handle FDPIC before small data. Use GOTOFF and
+ 12-bit immediates when possible.
+ (frv_legitimate_constant_p): In FDPIC, reject SImode operands that
+ are not legitimate pic operands.
+ (frv_in_small_data_p): Re-enable for FDPIC.
+ * config/frv/frv.h (SDA_BASE_REG): Remove comment about FDPIC.
+ (FRV_GLOBAL_P): Removed.
+ * config/frv/frv.md: Add modes to CONSTs.
+ (movsi_got): New.
+ (movsi_lo_sum_got): Use separate matches instead of match_dup.
+ (movsi_high_pic, movsi_lo_sum_pic): Match on non-FDPIC only.
+ (fdpic splittable operations): Match on flag_pic != 1.
+ 2003-09-22 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (frv_asm_out_constructor,
+ frv_asm_out_destructor): Pass to frv_assemble_integer the size in
+ bytes, not bits.
+ 2003-09-19 Alexandre Oliva <aoliva@redhat.com>
+ * config/frv/frv.c (frv_assemble_integer): Reject complex
+ expressions referencing function SYMBOL_REFs.
+ * config/frv/frv.c (frv_function_symbol_referenced_p): New.
+ (move_source_operand): Reject CONSTs that reference function
+ SYMBOL_REFs on FDPIC.
+ (frv_emit_movsi): If we get such a CONST, break it up.
+ * config/frv/frv.h (CPP_SPEC): Define __FRV_FDPIC__ for -mfdpic.
+ (TRANSFER_FROM_TRAMPOLINE): Use different definitions for FDPIC.
+ * config/frv/frv.c (frv_print_operand) <I>: Recognize PLUS without
+ MEM.
+ (frv_assemble_integer): Don't use funcdesc for LABEL_REFs.
+ (frv_trampoline_size): Increase for FDPIC.
+ * config/frv/frv.h (TRAMPOLINE_ALIGNMENT): Bump to 64 for FDPIC.
+ (TRANSFER_FROM_TRAMPOLINE): Handle FDPIC trampolines.
+ * config/frv/frv.c (frv_legitimize_fdpic_address, frv_emit_movsi):
+ Disable use of GOTOFF for now.
+ (const_small_data_p, plus_small_data_p, frv_in_small_data_p):
+ Disable use of small data in FDPIC for now.
+ (frv_asm_output_mi_thunk): Implement for FDPIC.
+ * config/frv/frv.h (SDA_BASE_REG): Set to -1 with FDPIC.
+ * config/frv/frv.c (frv_asm_out_constructor): Use
+ frv_assemble_integer for FDPIC pointers.
+ (frv_asm_out_destructor): Likewise.
+ * config/frv/frv.md (ldd): Fix order of operands. Use
+ address_operand for input.
+ 2003-09-18 DJ Delorie <dj@redhat.com>
+ * config/frv/frv.c (frv_legitimate_fdpic_operand_p): Remove UNSPEC_PIC.
+ (unspec_got_name): Correct typo.
+ (frv_emit_movsi): Pre-expand splittable GOTs.
+ (frv_expand_fdpic_call): Rename gen_lddi to gen_ldd.
+ * config/frv/frv.md (lddi): Fix syntax error, rename to ldd.
+ (symGOT2reg_hilo, symGOTOFF2reg_hilo): New.
+ * config/frv/t-frv: Add -mfdpic multilibs.
+ * config/frv/frv.h (ASM_SPEC): Pass -mfdpic/-mno-fdpic.
+ (TARGET_SWITCHES): Add -mno-fdpic, fix documentation.
+ * config/frv/frv.c (frv_override_options): -mfdpic assumes
+ flag_pic, default to 32-bit pics, require DWORD ops.
+ (frv_override_options): Add W and Z constraints.
+ (frv_expand_prologue): No pic prologue for -mfdpic.
+ (frv_asm_output_mi_thunk): Support -mfdpic (soon).
+ (frv_print_operand_memory_reference): Handle GOT constants.
+ (frv_legitimate_address_p): Allow GOT constants.
+ (frv_legitimize_address): Handle GOT addresses too.
+ (frv_legitimate_fdpic_operand_p): New.
+ (frv_legitimize_fdpic_address): New.
+ (unspec_got_name): New.
+ (frv_output_addr_const_extra): New.
+ (frv_expand_fdpic_call): New.
+ (frv_fdpic_fptr_operand): New.
+ (gpr_or_int12_operand): Handle GOT operands.
+ (int_2word_operand): Handle GOT operands.
+ (fdpic_operand): New.
+ (fdpic_splittable_got_operand): New.
+ (fdpic_got12_operand): New.
+ (frv_emit_movsi): Handle GOT operands.
+ (frv_assemble_integer): -mfdpic doesn't use rofixups.
+ (frv_print_operand): Support 'g' code for GOT operands.
+ * config/frv/frv-protos.h: Add prototypes as needed.
+ * config/frv/frv.md (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO,
+ R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI,
+ R_FRV_FUNCDESC_GOTLO, R_FRV_FUNCDESC_VALUE,
+ R_FRV_FUNCDESC_GOTOFF12, R_FRV_FUNCDESC_GOTOFFHI,
+ R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, R_FRV_GOTOFFHI,
+ R_FRV_GOTOFFLO): New.
+ (movsi_high_got, movsi_lo_sum_got): New.
+ (*movsi_pic): Don't use this splitter for -mfdpic.
+ (addsi3): Allow GOT references also.
+ (call, call_value): Handle -mfdpic separately.
+ (call_fdpicdi, call_fdpicsi, lddi, call_value_fdpicdi,
+ call_value_fdpicsi): New.
+ (symGOT2reg, symGOT2reg_i, got splitters, symGOTOFF2reg,
+ symGOTOFF2reg_i): New.
+ * config/frv/frv.h (MASK_FDPIC): New.
+ (TARGET_FDPIC): New.
+ (TARGET_SWITCHES): Add -mfdpic.
+ (FDPIC_FPTR_REGNO): New.
+ (FDPIC_REGNO): New.
+ (OUR_FDPIC_REG): New.
+ (enum reg_class): Add FDPIC_REGS, FDPIC_FPTR_REGS, and
+ FDPIC_CALL_REGS.
+ (REG_CLASS_NAMES): Likewise.
+ (REG_CLASS_CONTENTS): Likewise.
+ (EXTRA_CONSTRAINT_FOR_Y): New, for 12-bit GOTs.
+ (EXTRA_CONSTRAINT): Add it here.
+ (FRV_GLOBAL_P): New.
+ (OUTPUT_ADDR_CONST_EXTRA): New.
+
+2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/sparc/sparc.h: Remove commented-out definitions of
+ TARGET_EDOM and GEN_ERRNO_RTX.
+
+2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * df.c, df.h, ra-build.c, ra-rewrite.c, ra.c, web.c: Replace
+ df_analyse with df_analyze.
+
+2004-02-24 Alan Modra <amodra@bigpond.net.au>
+
+ * gcse.c (delete_null_pointer_checks_1): Set stop_insn to end, not
+ beginning of block.
+
+2004-02-23 James E Wilson <wilson@specifixinc.com>
+
+ * calls.c (precompute_arguments): Update comment.
+
+2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * et-forest.c: Replace et_occurences with et_occurrences.
+
+2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cfgloop.h, loop-iv.c, loop-unswitch.c: Replace iv_analyse
+ with iv_analyze.
+
+2004-02-23 Kelley Cook <kcook@gcc.gnu.org>
+
+ * config/i386/i386.c: Rename pni to sse3.
+ * config/i386/i386.h: Likewise.
+ * config/i386/i386.md: Likewise.
+ * config/i386/pmmintrin.h: Likewise.
+ * doc/extend.texi: Likewise.
+ * doc/invoke.texi: Likewise.
+
+2004-02-23 Zack Weinberg <zack@codesourcery.com>
+ Kazu Hirata <kazu@cs.umass.edu>
+
+ Remove -fwritable-strings.
+ * c-common.c (fix_string_type): Don't check
+ flag_writable_strings.
+ (fix_string_type): Likewise.
+ * c-opts.c (set_std_c89): Don't initialize
+ flag_writable_strings.
+ (set_std_c99): Likewise.
+ * common.opt (fwritable-strings): Remove.
+ * flags.h: Remove the external declaration of
+ flag_writable_strings.
+ * opts.c (common_handle_option) <OPT_fwritable_strings>:
+ Remove.
+ * toplev.c (flag_writable_strings): Remove.
+ (f_options): Remove an entry for writable-strings.
+ * varasm.c (const_hash_1) <STRING_CST>: Don't check
+ flag_writable_strings.
+ (compare_constant) <STRING_CST>: Likewise.
+ (build_constant_desc): Likewise.
+ * config/darwin.c (machopic_select_section): Likewise.
+ * config/arm/arm.c (AOF_ASSEMBLER): Likewise.
+ * config/arm/pe.c (arm_pe_encode_section_info): Likewise.
+ * config/iq2000/iq2000.c (iq2000_select_section): Likewise.
+ * config/mips/mips.c (mips_select_section): Likewise.
+ (mips_encode_section_info): Likewise.
+ * config/pa/pa.c (pa_select_section): Likewise.
+ * config/pa/pa.h (TEXT_SPACE_P): Likewise.
+ * config/v850/v850.c (v850_select_section): Likewise.
+ * doc/invoke.texi (-fwritable-strings): Remove.
+ (-fno-const-strings): Don't mention -fwritable-strings.
+ * doc/trouble.texi: Don't mention -fwritable-strings.
+
+2004-02-23 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * doc/install.texi: Update for switch of boehm-gc to autoconf 2.57.
+
+2004-02-23 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000.md (movsf_hardfloat): Add POWER form of nop.
+ (movdf_hardfloat64): Ditto.
+ (movdf_softfloat64): Ditto.
+
+2004-02-23 Fariborz Jahanian <fjahanian@apple.com>
+ * config/rs6000/rs6000.c (function_arg): call to
+ rs6000_mixed_function_arg for DFmode moved to allow
+ normal DFmode incoming register assignment.
+
+2004-02-23 Dale Johannesen <dalej@apple.com>
+
+ * config/rs6000.md (movsf_hardfloat): Accept CTR-to-CTR copy.
+ (movdf_hardfloat64): Ditto.
+
+2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * convert.c, gcov-io.c, libgcov.c, sched-int.h, sibcall.c,
+ config/rs6000/linux.h, config/rs6000/rs6000-c.c: Update
+ copyright.
+
+2004-02-23 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c/14156
+ * c-typeck.c (c_expand_return): Change check for VAR_DECL
+ to use DECL_P instead.
+
+ * config/rs6000/linux.h (OS_MISSING_POWERPC64): Define.
+ * config/rs6000/linux64.h (OS_MISSING_POWERPC64): Define.
+
+2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * Makefile.in (opts.o): Depend on target.h.
+ * opts.c (decode_options): Use targetm.default_short_enums
+ instead of DEFAULT_SHORT_ENUMS.
+ * system.h (DEFAULT_SHORT_ENUMS): Poison.
+ * target-def.h (TARGET_DEFAULT_SHORT_ENUMS): New.
+ (TARGET_INITIALIZER): Add TARGET_DEFAULT_SHORT_ENUMS.
+ * target.h (gcc_target): Add default_short_enums.
+ * config/cris/cris.h: Remove a comment about
+ DEFAULT_SHORT_ENUMS.
+ * config/ip2k/ip2k.h: Likewise.
+ * doc/tm.texi (DEFAULT_SHORT_ENUMS): Change to
+ TARGET_DEFAULT_SHORT_ENUMS. Update the description.
+
+2004-02-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+ Falk Hueffner <falk@debian.org>
+
+ PR c/14188
+ * builtins.c (expand_builtin_va_arg): Emit an informative message
+ if a trap is generated.
+ * c-typeck.c (build_function_call): Likewise.
+
+2004-02-22 Jakub Jelinek <jakub@redhat.com>
+
+ * gcov-io.c (gcov_open) [GCOV_LOCKED]: Use open + fdopen instead of
+ fopen.
+ * libgcov.c: Include sys/stat.h.
+ * config/rs6000/linux.h (TARGET_HAS_F_SETLKW): Define.
+ * config/rs6000/linux64.h (TARGET_HAS_F_SETLKW): Define.
+ * config/sparc/linux.h (TARGET_HAS_F_SETLKW): Define.
+ * config/sparc/linux64.h (TARGET_HAS_F_SETLKW): Define.
+
+2004-02-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * reorg.c: Remove comments about dead ports.
+
+2004-02-22 Christopher Faylor <cgf@redhat.com>
+
+ * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): *Really* specify
+ extra host object file when targetting cygwin rather than generic
+ object files.
+
+2004-02-22 Josef Zlomek <zlomekj@suse.cz>
+
+ Merge from tree-ssa:
+ 2003-11-20 Richard Henderson <rth@redhat.com>
+
+ * tree-inline.c (insert_decl_map): New.
+ (remap_decl, remap_type, remap_block, copy_body_r,
+ initialize_inlined_parameters, declare_return_variable,
+ remap_save_expr): Use it.
+
+ * function.c (copy_body_r): Add mapping from id->ret_label to
+ id->ret_label. Revert test for ret_label.
+
+2004-02-22 Jakub Jelinek <jakub@redhat.com>
+
+ * genoutput.c (process_template): Strip trailing whitespace in @
+ templates and issue a warning if there was any.
+
+2004-02-21 Christopher Faylor <cgf@redhat.com>
+
+ * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): Specify extra host
+ object file when targetting cygwin.
+ * config/i386/t-cygwin (EXTRA_GCC_OBJS): Remove definition since it is
+ overridden by top-level Makefile.
+
+2004-02-21 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.c (standard_80387_constant_p): Also prefer
+ the x87's load constant instructions when optimizing for size.
+
+2004-02-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c (SHIFT_COUNT_TRUNCATED): Remove.
+ * defaults.h (SHIFT_COUNT_TRUNCATED): Provide the default.
+ * expmed.c: Assume SHIFT_COUNT_TRUNCATED is always defined.
+ * fold-const.c: Likewise.
+ * simplify-rtx.c: Likewise.
+
+2004-02-21 Alan Modra <amodra@bigpond.net.au>
+
+ * combine.c (can_combine_p): Don't ignore SETs marked with
+ REG_EH_REGION notes.
+ (try_combine): When attemting to fix unrecognized insns, don't
+ split a PARALLEL that contains the original i2.
+
+2004-02-21 Ziemowit Laski <zlaski@apple.com>
+
+ * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Refer to
+ SUBTARGET_OPTION_TRANSLATE_TABLE for architecture-specific options.
+ * config/i386/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): Define it.
+ * config/rs6000/altivec.h: #error out if '-maltivec' not specified.
+ (vector, pixel, bool): #define to __vector, __pixel and __bool.
+ (__un_args_eq, __bin_args_eq, __tern_args_eq): Move to C-specific
+ portion of header.
+ (__altivec_link_error_invalid_argument): Remove prototype; will use
+ __builtin_altivec_compiletime_error("vec_*") instead.
+ (vec_*): Fix/complete set of available operation overloads given the
+ existence of distinct 'vector bool ...' and 'vector pixel' types; tighten
+ cv-correctness of pointer arguments; in C, always check for correct
+ argument types before macro expansion.
+ * config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): New macro
+ defining Darwin/PowerPC-specific '-f[no-]altivec' and
+ '-W[no-]altivec-long-deprecated' switches.
+ * config/rs6000/rs6000-c (rs6000_cpu_cpp_builtins): Pre-define
+ '__vector', '__pixel' and '__bool' macros using
+ '__attribute__((altivec(...)))' types.
+ * config/rs6000/rs6000.c (bool_char_type_node, bool_short_type_node,
+ bool_int_type_node, pixel_type_node, bool_V16QI_type_node,
+ bool_V8HI_type_node, bool_V4SI_type_node, pixel_V8HI_type_node):
+ New type nodes.
+ (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): New, for
+ handling '-W[no-]altivec-long-deprecated'.
+ (rs6000_override_options): Handle '-W[no-]altivec-long-deprecated'.
+ (rs6000_expand_binop_builtin, rs6000_expand_ternop_builtin,
+ altivec_expand_dst_builtin): Remove casts from integer literals.
+ (altivec_expand_builtin): Likewise; handle expansion of new
+ '__builtin_altivec_compiletime_error' function.
+ (rs6000_init_builtins): Initialize 'vector bool ...' and 'vector pixel'
+ types, and make them distinct from other vector types; register
+ '__builtin_altivec_compiletime_error' function.
+ (print_operand): For 'P', print a full target register name instead of
+ merely its number.
+ (rs6000_attribute_table): Add "altivec" attribute.
+ (rs6000_handle_altivec_attribute): New function.
+ * config/rs6000/rs6000.h (TARGET_OPTIONS): Describe
+ '-m[no-]-warn-altivec-long' (which '-W[no-]altivec-long-deprecated'
+ maps to).
+ (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): Forward
+ declare.
+ (ALTIVEC_BUILTIN_COMPILETIME_ERROR): New built-in enumeration.
+
+2004-02-20 James E Wilson <wilson@specifixinc.com>
+
+ * config/ia64/ia64.md (shift_mix4left+1): Delete reload_completed
+ check.
+ (shift_mix4left+2): Delete redundant pattern.
+
+2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c (OUTGOING_REGNO): Don't define the default.
+ * builtins.c (OUTGOING_REGNO): Likewise.
+ (INCOMING_REGNO): Likewise.
+ (apply_args_register_offset): Always use OUTGOING_REGNO.
+ * combine.c (OUTGOING_REGNO): Likewise.
+ * sibcall.c (OUTGOING_REGNO): Likewise.
+ * defaults.h (INCOMING_REGNO): Provide the default.
+ (OUTGOING_REGNO): Likewise.
+
+2004-02-21 Jan Hubicka <jh@suse.cz>
+
+ * params.def (max-peeled-insns, max-completely-peeled-insns,
+ max-once-peeled-insns): Set to 400.
+
+2004-02-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR c++/12007
+ * dbxout.c (dbxout_parms): Check that DECL_RTL and DECL_INCOMING_RTL
+ are set for parameters before outputing debugging information.
+
+2004-02-20 Falk Hueffner <falk@debian.org>
+
+ PR target/14201
+ * config/alpha/alpha.md (*fix_truncsfsi_ieee): Fix typoed operand
+ numbers.
+
+2004-02-20 Per Bothner <per@bothner.com>
+
+ * input.h: Don't #include line-map.h. It may cause link problems
+ with undefined linemap_line_start when line-map.h is included but
+ line-map.o is not linked, as currently happens with gengtype on
+ compilers that don't support inline.
+ * toplev.c: So we do have to explicitly #include line-map.h here.
+
+2004-02-20 Richard Henderson <rth@redhat.com>
+
+ * doc/invoke.texi: Add -Wvariadic-macros.
+
+2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * haifa-sched.c (sched_emit_insn): Remove.
+ * sched-int.h: Remove the corresponding prototype.
+
+2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ Revert:
+ 2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
+ * opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
+ * system.h (DEFAULT_SHORT_ENUMS): Poison.
+ * config/cris/cris.h: Remove a comment about
+ DEFAULT_SHORT_ENUMS.
+ * config/ip2k/ip2k.h: Likewise.
+ * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove.
+
+2004-02-20 Mohan Embar <gnustuff@thisiscool.com>
+ Tom Tromey <tromey@redhat.com>
+
+ * doc/install.texi: Moved --disable-libgcj and
+ --with-system-zlib documentation to new section for
+ Java-specific options.
+ Added explicit Cross-Compiler-Specific Options subheading.
+ Added section for Java-specific options.
+
+2004-02-20 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * doc/install.texi (Building the Ada compiler): Remove
+ example.
+
+2004-02-20 James E Wilson <wilson@specifixinc.com>
+
+ * toplev.c (dump_file_index, dump_file): Put ce3 before rnreg.
+
+2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gcc.c (process_command): Allow translation of the copyright
+ symbol but not the rest of the copyright message.
+ * gcov.c (print_version): Likewise. Allow translation of the
+ message about warranty.
+
+2004-02-20 Hans-Peter Nilsson <hp@axis.com>
+
+ * config/cris/cris.md ("*andsi_movu"): Correct parentheses in
+ predicate.
+ ("*andsi_clear"): Tweak constraints to not match postincrement.
+ Adjust the predicate to exclude a volatile memory reference.
+ ("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed".
+ ("*andhi_clear_unsigned"): Remove, non-matching pattern.
+
+2004-02-19 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * move-if-change: Remove.
+ * Makefile.in (s-mlib, c-parse.y, s-check, s-gencheck)
+ (s-specs, s-options, s-config, s-conditions, s-flags, s-codes)
+ (s-constants, s-emit, s-recog, s-opinit, s-extract, s-peep)
+ (s-attr, s-attrtab, s-output, s-genrtl, s-modes, s-preds)
+ (s-gtyp-gen, s-iov): Use the top level move-if-change.
+ * objc/Make-lang.in (objc/objc-parse.y): Likewise.
+
+2004-02-19 James E Wilson <wilson@specifixinc.com>
+
+ * config/i386/i386.md (doloop_end_internal): Use nonimmediate_operand
+ for operand2. Add condition that requires register_operand operand2
+ before reload.
+
+2004-02-19 Richard Sandiford <rsandifo@redhat.com>
+ Maciej W. Rozycki <macro@ds2.pg.gda.pl>
+
+ * config/mips/mips.c (mips_address_insns): Treat BLKmode specially.
+ * config/mips/mips.md: Expand comment above unaligned loads and stores.
+
+2004-02-19 Richard Henderson <rth@redhat.com>
+
+ * Makefile.in (STRICT2_WARN): Add -Wno-variadic-macros.
+ * tree.c (build0, build1, build2, build3, build4): Split out from...
+ (build): ... here. Call them.
+ * tree.h (build, _buildN1, _buildN2, _buildC1, _buildC2): New.
+
+ * convert.c (convert_to_integer): Remove extra build argument.
+ * tree-inline.c (expand_call_inline): Likewise.
+
+2004-02-19 Richard Henderson <rth@redhat.com>
+
+ * c-opts.c (warn_variadic_macros): New.
+ (c_common_handle_option): Set it.
+ (sanitize_cpp_opts): Copy it to cpp_opts.
+ * c.opt (Wvariadic-macros): New.
+ * cpplib.h (struct cpp_options): Add warn_variadic_macros.
+ * cppinit.c (cpp_create_reader): Initialize it.
+ * cppmacro.c (parse_params): Check it.
+
+2004-02-19 David Daney <ddaney@avtrex.com>
+
+ PR preprocessor/14198
+ * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Add
+ builtin_assert ("machine=mips")
+
+2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
+ * system.h (DEFAULT_SHORT_ENUMS): Poison.
+ * config/cris/cris.h: Remove a comment about
+ DEFAULT_SHORT_ENUMS.
+ * config/ip2k/ip2k.h: Likewise.
+ * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove.
+
+2004-02-19 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.c (ia64_function_arg): In big-endian mode,
+ when passing single SFmode quantities in general registers,
+ put them in the high half.
+
+2004-02-19 Aldy Hernandez <aldyh@redhat.com>
+
+ * doc/md.texi (Standard Names): Document additional dependency on
+ fix pattern.
+
+ * optabs.c (ftruncify): Remove.
+ (expand_fix): Manually inline ftruncify above.
+ (can_fix_p): Add FIXME note.
+
+2004-02-19 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md (spe_fixunssfsi2): Rename to
+ spe_fixuns_truncsfsi2.
+
+ * config/rs6000/rs6000.md (fixunssfsi2): Rename to
+ fixuns_truncsfsi2.
+
+2004-02-19 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
+ * testsuite/gcc.dg/20040219-1.c: New test.
+
+2004-02-19 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*subdf3_cc", "*subdf3_cconly", "*subsf3_cc",
+ "*subsf3_cconly"): Subtraction is not commutative.
+
+2004-02-19 Zack Weinberg <zack@codesourcery.com>
+
+ * sdbout.c (preinit_symbols, sdbout_initialized): New statics.
+ (sdbout_symbol): If called before sdbout_init, queue DECL for
+ later and return.
+ (sdbout_init): Set sdbout_initialized true, process decls
+ queued earlier by sdbout_symbol.
+ (sdbout_finish): Use size_t for index variable.
+
+2004-02-19 Jeff Law <law@redhat.com>
+
+ * fold-const.c (invert_truthvalue): Do not call invert_tree_comparison
+ for unordered comparison codes.
+
+2004-02-19 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * reload1.c (reload): Correct comment.
+ (scan_paradoxical_subregs): Remove #if 0 and old comment.
+ * doc/extend.texi (Local Reg Vars): Remove obsolete comment that
+ register variables are not used by reload.
+
+2004-02-19 Hans-Peter Nilsson <hp@axis.com>
+
+ PR target/14209
+ * config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak
+ constraints to not match postincrement. Adjust the predicate to
+ exclude a volatile memory reference.
+
+2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mcore/mcore.h (ASM_OUTPUT_EXTERNAL): Remove.
+
+2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * hooks.c (hook_void_tree_int): Remove.
+ (hook_void_constcharptr): Likewise.
+ (hook_int_void_0): Likewise.
+ * hooks.h: Remove the prototypes for the above three
+ functions.
+ * targhooks.c (hook_bool_machine_mode_true): Remove.
+ * targhooks.h: Remove the prototype for
+ hook_bool_machine_mode_true.
+
+2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * emit-rtl.c (subreg_realpart_p): Remove.
+ (reorder_insns_with_line_notes): Likewise.
+ (end_full_sequence): Likewise.
+ * rtl.h: Remove the prototype for the above functions.
+
+2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arc/arc.h, config/arm/arm.h, config/frv/frv.h,
+ config/h8300/h8300.h, config/i386/i386.h, config/i860/i860.h,
+ config/iq2000/iq2000.h, config/m32r/m32r.h,
+ config/pdp11/pdp11.h, config/sparc/sparc.h,
+ config/xtensa/xtensa.h: Remove commented-out or useless
+ definitions of CASE_VECTOR_PC_RELATIVE.
+
+2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
+
+ * loop.c (all_sets_invariant_p): Remove.
+
+2004-02-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/12916
+ * config/sparc/sparc.h (NPARM_REGS): Delete.
+ (BASE_RETURN_VALUE_REG): Likewise.
+ (BASE_OUTGOING_VALUE_REG): Likewise.
+ (BASE_PASSING_ARG_REG): Likewise.
+ (BASE_INCOMING_ARG_REG): Likewise.
+ * config/sparc/sparc.c (sparc_strict_argument_naming): Test
+ TARGET_ARCH64, not TARGET_V9.
+ (function_arg_slotno): Dispatch based on the mode class.
+ Handle vector modes like floating-point modes.
+ (function_arg_record_value_1): Handle vector types like
+ floating-point types.
+ (function_arg_record_value_2): Likewise.
+ Calculate regno after mode transformation.
+ (function_arg): Handle vector modes like floating-point modes.
+ (function_arg_partial_nregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX.
+ If ARCH64, do not recheck alignment.
+ (function_arg_pass_by_reference): Reorder the conditions.
+ (sparc_return_in_memory): Move after function_arg_padding.
+ Implement calling conventions for vector modes.
+ (sparc_struct_value_rtx): Move after sparc_return_in_memory.
+ (function_value): Move scope of 'regbase'.
+ Implement calling conventions for vector modes.
+ (sparc_builtin_saveregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX
+ and BASE_INCOMING_ARG_REG by SPARC_INCOMING_INT_ARG_FIRST.
+ (sparc_va_arg): Use function_arg_pass_by_reference to test whether
+ the argument is passed by reference.
+ (sparc_type_code): Handle vector types.
+
+2004-02-19 Alan Modra <amodra@bigpond.net.au>
+
+ * function.c (assign_parms): When building decl_rtl for
+ SPLIT_COMPLEX_ARGS, ensure inner modes of concat match outer.
+
+2004-02-19 Olivier Hainque <hainque@act-europe.fr>
+
+ * expr.c (is_aligning_offset): Check if we are aligning the
+ expressions's address over BIGGEST_ALIGNMENT in bytes, not
+ in bits.
+
+2004-02-18 Matt Austern <austern@apple.com>
+
+ * gcc.c (LIBGCC_SPEC): If REAL_LIBGCC_SPEC is defined, and
+ LIBGCC_SPEC isn't, set LIBGCC_SPEC to REAL_LIBGCC_SPEC.
+ (init_gcc_spec): Don't define or call if REAL_LIBGCC_SPEC is
+ defined. Instead use REAL_LIBGCC_SPEC, unmodifed, as the libgcc
+ spec string.
+ * doc/tm.texi (REAL_LIBGCC_SPEC): Document.
+
+2004-02-18 Zack Weinberg <zack@codesourcery.com>
+
+ * dwarf2out.c (loclabel_num): Move outside #ifdef
+ DWARF2_DEBUGGING_INFO and mark with GTY(()).
+ * config/ia64/ia64.c (struct extern_func_list,extern_func_head):
+ Mark with GTY(()).
+ (ia64_hpux_add_extern_decl): Save the decl, not the name string.
+ Allocate memory with ggc_alloc. No need to copy anything.
+ (ia64_hpux_file_end): Update to match.
+
+2004-02-18 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (override_options): Don't imply 3DNow! for -m64
+ by default.
+
+2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("divmodtidi3"): Use canonical RTL.
+ ("divmodtisi3"): Likewise.
+ ("udivmoddi4", "udivmodtidi3"): Likewise.
+ ("divmodsi4", "divmoddisi3"): Likewise.
+ ("udivmodsi4", "udivmoddisi3"): Likewise.
+ ("udivsi3", "umodsi3"): Likewise.
+
+2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_mainpool_start): Delete the main pool
+ placeholder insn when chunkifying the pool.
+
+2004-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not
+ generating PIC code.
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add a prototype for
+ h8300_expand_branch.
+ * config/h8300/h8300.c (h8300_expand_branch): New.
+ * config/h8300/h8300.md (ble, bleu, bge, bgeu, blt, bltu, bgt,
+ bgtu, beq, bne): Call h8300_expand_branch().
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add prototypes for
+ h8300_hard_regno_nregs and h8300_hard_regno_mode_ok.
+ * config/h8300/h8300.c (h8300_hard_regno_nregs): New.
+ (h8300_hard_regno_mode_ok): Likewise.
+ * config/h8300/h8300.h (HARD_REGNO_NREGS): Call
+ h8300_hard_regno_nregs().
+ (HARD_REGNO_MODE_OK): Call h8300_hard_regno_mode_ok().
+
+2004-02-18 Per Bothner <per@bothner.com>
+
+ * cpphash.h (struct cpp_buffer): Restore return_at_eof field. This
+ partly reverts my 2003-10-01 change, because we're back to logically
+ including <command line> inside the main line.
+ * cpplex.c (_cpp_get_fresh_line): Check return_at_eof field.
+ * cppmacro.c (cpp_scan_nooutput): Set return_at_eof of current buffer.
+ Fixes PR preprocessor/14103.
+
+ * cppfiles.c (_cpp_stack_include): When appropriate decrement
+ line_table's highest_location, fixing LAST_SOURCE_LINE_LOCATION.
+ (cpp_push_include): Don't need to increment pfile's line field.
+ * line-map.h (LAST_SOURCE_LINE_LOCATION): Only decrement by 1.
+
+ * c-ppoutput.c (print struct): New first_time field.
+ (init_pp_output): Set print.first_time.
+ (pp_file_change): Use print.first_time, rather than MAIN_FILE_P,
+ which is set also for (say) <command line>. Clear print.first_time.
+
+ * cppfiles.c (struct _cpp_file): Comment and type for pch field
+ does not match the code, so fix both.
+ (should_stack_file): Inline include_pch_p function.
+ (include_pch_p): Remove pointless function.
+
+ * cpphash.h (struct cpp_buffer): Remove unused search_cached field.
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (four define_peephole2's): Use
+ h8300_regs_ok_for_stm().
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Update the prototype for
+ expand_a_rotate().
+ * config/h8300/h8300.c (expand_a_rotate): Remove the first
+ argument.
+ * config/h8300/h8300.md: Update all callers.
+
+2004-02-18 Jan Hubicka <jh@suse.cz>
+
+ * simplify-rtx.c (simplify_unary_operation): Deal with logicals on
+ floats.
+ (simplify_binary_operation): Deal with logicals on floats.
+
+ * i386.md (SSE fabs splitters): Emit new patterns.
+ (SSE cmov splitters): Likewise.
+ (sse_andv4sf3, sse_nandv4sf3, sse_iorv4sf3, sse_xorv4sf3
+ (sse_andv2df3, sse_nandv2df3, sse_iorv2df3, sse_xorv2df3): Do not use
+ subregs.
+ (sse_andsf3, sse_nandsf3, sse_xorsf3): Kill.
+ (sse_anddf3, sse_nanddf3, sse_xordf3): Kill.
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (expand_a_rotate): Don't generate insns
+ by hand.
+ (output_a_rotate): Tweak a comment.
+ * config/h8300/h8300.md (*rotlqi3_1): Change to rotlqi3_1.
+ (*rotlhi3_1): Change to rotlhi3_1.
+ (*rotlsi3_1): Change to rotlsi3_1.
+
+2004-02-18 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/13866
+ * arm.c (load_multiple_operation): Don't insist that the source reg
+ of a post-increment component is the same as the destination.
+ (store_multiple_operation): Likewise.
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Move movsf patterns into one section
+ of the file.
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cfgloop.h, cfgloopanal.c, cpplex.c, except.h, loop-init.c,
+ loop-unroll.c, scan-decls.c, scan.h, stor-layout.c,
+ xcoffout.c, xcoffout.h, config/arm/mmintrin.h,
+ config/mips/linux64.h, config/pa/pa-64.h,
+ config/rs6000/aix51.h, config/rs6000/aix52.h,
+ config/rs6000/spe.md, config/sparc/linux.h,
+ config/sparc/linux64.h: Update copyright.
+
+2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Move push patterns into one
+ section of the file.
+
+2004-02-18 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11326
+ * config/ia64/ia64.c (ia64_struct_value_rtx): Cope with NULL
+ fntype.
+
+2004-02-18 Paul Brook <paul@codesourcery.com>
+
+ * rtlanal.c (rtx_varies_p): Return 0 for NULL_RTX
+
+2004-02-18 Paul Brook <paul@codesourcery.com>
+
+ PR debug/12934
+ * dwarf2out.c (loc_descriptor_from_tree): Handle
+ EXPR_WITH_FILE_LOCATION.
+
+2004-02-18 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.md (zero_extendqidi2, zero_extendqidi2,
+ testdi_1_rex64, anddi_2, xordi_1_rex64, xordi_2_rex64): Remove
+ trailing whitespace from instructions.
+
+2004-02-17 Geoffrey Keating <geoffk@apple.com>
+
+ * configure.ac: When generating auto-build.h, pass
+ --enable-languages to the sub-configure.
+ Put quotes around ${program_transform_name} when generating
+ name of as, ld, nm, objdump.
+ * configure: Regenerate.
+
+2004-02-17 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * Makefile.in (s-check, s-config, s-conditions, s-flags)
+ (s-codes, s-constants, s-emit, s-recog, s-opinit, s-extract)
+ (s-peep, s-attr, s-attrtab, s-output, s-genrtl, s-modes)
+ (s-preds, s-iov): Do not depend on move-if-change.
+
+2004-02-17 James E Wilson <wilson@specifixinc.com>
+
+ * caller-save.c (insert_restore): Pass mem through copy_rtx.
+ (insert_save): Likewise.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_emit_stack_adjustment): Fix a
+ warning.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*one_complsi2_h8300): Change to
+ *one_cmplsi2_h8300.
+ (*one_complsi2_h8300hs): Change to *one_cmplsi2_h8300hs.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Update the prototype of
+ fix_bit_operand().
+ * config/h8300/h8300.c (fix_bit_operand): Remove the second
+ argument "what".
+ * config/h8300/h8300.md: Update all callers.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (fix_bit_operand): Change the name of
+ the last argument to "code" from "type".
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c: Remove an extern declaration of
+ rtx_equal_function_value_matters.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (fix_bit_operand): Don't generate insns
+ by hand.
+ * config/h8300/h8300.md (*andqi3_1): Change to andqi3_1.
+ (*iorqi3_1): Change to iorqi3_1.
+ (*xorqi3_1): Change to xorqi3_1.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.c, cfghooks.c, rtlanal.c, varasm.c: Fix comment
+ typos.
+
+2004-02-17 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_prologue_using_move, x86_epilogue_using_move): Disable for P4.
+
+2004-02-18 Alan Modra <amodra@bigpond.net.au>
+
+ PR optimization/14119
+ * combine.c (try_combine): When attemting to fix unrecognized insns,
+ don't delete SETs marked with REG_EH_REGION notes.
+
+2004-02-17 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * combine.c (simplify_if_then_else): Do not replace
+ (if_then_else (ne reg 0) (0) (const_int)) by (reg) if the
+ modes differ.
+
+2004-02017 Steven Bosscher <stevenb@suse.de>
+
+ * (c-decl.c, c-semantics.c, calls.c, cgraph.c, cgraphunit.c,
+ function.c, integrate.c, print-tree.c, toplev.c, tree-optimize.c,
+ tree.h): Replace DECL_SAVED_INSNS with DECL_STRUCT_FUNCTION.
+ * ada/utils.c: Likewise.
+ * cp/decl.c: Likewise.
+ * f/com.c: Likewise.
+ * java/class.c: Likewise.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Fix comment typos.
+
+2004-02-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/t-iris6gld: Renamed to ...
+ * config/mips/t-irix-gld: ... this.
+ * config.gcc (mips-sgi-irix6*): Reflect this
+ (mips-sgi-irix5*): Use it with GNU ld.
+
+ * config/mips/irix6-crti.asm, config/mips/irix6-crtn.asm: Renamed
+ to ...
+ * config/mips/irix-crti.asm, config/mips/irix-crtn.asm: ... this.
+ * config/mips/t-irix-gld: Reflect this.
+ * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+
+ * config/mips/iris5gld.h: New file.
+ * config.gcc (mips-sgi-irix5*): Use it with GNU ld.
+ Only use collect2 without gas.
+
+ * config/mips/iris6.h (IRIX6_STARTFILE_SPEC, IRIX6_ENDFILE_SPEC):
+ Renamed to IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
+ (STARTFILE_SPEC, ENDFILE_SPEC, SUBTARGET_EXTRA_SPECS): Reflect this.
+ * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
+
+ * config/mips/iris6.h (SUBTARGET_EXTRA_SPECS): Moved ...
+ * config/mips/iris5.h: ... here.
+
+ * config/mips/iris5.h (STARTFILE_SPEC, ENDFILE_SPEC): Renamed to
+ IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
+ (STARTFILE_SPEC, ENDFILE_SPEC): Define.
+
+ * config/mips/iris5gas.h (STARTFILE_SPEC, ENDFILE_SPEC): Simplify
+ using irix_startfile_spec, irix_endfile_spec.
+
+2004-02-16 Gunther Nikl <gni@gecko.de>
+
+ * config/m68k/m68k.c: Remove obsolete support for HPUX_ASM.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_expand_prologue): Don't generate
+ insns by hand.
+
+2004-02-17 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfghooks.c (split_edge): Speed up updating of dominators.
+
+2004-02-17 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11326
+ * c-common.c (flag_abi_version): Remove.
+ * c-common.h (flag_abi_version): Likewise.
+ * c-opts.c (c_common_handle_option): Remove OPT_fabi_version case.
+ * c.opt (fabi-version): Remove.
+ * calls.c (expand_call): Always pass a function type to
+ struct_value_rtx. Use convert_memory_address.
+ * common.opt (fabi-version): Add it.
+ * flags.h (flag_abi_version): Likewise.
+ (abi_version_at_least): New macro.
+ * opts.c (common_handle_option): Add OPT_fabi_version.
+ * toplev.c (flag_abi_version): Define it.
+ * config/ia64/ia64.c (ia64_struct_retval_addr_is_first_parm_p):
+ New function.
+ (ia64_output_mi_thunk): Use it.
+ (ia64_struct_value_rtx): Likewise.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_emit_stack_adjustment):
+ Don't generate insns by hand.
+
+2004-02-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/14178
+ * doc/invoke.texi (fabi-version): The default is 2 now.
+
+2004-02-17 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * loop-iv.c: New file.
+ * Makefile.in (loop-iv.o): New.
+ * basic_block.h (FOR_BB_INSNS, FOR_BB_INSNS_REVERSE): New macros.
+ * cfgloop.c (fill_sons_in_loop, get_loop_body_in_dom_order,
+ num_loop_branches): New functions.
+ * cfgloop.h (get_loop_body_in_dom_order, num_loop_branches,
+ iv_analysis_loop_init, iv_get_reaching_def, iv_analyse, get_iv_value,
+ find_simple_exit, iv_number_of_iterations, iv_analysis_done,
+ get_simple_loop_desc, free_simple_loop_desc): Declare.
+ (simple_loop_desc): New inline function.
+ (struct rtx_iv, struct niter_desc): New.
+ * cfgloopmanip.c (loopify): Specify semantics more precisely.
+ * expr.c (force_operand): Handle subregs of expressions created by
+ loop unroller.
+ * loop-init.c (loop_optimizer_init, loop_optimizer_finalize): Move
+ parts of the initialization to toplev.c
+ * loop-unroll.c (loop_exit_at_end_p): New.
+ (unroll_and_peel_loops): Call iv_analysis_done.
+ (decide_peel_once_rolling, decide_peel_completely,
+ decide_unroll_stupid, decide_unroll_constant_iterations,
+ decide_unroll_runtime_iterations, decide_peel_simple,
+ peel_loop_simple, unroll_loop_stupid, unroll_loop_constant_iterations,
+ unroll_loop_runtime_iterations): Use new simple loop analysis.
+ * loop-unswitch.c (compare_and_jump_seq): New.
+ (may_unswitch_on_p): Renamed to ...
+ (may_unswitch_on): Use new iv analysis.
+ (reversed_condition): Export.
+ (unswitch_single_loop, unswitch_loop): Use new iv analysis.
+ * predict.c (estimate_probability): Use new simple loop analysis.
+ * rtl.h (get_mode_bounds, reversed_condition,compare_and_jump_seq,
+ canon_condition, simplify_using_condition): Declare.
+ * stor-layout.c (get_mode_bounds): New.
+ * toplev.c (rest_of_handle_loop2): Some parts of
+ initialization/finalization moved here from loop-init.c.
+
+2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (FIXED_REGISTERS): Add the soft frame
+ pointer.
+ (CALL_USED_REGISTERS): Likewise.
+ (REG_ALLOC_ORDER): Likewise.
+ (REG_CLASS) <GENERAL_REGS>: Likewise.
+
+2004-02-16 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/md.texi (Insn Canonicalizations): Document left-chaining
+ in associative operators.
+ * rtlanal.c (commutative_operand_precedence): Create some new
+ variables. Prefer a commutative operand on the left, then
+ binary expressions, then NEG and NOT.
+
+2004-02-16 Matthias Klose <doko@debian.org>
+
+ * config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME
+ in terms of SHLIB_SOVERSION.
+ * config/m68k/t-slibgcc-elf-ver: New file.
+ * config/pa/t-slibgcc-elf-ver: New file.
+ * config.gcc (m68k-linux, parisc-linux): Use them when not
+ sjlj exceptions are not configured.
+
+2004-02-16 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (get_pc_symbol_name): Mark with GTY(()).
+
+2004-02-16 Zack Weinberg <zack@codesourcery.com>
+
+ * sdbout.c (sdb_debug_hooks): Correct the type_decl entry.
+
+2004-02-16 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/sourcebuild.texi: Mention backends.html.
+
+2004-02-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-decl.c, c-ppoutput.c, cpphash.h, cpplib.h, dbxout.c,
+ line-map.c, line-map.h, var-tracking.c: Fix comment
+ formatting.
+
+2004-02-16 Richard Henderson <rth@redhat.com>
+
+ * cse.c (cse_insn): Don't lose REG_NON_LOCAL_GOTO note.
+
+ * fold-const.c (operand_equal_p): Fix VECTOR_CST comparison.
+
+2004-02-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Remove unnecessary parallels from
+ all define_insn and define_split patterns.
+
+2004-02-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Remove explicit (set_attr "cc"
+ "clobber").
+
+2004-02-15 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h (PRINT_OPERAND_PUNCT_VALID_P): Restore support for
+ '%#'.
+
+2004-02-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ia64/ia64.c, config/mips/mips.c,
+ config/mmix/mmix-modes.def: Fix comment typos.
+
+2004-02-15 Roger Sayle <roger@eyesopen.com>
+
+ * c-common.h (GET_DIRECTIVE_LINE): Remove unused macro.
+ (get_directive_line): Remove unused function prototype.
+
+2004-02-14 Josef Zlomek <zlomekj@suse.cz>
+
+ * tree-inline.c (copy_body_r): Do not replace ret_label.
+
+2004-02-14 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (x86_four_jump_limit): New variable.
+ (k8_avoid_jump_misspredicts): Rename to ...
+ (ix86_avoid_jump_misspredicts): .. this one.
+ (ix86_pad_returns): Break out from ...
+ (ix86_reorg): ... this one; do ix86_avoid_jump_misspredicts when asked
+ to.
+ * i386.h (TARGET_FOUR_JUMP_LIMIT): New macro.
+
+2004-02-14 Josef Zlomek <zlomekj@suse.cz>
+
+ * emit-rtl.c (set_decl_incoming_rtl): Check whether the 0th element of
+ PARALLEL is NULL.
+
+2004-02-14 Per Bothner <per@bothner.com>
+
+ * fix-header.c (line_table): Move local variable in main to global.
+ * scan.h (line_table): Use it.
+ * scan-decls.c (scan_decls): Need to call linemap_lookup on token's
+ line (recently renamed to src_loc) before calling recognized_function.
+
+2004-02-14 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * Makefile.in: Fix comment typos.
+
+2004-02-14 Olivier Hainque <hainque@act-europe.fr>
+
+ * loop.c (check_dbra_loop): Use gen_int_mode instead of GEN_INT
+ for start_value when it is directly moved into reg, and factorize
+ the retrieval of GET_MODE (reg).
+
+2004-02-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_load_got_page): Delete.
+ (mips_load_got_global): Delete.
+ (mips_gotoff_page): Declare.
+ * config/mips/mips.md (UNSPEC_LOAD_GOT): New constant.
+ (*xgot_lo[sd]i, *got_disp[sd]i, *got_page[sd]i): Build an
+ UNSPEC_LOAD_GOT pattern rather than a MEM.
+ (*load_got[sd]i): New patterns.
+ * config/mips/mips.c (mips_got_alias_set, mips_load_got): Delete.
+ (mips_load_got_page, mips_load_got_global): Delete.
+ (mips_gotoff_page): New function.
+ (override_options): Don't initialize mips_got_alias_set.
+
+2004-02-14 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (MASK_DEBUG_[ABEFI], TARGET_DEBUG_[ABEFI]_MODE)
+ (TARGET_MIPS4100, TARGET_MIPS4300, TARGET_MIPS4KC, TARGET_MIPS5KC)
+ (TARGET_SB1, TUNE_SB1, TUNE_SR71K, BIGGEST_MAX_ARGS_IN_REGISTERS)
+ (GO_PRINTF, GO_PRINTF2, GO_DEBUG_RTX, DFMODE_NAN, SFMODE_NAN): Delete.
+ (TARGET_SWITCHES): Remove MASK_DEBUG_[ABEFI].
+ * config/mips/mips.c: Fix some overly-long lines.
+ (SINGLE_WORD_MODE_P, PIC_OFFSET_TABLE_MASK): Delete.
+ (init_cumulative_args): Remove TARGET_DEBUG_E_MODE handling.
+
+2004-02-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.ac: Search for as, ld below libexec/gcc.
+ * configure: Regenerate.
+
+2004-02-14 Ben Elliston <bje@wasabisystems.com>
+
+ * config/arm/mmintrin.h (_mm_setwcx): Reverse arguments in call to
+ __builtin_arm_setwcx ().
+ * config/arm/arm.c (arm_expand_builtin): Generate operands
+ correctly and reverse their order in call to gen_iwmmxt_tmcr ().
+
+2004-02-14 Ben Elliston <bje@wasabisystems.com>
+
+ * config/arm/arm.c (bdesc_2arg): Correct builtin names "wmulsh"
+ and "wmuluh" to "wmulsm" and "wmulum", respectively.
+ * config/arm/arm.h (enum arm_builtins): Rename enumerators to
+ ARM_BUILTIN_WMULSM and ARM_BUILTIN_WMULUM.
+ * config/arm/mmintrin.h (_mm_mulhi_pi16): Update intrinsic call.
+ (_mm_mulhi_pu16): Likewise.
+
+2004-02-13 Zack Weinberg <zack@codesourcery.com>
+
+ * xcoffout.c (xcoff_assign_fundamental_type_number): Check
+ DECL_NAME != 0 before dereferencing.
+
+2004-02-13 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390-protos.h (s390_output_symbolic_const): Remove.
+ (s390_output_addr_const_extra): Declare.
+ (s390_output_pool_entry): Remove FILE * argument.
+ * config/s390/s390.c (s390_output_symbolic_const): Remove.
+ (s390_output_addr_const_extra): New function.
+ (print_operand_address): Call output_addr_const instead of
+ s390_output_symbolic_const.
+ (print_operand): Likewise.
+ (s390_output_pool_entry): Use assemble_integer for symbolic constants.
+ Remove FILE * argument.
+ * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Define.
+ * config/s390/s390.md ("*pool_entry"): Adapt s390_output_pool_entry
+ call.
+
+2004-02-13 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfgloopanal.c (mark_irreducible_loops): Rewriten.
+ (struct edge, struct vertex, struct graph): New.
+ (dump_graph, new_graph, add_edge, dfs, check_irred, for_each_edge,
+ free_graph): New functions.
+
+2004-02-12 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.md (casesi_internal, casesi_internal_di):
+ Use ".set macro" to avoid warnings about multi-instruction
+ macros, since they're intentional.
+
+2004-02-12 Geoffrey Keating <geoffk@apple.com>
+
+ * config/darwin.h: Add include guards. Remove old, now incorrect,
+ comment about STANDARD_EXEC_PREFIX.
+
+ * Makefile.in (install-man): Use $(CPP_INSTALL_NAME) and
+ $(GCOV_INSTALL_NAME) to install manpages. Remove generic rule
+ for installing .1 manpages. Add rules for installing cpp
+ and gcov manpages under their installed names.
+
+2004-02-12 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.ac (gcc_cv_ld): Don't set to LD if target is not
+ host, but try LD_FOR_TARGET first.
+ * configure: Rebuilt.
+
+2004-02-12 Zack Weinberg <zack@codesourcery.com>
+
+ * dbxout.c: Move declaration of dbxout_type_decl outside
+ #ifdef DBX_DEBUGGING_INFO.
+ * c-parse.in: Don't give the asmdef production a type.
+
+2004-02-12 Zack Weinberg <zack@codesourcery.com>
+
+ * debug.h (struct gcc_debug_hooks): Add type_decl field.
+ (debug_nothing_tree_int): Prototype.
+ (dwarf_debug_hooks): Delete, unused.
+ * debug.c (do_nothing_debug_hooks): Update.
+ (debug_nothing_tree_int): New function.
+ * langhooks.h (struct lang_hooks_for_decls):
+ Remove builtin_type_decls field.
+ * langhooks-def.h (LANG_HOOKS_BUILTIN_TYPE_DECLS): Delete.
+ (LANG_HOOKS_DECLS): Update.
+ * toplev.c (rest_of_decl_compilation, rest_of_type_compilation):
+ Use debug_hooks->type_decl.
+ * dbxout.c (preinit_symbols): New static.
+ (dbx_debug_hooks, xcoff_debug_hooks): Update.
+ (dbxout_init): Don't call DBX_OUTPUT_STANDARD_TYPES or
+ lang_hooks.decls.builtin_type_decls. Do scan preinit_symbols
+ for symbols to output.
+ (dbxout_type_decl): New function.
+ (dbxout_symbol): If called before dbxout_init has run, queue
+ the symbol for later. Apply DBX_ASSIGN_FUNDAMENTAL_TYPE_NUMBER
+ to TYPE_DECLs before emitting them.
+ * xcoffout.c (assign_type_number): Delete.
+ (xcoff_type_numbers): New static table.
+ (xcoff_assign_fundamental_type_number): New function.
+ * xcoffout.h: Define DBX_ASSIGN_FUNDAMENTAL_TYPE_NUMBER, not
+ DBX_OUTPUT_STANDARD_TYPES. Remove unnecessary #ifdefs.
+ * sdbout.c: Include varray.h.
+ (deferred_global_decls): New static.
+ (sdb_debug_hooks): Update.
+ (sdbout_global_decl): If we can't emit something right now,
+ remember it in deferred_global_decls.
+ (sdbout_finish): Just scan deferred_global_decls; don't call getdecls.
+ (sdbout_init): Initialize deferred_global_decls.
+ * Makefile.in: Update dependencies of sdbout.o.
+ * dwarf2out.c (dwarf2out_type_decl): New function.
+ (dwarf2_debug_hooks): Update.
+ * vmsdbgout.c (vmsdbg_debug_hooks): Update.
+ * c-decl.c (getdecls): Just return 0.
+ (check_for_loop_decls): Don't use getdecls.
+ (record_builtin_type): Call debug_hooks->type_decl on the TYPE_DECL.
+ * c-objc-common.c (c_objc_common_finish_file): Don't use getdecls.
+
+2004-02-12 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_sched_reorder2): Remove.
+ (TARGET_SCHED_REORDER2): Do not redefine.
+
+2004-02-12 Zack Weinberg <zack@codesourcery.com>
+
+ * c-parse.in (maybe_type_qual): Delete.
+ (maybe_volatile, simple_asm_expr, asmdef, asm_stmt)
+ (asm_argument): New grammar rules.
+ (extdef_1): Use asmdef.
+ (maybeasm): Move down with other asm rules; use simple_asm_expr.
+ (xexpr): Move up with other expression rules.
+ (stmt): Use asm_stmt.
+
+ * c-typeck.c (build_asm_expr): New function - body mostly
+ pulled from build_asm_stmt.
+ (build_asm_stmt): Just handle tacking on the volatile qualifier.
+ * c-tree.h (build_asm_expr, build_asm_stmt): Update prototypes.
+
+2004-02-12 Richard Sandiford <rsandifo@redhat.com>
+
+ PR bootstrap/13617
+ * config/mips/mips-protos.h (mips_output_aligned_decl_common): Declare.
+ (mips_declare_object): Make variadic.
+ * config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use
+ mips_output_aligned_decl_common.
+ * config/mips/mips.c (mips_output_aligned_decl_common): New function.
+ (mips_declare_object): Make variadic.
+
+2004-02-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * function.c (update_epilogue_consts): Teach about binary operations.
+
+ * emit-rtl.c (set_mem_attributes_minus_bitpos): Don't kill
+ previous MEM_VOLATILE in REF.
+ * function.c (fixup_var_refs): Save volatile_ok and set to 1.
+ * expr.c (emit_block_move_via_movstr): Save and restore volatile_ok.
+
+2004-02-12 Gunther Nikl <gni@gecko.de>
+
+ * config.gcc: Restore support for m68k-openbsd.
+
+2004-02-12 Jan Hubicka <jh@suse.cz>
+
+ * tree-optimize.c (tree_rest_of_compilation): Do not release
+ DECL_ARGUMENTS.
+
+2004-02-11 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * doc/install.texi: Fix the spelling of "explicitly".
+
+2004-02-11 Eric Christopher <echristo@redhat.com>
+
+ * cppcharset.c (_cpp_interpret_string_notranslate): Rename and
+ duplicate argument structure of cpp_interpret_string.
+ * cpphash.h: Move prototype...
+ * cpplib.h: Here.
+ * cpplib.c: Fix calls to match new function signature.
+
+2004-02-11 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/456
+ * cppexp.c (num_binary_op): Don't allow comma operators in #if
+ constant expressions at all outside C99 mode if pedantic.
+
+2004-02-11 Uros Bizjak <uros@kss-loka.si>
+
+ * optabs.h (enum optab_index): Add new OTI_log10 and OTI_log2.
+ (log10_optab, log2_optab): Define corresponding macros.
+ * optabs.c (init_optabs): Initialize log10_optab and log2_optab.
+ * genopinit.c (optabs): Implement log10_optab and log2_optab
+ using log10?f2 and log2?f2 patterns.
+ * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LOG10{,F,L}
+ using log10_optab, and BUILT_IN_LOG2{,F,L} using log2_optab.
+ (expand_builtin): Expand BUILT_IN_LOG10{,F,L} and BUILT_IN_LOG2{,F,L}
+ using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
+
+ * config/i386/i386.md (log10sf2, log10df2, log10xf2, log2sf2,
+ log2df2, log2xf2): New patterns to implement log10, log10f, log10l,
+ log2, log2f and log2l built-ins as inline x87 intrinsics.
+
+2004-02-11 Richard Henderson <rth@redhat.com>
+
+ PR target/1532
+ * flow.c (insn_dead_p): A clobber of a dead hard register is a
+ dead insn after reload.
+
+2004-02-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * tree.h (frame_base_decl): Add GTY marker.
+ * var-tracking.c (frame_base_decl): Likewise.
+
+2004-02-11 Daniel Berlin <dberlin@dberlin.org>
+
+ * dwarf2out.c (output_loc_list): Remove no longer necessary, and now
+ incorrect, hunk.
+ (add_location_or_const_value_attribute): Use text_section_label,
+ not TEXT_SECTION_NAME.
+
+2004-02-11 Per Bothner <per@bothner.com>
+
+ Represent column numbers using line-map's source_location.
+ The "next available source_location" is now managed internally by
+ line-maps.c rather than by clients.
+ * line-map.h (struct line_map): New field column_bits.
+ <from_line>: Rename field to start_location.
+ (struct line_maps): New fields highest_location and max_column_hint.
+ (linemap_check_files_exited): New declaration.
+ (linemap_line_start): New declaration.
+ (linemap_add): Remove from_line parameter; use highest_location field.
+ (SOURCE_LINE, LAST_SOURCE_LINE): Modify to use column_bits.
+ (SOURCE_COLUMN, LAST_SOURCE_LINE_LOCATION): New macros.
+ (CURRENT_LINE_MAP): Remove macro.
+ (linemap_position_for_column): New inline function.
+ * line-map.c (linemap_init): Clear new fields.
+ (linemap_check_files_exited): New function, extracted from ...
+ (linemap_free): Use linemap_check_files_exited.
+ (linemap_add): Remove from_line parameter. Various updates.
+ (linemap_line_start): New function.
+ (linemap_lookeup): Update for new field names.
+ * cpphash.h (struct cpp_reader) <map>: Field removed. Because
+ linemap_position_for_column may unpredictably change the current map,
+ it is cleaner and simpler for us to not cache it in cpp_reader.
+ (struct cpp_buffer): New sysp field.
+ Changed warned_cplusplus_comments and from_stage3 to bitfields.
+ * cppinit.c (cpp_read_min_file): pfile->map no longer exists.
+ * cpplib.c (do_line, do_linemarker, _cpp_do_file_change): Get
+ current map using linemap_lookup.
+ (do_linemarker): Also set buffer's sysp field.
+ (destringize_and_run): No longer need to decrement current line.
+ * cppfiles.c (_cpp_stack_file): Set sysp from and in buffer.
+ (search_path_head, open_file_failed): Use buffer's sysp.
+ (cpp_make_system_header): Get current map using linemap_lookup.
+ Also set buffer's sysp flag.
+ * cppmacro.c (_cpp_builtin_macro_text): Likewise use linemap_lookup.
+ * cpphash.h (CPP_INCREMENT_LINE): New macro.
+ (struct cpp_buffer): Moved fields saved_cur, saved_rlimit to ...
+ (struct cpp_reader): ... and adding saved_line_base field.
+ * cpptrad.c (_cpp_overlay_buffer, _cpp_remove_overlay):
+ Update accordingly. Don't adjust line.
+ (_cpp_scan_out_logical_line): Use CPP_INCREMENT_LINE.
+ * cpphash.c (CPP_IN_SYSTEM_HEADER): Replaced macro by ...
+ (cpp_in_system_header): ... new inline function, using buffer's sysp.
+ * cpperror.c (_cpp_begin_message): Update to use cpp_in_system_header.
+ * cpplex.c (_cpp_lex_direct): Likewise.
+ * cppmacro.c (_cpp_builtin_macro_text): Likewise.
+ * cppmacro.c (_cpp_create_definition): Use buffer's sysp field.
+ * cpplib.h (struct cpp_token): Rename line field to src_loc.
+ Remove col field as it is now subsumed by src_loc.
+ * cpperror.c: Update various field, parameter, and macro names.
+ (print_location): If col==0, try SOURCE_COLUMN of line.
+ (cpp_error): Use cur_token's src_loc field, rather than line+col.
+ * cpplib.c (do_diagnostic): Token's src_loc fields replaces line+col.
+ * cpplex.c (_cpp_process_line_notes, _cpp_lex_direct,
+ _cpp_skip_block_comment): Use CPP_INCREMENT_LINE.
+ (_cpp_temp_token): Replace cpp_token's line+col fields by src_loc.
+ (_cpp_get_fresh_line): Don't need to adjust line for missing newline.
+ (_cpp_lex_direct): Use linemap_position_for_column.
+ * c-ppoutput.c (maybe_print_line, print_line): Don't take map
+ parameter. Instead get it from the line_table global. Adjust callers.
+ (print): Remove map field. Replace line field to src_line.
+ (init_pp_output, account_for_newlines, maybe_print_line): Adjust.
+ (cb_line_change): Use SOURCE_COLUMN. Minor optimizations.
+ (pp_file_change): Use MAIN_FILE_P since we cannot checked print.map.
+ Use LAST_SOURCE_LINE_LOCATION to "catch up" after #include.
+ * cpptrad.c (copy_comment): Rename variable.
+ * c-lex.c (map): Remove static variable, for same reason we removed
+ cpp_reader's map field.
+ (cb_line_change, cb_def_pragma, cb_define, cb_undef): Hence we need
+ to call linemap_lookup.
+ (cb_line_change): Token's line field replaced by src_loc.
+ (fe_file_change): Use MAINFILE_P and LAST_SOURCE_LINE macros.
+ Don't save new_map.
+
+ * cpphash.h, cpperror.c, cpplib.h: Some renames of fileline to
+ source_location.
+
+2004-02-11 Hartmut Penner <hpenner@de.ibm.com>
+
+ * config/rs6000/altivec.md (*movv4si_internal): At least one
+ operand must be register_operand.
+ (*movv8hi_internal1): Likewise.
+ (*movv16qi_internal1): Likewise.
+ (*movv4sf_internal1): Likewise.
+
+2004-02-10 Aldy Hernandez <aldyh@redhat.com>
+
+ * config/rs6000/spe.md ("*movv2si_internal"): Check for register
+ operand.
+ (movv4hi_internal): Same.
+ (movv2sf_internal): Same.
+ (movv1di_internal): Same.
+
+2004-02-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
+
+ * config/mips/mips.h (TARGET_OLDABI): Define. Use TARGET_NEWABI and
+ TARGET_OLDABI consistently.
+ * config/mips/mips.c (function_arg,mips_setup_incoming_varargs,
+ mips_va_arg,override_options,compute_frame_size,
+ mips_initial_elimination_offset,mips16_fp_args,build_mips16_call_stub
+ ,mips_return_in_memory,mips_strict_argument_naming): Use TARGET_NEWABI
+ and TARGET_OLDABI consistently.
+ * config/mips/mips.md (exception_receiver): Likewise.
+ * config/mips/linux64.h: Likewise.
+
+2004-02-11 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (rs6000_override_options)
+ Set AltiVec ABI and vrsave as default for ppc64 linux.
+ (init_cumulative_args): Post error, if try to return
+ value in AltiVec register without enable AltiVec.
+ (function_arg_advance): Ditto for passing arguments.
+
+2004-02-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * emit-rtl.c (mark_label_nuses): Check that a LABEL_REF refers to
+ a label before updating its usage count.
+
+2004-02-10 Matt Kraai <kraai@alumni.cmu.edu>
+
+ * doc/install.texi: Remove extra cd.
+
+2004-02-10 Ziemowit Laski <zlaski@apple.com>
+
+ * c-common.c (vector_size_helper): Remove; call
+ reconstruct_complex_type() instead.
+ * tree.c (reconstruct_complex_type): New function
+ (formerly vector_size_helper() in c-common.c).
+ (make_vector): Make externally visible.
+ * tree.h (reconstruct_complex_type, make_vector): Add prototypes.
+
+2004-02-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add a prototype for
+ h8300_regs_ok_for_stm.
+ * config/h8300/h8300.c (h8300_regs_ok_for_stm): New.
+ * config/h8300/h8300.md (stm_h8300s_2_advanced,
+ stm_h8300s_2_normal, stm_h8300s_2, stm_h8300s_3_advanced,
+ stm_h8300s_3_normal, stm_h8300s_3, stm_h8300s_4_advanced,
+ stm_h8300s_4_normal, stm_h8300s_4, ldm_h8300s_2_advanced,
+ ldm_h8300s_2_normal, ldm_h8300s_2, ldm_h8300s_3_advanced,
+ ldm_h8300s_3_normal, ldm_h8300s_3, ldm_h8300s_4_advanced,
+ ldm_h8300s_4_normal, ldm_h8300s_4): Use
+ h8300_regs_ok_for_stm().
+
+2004-02-10 Danny Smith <dannysmith@users.sourceforge.net>
+
+ PR c/14088
+ * real.c (real_from_string): Look for 'X' as well as 'x' in
+ hexfloat strings.
+
+2004-02-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Remove an incorrect comment about
+ peephole2. Add comments.
+
+2004-02-10 Josef Zlomek <zlomekj@suse.cz>
+
+ PR/14058
+ * emit-rtl.c (set_decl_incoming_rtl): New.
+ * tree.h (set_decl_incoming_rtl): New.
+ * function.c (assign_parms): Use set_decl_incoming_rtl for setting
+ DECL_INCOMING_RTL.
+ * ada/misc.c (adjust_decl_rtl): Likewise.
+
+2004-02-10 Per Bothner <per@bothner.com>
+
+ * c-opts.c (c_common_post_options): Don't emit working directory
+ in cpp output if -P was specified.
+
+2004-02-10 Paolo Bonzini <bonzini@gnu.org>
+
+ PR c/14092
+ * fold-const.c (fold) <NEGATE_EXPR>: Convert result of
+ negate_expr back to the original type.
+
+2004-02-10 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Don't
+ bump retaddr here.
+
+2004-02-10 Paolo Bonzini <bonzini@gnu.org>
+
+ * rtl.h (schedule_insns, schedule_ebbs, fix_sched_param,
+ gen_lowpart_SUBREG): Move under the file in which they
+ are actually declared.
+
+2004-02-10 Arnaud Charlet <charlet@act-europe.fr>
+
+ * doc/sourcebuild.texi: Add libada documentation.
+
+ * doc/install.texi: Update documentation on Ada build, now
+ that the GNAT lib and tools are built automatically.
+
+2004-02-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.h (TARGET_GPWORD): Return false for TARGET_NEWABI
+ && TARGET_IRIX.
+
+2004-02-09 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (get_super_receiver): Move '#ifdef OBJCPLUS'
+ boundaries outside build_component_ref() call (a macro in ObjC++).
+
+2004-02-09 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update.
+ (init_cumulative_args): Likewise.
+ (a7_overlap_mentioned_p): Delete prototype.
+ * config/xtensa/xtensa.c (struct machine_function): Replace
+ incoming_a7_copied field with need_a7_copy and vararg_a7 flags.
+ Add set_frame_ptr_insn field.
+ (xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7.
+ (xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check
+ if the operand is an argument in a7. If so, copy a7 to a new pseudo
+ at the function entry and replace the operand with the pseudo.
+ (init_cumulative_args): Remove unused arguments. Add new "incoming"
+ argument and record this flag in CUMULATIVE_ARGS.
+ (function_arg): Remove result_mode and special-case code to handle
+ arguments in a7. Instead, set need_a7_copy flag when there is an
+ incoming argument in a7.
+ (xtensa_expand_prologue): Remove code to search for set_frame_ptr insn
+ and use the value recorded in cfun->machine->set_frame_ptr_insn.
+ (xtensa_builtin_saveregs): Check for negative gp_left value. Set
+ need_a7_copy and vararg_a7 flags. Use move_block_from_reg instead of
+ special-case code.
+ (a7_overlap_mentioned_p): Delete.
+ * config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag.
+ (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless
+ arguments to init_cumulative_args and pass "incoming" flag instead.
+ (BLOCK_REG_PADDING): Delete.
+ * config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary
+ checks for reload_in_progress and reload_completed. Update calls to
+ xtensa_copy_incoming_a7.
+ (ashlsi3): Rename existing insn to ashlsi3_internal. Add expander
+ to call xtensa_copy_incoming_a7.
+
+2004-02-09 DJ Delorie <dj@redhat.com>
+
+ * config/i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): No
+ longer modify standard_exec_prefix, standard_bindir_prefix, or
+ standard_startfile_prefix.
+
+2004-02-09 James E Wilson <wilson@specifixinc.com>
+
+ PR c++/11295
+ * c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call
+ to expand_expr_real call, and pass in alt_rtl as last argument.
+
+ PR libstdc++/5625
+ * builtin-types.def (BT_WORD, BT_FN_WORD_PTR): New.
+ * builtins.c (expand_builtin): Handle BUILT_IN_EXTEND_POINTER.
+ * builtins.def (BUILT_IN_EXTEND_POINTER): New.
+ * except.c (expand_builtin_extend_pointer): New.
+ * except.h (expand_builtin_extend_pointer): Declare.
+
+2004-02-09 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): Remove splitting slow
+ unaligned loads and stores.
+
+2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5.h (BSS_SECTION_ASM_OP): Define.
+ * config/mips/iris6.h (BSS_SECTION_ASM_OP): Undef.
+
+ * config/mips/iris6.h (TARGET_ASM_NAMED_SECTION): Moved ...
+ * config/mips/iris5.h: ... here.
+ * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Remove.
+
+ * config/mips/iris6.h (EXTRA_SECTION_FUNCTIONS): Move ...
+ * config/mips/iris5.h: ... here.
+
+2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * configure.ac: Remove default executable files before AC_PROG_CC.
+ * configure: Regenerate.
+
+2004-02-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/13721
+ * config/h8300/h8300.c (byte_reg): Call abort() if asked to
+ print a operand other than a register.
+
+2004-02-09 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold) <NOP_EXPR>: Use the original type conversion
+ tree code rather than call fold_convert, which doesn't specify a
+ default floating point to integer conversion.
+
+2004-02-08 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c, config/m68k/m68k.md (SGS, SGS_CMP_ORDER): Remove
+ code to support SGS assembler. Reformat adjacent code where possible.
+ * config/m68k/m68k.c (switch_table_difference_label_flag): Remove
+ definition.
+ * config/m68k/m68k.h (PRINT_OPERAND_PUNCT_VALID_P): Remove support
+ for '%#'.
+ * config/m68k/linux.h, config/m68k/m68k.c,
+ * config/m68k/math-68881.h: Replace `%#' with `#' in inline asm
+ macros and asm_printf() format strings.
+ * config/m68k/m68kelf.h (ASM_OUTPUT_CASE_END): Remove macro definition.
+ * config/m68k/linux.h: Update copyright.
+ * config/m68k/linux.h, config/m68k/m68k.c: Remove traling whitespace.
+
+2004-02-08 Andreas Schwab <schwab@suse.de>
+ Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.h (REGISTER_NAMES): Prefix each name with
+ REGISTER_PREFIX.
+ * (M68K_FP_REG_NAME): New macro to specify an alternate name for the
+ frame pointer register, overridable by OS targets.
+ * (M68K_REGNAME): Macro to obtain register name for asm output,
+ eventually replacing %a6 with M68K_FP_REG_NAME.
+ * config/m68k/coff.h (REGISTER_NAMES): Don't redefine.
+ * config/m68k/linux.h (REGISTER_NAMES): Likewise.
+ * config/m68k/m68kelf.h (REGISTER_NAMES): Likewise.
+ * config/m68k/netbsd-elf.h (REGISTER_NAMES): Likewise.
+ * config/m68k/m68k.c: Use M68K_REGNAME(x) in place of reg_names[x].
+
+2004-02-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * target-def.h (TARGET_STRUCT_VALUE_RTX): Define as
+ hook_rtx_tree_int_null.
+ * targhooks.c (default_struct_value_rtx): Remove.
+ * targhooks.h: Remove the prototype for
+ default_struct_value_rtx.
+ * config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c,
+ config/fr30/fr30.c, config/h8300/h8300.c, config/i386/i386.c,
+ config/ip2k/ip2k.c, config/iq2000/iq2000.c,
+ config/m32r/m32r.c, config/mcore/mcore.c, config/mips/mips.c,
+ config/mn10300/mn10300.c, config/pdp11/pdp11.c,
+ config/rs6000/rs6000.c, config/s390/s390.c,
+ config/stormy16/stormy16.c, config/v850/v850.c,
+ config/xtensa/xtensa.c (TARGET_STRUCT_VALUE_RTX): Remove.
+ * doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document the default.
+
+2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * README.Portability: Change "ISO C89" to "ISO C90".
+ * c-parse.in (primary, initelt): Likewise.
+
+2004-02-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * real.c (encode_ibm_extended): Normalize the input value before
+ converting it to a double. Handle the case where a normal value
+ rounds to infinity.
+
+2004-02-08 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-objc-common.c (c_cannot_inline_tree_fn): Fix a typo in a
+ warning.
+ * cse.c (preferrable): Change to preferable. Update all of its
+ callers.
+ * genautomata.c (ainsn): Change
+ first_ainsn_with_given_equialence_num to
+ first_ainsn_with_given_equivalence_num. Update all of its
+ references.
+
+2004-02-08 Jan Hubicka <jh@suse.cz>
+
+ * schedule-ebb.c (schedule_ebbs): Do not allocate reg life data.
+
+2004-02-07 David Edelsohn <edelsohn@gnu.org>
+
+ * function.c (assign_parms): Fix formatting.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * default.h (PROMOTE_PROTOTYPES): Remove.
+ * system.h (PROMOTE_FUNCTION_RETURN, PROMOTE_PROTOTYPES,
+ STRUCT_VALUE_REGNUM, SETUP_INCOMING_VARARGS,
+ EXPAND_BUILTIN_SAVEREGS): Poison.
+ * target-def.h (TARGET_PROMOTE_FUNCTION_RETURN): Define as
+ hook_bool_tree_false.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ * target.h: Replace SETUP_INCOMING_VARARGS with
+ targetm.calls.setup_incoming_varargs().
+ * targhooks.c (default_promote_function_return): Remove.
+ (default_promote_prototypes): Likewise.
+ (default_struct_value_rtx): Always abort().
+ (default_expand_builtin_saveregs): Always print an error
+ message.
+ (default_setup_incoming_varargs): Do nothing.
+ (default_pretend_outgoing_varargs_named): Don't depend on
+ SETUP_INCOMING_VARARGS.
+ * targhooks.h: Remove the prototype for
+ default_promote_function_return and
+ default_promote_prototypes.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (SHARED_SECTION_ASM_OP): Poison.
+ * varasm.c (data_section): Don't use SHARED_SECTION_ASM_OP.
+ * doc/tm.texi (SHARED_SECTION_ASM_OP): Remove.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ Bug 13856
+ * c-decl.c (diagnose_mismatched_decls): Only give special
+ treatment when olddecl is DECL_BUILT_IN, if C_DECL_INVISIBLE
+ is also true.
+ (merge_decls): Don't clear DECL_BUILT_IN_CLASS and
+ DECL_FUNCTION_CODE when defining a built-in function.
+ Don't update DECL_ESTIMATED_INSNS.
+ * dwarf2out.c (dwarf2out_decl): Don't ignore built-in
+ FUNCTION_DECLs.
+ * tree.h: Delete DECL_ESTIMATED_INSNS.
+ * tree-inline.c (struct inline_data): Delete inlined_insns field.
+ (expand_call_inline, optimize_inline_calls): Don't update
+ DECL_ESTIMATED_INSNS nor inlined_insns.
+ * cgraphunit.c (cgraph_analyze_function): Don't update
+ DECL_ESTIMATED_INSNS.
+
+2004-02-07 Zack Weinberg <zack@codesourcery.com>
+
+ * c-common.c (shadow_warning): Delete.
+ * c-common.h (free_parser_stacks, shadow_warning, sw_kind): Delete.
+ * c-decl.c (warn_if_shadowing): Issue shadow warnings directly.
+ * c-opts.c (c_common_parse_file): Don't call free_parser_stacks.
+ * c-parse.in (free_parser_stacks): Delete.
+
+2004-02-07 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in, config/t-slibgcc-darwin, config/t-slibgcc-elf-ver,
+ config/t-slibgcc-sld, config/mips/t-iris5-6, config/sh/t-linux:
+ Use the top level mkinstalldirs, not the one in the gcc subdir.
+ * mkinstalldirs: Remove (from the gcc subdir).
+
+2004-02-07 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/13696
+ * fold-const.c (fold_convert): New function to provide type
+ conversion to the middle-end without using convert.
+ (negate_expr, associate_trees, size_diffop, omit_one_operand,
+ operand_equal_for_comparison_p, pedantic_omit_one_operand,
+ invert_truthvalue, optimize_bit_field_compare, range_binop,
+ decode_field_reference, make_range, build_range_check, unextend,
+ fold_truthop, extract_muldiv_1, fold_mathfn_compare,
+ fold_binary_op_with_conditional_arg, fold_inf_compare,
+ fold_single_bit_test, fold, multiple_of_p): Replace all calls to
+ convert with calls to fold_convert.
+
+2004-02-07 Jan Hubicka <jh@suse.cz>
+
+ * genrecog.c (find_operand): add extra argument stop.
+ (validate_pattern): Verify that mach_dup is duplicating operand
+ defined lexically earlier.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config.gcc: Don't mention MAX_LONG_TYPE_SIZE.
+ * system.h (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE,
+ MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Poison.
+ * config/avr/avr.h, config/h8300/h8300.h, config/i386/i386.h,
+ config/ia64/ia64.h, config/ip2k/ip2k.h,
+ config/iq2000/iq2000.h, config/mips/iris5.h,
+ config/mips/mips.h, config/pa/pa-64.h, config/pa/pa.h,
+ config/rs6000/aix51.h, config/rs6000/aix52.h,
+ config/rs6000/darwin.h, config/rs6000/rs6000.h,
+ config/s390/s390.h, config/sh/sh.h, config/sparc/freebsd.h,
+ config/sparc/linux.h, config/sparc/linux64.h,
+ config/sparc/netbsd-elf.h, config/sparc/sparc.h,
+ config/xtensa/xtensa.h: Remove the definitions of
+ MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, and/or
+ MAX_WCHAR_TYPE_SIZE.
+ * doc/tm.texi (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE,
+ MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Remove.
+
+2004-02-07 Stephane Carrez <stcarrez@nerim.fr>
+
+ PR bootstrap/13990
+ * config/m68hc11/m68hc11.md ("doloop_end"): Pass dummy arguments to
+ gen_rtx_NE.
+
+2004-02-07 Josef Zlomek <zlomekj@suse.cz>
+
+ * var-tracking.c (vt_add_function_parameters): Surround checkings by
+ #ifdef ENABLE_CHECKING and #endif.
+
+2004-02-07 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (negate_expr_p, negate_expr): Optimize -(A+B) into
+ either (-A)-B or (-B)-A, if A or B is easily negated respectively.
+ (fold) <MINUS_EXPR>: Optimize (A*C) - (B*C) -> (A-B)*C for both
+ integer types and floating point with unsafe_math_optimizations.
+ Add similar optimization for (A*C1) - (A*C2) -> A*(C1-C2).
+ Optimize A - B as A + (-B), if B is easily negated.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-ppoutput.c, cfganal.c, diagnostic.h, print-rtl.c,
+ config/darwin.c, config/darwin.h, config/ia64/ia64-c.c,
+ config/m32r/linux.h, config/rs6000/ppc64-fp.c,
+ config/sparc/openbsd.h, doc/makefile.texi, doc/passes.texi:
+ Update copyright.
+
+2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-ppoutput.c, var-tracking.c: Fix comment typos.
+
+2004-02-06 James E Wilson <wilson@specifixinc.com>
+
+ * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Only define for
+ glibc 2.3 or better.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi (TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL): Change
+ to FLOAT_LIB_COMPARE_RETURNS_BOOL.
+
+2004-02-07 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c.
+ (SHLIB_MAPFILES): Add libgcc-ppc64.ver.
+ (SHLIB_MKMAP_OPTS): Delete.
+ (TARGET_LIBGCC2_CFLAGS): Add -specs.
+ (bispecs): Add rule.
+ * config/rs6000/libgcc-ppc64.ver: New file.
+ * config/rs6000/ppc64-fp.c (__fixtfdi, __floatditf): New functions.
+ (__floatdidf, __floatdisf): Optimize multiply.
+ (__fixunstfdi): New function.
+ * config/rs6000/rs6000.c (rs6000_complex_function_value): Allow for
+ real and imag parts larger than one register.
+ (function_arg): Correct type of reg used when fp arg split partially
+ to stack.
+ * config/rs6000/darwin-ldouble.c: Protect with #if !_SOFT_FLOAT
+ and __MACH__ or __powerpc64__.
+
+2004-02-06 Roger Sayle <roger@eyesopen.com>
+ Ulrich Weigand <uweigand@de.ibm.com>
+
+ * builtins.c (expand_builtin_signbit): Use extract_bit_field instead
+ of gen_highpart or gen_lowpart when the floating point format is
+ wider than the result mode.
+
+2004-02-06 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * dwarf2out.c (loclabel_num): Move into #ifdef
+ DWARF2_DEBUGGING_INFO.
+
+2004-02-06 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (build_super_template) the 'class' field of
+ 'struct _objc_super' shall be named 'super_class' #ifdef OBJCPLUS.
+ (get_super_receiver): Likewise.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * reload1.c (check_eliminable_occurrences): Optimize the reset
+ of can_eliminate.
+ (eliminate_regs_in_insn): Likewise.
+
+2004-02-06 Daniel Berlin <dberlin@dberlin.org>
+ Josef Zlomek <zlomekj@suse.cz>
+
+ * dwarf2out.c (struct gcc_debug_hooks): Call dwarf2out_begin_function
+ at the beginning of function, call dwarf2out_var_location for
+ NOTE_INSN_VAR_LOCATION note.
+ (struct var_loc_node, struct var_loc_list_def, loclabel_num,
+ decl_loc_table): New.
+ (lookup_decl_loc): New function.
+ (add_var_loc_to_decl): New function.
+ (based_loc_descr): Added parameter can_use_fbreg, DW_OP_fbreg is used
+ only if can_use_fbreg.
+ (mem_loc_descriptor): Added parameter can_use_fbreg, pass it to other
+ functions.
+ (loc_descriptor): Likewise. Process VAR_LOCATION.
+ (concat_loc_descriptor): Call loc_descriptor with can_use_fbreg == true.
+ (loc_descriptor_from_tree): Call mem_loc_descriptor with
+ can_use_fbreg == true.
+ (add_location_or_const_value_attribute): Added parameter enum
+ dwarf_attribute attr, generate attribute ATTR. Create the location list.
+ (add_bound_info): Call loc_descriptor with can_use_fbreg == true.
+ (gen_formal_parameter_die): Call add_location_or_const_value_attribute
+ with attr == DW_AT_location.
+ (gen_subprogram_die): Generate the location list for DW_AT_frame_base
+ if frame_base_decl is defined and has a location list.
+ (gen_variable_die): Call add_location_or_const_value_attribute with
+ attr == DW_AT_location.
+ (dwarf2out_var_location): New function.
+ (dwarf2out_begin_function): New function.
+ (dwarf2out_init): Create decl_loc_table.
+
+2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * loop.c (force_movables): Transitively increase the priorities of
+ all insns forces by an insn, not just the first one.
+
+2004-02-06 Josef Zlomek <zlomekj@suse.cz>
+ Daniel Berlin <dberlin@dberlin.org>
+
+ Josef Zlomek <zlomekj@suse.cz>
+ * Makefile.in (var-tracking.o): New.
+ * common.opt (fvar-tracking): New.
+ * flags.h (flag_var_tracking): New.
+ * gengtype.c (adjust_field_rtx_def): NOTE_INSN_VAR_LOCATION was added.
+ * opts.c (common_handle_option): Add OPT_fvar_tracking.
+ * print-rtl.c (print_rtx): NOTE_INSN_VAR_LOCATION was added.
+ * rtl.c (note_insn_name): Likewise.
+ * rtl.def (VAR_LOCATION): New.
+ * rtl.h (NOTE_VAR_LOCATION): New.
+ (NOTE_VAR_LOCATION_DECL): New.
+ (NOTE_VAR_LOCATION_LOC): New.
+ (enum insn_note): NOTE_INSN_VAR_LOCATION was added.
+ (variable_tracking_main): New exported function.
+ * timevar.def (TV_VAR_TRACKING): New.
+ * toplev.c (enum dump_file_index): Added DFI_vartrack.
+ (dump_file): "vartrack" was added (-dV).
+ (flag_var_tracking): New.
+ (f_options): "var-tracking" was added.
+ (rest_of_handle_variable_tracking): New function.
+ (rest_of_compilation): Run variable tracking.
+ (process_options): If user has not specified flag_var_tracking set it
+ according to optimize, debug_info_level and debug_hooks.
+ * tree.h (frame_base_decl): New.
+ * var-tracking.c: New file.
+ * config/ia64/ia64.c (ia64_flag_var_tracking): New variable.
+ (ia64_override_options): Set flags to run variable tracking in machine
+ dependent reorg instead of toplev.c.
+ (ia64_reorg): Run variable tracking if wanted.
+ * doc/invoke.texi: Mention variable tracking in -dV,
+ add and -fvar-tracking.
+ * doc/passes.texi: Added variable tracking pass.
+
+ Daniel Berlin <dberlin@dberlin.org>
+ * debug.h (struct gcc_debug_hooks): Added var_location debug hook.
+ * dbxout.c (dbx_debug_hooks): Likewise.
+ (xcoff_debug): Likewise.
+ * debug.c (do_nothing_debug_hooks): Likewise.
+ * dwarf2out.c (dwarf2_debug_hooks): Likewise.
+ * dwarfout.c (dwarf_debug_hooks): Likewise.
+ * sdbout.c (sdb_debug_hooks): Likewise.
+ * vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
+ * final.c (final_scan_insn): Call var_location debug hook for each
+ NOTE_INSN_VAR_LOCATION.
+
+2004-02-06 Jan Hubicka <jh@suse.cz>
+
+ * flow.c (update_life_info): Allocate reg_deaths when called from
+ scheudler.
+ (attempt_auto_inc): Update life ranges accordingly.
+
+2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR debug/11816
+ * dwarf2out.c (gen_decl_die): Handle anonymous struct members.
+
+2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * cfganal.c (flow_call_edges_add): Never split a libcall block.
+
+2004-02-06 Daniel Berlin <dberlin@dberlin.org>
+
+ * dwarf2out.c (output_loc_list): Don't use deltas if we have
+ a separate line info table in use.
+ Use the correct size for terminators.
+ (output_die): Use offset, not delta.
+
+2004-02-06 H.J. Lu <hongjiu.lu@intel.com>
+
+ * doc/invoke.texi: Remove the pni option from -mfpmath=.
+
+2004-02-06 Jan Hubicka <jh@suse.cz>
+
+ * recog.c (split_all_insns): Do not update reg info.
+ * regrename.c (regrename_optimize): Likewise.
+ * toplev.c (rest_of_handle_reorder_blocks): Likewise.
+ * flow.c (struct propagate_block_info): Add insn_num field.
+ (reg_deaths): New array.
+ (life_analysis): Free reg_deaths info.
+ (allocate_reg_life_data): Allocate reg_deaths array.
+ (propagate_one_insn): Use new array.
+ (init_propagate_block): Initialize it.
+ (free_propagate_block_info): Finish compuation of
+ REG_LIVE_LENGTH
+ (attempt_auto_inc): Sanity check that REG_INFO is not
+ computed at same time.
+ (mark_used_regs): Update new array.
+
+ * reg-stack.c (subst_stack_regs): Unshare clobbers before
+ substitution.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/s390/s390.md (*extendsiqi2_short_displ): Change to
+ *extendqisi2_short_displ.
+
+2004-02-06 Alan Modra <amodra@bigpond.net.au>
+
+ * doc/tm.texi (INIT_CUMULATIVE_ARGS): Update doco.
+ * calls.c (expand_call): Pass n_named_args to INIT_CUMULATIVE_ARGS.
+ (emit_library_call_value_1): Likewise pass nargs.
+ * expr.c (block_move_libcall_safe_for_call_parm): Pass 3 here.
+ * function.c (assign_parms): Pass -1 to INIT_CUMULATIVE_ARGS.
+ * config/rs6000/rs6000.c (init_cumulative_args): Use n_named_args
+ parameter instead of scanning TYPE_ARGS_TYPES to count args.
+ * config/rs6000/rs6000-protos.h (init_cumulative_args): Update
+ prototype.
+ * config/rs6000/rs6000.h (INIT_CUMULATIVE_ARGS): Pass extra arg.
+ (INIT_CUMULATIVE_INCOMING_ARGS): Set extra arg to 1000.
+ (INIT_CUMULATIVE_LIBCALL_ARGS): Set extra arg to 0.
+ * config/sh/sh.c (sh_output_mi_thunk): Pass 1 as n_named_args to
+ INIT_CUMULATIVE_ARGS.
+ * config/alpha/alpha.h (INIT_CUMULATIVE_ARGS): Update.
+ * config/alpha/unicosmk.h, config/alpha/vms.h, config/arc/arc.h,
+ config/arm/arm.h, config/avr/avr.h, config/c4x/c4x.h,
+ config/cris/cris.h, config/fr30/fr30.h, config/frv/frv.h,
+ config/h8300/h8300.h, config/i386/i386.h, config/i860/i860.h,
+ config/ia64/ia64.h, config/ip2k/ip2k.h, config/iq2000/iq2000.h,
+ config/iq2000/iq2000.c, config/m32r/m32r.h, config/m68hc11/m68hc11.h,
+ config/m68k/m68k.h, config/mcore/mcore.h, config/mips/mips.h,
+ config/mmix/mmix.h, config/mn10300/mn10300.h, config/ns32k/ns32k.h,
+ config/pa/pa.h, config/pdp11/pdp11.h, config/s390/s390.h,
+ config/sh/sh.h, config/sparc/sparc.h, config/stormy16/stormy16.h,
+ config/v850/v850.h, config/vax/vax.h, config/xtensa/xtensa.h: Likewise.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genemit.c (gen_exp) [CONST_INT]: Use const_int_rtx whenever
+ possible.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * reload1.c (eliminate_regs_in_insn): If a set has a REG_EQUAL
+ note containing (plus (reg) (const_int)), where reg is an
+ eliminable reg, then perform the register elimination without
+ depending on eliminate_regs().
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arc/arc.c (arc_return_in_memory): Check the return
+ value of int_size_in_bytes against -1. Don't check
+ TREE_ADDRESSABLE.
+ * config/avr/avr.c (avr_return_in_memory): Check the return
+ value of int_size_in_bytes against -1.
+ * config/ip2k/ip2k.c (ip2k_return_in_memory): Likewise.
+ * config/m68hc11/m68hc11.c (m68hc11_return_in_memory):
+ Likewise.
+ * config/mcore/mcore.c (mcore_return_in_memory): Likewise.
+ * config/stormy16/stormy16.c (xstormy16_return_in_memory):
+ Likewise.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/frv/frv-protos.h: Remove the prototype for
+ frv_setup_incoming_varargs.
+ * config/frv/frv.c (TARGET_SETUP_INCOMING_VARARGS): New.
+ (frv_setup_incoming_varargs): Make it static.
+ * config/frv/frv.h (SETUP_INCOMING_VARARGS): Remove.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/fr30/fr30-protos.h: Remove the prototype for
+ fr30_setup_incoming_varargs.
+ Update the prototypes for fr30_num_arg_regs and
+ fr30_function_arg_partial_nregs.
+ * config/fr30/fr30.c (TARGET_STRUCT_VALUE_RTX): New.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (fr30_setup_incoming_varargs): Make it static.
+ Add argument second_time. Don't do anything when second_time
+ is nonzero.
+ (fr30_num_arg_regs): Change the type of the first argument to
+ enum machine_mode.
+ (fr30_function_arg_partial_nregs): Change the type of the
+ second argument to enum machine_mode.
+ * config/fr30/fr30.h (STRUCT_VALUE): Remove.
+ (SETUP_INCOMING_VARARGS): Remove.
+
+2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arc/arc-protos.h: Remove the prototype for
+ arc_setup_incoming_varargs.
+ * config/arc/arc.c (TARGET_ASM_EXTERNAL_LIBCALL): New.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (arc_setup_incoming_varargs): Make it static.
+ (arc_external_libcall): Likewise.
+ * config/arc/arc.h (SETUP_INCOMING_VARARGS): Remove.
+ Remove the commented-out definition of
+ ASM_OUTPUT_EXTERNAL_LIBCALL.
+
+2004-02-05 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
+
+ * config/sh/t-linux (SHLIB_INSTALL): Prepend $$(DESTDIR)
+ to $$(slibdir) in the installation commands.
+
+2004-02-05 David Edelsohn <edelsohn@gnu.org>
+
+ * reload.c (refers_to_regno_for_reload_p): Index hard_regno_nregs
+ with inner_regno, not regno.
+ * rtlanal.c (refers_to_regno_p): Same.
+
+2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config.gcc: Remove i370 support.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ * doc/install.texi: Update automake and autoconf version
+ requirements. Note where to find gcj automake version.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (generate-manpages): Move dependencies to ...
+ (man): here.
+ * doc/makefile.texi: Document new targets.
+ * doc/sourcebuild.texi (Make-lang.in): Document new langhooks.
+
+2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR/13485
+ Makefile.in (srcextra): Add a level of indirection to ...
+ (gcc.srcextra): ... here.
+ (po-generated): Delete.
+ (po/$(PACKAGE).pot: Use srcextra instead of po-generated. Depend on
+ options.c.
+ (start.encap): Remove superfluous lang.srcextra dependency.
+ objc/Make-lang.in (po-generated): Delete.
+
+2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ia64/ia64.c (REG_GP): Remove.
+
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris5gas.h (PREFERRED_DEBUGGING_TYPE): Define.
+
+2004-02-05 Devang Patel <dpatel@apple.com>
+
+ * dwarf2out.c (force_type_die): Look up input type itself
+ instead of root_type() of type.
+
+2004-02-05 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("*tmqidi_ext"): New insn.
+ ("*extendqidi2_short_displ", "*extendsiqi2_short_displ"): Old
+ pre-reload splitters are transformed to post-reload
+ define_insn_and_split patterns.
+ ("*tmqisi_ext"): Renamed old "*tmqi_ext".
+
+2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/cris/cris.h: Replace PROMOTE_PROTOTYPES with
+ TARGET_PROMOTE_PROTOTYPES.
+
+2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR middle-end/13750
+ Revert:
+ 2004-01-15 Geoffrey Keating <geoffk@apple.com>
+ PR pch/13361
+ * c-typeck.c (constructor_asmspec): Delete.
+ (struct initializer_stack): Delete field 'asmspec'.
+ (start_init): Delete saving of asmspec.
+ (finish_init): Don't update constructor_asmspec.
+ * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
+ * stmt.c (expand_asm): Duplicate strings from tree.
+ (expand_asm_operands): Likewise.
+ * tree.c (tree_size): Update computation of size of STRING_CST.
+ (make_node): Don't make STRING_CST nodes.
+ (build_string): Allocate string with tree node.
+ * tree.def (STRING_CST): Update comment.
+ * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
+ (tree_string): Place contents of string in tree node.
+ * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
+ from tree.
+
+2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * diagnostic.h (DEFINE_DIAGNOSTIC_KIND): Change parameter M to
+ msgid.
+
+2004-02-05 Dorit Naishlos <dorit@il.ibm.com>
+
+ * config/rs6000/altivec.md (*movv4si_internal): At least one
+ operand must be altivec_register_operand.
+ (*movv8hi_internal1): Likewise.
+ (*movv16qi_internal1): Likewise.
+ (*movv4sf_internal1): Likewise.
+
+2004-02-05 David Edelsohn <edelsohn@gnu.org>
+
+ * configure.ac (gcc_cv_as_powerpc_mfcrf): Correct test for mfcr.
+ * configure: Regenerate.
+
+2004-02-05 Jonathan Wakely <redi@gcc.gnu.org>
+
+ * doc/install.texi: Update description of --gxx-include-dir to
+ give correct default value.
+
+2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (REG_OK_FOR_BASE_NONSTRICT_P): Replace
+ 8 with MAC_REG.
+
+2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/pa/pa.c (emit_hpdiv_const): Replace gen_rtx with
+ gen_rtx_PARALLEL.
+
+2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * emit-rtl.c: Update the comment about the file.
+
+2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * sourcebuild.texi (Test Idioms): Update testcase naming
+ conventions.
+
+2004-02-04 Per Bothner <per@bothner.com>
+
+ Partially revert/redo 2003-10-01 change; fix -fworking-directory.
+ * c-ppoutput.c (pp_dir_change): New function.
+ * c-common.h (pp_dir_change): New declaration.
+ * cpplib.h (struct cpp_options): Remove working_directory field.
+ * cppinit.c (cpp_find_main_file, cpp_push_main_file): Merge back to
+ (cpp_read_main_file): as before 10-01. Call _cpp_stack_file.
+ Don't handle -fworking_directory here, but in c_common_post_options.
+ (read_original_directory): Don't back up when done.
+ Don't clear no-longer used working_directory flag.
+ * cpplib.h: Update declarations to match.
+ * c-lex.c (cb_dir_change): Move to c-opts.c.
+ (init_c_lex): Don't set dir_change callback here, since we want
+ to set it even if flag_preprocess_only.
+ * c-opts.c (cb_dir_change): Function moved from c-lex.c.
+ (c_common_post_options): Set dir_change callback.
+ Call pp_dir_change if approporiate.
+ (finish_options): Don't call cpp_find_main_file here. Hence remove
+ unneeded parameter and result. Do LC_RENAME for <built-in>.
+ (c_common_post_options): Call cpp_read_main_file here instead.
+ (c_common_init): Update accordingly.
+ (push_command_line_include): Don't cpp_push_main_file.
+ Do LC_RENAME rather than LC_LEASE to get back to main file.
+ Compared to pre-10-01 version, inline cpp_rename_to_main_file.
+ (c_common_parse_file): Call cpp_read_main_file for subsequent main
+ files, but call finish_options for all files.
+ * c-opts.c (sanitize_cpp_opts): Don't set cpp_opts->working_directory.
+ * fix-header.c (read_scan_file): Call cpp_read_main_file instead of
+ cpp_find_main_file + cpp_push_main_file.
+ * c-lex.c (fe_file_change): Don't set main_input_filename here.
+ * opts.c (handle_options): Only set main_input_filename first time.
+
+2004-02-05 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/arm.h (REG_CLASS_NAMES): Add missing comma.
+
+2004-02-04 Geoffrey Keating <geoffk@apple.com>
+
+ * reload.c (find_equiv_reg): When checking for register overlap,
+ don't index hard_regno_nregs with a pseudo-reg.
+
+2004-02-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_trampoline_template): Remove gen_rtx().
+
+2004-02-04 David Edelsohn <edelsohn@gnu.org>
+
+ * reload.c (refers_to_regno_for_reload_p): Test regno, not inner_regno,
+ against FIRST_PSEUDO_REGISTER.
+
+2004-02-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in: Move target, host overrides after per-language
+ fragments.
+
+ * config/mips/t-iris5-as (FORCE_DEBUG_ADAFLAGS): Clear.
+ (GNATLIBCFLAGS): Remove -g.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c,
+ config/i386/i386.c, config/i386/i386.h, config/i386/i386.md,
+ config/ia64/ia64.c, config/ia64/unwind-ia64.c,
+ config/m32r/m32r.c, config/ns32k/ns32k.c, config/pa/pa.c,
+ config/pdp11/pdp11.c, config/rs6000/rs6000.c,
+ config/sparc/sparc.c, config/vax/vax.c: Revert the
+ replacements of "FALLTHRU" with "Fall through" done in the
+ previous patch.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/darwin.c, config/darwin.h, config/freebsd-spec.h,
+ config/arm/arm.c, config/arm/arm.md,
+ config/cris/cris-protos.h, config/fr30/fr30.c,
+ config/fr30/fr30.h, config/h8300/h8300.c, config/i386/i386.h,
+ config/i860/i860.c, config/i860/i860.h, config/ia64/ia64-c.c,
+ config/ia64/ia64.c, config/ia64/ia64.h, config/ip2k/ip2k.h,
+ config/ip2k/ip2k.md, config/ip2k/libgcc.S,
+ config/m32r/linux.h, config/m32r/m32r.c, config/m32r/m32r.h,
+ config/m68k/m68k.c, config/m68k/netbsd-elf.h,
+ config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.md,
+ config/ns32k/netbsd.h, config/ns32k/ns32k.c,
+ config/ns32k/ns32k.h, config/pdp11/pdp11.h,
+ config/rs6000/darwin-ldouble.c, config/s390/s390.h,
+ config/s390/s390.md, config/sparc/netbsd-elf.h,
+ config/sparc/openbsd.h, config/sparc/sparc.c,
+ config/xtensa/lib2funcs.S: Fix comment formatting.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.c, config/arc/arc.c,
+ config/arm/arm-cores.def, config/arm/arm.c, config/arm/arm.h,
+ config/arm/arm1026ejs.md, config/arm/arm1136jfs.md,
+ config/arm/arm926ejs.md, config/arm/vfp.md, config/avr/avr.c,
+ config/c4x/c4x.c, config/cris/cris.c, config/frv/frv.md,
+ config/i386/i386.c, config/i386/i386.h, config/i386/i386.md,
+ config/ia64/ia64.c, config/ia64/unwind-ia64.c,
+ config/iq2000/iq2000.c, config/m32r/m32r.c,
+ config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
+ config/ns32k/ns32k.c, config/pa/pa.c, config/pdp11/pdp11.c,
+ config/rs6000/darwin-ldouble.c, config/rs6000/rs6000.c,
+ config/rs6000/rs6000.h, config/sparc/sparc.c,
+ config/vax/vax.c: Fix comment typos. Follow spelling
+ conventions.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alloc-pool.h, c-convert.c, c-lang.c, c-tree.h,
+ caller-save.c, df.h, genconfig.c, global.c, lcm.c,
+ ra-rewrite.c, ra.c, regclass.c, regs.h, resource.c,
+ sched-rgn.c, config/arm/aof.h, config/arm/cirrus.md,
+ config/arm/fpa.md, config/arm/iwmmxt.md,
+ config/arm/netbsd-elf.h, config/arm/netbsd.h,
+ config/m68hc11/m68hc11.md, config/mips/iris5.h,
+ config/mn10300/mn10300.md, config/rs6000/altivec.md,
+ config/sparc/netbsd-elf.h: Update copyright.
+
+2004-02-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
+ for all modes whose size is greater than 8 bytes if ARCH32.
+ (sparc_va_arg): Handle all modes whose size is greater than 8 bytes
+ by reference if ARCH32.
+
+2004-02-04 Aldy Hernandez <aldyh@redhat.com>
+
+ * cgraphunit.c (cgraph_postorder): Fix typo in comment.
+
+2004-02-04 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.md ("*la_64" + peepholes, "reload_indi"): Move
+ to before adddi3 insn patterns.
+ ("*la_31" + peepholes, "*la_31_and", "*la_31_and_cc", "force_la_31",
+ "reload_insi"): Move to before addsi3 insn patterns.
+
+2004-02-04 Mark Mitchell <mark@codesourcery.com>
+
+ * calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P
+ parameter. Use it instead of current_function_is_thunk.
+ * function.h (struct function): Update documentation for is_thunk.
+ * tree.h (CALL_FROM_THUNK_P): New macro.
+ * config/alpha/alpha.c (alpha_sa_mask): Do not check
+ no_new_pseudos when testing current_function_is_thunk.
+ * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi: Replace SETUP_INCOMING_VARARGS with
+ TARGET_SETUP_INCOMING_VARARGS.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * emit-rtl.c (gen_rtx): Remove.
+ * genattrtab.c: Don't mention gen_rtx in a comment.
+ * rtl.h: Remove the prototype for gen_rtx.
+ * doc/md.texi: Replace gen_rtx with gen_rtx_REG.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arc/arc.h, config/fr30/fr30.h
+ (SETUP_INCOMING_VARARGS): Remove the target-independent
+ comments.
+ * doc/tm.texi: Don't mention deprecated target macros.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/fr30/fr30.h (FUNCTION_VALUE): Remove the
+ target-independent comment.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/interface.texi, doc/tm.texi, doc/trouble.texi: Don't
+ mention deprecated target macros.
+
+2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config.gcc: Remove obsolete ports and configurations.
+ * config/linux-aout.h, config/netware.h,
+ config/t-linux-gnulibc1, config/d30v/abi,
+ config/d30v/d30v-protos.h, config/d30v/d30v.c,
+ config/d30v/d30v.h, config/d30v/d30v.md,
+ config/d30v/libgcc1.asm, config/d30v/t-d30v,
+ config/dsp16xx/dsp16xx-modes.def,
+ config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c,
+ config/dsp16xx/dsp16xx.h, config/dsp16xx/dsp16xx.md,
+ config/i370/README, config/i370/i370-c.c,
+ config/i370/i370-protos.h, config/i370/i370.c,
+ config/i370/i370.h, config/i370/i370.md, config/i370/linux.h,
+ config/i370/mvs.h, config/i370/oe.h, config/i370/t-i370,
+ config/i386/freebsd-aout.h, config/i386/linux-aout.h,
+ config/i386/moss.h, config/i386/netware.h,
+ config/i386/svr3.ifile, config/i386/svr3dbx.h,
+ config/i386/svr3gas.h, config/i386/svr3z.ifile,
+ config/i386/t-udk, config/i386/udk.h, config/i386/vsta.h,
+ config/i960/i960-c.c, config/i960/i960-coff.h,
+ config/i960/i960-modes.def, config/i960/i960-protos.h,
+ config/i960/i960.c, config/i960/i960.h, config/i960/i960.md,
+ config/i960/rtems.h, config/i960/t-960bare,
+ config/m68k/hp310.h, config/m68k/hp320.h,
+ config/m68k/hp320base.h, config/m68k/m68kv4.h,
+ config/m68k/netbsd.h, config/m68k/sgs.h, config/m68k/t-hp320:
+ Remove.
+ * doc/extend.texi, doc/install.texi, doc/invoke.texi,
+ doc/md.texi: Remove mentions of obsolete ports.
+
+2004-02-04 Jan Hubicka <jh@suse.cz>
+
+ * alias.c (find_base_term, get_addr): Do not dereference NULL
+ pointer when all VALUE's locations has been invalidated.
+ (rtx_equal_for_memref_p): Simplify checking of VALUEs.
+
+2004-02-03 Wolfgang Bangerth <bangerth@dealii.org>
+
+ * doc/invoke.texi (x86 options): Fix spelling/wording.
+
+2004-02-03 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to
+ put the original string in a comment.
+ * config/mips/mips-protos.h (mips_output_ascii): Add prefix argument.
+ * config/mips/mips.c (mips_output_ascii): Likewise.
+ * config/mips/mips.h (ASM_OUTPUT_ASCII): Adjust accordingly.
+
+2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (GIV_SORT_CRITERION): Poison.
+ * config/avr/avr.h (GIV_SORT_CRITERION): Remove.
+ * config/ip2k/ip2k.h (GIV_SORT_CRITERION): Likewise.
+
+2004-02-03 Roger Sayle <roger@eyesopen.com>
+
+ PR target/9348
+ * expr.c (expand_expr_real) <MULT_EXPR>: When performing widening
+ multiplies with a multiplication of the wrong signedness, its the
+ signedness of the multiplication that we've performed that needs to
+ be passed to expand_mult_highpart_adjust. Avoid emitting a nop-move
+ if expand_mult_highpart_adjust places the result in target.
+
+2004-02-03 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (const_desc_rtx_sym_eq): Compare symbol strings.
+
+2004-02-03 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config.gcc (sh[234]l): Use little endian fragments.
+
+2004-02-03 Paul Koning <pkoning@equallogic.com>
+
+ * config/pdp11/pdp11-modes.def: Add RESET_FLOAT_FORMAT calls.
+ * config/pdp11/pdp11-protos.h (legitimate_const_double_p): Add.
+ * config/pdp11/pdp11.c (encode_pdp11_f, decode_pdp11_f,
+ encode_pdp11_d, decode_pdp11_d): New functions to handle PDP11
+ floating point format.
+ (pdp11_f_format, pdp11_d_format): New real_format descriptors for
+ the above functions.
+ (output_move_quad): Output float values in correct target format.
+ (legitimate_const_double_p): New function.
+ * config/pdp11/pdp11.h: Fix typos.
+ (FLOAT_WORDS_BIG_ENDIAN): Add definition.
+ (TARGET_FLOAT_FORMAT): Ditto.
+ (pdp11_f_format, pdp11_d_format): Add external declarations.
+ (MAX_REGS_PER_ADDRESS): Corrected.
+ (LEGITIMATE_CONSTANT_P): Use legitimate_const_double_p().
+ (PRINT_OPERAND): Output float literals in target format.
+
+2004-02-03 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/13975
+ * tree.h (enum tree_index): Add TI_PUBLIC, TI_PROTECTED, and
+ TI_PRIVATE.
+ (access_public_node): Redefine.
+ (access_protected_node): Likewise.
+ (access_private_node): Likewise.
+ * tree.c (build_common_tree_nodes): Create access_public_node,
+ access_protected_node, and access_private_node.
+
+2004-02-03 Steve Ellcey <sje@cup.hp.com>
+
+ * config/ia64/ia64.h (MASK_INLINE_INT_DIV_LAT): Change value.
+ (MASK_INLINE_INT_DIV_THR): Ditto.
+ (MASK_INLINE_SQRT_LAT): Ditto.
+ (MASK_INLINE_SQRT_THR): Ditto.
+ (MASK_DWARF2_ASM): Ditto.
+ (MASK_EARLY_STOP_BITS): Ditto.
+
+2004-02-02 Paul Brook <paul@codesourcery.com>
+
+ Merge from csl-arm-branch.
+
+ 2004-01-30 Paul Brook <paul@codesourcery.com>
+
+ * aof.h (REGISTER_NAMES): Add vfp reg names
+ (ADDITIONAL_REGISTER_NAMES): Ditto.
+ * aout.h (REGISTER_NAMES): Ditto.
+ (ADDITIONAL_REGISTER_NAMES): Ditto.
+ * arm-protos.h: Update/Add Prototypes.
+ * arm.c (init_fp_table): Rename from init_fpa_table. Update users.
+ Only allow 0.0 for VFP.
+ (fp_consts_inited): Rename from fpa_consts_inited. Update users.
+ (values_fp): Rename from values_fpa. Update Users.
+ (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa.
+ Update users. Only check valid constants for this hardware.
+ (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users.
+ Only allow consts for FPA.
+ (arm_float_add_operand): Rename from fpa_add_operand. Update users.
+ Only allow consts for FPA.
+ (use_return_insn): Check for saved VFP regs.
+ (arm_legitimate_address_p): Handle VFP DFmode addressing.
+ (arm_legitimize_address): Ditto.
+ (arm_general_register_operand): New function.
+ (vfp_mem_operand): New function.
+ (vfp_compare_operand): New function.
+ (vfp_secondary_reload_class): New function.
+ (arm_float_compare_operand): New function.
+ (vfp_print_multi): New function.
+ (vfp_output_fstmx): New function.
+ (vfp_emit_fstm): New function.
+ (arm_output_epilogue): Output VPF reg restore code.
+ (arm_expand_prologue): Output VFP reg save code.
+ (arm_print_operand): Add 'P'.
+ (arm_hard_regno_mode_ok): Return modes for VFP regs.
+ (arm_regno_class): Return classes for VFP regs.
+ (arm_compute_initial_elimination_offset): Include space for VFP regs.
+ (arm_get_frame_size): Ditto.
+ * arm.h (FIXED_REGISTERS): Add VFP regs.
+ (CALL_USED_REGISTERS): Ditto.
+ (CONDITIONAL_REGISTER_USAGE): Enable VFP regs.
+ (FIRST_VFP_REGNUM): Define.
+ (LAST_VFP_REGNUM): Define.
+ (IS_VFP_REGNUM): Define.
+ (FIRST_PSEUDO_REGISTER): Include VFP regs.
+ (HARD_REGNO_NREGS): Handle VFP regs.
+ (REG_ALLOC_ORDER): Add VFP regs.
+ (enum reg_class): Add VFP_REGS.
+ (REG_CLASS_NAMES): Ditto.
+ (REG_CLASS_CONTENTS): Ditto.
+ (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs.
+ (REG_CLASS_FROM_LETTER): Add 'w'.
+ (EXTRA_CONSTRAINT_ARM): Add 'U'.
+ (EXTRA_MEMORY_CONSTRAINT): Define.
+ (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs.
+ (SECONDARY_INPUT_RELOAD_CLASS): Ditto.
+ (REGISTER_MOVE_COST): Ditto.
+ (PREDICATE_CODES): Add arm_general_register_operand,
+ arm_float_compare_operand and vfp_compare_operand.
+ * arm.md (various): Rename as above.
+ (divsf3): Enable when TARGET_VFP.
+ (divdf3): Ditto.
+ (movdfcc): Ditto.
+ (sqrtsf2): Ditto.
+ (sqrtdf2): Ditto.
+ (arm_movdi): Disable when TARGET_VFP.
+ (arm_movsi_insn): Ditto.
+ (movsi): Only split with general regs.
+ (cmpsf): Use arm_float_compare_operand.
+ (push_fp_multi): Restrict to TARGET_FPA.
+ (vfp.md): Include.
+ * vfp.md: New file.
+ * fpa.md (various): Rename as above.
+ * doc/md.texi: Document ARM w and U constraints.
+
+ 2004-01-15 Paul Brook <paul@codesourcery.com>
+
+ * config.gcc: Add with_fpu. Allow with-float=softfp.
+ * config/arm/arm.c (arm_override_options): Rename *-s to *s.
+ Break out of loop when we find a float-abi. Fix typo.
+ * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu".
+ Set -mfloat-abi=.
+ * doc/install.texi: Document --with-fpu.
+
+ 2003-01-14 Paul Brook <paul@codesourcery.com>
+
+ * config.gcc (with_arch): Add armv6.
+ * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s.
+ * config/arm/arm.c (arm_overrride_options): Ditto.
+
+ 2004-01-08 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT.
+ (FL_ARCH6): Renamed from FL_ARCH6J.
+ (arm_arch3m): Renamed from arm_fast_multiply.
+ (arm_arch6): Renamed from arm_arch6j.
+ * arm.h: Update all uses of above.
+ * arm-cores.def: Likewise.
+ * arm.md: Likewise.
+
+ * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j,
+ not arm6j. Add entry for arch armv6.
+
+ 2004-01-07 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (arm_emit_extendsi): Delete.
+ * arm-protos.h (arm_emit_extendsi): Delete.
+ * arm.md (zero_extendhisi2): Also handle zero-extension of
+ non-subregs.
+ (zero_extendqisi2, extendhisi2, extendqisi2): Likewise.
+ (thumb_zero_extendhisi2): Only match if not v6.
+ (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2)
+ (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi)
+ (thumb_extendqisi2): Likewise.
+ (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns.
+ (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns.
+ (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns.
+ (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns.
+ (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete.
+ (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete.
+ (arm_zero_extendhisi2addsi): Remove subreg. Add attributes.
+ (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise.
+ (arm_extendqisi2addsi): Likewise.
+
+ 2003-12-31 Mark Mitchell <mark@codesourcery.com>
+
+ Revert this change:
+ * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG
+ + REG addressing modes.
+
+ * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG
+ + REG addressing modes.
+
+ 2003-12-30 Mark Mitchell <mark@codesourcery.com>
+
+ * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept
+ CONSTANT_P_RTX.
+
+ 2003-30-12 Paul Brook <paul@codesourcery.com>
+
+ * longlong.h: protect arm inlines with !defined (__thumb__)
+
+ 2003-30-12 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__.
+
+ 2003-12-30 Nathan Sidwell <nathan@codesourcery.com>
+
+ * builtins.c (expand_builtin_apply_args_1): Fix typo in previous
+ change.
+
+ 2003-12-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * builtins.c (expand_builtin_apply_args_1): Add pretend args size
+ to the virtual incoming args pointer for downward stacks.
+
+ 2003-12-29 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm-cores.def: Add cost function.
+ * config/arm/arm.c (arm_*_rtx_costs): New functions.
+ (arm_rtx_costs): Remove
+ (struct processors): Add rtx_costs field.
+ (all_cores, all_architectures): Ditto.
+ (arm_override_options): Set targetm.rtx_costs.
+ (thumb_rtx_costs): New function.
+ (arm_rtx_costs_1): Remove cases handled elsewhere.
+ * config/arm/arm.h (processor_type): Add COSTS parameter.
+
+ 2003-12-29 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/arm/arm.md (generic_sched): arm926 has its own scheduler.
+ (arm926ejs.md): Include it.
+ * config/arm/arm926ejs.md: New pipeline description.
+
+ 2003-12-24 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_arch6j): New variable.
+ (arm_override_options): Set it.
+ (arm_emit_extendsi): New function.
+ * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype.
+ * config/arm/arm.h (arm_arch6j): Declare.
+ * config/arm/arm.md: Add sign/zero extend insns.
+
+ 2003-12-23 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (all_architectures): Add armv6.
+ * doc/invoke.texi: Document it.
+
+ 2003-12-19 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify
+ insn patterns to match.
+ * config/arm/arm-generic.md: Ditto.
+ * config/arm/cirrus.md: Ditto.
+ * config/arm/fpa.md: Ditto.
+ * config/amm/iwmmxt.md: Ditto.
+ * config/arm/arm1026ejs.md: Ditto.
+ * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses
+ for 11_loadb.
+
+ 2003-12-18 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare.
+ * config/arm/arm.c (arm_adjust_cost): Check shift cost for
+ TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG.
+ (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep,
+ arm_no_early_mul_dep): Correctly deal with conditional execution,
+ parallels and single shift operations.
+ (arm_no_early_alu_shift_value_dep): Define.
+ * arm.md (attr type): Replace 'normal' with 'alu',
+ 'alu_shift' and 'alu_shift_reg'.
+ (attr core_cycles): Adjust.
+ (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3,
+ *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0,
+ *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp,
+ *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0,
+ *arith_shiftsi_compare0_scratch, *sub_shiftsi,
+ *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch,
+ *if_shift_move, *if_move_shift, *if_shift_shift): Set type
+ attribute appropriately.
+ * config/arm/arm1026ejs.md (alu_op): Adjust.
+ (alu_shift_op, alu_shift_reg_op): New.
+ * config/arm/arm1136.md: Add better bypasses for early
+ registers. Remove load[234] and store[234] bypasses.
+ (11_alu_op): Adjust.
+ (11_alu_shift_op, 11_alu_shift_reg_op): New.
+
+ 2003-12-15 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/arm/arm-protos.h (arm_no_early_store_addr_dep,
+ arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare.
+ * config/arm/arm.c (arm_no_early_store_addr_dep,
+ arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define.
+ * config/arm/arm1026ejs.md: Add load-store bypass.
+ * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles.
+ Add bypasses between instructions.
+
+ 2003-12-10 Paul Brook <paul@codesourcery.com>
+
+ * config/arm/arm.c (arm_fpu_model): New variable.
+ (arm_fload_abi): New variable.
+ (target_fpe_name): Rename from target_fp_name.
+ (target_fpu_name): New variable.
+ (arm_is_cirrus): Remove.
+ (fpu_desc): New struct.
+ (all_fpus): Define.
+ (pf_model_for_fpu): Define.
+ (all_loat_abis): Define.
+ (arm_override_options): Set fp arch flags based on -mfpu=
+ and -float-abi=.
+ (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM.
+ (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM.
+ (*): Use new TARGET_* flags.
+ * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove.
+ (TARGET_HARD_FLOAT): No longer implies TARGET_FPA.
+ (TARGET_SOFT_FLOAT): Ditto.
+ (TARGET_SOFT_FLOAT_ABI): New.
+ (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies
+ TARGET_HARD_FLOAT.
+ (TARGET_VFP): No longer implies TARGET_HARD_FLOAT.
+ (TARGET_OPTIONS): Add -mfpu=.
+ (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM.
+ (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM.
+ (arm_pf_model): Define.
+ (arm_float_abi_type): Define.
+ (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE
+ * config/arm/arm.md: Use new TARGET_* flags.
+ * config/arm/cirrus.md: Ditto.
+ * config/arm/fpa.md: Ditto.
+ * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=.
+ * config/arm/semi.h (ASM_SPEC): Ditto.
+ * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp.
+ (FPUTYPE_DEFAULT): Set to VFP.
+ * doc/invoke.texi: Document -mfpu= and -mfloat-abi=.
+
+ 2003-11-22 Phil Edwards <phil@codesourcery.com>
+
+ PR target/12476
+ * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use
+ 'bx' instead of 'b' to avoid branch range restrictions. Output
+ the thunk immediately before the thunked-to function.
+ * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit
+ .thumb_func if a thunk is being generated. Emit .code 16 along
+ with .thumb_func if a thunk is not being generated.
+
+ 2003-11-15 Nicolas Pitre <nico@cam.org>
+
+ * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3,
+ arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns.
+ * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3.
+ (lshrdi3_iwmmxt): Renamed from lshrdi3.
+ * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly.
+
+ 2003-11-12 Steve Woodford <scw@wasabisystems.com>
+ Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new
+ code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__).
+
+ 2003-11-05 Phil Edwards <phil@codesourcery.com>
+
+ * config/arm/arm.md (insn): Add new V6 instruction names.
+ (generic_sched): New attr.
+ * config/arm/arm-generic.md: Use generic_sched here.
+ * config/arm/arm1026ejs.md: Do not model fetch/issue/decode
+ stages of pipeline. Adjust latency counts accordingly.
+ * config/arm/arm1136jfs.md: New file.
+
+ 2003-10-28 Mark Mitchell <mark@codesourcery.com>
+
+ * config/arm/arm.h (processor_type): New enumeration type.
+ (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S,
+ ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores.
+ (CPP_CPU_ARCH_SPEC): Likewise.
+ * config/arm/arm.c (arm_tune): New variable.
+ (all_cores): Use cores.def.
+ (all_architectures): Add representative processor.
+ (arm_override_options): Restructure way in which tuning
+ information is deduced.
+ * arm.md: Update "insn" and "type" attributes throughout.
+ (insn): New attribute.
+ (type): Compute "mult" from "insn" attribute. Add load2,
+ load3, load4 alternatives.
+ (arm automaton): Move to arm-generic.md.
+ * config/arm/arm-cores.def: New file.
+ * config/arm/arm-generic.md: Likewise.
+ * config/arm/arm1026ejs.md: Likewise.
+
+2004-02-03 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (SPARC options): Remove -mflat and
+ all -mxxx (xxx:chip) options.
+ * config/sparc/aout.h (DBX_REGISTER_NUMBER): Delete.
+ * config/sparc/litecoff.h (DBX_REGISTER_NUMBER): Likewise.
+ * config/sparc/netbsd-elf.h (DBX_REGISTER_NUMBER): Likewise.
+ * config/sparc/sol2.h (DBX_REGISTER_NUMBER): Likewise.
+ * config/sparc/sparc-protos.h: Delete sparc_flat_* prototypes.
+ * config/sparc/sparc.c: Likewise.
+ (sparc_output_function_prologue): Remove TARGET_FLAT handling.
+ (sparc_nonflat_function_prologue): Rename into sparc_function_prologue.
+ (sparc_output_function_epilogue): Remove TARGET_FLAT handling.
+ (sparc_nonflat_function_epilogue): Rename into sparc_function_epilogue.
+ (struct sparc_frame_info, current_frame_info, zero_frame_info): Delete.
+ (sparc_flat_must_save_register_p): Likewise.
+ (sparc_flat_compute_frame_size): Likewise.
+ (sparc_flat_save_restore): Likewise.
+ (sparc_flat_function_prologue): Likewise.
+ (sparc_flat_function_epilogue): Likewise.
+ (sparc_flat_epilogue_delay_slots): Likewise.
+ (sparc_flat_eligible_for_epilogue_delay): Likewise.
+ (sparc_function_ok_for_sibcall): Remove TARGET_FLAT handling.
+ * config/sparc/sparc.h (MASK_FLAT, TARGET_FLAT): Delete.
+ (TARGET_SWITCHES): Remove -mflat and all -mxxx (xxx:chip) options.
+ (SPARC_INCOMING_INT_ARG_FIRST): Remove TARGET_FLAT handling.
+ (CONDITIONAL_REGISTER_USAGE): Likewise.
+ (FRAME_POINTER_REQUIRED): Likewise.
+ (INITIAL_ELIMINATION_OFFSET): Likewise.
+ (BASE_RETURN_VALUE_REG): Likewise.
+ (BASE_OUTGOING_VALUE_REG): Likewise.
+ (BASE_PASSING_ARG_REG): Likewise.
+ (BASE_INCOMING_ARG_REG): Likewise.
+ (INCOMING_REGNO): Likewise.
+ (OUTGOING_REGNO): Likewise.
+ (LOCAL_REGNO): Likewise.
+ (DELAY_SLOTS_FOR_EPILOGUE): Likewise.
+ (ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.
+ (EPILOGUE_USES): Likewise.
+ * config/sparc/sparc.md ("isa" attribute): Change "v6" into "v7".
+ ("flat" attribute): Delete.
+ (do_builtin_setjmp_setup): Remove TARGET_FLAT and "flat" attribute
+ handling.
+ (call followed by jump define_peephole's): Delete.
+ (exception_receiver): Likewise.
+ (builtin_setjmp_receiver): Likewise.
+ * config/sparc/t-sparclite (MULTILIB_OPTIONS): Remove -mflat.
+
+2004-02-03 Paolo Bonzini <bonzini@gnu.org>
+
+ PR c/11658
+ PR c/13994
+ * Makefile.in (c-parse.o, c-convert.o, c-typeck.o): Depend
+ on langhooks.h.
+ * objc/Make-lang.in (objc-parse.o): Depend on langhooks.h.
+ * c-parse.in, c-convert.c, c-typeck.c, objc/objc-act.c:
+ Include langhooks.h. Replace c_common_truthvalue_conversion
+ with the truthvalue_conversion language hook throughout.
+ (expr_no_commas): Call default_conversion before save_expr
+ for the first term of the production 'x ? : y'.
+ * c-common.c (c_common_truthvalue_conversion): Remove
+ obsolete block. Invoke recursively the hook instead
+ of this function.
+ * c-convert.c (convert): handle ERROR_MARK_NODE.
+ * c-typeck.c (build_binary_op): handle ERROR_MARK_NODE
+ returned by the truthvalue_conversion language hook.
+ * c-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use
+ c_objc_common_truthvalue_conversion.
+ * c-objc-common.c (c_objc_common_truthvalue_conversion):
+ New function.
+ * c-tree.h (c_objc_common_truthvalue_conversion): Declare it.
+ * objc/objc-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use
+ c_objc_common_truthvalue_conversion.
+
+2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/c4x/c4x.h (FUNCTION_VALUE): Use gen_rtx_REG instead
+ of gen_rtx.
+ (LIBCALL_VALUE): Likewise.
+ * config/ip2k/ip2k.c (mdr_try_propagate_clr_sequence): Use
+ gen_rtx_CC0 instead of gen_rtx.
+ * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use
+ gen_rtx_fmt_e and gen_rtx_fmt_ee instead of gen_rtx.
+ (m68hc11_expand_compare): Use gen_rtx_fmt_ee instead of
+ gen_rtx.
+ (m68hc11_emit_logical): Likewise.
+
+2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.c, config/arm/arm.c, config/c4x/c4x.c,
+ config/fr30/fr30.md, config/frv/frv.c, config/frv/frv.md,
+ config/h8300/h8300.c, config/ia64/ia64.c, config/ip2k/ip2k.md,
+ config/m32r/m32r.md, config/m68hc11/m68hc11.c,
+ config/mips/mips.md, config/mmix/mmix.c,
+ config/mn10300/mn10300.c, config/mn10300/mn10300.md,
+ config/ns32k/ns32k.c, config/pa/pa.md, config/pdp11/pdp11.c,
+ config/rs6000/altivec.md, config/s390/s390.c,
+ config/s390/s390.h, config/s390/s390.md, config/sh/sh.c,
+ config/sh/sh.h, config/sh/sh.md, config/stormy16/stormy16.c:
+ Use const0_rtx instead of GEN_INT (0). Do the same for other
+ constants that are readily available.
+
+2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doloop.c, optabs.c, regmove.c, sched-deps.c,
+ config/i386/i386.c, config/i386/i386.md: Use const0_rtx
+ instead of GEN_INT (0). Do the same for other constants that
+ are readily available.
+
+2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * combine.c (simplify_set): Use gen_rtx_fmt_e instead of
+ gen_rtx.
+ * emit-rtl.c (init_emit_once): Use gen_rtx_PC and gen_rtx_CC0
+ instead of gen_rtx.
+ * reload1.c (init_elim_table): Use gen_rtx_fmt_e instead of
+ gen_rtx.
+ * config/ns32k/ns32k.md (udivmodhi4): Use gen_rtx_IOR and
+ gen_rtx_ASHIFT instead of gen_rtx.
+ (udivmodqi4): Likewise.
+
+2004-02-02 Richard Henderson <rth@redhat.com>
+
+ PR target/13789
+ * expr.c (store_expr): Use force_operand before emit_move_insn.
+
+2004-02-02 Jeff Law <law@redhat.com>
+ Roger Sayle <roger@eyesopen.com>
+
+ * tree.c (commutative_tree_code, associative_tree_code): New
+ functions.
+ (iterative_hash_expr): Use commutative_tree_code.
+ * tree.h (commutative_tree_code, associative_tree_code): Declare.
+ * fold-const.c (operand_equal_p): Use commutative_tree_code
+ rather than inlining the commutativity check.
+ (fold): Likewise.
+
+2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Poison.
+ * config/frv/frv-protos.h: Remove the prototype for
+ frv_function_arg_keep_as_reference.
+ * config/frv/frv.c (frv_function_arg_keep_as_reference):
+ Remove.
+ * config/frv/frv.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Likewise.
+ * config/stormy16/stormy16.h: Remove the commented-out
+ definition of FUNCTION_ARG_KEEP_AS_REFERENCE.
+
+2004-02-03 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/13914
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Use ap
+ for retaddr_column.
+
+2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genemit.c (gen_exp): Generate gen_rtx_fmt_e* instead of
+ gen_rtx.
+
+2004-02-02 Eric Christopher <echristo@redhat.com>
+ Zack Weinberg <zack@codesourcery.com>
+
+ * c-opts.c (c_common_handle_option): Add -finput-charset.
+ * c.opt: Ditto.
+ * cppcharset.c (one_iso88591_to_utf8): Remove.
+ (convert_iso88591_utf8): Ditto.
+ (conversion_tab): Remove 8859-1 converter.
+ (_cpp_input_to_utf8): Remove.
+ (_cpp_init_iconv_buffer): Ditto.
+ (_cpp_close_iconv_buffer): Ditto.
+ (_cpp_convert_input): New function.
+ (_cpp_default_encoding): Ditto.
+ * cpphash.h: Add/remove prototypes for above.
+ * cppfiles.c (read_file_guts): Use _cpp_convert_input.
+ * cppinit.c (cpp_create_reader): Use _cpp_default_encoding
+ for narrow execution and input character sets.
+ * cpplib.c (cpp_push_buffer): Delete uses of removed functions.
+ * doc/cppopts.texi: Document -finput-charset.
+
+2004-02-02 David Edelsohn <edelsohn@gnu.org>
+
+ * rtlanal.c (refers_to_regno_p): Test regno, not inner_regno,
+ against FIRST_PSEUDO_REGISTER.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (SPARC options): Further improve.
+
+2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arm/arm.md, config/c4x/c4x.md, config/cris/cris.md,
+ config/h8300/h8300.c, config/ip2k/ip2k.md,
+ config/iq2000/iq2000.c, config/mips/mips.c,
+ config/rs6000/rs6000.c, config/rs6000/rs6000.md,
+ config/sh/sh.c, config/sh/sh.md, config/stormy16/stormy16.c,
+ config/v850/v850.md: Fix indentation.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_slotno): Align TImode
+ arguments on a 16-byte boundary in the parameter array if ARCH64.
+ Split handling of TFmode.
+
+2004-02-02 Paolo Bonzini <bonzini@gnu.org>
+
+ * rtlanal.c (reg_overlap_mentioned_p) [!ENABLE_CHECKING]:
+ Don't test CONSTANT_P (x).
+ (reg_overlap_mentioned_p): Merge check for STRICT_LOWPART,
+ ZERO_EXTRACT, SIGN_EXTRACT with the switch statement.
+ Fix misindentation.
+
+2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (SPARC options): Document that -mflat is deprecated.
+
+2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arc/arc.md, config/arm/arm.c, config/arm/arm.md,
+ config/c4x/c4x.c, config/c4x/c4x.md, config/cris/cris.md,
+ config/frv/frv.c, config/h8300/h8300.c, config/ip2k/ip2k.md,
+ config/iq2000/iq2000.c, config/m32r/m32r.c,
+ config/mcore/mcore.c, config/mips/mips.c, config/mmix/mmix.md,
+ config/mn10300/mn10300.c, config/rs6000/rs6000.c,
+ config/rs6000/rs6000.md, config/sh/sh.c, config/sh/sh.md,
+ config/stormy16/stormy16.c, config/v850/v850.md,
+ config/xtensa/xtensa.c: Replace gen_rtx with gen_rtx_fmt_e*.
+
+2004-02-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mcore/mcore.c (block_move_sequence): Replace
+ gen_rtx_CONST_INT with GEN_INT.
+
+2004-02-02 Jan Hubicka <jh@suse.cz>
+
+ * alias.c (record_set): Use hard_regno_nregs.
+ * bt-load.c (find_btr_reference, note_btr_set): Likewise.
+ * builtins.c (apply_args_size): Likewise.
+ * caller-save.c (setup_save_areas, save_call_clobbered_regs,
+ mark_set_regs, add_stored_regs, mark_referenced_regs,
+ insert_restore, insert_save, insert_one_insn): Likewise.
+ * cfgcleanup.c: Include regs.h
+ (mark_effect, mentions_nonequal_regs): Likewise.
+ * cfgrtl.c (mark_killed_regs): Likewise
+ * combine.c (update_table_tick, record_value_for_reg,
+ record_dead_and_set_regs, get_last_value_validate, use_crosses_set_p,
+ reg_dead_at_p_1, reg_dead_at_p, mark_used_regs_combine, move_deaths,
+ reg_bitfield_target_p, distribute_notes): Likewise.
+ * cse.c (mention_regs, insert, invalidate, invalidate_for_call,
+ exp_equiv_p, cse_insn): Likewise.
+ * cselib.c (cselib_lookup): Likewise.
+ (cselib_invalidate_regno, cselib_record_set): Likewise.
+ * df.c (df_ref_record): Likewise.
+ * dwarf2out.c (reg_loc_descriptor, multiple_reg_loc_descriptor):
+ Likewise.
+ * flow.c (mark_reg, insn_dead_p, mark_set_1, mark_used_reg,
+ count_or_remove_death_notes_bb): Likewise.
+ * function.c (aggregate_value_p, keep_stack_depressed): Likewise.
+ * gloval.c (global_alloc, find_reg, mark_reg_store, mark_reg_conflicts,
+ mark_reg_death, set_preference, reg_becomes_live, reg_dies): Likewise.
+ * integrate.c (mark_stores): Likewise.
+ * jump.c (delete_prior_computation): Likewise.
+ * lcm.c (reg_dies, reg_becomes_live): Likewise.
+ * local-alloc.c (combine_regs, find_free_reg, post_mark_life): Likewise.
+ * loop.c (LOOP_REGNO_NREGS): Likewise.
+ * postreload.c (reload_combine, reload_combine_note_store,
+ reload_combine_note_use, reload_cse_move2add, move2add_note_store): Likewise.
+ * ra-colorize.c (combine, color_usable_p, get_free_reg,
+ calculate_dont_begin, calculate_dont_begin, colorize_one_web,
+ try_recolor_web, insert_coalesced_conflicts, check_colors,
+ break_precolored_alias): Likewise.
+ * ra-debug.c: Include regs.h
+ (ra_print_rtx_object): Likewise.
+ * ra-rewrite (choose_spill_colors): Likewise.
+ (spill_same_color_p, update_spill_colors, spill_is_free): Likewise.
+ * ra.c (init_ra): Likewise.
+ * recog.c (reg_fits_class_p, peep2_reg_dead_p,
+ peep2_find_free_register): Likewise.
+ * reg-stack.c (subst_stack_regs_pat, convert_regs_exit): Likewise.
+ * regclass.c (hard_regno_nregs): New array.
+ (init_reg_modes_once): Initialize it.
+ (choose_hard_reg_mode): Use it.
+ (record_reg_classes): Likewise.
+ * regmove.c (mark_flags_life_zones): Likewise.
+ * regrename.c (note_sets, clear_dead_regs, regrename_optimize,
+ scan_rtx_reg, dump_def_use_chain, kill_value, set_value_regno,
+ copy_value, maybe_mode_change, find_oldest_value_reg,
+ copyprop_hardreg_forward_1):
+ * regs.h (hard_regno_nregs): Declare.
+ * realod.c (reload_inner_reg_of_subreg): Use it.
+ (push_reload, combine_reloads, find_dummy_reload,
+ hard_reg_set_here_p, operands_match_p, decompose, find_reloads,
+ refers_to_regno_for_reload_p, find_equiv_reg, regno_clobbered_p,
+ reload_adjust_reg_for_mode): Likewise.
+ * reload1.c (compute_use_by_pseudos, count_pseudo,
+ count_spilled_pseudo, find_reg, find_reload_regs, mark_home_live,
+ spill_hard_reg, forget_old_reloads_1, mark_reload_reg_in_use,
+ clear_reload_reg_in_use, reload_reg_free_for_value_p, free_for_value_p
+ allocate_reload_reg, choose_reload_regs, emit_reload_insns,
+ delete_output_reload): Likewise.
+ * resource.c (update_live_status, mark_referenced_resources,
+ mark_set_resources, mark_target_live_regs): Likewise.
+ * rtlanal.c: Include regs.h
+ (refers_to_regno_p, reg_overlap_mentioned_p, dead_or_set_p,
+ dead_or_set_regno_p, find_regno_note, find_reg_fusage,
+ subreg_regno_offset, subreg_offset_representable_p,
+ hoist_test_store): Likewise.
+ * sched-deps.c (sched_analyze_1, sched_analyze_2): Likewise.
+ * sched-rgn.c (check_live_1, update_live_1): Likewise.
+ * stmt.c: Include regs.h
+ (decl_conflicts_with_clobbers_p): Likewise.
+ * varasm.c (make_decl_rtl): Likewise.
+ * Makefile.in (cfgcleanup.o, rtlanal.o, ra-debug.o): Add regs.h dependnecy.
+
+2004-02-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arm/arm.c, config/arm/arm.h, config/arm/arm.md,
+ config/arm/linux-gas.h, config/arm/netbsd-elf.h,
+ config/arm/netbsd.h, config/arm/pe.c, config/avr/avr.c,
+ config/avr/avr.h, config/avr/avr.md, config/c4x/c4x.h,
+ config/cris/cris.h, config/fr30/fr30.h, config/frv/frv.c,
+ config/frv/frv.h, config/ip2k/ip2k.c, config/iq2000/iq2000.c,
+ config/iq2000/iq2000.h, config/m32r/m32r.c,
+ config/m68hc11/m68hc11.c, config/m68hc11/m68hc11.h,
+ config/m68hc11/m68hc11.md, config/m68k/m68k.md,
+ config/mcore/mcore.c, config/mcore/mcore.h,
+ config/mcore/mcore.md, config/mips/mips.c,
+ config/ns32k/ns32k.h, config/ns32k/ns32k.md,
+ config/rs6000/rs6000.c, config/s390/s390.c,
+ config/s390/s390.md, config/sparc/sparc.c, config/v850/v850.c,
+ config/xtensa/xtensa.h, config/xtensa/xtensa.md: Replace
+ "gen_rtx (FOO, " with "gen_rtx_FOO (".
+
+2004-02-01 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (two peephole2's): New.
+
+2004-02-01 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2-bi.h: Handle TARGET_CPU_ultrasparc3.
+ (CPP_CPU_SPEC): Handle -mcpu=ultrasparc3.
+ (ASM_CPU_SPEC): Likewise
+ * config/sparc/sol2.h: Handle TARGET_CPU_ultrasparc3.
+ (ASM_CPU_SPEC): Remove -mcpu=v8plus. Handle -mcpu=ultrasparc3.
+
+2004-02-01 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_pow): If flag_unsafe_math_optimizations
+ isn't set, don't call expand_builtin_mathfn_2 to use the pow optab.
+ (expand_builtin): Always call expand_builtin_pow.
+
+2004-02-01 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.def (BUILT_IN_SIGNBIT, BUILT_IN_SIGNBITF,
+ BUILT_IN_SIGNBITL): New GCC builtins.
+ * builtins.c (expand_builtin_signbit): New function to RTL expand
+ calls to signbit, signbitf and signbitl as inline intrinsics.
+ (expand_builtin): Call expand_builtin_signbit for BUILT_IN_SIGNBIT*.
+ (fold_builtin_signbit): New function to perform constant folding
+ of signbit, signbitf and signbitl.
+ (fold_builtin): Call fold_builtin_signbit for BUILT_IN_SIGNBIT*.
+
+ * doc/extend.texi: Document new signbit{,f,l} builtins.
+
+2004-02-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (adddi3_internal_2): Remove superfluous %s.
+
+2004-02-01 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.h (PREDICATE_CODES): Remove entries for
+ "mips_const_double_ok" and "simple_memory_operand", which were
+ removed from the MIPS port with the mips-3_4-rewrite branch merge.
+ * config/mips/mips.c (mips16_lay_out_constants): Update comment
+ for removal of simple_memory_operand.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/c4x/c4x.md: Use GEN_INT instead of
+ gen_rtx (CONST_INT, ...).
+
+2004-01-31 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (output_constant_pool): Don't zap the pool.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genrecog.c (decision_type): Add DT_const_int.
+ (write_cond) [DT_const_int]: Print a comparison against small
+ constant.
+ (write_node): Simplify comparisons against small constants
+ before printing tests.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.c (m32r_load_pic_register): Use GEN_INT
+ instead of gen_rtx_CONST_INT.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/xtensa/xtensa.h (DYNAMIC_CHAIN_ADDRESS): Use GEN_INT
+ instead of gen_rtx_CONST_INT.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * target-def.h (TARGET_STRICT_ARGUMENT_NAMING): Define as
+ hook_bool_CUMULATIVE_ARGS_false.
+ * targhooks.c (default_strict_argument_naming): Rename to
+ hook_bool_CUMULATIVE_ARGS_false.
+ * targhooks.h: Update the prototype for
+ default_strict_argument_naming.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/sh/sh.c: Replace "gen_rtx (FOO, " with "gen_rtx_FOO (".
+ * config/sh/sh.h: Likewise.
+ * config/sh/sh.md: Likewise.
+
+2004-01-31 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * doc/invoke.texi (SPARC options): Restructure and update.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (PROMOTE_FUNCTION_ARGS, STRUCT_VALUE_INCOMING, and
+ STRICT_ARGUMENT_NAMING): Poison.
+ * target-def.h (TARGET_PROMOTE_FUNCTION_ARGS): Define as
+ hook_bool_tree_false.
+ * targhooks.c (default_promote_function_args): Remove.
+ (default_struct_value_rtx): Don't use STRUCT_VALUE_INCOMING.
+ Don't check incoming.
+ (default_strict_argument_naming): Don't use
+ STRICT_ARGUMENT_NAMING.
+ * targhooks.h: Remove the prototype for
+ default_promote_function_args.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386-protos.h: Remove the prototype for
+ ix86_setup_incoming_varargs.
+ * config/i386/i386.c (TARGET_SETUP_INCOMING_VARARGS): New.
+ (ix86_setup_incoming_varargs): Make it static.
+ * config/i386/i386.h (SETUP_INCOMING_VARARGS): Remove.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alloc-pool.c: Fix comment typos.
+ * builtin-types.def: Likewise.
+ * builtins.def: Likewise.
+ * c-pretty-print.c: Likewise.
+ * df.h: Likewise.
+ * reload1.c: Likewise.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Follow spelling conventions.
+ * doc/tm.texi: Likewise.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/install.texi: Fix typos.
+ * doc/invoke.texi: Likewise.
+
+2004-01-31 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_decompose_address): Do not treat virtual
+ registers as pointers.
+ * config/s390/s390.md ("*la_31" second peephole2): Fix incorrect mode.
+
+2004-01-31 Paolo Bonzini <bonzini@gnu.org>
+
+ * combine.c (cse_main): Set gen_lowpart to gen_lowpart_for_combine
+ and restore it to gen_lowpart_general on exit.
+ (gen_lowpart_for_combine): Adjust all callers to go through
+ gen_lowpart.
+ * cse.c (cse_main): Set gen_lowpart to gen_lowpart_if_possible
+ and restore it to gen_lowpart_general on exit.
+ (gen_lowpart_if_possible): Adjust all callers to go through
+ gen_lowpart.
+ * emit-rtl.c (gen_lowpart_general): New name of gen_lowpart.
+ (gen_lowpart): Declare as pointer to function, initialized to
+ gen_lowpart_general.
+ * rtl.h (gen_lowpart): Declare as pointer to function.
+
+2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
+
+ * bt-load.c: Replace "gen_rtx (FOO, " with "gen_rtx_FOO (".
+ * calls.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * function.c: Likewise.
+ * reload1.c: Likewise.
+ * config/i386/cygming.h: Likewise.
+ * config/i386/i386.c: Likewise.
+ * config/i386/winnt.c: Likewise.
+
+2004-01-30 Dara Hazeghi <dhazeghi@yahoo.com>
+
+ PR bootstrap/9249
+ * doc/install.texi: document --enable-__cxa_atexit option.
+ * configure.ac: Disable __cxa_atexit if not supported.
+ * configure: Regenerate.
+
+2004-01-30 Daniel Berlin <dberlin@dberlin.org>
+
+ * ggc-zone.c (ggc_free): New function.
+
+2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ alloc-pool.c, c-lex.c, c-pragma.h, c-semantics.c, cfghooks.c,
+ cfghooks.h, cfglayout.c, cfgloopmanip.c, debug.c, debug.h,
+ flow.c, genextract.c, ggc-common.c, ggc-page.c, ggc.h,
+ ifcvt.c, jump.c, loop-unswitch.c, timevar.c, timevar.def,
+ tree-optimize.c, vmsdbgout.c, config/fp-bit.c,
+ config/alpha/alpha.c, config/alpha/alpha.h,
+ config/alpha/alpha.md, config/alpha/unicosmk.h,
+ config/alpha/vms.h, config/arm/linux-elf.h, config/avr/avr.c,
+ config/c4x/c4x-protos.h, config/c4x/c4x.md,
+ config/d30v/d30v.h, config/frv/frv.md, config/frv/frvbegin.c,
+ config/frv/frvend.c, config/i386/cygming.h,
+ config/i386/djgpp.h, config/i386/emmintrin.h,
+ config/i386/gthr-win32.c, config/i386/i386-interix.h,
+ config/i386/i386-protos.h, config/i386/openbsd.h,
+ config/i386/winnt.c, config/i386/xm-mingw32.h,
+ config/i386/xmmintrin.h, config/ia64/ia64.md,
+ config/iq2000/iq2000.md, config/m32r/m32r.md,
+ config/m68k/m68k.md, config/mcore/mcore-elf.h,
+ config/mcore/mcore.md, config/mips/elf.h, config/mips/elf64.h,
+ config/mips/iris5gas.h, config/mips/iris6.h,
+ config/mips/iris6gas.h, config/mips/linux.h,
+ config/mips/mips.md, config/mips/netbsd.h,
+ config/mips/openbsd.h, config/mips/windiss.h,
+ config/pa/fptr.c, config/rs6000/aix.h,
+ config/rs6000/altivec.h, config/rs6000/darwin.h,
+ config/rs6000/xcoff.h, config/s390/s390-protos.h,
+ config/s390/s390.c, config/s390/s390.h, config/s390/s390.md,
+ config/sh/netbsd-elf.h, config/sh/sh.h, config/sh/vxworks.h,
+ config/sparc/sol2.h: Update copyright.
+
+2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (abs_docdir, abs_srcdir): Define.
+ (doc/%.dvi, doc/gccinstall.dvi): Use $(abs_docdir).
+
+2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genconfig.c (main): Have CC0_P check its operand even on a
+ target without cc0.
+
+2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.c: Remove mentions of deprecates macros
+ in comments, remove some target-independent comments about target
+ macros, and/or add minimal function comments for target hook
+ implementations.
+ * config/avr/avr.c: Likewise.
+ * config/ia64/ia64.h: Likewise.
+ * config/ip2k/ip2k.c: Likewise.
+ * config/iq2000/iq2000.c: Likewise.
+ * config/m32r/m32r.h: Likewise.
+ * config/m68hc11/m68hc11.c: Likewise.
+ * config/mcore/mcore.c: Likewise.
+ * config/mmix/mmix.c: Likewise.
+ * config/mn10300/mn10300.c: Likewise.
+ * config/pa/pa.c: Likewise.
+ * config/pdp11/pdp11.c: Likewise.
+ * config/rs6000/rs6000.h: Likewise.
+ * config/sh/sh.c: Likewise.
+ * config/sh/sh.h: Likewise.
+ * config/sparc/sparc.c: Likewise.
+ * config/sparc/sparc.h: Likewise.
+ * config/stormy16/stormy16.c: Likewise.
+ * config/xtensa/xtensa.c: Likewise.
+
+2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR optimization/12147
+ * reload1.c (reload_reg_free_p): RELOAD_OTHER conflicts with
+ RELOAD_FOR_OPADDR_ADDR.
+ (reload_reg_reaches_end_p): RELOAD_FOR_OTHER_ADDRESS register
+ might be reused as RELOAD_FOR_OPADDR_ADDR register.
+
+2004-01-30 Jan Hubicka <jh@suse.cz>
+
+ * reload.c (get_secondary_mem): Fix updating of
+ secondary_memlocs_elim_used.
+
+2004-01-30 Richard Henderson <rth@redhat.com>
+
+ * varasm.c (struct rtx_const, struct pool_constant): Remove.
+ (MAX_RTX_HASH_TABLE): Remove.
+ (const_rtx_hash_table, const_rtx_sym_hash_table): Remove.
+ (first_pool, last_pool, pool_offset): Remove.
+ (struct rtx_constant_pool): Split out from ...
+ (struct varasm_status): ... here. Reference one via pointer.
+ (struct constant_descriptor_rtx): Merge struct pool_constant.
+ (SYMHASH): Remove.
+ (decode_rtx_const): Remove.
+ (const_hash_rtx, compare_constant_rtx): Remove.
+ (record_constant_rtx): Remove.
+ (const_desc_rtx_hash, const_desc_rtx_eq): New.
+ (const_desc_rtx_sym_hash, const_desc_rtx_sym_eq): New.
+ (const_rtx_hash_1, const_rtx_hash): New.
+ (init_varasm_status): Allocate a rtx_constant_pool, and its hashes.
+ (simplify_subtraction): Use simplify_rtx.
+ (force_const_mem): Rewrite to use new data structures.
+ (find_pool_constant): Likewise.
+ (get_pool_constant, get_pool_constant_mark,
+ get_pool_constant_for_function, get_pool_mode,
+ get_pool_mode_for_function, get_pool_offset, get_pool_size): Likewise.
+ (output_constant_pool_2): Split out from output_constant_pool.
+ (output_constant_pool_1): Likewise. Use new pool datastructures.
+ (output_constant_pool): Zap entire pool datastructure.
+ (mark_constant): Use new pool datastructures.
+ (mark_constants): Use for_each_rtx.
+ (mark_constant_pool): Use new pool datastructures.
+
+2004-01-30 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): Remove #if 0.
+ Copy operands[1] to pseudo for simplify_gen_subreg.
+
+2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gcse.c (bypass_block): Fix a typo in the previous check-in
+ to the file.
+
+2004-01-30 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * toplev.c: Include alloc-pool.h.
+ * Makefile.in (toplev.c): Update dependencies.
+
+2004-01-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * combine.c (simplify_shift_const, case XOR): Be careful when
+ commuting XOR with ASHIFTRT.
+
+2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc-protos.h: Remove the prototype for
+ sparc_builtin_saveregs.
+ * config/sparc/sparc.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
+ (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
+ (sparc_builtin_saveregs): Make it static.
+ (sparc_promote_prototypes): New.
+ (sparc_struct_value_rtx): Likewise.
+ (sparc_return_in_memory): Likewise.
+ * config/sparc/sparc.h: (PROMOTE_FUNCTION_ARGS): Remove.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+ (RETURN_IN_MEMORY): Likewise.
+ (STRUCT_VALUE): Likewise.
+ (STRUCT_VALUE_INCOMING): Likewise.
+ (EXPAND_BUILTIN_SAVEREGS): Likewise.
+ (STRICT_ARGUMENT_NAMING): Likewise.
+ (PROMOTE_PROTOTYPES): Likewise.
+
+ * config/sparc/sparc.h (PROMOTE_MODE): Use word_mode.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/12818
+ * varasm.c (const_hash_1) <STRING_CST>: Use the
+ address to compute the hash value if flag_writable_strings.
+ (compare_constant) <STRING_CST>: Compare the addresses
+ if flag_writable_strings.
+ (build_constant_desc): Do not copy the expression for a
+ STRING_CST if flag_writable_strings.
+
+2004-01-30 Jan Hubicka <jh@suse.cz>
+
+ * alloc-pool.c: Include hashtab.h
+ (alloc_pool_descriptor): New structure
+ (alloc_pool_hash): New global variable.
+ (hash_descriptor, eq_descriptor, alloc_pool_descriptor): New.
+ (create_alloc_pool): Update statistics.
+ (free_alloc_pool): Likewise.
+ (pool_alloc): Likewise.
+ (output_info): New structure
+ (print_statistics, dump_alloc_pool_statistics): New function.
+ * alloc-pool.h (alloc_pool_def): Turn name to be constant.
+ (dump_alloc_pool_statistics): Declare.
+ * toplev.c (finalize): Dump statistics.
+
+ * reload.c (secondary_memlocs_elim_used): New static variable.
+ (get_secondary_mem): Update it.
+ (find_reloads): Use it.
+
+2004-01-30 Steven Bosscher <s.bosscher@student.tudelft.nl>
+
+ * toplev.c: Fix broken checkin of 2003-12-30, again.
+
+2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for
+ s390*-*-* targets by specifying a 'nop' insn.
+ * configure: Regenerate.
+
+2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/11475
+ * config/sparc/sparc.md (movhi_lo_sum): Tighten predicates.
+
+2004-01-29 Jakub Jelinek <jakub@redhat.com>
+
+ * emit-rtl.c (change_address): Use XEXP (memref, 0) instead
+ of addr when creating MEM copy.
+
+2004-01-29 Devang Patel <dpatel@apple.com>
+
+ * dwarf2out.c (gen_field_die): Do not equate decl number to die.
+
+2004-01-28 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR inline-asm/6162
+ * reload.c (find_reloads): Only support one pair of commutative
+ operands.
+
+2004-01-29 Roger Sayle <roger@eyesopen.com>
+
+ PR java/13824
+ * tree.c (unsafe_for_reeval): Handle EXIT_BLOCK_EXPR nodes specially
+ as their EXIT_BLOCK_LABELED_BLOCK operands can lead to unbounded
+ recursion.
+
+2004-01-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/frv/frv.c: Don't mention deprecated macros in
+ comments. Remove some target-independent comments about
+ target macros.
+ * config/frv/frv.h: Likewise.
+
+2004-01-29 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfghooks.c (split_block): Set probability and count of the
+ new edge.
+
+2004-01-29 Josef Zlomek <zlomekj@suse.cz>
+
+ * dwarf2out.c (struct die_struct): Added field decl_id.
+ (decl_die_table): Changed to hash table.
+ (decl_die_table_allocated): Deleted.
+ (decl_die_table_in_use): Deleted.
+ (DECL_DIE_TABLE_INCREMENT): Deleted.
+ (decl_die_table_hash): New function.
+ (decl_die_table_eq): New function.
+ (lookup_decl_die): Lookup in a hash table.
+ (equate_decl_number_to_die): Insert into a hash table.
+ (dwarf2out_init): Init hash table decl_die_table.
+
+2004-01-29 Jakub Jelinek <jakub@redhat.com>
+
+ PR optimization/13424
+ * expr.c (store_constructor): Revert 2003-12-03 change.
+
+ * emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
+ expected before returning early. Avoid sharing RTL if they
+ need to be changed.
+
+ * config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
+ handling so that memory attributes are preserved. Don't call
+ ix86_set_move_mem_attrs.
+ (ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
+ (ix86_expand_clrstr): Rename src argument to
+ dst. Rework rep_stos and strset handling so that memory attributes
+ are preserved.
+ (ix86_expand_strlen): Pass src argument to
+ ix86_expand_strlensi_unroll_1. Rework strlenqi_1 handling so that
+ memory attributes are preserved.
+ (ix86_expand_strlensi_unroll_1): Add src argument. Use
+ change_address instead of gen_rtx_MEM.
+ * config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
+ expanders.
+ (strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
+ strmovqi, strmovqi_rex64): Remove.
+ (rep_mov*, strmov*): Prefix insn names with *.
+ (strset, strset_singleop, rep_stos): New expanders.
+ (strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
+ strsetqi, strsetqi_rex64): Remove.
+ (rep_stos*, strset*): Prefix insn names with *.
+ (rep_stosqi_rex64): Likewise. Fix mode of dirflag reg from DImode
+ to SImode.
+ (cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
+ are preserved.
+ (cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
+ Prefix insn names with *.
+ (cmpstrqi_nz_1, cmpstrqi_1): New expanders.
+ (strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
+ (strlenqi_1): New expander.
+ * config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.
+
+2004-01-29 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * Makefile.in (cfghooks.o): Add TIMEVAR_H and toplev.h dependency.
+ * basic-block.h (tidy_fallthru_edge, tidy_fallthru_edges, dump_bb,
+ verify_flow_info): Declaration removed.
+ * cfg.c (verify_flow_info, dump_bb): Moved to cfghooks.c.
+ (debug_bb, debug_bb_n): Add argument to dump_bb call.
+ * cfgcleanup.c (try_simplify_condjump, try_crossjump_to_edge,
+ try_optimize_cfg, delete_unreachable_blocks): Use delete_basic_block
+ instead of delete_block.
+ * cfghooks.c: Include timevar.h and toplev.h.
+ (cfg_hooks): Define here.
+ (verify_flow_info, dump_bb): Moved from cfg.c.
+ (redirect_edge_and_branch, redirect_edge_and_branch_force,
+ split_block, split_block_after_labels, move_block_after,
+ delete_basic_block, split_edge, create_basic_block,
+ create_empty_bb, can_merge_blocks_p, merge_blocks,
+ make_forwarder_block, tidy_fallthru_edge, tidy_fallthru_edges):
+ New functions.
+ * cfghooks.h (struct cfg_hooks): Added fields name,
+ make_forwarder_block, tidy_fallthru_edge and
+ move_block_after. Changed type of verify_flow_info, dump_bb,
+ split_block fields. Renamed cfgh_split_edge and delete_block
+ fields.
+ (redirect_edge_and_branch, redirect_edge_and_branch_force,
+ split_block, delete_block, split_edge, create_basic_block,
+ can_merge_blocks_p, merge_blocks): Macros removed.
+ (cfg_hooks): Do not export.
+ (verify_flow_info, dump_bb, redirect_edge_and_branch,
+ redirect_edge_and_branch_force, split_block, split_block_after_labels,
+ move_block_after, delete_basic_block, split_edge, create_basic_block,
+ create_empty_bb, can_merge_blocks_p, merge_blocks,
+ make_forwarder_block, tidy_fallthru_edge, tidy_fallthru_edges):
+ Declare.
+ (cfg_layout_rtl_cfg_hooks): Declare.
+ * cfgloop.c (update_latch_info, mfb_keep_just, mfb_keep_nonlatch):
+ New functions.
+ (canonicalize_loop_headers): Use new semantics of make_forwarder_block.
+ (redirect_edge_with_latch_update): Removed.
+ (make_forwarder_block): Moved to cfghooks.c, semantics changed.
+ * cfgloopmanip.c (remove_bbs): Do not update dominators here.
+ * cfgrtl.c (cfg_layout_split_block, rtl_split_block, rtl_dump_bb,
+ rtl_delete_block, rtl_split_block, rtl_merge_blocks,
+ tidy_fallthru_edge, rtl_split_edge, cfg_layout_delete_block,
+ cfg_layout_merge_blocks, cfg_layout_split_edge): Partly moved to
+ cfghooks.c.
+ (rtl_create_basic_block): Coding style fix.
+ (rtl_tidy_fallthru_edge, rtl_move_block_after,
+ rtl_make_forwarder_block): New functions.
+ (update_cfg_after_block_merging): Removed.
+ (rtl_cfg_hooks, cfg_layout_rtl_cfg_hooks): Fill in new entries.
+ * flow.c (verify_wide_reg, verify_local_live_at_start): Add argument
+ to dump_bb.
+ * ifcvt.c (merge_if_block, find_cond_trap, find_if_case_1,
+ find_if_case_2): Don't update dominators.
+ * timevar.def (TV_CFG_VERIFY): New.
+ * loop-unswitch.c (unswitch_loop): Don't call add_to_dominance_info.
+ * cfglayout.c (copy_bbs): Don't call add_to_dominance_info.
+ * cfgloopmanip.c (split_loop_bb): Don't update dominators.
+ (remove_bbs): Don't call remove_bbs.
+ (create_preheader): Use make_forwarder_block.
+ (mfb_keep_just, mfb_update_loops): New static functions.
+
+2004-01-29 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/avr/avr.h: Remove target-independent comments about
+ target macros.
+
+2004-01-28 Daniel Berlin <dberlin@dberlin.org>
+
+ * timevar.c (timevar_print): Mention when checking is enabled.
+
+2004-01-28 Giovanni Bajo <giovannibajo@gcc.gnu.org>
+
+ * c-lex.c (c_lex): Rename to...
+ (c_lex_with_flags): Add new parameter to get CPP flags.
+ (c_lex): Thunk to c_lex_with_flags while keeping the old interface.
+ * c-pragma.h (c_lex_with_flags): Declare.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mcore/mcore.c (mcore_external_libcall): Add a
+ comment.
+ (mcore_return_in_memory): Likewise.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mcore/mcore-protos.h: Remove the prototype for
+ mcore_setup_incoming_varargs.
+ * config/mcore/mcore.c (TARGET_ASM_EXTERNAL_LIBCALL): New.
+ (TARGET_PROMOTE_FUNCTION_ARGS): Likewise.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (mcore_setup_incoming_varargs): Make it static. Receive the
+ first argument by reference. Add argument second_time.
+ (mcore_external_libcall): New.
+ (mcore_return_in_memory): Likewise.
+ * config/mcore/mcore.h (PROMOTE_FUNCTION_ARGS): New.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+ (STRUCT_VALUE): Likewise.
+ (RETURN_IN_MEMORY): Likewise.
+ (SETUP_INCOMING_VARARGS): Likewise.
+ (PROMOTE_PROTOTYPES): Likewise.
+ (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r-protos.h: Remove the prototype for
+ m32r_setup_incoming_varargs.
+ * config/m32r/m32r.c (TARGET_PROMOTE_PROTOTYPES): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (m32r_return_in_memory): New.
+ (m32r_setup_incoming_varargs): Make it static.
+ * config/m32r/m32r.h: Remove #undef of
+ ASM_OUTPUT_EXTERNAL_LIBCALL. Remove the commented-out
+ definitions of PROMOTE_FUNCTION_ARGS and
+ PROMOTE_FUNCTION_RETURN.
+ (PROMOTE_PROTOTYPES): Remove.
+ (RETURN_IN_MEMORY): Likewise.
+ (STRUCT_VALUE): Likewise.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68k/m68k.c (TARGET_PROMOTE_PROTOTYPES): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (m68k_struct_value_rtx): Likewise.
+ * config/m68k/m68k.h (STRUCT_VALUE_REGNUM): Rename to
+ STRUCT_VALUE_REGNUM.
+ (PROMOTE_PROTOTYPES): Remove.
+ * config/m68k/m68kelf.h (STRUCT_VALUE_REGNUM): Rename to
+ STRUCT_VALUE_REGNUM.
+ * config/m68k/m68kv4.h (STRUCT_VALUE_REGNUM): Likewise.
+ * config/m68k/netbsd-elf.h (STRUCT_VALUE_REGNUM): Likewise.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/stormy16/stormy16.c
+ (TARGET_BUILD_BUILTIN_VA_LIST_TYPE): Rename to
+ TARGET_BUILD_BUILTIN_VA_LIST.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/v850/v850.c (TARGET_PROMOTE_PROTOTYPES): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (v850_return_in_memory): Likewise.
+ (v850_setup_incoming_varargs): Likewise.
+ * config/v850/v850.h (PROMOTE_PROTOTYPES): Remove.
+ (SETUP_INCOMING_VARARGS): Likewise.
+ (RETURN_IN_MEMORY): Likewise.
+ (STRUCT_VALUE): Likewise.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/fr30/fr30.c (TARGET_PROMOTE_PROTOTYPES): New.
+ (fr30_setup_incoming_varargs): Don't use
+ STRICT_ARGUMENT_NAMING.
+ * config/fr30/fr30.h (PROMOTE_PROTOTYPES): Remove.
+ (STRICT_ARGUMENT_NAMING): Likewise.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/frv/frv-protos.h: Remove the prototype for
+ frv_expand_builtin_saveregs.
+ * config/frv/frv.c (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
+ (frv_stack_info): Use FRV_STRUCT_VALUE_REGNUM instead of
+ STRUCT_VALUE_REGNUM.
+ (frv_expand_builtin_saveregs): Make it static.
+ (frv_struct_value_rtx): New.
+ * config/frv/frv.h (EXPAND_BUILTIN_SAVEREGS): Remove.
+
+2004-01-29 Jan Hubicka <jh@suse.cz>
+
+ PR c++/12850
+ * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
+ initial pointers.
+ * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
+ for functions that will be only inlined.
+ (cgraph_mark_function_to_output): Likewise.
+ (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
+ do not clear function body.
+ * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
+ (tree_rest_of_compilation): Reorganize the logic releasing function
+ body to use callgraph datastructure.
+
+2004-01-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.md: Change predicate of a peephole2 pattern from reg_or_0_operand
+ to register_operand.
+
+2004-01-28 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.md (fetchadd_acq_si, fetchadd_acq_di)
+ (cmpxchg_acq_si, cmpxchg_acq_di): Exchange match_dup and
+ match_operand expressions so that all match_dups appear
+ lexically after their corresponding match_operands.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (WORD_REG_USED): Use
+ HARD_FRAME_POINTER_REGNUM instead of FRAME_POINTER_REGNUM.
+ (compute_saved_regs): Likewise.
+ (h8300_expand_prologue): Likewise. Allocate locals after
+ saving registers.
+ (h8300_expand_epilogue): Use HARD_FRAME_POINTER_REGNUM instead
+ of FRAME_POINTER_REGNUM. Deallocate locals before saving
+ registers.
+ (h8300_initial_elimination_offset): Adjust for the new frame
+ layout, which swaps flips the order of locals and saved
+ registers.
+ * config/h8300/h8300.h (FIRST_PSEUDO_REGISTER): Change to 12.
+ (HARD_FRAME_POINTER_REGNUM): New.
+ (ELIMINABLE_REGS): Add an elimination rule from
+ FRAME_POINTER_REGNUM to HARD_FRAME_POINTER_REGNUM.
+ (REGISTER_NAMES): Add fp.
+ * config/h8300/h8300.md (FP_REG): Change to 11.
+ (HFP_REG): New.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * genrecog.c (write_node): Remove a useless local variable.
+
+2004-01-28 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * Makefile.in (options.c options.h): Use stamp file s-options to
+ avoid unnecessary rebuilds.
+ (options.o): New target listing dependencies.
+ (gtyp-gen.h): Use stamp file s-gtyp-gen.
+ (STAGESTUFF): Add s-gtyp-gen.
+
+2004-01-28 Richard Henderson <rth@redhat.com>
+
+ * ggc.h (ggc_free): Declare.
+ * ggc-common.c (ggc_realloc): Use it.
+ * ggc-page.c: Remove lots of inline markers.
+ (globals): Add free_object_list.
+ (ggc_alloc): Tidy.
+ (ggc_free, validate_free_objects): New.
+ (poison_pages): Provide default.
+ (ggc_collect): Call validate_free_objects; emit markers to
+ the debug file.
+
+2004-01-28 Zack Weinberg <zack@codesourcery.com>
+ Jim Wilson <wilson@specifixinc.com>
+
+ * config/ia64/ia64.c (ia64_split_tmode, ia64_split_tmode_move):
+ Rewrite to use POST_INC/POST_DEC/POST_MODIFY instead of a
+ scratch pointer.
+ (ia64_secondary_reload_class): Delete case GR_REGS.
+ * config/ia64/ia64.md (movti, *movti_internal, movtf, *movtf_internal):
+ Do not allocate a scratch register.
+ (reload_inti, reload_outti, reload_intf, reload_outtf): Delete.
+
+2004-01-28 Jan Hubicka <jh@suse.cz>
+
+ * gcse.c (bypass_block): Prevent edges to be unified when we are
+ about to emit compenstation code.
+
+2004-01-28 Nick Clifton <nickc@redhat.com>
+
+ * config/arm/arm.c (arm_expand_builtin): Force second argument of
+ the setcwx insn into a register.
+
+2004-01-28 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/fp-bit.c (pack_d): When using paired doubles to implement
+ a long double, round the high part separately.
+ (unpack_d): Fix the case in which the high part is a power of two
+ and the low part is a nonzero value of the opposite sign.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/c4x/c4x.c (TARGET_ASM_EXTERNAL_LIBCALL): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (c4x_external_libcall): Likewise.
+ (c4x_struct_value_rtx): Likewise.
+ * config/c4x/c4x.h: Remove.
+ (STRUCT_VALUE_REGNUM): Likewise.
+ (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
+
+2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.c (TARGET_PROMOTE_PROTOTYPES): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ * config/i386/i386.h (STRUCT_VALUE_INCOMING): Remove.
+ (STRUCT_VALUE): Likewise.
+ (PROMOTE_PROTOTYPES): Likewise.
+
+2004-01-27 Roger Sayle <roger@eyesopen.com>
+
+ * config/pa/pa.c (emit_move_sequence): Check that operand1 is a
+ CONST_INT before using INTVAL.
+
+2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.h (TARGET_DEFAULT): Default to !TARGET_BACKCHAIN.
+ * config/s390/s390.c (s390_return_addr_rtx): Fail for all but current
+ frame if !TARGET_BACKCHAIN.
+ * config/s390/s390.md ("allocate_stack"): Use pattern only if
+ TARGET_BACKCHAIN.
+ * doc/invoke.texi (-mbackchain/-mno-backchain): Document new default.
+
+2004-01-27 Zack Weinberg <zack@codesourcery.com>
+
+ * ia64.c (ia64_function_arg): When placing HFAs in integer
+ registers, do not special case the mode used for complex
+ types. Do not advance int_regs until the current register
+ is full.
+
+2004-01-27 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/7297
+ * except.c (init_eh): Use a 5-word __jbuf for __builtin_setjmp().
+
+2004-01-27 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): #if 0 splitting
+ slow, unaligned loads and stores while debugging. Fix formatting.
+
+2004-01-27 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.md (save_stack_nonlocal): Use Pmode instead
+ of computing wmode.
+ (restore_stack_nonlocal): Same.
+
+2004-01-27 Devang Patel <dpatel@apple.com>
+
+ * Makefile.in (dwarf2out.o): Depend on input.h
+ * dbxout.c (dbx_debug_hooks): Add new empty hook for
+ imported_module_or_decl.
+ (xcoff_debug_hooks): Same.
+ * sdbout.c (sdb_debug_hooks): Same.
+ * vmsdbgout.c (vmsdbg_debug_hooks): Same.
+ * debug.c (do_nothing_debug_hooks): Same.
+ (debug_nothing_tree_tree): New function.
+ * debug.h (gcc_debug_hooks): New hook, imported_module_or_decl.
+ * dwarf2out.c: Include input.h.
+ (dwarf2_debug_hooks): Add new hook for imported_module_or_decl.
+ (remove_child_TAG): New function.
+ (dwarf_tag_name): Handle DW_TAG_imported_module.
+ (gen_subprogram_die): Equate decl number to declaration die. Do not
+ remove all children dies while reusing declaration die for definition.
+ Instead, selectively remove only formal parameters.
+ (gen_variable_die): Equate variable decl to declaration die.
+ (gen_field_die): Equate field decl to line number.
+ (force_namespace_die): Replace it with ...
+ (force_decl_die): ... this.
+ (force_type_die): New function.
+ (setup_namespace_context): Replace use of force_namespace_die() with
+ force_decl_die().
+ (gen_namespace_die): Same.
+ (dwarf2out_imported_module_or_decl): New function.
+
+2004-01-27 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Remove SUBREG
+ on CQImode and CHImode incoming arguments in register a7.
+ (function_arg): Wrap BLKmode argument in register a7 in a PARALLEL.
+ * config/xtensa/xtensa.h (BLOCK_REG_PADDING): Define.
+ * config/xtensa/xtensa.md (movdi, movdf): Only call force_reg or
+ xtensa_copy_incoming_a7 before reload.
+
+2004-01-27 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * coverage.c (get_coverage_counts): Give a different message
+ if flag_guess_branch_prob is set.
+ * predict.c (counts_to_freqs): Return an int.
+ (estimate_bb_frequencies): If counts_to_freqs returns zero,
+ calculate estimates.
+
+2004-01-27 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/iq2000/iq2000-protos.h: Remove the prototype for
+ iq2000_setup_incoming_varargs.
+ * config/iq2000/iq2000.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
+ (iq2000_return_in_memory): Likewise.
+ (iq2000_setup_incoming_varargs): Make it static. Receive the
+ first argument by reference.
+ * config/iq2000/iq2000.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+ (PROMOTE_PROTOTYPES): Likewise.
+ (RETURN_IN_MEMORY): Likewise.
+ (STRUCT_VALUE): Likewise.
+ (SETUP_INCOMING_VARARGS): Likewise.
+ (STRICT_ARGUMENT_NAMING): Likewise.
+
+2004-01-24 James A. Morrison <ja2morri@uwaterloo.ca>
+
+ * fixinc/fixinc.c (test_test): Initialize res.
+ (start_flexer): Initialize pz_cmd_save.
+
+2004-01-27 Zack Weinberg <zack@codesourcery.com>
+
+ * doc/rtl.texi (Arithmetic): Rewrite entries for PLUS,
+ SS_PLUS, US_PLUS, LO_SUM, MINUS, SS_MINUS, US_MINUS.
+
+2004-01-27 Zack Weinberg <zack@codesourcery.com>
+
+ PR 7198
+ * config/ia64/ia64.md (*nmaddsf4, *nmadddf4, *nmadddf4_alts)
+ (*nmadddf4_trunc, *nmaddxf4, *nmaddxf4_truncsf, *nmaddxf4_truncdf)
+ (*nmaddxf4_alts, *nmaddxf4_truncdf_alts):
+ Rewrite pattern as (minus (op 3) (mult (op 1) (op 2))).
+ Possibly rename pattern for consistency.
+ Remove ??? comments suggesting that this be done.
+ (*nmaddsf4_alts, *nmadddf4_truncsf_alts, *nmaddxf4_truncsf_alts):
+ New patterns.
+ (divsi3_internal, divdi3_internal_lat, divdi3_internal_thr)
+ (divsf3_internal_lat, divsf3_internal_thr, sqrtsf2_internal_thr)
+ (divdf3_internal_lat, divdf3_internal_thr, sqrtdf2_internal_thr)
+ (divxf3_internal_lat, divxf3_internal_thr, sqrtxf2_internal_thr):
+ Update to match.
+
+2004-01-27 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/arm.c (output_return_instruction): Only restore IP
+ into SP if frame_pointer_needed.
+
+2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
+ for SCmode and DCmode if ARCH32.
+ (sparc_va_arg): Handle SCmode and DCmode by reference if ARCH32.
+ * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for TCmode
+ if ARCH32.
+ (BASE_RETURN_VALUE_REG): Return 32 for all FP modes except TFmode
+ if ARCH32.
+ (BASE_OUTGOING_VALUE_REG): Likewise.
+
+2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/10904
+ PR target/13058
+ * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): New.
+ Forbid mode changes from SImode for lower FP regs if ARCH64.
+
+2004-01-27 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * Makefile.in (bt-load.o): Depend on except.h.
+ * bt-load.c (except.h): #include.
+ (compute_defs_uses_and_gen): If insn at end of BB can throw
+ within this function, consider registers used by it unavailable for
+ btr migration.
+ (move_btr_def): If insn at end of BB can throw, insert before rather
+ than after.
+
+ * flags.h (flag_btr_bb_exclusive): Declare.
+ * toplev.c (flag_btr_bb_exclusive): New variable.
+ (f_options): Add btr-bb-exclusive.
+ * bt-load.c (augment_live_range): Restore old behaviour if
+ flag_btr_bb_exclusive is set.
+ * common.opt: Add entry for -fbtr-bb-exclusive.
+ * opts.c (common_handle_options): Same.
+ * doc/invoke.texi: Document -fbtr-bb-exclusive.
+
+ * bt-load.c (btrs_live_at_end): New variable.
+ (compute_defs_uses_and_gen): Compute its pointed-to array.
+ (clear_btr_from_live_range, add_btr_to_live_range): Update it.
+ (augment_live_range): When augmenting with a new dominator,
+ use only its btrs_live_at_end set, but also add in the full set
+ of the old dominator.
+ (btr_def_live_range): Use btrs_live_at_end.
+ (move_btr_def): Set other_btr_uses_before_def, and move new set
+ to the end of the basic block, if appropriate.
+ (migrate_btr_defs): Allocate and free btrs_live_at_end.
+
+ * bt-load.c (basic_block_freq): Remove outdated comment.
+
+2004-01-27 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.h: Correct target_flags free bits comment.
+ (PREDICATE_CODES): Remove duplicate.
+ * config/rs6000/linux64.h (CPP_SYSV_SPEC): Don't define.
+ (SUBSUBTARGET_OVERRIDE_OPTIONS): Disallow 32 bit TARGET_PROFILE_KERNEL.
+ (MASK_PROFILE_KERNEL): Adjust define.
+
+2004-01-27 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/i386.c (ix86_constant_alignment): Decrease alignment
+ of long string literals from 32 bytes to sizeof (void *) when !-Os
+ and to 1 with -Os.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_tiny_constant_address_p): Accept
+ constant addresses in the normal mode.
+
+2004-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * system.h (CHAR_BITFIELD): Delete.
+ (BOOL_BITFIELD): New.
+ * c-decl.c (c_scope): Use BOOL_BITFIELD.
+ * gengtype-lex.l: Recognize BOOL_BITFIELD instead of CHAR_BITFIELD.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arc/arc.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (arc_return_in_memory): Likewise.
+ * config/arc/arc.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+ (RETURN_IN_MEMORY): Likewise.
+ (STRUCT_VALUE): Likewise.
+
+2004-01-26 Richard Henderson <rth@redhat.com>
+
+ * c-parse.in (extension): Use itype.
+ (SAVE_EXT_FLAGS): Don't allocate a tree.
+ (RESTORE_EXT_FLAGS): Don't read a tree.
+
+2004-01-26 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c (discard_useless_values): Clear out value pointer pointing
+ to datastructure to be recycled.
+
+2004-01-25 Jan Hubicka <jh@suse.cz>
+
+ * genextract.c (main): Do not output the memset when not checking.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_tiny_constant_address_p): Use a
+ switch statement instead of a chain of if statements.
+
+2004-01-26 Jeff Law <law@redhat.com>
+
+ * doc/contrib.texi: Minor cleanup for Paolo Carlini's entry. Add
+ acute accents for Petur Runolfsson's entry.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/pdp11/pdp11.c (TARGET_STRUCT_VALUE_RTX): New.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ * config/pdp11/pdp11.h (STRUCT_VALUE): Remove.
+ (RETURN_IN_MEMORY): Likewise.
+
+2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): split slow
+ unaligned load/store into smaller loads and stores.
+
+2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
+
+ * function.c (assign_parms): Do not assign
+ long long argument to memory in prologue if
+ is it loaded into register.
+
+2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
+
+ PR middle-end/13779
+ * expr.c (emit_group_load): split constant
+ correctly into register components of PARALLEL insn.
+
+2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
+
+ * gcc/config/rs6000/rs6000.md (save_stack_nonlocal):
+ Use adjust_address_nv directly with appropriate mode.
+ (restore_stack_nonlocal): Ditto.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/xtensa/xtensa-protos.h: Remove the prototype for
+ xtensa_builtin_saveregs.
+ * config/xtensa/xtensa.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
+ (xtensa_builtin_saveregs): Make it static.
+ (xtensa_return_in_memory): New.
+ * config/xtensa/xtensa.h (PROMOTE_FUNCTION_ARGS: Remove.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+ (PROMOTE_PROTOTYPES): Likewise.
+ (STRUCT_VALUE): Likewise.
+ (RETURN_IN_MEMORY): Likewise.
+ (EXPAND_BUILTIN_SAVEREGS): Likewise.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arm/arm.c (TARGET_SETUP_INCOMING_VARARGS): New.
+ (arm_setup_incoming_varargs): Likewise.
+ * config/arm/arm.h (SETUP_INCOMING_VARARGS): Remove.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/cris/cris.c (TARGET_SETUP_INCOMING_VARARGS): New.
+ (cris_setup_incoming_varargs): Likewise.
+ * config/cris/cris.h (SETUP_INCOMING_VARARGS): Remove.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ns32k/ns32k.c (TARGET_STRUCT_VALUE_RTX): New.
+ (ns32k_struct_value_rtx): Likewise.
+ * config/ns32k/ns32k.h (STRUCT_VALUE_REGNUM): Rename to
+ NS32K_STRUCT_VALUE_REGNUM.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/arm/arm.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (arm_struct_value_rtx): Likewise.
+ * config/arm/arm.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (STRUCT_VALUE): Likewise.
+ (STRUCT_VALUE_REGNUM): Likewise.
+ (PROMOTE_PROTOTYPES): Likewise.
+
+2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ia64/ia64-protos.h: Remove the prototype for
+ ia64_setup_incoming_varargs and ia64_return_in_memory.
+ * config/ia64/ia64.c (TARGET_STRUCT_VALUE_RTX): New.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
+ (ia64_setup_incoming_varargs): Adjust the arguments to meet
+ the requirement of TARGET_SETUP_INCOMING_VARARGS.
+ (ia64_return_in_memory): Make it static. Change the return
+ type to bool from int. Add an argument.
+ (ia64_struct_value_rtx): New.
+ * config/ia64/ia64.h: Remove commented-out definitions of
+ PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN, and
+ PROMOTE_PROTOTYPES.
+ (RETURN_IN_MEMORY): Remove.
+ (STRUCT_VALUE_REGNUM): Likewise.
+ (STRICT_ARGUMENT_NAMING): Likewise.
+
+2004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13666
+ * config/sparc/sparc.c (function_arg_union_value): New function.
+ (function_arg): Use it to deal with unions.
+ (function_value): Likewise. Define 'regbase' only for ARCH64.
+ Replace a conditional statement by a simpler one.
+
+2004-01-26 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips16_optimize_gp): Delete.
+ (mips_reorg): Don't call it.
+
+2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.md (addqi3_noclobber): Move up pecking order.
+ (floatunsqihf2): Remove operand 6.
+ (fixhfqi_set, fix_trunchfqi2, fixuns_trunchfqi2): Group with other
+ fix patterns.
+ (ldi_conditional, ldf_conditional): Validate operands.
+
+2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (BCT_CHECK_LOOP_ITERATIONS): Remove.
+ (HAVE_GAS_HIDDEN): Undefine as interim measure.
+
+2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_legitimate_address_p): Invalidate direct
+ memory references if TARGET_EXPOSE_LDP nonzero.
+
+2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (legitimize_operands): Truncate invalid shift counts.
+
+2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_valid_operands): More aggressively reject
+ invalid operand combinations.
+
+2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_check_legit_addr): Rename to
+ c4x_legitimate_address_p. Fix post_modify check.
+
+ * config/c4x/c4x-protos.h (c4x_check_legit_addr): Adjust.
+ * config/c4x/c4x.h (c4x_check_legit_addr): Adjust.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/pa/pa-protos.h: Remove the prototype for
+ hppa_builtin_saveregs. Add a prototype for
+ pa_return_in_memory.
+ * config/pa/pa.c (TARGET_PROMOTE_FUNCTION_RETURN): New.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
+ (pa_struct_value_rtx): Likewise.
+ (pa_return_in_memory): Likewise.
+ * config/pa/pa.h (STRUCT_VALUE_REGNUM): Rename to
+ PA_STRUCT_VALUE_REGNUM.
+ (INIT_CUMULATIVE_ARGS): Use pa_return_in_memory.
+ (EXPAND_BUILTIN_SAVEREGS): Remove.
+ (PROMOTE_PROTOTYPES): Likewise.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/vax/vax.c (TARGET_PROMOTE_PROTOTYPES): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (vax_struct_value_rtx): Likewise.
+ * config/vax/vax.h (STRUCT_VALUE_REGNUM): Rename to
+ VAX_STRUCT_VALUE_REGNUM.
+ (PROMOTE_PROTOTYPES): Remove.
+
+2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Handle symref.
+
+2004-01-25 Chris Demetriou <cgd@broadcom.com>
+
+ * config/mips/mips.h (ISA_HAS_HILO_INTERLOCKS): MIPS32, MIPS32r2,
+ and MIPS64 have HI/LO interlocks. Update comment.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/stormy16/stormy16-protos.h: Remove the prototype for
+ xstormy16_setup_incoming_varargs.
+ * config/stormy16/stormy16.c
+ (xstormy16_setup_incoming_varargs): Remove.
+ (xstormy16_return_in_memory): New.
+ (TARGET_PROMOTE_FUNCTION_ARGS): Likewise.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ * config/stormy16/stormy16.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (PROMOTE_FUNCTION_RETURN): Likewise
+ (PROMOTE_PROTOTYPES): Likewise
+ (RETURN_IN_MEMORY): Likewise
+ (STRUCT_VALUE): Likewise
+ (SETUP_INCOMING_VARARGS): Likewise
+
+2004-01-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_offset_within_object_p): New function.
+ (mips_symbolic_constant_p): Use it in the SYMBOL_SMALL_DATA and
+ SYMBOL_CONSTANT_POOL cases. Also use it for SYMBOL_GENERAL if the
+ ABI has 64-bit pointers and the object file only allows 32-bit symbols.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/sh/sh.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mn10300/mn10300-protos.h: Remove the prototype for
+ mn10300_builtin_saveregs.
+ * config/mn10300/mn10300.c (TARGET_PROMOTE_PROTOTYPES): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
+ (mn10300_return_in_memory): Likewise.
+ (mn10300_builtin_saveregs): Make it static.
+ * config/mn10300/mn10300.h (PROMOTE_PROTOTYPES): Remove.
+ (RETURN_IN_MEMORY): Likewise.
+ (STRUCT_VALUE): Likewise.
+ (EXPAND_BUILTIN_SAVEREGS): Likewise.
+
+2004-01-25 Eric Botcazou <ebotcazou@act-europe.fr>
+
+ PR bootstrap/13853
+ * cfgcleanup.c (try_optimize_cfg): Explicitly test against 0.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/lib1funcs.asm (divnorm, modnorm): Optimize by
+ using ccr.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i860/i860-protos.h: Remove the prototype for
+ i860_saveregs.
+ * config/i860/i860.c (i860_saveregs): Make it static.
+ (i860_struct_value_rtx): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
+ * config/i860/i860.h (STRUCT_VALUE_REGNUM): Rename to
+ I860_STRUCT_VALUE_REGNUM.
+ (EXPAND_BUILTIN_SAVEREGS): Remove.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68hc11/m68hc11.c (TARGET_STRUCT_VALUE_RTX): New.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (m68hc11_struct_value_rtx): Likewise.
+ (m68hc11_return_in_memory): Likewise.
+ * config/m68hc11/m68hc11.h: Remove a commented-out definition
+ of PROMOTE_PROTOTYPES.
+ (RETURN_IN_MEMORY): Remove.
+ (STRUCT_VALUE_REGNUM): Likewise.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mmix/mmix-protos.h: Remove the prototype for
+ mmix_setup_incoming_varargs.
+ * config/mmix/mmix.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (mmix_setup_incoming_varargs): Make it static.
+ (mmix_struct_value_rtx): New.
+ * config/mmix/mmix.h (PROMOTE_FUNCTION_ARGS): Remove.
+ Remove a commented-out definition of PROMOTE_FUNCTION_RETURN.
+ (STRUCT_VALUE_REGNUM): Remove.
+ (SETUP_INCOMING_VARARGS): Likewise.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mips/mips-protos.h: Remove the prototypes for
+ mips_setup_incoming_varargs and mips_return_in_memory.
+ * config/mips/mips.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_PROMOTE_PROTOTYPES): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
+ (mips_setup_incoming_varargs): Match the prototype for
+ TARGET_SETUP_INCOMING_VARARGS.
+ (mips_return_in_memory): Make it static. Add argument fntype.
+ (mips_strict_argument_naming): New.
+ * config/mips/mips.h (PROMOTE_PROTOTYPES): Remove.
+ (PROMOTE_FUNCTION_ARGS): Likewise.
+ (PROMOTE_FUNCTION_RETURN): Likewise.
+ (STRUCT_VALUE): Likewise.
+ (RETURN_IN_MEMORY): Likewise.
+ (SETUP_INCOMING_VARARGS): Likewise.
+ (STRICT_ARGUMENT_NAMING): Likewise.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/ip2k/ip2k.c (TARGET_STRUCT_VALUE_RTX): New.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_SETUP_INCOMING_VARARGS): Likewise.
+ (ip2k_return_in_memory): Likewise.
+ (ip2k_setup_incoming_varargs): Likewise.
+ * config/ip2k/ip2k.h (RETURN_IN_MEMORY): Remove.
+ (STRUCT_VALUE): Likewise.
+ (STRUCT_VALUE_INCOMING): Likewise.
+ (SETUP_INCOMING_VARARGS): Likewise.
+
+2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/avr/avr.c (TARGET_STRUCT_VALUE_RTX): New.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
+ (avr_return_in_memory): Remove.
+ * config/avr/avr.h (RETURN_IN_MEMORY): Remove.
+ (STRUCT_VALUE): Likewise.
+ (STRUCT_VALUE_INCOMING): Likewise.
+ (STRICT_ARGUMENT_NAMING): Likewise.
+
+2004-01-25 Jan Hubicka <jh@suse.cz>
+
+ * combine.c (recog_for_combine): Avoid allocating unnecesary RTX.
+
+2004-01-25 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_reg_mode_ok_for_base_p): Delete.
+ (mips_regno_mode_ok_for_base_p): Declare.
+ * config/mips/mips.h (ARG_POINTER_REGNUM): Renumber to 77.
+ (FRAME_POINTER_REGNUM): Renumber to 78.
+ (FIRST_PSEUDO_REGISTER): Update comment accordingly.
+ (BASE_REG_P, GP_REG_OR_PSEUDO_STRICT_P): Delete.
+ (GP_REG_OR_PSEUDO_NONSTRICT_P): Delete.
+ (REGNO_MODE_OK_FOR_BASE_P): Use mips_regno_mode_ok_for_base_p.
+ (REG_MODE_OK_FOR_BASE_P): Likewise.
+ * config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Change
+ entry for 77 to "$arg" and entry for 78 to "$frame".
+ (mips_regno_to_class): Map 77 and 78 to ALL_REGS.
+ (mips_reg_mode_ok_for_base_p): Remove.
+ (mips_regno_mode_ok_for_base_p): New function, derived from old
+ BASE_REG_P macro. Don't enforce the mips16 stack pointer
+ restrictions unless we're being strict.
+ (mips_valid_base_register_p): Use mips_regno_mode_ok_for_base_p.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.h: Fix comment typos.
+ * c-decl.c: Likewise.
+ * cgraphunit.c: Likewise.
+ * combine.c: Likewise.
+ * et-forest.c: Likewise.
+ * flow.c: Likewise.
+ * function.c: Likewise.
+ * ifcvt.c: Likewise.
+ * integrate.c: Likewise.
+ * jump.c: Likewise.
+ * postreload.c: Likewise.
+ * varray.c: Likewise.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/frontends.texi: Update copyright.
+ * doc/gcov.texi: Likewise.
+ * doc/gty.texi: Likewise.
+ * doc/sourcebuild.texi: Likewise.
+ * doc/standards.texi: Likewise.
+
+2004-01-24 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
+
+ PR target/12978
+ * c4x.md: (movstrqi*) Use match_scratch instead of match_dup.
+ Remove movstrqi_small because it conflicts with movstrqi_large.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/cris/cris.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (cris_struct_value_rtx): Likewise.
+ * config/cris/cris.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (CRIS_STACKADJ_REG): Use CRIS_STRUCT_VALUE_REGNUM instead of
+ STRUCT_VALUE_REGNUM.
+ (STRUCT_VALUE_REGNUM): Rename to CRIS_STRUCT_VALUE_REGNUM.
+
+2004-01-24 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR bootstrap/13848
+ * cse.c (cse_cc_succs): Change the mode of the source expression
+ as soon as decide we need a new mode. Don't permit changing modes
+ if we found a match in a successor block.
+ (cse_condition_code_reg): Save original mode of source expression
+ so that we know whether we have to change the mode in other
+ insns.
+
+2004-01-24 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (change_address, adjust_address_1, offset_address,
+ widen_memory_access): Return early when there is nothing to change.
+
+2004-01-24 Jakub Jelinek <jakub@redhat.com>
+
+ * simplify-rtx.c (simplify_relational_operation): Don't
+ simplify address == constant into address + -constant == 0.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * gcc.c (process_command): Don't internationalize the
+ Copyright message.
+ * mips-tfile.c (main): Likewise.
+
+2004-01-24 Andreas Tobler <a.tobler@schweiz.ch>
+
+ * cse.c: (cse_cc_succs) Fix comparison warning.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md: Remove extraneous USE in expanders.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Provide prototypes for
+ h8300_legitimate_constant_p and h8300_legitimate_address_p.
+ * config/h8300/h8300.c (h8300_legitimate_constant_p): New.
+ (h8300_rtx_ok_for_base_p): Likewise.
+ (h8300_legitimate_address_p): Likewise.
+ * config/h8300/h8300.h (LEGITIMATE_CONSTANT_P): Use
+ h8300_legitimate_constant_p.
+ (RTX_OK_FOR_BASE_P): Remove.
+ (GO_IF_LEGITIMATE_ADDRESS): Use h8300_legitimate_address_p.
+
+2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (REG_OK_FOR_INDEX_NONSTRICT_P): New.
+ (REG_OK_FOR_BASE_NONSTRICT_P): Likewise.
+ (REG_OK_FOR_INDEX_STRICT_P): Likewise.
+ (REG_OK_FOR_BASE_STRICT_P): Likewise.
+ (REG_OK_FOR_INDEX_STRICT_P): Use REGNO_OK_FOR_INDEX_P.
+ (REG_OK_FOR_BASE_STRICT_P): Use REGNO_OK_FOR_BASE_P.
+ (REG_OK_FOR_INDEX_P): Use REG_OK_FOR_INDEX_STRICT_P.
+ (REG_OK_FOR_BASE_P): Use REG_OK_FOR_BASE_STRICT_P.
+
+2004-01-24 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c (remove_useless_values): Do not access discarded values.
+
+2004-01-24 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-typeck.c (build_conditional_expr): Do not allow non-lvalue
+ arrays.
+
+2004-01-23 Kazu Hirata <kazu@cs.umass.edu>
+
+ * recog.c: Fix a typo in copyright.
+
+2004-01-23 Andrew Pinski <apinski@apple.com>
+
+ * config/rs6000/rs6000.md (call): Fix misappiled patch.
+ (call_value): Likewise.
+
+2004-01-23 Richard Henderson <rth@redhat.com>
+
+ PR opt/12941
+ * combine.c (SHIFT_COUNT_TRUNCATED): Provide default value.
+ (simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0)
+ if SHIFT_COUNT_TRUNCATED is set.
+
+2004-01-23 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_va_arg): Handle complex values as
+ separate real and imaginary parts.
+ * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Define.
+
+2004-01-23 Hartmut Penner <hpenner@de.ibm.com>
+
+ PR target/13674
+ * config/rs6000/rs6000.md (movdf_hardfloat64): Do not disparage
+ loading into GPR.
+
+2004-01-23 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (change_address_1): Do not re-generate the RTX if nothing
+ change.
+
+ * alloc-pool.c (align_four): Kill.
+ (create_alloc_pool): Align size to eight.
+ (free_alloc_pool, free_pool): Invalidate deallocated data.
+
+2004-01-23 Ian Lance Taylor <ian@wasabisystems.com>
+
+ PR gcc/1532
+ * cse.c (cse_change_cc_mode): New static function.
+ (cse_change_cc_mode_insns, cse_cc_succs): Likewise.
+ (cse_condition_code_reg): New function.
+ * rtl.h (cse_condition_code_reg): Declare.
+ * toplev.c (rest_of_handle_cse2): Call cse_condition_code_reg.
+ * target.h (struct gcc_target): Add fixed_condition_code_regs and
+ cc_modes_compatible.
+ * target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define.
+ (TARGET_CC_MODES_COMPATIBLE): Define.
+ (TARGET_INITIALIZER): Add new initializers.
+ * targhooks.c (default_cc_modes_compatible): New function.
+ * targhooks.c (default_cc_modes_compatible): Declare.
+ * hooks.c (hook_bool_intp_intp_false): New function.
+ * hooks.h (hook_bool_intp_intp_false): Declare.
+ * config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
+ (TARGET_CC_MODES_COMPATIBLE): Define.
+ (ix86_fixed_condition_code_regs): New static function.
+ (ix86_cc_modes_compatible): Likewise.
+ * doc/tm.texi (Condition Code): Document new hooks.
+
+2004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (bad_lval): Renamed to ...
+ (alpha_bad_lval): ... this.
+ Removed file list.
+ Restrict to alpha*-dec-osf*.
+ * fixinc/fixincl.x: Regenerate.
+ * fixinc/tests/base/dirent.h: Remove, moving test ...
+ * fixinc/tests/base/testing.h: ... here, reflecting new name.
+
+2004-01-23 Zack Weinberg <zack@codesourcery.com>
+
+ PR c/13814
+ * c-decl.c (diagnose_mismatched_decls): Also discard a
+ built-in if we encounter an old-style definition with the
+ same name.
+
+2004-01-23 Jakub Jelinek <jakub@redhat.com>
+
+ * config.gcc (powerpc*-*): Clear $with_cpu or $with_tune if it was
+ set to default{32,64}.
+
+2004-01-21 Jakub Jelinek <jakub@redhat.com>
+
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR)
+ [!__powerpc64__]: Corrected to handle kernels with changed ucontext.
+
+2004-01-23 Eric Botcazou <ebotcazou@act-europe.fr>
+ Olivier Hainque <hainque@act-europe.fr>
+
+ * fold-const.c (fold_binary_op_with_conditional_arg): Only
+ build a COMPOUND_EXPR if 'arg' is really a SAVE_EXPR.
+
+2004-01-23 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/arm/arm.c (arm_legitimate_address_p): Don't check the mode
+ size for minipool references.
+
+2004-01-23 Roger Sayle <roger@eyesopen.com>
+
+ * real.c (real_floor, real_ceil): Tweak to allow input and output
+ arguments to overlap.
+ (real_round): New function to implement round(3m) semantics.
+ * real.h (real_round): Prototype here.
+ * builtins.c (fold_builtin_round): New function to constant fold
+ round, roundf and roundl.
+ (fold_builtin): Call fold_builtin_round for BUILT_IN_ROUND{,F,L}.
+
+2004-01-23 Alexandre Oliva <aoliva@redhat.com>
+
+ PR optimization/13819
+ * config/sh/sh.c (sh_reorg): Compensate for sharing of CLOBBERs
+ introduced by 2004-01-20's Jan Hubicka's copy_insn change.
+ (sh_handle_sp_switch_attribute): Remove warning.
+
+2004-01-23 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_emit_restore_regs_using_mov): Deal with large offsets.
+
+2004-01-23 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * doc/tm.texi: Insert some weasel words when LOAD_EXTEND_OP
+ may or may not return non-NIL.
+ * postreload.c (reload_cse_simplify_operands): In LOAD_EXTEND_OP code,
+ check CANNOT_CHANGE_MODE_CLASS
+
+2004-01-23 Jan Hubicka <jh@suse.cz>
+
+ * basic-block.h (PROP_POSTRELOAD): New macro.
+ (CLEANUP_LOG_LINKS): New.
+ * cfgcleanup.c (cleanup_cfg): Only PROP_LOG_LINKS when asked to.
+ * toplev.c (rest_of_handle_life): Preserve LOG_LINKS trought cleanup_cfg.
+
+ * cselib.c (value_pool): New.
+ (new_cselib_val): Use pool.
+ (cselib_init): Initialize value_pool
+ (cselib_finish): Free pool.
+
+2004-01-23 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (scan_record_type): New function.
+ (function_arg_slotno): Use it to determine which kinds of
+ registers the record can be passed in.
+
+2004-01-22 James A. Mmorrison <ja2morri@uwaterloo.ca>
+
+ * config/pa/fptr.c: Fix old-style definition.
+
+2004-01-22 Paolo Bonzini <bonzini@gnu.org>
+
+ PR optimization/13724
+ * cse.c (fold_rtx) <SUBREG>: Fold a SUBREG to zero if it
+ represents the zero bits produced by a ZERO_EXTEND operation.
+
+2004-01-22 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/13821
+ * simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset to
+ correctly calculate the lowpart offset of the contracted subreg.
+
+2004-01-22 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * doc/invoke.texi (Optimize Options): Note that --param arguments
+ are subject to change without notice.
+
+2004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config.gcc (mips-sgi-irix6*o32): Removed.
+ * config/mips/iris6-o32-as.h: Likewise.
+ * config/mips/iris6-o32-gas.h: Likewise.
+ * config/mips/iris6-o32.h: Likewise.
+
+2004-01-22 Jan Hubicka <jh@suse.cz>
+
+ * cfgcleanup.c (first_pass): New static variable.
+ (try_forward_edges): Add work limiting check for threading.
+ (try_crossjump_bb): Add work limiting check for crossjumping.
+ (try_optimize_cfg): Maintain first pass variable.
+
+2004-01-22 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (function_arg): Generalize logic so that it
+ handles complex and vector modes.
+
+2004-01-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.h (REG_OK_FOR_INDEX_P_STRICT): Remove.
+ (REG_OK_FOR_BASE_P_STRICT): Likewise.
+ (STRICT): Likewise.
+
+2004-01-22 Daniel Jacobowitz <drow@mvista.com>
+
+ * c-semantics.c (genrtl_while_stmt, genrtl_do_stmt_1)
+ (genrtl_for_stmt): Remove emit_nop calls.
+
+2004-01-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR target/13713
+ PR target/13324
+ * pa.md (movstrsi_prereload, movstrsi_postreload, movstrdi_prereload,
+ movstrdi_postreload, clrstrsi_prereload, clrstrsi_postreload,
+ clrstrdi_prereload, clrstrdi_postreload): Fix constraints.
+
+2004-01-22 Daniel Jacobowitz <drow@mvista.com>
+
+ * config/arm/arm.c: Include "debug.h".
+ (thumb_pushpop): Take two new arguments. Add some commentary.
+ Output frame information when pushing.
+ (thumb_exit, thumb_unexpanded_epilogue): Update calls to
+ thumb_pushpop.
+ (thumb_output_function_prologue): Likewise. Accumulate a CFA
+ offset, and pass it to thumb_pushpop. Output CFI information.
+ (thumb_expand_prologue): Add some frame-related markers and notes.
+
+2004-01-22 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (s390_frame_info): Allow large frame sizes
+ for TARGET_64BIT.
+ (s390_arg_frame_offset): Change return type to HOST_WIDE_INT.
+ * config/s390/s390-protos.h (s390_arg_frame_offset): Likewise.
+
+2004-01-22 Roger Sayle <roger@eyesopen.com>
+ Paolo Bonzini <bonzini@gnu.org>
+
+ * rtlanal.c (subreg_lsb_1): New function split out from subreg_lsb.
+ (subreg_lsb): Change to call new subreg_lsb_1 helper function.
+ * rtl.h (subreg_lsb_1): Prototype here.
+ * simplify-rtx.c (simplify_subreg): Optimize subregs of zero and
+ sign extensions.
+
+2004-01-22 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi (CASE_VECTOR_PC_RELATIVE): Mention that the
+ macro need not be defined if jump-tables should contain
+ relative addresses only when -fPIC or -fPIC is in effect.
+
+2004-01-22 Jan Hubicka <jh@suse.cz>
+
+ * alias.c (reg_base_value): Turn into varray.
+ (reg_base_value_size): Kill.
+ (old_reg_base_value): New deletable varray.
+ (alias_invariant_size): New variable.
+ (REG_BASE_VALUE): Update to use varray.
+ (find_base_value): Likewise.
+ (record_set): Likewise.
+ (record_base_value): Likewise.
+ (memrefs_conflict_p): Likewise.
+ (record_set): Likewise
+ (record_base_value): Likewise.
+ (memrefs_conflict_p): Use alias_invariant_size.
+ (init_alias_analysis): Use varray; set alias_invariant_size;
+ rescale other arrays to be sized by maxreg.
+ (end_alias_analysis): Save reg_base_value; clear alias_invariant_size.
+
+2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.c (function_arg_slotno): Use
+ FLOAT_TYPE_P to detect FP fields in structures.
+ (function_arg_record_value_1): Likewise.
+ (function_arg_record_value_2): Likewise.
+
+2004-01-22 Jan Hubicka <jh@suse.cz>
+
+ * function.c (allocate_struct_function): Do not initialize expr, emit
+ and varasm.
+ (prepare_function_start): Do it here.
+ * c-parse.in (maybe_type_qual): Do not produce line number notes.
+
+2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13559
+ * config/sparc/sparc.c (function_arg_record_value_3): Revert
+ to 'word_mode' once the first slot has been filled.
+
+2004-01-22 Olivier Hainque <hainque@act-europe.fr>
+
+ * config/sparc/sparc.c (function_arg_record_value_1): Fix
+ computation of the number of integer registers required.
+
+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/i386.md: Simplify certain comparisons of
+ const_int.
+
+2004-01-21 Andrew Pinski <apinski@apple.com>
+
+ PR target/13785
+ * config/rs6000/rs6000.md (call_value): Force operand
+ 1 not operand 0 into a register.
+
+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * cpperror.c, cpptrad.c, longlong.h, params.def, rtl.def,
+ unwind-dw2-fde.h: Update copyright.
+
+2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h: Update copyright.
+ * pa.h: Likewise.
+ * pa.md: Likewise.
+
+2004-01-21 Caroline Tice <ctice@apple.com>
+
+ PR target/12308
+ * config/i386/i386.md (fix_truncxfdi2): Add clause to clobber
+ flags register.
+ (fix_truncdfdi2): Likewise.
+ (fix_truncsfdi2): Likewise.
+ (*fix_truncdi_1): Likewise.
+ (fix_truncxfsi2): Likewise.
+ (fix_truncdfsi2): Likewise.
+ (fix_truncsfsi2): Likewise.
+ (*fix_truncsi_1): Likewise.
+ (fix_truncxfhi2): Likewise.
+ (fix_truncdfhi2): Likewise.
+ (fix_truncsfhi2): Likewise.
+ (*fix_trunchi_1): Likewise.
+
+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c, basic-block.h, c-common.c, c-common.h,
+ c-cppbuiltin.c, c-opts.c, c-pragma.c, c-pretty-print.c,
+ calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c,
+ combine.c, cppcharset.c, cpphash.h, cppinit.c, cpplib.c,
+ cpplib.h, cppmacro.c, crtstuff.c, cselib.c, cselib.h,
+ defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c,
+ expr.h, fix-header.c, function.h, gcc.c, gcse.c, genattrtab.c,
+ genautomata.c, genconditions.c, genemit.c, genflags.c,
+ gengtype.c, gengtype.h, genopinit.c, genrecog.c, gensupport.c,
+ ggc-zone.c, graph.c, haifa-sched.c, input.h, integrate.c,
+ langhooks-def.h, langhooks.c, langhooks.h, line-map.c,
+ line-map.h, local-alloc.c, optabs.c, optabs.h, postreload.c,
+ ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c,
+ rtl.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h,
+ target.h, targhooks.c, toplev.h, tree-inline.c, unwind-pe.h,
+ unwind.h, varray.c, varray.h: Update copyright.
+
+2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/coff.h: Update copyright.
+ * config/h8300/elf.h: Likewise.
+ * config/h8300/h8300-protos.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+
+2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * fixinc/inclhack.def (hpux10_stdio_declarations, ultrix_const3,
+ ultrix_locale, ultrix_stdlib, ultrix_strings, ultrix_sys_time,
+ ultrix_unistd): New hacks.
+ * fixinc/tests/base/stdio.h (HPUX10_STDIO_DECLARATIONS_CHECK,
+ ULTRIX_CONST2_CHECK): Add checks.
+ * fixinc/tests/base/stdlib.h (ULTRIX_STDLIB_CHECK): Likewise.
+ * fixinc/tests/base/strings.h (ULTRIX_STRINGS2_CHECK): Likewise.
+ * fixinc/tests/base/unistd.h (ULTRIX_UNISTD_CHECK): Likewise.
+ * fixinc/tests/base/sys/time.h (ULTRIX_SYS_TIME_CHECK): Likewise.
+ * fixinc/tests/base/locale.h: New file.
+ * fixinc/fixincl.x: Rebuilt.
+
+2004-01-21 Andreas Jaeger <aj@suse.de>
+ Michael Matz <matz@suse.de>
+
+ * doc/extend.texi (Extended Asm): Clarify memory clobber.
+
+2004-01-21 Jakub Jelinek <jakub@redhat.com>
+
+ * crtstuff.c (frame_dummy, __do_global_ctors_1): Call
+ _Jv_RegisterClasses through a function pointer.
+
+2004-01-21 Falk Hueffner <falk@debian.org>
+
+ PR target/12898
+ * config/alpha/alpha.c (alpha_emit_set_const_1): If
+ no_new_pseudos, use gen_rtx_SET directly for SImode constants
+ which need multiple instructions to emit.
+
+2004-01-21 Inaoka Kazuhiro <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (CPP_SPEC): Define.
+
+2004-01-21 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (merge_decls): Kill different_binding_level and
+ different_tu arguments; simplify throughout.
+ (duplicate_decls): Likewise.
+ (pushdecl, merge_translation_unit_decls): Update calls to
+ duplicate_decls.
+
+2004-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (pretty-print.o): Depend on $(CONFIG_H) and
+ $(SYSTEM_H).
+ (print-rtl1.o): Depend on $(SYSTEM_H).
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR bootstrap/12730
+ * configure.ac: Delete definition and subsitution of docdir.
+ Add info, man, srcman and srcinfo to target hooks. Create doc/
+ directory.
+ * configure: Regenerate.
+ * Makefile.in: Don't substitute docdir and delete all references
+ throughout.
+ (MAKEINFOFLAGS): Define.
+ (stmp-docobjdir): Delete.
+ (INFOFILES, MANFILES): Define.
+ (info): Call lang.info, srcinfo and lang.srcinfo.
+ (generated-manpages): Call lang.man, srcman and lang.srcman.
+ (srcinfo, srcman): New rules to copy back files to source directory.
+ (doc/%.info, doc/%.dvi, doc/%.1, doc/%.7): New implict rule.
+ (install-man): Revamp rule.
+ (clean): Update dvi directory.
+ (distclean): Delete TAGS from front end directorys.
+ (maintainer-clean): Delete all document files in source directory.
+
+ objc/Make-lang.in (objc.man, objc.info): Dummy entries.
+ (objc.srcman, objc.srcinfo): Likewise.
+
+2004-01-20 Bruce Korb <bkorb@gnu.org>
+
+ * fixinc/inclhack.def(math_exception): bypass only for glibc.
+ (matherr_decl): rename & relocate as exception_structure.
+ This fix must precede the math_exception fix.
+
+2004-01-20 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (fold_convert): Rename to fold_convert_const.
+ (fold_convert_const): Change arguments to take a tree_code,
+ a type and the operand/expression to be converted. Return
+ NULL_TREE if no simplification is possible. Add support for
+ FIX_CEIL_EXPR and FIX_FLOOR_EXPR in addition to FIX_TRUNC_EXPR.
+ (fold): Handle FIX_CEIL_EXPR and FIX_FLOOR_EXPR.
+ Adjust call to fold_convert to match new fold_convert_const.
+ Avoid modifying the tree passed to fold in-place.
+
+2004-01-21 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/sysv4.h (DWARF2_FRAME_REG_OUT): Define.
+ * dwarf2out.c (output_cfi): Map regs using DWARF2_FRAME_REG_OUT.
+ * doc/tm.texi (DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Document.
+
+2004-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa-protos.h (compute_frame_size): Use HOST_WIDE_INT for frame sizes.
+ * pa.c (store_reg, store_reg_modify, load_reg, set_reg_plus_d):
+ Likewise. Handle frames larger than 0x7fffffff on 64-bit ports.
+ (emit_move_sequence): Check scratch_reg first in various if statements.
+ Extend source simplification to handle all 64-bit CONST_INTs.
+ (pa_output_function_prologue): Use HOST_WIDE_INT_PRINT_DEC for printing
+ frame size.
+ (hppa_expand_prologue, hppa_expand_epilogue): Use HOST_WIDE_INT for
+ frame offset calculations.
+ * pa.h (NEW_HP_ASSEMBLER): Add comment.
+ (MAX_LEGIT_64BIT_CONST_INT, MIN_LEGIT_64BIT_CONST_INT,
+ LEGITIMATE_64BIT_CONST_INT_P): Define.
+ (LEGITIMATE_CONSTANT_P): Use LEGITIMATE_64BIT_CONST_INT_P. Treat
+ any CONST_INT as legitimate during and after reload.
+ (VAL_32_BITS_P, INT_32_BITS): Define.
+ (LEGITIMIZE_RELOAD_ADDRESS): Handle large frame offsets.
+
+2004-01-20 Jan Hubicka <jh@suse.cz>
+
+ * emit-rtl.c (verify_rtx_sharing, copy_insn_1,
+ emit_copy_of_insn_after, emit_copy_of_insn_after): Clobbers
+ containing hard regs are shared.
+ (gen_hard_reg_clobber): New function.
+ (hard_reg_clobbers): New array.
+ * genemit.c (gen_exp): Use gen_hard_reg_clobber.
+ (copy_rtx): Do not copy clobbers containing hard regs.
+ * rtl.h (gen_hard_reg_clobber): Declare.
+
+2004-01-20 Jan Hubicka <jh@suse.cz>
+
+ * varray.c: Include hashtab.h
+ (varray_descriptor): New structure.
+ (hash_descriptor, eq_descriptor, varray_descriptor,
+ print_statistics): New static functions
+ (varray_init, varray_grow): Update statistics
+ (dump_varray_statistics): New function.
+ * varray.h (dump_varray_statistics): Declare.
+ * toplev.c (finalize): Call it.
+ * Makefile.in (varray.o): Add dependency.
+
+2004-01-20 Jan Hubicka <jh@suse.cz>
+
+ * cselib.c: Include alloc-pool.h
+ (empty_vals, empty_elt_lists, empty_elt_loc_lists): Kill.
+ (elt_loc_list_pool, elt_list_pool, cselib_val_pool): Declare.
+ (new_elt_list, new_elt_loc_list, unchain_one_elt_list,
+ unchain_one_elt_loc_list_pool, unchain_one_value,
+ new_cselib_val): Simplify using allocpool.
+ (cselib_init): Initialize allocpools.
+ (cselib_finish): Finish allocpools.
+ * Makefile.in (cselib.o): Depend on alloc-pool.h
+
+2004-01-20 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_load_call_address): Make the call insn
+ use $gp if it could be calling a lazy binding stub.
+
+2004-01-20 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/s390/s390.c (TARGET_PROMOTE_FUNCTION_ARGS): Define.
+ (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ * config/s390/s390.h (PROMOTE_FUNCTION_ARGS): Remove.
+ (PROMOTE_FUNCTION_RETURN): Remove.
+ (STRUCT_VALUE): Remove.
+
+2004-01-20 Denis Chertykov <denisc@overta.ru>
+
+ PR bootstrap/13735
+ * config/avr/avr.h (BASE_REG_CLASS): Don't permit to use X
+ register as pointer after reload.
+
+2004-01-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ PR optimization/12440
+ * loop.c: Include ggc.h.
+ (loop_optimize): Run garbage collector between optimization of loops.
+ * Makefile.in (loop.o): Add GGC_H dependency.
+
+2004-01-20 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (function_arg) Handle
+ vector register special in function without prototype.
+ (function_arg_advance): Vector parameters get always
+ GPRs allocated for the linux64 target.
+
+2004-01-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (TARGET_M32R2). Test for TARGET_M32R2_MASK
+ not TARGET_M32RX_MASK.
+
+2004-01-20 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/13557
+ * config/sparc/sparc.c (function_arg): Reorder the cases.
+
+2004-01-19 Per Bothner <per@bothner.com>
+
+ Move cpp_reader's line_maps field to a shared global.
+ * cpphash.h (cpp_reader): Rename line_maps field to line_table
+ and change the type to a pointer rather than a struct.
+ * cppinit.c (cpp_push_main_field): Adjust accordingly.
+ * cpplib.c (do_include_common, _cpp_do_file_change, cpp_get_callbacks):
+ Likewise.
+ * cppfiles.c (validate_pch): Likewise.
+ * cppmacro.c (_cpp_warn_if_unused_macro, _cpp_builtin_macro_text):
+ Likewise.
+ * cpperror.c (print_location): Likewise.
+ * cpplib.h (cpp_create_reader): New line_maps pointer parameter.
+ * cppinit.c (cpp_create_reader): Handle new parameter.
+ (cpp_destroy): Don't free line_maps - that's no longer our job.
+ * input.h (line_table): New variable.
+ * toplev.c (line_table): Declare variable.
+ (general_init): Initialize line_table.
+ * c-opts.c (c_common_init_options): Pass line_table to
+ cpp_create_reader.
+ * fix-header.c (read_scan_file): New local variable line_table.
+ Initialize, and pass it to cpp_create_reader.
+ * Makefile.in (LIBS, LIBDEPS): Add libcpp.a.
+ (C_AND_OBJC_OBJS, fix-header): Remove redundant libcpp.a.
+
+2004-01-19 Per Bothner <per@bothner.com>
+
+ Implement a cache for linemap_lookup.
+ * line-map.h (struct_line_maps): Add cache field.
+ * line-map.c (linemap_init): Zero cache field.
+ (linemap_add): Set cache field to offset of newly allocated map.
+ (linemap_lookup): Use and set cache field.
+
+2004-01-20 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ PR optimization/13567
+ * cse.c (cse_basic_block): Call cse_insn with a non-null
+ libcall_insn for the last SET insn of a no-confilict block.
+
+2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (target_noncanonical, program_transform_name): Use
+ immediate define instead of deferred.
+ (GCC_INSTALL_NAME, GCC_TARGET_INSTALL_NAME, CPP_INSTALL_NAME,
+ PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME,
+ GCCBUG_INSTALL_NAME): Define via a immediate $(shell) instead of
+ deferred backquote.
+
+2004-01-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-decl.c (c_init_decl_processing): Set pedantic_lvalues to
+ true unconditionally.
+ * c-typeck.c (unary_complex_lvalue, pedantic_lvalue_warning):
+ Remove.
+ (build_unary_op, build_modify_expr): Don't handle extended
+ lvalues.
+ (build_component_ref, build_conditional_expr): Call non_lvalue
+ instead of pedantic_non_lvalue.
+ (build_c_cast): Don't condition use of non_lvalue on pedantic.
+ * fold-const.c (fold): Don't check pedantic directly for
+ COMPOUND_EXPR. Ensure that results for COMPOUND_EXPR are
+ passed to pedantic_non_lvalue.
+ * doc/extend.texi: Remove documentation of extended lvalues.
+
+2004-01-19 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/5263
+ * simplify-rtx.c (associative_constant_p): Delete.
+ (simplify_associative_operation): Rewrite to linearize terms, and
+ attempt to simplify new term against both left and right subterms.
+ (simplify_binary_operation): Call swap_commutative_operands_p on
+ op0 and op1, not trueop0 and trueop1. Move the initialization of
+ trueop0 and trueop1 down to where first needed.
+ (simplify_relational_operation): Likewise.
+ * rtlanal.c (commutative_operand_precedence): Also order constant
+ operands using avoid_constant_pool_reference.
+
+2004-01-19 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (aligned_memory_operand): Check MEM_ALIGN,
+ don't check memory mode.
+ (unaligned_memory_operand): Likewise.
+ (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Don't
+ abort for op0 not MEM.
+
+ * config/alpha/alpha.c (alpha_expand_mov_nobwx): If the destination
+ is not a reg, copy to a scratch first.
+ (aligned_loadqi, aligned_loadhi, unaligned_loadqi, unaligned_loadhi,
+ unaligned_loadqi_le, unaligned_loadqi_be, unaligned_loadhi_le,
+ unaligned_loadhi_be): Expect op0 in DImode; don't SUBREG.
+ (reload_inqi, reload_inhi): Fix mode of op0.
+ (reload_inqi_help, reload_inhi_help, reload_outqi_help,
+ reload_outhi_help): Likewise. Use define_insn_and_split.
+
+ * config/alpha/alpha.md (call peepholes): Check for REG_NORETURN
+ as well as $29 dead.
+
+2004-01-19 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): New. Emit
+ "tls_object" for thread-local objects.
+ * config/sparc/sparc.c (sparc_elf_asm_named_section): Emit
+ "#tls" for thread-local sections.
+ * configure.ac (thread-local checks): Specify --fatal-warnings in
+ every binutils-specific checks. For sparc*-*-*, test whether the
+ OS is Solaris and the tools are native and act accordingly.
+ * configure: Rebuild.
+
+2004-01-19 Jeff Law <law@redhat.com>
+
+ * contrib.texi: Update Paolo Carlini's entry. New entries for
+ Jerry Quinn and Petur Runolfsson.
+
+2004-01-19 Roger Sayle <roger@eyesopen.com>
+
+ * config/i386/i386.md (*movhi_1, *movqi_1): When optimizing for
+ size, don't use the larger zero-extending loads.
+
+2004-01-19 Richard Henderson <rth@redhat.com>
+
+ * alpha.h (HARD_REGNO_MODE_OK): Disallow SImode in FP regs.
+ * alpha.md (UNSPEC_NT_LDA): Remove.
+ (UNSPEC_CVTLQ, cvtlq): New.
+ (extendsidi2_1): Rename from extendsidi2_nofix; remove f/f.
+ (extendsidi2_fix): Remove.
+ (extendsidi2 splitter): Use cvtlq.
+ (extendsidi2 fp peepholes): Remove.
+ (cvtql): Use SFmode instead of SImode.
+ (fix_trunc?fsi): Update to match.
+ (floatsisf2_ieee, floatsisf2, floatsidf2_ieee, floatsidf2): New.
+ (movsi): Rename from movsi_nofix, remove f alternatives.
+ (movsi_nt_vms): Similarly.
+ (movsi_fix, movsi_nt_vms_fix): Remove.
+ (nt_lda): Remove.
+ * alpha.c (alpha_expand_prologue): Use adddi3, not nt_lda.
+
+2004-01-19 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (cgraph_remove_node): Fix removal from linked list.
+ * cgraphunit.c (cgraph_finalize_compilation_unit): Clear next_needed
+ list.
+ (cgraph_remove_unreachable_nodes): New function
+ (cgraph_decide_inlining_of_small_function): Fix pasto.
+ (cgraph_decide_inlining_incrementally): Fix pasto.
+ (cgrpah_decide_inlining): Likewise; remove unreachable nodes.
+
+2004-01-19 Steven Bosscher <stevenb@suse.de>
+
+ * gengtype.c (header_file): Make it static.
+ (write_types_process_field, write_enum_defn): Minor whitespace fixes.
+ * gengtype.h (header_file): No longer extern.
+
+2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * defaults.h (CASE_VECTOR_PC_RELATIVE): Provide the default.
+ * expr.c (CASE_VECTOR_PC_RELATIVE): Remove.
+ * stmt.c (CASE_VECTOR_PC_RELATIVE): Likewise.
+
+2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * stmt.c (HAVE_casesi): Define it not already defined.
+ (HAVE_tablejump): Likewise.
+ (expand_end_case_type): Resort to the binary tree method if
+ neither casesi or tablejump is available.
+
+2004-01-18 Daniel Jacobowitz <drow@mvista.com>
+
+ * final.c (final_scan_insn): Make non-static again.
+ * output.h (final_scan_insn): Re-add prototype.
+ * config/arc/arc.c (arc_output_function_epilogue): Add NULL
+ to final_scan_insn call.
+ * config/cris/cris.c (cris_target_asm_function_epilogue): Likewise.
+ * config/mips/mips.c (mips_output_conditional_branch): Likewise.
+ * config/pa/pa.c (output_lbranch, output_call): Likewise.
+ * config/sh/sh.c (print_slot): Likewise.
+ * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Likewise.
+ (output_sibcall, sparc_flat_function_epilogue): Likewise.
+
+2004-01-18 Jan Hubicka <jh@suse.cz>
+
+ * basic-block.h (try_redirect_by_replacing_jump): Declare.
+ * cfgcleanup.c (try_optimize_cfg): Use it.
+ * cfgrtl.c (try_redirect_by_replacing_jump): Export.
+ (rtl_redirect_edge_and_branch, cfg_layout_redirect_edge_and_branch):
+ Kill hack.
+ (cfg_layout_merge_blocks): Use try_redirect_by_replacing_jump.
+
+ Revert:
+ 2004-01-16 Geoffrey Keating <geoffk@apple.com>
+
+ * cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps
+ even after reload, just don't remove the actual jump tables.
+
+2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/rs6000/rs6000.h (STRICT_ARGUMENT_NAMING): Remove.
+
+2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
+
+ * defaults.h (ASM_OUTPUT_ADDR_VEC_ELT): Fix the computation of
+ the size of a pointer in bytes.
+
+2004-01-18 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_expect_jump): Fix thinko of reusing
+ live "next" variable, which could lead to an infinite loop.
+
+2004-01-18 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/altivec.h: Wrap C++ functions in extern "C++"
+ block.
+
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ Check for NULL in the chain and remove repeated code.
+
+2004-01-18 Jan Hubicka <jh@suse.cz>
+
+ * coverage.c (checksum_string): Rename to ...
+ (coverage_checksum_string): ... this one, Use crc32_string; recognize
+ names containing random number and zero the number out in order to get
+ match.
+
+2004-01-18 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_got_alias_set): Mark for PCH.
+
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi,
+ doc/frontends.texi, doc/gcov.texi, doc/gty.texi, doc/install.texi,
+ doc/invoke.texi, doc/libgcc.texi, doc/md.texi, doc/rtl.texi,
+ doc/sourcebuild.texi, doc/standards.texi, doc/tm.texi,
+ doc/trouble.texi: Remove trailing whitespace.
+
+2004-01-18 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/7618
+ * config/mips/mips.c: Include cfglayout.h.
+ (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
+ (mips_unspec_offset_high): Add temporary register argument.
+ (mips_load_call_address): New function, split out from...
+ (mips_expand_call): ...here.
+ (mips_output_cplocal): New function.
+ (mips_output_function_prologue, mips_output_function_epilogue): Use it.
+ (mips_emit_loadgp): New function, split out from...
+ (mips_expand_prologue): ...here.
+ (mips_output_mi_thunk): New function.
+
+2004-01-17 Bernardo Innocenti <bernie@develer.com>
+
+ * longlong.h (mc68020, __mc68030__, mc68030, __mc68040__, mc68040,
+ mcpu32): Remove redundant checks for implied target predefines.
+
+2004-1-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ Return type is unsigned int not int.
+ * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
+ Likewise.
+
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/contrib.texi, doc/cppenv.texi, doc/extend.texi,
+ doc/install.texi, doc/invoke.texi, doc/tm.texi: Consistently use
+ "GNU/Linux" and "Microsoft Windows" terminology.
+
+2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/c-tree.texi, doc/compat.texi, doc/cpp.texi,
+ doc/cppopts.texi, doc/extend.texi, doc/install.texi,
+ doc/interface.texi, doc/invoke.texi, doc/libgcc.texi, doc/md.texi,
+ doc/objc.texi, doc/rtl.texi, doc/tm.texi, doc/trouble.texi: Use
+ @smallexample instead of @example.
+
+2004-01-17 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-act.c (build_objc_method_call): Use target
+ hooks instead of macros to determine if ..._stret
+ dispatchers should be used (NeXT runtime only).
+
+2004-01-17 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_expect_jump): Fix mistake in my
+ last patch. Use XEXP (x, 0) to get a LABEL_REF's CODE_LABEL.
+
+2004-01-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * rtl.h (emit_insn_before_sameloc, emit_jump_insn_before_sameloc)
+ (emit_call_insn_before_sameloc, emit_insn_after_sameloc)
+ (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): New
+ macros.
+ * reload1.c (emit_reload_insns): Use them.
+ * emit-rtl.c (emit_insn_before_sameloc, emit_insn_after_sameloc)
+ (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): Check
+ for NULL PATTERN.
+
+2004-01-17 Daniel Jacobowitz <drow@mvista.com>
+
+ * final.c (SEEN_BB, SEEN_NOTE, SEEN_EMITTED): Define.
+ (final_scan_insn): Update to take an additional SEEN argument. Emit
+ a line note after the prologue. Make static.
+ (line_note_exists): Remove.
+ (final): Don't initialize line_note_exists. Update call to
+ final_scan_insn.
+ * output.h (final_scan_insn): Remove prologue.
+ * function.c (set_insn_locators): Update comment.
+ (thread_prologue_and_epilogue_insns): Add a comment.
+
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/10781
+ * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
+ Prototype.
+ * config/rs6000/rs6000.c (rs6000_special_round_type_align):
+ New function.
+ * config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Use it.
+ * config/rs6000/aix.h (ROUND_TYPE_ALIGN): Likewise.
+ * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Likewise.
+
+2004-01-17 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_handle_reorder_blocks): Fix pasto in previous
+ commit.
+
+ * toplev.c (HAVE_conditional_execution): Provide default.
+ (rest_of_handle_reorder_blocks): For conditional_execution target
+ update liveness once after all transformations
+ (rest_of_compilation): Do crossjumping before ce3.
+
+2004-01-17 Geoffrey Keating <geoffk@apple.com>
+
+ * alias.c (new_alias_set): Mark last_alias_set for PCH.
+ (get_varargs_alias_set): Rename 'set' to 'varargs_set' and mark it
+ for PCH.
+ (get_frame_alias_set): Likewise, except rename it to 'frame_set'.
+ * config/rs6000/rs6000.c (rs6000_sr_alias_set): Mark for PCH.
+ (get_TOC_alias_set): Mark 'set' for PCH.
+
+2004-01-16 Geoffrey Keating <geoffk@apple.com>
+
+ * cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps
+ even after reload, just don't remove the actual jump tables.
+
+2004-01-17 J. Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (is_subrange_type): Renamed from is_ada_subrange_type().
+ Remove checks for is_ada() and TREE_UNSIGNED.
+ (subrange_type_die): Emit a byte_size attribute if the subrange
+ type size is different from the base type size.
+ (modified_type_die): Replace call to is_ada_subrange_type() by
+ call to is_subrange_type().
+
+2004-01-16 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * config/sh/sh.c: Include ggc.h.
+
+2004-01-16 Geoffrey Keating <geoffk@apple.com>
+
+ * Makefile.in (MD5_H): New.
+ (fold-const.o): Depend on md5.h.
+ (dwarf2out.o): Likewise.
+ (cppfiles.o): Likewise.
+ * cppfiles.c: Include md5.h.
+ (should_stack_file): Check against list read from PCH file.
+ (struct pchf_data): New.
+ (pchf): New variable.
+ (struct pchf_adder_info): New.
+ (pchf_adder): New.
+ (pchf_save_compare): New.
+ (_cpp_save_file_entries): New.
+ (_cpp_read_file_entries): New.
+ (struct pchf_compare_data): New.
+ (pchf_compare): New.
+ (check_file_against_entries): New.
+ * cpphash.h (_cpp_save_file_entries): Prototype.
+ (_cpp_read_file_entries): Prototype.
+ * cpppch.c (cpp_write_pch_state): Write the list of headers.
+ (cpp_read_state): Read the list of headers.
+
+2004-01-17 Jan Hubicka <jh@suse.cz>
+
+ * c-common.c (c_estimate_num_insns_1): Handle builtin_constant_p and
+ builtin_expect specially.
+ * params.def (PARAM_MAX_INLINE_INSNS_AUTO): Set to 100.
+ (PARAM_LARGE_FUNCTION_INSNS): Set to 3000.
+ * invoke.texi (max-inline-insns-single): Set to 100.
+ (large-function-insns): Set to 3000.
+
+2004-01-16 Eric Christopher <echristo@redhat.com>
+ Chandrakala Chavva <cchavva@redhat.com>
+
+ * cppcharset.c (one_iso88591_to_utf8): New function.
+ (convert_iso88591_utf8): Ditto. Use.
+ (conversion_tab): Use.
+ (_cpp_input_to_utf8): New function.
+ (_cpp_init_iconv_buffer): Ditto.
+ (_cpp_close_iconv_buffer): Ditto.
+ * cpphash.h: Prototype new functions.
+ (cpp_buffer): Add input_cset_desc.
+ * cppinit.c: Add input_charset default.
+ * cpplib.c (cpp_push_buffer): Support init and
+ close of iconv.
+ * cpplib.h (cpp_options): Add input_charset.
+
+2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (ASM_OUTPUT_SECTION_NAME): Poison.
+ * config/alpha/unicosmk.h: Remove a commented-out definition
+ of ASM_OUTPUT_SECTION_NAME.
+ * config/stormy16/stormy16.h: Likewise.
+
+2004-01-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * fixinc/inclhack.def (alpha___extern_prefix): Renamed to ...
+ (alpha___extern_prefix_sys_stat): ... this.
+ Apply to <sys/mount.h>, too.
+ Tweak to match more variations.
+ * fixinc/tests/base/sys/stat.h: Adapt for new hackname.
+
+ * fixinc/inclhack.def (alpha___extern_prefix,
+ alpha___extern_prefix_standards): New hacks to obey
+ __PRAGMA_EXTERN_PREFIX.
+ * fixinc/tests/base/testing.h [ALPHA___EXTERN_PREFIX_CHECK]: New
+ test.
+ * fixinc/tests/base/standards.h: Likewise.
+
+ * fixincl/inclhack.def (alpha_pthread): Tweak to match more
+ variations.
+ New testcase.
+ * fixinc/tests/base/pthread.h: Handle it.
+
+ * fixincl/inclhack.def (bad_lval): Sort file list.
+ Add many missing files up to Tru64 UNIX V5.1B.
+ * gcc/fixinc/tests/base/libgen.h: Renamed to ...
+ * gcc/fixinc/tests/base/dirent.h: ... this to match new file list
+ order.
+
+ * fixinc/fixincl.x: Regenerate.
+
+2004-01-16 Mark Mitchell <mark@codesourcery.com>
+
+ * version.c (version_string): Change to 3.5.0.
+ * doc/include/gcc-common.texi (version-GCC): Likewise.
+
+2004-01-16 Jan Hubicka <jh@suse.cz>
+
+ * i386.md (load_tp_di): Fix pasto.
+
+ PR opt/13608
+ * i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.
+
+ * c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator,
+ pp_c_character_constant, pp_c_floating_constant,
+ pp_c_additive_expression, pp_c_shift_expression,
+ pp_c_equality_expression, pp_c_and_expression,
+ pp_c_exclusive_or_expression, pp_c_inclusive_or_expression,
+ pp_c_logical_and_expression): Remove inline modifier.
+ * dwarf2out.c (get_AT): Likewise.
+ * et-forest.c (et_splay): Likewise.
+ * ra.h (ra_alloc, ra_calloc): Likewise
+
+2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/frv/frv-protos.h: Fix comment formatting.
+ * config/frv/frv.c: Likewise.
+ * config/frv/frv.h: Likewise.
+ * config/frv/frv.md: Likewise.
+ * config/frv/frvbegin.c: Likewise.
+ * config/frv/frvend.c: Likewise.
+
+2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (LINKER_DOES_NOT_WORK_WITH_DWARF2): Poison.
+ * doc/tm.texi (PREFERRED_DEBUGGING_TYPE): Don't mention
+ LINKER_DOES_NOT_WORK_WITH_DWARF2.
+ (LINKER_DOES_NOT_WORK_WITH_DWARF2): Remove.
+
+2004-01-16 J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR 11864
+ * postreload.c (reload_cse_simplify_operands): Don't remove
+ implicit extension from LOAD_EXTEND_OP.
+
+2004-01-16 Jan Hubicka <jh@suse.cz>
+
+ PR opt/11350
+ * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal
+ after reload.
+ * cfgrtl.c (rtl_can_merge_blocks, cfglayout_can_merge_blocks,
+ rtl_try_redirect_by_replacing_branch): Likewise.
+
+2004-01-15 Geoffrey Keating <geoffk@apple.com>
+
+ PR pch/13689
+ * alias.c (struct alias_set_entry): Mark for GC.
+ (alias_sets): Make static, mark for GC.
+ (record_alias_subset): Use GC to allocate alias structures.
+ * varray.c (element): Make generic varrays GCed.
+
+ PR pch/13361
+ * c-typeck.c (constructor_asmspec): Delete.
+ (struct initializer_stack): Delete field 'asmspec'.
+ (start_init): Delete saving of asmspec.
+ (finish_init): Don't update constructor_asmspec.
+ * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
+ * stmt.c (expand_asm): Duplicate strings from tree.
+ (expand_asm_operands): Likewise.
+ * tree.c (tree_size): Update computation of size of STRING_CST.
+ (make_node): Don't make STRING_CST nodes.
+ (build_string): Allocate string with tree node.
+ * tree.def (STRING_CST): Update comment.
+ * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
+ (tree_string): Place contents of string in tree node.
+ * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
+ from tree.
+
+ * config/rs6000/rs6000.c (rs6000_va_arg): No need to special-case
+ altivec operands.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * c-common.h: Fix comment formatting.
+ * c-cppbuiltin.c: Likewise.
+ * c-pragma.c: Likewise.
+ * calls.c: Likewise.
+ * collect2.c: Likewise.
+ * cppcharset.c: Likewise.
+ * cpptrad.c: Likewise.
+ * dbxout.c: Likewise.
+ * defaults.h: Likewise.
+ * dwarf2out.c: Likewise.
+ * fold-const.c: Likewise.
+ * genautomata.c: Likewise.
+ * genconditions.c: Likewise.
+ * genflags.c: Likewise.
+ * gengtype.c: Likewise.
+ * integrate.c: Likewise.
+ * loop.c: Likewise.
+ * predict.c: Likewise.
+ * sdbout.c: Likewise.
+
+2004-01-15 Zack Weinberg <zack@codesourcery.com>
+
+ * config/ia64/ia64.md (*movti_internal): C output template
+ extracted to ia64.c.
+ (*movti_internal_reg): Delete.
+ (reload_inti, reload_outti): Use the correct mode on operand 2
+ in the first place, don't fix it up in the output template.
+ (movtf, reload_ointf, reload_outtf): New expanders.
+ (*movtf_internal): New define_insn_and_split.
+ * config/ia64/ia64.c (ia64_split_timode): Rename to ia64_split_tmode;
+ make static; do not hand TFmode CONST_DOUBLEs to split_double.
+ (ia64_split_tmode_move): New function, body mostly pulled
+ from ia64.md:*movti_internal.
+ (ia64_function_arg_words): New function, extracted common
+ logic from ia64_function_arg et seq.
+ (ia64_function_arg_offset): Likewise. Handle correctly the
+ case of a scalar quantity 16 bytes wide with only 8-byte alignment.
+ (ia64_function_arg, ia64_function_arg_partial_nregs)
+ (ia64_function_arg_advance): Use ia64_function_arg_words and
+ ia64_function_arg_offset.
+ (ia64_function_value): TCmode does not go in float regs.
+ (ia64_secondary_reload_class): Also handle TFmode.
+ * config/ia64/ia64-protos.h: Remove prototype for
+ ia64_split_timode; add prototype for ia64_split_tmode_move.
+
+2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in (MAINT): Make it an immediate assignment.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.md: Remove useless calls to gen_lowpart.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/coff.h: Replace Hitachi with Renesas.
+ * config/h8300/elf.h: Likewise.
+ * config/h8300/h8300-protos.h: Likewise.
+ * config/h8300/h8300.c: Likewise.
+ * config/h8300/h8300.h: Likewise.
+ * config/h8300/h8300.md: Likewise.
+ * config/h8300/lib1funcs.asm: Likewise.
+
+2004-01-15 Andrew Pinski <apinski@apple.com>
+
+ * config/rs6000/rs6000.c (uses_TOC): Wrap #if TARGET_ELF
+ around it.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (h8300_return_in_memory): New.
+ (TARGET_STRUCT_VALUE_RTX): Likewise.
+ (TARGET_RETURN_IN_MEMORY): Likewise.
+ * config/h8300/h8300.h (STRUCT_VALUE): Remove.
+ (RETURN_IN_MEMORY): Likewise.
+
+2004-01-15 Richard Earnshaw <rearnsha@arm.com>
+
+ PR optimization/13375
+ * gcse.c (handle_avail_expr): Just return if the source is not a
+ single set.
+
+2004-01-15 Richard Earnshaw <rearnsha@arm.com>
+ Daniel Jacobowitz <drow@mvista.com>
+
+ * arm/lib1funcs.asm (ARM_FUNC_START): Correct interworking case.
+ (EQUIV): Define.
+ (ARM_FUNC_ALIAS): New macro.
+ * arm/ieee754-df.S (gedf2, ledf2, nedf2, eqdf2): Use it.
+ * arm/ieee754-sf.S (gesf2, lesf2, nesf2, eqsf2): Use it.
+
+2004-01-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ PR optimization/12372
+ * calls.c (expand_call): Add call_fusage data for stack arguments in
+ constant calls.
+
+2004-01-15 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (uses_TOC): Correct comment. Make static.
+ (rs6000_elf_declare_function_name): Formatting.
+ * config/rs6000/rs6000-protos.h (uses_TOC): Remove declaration.
+
+2004-01-15 Jan Hubicka <jh@suse.cz>
+
+ PR bootstrap/13692
+ * sched-deps.c (sched_analyze_1, sched_analyze_2): Fix thinko in
+ previous patch.
+
+2004-01-15 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.h (REG_ALLOC_ORDER): Reorder fp regs after
+ integer regs of the same call-savedness.
+
+2004-01-15 Andreas Schwab <schwab@suse.de>
+
+ PR bootstrap/13562
+ * config/m68k/m68k.c (output_move_const_into_data_reg): Clear cc
+ status for NOTB/NOTW/NEGW methods.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Update dump file names. Fix a typo.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * builtins.c (expand_builtin_va_end): Don't use
+ EXPAND_BUILTIN_VA_END.
+ * system.h (EXPAND_BUILTIN_VA_END): Poison.
+ * config/d30v/d30v.h: Remove a commented-out definition of
+ EXPAND_BUILTIN_VA_END.
+ * config/stormy16/stormy16.h: Likewise.
+
+2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (STRUCT_VALUE_INCOMING_REGNUM): Poison.
+ * targhooks.c (default_struct_value_rtx): Don't use
+ STRUCT_VALUE_INCOMING_REGNUM.
+
+2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
+
+ PR bootstrap/12744
+ * configure.in: Revamp enable-generated-files-in-srcdir rule to define
+ GENINSRC and not parsedir. Define srcextra as a langhook.
+ * configure: Regenerate.
+ * Makefile.in: Suppress default .l.c rule. Don't substitute
+ parsedir and delete all references throughout. Conditionally define
+ rule for srcextra dependent on GENINSRC.
+ (stmp-docobjdir): Delete.
+ (c-parse.o, gengtype-lex.o, gengtype-yacc.o): Use implicit build rule.
+ (srcextra): Copy c-parse.y, c-parse.c, gengtype-lex.c, gengtype-yacc.c,
+ and gengtype-yacc.h back to source directory.
+ (maintainer-clean): Delete all parse files in source directory.
+ (distclean): Delete generated files.
+
+ * objc/Make-lang.in (objc-parse.o): Use implicit build rule.
+ (objc-parse.c, objc-parse.y): Don't use parsedir.
+ (objc.srcextra): Copy objc-parse.y and objc-parse.c back to source
+ directory if requested.
+ (po-generated): Don't use parsedir.
+ (objc.maintainer-clean): Delete above files from source directory.
+
+2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi (FUNCTION_VALUE): Fix a typo.
+
+2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/tm.texi: Replace RETURN_IN_MEMORY with
+ TARGET_RETURN_IN_MEMORY.
+
+2004-01-15 Jan Hubicka <jh@suse.cz>
+
+ * builtins.c (std_expand_builtin_va_arg): Align operand when needed.
+ * i386.c (init_cumulative_args): Set warn_sse; fix handling of variadic
+ functions accepting SSE arguments
+ (function_arg): Warn only when asked to warn.
+ * i386.h (ix86_args): Add warn_sse/warn_mmx fiels.
+
+2004-01-14 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * c-parse.in (stmts_and_decls): Make label at end of compound
+ statement a hard error.
+
+2004-01-14 Jan Hubicka <jh@suse.cz>
+
+ * cgraph.c (create_edge): Use local.redefined_extern_inline.
+ * cgraph.h (cgraph_local_info): Sort fields by size; add
+ redefined_extern_inline
+ (cgraph_global_info): Sort fields by size.
+ (cgraph_node): Likewise.
+ * cgraphunit.c (cgraph_finalize_function): Se
+ local.redefined_extern_inline on redefinition.
+ (cgraph_analyze_function): Use it; fix formating.
+
+2004-01-14 Jan Hubicka <jh@suse.cz>
+
+ PR c++/10776
+ * sched-deps.c (trye_dependency_cache, anti_dependency_cache,
+ outptu_dependency_cache, forward_dependency_cahe): Trun to vectors of
+ bitmaps
+ (cache_size): New variable
+ (add_dependence): Update use; canonize early memory locations
+ (sched_analyze_1): Likewise.
+ (sched_analyze_2): Likewise.
+ (init_dependency_caches): Initialize bitmaps.
+ (free_dependency_caches): Free bitmaps
+
+2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * calls.c: Replace STRICT_ARGUMENT_NAMING in comments with
+ targetm.calls.strict_argument_naming().
+ * target.h: Likewise.
+
+2004-01-14 Richard Henderson <rth@redhat.com>
+
+ PR debug/13231
+ * dwarf2out.c (dwarf2out_stack_adjust): Skip prologue and epilogue
+ instructions.
+
+2004-01-14 Richard Henderson <rth@redhat.com>
+
+ PR c++/12491
+ * except.c (struct eh_region): Add u.fixup.resolved.
+ (resolve_one_fixup_region): Split out from ...
+ (resolve_fixup_regions): ... here.
+
+2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mn10300/mn10300.h (STRUCT_VALUE): Change to 0.
+
+2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/alpha/alpha.h (STRUCT_VALUE): Remove.
+ * config/alpha/vms.h (STRUCT_VALUE_REGNUM): Remove #undef.
+ (STRUCT_VALUE): Remove.
+
+2004-01-14 Steven Bosscher <stevenb@suse.de>
+
+ * system.h: Poison PROMOTED_MODE
+ * integrate.c (expand_inline_function): Don't mention the
+ PROMOTED_MODE.
+ * loop.c (update_giv_derive): Same.
+ * tree.h (DECL_RTL): Same.
+
+2004-01-14 J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR target/9365
+ * sh.c (gen_block_redirect): Add special handling of RETURN.
+ (gen_far_branch) Don't call gen_stuff_delay_slot if there is no
+ far branch target (i.e. it's a return).
+
+2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * regrename.c (find_oldest_value_reg): Fix a warning.
+
+2004-01-14 Richard Earnshaw <rearnsha@arm.com>
+
+ PR bootstrap/12527
+ * config.gcc (arm*-*-linux*): Don't include unknown-elf.h in tm_file.
+ Move linux-gas.h and linux-elf.h before aout.h.
+ * arm/arm.h (INITIALIZE_TRAMPOLINE): Only define if not already.
+ * arm/linux-elf.h (SUBTARGET_CPU_DEFAULT): Define.
+
+2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.md: Use GEN_INT instead of gen_rtx
+ (CONST_INT, VOIDmode, ...).
+
+2004-01-14 Richard Earnshaw <rearnsha@arm.com>
+
+ * regrename.c (find_oldest_value_reg): If the replacement uses
+ multiple hard registers, check that all of them are in CLASS.
+
+2004-01-14 Jan Hubicka <jh@suse.cz>
+
+ * alias.c (get_alias_set): Initialize alias set to 0 when subset is
+ impossible.
+
+2004-01-14 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in: Define MAINT from --enable-maintainer-mode.
+
+2004-01-14 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (rs6000_stack_info)
+ Calculate always vrsave_mask if TARGET_ALTIVEC.
+ (rs6000_emit_prologue): Emit code for vrsave
+ only if TARGET_ALTIVEC_VRSAVE.
+ (rs6000_emit_epilogue): Likewise.
+
+2004-01-14 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ * config/sparc/sparc.md (tie_add32): Fix pasto.
+ (tie_add64): Likewise.
+
+2004-01-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * config/i386/i386.md (*addqi_1_slp): Do not access operands[2].
+
+2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/iq2000/iq2000-protos.h: Fix comment formatting.
+ * config/iq2000/iq2000.c: Likewise.
+ * config/iq2000/iq2000.md: Likewise.
+
+2004-01-14 J. Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (is_ada_subrange_type): No longer check the TYPE_NAME.
+ (subrange_type_die): Add handle for nameless subrange types.
+
+2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Replace do_movsi with
+ h8300_expand_movsi.
+ * config/h8300/h8300.c (do_movsi): Change to
+ h8300_expand_movsi.
+ * config/h8300/h8300.md (movsi): Replace do_movsi with
+ h8300_expand_movsi.
+ (movsf): Likewise.
+
+2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (dosize): Change to
+ h8300_emit_stack_adjustment. Update callers.
+
+2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (movstrictqi): Add an alternative with
+ the source being post_inc. Tighten the predicate for the
+ destination to register_operand.
+ (movstricthi): Likewise.
+
+2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (SHARED_BSS_SECTION_ASM_OP): Poison.
+ * varasm.c (bss_section): Don't use SHARED_BSS_SECTION_ASM_OP.
+ * doc/tm.texi (SHARED_BSS_SECTION_ASM_OP): Remove.
+
+2004-01-14 Jan Hubicka <jh@suse.cz>
+
+ Partial fix PR c++/12850
+ * cgraphunit.c (cgraph_finalize_function): Always ggc_collect when
+ at zero nest level.
+
+2004-01-13 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/netbsd-elf.h (REGISTER_NAMES): Add missing "argptr"
+ pseudo-register.
+
+2004-01-13 Devang Patel <dpatel@apple.com
+
+ PR debug/7078
+ * dbxout.c (dbxout_symbol_name): Emit mangled names for
+ NAMESPACE_DECL memebers.
+
+2004-01-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR c++/12709
+ * c-common.c (finish_fname_decls): Use the chain only if the
+ tree is an expr_stmt.
+
+2004-01-13 Vladimir Makarov <vmakarov@redhat.com>
+
+ * rtl.def: Add comment about new option in automata_option.
+
+ * genautomata.c (PROGRESS_OPTION): New macro.
+ (progress_flag): New global variable.
+ (gen_automata_option): Process `progress'.
+ (transform_insn_regexps, check_unit_distributions_to_automata,
+ make_automaton, NDFA_to_DFA, build_automaton, create_automata,
+ expand_automata, write_automata): Print about the progress only if
+ progress_flag. Remove fflush.
+ (initiate_automaton_gen): Process command line flag `-progress'.
+
+ * doc/md.texi: Describe the new option.
+
+2004-01-13 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * cfg.c (dump_bb): Dump entry edges.
+
+2004-01-13 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (thumb_legitimate_address_p): Only allow constant pool
+ references from SImode.
+ * arm.md (thumb_movhi_insn): Don't allow minipool references.
+
+2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (TEXT_SECTION): Poison.
+ * varasm.c (text_section): Don't use TEXT_SECTION.
+ * config/sh/sh.c (sh_file_start): Fix a comment typo.
+ * doc/tm.texi (TEXT_SECTION): Remove.
+
+2004-01-13 Ben Elliston <bje@wasabisystems.com>
+
+ * doc/rtl.texi (Vector Operations): Remove defunct vec_const item.
+
+2004-01-12 James E Wilson <wilson@specifixinc.com>
+
+ * unwind-libunwind.c: Delete.
+
+2004-01-12 Zack Weinberg <zack@codesourcery.com>
+
+ PR 13656
+ * c-decl.c (diagnose_mismatched_decls): Whenever newtype or
+ oldtype is set, set *newtypep or *oldtypep too. Do not set
+ them at the very end.
+ (validate_proto_after_old_defn): Restructure for comprehensibility;
+ make error messages clearer.
+
+2004-01-12 Zack Weinberg <zack@codesourcery.com>
+
+ * varray.h (VARRAY_POP): Add checking variant, aborts on underflow.
+ (VARRAY_TOP): Use VARRAY_CHECK so the access is bounds-checked.
+ * varray.c: No need to prototype error.
+ (varray_check_failed): Wrap long string onto two lines.
+ (varray_underflow): New function.
+
+2004-01-13 Steven Bosscher <stevenb@suse.de>
+
+ PR c++/13376
+ * function.h (struct function): Kill `name' field.
+ (current_function_name): Make it an extern function.
+ * function.c (current_function_name): New function.
+ * graph.c: Update all uses of current_function_name.
+ * gcse.c: Likewise.
+ * config/alpha/alpha.c, config/avr/avr.c, config/c4x/c4x.c,
+ config/mips/mips.c, config/pdp11/pdp11.c: Likewise.
+ * config/ip2k/ip2k.c (function_prologue): Use MAIN_NAME_P
+ instead of a strcmp with "main".
+
+2004-01-13 Jan Hubicka <jh@suse.cz>
+
+ * c-decl.c (diagnose_mismatched_decls): Fix warning calls.
+
+ * cgraphunit.c (cgraph_optimize_function): Always do
+ optimize_inline_calls when there is always_inline callee.
+ (cgraph_decide_inlining): Fix formating.
+ * tree-inline.c (inlinable_function_p): Do sorry for alwaysinline
+ functions.
+ (expand_call_inline): Likewise.
+ * toplev.h (sorry): Fix prototype.
+
+2004-01-12 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_expect_jump): Simplify logic. Handle
+ conditional jumps that drop through to unconditional jumps or the
+ end of the sequence.
+
+2004-01-13 Jan Hubicka <jh@suse.cz>
+
+ * alias.c (new_alias_set): Construct the alias_set varray.
+ (init_alias_once): Don't do it here.
+
+2004-01-12 Marc Espie <espie@openbsd.org>
+
+ * system.h: handle YYBYACC like YYBISON.
+
+2004-01-12 Jonathan Merriman <jonm@dualitymedia.com>
+
+ PR target/10847
+ * config.gcc: No longer includes conflicting header sparc/sol2.h when
+ building on sparc64-*-openbsd*.
+
+2004-01-12 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR debug/13539
+ * dbxout.c (dbxout_type): Protected inheritance is not
+ private but protected.
+
+2004-01-12 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_symbolic_constant_p): Revert last patch.
+
+2004-01-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR optimization/12508.
+ * combine.c (try_combine): Remove a dead set in a parallel
+ even if its destination is a subreg.
+
+ Revert:
+ 2003-06-03 Kazu Hirata <kazu@cs.umass.edu>
+ * combine.c (simplify_set): Don't move a subreg in SET_SRC to
+ SET_DEST if WORD_REGISTER_OPERATIONS is not defined.
+
+2004-01-12 Geoffrey Keating <geoffk@apple.com>
+
+ * real.c: Update copyright date.
+ * emit-rtl.c: Likewise.
+ * rtl.h: Likewise.
+ * dwarf2out.c: Likewise.
+ * config/rs6000/darwin-ldouble.c: Likewise.
+ * config/rs6000/rs6000.md: Likewise.
+
+2004-01-12 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_init_libfuncs): Add AIX
+ TFmode to SImode libfuncs.
+
+2004-01-12 Roger Sayle <roger@eyesopen.com>
+
+ PR middle-end/11397
+ * varasm.c (assemble_alias): Remove weak aliases from weak_decls.
+
+2004-01-12 Jan Hubicka <jh@suse.cz>
+
+ PR opt/12826
+ * loop.c (insert_loop_mem): Preffer VOLATILE memory references to be
+ stored.
+
+ PR opt/12863
+ * cfgcleanup.c (label_is_jump_target_p): Move to...
+ * rtlanal.c (label_is_jump_target_p): ... here.
+ * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Fix redirecting of fallthru
+ edges unified with branch edges.
+
+2004-01-12 Richard Earnshaw <rearnsha@arm.com>
+
+ * simplify-rtx.c (simplify_immed_subreg): Correctly extract the
+ high word of an integral CONST_DOUBLE.
+
+2004-01-12 Paul Brook <paul@codesourcery.com>
+
+ * simplify-rtx.c (simplify_plus_minus): Always generate canonical form.
+
+2004-01-12 J"orn Rennecke <joern.rennecke@superh.com>
+
+ PR target/13585
+ * sh-protos.h (check_use_sfunc_addr): Declare.
+ * sh.c (extract_sfunc_addr, check_use_sfunc_addr): New functions.
+ * sh.md (use_sfunc_addr): Use check_use_sfunc_addr in insn predicate.
+
+2004-01-12 Jan Hubicka <jh@suse.cz>
+
+ * alias.c: Invlude varray.h
+ (alias_sets): Turn into varray.
+ (get_alias_set_entry): Use VARRAY; mark inline.
+ (mems_in_disjoint_alias_sets_p): Mark inline.
+ (record_alias_subset): Use varray.
+ (init_alias_once): Initialize varray.
+ (new_alias_set): Grow array.
+ * varray.c: Make VARRAY_GENERIC_PTR non GTYized.
+
+2004-01-12 Jan Hubicka <jh@suse.cz>
+
+ Partial fix for PR opt/10776 II
+ * cselib.c: Include params.h
+ (cselib_invalidate_mem): Limit amount of nonconflicting memory
+ locations.
+ * params.def (PARAM_MAX_CSELIB_MEMORY_LOCATIONS): New.
+ * Makefile.in (cselib.o): Depend on params.h
+
+2004-01-12 Richard Sandiford <rsandifo@redhat.com>
+
+ * combine.c (combine_simplify_rtx): Don't pass VOIDmode to
+ simplify_unary_operation if the operand has a known mode.
+
+2004-01-12 Hartmut Penner <hpenner@de.ibm.com>
+
+ PR target/13534
+ * gcc/config/rs6000/rs6000.c (word_offset_memref_operand): New
+ predicate to handle 'ld' conform addresses.
+ * gcc/config/rs6000/rs6000.h (EXTRA_CONSTRAINT): New 'Y'
+ contraint.
+ (EXTRA_MEMORY_CONSTRAINT): Tell reload which constraint
+ are memory contraints.
+ * gcc/config/rs6000/rs6000-protos.h (word_offset_memref_operand):
+ New prototype.
+ * gcc/config/rs6000/rs6000.md (*movdf_hardfloat64):
+ Change 'o' to 'Y' constraint.
+ (*movdf_softfloat64): Ditto.
+
+2004-01-12 Bernardo Innocenti <bernie@develer.com>
+
+ * gcc/config/m68k/m68k.md: Switch from the "*..." syntax to the
+ brace-enclosed syntax in all C output statements.
+
+2004-01-12 David Edelsohn <edelsohn@gnu.org>
+
+ PR target/13401
+ * config/rs6000/rs6000.c (rs6000_output_function_epilogue):
+ Objective-C language type value is 14.
+
+2004-01-12 Markus F.X.J. Oberhumer <markus@oberhumer.com>
+
+ PR c/12148
+ * config/m68k/fpgnulib.c: Fix `-mshort' bugs: Use `long' instead of
+ `int' in a number of places to make sure we always have a SImode
+ and not a HImode. Add a 'L' suffix to a number of constants.
+
+2004-01-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa.c: Don't include obstack.h.
+
+ * pa.md: Correct constraint in pattern for loading PIC label address.
+
+2004-01-11 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Undefine
+ before defining.
+
+2004-01-11 Steven Bosscher <stevenb@suse.de>
+
+ PR fortran/9972
+ * toplev.c (rest_of_handle_inline): Also consider functions
+ for deferral if the language is GNU F77.
+
+2004-01-11 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (diagnose_arglist_conflict): Add missing space to
+ diagnostic messages.
+
+2004-01-11 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/13392
+ * builtins.c (expand_builtin_expect_jump): Handle conditional jumps
+ to drop through label. Don't fall back to SCC even when conditional
+ jump has not been found.
+
+2004-01-11 Jan Hubicka <jh@suse.cz>
+
+ * invoke.texi: Fix syntax error in previous patch.
+
+ Partial fix for PR opt/10776
+ * Makefile.in (reload.o): Include param.h
+ * params.def (PARAM_MAX_RELOAD_SEARCH_INSNS): New parameter.
+ * reload.c: Include params.h.
+ (find_equiv_reg): Work limiting check.
+ * invoke.texi: Document.
+
+2004-01-11 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_symbolic_constant_p): Don't allow
+ out-of-bounds accesses to string constants. Simplify mips16
+ case accordingly.
+
+2004-01-11 Richard Sandiford <rsandifo@redhat.com>
+
+ PR optimization/13469
+ * toplev.c (rest_of_compilation): Call purge_all_dead_edges after
+ reload_cse_regs (-fnon-call-exceptions only).
+
+2004-01-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mcore/lib1.asm: Fix comment formatting.
+ * config/mcore/mcore-elf.h: Likewise.
+ * config/mcore/mcore.c: Likewise.
+ * config/mcore/mcore.h: Likewise.
+ * config/mcore/mcore.md: Likewise.
+
+2004-01-10 Zack Weinberg <zack@codesourcery.com>
+
+ * c-decl.c (duplicate_decls): Break apart into...
+ (diagnose_arglist_conflict, validate_proto_after_old_defn)
+ (locate_old_defn, diagnose_mismatched_decls, merge_decls):
+ ... these new functions. Restructure for comprehensibility.
+ Remove various archaic special cases. Always report the
+ location of the previous declaration when a diagnostic is issued.
+ (redeclaration_error_message): Fold into diagnose_mismatched_decls.
+ (match_builtin_function_types): Delete unnecessary forward declaration.
+
+2004-01-10 Zack Weinberg <zack@codesourcery.com>
+
+ * genautomata.c (make_automaton, NDFA_to_DFA):
+ Print progress bars with '.' characters instead of '*'.
+ (build_automaton): Change notes to match.
+
+2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.md: Use define_constants for unspec and
+ unspec_volatile.
+
+2004-01-10 Jan Hubicka <jh@suse.cz>
+
+ PR opt/11635
+ * expr.c (expand_expr_real): More curefully expand union casts.
+
+2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.md (flush_icache): Use 1 for
+ unspec_volatile.
+
+2004-01-10 David Edelsohn <edelsohn@gnu.org>
+ James E Wilson <wilson@specifixinc.com>
+
+ PR debug/12860
+ * dbxout.c (dbxout_symbol): Remove initialization of
+ current_sym_code, current_sym_value, and current_sym_addr.
+ (dbxout_symbol_location): Same.
+ (dbxout_prepare_symbol): Zero current_sym_code,
+ current_sym_value, and current_sym_addr.
+
+2004-01-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * tree.c (get_unwidened): Reorder conditions so that the null pointer
+ check is done first.
+
+2004-01-09 Eric Christopher <echristo@redhat.com>
+
+ * toplev.c (rest_of_handle_cfg): Add reg_scan pass
+ if we're running mark_constant_function.
+
+2004-01-09 Jeff Bailey <jbailey@nisa.net>
+
+ PR target/12561
+ * config/t-gnu: Rename SYSTEM_HEADER_DIR to NATIVE_SYSTEM_HEADER_DIR.
+
+2004-01-09 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR debug/11231
+ * dbxout.c (dbxout_type_fields): Return if any item is
+ error_mark_node or the type is error_mark_node.
+
+2004-01-09 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/darwin-ldouble.c: Add big comment explaining
+ exactly what is expected as a 'long double'.
+ (_xlqadd): When a value to be returned is representable as a
+ 'double', just return it directly, do not construct it using a union.
+ Also, correct final fixup.
+ (_xlqmul): Likewise.
+ (_xlqdiv): Likewise.
+ * real.c (encode_ibm_extended): Make consistent with darwin-ldouble.c.
+
+ * config/rs6000/rs6000.md (fix_trunctfdi2): Delete.
+
+2004-01-09 Richard Henderson <rth@redhat.com>
+
+ * recog.c (constrain_operands): Validate mem operands.
+
+2004-01-09 James E Wilson <wilson@specifixinc.com>
+
+ * gcc.c (init_spec): Remove -lunwind from shared case.
+ * conifg/ia64/t-hpux (SHLIB_LINK): Add -lunwind.
+
+2004-01-09 Steve Ellcey <sje@cup.hp.com>
+
+ * configure.ac: (gcc_cv_ld_hidden) Set to true for ia64*-*-hpux*.
+ * configure: Regenerate
+
+2004-01-09 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/11234
+ * c-typeck.c (build_c_cast): If pedantic, warn for conversions
+ between function and object pointers.
+ (digest_init): When comparing a pointer to function type to the
+ target type, only apply TREE_TYPE once to the pointer to function
+ type.
+ * except.c (for_each_eh_label_1): Treat data as a pointer to a
+ function pointer rather than casting it to a function pointer.
+ (for_each_eh_label): Update caller.
+ * recog.h (struct insn_data): Use a struct or union for output.
+ * genoutput.c (output_insn_data): Update.
+ * final.c (get_insn_template): Update.
+
+2004-01-09 Mark Mitchell <mark@codesourcery.com>
+
+ * expr.h (expand_expr): Make it a macro, not a function.
+ (expand_expr_real): New function.
+ * expr.c (store_expr): Adjust logic for deciding whether or not to
+ copy the value returned by expand_expr.
+ (expand_expr): Rename to ...
+ (expand_expr_real): ... this. Add alt_rtl parameter. Adjust
+ calls to language hooks.
+ * c-common.h (c_expand_expr): Adjust prototype.
+ * c-common.c (c_expand_expr): Add alt_rtl parameter.
+ * langhooks-def.h (lhd_expand_expr): Change prototype.
+ * langhooks.c (lhd_expand_expr): Add all_rtl parameter.
+ * langhooks.h (lang_hooks): Change type of expand_expr.
+ * stmt.c (stmt_status): Add x_last_expr_alt_rtl.
+ (last_expr_alt_rtl): Likewise.
+ (expand_expr_stmt_value): Set last_expr_alt_rtl.
+ (clear_last_expr): Clear it.
+ (expand_end_stmt_expr): Set RTL_EXPR_ATL_RTL.
+ (expand_end_bindings): Save and restor last_expr_alt_rtl.
+ * tree.def (RTL_EXPR): Give it an additional operand.
+ * tree.h (RTL_EXPR_ALT_RTL): New macro.
+
+2004-01-09 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (TARGET_CPU_CPP_BUILTINS): Add __m32r__.
+ * config/m32r/m32r.c (call26_operand): Allow in PIC mode.
+
+2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ PR target/13380.
+ * config/m32r/m32r.md: Replace (reg:SI 17) with (reg:CC 17)
+ or (ne:SI (reg:CC 17) (const_int 0)).
+ Be specific about modes wherever possible.
+
+2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m32r/m32r.c (m32r_expand_block_move): Call
+ gen_movestrsi_internal with two more arguments.
+ (m32r_output_block_move): Adjust operand numbers.
+ Properly update the source and destination pointers.
+ * config/m32r/m32r.md (movstrsi_internal): Use 'r' instead of
+ 'r+'. Change the set detinations to match_operand.
+
+2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * final.c (FIRST_INSN_ADDRESS): Remove.
+ (shorten_branches): Don't use FIRST_INSN_ADDRESS.
+ * system.h (FIRST_INSN_ADDRESS): Poison.
+ * config/avr/avr.h: Remove a comment about FIRST_INSN_ADDRESS.
+ * config/m32r/m32r-protos.h: Remove the prototype for
+ m32r_first_insn_address.
+ * config/m32r/m32r.c (m32r_first_insn_address): Remove.
+ * config/m32r/m32r.h (FIRST_INSN_ADDRESS): Likewise.
+ * doc/md.texi (FIRST_INSN_ADDRESS): Likewise.
+
+2004-01-09 J. Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (gen_enumeration_type_die): Return the DIE that
+ we just created.
+ (is_ada_subrange_type): DIEs for enumeration subtypes should be
+ emitted as subrange types too.
+ (subrange_type_die): Add handling of enumeration subtypes.
+
+2004-01-08 Richard Henderson <rth@redhat.com>
+
+ PR opt/12441
+ Revert: Sat Mar 30 14:08:55 CET 2002 Jan Hubicka <jh@suse.cz>
+ * i386.c (aligned_operand): Be prepared for SUBREGed registers.
+ (ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG.
+ (ix86_address_cost): Be prepared for SUBREGed registers.
+ (legitimate_address_p): Accept SUBREGed registers.
+
+2004-01-08 Kelley Cook <kcook@gcc.gnu.org>
+
+ * Makefile.in: Rename configure.in to configure.ac
+ * doc/sourcebuild.texi: Likewise.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+
+2004-01-08 Stuart Hastings <stuart@apple.com>
+
+ * config/i386/i386.md: Typos in MMX/SSE immediate shifts.
+
+2004-01-08 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_decide_inlining): Fix typo.
+
+2004-01-08 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/rs6000.md (cmptf_internal1): Correct branch offset.
+ (UNSPEC_FIX_TRUNC_TF): New constant.
+ (movtf_internal): Make splitter active only when insn is active.
+ (extenddftf2): Rewrite to properly load zero into low part.
+ (extenddftf2_internal): New.
+ (extendsftf2): Rewrite.
+ (truncdftf2): Correct length.
+ (floatditf2): Delete.
+ (fix_trunc_helper): New.
+ (fix_trunctfdi2): Use fix_trunc_helper.
+ (fix_trunctfsi2): Likewise.fix_trunc
+ (fix_trunctfsi2_internal): New.
+
+ * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): lo_sum
+ addresses are legitimate on Darwin even when flag_pic.
+ (rs6000_legitimize_reload_address) [TARGET_MACHO]: Don't create
+ non-offsettable addresses for loads of TFmode constants.
+
+2004-01-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_BSS): Actually emit
+ variables in the appropriate bss section.
+
+2004-01-09 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Ensure
+ target_flags has MASK_POWERPC64 when -m64.
+ * config/rs6000/rs6000.c (processor_target_table): Add MASK_POWERPC64
+ to 620, 630, power3, power4 and rs64a entries.
+ * config/rs6000/rs6000.h (MASK_64BIT): Expand comment.
+
+2004-01-08 Richard Sandiford <rsandifo@redhat.com>
+
+ * simplify-rtx.c (simplify_immed_subreg): Fix construction of
+ floating-point constants.
+
+2004-01-08 J. Brobecker <brobecker@gnat.com>
+
+ * dwarf2out.c (subrange_type_die): Add context_die parameter.
+ Create the subrange_type DIE using the given context DIE.
+ (modified_type_die): Update call to subrange_type_die.
+
+2004-01-08 Zack Weinberg <zack@codesourcery.com>
+
+ * dwarf2.h, unwind-dw2-fde.h, unwind-pe.h, unwind.h:
+ Add multiple-include guard.
+
+2004-01-08 Hartmut Penner <hpenner@de.ibm.com>
+
+ * gcc/config/rs6000/rs6000.c (easy_vector_constant): Accept
+ all vector constant loadable by vsplt*.
+ (output_vec_const_move): Likewise.
+
+2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/6024
+ * c-typeck.c (comptypes): Only treat enumerated types in the same
+ translation unit as compatible with each other when they are the
+ same type.
+ * doc/extend.texi: Update.
+
+2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/12165
+ * c-decl.c (grokdeclarator): Take type qualifiers of typedefed
+ array type from the array element type.
+
+2004-01-07 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_dbx_register_number): New function.
+ * config/rs6000/rs6000-protos.h (rs6000_dbx_register_number): Declare.
+ * config/rs6000/rs6000.h (DWARF_FRAME_REGNUM): Define.
+ (DWARF_REG_TO_UNWIND_COLUMN): Correct column adjustment and comment.
+ * config/rs6000/sysv4.h (DBX_REGISTER_NUMBER): Define.
+
+2004-01-06 Eric Christopher <echristo@redhat.com>
+
+ * config/mips/mips.h (MDEBUG_ASM_SPEC): Change for dwarf2 default.
+ (DWARF2_DEBUGGING_INFO): Define.
+ (PREFERRED_DEBUGGING_TYPE): Set to dwarf2.
+ * config/mips/openbsd.h (PREFERRED_DEBUGGING_TYPE): Remove.
+ * config/mips/iris6.h (SUBTARGET_ASM_DEBUGGING_SPEC): Only pass -g0
+ for irix as.
+ (SUBTARGET_ASM_OPTIMIZING_SPEC): Only pass O0 for irix as.
+ * config/mips/iris6gas.h (MDEBUG_ASM_SPEC): Remove.
+ * config/mips/iris5gas.h: Ditto.
+ (DBX_DEBUGGING_INFO): Remove.
+ (DWARF2_DEBUGGING_INFO): Ditto.
+ (MIPS_DEBUGGING_INFO): Ditto.
+ (PREFERRED_DEBUGGING_TYPE): Ditto.
+ * config/mips/elf.h (DWARF2_DEBUGGING_INFO): Remove.
+ (PREFERRED_DEBUGGING_TYPE): Ditto.
+ (SUBTARGET_ASM_DEBUGGING_SPEC): Ditto.
+ * config/mips/elf64.h: Ditto.
+
+2004-01-06 Jan Hubicka <jh@suse.cz>
+
+ * Makefile.in (STAGEPROFILE_FLAGS_TO_PASS): Use -fprofile-generate.
+ (STAGEFEEDBACK_FLAGS_TO_PASS): Use -fprofile-use.
+
+2004-01-06 Geoffrey Keating <geoffk@apple.com>
+
+ * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Compile darwin-ldouble.c.
+ (TARGET_LIBGCC2_CFLAGS): Use -mlong-double-128.
+ * config/rs6000/darwin-ldouble.c: New.
+
+ * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
+ for constants.
+ (constant_subword): Delete.
+ * rtl.h (constant_subword): Delete prototype.
+ (immed_double_const): Is not in varasm.c.
+ * simplify-rtx.c (simplify_immed_subreg): New.
+ (simplify_subreg): Use simplify_immed_subreg.
+
+ * config/rs6000/rs6000.md (floatsitf2): Use expand_float rather
+ than trying to generate RTL directly.
+ (fix_trunctfsi2): Use expand_fix rather than trying to generate
+ RTL directly.
+
+ * dwarf2out.c (add_const_value_attribute): Remove incorrect comment.
+
+2004-01-06 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/xcoff.h (EXTRA_SECTION_FUNCTIONS): Split each
+ function into a separate macro.
+ (read_only_data_section): Add void argument.
+ (private_data_section): Same.
+ (read_only_private_data_section): Same.
+ (toc_section): Same.
+
+2004-01-06 Jan Hubicka <jh@suse.cz>
+
+ * invoke.texi: Remove typo in last change.
+
+ PR target/10301
+ * config.gcc: Accept opteron and athlon-64 as variants
+ of k8.
+ * i386.c (override_options): Likewise.
+ * invoke.texi (i386 -mtune): Expand documentation.
+
+2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * alias.c: Fix comment typos.
+ * builtins.c: Likewise.
+ * cfg.c: Likewise.
+ * df.c: Likewise.
+ * dominance.c: Likewise.
+ * dwarf2out.c: Likewise.
+ * emit-rtl.c: Likewise.
+ * expr.c: Likewise.
+ * final.c: Likewise.
+ * fold-const.c: Likewise.
+ * gcse.c: Likewise.
+ * genattrtab.c: Likewise.
+ * genrecog.c: Likewise.
+ * gensupport.c: Likewise.
+ * ggc-zone.c: Likewise.
+ * integrate.c: Likewise.
+ * local-alloc.c: Likewise.
+ * loop.c: Likewise.
+ * recog.c: Likewise.
+ * regmove.c: Likewise.
+ * reg-stack.c: Likewise.
+ * reorg.c: Likewise.
+ * rtlanal.c: Likewise.
+ * rtl.h: Likewise.
+ * sched-ebb.c: Likewise.
+ * simplify-rtx.c: Likewise.
+ * toplev.c: Likewise.
+ * varasm.c: Likewise.
+
+2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/install.texi: Fix typos.
+ * doc/invoke.texi: Likewise.
+ * doc/md.texi: Likewise.
+
+2004-01-06 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
+
+ * config/m32r/m32r.h (TRAMPOLINE_LINE_SIZE): Changed
+
+2004-01-06 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (init_cumulative_args): Add handling of MMX_REGPARM.
+ (function_arg_advance): Do not pass aggregates in SSE; deal handling
+ of MMX_REGPARM.
+ (function_arg): Add new warnings about ABI changes; fix SSE_REGPARM;
+ add MMX_REGPARM.
+ * i386.h (ix86_args): Add mmx_words/mmx_regs/mmx_regno fields.
+ (SSE_REGPARM_MAX): Default to 3 on i386 -msse ABI.
+ (MMX_REGPARM_MAX): Similarly for -mmmx.
+
+2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/sh/linux.h: Fix comment formatting.
+ * config/sh/netbsd-elf.h: Likewise.
+ * config/sh/sh.c: Likewise.
+ * config/sh/sh.h: Likewise.
+ * config/sh/vxworks.h: Likewise.
+
+2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * system.h (ASM_OUTPUT_MAIN_SOURCE_FILENAME): Poison.
+ * toplev.c (output_file_directive): Don't use
+ ASM_OUTPUT_MAIN_SOURCE_FILENAME.
+
+2004-01-05 Steven Bosscher <s.bosscher@student.tudelft.nl>
+
+ * toplev.c: Fix broken checkin of 2003-12-30.
+
+2004-01-05 Daniel Berlin <dberlin@dberlin.org>
+
+ * ggc-zone.c: Remove everything in #ifdef USING_MALLOC_PAGE_GROUPS
+ (USING_MMAP): We don't support non-mmap.
+ (struct alloc_chunk): Steal 1 bit from typecode, use it to mark
+ large objects.
+ (struct page_entry): Remove bytes_free.
+ (struct page_table_chain): Remove.
+ (struct globals): Remove page_table member.
+ (loookup_page_table_entry): Function deleted.
+ (set_page_table_entry): Ditto.
+ (ggc_allocated_p): No longer need page table lookups.
+ (ggc_marked_p): Ditto.
+ (alloc_small_page): Don't care about bytes_free anymore.
+ (alloc_large_page): Round up size.
+ (ggc_alloc_zone_1): Mark large objects as such, and calculate
+ their size the new way.
+ Remove page table lookups and setting.
+ (ggc_get_size): Calculate large object size the new way.
+ (sweep_pages): Redo to account for fact that we no longer have
+ bytes_free.
+ (ggc_collect): No longer need to reincrement bytes_free.
+ (ggc_pch_alloc_object): Handle new large objects properly.
+ (ggc_pch_read): Put PCH stuff into it's own uncollected zone.
+
+2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Remove a page break.
+
+2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/avr/avr.c (avr_output_function_prologue): Remove an
+ extra pair of curly braces.
+
+2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mn10300/mn10300.c: Fix comment formatting.
+ * config/mn10300/mn10300.h: Likewise.
+
+2004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * tree.h: Update documentation on nothrow_flag.
+ * print-tree.c (print_node): Print TREE_NOTHROW as "align-ok" for
+ types.
+
+2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
+
+ * doc/invoke.texi: Remove traces of dead ports.
+
+2004-01-05 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Add documentation for the MIPS -mexplicit-relocs
+ option.
+
+2004-01-05 Richard Sandiford <rsandifo@redhat.com>
+
+ PR target/12945
+ * coverage.c (coverage_counter_alloc): Set SYMBOL_FLAG_LOCAL for
+ counter labels.
+ * config/mips/mips.c (INTERNAL_SYMBOL_P): Delete.
+ (mips_classify_symbol): Always treat SYMBOL_REF_FLAG as indicating
+ string constants if TARGET_MIPS16. Use SYMBOL_REF_DECL to check
+ the binding of decl symbols, otherwise check SYMBOL_REF_LOCAL_P.
+ (mips_symbol_insns): Don't trust the local/global classification.
+ (m16_usym8_4, m16_usym5_4): Same mips16 change as mips_classify_symbol.
+ (override_options): Make -mabicalls -fno-unit-at-a-time imply
+ -mno-explicit-relocs.
+ (mips_encode_section_info): Don't use SYMBOL_REF_FLAG to distinguish
+ between local and global symbols.
+
+2004-01-05 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips-protos.h (mips_dangerous_for_la25_p): Declare.
+ (mips_preferred_reload_class): Declare.
+ * config/mips/mips.h (DANGEROUS_FOR_LA25_P): Replace with function.
+ (EXTRA_CONSTRAINT): Update accordingly.
+ (PREFERRED_RELOAD_CLASS): Use mips_preferred_reload_class.
+ * config/mips/mips.c (mips_dangerous_for_la25_p): New function.
+ (mips_preferred_reload_class): New function. Prefer LEA_REGS if
+ mips_dangerous_for_la25_p.
+ (mips_secondary_reload_class): Use LEA_REGS rather than GR_REGS
+ if mips_dangerous_for_la25_p.
+
+2004-01-05 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c (output_andsi3): Fix signed/unsigned comparison
+ warning.
+
+2004-01-04 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Use AC_PROG_CPP_WERROR.
+ * configure: Regenerate.
+
+2004-01-04 Zack Weinberg <zack@codesourcery.com>
+
+ * .cvsignore: Add autom4te.cache.
+
+2004-01-04 Richard Sandiford <rsandifo@redhat.com>
+
+ * doc/invoke.texi: Revamp documentation of MIPS options. Remove
+ -mabi=meabi, -mabi-fake-default, -mmips-as, -mgas, -mmips-tfile,
+ -m4650, -mfix7000 and -(m)no-crt0. Put endianness options first,
+ then architecture options, then ABI options. General rewording.
+
+2004-01-04 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ PR c/3414
+ * doc/extend.texi: Clarify definition of malloc attribute.
+
+2004-01-04 Jan Hubicka <jh@suse.cz>
+
+ * Makefile.in (cgraph.o, cgraphunit.o): Add intl.h dependency.
+ * cgraph.c (create_edge, dump_cgraph): Update to use inline_failed
+ * cgraph.h (cgraph_edge): Replace inline_call by inline_failed
+ (cgraph_inline_p): Add extra argument reason.
+ * cgraphunit.c: Minor formating fixes.
+ cgraph_first_inlined_callee): New functions.
+ (record_call_1): Record builtins too.
+ (cgraph_analyze_function): Update inline_failed messages.
+ (cgraph_mark_functions_to_output, cgraph_expand_function, cgraph_inlined_into,
+ cgraph_inlined_callees, cgraph_estimate_growth): Update to use inline_failed.
+ (cgraph_check_inline_limits): Likewise; Add argument reason.
+ (cgraph_set_inline_failed): New static function.
+ (cgraph_decide_inlining_of_small_function, cgraph_decide_inlining): Set
+ reasons.
+ (cgraph_inline_p): Add new argument reason.
+ * tree-inline.c (expand_call_inline): Update warning.
+
+2004-01-03 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM
+ with modern equivalents.
+ * configure: Regenerate.
+
+ * configure.ac: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE.
+ * aclocal.m4 (gcc_AC_CHECK_TYPE): Remove.
+ * configure: Regenerate.
+
+ * doc/install.texi: Note that 'gcc' is now a 2.57 directory.
+
+ * configure.in: Rename to configure.ac.
+ * configure.ac: Renamed from configure.in; make minimum necessary
+ changes for autoconf 2.5x.
+ * aclocal.m4: Make minimum necessary changes for autoconf 2.5x.
+ * configure: Regenerate with autoconf 2.57.
+
+2004-01-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mips/linux.h: Fix comment formatting.
+ * config/mips/mips.c: Likewise.
+ * config/mips/mips.h: Likewise.
+ * config/mips/mips.md: Likewise.
+ * config/mips/netbsd.h: Likewise.
+ * config/mips/windiss.h: Likewise.
+
+2004-01-02 Richard Henderson <rth@redhat.com>
+
+ * config/i386/i386.md (fp constant pool splitter): Reorg suppression
+ for sse and 387; add suppression for mmx.
+
+2004-01-02 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * loop.c (loop_optimize): Free all loops_info's mems.
+
+ * c-typeck.c (finish_init): Free spelling_base before
+ setting it again.
+
+ * cfgloop.c (flow_loops_find): Always free the sbitmap
+ headers.
+
+ * predict.c (estimate_probability): Free bbs after being
+ done with it.
+
+2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/mn10300/mn10300.h (PREDICATE_CODES): Add
+ const_8bit_operand and call_address_operand.
+
+2004-01-02 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_optimize_function): Call optimize_inline_calls
+ when there is nothing to inline but warnings are requested.
+ (cgraph_decide_inlining): Fix memory leak.
+
+2004-01-02 Jan Hubicka <jh@suse.cz>
+
+ * expr.c (store_constructor): Fix pasto in previous patch.
+
+2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/i386/cygming.h: Fix comment formatting.
+ * config/i386/djgpp.h: Likewise.
+ * config/i386/gthr-win32.c: Likewise.
+ * config/i386/i386-interix.h: Likewise.
+ * config/i386/i386.c: Likewise.
+ * config/i386/i386.h: Likewise.
+ * config/i386/openbsd.h: Likewise.
+ * config/i386/winnt.c: Likewise.
+ * config/i386/xm-mingw32.h: Likewise.
+
+2004-01-02 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * doc/gcc.texi, doc/invoke.texi, doc/install.texi: Update
+ copyright and last modification dates.
+
+2004-01-02 Andreas Jaeger <aj@suse.de>, Gerald Pfeifer <gp@suse.de>
+
+ * doc/install.texi (Specific): Mention x86_64.
+
+2004-01-01 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * builtins.c (expand_builtin_apply_args_1) [STACK_GROWS_DOWNWARD]:
+ Call force_operand on plus_constant result.
+
+2004-01-01 Jan Hubicka <jh@suse.cz>
+
+ * expmed.c (store_bit_field, extract_bit_field): Use new named patterns
+ * expr.c (store_constructor): Use vec_init pattern.
+ * genopinit.c (optabs): Initailize vec_set/vec_extract/vec_init.
+ * optabs.h (optab_index): ADD OTI_vec_set/OTI_vec_extract/OTI_vec_init
+ (vec_set_optab, vec_extract_optab, vec_init_optab): New.
+ * i386.md (vec_setv2df, vec_extractv2df, vec_setv4sf, vec_extractv4sf):
+ New patterns.
+ (sse2_unpc?pd): Fix pattern.
+ (sse2_movlpd): Kill.
+ (sse2_movsd): Deal with movlpd too.
+ * i386.c (ix86_expand_builtin): Use sse2_movsd instead of sse2_movlpd.
+ (ix86_expand_vector_init): New.
+ * emmintrin.h (__mm_set_pd, __mm_set_ps): Use vector extensions.
+ * md.texi (vec_set, vec_extract): Document
diff --git a/gcc/ChangeLog.0 b/gcc/ChangeLog.0
deleted file mode 100644
index 4ed06520ca4..00000000000
--- a/gcc/ChangeLog.0
+++ /dev/null
@@ -1,13011 +0,0 @@
-Tue Jul 14 02:20:38 1998 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump to avoid problems with old spec files during
- bootstrap.
-
-Mon Jul 13 23:11:44 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
-
- * config/sparc/sparc.c (output_scc_insn): Enclose || conditions in
- parens while walking over notes.
- * config/sparc/sparc.md (reg movdi split): Clean up matching
- conditions.
- (all DI arithop splits on 32-bit): Handle immediate arguments
- correctly when they are CONST_INTs.
-
-Mon Jul 13 23:57:21 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
-
- * m68k/m68k.h (TARGET_SWITCHES): Clear MASK_68040_ONLY for
- -m68020-40, -m68020-60 and -m5200.
-
-Mon Jul 13 23:52:05 1998 Weiwen Liu <weiwen.liu@yale.edu>
-
- * gcc.c (do_spec_1): Fix %O handling for secure temporary file
- creation.
-
-Mon Jul 13 23:42:36 1998 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * sh/elf.h (MAX_OFILE_ALIGNMENT): Undefine before including svr4.h.
-
-Mon Jul 13 23:36:08 1998 Jim Wilson <wilson@cygnus.com>
-
- * i386/i386.h (CPP_486_SPEC, CPP_586_SPEC, CPP_686_SPEC): New specs.
- (CPP_CPU_DEFAULT_SPEC, CPP_CPU_SPEC): Use them.
- (EXTRA_SPECS): Support them.
- * gcc.c: Delete %[spec] support.
- (do_spec_1, case '('): Likewise.
- (do_spec_1, case '['): Call error.
- * i386/aix386ng.h, cygwin32.h, freebsd-elf.h, gas.h, isc.h,
- linux-aout.h, linux-oldld.h, linux.h, osfelf.h, osfrose.h, sco.h,
- sco4.h, sco4dbx.h, sco5.h, sol2.h, sysv3.h (CPP_SPEC): Delete
- %[cpp_cpu].
-
-Mon Jul 13 23:31:04 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * m68k.c (output_scc_di): Use cmpw #0 only for address registers.
-
-Mon Jul 13 23:26:43 1998 Jeffrey A Law (law@cygnus.com)
-
- * tree.h (tree_common): Note front-end dependencies on layout of
- this structure.
-
-Mon Jul 13 23:18:39 1998 Craig Burley <burley@gnu.org>
-
- * stmt.c (expand_expr_stmt): If not assigning fresh
- value to last_expr_value, zero it, so old garbage
- doesn't get dereferenced.
-
-Mon Jul 13 23:06:55 1998 Henning.Petersen@t-online.de (Henning Petersen)
-
- * gcse.c (hash_scan_insn): Add missing argument declaration.
-
-Mon Jul 13 18:59:13 1998 Jim Wilson <wilson@cygnus.com>
-
- * configure.in (mips-sgi-irix5cross64, mips-sgi-irix5*): Remove
- HAVE_INTTYPES_H from xm_defines. Define xm_file to mips/xm-iris5.h.
- * mips/xm-iris5.h (USG): Delete.
-
-Mon Jul 13 17:18:47 1998 Nick Clifton <nickc@cygnus.com>
-
- * cccp.c (main): Add support for parsing --help.
- (display_help): New function: display command line switches.
-
- * cpplib.c (cpp_handle_option): Add support for parsing --help.
- (display_help): New function: display command line switches.
-
- * gcc.c (main): Add support for parsing --help, and passing it on
- to the sub-processes invoked by gcc.
- (display_help): New function: display command line switches.
-
- * tm.texi (TARGET_SWITCHES and TARGET_OPTIONS): Document
- 'description' field added to structure.
-
- * toplev.c: Add support for parsing --help.
- Add documentation strings to command line option tables.
- (display_help): New function: display comman line switches.
-
-Mon Jul 13 16:15:10 1998 John Carr <jfc@mit.edu>
-
- * sparc.c, sparc.h, sparc.md: New trampoline code.
- Allow integer operand 1 to V8+ DImode shift instructions.
- Fix bugs in V8+ wide multiply patterns.
- In 32 bit mode, split DImode register moves and logical instructions.
- Write V9 branch prediction flag.
- Use V9 conditional move more often for scc.
-
-Mon Jul 13 15:10:09 1998 Philippe De Muyter <phdm@macqel.be>
-
- * invoke.texi(-fno-builtin): Explain that the names of built-in
- functions begin with `__builtin_', not `__'.
-
-Mon Jul 13 19:01:52 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (reload_reg_free_before_p): Abort for RELOAD_FOR_OUTPUT.
-
-Mon Jul 13 10:50:17 1998 Mark Mitchell <mark@markmitchell.com>
-
- * cplus-dem.c (SCOPE_STRING): Remove DMGL_JAVA stuff.
- (cplus_demangle_opname): Initialize work.
- (demangle_template): Remove is_java_array.
- (do_type): Remove DMGL_JAVA stuff.
- (long_options): Remove "java".
- (main): Remove 'j' option.
-
-Mon Jul 13 10:19:00 1998 Jeffrey A Law (law@cygnus.com)
-
- * mn10300.h (REG_CLASS_FROM_LETTER): Map 'y' to SP_REGS.
- Handle 'x' as NO_REGS for this cpu.
- (REGNO_OK_FOR_BIT_BASE_P): Define.
- (REG_OK_FOR_BIT_BASE_P): Define.
- (GO_IF_LEGITIMATE_ADDRESS): Use them.
- (REG_OK_FOR_INDEX_P): Tweak.
- * mn13000.c (REG_SAVE_BYTES): Define.
- (expand_epilogue, initial_offset): Use it.
- (secondary_reload_class): Slightly reformat.
- (output_tst): Tweak comments.
- * mn10300.md: Change 'x' to 'y' for SP_REGS. Then add 'x' to many
- patterns.
- (addsi3): Turn into a define_expand/define_insn pair. Rework code for
- three operand addition case to be more efficient.
- (subsi3): Turn into a define_expand/define_insn pair.
-
- * expr.c (expand_expr): Only set MEM_IN_STRUCT_P if the memory address
- is not varying for REFERENCE_TYPE or when we think we might have found
- an optimized access to the first element in an array.
-
-Mon Jul 13 02:24:08 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
-
- * regclass.c (reg_scan_mark_refs): New arg min_regno. Only update
- regscan information for REGs with numbers greater than or equal to
- this. All callers changed.
- (reg_scan_update): New function to efficiently update regscan
- information on the fly.
- * rtl.h: Add prototype.
- * jump.c (jump_optimize): Call it when we make a transformation
- which generates new pseudo-REGs.
-
-Sun Jul 12 13:08:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * collect2.c (main): Use "-x c" instead of "-lang-c" for force the
- compiler into C mode.
-
-Sun Jul 12 01:27:05 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * cplus-dem.c (demangle_nested_args): Return a value.
-
- * tree.h (TYPE_P): New macro.
-
-Sat Jul 11 16:19:48 1998 Mark Mitchell <mark@markmitchell.com>
-
- * cplus-dem.c (string): Move definition before work_stuff.
- (work_stuff): Add volatile_type, forgetting_types,
- previous_argument, and nrepeats fields.
- (SCOPE_STRING): New macro.
- (demangle_template): Add `remember' parameter. Add comment.
- Register the `B' code type here, if remembering. Tidy. Fix crash
- on NULL tmpl_argvec. Be consistent with use of tname/trawname.
- (demangle_nested_args): New function.
- (internal_cplus_demangle): Handle volatile-qualified member
- functions.
- (mop_up): Delete the previous_argument string if present.
- (demangle_signature): Tidy. Handle volatile-qualified member
- functions. Handle back-references using the `B' code. Use extra
- parameter to demangle_template and SCOPE_STRING where appropriate.
- (demangle_template_value_parm): Fix thinko; 'B' is not an integral
- code.
- (demangle_class): Use SCOPE_STRING.
- (gnu_special): Pass additional argument to demangle_template.
- Use SCOPE_STRING.
- (demangle_qualified): Save qualified types for later
- back-references. Handle constructors and destructors for template
- types correctly.
- (do_type): Tidy. Use SCOPE_STRING. Pass extra argument to
- demangle_template. Use demangled_nested_args. Don't remember
- qualified types here; that's now done in demangle_qualified.
- Similarly for templates.
- (do_arg): Improve comment. Handle 'n' repeat code.
- (remember_type): Check forgetting_types.
- (demangle_args): Deal with 'n' repeat codes. Tidy.
-
-Sat Jul 11 02:59:08 1998 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (extendhisi2_mem, movhi, movhi_bytes): Propagate the volatile
- and structure attribute flags to MEMs generated.
- (splits for sign-extended HI & QI mode from memory): Also propagate
- the volatile flag.
-
- * configure.in (thumb-*-coff*): Don't cause fixincludes to be run.
-
-Fri Jul 10 19:06:59 1998 Michael Meissner <meissner@cygnus.com>
-
- * varray.h: Include system.h if it hasn't already been included
- before to get size_t declared.
-
-Fri Jul 10 12:53:58 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
-
- * jump.c (jump_optimize): If after_regscan and our transformations
- generate new REGs, rerun reg_scan.
-
-Fri Jul 10 11:50:43 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * config/i960/i960.c (i960_address_cost): MEMA operands with
- positive offsets < 4096 are free.
-
-Fri Jul 10 12:34:37 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * config/m68k/m68k.c (const_uint32_operand): Recognize
- CONSTANT_P_RTX.
- (const_sint32_operand): Likewise.
-
-Thu Jul 9 22:58:59 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (alias.o): Depend on $(EXPR_H).
-
-Thu Jul 9 18:24:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (choose_reload_regs): If using an equivalence from
- find_equiv_reg and reg_reloaded_valid is not set for this register,
- clear the associated spill_reg_store.
-
-Thu Jul 9 18:12:49 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (emit_reload_insns): If an output reload copies only
- to a secondary reload register, indicate that the secondary reload
- does the actual store.
-
-Thu Jul 9 18:01:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_equiv_reg): If need_stable_sp is set,
- check if stack pointer is changed directly in a PARALLEL.
-
-Thu Jul 9 10:38:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * jump.c (duplicate_loop_exit_test): Fix thinko.
-
-Thu Jul 9 01:30:37 1998 Joel Sherrill <joel@OARcorp.com>
- Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * config/i386/rtemself.h: Updated to keep in sync with
- config/i386/linux.h.
-
- * configure.in: Added sh-rtemself.
- * configure: Rebuilt.
- * config/sh/rtems.h: Removed -D__ELF__ since it is now COFF.
- * config/sh/rtemself.h: New file.
-
- * config/rs6000/rtems.h: Defined STARTFILE_DEFAULT_SPEC.
-
-Wed Jul 8 21:43:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * configure.in: Check if the assembler supports ".balign" and
- ".p2align" and define HAVE_GAS_BALIGN_AND_P2ALIGN appropriately.
- * acconfig.h (HAVE_GAS_BALIGN_AND_P2ALIGN): New tag.
- * i386/gas.h (ASM_OUTPUT_ALIGN): If the assembler has support for
- ".balign" then use it.
-
- * print-rtl.c (print_rtx): Revert previous patch.
-
- * jump.c (duplicate_loop_exit_test): Do not duplicate the loop exit
- test if the exit code has an insn with ASM_OPERANDS.
-
- * i386/cygwin32.h (STDIO_PROTO): Fix typo.
- * m32r.h (STDIO_PROTO): Fix typo.
-
- * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Handle addresses created by
- LEGITIMIZE_RELOAD_ADDRESS.
- * tm.texi (LEGITIMIZE_RELOAD_ADDRESS): Note that this macro must be
- able to handle addresses created by previous invocations of the macro.
-
- * flow.c (find_auto_inc): Remove most recent change. Real bug was
- elsewhere.
-
- * cse.c (count_reg_usage): Count registers used in addresses of
- CLOBBERs.
-
-Wed Jul 8 15:08:29 1998 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (STAGESTUFF): Readd line lost during June 9 FSF merge.
-
- * configure.in (mips64orion-*-rtems*): Use elf64.h not elfl64.h.
-
-1998-07-08 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * config/fp-bit.c (__gexf2, __fixxfsi, __floatsixf): Add function
- stubs.
-
- * toplev.c (lang_options): Add -Wlong-long, -Wno-long-long
- options.
- * c-decl.c (warn_long_long): Define.
- (c_decode_option): Parse -Wlong-long, -Wno-long-long options.
- (grokdeclarator): Add flag `warn_long_long' as guard for
- warning "ANSI C does not support `long long'".
- * invoke.texi: Add description of options -Wlong-long,
- -Wno-long-long.
- * gcc.1: The same as above.
-
-Wed Jul 8 02:43:34 1998 Jeffrey A Law (law@cygnus.com)
-
- * rtlanal.c (reg_overlap_mentioned_p): Handle STRICT_LOW_PART. If
- either argument is CONSTANT_P, then return zero.
- * reload.c (reg_overlap_mentioned_for_reload_p): Similarly.
-
- * configure.in: Also look at $srcdir/gas/configure to find a
- gas version #.
-
-Wed Jul 8 00:28:22 1998 Carlo Wood <carlo@runaway.xs4all.nl>
-
- * dsp16xx.h : Clean up of macro OPTIMIZATION_OPTIONS
-
-Tue Jul 7 21:18:14 1998 Mumit Khan <khan@xraylith.wisc.edu>
-
- * i386/cygwin32.h (ASM_DECLARE_FUNCTION_NAME): Merge duplicate
- definitions from last two patches.
-
-Tue Jul 7 23:03:34 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (choose_reload_regs): Don't set reload_override_in
- if EQUIV is clobbered in INSN and the reload is done after INSN.
-
-Tue Jul 7 21:23:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * expr.c (emit_queue): If emitting a SEQUENCE, set QUEUED_INSN
- to the first insn of the sequence.
-
-Tue Jul 7 21:05:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * cse.c (cse_insn): Don't make change without validation.
-
-Tue Jul 7 11:40:05 1998 Jeffrey A Law (law@cygnus.com)
-
- * mn10200.md (various zero/sign extension patterns): Zero and sign
- extensions which use "sub" clobber cc0.
-
-Tue Jul 7 09:12:08 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Tue Jul 7 10:07:20 1998 Jeffrey A Law (law@cygnus.com)
-
- * print-rtl.c (print_rtx): Use REAL_VALUE_TYPE instead of "double".
-
-Tue Jul 7 08:41:27 1998 Richard Henderson (rth@cygnus.com)
-
- * print-rtl.c (print_rtx): Only print fp values when REAL_VALUE_TYPE
- is a double.
-
-Tue Jul 7 00:31:58 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Tue Jul 7 01:03:03 1998 Mumit Khan <khan@xraylith.wisc.edu>
-
- Support for dllimport and dllexport attributes for i386-pe.
-
- * tree.h (DECL_NON_ADDR_CONST_P): New accessor macro.
- (struct tree_decl): Add non_addr_const_p field.
- * tree.c (staticp): Use.
-
- * i386/cygwin32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
- attributes.
- (SUBTARGET_SWITCHES): Switches to turn on/off dllimport|export
- attributes. Also accept -mwindows option.
- (VALID_MACHINE_DECL_ATTRIBUTE): New macro.
- (MERGE_MACHINE_DECL_ATTRIBUTE): New macro.
- (REDO_SECTION_INFO_P): New macro.
- (DRECTVE_SECTION_FUNCTION): New macro.
- (drectve_section): Cover function to implement above.
- (SWITCH_TO_SECTION_FUNCTION): New macro.
- (switch_to_section): Covert function to implement above.
- (EXTRA_SECTIONS): Add in_drectve.
- (EXTRA_SECTION_FUNCTIONS): Add in_drectve and switch_to_section.
- (ENCODE_SECTION_INFO): Delete old macro and redefine as a function.
- (STRIP_NAME_ENCODING): Handle new attributes.
- (ASM_OUTPUT_LABELREF): New macro.
- (ASM_OUTPUT_FUNCTION_NAME): New macro.
- (ASM_OUTPUT_COMMON): New macro.
- (ASM_OUTPUT_DECLARE_OBJECT_NAME): New macro.
-
- * i386/mingw32.h (CPP_PREDEFINES): Map __declspec(x) to GCC
- attributes.
-
- * i386/winnt.c (i386_pe_valid_decl_attribute_p): New function.
- (i386_pe_merge_decl_attributes): New function.
- (i386_pe_check_vtable_importexport): New function.
- (i386_pe_dllexport_p): New function.
- (i386_pe_dllimport_p): New function.
- (i386_pe_dllexport_name_p): New function.
- (i386_pe_dllimport_name_p): New function.
- (i386_pe_mark_dllexport): New function.
- (i386_pe_mark_dllimport): New function.
- (i386_pe_encode_section_info): New function.
- (i386_pe_unique_section): Strip encoding from name first.
-
-Tue Jul 7 00:50:17 1998 Manfred Hollstein (manfred@s-direktnet.de)
-
- * libgcc2.c (L_exit): Provide a fake for atexit on systems which
- define ON_EXIT but not HAVE_ATEXIT.
-
-Tue Jul 7 00:44:35 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * m68k.md (zero_extend QI to HI): Correctly handle TARGET_5200.
-
-Tue Jul 7 00:36:41 1998 Ulrich Drepper <drepper@cygnus.com>
-
- * i386.c: Remove random whitespace at end of lines.
-
- * i386.c (ix86_epilogue): For pentium processors, try to deallocate
- 4 or 8 byte stacks with pop instructions instead of an add instruction.
-
-Tue Jul 7 00:30:08 1998 Klaus Kaempf <kkaempf@rmi.de>
-
- * alpha.c: Include tree.h before expr.h.
-
-Mon Jul 6 22:50:48 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * c-parse.in (struct_head, union_head, enum_head): New nonterminals.
- (structsp): Use them. Update files generated from c-parse.in.
- * extend.texi (Type Attributes): Document it.
-
- * c-decl.c: Add warn_multichar.
- (c_decode_option): Handle -Wno-multichar.
- * c-lex.c (yylex): Check it.
- * c-tree.h: Declare it.
- * toplev.c (lang_options): Add it.
- * invoke.texi: Document it.
-
-Mon Jul 6 22:47:55 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_equiv_reg): When looking for stack pointer + const,
- make sure we don't use a stack adjust.
-
- * reload.c (find_equiv_reg): If need_stable_sp is set,
- check if stack pointer is changed directly.
-
- * reload1.c (delete_dead_insn): Don't delete feeding insn
- if that insn has side effects.
-
- * flow.c (find_auto_inc): Clear UNCHANGING bit of register that is
- changed.
-
- * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OPADDR_ADDR
- precedes RELOAD_FOR_OUTADDR_ADDRESS.
-
- * gcse.c (hash_scan_insn): New argument IN_LIBCALL_BLOCK. Changed
- caller.
-
-Mon Jul 6 22:21:56 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
-
- * m68k.c (output_scc_di): Use cmpw #0 instead of tstl when
- testing address registers on the 68000.
-
-Mon Jul 6 22:17:19 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
-
- * i386.c (is_fp_test): Fix thinko.
-
- * jump.c (jump_optimize): Check for CONST_INT before using INTVAL.
-
-Mon Jul 6 22:14:31 1998 Richard Henderson (rth@cygnus.com)
-
- * print-rtl.c (print_rtx): Display the real-value equivalent of
- a const_double when easy.
-
- * real.h (REAL_VALUE_TO_TARGET_SINGLE): Use a union to pun types.
- Zero memory first for predictability.
- (REAL_VALUE_TO_TARGET_DOUBLE): Likewise.
- * varasm.c (immed_real_const_1): Notice width of H_W_I == double.
-
- * regclass.c (allocate_reg_info): Initialize the entire reg_data
- virtual array.
-
-Mon Jul 6 22:09:32 1998 Ian Lance Taylor <ian@cygnus.com>
- Jeff Law <law@cygnus.com>
-
- * i386/cygwin32.h: Add some declaration of external functions.
- (ASM_DECLARE_FUNCTION_NAME): Define.
- (ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
- (ASM_FILE_END): Define.
- * i386/winnt.c (i386_pe_declare_function_type): New function.
- (struct extern_list, extern_head): Define.
- (i386_pe_record_external_function): New function.
- (i386_pe_asm_file_end): New function.
-
- * cpplib.c (cpp_options_init): Initialize cplusplus_comments to 1,
- matching July 18, 1995 change to cccp.c. If -traditional then
- disable cplusplus_comments.
-
-Mon Jul 6 21:28:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * combine.c (expand_compound_operation): Fix thinko in code to optimize
- (zero_extend:DI (subreg:SI (foo:DI) 0)) to foo:DI.
-
- * Disable the following change from gcc2. Not appropriate for egcs:
-
- Sun Jun 7 09:30:31 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
- * reload.c (find_reloads): Give preference to pseudo that was the
- reloaded output of previous insn.
-
-Mon Jul 6 21:07:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * aclocal.m4 (GCC_FUNC_PRINTF_PTR): Don't define HOST_PTR_PRINTF.
- Instead, define a new macro HAVE_PRINTF_PTR which only signifies
- whether we have the %p format specifier or not.
-
- * acconfig.h: Delete stub for HOST_PTR_PRINTF, add HAVE_PRINTF_PTR.
-
- * machmode.h (HOST_PTR_PRINTF): When determining the definition,
- check HAVE_PRINTF_PTR to see whether "%p" is okay.
-
- * mips-tfile.c: Include machmode.h to get HOST_PTR_PRINTF.
-
- * Makefile.in (mips-tfile.o): Depend on machmode.h.
-
-Mon Jul 6 10:42:05 1998 Mark Mitchell <mark@markmitchell.com>
-
- * jump.c (duplicate_loop_exit_test): Don't refuse to copy a
- section of code just because it contains
- NOTE_INSN_BLOCK_{BEG,END}.
- * stmt.c (expand_end_loop): Likewise. Also, don't refuse to
- move CALL_INSNs or CODE_LABELs. When moving code, don't move
- NOTE_INSN_BLOCK_{BEG,END}.
-
-Mon Jul 6 09:38:15 1998 Mark Mitchell <mark@markmitchell.com>
-
- * cse.c (CSE_ADDRESS_COST): New macro, based on ADDRESS_COST, but
- dealing with ADDRESSOF.
- (find_best_addr): Use it.
-
-Mon Jul 6 09:27:08 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha/vms.h (TRAMPOLINE_TEMPLATE): Revert last change.
-
-Mon Jul 6 09:25:06 1998 Dave Love <d.love@dl.ac.uk>
-
- * libgcc2.c (__eprintf): Make args consistent with prototype in
- assert.h.
-
-Mon Jul 6 00:28:43 1998 Mark Mitchell <mark@markmitchell.com>
-
- * cse.c (cse_insn): When SETting (MEM (ADDRESSOF (X))) to Y,
- don't claim that the former is equivalent to the latter.
-
-Sun Jul 5 23:58:19 1998 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (cse_insn): Second arg is an RTX now. Update all callers.
- (cse_basic_block): Keep track of the current RETVAL insn for a
- libcall instead of just noting that we're in a libcall.
-
- * combine.c (simplify_comparison): Do not commute a AND into
- a paradoxical SUBREG if not WORD_REGISTER_OPERATIONS.
-
- * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Protect with
- HAVE_GAS_MAX_SKIP_P2ALIGN.
- * i386/linux.h: Likewise.
-
-Fri Jul 3 02:33:35 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
-
- * sparc.c (sparc_operand, move_operand, arith_operand,
- arith11_operand, arith10_operand, arith_double_operand,
- arith11_double_operand, arith10_double_operand, small_int,
- uns_small_int): Recognize CONSTANT_P_RTX.
- (output_sized_memop, output_move_with_extension,
- output_load_address, output_size_for_block_move,
- output_block_move, delay_operand): Remove, has not been
- enabled or referenced for years.
- * sparc.md (movstrsi, block_move_insn): Likewise.
- * sparc.h (PREDICATE_CODES): Define.
- * linux-aout.h (MACHINE_STATE_{SAVE,RESTORE}): Override with
- version which uses getcc/setcc traps to save/restore condition
- codes.
- * linux64.h: Likewise.
- * sunos4.h: Likewise.
- * linux.h: Likewise.
- * sol2.h: Likewise.
- * sun4o3.h: Likewise.
-
-Fri Jul 3 02:28:05 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_initialize_trampoline): Hack around Pmode/ptr_mode
- lossage on VMS. Reported by kkaempf@rmi.de.
- * alpha/vms.h (TRAMPOLINE_TEMPLATE): Add missing 0.
-
-Thu Jul 2 17:41:14 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/m32r/m32r.h (MUST_PASS_IN_STACK): Override default
- version.
-
-Thu Jul 2 14:34:48 1998 David Edelsohn <edelsohn@mhpcc.edu>
-
- * expr.h (STACK_SIZE_MODE): New macro.
- * explow.c (allocate_dynamic_stack_space): Use it for
- mode of allocate_stack pattern increment operand.
- * tm.texi (STACK_SAVEAREA_MODE, STACK_SIZE_MODE): Document.
- * md.texi (stack_save_block, ...): Reflect use of macro.
-
- * rs6000.h (PROMOTE_MODE): Always promote to word_mode.
- (PROMOTE_FUNCTION_ARGS): Define.
- (PROMOTE_FUNCTION_RETURN): Define.
- (FUNCTION_VALUE): Promote to word_mode if smaller.
- Convert to gen_rtx_FOO.
- * rs6000.md (call_indirect): Store doubleword in 64-bit mode.
- Convert to gen_rtx_FOO.
- * rs6000.c: Convert to gen_rtx_FOO.
-
-Thu Jul 2 14:16:11 1998 Michael Meissner <meissner@cygnus.com>
-
- * varray.{c,h}: New files to provide virtual array support.
-
- * Makefile.in (OBJS): Add varray.o.
- (varray.o): Add new file.
- (REGS_H): New variable for dependencies for files including
- regs.h. Add varray.h and files it includes. Change all regs.h
- dependencies to $(REGS_H).
-
- * toplev.c (x{m,re}alloc): If size is 0, allocate 1 byte.
- (xcalloc): Provide frontend for calloc.
- * {tree,rtl}.h (xcalloc): Add declaration.
-
- * basic-block.h (REG_BASIC_BLOCK): Convert reg_n_info to be a
- varray.
-
- * regs.h (toplevel): Include varray.h.
- (reg_n_info): Switch to use a varray.
- (REG_*): Likewise.
- (allocate_reg_info): Change num_regs argument to be size_t.
-
- * regclass.c (reg_info_data): New structure to remember groups of
- reg_info structures allocated that are to be zeroed.
- ({pref,alt}class_buffer): New statics to hold buffers
- allocate_reg_info allocates for {pref,alt}class_buffer.
- (regclass): Use {pref,alt}class_buffer to initialize
- {pref,alt}class.
- (allocate_reg_info): Switch to make reg_n_info use varrays.
- Allocate buffers for the preferred and alter register class
- information. Change num_regs argument to be size_t, not int.
-
- * flow.c (reg_n_info): Switch to use varrays.
-
-Thu Jul 2 10:11:47 1998 Robert Lipe <robertl@dgii.com>
-
- * install.texi (sco3.2v5): Document new --with-gnu-as flag.
- * config/i386/sco5.h (JUMP_TABLES_IN_TEXT_SECTION): Defined as
- in other targets.
- (USE_GAS): Conditionalize away native assembler usage.
- * config/i386/sco5gas.h: New file.
- * config/i386/t-sco5gas: New file.
- * configure.in (ix86-sco3.2v5*): Use new files if --with-gnu-as
-
-Thu Jul 2 08:20:00 1998 Catherine Moore <clm@cygnus.com>
-
- * haifa-sched.c (alloc_EXPR_LIST): Change to use
- unused_expr_list.
-
-Thu Jul 2 14:13:28 1998 Dave Love <d.love@dl.ac.uk>
-
- * Makefile.in (install-info): Don't use $realfile. Ignore
- possible errors from the install-info program.
-
-Thu Jul 2 01:53:32 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
-
- * combine.c (simplify_comparison): Apply SUBREG_REG to SUBREGs.
-
-Wed Jul 1 23:06:03 1998 Richard Henderson <rth@cygnus.com>
-
- * i386.h (HARD_REGNO_MODE_OK): Kill spurious test.
- (MODES_TIEABLE_P): Tie SImode and HImode.
-
-1998-07-01 Andreas Jaeger <aj@arthur.rhein-neckar.de>
-
- * invoke.texi (Optimize Options): Fix typo.
-
-Wed Jul 1 22:25:43 1998 Jim Wilson <wilson@cygnus.com>
-
- * xcoffout.c (xcoffout_begin_function): Call xcoffout_block for
- the zero'th block.
-
-Wed Jul 1 23:12:58 1998 Ken Raeburn <raeburn@cygnus.com>
-
- * h8300.c (print_operand): Delete %L support.
- * h8300.md (branch_true, branch_false): Use %= with a prefix
- instead of %L for local branch labels.
-
-Wed Jul 1 21:27:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (emit_reload_insns): Use proper register classes for
- SECONDARY_INPUT_RELOAD_CLASS / SECONDARY_MEMORY_NEEDED code.
-
-Wed Jul 1 21:17:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_reloads): If there are multiple
- RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads for
- one operand, change RELOAD_FOR_INPADDR_ADDRESS /
- RELOAD_FOR_OUTADDR_ADDRESS for all but the first
- RELOAD_FOR_INPUT_ADDRESS / RELOAD_FOR_OUTPUT_ADDRESS reloads.
-
-Wed Jul 1 17:23:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * regmove.c (fixup_match_2): Check that P has RTX_CLASS 'i' before
- using its PATTERN.
-
-Wed Jul 1 05:04:41 1998 Richard Henderson <rth@cygnus.com>
-
- * expr.c (emit_group_load, emit_group_store): Rewrite considering
- the size and alignment of the structure being manipulated.
- * expr.c, calls.c, function.c: Update all callers.
- * expr.h: Update prototypes.
- * cse.c (invalidate): Cope with parallels.
-
-Wed Jul 1 04:22:23 1998 Richard Henderson <rth@cygnus.com>
-
- * sparc.c (function_arg_record_value): Take a MODE arg with which to
- create the PARALLEL. Update all callers.
-
-Wed Jul 1 04:10:35 1998 Richard Henderson <rth@cygnus.com>
-
- * expr.c (expand_assignment, store_constructor, expand_expr): Use
- convert_memory_address instead of convert_to_mode when possible.
-
-Wed Jul 1 03:48:00 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_initialize_trampoline): Take arguments describing
- the layout. Use ptr_mode. Disable hint generation. Use gen_imb.
- * alpha.h (INITIALIZE_TRAMPOLINE): Pass extra args to the init func.
- (TRANSFER_FROM_TRAMPOLINE): Move ...
- * alpha/osf.h: ... here.
- * alpha/vms.h (INITIALIZE_TRAMPOLINE): Use alpha_initialize_trampoline.
- (TRANSFER_FROM_TRAMPOLINE): Remove undef.
- * alpha/win-nt.h: Likewise.
- * alpha/vxworks.h: Likewise.
-
- * alpha/linux.h: Revert gcc2 merge lossage.
-
-Wed Jul 1 10:56:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * c-decl.c (grokdeclarator): Don't warn about implicit int in
- `typedef foo = bar'.
-
-Wed Jul 1 02:12:33 1998 Robert Lipe <robertl@dgii.com>
-
- * i386.c (asm_output_function_prefix): Make 686 function
- prologues not issue .types for non-global labels.
-
-Tue Jun 30 23:46:53 1998 Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
-
- * i386/freebsd.h (WCHAR_TYPE): Chagne to an "int".
- (WCHAR_TYPE_SIZE): Update appropriately.
-
-Tue Jun 30 23:16:39 1998 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (recompute_reg_usage): Does not return a value.
- * rtl.h (recompute_reg_usage): Update prototype.
-
- * jump.c (jump_optimize): Show that the jump chain is not
- valid when not optimizing.
-
-Tue Jun 30 16:01:01 1998 Richard Henderson <rth@cygnus.com>
-
- * rtl.def (CONSTANT_P_RTX): New.
- * rtl.h (CONSTANT_P): Recognize it.
- * cse.c (fold_rtx): Eliminate it.
- * expr.c (can_handle_constant_p): New variable.
- (init_expr_once): Initialize it.
- (expand_builtin): Generate CONSTANT_P_RTX if the expression is not
- immediately recognizable as a constant.
-
- * alpha.c (reg_or_6bit_operand): Recognize CONSTANT_P_RTX.
- (reg_or_8bit_operand, cint8_operand, add_operand): Likewise.
- (sext_add_operand, and_operand, or_operand): Likewise.
- (reg_or_cint_operand, some_operand, input_operand): Likewise.
- * alpha.h (PREDICATE_CODES): Add CONSTANT_P_RTX where needed.
-
-1998-06-30 Benjamin Kosnik <bkoz@bliss.nabi.net>
-
- * dbxout.c (dbxout_type_methods): Remove warn_template_debugging.
-
-Tue Jun 30 14:03:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * aclocal.m4 (GCC_NEED_DECLARATION): Accept an optional second
- argument, which is typically preprocessor code used to draw in
- additional header files when looking for a function declaration.
- (GCC_NEED_DECLARATIONS): Likewise.
-
- * configure.in (GCC_NEED_DECLARATIONS): Add checks for getrlimit
- and setrlimit, search for them in sys/resource.h.
-
- * acconfig.h: Add stubs for NEED_DECLARATION_GETRLIMIT and
- NEED_DECLARATION_SETRLIMIT.
-
- * system.h: Prototype getrlimit/setrlimit if necessary.
-
-Tue Jun 30 10:54:48 1998 Mark Mitchell <mark@markmitchell.com>
-
- * rtl.texi: Don't say that RTX_INTEGRATED_P is not depended
- upon.
-
-Tue Jun 30 13:11:42 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000/sysv4.h (asm output): Add tabs for asm directives.
-
-Tue Jun 30 13:11:42 1998 David Edelsohn <edelsohn@mhpcc.edu>
-
- * Makefile.in (FLAGS_TO_PASS): Set AR_FLAGS to AR_FOR_TARGET_FLAGS.
-
-Tue Jun 30 08:59:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gansidecl.h (ATTRIBUTE_UNUSED): Use __unused__ not `unused'.
- Don't define NULL here. Also, remove all vestiges of autoconf
- based checks for bcmp/bcopy/bzero/index/rindex.
-
- * system.h: Immediately after including stdio.h, check for and if
- necessary provide a default definition of NULL.
-
-Tue Jun 30 08:22:05 1998 Michael Meissner <meissner@cygnus.com>
-
- * reload1.c (reload_cse_simplify_operands): Call
- fatal_insn_not_found, not abort.
-
-Tue Jun 30 02:34:02 1998 Jeffrey A Law (law@cygnus.com)
-
- * choose-temp.c (make_temp_file): Accept new argument for the
- file suffix to use. Allocate space for it and add it to the
- template.
- * mkstemp.c (mkstemps): Renamed from mkstemp. Accept new argument
- for the length of the suffix. Update template structure checks
- to handle optional suffix.
- * collect2.c (make_temp_file): Update prototype.
- (main): Put proper suffixes on temporary files.
- * gcc.c (make_temp_file): Update prototype.
- (do_spec_1): Put proper suffixes on temporary files.
-
-Tue Jun 30 00:56:19 1998 Bruno Haible <haible@ilog.fr>
-
- * invoke.texi: Document new implicit structure initialization
- warning.
-
-Mon Jun 29 21:40:15 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * toplev.c (flag_dump_unnumbered): Declare.
- (f_options): Add dump-unnumbered.
- * print-rtl.c (flag_dump_unnumbered): Define.
- (print_rtx): Print only '#' for insn numbers if flag_dump_unnumbered
- is nonzero.
- (print_rtl): Don't output line number notes if flag_dump_unnumbered
- is nonzero.
- * flow.c (print_rtl_with_bb): Don't output newline after line
- numbers note if flag_dump_unnumbered is nonzero.
-
-Mon Jun 29 22:12:06 1998 Jeffrey A Law (law@cygnus.com)
-
- * Merge from gcc2 June 9, 1998 snapshot. See ChangeLog.13 for
- details.
-
- * pa.c, pa.h, pa.md: Convert to gen_rtx_FOO.
-
-Mon Jun 29 20:12:41 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (fix-header): Don't needlessly depend on cpperror.o.
-
- * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): Cast expansion to
- void since it is evaluated in a comma list.
-
- * mips.h (ASM_GENERATE_INTERNAL_LABEL): Always sprintf `NUM'
- argument as a long and cast `NUM' to long to ensure it is of the
- proper width. Wrap macro arguments in parens when they appear in
- the expansion.
-
- * sol2.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
-
- * sparc.h (ASM_GENERATE_INTERNAL_LABEL): Likewise.
- (ASM_DECLARE_RESULT): Fix fprintf format specifier to match
- function argument return type.
- (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_FP_P,
- REGNO_OK_FOR_CCFP_P): Use `(unsigned)' not `U'.
-
- * cpplib.c (cpp_message_from_errno): Remove unneeded argument to
- cpp_message.
-
- * dbxout.c: Fix the comments after an #endif to reflect the actual
- condition tested in the preceding #if.
-
- * except.c (find_all_handler_type_matches): Switch to old-style
- function definition.
-
- * expr.c (expand_builtin): Remove unused variable `type' twice.
-
- * gbl-ctors.h (DO_GLOBAL_CTORS_BODY): Cast -1 before comparing it
- to an unsigned long.
-
- * haifa-sched.c (print_insn_chain): Remove unused function.
-
- * objc/objc-act.c (build_msg_pool_reference): Hide prototype and
- definition.
-
- * toplev.c: When testing whether to include dbxout.h, also include
- it when XCOFF_DEBUGGING_INFO is defined.
-
- * unroll.c (unroll_loop): Add parentheses around assignment used
- as truth value.
-
-Mon Jun 29 12:18:00 1998 Catherine Moore <clm@cygnus.com>
-
- * config/lb1spc.asm (.div, .udiv): Replace routines.
-
-Mon Jun 29 09:44:24 1998 Mark Mitchell <mark@markmitchell.com>
-
- * rtl.h: Update comment about special gen_rtx variants.
- * emit-rtl.c (gen_rtx): Handle MEMs using gen_rtx_MEM.
-
-Sun Jun 28 20:58:51 1998 Jeffrey A Law (law@cygnus.com)
-
- * choose-temp.c (choose_temp_base): Restore original variant of
- this function for compatibility.
- (make_temp_file): This is the new, preferred interface to create
- temporary files.
- * collect2.c (choose_temp_base): Delete declaration.
- (make_temp_file): Declare.
- (temp_filename_length, temp_filename): Delete.
- (main): Use make_temp_file to get temporary files. Use --lang-c
- to force the resulting ctort/dtor file to be compiled with the C
- compiler. Make sure to remove temporary files on all exit paths.
- * gcc.c (make_temp_file): Provide prototype if MKTEMP_EACH_FILE is
- defined.
- (choose_temp_base): Only provide prototype if MKTEMP_EACH_FILE is
- not defined.
- (do_spec): Use make_temp_file if MKTEMP_EACH_FILE is defined.
-
-Sun Jun 28 08:57:09 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in (GCC_NEED_DECLARATIONS): Add strerror, getcwd and
- getwd.
-
- * acconfig.m4: Add stubs for NEED_DECLARATION_STRERROR,
- NEED_DECLARATION_GETCWD and NEED_DECLARATION_GETWD.
-
- * cccp.c: Remove strerror()/sys_nerr/sys_errlist decls.
- (my_strerror): Add prototype and make it static.
-
- * collect2.c: Likewise.
-
- * cpplib.c: Likewise.
-
- * gcc.c: Likewise, but keep `my_strerror' extern.
-
- * protoize.c: Likewise.
-
- * pexecute.c (my_strerror): Add argument to prototype.
-
- * system.h: Add prototypes for getcwd, getwd and strerror. Add
- extern decls for sys_nerr and sys_errlist. Make abort decl
- explicitly extern.
-
- * getpwd.c: Remove decls for getwd and getcwd.
-
-Sun Jun 28 02:11:16 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Jun 27 23:32:25 1998 Richard Henderson <rth@cygnus.com>
-
- * jump.c (jump_optimize): Use side_effects_p & may_trap_p instead
- of rtx_unsafe_p. Use modified_between_p instead of reg_set_between_p.
- Allow FP moves to be optimized.
- (rtx_unsafe_p): Delete.
-
-Sat Jun 27 23:02:04 1998 Richard Henderson <rth@cygnus.com>
-
- * objc/archive.c: Remove <string.h> prototypes.
-
-Sat Jun 27 22:37:05 1998 Jeffrey A Law (law@cygnus.com)
-
- * tm.texi (NEED_MATH_LIBRARY): Document new target macro.
-
- * Makefile.in (gencheck): Remove $(TREE_H) dependency.
-
-Sat Jun 27 20:20:00 1998 John Carr <jfc@mit.edu>
-
- * dsp16xx.h (FIRST_PSEUDO_REGISTER): Add parentheses to definition.
- * dsp16xx.c (next_cc_user_unsigned): New function.
- Remove save_next_cc_user_code.
- (print_operand): Use HOST_WIDE_INT_PRINT_* macros.
- * dsp16xx.md: Call next_cc_user_unsigned instead of using
- save_next_cc_user_code.
- Use gen_rtx_* functions instead of gen_rtx.
-
-Sat Jun 27 20:18:34 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000.h: Add trap_comparison_operator to PREDICATE_CODES.
-
-Sat Jun 27 16:45:42 1998 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (count_reg_sets): New function.
- (count_reg_sets_1, count_ref_references): Likewise.
- (recompute_reg_usage): Likewise.
- * rtl.h (recompute_reg_usage): Add prototype.
- * toplev.c (rest_of_compilation): Call recompute_reg_usage just
- before local register allocation.
-
-Sat Jun 27 13:15:30 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (negsf, negdf): Revert Jan 22 change.
-
-Sat Jun 27 07:35:21 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mkstemp.c: Include gansidecl.h. Rename uint64_t to gcc_uint64_t.
- (mkstemp): Remove size specifier for variable `letters'. Call
- gettimeofday, not __gettimeofday.
-
- * Makefile.in (EXPR_H): New dependency variable.
- (c-typeck.o): Depend on $(EXPR_H) instead of expr.h.
- (c-iterate.o): Likewise.
- (gencheck): Depend on $(TREE_H) instead of tree.h, etc.
- (stor-layout.o): Depend on $(EXPR_H) instead of expr.h.
- (toplev.o): Likewise. Also depend on $(RECOG_H) instead of recog.h.
- (varasm.o): Depend on $(EXPR_H) instead of expr.h.
- (function.o): Likewise.
- (stmt.o): Likewise.
- (except.o): Likewise.
- (expr.o): Likewise.
- (calls.o): Likewise.
- (expmed.o): Likewise.
- (explow.o): Likewise.
- (optabs.o): Likewise.
- (sdbout.o): Likewise.
- (dwarf2out.o): Likewise.
- (emit-rtl.o): Likewise.
- (integrate.o): Likewise.
- (jump.o): Likewise.
- (cse.o): Likewise.
- (gcse.o): Likewise. Also depend on $(BASIC_BLOCK_H) instead of
- basic-block.h.
- (loop.o): Depend on $(EXPR_H) instead of expr.h.
- (unroll.o): Likewise.
- (combine.o): Likewise.
- (reload.o): Likewise.
- (reload1.o): Likewise.
- (caller-save.o): Likewise.
- (reorg.o): Likewise.
- (alias.o): Don't depend on insn-codes.h.
- (regmove.o): Depend on $(RECOG_H)/$(EXPR_H) instead of recog.h/expr.h.
- (insn-emit.o): Depend on $(EXPR_H) instead of expr.h.
- (insn-opinit.o): Likewise.
-
-Sat Jun 27 01:35:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * choose-temp.c (choose_temp_base): Remove MPW bits. Use mkstemp
- instead of mktemp.
- * gcc.c (MKTEMP_EACH_FILE): Define.
- (main): No need to call choose_temp_base if we are going to
- use choose_temp_base to create each file later.
- * mkstemp.c: New file. Adapted from glibc.
- * Makefile.in (xgcc, colect2, protoize, unprotoize): Link in mkstemp.o.
- (mkstemp.o): Add dependencies.
-
- * configure.in (gettimeofday): Check for its existence.
- * config.in (HAVE_GETTIMEOFDAY): Define.
- * configure: Rebuilt.
-
-1998-06-26 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.md (ne 0, non power case): Add missing & constraint.
- Name pattern ne0.
- (negative abs insns): Add pattern names.
-
-Fri Jun 26 17:36:42 1998 Dave Love <d.love@dl.ac.uk>
-
- * Makefile.in (install-info): Run install-info program in separate
- loop.
-
-Fri Jun 26 16:03:15 1998 Michael Meissner <meissner@cygnus.com>
-
- * haifa-sched.c (schedule_block): Add hooks for the machine
- description to reorder the ready list, and update how many more
- instructions can be issued this cycle.
- * tm.texi (MD_SCHED_{INIT,REORDER,VARIABLE_ISSUE}): Document.
-
-Fri Jun 26 11:54:11 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
-
- * config/sparc/sparc.h (REGNO_OK_FOR_{INDEX,BASE,FP,CCFP}_P):
- Explicitly mark the constant being compared against as unsigned.
- * config/sparc/sparc.c (sparc_select, cpu_default, cpu_table):
- Fully initialize final members.
- (mem_aligned_8): Explicit init of offset to zero.
- (output_function_prologue): Explicit init of n_regs to zero.
- (output_function_epilogue): Likewise, and mark arg size as
- unused.
- (init_cumulative_args): Mark libname and indirect as unused.
- (function_arg_pass_by_reference): Likewise for cum and named.
- (sparc_builtin_saveregs): Likewise for arglist.
- (sparc_flat_eligible_for_epilogue_delay): Likewise for slot.
-
-Fri Jun 26 06:58:54 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.h (SECONDARY_INPUT_RELOAD_CLASS): Only need a secondary reload
- if reloading a MEM.
-
- * arm.h (arm_adjust_cost): Renamed bogus prototype from
- arm_adjust_code.
- (bad_signed_byte_operand): Add prototype.
- * arm.c (arm_override_options): Make I unsigned.
- (const_ok_for_arm): Add casts to the constants.
- (load_multiple_operation): Don't redeclare elt in sub-block.
- (arm_gen_movstrqi): Delete external declaration of optimize.
- (gen_compare_reg): Declare parameter fp.
-
- * arm.c (final_prescan_insn): Only initialize scanbody if the insn
- has a pattern.
-
-Fri Jun 26 09:31:24 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.c: Include system.h and toplev.h.
- (cint8_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
- (const48_operand): Likewise.
- (mode_width_operand): Likewise.
- (mode_mask_operand): Likewise.
- (mul8_operand): Likewise.
- (current_file_function_operand): Likewise.
- (signed_comparison_operator): Likewise.
- (divmod_operator): Likewise.
- (any_memory_operand): Likewise.
- (alpha_return_addr): Likewise for parameter `frame'.
- (alpha_builtin_saveregs): Likewise for parameter `arglist'.
- (vms_valid_decl_attribute_p): Likewise for parameters `decl' and
- `attributes'.
- (alpha_start_function): Likewise for parameter `decl'. Use
- HOST_WIDE_INT_PRINT_DEC in call to fprintf. Fix various format
- specifiers. Remove unused variables `lab' and `name'.
- (alpha_end_function): Mark parameter `decl' with ATTRIBUTE_UNUSED.
- (check_float_value): Likewise for parameter `overflow'.
- (alpha_need_linkage): Likewise for parameters `name' and `is_local'.
-
- * alpha.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Define as
- taking an argument.
- (ASM_OUTPUT_SHORT): Cast argument to `int' in call to fprintf.
- (ASM_OUTPUT_CHAR): Likewise.
- (ASM_OUTPUT_BYTE): Likewise.
- (PRINT_OPERAND_ADDRESS): Use HOST_WIDE_INT_PRINT_DEC in call to
- fprintf.
- (PUT_SDB_EPILOGUE_END): Mention argument `NAME' in definition.
- Add prototypes for functions in alpha.c.
-
- * alpha.md (ashldi3): Add default case in switch.
-
-1998-06-26 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (gcc_version, gcc_version_trigger): New macros.
- (version): Initialize from $(gcc_version).
-
- * configure.in (version): Rename to gcc_version.
- (gcc_version_trigger): New variable; call AC_SUBST for it and
- emit it into the generated config.status.
- * configure: Regenerate.
-
-Thu Jun 25 12:47:41 1998 Mark Mitchell <mark@markmitchell.com>
-
- * fold-const.c (make_range): Don't go looking at TREE_OPERANDs of
- nodes that are not expressions.
-
-Thu Jun 25 15:08:16 1998 Mark Mitchell <mark@markmitchell.com>
-
- * invoke.texi (-fstrict-aliasing): Document.
- * rtl.texi (MEM_ALIAS_SET): Document.
-
- * flags.h (flag_strict_aliasing): Declare.
- * toplev.c (flag_strict_aliasing): Define.
- (f_options): Add -strict-aliasing.
- (main): Set flag_strict_aliasing if -O2 or higher.
-
- * tree.h (tree_type): Add alias_set field.
- (TYPE_ALIAS_SET): New macro.
- (TYPE_ALIAS_SET_KNOWN_P): Likewise.
- (get_alias_set): Declare.
- * tree.c (lang_get_alias_set): Define.
- (make_node): Initialize TYPE_ALIAS_SET.
- (get_alias_set): New function.
- * print-tree.c (print_node): Dump the alias set for a type.
-
- * c-tree.h (c_get_alias_set): Declare.
- * c-common.c (c_get_alias_set): New function.
- * c-decl.c (init_decl_processing): Set lang_get_alias_set.
-
- * expr.c (protect_from_queue): Propagate alias sets.
- (expand_assignment): Calculate alias set for new MEMs.
- (expand_expr): Likewise.
- * function.c (put_var_into_stack): Likewise.
- (put_reg_into_stack): Likewise.
- (gen_mem_addressof): Likewise.
- (assign_parms): Likewise.
- * stmt.c (expand_decl): Likewise.
- * varasm.c (make_decl_rtl): Eliminate redundant clearing of
- DECL_RTL. Calculate alias set for new MEMs.
-
- * rtl.def (REG): Add dummy operand.
- (MEM): Add extra operand to store the MEM_ALIAS_SET.
- * rtl.h (MEM_ALIAS_SET): New macro.
- (gen_rtx_MEM): Declare.
- * emit-rtl.c (gen_rtx_MEM): New function.
- * gengenrtl.c (sepcial_rtx): Make MEMs special.
-
- * alias.c (CHECK_ALIAS_SETS_FOR_CONSISTENCY): New macro.
- (DIFFERENT_ALIAS_SETS_P): Likewise.
- (canon_rtx): Propagate the alias set to the new MEM.
- (true_dependence): Check the alias sets.
- (anti_dependence): Likewise.
- (output_dependence): Likewise.
- * explow.c (stabilize): Progoate alias sets.
- * integrate.c (copy_rtx_and_substitute): Likewise.
- * final.c (alter_subreg): Make sure not to leave MEM_IN_STRUCT_P
- in an unpredictable state. Propagate alias sets.
- * reload1.c (reload): Clear MEM_ALIAS_SET for new MEMs about which
- we have no alias information.
-
-Thu Jun 25 16:59:18 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * except.h (CATCH_ALL_TYPE): Definition moved to eh-common.h.
- (find_all_handler_type_matches): Add function prototype.
- * eh-common.h (CATCH_ALL_TYPE): Definition added.
- * except.c (find_all_handler_type_matches): Add function to find all
- runtime type info in the exception table.
- (output_exception_table_entry): Special case for CATCH_ALL_TYPE.
-
-Thu Jun 25 15:47:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (xcoffout.o): Depend on toplev.h, output.h and dbxout.h.
-
- * config/fp-bit.c (_fpmul_parts): Move variables `x', `ylow',
- `yhigh' and `bit' into the scope in which they are used.
- (_fpdiv_parts): Remove unused variables `low', `high', `r0', `r1',
- `y0', `y1', `q', `remainder', `carry', `d0' and `d1'.
-
- * rs6000.c: Move include of output.h below tree.h. Include toplev.h.
- (any_operand): Mark unused parameters `op' and `mode' with
- ATTRIBUTE_UNUSED.
- (count_register_operand): Likewise for parameter `mode'.
- (fpmem_operand): Likewise.
- (short_cint_operand): Likewise.
- (u_short_cint_operand): Likewise.
- (non_short_cint_operand): Likewise.
- (got_operand): Likewise.
- (got_no_const_operand): Likewise.
- (non_add_cint_operand): Likewise.
- (non_logical_cint_operand): Likewise.
- (mask_operand): Likewise.
- (current_file_function_operand): Likewise.
- (small_data_operand): Likewise for parameters `op' and `mode' but
- only when !TARGET_ELF.
- (init_cumulative_args): Mark parameters `libname' with
- ATTRIBUTE_UNUSED.
- (function_arg_pass_by_reference): Likewise for parameters `cum',
- `mode' and `named'.
- (expand_builtin_saveregs): Likewise for parameter `args'.
- (load_multiple_operation): Likewise for parameter `mode'.
- (store_multiple_operation): Likewise.
- (branch_comparison_operator): Likewise.
- (secondary_reload_class): Likewise.
- (print_operand): Add parentheses around & operation.
- (output_prolog): Mark parameter `size' with ATTRIBUTE_UNUSED.
- (output_epilog): Likewise. Cast argument to fprintf to int.
- (rs6000_adjust_cost): Mark parameter `dep_insn' with ATTRIBUTE_UNUSED.
- (rs6000_valid_decl_attribute_p): Likewise for parameters `decl',
- `attributes', `identifier' and `args'.
- (rs6000_valid_type_attribute_p): Likewise for parameter `attributes'.
- (rs6000_comp_type_attributes): Likewise for parameters `type1' and
- `type2'.
- (rs6000_set_default_type_attributes): Likewise for parameter `type'.
-
- * rs6000.h (RTX_COSTS): Add parentheses around & operation.
- (toc_section, private_data_section, trap_comparison_operator): Add
- prototypes.
-
- * dbxout.h (dbxout_parms, dbxout_reg_parms, dbxout_syms): Add
- prototypes.
-
- * xcoffout.c: Include toplev.h, outout.h and dbxout.h.
-
- * xcoffout.h (stab_to_sclass, xcoffout_begin_function,
- xcoffout_begin_block, xcoffout_end_epilogue,
- xcoffout_end_function, xcoffout_end_block,
- xcoff_output_standard_types, xcoffout_declare_function,
- xcoffout_source_line): Add prototypes.
-
-Thu Jun 25 09:54:55 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM,
- noticed by grahams@rcp.co.uk.
-
-Thu Jun 25 11:12:29 1998 Dave Brolley <brolley@cygnus.com>
-
- * gcc.c (default_compilers): Use new | syntax to eliminate
- string concatenation.
-
-Thu Jun 25 01:00:48 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_function_name): Delete.
- (alpha_ra_ever_killed): Notice current_function_is_thunk.
- (alpha_sa_mask, alpha_sa_size, alpha_does_function_need_gp): Likewise.
- (alpha_start_function): Reorg from output_prologue.
- (alpha_end_function): Reorg from output_epilogue.
- * alpha.h (ASM_DECLARE_FUNCTION_NAME): Call alpha_start_function.
- (ASM_DECLARE_FUNCTION_SIZE): New.
- (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
- (PROFILE_BEFORE_PROLOGUE): Set.
- (ASM_OUTPUT_MI_THUNK): Remove bits now output by start/end_function.
- * alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): Likewise.
-
-Thu Jun 25 01:18:47 1998 John Wehle (john@feith.com)
-
- * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define.
-
-1998-06-25 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * expr.c (expand_assignment): Rework address calculation for structure
- field members to expose more invariant computations to the loop
- optimizer.
- (expand_expr): Likewise.
-
-Wed Jun 24 22:44:22 1998 Jeffrey A Law (law@cygnus.com)
-
- * local-alloc.c (block_alloc): Do not try to avoid false dependencies
- when SMALL_REGISTER_CLASSES is nonzero.
-
-Wed Jun 24 17:55:15 1998 Klaus Kaempf <kkaempf@progis.de>
-
- * alpha.md (call_vms, call_value_vms): Strip leading * from symbol.
-
-Wed Jun 24 16:27:23 1998 John Carr <jfc@mit.edu>
-
- * expr.c (get_memory_rtx): New function.
- (expand_builtin): Call get_memory_rtx for MEM arguments to builtin
- string functions.
-
- * expmed.c (init_expmed): Initialize all elements of *_cost arrays.
-
- * optabs.c: Use gen_rtx_FOO (...) instead of gen_rtx (FOO, ...).
- * expr.c: Likewise.
- * explow.c: Likewise.
- * combine.c: Likewise.
- * reload1.c: Likewise.
- * gcse.c: Likewise.
-
-Wed Jun 24 15:13:01 1998 Dave Brolley <brolley@cygnus.com>
-
- * README.gnat: Add patch for new lang_decode_options interface.
-
-Wed Jun 24 09:14:04 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * except.c (start_catch_handler): Do nothing if EH is not on.
-
-1998-06-24 Manfred Hollstein <manfred@s-direktnet.de>
-
- * configure.in (gxx_include_dir): Initialize default value depending on
- new flag --enable-version-specific-runtime-libs; remove superfluous
- default initialization afterwards.
- * configure: Regenerate.
-
-Wed Jun 24 01:32:12 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
-
- * toplev.c (rest_of_compilation): Revert May 15 change.
-
-Tue Jun 23 21:27:27 1998 Ken Raeburn <raeburn@cygnus.com>
-
- * reload.c (find_reloads): Fix check for failure to match any
- alternative, to account for Mar 26 change in initial "best" cost.
-
-Tue Jun 23 16:44:21 1998 Dave Brolley <brolley@cygnus.com>
-
- * cpplib.c (do_line): Typo broke #line directive.
- (cpp_message_from_errno): New function.
- (cpp_error_from_errno): Call cpp_message_from_errno.
- * cpplib.h (cpp_message_from_errno): New function.
-
-Tue Jun 23 13:38:18 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * libgcc2.c (__get_eh_table_version, __get_eh_table_language): New
- functions to return exception descriptor information.
- (find_exception_handler): Pass match_info field to runtime matcher,
- not a descriptor table entry.
-
-Tue Jun 23 09:30:58 1998 Dave Love <d.love@dl.ac.uk>
-
- * cpp.texi, gcc.texi: Add @dircategory, @direntry meant to
- accompany previous Makefile.in (install-info) change.
-
-Tue Jun 23 10:06:07 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * eh-common.h (struct __eh_info): Remove coerced value field.
- * libgcc2.c (find_exception_handler): Don't set coerced_value field.
- * except.c (get_dynamic_handler_chain, get_dynamic_cleanup_chain): Use
- POINTER_SIZE instead of Pmode.
- (expand_start_all_catch): Call start_catch_handler() if we are not
- using new style exceptions.
-
-Tue Jun 23 06:45:00 1998 Catherine Moore <clm@cygnus.com>
-
- * varasm.c (assemble_variable): Remove reference to warn_bss_align.
-
-Mon Jun 22 23:57:31 1998 David S. Miller <davem@pierdol.cobaltmicro.com>
-
- * config/sparc/sparc.md (zero_extendhidi2, extendhisi2,
- extendqihi2, extendqisi2, extendqidi2, extendhidi2, adddi3,
- subdi3, negdi2, call, call_value, untyped_return, nonlocal_goto,
- splits and peepholes): Change remaining generic gen_rtx calls to
- specific genrtl ones.
- * config/sparc/sparc.c: Likewise.
-
-Mon Jun 22 22:21:46 1998 Richard Henderson <rth@cygnus.com>
-
- * gcc.c (handle_braces): Recognize | between options as an or.
-
-Mon Jun 22 23:13:47 1998 John Wehle (john@feith.com)
-
- * i386/freebsd-elf.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
- * i386/sysv4.h (JUMP_TABLES_IN_TEXT_SECTION): Define as flag_pic.
-
- * i386.md (exception_receiver): Define.
-
-Mon Jun 22 12:01:48 1998 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME,
- PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): New variables.
- (install-common): Use them.
-
- * gcse.c (add_label_notes): New function.
- (pre_insert_insn): Call it.
- * unroll.c (unroll_loop): Look for insns with a REG_LABEL note, and
- pass the label to set_label_in_map.
-
-Mon Jun 22 19:01:14 1998 Dave Love <d.love@dl.ac.uk>
-
- * Makefile.in (install-info): Fix typpo in previous change.
-
-Mon Jun 22 11:10:00 1998 Catherine Moore <clm@cygnus.com>
-
- * varasm.c (assemble_variable): Emit alignment warning.
-
-Mon Jun 22 08:18:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (varasm.o): Depend on sdbout.h.
- (sdbout.o): Depend on toplev.h.
-
- * collect2.c (scan_prog_file): Cast fprintf argument to `long' and
- use %ld specifier.
-
- * final.c (shorten_branches): Cast first arg of `bzero' to char *.
-
- * genextract.c (main): When creating insn-extract.c, mark variable
- `i' with ATTRIBUTE_UNUSED.
-
- * genpeep.c (main): When creating insn-peep.c, mark variables
- `insn', `x' and `pat' with ATTRIBUTE_UNUSED.
-
- * objc/init.c (__objc_tree_print): Wrap function definition in
- macro `DEBUG'.
-
- * objc/objc-act.c (encode_array): Cast sprintf argument to `long'
- and use %ld specifier.
- (adorn_decl): Likewise, twice.
-
- * reload1.c (reload_cse_regs): Cast first arg of `bzero' to char *.
-
- * sdbout.c: Include output.h and toplev.h.
- (PUT_SDB_INT_VAL): Use HOST_WIDE_INT_PRINT_DEV to print argument
- `a'. Cast `a' to HOST_WIDE_INT to force it to always be so.
- (PUT_SDB_SIZE): Likewise.
-
- * sdbout.h (sdbout_mark_begin_function): Add prototype.
-
- * stmt.c (check_for_full_enumeration_handling): Cast argument of
- `warning' to long and use %ld specifier.
-
- * toplev.c (main): Likewise for `fprintf'.
-
- * toplev.h (output_file_directive): Add prototype.
-
- * unroll.c (unroll_loop): Use HOST_WIDE_INT_PRINT_DEC specifier in
- call to `fprintf'.
- (precondition_loop_p): Likewise.
-
- * varasm.c Include sdbout.h.
- (assemble_static_space): Move sometimes-unused variable `rounded'
- into the scope in which it is used.
-
- * mips.c (gpr_mode): Don't say `static' twice.
-
- * cpplib.c (cpp_handle_option): Don't pass unneeded NULL to cpp_fatal.
-
- * objc/objc-act.c (init_selector): Hide prototype and definition.
-
- * optabs.c (gen_cond_trap): Remove unused variable `icode'.
-
- * regmove.c (copy_src_to_dest): Likewise for `i'.
-
- * mips-tfile.c (add_local_symbol): Cast width format specifier to int.
- (add_ext_symbol): Likewise.
- (add_file): Likewise.
- (parse_def): Likewise.
- (write_varray): Use HOST_PTR_PRINTF to print a pointer. Fix
- remaining format specifiers and arguments.
- (write_object): Likewise, several times.
- (read_seek): Likewise.
- (out_of_bounds): Likewise.
- (allocate_cluster): Likewise.
- (xmalloc): Likewise.
- (xcalloc): Likewise.
- (xrealloc): Likewise.
- (xfree): Likewise.
-
- * mips-tdump.c (print_symbol): Likewise.
-
-Sun Jun 21 17:05:34 1998 Dave Love <d.love@dl.ac.uk>
-
- * Makefile.in (install-info): Use install-info program if
- available, per GNU standard.
-
-Sun Jun 21 18:56:44 1998 Jeffrey A Law (law@cygnus.com)
-
- * invoke.texi: Document -mrelax for the mn10300 and mn10200.
-
- * basic-block.h (init_regset_vector): Delete declaration.
- * flow.c (init_regset_vector): Make it static and add a prototype.
-
- * bitmap.h (debug_bitmap): Declare.
-
- * haifa-sched.c (debug_ready_list): Make static.
-
- * toplev.h (fancy_abort): Declare.
-
-Sun Jun 21 18:30:13 1998 H.J. Lu (hjl@gnu.org)
-
- * basic-block.h (init_regset_vector): New declaration.
-
- * Makefile.in (sdbout.o): Add insn-codes.h to dependency.
-
- * global.c: Include machmode.h amd move hard-reg-set.h before
- rtl.h.
-
- * haifa-sched.c (insn_issue_delay, birthing_insn_p,
- adjust_priority, print_insn_chaino): New declaration.
- (schedule_insns): Remove declaration.
- (init_target_units, get_visual_tbl_length,
- init_block_visualization): Add prototype.
-
- * integrate.c (pushdecl, poplevel): Remove declaration.
-
- * rtl.h (expand_expr): Remove declaration.
-
- * loop.c (oballoc): Remove declaration.
- (replace_call_address): Add prototype.
-
-Sun Jun 21 01:08:17 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Jun 21 01:16:38 1998 John Wehle (john@feith.com)
-
- * i386.c (output_fp_conditional_move): Don't bother handling
- (cc_prev_status.flags && CC_NO_OVERFLOW) since the INSN patterns
- prevent this from happening.
-
- * i386.md (nonlocal_goto_receiver): Delete.
-
-Sun Jun 21 00:42:20 1998 H.J. Lu (hjl@gnu.org)
-
- * Makefile.in (crtbeginS.o, crtendS.o): Add -fno-exceptions and
- -DCRTSTUFFS_O.
- (INSTALL): cd $(srcdir) before make.
-
- * flow.c (allocate_for_life_analysis, init_regset_vector):
- Remove declaration.
-
- * function.h (get_first_block_beg): New declaration.
-
- * gbl-ctors.h (__do_global_dtors): Add prototype.
-
- * gcov-io.h (__fetch_long): New declaration.
- (__store_long): Likewise.
- (__read_long): Likewise.
- (__write_long): Likewise.
-
- * gcov.c (print_usage): New declaration.
-
- * Makefile.in (c-iterate.o): Depend on insn-codes.h too.
-
-Sat Jun 20 00:36:16 1998 Jeffrey A Law (law@cygnus.com)
-
- * calls.c (expand_call): Initialize "src" and "dest".
- * stmt.c (expand_return): Likewise.
- * expmed.c (extract_split_bit_field): Similarly for "result"
- * gcse.c (compute_hash_table): Mark first arg as unused.
- * jump.c (jump_optimize): Initialize reversep.
- * tree.c (make_node): Initialize length.
-
- * c-common.c (check_format_info): Initialize length_char and
- fci to keep -Wall quiet.
-
- * except.c (jumpif_rtx): Put declaration and definition
- inside a suitable #ifdef.
- (jumpifnot_rtx): Delete dead function.
-
- * i386.h (output_int_conditional_move): Declare.
- (output_fp_conditional_move): Likewise.
- (ix86_can_use_return_insn_p): Likewise.
-
- * optabs.c (init_traps): Put prototype inside a suitable #ifdef.
-
-Sat Jun 20 00:27:40 1998 Graham <grahams@rcp.co.uk>
-
- * alias.c: Include toplev.h.
- * caller-save.c: Include toplev.h.
- * combine.c: Include toplev.h.
- * flow.c Include toplev.h.
- * global.c: Include toplev.h.
- * jump.c: Include toplev.h.
- * local-alloc.c: Include toplev.h.
- * loop.c: Include toplev.h.
- * regmove.c: Include toplev.h.
- * stupid.c: Include toplev.h.
- * unroll.c: Include toplev.h.
- * Makefile.in: Add toplev.h dependencies.
-
-Fri Jun 19 22:40:25 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * regmove.c (copy_src_to_dest): Add decl for loop_depth.
-
- * svr4.h (ASM_GENERATE_INTERNAL_LABEL): Cast arg to unsigned.
- * dwarf2out.c (ASM_OUTPUT_DWARF_DATA1): Likewise.
- Add parens to various macros.
-
-Fri Jun 19 23:22:42 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
-
- * c-typeck.c (pop_init_level): Warn about implicit zero initialization
- of struct members.
-
-Fri Jun 19 23:06:33 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * varasm.c (assemble_start_function): Add weak_global_object_name.
- * tree.c (get_file_function_name): Use it.
-
-Fri Jun 19 22:55:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * except.c (jumpif_rtx): Make static and add prototype.
- (jumpifnot_rtx): Likewise.
-
- * README.gnat: Add a build patch from Fred Fish.
-
- * c-lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
-
- * Makefile.in (c-iterate.o): Depend on expr.h.
-
-Fri Jun 19 20:38:34 1998 H.J. Lu (hjl@gnu.org)
-
- * except.h (emit_unwinder, end_eh_unwinder): Removed.
-
- * dwarfout.c (getpwd): Add prototype.
- (is_pseudo_reg, type_main_variant, is_tagged_type,
- is_redundant_typedef): New declaration.
- (output_decl): Add prototype for FUNC.
- (type_main_variant): Make it static.
- (is_tagged_type): Likewise.
- (is_redundant_typedef): Likewise.
-
- * expr.c (do_jump_by_parts_greater_rtx): Removed.
- (truthvalue_conversion): Likewise.
-
- * c-iterate.c: Include "expr.h".
- (expand_expr): Use proper values when calling the function.
-
- * explow.c (emit_stack_save): Add prototype for FCN.
- (emit_stack_restore): Likewise.
-
- * dwarf2out.c (getpwd): Add prototype.
-
- * dwarf2out.h (debug_dwarf, debug_dwarf_die): New declarations.
-
- * c-typeck.c (c_expand_asm_operands): Use proper values when calling
- expand_expr.
-
- * c-lex.c (yyprint): Add prototype.
- (check_newline, build_objc_string): Remove declaration.
-
- * c-tree.h (comptypes_record_hook): Removed.
- (finish_incomplete_decl): New prototype.
-
- * alias.c (find_base_value): Add prototype.
- (true_dependence): Add prototype for function argument.
-
- * c-aux-info.c (xmalloc): Remove declaration.
-
-Fri Jun 19 20:23:05 1998 Robert Lipe <robertl@dgii.com>
-
- * i386.c: Include system.h. Remove redundant includes.
- (optimization_options): Mark param 'size' with ATTRIBUTE_UNUSED.
- (i386_cc_probably_useless_p): Likewise for 'decl', 'attributes',
- 'identifier', 'args'.
- (i386_valid_type_attribute_p): Likewise for 'attributes'.
- (i386_comp_type_attribute_p): Likewise for 'type1', 'type2'.
- (function_arg_partial_nregs): Likewise for 'cum', 'mode', 'type',
- and 'named'.
- (symbolic_operand): Likewise for 'mode'.
- (call_insn_operand): Likewise.
- (expander_call_insn_operand): Likewise.
- (ix86_logical_operator): Likewise.
- (ix86_binary_operator_ok): Likewise.
- (emit_pic_move): Likewise.
- (VOIDmode_compare_op): Likewise.
- (is_mul): Likewise.
- (str_immediate_operand): Likewise.
- (ix86_uary_operator_ok): Likewise for 'code', 'mode', and 'operands'.yy
- (asm_output_function_prefix): Likewise for 'name'.
- (function_prologue): Likewise for 'file', and 'size'.
- (function_epilogue): Likewise.
-
-1998-06-19 Jim Wilson <wilson@cygnus.com>
-
- * loop.h (struct induction): Clarify comment for unrolled field.
- * unroll.c (find_splittable_givs): Move set of unrolled field
- after address validity check.
-
-Fri Jun 19 18:38:04 1998 Michael Meissner <meissner@cygnus.com>
-
- * config/fp-bit.c (INLINE): Only define if not already defined.
-
-1998-06-19 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (installdirs): Loop over directories in $(libsubdir)
- creating probably missing ones, instead of single if statements.
-
-Fri Jun 19 10:43:52 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * c-common.c (truthvalue_conversion): Protect side effects in the
- expression when splitting a complex value.
- * fold-const.c (fold): Likewise.
-
-Fri Jun 19 02:31:16 1998 Klaus Kaempf (kkaempf@progis.de)
-
- * cccp.c (hack_vms_include_specification): Rewrite to handle
- '#include <dir/file.h>' correctly.
-
-Fri Jun 19 02:24:11 1998 H.J. Lu (hjl@gnu.org)
-
- * config/i386/linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Defined.
-
-Fri Jun 19 02:10:10 1998 John Wehle (john@feith.com)
-
- * i386.c (notice_update_cc): Integer conditional moves don't
- affect cc0.
-
- * i386.md (movsfcc, movdfcc, movxfcc): Use emit_store_flag
- to support LT, LE, GE, and GT signed integer comparisons.
- (movsfcc+1, movsfcc+2, movdfcc+1, movdfcc+2,
- movxfcc+1, movxfcc+2): Pattern doesn't match if the comparison
- is LT, LE, GE, or GT.
- (movdicc): Remove code resulting from an earlier patch which
- didn't apply correctly.
-
-Fri Jun 19 02:00:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * reload1.c (reload_cse_regno_equal_p): If -ffloat-store, don't
- consider a MEM in FP mode as equal.
-
-Fri Jun 19 01:02:17 1998 Jeffrey A Law (law@cygnus.com)
-
- * c-decl.c (duplicate_decls): Avoid setting TREE_ASM_WRITTEN for
- duplicate declarations of a function.
-
-Fri Jun 19 00:33:33 1998 H.J. Lu (hjl@gnu.org)
-
- * config/float-i386.h: New.
-
- * configure.in (i[34567]86-*-linux-*): Set float_format to i386.
-
-Thu Jun 18 20:11:00 1998 Jim Wilson <wilson@cygnus.com>
-
- * sched.c (schedule_insns): Use xmalloc not alloca for max_uid
- indexed arrays. Call free at the end of the function for them.
- * haifa-sched.c (schedule_insns): Likewise.
-
-Thu Jun 18 18:16:01 1998 Jim Wilson <wilson@cygnus.com>
-
- * dwarf2out.c (size_of_string): Do count backslashes.
-
-Thu Jun 18 11:43:54 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow REG+REG
- addressing when one register is the frame pointer or stack
- pointer. Disallow REG+CONST addressing in HI mode.
-
-Thu Jun 18 17:30:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_reloads): Don't narrow scope of RELOAD_OTHER to
- RELOAD_FOR_INSN.
-
-Thu Jun 18 09:36:50 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (c-lang.o): Depend on output.h.
-
- * c-lang.c: Include output.h.
-
- * sparc.c (sparc_builtin_saveregs): Remove unused variable `fntype'.
-
- * except.c (expand_builtin_eh_stub): Likewise for variable `jump_to'.
-
- * genrecog.c (write_subroutine): When writing insn-recog.c, mark
- variables `insn', `pnum_clobbers', `x[0 .. max_depth]' and `tem'
- with ATTRIBUTE_UNUSED.
-
- * regmove.c (copy_src_to_dest): Make function static to match its
- prototype.
-
- * reload1.c Include hard-reg-set.h before rtl.h to get macro
- HARD_CONST. Include machmode.h before hard-reg-set.h.
-
- * rtl.h: Prototype `retry_global_alloc' and wrap with macro
- HARD_CONST to protect usage of typedef HARD_REG_SET.
-
- * tree.c: Prototype `_obstack_allocated_p'.
-
- * varasm.c: Wrap prototype of `asm_output_aligned_bss' in macro
- BSS_SECTION_ASM_OP.
-
-Thu Jun 18 09:20:47 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * pa.c: Include system.h and toplev.h. Remove redundant code.
- (call_operand_address): Mark parameter `mode' with ATTRIBUTE_UNUSED.
- (symbolic_operand): Likewise.
- (symbolic_memory_operand): Likewise.
- (pic_label_operand): Likewise.
- (fp_reg_operand): Likewise.
- (pre_cint_operand): Likewise.
- (post_cint_operand): Likewise.
- (ireg_or_int5_operand): Likewise.
- (int5_operand): Likewise.
- (uint5_operand): Likewise.
- (int11_operand): Likewise.
- (uint32_operand): Likewise.
- (ior_operand): Likewise.
- (lhs_lshift_cint_operand): Likewise.
- (pc_or_label_operand): Likewise.
- (legitimize_pic_address): Likewise.
- (hppa_legitimize_address): Likewise for parameter `old'.
- (output_block_move): Likewise for parameter `size_is_constant'.
- (output_function_prologue): Likewise for parameter `size'.
- (output_function_epilogue): Likewise.
- (return_addr_rtx): Likewise for parameter `count'.
- (output_mul_insn): Likewise for parameter `unsignedp'.
- (hppa_builtin_saveregs): Likewise for parameter `arglist'.
- (output_bb): Likewise for parameter `operands'.
- (output_bvb): Likewise.
- (function_label_operand): Likewise for parameter `mode'.
- (plus_xor_ior_operator): Likewise.
- (shadd_operand): Likewise.
- (non_hard_reg_operand): Likewise.
- (eq_neq_comparison_operator): Likewise.
- (movb_comparison_operator): Likewise.
- (pa_combine_instructions): Likewise for parameter `insns'.
-
- * pa.h: Add prototypes for functions `output_deferred_plabels',
- `override_options', `output_ascii', `output_function_prologue',
- `output_function_epilogue', `print_operand',
- `symbolic_expression_p', `reloc_needed', `compute_frame_size',
- `hppa_address_cost', `and_mask_p', `symbolic_memory_operand',
- `pa_adjust_cost', `pa_adjust_insn_length' and
- `secondary_reload_class'.
-
-Wed Jun 17 22:28:48 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * configure.in: Don't turn on collect2 unconditionally.
-
-Wed Jun 17 20:20:48 1998 Mark Mitchell <mark@markmitchell.com>
-
- * cse.c (cse_basic_block): Don't include NOTE insns in the count
- that is used to decide whether or not it is time to erase the
- equivalence table.
-
-Wed Jun 17 18:30:43 1998 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000/linux.h (JUMP_TABLES_IN_TEXT_SECTION): Define to zero.
-
-Wed Jun 17 19:05:03 1998 John Carr <jfc@mit.edu>
-
- * haifa-sched.c (haifa_classify_insn): TRAP_IF is risky.
- (sched_analyze_2): Allow scheduling TRAP_IF.
-
- * reorg.c (mark_referenced_resources): Examine operands of TRAP_IF.
-
- * rtl.h (TRAP_CODE): New macro.
-
- * rtl.def (TRAP_IF): Change second operand type to rtx.
-
- * optabs.c (gen_cond_trap): New function.
- (init_traps): New function.
- (init_optabs): Call init_traps.
- * expr.h: Declare gen_cond_trap.
-
- * jump.c (jump_optimize): Optimize jumps to and around traps.
-
- * sparc.md: Define trap instructions.
-
- * rs6000.md: Define trap instructions.
- * rs6000.c (print_operand): New code 'V' for trap condition.
- (trap_comparison_operator): New function.
-
- * m88k.md: Update use of TRAP_IF.
-
- * tree.h (enum built_in_function): New function code BUILT_IN_TRAP.
- * c-decl.c (init_decl_processing): New builtin __builtin_trap.
- * expr.c (expand_builtin): Handle BUILT_IN_TRAP.
-
- * expr.c (expand_builtin): Error if __builtin_longjmp second argument
- is not 1.
-
-Wed Jun 17 15:20:00 1998 Catherine Moore <clm@cygnus.com>
-
- * reload1.c (spill_hard_reg): Check mode of register when
- spilling from scratch_list.
-
-Wed Jun 17 16:25:38 1998 Andrew MacLeod (amacleod@cygnus.com)
-
- * except.c (add_new_handler): Fix bug in finding last region handler.
- * libgcc2.c (find_exception_handler): Pass exception table pointer
- to runtime type matcher, not the match info field.
-
-Wed Jun 17 15:57:48 1998 Andrew MacLeod (amacleod@cygnus.com)
-
- * eh-common.h (struct eh_context): Add comment for hidden use of
- field dynamic_handler_chain.
- * except.c (get_dynamic_handler_chain): Comment on, and use the
- correct offset of the dynamic_handler_chain field.
-
-1998-06-17 Jim Wilson <wilson@cygnus.com>
-
- * mips/iris6.h (LINK_SPEC): Add -woff 131.
-
-1998-06-17 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c: Disable EH_FRAME_SECTION if we don't have .init.
-
- * configure.in: Don't disable collect2 when we have GNU ld.
-
-Wed Jun 17 08:38:13 1998 Jeffrey A Law (law@cygnus.com)
-
- * fold-const.c (make_range): Do not widen the type of the expression.
-
- * expr.c (check_max_integer_computation_mode): New function.
- (expand_expr): Avoid integer computations in modes wider than
- MAX_INTEGER_COMPUTATION_MODE.
- * fold-const.c (fold): Likewise.
- * tree.h (check_max_integer_computation_mode): Declare.
- * tm.texi (MAX_INTEGER_COMPUTATION_MODE): Document it.
-
- * configure.in (nm): Make a link to "nm" in the build tree too.
-
- * mn10300.md (andsi3): Fix typo.
-
-Tue Jun 16 22:58:40 1998 Richard Henderson <rth@cygnus.com>
-
- * reload1.c (reload_cse_regs): Call bzero instead of looping.
-
-Tue Jun 16 18:30:35 1998 Jim Wilson <wilson@cygnus.com>
-
- * dwarf2out.c (stripattributes): Prepend '*' to the section name.
-
-Tue Jun 16 16:49:26 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_prologue, alpha_expand_epilogue): New fns.
- (output_prologue, output_epilogue): Merge VMS and OSF versions;
- Remove anything related to the actual code generation.
- (output_end_prologue): New function.
- (alpha_sa_mask, alpha_sa_size): Merge VMS and OSF versions.
- (alpha_does_function_need_gp): Return false for VMS.
- (alpha_function_needs_gp): Make static.
- (add_long_const): Delete.
- (summarize_insn): Don't assume a SUBREG is of a REG.
- Prototype all static functions. Rename VMS-specific global
- variables vms_*.
- * alpha.h (TARGET_CAN_FAULT_IN_PROLOGUE): Default to 0.
- (FUNCTION_BOUNDARY): Align to cache line.
- (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER): Align to octaword.
- (FUNCTION_END_PROLOGUE): New macro.
- * alpha.md (attribute length): New. Mark all insns.
- (return_internal, prologue_stack_probe_loop): New patterns.
- (prologue, init_fp, epilogue): New patterns.
- Disable peepholes.
- * linux.h (TARGET_CAN_FAULT_IN_PROLOGUE): Define.
-
-Tue Jun 16 17:36:35 1998 Dave Brolley <brolley@cygnus.com>
-
- * toplev.c (lang_options): Add -trigraphs option for cpplib.
-
-Tue Jun 16 23:33:24 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (reload_reg_free_before_p): RELOAD_FOR_OUTADDR_ADDRESS
- is earlier than RELOAD_FOR_OUTPUT_ADDRESS; RELOAD_FOR_INPADDR_ADDRESS
- is earlier than RELOAD_FOR_INPUT_ADDRESS.
-
-Tue Jun 16 13:15:16 1998 Jim Wilson <wilson@cygnus.com>
-
- * libgcc1-test.c (memcpy): Define.
-
-Tue Jun 16 13:44:02 1998 Michael Meissner <meissner@cygnus.com>
-
- * genattrtab.c (struct attr_desc): Change int flags to bit
- fields. Add bit fields for this being function_units_used
- or *_blockage_range attributes.
- (write_unit_name): New function to print a function unit name
- given unit #.
- (expand_units): Indicate whether this is function_units_used or
- *_blockage_range attributes.
- (write_toplevel_expr): Print function_units_used and
- *_blockage_range attributes in a more friendly fashion.
- (make_internal_attr): Indicate whether this attribute is either
- function_units_used or *_blockage_range.
-
-Mon Jun 15 17:06:43 1998 Michael Meissner <meissner@cygnus.com>
- Jim Wilson <wilson@cygnus.com>
-
- * regmove.c (copy_src_to_dest): Do not copy src to dest if either
- the source or destination is special.
-
-Mon Jun 15 13:20:33 1998 Jim Wilson <wilson@cygnus.com>
-
- * c-decl.c (shadow_tag_warned): Use specs not declspecs in for loop.
-
-Mon Jun 15 07:16:29 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Jun 13 13:10:40 1998 Krister Walfridsson <cato@df.lth.se>
-
- * config/sparc/netbsd.h (DEFAULT_PCC_STRUCT_RETURN): Undefine before
- redefining it.
-
-Fri Jun 12 18:06:45 1998 Doug Evans <devans@egcs.cygnus.com>
-
- * m32r/m32r.h (STARTFILE_SPEC): Delete crtsysc.o.
- (ENDFILE_SPEC): Add -lgloss.
-
-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.
-
-1998-06-10 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * config/rs6000/rs6000.c (output_prolog): Change locations and
- directions of saving and restoring arguments of main on the stack.
-
-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 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
- overflows.
-
- * 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 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 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 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 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 ambiguous
- 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): Initialize 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
- 1998-05-23 commit.
-
-Tue Jun 2 21:59:01 1998 Richard Henderson <rth@cygnus.com>
-
- * jump.c (rtx_unsafe_p): New function.
- (jump_optimize): Use it on if/then/else transformations and
- conditional move transformations.
-
-Tue Jun 2 22:50:10 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * fold-const.c (fold, case EQ_EXPR): When folding VAR++ == CONST
- or VAR-- == CONST construct a proper mask if VAR is a bitfield.
- Cope with CONST being out of range for the bitfield.
-
-Tue Jun 2 22:28:31 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
-
- * expr.c (emit_move_insn_1): When moving complex values in several
- steps, emit a CLOBBER to show the destination dies.
-
-Tue Jun 2 22:17:26 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (site.exp): Use the object testsuite directory as
- the temporary directory.
-
- * expr.c (expand_expr, case ADDR_EXPR): Handle taking the
- address of an ADDRESSOF rtx.
-
-1998-06-02 Mike Stump <mrs@wrs.com>
-
- * expr.c (expand_builtin_setjmp): Handle BUILTIN_SETJMP_FRAME_VALUE.
- * i960.h (SETUP_FRAME_ADDRESSES, BUILTIN_SETJMP_FRAME_VALUE): Define.
- * i960.md (ret, flush_register_windows): Define.
- (nonlocal_goto): Likewise. Nested function nonlocal gotos don't
- work yet.
- * tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Document new macro.
-
-Tue Jun 2 14:02:38 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (divsi3, udivsi3, modsi3, umodsi3): Enable, and work
- around an OSF/1 library bug wrt sign-extension of inputs.
-
-Tue Jun 2 13:02:44 1998 Richard Henderson <rth@cygnus.com>
-
- * 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.
-
-Mon Jun 1 12:14:28 1998 Michael Meissner <meissner@cygnus.com>
-
- * config/fp-bit.c (_fp{add,div}_parts): Return correct IEEE result
- in the presence of IEEE negative 0's.
-
-Sun May 31 16:11:41 1998 John Wehle (john@feith.com)
-
- * reload.c (find_reloads): Record the existing mode if
- operand_mode == VOIDmode before replacing a register with
- a constant.
- * i386.md (tstsi, tsthi, tstqi, tstsf, tstdf, tstxf): Set
- i386_compare_op1 to const0_rtx for the benefit of the
- conditional move patterns.
- (movsicc, movhicc, movsfcc, movdfcc, movxfcc, movdicc): Rewrite
- based on suggestions from Jim Wilson.
-
-Sun May 31 00:44:02 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun May 31 00:34:17 1998 Bruce Korb <korbb@datadesign.com>
-
- * Makefile.in (fixinc.sh): Update rules again.
-
-Sun May 31 00:27:47 1998 Jeffrey A Law (law@cygnus.com)
-
- * extend.texi: Bring back reference to trampoline paper.
-
-Sun May 31 00:22:34 1998 Ulrich Drepper <drepper@cygnus.com>
-
- * Makefile.in (USER_H): Add stdbool.h.
- * ginclude/stdbool.h: New file.
-
-Fri May 29 01:48:25 1998 Jeffrey A Law (law@cygnus.com)
-
- * jump.c (thread_jumps): Do not look at the NOTE_LINE_NUMBER
- of a non-note insn.
-
- * gcse.c (pre_delete): Fix code to determine the mode of
- the reaching pseudo register.
-
-Fri May 29 01:07:28 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
-
- * Makefile.in (GEN): Add gencheck.
- (STAGESTUFF): Add tree-check.h and gencheck.
-
-Fri May 29 00:57:37 1998 Bruce Korb <korbb@datadesign.com>
-
- * Makefile.in (cstamp-h.in): Remove before trying to recreate.
- (fixinc.sh): Set some additional environment variables before
- calling mkfixinc.sh.
-
-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 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * except.h (remove_handler): Add new prototype.
- * except.c (remove_handler): New function to remove handlers
- from an exception region.
- * flow.c (find_basic_blocks_1): Remove handlers from regions when
- handler label is deleted; remove exception regions with no handlers.
-
-Thu May 28 09:36:39 1998 Michael Meissner <meissner@cygnus.com>
-
- * except.h (rtx): Define rtx type correctly if needed.
- * function.h (rtx): Likewise.
- (tree): Define tree type correctly if needed.
-
- * c-pragma.c (toplevel): Include rtl.h.
-
- * stor-layout.c (toplevel): Move include of rtl.h before
- except.h.
-
- * 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.
-
- * configure.lang: Fix thinko when adding a definition for
- target_alias to the Makefile.
-
-Wed May 27 02:50:00 1998 Catherine Moore (clm@cygnus.com)
-
- * config/sparc/lb1spc.asm (.rem and .urem): Replace
- routines.
-
-Wed May 27 02:48:31 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.c (arm_gen_constant): Rework to eliminate uninitialized
- variable warnings. Don't generate scratch registers if only
- counting insns.
- (find_barrier): Eliminate unused variable SRC.
-
-1998-05-27 Manfred Hollstein <manfred@s-direktnet.de>
-
- * toplev.h (rtx_def): Provide global declaration to avoid
- `limited scope' warnings.
-
-Tue May 26 23:47:52 1998 Mumit Khan <khan@xraylith.wisc.edu>
-
- * Makefile.in (gencheck.o): Use HOST_CC.
- * i386/t-mingw32: New file.
- * configure.in (i386-*-mingw32*): Use.
-
-Tue May 26 07:31:04 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.c (bad_signed_byte_operand): New predicate function.
- * arm.h (PREDICATE_CODES): Add it to the list.
- * arm.md (*extendqi[sh]i_insn): Split any addresses that ldrsb
- can't handle.
- (define_split): Two new splits for above insns.
-
- * arm.c: Include toplev.h.
- (arm_override_options): Add parentheses around use of tune_flags.
- (arm_split_constant): Remove unused variable.
- (arm_gen_constant, arm_gen_movstrqi, add_constant): Likewise.
- (output_func_prologue, arm_expand_prologue): Likewise.
- (arm_canonicalize_comparison): Make I unsigned; rework constants
- accordingly. Add missing parentheses around << operation.
- (arm_rtx_costs): Correctly parenthesize MULT costs. Add a DEFAULT
- clause.
- ({load,store}_multiple_sequence): Initialize BASE_REG.
- (select_dominance_cc_mode): Add DEFAULT clauses.
- (broken_move): Return zero if the destination is not a register.
- (arm_reorg): Move unused REGNO declaration into the dead code.
- * arm.h (CANONICALIZE_COMPARISON): Ensure OP1 is updated.
-
-Mon May 25 22:49:56 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon May 25 11:56:24 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon May 25 14:00:13 1998 Dave Brolley <brolley@cygnus.com>
-
- * cpperror.c (v_cpp_message): Remove static prototype.
- * cpplib.c (v_cpp_message): Move prototype to cpplib.h.
- * cpplib.h (v_cpp_message): Add protoptype.
- (stdarg.h,varargs.h): Needed for v_cpp_message prototype.
-
-Sun May 24 20:36:15 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun May 24 02:08:57 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-1998-05-24 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * m68k.h: Declare more functions used in macros.
- (REG_CLASS_CONTENTS): Completely embrace initializer.
- * m68k.md (adddi3, subdi3): Add abort call to avoid warning
- about returning no value.
- * cse.c (find_best_addr): Declare p and found_better only if
- needed.
- * dbxout.c (dbxout_continue): Define only if DBX_CONTIN_LENGTH > 0.
- * dwarfout.c (string_length_attribute): #if 0 away.
- * function.c (expand_function_end): Define varible blktramp only
- if needed.
- * jump.c (find_insert_position): Define only if !HAVE_cc0.
- * loop.c (combine_givs_p): Define variable tem only if needed.
- * real.c: Comment out unused functions eabs, eround,
- e{24,53,64,113}toasc and eiinfin.
-
-Sat May 23 23:44:53 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
-
- * Makefile.in (boostrap2-lean, bootstrap3-lean,
- bootstrap4-lean): New targets.
-
-Sat May 23 23:35:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * warn_summary, test_summary: Moved into the contrib directory.
-
-1998-05-23 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (ENQUIRE_CFLAGS, ENQUIRE_LDFLAGS): Move down to the end
- of the Makefile.
- (FLOAT_H_TEST): Likewise.
- (ENQUIRE): Likewise.
- (float.h-nat): Likewise.
- (float.h-cross): Likewise.
- (enquire): Likewise.
- (enquire.o): Likewise.
- (stmp-int-hdrs): Fix comment about enquire; depend upon gfloat.h.
- (stmp-headers): Move actions to stmp-int-hdrs, retaining only a
- no-op.
- (FLOAT_H): Remove old float.h-nat version; move current definition
- to CROSS_FLOAT_H location.
- (all.cross): Remove comments about enquire stuff.
-
- * Makefile.in (all.cross): Swap $(LIBGCC) and $(STMP_FIXPROTO).
- (rest.encap): Likewise.
- (libgcc2.ready): Depend upon $(STMP_FIXPROTO)
-
- * toplev.h (tree_node): Provide global declaration to avoid
- `limited scope' warnings.
-
-Sat May 23 23:23:35 1998 Robert Lipe <robertl@dgii.com>
-
- * test_summary: Display section breaks for each entry
- in a multilibbed target's output.
-
-1998-05-23 Richard Henderson <rth@cygnus.com>
-
- * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
- offset's mode is not ptr_mode, convert it.
-
-1998-05-22 Jason Merrill <jason@yorick.cygnus.com>
-
- * fold-const.c (ssize_binop): New fn.
- * tree.h: Declare it.
-
-Fri May 22 03:42:05 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * 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>
-
- * cplus-dem.c (MBUF_SIZE): Bumped from 512 to 32767.
-
-Fri May 22 00:57:00 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
-
- * final.c (JUMP_TABLES_IN_TEXT_SECTION): Provide a default value.
- (shorten_branches, final_scan_insn): Test value of
- JUMP_TABLES_IN_TEXT_SECTION instead of just testing whether it
- is defined.
- * tm.texi (JUMP_TABLES_IN_TEXT_SECTION): Corresponding changes.
- * arm/coff.h: Define JUMP_TABLES_IN_TEXT_SECTION to 1.
- * arm/tcoff.h: Likewise.
- * i386/386bsd.h: Likewise.
- * i386/freebsd-elf.h: Likewise.
- * i386/freebsd.h: Likewise.
- * i386/netbsd.h: Likewise.
- * i386/ptx4-i.h: Likewise.
- * i386/sysv4.h: Likewise.
- * pa/pa.h: Likewise.
- * rs6000/linux.h: Likewise.
- * rs6000/rs6000.h: Likewise.
- * sh/sh.h: Likewise.
- * sparc/sp64-elf.h: Likewise.
- * v850/v850.h: Likewise.
- * rs6000/sysv4.h: Define JUMP_TABLES_IN_TEXT_SECTION to 0.
- * i386/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION to (flag_pic).
-
-Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * regmove.c (gen_add3_insn): New function.
- (fixup_match_2): Use it instead of calling gen_addsi3.
-
-Thu May 21 23:09:50 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (gencheck): Depend on HOST_LIBDEPS.
-
- * alias.c (rtx_equal_for_memref_p): Handle SCRATCH as a memory
- address.
-
-Thu May 21 20:18:13 1998 Martin von Loewis <loewis@informatik.hu-berlin.de>
-
- * Makefile.in (TREE_H): Add tree-check.h.
- (tree-check.h, gencheck): New targets.
- * gencheck.c: New file.
- * tree.c (tree_check, tree_class_check): New functions.
- * tree.h (TREE_CHECK, TREE_CLASS_CHECK): Define.
- (TYPE_CHECK, DECL_CHECK): Define.
- Modify all access macros to use generated checking macros.
-
-Wed May 20 23:44:28 1998 John Wehle (john@feith.com)
-
- * acconfig.h (HAVE_GAS_MAX_SKIP_P2ALIGN): New tag.
- * configure.in: Check for it.
- * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Use it.
- * final.c (uid_align, uid_shuid, label_align): Make static.
- (label_align): Change type to struct label_alignment pointer.
- (LABEL_TO_ALIGNMENT, shorten_branches): Update due to type change.
- (LABEL_TO_MAX_SKIP): Define.
- (LABEL_ALIGN_MAX_SKIP, LOOP_ALIGN_MAX_SKIP,
- LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Provide defaults.
- (shorten_branches): Record the maximum bytes to skip when
- aligning a label.
- (final_scan_insn): Use the maximum bytes to skip when aligning a label
- if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
- * i386.h (LOOP_ALIGN_MAX_SKIP,
- LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Define.
- * i386.c (override_options): i386_align_jumps and i386_align_loops
- default to 4 if ASM_OUTPUT_MAX_SKIP_ALIGN is available.
- * invoke.texi: Document new i386 align-loops and align-jumps behavior.
-
-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
- lineno is 0. (Can happen when compiling Java .class files.)
-
-Thu May 21 19:50:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (reload_reg_free_for_value_p): Fix RELOAD_FOR_INPUT
- end of lifetime and RELOAD_FOR_OUTPUT start of lifetime.
-
-Thu May 21 19:32:27 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * combine.c (nonzero_bits): For paradoxical subregs, take
- LOAD_EXTENDED_OP into account.
-
-Thu May 21 11:51:15 1998 Dave Brolley <brolley@cygnus.com>
-
- * configure.in (extra_c_objs): Add prefix.o.
- (extra_cxx_objs): Extra objects for C++ with cpplib.
- * configure: Regenerate.
-
- * c-tree.h (get_directive_line): Different prototype for cpplib.
- (GET_DIRECTIVE_LINE): Macro wrapper for get_directive_line.
-
- * c-lex.h (get_directive_line): Not needed here for cpplib.
-
- * c-lex.c (yy_cur,yy_lim,yy_get_token): Move to c-common.c.
- (GET_DIRECTIVE_LINE): Move to c-common.c and rename to get_directive_line.
-
- * c-common.c (parse_in,parse_options,cpp_token): Declare for cpplib.
- (yy_cur,yy_lim,yy_get_token,get_directive,line): Moved here from c-lex.c
-
-Thu May 21 09:04:42 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gengenrtl.c (type_from_format, accessor_from_format): Change
- type of parameter `c' from `char' to `int'.
-
-Wed May 20 22:28:34 1998 Jeffrey A Law (law@cygnus.com)
-
- * warn_summary, test_summary: New scripts from
- Kaveh Ghazi and Alexandre Oliva respectively.
-
- * gcse.c (current_function_calls_longjmp): Declare.
-
-1998-05-20 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c (base_type_die): Use int_size_in_bytes.
-
-Wed May 20 01:11:02 1998 Doug Evans (devans@cygnus.com)
- Jeff Law (law@cygnus.com)
-
- * Global CSE and constant/copy propagation.
- * Makefile.in (OBJS): Add gcse.o.
- (STAGESTUFF): Add *.gcse.
- (gcse.o): Add dependencies.
- (mostlyclean): Remove *.gcse and */*.gcse.
- * gcse.c: New file.
- * loop.c (loop_optimize): Move call to init_alias_analysis.
- * recog.c (validate_replace_src): New function.
- * toplev.c (gcse_dump): New global variable.
- (flag_gcse, gcse_time): Likewise.
- (compile_file): Initialize gcse_time and clean out the gcse dump
- file if necessary.
- (rest_of_compilation): Call gcse_main as requested. Dump RTL
- after gcse if requested.
- (main): Enable gcse for -O2 and above. Handle -dG. Enable gcse
- dumps for -da.
- * gcc.texi: Add gcse related internal documentation.
- * invoke.texi: Note new command line options for gcse.
- * tm.texi: Document AVOID_CCMODE_COPIES.
- * mips.h (AVOID_CCMODE_COPIES): Define.
-
-Tue May 19 22:31:20 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (deduced.h): Only run scan-types if $(SYSTEM_HEADER_DIR)
- exists.
- (stmp-fixproto): Simlarly for running fixproto.
- * cross-make (SYSTEM_HEADER_DIR): Now $(tooldir)/sys-include.
-
-Tue May 19 19:08:52 1998 Jim Wilson <wilson@cygnus.com>
-
- * config/mips/mips.c (double_memory_operand): Accept any MEM during
- reload when TARGET_64BIT.
-
-Tue May 19 18:21:25 1998 Jim Wilson <wilson@cygnus.com>
-
- Finish incomplete change started by Kenner.
- * configure.in (*-*-linux-gnu*): Delete NO_STAB_H from xm_defines.
- (powerpcle-*-cygwin32): Delete xm_defines.
- * final.c, mips-tfile.c, xcoffout.c, config/mips/mips.c: Use
- HAVE_STAB_H instead of NO_STAB_H.
- * config/xm-linux.h (NO_STAB_H): Delete.
- (HAVE_STAB_H): Undefine.
- * config/i386/xm-go32.h (NO_STAB_H): Delete.
-
-1998-05-19 Jim Wilson <wilson@cygnus.com>
-
- * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Ignore
- LANG_TYPE trees with DECL_SOURCE_LINE of 0.
-
-Tue May 19 15:07:54 1998 Todd Vierling <tv@netbsd.org>
-
- * arm/netbsd.h: Ensure DWARF2_UNWIND_INFO is undefined.
-
-Tue May 19 17:19:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (reload_reg_free_for_value_p): New function.
- (allocate_reload_reg, choose_reload_regs): Use it.
-
-Tue May 19 11:51:00 1998 Andrew MacLeod (amacleod@cygnus.com)
-
- * except.c (expand_start_catch): Correct logic for when to
- generate a new handler label, and when to use the old one.
-
-Tue May 19 11:08:52 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (print-rtl.o): Depend on bitmap.h.
- (dbxout.o): Depend on toplev.h.
- ($(SCHED_PREFIX)sched.o): Likewise.
- ($(out_object_file)): Likewise for system.h and toplev.h.
- (cppmain.o): Depend on gansidecl.h.
- (cpplib.o): Likewise.
- (cpperror.o): Likewise.
- (cppexp.o): Likewise.
- (cpphash.o): Likewise.
- (cppalloc.o): Likewise.
- (fix-header.o): Depend on cpplib.h and cpphash.h.
- (scan-decls.o): Depend on gansidecl.h.
-
- * basic-block.h (free_regset_vector): Add prototype.
-
- * cccp.c (check_precompiled): Mark parameter `fname' with
- ATTRIBUTE_UNUSED.
- (do_assert): Likewise for `op' and `keyword'.
- (do_unassert): Likewise.
- (do_line): Likewise for `keyword'.
- (do_error): Likewise for `op' and `keyword'.
- (do_warning): Likewise.
- (do_ident): Likewise for `keyword'.
- (do_pragma): Likewise for `limit', `op' and `keyword'.
- (do_sccs): Likewise.
- (do_if): Likewise for `keyword'.
- (do_elif): Likewise.
- (do_else): Likewise.
- (do_endif): Likewise.
-
- * collect2.c (getenv): Remove redundant prototype.
- (collect_exit, collect_execute, dump_file): Likewise.
- (dump_list): Wrap prototype and definition in COLLECT_EXPORT_LIST.
- (dump_prefix_list): Hide prototype and definition.
-
- * sparc.c: Include toplev.h.
- (intreg_operand): Mark parameter `mode' with ATTRIBUTE_UNUSED.
- (symbolic_memory_operand): Likewise.
- (sp64_medium_pic_operand): Likewise.
- (data_segment_operand): Likewise.
- (text_segment_operand): Likewise.
- (splittable_symbolic_memory_operand): Likewise.
- (splittable_immediate_memory_operand): Likewise.
- (eq_or_neq): Likewise.
- (normal_comp_operator): Likewise.
- (noov_compare_op): Likewise.
- (v9_regcmp_op): Likewise.
- (v8plus_regcmp_op): Likewise.
- (extend_op): Likewise.
- (cc_arithop): Likewise.
- (cc_arithopn): Likewise.
- (small_int): Likewise.
- (uns_small_int): Likewise.
- (clobbered_register): Likewise.
- (legitimize_pic_address): Likewise.
- (delay_operand): Likewise.
- (sparc_builtin_saveregs): Remove unused variable `stdarg'.
-
- * sparc.h (order_regs_for_local_alloc, eligible_for_return_delay,
- sparc_issue_rate, v8plus_regcmp_p): Add prototypes.
-
- * sparc.md (cmpdi_v8plus): Add abort for default case in switch.
-
- * cppalloc.c: Include gansidecl.h.
-
- * cpperror.c: Include stdarg.h/varargs.h and gansidecl.h.
- (cpp_file_line_for_message): Mark parameter `pfile' with
- ATTRIBUTE_UNUSED.
- (v_cpp_message): New function.
- (cpp_message): Use it. Also convert to variable arguments.
- (cpp_fatal): Likewise.
- (cpp_pfatal_with_name): Constify parameter `name'.
-
- * cppexp.c: Move gansidecl.h before cpplib.h.
- * cpphash.c: Likewise.
- * cpphash.h (hashf, delete_macro): Add prototypes.
-
- * cpplib.c: Include stdarg.h/varargs.h and move gansidecl.h before
- cpplib.h. Don't include errno.h.
- (update_path): Add arguments to prototype.
- (cpp_fatal, cpp_file_line_for_message, cpp_message, delete_macro,
- cpp_print_containing_files): Remove redundant prototypes.
- (cpp_hash_cleanup, add_import, append_include_chain,
- make_assertion, path_include, initialize_builtins,
- initialize_char_syntax, finclude, validate_else, comp_def_part,
- lookup_import, redundant_include_p, is_system_include,
- read_name_map, read_filename_string, open_include_file,
- check_macro_name, compare_defs, compare_token_lists,
- eval_if_expression, change_newlines): Add prototype arguments.
- (hashf): Remove redundant prototype.
- (read_token_list, free_token_list, safe_read, xcalloc, savestring,
- conditional_skip, skip_if_group): Add prototype arguments.
- (fdopen): Remove redundant prototype.
- (do_define, do_line, do_include, do_undef, do_error, do_pragma,
- do_ident, do_if, do_xifdef, do_else, do_elif, do_endif, do_sccs,
- do_once, do_assert, do_unassert, do_warning): Add prototype arguments.
- (struct directive): Add prototype arguments to function pointer
- member `func'.
- (handle_directive): Add missing arguments to call to `do_line'.
- (do_include): Mark parameters `unused1' and `unused2' with
- ATTRIBUTE_UNUSED.
- (do_line): Likewise for `keyword' and new parameters `unused1' and
- `unused2'.
- (do_error): Likewise for `keyword'.
- (do_warning): Likewise. Also add missing argument `pfile' in call
- to cpp_pedwarn.
- (do_once): Mark parameter `keyword', `unused1' and `unused2' with
- 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.
- (do_if): Likewise for `keyword'.
- (do_elif): Likewise.
- (eval_if_expression): Likewise for `buf' and `length'.
- (do_xifdef): Likewise for `unused1' and `unused2'.
- (do_else): Likewise for `keyword', `buf' and `limit'.
- (do_endif): Likewise.
- (parse_name): Add missing argument `pfile' in call to cpp_pedwarn.
- (cpp_handle_options): Remove superfluous NULL argument in call to
- cpp_fatal.
- (cpp_handle_options): Likewise.
- (do_assert): Mark parameter `keyword', `buf' and `limit' with
- ATTRIBUTE_UNUSED.
- (do_unassert): Likewise.
- (cpp_print_file_and_line): Add missing argument `pfile' in call to
- cpp_file_line_for_message.
- (v_cpp_error): New function.
- (cpp_error): Use it. Also accept variable arguments.
- (v_cpp_warning): New function.
- (cpp_warning): Use it. Also accept variable arguments.
- (cpp_pedwarn): Accept variable arguments.
- (v_cpp_error_with_line): New function.
- (cpp_error_with_line): Use it. Accept variable arguments.
- (v_cpp_warning_with_line): New function.
- (cpp_warning_with_line): Use it. Accept variable arguments. Hide
- definition.
- (cpp_pedwarn_with_line): Accept variable arguments.
- (cpp_pedwarn_with_file_and_line): Likewise.
- (cpp_error_from_errno): Constify parameter `name'. Add missing
- argument `pfile' in call to cpp_file_line_for_message.
- (cpp_perror_with_name): Constify parameter `name'.
-
- * cpplib.h: Define PARAMS() in terms of PROTO().
- (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_fatal, cpp_message, cpp_pfatal_with_name,
- cpp_file_line_for_message, cpp_print_containing_files): Add
- arguments to prototypes.
- (scan_decls, cpp_finish): Add prototypes.
-
- * cppmain.c: Include gansidecl.h.
- (main): Remove unused variable `i'.
-
- * dbxout.c: Include toplev.h.
-
- * demangle.h (do_tlink, collect_execute, collect_exit,
- collect_wait, dump_file, file_exists): Add prototype.
-
- * dwarf2out.c (dwarf_type_encoding_name, decl_start_label): Hide
- prototype and definition.
- (gen_unspecified_parameters_die): Don't assign results of call to
- function new_die() to unused variable `parm_die'.
- (dwarf2out_line): Mark parameter `filename' with ATTRIBUTE_UNUSED.
- (dwarf2out_define): Likewise for `lineno' and `buffer'.
-
- * dwarfout.c (output_unsigned_leb128, output_signed_leb128): Hide
- prototype and definition.
- (output_die): Add prototype arguments to function pointer arg.
- (output_unspecified_parameters_die): Mark parameter `arg' with
- ATTRIBUTE_UNUSED.
-
- * except.c (output_exception_table_entry): Remove unused variable
- `eh_entry'.
-
- * except.h (expand_fixup_region_start, expand_fixup_region_end):
- Add prototypes.
-
- * expr.c (do_jump_by_parts_equality_rtx): Remove prototype.
-
- * expr.h (do_jump_by_parts_equality_rtx): Add prototype.
-
- * fix-header.c: Include stdarg.h/varargs.h, move gansidecl.h
- before cpplib.h, include cpphash.h, remove redundant prototype of
- cpp_fatal, don't define `const', add a prototype for `fatal'.
- (cpp_file_line_for_message): Add missing arguments `pfile'.
- (v_cpp_message): New function.
- (cpp_message): Use it.
- (v_fatal): New function.
- (fatal, cpp_fatal): Use it.
- (cpp_pfatal_with_name): Constify parameter `name'.
-
- * flow.c (free_regset_vector): Remove redundant prototype.
-
- * function.c (round_down): Wrap prototype and definition with
- macro ARGS_GROW_DOWNWARD.
- (record_insns): Wrap prototype and definition with
- defined (HAVE_prologue) || defined (HAVE_epilogue).
-
- * gansidecl.h (ATTRIBUTE_PRINTF_4, ATTRIBUTE_PRINTF_5): New macros.
-
- * gen-protos.c: Include gansidecl.h.
- (hashf): Don't make it static, constify parameter `name'.
-
- * genattrtab.c (check_attr_test): Change XEXP() to XSTR() to match
- specifier %s in calls to function `fatal'.
-
- * haifa-sched.c: Include toplev.h.
- (find_rgns): Remove unused variable `j'.
-
- * integrate.c (note_modified_parmregs): Mark parameter `x' with
- ATTRIBUTE_UNUSED.
- (mark_stores): Likewise.
-
- * jump.c (mark_modified_reg): Likewise.
-
- * output.h (insn_current_reference_address): Add prototype.
- (eh_frame_section): Likewise.
-
- * print-rtl.c: Include bitmap.h.
-
- * reload1.c (reload): Wrap variables `note' and `next' in macro
- PRESERVE_DEATH_INFO_REGNO_P.
- (forget_old_reloads_1): Mark parameter `ignored' with
- ATTRIBUTE_UNUSED.
- (choose_reload_regs): Remove unused variable `in'.
- (reload_cse_invalidate_mem): Mark parameter `ignore' with
- ATTRIBUTE_UNUSED.
- (reload_cse_check_clobber): Likewise.
-
- * rtl.h (expand_null_return, reg_classes_intersect_p): Add prototype.
- (mark_elimination): Fix typo in prototype.
-
- * 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
- block number for NOTE_INSN_BLOCK_END.
-
-Mon May 18 15:30:42 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/v850/lib1funcs.asm: Add .text pseudo op to start of
- ___udivsi3.
-
- * config/v850/lib1funcs.asm: Fix .size pseudo ops to use three
- 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.
-
-Mon May 18 13:20:23 1998 Richard Henderson <rth@cygnus.com>
-
- * tree.h (TYPE_SIZE_UNIT): New.
- (struct tree_type): Add size_unit member.
- * stor-layout.c (layout_type): Initialize it.
- * expr.c (get_inner_reference) [ARRAY_REF]: Use it.
- * tree.c (size_in_bytes, int_size_in_bytes): Likewise.
-
-Mon May 18 12:07:37 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * stor-layout.c (layout_record): Fix off-by-one error when checking
- length of the TYPE_BINFO vector.
-
-Mon May 18 10:59:23 1998 Nick Clifton <nickc@cygnus.com>
-
- * dbxout.c (dbxout_parms): Use TREE_ARG to compute the type of a
- function parameter passed in memory.
-
-Mon May 18 09:02:09 1998 Robert Lipe <robertl@dgii.com>
-
- * dwarfout.h, dwarf2out.h, dbxout.h, sdbout.h: New files.
- Prototypes for externally used functions in respective C files.
- * dwarfout.c, dbxout.c, dwarf2out.c, sdbout.c, toplev,c,
- final.c: Include above files.
- * Makefile.in (toplev.o): Add dependency for above four headers.
- (final.o): Likewise.
- (dwarfout.o, dbxout.o, dwarf2out.o, sdbout.o): Depend on four
- respective header files.
-
-Mon May 18 01:23:33 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (TARGET_TOOLPREFIX): No longer define.
- (AR_FOR_TARGET, RANLIB_FOR_TARGET): Define to use versions in
- the build tree if they exist.
- (AR, AR_FLAGS, OLDAR, OLDAR_FLAGS, RANLIB, RANLIB_TEST): Update
- appropriately.
- (objdir): Let configure substitute value.
- (FLOAT_H): Let configure select a pre-built version from the
- config subdir.
- * build-make (INSTALL_TARGET, ALL): Disable, no longer needed.
- * configure.in: Substitute for objdir.
-
- * Makefile.in (build_canonical, host_canonical): Let configure
- substitute values for these variables.
- * configure.in: Substitute for build_canonical, host_canonical
- and target_subdir in generated Makefile.
-
- * output.h (find_basic_blocks): Declare.
- (free_basic_block_vars, set_block_num, life_analysis): Likewise.
-
- * Makefile.in (BISON): Use bison from the build tree if it exists.
- (FLEX): Similarly.
-
-Mon May 18 00:08:19 1998 Nick Clifton <nickc@cygnus.com>
-
- * gcc.c (SWITCH_CURTAILS_COMPILATION): Definition.
- (DEFAULT_SWITCH_CURTAILS_COMPILATION): True for options -S and -c.
- (process_command): If HAVE_EXECUTABLE_SUFFIX is defined then scan
- command line arguments to see if an executable is not being
- created, and if so - do not append the suffix.
-
- * tm.texi (SWITCH_CURTAILS_COMPILATION): Add description of new
- driver macro.
-
-Sun May 17 23:59:45 1998 John Wehle (john@feith.com)
-
- * i386.h (ALIGN_DFmode): Delete.
- (CONSTANT_ALIGNMENT): Define.
- * varasm.c (force_const_mem): Use it.
-
-Sun May 17 19:31:05 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_emit_conditional_branch): Clear cmp_code after
- using it with swap_condition, not before.
-
-Sun May 17 13:44:32 1998 Jim Wilson <wilson@cygnus.com>
-
- * alias.c (mode_alias_check): Delete.
- (true_dependence, anti_dependence, output_dependence): Revert April 21
- change.
-
-Sun May 17 08:45:21 1998 Krister Walfridsson <cato@df.lth.se>
-
- * toplev.c (output_lang_identify): Enable prototype and definition.
-
-Sun May 17 01:12:27 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat May 16 23:20:32 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha/osf.h (HAVE_STAMP_H): Define.
- * alpha.c: Use it.
- * alpha/netbsd.h, alpha/netbsd-elf.h: New files.
- * configure.in (alpha*-*-netbsd*): New.
- Based on patches from Paul H. Anderson <pha@pdq.com>.
-
- * configure.in (alpha*-*-linux-*): Kill xm_defines.
- (alpha*-*-linux-gnulibc1*) [fixincludes]: Define.
- * alpha/xm-linux.h: Remove file.
-
-Sat May 16 18:32:45 1998 Doug Evans <devans@canuck.cygnus.com>
-
- * dbxout.c (dbxout_parms): If mode of type of parameter living
- in memory doesn't match mode of DECL_RTL, make big endian correction.
-
-Fri May 15 21:40:06 1998 John Wehle (john@feith.com)
-
- * i386.md (movdi-1, movdi): Rewrite based on SI move patterns.
-
-Fri May 15 18:55:22 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.h (BINFO_SIZE, TYPE_BINFO_SIZE): New macros.
- * stor-layout.c (layout_record): Set it.
-
-Fri May 15 18:49:30 1998 Mark Mitchell <mmitchell@usa.net>
-
- * toplev.c (rest_of_compilation): Don't defer nested functions.
-
-Fri May 15 17:42:52 1998 Bob Manson <manson@charmed.cygnus.com>
-
- * config/rs6000/rs6000.c (rs6000_stack_info): Align the stack bottom
- to an 8-byte boundary if info_ptr->fpmem_p.
-
-Fri May 15 17:36:11 1998 Bill Moyer <ttk@cygnus.com>
-
- * loop.c (basic_induction_var): Added test preventing
- CCmode parameter passed to convert_modes().
-
-Fri May 15 17:26:18 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
-
- * expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
- input_filename and lineno around expand_expr call. Set them to values
- in WFL before expand_expr call.
-
-Fri May 15 12:44:57 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
-
- * stor-layout.c (set_sizetype): Set TYPE_NAME on bitsizetype.
-
-Fri May 15 07:20:03 1998 Mark Mitchell <mmitchell@usa.net>
-
- * fold-const.c (constant_boolean_node): New function.
- (fold): Use it.
-
-Fri May 15 11:21:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (gen_shl_and): Don't sign extend constant for kind two.
- Abort if trying to split kind 3 or 4 outside of combine.
-
-Fri May 15 01:47:37 1998 Jeffrey A Law (law@cygnus.com)
-
- * mips.c (print_operand, case 'x'): Use HOST_WIDE_INT_PRINT_HEX.
-
-Fri May 15 01:42:45 1998 Mumit Khan <khan@xraylith.wisc.edu>
-
- * objc/Make-lang.in (OBJC_O): Add missing exeext.
- (libobjc.a, runtime-info.h): Likewise.
-
-Fri May 15 01:29:39 1998 John Wehle (john@feith.com)
-
- * i386.h (DATA_ALIGNMENT): Define.
-
-Fri May 15 05:35:37 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (delete_output_reload): Ignore single USE that
- was emitted for the pseudo use of this INSN.
- If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
- remains, we can always delete OUTPUT_RELOAD_INSN.
-
-Thu May 14 18:38:50 1998 Jim Wilson <wilson@cygnus.com>
-
- * reload.c (find_reloads): Don't penalize SCRATCH output reload.
-
-Thu May 14 15:10:30 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (expr.o): Remove dependency on deleted modemap.def file.
-
-Thu May 14 16:30:47 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * eh-common.h: New file for basic EH data structures.
- * 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
- 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
- at the start of all catch blocks.
- (struct func_eh_entry): New structure for maintaining handlers
- associated with EH regions.
- (new_eh_region_entry): New function to register an EH region.
- (add_new_handler): New function to register a handler with a region.
- (get_new_handler): Creates anew handler entry for registering.
- (find_func_region): New function to convert a NOTE eh region number
- to an Eh region index.
- (get_first_handler): New function to get the first handler in a region.
- (clear_function_eh_region): New function to release memory.
- (duplicate_handlers): New function to duplicate a list of handlers.
- (expand_eh_region_end): Create a new region entry node as well.
- (expand_leftover_cleanups): Call receive_exception_label() and
- register the cleanup as a handler to the current region.
- (expand_start_catch): New function to start a catch clause.
- (expand_end_catch): New function to end a catch clause.
- (expand_start_all_catch): Restructure to not do the equivalent of
- what expand_start_catch() does now. Push the exception region being
- handled onto the catch stack.
- (output_exception_table_entry): Issue an entry for each handler
- associated with a region.
- (set_exception_lang_code): New function for setting the language code.
- (set_exception_version_code): New function to set the version number.
- (output_exception_table): Output version and language codes.
- (find_exception_handler_labels): Find handler labels using new scheme.
- (is_exception_handler_label): New function, returns 1 if label is
- present as a handler in some exception region.
- (check_exception_handler_labels): Use the new scheme.
- (init_eh_for_function): Initialize the catch stack.
- (save_eh_status): Save the catch stack.
- (restore_eh_status): Restore the catch stack.
- (scan_region): Don't remove unreferenced handler label. Flow does it.
- (get_reg_for_handler): New function to get the eh_context pointer
- passed by __throw.
- (expand_builtin_eh_stub): Changes required for NEW_EH_MODEL only.
- * final.c (final_scan_insn): With NEW_EH_MODEL, add EH table
- entry when processing END region rather that START region.
- * flow.c (find_basic_blocks_1): Find all potential handler regions
- now that we don't automatically know what the labels might be.
- Let scan_region() remove unreferenced EH BEGIN/END labels.
- * integrate.c (get_label_from_map): Put inlined labels onto the
- permanent obstack since we don't know which ones might be exception
- labels.
- (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
- 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.
-
-Thu May 14 12:58:21 1998 Jim Wilson <wilson@cygnus.com>
-
- * i960.h (hard_regno_mode_ok): Changed to function from array of
- unsigned.
- (HARD_REGNO_MODE_OK): Call function instead of testing bit.
- * i960.c (hard_regno_mode_ok): Changed to function from array of
- unsigned.
-
-Thu May 14 08:41:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (remove_replacements): New function.
- * reload.h (remove_replacements): Declare.
- * reload1.c (choose_reload_regs): Disable some reloads that
- belong to inherited reloads.
-
-Thu May 14 02:17:17 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (scan_loop): Don't call move_movables for optimize_size.
-
- * reload1.c (merge_assigned_reloads): When merging, reset
- reload_spill_index for the eliminated reload.
-
-Wed May 13 17:51:13 1998 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (schedule_insns): Fix merge goof.
-
-1998-05-13 Jim Wilson <wilson@cygnus.com>
-
- * varasm.c (make_decl_rtl): Revert April 1 change.
- * alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
- m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
- Get function name from the SYMBOL_REF in the DECL_RTL, not from
- DECL_ASSEMBLER_NAME.
- * i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
- DECL_ASSEMBLER_NAME.
-
-Wed May 13 13:09:19 1998 Jim Wilson <wilson@cygnus.com>
-
- * i386.c (notice_update_cc, output_float_compare): Disable
- TARGET_CMOVE support.
-
-Wed May 13 15:28:59 1998 Michael Meissner <meissner@cygnus.com>
- Jeff Law <law@cygnus.com>
-
- * rtlanal.c (find_reg_note): Ignore notes that are not on on
- insns of class 'i'.
- (find_regno_note): Likewise.
-
- * Makefile.in (stor-layout.o): Depend on except.h.
- (varasm.o, function.o): Likewise.
- (expr.o): Depend on except.h, modemap.def and hard-reg-set.h.
-
- * Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
- (rtl.o, emit-rtl.o): Add dependency on bitmap.h.
- ($(HOST_PREFIX_1)rtl.o): Likewise.
- ($(HOST_PREFIX_1)bitmap.o): New host object.
- * emit-rtl.c (toplevel): Include bitmap.h.
- (gen_rtx): Handle 't' and 'b' nodes.
- * print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
- Print block number for block begin/end notes. Print 't' type
- nodes as a pointer. Know that the 3rd argument of live range
- start/stop notes is really a range_info rtx. If type is 'b', print
- out argument as a bitmap.
- * rtl.c: Include bitmap.c.
- (copy_rtx): Copy tree nodes as is. Copy bitmaps if type is 'b'.
- (note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
- * 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
- communicating live range information to the debug output functions.
- * rtl.h (rtunion_def): Add rttree and rtbit fields.
- (XBITMAP, XTREE): New accessor macros.
- (NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
- (NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
- (NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
- (NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
- (RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
- (RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
- (RANGE_INFO_*): Likewise.
- * sched.c (sched_analyze): Keep live range start/stop notes.
- (unlink_other_notes): Likewise.
- * haifa-sched.c (sched_analyze): Keep live range start/stop notes.
- (unlink_other_notes): Likewise.
- * tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
- (BLOCK_LIVE_RANGE_FLAG): Likewise.
- (DECL_LIVE_RANGE_RTL): Likewise.
- (struct tree_block): Add live_range_flag, live_range_var_flag,
- live_range_start and live_range_end.
- (struct tree_decl): Add live_range_rtl field.
- * gengenrtl.c (type_from_format): Handle 'b' and 't'.
- (accessor_from_format): Likewise.
-
- * haifa-sched.c (schedule_block): Make verbose output line up.
- Also add a blank line in printing the individual ready lists.
-
-Wed May 13 15:43:44 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
- (c-lex.o): Depend on output.h.
- (c-common.o): Likewise.
- (stmt.o): Likewise.
- (calls.o): Likewise.
- (integrate.o): Depend on toplev.h.
- (regclass.o): Depend on output.h.
- (final.o): Depend on reload.h.
-
- * c-common.c: Include output.h.
- (check_format_info): Remove unused variable `integral_format'.
-
- * c-decl.c (print_lang_decl): Mark parameters `file', `node' and
- `indent' with ATTRIBUTE_UNUSED.
- (print_lang_type): Likewise.
- (maybe_build_cleanup): Likewise for parameter `decl'.
- (copy_lang_decl): Likewise for parameter `node'.
-
- * c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
- (lang_print_xnode): Mark parameters `file', `node' and `indent'
- with ATTRIBUTE_UNUSED.
- (lookup_interface): Likewise for parameter `arg'.
- (is_class_name): Likewise.
- (maybe_objc_check_decl): Likewise for parameter `decl'.
- (maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
- `reflexive'.
- (maybe_objc_method_name): Likewise for parameter `decl'.
- (build_objc_string): Likewise for parameters `len' and `str'.
-
- * c-lex.c: Include output.h.
-
- * c-lex.h (position_after_white_space): Correct typo in prototype.
-
- * c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
- c_expand_end_cond, init_iterators): Add prototypes.
-
- * caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
- with ATTRIBUTE_UNUSED.
-
- * calls.c: Include output.h.
-
- * cccp.c (pipe_closed): Mark parameter `signo' with
- ATTRIBUTE_UNUSED.
-
- * combine.c: Move inclusion of expr.h to after insn-config.h.
-
- * iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
- as empty, rather define as ((void)0).
-
- * sparc.c (sparc_check_64): Add braces around ambiguous `else'.
- Add parentheses around assignment used as truth value.
-
- * cplus-dem.c (squangle_mop_up): Change return type to void.
- (internal_cplus_demangle): Remove unused parameter `options'.
- All callers changed.
- (cplus_demangle_opname): Remove function wide variable `int i' and
- replace with `size_t i' at each location where it is used.
- (cplus_demangle_opname): Change type of `i' from int to size_t.
-
- * cppexp.c (right_shift): Mark parameter `pfile' with
- ATTRIBUTE_UNUSED.
-
- * cpphash.c (cpp_lookup): Likewise.
- (cpp_hash_cleanup): Likewise.
-
- * cpplib.c (parse_name): Add a prototype and make it static.
- (null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
- (null_cleanup): Likewise for parameters `pbuf' and `pfile'.
- (macro_cleanup): Likewise for parameter `pfile'.
- (file_cleanup): Likewise.
-
- * cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
- cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
-
- * crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
- __DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
-
- * cse.c (cse_check_loop_start): Mark parameter `set' with
- ATTRIBUTE_UNUSED.
-
- * dbxout.c (flag_minimal_debug, have_used_extensions,
- source_label_number): Move inside macro wrapper check against
- defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
-
- * dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
-
- * except.h (doing_eh): Provide prototype.
-
- * expr.c: Move inclusion of expr.h to after insn-config.h.
-
- * final.c: Include reload.h.
- (shorten_branches): Cast the first argument of bzero to char *.
-
- * fix-header.c (cpp_print_containing_files): Mark parameter
- `pfile' with ATTRIBUTE_UNUSED.
- (cpp_fatal): Likewise.
-
- * flow.c (find_basic_blocks_1): Cast the first argument of bzero
- to char *.
-
- * genattrtab.c (make_length_attrs): Change the type of variable
- `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.
-
- * gengenrtl.c (gencode): When generating genrtl.c, cast the first
- argument of bzero to char*.
-
- * integrate.c: Include toplev.h.
-
- * libgcc2.c: Wrap `struct exception_table' and
- `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.
- (finish_protocol): Likewise for parameter `protocol'.
-
- * output.h (declare_weak): Add prototype.
- (decode_reg_name): Don't wrap with TREE_CODE macro.
- (assemble_alias): Add prototype.
-
- * regclass.c: Include output.h.
-
- * reload.h (reloads_conflict): Add prototype.
-
- * rtl.h (print_rtl_single, mark_elimination, reg_class_subset_p,
- output_func_start_profiler): Add prototypes.
-
- * rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
- ATTRIBUTE_UNUSED.
-
- * scan-decls.c: Include scan.h.
-
- * scan.h (recognized_function, recognized_extern): Add prototypes.
-
- * stmt.c: Include output.h.
-
- * toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
- (output_lang_identify): Hide prototype and definition.
- (float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
- (pipe_closed): Likewise.
-
- * toplev.h (count_error, strip_off_ending, error_for_asm,
- warning_for_asm): Add prototypes.
-
-Wed May 13 12:54:19 1998 Michael Meissner <meissner@cygnus.com>
-
- * toplev.c (rest_of_compilation): "Charge" final for any time
- doing various cleanup operations after finishing compilation
- of a function.
-
- * 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.
- * regclass.c (allocate_reg_info): Keep reg_n_max up to date.
- Delete regno_max variable.
- * regs.h (REG_N_CHECK): Define.
- (REG_N_REFS, REG_N_SETS, REG_N_DEATHS): Use REG_N_CHECK.
- (REG_N_CHANGES_SIZE, REG_N_CALLS_CROSSED, REG_LIVE_LENGTH): Likewise.
- (REGNO_FIRST_UID, REGNO_LAST_UID, REGNO_LAST_NOTE_UID): Likewise.
-
-Wed May 13 12:54:19 1998 Martin von Loewis <martin@mira.isdn.cs.tu-berlin.de>
-
- * acconfig.h (ENABLE_CHECKING): Undefine.
- * configure.in (--enable-checking): New option.
-
-Wed May 13 08:52:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (merge_assigned_reloads): Can merge
- RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
- if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.
-
-Tue May 12 20:05:57 1998 Jim Wilson <wilson@cygnus.com>
-
- * collect2.c (main): Ignore do_collecting when COLLECT_EXPORT_LIST.
-
-Wed May 13 03:23:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (gen_reload): Create REG_EQUIV notes.
-
-Tue May 12 22:21:07 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload1.c (reload): Fix check for USEs to use code of pattern.
- (choose_reload_regs): Remove dead variable use_insn.
-
-Tue May 12 14:04:49 1998 Jeffrey A Law (law@cygnus.com)
-
- * pa.h (DBX_CONTIN_LENGTH): Reduce to 3000 bytes.
-
-Tue May 12 15:16:02 1998 Michael Meissner <meissner@cygnus.com>
-
- * haifa-sched.c (HAIFA_INLINE): Define to be __inline unless
- already defined.
- (find_insn_{,mem_}list): Use HAIFA_INLINE, not __inline.
- (insn_{unit,issue_delay}): Likewise.
- (blockage_range): Likewise.
- (actual_hazard{,_this_instance}): Likewise.
- (schedule_unit): Likewise.
- (potential_hazard): Likewise.
- (insn_cost): Likewise.
- (swap_sort): Likewise.
- (queue_insn): Likewise.
- (birthing_insn_p): Likewise.
- (adjust_priority): Likewise.
- (get_block_head_tail): Likewise.
- (init_rgn_data_dependences): Likewise.
-
-Tue May 12 10:27:54 1998 Klaus Kaempf <kkaempf@progis.de>
-
- * alpha/vms.h (COMMON_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON): Define.
-
-Tue May 12 11:44:14 1998 Gavin Koch <gavin@cygnus.com>
-
- * config/mips/mips.h (ASM_OUTPUT_ALIGN): Remove trailing semi-colon.
-
-Tue May 12 11:38:31 1998 Gavin Koch <gavin@cygnus.com>
-
- * config/mips/mips.md (dslot): Move after definition of "cpu"
- attribute. Handle r3900 case.
-
-Tue May 12 10:21:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h: Define the STRINGIFY macro here.
- * protoize.c: Not here.
- * gengenrtl.c (DEF_RTL_EXPR): Use the STRINGIFY macro.
-
-Tue May 12 00:47:33 1998 John Wehle (john@feith.com)
-
- * 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.
-
-Mon May 11 19:57:58 1998 Jeffrey A Law (law@cygnus.com)
-
- * mips.c: Prototype static functions.
-
-Mon May 11 17:43:03 1998 Jim Wilson <wilson@cygnus.com>
-
- * regmove.c (fixup_match_2, find_matches, regmove_profitable):
- Add explanatory comments.
-
- * sparc.h (SPARC_INCOMING_INT_ARG_FIRST): Support TARGET_FLAT.
-
-Mon May 11 17:24:27 1998 Richard Henderson <rth@cygnus.com>
-
- * sparc.md (ffsdi2): Disable. Simplify the expression as well.
-
-Mon May 11 13:30:44 1998 Jim Wilson <wilson@cygnus.com>
-
- * varasm.c (make_decl_rtl): Disable April 1 change.
-
-Mon May 11 09:14:41 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in (alpha-*-linux-gnu): Undo lossage from gcc2 merge.
-
-Mon May 11 08:24:18 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
- * alpha.c (print_operand): Handle it.
- * alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
- related define_splits. Also add peepholes for SImode reload
- plus sign_extend lossage.
-
-Mon May 11 09:33:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * genattr.c: Include stdarg.h/varargs.h. Change function
- `fatal' to use variable arguments instead of faking it with
- integer parameters. Provide a prototype which also
- checks the format specifiers using ATTRIBUTE_PRINTF_1.
-
- * genattrtab.c: Likewise.
- * gencodes.c: Likewise.
- * genconfig.c: Likewise.
- * genemit.c: Likewise.
- * genextract.c: Likewise.
- * genflags.c: Likewise.
- * genopinit.c: Likewise.
- * genpeep.c: Likewise.
- * genrecog.c: Likewise.
- * genoutput.c: Likewise. Similarly for function `error'.
-
-Sun May 10 02:27:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * acconfig.h (HAVE_VOLATILE): Insert stub for autoconf.
- * alocal.m4 (GCC_C_VOLATILE): New autoconf test.
- * configure.in: Use GCC_C_VOLATILE.
- * system.h (volatile): Define as empty if no volatile support is
- available.
-
-Sun May 10 01:21:43 1998 Jeffrey A Law (law@cygnus.com)
-
- * genemit.c (output_add_clobbers): Removed unused variable 'i' from
- generated function.
-
-Sat May 9 02:02:15 1998 Richard Henderson <rth@cygnus.com>
-
- * 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.
- (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.
-
- * machmode.h (COMPLEX_MODE_P): New macro.
-
-Sat May 9 01:53:23 1998 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (print_exp): Fix typo.
-
-Fri May 8 21:48:50 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Fri May 8 18:23:08 1998 Michael Meissner <meissner@cygnus.com>
-
- * final.c (final_scan_insn): Call fatal_insn instead of abort if
- we could not split an insn when required to.
-
- * m32r.md ({add,sub}di3): Add define_splits and appropriate low
- level insns.
- (peepholes): Disable peepholes that call dead_or_set_p.
- (movsi): Rewrite to handle addresses better after last change.
- Add define_split to split load of addresses in large/medium modes.
- (prologue): Call m32r_expand_prologue.
- (movsi_{push,pop}): Generators for push/pop.
- (movsi): Support PRE_{INC,DEC}, POST_INC.
- (mov{di,df}): Rewrite. Always split the insns.
- (movsf): Add define_split to get register load in correct mode.
- (cmp_ne_small_const_insn): Use 'N' instead of 'S' constraint.
- (attributes): Rewrite attributes so that type indicates both the
- type and the length of the insn directly.
- (all insns): Change to use new type attributes.
- (debug): New attribute to convey whether -mdebug was used.
- (opt_space): New attribute to convey whether -Os was used.
- (function units): Loads are 3 cycles, not 2. Better classify all
- insns into short/long.
- (load/store/extend insns): Add separate case for load/store
- indirect operations without an offset.
- (divsi3): Division is a long operation, not short.
-
- * m32r.h (LEGITIMATE_LO_SUM_ADDRESS_P): Do not allow LO_SUM for
- modes > 1 word.
- (GO_IF_MODE_DEPENDENT_ADDRESS): LO_SUM is now mode dependent.
- (CONST_OK_FOR_LETTER_P): Make 'N' handle reverse 8 bit compares.
- (EXTRA_CONSTRAINT): Remove 'S' special support. Add 'U' for
- operands with PRE_{INC,DEC}, POST_INC.
- (FUNCTION_PROFILER): Call abort instead of doing nothing.
- (GO_IF_LEGITIMATE_ADDRESS): Allow PRE_{INC,DEC}, POST_INC of
- SImode variables.
- (gen_split_move_double): Declare.
- (EXTRA_CONSTRAINT): Add 'T' for memory reference with no offset.
-
- * m32r.c (gen_split_move_double): Fix typo. Also, don't call
- emit_move_insn, build up SET's directly.
- (toplevel): Include system.h, not stdio.h.
- (move_double_src_operand): Allow any DF or DI mode constant.
- (gen_split_move_double): Split moves of DI or DF values into the
- appropriate moves, loads, or stores. Don't handle use of auto
- inc/dec if using dead index. Do handle overlapping moves, etc.
- (m32r_frame_info): Remove prologue_size field.
- (m32r_compute_frame_size): Don't calculate prologue size.
- (m32r_output_function_prologue): Change to pretty much a NOP.
- (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): Likewise.
-
-Fri May 8 14:13:21 1998 H.J. Lu (hjl@gnu.org)
-
- * reload1.c (emit_reload_insns): When performing expensive
- optimizations, do not output the last reload insn if OLD is
- not the dest of NSN and is in the src and is clobbered by INSN.
-
-Fri May 8 09:47:29 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (genrtl.o): Depend on system.h.
- * gengenrtl.c (gencode): When creating genrtl.c, have it
- include system.h.
-
-Fri May 8 10:57:33 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * config/m68k/t-linux: Remove extra stuff already included in
- config/t-linux.
-
-Fri May 8 09:53:24 1998 Paul Eggert <eggert@twinsun.com>
-
- * fixinc.wrap: Renamed from fixinc.math. Put wrapper around
- curses.h if it contains `typedef char bool;', as suggested by
- Manfred Hollstein <manfred@s-direktnet.de>.
-
- * configure.in: Rename fixinc.math to fixinc.wrap.
-
-Thu May 7 19:26:34 1998 Jim Wilson <wilson@cygnus.com>
-
- * gcc.c (read_specs): Handle missing blank line at end of specs file.
-
- * i386.md (movsicc, movhicc, movsicc_1, movhicc_1, movsfcc_1,
- movdfcc_1): Disable.
-
-Thu May 7 15:39:14 1998 Jim Wilson <wilson@cygnus.com>
-
- * configure.in (enable_threads): Rename to enable_threads_flag before
- main loop. Set enable_threads to enable_threads_flag inside main
- loop.
-
-Thu May 7 17:38:03 1998 Michael Meissner <meissner@cygnus.com>
-
- * r6000/eabi.asm (__eabi): Restore LR in case __eabi is called
- multiple times.
-
-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.
-
- * cccp.c: Convert from using PRINTF_ALIST/PRINTF_DCL to VPROTO as
- per the rest of gcc source.
- * cexp.y: Likewise. Include gansidecl.h and remove all code made
- redundant.
-
- * cccp.c: Remove checks for HAVE_VPRINTF and the associated code
- used when vfprintf is missing.
- * cexp.y: Likewise.
- * gcc.c: Likewise.
- * genattrtab.c: Likewise.
- * mips-tfile.c: Likewise.
- * toplev.c: Likewise.
-
- * vfprintf.c: New file.
- * doprint.c: New file.
-
-Thu May 7 10:18:41 1998 Jeffrey A Law (law@cygnus.com)
-
- * config/linux.h (ASM_COMMENT_START): Remove from here,
- * config/linux-aout.h (ASM_COMMENT_START): and here,
- * config/i386/linux.h (ASM_COMMENT_START): to here,
- * config/i386/linux-aout.h (ASM_COMMENT_START): and here.
- * config/i386/linux-oldld.h (ASM_COMMENT_START): Define
- here as '#' too.
-
-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.
-
-Wed May 6 22:32:37 1998 Robert Lipe <robertl@dgii.com>
-
- * Makefile.in (dwarfout.o): Add toplev.h dependency.
- * dwarfout.c, i386.c: Include toplev.h.
- * toplev.h (pfatal_with_name): Add prototype.
-
-Wed May 6 19:02:29 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * Makefile.in: Fix .SUFFIXES.
-
-Wed May 6 19:31:32 1998 Alan Modra <alan@spri.levels.unisa.edu.au>
-
- * config/linux.h (ASM_COMMENT_START): Define as "#".
- * config/linux-aout.h (ASM_COMMENT_START): Likewise.
-
-Wed May 6 15:51:39 1998 Jim Wilson <wilson@cygnus.com>
-
- * objc/Make-lang.h (objc-parse.o): Add toplev.h dependency.
- * objc/objc-parse.y, objc/objc-parse.c: Regenerate.
-
- * toplev.c: Include toplev.h.
- * Makefile.in (c-common.o, c-convert.o, c-decl.o, c-iterate.o,
- c-lex.o, c-parse.o, c-pragma.o, c-typeck.o, calls.o, convert.o,
- dwarf2out.o, except.o, expr.o, final.o, fold-const.o, function.o,
- 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.
-
- * expr.c (target_temp_slot_level): Delete duplicate definition.
-
-Wed May 6 16:46:01 1998 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (mark_seen_cases): Make it have external linkage again.
- * expr.h (mark_seen_cases): Add declaration, but only when tree.h
- has been included.
-
- * haifa-sched.c (print_value, case SUBREG): Fix typo.
-
- * i386.c (output_387_binary_op): Add some braces to avoid warnings.
- * i386.h (REG_CLASS_CONTENTS): Similarly.
-
- * toplev.c (-fsched-max): Delete flag.
- (-fsched-interblock-max-blocks,-fsched-interblock-max-insns): Likewise.
- * haifa-sched.c: Remove -fsched-max-N, -fsched-interblock-max-blocks-N
- and -fsched-interblock-max-insns-N support. Remove INTERBLOCK_DEBUG
- conditionals.
-
- * haifa-sched.c (find_rgns): Correctly handle reducible loops with
- inner loops which are not reducible.
-
- * loop.c (regs_match_p): Fix typo in prototype.
-
- * regmove.c (try_auto_increment): Wrap declaration inside an
- #ifdef AUTO_INC_DEC.
-
-Wed May 6 17:07:47 1998 Michael Meissner <meissner@cygnus.com>
-
- * final.c (output_operand_lossage): Call fatal with the operand
- lossage message instead of calling abort.
-
-Wed May 6 15:37:27 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c: Convert to using ctype macros defined in system.h.
- * c-lex.c: Likewise.
- * cccp.c: Likewise.
- * collect2.c: Likewise.
- * rs6000.c: Likewise.
- * cpplib.c: Likewise.
- * fix-header.c: Likewise.
- * gcc.c: Likewise.
- * gen-protos.c: Likewise.
- * pexecute.c: Likewise.
- * protoize.c: Likewise.
- * rtl.c: Likewise.
- * scan.c: Likewise.
- * stmt.c: Likewise.
- * tlink.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) :
- Replace -gdwarf-2 with -g0.
-
-Wed May 6 11:43:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (mips-tfile.o, mips-tdump.o): Depend on system.h.
- * mips-tdump.c: Include system.h, remove redundant headers.
- * mips-tfile.c: Likewise. Also, convert all ctype function calls
- to calls of the macro versions defined in system.h.
-
- * objc/Make-lang.in (objc-act.o): Depend on system.h.
- * objc/objc-act.c: Include system.h, remove redundant headers.
-
-Wed May 6 11:21:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in (AC_CHECK_FUNCS): Add isascii.
- (GCC_NEED_DECLARATIONS): Add atof.
-
- * system.h: Provide prototypes for abort, atof, atol and sbrk here.
- * rtl.c, rtl.h, toplev.c, tree.h: Not here.
-
-Wed May 6 10:52:49 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h: Wrap time.h and sys/file.h in autoconf checks.
- Provide default definitions for O_RDONLY and O_WRONLY here.
-
- * cccp.c, cpplib.c, fix-header.c, gcc.c, protoize.c: Not here.
-
-1998-05-06 Mark Mitchell <mmitchell@usa.net>
-
- * tree.h (IS_EXPR_CODE_CLASS): Remove bogus '3'.
-
-Wed May 6 06:35:38 1998 Robert Lipe <robertl@dgii.com>
-
- * 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,
- varasm.c: Include it.
-
-Wed May 6 01:09:01 1998 Jeffrey A Law (law@cygnus.com)
- Jim Wilson (wilson@cygnus.com)
-
- * haifa-sched.c (find_rgns): In no_loops case, fix test for leaf
- blocks. Check for 1 successor which is the EXIT_BLOCK.
-
- * haifa-sched.c (find_rgns): Detect unreachable blocks, including
- unreachable loops with more than one block.
-
-Wed May 6 08:22:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fix-header.c (write_rbrac): Add "abort" to functions which need to
- be protected.
-
-Wed May 6 00:09:36 1998 Jeffrey A Law (law@cygnus.com)
-
- * Check in merge from gcc2. See ChangeLog.12 for details.
-
-Tue May 5 14:33:49 1998 Jim Wilson <wilson@cygnus.com>
-
- * c-common.c (scan_char_table): Separate 's' and 'c'. 'c' does not
- accept 'a' flag. 'S' does accept 'a' flag.
- (check_format_info): When pedantic, warn for m/C/S/a/A formats,
- and `a' flag.
-
- * elf64.h (MULTILIB_DEFAULTS): Move definition after mips.h include.
-
-Tue May 5 10:50:39 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * config/m68k/m68k.h: Declare functions from m68k.c used in
- macros and machine description.
- (ASM_OUTPUT_LONG_DOUBLE): Always use `l' flag in print format for
- long values.
- (ASM_OUTPUT_FLOAT): Likewise.
- (ASM_OUTPUT_FLOAT_OPERAND): Likewise.
-
-Tue May 5 01:28:12 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.def: Add NAMESPACE_DECL.
- * dwarfout.c (type_ok_for_scope): Ignore NAMESPACE_DECLs for now.
- * dwarf2out.c (push_decl_scope): Likewise.
- (scope_die_for): Likewise.
- * tree.c (decl_function_context): Use TREE_CODE_CLASS to determine
- how to get next context level.
-
-Tue May 5 01:43:16 1998 Jim Wilson <wilson@cygnus.com>
-
- * i386.c (output_fix_trunc): Add code to emulate non-popping DImode
- case.
-
-Tue May 5 01:15:06 1998 Jeffrey A Law (law@cygnus.com)
-
- * h8300.h (ADDITIONAL_REGISTER_NAMES): Add "er" registers.
-
- * reorg.c (fill_slots_from_thread): Update REG_DEAD/REG_UNUSED notes
- for any insns skipped at the start of a block because they were
- redundant.
-
-Mon May 4 20:23:51 1998 Jim Wilson <wilson@cygnus.com>
-
- * alpha.h (DBX_CONTIN_LENGTH): Decrease to 3000.
-
-1998-05-04 Ulrich Drepper <drepper@cygnus.com>
-
- * c-common.c (format_char_info): Add new field hhlen.
- (print_char_table, scan_char_table, time_char_table): Initialize
- hhlen field appropriately.
- (char_format_info): Recognize hh modifier and lookup correct char
- table entry.
-
-Mon May 4 19:15:29 1998 Jim Wilson <wilson@cygnus.com>
-
- * expr.c (expand_expr, case INDIRECT_REF): Don't optimize string
- reference if this is a store.
-
-Mon May 4 17:25:17 1998 Richard Henderson <rth@cygnus.com>
-
- * sparc.c (output_move_quad): Fix typo in mov_by_64 argument.
-
-Sun May 3 23:57:25 1998 Robert Lipe <robertl@dgii.com>
-
- Make UnixWare 7 bootstrap support work with final shipping product.
- * configure.in (i[34567]86-*-sysv5): Append, not overwrite, xm_file.
- Pick up xm-siglist and xm-alloca.
- (xm_defines): Add USG so dbxout will build.
- * configure: Regenerate.
-
-Sun May 3 13:51:34 1998 Richard Henderson <rth@cygnus.com>
-
- Support for official SPARC V9 ABI:
- * sparc.c (sparc_override_options): Force stack bias off for !arch64.
- Care for flag_pcc_struct_return default.
- (output_move_quad): Rewrite to move by halves on v9 and in the
- proper direction.
- (move_quad_direction): New function.
- (output_fp_move_quad): Use it to determine the direction of copy.
- (function_arg_slotno): Return -1 for FP reg overflow as well.
- (function_arg_record_value*): New functions.
- (function_arg): Use them. Streamline unprototyped parameter passing.
- (function_arg_pass_by_reference): Pass TCmode by reference.
- (function_value): New function.
- * sparc.h (PTRDIFF_TYPE, SIZE_TYPE): For -pedantic's sake, don't use
- long long in 64-bit mode.
- (RETURN_IN_MEMORY): v9 returns structs < 32-bytes in regs.
- (DEFAULT_PCC_STRUCT_RETURN): Make the default detectable.
- (BASE_RETURN_VALUE_REG): Consider complex float types for arch64.
- (BASE_OUTGOING_VALUE_REG, BASE_PASSING_ARG_REG): Likewise.
- (BASE_INCOMING_ARG_REG): Likewise.
- (FUNCTION_VALUE): Call function_value.
- (FUNCTION_OUTGOING_VALUE, LIBCALL_VALUE): Likewise.
- * sparc.md (movdi_sp32_v9): Disable for arch64.
- (movsf, movdf, movtf): Sort all alternatives using fp regs first.
- (call_value_address_sp64): Remove register class constraints.
- (call_value_symbolic_sp64): Likewise.
- (nonlocal_goto): Pass label reg directly to goto_handlers. Constrain
- v9 case to 32-bit constants.
- (goto_handler_and_restore_v9): Provide a version for arch64.
- * sparc/linux64.h (SIZE_TYPE, PTRDIFF_TYPE): Remove private definition.
- * sparc/sp64-aout.h (TARGET_DEFAULT): Turn on stack bias.
- (CPP_PREDEFINES): New.
- * sparc/sp64-elf.h: Likewise.
- (PREFERRED_DEBUGGING_TYPE): Dwarf2.
- (ASM_OUTPUT_DWARF2_ADDR_CONST): New.
- * sparc/sysv4.h (SIZE_TYPE, PTRDIFF_TYPE): Undo svr4.h's changes.
-
-Sat May 2 17:47:17 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat May 2 01:37:29 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_reloads): Emit USEs to mark where a pseudo
- is reloaded with the MEM of its stack slot.
- * reload1.c (cannot_omit_stores): Delete.
- (reload): Don't initialize it.
- Don't apply avoid_return_reg logic to USEs.
- When done, remove USEs that have a REG_EQUAL note on them.
- (emit_reload_insns): Handle case where we have inherited a MEM.
- (choose_reload_regs): Likewise.
- (delete_output_reload): Don't use cannot_omit_stores.
-
-Thu Apr 30 18:59:03 1998 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (cpp.info, gcc.info): Put -o option before input file.
-
-Thu Apr 30 16:57:34 1998 Michael Meissner <meissner@cygnus.com>
-
- * haifa-sched.c (print_{exp,value}): Various changes to make the
- debug output easier to read. Also, use only one buffer, and make
- sure the buffer we are passed in doesn't overflow.
- (safe_concat): Concatenate to a buffer without overflow.
-
-Thu Apr 30 16:57:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * haifa-sched.c (alloc_{INSN,EXPR}_LIST): Make static to agree
- with the prototype.
-
-Wed Apr 29 21:45:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sched.c (new_insn_dead_notes): Check if the register was
- used in the original instruction.
- * haifa-sched.c (new_insn_dead_notes): Likewise.
-
-Wed Apr 29 13:46:03 1998 Jim Wilson <wilson@cygnus.com>
-
- * dwarf2out.c (scope_die_for): If could not find proper scope,
- check for and handle tagged type with incorrect TYPE_CONTEXT.
-
-Wed Apr 29 15:34:40 1998 John Carr <jfc@mit.edu>
-
- * calls.c (expand_call): Fix recognition of C++ operator new.
-
- * alias.c (mode_alias_check): Disable type based alias detection.
-
-Wed Apr 29 15:06:42 1998 Gavin Koch <gavin@cygnus.com>
-
- * config/mips/elf.h (ASM_OUTPUT_DEF,ASM_WEAKEN_LABEL,
- ASM_OUTPUT_WEAK_ALIAS): Define.
- * config/mips/elf64.h: Same.
- * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
- ASM_WEAKEN_LABEL): Removed.
-
-Wed Apr 29 10:53:29 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * calls.c (expand_call): Bump the length limit on the specially
- recognized function names to 17.
-
-Tue Apr 28 17:53:33 1998 Jim Wilson <wilson@cygnus.com>
-
- * ginclude/stddef.h: Add check for _MACHINE_ANSI_H_ for BSD/OS
- when undefining macros at the end.
-
- * expr.c (expand_builtin, case BUILT_IN_MEMSET): Break if either
- val or len has TREE_SIDE_EFFECTS set.
-
- * sparc.md (mulsidi3): Call const v8plus and v8plus routines.
- (mulsidi3_v8plus, const_mulsidi3_v8plus): Delete asterisk from name.
- (smuldi3_highpart): Call const v8plus routine.
- (smulsi3_highpart_v8plus): Renamed from smulsidi3_highpart_v8plus.
- (const_smulsi3_highpart_v8plus): New pattern.
- (smulsi3_highpart_sp32): Renamed from smulsidi3_highpart_sp32.
- (umulsidi3): Call const v8plus routine.
- (umulsi3_highpart): Handle const before v8plus. Call const v8plus
- routine.
- (umulsi3_highpart_v8plus): Renamed from umulsidi3_highpart_v8plus.
- (umulsi3_highpart_sp32): Renamed from umulsidi3_highpart_sp32.
-
-Tue Apr 28 08:55:26 1998 Michael Meissner <meissner@cygnus.com>
-
- * m32r.c (*_oper{and|ator}): Change enum arguments and return
- values to int, so they can be prototyped even in files that don't
- include rtl.h.
- ({small,large}_insn_p): Likewise.
- (m32r_select_cc_mode): Likewise.
- (gen_compare): Likewise.
- (function_arg_partial_nregs): Likewise.
- (m32r_setup_incoming_varargs): Likewise.
- (init_reg_tables): Add prototype.
- (m32r_frame_info): Add prolog_size field.
- (m32r_compute_frame_size): Calculate the size of the prologue.
- (m32r_first_insn_address): Return prologue size.
- (m32r_output_function_prologue): Calculate frame size before
- printing out information. Print out the prologue size.
-
- * m32r.h: Prototype all functions in m32r.c.
- (FIRST_INSN_ADDRESS): Declare, returning prologue size.
-
- * m32r.md (bcc functions): Cast enum's to int.
-
- * m32r.c (conditional_move_operand): Silence a debug message.
- ({small,long}_insn): New predicates.
-
- * m32r.h (TARGET_M32R): New macro.
- (PREDICATE_CODES): Rearrange somewhat, add small_insn/long_insn.
- (HAIFA_P): Define as 1/0 depending on whether the Haifa scheduler
- was selected.
- (ISSUE_RATE): Define as 2.
-
- * m32r.md (insn_size): New attribute.
- ({,rev_}branch_insn): Add .s qualifier to branches believed to be
- short.
- (m32r): New attribute.
-
- * configure.in (enable_haifa): Switch m32r to Haifa by default.
- * configure: Regenerate.
-
- (Changes from Nick Clifton <nickc@cygnus.com>)
- * m32r.h (EXTRA_CONSTRAINT): Implement 'S' constraint to perfoirm
- the equivalent of a negated 'I' constraint.
- (PRESERVE_DEATH_INFO_REGNO_P): Define in order to allow peephole
- optimization to work.
-
- * m32r.md (cmp_ne_small_const_insn): Use 'S' constraint rather
- than 'I' since the value is negated.
- (peephole): Add peephole optimization to cope with optimization of
- divide and subtracts of the same operands.
-
- * m32r.c zero_and_one, emit_cond_move): Add support for MVFC.
- * m32r.h: Likewise.
- * m32r.md: Likewise.
-
- * m32r.h (PREDICATE_CODES): Add declaration of machine specific
- predicates.
-
-Tue Apr 28 07:25:53 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (libgcc2.ready): Revert last patch (Apr 24).
-
-Mon Apr 27 18:39:47 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Check against
- frame_pointer_rtx not FRAME_POINTER_REGNUM.
-
-Mon Apr 27 18:36:28 1998 Jim Wilson <wilson@cygnus.com>
-
- * reg-stack.c: Revert last patch (Apr 20).
- (convert_regs): Set insn to PREV_INSN (next) after do while loop.
-
- * m68k/lb1sf68.asm (Laddsf$3): Fix typos in mcf5200 exg code.
-
- * loop.c (check_dbra_loop): New locals jump, first_compare, and
- compare_and_branch. Call get_condition to set first_compare.
- Set compare_and_branch to number of compare/branch instructions.
- Replace PREV_INSN (PREV_INSN (loop_end)) with first_compare.
- Replace '2' with compare_and_branch.
-
-Mon Apr 27 15:53:30 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * cplus-dem.c (demangle_qualified): Replace missing else.
-
-Mon Apr 27 20:22:08 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (gen_ashift_hi): Don't make SUBREG of a SUBREG.
-
-Mon Apr 27 18:23:51 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (sh_expand_prologue, sh_expand_epilogue):
- If TARGET_DOUBLE_ALIGN, preserve 64 bit stack alignment.
- * sh.h (STACK_BOUNDARY): Likewise.
-
-Mon Apr 27 17:22:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
-
-Mon Apr 27 08:55:23 1998 Michael Meissner <meissner@cygnus.com>
-
- * system.h (abort): If abort is not defined, and neither is
- USE_SYSTEM_ABORT, redefine abort to call fprintf and exit,
- reporting the line and filename of the error.
-
- * .gdbinit: Add breakpoints on exit and fancy_abort.
-
- * final.c (split_double): Avoid a compiler warning if
- BITS_PER_WORD is less than or equal to HOST_BIT_PER_WIDE_INT.
-
- * rtl.h (JUMP_{CROSS_JUMP,NOOP_MOVES,AFTER_REGSCAN}): New macros
- for calling jump_optimize.
-
- * toplev.c (rest_of_compilation): Call jump_optimize using JUMP_*
- macros, rather than 0/1's.
-
-Sun Apr 26 23:19:10 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (CONST_COSTS): Zero is always free.
- (RTX_COSTS): Add EV6 costs. Abort if alpha_cpu is unknown.
-
-Sun Apr 26 15:38:50 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * cplus-dem.c (gnu_special): Fix off-by-one bug when checking the
- length in the name of a virtual table.
-
-Sun Apr 26 01:21:06 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (print_operand): Don't add 'v' suffix for ALPHA_FPTM_N.
-
-Sat Apr 25 22:11:38 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Apr 25 17:17:15 1998 Jeffrey A Law (law@cygnus.com)
-
- * fold-const.c (fold_convert): Fix typo.
-
-Sat Apr 25 17:55:54 1998 John Carr <jfc@mit.edu>
-
- * alias.c (alias_invariant): New variable.
- (record_base_value): New argument INVARIANT.
- (memrefs_conflict_p): If a register has an entry in the alias_invariant
- array, try substituting that value for the register.
-
- * rtl.h: Declare record_base_value.
-
- * loop.c, unroll.c: Update callers of record_base_value.
-
- * alias.c (find_base_value, find_base_term): SIGN_EXTEND and
- ZERO_EXTEND do not affect base values.
-
-Fri Apr 24 15:57:02 1998 Jeffrey A Law (law@cygnus.com)
-
- * dbxout.c (dbxout_type): Fix typo.
- (dbxout_range_type): Another HOST_WIDE_INT_PRINT_DEC fix.
-
- * configure.in: Use CC_FOR_BUILD, not BUILD_CC.
-
-Fri Apr 24 16:11:47 1998 John Carr <jfc@mit.edu>
-
- * expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
- if the argument is the address of a structure or array.
-
- * configure.in: Enable Haifa scheduler by default for SPARC.
-
-Fri Apr 24 20:55:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * cse.c (cse_set_around_loop): Don't do optimization when
- new pseudos are created.
-
-Fri Apr 24 11:00:18 1998 Jeffrey A Law (law@cygnus.com)
-
- * dbxout.c (dbxout_type_fields): Use HOST_WIDE_INT_PRINT_DEC
- appropriately.
- (dbxout_type_method_1, dbxout_type): Likewise.
- (print_int_cst_octal, print_octal, dbxout_symbol): Likewise.
- (dbxout_type): Fix check for when to print a type range in
- octal vs decimal.
-
-Fri Apr 24 16:45:03 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * (gen_shl_and, in case 1): Fix comparison with mask.
-
-Fri Apr 24 06:46:40 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/thumb.h (GO_IF_LEGITIMATE_ADDRESS): Disallow frame
- pointer as second register in REG+REG pair.
-
-Fri Apr 24 09:22:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c (check_format_info): Don't check for the 'x' format
- character twice, instead check for 'x' and 'X'
-
-Fri Apr 24 08:02:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (libgcc2.ready): Add explicit dependency from
- $(STMP_FIXPROTO) to ensure all necessary include files have
- been created and to guarantee proper parallel builds.
-
-Fri Apr 24 04:42:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (sh_expand_prologue, in !SH3E code): Don't push an extra
- register for stdarg functions.
- * sh.h (current_function_varargs): Declare.
- (FUNCTION_ARG): Ignore NAMED for stdarg functions.
-
-1998-04-23 Jim Wilson <wilson@cygnus.com>
-
- * frame.c, libgcc2.c (stdlib.h, unistd.h): Don't include when
- inhibit_libc is defined.
-
- * c-aux-info.c (gen_type): Use DECL_NAME only for TYPE_DECL.
-
-Thu Apr 23 19:09:33 1998 Jim Wilson <wilson@cygnus.com>
-
- * profile.c (tablejump_entry_p): New function.
- (branch_prob): Add code to recognize MIPS tablejump entry branch.
- Use tablejump_entry_p in MIPS and HPPA tablejump checking code.
-
-Thu Apr 23 15:01:13 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.c (find_barrier): Return as soon as a barrier is
- found, rather than at end of the loop, after the insn has been
- changed.
-
-Thu Apr 23 20:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (gen_ashift_hi): Implement right shifts via gen_ashift.
- * sh.md (ashrhi3_k, lshrhi3_k, lshrhi3_m, lshrhi3, lshrhi3+1): Delete.
-
-Wed Apr 22 17:07:35 1998 Michael Meissner <meissner@cygnus.com>
-
- * loop.c (note_addr_stored): Correct function to take 2 arguments,
- instead of 1.
-
- * rtl.def (MATCH_INSN2): Add new matching pattern.
- * genrecog.c (add_to_sequence): Support MATCH_INSN2.
-
-Wed Apr 22 15:52:22 1998 John Carr <jfc@mit.edu>
-
- * emit-rtl.c (gen_highpart): The high part of a CONST_INT is not zero
- if HOST_BITS_PER_WIDE_INT is larger than BITS_PER_WORD.
-
- * final.c (split_double): Sign extend both halves of a split CONST_INT.
-
-Wed Apr 22 10:42:45 1998 Jeffrey A Law (law@cygnus.com)
-
- * mips.c (compute_frame_size): Change only argument to a HOST_WIDE_INT.
-
-Wed Apr 22 10:53:49 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * cplus-dem.c (struct work stuff): Add field for B and K mangle codes.
- (cplus_demangle_opname): Call mop_up_squangle.
- (cplus_demangle): Initialize squangle info, then call
- internal_cplus_demangle. (Most code moved there as well)
- (internal_cplus_demangle): New function, performs most of what use
- to be done in cplus_demangle, but is only called with this file.
- (squangle_mop_up): New function to clean up B and K code data.
- (mop_up): Set pointers to NULL after freeing.
- (demangle_signature, demangle_template, demangle_class): Add
- switch elements to handle K and B codes.
- (demangle_prefix, gnu_special, demangle_qualified): Add
- code to handle K and B codes.
- (do_type, demangle_fund_type): Handle B and K codes.
- (remember_Ktype): New function to store K info.
- (register_Btype, remember_Btype): New functions for B codes.
- (forget_B_and_K_types): New function to destroy B and K info.
-
-1998-04-21 Jim Wilson <wilson@cygnus.com>
-
- * stmt.c (check_seenlabel): When search for line number note for
- warning, handle case where there is no such note.
-
-Tue Apr 21 20:48:37 1998 John Carr <jfc@mit.edu>
-
- * genemit.c (gen_exp): Allow machine description to set mode of
- MATCH_OP_DUP.
-
-Tue Apr 21 16:36:01 1998 John Carr <jfc@mit.edu>
-
- * alias.c (mode_alias_check): New function.
- (true_dependence, anti_dependence, output_dependence): Call
- mode_alias_check.
-
-Tue Apr 21 12:05:32 1998 Jeffrey A Law (law@cygnus.com)
-
- * mips.h (STACK_BOUNDARY): Allow specific targets to override.
- (MIPS_STACK_ALIGN): Similarly.
-
- * c-common.c (type_for_mode): Handle TI types.
- * c-decl.c (intTI_type_node, unsigned_int_TI_type_node): Define.
- (init_decl_processing): Handle TI types.
- * c-tree.h (intTI_type_node, unsigned_int_TI_type_node): Declare.
-
- * mips.c (block_move_loop): Test Pmode == DImode instead of
- TARGET_MIPS64.
- (expand_block_move, save_restore_insns): Likewise.
- (function_prologue, mips_expand_prologue): Likewise.
- (mips_expand_epilogue): Likewise.
- * mips.h (POINTER_SIZE): Allow specific targets to override.
- (Pmode): Allow specific targets to override.
- (FUNCTION_PROFILER): Test Pmode == DImode instead of TARGET_MIPS64.
- (POINTER_BOUNDARY, FUNCTION_MODE): Likewise.
- (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE): Likewise.
- (TRAMPOLINE_ALIGNMENT, INITIALIZE_TRAMPOLINE): Likewise.
- (CASE_VECTOR_MODE, ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
- (ASM_OUTPUT_ADDR_DIFF_ELT, SIZE_TYPE, PTRDIFF_TYPE): Likewise.
- * mips.md (indirect, tablejump & casesi support): Test for
- Pmode == DImode instead of TARGET_MIPS64.
- (call patterns): Likewise.
-
-Tue Apr 21 09:43:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * objc/sendmsg.c: Define gen_rtx_MEM() to 1, as is already done
- for gen_rtx(MEM, ...).
-
-Tue Apr 21 02:15:36 1998 Richard Henderson <rth@cygnus.com>
-
- * sparc.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Rewrite
- to not be so gross, and to properly function with PIC.
-
-Mon Apr 20 20:44:25 1998 Jim Wilson <wilson@cygnus.com>
-
- * frame.c (heapsort): Rename to frame_heapsort.
-
- * gcc.c (do_spec_1, case '['): Move flag out of loop and initialize it.
-
-Mon Apr 20 12:43:09 1998 Doug Evans <devans@canuck.cygnus.com>
-
- * flow.c (sbitmap_vector_alloc): Ensure sbitmaps properly aligned.
-
-Mon Apr 20 15:04:14 1998 John Wehle (john@feith.com)
-
- * i386.md (movsf_push, movdf_push, movxf_push): Allow memory
- operands during and after reload.
-
-Mon Apr 20 22:37:50 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (shorten_branches, init_insn_lengths): Move code
- to free label_align, uid_shuid, insn_lengths, insn_addresses
- and uid_align from the former function into the latter one;
- Add code to clear these variables.
- * sh.h (label_align): Remove declaration.
-
-Mon Apr 20 14:48:29 1998 Michael Meissner <meissner@cygnus.com>
-
- * gcc.c (lang_specific_driver): Declare prototype properly so
- fatal can be passed to it without error.
-
- * configure.in (AC_CHECK_FUNCS): Check for strchr and strrchr.
- * configure: Regenerate.
- * config.in: Add #undef's for strchr and strrchr.
-
- * protoize.c (toplevel): If we have rindex, but not strrchr, map
- rindex to strrchr.
- (file_could_be_converted): Use strrchr, not rindex since rindex is
- not defined on Linux systems when _POSIX_SOURCE is defined.
- (file_normally_convertible): Likewise.
- (process_aux_info_file): Likewise.
- (main): Likewise.
-
- * rs6000.md (mov{sf,df} define_splits): When splitting a move of
- a constant to an integer register, don't split the insns that do
- the simple AND and OR operations, rather just split each word, and
- let the normal movsi define split handle it further.
-
-Mon Apr 20 18:19:40 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (find_barrier): Fix bug in ADDR_DIFF_VEC handling.
- (split_branches): Call init_insn_lengths.
-
-Mon Apr 20 07:37:49 1998 Michael Meissner <meissner@cygnus.com>
-
- * i386.c: Include expr.h to get the change_address prototype
- declared.
-
-Mon Apr 20 01:00:05 1998 H.J. Lu (hjl@gnu.org)
-
- * reg-stack.c (subst_asm_stack_regs): Change to return the last
- new insn generated by this function.
- (subst_stack_regs): Likewise.
- (convert_regs): Record the last newly generated insn and use
- it for change_stack () instead of INSN.
-
-Sun Apr 19 15:41:24 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fix-header.c (enum special_file): Undefine enumerators if they
- are already defined by include files.
- * fixproto (rel_source_file in unistd.h stdlib.h): Prefix file protection
- macro with '__' to not pollute user namespace.
-
-Sun Apr 19 02:42:06 1998 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (queue_to_ready): Fix typo in prototype.
-
-Sat Apr 18 23:52:35 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Apr 18 18:30:22 1998 Jim Wilson <wilson@cygnus.com>
-
- * i386.md (fix_truncsfdi2+[123]): Add + to operand 1 constraints.
-
- * i386.h (CPP_CPU_DEFAULT): Renamed to CPP_CPU_DEFAULT_SPEC.
- Add missing -Dpentium* options.
- (CPP_CPU_SPEC): Delete redundant definition. Include cpp_cpu_default
- instead of CPP_CPU_DEFAULT.
- (EXTRA_SPECS): Add entry for cpp_cpu_default.
-
-Sat Apr 18 19:06:59 1998 David Edelsohn <edelsohn@mhpcc.edu>
-
- * rs6000.md (floatsidf2_loadaddr): rs6000_fpmem_offset will be
- negative in a stackless frame.
- * rs6000.c (rs6000_stack_info): Don't include fixed-size link area
- in stackless frame size. Support 64-bit stackless frame size.
- Combine fpmem offset calculations and don't add total_size to
- offset if not pushing a stack frame.
-
-Sat Apr 18 15:41:16 1998 Jim Wilson <wilson@cygnus.com>
-
- * regmove.c (fixup_match_1): In three places, in flag_exceptions
- check, change p to q.
-
-Sat Apr 18 15:30:49 1998 Jim Wilson <wilson@cygnus.com>
-
- * gcc.c (lang_specific_driver): Add new parm type to prototype.
- (added_libraries): New file scope static variable.
- (process_command): Initialize added_libraries. Pass it to
- lang_specific_driver.
- (main): Use added_libraries in check for no input files.
-
-Sat Apr 18 01:23:11 1998 John Carr <jfc@mit.edu>
-
- * sparc.c, sparc.h, sparc.md, sol2.h: Many changes related to V9
- code generation. Use 64 bit instructions in 32 bit mode when
- possible. Use V9 return instruction. UltraSPARC optimizations.
-
- * sparc.h: Change gen_rtx (CODE to gen_rtx_CODE (.
-
-Fri Apr 17 22:38:17 1998 Jeffrey A Law (law@cygnus.com)
-
- * global.c (global_alloc): Don't pass HARD_CONST (0) to find_reg,
- just pass zero. That will work regardless of the size of HARD_REG_SET.
-
- * libgcc2.c (__floatdisf): Fix a couple typos.
-
-Fri Apr 17 17:28:26 1998 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (mostlyclean): Delete *.mach and *.bp files.
-
-Fri Apr 17 16:35:35 1998 Greg McGary <gkm@gnu.org>
-
- * emit-rtl.c (gen_highpart): Initialize `word' properly for pseudo.
-
-Fri Apr 17 14:30:37 1998 John Carr <jfc@mit.edu>
-
- * emit-rtl.c (operand_subword_force): If a register can not be
- accessed by words, copy it to a pseudo register.
-
-Fri Apr 17 14:30:37 1998 Jim Wilson <wilson@cygnus.com>
-
- * rs6000/vxppc.h (CPP_SPEC): Add support for mrelocatable*.
-
-Fri Apr 17 17:01:25 1998 Michael Meissner <meissner@cygnus.com>
-
- * tree.h (mark_seen_cases): Delete declaration.
-
-Fri Apr 17 13:32:20 1998 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (mark_seen_cases): Make static and add prototype.
-
-Fri Apr 17 11:21:43 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * frame.c: Include stdlib.h and unistd.h to possibly get various
- function prototypes. The fixproto script guarantees these header
- files exist on the target system.
- * libgcc2.c: Likewise.
-
- * gthr-single.h (__gthread_mutex_lock, __gthread_mutex_trylock,
- __gthread_mutex_unlock): Add __attribute__ ((__unused__)) to the
- function parameters.
- * libgcc2.c (__udiv_w_sdiv): Likewise.
-
-Thu Apr 16 22:41:02 1998 Jeffrey A Law (law@cygnus.com)
-
- * varasm.c (asm_output_bss): Add prototype.
- (asm_output_aligned_bss): Likewise.
-
- * unroll.c (verify_addresses): Add prototype.
-
- * toplev.c: Add many prototypes. Too many to mention here.
-
- * stmt.c (check_seenlabel): Add prototype.
-
- * rtlanal.c (reg_set_p_1): Add prototype.
- (reg_set_last_1): Likewise.
-
- * reorg.c (find_dead_or_set_registers): Add prototype.
-
- * regmove (try_auto_increment): Add prototype.
-
- * reg-stack.c (pop_stack): Add prototype.
-
- * recog.c (validate_replace_rtx_1): Add prototype.
- (find_constant_term_loc): Likewise.
-
- * loop.c (regs_patch_p): Add prototype.
- (add_label_notes, count_nonfixed_reads): Likewise.
- (find_single_use_in_loop): Likewise.
- (express_from): Surround prototype with #ifdef.
- (giv_sort): Similarly.
-
- * jump.c (mark_modified_reg): Add prototype.
-
- * haifa-sched.c (is_prisky): Add prototype.
- (queue_to_ready): Likewise.
-
- * genextract.c (gen_insn): Add prototype.
-
- * genemit.c (max_operand_1): Add prototype.
- (max_operand_vec, print_code, gen_exp, gen_insn): Likewise.
- (gen_expand, gen_explit, output_add_clobbers): Likewise.
- (output_init_mov_optab): Likewise.
-
- * genattrtab.c (attr_hash_add_rtx): Add prototype.
- (attr_hash_add_string, write_length_unit_log): Likewise.
-
- * genattr.c (init_range): Add prototype.
-
- * combine.c (sets_function_arg_p): Add prototype.
-
- * expr.c (store_constructor_field): Add prototype.
- (get_memory_usage_from_modifier): Likewise.
-
- * expmed.c (synth_mult): Add prototype.
- (choose_multiplier, invert_mod2n): Likewise.
-
- * except.c (push_eh_entry): Add prototype.
- (pop_eh_entry, enqueue_eh_entry, dequeu_eh_entry): Likewise.
- (call_get_eh_context, start_dynamic_cleanup): Likewise.
- (start_dynamic_handler, can_throw): Likewise.
- (output_exception_table_entry, scan_region): Likewise.
- (eh_regs, set_insn_eh_region): Likewise.
-
- * dwarfout.c (decl_class_context): Add prototype.
- (output_inheritance_die, type_ok_for_scope): Likewise.
-
- * c-lex.c (skip_white_space_on_line): Add prototype.
-
- * alias.c (record_set): Add prototype.
- (find_base_term, base_alias_check): Likewise.
-
- * function.c (assign_outer_stack_local): Make static and add prototype.
-
- * haifa-sched.c (build_control_flow): Accept raw data as inputs
- instead of computing it locally. Callers changed.
- (find_rgns): Several new arguments. Callers changed.
- Generally clean up and comment better. Use dominators to
- identify reducible loops. Convert some flag arrays to bitmaps.
- Convert most of the code to work on pred/succ lists instead of
- an edge table. Add comments for future improvements.
- (schedule_insns): Allocate temporary tables for flow data, call
- routines to compute flow data and pass it along to children as
- arguments.
- (debug_control_flow): Delete. Use dump_bb_data instead.
-
- * basic-block.h (compute_dominators): Declare.
-
- * flow.c (dump_sbitmap, dump_sbitmap_vector): New debugging
- functions.
- * basic-block.h: Declare them.
-
-Thu Apr 16 13:45:51 1998 Jim Wilson <wilson@cygnus.com>
-
- * reg-stack.c (constrain_asm_operands): Set n_alternatives to zero if
- no operands.
-
-Wed Apr 15 11:33:09 1998 Alexandre Petit-Bianco <apbianco@sendai.cygnus.com>
-
- * tree.c (build_expr_wfl): Use NULL_TREE if the file name is NULL.
- Propagate TREE_SIDE_EFFECTS and TREE_TYPE iff the encapsulated
- node is non NULL. Cache last file name and file name identifier node.
-
-1998-04-15 Mark Mitchell <mmitchell@usa.net>
-
- * c-common.c (declare_hidden_char_array): Use TYPE_DOMAIN to get
- the length of an array, not TREE_TYPE.
-
-Wed Apr 15 15:31:34 1998 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (sbitmap_union_of_successors): New function.
- * basic-block.h (sbitmap_union_of_successors): Declare it.
-
-Wed Apr 15 12:38:03 1998 Jim Wilson <wilson@cygnus.com>
-
- * configure.in (gnu_ld): Rename to gnu_ld_flag before main loop.
- Set gnu_ld to gnu_ld_flag inside main loop.
- (gas): Likewise.
-
-Wed Apr 15 14:50:05 1998 Dave Brolley <brolley@cygnus.com>
-
- * toplev.c (compile_file): Call init_parse using new interface.
- (init_lex): Remove declaration.
-
- * c-lex.c (init_parse): Now returns char* containing filename.
-
-Wed Apr 15 12:37:10 1998 Jeffrey A Law (law@cygnus.com)
-
- * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Do nothing if not optimizing.
-
-Wed Apr 15 12:10:18 1998 Michael Meissner <meissner@cygnus.com>
-
- * Makefile.in (gen{config,flags,codes,emit}): Link in host print-rtl.o.
- (gen{extract,peep,opinit,output}): Likewise.
-
- * gen{attr,codes,config,emit,output}.c (insn_attr_name): Provide a
- global definition so print-rtl.o can be linked in.
- * gen{peep,recog}.c (insn_attr_name): Likewise.
-
-Tue Apr 14 07:30:57 1998 K. Richard Pixley <rich@kyoto.noir.com>
-
- * fixincludes: Discard empty C++ comments, as found in sys/time.h
- on hpux-11.0.
-
-Wed Apr 15 10:47:21 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * config/m68k/m68k.md (adddi3, subdi3): Optimize for constant
- operand.
-
-Wed Apr 15 01:21:21 1998 Jeffrey A Law (law@cygnus.com)
-
- * emit-rtl.c (operand_subword): Rework slightly to avoid
- bogus warning from previous change.
-
-Tue Apr 14 23:39:13 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.md: Revert Oct 27 change, as it is superseded by Kenner's
- Nov 8 find_replacement change. Move decls of get_unaligned_address
- * alpha.h: ... here.
-
-Tue Apr 14 22:00:39 1998 John Carr <jfc@mit.edu>
-
- * function.c (assign_parms): Initialize unsignedp before passing
- its pointer to promote_mode.
-
- * genattrtab.c (check_attr_test): Handle MATCH_INSN like MATCH_OPERAND.
- (write_test_expr): Allow MATCH_INSN.
-
-Tue Apr 14 21:57:57 1998 Paul Eggert <eggert@twinsun.com>
-
- * install.texi: Update section on warnings that can be safely ignored.
-
-Tue Apr 14 14:55:16 1998 Jim Wilson <wilson@cygnus.com>
-
- * mips.md (reload_outdi): Change the scratch mode from DImode to
- TImode. New variable scratch, used instead of operand[2] in template.
- Add code for MIPS16 HILO_REGNUM case where output reg is not M16_REG_P.
-
-Tue Apr 14 16:19:03 1998 Michael Meissner <meissner@cygnus.com>
-
- * expr.c (MOVE_RATIO): Set to 3 if optimizing for space.
-
-Tue Apr 14 11:31:28 1998 Krister Walfridsson <cato@df.lth.se>
-
- * i386/bsd386.h (ASM_OUTPUT_ALIGN): Redefine.
-
-Tue Apr 14 09:02:32 1998 Jeffrey A Law (law@cygnus.com)
-
- * svr4.h (ASM_DECLARE_OBJECT_NAME): Use HOST_WIDE_INT_PRINT_DEC.
- (ASM_FINISH_DECLARE_OBJECT): Likewise.
-
- * Idea and part of the patch from HJ.
- * Makefile.in: auto-host.h renamed from auto-config.h. All references
- changed.
- (distclean): Remove auto-build.h too.
- * configure.in: Rename host autoconf generated file to auto-host.h.
- If host != build, then run autoconf to generate auto-build.h for
- the build machine and include it in build_xm_files.
- Check for wait.h and sys/wait.h.
-
- * combine.c (simplify_rtx, case TRUNCATE): Respect value of
- TRULY_NOOP_TRUNCATION.
-
-Mon Apr 13 11:31:49 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.h (BINFO_OFFSET_ZEROP): Use integer_zerop.
-
-Sun Apr 12 20:55:32 1998 Catherine Moore <clm@cygnus.com>
-
- * invoke.texi (ld options): Include memset requirements
- for options -nodstdlib and -nodefaultlibs.
-
-1998-04-12 Paul Eggert <eggert@twinsun.com>
-
- This change is from an idea suggested by Arthur David Olson.
-
- * c-common.c (decl_attributes, record_function_format,
- check_format_info, init_function_format_info):
- Add support for strftime format checking.
- (enum format_type): New type.
- (record_function_format): Now static, and takes value of type
- enum format_type instead of int.
- (time_char_table): New constant.
- (struct function_format_info): format_type member renamed from is_scan.
- (check_format_info): Use `warning' rather than sprintf followed by
- `warning', to avoid mishandling `%' in warnings.
- Change `pedwarn' to `warning', since these warnings do not necessarily
- mean the program does not conform to the C Standard, as the code
- need not be executed.
-
- * c-tree.h (record_function_format): Remove decl; no longer extern.
-
- * extend.texi: Add documentation for strftime format checking.
-
-Sun Apr 12 20:23:03 1998 Jeffrey A Law (law@cygnus.com)
-
- * mips/ecoffl.h: Do not include mips.h.
- * mips/elf.h: Likewise.
-
- * configure.in (mips-*-ecoff): Do not mention mips/mips.h in tm_files.
- * mips/ecoff.h: Include "mips/mips.h".
-
-Sat Apr 11 22:42:54 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Apr 11 01:24:28 1998 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (count_reg_usage): Correctly handle REG_NONNEG notes.
- (delete_trivially_dead_insns): Renamed from delete_dead_from_cse.
- * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns instead of delete_dead_from_cse. Also call delete_trivially_dead_insns
- between loop optimization passes.
- * rtl.h: Updated appropriately.
-
-Fri Apr 10 22:28:32 1998 Jeffrey A Law (law@cygnus.com)
-
- Reinstall this patch from Jason.
- * function.c (push_function_context_to): Don't call init_emit.
-
-Fri Apr 10 13:40:20 1998 Nick Clifton <nickc@cygnus.com>
-
- * rtl.c (read_skip_spaces): Prevent infinite loops upon
- encountering unterminated comments.
-
-Fri Apr 10 10:43:41 1998 Jeffrey A Law (law@cygnus.com)
-
- * emit-rtl.c (operand_subword): Properly handle CONST_INTs for
- 64x32 cross builds.
-
- * configure.in: Handle --with-fast-fixincludes.
- (fixincludes): If --with-fast-fixincludes, then use a different
- fixincludes program by default.
- * Makefile.in (fixinc.sh): New rule.
-
-Fri Apr 10 00:36:31 1998 H.J. Lu (hjl@gnu.org)
-
- * i386.md (movqi+1): Handle invalid QI register.
- (movsf_push-1): Likewise.
-
-Thu Apr 9 16:53:59 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/m32r/m32r.c: call_address_operand(): Only accept symbolic
- addresses.
- symbolic_memort_operand(), call32_operand(), int8_operand(),
- int16_operand(), uint24_operand(), reg_or_int8_operand(): Removed.
- Not used.
- uint16_operand(): Made static.
-
-Thu Apr 9 01:43:04 1998 Jeffrey A Law (law@cygnus.com)
-
- * calls.c (expand_call): Fix typo.
-
-Thu Apr 9 00:18:44 1998 Dave Brolley (brolley@cygnus.com)
-
- * c-lex.c (finput): New global.
- (init_parse): Always included. Handle !USE_CPPLIB using
- code originally in compile_file.
- (finish_parse): Update for CPPLIB.
- * toplev.c (init_parse, finish_parse): Declare.
- (finput): Delete variable. Now in front-ends.
- (compile_file): Remove code which is now handled by init_parse
- which is unconditionally called. Similarly for finish_parse.
-
-Wed Apr 8 23:13:50 1998 Gavin Koch <gavin@cygnus.com>
-
- * config/mips/r3900.h (ASM_OUTPUT_DEF,SUPPORTS_WEAK,
- ASM_WEAKEN_LABEL): Add.
-
-Wed Apr 8 18:21:30 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha/crtbegin.asm, alpha/crtend.asm, alpha/t-crtb: New files.
- * configure.in (alpha-*-linux*): Use them.
-
-Fri Apr 3 17:02:13 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
-
- * tree.def (EXPR_WITH_FILE_LOCATION): New tree node definition.
- * tree.h (EXPR_WFL_{NODE,FILENAME,FILENAME_NODE,LINENO,
- COLNO,LINECOL,SET_LINECOL,EMIT_LINE_NOTE}): New macros.
- (build_expr_wfl): New prototype declaration.
- * tree.c (build_expr_wfl): New function, to build
- EXPR_WITH_FILE_LOCATION nodes.
- (copy_node): Don't zero TREE_CHAIN if copying a
- EXPR_WITH_FILE_LOCATION node.
- * print-tree.c (print_node): Handle EXPR_WITH_FILE_LOCATION.
- * expr.c (expand_expr): Handle EXPR_WITH_FILE_LOCATION.
-
-Wed Apr 8 12:51:19 1998 Jeffrey A Law (law@cygnus.com)
-
- * configure.in (v850): Use t-v850.
- (ix86-wrs-vxworks): Recognize 786 just like other x86 configurations.
-
- * protoize.c (creat, read, write): Do not declare.
-
- * jump.c (mark_jump_label): Record REG_LABEL notes for insns which
- refer to the CODE_LABEL before a dispatch table.
-
- * invoke.texi: Add ARC options.
-
- * gcc.c (process_command): Improve error message for -o with
- either -c or -S.
-
- * i386/x-cygwin32 (CLIB): Link in advapi32.
-
- * alpha.h (ASM_IDENTIFY_GCC): Define to nothing.
- (ASM_IDENTIFY_LANGUAGE): Likewise.
-
- * i386.md (movqi recognizer): Don't perfom byte increment into
- a NON_QI_REG_P.
-
- * configure.in (x86-dg-dgux): Run fixinc.dgux.
-
- * i370.h: Fix typo in GEN_INT changes.
-
- * bitmap.c (bitmap_element_allocate): Use "void" for arglist instead
- of an empty arglist in prototype.
-
- * Makefile.in: Remove bytecode crud that crept back in after the
- gcc2 merge.
-
-1998-04-08 Brendan Kehoe <brendan@cygnus.com>
-
- * c-lex.h (is_class_name): Fix arg type to be tree, not void.
- (make_pointer_declarator, reinit_parse_for_function): Fix typo.
-
-Wed Apr 8 06:16:45 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
-
-Wed Apr 8 00:44:18 1998 Bernd Schmidt (crux@pool.informatik.rwth-aachen.de>
-
- * c-lex.c (is_class_name): Delete declaration.
- (whitespace_cr): Make static and add prototype.
- * c-lex.h (make_pointer_declarator, reinit_parse_for_function,
- yylex, get_directive_line): Turn declarations into prototypes.
- (position_after_whitespace, check_newline, yyerror,, is_class_name,
- forget_protocol_qualifiers, remember_protocol_qualifiers): Add
- prototypes.
- * genattr.c (extend_range, write_upcase, gen_attr, write_units): Add
- prototypes.
- * gencodes.c (gen_insn): Add prototype.
- * genconfig.c (walk_insn, gen_insn, gen_expand, gen_split,
- gen_peephole): Add prototypes.
- * genflags.c (num_operands, gen_proto, gen_nonproto, gen_insn): Add
- prototypes.
- * gengenrtl.c (type_from_format, accessor_from_format, special_rtx,
- special_format, find_formats, gendecl, genmacro, gendef, genlegend,
- genheader, gencode): Add prototypes.
- * genopinit.c (gen_insn): Add prototype.
- * genoutput.c (output_prologue, output_epilogue, scan_operands,
- process_template, validate_insn_alternatives, gen_insn, gen_peephole,
- gen_expand, gen_split, n_occurrences): Add prototypes.
- * genpeep.c (gen_peephole): Add prototype.
- * loop.c (find_and_verify_loops, mark_loop_jump, prescan_loop,
- reg_in_basic_block_p, consec_sets_invariant_p, libcall_other_reg,
- labels_in_range_p, count_loop_regs_set, note_addr_stored,
- loop_reg_used_before_p, scan_loop, replace_call_address,
- skip_consec_insns, libcall_benefit, ignore_some_movables,
- force_movables, combine_movables, rtx_equal_for_loop_p, move_movables,
- strength_reduce, valid_initial_value_p, find_mem_givs, record_biv,
- check_final_value, record_giv, update_giv_derive, basic_induction_var,
- simplify_giv_expr, general_induction_var, consec_sets_giv,
- check_dbra_loop, express_from, combine_givs_p, combine_givs,
- product_cheap_p, maybe_eliminate_biv, maybe_eliminate_biv_1,
- last_use_this_basic_block, record_initial, update_reg_last_use,
- iteration_info, analyze_loop_iterations, insert_bct,
- instrument_loop_bct, indirect_jump_in_function_p): Turn declarations
- into prototypes.
-
-Tue Apr 7 21:48:52 1998 Jeffrey A Law (law@cygnus.com)
-
- * pa.h (LEGITIMIZE_RELOAD_ADDRESS): Define.
-
-1998-04-07 Ken Raeburn <raeburn@cygnus.com>
-
- * config/mips/mips.c (siginfo): Deleted.
- (override_options): Don't install SIGINFO signal handler.
-
-Tue Apr 7 11:58:04 1998 Jim Wilson <wilson@cygnus.com>
-
- * loop.c (check_dbra_loop): When normalize comparison_val, add check
- to verify it is non-negative.
-
-Tue Apr 7 02:01:47 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_block_move): Correctly collect block offsets.
- (alpha_expand_block_clear): Likewise.
-
-Mon Apr 6 23:36:01 1998 Richard Henderson <rth@cygnus.com>
-
- * tree.h (sizetype_tab): Fix previous change for K&R.
-
-Mon Apr 6 22:23:29 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon Apr 6 23:16:10 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * configure.in (sparc-*-solaris2*): Add xm-siglist.h to xm_file.
- Add USG and POSIX to xm_defines.
-
-Mon Apr 6 21:49:57 1998 Bob Manson <manson@charmed.cygnus.com>
-
- * gcc.c: Add linker spec.
- (link_command_spec): Use %(linker) instead of ld.
- (main): If collect2 is requested as the linker, see if it exists;
- if not, use ld instead.
-
- * Makefile.in (USE_COLLECT2): It's named collect2 now, not ld.
- (ld): Deleted.
- (install-collect2): Install as collect2, not ld.
-
- * configure.in(will_use_collect2): It's named collect2 now.
-
- * collect2: Remove checks to see if we were invoked recursively.
- (collect_execute): Use _spawnvp under cygwin32.
-
-Mon Apr 6 17:23:41 1998 Jim Wilson <wilson@cygnus.com>
-
- * haifa-sched.c (build_control_flow): Set unreachable for block whose
- only predecessor is itself.
-
-Mon Apr 6 16:08:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-parse.in: Include system.h, and remove stuff now made redundant.
- * cccp.c: Likewise.
- * cexp.y: Likewise.
- * protoize.c: Likewise. Properly check for cpp stringification.
-
- * Makefile.in (c-parse.o, cccp.o, cexp.o, protoize.o, unprotoize.o):
- Depend on system.h.
-
- * objc/Make-lang.in (objc-parse.o): Likewise.
-
-Mon Apr 6 14:59:58 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gansidecl.h: Check if compiler supports __attribute__. Provide
- definitions for ATTRIBUTE_UNUSED and ATTRIBUTE_PRINTF using
- __attribute__ when its available. Also provide definitions for
- ATTRIBUTE_PRINTF_1, ATTRIBUTE_PRINTF_2 and ATTRIBUTE_PRINTF_3 in
- terms of ATTRIBUTE_PRINTF.
-
- * genoutput.c (process_template): Use ATTRIBUTE_UNUSED in place
- of __attribute__.
-
-Mon Apr 6 07:17:52 1998 Catherine Moore <clm@cygnus.com>
-
- * combine.c (can_combine_p): Include successor in volatile test.
-
-Mon Apr 6 14:16:33 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.h (CASE_VECTOR_SHORTEN_MODE): Fix logic when to set
- offset_unsigned.
-
-Mon Apr 6 02:03:29 1998 Jeffrey A Law (law@cygnus.com)
-
- * objc/objc-act.c (encode_aggregate_within): Avoid GNU extensions
- in prototype and definition.
-
-Mon Apr 6 00:48:56 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon Apr 6 00:08:50 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_block_clear): Add missing offset arg to
- alpha_expand_unaligned_store_words.
-
-Sun Apr 5 21:31:24 1998 John Wehle (john@feith.com)
-
- * i386.md (movsf_push, movsf_mem): Remove.
- (movsf_push): Rename from movsf_push_nomove and move in front of
- movsf. Use nonmemory_operand predicate and don't bother checking
- TARGET_MOVE.
- (movsf_push_memory): New pattern.
- (movsf): Don't bother checking for push_operand. If TARGET_MOVE and
- both operands refer to memory then force operand[1] into a register.
- (movsf_normal): Change to unnamed pattern.
- Likewise for movdf, movxf, and friends.
-
-Sun Apr 5 18:45:51 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Apr 5 16:31:10 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in (alpha-dec-osf*): Match osf1.3 correctly.
-
-Sun Apr 5 16:53:37 1998 Don Bowman <don@pixsci.com>
-
- * configure.in (mips-wrs-vxworks): New target.
-
-Sat Apr 4 23:34:32 1998 Jeff Law (law@cygnus.com)
-
- * expmed.c (synth_mult): The value -1, has no zeros, so it can
- never have the form ...011.
-
- * version.c: Bump for snapshot.
-
-Sat Apr 4 20:16:46 1998 Richard Henderson <rth@cygnus.com>
-
- * i386.c (asm_output_function_prefix, load_pic_register):
- Use ASM_GENERATE_INTERNAL_LABEL properly.
- (output_pic_addr_const): Recognize %X to suppress any PIC sym suffix.
- (print_operand): Ignore it.
- (load_pic_register): Use it for the got load call.
- * i386.md (prologue_set_got, prologue_get_pc): Likewise.
- (prologue_get_pc_and_set_got): Likewise.
- * i386.h: Update print_operand docs.
-
-Sat Apr 4 19:08:37 1998 Richard Henderson <rth@cygnus.com>
-
- * i386.md (ffssi, ffshi): Rewrite as define_expands.
- (ffssi_1, ffshi_1): New (unspec [] 5) support patterns.
- * i386.c (notice_update_cc): Recognize unspec 5.
-
-Sat Apr 4 18:07:16 1998 David Mosberger-Tang (davidm@mostang.com)
-
- * alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Accept '(' for s/sv/svi.
- * alpha.c (print_operand): Handle it.
- * alpha.md (fix_truncsfdi2): Use it. Add earlyclobber pattern
- for ALPHA_TP_INSN.
- (fix_truncdfdi2): Likewise.
-
-Sat Apr 4 17:42:05 1998 Richard Henderson <rth@cygnus.com>
-
- * tree.h (sizetype_tab[2], sbitsizetype, ubitsizetype): Merge all
- of these into a single struct, with additional [us]sizetype entries.
- * stor-layout.c (set_sizetype): Initialize [us]sizetype.
- * fold-const.c (size_int_wide): Don't rely on sizetype_tab being
- an array.
-
-Sat Apr 4 17:04:41 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in (alpha-*-linux-*): Undo tm_file changes from gcc2 merge.
-
-Sat Apr 4 13:50:01 1998 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (split_block_insns): Don't suppress insn splitting
- on subsequent passes.
-
- * alpha.c (hard_fp_register_operand): New function.
- * alpha.h (PREDICATE_CODES): Add it.
- * alpha.md (extendsidi2): Kill bogus f<-f cvtql+cvtlq case. Add an
- f<-m case and accompanying define_split.
- (trapb): Use a unique unspec_volatile number.
-
-Sat Apr 4 13:32:08 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in (alpha-*-linux-gnu*): Undo Feb 3 change brought in
- from gcc2 merge.
-
-Sat Apr 4 10:23:41 1998 Jeffrey A Law (law@cygnus.com)
-
- * Check in merge from gcc2. See ChangeLog.11 and ChangeLog.12
- for details.
-
- * haifa-sched.c: Mirror recent changes from gcc2.
-
-Fri Apr 3 00:17:01 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (insn*.o): Depend on system.h.
-
- * pa.c (output_global_address): Initialize base.
- * pa.h (GO_IF_LEGITIMATE_ADDRESS): Initialize index.
-
-1998-04-03 Mike Stump <mrs@wrs.com>
-
- * gthr.h: Support systems that don't have weak, but have threads.
- * configure.in (*wrs-vxworks*): Use VxWorks threads by default.
- * gthr-vxworks.h: New file.
- * objc/thr-vxworks.h: Dummy file from thr-single.c for now.
-
-Thu Apr 2 18:00:52 1998 Jim Wilson <wilson@cygnus.com>
-
- * i386.md (movqi+1): Change alternative 1 from *r/r to *r/*rn.
-
-1998-04-02 Vladimir N. Makarov <vmakarov@cygnus.com>
-
- * ginclude/va-i960.h (va_end): Change void * to void.
-
-Thu Apr 2 13:51:10 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (choose-temp.o): Depend on system.h.
-
- * choose-temp.c: Include system.h when IN_GCC.
-
-Thu Apr 2 02:37:07 1998 Joern Rennecke (amylaar@cygnus.co.uk)
- Richard Henderson <rth@cygnus.com>
-
- * reload.c (find_reloads_address): Try LEGITIMIZE_RELOAD_ADDRESS.
- (move_replacements): New function.
- * reload.h: Prototype it.
-
- * alpha.h (LEGITIMIZE_RELOAD_ADDRESS): New definition.
-
-Thu Apr 2 01:01:34 1998 Richard Henderson <rth@cygnus.com>
-
- * configure (alpha-*-linuxecoff, alpha-*-linux-gnulibc1):
- Run fixincludes.
-
- * emit-rtl.c (gen_lowpart_common): Skip count by HARD_REGNO_NREGS.
- (gen_highpart): Likewise.
- * final.c (alter_subreg): Allow the target to hook by-mode subreg
- hard register number changes.
-
-Wed Apr 1 22:26:22 1998 Jeffrey A Law (law@cygnus.com)
-
- * fold-const.c optimze_bit_field_compare): Initialize rnbitpos,
- rnbitsize, rnmode and rinner.
- (make_range): Initialize type.
- (fold): Initialize arg0, arg1 and varop.
-
- * function.c (instantiate_virtual_regs_1): Initialize offset, regnoi
- and regnor.
- (expand_function_start): Initialize last_ptr.
-
- * stor-layout.c (layout_record): Initialize desired_align.
- (get_best_mode): Initialize unit.
-
- * tree.c (copy_node): Initialize length.
-
- * c-lex.c (yylex): Initialize traditional_type, ansi_type and type.
-
- * caller-save.c (insert_save_restore): Initialize pat, code and
- numregs.
-
- * emit-rtl.c (push_to_sequence): Initialize top.
- (push_topmost_sequence): Likewise.
-
- * genattrtab.c (simplify_by_exploding): Initialize defval.
-
- * profile.c (branch_prob): Initialize dest.
-
- * rtl.h (note_stores): Remove duplicate prototype.
- (GEN_INT): Reinstate cast of second arg to HOST_WIDE_INT.
-
- * cplus-dem.c (gnu_special): Don't get confused by .<digits>
- strings that are not actually lengths.
-
- * genattrtab.c: Make generated file use system.h, instead of
- including stdio.h, etc directly.
- * genextract.c, genopinit.c, genoutput.c: Likewise.
- * genpeep.c, genrecog.c: Likewise.
-
- * genoutput.c (process_template): Mark operands in the generated
- function as potentially unused if compiling with GNU CC.
-
- * i386/freebsd-elf.h (CPP_PREDEFINES): Update from FreeBSD folks.
-
- * pa.md (reload peepholes): Remove unused variable "mode".
-
-Wed Apr 1 17:06:19 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/thumb.h: Add super interworking support.
- * config/arm/thumb.c: Add super interworking support.
- * config/arm/thumb.md: Add super interworking support.
- * config/arm/lib1funcs.asm: Add interworking support.
- * config/arm/lib1thumb.asm: Add super interworking support.
- * config/arm/t-semi: Add interworking support.
- * config/arm/t-thumb: Add interworking support.
- * config/arm/README-interworking: New file.
-
-Wed Apr 1 14:38:10 1998 Jim Wilson <wilson@cygnus.com>
-
- * config/mips/iris6.h (MD_EXEC_PREFIX): Set to /usr/bin/.
- (MD_STARTFILE_PREFIX): Unset.
-
-1998-04-01 Mark Mitchell <mmitchell@usa.net>
-
- * varasm.c (make_decl_rtl): Update the DECL_ASSEMBLER_NAME for a
- entity in a local scope.
-
- * fold-const.c (fold): Call truthvalue_conversion for values which
- are folded to boolean type.
-
-Wed Apr 1 06:09:53 1998 Jeffrey A Law (law@cygnus.com)
-
- * 1750a.md, arm.c, clipper.c, clipper.md: Use GEN_INT consistently.
- * convex.h, dsp16xx.c, fx80.md, gmicro.c, gmicro.md: Likewise.
- * i370.h, i370.md, i860.c, i860.h, i860.md, i960.c: Likewise.
- * i960.h, i960.md, m32r.md, m68k.md, m68kv4.h, m88k.c: Likewise.
- * m88k.md, ns32k.c, ns32k.md, pdp11.c, pdp11.h, pdp11.md: Likewise.
- * pyr.c, pyr.h, pyr.md, romp.c, romp.h, romp.md: Likewise.
- * rs6000.md, sparc.c, sparc.h, sparc.md, spur.c, spur.md: Likewise.
- * tahoe.md, vax.h, vax.md, we32k.c, we32k.h, we32k.md: Likewise.
- * md.texi: Likewise.
-
-Wed Apr 1 08:33:44 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fixincludes (limits.h): Fix nested comments in Motorola's
- limits.h and sys/limits.h.
-
-Tue Mar 31 16:57:33 1998 Jim Wilson <wilson@cygnus.com>
-
- * alpha.c (alpha_expand_unaligned_load): Use tgt instead of addr
- as dest of expand_binop call.
-
- * alpha.md (extzv): Correct check for valid operand[2] values.
-
- * profile.c (branch_prob): Add code to recognize HPPA tablejump entry
- branch.
-
- * toplev.c (rest_of__compilation): Call init_recog_no_volatile at end.
-
-Mon Mar 30 13:11:05 1998 Stan Cox <scox@cygnus.com>
-
- * libgcc2.c (__main, __do_global_dtors, __do_global_ctors):
- For __CYGWIN32__ use the versions in winsup/dcrt0.cc.
-
- * gcc.c, cccp.c, cpplib.c, collect2.c (GET_ENVIRONMENT): Added.
- cygwin32 can override this to allow both unix and win32 style PATHs.
-
- * i386/xm-cygwin32.h (GET_ENVIRONMENT): Defined to allow win32
- style environment paths.
-
-Mon Mar 30 14:43:20 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (cppalloc.o, cpperror.o, cppexp.o, cpphash.o,
- cpplib.o, cppmain.o, fix-header.o, gcov.o, gen-protos.o,
- gengenrtl.o, halfpic.o, hash.o, scan-decls.o, scan.o): Depend on
- system.h.
-
- * cpphash.c: Include config.h.
- * cppalloc.c: Include system.h. Add parameters to various
- function prototypes.
- * cpperror.c: Likewise.
- * cppexp.c: Likewise.
- * cpphash.c: Likewise.
- * cpplib.c: Likewise.
- * cppmain.c: Likewise.
- * fix-header.c: Likewise.
- * gcov.c: Likewise.
- * gen-protos.c: Likewise.
- * gengenrtl.c: Likewise.
- * halfpic.c: Likewise.
- * hash.c: Likewise.
- * scan-decls.c: Likewise.
- * scan.c: Likewise.
-
-Mon Mar 30 11:06:45 1998 Jim Wilson <wilson@cygnus.com>
-
- * README.gnat: Add lang_print_xnode definition.
-
-Mon Mar 30 11:12:24 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * config/m68k/m68k.c (standard_68881_constant_p): Don't use
- fmovecr on the 68060.
-
-Mon Mar 30 00:21:03 1998 Jeffrey A Law (law@cygnus.com)
-
- * genemit.c (DONE): Rework so that it works in the true arm if
- an if-else conditional.
- (FAIL): Likewise.
-
-Sun Mar 29 12:45:23 1998 Jeffrey A Law (law@cygnus.com)
-
- * rs6000.c: Do not include stdioh or ctype.h anymore.
-
- * Makefile.in (c-typeck.o): Delete on expr.h, insn-codes.h and
- $(RTL_H).
- (stor-layout.o): Likewise.
- * c-typeck.c: Include rtl.h and expr.h.
- * stor-layout.c: Likewise.
-
- * cpplib.c (cpp_file_line_for_message): Delete unused parameter.
- All callers changed.
- (do_sccs): Wrap in an SCCS_DIRECTIVE ifdef.
- * fix-header.c (cpp_file_line_for_message): Delete unused parameter.
- All callers changed.
-
- * collect2.c (is_in_list): Wrap inside COLLECT_EXPORT_LIST ifdef.
-
- * local-alloc.c (reg_classes_overlap_p): Delete dead function.
-
- * tree.h (lang_print_xnode): Provide prototype.
-
-Sat Mar 28 23:50:44 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Mar 29 00:42:21 1998 Jeffrey A Law (law@cygnus.com)
-
- * objc/sendmsg.c (__objc_block_forward): Add braces for return
- value if INVISIBLE_STRUCT_RETURN.
-
- * pa.c (arith_double_operand): Fix parens.
-
- * haifa-sched.c (print_pattern): Correct arg to sprintf.
-
- * Makefile.in (libgcc1.null): Make return type for __foo void.
-
-Sat Mar 28 14:37:20 1998 Jeffrey A Law (law@cygnus.com)
-
- * pa.h: Add declarations for many functions defined in pa.c.
-
- * genpeep.c (main): Remove unused variable 'i' from the generated
- file.
-
- * genemit.c (gen_expand): Do not emit "_done" or "_fail" labels.
- (gen_split): Likewise.
- (main): Rework generated definitions of DONE and FAIL so that they
- no longer use gotos. Avoids warnings about unused labels.
-
- * integrate.c (copy_rtx_and_substitute): Rework to avoid need for
- unused "junk" variable.
-
- * genattrtab.c (write_complex_function): Add a default case in
- generated switch statement to keep -W -Wall quiet.
-
-Sat Mar 28 10:47:21 1998 Nick Clifton <nickc@cygnus.com>
-
- * invoke.texi: Document more ARM and Thumb command line options.
-
- * config/arm/xm-thumb.h: New file.
-
-Sat Mar 28 01:37:33 1998 Craig Burley <burley@gnu.ai.mit.edu>
-
- * stmt.c (expand_expr_stmt): Must generate code for
- statements within an expression (gcc's `({ ... )}')
- even if -fsyntax-only.
-
-Sat Mar 28 01:06:12 1998 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
- Jeffrey A Law (law@cygnus.com)
-
- * basic-block.h (basic_block_computed_jump_target): Declare.
- * flags.h (current_function_has_computed_jump): Declare.
- * flow.c (basic_block_computed_jump_target): Define.
- (flow_analysis): Allocate it. Set current_function_has_computed_jump
- to 0.
- (find_basic_blocks): Set current_function_has_computed_jump and
- elements of basic_block_computed_jump_target to 1 as appropriate.
- * function.c (current_function_has_computed_jump): Define.
- * global.c (global_conflicts): Don't allocate pseudos into stack regs
- at the start of a block that is reachable by a computed jump.
- * reg-stack.c (stack_reg_life_analysis): If must restart, do so
- immediately.
- (subst_stack_regs): Undo change from Sep 4 1997.
- (uses_reg_or_mem): Now unused, deleted.
- * stupid.c (stupid_life_analysis): Compute
- current_function_has_computed_jump.
- (stupid_find_reg): Don't allocate stack regs if the function has a
- computed goto.
- * haifa-sched.c (is_cfg_nonregular): Delete code to determine if
- the current function has a computed jump. Use the global value
- instead.
-
-Sat Mar 28 00:21:37 1998 Jeffrey A Law (law@cygnus.com)
-
- * i386/freebsd.h (CPP_PREDEFINES): Remove __386BSD__.
- (DWARF2_UNWIND_INFO): Define to zero.
-
-Fri Mar 27 16:04:49 1998 Michael Meissner <meissner@cygnus.com>
-
- * gcc.c (set_std_prefix): Add declaration.
- (process_command): If GCC_EXEC_PREFIX is set, remove /lib/gcc-lib/
- suffix, and update the standard prefix prefix.c uses.
-
- * prefix.c (std_prefix): New global to hold default prefix value.
- (get_key_value): Change to use std_prefix instead of PREFIX.
- (translate_name): Likewise.
- (update_path): Likewise.
- (get_key_value): Release allocated scratch storage.
- (set_std_prefix): New function to reset the standard prefix.
-
-Fri Mar 27 18:08:21 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (find_barrier): Fix calculations for alignment increase.
-
-Fri Mar 27 08:56:52 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (stmp-fixinc): If we're actually fixing include
- files, copy gcc's assert.h into the fixed include dir.
- * fixincludes (assert.h): Avoid any attempts to fix a probably
- broken system specific assert.h file.
- * fixproto (stdlib.h): Make sure, it'll contain a definition of
- size_t.
-
-Fri Mar 27 00:49:46 1998 Jeffrey A Law (law@cygnus.com)
-
- * regclass.c (reg_scan_mark_refs): Be more selective about
- when we mark a register with REGNO_POINTER_FLAG.
-
-Thu Mar 26 23:00:11 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- reload inheritance improvement:
- * reload1.c (reg_reloaded_contents, reg_reloaded_insn):
- Change meaning: index is now hard reg number.
- (reg_reloaded_valid, reg_reloaded_dead): New variables.
- (reload_spill_index): Content is now a hard reg number.
- (reload_as_needed): Change to fit new variable meaning.
- (forget_old_reloads_1, allocate_reload_reg): Likewise.
- (choose_reload_regs, emit_reload_insns): Likewise.
-
-Thu Mar 26 18:34:13 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * regclass.c (record_reg_classes): '?' increases cost by two.
-
- * reload.c (find_reloads): Double previous costs. Output
- reloads cost one unit extra.
-
- * reload1.c (eliminate_regs): Delete LOAD_EXTENDED_OP code that
- boiled down to && ! 0.
-
- * reload.c (find_equiv_reg): Also consider a goal offset from the
- frame pointer to be constant.
-
-Thu Mar 26 17:34:46 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.h (OPTIMIZATION_OPTIONS): Define.
-
-Thu Mar 26 00:19:47 1998 Richard Henderson <rth@cygnus.com>
-
- * combine.c (make_compound_operation): Simplify (subreg (*_extend) 0).
-
-Wed Mar 25 23:53:11 1998 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (pa_adjust_cost): Avoid redundant calls to get_attr_type.
-
-Wed Mar 25 13:40:48 1998 Jim Wilson <wilson@cygnus.com>
-
- * c-common.c (check_format_info): Initialize type, is_type. New local
- integral_format. Don't warn for 'L' when pedantic. Do warn for 'L'
- when pedantic if used with integral format specifier.
-
-Wed Mar 25 16:09:01 1998 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.h (FUNCTION_ARG_PADDING): Cast result to be enum
- direction.
- (function_arg_padding): Declare.
-
- * rs6000.c: Include system.h.
- (function_arg_padding): Change return type to int, cast enum's to
- int.
-
- (From Kaveh R. Ghazi <ghazi@caip.rutgers.edu>)
- * collect2.c (scan_prog_file): Add explicit braces to avoid
- ambiguous `else'.
-
- * dbxout.c (dbxout_type_fields): Add braces around empty body in
- an if-statement.
- (dbxout_type): Likewise.
-
- * rs6000.c (rs6000_override_options): Change type of `i', `j' and
- `ptt_size' from int to size_t.
- (rs6000_file_start): Likewise for `i'.
- (rs6000_replace_regno): Add default case in enumeration switch.
- (output_epilog): Remove unused variable `i'.
- (rs6000_longcall_ref): Remove unused variables `len', `p', `reg1'
- and `reg2'.
-
- * rs6000.h (ADDITIONAL_REGISTER_NAMES): Add missing braces around
- initializer.
- (get_issue_rate, non_logical_cint_operand): Add prototype.
- (rs6000_output_load_toc_table): Likewise.
-
- * rs6000.md (udivmodsi4): Add explicit braces to avoid ambiguous
- `else'.
-
-Wed Mar 25 10:05:19 1998 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/thumb.c: New File. Support for ARM's Thumb
- instruction set.
- * config/arm/thumb.h: New File. Thumb definitions.
- * config/arm/thumb.md: New File. Thumb machine description.
- * config/arm/tcoff.h: New File. Thumb COFF support.
- * config/arm/t-thumb: New File. Thumb makefile fragment.
- * config/arm/lib1thumb.asm: New File. Thumb libgcc support functions.
-
- * configure.in: Add Thumb-coff target.
- * configure: Add Thumb-coff target.
- * config.sub: Add Thumb-coff target.
-
-Wed Mar 25 10:30:32 1998 Jim Wilson <wilson@cygnus.com>
-
- * loop.c (scan_loop): Initialize move_insn_first to zero.
-
-Wed Mar 25 01:06:49 1998 Joel Sherrill (joel@OARcorp.com)
-
- * config/i386/go32-rtems.h: Defined TARGET_MEM_FUNCTIONS.
- * config/i386/rtems.h: Likewise.
- * config/i960/rtems.h: Likewise.
- * config/m68k/rtems.h: Likewise.
- * config/mips/rtems64.h: Likewise.
- * config/pa/rtems.h: Likewise.
- * config/rs6000/rtems.h: Likewise.
- * config/sh/rtems.h: Likewise.
- * config/sparc/rtems.h: Likewise.
-
-Wed Mar 25 00:57:26 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * pa.c (emit_move_sequence): If in reload, call find_replacement.
-
-Tue Mar 24 10:44:11 1998 Nick Clifton <nickc@cygnus.com>
-
- * Makefile.in (gcov$(exeext)): Support .exe extension to gcov.
-
- * collect2.c (find_a_file): Add debugging.
- (find_a_file): Test for win32 style absolute paths if
- DIR_SERPARATOR is defined.
- (prefix_from_string): Add debugging.
- (main): Test for debug command line switch at start of program
- execution.
- (main): Use GET_ENVIRONMENT rather than getenv().
- (prefix_from_env): Use GET_ENVIRONMENT.
-
-1998-03-24 Mark Mitchell <mmitchell@usa.net>
-
- * cplus-dem.c (optable): Add sizeof.
- (demangle_template_value_parm): New function containing code
- previously found in demangle_template.
- (demangle_integral_value): New function which handles complicated
- integral expressions.
- (demangle_template): Use them.
-
-Tue Mar 24 12:13:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (genconfig.o, genflags.o, gencodes.o, genemit.o,
- genopinit.o, genrecog.o, genextract.o, genpeep.o, genattr.o,
- genattrtab.o, genoutput.o): Depend on system.h.
-
- * genattr.c: Include system.h. Add arguments to various function
- prototypes. Remove redundant prototype of read_rtx().
- * genattrtab.c: Likewise.
- * gencodes.c: Likewise.
- * genconfig.c: Likewise.
- * genemit.c: Likewise.
- * genextract.c: Likewise.
- * genflags.c: Likewise.
- * genopinit.c: Likewise.
- * genoutput.c: Likewise.
- * genpeep.c: Likewise.
- * genrecog.c: Likewise.
-
-1998-03-24 Martin von Loewis <loewis@informatik.hu-berlin.de>
-
- * c-lang.c (lang_print_xnode): New function.
- * objc/objc-act.c (lang_print_xnode): Likewise.
- * print-tree.c (print_node): Call it
-
-Mon Mar 23 23:59:11 1998 H.J. Lu (hjl@gnu.org)
-
- * c-parse.in: Recognize protocol qualifiers in class
- definitions for objc.
- Include "output.h".
- (yyerror): Remove redundant decl.
- (yyprint): Fix prototype.
-
-Mon Mar 23 23:49:47 1998 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (rtx_cost): Only call CONST_COSTS if it is defined.
-
- * stmt.c (unroll_block_trees): Free block_vector if needed.
-
-Mon Mar 23 23:26:42 1998 Philippe De Muyter <phdm@macqel.be>
-
- * m68k/m68k.md (zero_extendqidi2, zero_extendhidi2): New patterns.
- (zero_extendsidi2): Avoid useless copy.
- (iordi_zext): New pattern.
- (iorsi_zexthi_ashl16): Pattern reworked to avoid "0" constraint for
- operand 2.
- (iorsi_zext): New name for old unnamed pattern; indentation fixes.
-
- * m68k/m68k.md (ashldi_const): Allow shift count in range ]32,63].
- (ashldi3): Allow constant shift count in range ]32,63].
- (ashrdi_const, ashrid3, lshrdi_const, lshrdi3): Likewise.
-
-1998-03-22 Mark Mitchell <mmitchell@usa.net>
-
- * tree.h (IS_EXPR_CODE_CLASS): New macro.
-
-Mon Mar 23 23:18:48 1998 Jeffrey A Law (law@cygnus.com)
-
- * h8300.h (CONST_COSTS): Remove definition.
- (DEFAULT_RTX_COSTS): Define.
-
-Mon Mar 23 22:58:22 1998 Joel Sherrill (joel@OARcorp.com)
-
- * config/sh/rtems.h: Switched from ELF to COFF.
-
-Mon Mar 23 14:14:20 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * freebsd.h (ASM_OUTPUT_ALIGN): Redefine.
-
-Sat Mar 21 23:52:56 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Mar 22 00:50:42 1998 Nick Clifton <nickc@cygnus.com>
- Geoff Noer <noer@cygnus.com>
-
- * Makefile.in: Various fixes for building cygwin32 native toolchains.
-
- * objc/Makefile.in: Various fixes for building cygwin32 native toolchains.
- * objc/Make-lang.in: Likewise.
-
- * config/i386/xm-cygwin32.h (PATH_SEPARATOR): Set to a semi-colon.
-
-Sun Mar 22 00:21:46 1998 R. Ganesan <rganesan@novell.com>
-
- * configure.in: Handle with-PACKAGE=no correctly
-
-Fri Mar 20 17:36:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (alias.o, bitmap.o, c-aux-info.o, c-common.o,
- c-decl.o, c-iterate.o, c-lang.o, c-lex.o, c-pragma.o, c-typeck.o,
- caller-save.o, calls.o, collect2.o, combine.o, cse.o, dbxout.o,
- dwarf2out.o, dwarfout.o, emit-rtl.o, except.o, explow.o, expmed.o,
- expr.o, final.o, flow.o, function.o, getpwd.o, global.o,
- integrate.o, jump.o, local-alloc.o, loop.o, optabs.o, pexecute.o,
- prefix.o, print-rtl.o, print-tree.o, profile.o, real.o, recog.o,
- reg-stack.o, regclass.o, regmove.o, reload.o, reload1.o, reorg.o,
- rtl.o, rtlanal.o, sdbout.o, stmt.o, stor-layout.o, stupid.o,
- tlink.o, toplev.o, tree.o, unroll.o, varasm.o, xcoffout.o): Depend
- on system.h.
-
- * alias.c, bitmap.c, c-aux-info.c, c-common.c, c-decl.c,
- c-iterate.c, c-lang.c, c-lex.c, c-pragma.c, c-typeck.c,
- caller-save.c, calls.c, collect2.c, combine.c, cse.c, dbxout.c,
- dwarf2out.c, dwarfout.c, emit-rtl.c, except.c, explow.c, expmed.c,
- expr.c, final.c, flow.c, function.c, gcc.c, getpwd.c, global.c,
- integrate.c, jump.c, local-alloc.c, loop.c, optabs.c, pexecute.c,
- prefix.c, print-rtl.c, print-tree.c, profile.c, real.c, recog.c,
- reg-stack.c, regclass.c, regmove.c, reload.c, reload1.c, reorg.c,
- rtl.c, rtlanal.c, sched.c, sdbout.c, stmt.c, stor-layout.c,
- stupid.c, tlink.c, toplev.c, tree.c, unroll.c, varasm.c,
- xcoffout.c: Include system.h. Organize include ordering so
- that stdarg/varargs comes before other system headers. Remove
- spurious casts of functions assured of a prototype in system.h.
-
-Fri Mar 20 11:19:40 1998 Stan Cox <scox@equinox.cygnus.com>
-
- * reg-stack.c (pop_stack): Define. Pops any register on the
- regstack and adjusts regstack.
- (compare_for_stack_reg): Use pop_stack.
-
-Thu Mar 19 23:51:01 1998 Jeffrey A Law (law@cygnus.com)
-
- * configure.in (hppa1.0-hp-hpux10): Handle threads for this
- config too.
-
-Thu Mar 19 20:30:31 1998 Philippe De Muyter <phdm@macqel.be>
-
- * libgcc2.c (exit): Do not call __bb_exit_func if HAVE_ATEXIT.
-
- * fold-const.c (fold): Replace sign-extension of a zero extended
- value by a single zero extension.
-
-Thu Mar 19 00:58:07 1998 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c (init_eh): Do nothing.
- (save_eh_status): Call init_eh_for_function, not init_eh.
- * function.c (push_function_context_to): Don't call init_emit.
-
-Thu Mar 19 13:39:52 1998 Michael Meissner <meissner@cygnus.com>
-
- * rs6000/sysv4.h (RELATIVE_PREFIX_NOT_LINKDIR): Undef for System V
- and EABI.
-
-Thu Mar 19 10:10:36 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * final.c (shorten_branches): Add parentheses around +/- in
- operand of &.
-
- * flow.c (life_analysis): Wrap variable `i' in macro ELIMINABLE_REGS.
-
-Thu Mar 19 09:15:17 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * regclass.c (memory_move_secondary_cost): Wrap uses of
- SECONDARY_INPUT_RELOAD_CLASS and SECONDARY_OUTPUT_RELOAD_CLASS
- with #ifdef tests.
-
-Thu Mar 19 09:06:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * config/m68k/m68k.md (addqi3): Fix typo gen_INT vs. GEN_INT.
-
- * flow.c (life_analysis): #include <sys/types.h> to make sure
- size_t is defined.
- * cplus-dem.c (demangle_function_name): Likewise.
-
-Thu Mar 19 09:00:01 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * final.c (insn_noperands): Change type to unsigned int.
- (final_scan_insn): Likewise for noperands;
- properly check operand number boundaries.
-
-Wed Mar 18 16:20:30 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (extzv): Don't reject register operands. Fix
- mode of operand 1.
-
-Wed Mar 18 16:14:23 1998 Richard Henderson <rth@cygnus.com>
-
- * dbxout.c (dbxout_function_end): Fix last change. The correct
- predicate is ASM_OUTPUT_SECTION_NAME.
-
-Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
-
- * sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c.
- (ashlsi): Use match_dup 1 instead of match_operand 2.
-
-Wed Mar 18 13:46:07 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * fold-const.c (operand_equal_for_comparison_p): See if equal
- when nop conversions are removed.
-
-Wed Mar 18 13:42:01 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case COND_EXPR): If have conditional move,
- don't use ORIGINAL_TARGET unless REG.
-
-Wed Mar 18 16:53:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * netbsd.h (ASM_OUTPUT_ALIGN): Redefine.
-
-Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com>
-
- * loop.c (struct movable): New field move_insn_first.
- (scan_loop): In consec sets code, set it. Clear it otherwise.
- (move_movables): In consec sets code, use it. Copy REG_NOTES from
- p to i1 only if i1 does not have REG_NOTES. Delete obsolete ifdefed
- out code.
-
-Wed Mar 18 09:52:56 1998 Richard Henderson <rth@cygnus.com>
-
- * rtl.c (read_rtx): Fall back on homebrew atoll if HOST_WIDE_INT
- is large, and the system doesn't provide atoll or atoq.
- (atoll): New.
-
- * alpha/xm-vms.h (HAVE_ATOLL): Define.
- Reported by Klaus Kaempf <kkaempf@progis.de>.
-
-Wed Mar 18 09:56:26 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-lang.c (finish_file): Wrap variable `void_list_node' with macro
- test !ASM_OUTPUT_CONSTRUCTOR || !ASM_OUTPUT_DESTRUCTOR.
-
- * calls.c (emit_call_1): Wrap variable `already_popped' with macro
- test !ACCUMULATE_OUTGOING_ARGS.
-
- * collect2.c (write_c_file_glob): Wrap function definition in
- macro test !LD_INIT_SWITCH.
-
- * combine.c (try_combine): Wrap variables `cc_use' and
- `compare_mode' in macro test EXTRA_CC_MODES.
-
- * cpplib.c (do_ident): Remove unused variable `len'.
- (skip_if_group): Remove unused variables `at_beg_of_line' and
- `after_ident'.
- (cpp_get_token): Remove unused variable `dummy'.
-
- * dbxout.c (scope_labelno): Move static variable definition inside
- the one function scope where it is used.
- (dbxout_function_end): Wrap prototype and definition in
- macro test !NO_DBX_FUNCTION_END.
-
- * dwarf2out.c (add_subscript_info): Wrap variable `dimension_number'
- in macro test !MIPS_DEBUGGING_INFO.
-
- * expr.c (expand_builtin_setjmp): Move declaration of variable `i'
- into the scope where it is used. Wrap empty else-statement body
- in braces.
-
- * fix-header.c: Fix typo in comment.
- (inf_skip_spaces): Cast results of INF_UNGET to (void).
- (check_protection, main): Likewise.
-
- * flow.c (find_basic_blocks_1): Remove dangling comment text.
-
- * function.c (contains): Wrap prototype and definition in macro
- test HAVE_prologue || HAVE_epilogue.
- (fixup_var_refs_1): Remove unused variable `width'.
-
- * gen-protos.c (main): Remove unused variable `optr'.
-
- * haifa-sched.c (debug_control_flow): Remove unused variable `j'.
-
- * libgcc2.c (__udiv_w_sdiv): Provide dummy return value of 0.
- (__sjpopnthrow): Remove unused variable `jmpbuf'.
- (__throw): Remove unused variable `val'.
-
- * protoize.c: Check for a previously existing definition before
- defining *_OK macros.
-
- * scan-decls.c (scan_decls): Remove unused variable `old_written'.
-
-Tue Mar 17 00:45:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * vax.h (ADDR_VEC_ALIGN): Define.
-
-Mon Mar 16 15:57:17 1998 Michael Meissner <meissner@cygnus.com>
-
- * gcc.c (default_arg): Don't wander off the end of allocated
- memory.
-
- (From Geoffrey Keating <geoffk@ozemail.com.au>)
- * rs6000.c (small_data_operand): Ensure that any address
- referenced relative to the small data area is inside the SDA.
-
-Mon Mar 16 12:55:15 1998 Jim Wilson <wilson@cygnus.com>
-
- * config/m68k/netbsd.h (ASM_SPEC): Add %{m68060}.
-
-Mon Mar 16 15:50:20 1998 Andrew MacLeod <amacleod@cygnus.com>
-
- * except.h (in_same_eh_region): New prototype.
- (free_insn_eh_region, init_insn_eh_region): New prototypes.
- * except.c (insn_eh_region, maximum_uid): New static variables.
- (set_insn_eh_region): New static function to set region numbers.
- (free_insn_eh_region): New function to free EH region table.
- (init_insn_eh_region): New function to initialize EH region table.
- (in_same_eh_region): New function used to determine if two rtl
- instructions are in the same exception region or not.
- * final.c (final): Initialize the table indicating which instructions
- belong in which exception region.
- * genpeep.c (main): Add "except.h" to include file list in generated
- file insn-peep.c.
- * config/sparc/sparc.md: Add calls to 'in_same_eh_region' in 4
- peepholes involving calls and unconditional branches.
-
-Mon Mar 16 11:16:50 1998 Jim Wilson <wilson@cygnus.com>
-
- * README.gnat: New file.
-
-Mon Mar 16 11:14:20 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * config/m68k/m68k.c: Include <stdlib.h> for atoi. Include
- "recog.h" for offsettable_memref_p.
- (legitimize_pic_address): Remove unused variable `offset'.
- (notice_update_cc): Change return type to void. Add default label
- to switch.
- (standard_68881_constant_p): Remove unused variable mode.
- (print_operand): Define local variable i only if SUPPORT_SUN_FPA.
- (const_int_cost): Explicitly declare as returning int.
- (output_dbcc_and_branch): Change return type to void.
-
- * config/m68k/linux.h, config/m68k/m68k.md, config/m68k/m68k.c,
- config/m68k/m68k.h: Replace gen_rtx (XXX, ...) with gen_rtx_XXX
- (...). Use GEN_INT instead of gen_rtx_CONST_INT.
-
-Sun Mar 15 22:30:44 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Fri Mar 13 11:30:12 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * config/m68k/m68k.h (CONST_OK_FOR_LETTER_P): Fix logic in range
- check for 'M' constraint.
-
-Thu Mar 12 14:47:14 1998 Jim Wilson <wilson@cygnus.com>
-
- * cccp.c (create_definition): If pedantic, call pedwarn for macro
- varargs feature.
-
-Thu Mar 12 13:43:25 1998 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>
-
- * i386.c (ix86_logical_operator): New function.
- (split_di): Ensure that when a MEM is split, the resulting MEMs have
- SImode.
- * i386.md (anddi3, xordi3, iordi3): New patterns. Add a define_split
- to implement them.
-
-Thu Mar 12 15:13:16 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
- Richard Earnshaw <rearnsha@arm.com>
- Nick Clifton <nickc@cygnus.com>
-
- * tm.texi (DEFAULT_RTX_COSTS): Document new macro.
-
- * arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
-
- * cse.c (rtx_cost): Provide a default case in an enumeration
- switch, and call DEFAULT_RTX_COSTS if it's defined.
-
-Thu Mar 12 10:02:38 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * basic-block.h (compute_preds_succs): Change return type in
- prototype to void.
- * flow.c (compute_preds_succs): Likewise in function definition.
-
- * regmove.c (find_matches): Cast char used as array index to unsigned char
- to suppress warning.
-
-Thu Mar 12 09:39:40 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * i386.h (RTX_COSTS): Insert braces around nested if.
- (ADDITIONAL_REGISTER_NAMES): Insert braces around structured
- elements.
-
- * gcc.c (default_compilers): Properly put brackets around array elements in
- initializer.
-
- * getopt.c (_getopt_internal): Add explicit braces around nested if;
- reformatted.
-
- * reg-stack.c (record_asm_reg_life): Add explicit braces around nested if's.
- (record_reg_life_pat): Add explicit parens around && and || in expression.
- (stack_reg_life_analysis): Add parens around assignment used as expression.
- (convert_regs): Likewise.
-
-Thu Mar 12 09:25:29 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * bitmap.c (bitmap_element_allocate): Remove unused parameter;
- change callers accordingly.
-
- * cplus-dem.c (arm_special): Remove unused parameter work in prototype
- and definition; change all callers accordingly.
-
- * except.c (init_eh): Avoid assignment of unused return value of
- build_pointer_type; cast it to void, instead, and remove unused
- variable type.
-
- * gcc.c (lang_specific_driver): Define prototype only #ifdef
- LANG_SPECIFIC_DRIVER.
- (temp_names): Define only #ifdef MKTEMP_EACH_FILE.
-
- * genoutput.c (output_epilogue): Initialize next_name to 0.
-
- * real.c (efrexp): #if 0 prototype and function definition.
- (eremain): Likewise.
- (uditoe): Likewise.
- (ditoe): Likewise.
- (etoudi): Likewise.
- (etodi): Likewise.
- (esqrt): Likewise.
-
- * reload.c (push_secondary_reload): Define prototype only
- #ifdef HAVE_SECONDARY_RELOADS.
-
- * varasm.c (assemble_static_space): Define rounded only
- #ifndef ASM_OUTPUT_ALIGNED_LOCAL.
-
-Thu Mar 12 09:11:35 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * i386.md (andsi): Add default case in enumeration switch.
- (iorsi3): Likewise.
- (iorhi3): Likewise.
- (xorsi3): Likewise.
-
-Thu Mar 12 08:37:02 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * c-decl (finish_struct): Change type of min_align to unsigned.
-
- * cplus-dem.c (demangle_function_name): Change type of variable i to size_t;
- remove unused variable len.
-
- * dwarf2out.c (reg_save): Add explicit cast of -1 to unsigned and a
- comment indicating this is proper behavior.
- (reg_loc_descriptor): Remove redundant comparison of unsigned variable
- reg >= 0.
- (based_loc_descr): Likewise.
-
- * enquire.c (bitpattern): Change type of variable i to unsigned.
-
- * final.c (output_asm_insn): Don't cast insn_noperands to unsigned.
-
- * flow.c (life_analysis): Change type of variable i to size_t;
- remove unused variable insn.
-
- * gcc.c (translate_options): Change type of variables optlen, arglen and
- complen to size_t.
- (input_filename_length): Change type to size_t.
- (do_spec_1): Change type of variable bufsize to size_t.
- (main): Change type of variables i and j to size_t;
- remove subblock local definition of variable i.
- (lookup_compiler): Change type of second argument to size_t;
- change type of variable i to size_t.
-
- * genemit.c (output_init_mov_optab): Change type of variable i to size_t.
-
- * genopinit.c (get_insn): Change type of variable pindex to size_t.
-
- * genrecog.c (add_to_sequence): Change type of variable i to size_t.
-
- * global.c (global_alloc): Change type of variable i to size_t.
-
- * regclass.c (init_reg_sets): Change type of variables i and j to unsigned.
-
- * stmt.c (expand_end_bindings): Change type of variable i to size_t.
- (expand_end_case): Change type of variable count to size_t.
-
- * toplev.c (main): Change type of variable j to size_t.
- (set_target_switch): Change type of variable j to size_t.
- (print_switch_values): Change type of variable j to size_t;
- remove unused variable flags.
-
- * varasm.c (assemble_variable): Change type of variable align to size_t.
- (const_hash_rtx): Change type of variable i to size_t.
-
-1998-03-11 Mark Mitchell <mmitchell@usa.net>
-
- * dbxout.c (dbxout_type_methods): Only treat TYPE_METHODS as a
- TREE_VEC if that's what it really is.
-
-Wed Mar 11 15:16:01 1998 Michael Meissner <meissner@cygnus.com>
-
- * {haifa-,}sched.c (rank_for_schedule): Only take void * arguments
- as per ISO C spec.
-
-Wed Mar 11 12:05:20 1998 Teemu Torma <tot@trema.com>
-
- * gthr.h: Changed the comment about return values.
- * gthr-solaris.h (__gthread_once): Do not use errno; return the
- error number instead of -1.
- (__gthread_key_create): Any nonzero return value is an error.
- * libgcc2.c (eh_context_initialize): Check for nonzero return
- value from __gthread_once.
- Check that the value of get_eh_context was really changed.
-
-Wed Mar 11 18:26:25 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.h (LOOP_ALIGN): Only align when optimizing.
- * sh.c (find_barrier): Clear inc for CODE_LABELs.
- When not optimizing, calculate alignment for BARRIERs directly.
-
-Wed Mar 11 15:07:18 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (shorten_branches): Remove conditionalizing on
- SHORTEN_WITH_ADJUST_INSN_LENGTH.
- * sh.h, pa.h (SHORTEN_WITH_ADJUST_INSN_LENGTH): Remove.
-
-Wed Mar 11 02:37:41 1998 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (find_basic_blocks_1): Keep the cfg accurate when removing
- an unconditional jump around deleted blocks.
-
-Mon Mar 9 12:02:23 1998 Jim Wilson <wilson@cygnus.com>
-
- * profile.c (branch_prob): If see computed goto, call fatal instead of
- abort.
-
- * config/mips/sni-svr4.h (CPP_PREDEFINE): Add -DSNI and -Dsinix.
-
- * configure.in (alpha-dec-osf): Add default case for osf* to switch.
- Patch from Bruno Haible.
-
- * function.c (put_reg_into_stack): Copy MEM_IN_STRUCT_P from new.
- (assign_parms): Set aggregate if hide_last_arg and last_named.
-
-Mon Mar 9 19:57:56 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (shorten_branches): Initialize insn_addresses.
-
-Mon Mar 9 14:10:23 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.h (MUST_PASS_IN_STACK): Define.
-
-Sun Mar 8 13:01:56 1998 Jeffrey A Law (law@cygnus.com)
-
- * final.c (shorten_branches): Fix minor logic error in
- ADDR_DIFF_VEC shortening support.
-
-Sun Mar 8 02:17:42 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Mar 7 00:54:15 1998 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (is_cfg_nonregular): Change return type to
- an int. No longer compute "estimated" number of edges. Use
- computed_jump_p instead of duplicating the code. Fixup/add
- some comments.
- (build_control_flow): Returns a value indicating an irregularity
- in the cfg was detected. Count the number of edges in the cfg.
- allocate various edge tables.
- (find_rgns): No longer look for unreachable blocks.
- (schedule_insns): Do not allocate memory for edge tables here.
- Free memory for edge tables before returning. Do not perform
- cross block scheduling if build_control_flow returns nonzero.
- * flow.c (compute_preds_succs): More accurately determine when
- a block drops in.
-
- * basic-block.h (free_basic_block_vargs): Provide prototype.
-
- * cccp.c (main): Fix dumb mistakes in last change.
-
-Fri Mar 6 21:28:45 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * rtl.h (addr_diff_vec_flags): New typedef.
- (union rtunion_def): New member rt_addr_diff_vec_flags.
- (ADDR_DIFF_VEC_FLAGS): New macro.
-
- * sh.c (output_branch): Fix offset overflow problems.
-
- * final.c (shorten_branches): Implement CASE_VECTOR_SHORTEN_MODE.
- (final_scan_insn): New argument BODY for ASM_OUTPUT_ADDR_DIFF_ELT.
- * rtl.def (ADDR_DIFF_VEC): Three new fields (min, max and flags).
- * stmt.c (expand_end_case): Supply new arguments to
- gen_rtx_ADDR_DIFF_VEC.
- * 1750a.h (ASM_OUTPUT_ADDR_DIFF_ELT): New argument BODY.
- * alpha.h, arc.h, clipper.h, convex.h : Likewise.
- * dsp16xx.h, elxsi.h, fx80.h, gmicro.h, h8300.h : Likewise.
- * i370.h, i386.h, i860.h, i960.h, m32r.h, m68k.h, m88k.h : Likewise.
- * mips.h, mn10200.h, mn10300.h, ns32k.h, pa.h, pyr.h : Likewise.
- * rs6000.h, sh.h, sparc.h, spur.h, tahoe.h, v850.h : Likewise.
- * vax.h, we32k.h, alpha/vms.h, arm/aof.h, arm/aout.h : Likewise.
- * i386/386bsd.h, i386/freebsd-elf.h : Likewise.
- * i386/freebsd.h, i386/linux.h : Likewise.
- * i386/netbsd.h, i386/osfrose.h, i386/ptx4-i.h, i386/sco5.h : Likewise.
- * i386/sysv4.h, m68k/3b1.h, m68k/dpx2.h, m68k/hp320.h : Likewise.
- * m68k/mot3300.h, m68k/sgs.h : Likewise.
- * m68k/tower-as.h, ns32k/encore.h, sparc/pbd.h : Likewise.
- * sh.h (INSN_ALIGN, INSN_LENGTH_ALIGNMENT): Define.
- (CASE_VECTOR_SHORTEN_MODE): Define.
- (short_cbranch_p, align_length, addr_diff_vec_adjust): Don't declare.
- (med_branch_p, braf_branch_p): Don't declare.
- (mdep_reorg_phase, barrier_align): Declare.
- (ADJUST_INSN_LENGTH): Remove alignment handling.
- * sh.c (uid_align, uid_align_max): Deleted.
- (max_uid_before_fixup_addr_diff_vecs, branch_offset): Deleted.
- (short_cbranch_p, med_branch_p, braf_branch_p, align_length): Deleted.
- (cache_align_p, fixup_aligns, addr_diff_vec_adjust): Deleted.
- (output_far_jump): Don't use braf_branch_p.
- (output_branchy_insn): Don't use branch_offset.
- (find_barrier): Remove checks for max_uid_before_fixup_addr_diff_vecs.
- Remove paired barrier stuff.
- Don't use cache_align_p.
- Take alignment insns into account.
- (fixup_addr_diff_vecs): Reduce to only fixing up the base label of
- the addr_diff_vec.
- (barrier_align, branch_dest): New function.
- (machine_dependent_reorg, split_branches): Remove infrastructure
- for branch shortening that is now provided in the backend.
- * sh.md (short_cbranch_p, med_branch_p, med_cbranch_p): New attributes.
- (braf_branch_p, braf_cbranch_p): Likewise.
- (attribute length): Use new attributes.
- (casesi_worker): Get mode and unsignednedd from ADDR_DIFF_VEC.
- (addr_diff_vec_adjust): Delete.
- (align_2): Now a define_expand.
- (align_log): Now length 0.
-
-Fri Mar 6 14:41:33 1998 Michael Meissner <meissner@cygnus.com>
-
- * m32r.md (right): Correctly check for length == 2, not 1.
-
-Fri Mar 6 14:00:04 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips/mips.h: Prototype `machine_dependent_reorg'.
- (ASM_OUTPUT_ALIGN): Remove unused variable `mask'.
-
-Fri Mar 6 11:43:35 1998 Joern Rennecke (amylaar@cygnus.co.uk)
-
- * final.c (shorten_branches): Restore accidentally removed code.
-
-Fri Mar 6 11:00:49 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * configure.in: Remove duplicate uses of AC_PROG_CC and
- AC_PROG_MAKE_SET.
-
-Fri Mar 6 00:59:30 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in (target_cpu_default2): Correct typo for alphapca56.
-
-Thu Mar 5 23:24:50 1998 Jeffrey A Law (law@cygnus.com)
- Doug Evans (devans@cygnus.com)
-
- * haifa-sched.c (build_jmp_edges): Delete dead function.
- (build_control_flow): Use cfg routines from flow.c.
- (schedule_insns): Remove debugging code accidentally checked
- in earlier today.
-
- * basic-block.h: Add external integer list structures, typdefs,
- accessor macros and function declarations. Similarly for
- basic block pred/succ support and simple bitmap stuff.
- * flow.c: Add functions for integer list, basic block pred/succ
- support and simple bitmap support.
- (compute_dominators): New function to compute dominators and
- post dominators.
- (find_basic_blocks): Split into two functions.
- (life_analysis): Likewise.
- (flow_analysis): Removed. Now handled by calling find_basic_blocks,
- the life_analysis from toplev.c.
- * toplev.c (rest_of_compilation): Call find_basic_blocks, then
- life_analysis instead of flow_analysis.
-
-Thu Mar 5 23:06:26 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * jump.c (jump_optimize): Call mark_jump_label also for deleted
- insns.
- (mark_jump_label): Don't increment ref counts for deleted insns.
-
-Thu Mar 5 09:55:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips/iris6.h (TARGET_DEFAULT): Parenthesize macro definition.
-
- * mips/mips.c: Include stdlib.h and unistd.h.
- (mips_asm_file_end): Add braces around empty body in an if-statement.
- (function_prologue): Wrap variable `fnname' in
- !FUNCTION_NAME_ALREADY_DECLARED. Correct format specifier in fprintf.
- (mips_select_rtx_section, mips_select_section): Declare as void.
-
- * mips/mips.h: Add prototypes for extern functions in mips.c.
- (FUNCTION_ARG_REGNO_P): Add parentheses around && within ||.
- (ENCODE_SECTION_INFO): Add braces around empty body in an
- if-statement.
-
- * mips/mips.md (movdi): Add parentheses around && within ||.
- (movsf, movdf): Likewise.
- (branch_zero, branch_zero_di): Add default case in
- enumeration switch.
-
-Thu Mar 5 02:45:48 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha/alpha.h (TARGET_WINDOWS_NT, TARGET_OPEN_VMS): Just make them
- real constants, since they can't be changed.
- (TARGET_AS_CAN_SUBTRACT_LABELS): New.
- * alpha/alpha.md (builtin_setjmp_receiver): Use it.
- * alpha/osf.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
- * alpha/osf2or3.h (TARGET_AS_CAN_SUBTRACT_LABELS): New.
- * alpha/vms.h (TARGET_OPEN_VMS): New.
- * alpha/win-nt.h (TARGET_WINDOWS_NT): New.
-
-Thu Mar 5 02:41:27 1998 Richard Henderson <rth@cygnus.com>
-
- * reload.c (find_reloads): Always force (subreg (mem)) to be
- reloaded if WORD_REGISTER_OPERATIONS.
-
-Thu Mar 5 02:14:44 1998 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (free_list): Rename from free_pnd_lst.
- (free_pending_lists): Rename free_pnd_lst uses.
- (remove_dependence): Place expunged element on unused_insn_list.
- (alloc_INSN_LIST, alloc_EXPR_LIST): New. Change all callers of
- gen_rtx_*_LIST and alloc_rtx to use them.
- (compute_block_backward_dependences): Free the reg_last_* lists.
-
-Thu Mar 5 00:05:40 1998 Jeffrey A Law (law@cygnus.com)
-
- * cccp.c (main): Avoid undefined behavior when setting pend_includes
- and pend_files.
-
-Wed Mar 4 21:58:25 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
-
- * rs6000/linux.h: Don't define DEFAULT_VTABLE_THUNKS to 1 if
- USE_GNULIBC_1 is defined.
- * configure.in: Add a new case powerpc-*-linux-gnulibc1 which
- includes the t-linux-gnulibc1 fragment.
-
-Wed Mar 4 12:11:36 1998 Jim Wilson <wilson@cygnus.com>
-
- * mips.md (movdf_internal1a): Fix misplaced parenthesis in condition.
-
-Wed Mar 4 18:47:48 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (final_scan_insn, case CODE_LABEL: Cleanup.
-
-Wed Mar 4 15:51:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (shorten_branches): Tag the loop alignment onto the
- first label after NOTE_INSN_LOOP_BEG even if there is an
- intervening insn.
-
-Tue Mar 3 21:48:35 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (insn_current_reference_address):
- Use SEQ instead of BRANCH as argument to align_fuzz, to get a
- proper alignment chain.
-
- * final.c (max_labelno): New static variable.
- (final_scan_insn): Check max_labelno before outputting an
- alignment for a label.
- (shorten_branches): Remove unused variable length_align.
-
-Tue Mar 3 14:27:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * sparc.c (ultrasparc_adjust_cost): Add default case in
- enumeration switch.
-
- * sparc.h: Add prototypes for extern functions defined in
- sparc.c.
-
-Tue Mar 3 10:00:11 1998 Nick Clifton <nickc@cygnus.com>
-
- * toplev.c: Only generate <name>.dbr file when dumping RTL if
- DEALY_SLOTS is defined.
-
-Tue Mar 3 07:36:37 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * reorg.c (fill_eager_delay_slots): Add new argument delay_list
- in call to fill_slots_from_thread.
-
-Mon Mar 2 13:45:03 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha/linux.h (CPP_PREDEFINES): Correct connecting whitespace
- to SUB_CPP_PREDEFINES. Reported by asun@saul4.u.washington.edu.
-
-Mon Mar 2 22:59:28 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (insn_last_address, insn_current_align, uid_align):
- New variables.
- (in_align_chain, align_fuzz, align_shrink_fuzz): New functions.
- (insn_current_reference_address): Likewise.
- (shorten_branches, final_scan_insn): Implement LABEL_ALIGN,
- LABEL_ALIGN_AFTER_BARRIER and LOOP_ALIGN target macros.
- (label_to_alignment): New function.
- * genattrtab.c (write_test_expr): If one of LABEL_ALIGN,
- LABEL_ALIGN_AFTER_BARRIER or LOOP_ALIGN is defined, call
- insn_current_reference_address instead of insn_current_address.
- (or_attr_value, write_length_unit_log): New functions.
- (main): Call write_length_unit_log.
- (write_const_num_delay_slots): Output extra '\n'.
- * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE):
- Replace with:
- (LOOP_ALIGN, ALIGN_LABEL_AFTER_BARRIER).
- * i386.h, i386/osfrose.h, i386/svr3dbx.h, m68k.h, sparc.h: Likewise.
- * arc.h, m32r.h (ASM_OUTPUT_LOOP_ALIGN): Replace with:
- (LOOP_ALIGN).
- * i960.h, m88k.h (ASM_OUTPUT_ALIGN_CODE): Replace with:
- (LABEL_ALIGN_AFTER_BARRIER).
- * ns32k/encore.h, ns32k/merlin.h, ns32k.h, ns32k/sequent.h: Likewise.
- * ns32k/tek6000.h: Likewise.
- * i386/gas.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Delete.
- * i386.md (casesi+1): Use ASM_OUTPUT_ALIGN instead of
- ASM_OUTPUT_ALIGN_CODE.
-
-Mon Mar 2 01:05:50 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon Mar 2 00:52:18 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Mar 1 18:25:49 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
-
- * reorg.c (fill_slots_from_thread): Don't steal delay list from target
- if condition code of jump conflicts with opposite_needed.
-
- * reorg.c (fill_slots_from_thread): Mark resources referenced in
- opposite_needed thread. Return delay_list even when cannot get
- any more delay insns from end of subroutine.
-
-Sun Mar 1 18:26:21 1998 Ken Rose (rose@acm.org)
-
- * reorg.c (fill_slots_from_thread): New parameter, delay_list.
- All callers changed.
-
-Sun Mar 1 18:25:37 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
-
- * frame.c (start_fde_sort, fde_split, heapsort, fde_merge,
- end_fde_sort): New functions for fast sorting of an FDE array.
- (fde_insert): Simplified.
- (add_fdes): Change argument list.
- (frame_init): Use the new functions.
-
-Sun Mar 1 18:06:21 1998 Jeffrey A Law (law@cygnus.com)
-
- * ginclude/va-ppc.h (va_arg): Fix typo in long long support.
-
- * i386.c (reg_mentioned_in_mem): Fix dangling else statement.
-
- * fold-const.c (fold_range_test): Always return a value.
-
-Sun Mar 1 17:57:34 1998 Mumit Khan <khan@xraylith.wisc.edu>
-
- * config/i386/winnt.c (i386_pe_unique_section): Put read-only
- data in the text section unless READONLY_DATA_SECTION is defined.
-
-Sun Mar 1 17:48:46 1998 Jeffrey A Law (law@cygnus.com)
-
- * c-parse.in (undeclared variable error): Tweak error message to
- be clearer.
-
-Sun Mar 1 10:22:36 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-1998-02-28 Mark Mitchell <mmitchell@usa.net>
-
- * final.c (final_scan_insn): Undo overzealous removal of `set'.
-
-Sat Feb 28 07:54:03 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * pa.h (CONST_COSTS): When checking the CONST_DOUBLE enumerated
- case, add parentheses to specify the proper order of precedence in
- the if-statement.
-
- * c-aux-info.c: Include string.h/strings.h.
-
- * pa.c: Include stdlib.h.
- (pa_combine_instructions): Prototype the function.
- (pa_can_combine_p, forward_branch_p, shadd_constant_p): Likewise.
- (reloc_needed): Add default case for enumeration switch.
- (remove_useless_addtr_insns): Remove unused variable `all'.
- (hppa_expand_prologue): Add explicit braces to avoid
- ambiguous `else'.
- (output_function_epilogue): Remove unused variable `i'.
- (output_millicode_call): Remove unused variable `link'.
- (shadd_constant_p, forward_branch_p): Make the function static.
- (following_call): Explicitly declare to return int.
- (pa_reorg): Declare as void.
- (pa_combine_instructions): Declare as static void. Add
- parentheses around && within ||.
-
- * pa.h: Add prototypes for pa_reorg, symbolic_operand,
- following_call, function_label_operand, lhs_lshift_cint_operand
- and zdepi_cint_p.
-
- * pa.md: Add parentheses around && within ||.
-
- * cppalloc.c: Include stdlib.h.
-
- * cpperror.c (cpp_print_containing_files): Remove unused variable
- `i'. Fix format specifier in fprintf.
-
- * cse.c (cse_around_loop): Add explicit braces to avoid
- ambiguous `else'.
- (delete_dead_from_cse): Wrap variable `tem' in macro HAVE_cc0.
-
- * expr.c (expand_expr): Add parentheses around && within ||.
-
- * final.c (app_enable): Replace fprintf with fputs where there are
- no format specifiers and no trailing argument after the string.
- Eg, when printing ASM_APP_ON/ASM_APP_OFF.
- (app_disable): Likewise.
- (final_end_function): Likewise.
- (final_scan_insn): Likewise. Remove unused variable `set'.
- (profile_function): Wrap empty if-statement body in {} brackets.
-
- * function.c: Include stdlib.h.
- (pad_below): Wrap prototype and definition in ARGS_GROW_DOWNWARD.
- (reposition_prologue_and_epilogue_notes): Add parentheses
- around assignment used as truth value.
-
- * integrate.c (expand_inline_function): Wrap variable
- `cc0_insn' in macro HAVE_cc0.
-
- * jump.c (jump_optimize): Wrap variable `q' in macro
- HAVE_cc0. Remove unused variable `prev1'.
-
- * libgcc2.c (__bb_exit_trace_func): Add parentheses around &&
- within ||. Fix format specifier in fprintf.
- (__bb_init_prg): Add parentheses around assignment used as
- truth value.
-
- * local-alloc.c: Include stdlib.h.
- (requires_inout): Add parentheses around assignment used
- as truth value.
-
- * loop.c (analyze_loop_iterations): Wrap prototype and definition
- in macro HAVE_decrement_and_branch_on_count.
- (insert_bct, instrument_loop_bct): Likewise.
- (move_movables): Add parentheses around assignment used as
- truth value.
- (consec_sets_invariant_p): Likewise.
- (maybe_eliminate_biv_1): Wrap variable `new' in macro HAVE_cc0.
-
- * objc/objc-act.c: Include stdlib.h.
- (lookup_method_in_protocol_list): Wrap empty else-statement body
- in braces.
- (lookup_protocol_in_reflist): Likewise.
- (objc_add_static_instance): Remove unused variables `decl_expr'
- and `decl_spec'.
- (get_objc_string_decl): Remove unused variable `decl'.
- (generate_static_references): Remove unused variables `idecl' and
- `instance'.
- (check_protocols): Wrap empty else-statement body in braces.
-
- * protoize.c: Include stdlib.h.
- (substr): Add parentheses around assignment used as truth value.
- (abspath): Likewise.
- (shortpath): Likewise.
-
- * regmove.c (fixup_match_1): Add parentheses around assignment
- used as truth value.
-
- * reload.c (push_secondary_reload): Remove unused variable `i'.
- (find_reloads): Add parentheses around assignment used as truth
- value.
-
- * reload1.c: Include stdlib.h.
-
- * rtl.h: Correct typo in prototype of offsettable_memref_p.
-
- * stmt.c (add_case_node): Add parentheses around assignment used
- as truth value.
- (case_tree2list): Likewise.
-
- * tree.c (valid_machine_attribute): Wrap variable `decl_attr_list'
- in macro VALID_MACHINE_DECL_ATTRIBUTE. Wrap variable
- `type_attr_list' in macro VALID_MACHINE_TYPE_ATTRIBUTE.
- (merge_attributes): Add explicit braces to avoid ambiguous
- `else'.
-
- * unroll.c (copy_loop_body): Wrap variable `cc0_insn' in
- macro HAVE_cc0.
-
- * varasm.c: Include stdlib.h.
-
- * system.h: Remove sys/stat.h.
- * gcc.c: Add sys/stat.h.
-
- * genattr.c: Wrap prototype of `free' in NEED_DECLARATION_FREE.
- * genattrtab.c: Likewise.
- * genconfig.c: Likewise.
- * genemit.c: Likewise.
- * genextract.c: Likewise.
- * genflags.c: Likewise.
- * genopinit.c: Likewise.
- * genoutput.c: Likewise.
- * genpeep.c: Likewise.
- * genrecog.c: Likewise.
- * tlink.c: Likewise. Also wrap `getenv' in NEED_DECLARATION_GETENV.
-
-Fri Feb 27 11:02:47 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * invoke.texi: Use @itemx for a secondary item in a @table.
-
- * config/m68k/m68k.md (movsf+1): Optimize moving a CONST_DOUBLE
- zero.
-
-Thu Feb 26 00:13:21 1998 Ian Lance Taylor <ian@cygnus.com>
-
- * choose-temp.c: Fix handling of sys/file.h to work in libiberty.
-
-Wed Feb 25 23:40:54 1998 Jeffrey A Law (law@cygnus.com)
-
- * i386.c (struct machine_function): Add new fields for PIC stuff.
- (save_386_machine_status): Fix argument to xmalloc. Save pic_label_rtx
- and pic_label_name.
- (restore_386_machine_status): Corresponding changes.
- (clear_386_stack_locals): Also clear pic_label_rtx and pic_label_name.
-
-Wed Feb 25 01:31:40 1998 Jeffrey A Law (law@cygnus.com)
-
- * c-parse.y (undeclared variable error): Tweak error message
- to be clearer.
-
-Tue Feb 24 23:54:07 1998 Richard Henderson <rth@cygnus.com>
-
- * flags.h (g_switch_value, g_switch_set): Declare.
- * alpha.c (override_options): Set g_switch_value=8 if not set.
- * alpha/elf.h (CC1_SPEC): New.
- (ASM_SPEC): New.
- (LINK_SPEC): Pass along the -G value we were given.
- (LOCAL_ASM_OP): Remove.
- (ASM_OUTPUT_ALIGNED_LOCAL): Output to .bss or .sbss by size.
- (MAX_OFILE_ALIGNMENT): New.
- (BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP): New.
- (EXTRA_SECTIONS): Add sbss and sdata.
- (SECTION_FUNCTION_TEMPLATE): New.
- (EXTRA_SECTION_FUNCTIONS): Use it.
- (CTORS_SECTION_FUNCTION, DTORS_SECTION_FUNCTION): Remove.
- (SELECT_SECTION): Use sdata when small enough.
- * alpha/linux.h (ASM_SPEC): Remove.
-
-Mon Feb 23 15:09:18 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
- * config.sub (sco5): Fix typo.
-
-Mon Feb 23 18:19:31 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * config/t-linux (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Add macros and
- set to empty.
- * config/t-linux-aout (LIBGCC1, CROSS_LIBGCC1, LIBGCC1_TEST): Likewise.
- * config/alpha/t-linux: Remove file.
- * config/sparc/t-linux: Remove file.
- * config/m68k/t-linux (LIBGCC1, CROSS_LIBGCC1): Remove.
- * config/m68k/t-linux-aout (LIBGCC1, CROSS_LIBGCC1): Likewise.
- * configure.in (alpha*-*-linux-gnulibc1*): Use t-linux instead of alpha/t-linux
- for tmake_file.
- (alpha*-*-linux-gnu*): Likewise.
- (sparc-*-linux-gnulibc1*): Use t-linux instead of sparc/t-linux for tmake_file.
- (sparc-*-linux-gnu*): Likewise.
-
-Mon Feb 23 10:47:39 1998 Robert Lipe <robertl@dgii.com>
- * collect2.c (ldd_file_name): Bracket declaration with same
- manifests as use.
- (full_real_ld_suffix): Deleted. Variable was calloced and
- written into, but never read.
-
-1998-02-23 Mike Stump <mrs@wrs.com>
-
- * configure.in: Add support for i386-wrs-vxworks configuration.
- * i386/vxi386.h: New file.
-
-Sun Feb 22 21:16:51 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
-
- * tree.c (contains_placeholder_p): Ensure function always returns
- a value.
- * sparc.md (movdi_sp64_insn): Add default case in enumeration switch.
- (movsf_const_insn, movdf_const_insn, movtf_const_insn): Likewise.
-
-Sun Feb 22 20:58:19 1998 Jeffrey A Law (law@cygnus.com)
-
- * vms.h (SELECT_SECTION): Use TREE_CODE_CLASS correctly.
-
-1998-02-22 Paul Eggert <eggert@twinsun.com>
-
- * config/sparc/sol2-sld.h (LINKER_DOES_NOT_WORK_WITH_DWARF2):
- Define this new symbol.
- (DWARF2_DEBUGGING_INFO, DWARF_DEBUGGING_INFO): Do not #undef.
- * toplev.c (main): Do not default to DWARF2_DEBUG with -ggdb if
- LINKER_DOES_NOT_WORK_WITH_DWARF2 is defined.
-
-Sun Feb 22 20:07:32 1998 Jim Wilson <wilson@cygnus.com>
-
- * iris5.h (DWARF2_UNWIND_INFO): Define to 0.
- * iris5gas.h (DWARF2_UNWIND_INFO): Define to 1.
-
-Sun Feb 22 15:29:48 1998 Richard Henderson <rth@cygnus.com>
-
- * objc/Object.m (-error): Call objc_verror with our va_list.
-
-Sun Feb 22 09:45:39 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * collect2.c (scan_prog_file): Completely cover uses of variable
- `exports' with macro COLLECT_EXPORT_LIST.
-
-Sat Feb 21 20:36:23 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Fri Feb 20 16:22:13 1998 Michael Meissner <meissner@cygnus.com>
-
- * sched.c (schedule_block): Remove code to get arguments from hard
- regs into pseudos early. Same as Aug 25, 1997 change to
- haifa-sched.c.
-
-1998-02-20 Jason Merrill <jason@yorick.cygnus.com>
-
- * collect2.c (main): Still handle !do_collecting for non-AIX targets.
-
-1998-02-16 Mark Mitchell <mmitchell@usa.net>
-
- * toplev.c (rest_of_compilation): Do not defer the output of a
- nested function.
-
-Fri Feb 20 10:39:47 1998 Michael Tiemann <michael@impact.tiemann.org>
-
- * ginclude/va-mips.h (va_arg): Remove trailing space after '\'
- continuation character (line 243).
-
-Fri Feb 20 12:10:26 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * genrecog.c (main): Remove duplicated sentence in emitted comment.
-
-Thu Feb 19 22:36:53 1998 Andrey Slepuhin <pooh@msu.net>
- David Edelsohn <edelsohn@mhpcc.edu>
-
- * collect2.c (XCOFF_SCAN_LIBS): Remove.
- (export_flag): New variable.
- (export_file): #ifdef COLLECT_EXPORT_LIST.
- (import_file, exports, imports, undefined): New variables.
- (libs, cmdline_lib_dirs, libpath_lib_dirs, libpath, libexts): Same.
- (dump_list, dump_prefix_list, is_in_list): New functions.
- (write_export_file): $ifdef COLLECT_EXPORT_LIST.
- (write_import_file, resolve_lib_name): New functions.
- (use_import_list, ignore_library): Same.
- (collect_exit): maybe_unlink import_file and #ifdef.
- (handler): Same.
- (main): New variable importf, #ifdef exportf. Move parsing of
- -shared before general argument parsing. Resolve AIX library
- paths and import libgcc.a symbols. Treat .so shared libraries the
- same as objects and .a libraries. Create alias for object_lst and
- increment it instead of original pointer. Scan AIX libraries as
- objects earlier instead of using scan_libraries. Perform AIX
- tlink later to resolve templates instead of forking ld.
- (GCC_OK_SYMBOL): Ensure symbol not in undef section.
- (GCC_UNDEF_SYMBOL): New macro.
- (scan_prog_file): Loop for members of AIX libraries. Handle
- export/import of ctors/dtors.
- (aix_std_libs): New variable.
- (scan_libraries, XCOFF): Delete.
-
-Thu Feb 19 22:36:52 1998 Robert Lipe <robertl@dgii.com>
-
- * collect2.c (full_real_ld_suffix): #ifdef CROSS_COMPILE.
-
-1998-02-19 Mike Stump <mrs@wrs.com>
-
- * Makefile.in: Use $tooldir for sys-include to match toplevel
- configure.
-
-Thu Feb 19 01:32:37 1998 Jeffrey A Law (law@cygnus.com)
- Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * emit-rtl.c (gen_lowpart_common): Suppress last change if __complex__.
-
- * emit-rtl.c (hard-reg-set.h): Include.
- (get_lowpart_common): Don't make new REG for hard reg in a
- class that cannot change size.
- * Makefile.in (emit-rtl.o): Depend on hard-reg-set.h.
-
- * combine.c: Revert previous patch.
-
-1998-02-19 Paul Eggert <eggert@twinsun.com>
-
- * config/sparc/sol2-sld.h: New file.
- * configure.in (sparc-*-solaris2*): Use it when using the
- system linker.
-
-Thu Feb 19 00:46:59 1998 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (force_movables): Fix typo.
-
-Thu Feb 19 08:26:30 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * m88k.h: Change file pattern to match reality.
-
-Wed Feb 18 23:19:52 1998 Jeffrey A Law (law@cygnus.com)
-
- * varasm.c (output_constant_pool): Fix dumb thinko in last
- change.
-
- * pa.h (ASM_OUTPUT_FUNCTION_PREFIX): Correctly translate from
- a function name to a section name.
-
-1998-02-18 Doug Evans <devans@cygnus.com>
-
- * tree.h (merge_machine_{type,decl}_attributes): Declare.
- (split_specs_attrs, strip_attrs): Add prototypes.
- * tree.c (merge_machine_{type,decl}_attributes): New functions.
- * c-decl.c (duplicate_decls): Call merge_machine_decl_attributes.
- Update olddecl's attributes too.
- * c-common.c (strip_attrs): New function.
- * c-typeck.c (common_type): Call merge_machine_type_attributes.
- * varasm.c (make_function_rtl): New target macro REDO_SECTION_INFO_P.
- (make_decl_rtl): Likewise.
-
-1998-02-18 Jim Wilson <wilson@cygnus.com>
-
- * c-decl.c (shadow_tag_warned): Call split_specs_attrs.
-
-Wed Feb 18 09:09:50 1998 Jeffrey A Law (law@cygnus.com)
-
- Remove this change until we can fix it correctly.
- * collect2.c: Bracket declaration of 'exportf' and
- 'full_real_ld_suffix'.
-
-Wed Feb 18 08:44:25 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
-
- * Makefile.in (STAGESTUFF): Add genrtl.c, genrtl.h and gengenrtl.
-
-Tue Feb 17 23:30:20 1998 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
-
- * c-common.c (c_expand_start_cond, c_expand_end_cond,
- c_expand_start_else): Don't warn about non-ambiguous else even if
- braces are missing.
-
-Tue Feb 17 23:56:50 1998 Robert Lipe <robertl@dgii.com>
-
- * sco5.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT,
- ASM_OUTPUT_LONG_DOUBLE): Delete. Use the ones from i386.h
- instead.
-
-Tue Feb 17 22:56:14 1998 Richard Henderson <rth@cygnus.com>
-
- * combine.c (simplify_rtx): Obey CLASS_CANNOT_CHANGE_SIZE when
- simplifying a subreg of a hard reg.
- (expand_compound_operation): Likewise.
- (force_to_mode): Likewise.
-
-Tue Feb 17 22:37:22 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c: Include "system.h" to get stdlib.h and stdio.h.
- (lshift_double): Add parentheses around + or - inside shift.
- (rshift_double): Likewise.
- (size_int_wide): Explicitly set type of `bit_p' to `int'.
-
- * Makefile.in (fold-const.o): Depend on system.h.
-
- * Makefile.in (gcc.o): Depend on system.h, in accordance with last
- change to gcc.c.
-
- * haifa-sched.c: Include "system.h" to get <stdlib.h> and <stdio.h>.
- (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
- (sched_note_set): Remove unused parameter `b', all callers changed.
- (schedule_block): Likewise for `rgn'.
- (split_hard_reg_notes): Likewise for `orig_insn'.
- (check_live): Likewise for `trg'.
- (update_live): Likewise.
- (check_live_1): Explicitly declare variable `i' as int.
- (update_live_1): Likewise.
- (insn_issue_delay): Remove unused variable `link'.
- (sched_analyze_2): Add default case in enumeration switch.
- (schedule_insns): Remove unused variable `i'.
-
- * Makefile.in ($(SCHED_PREFIX)sched.o): Depend on system.h.
-
-Tue Feb 17 22:31:04 1998 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (rtx_equal_for_loop_p): Add some braces to disambiguate
- a dangling else clause.
-
-Tue Feb 17 21:28:12 1998 Gavin Koch <gavin@cygnus.com>
-
- * mips/mips.h (CAN_ELIMINATE): Don't eliminate the frame
- pointer for the stack pointer in MIPS16 and 64BIT.
-
-Tue Feb 17 21:17:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * rtl.h (force_line_numbers, restore_line_number_status): Declare.
- * emit-rtl.c (force_line_numbers, restore_line_number_status):
- New functions.
- * stmt.c (struct nesting): Replace seenlabel with line_number_status.
- (expand_start_case): Adjust to this change.
- (check_seenlabel): New function.
- (pushcase, pushcase_range, expand_endcase): Use it.
-
-Tue Feb 17 10:14:32 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * i386.md (adddi3): Add =!r,0,0,X alternative.
-
-Mon Feb 16 16:13:43 1998 David Edelsohn <edelsohn@mhpcc.edu>
-
- * rs6000.h (MY_ISCOFF): Add numeric value of U803XTOCMAGIC.
- * x-aix31 (INSTALL): Delete.
-
-Mon Feb 16 09:24:32 1998 Gavin Koch <gavin@cygnus.com>
-
- * mips/mips.c (mips_expand_epilogue): Update tsize_rtx if
- tsize changes to something other than zero.
-
-Mon Feb 16 09:11:48 1998 Gavin Koch <gavin@cygnus.com>
-
- * ginclude/va-mips.h: Replace casts of pointers to int with
- casts of pointers to __PTRDIFF_TYPE__.
-
-Mon Feb 16 08:17:14 1998 John Carr <jfc@mit.edu>
-
- * loop.c (strength_reduce, record_biv, record_giv): Use
- HOST_WIDE_INT_PRINT_DEC to print CONST_INT values.
-
-1998-02-16 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.c (first_rtl_op): New fn.
- (unsave_expr_now): Use it.
- * print-tree.c (print_node): Likewise.
- * tree.c (has_cleanups): New fn.
- * fold-const.c (fold, case CLEANUP_POINT_EXPR): Use it. Be more
- conservative about pushing the cleanup point down.
- * tree.h: Declare them.
-
-Sun Feb 15 23:28:44 1998 Jeffrey A Law (law@cygnus.com)
-
- * toplev.c (flag_schedule_reverse_before_reload): Delete variable.
- (flag_schedule_reverse_after_reload): Likewise.
- (f_options): Remove reverse scheduling support.
- * flags.h (flag_schedule_reverse_before_reload): Delete declaration.
- (flag_schedule_reverse_after_reload): Likewise.
- * haifa-sched.c (rank_for_schedule): Remove support for reverse
- scheduling.
-
-Sun Feb 15 21:33:55 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcc.c: Get system includes, prototypes and macros via "system.h"
- instead of doing it manually. Change all calls of the ctype
- macros to custom versions defined in "system.h".
-
- * system.h: Fix return type of bcmp prototype from `void' to `int'.
- Make bcopy, bcmp and bzero prototypes explicitly `extern'.
- Add a prototype for getenv.
-
-Sun Feb 15 17:05:41 1998 Jim Wilson <wilson@cygnus.com>
-
- * mips/mips.h (INITIAL_ELIMINATION_OFFSET): Readd Jun 6 change.
-
-Sun Feb 15 15:23:15 1998 John Carr <jfc@mit.edu>
-
- * alias.c: Include <stdlib.h> and <string.h>.
- (init_alias_analysis): Pass NULL_RTX instead of 0 to record_set.
-
-Sat Feb 14 11:23:09 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Feb 14 05:08:21 1998 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.md (movsfcc): Also validate operands[3] when compiling hard
- float.
- (movdfcc): Only accept fpu_add_operand for operands[3].
-
- * arm/t-semi (STMP_FIXPROTO): Define to nothing.
- * arm/t-semiaof (STMP_FIXPROTO): Likewise.
-
-Sat Feb 14 02:02:41 1998 Jeffrey A Law (law@cygnus.com)
-
- * varasm.c (output_constant_pool): Bring back 'done' label inside
- an appropriate #ifdef.
-
- * bitmap.c (bitmap_element_allocate): Wrap variable 'i' in an
- appropriate #ifdef.
- (bitmap_copy, bitmap_operation): Likewise.
- * combine.c (combinable_i3pat): Similarly for 'src'.
- * function.c (fixup_var_refs_1): Similarly for 'outerdest'.
- (locate_and_pad_parm): Similarly for 'reg_parm_stack_space'.
- * regclass.c (copy_cost): Similarly for 'secondary_class'.
- * reload.c (make_memloc): Similarly for 'i'.
- (find_reloads_address_1): Similarly for 'link'.
- * reload1.c (reload): Similarly for 'previous_frame_pointer_needed'.
- (emit_reload_insns): Similarly for 'second_reloadreg'.
- * unroll.c (iteration_info): Similarly for 'v'.
-
- * caller-save.c (insert_save_restore): Remove unused variable 'i'.
- * calls.c (expand_call): Similarly for 'i'.
- (emit_library_call, emit_library_call_value): Similarly for 'mode'.
- * fold-const.c (strip_compound_expr): Similarly for 'type'.
- * function.c (fixup_var_refs_1): Similarly for 'width'.
- (fixup_memory_subreg): Similarly for 'saved'.
- (locate_and_pad_parm): Similarly for 'boundary_in_bytes.'
- (setjmp_protect): Similarly for 'sub'.
- (thread_prologue_and_epilogue_insns): Similarly for 'insn'.
- * loop.c (record_giv): Similarly for 'p'.
- (combine_givs): Similarly for 'temp_iv'.
- (indirect_jump_in_function_p): Similarly for 'is_indirect_jump'.
- * recog.c (validate_replace_rtx_1): Similarly for 'width'.
- * tree.c (get_set_constructor_bytes): Similarly for 'vals'.
- * unroll.c (unroll_loop): Similarly for 'copy'.
- (iteration_info): Similarly for 'b'.
- * varasm.c (assemble_string): Similarly for 'i'.
- * i386.h (LEGITIMIZE_ADDRESS): Similarly for 'orig_x'.
-
-1998-02-13 Martin von Loewis <loewis@informatik.hu-berlin.de>
-
- * c-lang.c (lang_print_xnode): New function.
- * objc/objc-act.c (lang_print_xnode): Likewise.
- * print-tree.c (print_node): Call it
-
-Fri Feb 13 14:38:34 1998 Jim Wilson <wilson@cygnus.com>
-
- * dwarf2out.c (decl_scope_node): New type.
- (decl_scope_table): Change type to use it.
- (decl_scope_table_allocated, decl_scope_depth): Change type to int.
- (push_decl_scope): Use new type. New locals containing_scope, i.
- Add code to handle setting previous field.
- (scope_die_for): Change type of local i to int. Add code to use
- previous field.
- (dwarf2out_init): Use new type.
-
-1998-02-13 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c (emit_throw): Lose throw_used.
-
-Fri Feb 13 20:36:05 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sched.c (update_flow_info, REG_WAS_0): Ignore if setting insn
- was deleted.
- * haifa-sched.c (update_flow_info, REG_WAS_0): Likewise.
-
-Fri Feb 13 12:18:40 1998 Jeffrey A Law (law@cygnus.com)
-
- * genextract.c (main): Fix typo.
-
-Fri Feb 13 08:41:49 1998 Robert Lipe <robertl@dgii.com>
-
- * c-lang.c (finish_file): Bracket declaration of static_ctors,
- static_dtors.
-
- * calls.c (expand_call): Bracket declaration of 'rtx_before_call',
- 'old_stack_arg_under_construction'
- (emit_library_call): Bracket declaration of 'upper_bound',
- 'lower_bound', 'i', 'reg_parm_stack_space'
- (emit_library_call_value): Likewise.
- (store_one_arg):
-
- * collect2.c: Include <unistd.h> when appropriate.
- Bracket declaration of 'exportf' and 'full_real_ld_suffix'.
-
- * emit-rtl.c (prev_cc0_setter): Remove unused variable 'link'.
-
- * explow.c (plus_constant_for_output_wide): Remove unused variable
- 'code'.
- (memory_address): Remove unused variable 'orig_x'.
-
- * genattrtab.c (make_canonical): Remove unreferenced label 'cond:'.
- (write_const_num_delay_slots): Remove unused variable 'i'.
-
- * genopinit.c (main): Remove unused variables 'dummy', 'insn_ptr'.
- (gen_insn): Remove unused variable 'obstack_ptr'.
-
- * libgcc2.c (__bb_exit_func): Remove unused variables 'ret',
- 'j', 'tmp', 'i'.
- (__bb_exit_trace_func): Remove unused variable 'e'.
-
- * optabs.c (expand_binop): Remove unused variables 'lhs', 'rhs',
- 'funexp'.
- (expand_unop): Remove unused variable 'funexp'.
- (expand_complex_abs): Remove unused variable 'funexp'.
- (init_optabs): Bracket declaration of 'j'.
- (init_complex_libfuncs): Deleted. Dead static function.
-
- * profile.c (branch_prob): Remove unused variables 'insn', 'dest'.
-
- * reg-stack.c: Fix typo in proto for 'get_asm_operand_lengths'
- (reg_to_stack): 'initialized', 'before_function_beg'
- explicitly type as ints instead of defaulting.
- (emit_swap_insn): Remove unused variable 'i2'.
- (compare_for_stack_reg): Remove unused variable 'src_note'.
-
- * rtlanal.c (computed_jump_p): Remove unused variable 'computed_jump'.
-
- * sched.c (actual_hazard): Bracket declaration of 'this_cost'.
-
- * stmt.c (add_case_node): Add parens for assignment used as truth.
- (all_cases_count): Remove unused variable 'count_high'.
- (mark_seen_cases): Remove unused variable 'i'.
- (check_for_full_enumeration_handling): Remove unused variable 't'.
- Bracket declaration of 'all_values', 'l'.
-
- * tlink.c: Include <stdlib.h>, <unistd.h>, <string.h>/<strings.h>.
-
- * varasm.c (assemble_string): Remove unused variable 'i'.
- (immed_double_const): Remove unused variable 'in_current_obstack'.
- (immed_real_const_1): Likewise.
- (output_constant_pool): Remove unreferenced label 'done'.
- (output_constant): Remove unused variable 'x'.
-
- * i386/i386.h (ENCODE_SECTION_INFO): TREE_PUBLIC is an int, not
- a string.
-
- * i386/sco5.h (ASM_OUTPUT_ASCII): Add parens for assignment used
- as truth.
-
-Fri Feb 13 10:21:41 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * combine.c (can_combine_p): Handle USEs in PARALLELs.
-
-Fri Feb 13 01:34:14 1998 H.J. Lu (hjl@gnu.org)
-
- * config/linux.h (LIB_SPEC): Add -lc for -shared if
- USE_GNULIBC_1 is not defined.
- * config/sparc/linux.h; Likewise.
-
- * config/sparc/linux64.h (LIB_SPEC): Add -lc for -shared.
-
- * config/alpha/linux-elf.h (LIB_SPEC): New. Defined if
- USE_GNULIBC_1 is not defined.
-
-Fri Feb 13 01:29:29 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
-
- * rs6000/sysv4.h (ENDFILE_SPEC): Add missing %(endfile_linux)
- for -mcall-linux.
-
-Fri Feb 13 01:23:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h: New file to get common systems includes and various
- definitions and declarations based on autoconf macros.
-
-Fri Feb 13 00:46:19 1998 Jeffrey A Law (law@cygnus.com)
-
- * cccp.c (new_include_prefix): Correctly handle -I./.
-
-Thu Feb 12 20:16:35 1998 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.md: Replace gen_rtx (CONST_INT,...) with GEN_INT.
-
-Thu Feb 12 16:45:17 1998 Robert Lipe <robertl@dgii.com>
-
- * expr.c (expand_assignment): Correct typo exposed by -Wall.
- offset should have been a truth value, not an assignment.
-
-Thu Feb 12 15:26:50 1998 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (delete_dead_from_cse): If a libcall produces a constant
- result and that result can be substituted into SET_SRC of the
- insn with the REG_RETVAL note, then perform the substitution
- and delete the libcall.
-
-Thu Feb 12 14:04:09 1998 Gavin Koch <gavin@cygnus.com>
-
- * mips.md (trucndihi2,truncdiqi2): Change these to support
- mips16.
-
-Thu Feb 12 11:34:55 1998 Gavin Koch <gavin@cygnus.com>
-
- * mips/mips.c (movdi_operand): Direct references to symbols
- that arn't mips16 consts in mips16 mode arn't valid operands.
-
- * mips/mips.c (mips_move_2words): Add gprel handling.
-
-Thu Feb 12 11:18:37 1998 Gavin Koch <gavin@cygnus.com>
-
- * mips.md (extendsidi2): Allow extension to/from a non-mips16
- register.
-
-Thu Feb 12 00:04:16 1998 Marc Lehmann <pcg@goof.com>
-
- * i386.c: Conditionally include <stdlib.h>, <string.h>, and
- <strings.h>.
-
-Wed Feb 11 11:43:34 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (WARN_CFLAGS): New variable.
- (bootstrap, bootstrap2, bootstrap3, bootstrap4): Use it.
-
-1998-02-11 Mark Mitchell <mmitchell@usa.net>
-
- * config/i386/i386.c (reg_mentioned_in_mem): Don't abort when
- falling through default case in switch.
- (i386_aligned_p): Likewise.
-
-Wed Feb 11 12:59:56 1998 Lee Iverson <leei@Canada.AI.SRI.COM>
-
- * mips/mips.h (mips_abi_string): Correct typo in comment.
-
-Wed Feb 11 08:29:56 1998 Gavin Koch <gavin@cygnus.com>
-
- * mips/mips.md (movdi): These PLUS's need to be Pmode.
-
-Wed Feb 11 01:47:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (dwarf2out.o, emit-rtl.o, jump.o, cse.o, unroll.o,
- reorg.o, regmove.o): Depend on insn-codes.h, it gets included
- indirectly via expr.h.
-
-Wed Feb 11 01:44:13 1998 Richard Henderson <rth@cygnus.com>
-
- * stor-layout.c (layout_type): Do upper - lower in the native type,
- so as to properly handle negative indices.
-
-Wed Feb 11 01:35:55 1998 Robert Lipe <robertl@dgii.com>
-
- * except.c (start_dynamic_cleanup): Remove unused variable 'dhc'.
- (expand_eh_region_start_tree): Remove unused variable 'note'.
- (exception_optimize): Remove unused variable 'regions'.
- (expand_builtin_eh_stub): Remove unused variable 'temp'.
- (copy_eh_entry): Deleted. Dead function.
-
- * expr.c (move_block_to_reg): Bracket declaration of 'pat' and
- 'last' with same #if HAVE_load_multiple as use of it.
- (move_block_from_reg): Likewise.
- (emit_move_insn_1): Remove unused variable 'insns'.
- (store_constructor): Bracket declaration of startb, endb with
- #if TARGET_MEMFUNCTIONS. Remove unused variables 'set_word_size'
- 'target', and 'xtarget'.
- (expand_builtin_setjmp): Remove unused variables 'op0',
- 'next_arg_reg', 'old_inhibit_defer_pop'.
- (expand_builtin): Remove unused variable 'offset'.
- (do_store_flag): Remove unused variables 'pattern', 'jump_pat'.
- (emit_queue): Add parens for assignment used as conditional.
- (expand_expr): Case TARGET_EXPR: Remove unused variable 'temp'.
-
-Wed Feb 11 01:30:49 1998 Marc Lehmann <pcg@goof.com>
-
- * i386.c: Added include for recog.h.
- (override_options): Removed unused variable p. Initialized regno to
- avoid warning.
- (order_regs_for_local_alloc): Initialized regno to avoid warning.
- (legitimize_address): Likewise for 'other'.
- (i386_aligned_reg_p): Added default case with abort ().
- (print_operand): Likewise.
- (reg_mentioned_in_mem): Likewise.
- (ix86_expand_binary_operator): Removed unused variables i & insn.
- (ix86_expand_unary_operator): Removed unused variable insn.
- (output_fp_cc0_set): Removed unused variable unordered_label.
-
-Wed Feb 11 01:23:03 1998 John F. Carr <jfc@mit.edu>
-
- * i386.c, i386.h, i386.md: Change gen_rtx (X, ...) to gen_rtx_X (...).
- Use GEN_INT instead of gen_rtx (CONST_INT). Make printf arguments
- and format string match.
-
-Wed Feb 11 01:17:39 1998 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (life_analysis): Do not consider the stack pointer live at
- the end of a function if the function calls alloca.
- (mark_used_regs): Similarly.
-
-1998-02-10 John F Carr <jfc@mit.edu>
-
- * config/sparc/sparc.md (movdi_v8plus): Output stx on alternative
- 1, fzero on alternative 8.
-
-Tue Feb 10 09:02:19 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * rs6000.c (setup_incoming_varargs): Always set rs6000_sysv_varargs_p.
-
-Tue Feb 10 03:35:43 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (find_reloads_toplev): Handle arbitrary non-paradoxical
- SUBREGs of CONST_INTs.
-
-Mon Feb 9 17:52:36 1998 John Carr <jfc@mit.edu>
-
- * mips.c (print_operand, function_prologue): Make printf format
- match argument type.
-
-Mon Feb 9 02:37:25 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.c (alpha_return_addr): Remove unused variable `first'.
- (alpha_ra_ever_killed): Remove unused variables `ra' and `i'.
- (output_epilog): Remove unused variable `frame_size_from_reg_save'.
-
-Sun Feb 8 14:56:03 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * loop.c (strength_reduce): When placing increment for auto-inc
- case, do comparison in loop order.
-
-Sun Feb 8 13:21:38 1998 John Carr <jfc@mit.edu>
-
- * bitmap.c (bitmap_debug_file): HOST_PTR_PRINTF converts a pointer,
- not a HOST_WIDE_INT.
-
- * calls.c (expand_call): Change test of expand_inline_function
- return value to stop compiler warning.
-
- * genattrtab.c (RTL_HASH): Cast pointer to long, not HOST_WIDE_INT.
-
-Sun Feb 8 12:04:24 1998 Jim Wilson (wilson@cygnus.com)
- Jeff Law (law@cygnus.com)
-
- * regmove.c: Fix various minor formatting problems.
- (optimize_reg_copy_1): Stop search at CALL_INSNs if flag_exceptions
- is true. Make end of basic block tests consistent through regmove.c.
- (optimize_reg_copy_2, optimize_reg_copy_3): Likewise.
- (fixup_match_2, fixup_match_1, regmove_optimize): Likewise.
-
-Sun Feb 8 01:49:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gansidecl.h: Check for a conflicting macro definition before
- attempting to prototype bcopy, bcmp or bzero.
-
-Sun Feb 8 00:09:59 1998 Jeffrey A Law (law@cygnus.com)
-
- * expr.c (clear_pending_stack_adjust): Handle case where a function
- calls alloca, but the user has specified -fomit-fframe-pointer.
-
- * function.c (assign_parms): Fix typo in last change.
-
-Sat Feb 7 23:54:29 1998 Robert Lipe <robertl@dgii.com>
-
- * gcc.c: Include <strings.h>/<string.h>, <stdlib.h>, <unistd.h>,
- <fcntl.h>.
- (free_path_suffix): Remove unreferenced static function.
- (process_command): Remove unused variable temp.
- (default_arg): Remove unused variable i.
- (do_spec_1): Add parens for assignment used as truth value.
- (main): Likewise.
- (validate_all_switches): Likewise.
- (main): Remove unused variables i, first_time>
-
- * c-common.c: Include <stdlib.h> and <string.h>/<strings.h>.
-
- * calls.c (expand_call): Remove unused variables funtree,
- n_regs, and tmpmode.
-
- * dbxout.c, except.c: Include <string.h>/<strings.h>.
-
- * explow.c (plus_constant_for_output_wide): Removed unused
- variable all_constant.
-
- * c-decl.c, genattr.c, genattrtab.c, getconfig.c, genemit.c
- genextract.c, genflags.c, genopinit.c genoutput.c, genpeep.c,
- genrecog.c, global.c, integrate.c , stupid.c : Include
- <stdlib.h>.
-
- * genextract.c (walk_rtx): Remove unused variable link.
-
- * genrecog.c (concat): Remove unreferenced static function.
-
- * prefix.c: Include <string.h>/<strings.h>, <stdlib.h>
-
- * stmt.c: Include <stdlib.h>.
- (expand_asm_operands): Remove unused variable val1.
- (expand_return): Remove unused variable block.
- (pushcase): Remove unused variables l and n.
- (pushcaserange): Likewise.
-
- * unroll.c (unroll_loop): Remove unused variable temp.
-
-Sat Feb 7 23:46:09 1998 Greg McGary <gkm@gnu.org>
-
- * c-decl.c (pushdecl): Set DECL_ORIGINAL_TYPE once only.
-
-Sat Feb 7 15:11:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * aclocal.m4 (GCC_FUNC_PRINTF_PTR): New macro to test the printf
- functions for whether they support the %p format specifier.
- * acconfig.h (HOST_PTR_PRINTF): Insert stub for autoconf.
- * configure.in (GCC_FUNC_PRINTF_PTR): Use it.
- * configure, config.in: Rebuild.
-
-Fri Feb 6 14:20:16 1998 Jim Wilson <wilson@cygnus.com>
-
- * function.c (assign_parms): New variable named_arg, with value
- depending on STRICT_ARGUMENT_NAMING. Use instead of ! last_named.
-
-Fri Feb 6 14:34:28 1998 Gavin Koch <gavin@cygnus.com>
-
- * mips/t-r3900: New - same as t-ecoff but eliminate
- multilibs: mips1 and mips3.
- * configure.in (tx39*): Use new mips/t-r3900.
- * configure: Rebuild.
- * mips/r3900.h (MULTILIB_DEFAULTS): Eliminate mips1.
-
-1998-02-06 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c: Add old_args_size.
- (dwarf2out_args_size): Use it.
- (dwarf2out_begin_prologue): Initialize it.
- (dwarf2out_stack_adjust): If !asynchronous_exceptions, save up
- pushed args until we see a call.
- * final.c (final_scan_insn): Hand CALL_INSNs off to the dwarf2 code
- before outputting them.
-
-1998-02-06 Kriang Lerdsuwanakij <lerdsuwa@scf.usc.edu>
-
- * cplus-dem.c (demangle_template_template_parm): New function.
- (demangle_template): Handle template template parameters.
-
-1998-02-02 Mark Mitchell <mmitchell@usa.net>
-
- * calls.c (expand_call): Don't confuse member functions named
- realloc, setjmp, and so forth with the standard library
- functions of the same names.
-
-Thu Feb 5 21:59:49 1998 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (expand_asm_operands): Correctly identify asm statements
- no output operands.
-
-Thu Feb 5 21:56:06 1998 Mumit Khan <khan@xraylith.wisc.edu>
-
- * c-common.c (decl_attributes): Flag unrecognized attribute
- functions as warnings instead of as errors.
-
-1998-02-05 Marc Lehmann <pcg@goof.com>
-
- * integrate.c (INTEGRATE_THRESHOLD): Inline only small functions
- when -Os is specified.
- * toplev.c (main): Don't disable flag_inline_functions anymore when
- -Os is in effect.
-
-Fri Feb 6 00:27:36 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * regmove.c: Update.
- * flags.h (flag_regmove): Declare.
- * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Don't declare.
- * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2):
- Moved into regmove; changed caller.
- * toplev.c (rest_of_compilation): Call regmove_optimize also for
- expensive_optimizations.
-
-Thu Feb 5 13:38:42 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Thu Feb 5 01:45:19 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
- Undo this change (the problem was actually in reload):
- Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (movqi_i+1): New peephole.
-
-Tue Feb 3 01:11:12 1998 Jeffrey A Law (law@cygnus.com)
-
- * jump.c (jump_optimize): Lose calls to modified_in_p they are
- not needed anymore due to changes elsewhere in jump.c.
-
- * jump.c (jump_optimize): Fix first arg to modified_in_p in
- previous change.
-
-Mon Feb 2 19:18:14 1998 Richard Henderson <rth@cygnus.com>
-
- * expr.c (expand_builtin_setjmp): Accept two new arguments for
- the labels to branch to on first and subsequent executions. Don't
- play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
- and provide it with the jmp_buf. Use only one of
- `builtin_setjmp_receiver' or `nonlocal_goto_receiver',
- and provide the former with the target label.
- (expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
- (expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
- (expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
- insn to replace all of the normal nonlocal_goto code. Don't play
- with __dummy. Correct arguments to nonlocal_goto.
- * expr.h (expand_builtin_setjmp): Update prototype.
- * except.c (start_dynamic_handler): When using builtin_setjmp,
- generate more accurate flow information.
-
- * alpha.md (nonlocal_goto_receiver_osf): Delete.
- (nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
- (builtin_longjmp, builtin_setjmp_receiver): New.
- * sparc.md (update_return): Disambiguate unspec number.
- (nonlocal_goto): Rearrange arguments to match caller in except.c.
- (builtin_setjmp_setup): Rename from setjmp. Match and ignore the
- jmp_buf operand.
- * mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
- (builtin_setjmp_setup*, builtin_longjmp): New.
-
-Mon Feb 2 16:43:10 1998 John Carr <jfc@mit.edu>
-
- * mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
-
-Mon Feb 2 13:06:47 1998 Jim Wilson <wilson@cygnus.com>
-
- * vmsconfig.com: Remove bytecode references.
-
-1998-01-30 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
- -fno-sjlj-exceptions works for a target that defines
- DWARF2_UNWIND_INFO as zero.
-
- * regmove.c (fixup_match_1): Undo last change which removed some
- "useless" code, and add a comment explaining this.
-
-Mon Feb 2 10:47:14 1998 Gavin Koch (gavin@cygnus.com)
-
- * mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
- to TARGET_LONG64.
-
-Mon Feb 2 10:38:41 1998 Klaus Kaempf <kkaempf@progis.de>
-
- * makefile.vms: Remove bytecode references.
- Create genrtl files.
-
-Mon Feb 2 02:08:04 1998 Michael P. Hayes <michaelh@ongaonga.chch.cri.nz>
-
- * jump.c (jump_optimize): Allow conditional loading of floating point
- constants and constants from memory. Reinstalled modified_in_p tests.
-
-Mon Feb 2 01:38:39 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (get_condition): Handle sign-extended constants.
-
-Mon Feb 2 01:22:46 1998 Hans-Peter Nilsson <hp@axis.se>
-
- * expr.c (emit_push_insn): Add code to use movstrti if present.
-
- * expr.c (emit_push_insn): Use same max-move-amount for movstrhi
- and movstrqi as in emit_block_move ().
-
-Mon Feb 2 00:09:52 1998 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * config/m68k/x-next: Remove /NextDeveloper/Headers from
- the directories to fixinclude - /usr/include is a link
- to it and hence its contents are fixed by default.
-
-Sun Feb 1 14:15:33 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
-
- * rs6000/linux.h: Define JUMP_TABLES_IN_TEXT_SECTION.
-
-Sun Feb 1 13:01:15 1998 Klaus Kaempf <kkaempf@progis.de>
-
- * cccp.c (main): Predefine __VMS_VER on VMS.
-
-Sun Feb 1 12:39:53 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * expr.c (get_inner_reference): Use sbitsizetype for type sizes.
- * fold-const.c (size_int): Replace with
- (size_int_wide).
- (make_bit_field_ref): Use bitsize_int for bit position.
- * stor-layout.c (sizetype): Delete.
- (sizetype_tab, sbitsizetype, ubitsizetype): Declare.
- (layout_record, layout_union, layout_type):
- Use bitsize_int for bit size.
- (set_sizetype): New function.
- (make_signed_type, make_unsigned_type): Use it.
- * c-decl.c (init_decl_processing): Likewise.
- * tree.h (size_int): Don't delcare, #define.
- (size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
- (set_sizetype): Declare.
- (bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
- Define.
- * c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
- Convert result to sizetype.
- (really_start_incremental_init, push_init_level):
- Set type of constructor_bit_index to sbitsizetype.
- (push_init_level): Use unsigned arithmetic to determine padding.
- (output_init_element): Likewise.
-
-Sun Feb 1 03:32:07 1998 Jeffrey A Law (law@cygnus.com)
-
- * combine.c (simplify_shift_const): Fix typo in last change.
-
-Sun Feb 1 02:50:46 1998 John Carr <jfc@mit.edu>
-
- * combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
- is (truncate (lshiftrt)).
-
-Sun Feb 1 01:06:53 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
- Make sure result winds up in TGT.
- (alpha_expand_unaligned_store): Use expand_binop properly. Allow
- src to be other than DImode.
- (alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
- (alpha_expand_unaligned_store_words): Likewise.
- (alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
- that source and destination are separately optimized for alignment.
- (alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
-
-Sun Feb 1 01:55:09 1998 Jeffrey A Law (law@cygnus.com)
-
- * mips.md (adddi3_internal_2): Be consistent with adddi3 expander
- with handling of -32768.
-
-Sun Feb 1 01:48:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
- shell variable argument instead of only hard coded functions.
- (GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
-
- * configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
- call. Collapse multiple calls to GCC_NEED_DECLARATION into one
- call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
- declarations for bcopy, bcmp and bzero.
-
- * acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
-
- * gansidecl.h: If we have bcopy but don't declare it, then do so.
- Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
- bzero, index and rindex if they aren't already present.
-
-Sat Jan 31 11:26:58 1998 Jeffrey A Law (law@cygnus.com)
-
- * toplev.c (close_dump_file): Wrap function prototype for
- argument "func" in PROTO.
- (dump_rtl): Likewise.
-
-Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
-
- * sparc.c (sparc_override_options): Make v8plus and ultrasparc set
- MASK_V8PLUS.
- (output_function_epilogue): Omit epilogue if nothing drops through.
- (output_move_double): Suppress int ldd usage on ultrasparc and v9.
- (registers_ok_for_ldd_peep): Likewise.
- (print_operand): Suppress b,a on ultrasparc. Let Y accept a constant.
- (ultrasparc_adjust_cost): New function.
- (sparc_issue_rate): New function.
- * sparc.h (MASK_VIS, TARGET_VIS): New.
- (MASK_V8PLUS, TARGET_V8PLUS): New.
- (TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
- (TARGET_SWITCHES): Add vis and v8plus.
- (REG_CLASS_FROM_LETTER): Accept d and b for VIS.
- (REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
- (RTX_COSTS): Use TARGET_HARD_MUL.
- (ADJUST_COST): Call ultrasparc_adjust_cost.
- (ISSUE_RATE): New.
- * sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
- of load & fp appropriately.
- (supersparc function units): Adjust for Haifa.
- (ultrasparc function units): Likewise.
- (get_pc_via_rdpc): All v9, not just arch64.
- (movdi_v8plus, movdi_v8plus+1): New.
- (adddi3_sp32+1): New.
- (subdi3_sp32+1): New.
- (movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
- (addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
- (and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
- (xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
- (one_cmpldi2_sp32, one_cmplsi2): Likewise.
- (ldd peepholes): Suppress for v9.
- (return_adddi): Kill redundant test. Arg1 may be arith_operand.
- (return_subsi): Revmove.
-
-Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
-
- * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
- save/restore MEM rtl.
-
-Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
-
- * configure.in: Check for declaration of abort.
- * acconfig.h: Corresponding changes.
- * toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
- be declared.
-
-Thu Jan 29 20:26:12 1998 Jeffrey A Law (law@cygnus.com)
-
- * genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
- uses it.
-
-Thu Jan 29 09:27:56 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Thu Jan 29 10:12:27 1998 Jeffrey A Law (law@cygnus.com)
-
- * configure.in: Check for atoq and atoll.
- * rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
- proper routine for converting ascii into long long values.
-
-Thu Jan 29 01:28:14 1998 Klaus Kaempf <kkaempf@progis.de>
-
- * cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
-
- * vmsconfig.com: Remove bytecode references.
-
- * alpha/vms.h (PREFIX): Define.
-
- * alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
-
- * am-alpha.h: Don't include alloca for OPEN_VMS.
-
- * alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
-
- * alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
- (GCC_INCLUDE_DIR): Define.
-
- * make-cc.com, make-cccp.com, make-cc1.com: Removed.
- * makefile.vms: New file.
-
- * alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
-
- * alpha.c (output_prolog): Output '.name' directive
- for minimal traceback information.
-
- * alpha.c (output_prolog): Don't prepend entry point symbols
- with '$' on OPEN_VMS.
-
-Thu Jan 29 00:25:35 1998 David S. Miller <davem@tanya.rutgers.edu>
- Jeffrey A Law (law@cygnus.com)
-
- * rtl.c (read_rtx): Use atol/atoq based upon disposition of
- HOST_WIDE_INT.
-
- * genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
- as needed.
- * genemit.c (gen_exp): Likewise.
- * genpeep.c (match_rtx): Likewise.
- * genrecog.c (write_tree_1): Likewise.
-
- * c-lex.c (yyprint): Use proper format string based upon
- disposition of HOST_BITS_PER_WIDE_INT.
- (yylex): Put casts in right place for args to build_int_2.
-
-Thu Jan 29 00:24:29 1998 Jeffrey A Law (law@cygnus.com)
-
- * combine.c: Fix typos in Jan27 changes.
-
-Thu Jan 29 00:07:49 1998 Ollivier Robert <roberto@keltia.freenix.fr>
-
- * i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
- (LINK_SPEC): Likewise.
- (STARTFILE_SPEC): Likewise.
-
-1998-01-28 Mike Stump <mrs@wrs.com>
-
- * rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
- reload completes.
- * genattrtab.c (reload_completed): Define.
-
- * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
- comments.
-
-Wed Jan 28 20:11:06 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
- SUBREG_REG if the word count is unchanged, also in the input reload
- case. Disable non-applicable sanity checks.
-
-Wed Jan 28 20:08:26 1998 Jeffrey A Law (law@cygnus.com)
-
- * config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
-
-Wed Jan 28 20:04:43 1998 Ian Lance Taylor <ian@cygnus.com>
-
- * i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
-
-Wed Jan 28 11:45:27 1998 Per Bothner <bothner@cygnus.com>
-
- * dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
- is a TREE_VEC before trying to use it for baseclasses.
- (Chill uses the same field for a different purpose.)
-
- * toplev.c (strip_off_ending): Generalize to endings up to 5 chars.
-
-Tue Jan 27 23:15:55 1998 Lassi A. Tuura <lat@iki.fi>
-
- * config.sub: More accurate determination of HP processor types.
-
-Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
- prototype for `handle_sysv_pragma', and make it static. Add
- parentheses around assignment used as truth value.
-
- * combine.c (combine_instructions): Protect variable `prev' with
- macro HAVE_cc0.
- (can_combine_p): Protect variable `link' with AUTO_INC_DEC.
- (extract_left_shift): Add parentheses around operand of &.
- (merge_outer_ops): Avoid an empty body in an else-statement.
- (gen_rtx_combine): Remove unused variable `i'.
-
- * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
- function monstartup `void'. Likewise for internal_mcount. Add
- `static void' prototype for moncontrol. Reconcile sprintf format
- vs. args.
-
- * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
- Make return type of function_arg_slotno explicitly `int'.
- (reg_unused_after): Add parentheses around assignment used as
- truth value.
- (save_regs): Add explicit braces to avoid ambiguous `else'.
- (function_arg_slotno): Add parentheses around && within ||.
- (function_arg_pass_by_reference): Likewise.
- (sparc_flat_output_function_prologue): Reconcile fprintf format
- vs. args.
-
- * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
- assignment used as truth value.
-
- * cplus-dem.c: Include <stdlib.h>.
- (demangle_signature): Avoid an empty body in an else-statement.
- (do_type): Remove unused variable `lvl'.
-
- * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
- Include <string.h>/<strings.h>.
- (cpp_lex): Remove unused variable `namelen'.
- (cpp_lex): Explicitly declare `num_chars' as an int.
-
- * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
- <unistd.h> instead. Explicitly declare is_system_include
- returning int.
- (make_assertion): Remove unused variable `kt'.
- (cpp_expand_to_buffer): Hide variable `obuf'.
- (output_line_command): Remove unused variables, `line_end',
- `line_cmd_buf' and `len'.
- (macarg): Remove unused variable `arg_start'.
- (special_symbol): Remove unused variable `i'. Add parentheses
- around assignment used as truth value.
- (do_include): Remove unused variables `pcfname' and `retried',
- hide `pcf' and `pcfbuflimit'.
- (do_line): Remove unused variable `i'.
- (finclude): Hide variable `missing_newline'.
- (cpp_handle_options): Remove unused variable `j'.
- (read_token_list): Remove unused variable `eofp'.
- (cpp_error_with_line): Remove unused variable `i'.
- (cpp_warning_with_line): Likewise.
- (cpp_pedwarn_with_line): Explicitly declare `column' as int.
- (cpp_error_from_errno): Remove unused variable `i'.
-
- * cse.c (invalidate): Add parentheses around assignment used as
- truth value.
- (find_best_addr): Move declaration of variable `our_cost' inside
- the conditional macro where its used.
- (fold_rtx): Avoid an empty body in an if-statement.
- (cse_insn): Wrap variables `this_insn_cc0_mode' and
- `this_insn_cc0' in macro HAVE_cc0.
-
- * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
- (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
- (output_uleb128): Likewise.
- (output_sleb128): Likewise.
- (output_cfi): Likewise.
- (output_call_frame_info): Remove unused variables `j', `fde_size'
- and `fde_pad'.
- (comp_unit_has_inlines): Hide declaration as per rest of file.
- (size_of_line_prolog): Correct typo in prototype.
- (add_arange): Likewise.
- (output_aranges): Likewise.
- (add_name_and_src_coords_attributes): Likewise.
- (gen_array_type_die): Likewise.
- (gen_inlined_subroutine_die): Likewise.
- (equate_decl_number_to_die): Remove unused variable `i'.
- (print_die): Reconcile format vs. args in fprintf's.
- (print_dwarf_line_table): Likewise.
- (output_die): Likewise.
- (output_line_info): Likewise.
- (add_subscript_info): Avoid an empty body in an else-statement.
- (gen_subprogram_die): Remove unused variable `fp_loc'.
-
- * dwarfout.c: Explicitly declare `next_pubname_number' as int.
- Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
- macro. Protect `src_coords_attribute' prototype with
- DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
- prototype as in the rest of the file. Likewise for
- `output_pointer_type_die' and `output_reference_type_die'. Remove
- prototype for `type_of_for_scope'.
- (output_unsigned_leb128): Reconcile format vs. args in fprintf.
- (type_attribute): Add explicit braces to avoid ambiguous `else'.
-
- * final.c: Include <stdlib.h> and <string.h>/<strings.h>.
- (shorten_branches): Protect declaration of tmp_length with
- SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
- (profile_function): Protect declaration of `sval' and `cxt'
- variables with appropriate macros.
- (final_scan_insn): Likewise for `note' variable. Add explicit
- braces to avoid empty body in an if-statement.
- (output_asm_insn): Move variable `i' inside macro conditional
- where it is used. Add parentheses around assignment used as truth
- value.
- (asm_fprintf): Likewise, likewise.
-
- * fix-header.c (main): Remove unused variable `done'. Protect
- declaration of `i' with FIXPROTO_IGNORE_LIST.
-
- * pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
-
- * print-rtl.c (print_inline_rtx): Explicitly declare the parameter
- `ind'.
-
- * profile.c: Include <string.h>/<strings.h>.
- (instrument_arcs): Remove unused variables `note', `inverted',
- `zero' and `neg_one'.
- (branch_prob): Avoid empty body in an if-statement.
-
- * regclass.c: Include <stdlib.h>.
- (reg_alternate_class): Explicitly declare parameter `regno'.
-
- * regmove.c (regmove_optimize): Remove unused variable `p'. Add
- parentheses around assignment used as truth value.
- (find_matches): Remove unused variables `output_operand' and
- `matching_operand'.
- (fixup_match_1): Remove statement with no effect: "if (0) ;".
-
- * scan.c (sstring_append): Explicitly declare `count' as int.
- (scan_string): Explicitly declare parameter `init' as int.
-
- * sched.c: Include <stdlib.h>.
- (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
- (rank_for_schedule): Add parentheses around assignment used as
- truth value.
- (schedule_block): Likewise.
- (regno_use_in): Likewise.
- (schedule_insns): Remove unused variable `i'.
-
- * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
- (v_message_with_decl): Remove unused variable `n'.
- (botch): Explicitly declare parameter `s' as char *.
- (main): Add parentheses around assignment used as truth value.
-
- * tree.c (make_node): Protect the variable `kind' with the
- GATHER_STATISTICS macro.
- (real_value_from_int_cst): Move variable `e' inside conditional
- macro area where it is used.
- (tree_last): Add parentheses around assignment used as truth value.
- (build1): Protect the variable `kind' with the GATHER_STATISTICS
- macro.
- (print_obstack_statistics): Reconcile format vs. args in fprintf.
- Protect variables `i', `total_nodes', and `total_bytes' with the
- GATHER_STATISTICS macro.
-
-Tue Jan 27 23:01:55 1998 Mike Stump <mrs@wrs.com>
-
- * m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
- some comments regarding use of dead_or_set_p.
-
-Tue Jan 27 22:14:48 1998 Todd Vierling <tv@pobox.com>
-
- * fixincludes: Tweak fix for struct exception in math.h
-
-Tue Jan 27 17:21:09 1998 Gavin Koch (gavin@cygnus.com)
-
- * mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
- Change mode of registers used to add/sub from
- hard_frame_pointer_rtx from word_mode to Pmode.
-
-Tue Jan 27 11:02:04 1998 Nick Clifton <nickc@cygnus.com>
-
- * v850.h (ASM_OUTPUT_ALIGNED_BSS): Use
- asm_output_aligned_bss() instead of asm_output_bss().
-
- * toplev.c (rest_of_compilation): Replace references to
- stack_reg_dump_file and dbr_sched_dump_file with references to
- rtl_dump_file.
-
-Tue Jan 27 10:22:13 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
-
- * tlink.c (scan_linker_output): Call fclose() for opened files.
-
-Tue Jan 27 05:05:26 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (output_epilog [!VMS]): Don't tag global functions if
- compiling with -fpic -- we want to be able to override symbols
- properly.
- (alpha_expand_block_move): Fix thinko in last change.
-
- * alpha.h (ASM_OUTPUT_MI_THUNK): New define.
- * config/alpha/win-nt.h (ASM_OUTPUT_MI_THUNK): New define.
- * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): New undef.
-
-Tue Jan 27 03:21:23 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (abssf, absdf): Revert last change.
-
-Tue Jan 27 00:26:50 1998 John Carr <jfc@mit.edu>
-
- * dwarf2out.c (dwarf2out_frame_init): Test value of DWARF2_UNWIND_INFO.
- * mips/sni-svr4.h: Define DWARF2_UNWIND_INFO as 0.
-
-Tue Jan 27 00:07:02 1998 Jeffrey A Law (law@cygnus.com)
-
- * emit-rtl.c (gen_lowpart_common): Handle more case where converting
- a CONST_INT into SFmode.
-
-Tue Jan 20 16:01:03 1998 Anthony Green <green@cygnus.com>
-
- * flags.h: New flag (optimize_size).
- * toplev.c (main): Parse -Os option and set optimize_space
- accordingly.
- * gcc.c (default_compilers), cp/lang-specs.h, f/lang-specs.h: Define
- __OPTIMIZE_SIZE__ when compiling with -Os.
- * config/dsp16xx/dsp16xx.h, config/i386/i386.h,
- config/i386/dgux.h, config/i960/i960.h, config/pdp11/pdp11.h,
- config/v850/v850.h (OPTIMIZATION_OPTIONS): New SIZE argument
- to macro.
- * config/i386/i386.c (optimization_options): Accept new SIZE argument.
-
-Mon Jan 26 23:57:39 1998 Manfred Hollstein <manfred@s-direktnet.de>
-
- * libgcc2.c (__clear_insn_cache): On sysV68 enable the memctl
- stuff only if MCT_TEXT is #define'd.
-
-Mon Jan 26 23:52:51 1998 Markus F.X.J. Oberhumer <k3040e4@c210.edvz.uni-linz.ac.at>
-
- * configure.in (i*86-pc-msdosdjgpp): Treat like msdos & go32
- configurations.
-
-Fri Jan 23 09:39:36 1998 Nick Clifton <nickc@cygnus.com>
-
- * toplev.c: Add -dM command line option to dump RTL after the
- machine dependent reorganization pass, if there is one.
- Reorganize RTL dump code, so that only one file handle is
- needed.
-
-Mon Jan 26 12:09:42 1998 Benjamin Kosnik <bkoz@rhino.cygnus.com>
-
- * except.c (check_exception_handler_labels): Disable warning when
- flag_syntax_only.
-
-Mon Jan 26 18:17:32 1998 Jim Wilson <wilson@cygnus.com>
-
- * sparc.c (pic_setup_code): Don't set LABEL_PRESERVE_P.
-
-Mon Jan 26 18:11:30 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * c-decl.c (grokdeclarator): Get parameter tags from
- last_function_parm_tags.
- * dwarfout.c (output_formal_types): Set TREE_ASM_WRITTEN before
- traversing the parameter types.
- (output_type): No early exit for FUNCTION_TYPE / METHOD_TYPE context.
-
-Mon Jan 26 01:44:12 1998 Jeffrey A Law (law@cygnus.com)
-
- * h8300.c (print_operand): Handle CONST_DOUBLE for 'e', 'f', and
- the default case.
- (get_shift_alg): Fix typo.
-
-Sun Jan 25 22:22:04 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_expand_block_move): Copy ADDRESSOF to reg.
-
-Sun Jan 25 22:14:28 1998 Richard Henderson <rth@cygnus.com>
-
- * toplev.c (get_run_time): Make sure each case gets its variables.
-
-Sun Jan 25 22:10:21 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in (build_xm_file): Add auto-config.h if host=build.
- (host_xm_file_list): Don't add $(srcdir) to auto-config.h.
- (build_xm_file_list): Likewise.
- * configure: Rebuild.
-
-Sun Jan 25 22:00:25 1998 Alasdair Baird <alasdair@wildcat.demon.co.uk>
-
- * recog.c (validate_replace_rtx_1): Only perform substitutions
- of arguments to commutative and comparison operators once.
-
-Sun Jan 25 12:30:18 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * sparc.c (output_cbranch): Add default case in
- enumeration switch.
-
- * reorg.c (insn_sets_resource_p): Correct typo in prototype.
- (emit_delay_sequence): Eliminate unused parameter, all callers
- changed.
- (fill_simple_delay_slots): Likewise.
- (fill_slots_from_thread): Likewise.
- (fill_eager_delay_slots): Likewise.
- (mark_referenced_resources): Add default case in enumeration switch.
- (mark_set_resources): Likewise.
- (rare_destination): Likewise.
- (mostly_true_jump): Likewise.
- (find_dead_or_set_registers): Likewise.
- (redirect_with_delay_slots_safe_p): Remove unused variable `slots'.
- (update_reg_unused_notes): Remove unused variable `p'.
- (mark_target_live_regs): Remove unused variables `next' and
- `jump_count'.
- (fill_simple_delay_slots): Remove unused variable `j'.
- (fill_slots_from_thread): Add parentheses around assignment used
- as truth value.
- (dbr_schedule): Likewise.
-
- * objc/Make-lang.in (objc.stage1): Depend on stage1-start.
- (objc.stage2, objc.stage3, objc.stage4): Likewise.
-
-Sun Jan 25 12:13:47 1998 Michael Tiemann <michael@tiemann.org>
-
- * cse.c (simplify_ternary_operation): Don't try to simplify
- IF_THEN_ELSE expressions (created by combine) that don't use
- relational operators.
-
-Fri Jan 23 22:48:24 1998 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (simplify_ternary_operation): Handle more IF_THEN_ELSE
- simplifications.
-
- * crtstuff.c (init_dummy): Keep the epilogue in the init
- section for non-ELF systems.
-
-Fri Jan 23 23:28:59 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (movqi_i+1): New peephole.
-
-Fri Jan 23 15:39:42 1998 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in: Remove remaining bytecode stuff.
- * emit-rtl.c, expr.c: Likewise.
-
-Fri Jan 23 12:41:10 1998 Nick Clifton (nickc@cygnus.com)
-
- * toplev.c (lang_options): Add unknown-pragma options.
-
-Thu Jan 22 23:43:38 1998 Per Bothner <bothner@cygnus.com>
-
- * dwarfout.c (byte_size_attribute): Simplify and fix - don't need
- special (and incomplete) handling for Chill arrays.
-
-Fri Jan 23 00:27:23 1998 John Carr <jfc@mit.edu>
-
- * toplev.c (get_run_time): Call sysconf(_SC_CLK_TCK), when available,
- to get clock rate.
-
-Fri Jan 23 00:19:36 1998 Gavin Koch (gavin@cygnus.com)
-
- * mips.md (muldi3_internal2): Reverse test for TARGET_MIPS16.
-
-1998-01-22 scott snyder <snyder@d0sgif.fnal.gov>
-
- * mips.c (function_prologue): Use HARD_FRAME_POINTER_REGNUM in
- .frame directive instead of FRAME_POINTER_REGNUM.
-
-Fri Jan 23 00:08:55 1998 Robin Kirkham <rjk@mlb.dmt.csiro.au>
-
- * m68k.h (TARGET_SWITCHES): -mcpu32 now clears MASK_68881.
- (MACHINE_STATE_m68010_up): Replaced __mc68332__ with __mcpu32__.
- * m68k/m68k-none.h(CPP_FPU_SPEC): Update relative to TARGET_SWITCHES.
- (CPP_SPEC, ASM_SPEC, CC1_SPEC): Likewise.
- (CPP_SPEC): -m68332 defines both __mc68332 and __mcpu32__.
- * m68k/t-m68kbare (MULTILIB_OPTIONS): Add mcpu32.
- (MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
- (MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
- mcpu32 or m5200.
- * longlong.h: Replace __mc68332__ with __mcpu32__.
-
-Thu Jan 22 19:55:40 1998 Jeff Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Thu Jan 22 14:47:31 1998 Jim Wilson <wilson@cygnus.com>
-
- * reload.c (push_reload): In WORD_REGISTER_OPERATIONS code, add test
- to require the SUBREG mode to be smaller than the SUBREG_REG mode.
- * reload1.c (eliminate_regs): Likewise.
-
-Thu Jan 22 14:49:14 1998 Jeffrey A Law (law@cygnus.com)
-
- * regmove.c (find_matches): Initialize matches->earlyclobber too.
-
-Thu Jan 22 01:40:52 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (abssf2, absdf2): Disable in IEEE mode.
- (negsf2, negdf2): Use proper subtract in IEEE mode.
-
-Tue Jan 20 09:29:09 1998 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in: Remove more bytecode stuff.
- * expr.c, stmt.c, config/msdos/top.sed: Likewise.
- * vax/xm-vms.h, winnt/config-nt.sed: Likewise.
- * f/install.texi, objc/Make-lang.in: Likewise.
-
- * Makefile.in: Remove all bytecode support.
- (OBJS): Make sure last entry is a real object file, not EXTRA_OBJS.
- * emit-rtl.c: Remove all bytecode support.
- * expr.c, expr.h function.c, integrate.c: Likewise.
- * output.h, regclass.c, rtl.h, stmt.c, toplev.c: Likewise.
- * tree.h, varasm.c: Likewise.
- * config/m68k/m68k.h: Likewise.
- * bi-*, bc-*, bytecode*: Delete bytecode related files.
- * modemap.def: Likewise.
-
-Tue Jan 20 09:02:31 1998 Gavin Koch (gavin@cygnus.com)
-
- * mips/mips.md (divsi3,divdi3,modsi3,moddi3,udivsi3,udivdi3,
- umodsi3,umoddi3): Handle mips16 div/mod by a constant.
-
-Mon Jan 19 21:57:00 1998 Richard Henderson <rth@cygnus.com>
-
- * i386.md (push): Prohibit symbolic constants if flag_pic.
- (movsi+1): Likewise for move to non-register.
-
-Mon Jan 19 11:15:38 1998 Jim Wilson <wilson@cygnus.com>
-
- * alpha.c (mode_mask_operand): Accept 0xffffffff on 32 bit host.
- (print_operand): Handle 0xffffffff on 32 bit host.
-
- * configure.in (thread_file): Rename uses before main loop to
- target_thread_file. Initialize to empty in main loop. Set thread_file
- to target_thread_file after main loop if not set.
- * configure: Rebuild.
-
- * genattrtab.c (find_and_mark_used_attributes): Handle CONST_INT.
- (add_values_to_cover): Revert last change (which had no ChangeLog
- entry).
- (simplify_with_current_value_aux): Handle CONST_INT.
-
-Mon Jan 19 10:14:55 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * unprotoize.c: Define UNPROTOIZE first, to actually take effect.
-
-Mon Jan 19 10:11:52 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in: Add cpp stringify test.
- * acconfig.h (HAVE_CPP_STRINGIFY): New tag.
- * gengenrtl.c: Use it.
- * configure, config.in: Rebuild.
-
-Mon Jan 19 09:43:15 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * Makefile.in (genrtl.c genrtl.h): Add dummy command for GNU make.
-
-Mon Jan 19 09:38:18 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in: Find declaration for sbrk.
- * acconfig.h (NEED_DECLARATION_SBRK): New tag.
- * config.in, configure: Rebuild.
- * mips-tfile.c: Properly protect declaration of sbrk and free.
- * toplev.c: Properly protect declaration of sbrk.
-
-Sun Jan 18 20:18:01 1998 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_handle_trap_shadows): Ignore CLOBBERs.
-
-Sun Jan 18 01:54:27 1998 Jeffrey A Law (law@cygnus.com)
-
- * alpha/xm-winnt.h (HAS_INIT_SECTION): Undefine.
-
-Sun Jan 18 00:57:35 1998 Mike Stump <mrs@wrs.com>
-
- * configure.in (i960-wrs-vxworks): Default to latest vxworks release.
-
-Sat Jan 17 23:41:36 1998 David S. Miller <davem@tanya.rutgers.edu>
-
- * combine.c (force_to_mode, nonzero_bits): Correctly optimize
- constant offset computations from objects with known alignment in
- the presence of STACK_BIAS.
-
- * varasm.c (immed_double_const): Add casts to HOST_WIDE_INT where
- necessary.
- (const_hash): Hash val is unsigned long.
- (SYMHASH): Likewise.
-
- * tree.c (TYPE_HASH): Type of hash val is unsigned long.
-
- * print-tree.c (print_node_brief): HOST_PTR_PRINTF format wants a
- char pointer, not HOST_WIDE_INT.
- (print_node): Likewise. Also hash is unsigned long not
- HOST_WIDE_INT.
-
- * cse.c (canon_hash): Hash is unsigned long not HOST_WIDE_INT.
-
- * explow.c (optimize_save_area_alloca): New function for targets
- where SETJMP_VIA_SAVE_AREA is true.
- (allocate_dynamic_stack_space): On SETJMP_VIA_SAVE_AREA targets,
- compute the amount of stack space needed should we find later that
- setjmp is never called by this function, stuff rtl for this inside
- a REG_NOTE of the final SET of stack_pointer_rtx.
- * toplev.c (rest_of_compilation): If SETJMP_VIA_SAVE_AREA and
- current_function_calls_alloca, call optimize_save_area_alloca.
-
-Sat Jan 17 23:22:59 1998 John Wehle (john@feith.com)
-
- * i386.md: Remove redundant integer push patterns.
- Don't bother checking for TARGET_PUSH_MEMORY when
- pushing constants or registers.
-
-Sat Jan 17 22:35:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
- J.J VanderHeijden <J.J.vanderHeijden@student.utwente.nl>
-
- * pexecute.c (pexecute): New function for mingw32. Supports pipes.
- (pwait): New function for mingw32.
-
- * gcc.c (execute): Mingw32 pexecute() supports pipes, but cygwin32
- pipe support is broken for now.
-
-1998-01-17 Lee Iverson <leei@Canada.AI.SRI.COM>
-
- * emit_rtl.c (init_emit_once): Ensure that potential aliasing
- between frame_pointer_rtx, hard_frame_pointer_rtx, and
- arg_pointer_rtx is respected in initialization.
- (init_emit_once): Use gen_rtx_raw_REG() to create
- return_address_pointer_rtx.
-
- * reorg.c: #include "expr.h" for rtx prototypes.
- * Makefile.in (reorg.o): Depend on expr.h
-
-Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za>
-
- * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and
- local_prefix to sub-make invocations.
-
-Sat Jan 17 21:24:16 1998 David T. McWherter <dtm@waterw.com>
-
- * objc-parse.c: Recognize protocol qualifiers in class definitions.
-
-Sat Jan 17 21:16:19 1998 Jeffrey A Law (law@cygnus.com)
-
- * rtl.h: Fix typos.
-
- * acconfig.h (NEED_DECLARATION_ATOL): New declaration to check for.
- * configure.in: Check for atol.
- * rtl.c (atol): Only provide the declaration if NEED_DECLARATION_ATOL.
-
- * rtl.c (read_rtx): Initialize list_rtx to NULL, not NULL_RTX.
-
- * loop.c (find_and_verify_loops): When attempting to move insns from
- inside the loop outside the loop, create a BARRIER if no suitable
- one was found.
-
- * jump.c (jump_optimize): Remove Dec 17, 1997 chance in
- favor of an equivalent change from gcc-2.8.
-
- * i386/x-sco5 (CC): Remove trailing whitespace.
-
-Sat Jan 17 21:09:46 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gengenrtl.c (type_from_format): De-ANSIfy function signature.
- (accessor_from_format): Likewise.
- (xmalloc): New function for use when linking with alloca.o.
-
-Mon Jan 5 02:53:01 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
-
- * frame.c (find_fde): Correct FDE's upper bound.
-
-Fri Jan 16 16:23:52 1998 Richard Henderson <rth@cygnus.com>
-
- * gengenrtl.c (DEF_RTL_EXPR): Provide a K&R compliant version.
-
-Fri Jan 16 10:16:10 1998 Jeffrey A Law (law@cygnus.com)
-
- * calls.c (expand_call): Move #ifdef code out of macro argument
- lists.
- (emit_library_call, emit_library_call_value): Likewise.
-
-Fri Jan 16 00:46:40 1998 Jeffrey A Law (law@cygnus.com)
-
- * rtl.def (INLINE_HEADER): Fix bug exposed by gen_rtx_FOO changes.
-
-Thu Jan 15 01:02:30 1998 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Wed Jan 14 22:49:17 1998 Richard Henderson <rth@cygnus.com>
-
- * alias.c: Change all uses of gen_rtx(FOO...) to gen_rtx_FOO;
- change gen_rtx(expr...) to gen_rtx_fmt_foo(expr...).
- * caller-save.c, calls.c, combine.c, cse.c: Likewise.
- * dwarf2out.c, except.c, explow.c, expmed.c, expr.c: Likewise.
- * final.c, flow.c, function.c, genpeep.c, haifa-sched.c: Likewise.
- * halfpic.c, integrate.c, jump.c, local-alloc.c, loop.c: Likewise.
- * profile.c, recog.c, reg-stack.c, regclass.c, regmove.c: Likewise.
- * reload.c, reload1.c, reorg.c, sched.c, stmt.c, stupid.c: Likewise.
- * unroll.c, varasm.c: Likewise.
- * config/alpha/alpha.c, config/alpha/alpha.md: Likewise.
-
-Wed Jan 14 19:36:08 1998 Gavin Koch (gavin@cygnus.com)
-
- * mips.h: Fix some type-o's from a previous change.
-
-Wed Jan 14 01:26:05 1998 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (check_dbra_loop): Make sure initial value is a
- CONST_INT before trying to normalize it.
-
-Tue Jan 13 23:27:54 1998 Robert Lipe (robertl@dgii.com)
-
- * sco5.h (ASM_OUTPUT_SECTION_NAME): Refresh from ../svr4.h.
-
-Tue Jan 13 22:47:02 1998 Herman ten Brugge <herman@htbrug.net.HCC.nl>
-
- * cppexp.c: Include gansidecl.h
-
-Tue Jan 13 22:43:35 1998 Ian Lance Taylor <ian@cygnus.com>
-
- * svr4.h (LINK_SPEC): Never specify -h.
- * ptx4.h (LINK_SPEC): Likewise.
- * rs6000/sysv4.h (LINK_SPEC): Likewise.
- * sparc/sol2.h (LINK_SPEC): Likewise.
-
-Tue Jan 13 22:39:40 1998 Richard Henderson (rth@cygnus.com)
-
- * c-typeck.c (comptypes): Exit early on NULL input.
-
- * haifa-sched.c (schedule_insns): Correctly remove inter-block
- dependencies after reload.
-
-Tue Jan 13 22:22:31 1998 Franz Sirl <franz.sirl-kernel@lauterbach.com>
-
- * rs6000/linux.h (CPP_PREDEFINES): Add -D__ELF__.
-
-Tue Jan 13 22:14:57 1998 Klaus Kaempf <kkaempf@progis.de>
-
- * alpha/vms.h (DIR_SEPARATOR): Define.
-
-Tue Jan 13 22:13:04 1998 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
-
- * Makefile.in (stamp-proto): Remove.
- (protoize.o, unprotoize.o): Straightforward compile.
- * unprotoize.c: Define UNPROTOIZE here, not in the Makefile.
-
-Tue Jan 13 21:59:39 1998 Mumit Khan <khan@xraylith.wisc.edu>
-
- * i386/cygwin32.h (STRIP_NAME_ENCODING): Define for Win32 to strip
- off the trailing @[NUM] added by ENCODE_SECTION_INFO.
-
-Tue Jan 13 21:55:06 1998 Jeffrey A Law (law@cygnus.com)
-
- * arm/netbsd.h (DWARF2_UNWIND_INFO): Define as zero for now.
- * i386/netbsd.h, m68k/netbsd.h, ns32k/netbsd.h: Likewise.
- * sparc/netbsd.h, vax/netbsd.h: Likewise.
-
-Tue Jan 13 21:37:07 1998 Shigeya Suzuki <shigeya@foretune.co.jp>
-
- * i386/bsd386.h (DWARF2_UNWIND_INFO): Define as zero for now.
-
-Tue Jan 13 17:50:55 1998 Jim Wilson <wilson@cygnus.com>
-
- * configure.in (target_cpu_default, target_cpu_default2): Use double
- quotes around them when testing their value.
- * configure: Rebuilt.
-
-Tue Jan 13 09:07:44 1998 John Carr <jfc@mit.edu>
-
- * gengenrtl.c (gencode): Emit new function obstack_alloc_rtx
- to allocate rtx.
- (gendef): Call obstack_alloc_rtx.
-
-Tue Jan 13 01:16:36 1998 Robert Lipe (robertl@dgii.com)
-
- * configure.in (i[3456]86-UnixWare7-sysv5): Treat much like SVR4
- for now.
-
-Thu Dec 18 18:40:17 1997 Mumit Khan <khan@xraylith.wisc.edu>
-
- * i386/mingw32.h (INCOMING_RETURN_ADDR_RTX): Delete. Use the value
- of DWARF2_UNWIND_INFO, if any, from i386/cygwin32.h instead.
- (STANDARD_INCLUDE_DIR): Change to /usr/local/i386-mingw32/include.
-
-Tue Jan 13 00:44:02 1998 Jim Wilson <wilson@cygnus.com>
-
- * mips.md (return_internal): Change mode from SImode to VOIDmode.
-
-Sat Jan 10 22:11:39 1998 J. Kean Johnston <jkj@sco.com>
-
- * i386/sco5.h (STARTFILE_SPEC, ENDFILE_SPEC): Correctly handle
- "-static".
-
-Sat Jan 10 22:04:15 1998 Stan Cox <scox@equinox.cygnus.com>
-
- * i386.md (movsicc_1, movhicc_1): For alternate 3 set the opcode
- suffix from operand 3.
-
-Sat Jan 10 21:50:16 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
- Jeffrey A Law (law@cygnus.com)
-
- * regmove.c: New implementation of regmove pass.
- * local-alloc.c (optimize_reg_copy_1, optimize_reg_copy_2): Remove
- decls, make them have external linkage. Return a value from
- optimize_reg_copy_1.
- * reload.h (count_occurrences): Add decl.
- * reload1.c (count_occurrences): Delete decl, make it have external
- linkage.
- * rtl.h (optimize_reg_copy_1, optimize_reg_copy_2): Declare.
-
-Sat Jan 10 20:30:12 1998 Jeffrey A Law (law@cygnus.com)
-
- * regclass.c (record_address_regs): Don't use REG_OK_FOR_BASE_P
- if it is not defined.
-
-Thu Jan 8 21:06:54 1998 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (OBJ, GEN, RTL_H): Add genrtl.[oh] bits.
- * emit-rtl.c (gen_rtx): Move special code to ...
- (gen_rtx_CONST_INT): New function.
- (gen_rtx_REG): New function.
- (*): Update all calls to gen_rtx.
- * genemit.c (gen_exp): Emit calls to gen_rtx_FOO for constant FOO.
- * rtl.h: Include genrtl.h; prototype CONST_INT & REG generators.
- (GEN_INT): Call gen_rtx_CONST_INT.
- * gengenrtl.c: New file.
-
-Mon Jan 5 13:00:18 1998 John F. Carr <jfc@mit.edu>
-
- * alias.c (*_dependence): Call base_alias_check before canon_rtx.
- (base_alias_check): If no base found for address call canon_rtx and
- try again.
-
-Mon Jan 5 11:39:49 1998 Jeffrey A Law (law@cygnus.com)
-
- * mips.c (mips_expand_prologue): Handle large frame with no outgoing
- arguments for mips16.
- (mips_expand_epilogue): Pass "orig_tsize" to save_restore_insns.
- Don't lose if tsize is zero after handling large stack for mips16.
- * mips.md (return): For trivial return, return address is in $31.
-
-Sun Jan 4 20:24:00 1998 Nigel Stephens <nigel@algor.co.uk>
-
- * mips/mips16.S: Various changes to make it work with -msingle-float
- and -EL.
-
-Sun Jan 4 14:25:18 1998 Gavin Koch <gavin@cygnus.com>
- Ian Lance Taylor <ian@cygnus.com>
- Jeff Law <law@cygnus.com>
-
- * mips.c, mips.h, mips.md: First cut at merging in mips16
- support. Major modifications throughout all three files.
-
-Sun Jan 4 01:01:50 1998 scott snyder <snyder@d0sgif.fnal.gov>
-
- * configure.in: Make gthr-default.h a forwarding header instead of
- a symlink.
-
-Sat Jan 3 12:08:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcov-io.h: Include sys/types.h to ensure we get size_t.
-
- * pa.h (ASM_OUTPUT_MI_THUNK): Add missing % in fprintf.
-
-Fri Jan 2 23:40:09 1998 Jim Wilson (wilson@cygnus.com)
- Jeffrey A Law (law@cygnus.com)
-
- * crtstuff.c (__frame_dummy): New function for irix6.
- (__do_global_ctors): Call __frame_dummy for irix6.
- * iris6.h (LINK_SPEC): Hide __frame_dummy too.
-
-Fri Jan 2 04:57:57 1998 Weiwen Liu <liu@hepmail.physics.yale.edu>
-
- * alpha.c (vms_valid_decl_attribute_p): Move within #if OPEN_VMS.
-
-Fri Jan 2 04:34:14 1998 Richard Henderson <rth@cygnus.com>
-
- * c-decl.c (init_decl_processing): Provide proper fallback symbol
- for __builtin_memset.
- * expr.c (expand_builtin) [MEMSET]: Arg 3 type code is INTEGER_TYPE
- not INTEGER_CST. Assert arg 3 is a constant.
-
- * alpha.c (mode_width_operand): Accept 64-bit modes.
- (mode_mask_operand): Likewise.
- (print_operand): Likewise for 'M' and 'U' codes.
- (alpha_expand_unaligned_load): New function.
- (alpha_expand_unaligned_store): Likewise.
- (alpha_expand_unaligned_load_words): Likewise.
- (alpha_expand_unaligned_store_words): Likewise.
- (alpha_expand_block_move): Likewise.
- (alpha_expand_block_clear): Likewise.
- * alpha.h (MOVE_RATIO): New define.
- * alpha.md (extxl, ext*h, ins*l, mskxl): Name them.
- (insql, insxh, mskxh, extv, extzv, insv, movstrqi, clrstrqi): New.
-
- * alpha.h (ASM_OUTPUT_LOOP_ALIGN, ASM_OUTPUT_ALIGN_CODE): Set to 3.
- (CONSTANT_ALIGNMENT, DATA_ALIGNMENT): Disable.
-
-Thu Jan 1 15:40:15 1998 Richard Henderson <rth@cygnus.com>
-
- * configure.in: Put parenthesis around TARGET_CPU_DEFAULT's value.
- * configure: Update.
-
-Thu Jan 1 10:49:12 1998 Jeffrey A Law (law@cygnus.com)
-
- * emit-rtl.c (operand_subword): Correctly handle extracting a word
- from a CONST_DOUBLE for 16bit targets with !WORDS_BIG_ENDIAN.
-
- * mn10200.md (tstxx, cmpxx): Use "nonimmediate_operand" as predicate
- for first argument.
-
-Wed Dec 31 14:42:18 1997 Ian Lance Taylor <ian@cygnus.com>
-
- * configure.in: Set and substitute host_exeext. Use it when creating
- the assembler and linker symlinks.
- * configure: Rebuild.
- * Makefile.in (exeext): Set to @host_exeext@.
- (build_exeext): New variable, set to @build_exeext@.
- (FLAGS_TO_PASS): Pass down build_exeext.
- (STAGESTUFF): Use build_exeext, not exeext, for gen* and bi*
- programs.
-
-Wed Dec 31 10:05:44 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10200.md (addsi3, subsi3): Fix thinkos.
-
-Tue Dec 30 00:04:49 1997 Richard Henderson <rth@cygnus.com>
-
- * sparc.h (ASM_OUTPUT_MI_THUNK): Move %o7 through %g1 instead of
- save+restore. Fix pic+big_offset delay slot. Use "pic" case for
- unix always, since we want to be able to thunk to functions in a
- shared library from an application.
-
-Mon Dec 29 14:37:31 1997 Ian Lance Taylor <ian@cygnus.com>
-
- * mips/t-ecoff (CROSS_LIBGCC1): Define to libgcc1-asm.a.
- (LIB1ASMSRC, LIB1ASMFUNCS): Define.
-
-Mon Dec 29 14:03:38 1997 Jeffrey A Law (law@cygnus.com)
-
- * expr.c (expand_expr): For {BITFIELD,COMPONENT,ARRAY}_REF, if the
- offset's mode is not ptr_mode, convert it.
-
-Mon Dec 29 15:58:18 1997 Michael Meissner <meissner@cygnus.com>
-
- * libgcc2.c (inhibit_libc): Don't define inhibit_libc when cross
- compiling if it was already defined.
-
-Sun Dec 28 00:32:16 1997 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (find_basic_blocks): Don't create a new basic block
- for calls in a LIBCALL block.
-
-Sun Dec 28 00:30:24 1997 David Edelsohn <edelsohn@mhpcc.edu>
-
- * config/fp-bit.c (L_df_to_sf): Fix typo in last change.
-
-Sat Dec 27 22:43:12 1997 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (rtx_cost): Remove conflicting default case.
-
-Sat Dec 27 21:20:02 1997 Richard Henderson <rth@cygnus.com>
-
- * configure.in: Move default enabling of Haifa out of for loop.
- * configure: Rebuild.
-
-Thu Dec 25 01:02:54 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-1997-12-25 Teemu Torma <tot@trema.com>
-
- * Makefile.in (GTHREAD_FLAGS): New var.
- (LIBGCC2_CFLAGS): Added $(GTHREAD_FLAGS).
- (distclean): Remove gthr-default.h.
-
- * configure.in: Accept dce as a thread package.
- Check for thread.h and pthread.h.
- Link gthr-default.h to appropriate thread file and set
- gthread_flags.
- (hppa1.1-*-hpux10*): If --enable-threads, use dce threads and
- include multilib definitions from pa/t-dce-thr.
- (sparc-*-solaris2*): Enable threads by default, if thread.h or
- pthread.h is found, preferring posix threads over solaris ones.
-
- * config/pa/t-dce-thr: New file.
- * config/pa/t-pa: Removed multilibs.
- * config/sparc/t-sol2: Likewise.
-
- * gthr.h: New file.
- * gthr-single.h: New file.
- * gthr-posix.h: New file.
- * gthr-solaris.h: New file.
- * gthr-dce.h: New file.
- * libgcc-thr.h: Removed.
- * objc/thr-dce.c: New file copied from thr-decosf1.c.
-
- * frame.c: Include gthr.h instead of libgcc-thr.h.
- * libgcc2.c: Include gthr.h instead of libgcc-thr.h.
- (eh_context_initialize): If __gthread_once fails, use static eh
- context.
- (eh_context_free): Call __gthread_key_dtor.
-
-Wed Dec 24 23:33:17 1997 Jeffrey A Law (law@cygnus.com)
-
- * expr.h (MUST_PASS_IN_STACK): Allow target port to override.
-
-Wed Dec 24 23:12:14 1997 Jim Wilson <wilson@cygnus.com>
-
- * cse.c (max_insn_uid): New variable.
- (cse_around_loop): Use max_insn_uid.
- (cse_main): Set max_insn_uid.
-
- * abi64.h (LONG_MAX_SPEC): Check MIPS_ABI_DEFAULT and TARGET_DEFAULT,
- and define __LONG_MAX__ appropriately. Add support for -mabi=X,
- -mlong64, and -mgp{32,64} options.
- * mips.c (mips_abi): Change type to int.
- * mips.h (enum mips_abi_type): Delete.
- (ABI_32, ABI_N32, ABI_64, ABI_EABI): Define as constants.
- (mips_abi): Change type to int.
-
-Wed Dec 24 22:38:34 1997 John Carr <jfc@mit.edu>
-
- * flags.h, toplev.c, calls.c, alias.c: Remove flag_alias_check;
- optimization is now always enabled.
-
- * calls.c (expand_call): Recognize C++ operator new as malloc-like
- function.
-
- * alias.c (memrefs_conflict_p): Eliminate tests now done by
- base_alias_check.
- (*_dependence): Call canon_rtx before base_alias_check.
- (init_alias_once): New function to precompute set of registers which
- can hold Pmode function arguments.
-
- * rtl.h: Declare init_alias_once.
-
- * toplev.c (compile_file): Call init_alias_once.
-
-Wed Dec 24 22:34:55 1997 Jeffrey A Law (law@cygnus.com)
-
- * tree.c (restore_tree_status): Do not dereference a null pointer.
-
-Tue Dec 23 12:56:46 1997 Paul Eggert <eggert@twinsun.com>
-
- * genattrtab.c (main): Check HAVE_{G,S}ETRLIMIT in addition to
- RLIMIT_STACK. This maintains consistency with the recent, similar
- patch to cccp.c and toplev.c.
-
-Tue Dec 23 05:17:28 1997 Richard Henderson <rth@cygnus.com>
-
- * genattrtab.c (expand_units): For large nr opclasses, expand
- function_units_used with ORX to prevent blowups. Tag with FFS.
- (num_unit_opclasses): New variable.
- (gen_unit): Update it.
- (enum operator): Add ORX_OP.
- (operate_exp): Treat ORX as or, except don't expand across an if.
- Reuse number rtx's after operating on them.
- (check_attr_value): Accept IOR, AND, & FFS.
- (write_test_expr): Transmute `in_comparison' to `flags'. Allow
- for attribute value caching. Handle CONST_STRING, IF_THEN_ELSE.
- (write_expr_attr_cache, write_toplevel_expr): New functions.
- (write_attr_get): Handle FFS-tagged expressions.
- (make_canonical): Don't expand const attributes.
- (convert_const_symbol_ref): Dike out.
- (evaluate_eq_attr): Handle SYMBOL_REF.
- (main): Don't emit get_attr_foo for const attributes.
-
- * alpha.c (override_options): Reinstate PROCESSOR_EV6.
- (alpha_adjust_cost): Add EV6 tuning; streamline EV5 tests.
- * alpha.h (REGISTER_MOVE_COST): Increase ftoi/itof cost slightly.
- * alpha.md: Redo all of the scheduling, adding EV6 support, and
- combining function units where possible.
- (attr "type"): Split loads, stores, cmov into int/fp. Combine
- multiplies and divides. Add EV6 sqrt, ftoi, itof.
- (attr "opsize"): New attribute.
- (sqrtsf2-1, sqrtdf2-1): Provide proper TP_INSN patterns.
- (movsf2-[12], movdf2-[12]): Provide CIX varients; don't allow CIX
- to control register allocation.
- (movsi2-1, movdi2-1): Likewise.
-
-Tue Dec 23 03:53:21 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (CPP_PREDEFINES, LIB_SPEC, LINK_SPEC, STARTFILE_SPEC,
- MD_STARTFILE_PREFIX, ASM_FILE_START, ASM_SPEC, ASM_FINAL_SPEC):
- Move OSF/1 specific defines out.
- * alpha/elf.h (TARGET_VERSION, CPP_PREDEFINES, DEFAULT_VTABLE_THUNKS):
- Move Linux specific defines out.
- (LINK_SPEC): Genericize.
- (ASM_FILE_START): Emit .arch if using more than the base insn set.
- (ASM_OUTPUT_SOURCE_LINE): Remove; identical to alpha.h version.
- (SDB_DEBUGGING_INFO): Remove; gas can't handle it.
- (HANDLE_SYSV_PRAGMA): Define.
- * alpha/osf.h: New file.
- * alpha/linux.h: Split. Retain file-format independent defines.
- Import Linux bits from elf.h.
- (CPP_PREDEFINES): Take a file-format specific SUB_CPP_PREDEFINES.
- (FUNCTION_PROFILER): _mcount takes its address in $28.
- (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Remove undef.
- * alpha/linux-ecoff.h: New file.
- * alpha/linux-elf.h: New file.
- * alpha/vms.h (LIB_SPEC, LINK_SPEC): Copy from osf.h.
- * alpha/win-nt.h (TARGET_DEFAULT): Define.
- * configure.in (alpha*-*-osf*, alpha*-*-linux*) [tm_file]:
- Add new headers as appropriate.
-
- * configure.in (alpha*): Enable Haifa by default.
- (*-*-winnt3*): Change to winnt*, since we're not v3 specific.
- * configure: Rebuild.
-
-Tue Dec 23 03:14:54 1997 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (clean): Remove the stages with their objects here ...
- (distclean): ... instead of here.
-
-Mon Dec 22 11:24:01 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cse.c (rtx_cost): Add default case in enumeration switch.
- * fix-header.c (recognized_macro): Likewise.
- (recognized_extern): Likewise.
- (write_rbrac): Likewise.
- * objc/objc-act.c (encode_aggregate): Likewise.
- (gen_declarator): Likewise.
- (gen_declspecs): Likewise.
-
-Mon Dec 22 09:58:51 1997 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (create_reg_dead_note): Detect and handle another
- case where we kill more regs after sched than were killed before
- sched.
- * sched.c (create_reg_dead_note): Similarly.
-
-Mon Dec 22 09:18:37 1997 Jeffrey A Law (law@cygnus.com)
-
- * c-pragma.c: Include flags.h.
-
-Sun Dec 21 22:10:59 1997 Mumit Khan <khan@xraylith.wisc.edu>
-
- * i386/cygwin32.h (NO_IMPLICIT_EXTERN_C): Don't assume anything
- about system headers.
- (LIB_SPEC): Add -ladvapi32 -lshell32 to be consistent with mingw32
- and also to resolve symbols in prefix.c.
-
- * i386/xm-cygwin32.h (HAVE_BCOPY): Define. This avoids a conflict
- between gansidecl.h and newlib's _ansi.h when building libgcc2.a,
- when the definitions in auto-config.h is not visible.
- (HAVE_BZERO): Likewise.
- (HAVE_BCMP): Likewise.
- (HAVE_RINDEX): Likewise.
- (HAVE_INDEX): Likewise.
-
-Sun Dec 21 21:54:22 1997 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (emit_move_sequence): Handle a function label source
- operand.
-
-Sun Dec 21 16:13:55 1997 Nick Clifton <nickc@cygnus.com>
-
- * c-pragma.c (handle_pragma_token): Generate warning messages
- about unknown pragmas if warn_unknown_pragmas is set.
-
- * c-decl.c (c_decode_option): Parse -Wunknown-pragmas command
- line option to set variable: warn_unknown_pragmas.
-
-Sun Dec 21 15:51:10 1997 Manfred Hollstein <manfred@lts.sel.alcatel.de>
-
- * m68k/mot3300.h (ASM_BYTE_OP): Don't include '\t' in the
- definition.
- (ASM_OUTPUT_ASCII): Prefix ASM_BYTE_OP by one single '\t'.
-
-Sun Dec 21 13:58:39 1997 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (FPBIT_FUNCS, DPBIT_FUNCS): Define.
- (libgcc2.a): Depend on $(DPBIT) and $(FPBIT). Add rules to
- generate more fine grained floating point emulation libraries.
- * config/fp-bit.c: Add protecting #ifdef to all functions so
- that they can be compiled separately. If !FINE_GRAINED_LIBRARIES,
- then compile all suitable functions.
- (pack_d, unpack_d, fpcmp_parts): Add declarations, define with two
- underscores to avoid namespace pollution.
- * t-mn10200 (LIB2FUNCS_EXTRA): Remove fp-bit.c.
- (FPBIT): Define.
- * t-mn10300 (LIB2FUNCS_EXTRA): Remove fp-bit.c and dp-bit.c.
- (FPBIT): Define.
- (DPBIT): Define.
-
-Sat Dec 20 11:26:47 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
- Jeff Law <law@cygnus.com>
-
- * bitmap.c (bitmap_clear): Ensure `inline' is at the beginning
- of the declaration.
- * c-decl.c (finish_decl): Use parentheses around && within ||.
- * rtl.c: Include stdlib.h.
- (read_skip_spaces): Add parentheses around assignments used as
- truth values.
- (read_rtx): Initialize list_rtx.
- * cppexp.c (parse_number): Use || when operands are truth values.
- * alias.c (find_base_value): Add default case.
- (memrefs_conflict): Likewise.
- * combine.c (sets_function_arg_p): Likewise.
- * genemit.c (gen_exp): Likewise.
- * local-alloc.c (contains_replace_regs): Likewise.
- * rtlanal.c (jmp_uses_reg_or_mem): Likewise.
- * fold-const.c (fold_convert): Use "&&" for truth values.
- (fold): Add default case.
- * sdbout.c (sdbout_field_types): Fix typo in declaration.
- (sdbout_one_type): Add default case.
- * alpha.c (alpha_sa_mask): Prototype only if OPEN_VMS.
- (some_operand): Add default case.
- (input_operand): Likewise.
- (signed_comparison_operator): Likewise.
- (divmod_operator): Likewise.
- (alpha_set_memflags_1): Likewise.
- * reload1.c (reload_cse_simplify_operands): Ensure function
- always returns a value.
- * scan-decls.c (scan_decls): Likewise.
- * c-lex.c (skip_white_space): Fix typo in declaration.
- * c-typeck.c (comp_target_types): Add parentheses around assignment
- used as truth value.
- (print_spelling): Likewise.
- (constructor_implicit, constructor_result): Remove unused variables.
- * collect2.c (scan_library): Protect prototype with
- #ifdef SCAN_LIBRARIES.
- * emit-rtl.c (find_line_note): Fix typo in declaration.
- * final.c (asm_insn_count): Protect prototype with
- #ifdef HAVE_ATTR_length.
- * flow.c (find_auto_inc): Protect prototype with #ifdef AUTO_INC_DEC.
- (try_pre_increment_1, try_pre_increment): Likewise.
- * regclass.c (auto_inc_dec_reg_p): Protect prototype with
- #ifdef FORBIDDEN_INC_DEC_CLASSES. Make return type explicit.
- * gcov-io.h (__store_long, __write_long, __read_long): Fix
- unsigned/signed comparisons.
- * gcov.c (read_files): Remove unused "first_type" variable.
- (scan _for_source_files): Initialize s_ptr.
- (function_summary): Eliminate "%lf" formatting, use %ld for
- longs.
- (output_data): Initialize branch_probs and last_line_num.
- Eliminate "%lf" formatting, use "%ld" for longs.
-
-Fri Dec 19 17:31:11 1997 Ian Lance Taylor <ian@cygnus.com>
-
- * mips16.S: New file.
-
- * libgcc2.c (varargs): Handle mips16.
-
- * expr.c (do_tablejump): Let CASE_VECTOR_PC_RELATIVE be an
- expression.
- * stmt.c (expand_end_case): Likewise.
- * alpha.h (CASE_VECTOR_PC_RELATIVE): Update.
- * fx80.h, gmicro.h, m68k.h, m88k.h, ns32k.h: Likewise.
- * rs6000.h, sh.h, tahoe.h, v850.h, vax.h: Likewise.
-
-Tue Dec 16 15:14:09 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * objc/Make-lang.in: Create runtime-info.h and libobjc_entry.o in
- the build directory.
- (libobjc.a): Update dependency list.
- (libobjc.dll): Likewise. Use libobjc_entry.o from the build
- directory.
- (objc/sendmsg.o): Add -Iobjc to find runtime-info.h.
- (objc.mostlyclean): Remove runtime-info.h.
-
-Fri Dec 19 00:19:42 1997 Richard Henderson <rth@cygnus.com>
-
- * tree.c (build_range_type): Allow creation of ranges with no maximum.
- * dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
- * dwarf2out.c (add_subscript_info): Likewise.
- * dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
- * sdbout.c (plain_type_1): Likewise.
- * stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
- Likewise.
- * fold-const.c (int_const_binop, fold_convert, make_range, fold):
- Likewise.
-
-Thu Dec 18 17:05:10 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.c (fatal): Remove declaration.
-
-1997-12-18 Mark Mitchell <mmitchell@usa.net>
-
- * integrate.c (get_label_from_map): New function.
- (expand_inline_function): Use it. Initialize the label_map to
- NULL_RTX instead of gen_label_rtx.
- (copy_rtx_and_substitute): Use get_label_from_map.
- * integrate.h (get_label_from_map): New function.
- (set_label_from_map): New macro.
- * unroll.c (unroll_loop): Use them.
- (copy_loop_body): Likewise.
-
-Thu Dec 18 19:19:57 1997 Ian Lance Taylor <ian@cygnus.com>
-
- * mips/mips.h (INIT_SUBTARGET_OPTABS): Define if not defined.
- (INIT_TARGET_OPTABS): Define.
- * mips/ecoff.h: Include gofast.h before mips.h.
- (INIT_SUBTARGET_OPTABS): Define instead of INIT_TARGET_OPTABS.
- * mips/elf64.h: Likewise.
- * mips/elf.h (ASM_OUTPUT_SECTION_NAME): Define.
-
-Thu Dec 18 14:51:12 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c: Remove register_exception_table{,_p}.
-
-Thu Dec 18 14:57:29 1997 Gavin Koch <gavin@cygnus.com>
-
- * unroll.c (calculate_giv_inc): Handle constant increment found in
- a MEM with an appropriate REG_EQUAL note.
-
- * calls.c (expand_call): Implement LOAD_ARGS_REVERSED.
-
- * dwarf2out.c (dwarf2out_frame_debug): Handle adjustments of the
- frame pointer in the prologue.
-
-Thu Dec 18 00:19:38 1997 Robert Lipe <robertl@dgii.com>
-
- * i386/x-sco5 (CLIB): Deleted.
- (ALLOCA): Added.
- * i386/xm-sco5.h (USE_C_ALLOCA): Added.
-
-Tue Dec 16 18:51:00 1997 Bill Moyer <billm@cygnus.com>
-
- * config/m68k/m68k.c (output_function_prologue): Typecast
- dwarf2out_cfi_label to (char *).
- * config/m68k/m68kemb.h (STARTFILE_SPEC): Redefined to "".
-
-Wed Dec 17 15:06:04 1997 Richard Henderson <rth@cygnus.com>
-
- * sparc.md (jump): Don't use the annul bit around an empty loop.
- Patch from Kevin.Kelly@East.Sun.COM.
-
-Wed Dec 17 00:51:36 1997 Stan Cox (scox@cygnus.com)
-
- * jump.c (jump_optimize): Don't use the return register as a
- source1 of a conditional move.
-
-Tue Dec 16 23:45:40 1997 Richard Henderson <rth@cygnus.com>
-
- * sparc.c (DF_MODES): Or the mask not the bit number.
- (function_arg) [ARCH64]: Send unprototyped arg to fp reg first.
-
-Wed Dec 17 00:13:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
-
- * combine.c (force_to_mode): Return immediately if operand is a
- CLOBBER.
-
-Tue Dec 16 23:44:54 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fixincludes (size_t): Add support for Motorola's stdlib.h
- which fails to provide a definition for size_t.
- (fabs/hypot): Provide a prototype for fabs on m88k-motorola-sysv3.
- (strlen,strspn,strcspn return value): Handle different layout on sysV88.
- (hypot): Provide a fake for hypot for m88k-motorola-sysv3.
-
- * m68k/xm-mot3300.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Define to
- prevent unresolved externals in libio.
- * m88k/xm-sysv3.h (ADD_MISSING_POSIX, ADD_MISSING_XOPEN): Likewise.
-
-Tue Dec 16 23:25:45 1997 H.J. Lu (hjl@gnu.org)
-
- * config/sparc/linux64.h (LIBGCC_SPEC): Removed.
- (CPP_SUBTARGET_SPEC): Add %{pthread:-D_REENTRANT}.
- (LIB_SPEC): Updated for glibc 2.
-
-Tue Dec 16 20:11:36 1997 Jeffrey A Law (law@cygnus.com)
-
- * ginclude/stdarg.h: Undo BeOS changes, they break hpux.
- * ginclude/varargs.h: Likewise.
-
-Tue Dec 16 00:32:01 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Tue Dec 16 00:14:29 1997 H.J. Lu (hjl@gnu.org)
-
- * frame.h (__register_frame, __register_frame_table,
- __deregister_frame): New.
- * frame.c (__register_frame, __register_frame_table,
- __deregister_frame): New.
- * frame.c (__deregister_frame_info): Return void *.
- * frame.h (__deregister_frame_info): Likewise.
- * collect2.c (__deregister_frame_info): Likewise.
-
-Mon Dec 15 18:40:08 1997 Richard Henderson <rth@cygnus.com>
-
- * expmed.c (expand_shift): If SHIFT_COUNT_TRUNCATED, drop a SUBREG.
-
-Mon Dec 15 18:31:43 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_cpu_name): New variable.
- (alpha_mlat_string): Likewise.
- (alpha_memory_latency): Likewise.
- (override_options): Handle -mmemory-latency.
- (alpha_adjust_cost): Adjust load cost for latency.
- * alpha.h (TARGET_OPTIONS): Add memory-latency.
- (REGISTER_MOVE_COST): Define in terms of memory_latency. Take
- TARGET_CIX into account.
- (MEMORY_MOVE_COST): Define in terms of memory_latency.
- * invoke.texi (DEC Alpha Options): Document -mmemory-latency.
-
- * alpha.h (ASM_COMMENT_START): New macro.
-
-Mon Dec 15 17:48:05 1997 Richard Henderson <rth@cygnus.com>
-
- * reload.h, reload1.c (eliminate_regs), caller-save.c, dbxout.c,
- dwarfout.c, dwarf2out.c, reload.c, sdbout.c: Revert March 15 change.
-
- * reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
- SUBREG_REG if the word count is unchanged.
- * reload1.c (eliminate_regs) [case SET]: If W_R_O, preserve
- subregs of identical word size for push_reload.
-
-Mon Dec 15 11:41:32 1997 Mark Mitchell <mmitchell@usa.net>
-
- * toplev.c (rest_of_compilation): Don't call save_for_inline_copy
- if all we're doing is dealing with -Wreturn-type.
-
-Mon Dec 15 09:44:39 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (zero_extendqihi2, zero_extendqisi2, zero_extendqidi2):
- Use and 255 instead of zapnot 1, since it schedules better.
-
-Mon Dec 15 08:48:24 1997 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (expand_asm_operands): If an ASM has no outputs, then treat
- it as volatile.
-
-Mon Dec 15 00:04:48 1997 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (remove_dependencies): Set RTX_INTEGRATED_P on
- dependency we delete. Properly update prev for multiple consecutive
- deletions.
- (priority): Skip deleted dependence.
-
-Fri Dec 12 18:54:23 1997 Per Bothner <bothner@cygnus.com>
-
- * expr.c (expand_builtin): Support BUILT_IN_FMOD - just call fmod.
-
-Fri Dec 12 01:19:48 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * flow.c (flow_analysis): Be consistent with find_basic_blocks in
- determining when a new basic block starts.
-
- * alpha/osf2or3.h (LIB_SPEC): Restore missing defn.
-
- * pa.h (TEXT_SPACE_P): Use TREE_CODE_CLASS.
- * pa.md (iorsi3): Add missing args to *_operand calls.
-
- * except.c (call_get_eh_context): Don't mess with sequences.
- (emit_eh_context): Include the call in the sequence here.
-
-1997-12-11 Paul Eggert <eggert@twinsun.com>
-
- * collect2.c (write_c_file_glob): Allocate initial frame object
- in static storage and pass its address.
-
-Thu Dec 11 23:33:48 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c (call_get_eh_context): Don't take a parm.
- Put the call at the top of the function.
- (emit_eh_context): Adjust.
- (get_eh_context): Replace with former use_eh_context.
- (get_eh_context_once, get_saved_pc_ref): Remove.
- (start_eh_unwinder, end_eh_unwinder, emit_unwinder): Remove.
- * except.h: Adjust.
- * integrate.c (expand_inline_function): Adjust.
- * toplev.c (rest_of_compilation): Don't call emit_unwinder.
-
-Fri Oct 10 17:58:31 1997 Marc Lehmann <pcg@goof.com>
-
- * i386/xm-go32.h (EXECUTABLE_SUFFIX): Define.
- (DIR_SEPARATOR, NO_SYS_SIGLIST): Likewise.
-
-Thu Dec 11 23:55:17 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * fixincludes (strlen,strspn,strcspn return value): Handle different
- layout on sysV88.
- (hypot): Provide a fake for hypot which is broken on
- m88k-motorola-sysv3.
-
-Thu Dec 11 23:50:17 1997 John F. Carr <jfc@mit.edu>
-
- * tree.c, tree.h: Change tree_code_type, tree_code_length, and
- tree_code_name from pointers to arrays.
- * tree.c: Remove standard_tree_code_* variables, no longer used.
- * print-tree.c: Remove declaration of tree_code_name.
-
- * cp/lex.c (init_lex): Update for tree_code_* changes.
- * objc/objc-act.c (init_objc): Likewise.
-
- * tree.def, cp/cp-tree.def, objc/objc-tree.def: Update for tree_code
- changes.
-
-Thu Dec 11 23:34:54 1997 Fred Fish <fnf@ninemoons.com>
-
- * config.sub: Add support for BeOS target.
- * configure.in: Likewise.
- * ginclude/stdarg.h: Likewise.
- * ginclude/stddef.h: Likewise.
- * ginclude/varargs.h: Likewise.
- * rs6000/beos.h: New file for BeOS.
- * rs6000/t-beos: Likewise.
- * rs6000/x-beos: Likewise.
- * rs6000/xm-beos.h: Likewise.
- * toplev.c (get_run_time): Just return 0 on BeOS.
-
-Thu Dec 11 23:25:23 1997 Jeffrey A Law (law@cygnus.com)
- Toon Moene (toon@moene.indiv.nluug.nl)
-
- * m68k.h (GO_IF_LEGITIMATE_ADDRESS): No longer cater to horribly
- old and broken Sun3 assemblers. Newer versions handle large
- offsets correctly as does the GNU assembler.
-
-Thu Dec 11 23:06:48 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * objc/objc-act.c (lang_report_error_function): Disable.
- * objc/objc-parse.y: Include "output.h".
- (yyerror): Remove redundant decl.
- (yyprint): Fix prototype.
- (apply_args_register_offset): Remove redundant decl.
- (get_file_function_name): Likewise.
-
-Thu Dec 11 22:02:10 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * flow.c (find_basic_blocks): A CALL_INSN that can throw starts
- a new basic block.
- (find_basic_blocks_1): Likewise.
-
-Thu Dec 11 21:08:48 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c (use_eh_context): Don't copy_rtx a REG.
- (emit_throw): Lose old unwinder support.
- (expand_internal_throw): Likewise.
- * libgcc2.c (struct eh_context): Likewise.
- (new_eh_context): Likewise.
- (__get_eh_info): Lose redundant cast.
- (__get_dynamic_handler_chain): Likewise.
- (__get_saved_pc): Lose.
- Lose all old unwinder support code.
-
-Thu Dec 11 20:42:18 1997 Teemu Torma <tot@trema.com>
-
- Thread-safe EH support for pthreads, DCE threads and Solaris threads.
-
- * integrate.c (expand_inline_function): If the inline fn uses eh
- context, make sure that the current fn has one.
- * toplev.c (rest_of_compilation): Call emit_eh_context.
- * except.c (use_eh_context): New fn.
- (get_eh_context_once): New fn.
- (call_get_eh_context): New fn.
- (emit_eh_context): New fn.
- (get_eh_context): Call either get_eh_context_once or
- call_get_eh_context, depending on what we have.
- (get_dynamic_handler_chain): Call get_eh_context_once.
- * except.h: Prototypes for fns above.
- * optabs.c (get_eh_context_libfunc): Removed.
- (init_optabs): Don't initialize it.
- * expr.h (get_eh_context_libfunc): Removed.
- * rtl.h, rtl.c: New reg_note REG_EH_CONTEXT.
- * config/pa/pa.h (CPP_SPEC): Support for -threads.
- * config/pa/pa-hpux10.h (LIB_SPEC): Likewise.
- * config/pa/t-pa (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
- New multilib for -threads.
- * config/sparc/t-sol2: Added multilibs for -threads and
- made -pthreads alias to it.
- * config/sparc/sol2.h (CPP_SPEC, LIB_SPEC):
- Added -threads and -pthreads options.
- * libgcc-thr.h: New file.
- * libgcc2.c (__get_cpp_eh_context): Removed.
- (struct cpp_eh_context): Removed.
- (struct eh_context): Replaced cpp_eh_context with generic language
- specific pointer.
- (__get_eh_info): New function.
- (__throw): Check eh_context::info.
- (__sjthrow): Likewise.
- * libgcc2.c: Include libgcc-thr.h.
- (new_eh_context, __get_eh_context,
- eh_pthread_initialize, eh_context_initialize, eh_context_static,
- eh_context_specific, eh_context_free): New functions.
- (get_eh_context, eh_context_key): New variables.
- (__sjthrow, __sjpopnthrow, __eh_pcnthrow, __throw): Use
- get_eh_context to get the context.
- (longjmp): Move the declaration inside
- #ifdef DONT_USE_BUILTIN_SETJMP.
- * frame.c: Include libgcc-thr.h.
- (object_mutex): Mutex to protect the object list.
- (find_fde, __register_frame, __register_frame_table,
- __deregister_frame): Hold the lock while accessing objects.
- * except.h (get_eh_context): Declare.
- * except.c (current_function_ehc): Define.
- (current_function_dhc, current_function_dcc): Removed.
- (get_eh_context): New function.
- (get_dynamic_handler_chain): Use get_eh_context.
- (get_saved_pc_ref): Likewise.
- (get_dynamic_cleanup_chain): Removed references to
- current_function_dcc.
- (save_eh_status, restore_eh_status): Save and restore
- current_function_ehc instead.
- * optabs.c (get_eh_context_libfunc): New variable.
- (init_optabs): Initialize it.
- * expr.h: Declare get_eh_context_libfunc.
- * function.h (struct function): Replaced dhc and dcc with ehc.
- * except.c (get_saved_pc_ref): New functions.
- (eh_saved_pc_rtx, eh_saved_pc): Deleted.
- (expand_internal_throw_indirect): Use get_saved_pc_ref() instead
- of eh_saved_pc.
- (end_eh_unwinder): Likewise.
- (init_eh): Remove initialization of eh_saved_pc.
- * optabs.c (get_saved_pc_libfunc): New variable.
- (init_optabs): Initialize it.
- * expr.h: Declare get_saved_pc_libfunc.
- * except.h (eh_saved_pc_rtx): Deleted.
- (get_saved_pc_ref): Declared.
-
- From Scott Snyder <snyder@d0sgif.fnal.gov>:
- * libgcc2.c (__get_saved_pc): New.
- (__eh_type, __eh_pc): Deleted.
- (__eh_pcnthrow): Use __get_saved_pc() instead of __eh_pc.
- (__get_dynamic_handler_chain): Move __dynamic_handler_chain inside
- this fcn.
-
-Thu Dec 11 17:23:48 1997 John F. Carr <jfc@mit.edu>
-
- * sparc/sol2.h: Use 64 bit multiply and divide functions in
- Solaris libc. Define TARGET_LIVE_G0 and TARGET_BROKEN_SAVERESTORE
- as 0.
-
- * rtl.h (global_rtl): New variable, replacing separate variables for
- commonly used rtl.
- (const_int_rtx): Now array of rtx_def, not rtx.
- * emit-rtl.c: Update for new rtl data structures.
- * genattrtab.c: Define global_rtl.
-
-Thu Dec 11 15:50:29 1997 David Edelsohn <edelsohn@mhpcc.edu>
-
- * configure.in ({rs6000,powerpc}-*-*): Enable Haifa scheduler by
- default.
-
-Wed Dec 10 12:30:18 1997 Anthony Green <green@cygnus.com>
-
- * crtstuff.c (__do_global_ctors): Fix typo.
-
-Tue Dec 9 09:43:59 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * toplev.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
- to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
-
-Tue Dec 9 09:38:58 1997 David Edelsohn <edelsohn@mhpcc.edu>
-
- * rs6000.h (FUNCTION_ARG_PADDING): Define.
- * rs6000.c (function_arg_padding): New function.
-
-Tue Dec 9 10:34:21 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * m68k.c: Include tree.h only once.
-
-Tue Dec 9 09:32:33 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * integrate.c (save_for_inline_copying): Make a new reg_parm_stack_loc.
-
-Tue Dec 9 01:16:06 1997 Jeffrey A Law (law@cygnus.com)
-
- * Partially cleaned up prototyping code from HJ.
- * tree.h: Add many prototypes.
- * haifa-sched.c (haifa_classify_insn): Renamed from classify_insn.
- All references changed.
- * rtl.h: Protect from multiple inclusions. Add many prototypes.
-
-Tue Dec 9 01:15:15 1997 Fred Fish <fnf@ninemoons.com>
-
- * libgcc2.c (string.h): Hoist inclusion to occur before first use of
- string functions like strlen.
-
-Tue Dec 9 00:57:38 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * configure.in: Check for functions getrlimit and setrlimit.
- * cccp.c (main): Check HAVE_GETRLIMIT and HAVE_SETRLIMIT in addition
- to RLIMIT_STACK to see if we can call getrlimit and setrlimit.
-
-Mon Dec 8 23:53:26 1997 Jay Sachs <sachs@bull.cs.williams.edu>
-
- * Makefile.in (compare*): Handle losing behavior from 4.4bsd make.
-
-Mon Dec 8 21:03:28 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (REG_RA, alpha_return_addr, output_epilog):
- Fix merge problems.
-
- * alpha.c (override_options): Don't know about scheduling for EV6.
- * alpha.md (ev5 function units): Don't overload as ev6.
-
- * alpha.c (alpha_adjust_cost): Simplify. Fix typo in ev5 mult case.
- * alpha.md (define_attr type): Add mvi.
- (ev5_e0): Define sceduling parameters for it.
- (TARGET_MAX insns): Type is mvi not shift.
-
-Mon Dec 8 18:15:00 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix backported gcc-2.8 bug.
-
-Mon Dec 8 21:17:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * cstamp-h, auto-config.h: Delete.
-
-Sun Dec 7 19:19:03 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sat Dec 6 22:22:22 1997 Jeffrey A Law (law@cygnus.com)
-
- * cccp.c: Fix typo brought over in merge.
-
- * Merge in changes from gcc-2.8.
-
-Mon Nov 3 05:45:32 1997 Philippe De Muyter <phdm@macqel.be>
-
- * m68k.c: Include tree.h for dwarf2out_cfi_label.
-
- * gcc.c (process_command): Do not take address of function fatal when
- calling lang_specific_driver.
-
-Sat Dec 6 01:02:38 1997 Mumit Khan <khan@xraylith.wisc.edu>
-
- * config/i386/cygwin32.h (DWARF2_UNWIND): Exception handling
- doesn't work with it yet, so set it to 0.
- * config/i386/xm-cygwin32.h (NO_SYS_SIGLIST): Define.
-
-Sat Dec 6 01:01:02 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
-
- * cse.c (cse_insn): Check for invalid entries when taking references.
-
-Fri Dec 5 18:26:25 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * loop.c (invariant_p): Don't test flag_rerun_loop_opt.
- (loop_optimize, scan_loop, strength_reduce): New argument unroll_p.
- * toplev.c (rest_of_compilation): Pass it. Remove code to
- save / clear / restore flag_unroll_{,all_}loops.
-
-Fri Dec 5 16:26:03 1997 Bernd Schmidt <crux@ohara.Informatik.RWTH-Aachen.DE>
-
- * i386.c (notice_update_cc): Remove bogus pentium GCC code.
-
-Fri Dec 5 16:25:14 1997 Jeffrey A Law (law@cygnus.com)
-
- * stmt.c (warn_if_unused_value): Don't warn for TRY_CATCH_EXPR.
-
-Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c (get_dynamic_handler_chain): Only make the call once per
- function.
-
- * except.c (expand_end_all_catch): Fix for sjlj exceptions.
-
-Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (final_prescan_insn): Use local label prefix
- when emitting .uses pseudo-ops.
-
-Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * libgcc2.c (__throw): Use __builtin_return_addr instead of __eh_pc.
- * except.c: Lose outer_context_label_stack.
- (expand_eh_region_end): Rethrow from outer_context here.
- (expand_fixup_region_end): Let expand_eh_region_end do the rethrow.
- (expand_internal_throw): Take no args.
- (expand_internal_throw_indirect): Lose.
- (expand_leftover_cleanups, expand_start_all_catch): Use expand_rethrow.
- (expand_start_all_catch): Start a rethrow region.
- (expand_end_all_catch): End it.
- (expand_rethrow): New fn.
- * except.h: Reflect above changes.
- * flow.c: Revert change of Nov 27.
-
-Thu Dec 4 00:24:09 1997 Jeffrey A Law (law@cygnus.com)
-
- * i386/t-sol2 (CRTSTUFF_T_CFLAGS): Turn on the optimizer.
-
-Wed Dec 3 12:01:56 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c (expand_fixup_region_end): New fn.
- (expand_fixup_region_start): Likewise.
- (expand_eh_region_start_tree): Store cleanup into finalization here.
- * stmt.c (expand_cleanups): Use them to protect fixups.
-
-Wed Dec 3 11:41:13 1997 Gavin Koch <gavin@cygnus.com>
-
- * mips/mips.md (muldi3_r4000): Broaden the output template
- and attribute assignments to handle three operand dmult;
- rename to muldi3_internal2.
- (muldi3): Call the new muldi3_internal2 for R4000, and
- any GENERATE_MULT3 chip.
-
-Tue Dec 2 19:40:43 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * stmt.c (expand_decl_cleanup): Update thisblock after eh_region_start.
-
-Tue Dec 2 12:54:33 1997 Jim Wilson <wilson@cygnus.com>
-
- * unroll.c (find_splittable_givs): Remove last change. Handle givs
- with a dest_reg that was created by loop.
-
-Sat Nov 29 12:44:57 1997 David Edelsohn <edelsohn@mhpcc.edu>
-
- * rs6000.c (function_arg_partial_nregs): Undo Nov. 26 patch.
-
- * rs6000/aix41.h (ASM_CPU_SPEC): Define.
-
-Fri Nov 28 10:00:27 1997 Jeffrey A Law (law@cygnus.com)
-
- * configure.in: Fix NCR entries.
-
-Thu Nov 27 12:20:19 1997 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (find_basic_blocks): Handle cfg issues for rethrows and
- nested exceptions correctly.
-
- * unroll.c (find_splittable_givs): Don't split givs with a dest_reg
- that was created by loop.
-
-Thu Nov 27 09:34:58 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * expr.c (preexpand_calls): Don't look past a TRY_CATCH_EXPR.
-
- * except.c (expand_start_all_catch): One more do_pending_stack_adjust.
-
-Wed Nov 26 15:47:30 1997 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.c (SMALL_DATA_REG): Register to use for small data relocs.
- (print_operand): Use SMALL_DATA_REG for the register involved in
- small data relocations.
- (print_operand_address): Likewise.
-
- * rs6000/linux.h (LINK_SPEC): Pass -dynamic-linker /lib/ld.so.1 if
- -dynamic linker is not used.
-
- * rs6000.md (call insns): For local calls, use @local suffix under
- System V. Don't use @plt under Solaris.
-
- * rs6000.c (output_function_profiler): Put label address in r0, and
- store LR in 4(sp) for System V/eabi.
-
- * rs6000.h (ASM_OUTPUT_REG_{PUSH,POP}): Keep stack aligned to 16
- byte boundary, and maintain stack backchain.
-
-Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
-
- * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
- fix_truncsfdi2): Change *.
-
-Wed Nov 26 11:12:26 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * toplev.c (main): Complain about -gdwarfn.
-
-Tue Nov 25 22:43:30 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarfout.c (output_type): If finalizing, write out nested types
- of types we've already written.
-
-Tue Nov 25 20:32:24 1997 Michael Meissner <meissner@cygnus.com>
-
- (patches originally from Geoffrey Keating)
- * rs6000.c (function_arg): Excess floating point arguments don't
- go into GPR registers after exhausting FP registers under the
- System V.4 ABI.
- (function_arg_partial_nregs): Likewise.
-
- * rs6000.md (call insns): If -fPIC or -mrelocatable, add @plt
- suffix to calls.
-
-Tue Nov 25 23:37:27 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * integrate.c (output_inline_function): Just unset DECL_INLINE.
-
-Tue Nov 25 23:33:29 1997 scott snyder <snyder@d0sgif.fnal.gov>
-
- * dwarf2out.c (outout_call_frame_info): Ensure that the info has
- proper alignment.
-
- * libgcc2.c (__throw): Initialize HANDLER.
-
-Tue Nov 25 14:08:12 1997 Jim Wilson <wilson@cygnus.com>
-
- * mips.md (fix_truncdfsi2, fix_truncsfsi2, fix_truncdfdi2,
- fix_truncsfdi2): Change *X to ?*X.
-
-Tue Nov 25 10:00:42 1997 Richard Henderson (rth@cygnus.com)
-
- * alpha.h (CONST_OK_FOR_LETTER): Fix 'L' handling.
-
-Tue Nov 25 10:00:42 1997 Jeffrey A Law (law@cygnus.com)
-
- * crtstuff.c (do_global_dtors_aux): Handle multiple calls better.
-
-Tue Nov 25 01:26:55 1997 Bruno Haible <haible@ilog.fr>
-
- * dwarf2out.c (ASM_OUTPUT_DWARF_DELTA1): Implement.
-
-Mon Nov 24 22:41:55 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
- * optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
- * expr.h: Likewise.
-
-Sat Nov 22 18:58:20 1997 Jeffrey A Law (law@cygnus.com)
-
- * pa-hpux10.h (NEW_HP_ASSEMBLER): Define.
- * pa.h (LEGITIMATE_CONSTANT_P): Reject LABEL_REFs if not using
- gas and not using the new HP assembler.
-
-Fri Nov 21 15:20:05 1997 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (program_transform_cross_name): Clean up "-e" confusion.
- (GCC_INSTALL_NAME, GCC_CROSS_NAME): Likewise.
-
-Fri Nov 21 19:37:40 1997 Andrew Cagney <cagney@b1.cygnus.com>
-
- * config/mips/elf64.h (MULTILIB_DEFAULTS): Test for
- TARGET_ENDIAN_DEFAULT == zero instead of testing for macro
- definition.
-
-Fri Nov 21 12:49:56 1997 Bruno Haible <bruno@linuix.mathematik.uni-karlsruhe.de>
-
- * stmt.c (expand_end_bindings): Allow jump into block with cleanups.
-
-Fri Nov 21 12:18:51 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * except.h: Add outer_context_label_stack.
- * except.c: Likewise.
- (expand_start_all_catch): Push the outer_context for the try block
- onto outer_context_label_stack.
- (expand_end_all_catch): Use it and pop it.
-
-Fri Nov 21 10:13:11 1997 Robert Lipe (robertl@dgii.com)
-
- * i386/sco5.h (HAVE_ATEXIT): Revert last change.
-
-Thu Nov 20 16:11:50 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_emit_set_const_1): Handle narrow hosts better.
-
-Thu Nov 20 16:11:50 1997 Klaus Kaempf <kkaempf@progis.de>
-
- * alpha/vms.h (ASM_OUTPUT_ADDR_VEC_ELT): Add an L for the local label
- to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
-
-Thu Nov 20 14:42:15 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * Makefile.in (LIB2FUNCS): Remove C++ memory management support.
- * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler,
- __builtin_delete, and __builtin_vec_delete.
-
- * except.c (output_exception_table): Don't bother with
- __EXCEPTION_END__.
-
-Thu Nov 20 16:11:50 1997 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (pre_stwm, post_stwm, pre_ldwm, post_ldwm): Base register
- is an in/out operand.
- (zero extended variants of stwm/stwm patterns): Similarly.
-
- * mips/x-iris (FIXPROTO_DEFINES): Add -D_SGI_SOURCE.
-
-Thu Nov 20 13:19:32 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c (ASM_OUTPUT_DWARF_OFFSET4): Rename from VALUE4.
- Use assemble_name.
- (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Use assemble_name.
- (output_call_frame_info): Emit a \n after using it.
-
-Thu Nov 20 00:38:46 1997 Dave Love <d.love@dl.ac.uk>
-
- * configure.in: Add AC_ARG_ENABLE for Haifa as documentation.
-
-Wed Nov 19 12:03:04 1997 Philippe De Muyter <phdm@macqel.be>
-
- * dwarf2out.c (CIE_LENGTH_LABEL, FDE_LENGTH_LABEL): New macros.
- (ASM_OUTPUT_DWARF_VALUE4): New macro.
- (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Define if SET_ASM_OP is
- defined.
- (output_call_frame_info): Do not output forward label differences
- if ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL is defined.
- * m68k/mot3300.h (SET_ASM_OP): Define when not using gas.
-
-Tue Nov 18 23:03:30 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (attribute "type"): Add nil.
- (movsi_ie): y/y alternative is type nil.
- (movsf_ie): Replace ry/yr/X alternative by r/y/X , y/r/X and y/y/X
- alternatives.
- (movsf_ie+1): Delete.
-
-Tue Nov 18 15:39:59 1997 Jim Wilson <wilson@cygnus.com>
-
- * mips/mips.c (save_restore_insns): If gp_offset or fp_offset are
- large_int, emit two insns instead of one splitable insn.
- * dwarf2out.c (dwarf2out_frame_debug): When set cfa_store_offset
- from cfa_temp_value, use cfa_offset. Add assert checking that
- cfa_reg is SP.
-
-Mon Nov 17 15:35:38 1997 Tom Tromey <tromey@cygnus.com>
-
- * cccp.c (deps_output): Properly quote file names for make.
-
-Mon Nov 17 13:21:40 1997 Jeffrey A Law (law@cygnus.com)
-
- * t-h8300 (MULTILIB_EXCEPTIONS): Define.
-
-Fri Nov 7 15:33:11 1997 Robert Lipe (robertl@dgii.com)
-
- * i386/sco5.h (HAVE_ATEXIT): Delete definition.
-
-Sun Nov 16 23:52:48 1997 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (cse_insn): Don't look at JUMP_LABEL field of a conditional
- return.
- (cse_end_of_basic_block): Similarly.
-
-Sun Nov 16 23:01:40 1997 J. Kean Johnston <jkj@sco.com>
-
- * i386/sco5.h (ASM_OUTPUT_ALIGNED_BSS): Define.
- (SELECT_RTX_SECTION): Define.
- (LIBGCC_SPEC, LIB_SPEC): Do the right thing for PIC.
-
-Sun Nov 16 22:47:03 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (compare, compare-lean): Define $stage for each
- shell command.
- (gnucompare, gnucompare-lean): Likewise.
-
-Sun Nov 16 22:02:16 1997 Richard Henderson (rth@cygnus.com)
-
- * alpha/win-nt.h (TRAMPOLINE_TEMPLATE): Fix offsets.
-
- * alpha.h (ASM_OUTPUT_ADDR_DIFF_ELT): Add an L for the local label
- to correspond with the change to ASM_GENERATE_INTERNAL_LABEL.
-
-Fri Nov 14 09:09:20 1997 Fred Fish (fnf@cygnus.com)
-
- * dwarfout.c (byte_size_attribute): Add local var upper_bound
- and add case to handle STRING_TYPE.
- * dwarfout.c (output_string_type_die): Fix code to generate
- correct string length attribute for fixed length strings.
- Still needs support for varying length strings.
-
-Fri Nov 14 08:46:56 1997 Jeffrey A Law (law@cygnus.com)
-
- * toplev.c (get_run_time): Do something sensible for cygwin32.
-
-Fri Nov 14 07:24:20 1997 Richard Henderson <rth@cygnus.com>
-
- * expr.c (expand_builtin_setjmp): Set
- current_function_has_nonlocal_label.
- * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
- call-saved registers across calls.
-
- * alpha.md (exception_receiver): Remove.
- (nonlocal_goto_receiver_osf): New.
- (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
- (nonlocal_goto_receiver): New, select _osf or _vms.
-
- * alpha.c (output_prolog [*]): Prefix entry labels with '$' to
- keep them from being propagated to the object file.
- (alpha_write_linkage): Likewise.
- * alpha.md (call_vms): Likewise.
- (call_value_vms): Likewise.
- (unnamed osf call insns): Likewise.
-
- * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
- (ASM_GENERATE_INTERNAL_LABEL): Likewise.
-
- * alpha.c (call_operand): Any reg is valid for WinNT.
- * alpha.md (call_nt, call_value_nt): Don't force address into $27.
- (anon nt calls): Add 'R' alternative.
- * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
- INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.
-
-Fri Nov 14 06:59:33 1997 Jeffrey A Law (law@cygnus.com)
-
- * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
-
- * i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
- * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
- * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
-
-Thu Nov 13 20:37:33 1997 Michael Meissner <meissner@tiktok.cygnus.com>
-
- * reload1.c (new_spill_reg): Improve fixed or forbidden register
- spill error message.
-
-Thu Nov 13 20:29:08 1997 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * prefix.c: Use stdarg.h only ifdef __STDC__. Otherwise,
- use varargs.h. Wrap header with <>, not "".
-
-Thu Nov 13 20:21:17 1997 Jeffrey A Law (law@cygnus.com)
-
- * integrate.c (save_for_inline_copying): Add return value from
- savealloc.
-
-Thu Nov 13 19:12:33 1997 Brendan Kehoe <brendan@cygnus.com>
-
- * fixincludes: Be a little more restrictive on what we will
- substitute to replace definitions of MAXINT for HPUX.
-
-Thu Nov 13 18:41:02 1997 Michael Meissner <meissner@cygnus.com>
-
- * dbxout.c (dbxout_symbol_location): Don't assume that variables
- whose address is the stack or argument pointers are indirect
- pointers.
-
-1997-11-13 Paul Eggert <eggert@twinsun.com>
-
- * cccp.c, cpplib.c (compare_defs):
- Don't complain about arg name respellings unless pedantic.
- * cpplib.c (compare_defs): Accept pfile as new arg.
- All callers changed.
-
-Thu Nov 13 23:33:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * fold-const.c (fold_truthop): Fix bug in last change.
-
-1997-11-13 Paul Eggert <eggert@twinsun.com>
-
- Fix some confusion with IEEE minus zero.
-
- * real.h (REAL_VALUES_IDENTICAL): New macro.
-
- * expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
- * fold-const.c (operand_equal_p): Don't consider -0.0 to be
- identical to 0.0.
- * tree.c (simple_cst_equal): Don't consider -0.0 to have the
- same tree structure as 0.0.
-
- * varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
- macro instead of doing it by hand.
-
-Thu Nov 13 16:56:14 1997 Jeffrey A Law (law@cygnus.com)
-
- * v850/lib1funcs.asm: Minor whitespace changes.
- * v850.c: Fix minor formatting problems in many places.
- (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.
-
-Thu Nov 13 12:53:44 1997 Jim Wilson <wilson@cygnus.com>
-
- * mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
- xplus1 when xplus0 is not a register.
-
-Thu Nov 13 11:41:42 1997 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (find_basic_blocks): During marking phase, if we encounter
- an insn with a REG_LABEL note, make the target block live and
- create an edge from the insn to the target block. Do not make
- edges from all blocks to the target block.
-
- * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
-
- * confiugre.in: Tweak NCR entries.
- * configure: Rebuilt.
-
-Thu Nov 13 11:07:41 1997 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.c (num_insns_constant): Use REAL_VALUE_FROM_CONST_DOUBLE to
- pick apart floating point values, instead of using CONST_DOUBLE_LOW
- and CONST_DOUBLE_HIGH.
-
- * rs6000.md (define_splits for DF constants): Use the appropriate
- REAL_VALUE_* interface to pick apart DF floating point constants in
- a machine independent fashion.
-
-Thu Nov 13 00:06:58 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * fold-const.c (fold_truthop): When changing a one-bit comparison
- against zero into a comparison against mask, do a proper sign
- extension.
-
-Wed Nov 12 09:37:01 1997 Jeffrey A Law (law@cygnus.com)
-
- * except.c: Do not include "assert.h".
- (save_eh_status): Turn asserts into conditional aborts.
- (restore_eh_status, scan_region): Likewise.
- * dwarfout.c: Do not include "assert.h".
- (bit_offset_attribute): Turn asserts into conditional aborts.
- (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
- (output_inlined_structure_type_die): Likewise.
- (output_inlined_union_type_die): Likewise.
- (output_tagged_type_instantiation): Likewise.
- (dwarfout_file_scope_decl): Likewise.
- * dwarf2out.c: Do not include "assert.h"
- (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
- (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
- (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
- (add_bit_size_attribute, scope_die_for): Likewise.
- (output_pending_types_for_scope): Likewise.
- (get_inlined_enumeration_type_die): Likewise.
- (get_inlined_structure_type_die): Likewise.
- (get_inlined_union_type_die, gen_subprogram_die): Likewise.
- (gen_tagged_type_instantiation_die): Likewise.
-
- * flow.c (find_basic_blocks): Refine further to get a more correct
- cfg, especially in the presense of exception handling, computed
- gotos, and other non-trivial cases. Call abort if an inaccuracy
- is detected in the cfg.
-
-Tue Nov 11 21:47:27 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
-
- * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
- (skip_white_space): Use whitespace_cr.
- (check_newline): Handle whitespace more consistently.
-
-Tue Nov 11 16:25:49 1997 Jim Wilson <wilson@cygnus.com>
-
- * i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
- * i386/xm-cygwin32.h (POSIX): Define.
-
-Mon Nov 10 20:53:11 1997 Gavin Koch <gavin@cygnus.com>
-
- * config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
- is available elsewhere.
-
-Mon Nov 10 16:21:58 1997 Doug Evans <devans@canuck.cygnus.com>
-
- * sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
- what the instruction can handle.
-
-Mon Nov 10 03:02:19 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * stmt.c (expand_decl_cleanup_no_eh): New fn.
-
- * except.c (expand_leftover_cleanups): do_pending_stack_adjust.
-
-Mon Nov 10 00:05:56 1997 Jeffrey A Law (law@cygnus.com)
-
- * alias.c (MAX_ALIAS_LOOP_PASSES): Define.
- (init_alias_analysis): Break out of loops after MAX_ALIAS_LOOP_PASSES.
-
-Sun Nov 9 14:34:47 1997 David Edelsohn <edelsohn@mhpcc.edu>
-
- * rs6000.md (lshrdi3_power): Delete '&' from first alternative and
- swap instruction order.
-
-Sun Nov 9 02:07:16 1997 Jeffrey A Law (law@cygnus.com)
-
- * fixinc.svr4 (__STDC__): Add another case.
-
-Sun Nov 9 02:00:29 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * a29k.h (ELIGIBLE_FOR_EPILOGUE_DELAY): Avoid loads from varying
- addresses in the epilogue delay slot.
-
-Sun Nov 9 01:40:40 1997 Manfred Hollstein (manfred@s-direktnet.de)
-
- * m88k/dgux.h (ASM_CPU_SPEC): Reformatted to suppress wrong whitespace
- in generated `specs' file.
-
-Sun Nov 9 01:37:11 1997 Jim Wilson (wilson@cygnus.com)
-
- * flags.h (flag_rerun_loop_opt): Declare.
- * loop.c (invariant_p, case LABEL_REF): Check flag_rerun_loop_opt.
- * toplev.c (flag_rerum_loop_opt): Delete static.
-
-Sat Nov 8 18:20:21 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- Bring over from FSF:
-
- Thu Oct 30 12:21:06 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * va-sh.h (__va_arg_sh1): Define.
- (va_arg): Use it.
- SH3E doesn't use any integer registers for subsequent arguments
- once a non-float value was passed in the stack.
- * sh.c (machine_dependent_reorg): If optimizing, put explicit
- alignment in front label for ADDR_DIFF_VEC.
- * sh.h (PASS_IN_REG_P): Fix SH3E case.
- (ADJUST_INSN_LENGTH): If not optimizing, add two extra bytes length.
-
- Tue Oct 28 15:06:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Undefine before including
- svr4.h.
-
- Mon Oct 27 16:11:52 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.c (machine_dependent_reorg): When -flag_delayed_branches,
- put an use_sfunc_addr before each sfunc.
- * sh.md (use_sfunc_addr, dummy_jump): New insns.
- (casesi): For TARGET_SH2, emit a dummy_jump after LAB.
-
- Tue Oct 21 07:12:28 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh/elf.h (PREFERRED_DEBUGGING_TYPE): Don't redefine.
-
-Fri Nov 7 10:22:24 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * frame.c (add_fdes, count_fdes): Go back to checking pc_begin for
- linked once FDEs.
-
-Wed Nov 5 14:26:05 1997 Jeffrey A Law (law@cygnus.com)
-
- * alias.c (find_base_value): Only return the known base value for
- pseudo registers.
-
-Wed Nov 5 11:27:14 1997 Jim Wilson <wilson@cygnus.com>
-
- * i386.c (load_pic_register): Call prologue_get_pc_and_set_got.
- * i386.md (prologue_set_got, prologue_get_pc): Add UNSPEC_VOLATILE
- to pattern.
- (prologue_get_pc_and_set_got): New pattern.
-
-Tue Nov 4 20:36:50 1997 Richard Henderson (rth@cygnus.com)
-
- * alpha.c (summarize_insn): Handle ASM_OPERANDS. Don't recurse
- for SUBREG, just fall through.
-
- * alpha.c (alpha_handle_trap_shadows): Init sum.defd to zero.
-
- * alpha.md (attr trap): Make TRAP_YES nonzero for sanity's sake.
-
-Tue Nov 4 18:49:42 1997 Jeffrey A Law (law@cygnus.com)
-
- * fixincludes: Fix "hypot" prototype in NeXT math.h.
-
- * Makefile.in (USE_ALLOCA): Always include alloca.o.
- (USE_HOST_ALLOCA): Likewise.
-
- * rtl.def (CODE_LABEL): Use separate fields for LABEL_NUSES
- and LABEL_REFS fields.
- * rtl.h (LABEL_REFS): Update.
-
-Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
-
- * combine.c (try_combine): When setting elim_i2, check whether newi2pat
- sets i2dest. When calling distribute_notes for i3dest_killed, pass
- elim_i2 and elim_i1. When setting elim_i1, check if newi2pat
- sets i1dest.
-
- * mips.md (insv, extzv, extv): Add change_address call.
- (movsi_ulw, movsi_usw): Change QImode to BLKmode in pattern.
-
- * integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
-
- * reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
-
- * mips.c (mips_expand_epilogue): Emit blockage insn before call to
- save_restore_insns if no FP and GP will be restored.
-
- * dwarf2out.c (expand_builtin_dwarf_reg_size): New variable mode.
- Convert CCmode to word_mode before calling GET_MODE_SIZE.
-
- * acconfig.h (HAVE_INTTYPES_H): Undef.
- * configure.in (inttypes.h): Check for conflicts between sys/types.h
- and inttypes.h, and verify that intmax_t is defined.
- * config/mips/x-iris (CC, OPT, OLDCC): Comment out.
- * config/mips/x-iris3: Likewise.
-
-Tue Nov 4 16:07:15 1997 Jeffrey A Law (law@cygnus.com)
-
- * alias.c (find_base_value): When copying arguments, return the
- tentative value for a hard register.
-
-Tue Nov 4 13:40:35 1997 Doug Evans <devans@canuck.cygnus.com>
-
- * c-lex.c (MULTIBYTE_CHARS): #undef if cross compiling.
- (yylex): Record wide strings using target endianness, not host.
-
-Tue Nov 4 13:13:12 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10200.h (ASM_OUTPUT_BSS): Delete.
- (ASM_OUTPUT_ALIGNED_BSS): New macro.
- * mn10300.h (ASM_OUTPUT_BSS): Delete.
- (ASM_OUTPUT_ALIGNED_BSS): New macro.
- * v850.h (ASM_OUTPUT_BSS): Delete.
- (ASM_OUTPUT_ALIGNED_BSS): New macro.
-
-Tue Nov 4 00:55:48 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * profile.c (branch_prob): Insert an insn after a NOTE_INSN_SETJMP.
-
-Mon Nov 3 14:36:50 1997 Jeffrey A Law (law@cygnus.com)
-
- * configure.in (sco5): Use cpio to install header files.
-
-Sun Nov 2 23:31:43 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * aclocal.m4 (conftestdata_from, conftestdata_to): Names shortened to
- 14 char length.
- * configure: Rebuild.
-
-Sun Nov 2 19:44:00 1997 Robert Lipe (robertl@dgii.com)
-
- * i386/sco5.h: Enable -gstabs once again.
-
-Sun Nov 2 19:27:21 1997 Jeffrey A Law (law@cygnus.com)
-
- * arm.c (output_move_double): Allocate 3 entries in otherops array.
-
-Sat Nov 1 21:43:00 1997 Mike Stump <mrs@wrs.com>
-
- * except.c (expand_eh_region_start_for_decl): Emit EH_REGION_BEG
- notes for sjlj exceptions too.
- (expand_eh_region_end): Similarly for EH_REGION_END notes.
- (exception_optimize): Optimize EH regions for sjlj exceptions too.
- * final.c (final_scan_insn): Don't output labels for EH REGION
- notes if doing sjlj exceptions.
-
-Sat Nov 1 19:15:28 1997 Jeffrey A Law (law@cygnus.com)
-
- * alias.c (init_alias_analysis): Handle -fno-alias-check when
- optimizing correctly.
-
- * expr.c (expand_builtin_setjmp): Don't emit a SETJMP note
- or set current_function_calls_setjmp anymore.
-
- * flow.c (find_basic_blocks): If we delete the label for an
- exception handler, remove it from the EH label list and remove
- the EH_BEGIN/EH_END notes for that EH region.
-
-Sat Nov 1 16:44:49 1997 Jason Merrill (jason@cygnus.com)
-
- * flow.c (find_basic_blocks): Generate correct flow control
- information when exception handling notes are present.
-
-Sat Nov 1 13:42:19 1997 Jeffrey A Law (law@cygnus.com)
-
- * dwarf2out.c (output_call_frame_info): Fix length argument
- to ASM_OUTPUT_ASCII.
- (output_die, output_pubnames, output_line_info): Likewise.
-
-Fri Oct 31 07:10:09 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
- * dwarf2out.c (output_call_frame_info): Use ASM_OUTPUT_ASCII to
- output ASCII by default. Only use ASM_OUTPUT_DWARF_STRING if
- flag_debug_asm is on.
- (output_die, output_pubnames, output_line_info): Likewise.
-
- * alias.c (init_alias_analysis): Add struct_value_incoming_rtx
- and static_chain_rtx into the potential base values array if
- they are registers.
-
- * alias.c (new_reg_base_value): New array of potential base values.
- (unique_id): Now file scoped static.
- (find_base_value, case REG): Return the value in reg_base_value
- array for the REG if it exists. Else, return the value from
- new_reg_base_value if copying args and REG is a hard register.
- (find_base_value, case PLUS): If either operand of the PLUS is
- a REG, try to get its base value. Handle base + index and
- index + base.
- (record_set): Use new_reg_base_value instead of reg_base_value.
- (init_alias_analysis): Allocate space for new_reg_base_value too.
- Rework code to iterate over the insns propagating base value
- information until nothing changes.
-
- * global.c (global_alloc): Free the conflict matrix after
- reload has finished.
-
-Fri Oct 31 01:45:31 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * libgcc2.c (L_eh): Define __eh_pc.
- Replace __eh_type with generic pointer __eh_info.
-
-Fri Oct 31 00:34:55 1996 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * expr.c (expand_increment): When enqueing a postincrement for a MEM,
- use copy_to_reg if address is not a general_operand.
-
-Fri Oct 31 00:16:55 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * profile.c (output_func_start_profiler): Clear flag_inline_functions
- for the duration of the call to rest_of_compilation.
-
-Thu Oct 30 14:40:10 1997 Doug Evans <devans@canuck.cygnus.com>
-
- * configure.in (sparc-*-elf*): Use sparc/elf.h, sparc/t-elf.
- Set extra_parts.
- (sparc*-*-*): Recognize --with-cpu=v9.
- * sparc/elf.h: New file.
- * sparc/t-elf: New file.
-
-Thu Oct 30 13:26:12 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10300.c (const_8bit_operand): New function.
- (mask_ok_for_mem_btst): New function.
- * mn10300.md (btst patterns with mem operands): Use new functions
- to avoid creating btst instructions with invalid operands.
-
-Wed Oct 29 16:57:19 1997 Michael Meissner <meissner@cygnus.com>
-
- * rs6000/xm-sysv4.h: Include xm-linux.h instead of xm-svr4.h if we
- are running on PowerPC Linux.
-
-Wed Oct 29 13:10:11 1997 Gavin Koch <gavin@cygnus.com>
-
- * config/mips/elf64.h (PREFERRED_DEBUGGING_TYPE): Only define
- if not previously defined.
-
-Tue Oct 28 23:55:27 1997 Doug Evans (devans@cygnus.com)
-
- * function.c (assign_parms): Correct mode of stack_parm if
- entry_parm underwent a mode conversion.
-
-1997-10-28 Brendan Kehoe <brendan@lisa.cygnus.com>
-
- * global.c (global_alloc): Use xmalloc instead of alloca for
- CONFLICTS, since max_allocno * allocno_row_words alone can be more
- than 2.5Mb sometimes.
-
-Tue Oct 28 15:29:15 1997 Richard Henderson <rth@cygnus.com>
-
- * reload1.c (eliminate_regs [SET]): If [SUBREG] widened the mode of
- DEST for the spill, adjust mode of SRC to compensate.
-
-Tue Oct 28 14:36:45 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (reload_inqi): Check for MEM before strict_memory_address_p,
- since any_memory_operand() allows pseudos during reload.
- (reload_inhi, reload_outqi, reload_outhi): Likewise.
-
-Tue Oct 28 11:53:14 1997 Jim Wilson <wilson@cygnus.com>
-
- * m68k.md (btst patterns): Add 5200 support.
-
-Tue Oct 28 11:58:40 1997 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * fold-const.c (fold): For ((a * C1) / C3) or (((a * C1) + C2) / C3)
- optimizations, look inside dividend to determine if the expression
- can be simplified by using EXACT_DIV_EXPR.
-
-Tue Oct 28 10:19:01 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- From Brendan:
- * dwarf2out.c (output_call_frame_info): Use l1 instead of ".".
-
-Tue Oct 28 00:32:14 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (summarize_insn [SUBREG]): Propagate SET.
-
-Mon Oct 27 23:59:26 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_handle_trap_shadows): Don't call get_attr_trap
- on a CLOBBER.
-
-Mon Oct 27 21:25:20 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (movqi, movhi): Make sure new insns created during reload
- won't need reloading themselves.
- (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Likewise.
-
-Mon Oct 27 16:11:10 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10300.h (GO_IF_LEGITIMATE_ADDRESS): Disable reg+reg.
-
-Sun Oct 26 13:50:44 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_sa_mask [VMS]): Don't include $26 in the mask.
- Patch from Klaus Kaempf <kkaempf@progis.de>.
-
-Sun Oct 26 13:31:47 1997 Jim Wilson (wilson@cygnus.com)
-
- * expr.c (expand_expr, case INDIRECT_REF): Optimize a reference
- to an element in a constant string.
-
-Sun Oct 26 11:41:49 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c (output_call_frame_info): The CIE pointer is now a 32
- bit PC-relative offset. The exception range table pointer is now in
- the CIE.
- * frame.c (dwarf_cie, dwarf_fde): Rename CIE_pointer to CIE_delta.
- (count_fdes, add_fdes, get_cie): Adjust.
- (cie_info, extract_cie_info, __frame_state_for): Adjust eh_ptr uses.
-
- From H.J. Lu:
- * frame.c (count_fdes, add_fdes): Skip linked once FDE entries.
-
-Sun Oct 26 11:52:01 1997 Richard Henderson <rth@cygnus.com>
-
- * alias.c (memrefs_conflict_p): Treat arg_pointer_rtx just
- like stack_pointer_rtx.
-
-Sun Oct 26 11:32:16 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (bootstrap-lean): Combined with `normal' bootstrap
- targets using "$@" to provide support for similar but not identical
- targets without having to duplicate code.
- (bootstrap4): New goal.
-
- * Makefile.in (compare, compare-lean, compare3): Combined to one
- ruleset determining actions to be performed via $@.
- (compare4, compare4-lean): New targets.
- (gnucompare, gnucompare3): Combined to one ruleset determining
- actions to be performed via $@. Also, note which files failed
- the comparison test in .bad_compare.
- (gnucompare-lean, gnucompare3-lean, gnucompare4-lean): New targets.
-
-Sun Oct 26 10:06:11 1997 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * fold-const (fold): Also simplify FLOOR_DIV_EXPR to EXACT_DIV_EXPR
- if the dividend is a multiple of the divisor.
-
-Sun Oct 26 09:21:40 1997 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (LIBGCC2_CFLAGS): Add -fexceptions.
-
- * alias.c (find_base_term): Handle PRE_INC, PRE_DEC, POST_INC,
- and POS_DEC.
-
- * alias.c (true_dependence): Fix typo.
-
- * toplev.c (flag_rerun_loop_opt): New variable.
- (f_options): Handle -frerun-loop-opt.
- (rest_of_compilation): If -frerun-loop-opt, then run the loop
- optimizer twice.
- (main): Enable -frerun-loop-opt by default for -O2 or greater.
-
- * loop.c (simplify_giv_expr): Adding two invariants results
- in an invariant.
-
-Sun Oct 26 09:15:15 1997 Richard Henderson <rth@cygnus.com>
-
- * expr.c (get_inner_reference): Remove the array bias after
- converting the index to Pmode.
-
-Sat Oct 25 12:20:58 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10300.h (TARGET_SWITCHES): Add -mmult-bug and -mno-mult-bug.
- (TARGET_MULT_BUG): Define.
- (TARGET_DEFAULT): Default to TARGET_MULT_BUG.
- * mn10300.md (mulsi3): Handle TARGET_MULT_BUG.
-
-Fri Oct 24 17:40:34 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10200.c (indirect_memory_operand): Delete unused function.
- * mn10200.h (EXTRA_CONSTRAINT): Handle 'R'.
- * mn10200.md (bset, bclr insns): Handle output in a reg too.
-
-Fri Oct 24 15:54:57 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (call patterns): Revert Oct 16 change; if we are to elide
- the callee's ldgp, we must do it ourselves, and we use the jsr tag
- for more than scheduling.
-
-Fri Oct 24 13:23:04 1997 Doug Evans <devans@canuck.cygnus.com>
-
- * sparc/sparc.h (ASM_SPEC): Delete asm_arch.
-
-Fri Oct 24 13:19:40 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10300.c (symbolic_operand, legitimize_address): New functions.
- * mn10300.h (LEGITIMIZE_ADDRESS): Call legitimize_address.
- (GO_IF_LEGITIMATE_ADDRESS): Don't allow base + symbolic.
-
-Thu Oct 23 09:35:12 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Thu Oct 23 08:03:59 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * dbxout.c (dbxout_start_new_source_file): Use output_quoted_string
- for FILENAME.
-
-Wed Oct 22 00:34:12 1997 Jeffrey A Law (law@cygnus.com)
-
- * toplev.c (flag_exceptions): Default value is 2.
- (compile_file): If flag_exceptions still has the value 2, then
- set it to 0.
-
- * rs6000.c (struct machine_function): Add pic_offset_table_rtx.
- (rs6000_save_machine_status): Save pic_offset_table_rtx.
- (rs6000_restore_machine_status: Restore pic_offset_table_rtx.
-
- * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
- are shared.
-
- * rs6000.md (*movsi_got_internal_mem): New pattern.
- (*movsi_got_internal_mem splitter): New define_split.
-
-Tue Oct 21 18:14:03 1997 Jim Wilson <wilson@cygnus.com>
-
- * obstack.h (obstack_empty_p): Fix spurious space after backslash.
-
-Tue Oct 21 18:34:01 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
-
- * rs6000.c: Avoid creating a stack frame under SYSV ABI if we
- only need to save LR.
-
-Tue Oct 21 10:06:40 1997 Jeffrey A Law (law@cygnus.com)
-
- * mn10300.md (movqi, movhi): Avoid using address registers as
- destinations unless absolutely necessary.
-
- * mn10200.c (expand_prologue): Fix typo.
-
- * mn10200.h (GO_IF_LEGITIMATE_ADDRESS): Do not allow indexed
- addresses.
- * mn10200.md (neghi2): Provide an alternative which works if
- the input and output register are the same.
-
- * mn10300.c (print_operand): Handle 'S'.
- * mn10300.md (ashlsi3, lshrsi3, ashrsi3): Use %S for
- shift amount in last alternative.
-
- * mn10300.c (expand_epilogue): Rework to handle register restores
- in "ret" and "retf" instructions correctly.
-
-Mon Oct 20 16:47:08 1997 Jim Wilson <wilson@cygnus.com>
-
- * expmed.c (extract_bit_field): Don't make flag_force_mem disable
- extzv for memory operands.
-
- * cse.c (simplify_ternary_operation, case IF_THEN_ELSE): Collapse
- redundant conditional moves to single operand.
-
-Mon Oct 20 15:30:26 1997 Nick Clifton <nickc@cygnus.com>
-
- * v850.h: Move define of __v850__ from CPP_PREDEFINES
- to CPP_SPEC.
-
- * xm-v850.h: Use __v850 rather than __v850__ to
- identify v850 port.
-
-Mon Oct 20 14:15:02 1997 Jim Wilson <wilson@cygnus.com>
-
- * mips/mips.c (compute_frame_size): Not a leaf function if
- profile_flag set.
-
-Mon Oct 20 14:16:38 1997 Geoffrey KEATING <geoffk@ozemail.com.au>
-
- * rs6000/t-ppccomm: Use -msdata=none for crtstuff.
-
-Mon Oct 20 12:28:17 1997 Doug Evans <devans@canuck.cygnus.com>
-
- * sparc/sparc.h (SPARC_V9,SPARC_ARCH64): Delete.
- (DEFAULT_ARCH32_P): New macro.
- (TARGET_ARCH{32,64}): Allow compile time or runtime selection.
- (enum cmodel): Declare.
- (sparc_cmodel_string,sparc_cmodel): Declare.
- (SPARC_DEFAULT_CMODEL): Provide default.
- (TARGET_{MEDLOW,MEDANY}): Renamed to TARGET_CM_{MEDLOW,MEDANY}.
- (TARGET_FULLANY): Deleted.
- (TARGET_CM_MEDMID): New macro.
- (CPP_CPU_DEFAULT_SPEC): Renamed from CPP_DEFAULT_SPEC.
- (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
- (CPP_PREDEFINES): Take out stuff now handled by %(cpp_arch).
- (CPP_SPEC): Rewrite.
- (CPP_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
- (CPP_{ENDIAN,SUBTARGET}_SPEC): New macros.
- (ASM_ARCH{,32,64,_DEFAULT}_SPEC): New macros.
- (ASM_SPEC): Add %(asm_arch).
- (EXTRA_SPECS): Rename cpp_default to cpp_cpu_default.
- Rename asm_default to asm_cpu_default.
- Add cpp_arch32, cpp_arch64, cpp_arch_default, cpp_arch, cpp_endian,
- cpp_subtarget, asm_arch32, asm_arch64, asm_arch_default, asm_arch.
- (NO_BUILTIN_{PTRDIFF,SIZE}_TYPE): Define ifdef SPARC_BI_ARCH.
- ({PTRDIFF,SIZE}_TYPE): Provide 32 and 64 bit values.
- (MASK_INT64,MASK_LONG64): Delete.
- (MASK_ARCH64): Renamed to MASK_64BIT.
- (MASK_{MEDLOW,MEDANY,FULLANY,CODE_MODEL}): Delete.
- (EMBMEDANY_BASE_REG): Renamed from MEDANY_BASE_REG.
- (TARGET_SWITCHES): Always provide 64 bit options.
- (ARCH64_SWITCHES): Delete.
- (TARGET_OPTIONS): New option -mcmodel=.
- (INT_TYPE_SIZE): Always 32.
- (MAX_LONG_TYPE_SIZE): Define ifdef SPARC_BI_ARCH.
- (INIT_EXPANDERS): sparc64_init_expanders renamed to sparc_init_....
- (FUNCTION_{,BLOCK_}PROFILER): Delete TARGET_EMBMEDANY support.
- (PRINT_OPERAND_PUNCT_VALID_P): Add '_'.
- * sparc/linux-aout.h (CPP_PREDEFINES): Take out stuff handled by
- CPP_SPEC.
- (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
- * sparc/linux.h: Likewise.
- * sparc/linux64.h (SPARC_V9,SPARC_ARCH64): Delete.
- (ASM_CPU_DEFAULT_SPEC): Renamed from ASM_DEFAULT_SPEC.
- (TARGET_DEFAULT): Delete MASK_LONG64, MASK_MEDANY, add MASK_64BIT.
- (SPARC_DEFAULT_CMODEL): Define.
- (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
- (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
- (LONG_DOUBLE_TYPE_SIZE): Define.
- (ASM_SPEC): Add %(asm_arch).
- * sparc/sol2.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
- (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
- (TARGET_CPU_DEFAULT): Add ultrasparc case.
- * sparc/sp64-aout.h (SPARC_V9,SPARC_ARCH64): Delete.
- (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT.
- (SPARC_DEFAULT_CMODEL): Define.
- * sparc/sp64-elf.h (SPARC_V9,SPARC_ARCH64): Delete.
- (TARGET_DEFAULT): MASK_ARCH64 renamed to MASK_64BIT. Delete
- MASK_LONG64, MASK_MEDANY.
- (SPARC_DEFAULT_CMODEL): Define.
- (CPP_PREDEFINES): Delete.
- (CPP_SUBTARGET_SPEC): Renamed from CPP_SPEC.
- (ASM_SPEC): Add %(asm_arch).
- (LONG_DOUBLE_TYPE_SIZE): Define.
- (DWARF2_DEBUGGING_INFO): Define.
- * sparc/splet.h (CPP_SPEC): Delete.
- * sparc/sysv4.h (CPP_PREDEFINES): Take out stuff handled by CPP_SPEC.
- (FUNCTION_BLOCK_PROFILER): Delete TARGET_EMBMEDANY support.
- (BLOCK_PROFILER): Likewise.
- * sparc/sparc.c (sparc_cmodel_string,sparc_cmodel): New globals.
- (sparc_override_options): Handle code model selection.
- (sparc_init_expanders): Renamed from sparc64_init_expanders.
- * sparc/sparc.md: TARGET_<code_model> renamed to TARGET_CM_....
- TARGET_MEDANY renamed to TARGET_CM_EMBMEDANY.
- (sethi_di_embmedany_{data,text}): Renamed from sethi_di_medany_....
- (sethi_di_fullany): Delete.
-
-Mon Oct 20 02:00:18 1997 Klaus Kaempf <kkaempf@progis.de>
- Jeff Law <law@cygnus.com>
- Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * alpha/vms.h (DIVSI3_LIBCALL): OTS$ functions are upper case.
- (DIVDI3_LIBCALL, UDIVSI3_LIBCALL, UDIVDI3_LIBVALL): Likewise.
- (MODSI3_LIBCALL, MODDI3_LIBCALL): Likewise.
- (UMODSI3_LIBCALL, UMODDI3_LIBCALL): Likewise.
- * alpha/alpha.md (arg_home): Likewise.
-
- * alpha/alpha.c (vmskrunch): Delete.
- * alpha/vms.h (ENCODE_SECTION_INFO, ASM_DECLARE_FUNCTION_NAME): Delete.
- * alpha.c (output_prolog, VMS): Use alloca for entry_label and don't
- truncate to 64 characters.
-
- * make-l2.com: Support openVMS/Alpha.
-
- * vmsconfig.com: Fix to work on openVMS/Alpha and openVMS/VAX.
-
-Sun Oct 19 19:00:35 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * longlong.h (count_leading_zeros): Add missing casts to USItype.
-
-Sun Oct 19 18:44:06 1997 Jeffrey A Law (law@cygnus.com)
-
- * i386/bsd386.h (ASM_COMMENT_START): Define.
-
-Sat Oct 18 13:47:15 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.c (restore_tree_status): Also free up temporary storage
- when we finish a toplevel function.
- (dump_tree_statistics): Print stats for backend obstacks.
-
-Sat Oct 18 12:47:31 1997 Doug Evans <dje@canuck.cygnus.com>
-
- * expr.c (use_group_regs): Don't call use_reg for MEMs.
-
-Sat Oct 18 09:49:46 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * libgcc2.c (__throw): Don't copy the return address.
- * dwarf2out.c (expand_builtin_dwarf_reg_size): Ignore return address.
-
- * except.c (exceptions_via_longjmp): Initialize to 2 (uninitialized).
- * toplev.c (main): Initialize exceptions_via_longjmp.
-
- * tree.c: Add extra_inline_obstacks.
- (save_tree_status): Use it.
- (restore_tree_status): If this is a toplevel inline obstack and we
- didn't want to save anything on it, recycle it.
- (print_inline_obstack_statistics): New fn.
- * function.c (pop_function_context_from): Pass context to
- restore_tree_status.
- * obstack.h (obstack_empty_p): New macro.
-
-Sat Oct 18 00:43:59 1997 Jeffrey A Law (law@cygnus.com)
-
- * i386/freebsd.h (ASM_COMMENT_START): Fix.
-
-Fri Oct 17 23:48:52 1997 Jim Wilson (wilson@cygnus.com)
-
- * v850.c (ep_memory_offset): New function.
- (ep_memory_operand, substitute_ep_register, v850_reorg): Call it.
-
- * v850.h (CONST_OK_FOR_*): Add and correct comments.
- (CONSTANT_ADDRESS_P): Add comment.
- (EXTRA_CONSTRAINT): Define 'U'.
- * v850.md: Add comments on bit field instructions.
- (addsi3): Delete &r/r/r alternative. Add r/r/U alternative.
- (lshrsi3): Use N not J constraint.
-
- * v850.md (v850_tst1+1): New define_split for tst1 instruction.
-
- * v850.c (reg_or_0_operand): Call register_operand.
- (reg_or_int5_operand): Likewise.
- * v850.h (MASK_BIG_SWITCH, TARGET_BIG_SWITCH): New macros.
- (TARGET_SWITCHES): Add "big-switch".
- (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE,
- ASM_OUTPUT_BEFORE_BASE_LABEL): Add support for TARGET_BIG_SWITCH.
- (CASE_DROPS_THROUGH): Comment out.
- (CASE_VECTOR_PC_RELATIVE, JUMP_TABLES_IN_TEXT_SECTION): Define.
- * v850.md (cmpsi): Delete compare mode.
- (casesi): New pattern.
-
- * v850.h (CONST_OK_FOR_N): Delete redundant compare against zero.
- * v850.md (ashlsi3): Use SImode not QImode for shift count.
- (lshrsi3): Likewise.
-
- * v850.c (print_operand): Add 'c', 'C', and 'z' support. Delete
- unreachable switch statement after 'b' support. Remove "b" from
- strings for 'b' support.
- * v850.md (branch_normal, branch_invert): Change %b to b%b.
-
-Fri Oct 17 23:33:20 1997 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (LIBGCC2_CFLAGS): Avoid a backslash then an
- empty line if @inhibit_libc@ is empty.
-
-Fri Oct 17 23:24:40 1997 Robert Lipe (robertl@dgii.com)
-
- * i386/sco5.h: Let ELF use dwarf2 unwinding. COFF uses sjlj.
- (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
- (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
- (DWARF2_UNWIND_INFO): Let this track object file format.
- (EXTRA_SECTIONS): Add in_eh.
- (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
- (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
-
-Fri Oct 17 17:13:42 1997 David S. Miller <davem@tanya.rutgers.edu>
-
- * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
- * sparc/sparc.h (FUNCTION_PROFILER): Fix format string when
- TARGET_MEDANY.
- * sparc/sparc.c (dwarf2out_cfi_label): Extern no longer needed.
- (output_double_int): Output DI mode values correctly when
- HOST_BITS_PER_WIDE_INT is 64.
- (output_fp_move_quad): If TARGET_V9 and not TARGET_HARD_QUAD, use
- fmovd so it works if a quad float ends up in one of the upper 32
- float regs.
- * sparc/sparc.md (pic_{lo_sum,sethi}_di): New patterns
- necessary for PIC support on sparc64.
-
-Fri Oct 17 13:39:56 1997 Doug Evans <dje@canuck.cygnus.com>
-
- * sparc/sp64-elf.h (TARGET_DEFAULT): Delete MASK_STACK_BIAS.
- * sparc/sparc.h (PROMOTE_MODE): Promote small ints if arch64.
- (PROMOTE_FUNCTION_ARGS,PROMOTE_FUNCTION_RETURN): Define.
- (SPARC_FIRST_FP_REG, SPARC_FP_REG_P): New macros.
- (SPARC_{OUTGOING,INCOMING}_INT_ARG_FIRST): New macros.
- (SPARC_FP_ARG_FIRST): New macro.
- (CONDITIONAL_REGISTER_USAGE): All v9 fp regs are volatile now.
- (REG_ALLOC_ORDER,REG_LEAF_ALLOC_ORDER): Reorganize fp regs.
- (NPARM_REGS): There are 32 fp argument registers now.
- (FUNCTION_ARG_REGNO_P): Likewise.
- (FIRST_PARM_OFFSET): Update to new v9 abi.
- (REG_PARM_STACK_SPACE): Define for arch64.
- (enum sparc_arg_class): Delete.
- (sparc_arg_count,sparc_n_named_args): Delete.
- (struct sparc_args): Redefine and use for arch32 as well as arch64.
- (GET_SPARC_ARG_CLASS,ROUND_REG,ROUND_ADVANCE): Delete.
- (FUNCTION_ARG_ADVANCE): Rewrite.
- (FUNCTION_ARG,FUNCTION_INCOMING_ARG): Rewrite.
- (FUNCTION_ARG_{PARTIAL_NREGS,PASS_BY_REFERENCE}): Rewrite.
- (FUNCTION_ARG_CALLEE_COPIES): Delete.
- (FUNCTION_ARG_{PADDING,BOUNDARY}): Define.
- (STRICT_ARGUMENT_NAMING): Define.
- (doublemove_string): Declare.
- * sparc/sparc.c (sparc_arg_count,sparc_n_named_args): Delete.
- (single_move_string): Use GEN_INT, and HOST_WIDE_INT.
- (doublemove_string): New function.
- (output_move_quad): Clean up some of the arch64 support.
- (compute_frame_size): Add REG_PARM_STACK_SPACE if arch64.
- Don't add 8 bytes of reserved space if arch64.
- (sparc_builtin_saveregs): Combine arch32/arch64 versions.
- (init_cumulative_args): New function.
- (function_arg_slotno): New static function.
- (function_arg,function_arg_partial_nregs): New functions.
- (function_arg_{pass_by_reference,advance}): New functions.
- (function_arg_padding): New function.
- * ginclude/va-sparc.h: Rewrite v9 support.
-
-Fri Oct 17 12:29:48 1997 Christian Iseli <Christian.Iseli@lslsun.epfl.ch>
-
- * regclass.c (record_address_regs): Look at REG_OK_FOR_{BASE,INDEX}_P
- for hard regs to determine base and index registers.
-
- * reload.c (debug_reload_to_stream): New function. Specify stream
- into which to write debug info.
- (debug_reload): Modify to call debug_reload_to_stream with stderr.
-
-Thu Oct 16 15:07:51 1997 Richard Henderson <rth@cygnus.com>
-
- * combine.c (can_combine_p): Don't combine with an asm whose
- output is a hard register.
-
-Thu Oct 16 15:43:26 1997 Mike Stump <mrs@wrs.com>
-
- * c-decl.c (start_struct): Ensure that structs with forward
- declarations are in fact packed when -fpack-struct is given.
-
- * stor-layout.c (layout_record): Ignore STRUCTURE_SIZE_BOUNDARY if
- we are packing a structure. This allows a structure with only
- bytes to be aligned on a byte boundary and have no padding on a
- m68k.
-
-Thu Oct 16 15:17:54 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * rs6000.h (ROUND_TYPE_ALIGN): Don't blow up if no fields in record.
-
-Thu Oct 16 11:20:30 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (alpha_return_addr_rtx): New variable.
- (alpha_save_machine_status): New; save it.
- (alpha_restore_machine_status): New; restore it.
- (alpha_init_expanders): New; clear it.
- (alpha_return_addr): New; set it.
- (alpha_ra_ever_killed): New; if alpha_return_addr_rtx, regs_ever_live
- is overly conservative, so search the insns explicitly.
- (alpha_sa_mask [VMS]): Check alpha_ra_ever_killed.
- (alpha_sa_size [VMS && !VMS]): Likewise.
- * alpha.h (RETURN_ADDR_RTX): Call alpha_return_addr.
- (INIT_EXPANDERS): New definition.
-
- * alpha.c: Move REG_PV, REG_RA somewhere more visible in the file.
- (output_prolog [!VMS]): Use them.
-
- * alpha.c (output_prolog [!VMS]): Move gp detection to ...
- (alpha_does_function_need_gp): ... a new function. Refine the
- CALL_INSN test to just TYPE_JSR.
- * alpha.md (most call insns): Fix some jsr/ibr type transpositions.
-
-Thu Oct 16 09:36:47 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Wed Oct 15 21:38:18 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * pa.c (move_operand): Respect -mdisable-indexing.
- * pa.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
-
-Wed Oct 15 21:34:45 1997 David Edelsohn <edelsohn@mhpcc.edu>
-
- * rs6000.md (udivsi3, divsi3): Split into MQ and non-MQ cases for
- PPC601.
- (umulsidi3,umulsi3_highpart): Likewise.
- (smulsi3_highpart_no_mq): Add !TARGET_POWER.
-
-Wed Oct 15 18:21:46 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.c (final_prescan_insn): Gut, remove and transform to ...
- (alpha_handle_trap_shadows): ... a new function. Handle the entire
- function in one go. Emit RTL for trapb, instead of printf directly.
- (alpha_reorg): New function. Call alpha_handle_trap_shadows.
- (trap_pending): Kill global variable.
- (output_epilog): Don't call final_prescan_insn.
- (struct shadow_summary): Elide $31 and $f31; now it fits in a word.
- * alpha.h (FINAL_PRESCAN_INSN): Remove.
- (MACHINE_DEPENDENT_REORG): Define.
- * alpha.md (jsr patterns with trapb): Stupid and useless. Kill.
- (trapb): New insn.
-
-Wed Oct 15 18:16:05 1997 Richard Henderson <rth@cygnus.com>
-
- Tune Haifa scheduler for Alpha:
- * alpha.h (ISSUE_RATE): Define.
- * alpha.c (alpha_adjust_cost): Handle EV5 mult delay; don't apply
- EV4 adjustments to EV5.
- * alpha.md: Remove all scaling from function unit delays. Rework
- EV5 function units to match the CPU.
- (umuldi3_highpart): EV5 added the IMULH insn class.
-
-Wed Oct 15 17:42:41 1997 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (following_call): Fail if the CALL_INSN is an indirect
- call.
-
-Tue Oct 14 12:01:00 1997 Mark Mitchell <mmitchell@usa.net>
-
- * cplus-dem.c (demangle_signature): Don't look for return types on
- constructors. Handle member template constructors.
-
-Tue Oct 14 11:30:29 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * tree.c (expr_tree_cons, build_expr_list, expralloc): New fns.
- * tree.h: Declare them.
-
-Fri Oct 10 13:46:56 1997 Doug Evans <dje@canuck.cygnus.com>
-
- * configure.in: Handle --with-newlib.
- * Makefile.in (LIBGCC2_CFLAGS): Add @inhibit_libc@.
-
- * sparc/t-sp64 (LIBGCC2_CFLAGS): Delete.
-
-Wed Oct 8 14:37:44 1997 Jeffrey A Law (law@cygnus.com)
-
- * config/ptx4.h: Fix typo.
-
-Wed Oct 8 08:57:20 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Tue Oct 7 16:27:34 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * aclocal.m4: Substitute INSTALL.
- * configure: Re-built.
-
-Tue Oct 7 15:37:35 1997 Jeffrey A Law (law@cygnus.com)
-
- * integrate.c (save_for_inline_copying): Avoid undefined pointer
- operations.
- (expand_inline_function): Likewise.
-
- * dwarf2out.c (output_call_frame_info): Reinstate last change
- using flag_debug_asm check instead of flag_verbose_asm.
-
-Tue Oct 7 12:57:26 1997 Jim Wilson <wilson@cygnus.com>
-
- * dwarf2out.c (output_call_frame_info): Remove last change.
-
-1997-10-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * frame.c (__frame_state_for): Execute the FDE insns until the
- current pc value is strictly bigger than the target pc value.
-
-Tue Oct 7 11:00:42 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * regclass.c (init_reg_modes): If we can't find a mode for the
- register, use the previous one.
-
-Tue Oct 7 10:55:34 1997 Richard Henderson <rth@cygnus.com>
-
- * haifa-sched.c (print_block_visualization): Call fprintf directly,
- don't sprintf through an alloca'ed buffer.
-
-Tue Oct 7 10:52:29 1997 Thomas Koenig (ig25@rz.uni-karlsruhe.de)
-
- * reload.c (decompose): Always initialize val.base.
-
-Tue Oct 7 10:19:26 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
-
- * m68k/mot3300.h (ASM_OUTPUT_ALIGN): Accept any alignment
- instead of aborting.
- * dwarf2out.c (output_call_frame_info): Call app_enable and
- app_disable to let GNU as accept the generated comments.
-
-Tue Oct 7 11:41:21 1997 Michael Meissner <meissner@cygnus.com>
-
- * tree.h (get_file_function_name): Add declaration.
- * dwarf2out.c (output_call_frame_info): No need to cast
- get_file_function_name call anymore.
- * profile.c (toplevel): Remove get_file_function_name
- declaration.
- * c-lang.c (finish_file): Likewise.
-
-Tue Oct 7 10:01:45 1997 Chip Salzenberg <chip@rio.atlantic.net>
-
- * Makefile.in (program_transform_name): Let autoconf substitute
- the correct value.
-
-Tue Oct 7 09:54:35 1997 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (schedule_block): If the first real insn in a
- block has any special notes attached to it, remove them.
-
-Tue Oct 7 09:48:51 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.h (FLOAT_STORE_FLAG_VALUE): It's 2.0 not 0.5.
-
-Mon Oct 6 12:47:32 1997 Manfred Hollstein (manfred@lts.sel.alcatel.de)
-
- * m88k.c (m88k_begin_prologue): Remove superfluous backslash.
-
-Mon Oct 6 12:04:24 1997 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (check-g77): New test target.
- (CHECK-TARGETS): Add check-g77.
-
-Fri Oct 3 11:56:36 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * toplev.c (rest_of_compilation): Defer all non-nested inlines.
-
-Fri Oct 3 15:49:27 1997 Michael Meissner <meissner@cygnus.com>
-
- * flow.c (print_rtl_with_bb): Cast alloca return value for
- in_bb_p.
-
-Thu Oct 2 21:15:03 1997 Richard Henderson <rth@cygnus.com>
-
- * i386.h (RETURN_ADDR_RTX): New definition that works for
- __builtin_return_address(0) and -fomit-frame-pointer.
-
-Wed Oct 1 13:43:53 1997 Jim Wilson <wilson@cygnus.com>
-
- Bring over from FSF.
- Tue Aug 5 16:10:45 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * mips.c (function_arg): Handle passing a struct
- containing a double in a DFmode register without the PARALLEL.
-
-Wed Oct 1 11:13:25 1997 Ian Lance Taylor <ian@cygnus.com>
-
- * pexecute.c: Use spawn if __CYGWIN32__.
-
- * pexecute.c: Include "config.h" first, as per autoconf manual
- (from Paul Eggert <eggert@twinsun.com>).
-
-Wed Oct 1 01:44:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
-
- * m68k/x-mot3300 (XCFLAGS): Disable as's long/short jump
- optimization for f/expr.o and f/stb.o.
-
-Tue Sep 30 23:48:57 1997 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (this_insn_cc0_mode): Initialize.
-
-Tue Sep 30 23:09:40 1997 Thomas Koenig <ig25@mvmap66.ciw.uni-karlsruhe.de>
-
- * cccp.c (expand_to_temp_buffer): Initialize all members of obuf.
-
- * haifa-sched.c (get_block_head_tail): Remove unneeded initialization.
-
-Tue Sep 30 23:06:43 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha.md (beq): For registers and ints 0-255, use cmpeq+bne, since
- that pair will dual-issue on the 21164 and plus+beq won't.
- (bne): Likewise for cmpeq+beq.
-
-Tue Sep 30 16:07:58 1997 Jim Wilson <wilson@cygnus.com>
-
- * except.c (find_exception_handler_labels): Correct argument to free.
-
-Tue Sep 30 11:00:00 1997 Brendan Kehoe <brendan@lisa.cygnus.com>
-
- * except.c (find_exception_handler_labels): Free LABELS when we're
- done.
-
-Mon Sep 29 14:04:35 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Mon Sep 29 10:51:53 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * flow.c (find_basic_blocks): Mark calls as potentially jumping
- to the EH labels.
-
-Mon Sep 29 09:58:06 1997 Jeffrey A Law (law@cygnus.com)
-
- * configure.in: Substitute for "install" too.
- * configure: Rebuilt.
-
-Mon Sep 29 00:38:42 1997 Aaron Jackson <jackson@negril.msrce.howard.edu>
-
- * Makefile.in (bootstrap-lean, compare-lean): New targets.
-
-Mon Sep 29 00:18:16 1997 Richard Henderson (rth@cygnus.com)
-
- * alias.c (base_alias_check): Two symbols can conflict if they
- are accessed via AND.
- (memrefs_conflict_p): Likewise.
-
- * alpha.h (SETUP_INCOMING_VARARGS): Emit a blockage insn
- after flushing argument registers to the stack.
-
- * Makefile.in (mostlyclean): Remove .regmove files.
-
-Sun Sep 28 18:59:58 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * libgcc2.c (__throw): Fix thinko.
-
-Sun Sep 28 12:00:52 1997 Mark Mitchell <mmitchell@usa.net>
-
- * cplus-dem.c (demangle_template): Add new parameter. Handle new
- template-function mangling.
- (consume_count_with_underscores): New function.
- (demangle_signature): Handle new name-mangling scheme.
-
-Sun Sep 28 01:55:04 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
-
- * flow.c (print_rtl_with_bb): Cast alloca return values for variables
- start and end.
-
-Sun Sep 28 01:05:16 1997 Jeffrey A Law (law@cygnus.com)
-
- * frame.c: Remove last change.
- * dwarf2.h: Remove last change.
- * tree.h: Add declarations of DWARF2 unwind info support
- functions.
-
-Sat Sep 27 11:02:38 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * c-decl.c (init_decl_processing): Add __builtin_dwarf_reg_size.
- * tree.h (built_in_function): Likewise.
- * expr.c (expand_builtin): Likewise.
- * except.h: Likewise.
- * dwarf2out.c (expand_builtin_dwarf_reg_size): New fn.
- * libgcc2.c (copy_reg): New fn.
- (__throw): Use it.
-
-Fri Sep 26 08:54:59 1997 Paul Eggert <eggert@twinsun.com>
-
- * c-typeck.c (build_binary_op): Warn about comparing signed vs
- unsigned if -W is specified and -Wno-sign-compare is not.
- * c-decl.c (warn_sign_compare): Initialize to -1.
- (c_decode_option): -Wall no longer implies -Wsign-compare.
-
-Fri Sep 26 09:00:13 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * frame.c: Include gansidecl.h for PROTO.
- * dwarf2out.c: Move inclusion of dwarf2.h down so that PROTO is
- defined. Don't declare dwarf2out_cfi_label here.
- * dwarf2.h: Add declarations of DWARF2 unwind info support
- functions.
- * m68k.c: Include dwarf2.h.
- (output_function_prologue): Add dwarf2 support.
- * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM): New macros.
- (INCOMING_FRAME_SP_OFFSET): Likewise.
-
- * integrate.c (expand_inline_function): Make sure there is at
- least one insn that can be used as an insertion point.
-
-Wed Sep 24 21:34:06 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c: s/flag_verbose_asm/flag_debug_asm/
-
-Wed Sep 24 22:05:30 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Wed Sep 24 17:36:23 1997 Doug Evans <dje@canuck.cygnus.com>
-
- Bring over from FSF.
-
- Wed Sep 24 19:17:08 1997 Doug Evans <dje@cygnus.com>
-
- * sparc/sparc.md (get_pc_via_call): Renamed from get_pc_sp32.
- (get_pc_via_rdpc): Renamed from get_pc_sp64.
- * sparc/sparc.c (finalize_pic): Update call to gen_get_pc_via_call.
-
- Wed Sep 24 18:38:22 1997 David S. Miller <davem@tanya.rutgers.edu>
-
- * sparc/sparc.h (ASM_CPU_SPEC): Pass -Av9a for v8plus, ultrasparc.
- (TARGET_OPTIONS): Add -malign-loops=, -malign-jumps=,
- -malign-functions=.
- (sparc_align_{loops,jumps,funcs}_string): Declare.
- (sparc_align_{loops,jumps,funcs}): Declare.
- (DEFAULT_SPARC_ALIGN_FUNCS): New macro.
- (FUNCTION_BOUNDARY): Use sparc_align_funcs.
- (STACK_BIAS): Define.
- (SPARC_SIMM*_P): Cast to unsigned HOST_WIDE_INT first, then perform
- test.
- (SPARC_SETHI_P): New macro.
- (CONST_OK_FOR_LETTER_P): Use it.
- (ASM_OUTPUT_ALIGN_CODE): Define.
- (ASM_OUTPUT_LOOP_ALIGN): Define.
- * sparc/sparc.c (sparc_align_{loops,jumps,funcs}_string): New globals.
- (sparc_align_{loops,jumps,funcs}): New globals.
- (sparc_override_options): Handle -malign-loops=, -malign-jumps=,
- -malign-functions=.
- (move_operand): Use SPARC_SETHI_P.
- (arith_double_operand): Cast to unsigned HOST_WIDE_INT first, then
- perform test.
- (arith11_double_operand): Likewise.
- (arith10_double_operand): Likewise.
- (finalize_pic): Finish sparc64 support.
- (emit_move_sequence): Use SPARC_SETHI_P. Simplify low part of
- 64 bit constants if able.
- (output_fp_move_quad): Don't use fmovq unless TARGET_HARD_QUAD.
- (sparc_builtin_saveregs, sparc64 case): Don't save fp regs if
- ! TARGET_FPU.
- * sparc/sparc.md (*): Use GEN_INT instead of gen_rtx.
- (get_pc_sp32): Use for sparc64 as well.
- (lo_sum_di_sp{32,64}): Fix handling on 64 bit hosts.
- (sethi_di_sp64_const): Likewise.
- (movtf_cc_sp64): Check TARGET_HARD_QUAD.
- (cmp_zero_extract_sp64): Use unsigned HOST_WIDE_INT in cast.
- (ashlsi3, ashldi3, ashrsi3, ashrdi3, lshrsi3, lshrdi3): Likewise.
-
- Tue Sep 23 19:02:46 1997 Doug Evans <dje@cygnus.com>
-
- * sparc/linux-aout.h (COMMENT_BEGIN): Delete.
- * sparc/linux.h (COMMENT_BEGIN): Likewise.
- * sparc/linux64.h (COMMENT_BEGIN): Likewise.
-
- Tue Sep 23 14:48:18 1997 David S. Miller <davem@tanya.rutgers.edu>
-
- Add sparc64 linux support.
- * configure.in (sparc64-*-linux*): Recognize. Add sparc/xm-sparc.h
- to xm_file list on 32-bit sparc-linux.
- * sparc/xm-sp64.h: New file.
- * sparc/linux64.h: New file.
- * sparc/xm-linux.h: Include some standard headers if not inhibit_libc.
- Don't include xm-sparc.h.
- * config/xm-linux.h (HAVE_PUTENV, HAVE_ATEXIT): Define.
- * glimits.h (LONG_MAX): Handle sparc64.
-
- Sat Sep 20 03:07:54 1997 Doug Evans <dje@cygnus.com>
-
- * sparc/sysv4.h (ASM_COMMENT_START): Delete.
- * sparc.h (ASM_COMMENT_START): Define.
- * sparc.c (output_function_prologue): Use it.
- (sparc_flat_output_function_{epi,pro}logue): Likewise.
-
- Wed Sep 17 15:04:19 1997 Doug Evans <dje@cygnus.com>
-
- * sparc/sysv4.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Delete,
- use sparc.h's copies.
- * sparc/sparc.h (ASM_OUTPUT_{FLOAT,DOUBLE,LONG_DOUBLE}): Print
- ascii form as well.
-
- Mon Sep 8 08:45:19 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * sparc.c (dwarf2out_cfi_label): Add declaration.
- (save_regs, output_function_prologue): Remove cast for it.
- (sparc_flat_{save_restore,output_function_prologue): Likewise.
- ({save,restore}_regs): No longer inline.
-
-Tue Sep 23 12:34:51 1997 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * fold-const.c (make_range): Correctly handle cases of converting
- from unsigned to signed type.
-
-Tue Sep 23 12:34:51 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
-
- * fold-const.c (merge_ranges): Make sure that if one range is subset
- of another, it will always be the second range. Correct (+,-) case to
- account for this.
-
-Tue Sep 23 08:32:51 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * final.c (final_end_function): Also do dwarf2 thing if
- DWARF2_DEBUGGING_INFO.
- (final_start_function): Likewise.
-
-Tue Sep 23 01:15:50 1997 David S. Miller <davem@tanya.rutgers.edu>
-
- * expmed.c (expand_divmod): If compute_mode is not the same as
- mode, handle the case where convert_modes() causes op1 to no
- longer be a CONST_INT.
-
- * reorg.c (dbr_schedule): At end of this pass, add REG_BR_PRED
- note holding get_jump_flags() calculation to all JUMP_INSNs.
- * rtl.h (enum reg_note): New note types REG_BR_PRED and REG_SAVE_AREA.
- * rtl.c (reg_note_name): Add new note types.
-
-Tue Sep 23 00:59:54 1997 Jeffrey A Law (law@cygnus.com)
-
- * rtlanal.c (computed_jump_p): Fix typo in last change.
-
-Tue Sep 23 00:42:44 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * loop.c (indirect_jump_in_function_p): Return 0
- by default.
-
-Tue Sep 23 00:33:55 1997 Jeffrey A Law (law@cygnus.com)
-
- * rs6000/xm-rs6000.h: Fix thinko in last change.
- * rs6000/xm-sysv4.h: Likewise.
-
-Mon Sep 22 19:33:53 1997 Jim Wilson <wilson@cygnus.com>
-
- * mips.c (save_restore_insns): Only set RTX_FRAME_RELATED_P if store_p.
-
-Mon Sep 22 14:41:00 1997 Jeffrey A Law (law@cygnus.com)
-
- * reg-stack.c (find_blocks): Fix thinko in last change.
-
-1997-09-21 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * m68k.c (output_function_prologue): Add dwarf2 support.
-
- * m68k.h (INCOMING_RETURN_ADDR_RTX, DWARF_FRAME_REGNUM,
- INCOMING_FRAME_SP_OFFSET): New definitions.
-
-Mon Sep 22 11:36:42 1997 David S. Miller <davem@tanya.rutgers.edu>
-
- * combine.c (try_combine): Use NULL_RTX instead of '0' where
- appropriate in calls to gen_rtx().
- * cse.c (cse_main): Likewise.
- * emit-rtl.c (gen_label_rtx): Likewise.
- * expr.c (init_expr_once): Likewise.
- * haifa-sched.c (flush_pending_lists, sched_analyze_insn,
- sched_analyze, init_rgn_data_dependences,
- compute_block_backward_dependences): Likewise.
- * sched.c (schedule_insns): Likewise.
- * varasm.c (immed_double_const): Likewise.
-
- * sparc.h (INCOMING_FRAME_SP_OFFSET): Define to
- SPARC_STACK_BIAS for sake of dwarf2 on sparc64.
-
-Mon Sep 22 11:21:33 1997 J. Kean Johnston <jkj@sco.com>
-
- * i386/sco5.h: Make ELF default file format and add -mcoff/-melf..
- (MULTILIB_DEFAULTS): Define.
- (ASM_SPEC, CPP_SPEC): Handle -mcoff.
- (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC): Likewise.
- (LIBGCC_SPEC): Likewise.
- (MASK_COFF, TARGET_COFF, TARGET_ELF): Define.
- (SUBTARGET_SWITCHES): Add -mcoff and -melf.
- * i386/t-sco5 (CRTSTUFF_T_CFLAGS): Add -fPIC.
- (CRTSTUFF_T_CFLAGS_S): Tweak for COFF.
- (EXTRA_PARTS, TAROUTOPTS): Delete.
- (libgcc1-elf, libgcc2-elf, libgcc-elf targets): Delete.
- (MULTILIB_OPTIONS): Define.
- (MULTILIB_DIRNAMES, MULTILIB_EXCEPTIONS): Likewise.
- (MULTILIB_MATCHE, MULTILIB_EXTRA_OPTS): Likewise.
-
-Mon Sep 22 02:10:43 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Sep 21 17:45:45 1997 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (loop_number): Delete function. Change all references
- to use uid_loop_num array.
- * loop.h (loop_number): Delete declaration.
- * unroll.c (unroll_loop): Change "loop_number" references to
- use uid_loop_num instead.
-
- * loop.c (loop_unroll_factor): Move outside #ifdef HAIFA
- conditional.
- (loop_unroll_iter): Remove unused variable and all references.
- (loop_optimize): Always allocate and clear space for loop_unroll_factor.
- (insert_bct): Fix minor formatting problems.
- * loop.h (loop_unroll_factor): Move decl outside #ifdef HAIFA.
- (loop_unroll_iter): Removed unused decl.
- * unroll.c (unroll_loop): Remove code to set loop_unroll_iter.
- Always record the unrolling factor.
-
- * cse.c (simplify_relational_operation): Set h0u just like h0s.
- Similarly for h1u and h1s.
-
- * flow.c (jmp_uses_reg_or_mem): Deleted unused function.
- (find_basic_blocks): Use computed_jump_p to determine if a
- particular JUMP_INSN is a computed jump.
- * reg-stack.c (find_blocks): Use computed_jump_p to determine
- if a particular JUMP_INSN is a computed jump.
- * rtlanal.c (jmp_uses_reg_or_mem): New function.
- (computed_jump_p): Likewise.
- * rtl.h (computed_jump_p): Declare.
- * genattrtab.c (pc_rtx): Define and initialize.
- * loop.c (loop_optimize): Always determine if the current
- function has a computed jump.
- (indirect_jump_in_function_p): Use computed_jump_p to determine
- if a particular JUMP_INSN is a computed jump.
-
- * loop.c (fix_bct_param): Delete unused function.
- (check_bct_param): Likewise.
-
-Sat Sep 20 16:22:06 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * frame.c (__deregister_frame): Check properly for initialized object.
-
-Fri Sep 19 20:51:03 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * alpha/linux.h (HANDLE_SYSV_PRAGMA): Defined.
-
-Fri Sep 19 18:53:50 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * jump.c (thread_jumps): Check can_reverse_comparison_p before
- threading a reversed-condition jump.
-
- * sched.c (update_flow_info): Don't pass SCRATCH to dead_or_set_p.
- * haifa-sched.c (update_flow_info): Likewise.
-
-Thu Sep 18 21:13:40 1997 Jeffrey A Law (law@cygnus.com)
-
- * 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): Likewise.
- (macroexpand): Likewise.
- (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 compatibility.
-
-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
- collectible tag.
- * collect2.c (frame_tables): New list.
- (is_ctor_dtor): Recognize 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>
-
- Add port done awhile ago for the ARC cpu.
- * arc/arc.h: New file.
- * arc/arc.c: New file.
- * arc/arc.md: New file.
- * arc/initfini.c: New file.
- * arc/lib1funcs.asm: New file.
- * arc/t-arc: New file.
- * arc/xm-arc.h: New file.
- * ginclude/va-arc.h: New file.
- * ginclude/stdarg.h: Include va-arc.h ifdef __arc__.
- * ginclude/varargs.h: Likewise.
- * Makefile.in (USER_H): Add va-arc.h.
- * configure.in (arc-*-elf*): Recognize.
- * longlong.h: Add ARC support.
-
-Wed Sep 10 01:32:54 1997 Jeffrey A Law (law@cygnus.com)
-
- * expr.c (clear_storage): Use CONST0_RTX instead of const0_rtx.
- when clearing non-BLKmode data.
-
-Wed Sep 10 00:29:29 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * m88k/sysv3.h (INITIALIZE_TRAMPOLINE): Define.
- * libgcc2.c (__enable_execute_stack): Provide for sysV88 too.
-
- * xm-m88k.h (USG): Only define if it hasn't already been defined.
-
- * Makefile.in (risky-stage1): Delete gratuitous whitespace.
-
- * Makefile.in (clean): Delete libgcc1-test.
-
- * Makefile.in (INSTALL): cd to $(srcdir) before running texinfo.
-
-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.
- (CPP_PREDEFINES): Only define if not already specified.
- (TARGET_VERSION): Only define if not already specified.
- (MASK_CPU, MASK_V850, MASK_DEFAULT): Bits to specify target
- processor.
- (EXTRA_SWITCHES): Extra entries in the switches array.
- (TARGET_DEFAULT): Set default target processor.
-
-Mon Sep 8 18:26:35 1997 Jim Wilson <wilson@cygnus.com>
-
- * m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): In MOTOROLA
- cases, add %# and %/, and add : to make them into extended asms.
-
-Sun Sep 7 23:57:50 1997 Weiwen Liu <liu@hepunix.physics.yale.edu>
-
- * alias.c (init_alias_analysis): Clean up incompatible pointer
- type warning in bzero.
- * regmove.c (regmove_optimize): Likewise.
- * haifa-sched.c (find_rgns): Likewise.
-
- * haifa-sched.c (print_value): Clean up ptr->int cast
- warnings.
-
-Sun Sep 7 23:18:32 1997 Fred Fish <fnf@ninemoons.com>
-
- * INSTALL: Change 'amigados' to 'amigaos' to match current usage.
- * install.texi (Configurations): Likewise.
- * config.sub: Likewise.
-
-Sun Sep 7 22:56:56 1997 Weiwen Liu (liu@hepvms.physics.yale.edu)
-
- * Makefile.in (sdbout.o): Depend on insn-config.h.
-
-Sun Sep 7 18:44:50 1997 Jim Wilson <wilson@cygnus.com>
-
- * m68k/m68k.h (TARGET_SWITCHES): For 68000, 68302, subtract MASK_68881.
- For 68303, 68332, cpu32, subtract MASK_68040_ONLY.
-
-Sun Sep 7 18:30:46 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * dwarf2out.c (dwarf2out_frame_debug): Assume that in a PARALLEL
- prologue insn, only the first elt is significant.
- (output_call_frame_info): For exception handling, always use 4-byte
- fields as specified by the dwarf2 spec.
- Don't skip trivial FDEs.
-
-Sun Sep 7 14:19:39 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Sun Sep 7 14:17:36 1997 Torbjorn Granlund (tege@pdc.kth.se)
-
- * expmed.c (expand_divmod): Make op1_is_pow2 depend on unsignedp
- for negative constants. Promote EXACT_DIV_EXPR to TRUNC_DIV_EXPR
- when op1_is_pow2.
-
-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.
-
- * Makefile.in (distclean): Remove various things left around
- by running the testsuite.
-
-Sun Sep 7 13:16:06 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * configure.in (out_file): Emit definition to config.status in order
- to have a defined value for configure.lang.
- * configure: Re-built.
-
-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
- for ld-new.
- * configure: Rebuilt.
-
-Fri Sep 5 16:54:55 1997 Jim Wilson <wilson@cygnus.com>
-
- * profile.c (output_func_start_profiler): Set DECL_EXTERNAL to zero.
-
-Fri Sep 5 16:16:44 1997 Christian Kuehnke <Christian.Kuehnke@arbi.Informatik.Uni-Oldenburg.DE>
-
- * sparc/sparc.md: Add ultrasparc scheduling support.
- * sparc/sparc.h (RTX_COSTS): For MULT give v9 a cost of 25 insns.
-
-Fri Sep 5 14:04:59 1997 Philippe De Muyter <phdm@info.ucl.ac.be>
-
- * integrate.c (save_for_inline_copying): Use 0, not NULL_PTR,
- as initial value for real_label_map.
- (copy_for_inline): Likewise.
-
-Fri Sep 5 13:36:44 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sched.c (update_flow_info): When looking if to set found_split_dest
- or found_orig_dest, look at all parts of a PARALLEL.
- * haifa-sched.c (update_flow_info): Likewise.
-
-Fri Sep 5 10:08:44 1997 Jeffrey A Law (law@cygnus.com)
-
- * v850: New directory for v850 port.
- * v850/lib1funcs.asm: New file.
- * t-v850, v850.c, v850.h, v850.md, xm-v850.h: New files.
- * ginclude/va-v850.h: New file.
- * ginclude/varargs.h, ginclude/stdarg.h: Include va-mn10200.h.
- * configure.in (mn10200-*-*): New target.
- * configure: Rebuilt.
- * config.sub: Handle v850-elf.
- * Makefile.in (USER_H): Add va-mn10200.h.
- * invoke.texi: Document v850 stuff.
-
-Fri Sep 5 09:37:50 1997 Jim Wilson (wilson@cygnus.com)
-
- * sdbout.c (plain_type_1, case ARRAY_TYPE): Verify that TYPE_DOMAIN
- has integer TYPE_{MAX,MIN}_VALUE before using them.
-
- * m68k/m68k.h (MACHINE_STATE_SAVE, MACHINE_STATE_RESTORE): Add
- __HPUX_ASM__ versions.
-
-Fri Sep 5 09:08:44 1997 Jeffrey A Law (law@cygnus.com)
-
- * install.sh: Delete duplicate install script.
-
-Thu Sep 4 23:14:27 1997 Stan Cox (coxs@dg-rtp.dg.com)
-
- * reg-stack.c (subst_stack_regs): Pop the stack register for a
- computed goto which sets the same stack register.
-
- * reg-stack.c (compare_for_stack_reg): Swap only if the source and
- destination are both on the regstack.
- (subst_stack_regs_pat): Put the destination at the top of the regstack.
-
-Thu Sep 4 15:02:27 1997 Jim Wilson <wilson@cygnus.com>
-
- * mips.md (nonlocal_goto_receiver): Define.
-
- * profile.c (output_arc_profiler): Check next_insert_after for non
- NULL before deferencing it.
-
- * i386/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define to -fPIC.
-
-Thu Sep 4 14:51:57 1997 Jeffrey A Law (law@cygnus.com)
-
- * i386.h (CPP_CPU_DEFAULT): Avoid using #elif.
-
-Thu Sep 4 15:01:49 1997 Michael Meissner <meissner@cygnus.com>
-
- * toplev.c (rest_of_compilation): For passes starting with
- flow_analysis, use print_rtl_with_bb instead of print_rtl.
-
- * print-rtl.c (print_rtl_single): Print a single rtl value to a
- file.
-
- * flow.c (print_rtl_with_bb): Print which insns start and end
- basic blocks. For the start of a basic block, also print the live
- information.
-
-Thu Sep 4 11:51:43 1997 Jim Wilson <wilson@cygnus.com>
-
- * toplev.c (main): Change #elif to #else/#ifdef.
-
- * tlink.c: Include ctype.h.
- * ginclude/va-mips.h: Add _VA_MIPS_H_ENUM ifdef/define/endif.
-
-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.
-
-Thu Sep 4 09:58:53 1997 Joel Sherrill (joel@OARcorp.com)
-
- * i960/i960.h: Added default for SUBTARGET_SWITCHES macro.
-
-Thu Sep 4 09:53:20 1997 Jim Wilson (wilson@cygnus.com)
-
- * profile.c (output_arc_profiler): Verify next_insert_after is an
- INSN before and after skipping a stack pop.
-
-Thu Sep 4 07:39:19 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * final.c (shorten_branches): Don't count the lengths of deleted
- instructions.
-
-Thu Sep 4 09:43:01 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
-Thu Sep 4 11:04:21 1997 Michael Meissner <meissner@cygnus.com>
-
- * bitmap.h (EXECUTE_IF_AND_IN_BITMAP): New macro, to iterate over
- two bitmaps ANDed together.
- (bitmap_print): Declare.
-
- * bitmap.c (function_obstack): Don't declare any more.
- (bitmap_obstack): Obstack for allocating links from.
- (bitmap_obstack_init): New static to say whether to initialize
- bitmap_obstack.
- (bitmap_element_allocate): Use bitmap_obstack to allocate from.
- (bitmap_release_memory): Free all memory allocated from
- bitmap_obstack.
-
- * basic-block.h (EXECUTE_IF_AND_IN_REG_SET): New macro, invoke
- EXECUTE_IF_AND_IN_BITMAP.
-
-Wed Sep 3 10:39:42 1997 Jim Wilson <wilson@cygnus.com>
-
- * alias.c (true_dependence): Address with AND can alias scalars.
- (anti_dependence, output_dependence): Likewise.
-
- * alias.c (true_dependence): Test x for BLKmode, in addition to mem.
-
-Wed Sep 3 09:28:50 1997 Joel Sherrill (joel@OARcorp.com)
-
- * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h, m68k/rtems.h,
- mips/rtems64.h, pa/rtems.h, rs6000/rtems.h, sh/rtems.h,
- sparc/rtems.h (subtarget_switches): Removed SUBTARGET_SWITCHES
- definitions. Use -qrtems instead of -mrtems.
-
-Wed Sep 3 09:05:41 1997 Robert Lipe (robert@dgii.com)
-
- * xm-sco5.h (sys_siglist): Define.
- (SYS_SIGLIST_DECLARED): Likewise.
-
-Tue Sep 2 23:33:33 1997 Jeffrey A Law (law@cygnus.com)
-
- * expr.c (convert_move): Handle truncation from TQFmode to QFmode.
-
-Wed Sep 3 02:09:30 1997 Torbjorn Granlund <tege@pdc.kth..se>
-
- * except.c (eh_outer_context): Expand masking operation using
- expand_binop.
-
-Tue Sep 2 18:09:39 1997 Jim Wilson <wilson@cygnus.com>
-
- * alpha.md (floatdisf2-1): New pattern.
-
-Tue Sep 2 18:41:55 1997 Jeffrey A Law (law@cygnus.com)
-
- * xm-svr4.h (SYS_SIGLIST_DECLARED): Define.
- * xm-news.h (SYS_SIGLIST_DECLARED): Likewise.
- * xm-sysv4.h (SYS_SIGLIST_DECLARED): Likewise.
- * gcc.texi: Note that if you define sys_siglist that you should
- also define SYS_SIGLIST_DECLARED.
-
- * mn10200.h (INITIALIZE_TRAMPOLINE): PC relative instructions
- are relative to the next instruction, not the current instruction.
-
-Tue Sep 2 14:22:43 1997 Jim Wilson <wilson@cygnus.com>
-
- * local-alloc.c (contains_replace_regs): New function.
- (update_equiv_regs): When adding a REG_EQUIV note for a set of a MEM,
- verify that there is no existing REG_EQUIV note, and add a call to
- contains_place_regs.
-
-Tue Sep 2 12:48:11 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * config/alpha/elf.h (CPP_PREDEFINES): Add -D__PIC__ -D__pic__.
- (STARTFILE_SPEC): Always use crtbegin.o%s.
- (ENDFILE_SPEC): Always use crtend.o%s.
-
-Tue Sep 2 12:00:36 1997 Jim Wilson <wilson@cygnus.com>
-
- * alpha/alpha.h (PREFERRED_RELOAD_CLASS): Return NO_REGS if NO_REGS
- is passed in.
- * emit-rtl.c (gen_lowpart_common): Add code to convert CONST_INT to
- SFmode for 64 bit hosts.
-
-Tue Sep 2 13:42:38 1997 Paul N. Hilfinger <hilfingr@CS.Berkeley.EDU>
-
- * fixincludes: Permits spaces between # and define. Discard C++
- comments in sys/pci.h on HP/UX 10.20.
-
-Mon Sep 1 22:13:18 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for snapshot.
-
- * pa.c (restore_unscaled_index_insn_codes): New function.
- (record_unscaled_index_insn_codes): Likewise.
- (output_function_prologue): Call restore_unscaled_index_insn_codes.
- (output_function_epilogue): Free memory for unscaled_index_insn_codes.
- (pa_reorg): Call record_unscaled_index_insn_codes.
-
- * haifa-sched.c (move_insn): Handle notes correctly for insns
- with SCHED_GROUP_P set.
-
-Mon Sep 1 16:58:57 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * alpha/xm-linux.h (USE_BFD): Undef before define.
-
-Mon Sep 1 16:25:34 1997 Jim Wilson <wilson@cygnus.com>
-
- * cse.c (cse_insn): Don't record BLKmode values.
-
-Mon Sep 1 11:25:47 1997 Stephen Williams (steve@icarus.icarus.com)
-
- * i960.h (LINK_SPEC): Handle "-mjX" and "-mrp" switches.
-
-Mon Sep 1 08:29:46 1997 Jeffrey A Law (law@cygnus.com)
-
- * cccp.c (sys_errlist): Remove special 4.4bsd declaration.
- * collect2.c (sys_errlist): Likewise.
- * cpplib.c (sys_errlist): Likewise.
- * gcc.c (sys_errlist): Likewise.
- * protoize (sys_errlist): Likewise.
- * configure.in: Check for strerror.
- * xm-freebsd.h (HAVE_STRERROR): Remove definition.
- * xm-gnu.h (HAVE_STRERROR): Likewise.
- * xm-linux.h (HAVE_STRERROR): Likewise.
- * xm-netbsd.h (HAVE_STRERROR): Likewise.
- * xm-bsd386.h (HAVE_STRERROR): Likewise.
- * xm-cygwin32.h (HAVE_STRERROR): Likewise.
- * xm-dos.h (HAVE_STRERROR): Likewise.
- * xm-mingw32.h (HAVE_STRERROR): Likewise.
- * xm-pa.h (HAVE_STRERROR): Likewise.
- * xm-papro.h (HAVE_STRERROR): Likewise.
- * xm-sysv4.h (HAVE_STRERROR): Likewise.
- * configure, config.in: Rebuilt.
-
- * Makefile.in: Add several missing "else true" clauses.
-
- * collect2.c: Change DONT_DECLARE_SYS_SIGLIST to SYS_SIGLIST_DECLARED.
- * mips-tfile.c: Likewise.
- * gcc.texi: DONT_DECLARE_SYS_SIGLIST: Remove docs.
- * xm-linux.h (DONT_DECLARE_SYS_SIGLIST): Delete definition.
- * xm-freebsd.h, xm-bsd386.h, xm-sysv4.h, xm-sol2.h: Likewise.
- * configure.in: Check for sys_siglist declaration.
- * configure, config.in: Rebuilt.
-
-Mon Sep 1 08:04:07 1997 Joel Sherrill (joel@OARcorp.com)
-
- * i386/go32-rtems.h, i386/rtems.h, i960/rtems.h,
- m68k/rtems.h, mips/rtems64.h, pa/rtems.h, rs6000/rtems.h,
- sparc/rtems.h (subtarget_switches): Added -mrtems as a switch.
- * i960/i960.h: Added SUBTARGET_SWITCHES macro.
- * rs6000/sysv4.h (extra_subtarget_switches): Added new
- macro EXTRA_SUBTARGET_SWITCHES.
- * configure.in (sh*-*-rtems*): New target.
- * sh/rtems.h: New file.
- * sh/sh.h: Added SUBTARGET_SWITCHES macro.
- * configure: Rebuilt.
-
-Sat Aug 30 22:54:26 1997 Jim Wilson <wilson@cygnus.com>
-
- * unroll.c (calculate_giv_inc): Handle increment with code PLUS.
-
-Sat Aug 30 10:49:46 1997 David Edelsohn <edelsohn@mhpcc.edu>
-
- * rs6000.md: Make DF fused-add operations pay attention to
- -mno-fused-add.
-
-Fri Aug 29 19:19:54 1997 Jim Wilson <wilson@cygnus.com>
-
- * i386/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
-
-Fri Aug 29 16:13:51 1997 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (reload_peepholes): Make sure operand is a REG before
- examining REGNO. Allow general registers too.
-
-Fri Aug 29 11:42:04 1997 Jim Wilson <wilson@cygnus.com>
-
- * varasm.c (mark_constants): Don't look inside CONST_DOUBLEs.
-
-Fri Aug 29 09:33:20 1997 Philipp Thomas (kthomas@lxi165.gwdg.de)
-
- * dwarf2out.c (build_abbrev_table): Use xrealloc, not xmalloc
- to reallocate abbrev_die_table.
-
-Thu Aug 28 15:14:46 1997 Jim Wilson <wilson@cygnus.com>
-
- * m68k/m68k.md (iorsi_zexthi_ashl16): Disable.
-
-1997-08-27 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * Makefile.in (config.status): Depend on version.c.
-
- * expr.h (insn_gen_function): Reenable prototype.
-
- * expr.c (move_by_pieces_1, clear_by_pieces_1): Fix prototype of
- first parameter.
-
-Thu Aug 28 13:01:43 1997 Jim Wilson <wilson@cygnus.com>
-
- * i386.c (ix86_expand_epilogue): Emit blockage instruction when pic.
-
-Thu Aug 28 07:03:15 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for latest snapshot.
-
- * bc-optab.c: Conditionally include stdlib.h.
- (free): Provide a declaration if NEED_DECLARATION_FREE.
- * tree.c (free): Provide a declaration if NEED_DECLARATION_FREE.
- * rtl.h (free): Remove declaration.
- * tree.h (free): Remvoe declaration.
-
- * configure: Rebuilt.
-
-Wed Aug 27 21:32:20 1997 Jeffrey A Law (law@cygnus.com)
-
- * flags.h (flag_move_all_movables): Declare.
- (flag_reduce_all_givs): Likewise.
- * loop.c (move_movables): Handle flag_move_all_movables.
- (strength_reduce): Handle flag_reduce_all_givs.
- * toplev.c (flag_move_all_movables): Define.
- (flag_reduce_all_givs): Likewise.
- (f_options): Add -fmove-all-movables and -freduce-all-givs.
- * invoke.texi: Document new options, including alias stuff that
- wasn't included last time.
-
-Wed Aug 27 18:08:51 1997 Bob Manson (manson@cygnus.com)
-
- * t-h8300: Use TARGET_LIBGCC2_CFLAGS instead of LIBGCC2_CFLAGS.
- * t-mn10200: Likewise.
- * t-vxsparc: Likewise.
- * t-vxworks68: Likewise.
- * t-vxworks960: Likewise.
- * t-vx29k: Likewise.
-
-Wed Aug 27 16:35:29 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha/xm-alpha.h (alloca): Define alloca to builtin_alloca for GNUC
- if not already defined, and USE_C_ALLOCA not defined.
-
-Wed Aug 27 16:08:43 1997 Jim Wilson <wilson@cygnus.com>
-
- * config.guess: Replace with script that uses ../config.guess.
-
- * config/alpha/elf.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1
- if USE_GNULIBC_1 is not defined.
-
-Wed Aug 27 15:49:12 1997 Richard Henderson <rth@cygnus.com>
-
- * alpha/elf.h (LINK_SPEC): Conditionalize on USE_GNULIBC_1.
- * config.guess: Recognize alpha-linux-gnulibc1.
- * configure.in (alpha-*-linux-gnulibc1): New target.
- (alpha-*-linux-gnu*): Don't build crtbegin/end.
-
-Wed Aug 27 11:52:58 1997 Jim Wilson <wilson@cygnus.com>
-
- * m68k.md (iorsi3_internal): Readd ! TARGET_5200 check lost in
- last change.
-
-Wed Aug 27 01:56:18 1997 Doug Evans <dje@seba.cygnus.com>
-
- * loop.c (combine_movables): Earlier insns don't match later ones.
-
-Wed Aug 27 01:24:25 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * config/linux.h (CC1_SPEC): Define it only if not defined.
-
- * config/m68k/linux.h (CC1_SPEC): Undefine it before include
- <linux.h>
-
- * config/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1 if
- USE_GNULIBC_1 is not defined.
-
- * config/rs6000/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined as 1.
-
- * config/sparc/linux.h (DEFAULT_VTABLE_THUNKS): New. Defined
- as 1 if USE_GNULIBC_1 is not defined.
-
-Wed Aug 27 00:49:14 1997 Jeffrey A Law (law@cygnus.com)
-
- * reorg.c (dbr_schedule): Allow current_function_return_rtx
- to be something other than a REG.
- * function.c (expand_function_end): Fix current_function_return_rtx
- if it was a pseudo.
-
- * t-freebsd (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
- * x-netbsd: Likewise.
- * x-dgux (USER_H): Include EXTRA_HEADERS and LANG_EXTRA_HEADERS.
- (INSTALL_HEADERS): Delete.
- * x-dguxbcs: Likewise.
- * x-hp3bsd44: Likewise.
- * x-pa: Likewise.
-
-Wed Aug 27 00:30:00 1997 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
-
- * i386.md (pop): pop increments the stack pointer.
- (prologue_set_stack_ptr): New pattern.
- * i386.c (ix86_expand_prologue): Use prologue_set_stack_ptr
- instead of subsi3.
-
-Tue Aug 26 18:50:32 1997 Jim Wilson <wilson@cygnus.com>
-
- * reload.c (find_reloads, case '0'): Reject matching a non-offsettable
- address where an offsettable address is required.
-
-Tue Aug 26 17:54:56 1997 Michael P. Hayes (michaelh@ongaonga.chch.cri.nz>
-
- * loop.c (check_final_value): Don't miss a biv increment in a
- parallel.
-
-Tue Aug 26 12:03:49 1997 Jim Wilson (wilson@cygnus.com)
-
- * dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Check
- TYPE_DECL_IS_STUB instead of DECL_NAME.
-
-Mon Aug 25 23:27:10 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * objc/Make-lang.in ($(OBJC_O)): Also depend on cc1obj.
-
-Mon Aug 25 23:27:10 1997 Jim Meyering <meyering@eng.ascend.com>
-
- * objc/Make-lang.in ($(OBJC_O)): Also depend on $(GCC_PASSES).
-
-Mon Aug 25 13:12:24 1997 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (find_pre_sched_live): Remove #if 0 code.
- (find_post_sched_live): Likewise.
-
- * haifa-sched.c (schedule_block): Remove old code to get arguments
- from hard regs into pseudos early.
-
-Mon Aug 25 08:55:00 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for new snapshot.
-
- * local-alloc.c (update_equiv_regs): All the target to reject
- promotion of some REG_EQUAL to REG_EQUIV notes.
- * pa.h (DONT_RECORD_EQUIVALENCE): Define.
-
- * pa.c (secondary_reload_class): (mem (mem ... )) does not need
- secondary reloads.
-
- * pa.c (hppa_builtin_saveregs): Emit a blockage insn after the
- store of the argument registers.
-
-Mon Aug 25 08:39:02 1997 Craig Burley (burley@gnu.ai.mit.edu)
-
- * fold-const.c (multiple_of_p): New function.
- (fold): Turn some cases of *_DIV_EXPR into EXACT_DIV_EXPR.
-
-Mon Aug 25 01:47:41 1997 Jeffrey A Law (law@cygnus.com)
-
- * expr.h (insn_gen_function): Temporarily remove prototype.
-
-Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
- filenames. Use sed to extract base filename for install.
-
-Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
-
- * unroll.c (find_splittable_givs): Only share if two givs have the
- same add and multiply values.
-
-Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
-
- * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
- * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
-
-Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
- around branch tables.
- * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
- and .end_brtab directives if TARGET_GAS.
-
-Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
-
- * alias.c (true_dependence): Pass x_addr not x to varies.
-
- * acconfig.h (NEED_DECLARATION_CALLOC): Add.
- * configure.in: Add GCC_NEED_DECLARATION call for calloc.
- * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
- declarations.
- * config.in, configure: Regenerate.
-
-Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
-
- * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
- LO_SUM.
- (record_set): Handle LO_SUM like PLUS.
- (init_alias_analysis): When following chains of base addresses,
- do not stop on reaching a hard register.
-
-Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump for new snapshot.
-
-Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
-
- * alpha.h (ARCH_ASM_FILE_START): Define.
- (ASM_FILE_START): Use ARCH_ASM_FILE_START.
- * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
-
-Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (install-common): Put gcov comment at start of line.
-
-Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
-
- * alias.c (init_alias_analysis): When simplifying the reg_base_value
- array, simplify entries for hard registers too.
-
-Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
-
- * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
- list.
-
-Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
-
- * stmt.c (start_cleanup_deferral, end_cleanup_deferral): Test
- block_stack before dereferencing it.
-
-Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
-
- * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
-
-Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
-
- * cplus-dem.c: Add 'extern' to prepends_underscore.
-
-Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
- (get_issue_rate): Delete.
- * pa.h (ISSUE_RATE): Define.
-
- * configure.in: Turn on haifa by default for the PA.
- * configure: Rebuilt.
- * pa.c (override_options): Accept -mschedule=7200 option.
- (pa_adjust_cost): No longer need to scale costs for newer
- processors.
- * pa.h (enum processor_type): Add PROCESSOR_7200.
- * pa.md: Revamp scheduling parameters to work better with
- haifa. Add scheduling parameters for the 7200.
-
- * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
- insns too.
- (schedule_block): When adjusting basic_block_{head,end}, account
- for movement of SCHED_GROUP_P insns too.
-
- * haifa-sched.c (debug_dependencies): Fix thinko.
-
- * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
- (site.exp, check, check-g++, check-gcc): New targets.
-
- * haifa-sched.c: Make lots of variables static.
-
-Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
-
- * expr.h, real.h: Finish prototyping.
-
-Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
-
- * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
- reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
- * reload1.c: Undo bugfix from Aug 11.
-
-Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
-
- * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
- quotes around the name.
- * configure: Regenerate.
-
-Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
-
- * Makefile.in (stmp-multilib-sub): Fix typo in last change.
-
-Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
-
- * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
- to sub-makes to avoid building more passes than the user might have
- requested on the command line.
-
-Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
-
- * configure.in: Expurgate `broken_install' (install is
- autoconfed).
-
- * configure.lang: Substitute autoconfed ${INSTALL} (not currently
- relevant).
-
-Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (is_power_of_2, is_conditional_branch): Delete unused
- functions and declarations.
- (analyze_loop_iterations): Use condjump_p.
- (insert_bct): Likewise. Use exact_log2.
-
-Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
-
- * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
- (schedule_region): Likewise.
- (schedule_insns): Likewise.
-
- * PROJECTS: Update with Haifa stuff.
-
-Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Change the version string to look like:
- egcs-2.90.00 970814 (gcc2-970802 experimental).
-
- * loop.c (is_conditional_branch): Make definition match declaration.
-
- * gcc.c: Take out experimental snapshot warning message.
-
-Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
-
- * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
- 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.
- * configure: Regenerate.
-
-Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump version to "gcc-3.0.0 970802 experimental".
-
- * gcc.info*: Rebuilt.
-
- * COPYING.g77, README.g77: New files.
- * real.c (ereal_unto_float, ereal_unto_double): New functions.
- * real.h (ereal_unto_float, ereal_unto_double): Declare them.
- (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
-
-Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
-
- * Integrate Haifa instruction scheduler.
- * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
- to sched with $(SCHED_CFLAGS.
- * configure.in: Handle --enable-haifa.
- * configure: Rebuilt.
- * flags.h: Add new flags for haifa instruction scheduler.
- * genattrtab.c (expand_units): For haifa, don't subtract one
- when computing blockage.
- * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
- (flag_schedule_speculative): Likewise.
- (flag_schedule_speculative_load): Likewise.
- (flag_schedule_speculative_load_dangerous): Likewise.
- (flag_schedule_reverse_before_reload): Likewise.
- (flag_schedule_reverse_after_reload): Likewise.
- (flag_branch_on_count_reg): Likewise.
- (f_options): Add Haifa switches.
- (main): Turn off some Haifa options if appropriate macro is
- defined. Process Haifa switches.
- * unroll.c (iteration_info): No longer static, since Haifa
- scheduler uses it.
- (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
- * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
- * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
- * loop.h (loop_initial_value,loop_unroll_iter): New globals.
- * loop.c (loop_optimize): If HAIFA is defined, allocate additional
- storage for the Haifa scheduler.
- (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
- LABEL_NEXTREF.
- (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
- are defined, call analyze_loop_iterations and insert_bct to use
- countdown loops.
- (record_giv): Refine test for jumps out of loops if HAIFA is
- defined.
- (analyze_loop_iterations): New function to identify if we can use
- a countdown loop.
- (insert_bct): Insert countdown loop.
- (instrument_loop_bct): Low level code to insert countdown loop.
- (loop_number): Calculate UID of loop.
- (indirect_jump_in_function_p): Return true if an indirect jump is
- in the function.
- (is_power_of_2): Return true if value is a power of 2.
- (is_conditional_branch): Return true if insn is a conditional
- jump.
- (fix_bct_param): Process -fbct-{min,max}-N switches.
- (check_bct_param): Return true if loop should be instrumented.
- * loop.c (loop_initial_value,loop_unroll_iter): New globals.
- (loop_optimize): Initialize.
- (get_condition_for_loop): Likewise.
- * loop.c (strength_reduce): Inside of code that uses #ifdef
- HAVE_decrement_and_branch_on_count code, test it to make sure the
- condition is true.
- (instrument_loop_bct): Likewise.
- * haifa-sched.c: New file.
-
- * Integrate regmove pass.
- * Makefile.in (OBJS): Add regmove.o.
- (regmove.o): Add dependencies.
- * flow.c (find_use_as_address): No longer static.
- * rtl.h (find_use_as_address): Declare.
- * toplev.c (regmove_dump, flag_regmove): Define.
- (f_options): Add -fregmove.
- (regmove_dump_file, regmove_time): Define.
- (fatal_insn): Close the regmove dump file.
- (compile_file): Initialize regmove_time; open/close the regmove dump
- file as needed. Print regmove time as needed.
- (rest_of_compilation): Run regmove pass if requested, dump
- RTL after regmove if requested.
- (main): If -O2 or more, turn on regmove. Handle dump switches.
- * regmove.c: New file.
-
-Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
-
- * Integrate tlink patch from jason@cygnus.com
- * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
- (process_command): Increment n_switches for them. Don't discard
- their args. Validate them.
- (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
- From Rohan Lenard.
- (process_command): Set include_prefixes from COMPILER_PATH.
- (main): Set COLLECT_GCC_OPTIONS sooner.
- * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
- * tlink.c, hash.c, hash.h: New files.
- * Makefile.in (USE_COLLECT2): Always use collect2.
- (collect2): Depend on and link in hash.o and tlink.o.
- (tlink.o, hash.o): Add dependencies.
-
-Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
-
- * Integrate alias analysis changes from jfc@mit.edu
- * Makefile.in (OBJS): Add alias.o.
- (alias.o): Add dependencies.
- * alias.c: New file.
- * sched.c: Remove alias analysis code. It lives in alias.c now.
- (sched_analyze_2): Add new arguments to true_dependence.
- (schedule_insns): Always call init_alias_analysis.
- * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
- mark return value from such functions as a pointer and keep track of
- them for alias analysis. If a return value from a function is a
- pointer, mark it as such.
- * combine.c (distribute_notes): Handle REG_NOALIAS.
- * cse.c (struct write_data): Delete. No longer needed.
- (invalidate): Don't call set_nonvarying_address_components anymore.
- Use true_dependence to decide if an entry should be removed from
- the hash table.
- (invalidate_memory): Remove WRITES argument, simplify appropriately.
- Fix all callers.
- (note_mem_written): Similarly for WRITE_PTR argument.
- (invalidate_from_clobbers): Similarly for W argument.
- (invalidate_for_call): Remove memory elements from the hash table.
- (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
- (cse_rtx_varies_p): New function. Derived from old
- cse_rtx_addr_varies_p.
- (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
- Don't call note_mem_written anymore. Stack pushes invalidate the stack
- pointer if PUSH_ROUNDING is defined. No longer need to call
- cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
- (skipped_writes_memory): Remove variable.
- (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
- (invalidate_skipped_block): Simplify for new alias analysis code.
- (cse_set_around_loop): Likewise.
- (cse_main): Call init_alias_analysis.
- * flags.h (flag_alias_check, flag_argument_noalias): Declare.
- * toplev.c (flag_alias_check, flag_argument_noalias): Define.
- (f_options): Add new alias checking arguments.
- (main): Set flag_alias_check when optimizing.
- * local_alloc (validate_equiv_mem_from_store): Add new arguments
- to true_dependence.
- (memref_referenced_p): Likewise.
- * loop.c (NUM_STORES): Increase to 30.
- (prescan_loop): Only non-constant calls set unknown_address_altered.
- (invariant_p): Add new arguments to true_dependence.
- (record_giv): Initialize unrolled and shared fields.
- (emit_iv_add_mult): Call record_base_value as needed.
- * loop.h (struct induction): Add unrolled and shared fields.
- * unroll.c (unroll_loop): Call record_base_value as needed.
- (copy_loop_body): Likewise.
- (final_biv_value): Likewise.
- (final_giv_value): Likewise.
- (find_splittable_regs): Likewise. Only create one new pseudo
- if we have multiple address GIVs that were combined with the same
- dst_reg GIV. Note when a new register is created due to unrolling.
- * rtl.c (reg_note_name): Add REG_NOALIAS.
- * rtl.h (enum reg_note): Similarly.
- (rtx_varies_p, may_trap_p, side_effects_p): Declare.
- (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
- (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
- (true_dependence, read_dependence, anti_dependence): Likewise.
- (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
- (mark_user_reg, mark_reg_pointer): Likewise.
-
- * Integrate reload bugfix from Wilon which enables the PA port
- to bootstrap again.
- * reload1.c (reload): Sum needs for both OPADDR_ADDR and
- OPERAND_ADDRESS when computing how many registers an insn needs.
- (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
- conflict.
- (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
- OPADDR_ADDR reload.
- (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
- in reload_reg_use_in_op_addr do not reach the end.
- do not reach the end.
- (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
- RELOAD_FOR_OPERAND_ADDRESS.
-
-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:
diff --git a/gcc/ChangeLog.10 b/gcc/ChangeLog.10
deleted file mode 100644
index 83a80fd8664..00000000000
--- a/gcc/ChangeLog.10
+++ /dev/null
@@ -1,16352 +0,0 @@
-2003-12-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * print-rtl.c (print_rtx): For hard register, write out register
- number and register name instead of calling PRINT_REG.
- * defaults.h (PRINT_REG): Deleted.
- * config/i386/i386.c (print_reg): Remove handling of CODE of -1.
- Move comments here from i386.h.
- (print_operand, print_operand_address): Call print_reg directly.
- * config/i386/i386.h (PRINT_REG): Deleted.
-
-2003-12-31 Roger Sayle <roger@eyesopen.com>
-
- * config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define
- _INCLUDE_LONGLONG.
-
-2003-12-31 Zack Weinberg <zack@codesourcery.com>
-
- * gcc.c (init_spec): Add -lunwind to shared case too if
- USE_LIBUNWIND_EXCEPTIONS.
-
-2003-12-31 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/include/texinfo.tex: Update to version 2003-12-21.10.
- * doc/gcc.texi, doc/gccint.texi: Don't set font for
- @def... commands.
- * doc/invoke.texi: Don't use empty @opindex.
-
-2003-12-31 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.c (c_expand_expr): Remove code to return a value
- different from that returned by expand_expr.
- * expr.c (store_expr): Use the validity of a target MEM, rather
- than checking DECL_RTL (exp), to figure out if a copy is
- required.
-
-2003-12-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/v850/lib1funcs.asm: Fix comment formatting.
- * config/v850/v850.c: Likewise.
- * config/v850/v850.h: Likewise.
- * config/v850/v850.md: Likewise.
-
-2003-12-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386.md (*movqi_insv_2): Remove AND in the
- set source.
-
-2003-12-31 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config.gcc: Added m32r-linux m32rle-elf and m32le-linux targets.
- * doc/invoke.texi: Document -mflush-func, -mflush-trap options.
- Also add documentation for -mdebug, -malign-loops, -missue-rate,
- and -mbranch-cost options.
- * config/m32r/t-linux: New file: m32r-linux support.
- * config/m32r/xm-linux.h: Likewise.
- * config/m32r/xm-m32r.h: Likewise.
- * config/m32r/linux.h: Likewise.
- * config/m32r/little.h: New file: Little endian code generation
- support.
- * config/m32r/m32r-protos.h (m32r_legitimize_pic_address,
- m32r_legitimate_pic_operand_p, load_pic_register): Add
- prototypes.
- * config/m32r/m32r.c (m32r_init): Add options for cache-flush.
- (addr24_operand): Changes for PIC code generation.
- * config/m32r/m32r.h (LABEL_ALIGN): Define to calculate PNOP
- length at labels.
- (ASM_SPEC): Add PIC support.
- (FUNCTION_PROFILER): New define.
- (TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE): Changed to support
- trampoline.
- (CONDITIONAL_REGISTER_USAGE, CONSTANT_ADDRESS_P,
- LEGITIMIZE_ADDRESS, JUMP_TABLES_IN_TEXT_SECTION,
- PIC_OFFSET_TABLE_REGNUM, FINALIZE_PIC, LEGITIMATE_PIC_OPERAND_P,
- ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE): Define for PIC.
- (move_src_operand, m32r_compute_frame_size, m32r_expand_prologue,
- m32r_finalize_pic): Changes for PIC and profile support.
- (global_offset_table, load_pic_register, m32r_legitimate_pic_operand_p,
- m32r_legitimize_pic_address): Add for PIC support.
- (m32r_file_start): Changed for little-endian-target.
- * config/m32r/m32r.md (mvqi, movhi, movsi, movdi, movsf, movdf,
- tablejump, tablejump_insn, call, call_value, call_value_via_label):
- Changes for PIC.
- (pic_load_addr, get_pc, builtin_setjmp_receiver): Added for PIC.
- (flush_icache): Changes for cache-flush trap.
-
-2003-12-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386.h: Remove an unnecessary #undef.
-
-2003-12-30 Roger Sayle <roger@eyesopen.com>
-
- * cppfiles.c (pch_open_file): Minor tweak to work-around native
- HPPA compiler bug.
-
-2003-12-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/rs6000/aix.h: Fix comment formatting.
- * config/rs6000/rs6000-modes.def: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/rs6000/rs6000.h: Likewise.
- * config/rs6000/rs6000.md: Likewise.
-
-2003-12-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386-protos.h: Remove prototype for
- const_int_1_operand.
- * config/i386/i386.c (const_int_1_operand): Remove.
- * config/i386/i386.h (PREDICATE_CODES): Remove
- const_int_1_operand.
- * config/i386/i386.md: Replace all uses of const_int_1_operand
- with const1_operand.
- * config/i386/pentium.md: Likewise.
-
-2003-12-30 Geoffrey Keating <geoffk@greed.local>
-
- * doc/tm.texi (PREFERRED_RELOAD_CLASS): Describe use of NO_REGS
- with constants.
-
-2003-12-30 Mark Mitchell <mark@codesourcery.com>
-
- * stor-layout.c (layout_decl): Turn bitfields into ordinary
- fields, even if they are the first field in a structure.
-
-2003-12-30 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) <COND_EXPR>: Don't require strict type
- equality, instead just prevent replacing a COND_EXPR of non-void
- type by one of its operands of void type.
-
-2003-12-30 Andreas Schwab <schwab@suse.de>
-
- * doc/c-tree.texi: Fix @item vs. @itemx.
- * doc/cpp.texi: Likewise.
- * doc/install.texi: Likewise.
- * doc/invoke.texi: Likewise.
-
-2003-12-30 Nathan Sidwell <nathan@codesourcery.com>
-
- * builtins.c (expand_builtin_apply_args_1): Fix typo in previous
- change.
-
-2003-12-30 Jan Hubicka <jh@suse.cz>
-
- PR target/11936
- * i386.h (CLASS_LIKELY_SPILLED_P): Return true for
- FP_TOP_REG/FP_SECOND_REG.
-
-2003-12-30 Steven Bosscher <steven@gcc.gnu.org>
-
- Backport from tree-ssa (relevant changes only):
- 2003-12-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * et-forest.h (et_forest_create, et_forest_delete,
- et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
- et_forest_remove_edge, et_forest_parent,
- et_forest_common_ancestor, et_forest_node_value,
- et_forest_enumerate_sons): Declarations removed.
- (struct et_node): New.
- (et_new_tree, et_free_tree, et_set_father, et_split, et_nca,
- et_below): Declare.
- * et-forest.c (struct et_forest_occurrence, struct et_forest,
- struct et_forest_node): Removed.
- (et_forest_create, et_forest_delete,
- et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
- et_forest_remove_edge, et_forest_parent,
- et_forest_common_ancestor, et_forest_node_value,
- et_forest_enumerate_sons, splay, remove_all_occurrences,
- find_leftmost_node, find_rightmost_node, calculate_value): Removed.
- (struct et_occ): New.
- (et_nodes, et_occurences): New.
- (set_depth, set_depth_add, set_prev, set_next, et_recomp_min,
- et_check_occ_sanity, et_check_sanity, et_check_tree_sanity,
- record_path_before_1, record_path_before, check_path_after_1,
- check_path_after, et_splay, et_new_occ, et_new_tree,
- et_free_tree, et_set_father, et_split, et_nca, et_below): New.
- * basic-block.h (struct basic_block_def): New field dom.
- (struct dominance_info): Type removed.
- (calculate_dominance_info, free_dominance_info,
- nearest_common_dominator, set_immediate_dominator,
- get_immediate_dominator, dominated_by_p, get_dominated_by,
- add_to_dominance_info, delete_from_dominance_info,
- recount_dominator, redirect_immediate_dominators,
- iterate_fix_dominators, verify_dominators): Declarations
- changed.
- (enum dom_state): New.
- (dom_computed): New variable.
- (first_dom_son, next_dom_son): Declare.
- * dominance.c (struct dominance_info): Removed.
- (BB_NODE, SET_BB_NODE): Removed.
- (calculate_dominance_info, free_dominance_info,
- nearest_common_dominator, set_immediate_dominator,
- get_immediate_dominator, dominated_by_p, get_dominated_by,
- add_to_dominance_info, delete_from_dominance_info,
- recount_dominator, redirect_immediate_dominators,
- iterate_fix_dominators, verify_dominators,
- debug_dominance_info): Work over new datastructure. Access
- dominance datastructures through CFG.
- (assign_dfs_numbers, compute_dom_fast_query, first_dom_son,
- next_dom_son): New.
- * bt-load.c (dom): Variable removed.
- (augment_live_range, combine_btr_defs, migrate_btr_def,
- migrate_btr_defs, branch_target_load_optimize): Updated for the
- new interface for dominance information.
- * cfg.c {exit_entry_blocks): Update initializer.
- * cfglayout.c (copy_bbs): Removed loops argument. Updated for
- the new interface for dominance information.
- * cfglayout.h (copy_bbs): Declaration changed.
- * cfgloop.c (flow_loop_pre_header_find, flow_loops_cfg_dump,
- flow_loop_scan, canonicalize_loop_headers, flow_loops_find): Updated
- for the new interface for dominance information.
- (flow_loop_scan): Loops argument removed.
- (flow_loops_free): Don't release dominators.
- * cfgloop.h (struct cfg): Dom field removed.
- (flow_loop_scan, loop_split_edge_with, simple_loop_p,
- just_once_each_iteration_p, split_loop_bb): Declaration changed.
- * cfgloopanal.c (simple_loop_exit_p, simple_increment,
- just_once_each_iteration_p, simple_loop_p): Remove loops argument.
- Updated for the new interface for dominance information.
- * cfgloopmanip.c (remove_bbs, find_path, create_preheader,
- split_loop_bb, loopify, duplicate_loop_to_header_edge,
- force_single_succ_latches, loop_split_edge_with): Ditto.
- * gcse.c (dominators): Variable removed.
- (free_code_hoist_mem, compute_code_hoist_data, hoist_code):
- Updated for the new interface for dominance information.
- * ifcvt.c (post_dominators): Variable removed.
- (mark_loop_exit_edges, merge_if_block, find_if_header,
- find_cond_trap, find_if_case_1, find_if_case_2, if_convert):
- Updated for the new interface for dominance information.
- * loop-init.c (rtl_loop_optimizer_init,
- rtl_loop_optimizer_finalize): Ditto.
- * loop-unroll.c (decide_peel_simple, decide_peel_once_rolling,
- decide_peel_completely, decide_unroll_stupid,
- decide_unroll_constant_iterations,
- decide_unroll_runtime_iterations): Loops argument removed.
- Updated for the new interface for dominance information.
- (unroll_and_peel_loops, peel_loops_completely,
- unroll_loop_runtime_iterations): Updated for the new interface for
- dominance information.
- * loop-unswitch.c (may_unswitch_on_p, unswitch_loops,
- unswitch_single_loop, unswitch_loop): Updated for the new
- interface for dominance information.
- * predict.c (process_note_predictions, process_note_prediction,
- estimate_probability, note_prediction_to_br_prob): Ditto.
- * sched-rgn.c (find_rgns, init_regions): Ditto.
- * toplev.c (rest_of_handle_branch_prob): Free the dominators.
-
-2003-12-30 Jan Hubicka <jh@suse.cz>
-
- PR target/13456
- * i386.md (allocate_stack_worker): Use different pattern for pre and
- post reload expansion.
- (allocate_stack_worker_1, allocate_stack_worker_rex64): Use
- match_scratch.
- (allocate_stack_worder_1_postreload,
- allocate_stack_worker_rex64_postreload): New.
-
-2003-12-29 Nathan Sidwell <nathan@codesourcery.com>
-
- * builtins.c (expand_builtin_apply_args_1): Add pretend args size
- to the virtual incoming args pointer for downward stacks.
-
-2003-12-29 Roger Sayle <roger@eyesopen.com>
-
- PR fortran/12632
- * fold-const.c (fold) <COND_EXPR>: Don't fold a constant condition,
- if the type of the selected branch doesn't match its' parent.
-
-2003-12-29 Jan Hubicka <jh@suse.cz>
-
- * coverage.c (read_counts_file): Better error messages; cause corrupted
- profiles to produce hard errors, not just warnings
- (get_coverage_counts): Similarly.
-
- * toplev.c (rest_of_handle_loop_optimize): Enable LOOP_AUTO_UNROLL.
-
-2003-12-29 Phil Edwards <phil@codesourcery.com>
-
- * doc/cppopts.texi: Use of -idirafter, -iprefix, -iwithprefix, and
- -iwithprefixbefore is not discouraged.
-
-2003-12-28 Mostafa Hagog <mustafa@il.ibm.com>
-
- * sbitmap.c (sbitmap_union_of_diff_cg, sbitmap_a_and_b_cg,
- sbitmap_a_xor_b_cg): Accumulate "changed" properly.
- (sbitmap_not): Zero all bits past n_bit.
-
-2003-12-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR opt/13159
- * cfgloopanal.c (mark_irreducible_loops): Fix the strongly connected
- components detection.
- * loop-unswitch.c (unswitch_loop): Preserve simple preheaders.
-
-2003-12-27 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/uclinux.h (LIB_SPEC): Add elf2flt magic required for
- correct linking of executables using id-based shared libraries.
-
-2003-12-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386-interix.h: Remove uses of "register"
- specifier in declarations of arguments and local variables.
- * config/i386/i386.c: Likewise.
- * config/i386/i386elf.h: Likewise.
- * config/i386/ptx4-i.h: Likewise.
- * config/i386/sysv4.h: Likewise.
-
-2003-12-26 Fariborz Jahanian <fjahanian@apple.com>
- Geoffrey Keating <geoffk@apple.com>
- David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (legitimate_offset_address_p): Do not
- restrict DFmode and TFmode to word alignment.
- * config/rs6000/rs6000.md (movdf_hardfloat64): Use 'o' constraint
- for ld/std and order before mr.
-
-2003-12-26 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/darwin.h (LINK_COMMAND_SPEC): Arrange
- -fprofile-generate to imply -lgcov.
-
-2003-12-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (ldm_h8300s_2_normal): Use HImode for
- addresses.
-
-2003-12-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.md: Remove a constraint from a splitter.
-
-2003-12-25 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR C++/13429, C/11944
- * c-common.c (c_build_qualified_type): Return early when type is
- error_mark_node.
- (c_apply_type_quals_to_decl): Likewise.
-
-2003-12-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha-modes.def: Fix comment formatting.
- * config/alpha/alpha.c: Likewise.
- * config/alpha/alpha.h: Likewise.
- * config/alpha/elf.h: Likewise.
- * config/alpha/lib1funcs.asm: Likewise.
- * config/alpha/openbsd.h: Likewise.
- * config/alpha/vms-cc.c: Likewise.
- * config/alpha/vms-crt0-64.c: Likewise.
- * config/alpha/vms-crt0.c: Likewise.
- * config/alpha/vms-ld.c: Likewise.
- * config/alpha/vms-psxcrt0-64.c: Likewise.
- * config/alpha/vms-psxcrt0.c: Likewise.
- * config/alpha/vms.h: Likewise.
- * config/arc/arc.c: Likewise.
- * config/arm/aof.h: Likewise.
- * config/arm/arm-modes.def: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/arm.h: Likewise.
- * config/arm/arm.md: Likewise.
- * config/arm/linux-elf.h: Likewise.
- * config/arm/vxworks.h: Likewise.
- * config/avr/avr.c: Likewise.
- * config/avr/avr.h: Likewise.
-
-2003-12-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/xtensa/elf.h: Fix comment formatting.
- * config/xtensa/xtensa-protos.h: Likewise.
- * config/xtensa/xtensa.c: Likewise.
- * config/xtensa/xtensa.h: Likewise.
-
-2003-12-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/avr/avr.c: Fix comment formatting.
- * config/avr/avr.md: Likewise.
-
-2003-12-24 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/12721.
- * config/avr/avr.c: Include ggc.h.
- (tmp_reg_rtx): Declare with GTY.
- (zero_reg_rtx): Likewise.
- (ldi_reg_rtx): Remove.
- (avr_override_options): Initialize zero_reg_rtx and
- ldi_reg_rtx.
- (avr_init): Remove.
- Include gt-avr.h.
- * config/avr/avr.h (LDI_REG_REGNO): Remove.
- Remove externs for tmp_reg_rtx, zero_reg_rtx, and ldi_reg_rtx.
-
-2003-12-24 David Edelsohn <edelsohn@gnu.org>
-
- * doc/md.texi: Document PowerPC vector register constraint letter.
-
-2003-12-23 Mark Mitchell <mark@codesourcery.com>
-
- * calls.c (expand_call): Recognize calls to "sqrt" and create
- corresponding notes.
-
-2003-12-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/mips/mips.c (override_options): Use `inform' instead
- of `warning' for -g -mabi=32 and native assembler.
-
- * config/mips/t-iris6 (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS):
- Don't pass -Wno-error.
-
-2003-12-23 David Edelsohn <edelsohn@gnu.org>
-
- * function.c (assign_parms): Update max_parm_reg and
- parm_reg_stack_loc when adding new parm reg.
-
-2003-12-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ns32k/ns32k.c: Convert to ISO-C.
-
-2003-12-23 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/ia64.c (ia64_va_arg): Pass pointer for
- variable-sized type through convert_memory_address.
- (ia64_in_small_data_p): Always return false for FUNCTION_DECLs.
-
-2003-12-23 Jan Hubicka <jh@suse.cz>
-
- * common.opt (fprofile-generate,fprofile-use): Add.
- * gcc.c (LINK_COMMAND_SPEC): Arrange -fprofile-generate to imply -lgcov
- * opts.c (profile_arc_flag_set, flag_profile_values_set,
- flag_unroll_loops_set, flag_tracer_set,
- flag_value_profile_transformations_set,
- flag_peel_loops_set): New static variables.
- (common_handle_option): Deal with -fprofile-generate/-fprofile-use
- * invoke.texi (-fprofile-generate, -fprofile-use): Describe.
-
-2003-12-23 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (OBJS-common): Remove dwarfout.o.
- (dwarfout.o): Remove.
- * common.opt: Remove -gdwarf, -gdwarf+.
- * defaults.h (PREFERRED_DEBUGGING_TYPE): Do not check for
- DWARF_DEBUGGING_INFO.
- * dwarf2out.c: Fix typo in comment.
- * dwarfout.c: Remove.
- * opts.c (common_handle_option): Remove OPT_gdwarf, OPT_gdwarf_.
- * toplev.c (process_options): Remove check for
- DWARF_DEBUGGING_INFO.
- * config/elfos.h (DWARF_DEBUGGING_INFO): Do not #define it or
- #undef it.
- * config/netware.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/ptx4.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/vxworks.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/alpha/unicosmk.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/arc/arc.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/i386/sco5.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/i386/x86-64.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/m32r/m32r.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/mcore/mcore-elf.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/sparc/linux64.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/sparc/liteelf.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/sparc/sol26-sld.h (DWARF_DEBUGGING_INFO): Likewise.
- * config/sparc/sp86x-elf.h (DWARF_DEBUGGING_INFO): Likewise.
- * doc/invoke.texi: Do not mention -gdwarf, -gdwarf-1, -gdwarf-1+,
- or -gdwarf+.
- * doc/tm.texi: Likewise.
-
- * c-common.c (flag_abi_version): Default to 2.
- * c-cppbuiltin.c (c_cpp_builtins): Define __GXX_ABI_VERSION
- uniformly for versions above 2.
- * doc/invoke.texi: Update documentation for -fabi-version.
-
-2003-12-22 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.md: Change many instances of '!
- TARGET_POWERPC64' to 'TARGET_32BIT' when the pattern being guarded
- was guarded only because it changed CR0 or the carry bit in XER.
-
-2003-12-23 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/13394
- * toplev.c (rest_of_compilation): Move call to
- check_function_return_warnings right after the sibcall
- optimization pass.
-
-2003-12-23 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/13382
- * c-typeck.c (convert_for_assignment): When converting from
- integral type to pointer type, always call convert.
-
-2003-12-22 Mark Mitchell <mark@codesourcery.com>
-
- * doc/invoke.texi: Deprecate -fwritable-strings.
-
- * c-common.c (flag_external_templates): Remove.
- (flag_alt_external_templates): Likewise.
- * c-common.h (flag_external_templates): Remove.
- (flag_alt_external_templates): Likewise.
- * c-opts.c (c_common_handle_option): Unsupport
- -falt-external-templates and -ftemplates.
- * doc/invoke.texi: Remove mention of -fexternal-templates and
- -falt-external-templates.
-
-2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/13466
- * config.gcc (powerpc-*-darwin): Remove overridden value of need_64bit_hwint.
-
- * emit-rtl.c (copy_rtx_if_shared): Add comment about its use of
- copy_rtx_if_shared_1.
- (copy_rtx_if_shared_1): Add comment about what the function does.
-
- * c-decl.c (finish_function): Change order of checks.
- (c_expand_body): Likewise.
-
-2003-12-22 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (legitimate_offset_address_p): Correct
- check for the legitimate offset when memory of
- DImode/DFmode/TFmode/TImode mode is being referenced and target
- is TARGET_POWERPC64.
-
-2003-12-22 Dale Johannesen <dalej@apple.com>
-
- * reload1.c: Add reg_reloaded_call_part_clobbered.
- (reload_as_needed): Use it.
- (forget_old_reloads_1): Ditto.
- (emit_reload_insns): Ditto.
-
-2003-12-22 Dale Johannesen <dalej@apple.com>
-
- PR optimization/12828
- * loop.c: Add find_regs_nested to look inside CLOBBER(MEM).
- (scan_loop): Call it.
- * regclass.c (reg_scan_mark_regs): Look inside CLOBBER(MEM).
-
-2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c/9163
- * c-decl.c (poplevel): Only set DECL_INITIAL of a current function
- if it is non-null.
- (finish_function): Check for error_mark_node or null on DECL_RESULT and
- DECL_RESULT of fndecl.
- (c_expand_body): Only expand when DECL_INITIAL of fndecl is not
- error_mark_node and not null.
-
-2003-12-21 Dan Nicolaescu <dann@ics.uci.edu>
-
- * rtl.h (dump_rtx_statistics): Declare it.
- * rtl.c (rtx_alloc_counts, rtx_alloc_sizes, rtvec_alloc_counts,
- rtx_alloc_sizes): New static vars.
- (rtx_alloc, rtvec_alloc): Update them.
- (dump_rtx_statistics): New function.
- * toplev.c (finalize): Call it.
- * ggc-page.c (struct globals): Fix comments. Add new member
- total_allocated_per_order.
- (ggc_alloc): Keep track of the total allocated memory.
- (ggc_print_statistics): Clarify message. Print total allocated
- memory stats.
- * configure.in (gather-detailed-mem-stats): New flag.
- * configure: Regenerate.
- * config.in: Regenerate.
- * doc/install.texi (Configuration): Document
- --enable-gather-detailed-mem-stats.
-
-2003-12-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (CONVERT_HARD_REGISTER_TO_SSA_P): Poison.
- * config/i386/i386.h (CONVERT_HARD_REGISTER_TO_SSA_P): Remove.
-
-2003-12-21 Roger Sayle <roger@eyesopen.com>
-
- * config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define _ILP32
- when compiling in ILP32 mode.
-
-2003-12-21 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000.c (rs6000_tls_referenced_p): Return early if
- TARGET_HAVE_TLS is false.
-
-2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ip2k/ip2k-protos.h: Remove the prototype for
- asm_output_section_name.
- * config/ip2k/ip2k.c (asm_output_section_name): Remove.
-
-2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * alias.c: Fix comment formatting.
- * alloc-pool.c: Likewise.
- * bitmap.c: Likewise.
- * bitmap.h: Likewise.
- * bt-load.c: Likewise.
- * c-common.c: Likewise.
- * c-common.h: Likewise.
- * c-decl.c: Likewise.
- * c-opts.c: Likewise.
- * c-pretty-print.c: Likewise.
- * caller-save.c: Likewise.
- * cfghooks.h: Likewise.
- * cgraph.c: Likewise.
- * collect2.c: Likewise.
- * cppfiles.c: Likewise.
- * cpplib.h: Likewise.
- * dwarf2out.c: Likewise.
- * dwarfout.c: Likewise.
- * emit-rtl.c: Likewise.
- * final.c: Likewise.
- * function.c: Likewise.
- * gcov.c: Likewise.
- * gcse.c: Likewise.
- * genemit.c: Likewise.
- * ggc.h: Likewise.
- * haifa-sched.c: Likewise.
- * ifcvt.c: Likewise.
- * libgcc2.h: Likewise.
- * loop.c: Likewise.
- * predict.h: Likewise.
- * unwind-libunwind.c: Likewise.
- * varasm.c: Likewise.
-
-2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
- a warning.
-
-2003-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arm/arm.c: Convert to ISO-C.
- * config/avr/avr.h: Likewise.
- * config/fr30/fr30.c: Likewise.
- * config/ip2k/ip2k.c: Likewise.
- * config/mn10300/mn10300.c: Likewise.
-
-2003-12-20 Andrew Pinski <pinskia@gcc.gnu.org>
- Matt Thomas <matt@3am-software.com>
-
- PR target/12749
- * config/i386/i386.c (print_operand): Print only the first
- 8 characters of the float in hex.
-
-2003-12-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.h (TRAMPOLINE_TEMPLATE): Shorten sequence when generating PA
- 2.0 code.
- (TRAMPOLINE_CODE_SIZE, MIN_CACHELINE_SIZE): New defines.
- (INITIALIZE_TRAMPOLINE): Rework to pass line length, and aligned start
- and end addresses to I and D cache instruction patterns.
- * pa.md (anddi3, iordi3): Change predicates of operands 1 and 2 to
- and_operand and ior_operand, respectively. When generating 64-bit
- code, only one operand needs to be a register operand.
- (xordi3): Change predicates of operands 1 and 2 to register_operand.
- (one_cmpldi2): Change predicate of operand 1 to register_operand.
- (dcacheflush, icacheflush): Revise to flush an arbitrary number of
- cache lines.
-
-2003-12-20 Josef Zlomek <zlomekj@suse.cz>
-
- PR optimization/13430, PR optimization/12322
- * bb-reorder.c (copy_bb_p): Do not allow block with many successors to
- be copied.
- (find_traces_1_round): Surround check for fake edges by
- #ifdef ENABLE_CHECKING #endif.
-
-2003-12-20 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR other/7956
- * genmultilib: New variable disable_multilib. Set it to 'yes'
- if enable_multilib was set to 'no'. Emit DISABLE_MULTILIB
- if disable_multilib was set to 'yes'.
- * gcc.c: Include multilib.h before tm.h.
- * config/sparc/sol2-bi.h (LINK_ARCH_SPEC): Emit an error
- message for multiarch options if DISABLE_MULTILIB is set.
- * config/sparc/sol2-gld-bi.h (LINK_ARCH_SPEC): Likewise.
-
-2003-12-20 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/12085
- * c-typeck.c (build_function_call): Issue a warning if a
- function is called through an incompatible prototype and
- replace the call by a trap in this case.
-
-2003-12-19 James E Wilson <wilson@specifixinc.com>
-
- * install.texi (ia64-*-linux): Document minimum libunwind version
- number.
-
-2003-12-19 Per Bothner <per@bothner.com>
-
- * langhooks.c (lhd_print_error_function): Fix for PR c/13110.
- Don't do pp_newline; it causes an extra blank line.
- * pretty-print.c (pp_base_flush): Clear pp_needs_newline.
-
-2003-12-19 Jason Merrill <jason@redhat.com>
-
- * tree.c (get_unwidened): Decide whether to narrow a bitfield
- reference based on TYPE_SIZE, not TYPE_PRECISION.
-
- * stmt.c (parse_output_constraint): Warn about in-out constraint
- that doesn't allow a register.
- (parse_input_constraint): Warn about matching constraint that
- doesn't allow a register.
-
-2003-12-19 James E Wilson <wilson@specifixinc.com>
-
- * flow.c (mark_set_regs, case PARALLEL): Scan loop forwards.
- Add case for ASM_OPERANDS.
- * global.c (global_alloc): Set regs_ever_live for regs_asm_clobbered
- registers.
-
-2003-12-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * expr.c (check_max_integer_computation_mode): Remove.
- * dojump.c (do_jump): Don't use MAX_INTEGER_COMPUTATION_MODE.
- * fold-const.c (fold): Likewise.
- * system.h (MAX_INTEGER_COMPUTATION_MODE): Poison.
- * doc/tm.texi (MAX_INTEGER_COMPUTATION_MODE): Remove.
-
-2003-12-19 James E Wilson <wilson@specifixinc.com>
-
- * configure.in: Delete libunwind_has_eh_support test.
- * configure: Regenerate.
- * config.gcc (ia64*-*-linux*): Delete reference to t-libunwind-no-eh
- and libunwind_has_eh_support check.
- * config/t-libunwind-no-eh: Delete.
-
-2003-12-19 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-format.c (print_char_table): Allow 'I' flag on floating point
- decimal formats.
-
-2003-12-19 Stuart Hastings <stuart@apple.com>
-
- * gcc/config/i386/i386.c (ix86_expand_call, x86_output_mi_thunk):
- Trivial fixes for i386.c on Darwin/x86.
-
-2003-12-19 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Add code to
- recognize macho-style lo_sum adrress patterns.
-
-2003-12-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * dwarfout.c: Remove uses of "register" specifier in
- declarations of arguments and local variables.
- * gensupport.c: Likewise.
- * local-alloc.c: Likewise.
- * regclass.c: Likewise.
-
-2003-12-19 Kelley Cook <kelleycook@wideopenwest.com>
-
- * config.guess: Remove.
-
-2003-12-19 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/unwind-ia64.c (ia64_copy_rbs): New function.
- (unw_access_gr): Only call ia64_rse_rnat_addr if addr is above
- regstk_top.
- (uw_frame_state_for): Handle locations inside bundles.
- (uw_init_context_1): Initialize context->rnat.
- Set context->regstk_top to lowest rbs address which has nat collection
- in context->rnat.
- (uw_install_context): Fix rnat restoring.
- Restore ar.rsc to previous state.
- * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR,
- MD_HANDLE_UNWABI): Handle unwinding through SA_ONSTACK frames.
-
-2003-12-19 Jakub Jelinek <jakub@redhat.com>
-
- PR c++/13239
- * builtins.c (expand_builtin_expect_jump): Update
- TREE_VALUE (arglist) if unsave_expr_now langhook
- created a new tree.
-
-2003-12-19 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (thumb_base_register_rtx_p): Use regno in comparison against
- FIRST_PSEUDO_REGISTER.
-
-2003-12-18 Hartmut Penner <hpenner@de.ibm.com>
-
- * gcc/config/rs6000/rs6000.c (USE_ALTIVEC_FOR_ARG_P): Don't check
- for SVR4 ABI.
-
-2003-12-18 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/aix.h (OS_MISSING_POWERPC64): Define.
- (OS_MISSING_ALTIVEC): Define.
- * config/rs6000/darwin.h (ASM_SPEC): Be generous about supplying
- -force_cpusubtype_ALL.
- * config/rs6000/rs6000.c (rs6000_override_options): Rearrange
- CPU information table; now always set all CPU-specific values.
- Also, use Altivec and powerpc64 when chip and OS supports them.
-
-2003-12-18 Geoffrey Keating <geoffk@apple.com>
-
- * fixinc/inclhack.def (darwin_macho_dyldh): New.
- * fixinc/fixincl.x: Regenerate.
-
-2003-12-18 Dara Hazeghi <dhazeghi@yahoo.com>
-
- * version.c (version_string): Renumber as 3.4.0
- * doc/include/gcc-common.texi: Likewise
-
-2003-12-18 Richard Henderson <rth@redhat.com>
-
- * genrecog.c (print_host_wide_int): New.
- (write_switch, write_cond): Use it.
-
-2003-12-18 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (check_bitfield_type_and_width): Remove enum special
- case suppression of pedwarn.
- * system.h (ENUM_BITFIELD): Use __extension__.
- (CHAR_BITFIELD): Likewise.
-
-2003-12-18 Ulrich Weigand <uweigand@de.ibm.com>
- Mark Dettinger <dettinge@de.ibm.com>
-
- * config/s390/s390.md (UNSPEC_SRST): New constant.
- ("strlendi", "strlensi"): New expanders.
- ("*strlendi", "*strlensi"): New insns.
-
-2003-12-18 Mark Mitchell <mark@codesourcery.com>
-
- * config/sol2.h (LINK_ARCH32_SPEC): Define in terms of ...
- (LINK_ARCH32_SPEC_BASE): ... this new macro.
- * config/sparc/sol2-bi.h (LINK_ARCH64_SPEC): Define in terms of
- ...
- (LINK_ARCH64_SPEC_BASE): ... this new macro.
- * config/sparc/sol2-gld-bi.h (LINK_ARCH32_SPEC): New macro.
- (LINK_ARCH64_SPEC): Likewise.
-
-2003-12-18 Jason Merrill <jason@redhat.com>
-
- PR middle-end/13234
- * tree-dump.c (dequeue_and_dump): Handle 'r' and 's' code
- classes.
-
-2003-12-18 Steven Bosscher <stevenb@suse.de>
-
- * Makefile.in (tracer.o, bb-reorder.o): Depend on timevar.h
- * toplev.c (rest_of_handle_reorder_blocks, rest_of_handle_tracer):
- Don't push and pop TV_REORDER_BLOCKS timevars, do it...
- * bb-reorder.c (reorder_basic_blocks): ...here, and...
- * tracer.c (tracer): here.
-
-2003-12-18 Ulrich Weigand <uweigand@de.ibm.com>
-
- * loop.c (move_movables): Handle combination of m->consec,
- m->move_insn_first, and m->insert_temp all nonzero correctly.
-
-2003-12-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * calls.c (load_register_parameters): Don't use
- LOAD_ARGS_REVERSED.
- * system.h (LOAD_ARGS_REVERSED): Poison.
- * doc/tm.texi (LOAD_ARGS_REVERSED): Remove.
-
-2003-12-17 Per Bothner <per@bothner.com>
-
- * emit-rtl.c (set_new_first_and_last_label_num): Remove function.
- * rtl.h (set_new_first_and_last_label_num): Remove declaration.
-
-2003-12-17 Alexandre Oliva <aoliva@redhat.com>
-
- * config/frv/frv.c (frv_ifcvt_modify_insn): Don't leave alone
- scratch insns of the then branch that clobber regs needed by the
- else branch.
-
-2003-12-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * calls.c (expand_call): Update comments.
- * system.h (PRETEND_OUTGOING_VARARGS_NAMED): Poison.
- * targhooks.c: Do not refer to PRETEND_OUTGOING_VARARGS_NAMED.
-
-2003-12-17 James E Wilson <wilson@specifixinc.com>
- Roger Sayle <roger@eyesopen.com>
-
- * Makefile.in (gcse.o): Add $(TREE_H) to dependencies.
- * gcse.c: Include tree.h.
- (implicit_set_cond_p): New.
- (find_implicit_sets): Call it.
-
-2003-12-17 Santiago Vila <sanvila@unex.es>
-
- * config/kfreebsdgnu.h (TARGET_OS_CPP_BUILTINS): Rename from
- TARET_OS_CPP_BUILTINS.
-
-2003-12-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * emit-rtl.c: Fix signed/unsigned comparison warnings.
-
-2003-12-17 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * predict.c (struct block_info_def, struct edge_info_def): Change
- bit-fields of width 1 to unsigned int.
-
-2003-12-16 Geoffrey Keating <geoffk@apple.com>
-
- PR 12480
- * c-pch.c (pch_init): Improve error message when precompiled
- header can't be written.
-
- PR 12606
- * c-pch.c (pch_init): Make a PCH file appear invalid while it's
- being written.
- (c_common_write_pch): Make it valid once it's done.
-
-2003-12-17 Ulrich Weigand <uweigand@de.ibm.com>
-
- PR target/11992
- * config/s390/s390.md ("*cmpmem_long_64"): Use CLCLE instruction
- instead of CLCL.
- ("*cmpmem_long_31"): Likewise.
-
-2003-12-17 Vladimir Makarov <vmakarov@redhat.com>
-
- * config/ia64/ia64.c: Add more comments about insn bundling.
-
-2003-12-17 Richard Earnshaw <rearnsha@arm.com>
-
- PR optimization/10592
- * caller-save.c (mark_referenced_regs): Don't short-circuit a reg
- or subreg in SET_DEST if it isn't a hard register.
-
-2003-12-17 David Edelsohn <edelsohn@gnu.org>
-
- * collect2.c (main): Add -fno-profile-arcs -fno-test-coverage
- -fno-branch-probabilities to arguments when compiling ctors and
- dtors.
-
-2003-12-17 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sol2.h: Set SUPPORTS_INIT_PRIORITY to 0.
- * config/sparc/sol2-gld.h: Set SUPPORTS_INIT_PRIORITY to 1.
-
-2003-12-17 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (thumb_base_register_rtx_p): Don't allow virtual registers
- as base registers for sub-word operations.
- (thumb_legitimate_address_p): Simplify REG+REG test.
-
-2003-12-17 Segher Boessenkool <boessen@de.ibm.com>
-
- * opts.c (wrap_help): Fix overflow.
-
-2003-12-17 Fred Fish <fnf@redhat.com>
-
- * configure.in: Remove code to examine linker scripts and set
- HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES.
- * configure, config.in: Regenerate.
-
-2003-12-16 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/12218
- * varasm.c (initializer_constant_valid_p): Allow a conversion from
- an integral constant to an OFFSET_TYPE.
-
-2003-12-16 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/11012
- * config/m32r/m32r.c (gen_compare): Call gen_addsi3 instead of
- gen_cmp_ne_small_const_insn.
- * config/m32r/m32r.md (cmp_ne_small_const_insn): Remove.
-
-2003-12-17 Neil Booth <neil@daikokuya.co.uk>
- Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/3347
- * c-decl.c (enum_decl_context): Remove BITFIELD.
- (grokdeclarator): Take bit-field width as an input.
- Perform bit-field width validation with
- check_bitfield_type_and_width rather than waiting for
- finish_struct.
- (groktypename, groktypename_in_parm_context, start_decl,
- push_parm_decl, grokfield, start_function): Update calls to
- grokdeclarator.
- (check_bitfield_type_and_width): New function.
- (finish_struct): Move bit-field validation to grokdeclarator
- and check_bitfield_type_and_width.
-
-2003-12-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR bootstrap/13386
- * configure.in (gcc_cv_ld_hidden): Set to yes on hppa64*-*-hpux* when
- using HP native linker.
- * configure: Rebuilt.
-
-2003-12-16 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/13275
- * c-common.h (enum rid): Add RID_OFFSETOF.
- * c-parser.in (rid_to_yy): Ignore RID_OFFSETOF.
- * ginclude/stddef.h (offsetof): Reimplement for C++, using
- __offsetof__.
- * doc/extend.texi: Document __offsetof__.
-
-2003-12-16 Stan Cox <scox@redhat.com>
-
- * config/iq2000/iq2000.h: Formatting.
- (MAX_INT_TYPE_SIZE, MAX_INT_TYPE_SIZE, CONST_COSTS, RTX_COSTS)
- (ADDRESS_COST, ASM_OUTPUT_INTERNAL_LABEL, ASM_OUTPUT_INTERNAL_LABEL)
- (IMPLICIT_FIX_EXPR, EASY_DIV_EXPR, SLOW_ZERO_EXTEND): Remove
- * config/iq2000/iq2000.c: Formatting.
- (iq2000_rtx_costs): New.
-
-2003-12-16 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (addsi3_carryin_shift): Add missing register constraints.
-
-2003-12-16 Loren James Rittle <ljrittle@acm.org>
-
- * testsuite/g++.old-deja/g++.eh/badalloc1.C: Tweak to
- pass with -pthread on FreeBSD systems.
-
-2003-12-16 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_file_end): Only write symbols that have
- been referenced at some point.
-
-2003-12-16 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c: Include langhooks.h
- (mips_build_builtin_va_list): Use lang_hooks.types.make_type.
-
-2003-12-16 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/13313
- * combine.c (make_extraction) [REG]: Do not use
- gen_lowpart_for_combine when POS is non-zero.
-
-2003-12-16 Hartmut Penner <hpenner@de.ibm.com>
-
- * altivec.h (vec_cmple, vec_all_numeric): Fix typo.
- * testsuite/gcc.dg/altivec-10.c: Test for above.
-
-2003-12-15 David O'Brien <obrien@FreeBSD.org>
-
- * Makefile.in (CPPFLAGS): Initialize from configure.
-
-2003-12-15 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/13400
- * ifcvt.c (noce_process_if_block): Disable unconditional write
- optimizations if we could introduce a store to trapping memory
- that wasn't present previously.
-
-2003-12-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (DEFAULT_CALLER_SAVES): Poison.
- * toplev.c (flag_caller_saves): Always initialize with 0.
- * doc/tm.texi (DEFAULT_CALLER_SAVES): Remove.
-
-2003-12-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * flow.c (EXIT_IGNORE_STACK): Move to ...
- * defaults.h (EXIT_IGNORE_STACK): ... here.
- * dojump.c (clear_pending_stack_adjust): Don't use #ifdef
- EXIT_IGNORE_STACK.
- * function.c (expand_function_end): Likewise.
- * global.c (global_alloc): Likewise.
- * ra.c (init_ra): Likewise.
- * reload1.c (init_elim_table): Likewise.
- * reorg.c (fill_simple_delay_slots): Likewise.
- * resource.c (init_resource_info): Likewise.
- * doc/tm.texi (EXIT_IGNORE_STACK): Document that the default
- is 0.
-
-2003-12-15 J"orn Rennecke <joern.rennecke@superh.com>
-
- * reload.c (reg_overlap_mentioned_for_reload_p):
- When looking at a PLUS in X, avoid spuriously returning nonzero
- when IN is a REG or another simple PLUS, or a MEM containing one.
-
- * loop.c (loop_invariant_p): Amend comment about where new registers
- might come from.
-
-2003-12-15 Andreas Jaeger <aj@suse.de>
-
- * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Remove
- handling of obsolete language CHILL.
-
-2003-12-15 Waldek Hebisch <hebisch@math.uni.wroc.pl>
-
- * tree.c (initializer_zerop): Add test for empty set.
- * integrate.c (function_cannot_inline_p): Forbid inlining
- functions calling `longjmp'.
-
-2003-12-15 Nathan Sidwell <nathan@codesourcery.com>
-
- PR c++/11773
- * doc/gcov.texi (Gcov and Optimization): Document inline function
- behaviour. Fix some file suffixes.
-
-2003-12-14 David O'Brien <obrien@FreeBSD.org>
-
- * config/i386/i386.h (__amd64, __amd64__): Remove duplicates.
-
-2003-12-14 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (c_parse_error): Declare it.
- * c-common.c (c_parse_error): New function.
- * c-parse.y (yyerror): Use it.
-
-2003-12-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/13054
- * pa-protos.h (indexed_memory_operand, borx_reg_operand,
- move_dest_operand, move_src_operand): New protypes.
- (basereg_operand, move_operand, reg_or_nonsymb_mem_operand): Deleted.
- * pa.c (copy_reg_pointer, indexed_memory_operand, move_dest_operand,
- move_src_operand): New functions.
- (basereg_operand, reg_or_nonsymb_mem_operand, move_operand): Delete.
- (reg_or_0_or_nonsymb_mem_operand): Return false for unscaled indexed
- address until cse is not expected on targets with non-equivalent
- space registers.
- (hppa_legitimize_address): Canonicalize unscaled indexed addresses
- on targets non-equivalent space registers.
- (emit_move_sequence): Break out indexed addresses from destination
- operand. Similarly, break out unscaled indexed addresses from
- source operand on targets with non-equivalent space registers. Fix
- REG_POINTER flag when possible. Mark register pointer when creating
- new pointers.
- (print_operand): Handle unscaled index addresses.
- * pa.h (IS_INDEX_ADDR_P, IS_LO_SUM_DLT_ADDR_P): New macro subroutines
- for EXTRA_CONSTRAINT.
- (EXTRA_CONSTRAINT): Rework to make more readable.
- (MODE_OK_FOR_SCALED_INDEXING_P, MODE_OK_FOR_UNSCALED_INDEXING_P): New
- subroutines for GO_IF_LEGITIMATE_ADDRESS.
- (GO_IF_LEGITIMATE_ADDRESS): Rework using new subroutines. Allow scaled
- and unscaled addresses. Canonicalize unscaled indexed addresses on
- targets with non-equivalent space registers. Document issues in
- handling indexed address modes on PA-RISC.
- (PREDICATE_CODES): Update for new and deleted predicates.
- * pa.md (move_dest_operand, move_src_operand, indexed_memory_operand):
- Use new predicates in move patterns.
- Add peephole2 patterns to optimize floating point stores. Fix
- constrain preferencing in move patterns. Delete patterns for handling
- unscaled indexed memory loads. Add missing load and store with
- base-register modification patterns. Correct SFmode floating point
- store pattern. Add missing zero extension loads.
-
-2003-12-13 Steven Bosscher <stevenb@suse.de>
-
- * ggc-zone.c (struct alloc_zone): Don't pre-declare, it already
- comes in with ggc.h. Add a new bool field `dead'.
- (destroy_ggc_zone): Don't destroy a zone at once. Instead, only
- set the `dead' flag for the dead zone. Wrap a sanity check in
- ENABLE_CHECKING.
- (ggc_collect_1): Always mark and sweep if a zone has the `dead'
- flag set.
- (ggc_collect): Free dead zones after collecting.
-
-2003-12-13 Jan Hubicka <jh@suse.cz>
-
- * coverage.c (get_coverage_counts): Use inform instead of warning
- about missing profile.
-
-2003-12-12 Steven Bosscher <stevenb@suse.de>
-
- * Makefile.in (opts.o, explow.o): Depend on langhooks.h
-
-2003-12-12 Geoffrey Keating <geoffk@apple.com>
-
- * config.gcc <i[34567]86-*-darwin*>: Don't use fixproto.
- <powerpc-*-darwin*>: Likewise.
-
-2003-12-12 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/linux.h (IA64_GATE_AREA_END): Increase by 64K.
- (MD_FALLBACK_FRAME_STATE_FOR): Set fpsr_loc, br_loc[6] and
- br_loc[7]. Update comment.
- (MD_HANDLE_UNWABI): Define.
- * config/ia64/unwind-ia64.c (struct unw_state_record): Add
- unwabi field.
- (struct _Unwind_Context): Increase br_loc array size to 8 entries.
- (desc_abi): Set unwabi.
- (uw_update_reg_address): Allow br up to 7.
- (uw_update_context): Invoke MD_HANDLE_UNWABI if defined.
- (uw_install_context): Load b1..b5 from correct locations.
- Fix insn loading ar.fpsr.
- * doc/tm.texi: Document MD_HANDLE_UNWABI.
-
-2003-12-12 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/13037
- * loop.c (update_giv_derive): Ignore redundant sets of a biv when
- calculating how to derive a giv from a biv.
-
-2003-12-12 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/12935 preprocessor/12952 preprocessor/13046
- * cpplib.c (prepare_directive_trad): Clear skipping only in
- #if and #elif directives.
- (do_undef): Call the handler even if the identifier is not a macro.
- * cpptrad.c (scan_parameters): Emit an error message.
- (_cpp_create_trad_definition): Remember the params list even on
- failure.
-
-2003-12-11 Zack Weinberg <zack@codesourcery.com>
-
- * arm.c (ARM_ADDRESS_COST, THUMB_ADDRESS_COST): Convert macros
- to inline functions: arm_arm_address_cost, arm_thumb_address_cost
- respectively.
- (arm_address_cost): Use 'em.
-
-2003-12-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/alpha/osf.h (TARGET_OS_CPP_BUILTINS): Define
- __STDC_VERSION__ to ISO C94 for C++.
-
- * fixinc/inclhack.def (alpha_wchar): New fix.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/wchar.h: New file.
-
-2003-12-11 David Mosberger <davidm@hpl.hp.com>
-
- * unwind-libunwind.c (_Unwind_SetGR): Clear the NaT bit as
- required by C++ ABI for Itanium.
- * config/t-libunwind (LIB2ADDEH): Remove unwind-libunwind.c.
- * config/t-libunwind-no-eh: New file.
- * configure.in: Check libunwind for _Unwind_Resume() and if it's
- present, set libunwind_has_eh_support to "yes".
- * configure: Regenerate.
- * config.gcc (ia64*-*-linux*): If $libunwind_has_eh_support is
- set to yes, use t-libunwind, otherwise, use t-libunwind-no-eh.
-
-2003-12-11 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_global_pointer): Force functions with
- a nonlocal goto to set up $gp.
-
-2003-12-11 James E Wilson <wilson@specifixinc.com>
-
- PR target/13132
- * function.c (gen_mem_addressof): When no decl, explicitly clear flag
- bits.
-
-2003-12-12 Nick Clifton <nickc@redhat.com>
-
- * config/m32r/m32r.c: Convert to ISO-C
-
-2003-12-12 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * doc/invoke.texi: Replace Mitsubishi with Renesas.
- * config/m32r/m32r.h: Ditto.
- * config/m32r/m32r.c: Ditto.
- * config/m32r/m32r.md: Ditto.
-
-2003-12-11 Steven Bosscher <steven@gcc.gnu.org>
-
- * basic-block.h (BLOCK_HEAD, BLOCK_END): Remove.
- (BLOCK_HEAD_TREE, BLOCK_END_TREE): Remove.
- (basic_block_def): Rename `head' to `head_' and `end' to `end_'.
- (BB_HEAD, BB_END): New accessor macros for the `head_' and `end_'
- fields of a basic block.
- * bb-reorder.c, bt-load.c, caller-save.c, cfg.c, cfganal.c,
- cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c, cfgloopanal.c,
- cfgloopmanip.c, cfgrtl.c, combine.c, conflict.c, df.c, emit-rtl.c,
- final.c, flow.c, function.c, gcse.c, global.c, graph.c,
- haifa-sched.c, ifcvt.c, lcm.c, local-alloc.c, loop-unswitch.c,
- loop.c, postreload.c, predict.c, profile.c, ra-build.c, ra-debug.c,
- ra-rewrite.c, ra.c, recog.c, reg-stack.c, regclass.c, regmove.c,
- regrename.c, reload1.c, resource.c, sched-ebb.c, sched-rgn.c,
- sibcall.c, tracer.c, config/frv/frv.c, config/i386/i386.c,
- config/ia64/ia64.c: Use the BB_HEAD and BB_END macros instead of
- accessing the `head' and `end' fields of a basic block directly.
-
- * gengtype.c: Teach about "void**" pointers and "void *" function
- types. Fixes earlier commit.
-
-2003-12-10 Geoffrey Keating <geoffk@apple.com>
-
- * doc/extend.texi (Vector Extensions): Document that bitwise
- operations also work on vectors.
-
-2003-12-10 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md: New split patterns for optimizing bitfield accesses.
-
-2003-12-10 Steven Bosscher <stevenb@suse.de>
-
- * README.Portability: Remove K+R section.
-
- * gengtype-lex.l: Teach about "void**" pointers and
- "void*" function types.
-
-2003-12-10 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/13354
- * config/sparc/sparc.c (sparc_output_mi_thunk): Load DELTA
- manually if one can do that with only one instruction.
-
-2003-12-10 Nick Clifton <nickc@redhat.com>
-
- * config.gcc (arm-linux): Include linux.h in tm_file so that
- LINUX_TARGET_OS_CPP_BUILTINS is defined.
- * config/arm/linux-elf.h (LIB_SPEC): Protect the definition.
-
-2003-12-09 James E Wilson <wilson@specifixinc.com>
-
- * rtl.def (CODE_LABEL, NOTE): Correct operand numbers in comments.
-
-2003-12-09 Matt Austern <austern@apple.com>
-
- PR c/13134
- * c-decl.c (duplicate_decls): Copy visibility flag when appropriate.
-
-2003-12-09 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h: Add support for m32r2 processor. Including
- a new command line option -m32r2 to select it.
- * config/m32r/m32r.c: Add support for the new processor variant.
- * config/m32r/m32r.md: Likewise.
- * config/m32r/t-m32r: Add m32r2 multilibs.
- * doc/invoke.texi: Document the new command line switch.
-
-2003-12-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * defaults.h (LOCAL_REGNO): Give the default definition.
- * flow.c (LOCAL_REGNO): Remove.
- * reload1.c (LOCAL_REGNO): Likewise.
-
-2003-12-08 Geoffrey Keating <geoffk@apple.com>
-
- PR target/11848
- * rs6000.h (CANNOT_CHANGE_MODE_CLASS): Allow change of mode
- in floating-point registers between TFmode and DImode.
- * rs6000.c (rs6000_emit_move): Split moves early.
- (secondary_reload_class): Random Whitespace Change.
- (rs6000_split_multireg_move): Support moves involving FP registers.
- Emit instructions directly.
- * rs6000-protos.h (rs6000_split_multireg_move): Update prototype.
- * altivec.md: Update for changes to rs6000_split_multireg_move.
- * rs6000.md: Update for changes to rs6000_split_multireg_move.
- (movtf_internal): Support moves to/from GPRs.
-
-2003-12-08 Stuart Hastings <stuart@apple.com>
-
- * config/i386/i386.md: Typo in split of fp-valued if_then_else.
-
-2003-12-08 James E Wilson <wilson@specifixinc.com>
-
- PR target/13132
- * expmed.c (extract_bit_field): Only call mode_for_size for scalar
- integer modes.
-
-2003-12-08 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * doc/install.texi: Revert change of Dec 7; gcc is still a 2.13
- directory.
-
-2003-12-08 Alexandre Oliva <aoliva@redhat.com>
-
- * config/frv/frv.md (subdi2): Merge with _internal insn_and_split,
- by using match_scratch.
- (negdi2): New.
-
-2003-12-08 Jason Merrill <jason@redhat.com>
- Daniel Berlin <dberlin@dberlin.org>
-
- PR debug/11114
- Support namespaces in DWARF 2 output.
- * dwarf2out.c (gen_namespace_die): New function.
- (force_namespace_die, setup_namespace_context): New fns.
- (declare_in_namespace): New fn.
- (gen_decl_die): Call declare_in_namespace. Handle namespaces.
- (dwarf2out_decl): Handle namespaces.
- (scope_die_for): Pass through a namespace scope.
- (class_scope_p): Rename to class_or_namespace_scope_p.
- (gen_subprogram_die, gen_variable_die): Adjust.
- (gen_struct_or_union_die): Always emit a declaration
- if context_die is a namespace.
-
-2003-12-08 Jan Hubicka <jh@suse.cz>
-
- * unwind-pe.h (read_uleb128): Fix handling of large values
- (read_sleb128): Fix handling of large values
-
-2003-12-08 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR middle-end/10060
- * emit-rtl.c (copy_rtx_if_shared): Split out into ...
- (copy_rtx_if_shared_1): here and optimize the last one
- in the sequence into tail-recursion.
- (reset_used_flags): Optimize the last one
- in the sequence into tail-recursion.
-
-2003-12-08 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md: New split to transform ((X << y) - 1) into ~(~(X-1) << y)
- for constant X.
-
-2003-12-08 Richard Sandiford <rsandifo@redhat.com>
-
- * calls.c (expand_call): Don't try using tail or recursive calls
- after the function body has been expanded.
-
-2003-12-08 Jan Hubicka <jh@suse.cz>
-
- * i386.md (cmpstr expander): Obey TARGET_INLINE_ALL_STRINGOPS
-
-2003-12-08 Arnaud Charlet <charlet@act-europe.fr>
-
- PR ada/13324, PR ada/12614
- * doc/install.texi: Update requirements for building Ada.
-
-2003-12-07 David Edelsohn <edelsohn@gnu.org>
- Graham Reed <greed@pobox.com>
-
- * collect2.c (GCC_OK_SYMBOL): Add support for AIX C_WEAKEXT.
- (GCC_UNDEF_SYMBOL): Same.
-
-2003-12-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * final.c (final_scan_insn): Don't use FINAL_PRESCAN_LABEL.
- * system.h (FINAL_PRESCAN_LABEL): Poison.
- * doc/tm.texi (FINAL_PRESCAN_LABEL): Remove.
-
-2003-12-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (compare): Combine toplevel and $(SUBDIRS) cases.
-
-2003-12-07 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in, aclocal.m4: Revert to pre-2.5x conversion status.
- * configure: Regenerate with autoconf 2.13.
-
- * configure.in: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM
- with modern equivalents.
- * configure: Regenerate.
-
- * configure.in: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE.
- * aclocal.m4 (gcc_AC_CHECK_TYPE): Remove.
- * configure: Regenerate.
-
- * configure: Regenerate with (preferred) autoconf 2.57.
- * doc/install.texi: Note that 'gcc' is now a 2.57 directory.
-
-2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/12965
- * caller-save.c (save_call_clobbered_regs): Do not save/restore
- registers around no-return calls.
-
-2003-12-07 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in: Make minimum necessary changes for autoconf 2.5x.
- * aclocal.m4: Make minimum necessary changes for autoconf 2.5x.
- * configure: Regenerate with autoconf 2.58.
-
-2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/13318
- * loop.c (express_from): Protect integer division from overflow.
-
-2003-12-07 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/13060
- * function.c (fixup_var_refs_1) [SUBREG]: Recognize even if a
- replacement already exists. Fix again the whole insn if that fails.
-
-2003-12-06 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000.c (macho_branch_islands): Use
- HOST_WIDE_INT_PRINT_UNSIGNED.
-
-2003-12-06 Richard Sandiford <rsandifo@redhat.com>
-
- * varasm.c (incorporeal_function_p): New.
- (assemble_external): Use it as a filter.
- * config/mips/mips.c (mips_output_external): Don't check for builtin
- functions here.
-
-2003-12-06 Richard Earnshaw <reanrsha@arm.com>
-
- * arm.md (IOR (COMPARISON) (AND)): New define_splits.
-
-2003-12-06 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (program_transform_cross_name): Delete.
- (GCC_CROSS_NAME, CPP_CROSS_NAME): Delete.
- (PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): Delete.
- (AR_FOR_TARGET, RANLIB_FOR_TARGET, NM_FOR_TARGET): Adjust for above.
- (install_cpp, install_driver, install-man, uninstall): Likewise.
-
-2003-12-06 Alan Modra <amodra@bigpond.net.au>
-
- PR 13169
- * basic-block.h (PROP_ASM_SCAN): Define.
- * final.c (regs_asm_clobbered): New array.
- * regs.h (regs_asm_clobbered): Declare.
- * flow.c (life_analysis): Init it.
- (mark_set_regs): Set PROP_ASM_SCAN for asms.
- (mark_set_1): Set regs_asm_clobbered.
- * global.c (global_alloc): Don't set eliminable_regset when
- regs_asm_clobbered.
-
-2003-12-05 Mark Mitchell <mark@codesourcery.com>
-
- * config/ia64/ia64.h (MUST_PASS_IN_STACK): Define.
-
- PR c++/13314
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Robustify.
-
-2003-12-05 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR driver/13211
- * gcc.c (execute) Increment execution_count when returning
- early because verbose_only_flag is true.
-
-2003-12-05 Per Bothner <pbothner@apple.com>
-
- * cppfiles.c (file_hash_hash): New static function.
- (hash_string_eq): Renamed static function to file_hash_eq.
- (_cpp_init_files): Create file_hash table with above callbacks.
- (cpp_included): Must use htab_find_with_hash insead of htab_find.
- (_cpp_find_find, make_cpp_dir): Must use htab_find_slot_with_hash.
-
-2003-12-05 Per Bothner <pbothner@apple.com>
-
- * line-map.h (source_location): New typedef.
- (fileline): Redefined as source_location.
- (struct line_map, linemap_add, linemap_lookup): Replace filefile
- by source_location.
- * line-map.c (linemap_add, linemap_lookup): Use source_location.
-
-2003-12-05 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_build_builtin_va_list): Add dummy
- field to suppress -Wpadded warnings.
-
-2003-12-05 Stuart Hastings <stuart@apple.com>
-
- * config/rs6000/rs6000.md: Correct macro test of TARGET_MACHO.
-
-2003-12-05 Stuart Menefy <stuart.menefy@st.com>
- J"orn Rennecke <joern.rennecke@superh.com>
-
- PR target/13302
- * sh.c (sh_build_builtin_va_list): Use (*lang_hooks.types.make_type).
-
-2003-12-05 Roger Sayle <roger@eyesopen.com>
-
- * dojump.c (do_jump): If the expression being compared against
- zero, is the subreg of a promoted variable, perform the comparison
- in the promoted mode.
- * simplify-rtx.c (simplify_unary_operation): Optimize sign and
- zero-extensions of subregs of promoted variables where the
- extension is identical to that used to promote the variable.
-
-2003-12-05 Hans-Peter Nilsson <hp@axis.com>
-
- PR target/13256
- * resource.h (enum mark_resource_type): Remove member MARK_DEST.
- The only user changed as follows:
- * resource.c (mark_set_resources) <case SET>: Always recurse for
- SET_SRC (x).
- <case SIGN_EXTRACT, case ZERO_EXTRACT>: Always recurse on
- operands.
- <case STRICT_LOW_PART>: Delete, deferring to default code.
-
-2003-12-05 Waldek Hebisch <hebisch@math.uni.wroc.pl>
-
- * stmt.c (expand_nl_goto_receiver): Copy hard register clobbers
- and ASM_INPUT barrier from expand_builtin_setjmp_receiver.
-
-2003-12-05 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_expand_call): Don't allow laziy binding
- for n32 & n64 abicalls.
-
-2003-12-05 Richard Sandiford <rsandifo@redhat.com>
-
- PR bootstrap/13145
- * config/mips/mips.h (FIRST_PSEUDO_REGISTER): Adjust comment.
- * config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Add $fcall.
- (mips_load_got): Always create a constant MEM.
- (mips_expand_call): Use load_callsi and load_calldi.
- * config/mips/mips.md (UNSPEC_LOAD_CALL, FAKE_CALL_REGNO): New consts.
- (load_callsi, load_calldi): New patterns.
-
-2003-12-05 Peter Gerwinski <peter@gerwinski.de>
-
- * tree.def (PLACEHOLDER_EXPR): Clarify commentary.
-
-2003-12-05 Steven Bosscher <stevenb@suse.de>
-
- * config/d30v/d30v-protos.h , config/d30v/d30v.c,
- config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c,
- config/fr30/fr30-protos.h, config/fr30/fr30.c,
- config/i370/i370-protos.h, config/i370/i370.c,
- config/i960/i960-protos.h, config/i960/i960.c,
- config/ip2k/ip2k-protos.h, config/ip2k/ip2k.c,
- config/m32r/m32r-protos.h, config/m32r/m32r.c,
- config/mn10300/mn10300-protos.h, config/mn10300/mn10300.c,
- config/ns32k/ns32k-protos.h, config/ns32k/ns32k.c:
- Convert to ISO C90 function declarations and definitions.
-
-2003-12-05 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/extend.texi (Constructing Calls): Add warning about
- the limitations of the functions.
-
-2003-12-05 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR middle-end/11151
- * function.h (struct function): New field 'x_naked_return_label'.
- * function.c (free_after_compilation): Set it to NULL.
- (expand_function_end): Emit 'naked_return_label' if it exists.
- * rtl.h (expand_naked_return): Declare.
- * stmt.c (expand_naked_return): New function to generate a
- jump to 'naked_return_label'.
- * builtins.c (expand_builtin_return): Call expand_naked_return
- instead of expand_null_return.
- * config/sparc/sparc.md (untyped_return): Likewise.
-
-2003-12-04 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/11322
- * config/sh/netbsd-elf.h (NO_PROFILE_COUNTERS): Define.
-
- PR target/12467
- * config/rs6000/altivec.md (altivec_vmsummbm): Fix typo.
-
-2003-12-04 Stuart Hastings <stuart@apple.com>
-
- * rs6000.c (output_call, macho_branch_islands,
- add_compiler_branch_island, no_previous_def, get_previous_label)
- Revisions of xx_stub functions for branch islands,
- add -fPIC support for Darwin.
- * rs6000-protos.h (output_call) Prototype.
- * rs6000.md Use output_call.
- * invoke.texi Explain Darwin semantics of -longcall.
- * testsuite/gcc.dg/darwin-abi-1.c Revise testcase for -longcall/jbsr.
-
-2003-12-04 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.md (addqi3_carry): Use q not r constraints.
- (subqi3_carry): Likewise.
-
-2003-12-04 J"orn Rennecke <joern.rennecke@superh.com>
-
- PR optimization/13260
- * sh-protos.h (sh_expand_t_scc): Declare.
- * sh.h (PREDICATE_CODES): Add cmpsi_operand.
- * sh.c (cmpsi_operand, sh_expand_t_scc): New functions.
- * sh.md (cmpsi): Use cmpsi_operand. If T_REG is compared to
- something that is not a CONST_INT, copy it into a pseudo register.
- (subc): Fix description of new T value.
- (slt, sgt, sge, sgtu): Don't clobber T after rtl generation is over.
- (sltu, sleu, sgeu): Likewise.
- (seq, sne): Likewise. Use sh_expand_t_scc.
-
-2003-12-04 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in: Generalize the CONFIG_HEADERS pattern under which
- we stamp cstamp-h.
- * configure: Regenerate.
-
- * configure.in: Pull AC_CHECK_HEADER call out of shell if statement
- to avoid trouble when updating to autoconf 2.5x.
- * configure: Regenerate (with autoconf 2.13 still).
-
-2003-12-04 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (truncdiqi2): Use andi opcode for immediate.
- (reload_outdf+1,reload_outdf+2): Remove constraints.
- (movv16sf_i): Fxi multiplier for SUBREG_BYTE.
- (movv8qi_i+2): Zero-extend low byte before adding it to high byte.
- (fipr, ftrv): Add .s suffix to opcode.
-
-2003-12-04 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/13186
-
- Revert all of the following patch, except the addition of
- hook_bool_machine_mode_true:
-
- 2003-11-02 Richard Sandiford <rsandifo@redhat.com>
-
- * Makefile.in (targhooks.o, reload.o): Update dependencies.
- (GTFILES): Add targhooks.c.
- (gt-targhooks.h): New rule; depend on s-gtype.
- * target.h (direct_pool_load_p): New hook.
- * target-def.h (TARGET_DIRECT_POOL_LOAD_P): New macro.
- (TARGET_INITIALIZER): Include it.
- * targhooks.h (default_direct_pool_load_p): Declare.
- (hook_bool_machine_mode_true): Declare.
- * targhooks.c: Include insn-config.h, recog.h, ggc.h and
- gt-targhooks.h.
- (pool_symbol): New variable.
- (default_direct_pool_load_p): New function.
- (hook_bool_machine_mode_true): New function.
- * reload.c: Include target.h.
- (find_reloads): If an alternative will force a constant into memory,
- count an extra reload if constant pool symbols are not valid
- addresses. If an alternative uses memory to move values between
- registers, count the move as two reloads rather than one.
- * config/s390/s390.c (TARGET_DIRECT_POOL_LOAD_P): Define.
- * doc/tm.texi (TARGET_DIRECT_POOL_LOAD_P): Document.
-
-2003-12-03 Mark Mitchell <mark@codesourcery.com>
-
- * config/ia64/hpux.h (TARGET_HAVE_TLS): Define it to false.
- * config/ia64/ia64.h (TARGET_HAVE_TLS): Define it to true if
- HAVE_AS_TLS is true.
- * config/ia64/ia64.c (TARGET_HAVE_TLS): Do not define it.
-
-2003-12-03 James E Wilson <wilson@specifixinc.com>
-
- * gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name.
-
- * gcc-page.c (extra_order_size_tab): Correct comment.
-
-2003-12-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (push): Call gen_push_h8300hs_advanced
- instead of gen_push_h8300hs.
- (pop): Call gen_pop_h8300hs_advanced instead of
- gen_pop_h8300hs.
- * config/h8300/h8300.h (TRAMPOLINE_SIZE): Use Pmode.
- * config/h8300/h8300.md (*tablejump_h8300hs_advanced):
- Tighten the predicate.
- (*tablejump_h8300hs_normal): Tighten the predicate.
- (push_h8300hs): Change to
- push_h8300hs_advanced.
- (pop_h8300hs): Change to pop_h8300hs_advanced.
-
-2003-12-03 Eric Christopher <echristo@redhat.com>
-
- * rtl.c: Fix typo.
- * config/mips/mips.h: Ditto. Fix formatting.
-
-2003-12-04 Ben Elliston <bje@wasabisystems.com>
-
- * future.options: Remove. Move to gnu.org web pages.
-
-2003-12-03 Eric Christopher <echristo@redhat.com>
-
- * c-parse.in (c_in_iteration_stmt, c_in_case_stmt): Move
- from here...
- * c-tree.h: to here.
-
-2003-12-03 Jan Hubicka <jh@suse.cz>
-
- PR optimization/12324
- * toplev.c (rest_of_decl_compilation): Do not deffer when compiling
- in unit-at-a-time mode.
-
-2003-12-03 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (store_constructor): Only set RTX_UNCHANGING_P for
- read-only field if cleared is 0.
-
-2003-12-03 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Mark obsolete targets for GCC 3.4.
-
-2003-12-03 Zack Weinberg <zack@codesourcery.com>
-
- * aclocal.m4 (AM_ICONV): Add explicit check for iconv.h.
- * config.in, configure.in: Regenerate.
- * cpphash.h: Check both HAVE_ICONV and HAVE_ICONV_H before
- including iconv.h.
-
-2003-12-03 Alan Modra <amodra@bigpond.net.au>
-
- PR target/11229
- * cse.c (cse_insn): Set classp using src_const_elt if
- src_eqv_elt is NULL.
-
-2003-12-03 Richard Earnshaw <rearnsha@arm.com>
-
- * gcse.c (reg_clear_last_set): New function.
- (reg_set_info): If data is non-null, treat it as an sbitmap of
- registers, set the bit for the register being set.
- (compute_store_table): Allocate last_set_in with xcalloc. Do not
- memset this array on each iteration. Pass reg_set_in_block[bb->index]
- to note_stores while computing last_set_in instead of scanning
- last_set_in after the first pass through the insns.
- Clear last_set_in using reg_clear_last_set instead of explicitly
- rescanning after each insn. If checking is enabled, assert that
- last_set_in is completely zeroed after each bb has been processed.
-
-2003-12-02 Geoffrey Keating <geoffk@geoffk.org>
-
- * df.c (df_uses_record) <MEM>: The argument of a MEM is read-only,
- never read-write.
- <REG>: Delete incorrect comment.
- <SET>: Remove 'use_flags' variable.
-
-2003-12-03 David Edelsohn <edelsohn@gnu.org>
-
- * function.c (assign_parms): Make sure parm PARALLEL combined
- in reg is composed of more than one object and the mode really
- produces a reg.
-
-2003-12-03 Jan Hubicka <jh@suse.cz>
-
- * i386.c (classify_argument): Make it 64bit clean.
-
-2003-12-02 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_output_external): Replace checks for
- specific builtin-in functions with a check for DECL_BUILTIN_IN.
-
-2003-12-02 Richard Henderson <rth@redhat.com>
-
- * rtl.h (PUT_CODE, PUT_MODE): Remove ENUM_BITFIELD cast.
- * tree.h (TREE_SET_CODE): Likewise.
- * recog.h (struct insn_operand_data): Move const after ENUM_BITFIELD.
-
-2003-12-02 Ben Elliston <bje@wasabisystems.com>
-
- * dbxstclass.h: Rename from this ..
- * xcoff.h: .. to this.
- * xcoffout.c: Include xcoff.h.
-
-2003-12-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (GCC_CFLAGS): Add -Wold-style-definition.
-
-2003-12-01 James Lemke <jim@wasabisystems.com>
-
- * config/arm/arm.c (arm_rtx_costs): Improve for xscale multiply.
-
-2003-12-01 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/11634
- * recog.c (split_insn): Factor test of INSN_P and handling of
- set_noop_p out of here into the two callers.
- (split_all_insns): Add INSN_P test and set_noop_p handling here.
- If deleting a no-op set after reload that has a REG_UNUSED note,
- mark the basic block as changed and recalculate life information.
- (split_all_insns_noflow): Add INSN_P test and set_noop_p handling
- here.
-
-2003-12-01 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/12322
- * gcse.c (struct ls_expr): Change type of hash_index from int to
- unsigned int.
- (hash_expr): Document hash_table_size parameter and wrap long line.
- (ldst_entry): Calculate expression's hash_index and record in ptr.
- (trim_ld_motion_mems): Use hash_index to search a single bucket
- instead of scanning the entire hash_table. Remove the "del" local
- variable and use the equivalent "expr == 0" instead. Change last
- to be a pointer to the pointer to the current element, to simplify
- and speed-up deleting from a linked list.
-
-2003-12-01 James E Wilson <wilson@specifixinc.com>
-
- * doc/contrib.texi: Update David Mosberger.
-
- * doc/c-tree.texi (CONSTRUCTOR): Clarify element order and handling
- of missing fields.
-
- PR target/8407
- * config/ia64/ia64.c (ia64_function_arg): For single-reg HFA, call
- gen_rtx_REG to create new reg with argument mode.
-
-2003-12-01 Steven Bosscher <stevenb@suse.de>
-
- * ggc.h (struct alloc_zone): Move forward declaration up.
- (new_ggc_zone): New function prototype.
- (destroy_ggc_zone): Ditto.
- * ggc-simple.c (new_ggc_zone): New function, does nothing.
- (destroy_ggc_zone): Ditto.
- * ggc-page.c (new_ggc_zone): New function, does nothing.
- (destroy_ggc_zone): Ditto.
- * ggc-zone.c (struct page_entry): Fix comment.
- (ggc_alloc_typed): Use a switch statement instead of ifs.
- (new_ggc_zone): New function to set up a new GC zone.
- (destroy_ggc_zone): New function to remove a GC zone.
- init_ggc): Use new_ggc_zone to set up the default zones.
- (ggc_collect): Walk a list of zones, instead of just the
- default zones. Report statistics using the zone name.
-
-2003-12-01 Ulrich Weigand <uweigand@de.ibm.com>
-
- * unroll.c (find_splittable_givs): Add missing extend_value_for_giv.
-
-2003-12-01 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/12628
- * toplev.c (rest_of_handle_jump_bypass): Call reg_scan.
- * regclass.c (reg_scan): Include allocate_reg_info time in
- TV_REG_SCAN. Minor clean-ups.
- (reg_scan_update): Minor clean-ups.
-
-2003-12-01 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config.gcc (s390x-ibm-tpf*): Add extra_parts.
-
-2003-12-01 James E Wilson <wilson@specifixinc.com>
-
- * config/ia64/ia64.h (FUNCTION_ARG_REGNO_P): Use AR_REG_FIRST not
- GR_ARG_FIRST.
-
-2003-12-01 Zack Weinberg <zack@codesourcery.com>
-
- * common.opt: Remove -fgnu-linker.
- * flags.h: Remove flag_gnu_linker.
- * opts.c: Don't handle OPT_fgnu_linker.
- * toplev.c: Don't initialize flag_gnu_linker.
- Remove gnu-linker entry from f_options.
- * config/dsp16xx/dsp16xx.h (OPTIMIZATION_OPTIONS):
- Don't reset flag_gnu_linker.
- * config/mips/mips.c (override_options): Likewise.
- * doc/invoke.texi: Remove all mention of -fgnu-linker.
-
-2003-12-01 Daniel Berlin <dberlin@dberlin.org>
-
- * ggc-zone.c (ggc_pch_write_object): Calculate object size using
- ggc_get_size (which accounts for large objects properly).
-
-2003-12-01 Jeff Sturm <jsturm@one-point.com>
-
- PR optimization/13024
- * toplev.c (rest_of_handle_new_regalloc): Remove rebuild_notes
- parameter.
- (rest_of_handle_old_regalloc): Likewise. Add rebuild_notes
- declaration. Rebuild jump labels following local_alloc if necessary.
- (rest_of_compilation): Remove rebuild_label_notes_after_reload
- declaration. Don't pass rebuild_notes parameter to
- rest_of_handle_new_regalloc and rest_of_handle_old_regalloc.
- Don't rebuild jump labels.
-
-2003-12-01 Jeff Law <law@redhat.com>
-
- * flow.c (count_or_remove_death_notes_bb): New. Extracted from
- count_or_remove_death_notes.
- (count_or_remove_death_notes): Use EXECUTE_IF_SET_IN_SBITMAP.
-
-2003-12-01 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * builtins.c (expand_builtin_longjmp): Added two memory clobbers.
-
-2003-12-01 Ulrich Weigand <uweigand@de.ibm.com>
-
- * reload.c (find_reloads_address): Split addresses of type
- (plus (plus (reg) (reg)) (const_int)) only if one register
- is either a valid base register or else one of the stack
- frame related registers (sp/fp/ap).
-
-2003-12-01 Steven Bosscher <stevenb@suse.de>
-
- * function.c (update_epilogue_consts): Don't use PARAMS.
- * rtl.h (web_main): Ditto.
- * target.h (is_costly_dependence): Ditto
-
-2003-12-01 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR middle-end/7847
- * expr.c (expand_expr) [normal_inner_ref]: When 'offset' is non-zero,
- do not recheck that 'op0' is a MEM. Move comment. When testing for
- unaligned objects, take also into account the alignment of 'op0' and
- 'mode1' if 'op0' is a MEM.
-
-2003-12-01 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * doc/c-tree.texi (Function Bodies): Update HANDLER documentation.
-
-2003-12-01 Kelley Cook <kcook@gcc.gnu.org>
-
- * doc/install.texi: Note that fastjar is built with automake 1.7.x
- and autoconf 2.57.
-
-2003-12-01 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Test
- target_flags directly rather than using TARGET_* defines.
-
-2003-11-30 Ben Elliston <bje@wasabisystems.com>
-
- * doschk.c: Remove.
-
-2003-11-30 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/12727
- * config/mips/mips.c (mips_save_reg): Fix frame information for sdc1
- on 32-bit big-endian targets.
-
-2003-11-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * genemit.c (register_constraints): Remove.
-
-2003-11-30 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390.md ("tmdi_reg", "tmsi_reg", "*movdi_64", "*movdi_31",
- "iordi3"): Insns now use multiple letter constraints.
- ("*movdi_lhi", "*movdi_lli", "*movdi_lay"): Insns deleted. They are now
- covered by "*movdi_64".
- ("*movsi_lhi", "*movsi_lli", "*movsi_lay"): Insns deleted. They are now
- covered by "*movsi_zarch" and "*movsi_esa".
- ("*movsi_zarch", "*movsi_!zarch"): New insns.
- ("*llgt_sisi_split", "*llgt_didi_split"): Insns deleted. Now covered
- by "*andsi3_zarch" and "anddi3".
- ("*anddi3_ni"): Insn merged with "anddi3".
- ("*andsi3_ni"): Insn merged with "*andsi3_zarch".
- ("*andsi3_zarch", "*andsi3_esa"): New insns.
- ("*iordi3_oi"): Insn merged with "iordi3".
- ("*iorsi3_oi"): Insn merged with "*iorsi3_zarch".
- ("*iorsi3_zarch", "*iorsi3_esa"): New insns.
-
- * config/s390/s390.c (s390_single_qi, s390_single_hi): Functions
- merged to s390_single_part.
- (s390_single_part): New function.
- NOTE: Semantics have changed a bit. Now the value of the part must
- be different from the others to get a non-negative return value.
- (s390_extract_qi, s390_extract_hi): Functions merged to
- s390_extract_part.
- (s390_extract_part, s390_extra_constraint_str,
- s390_const_ok_for_constraint_p): New functions. The L constraint got a
- new meaning and the N constraint was added as a multiple letter
- constraint.
- (s390_extra_constraint): Function deleted.
- (print_operand): New output modifier 'i' and 'j' added.
- All uses of CONST_OK_FOR_LETTER_P were replaced by
- CONST_OK_FOR_CONSTRAINT_P.
-
- * config/s390/s390-protos.h: Function prototypes adapted.
- * doc/md.texi: Documentation for new constraint letters added.
-
-2003-11-30 Andreas Schwab <schwab@suse.de>
-
- * Makefile.in ($(DESTDIR)$(infodir)/%.info): Fix missing semicolon.
-
-2003-11-29 James E Wilson <wilson@specifixinc.com>
-
- * gcc.c (init_spec): Pass -lunwind to init_gcc_specs in eh_name
- instead of in shared_name.
-
- * final.c (final_start_function): Delete code for NON_SAVING_SETJMP.
- * reload1.c (reload): Re-add it here.
-
-2003-11-30 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_elf_section_type_flags): Don't
- set SECTION_WRITE on TARGET_RELOCATABLE.
-
-2003-11-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (LIBCALL_VALUE): Use R0_REG.
-
-2003-11-28 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (MOTOROLA): Move from here...
- * config/m68k/m68k.h (MOTOROLA): ... to here.
- (OUTPUT_JUMP): Use do {...} while (0).
- * config/m68k/m68k.md: Replace #ifdef MOTOROLA with C statements.
-
-2003-11-28 Gunther Nikl <gni@gecko.de>
-
- * config.gcc (m68020-*-elf*, m68k-*-elf*, m68010-*-netbsdelf*,
- m68k*-*-netbsdelf*, m68k-*-rtems*): Add tm_defines containing
- MOTOROLA and USE_GAS.
- * config/m68k/rtemself.h (MOTOROLA): Delete.
- * config/m68k/netbsd-elf.h (MOTOROLA, USE_GAS): Delete.
- * config/m68k/m68kelf.h (MOTOROLA, USE_GAS, SGS_CMP_ORDER): Delete.
-
-2003-11-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (WORDS_BIG_ENDIAN): Update the comment.
-
-2003-11-29 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (install-info): Install gccinstall.info too.
-
-2003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("cmpint_di"): Fix incorrect instruction lengths.
-
-2003-11-29 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("movhi"): Do not emit extender pattern
- when loading from a (MEM (ADDRESSOF ...)).
- ("movqi"): Likewise.
-
-2003-11-29 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/10333
- * c-parse.in (typespec_reserved_nonattr): Reject typeof on
- bit-fields.
-
-2003-11-29 Richard Sandiford <rsandifo@redhat.com>
-
- * stmt.c (expand_asm_operands): Check whether force_const_mem
- succeeded.
-
-2003-11-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/gnu.h (HURD_TARGET_OS_CPP_BUILTINS): New.
- * config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): New.
-
- * config/alpha/gnu.h, config/alpha/linux.h,
- config/arm/linux-elf.h, config/cris/cris.h, config/cris/linux.h,
- config/i370/linux.h, config/i386/gnu.h, config/i386/i386.h,
- config/i386/linux-aout.h, config/i386/linux.h,
- config/i386/linux64.h, config/ia64/linux.h, config/m68k/linux.h,
- config/m68k/uclinux.h, config/mips/linux.h,
- config/mn10300/linux.h, config/pa/pa-linux.h,
- config/rs6000/sysv4.h, config/s390/linux.h, config/sh/linux.h,
- config/sparc/linux.h, config/sparc/linux64.h,
- config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Use
- HURD_TARGET_OS_CPP_BUILTINS/LINUX_TARGET_OS_CPP_BUILTINS or ensure
- all necessary assertions are included.
-
-2003-11-28 Jan Hubicka <jh@suse.cz>
-
- * emit-rtl.c (set_used_flags): New.
- (verify_rtx_sharing, verify_rtl_sharing): New.
- (unshare_all_rtl_1): Rename to....
- (unshare_all_rtl_in_chain): ... this one; make static.
- (copy_rtx_if_shared): LABEL_REF chan be shared.
- * ifcvt.c (unshare_ifcvt_sequence): New.
- (noce_try_move, noce_try_store_flag, noce_try_store_flag_constants,
- noce_try_addcc, noce_try_addcc, noce_try_store_flag_mask,
- noce_try_cmove, noce_try_store_flag_mask, noce_try_minmax,
- noce_try_abs, noce_process_if_block, find_cond_trap
- * rtl.h (verify_rtl_sharing, set_used_flags, unshare_all_rtl_in_chain):
- Declare.
-
-2003-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Fix a comment typo.
-
-2003-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*movsf_h8300h): Change to
- *movsf_h8300hs.
- (addsi_h8300): Change to *addsi_h8300.
- (addsi_h8300h): Change to *addsi_h8300hs.
- (subsi3_h8300): Change to *subsi3_h8300.
- (subsi3_h8300h): Change to *subsi3_h8300hs.
- (neghi2_h8300h): Change to *neghi2_h8300hs.
- (negsi2_h8300h): Change to *negsi2_h8300hs.
-
-2003-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*subhi3_h8300): Remove '&' from the
- constraint.
- (*subhi3_h8300hs): Likewise.
-
-2003-11-28 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.h (MASK_MFCRF): New.
- (TARGET_MFCRF): Test target_flags, not processor type.
- (TARGET_SWITCHES): Add mfcrf and no-mfcrf.
- Change Don't to Do not.
- * config/rs6000/rs6000.c (processors_target_table): Add MASK_MFCRF
- to power4, 970, G5.
-
-2003-11-27 J"orn Rennecke <joern.rennecke@superh.com>
-
- * cse.c (cse_set_around_loop): When changing a constant load
- to a register -register copy, add a REG_EQUAL note.
-
-2003-11-27 Randolph Chung <tausq@debian.org>
- John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (hppa_profile_hook): Split gen_call_profiler into separate
- insns. Use the regular call expander for the call to the profiler.
- * pa.md (call_profiler): Delete.
- (load_offset_label_address): New insn to load the address of the
- current function for the profiler.
- (lcla1, lcla2): New insns to output a code label and load its address.
-
-2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * final.c (final_scan_insn): Remove commented-out code.
-
-2003-11-27 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * doc/install.texi: Remove ADAC reference and make accurate.
-
-2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (FUNCTION_VALUE): Use R0_REG.
- (FUNCTION_VALUE_REGNO_P): Likewise.
- * config/h8300/h8300.md: Define R0_REG.
-
-2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Fix formatting.
- * config/h8300/h8300.md: Likewise.
-
-2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (ELIMINABLE_REGS): Update a comment.
-
-2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Give names to anonymous insns.
-
-2003-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (extendqisi2): Remove constraints.
-
-2003-11-27 Gunther Nikl <gni@gecko.de>
-
- * doc/tm.texi (SYSROOT_HEADERS_SUFFIX_SPEC): Fix typo.
-
-2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/13041
- * final.c (frame_pointer_needed): Fix comment.
- * reload1.c (reload): Decrease alignment of the frame
- pointer if it was used for register allocation.
-
-2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12900
- * reg-stack (move_for_stack_reg): New prototype. Return
- whether a control flow insn was deleted.
- (subst_stack_regs_pat): Likewise, using the information provided
- by move_for_stack_reg.
- (subst_stack_regs): Likewise, using the information provided
- by subst_stack_regs_pat.
- (convert_regs_1): Record whether a control flow insn was deleted,
- using the information provided by subst_stack_regs. Purge dead
- edges only if a control flow insn was deleted.
-
-2003-11-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR middle-end/8028
- PR middle-end/9890
- PR middle-end/11151
- PR middle-end/12210
- PR middle-end/12503
- PR middle-end/12692
- * builtins.c (expand_builtin_apply): Use virtual_outgoing_args_rtx
- as the base address to copy the memory arguments to.
-
-2003-11-26 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Declare
- function aliases as functions.
-
-2003-11-26 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * aclocal.m4 (gcc_AC_PROG_GNAT): Rewrite to account for removal
- of ADAC.
- * configure: Regenerate.
-
- * Makefile.in: Remove references to ADAC.
-
- * configure.in: Remove check for whether ${ADAC} accepts -Wno-long-long.
- * configure: Regenerate.
-
-2003-11-26 Eric Botcazou <ebotcazou@libertysurf.fr>
- Olivier Hainque <hainque@act-europe.fr>
-
- PR target/6466
- * config/sparc/sparc-protos.h (compute_frame_size): New prototype.
- (sparc_flat_compute_frame_size): Likewise.
- (sparc_flat_save_restore): Move prototype...
- * config/sparc/sparc.c (sparc_flat_save_restore): ...here.
- (save_regs): New prototype.
- (build_big_number): Likewise.
- (apparent_fsize): Change type to HOST_WIDE_INT.
- (actual_fsize): Likewise.
- (frame_base_offset): Likewise.
- (build_big_number): Add support for HOST_BITS_PER_WIDE_INT == 64.
- Change string descriptor to HOST_WIDE_INT_PRINT_DEC.
- [TARGET_ARCH64]: Use the sequence of sparc_emit_set_const64_longway
- to load a 64-bit constant.
- (sparc_nonflat_function_prologue): Change string descriptor to
- HOST_WIDE_INT_PRINT_DEC. Change offset type to HOST_WIDE_INT.
- (output_restore_regs): Change offset type to HOST_WIDE_INT.
- (sparc_nonflat_function_epilogue): Change string descriptor to
- HOST_WIDE_INT_PRINT_DEC. Use build_big_number.
- (output_sibcall): Change size type to HOST_WIDE_INT. Use
- build_big_number. Change string descriptor to HOST_WIDE_INT_PRINT_DEC.
- (sparc_frame_info): Change types for several components.
- (sparc_flat_compute_frame_size): Update types according to previous
- change.
- (sparc_flat_function_prologue): Change string descriptor to
- HOST_WIDE_INT_PRINT_DEC. Change offset type to int. Use
- build_big_number.
- (sparc_flat_function_epilogue): Change offset type to int.
- Rename 'size1' into 'reg_offset1'. Change string descriptor to
- HOST_WIDE_INT_PRINT_DEC. Use build_big_number. Change big number
- limit to 4096 instead of 4095.
-
- * config/sparc/sparc.c (mems_ok_for_ldd_peep): Change offset type to
- HOST_WIDE_INT.
-
-2003-11-24 Waldek Hebisch <hebisch@math.uni.wroc.pl>
-
- * function.c: Make outer_function-chain external.
- * function.h: Likewise.
-
-2003-11-24 Richard Sandiford <rsandifo@redhat.com>
-
- * config.gcc (mips-sgi-irix6*): Add t-iris6gld to tmake_file when
- using GNU ld.
- * config/mips/iris6.h (IRIX6_STARTFILE_SPEC): New, taking the
- whole of the previous STARTFILE_SPEC except crtbegin.o%s.
- (IRIX6_ENDFILE_SPEC): Likewise ENDFILE_SPEC and crtend.o%s.
- (STARTFILE_SPEC, ENDFILE_SPEC): Define in terms of the above.
- (SUBTARGET_EXTRA_SPECS): Define.
- * config/mips/iris6gld.h (LINK_SPEC): Change -init function
- to __gcc_init and -fini function to __gcc_fini.
- (STARTFILE_SPEC): Redefine, including irix6-crti.o before crtbegin.o.
- (ENDFILE_SPEC): Likewise, including irix6-crtn.o after crtend.o.
- (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Define.
- * config/mips/t-iris6gld,
- * config/mips/irix6-crti.asm,
- * config/mips/irix6-crtn.asm: New files.
-
-2003-11-24 Eric Christopher <echristo@redhat.com>
-
- PR C/13014
- * c-decl.c (c_in_iteration_stmt, c_in_case_stmt): New.
- (start_function): Use.
- (c_push_function_context): Ditto.
- (c-pop_function_context): Ditto.
- (language_function): Move...
- * c-tree.h: ... here. Add x_in_iteration_stmt, and
- x_in_case_stmt.
- * c-parse.in (do_stmt_start, select_or_iter_stmt, stmt): Use
- c_in_iteration_stmt, c_in_case_stmt for parser state. Move
- check for valid break or continue statment here...
- * c-semantics.c (genrtl_break_stmt, genrtl_continue_stmt): From
- here. Change original errors to abort.
-
-2003-11-24 Jan Hubicka <jh@suse.cz>
-
- * fold-const.c (fold): Do not return early when optimizing
- COMPONENT_REF and constant.
-
-2003-11-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (tablejump_h8300): Change to
- *tablejump_h8300.
- (tablejump_h8300h): Change to *tablejump_h8300hs_advanced.
- (tablejump_normal_mode): Change to *tablejump_h8300hs_normal.
- (indirect_jump_h8300): Change to *indirect_jump_h8300.
- (indirect_jump_h8300h): Change to
- *indirect_jump_h8300hs_advanced.
- (indirect_jump_normal_mode): Change to
- *indirect_jump_h8300hs_normal.
-
-2003-11-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Remove constraints from expanders.
-
-2003-11-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: (stm_h8300s_2): Change the name to
- stm_h8300s_2_advanced.
- (stm_h8300s_2_normal): New.
- (stm_h8300s_2): Likewise.
- (stm_h8300s_3): Change the name to stm_h8300s_3_advanced.
- (stm_h8300s_3_normal): New.
- (stm_h8300s_3): Likewise.
- (stm_h8300s_4): Change the name to stm_h8300s_4_advanced.
- (stm_h8300s_4_normal): New.
- (stm_h8300s_4): Likewise.
- (ldm_h8300s_2): Change the name to ldm_h8300s_2_advanced.
- (ldm_h8300s_2_normal): New.
- (ldm_h8300s_2): Likewise.
- (ldm_h8300s_3): Change the name to ldm_h8300s_3_advanced.
- (ldm_h8300s_3_normal): New.
- (ldm_h8300s_3): Likewise.
- (ldm_h8300s_4): Change the name to ldm_h8300s_4_advanced.
- (ldm_h8300s_4_normal): New.
- (ldm_h8300s_4): Likewise.
- (two peephole2's): Enable only with !TARGET_NORMAL_MODE.
- (two peephole2's): New.
-
-2003-11-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * genattrtab.c (simplify_cond): Update indices correctly.
- (attr_alt_subset_p, attr_alt_subset_of_compl_p, attr_alt_intersection,
- attr_alt_union, attr_alt_complement, attr_alt_bit_p, mk_attr_alt): New.
- (check_attr_test, encode_units_mask, compute_alternative_mask,
- make_alternative_compare, simplify_and_tree,
- attr_rtx_cost, simplify_test_exp, gen_attr,
- write_test_expr, walk_attr_value): Handle EQ_ATTR_ALT.
- * rtl.def (EQ_ATTR_ALT): New.
-
-2003-11-23 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * genattrtab.c (strcmp_check, DEF_ATTR_STRING): New macros.
- (length_str, delay_type_str, delay_1_0_str, num_delay_slots_str):
- New variables.
- (main): Initialize them.
- (find_attr): Canonicalize the attribute name string.
- (attr_rtx_1, copy_boolean, expand_delays, gen_unit): Always canonicalize
- string arguments.
- (attr_printf, attr_eq): Use DEF_ATTR_STRING.
- (check_attr_test, check_attr_value, make_length_attrs,
- write_length_unit_log, simplify_by_exploding, gen_attr,
- write_test_expr, write_attr_value, write_eligible_delay,
- write_complex_function, make_internal_attr,
- write_const_num_delay_slots): Changed due to change of type of
- find_attr.
- (fill_attr, evaluate_eq_attr, simplify_and_tree,
- attr_rtx_cost, simplify_by_exploding, walk_attr_value): Use
- strcmp_check.
-
-2003-11-23 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/13122
- * config/h8300/h8300.c (push): Call push_h8300hs_normal in
- normal mode.
- (pop): Call pop_h8300hs_normal in normal mode.
- * config/h8300/h8300.md: Likewise.
- (pushqi1_h8300hs_normal): New.
- (pushqi1): Call pushqi1_h8300hs_normal in normal mode.
- (pushhi1_h8300hs_normal): New.
- (pushhi1): Call pushhi1_h8300hs_normal in normal mode.
- (push_h8300hs_normal): New.
- (pop_h8300hs_normal): Likewise.
-
-2003-11-23 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * genattrtab.c (count_sub_rtxs): Removed.
-
-2003-11-23 Richard Earnshaw <rearnsha@arm.com>
-
- * recog.c (preprocess_constraints): Only zero those elements of
- recog_op_alt that are needed for this insn.
- * arm.c (note_invalid_constants): A function can't contain invalid
- constants if it has no constraints.
-
-2003-11-22 Jan Hubicka <jh@suse.cz>
-
- * i386.c (classify_argument): Pass __float128 in memory.
- (ix86_return_in_memory): Likewise.
- (ix86_libcall_value): Likewsie.
-
-2003-11-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (dosize): Convert to ISO-C.
-
-2003-11-22 J"orn Rennecke <joern.rennecke@superh.com>
-
- * flow.c (update_life_info): Amend comment about when a register
- can become dead.
-
-2003-11-21 Kelley Cook <kcook@gcc.gnu.org>
-
- * doc/.cvsignore: Delete.
-
-2003-11-21 Daniel Berlin <dberlin@dberlin.org>
- David Edelsohn <edelsohn@gnu.org>
-
- * dwarf2out.c (add_location_or_const_value_attribute): Add support
- for PARALLEL.
-
-2003-11-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/t-iris6 (CRTSTUFF_T_CFLAGS): Add -Wno-error.
- (TARGET_LIBGCC2_CFLAGS): Define.
-
- * crtstuff.c [HAS_INIT_SECTION] (__do_global_dtors): Declare.
- (__do_global_ctors): Likewise.
-
-2003-11-21 Mark Wielaard <mark@klomp.org>
-
- * doc/invoke.texi (-O2): Doesn't enable -fweb.
-
-2003-11-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Mention dV and dZ.
-
-2003-11-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Update dump file names.
- Remove de, dW, and dX.
-
-2003-11-20 James E Wilson <wilson@specifixinc.com>
-
- PR c/13133
- * reload1.c (reload): Delete special handling for setjmp.
-
-2003-11-21 Andreas Tobler <a.tobler@schweiz.ch>
-
- * mklibgcc.in: Evaluate shlib_slibdir_qual during link
- step too.
- * config/t-slibgcc-darwin: Adjust install path.
- * config/rs6000/t-darwin: Revert multilib matches since
- it is not used on darwin.
-
-2003-11-20 Richard Henderson <rth@redhat.com>
-
- * ssa.c, ssa-dce.c, ssa-ccp.c: Remove files.
- * Makefile.in (OBJS-common, GTFILES): Don't reference them.
- (gtype-desc.o, toplev.o, flow.o): Remove ssa.h.
- (ssa.o, ssa-dce.o, ssa-ccp.o): Remove.
- * flow.c: Don't include ssa.h.
- (set_phi_alternative_reg): Remove.
- (calculate_global_regs_live): Don't call it.
- (mark_used_regs): Don't handle PHI.
- * gengtype.c (open_base_files): Don't reference ssa.h.
- * rtl.def (PHI): Remove.
- * timevar.def (TV_TO_SSA, TV_SSA_CCP, TV_SSA_DCE, TV_FROM_SSA): Kill.
- * common.opt: Remove -fssa, -fssa-ccp, -fssa-dce.
- * opts.c (common_handle_option): Likewise.
- * toplev.c (f_options): Likewise.
- (DFI_ssa, DFI_ssa_ccp, DFI_ssa_dce, DFI_ussa): Remove.
- (dump_file): Update to match.
- (flag_ssa, flag_ssa_ccp, flag_ssa_dce): Remove.
- (rest_of_handle_ssa): Remove.
- (rest_of_compilation): Don't call it.
- * toplev.h (flag_ssa, flag_ssa_dce, flag_ssa_ccp): Remove.
- * doc/invoke.texi: Remove -fssa, -fssa-ccp, -fssa-dce.
- * doc/passes.texi (SSA optimizations): Remove.
-
-2003-11-20 Bob Wilson <bob.wilson@acm.org>
-
- * configure.in: Add xtensa-*-* targets to test for dwarf2 debug_line.
- * configure: Regenerate.
-
-2003-11-20 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (Makefile): Pass along CONFIG_SHELL.
-
-2003-11-20 David Mosberger <davidm@hpl.hp.com>
-
- * config/t-libunwind (LIB2ADDEH): Add unwind-c.c.
- (SHLIB_LC): Define.
- * unwind-libunwind.c (_Unwind_GetCFA): Implement.
- (_Unwind_GetBSP) [UNW_TARGET_IA64]: New function.
-
-2003-11-20 Fariborz Jahanian <fjahanian@apple.com>
- David Edelsohn <edelsohn@gnu.org>
-
- * calls.c (expand_call): Allocate new temp in pass1.
- (store_one_arg): If PARALLEL, calculate excess using mode size of
- rtvec elt.
- * expr.c (emit_push_insn): If PARALLEL, calculate offset using
- mode size of rtvec elt.
- * function.c (assign_parms): Use parm in register, if available.
-
-2003-11-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (MOVP): Remove.
- (ADDP): Likewise.
- (CMPP): Likewise.
-
-2003-11-20 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (use_return_insn): New argument, SIBLING. Support returning
- with a single instruction if the stack has been decremented by 4
- and we have a frame pointer. Update all callers.
- (output_return_instruction): Likewise.
- (arm_output_epilogue): Change argument to SIBLING. Calculate
- really_return from the new argument. Update all callers.
- * arm.h (USE_RETURN_INSN): Pass NULL for the sibling.
- * arm.md (sibcall_epilogue): Call use_return_insn directly, and
- pass the sibling call.
- * arm-protos.h (use_return_insn, arm_output_epilogue): Update
- prototypes.
-
-2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * Makefile.in (extraclean): Delete.
- * configure.in (target_list): Remove extraclean.
- * configure: Regenerate.
- * doc/makefile.texi, doc/sourcebuild.texi: Update.
- * objc/Make-lang.in (objc.extraclean): Delete.
-
-2003-11-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * Makefile.in (lang_checks): Add.
- (check-c++, check-f77, check-java, check-g++, check-g77,
- check-objc): Remove hardcoded targets.
- * doc/sourcebuild.texi: Document testsuite hooks.
- * objc/Make-lang.in (check-objc, lang_checks): Add.
-
-2003-11-19 Scott Snyder <snyder@fnal.gov>
-
- PR target/13131
- * dwarf2out.c (gen_array_type_die): DW_AT_declaration should be a
- flag, not a constant.
-
-2003-11-19 Kelley Cook <kcook@gcc.gnu.org>
-
- * config/arc/arc-protos.h: Update to C90 prototypes.
- * config/arc/arc.c: Likewise.
- * config/arc/initfini.c: Likewise.
-
-2003-11-19 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * stmt.c (expand_goto): Memory clobbers added.
-
-2003-11-19 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * reload.c (find_reloads): Added missing type casts.
-
-2003-11-19 James E Wilson <wilson@specifixinc.com>
-
- * combine.c (sets_function_arg_p): Delete unused function.
-
-2003-11-19 Eric Christopher <echristo@redhat.com>
-
- * reload1.c (reload): Revert 2 previous checkins.
-
-2003-11-19 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * cpptrad.c (_cpp_scan_out_logical_line): Improve test for
- whether directive begins at the beginning of a line.
-
-2003-11-19 Richard Sandiford <rsandifo@redhat.com>
-
- * config/frv/frv.c (frv_init_libfuncs): Correct ufix_optab entries.
-
-2003-11-19 Gerald Pfeifer <gp@suse.de>
-
- * doc/install.texi (Specific): Remove information on old versions
- of glibc versus old versions of GCC.
-
-2003-11-19 Richard SAndiford <rsandifo@redhat.com>
-
- * emit-rtl.c (gen_lowpart): Don't force MEMs into a register unless
- the register lowpart is a TRULY_NOOP_TRUNCATION.
-
-2003-11-19 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (print_reg): Handle QI and HI modes for
- non Q regs.
-
-2003-11-19 Andreas Tobler <a.tobler@schweiz.ch>
-
- * config/config.gcc (powerpc-*-darwin*): Add libgcc build
- specification file.
- * config/t-slibgcc-darwin: New file, libgcc build specification.
- * config/t-darwin: Add libgcc2 flag -fPIC.
- * config/rs6000/t-darwin: Multilib matches float.
- * libgcc-darwin.ver: New file, contains libgcc symbols.
-
-2003-11-18 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config/ns32k/ns32k.h: Remove obsolete comment.
-
-2003-11-18 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/11821
- * config/arm/arm.c (arm_rtx_costs_1): Improve estimate of the code
- size for calls to libgcc's div & mod subroutines when using -Os.
-
-2003-11-18 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (change_decl_assembler_name): Avoid bogus warnings.
-
-2003-11-18 Marc Espie <espie@openbsd.org>
-
- * config/rs6000/sysv4.h: OpenBSD hooks.
-
-2003-11-18 Richard Henderson <rth@redhat.com>
-
- * expr.c (expand_expr): Don't look through constant arrays if
- they don't bind locally.
-
-2003-11-17 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (convert_move): Use GET_MODE_PRECISION instead of bitsize
- when seeing if truncation or extension.
-
-2003-11-17 Eric Christopher <echristo@redhat.com>
-
- * reload1.c (reload): Fix previous change.
-
-2003-11-17 Scott Snyder <snyder@fnal.gov>
-
- PR debug/11325
- * dwarf2out.c (struct die_struct): Add die_definition field.
- (add_AT_specification): New.
- (gen_subprogram_die, gen_variable_die,
- gen_struct_or_union_type_die): Use it.
- (prune_unused_types_mark): If we're marking a forward declaration,
- also mark the full definition, if it exists.
-
-2003-11-16 Nick Clifton <nickc@redhat.com>
-
- * config/stormy16/stormy16.h (BUILD_VA_LIST_TYPE): Delete.
- * config/stormy16/stormy16-protos.h (xstormy16_build_va_list):
- Remove prototype.
- * config/stormy16/stormy16.c (xstormy16_build_va_list): Rename
- to xstormy16_build_builtin_va_list and make static.
- (TARGET_BUILD_BUILTIN_VA_LIST): Define.
-
-2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Add the prototype for
- same_cmp_following_p.
- * config/h8300/h8300.c (same_cmp_following_p): New.
- * config/h8300/h8300.md (peephole2): Use it.
-
-2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Don't use REGNO when its operand is
- not guaranteed to be a REG.
-
-2003-11-16 Richard Sandiford <rsandifo@redhat.com>
-
- * Makefile.in (expr.o): Depend on $(TARGET_H).
- * target.h (return_in_msb): New target hook.
- * target-def.h (TARGET_RETURN_IN_MSB): New macro.
- (TARGET_CALLS): Include it.
- * calls.c (shift_returned_value): New function.
- (expand_call): Use it.
- * expr.c: Include target.h.
- (copy_blkmode_from_reg): Check targetm.calls.return_in_msb when
- deciding what padding is needed. Change the name of the local
- padding variable from big_endian_correction to padding_correction.
- * stmt.c (shift_return_value): New function.
- (expand_return): Use it. Adjust memory->register copy in the same
- way as copy_blkmode_from_reg. Only change the return register's
- mode if it was originally BLKmode.
- * doc/tm.texi (TARGET_RETURN_IN_MSB): Document.
- * config/mips/mips.c (TARGET_RETURN_IN_MSB): Define.
- (mips_fpr_return_fields): New, split out from mips_function_value.
- (mips_return_in_msb, mips_return_fpr_pair): New functions.
- (mips_function_value): Rework to use the functions above.
- * config/mips/irix6-libc-compat.c: Delete.
- * config/mips/t-iris6 (LIB2FUNCS_STATIC_EXTRA): Undefine.
-
-2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/install.texi (--enable-checking): Update valgrind's URL.
-
-2003-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Fix warnings by replacing -2147483648
- with -2147483647 - 1.
-
-2003-11-16 Gerald Pfeifer <gerald@pfeifer.com>
-
- Fix links in online manuals.
- * doc/invoke.texi (H8/300 Options): @xref to ld, not ld.info.
- (Precompiled Headers): @pxref to cpp, not cpp.info.
-
-2003-11-16 Jason Merrill <jason@redhat.com>
-
- * Makefile.in, objc/Make-lang.in (objc.tags): Create TAGS.sub
- files in each directory and TAGS files that include them for each
- front end.
-
-2003-11-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (divnorm): Store the sign in bit
- 3 of S2L.
- (modnorm): Likewise.
- (exitdiv): Look at bit 3 of S2L only.
-
-2003-11-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (DO_GLOBAL_CTORS_BODY): Fix warnings.
- (DO_GLOBAL_DTORS_BODY): Likewise.
-
-2003-11-15 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/install.texi (Prerequisites): Refine documentation of
- autoconf, automake and perl requirements. Document required
- gettext version.
-
-<2003-11-14 Jason Merrill <jason@redhat.com>
-
- * function.c (assign_parms): Use TREE_TYPE to determine the real
- type of the argument object.
-
-2003-11-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (___udivsi3): Peel off the first
- iteration.
-
-2003-11-14 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_move_block_from_reg):
- New routine to save vararg registers on stack. Support for
- -mpowerpc64 in mixed mode.
-
-2003-11-14 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c: Use C statements instead of #ifdef's when testing
- for MOTOROLA versus MIT syntax. Improves readability and provides
- better compile-time error checking for both code paths.
-
-2003-11-14 Kelley Cook <kcook@gcc.gnu.org>
-
- * config/frv/frv-protos.h: Update for C90.
- * config/frv/frv.h: Likewise.
- * config/frv/frvbegin.c: Likewise.
- * config/frv/frv.c: Likewise.
- (frv_adjust_field_align): Delete unused variable.
-
-2003-11-14 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.md: Add 'DEFAULT_ABI == ABI_DARWIN'
- to each place where TARGET_LONG_DOUBLE_128 is used with
- DEFAULT_ABI == ABI_AIX.
-
- * cppfiles.c (_cpp_find_file): Make 'one or more PCH files were found'
- message comply with GNU standards.
-
-2003-11-14 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- PR/6552
- * function.c (struct epi_info): New field const_equiv.
- (update_epilogue_consts): New function.
- (keep_stack_depressed): Clear new field and verify scratch register
- doesn't have it set.
- Call new function via note_stores.
- (handle_epilogue_set): Allow setting SP equiv reg in different mode.
- Allow PLUS where second operand is register known set to constant.
- (emit_equiv_load): Write load using proper mode if source different.
- * config/mips/mips.md (return_internal): Put (return) first.
-
-2003-11-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (___udivsi3): Add a comment.
-
-2003-11-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (modsi3): Don't save unused
- registers.
- (divsi3): Likewise.
- (reti): Don't restore unused registers.
-
-2003-11-14 Nick Clifton <nickc@redhat.com>
-
- * config/fr30/fr30.c: Include toplev.h
-
-2003-11-14 Richard Earnshaw <rearnsha@arm.com>
-
- * except.c (sjlj_emit_function_enter): Mark internal label as LOCAL.
-
-2003-11-14 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_emit_vector_const, arm_output_load_gr): Use ISO C
- function definition syntax.
-
-2003-11-14 Eric Christopher <echristo@redhat.com>
-
- * reload1.c (reload): Revert previous patch. Make
- check for assignment into reg_equiv_address stricter.
-
-2003-11-14 Arnaud Charlet <charlet@act-europe.fr>
-
- * Makefile.in (POSTSTAGE1_FLAGS_TO_PASS): Pass ADAFLAGS.
-
-2003-11-14 Richard Sandiford <rsandifo@redhat.com>
-
- * config/frv/frv.c (frv_in_small_data_p): Return false for unknown
- section names.
-
-2003-11-14 Jason Merrill <jason@redhat.com>
-
- PR middle-end/12526
- * tree.c (build): A CALL_EXPR has side-effects if its arguments do.
- * calls.c (call_expr_flags): New fn.
- * tree.h: Declare it.
-
-2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (__udivsi3): Remove.
- (divmodsi3): Change the name to ___udivsi3.
- Update all callers.
-
-2003-11-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * libgcc2.c (__negdi2, __addvsi3, __addvdi3, __subvsi3, __subvdi3,
- __mulvsi3, __negvsi2, __negvdi2, __mulvdi3, __lshrdi3, __ashldi3,
- __ashrdi3, __ffsDI2, __muldi3, __clzDI2, __ctzDI2, __parityDI2,
- __udivmoddi4, __divdi3, __moddi3, __cmpdi2, __ucmpdi2,
- __fixunstfDI, __fixunsxfDI, __fixunsdfDI, __fixunssfDI,
- __floatdixf, __floatditf, __floatdidf, __floatdisf, __gcc_bcmp):
- Const-ify and/or initialize automatic variables at declaration.
-
-2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (divmodsi4): Replace all the uses
- of er4 with er3. Adjust all callers.
-
-2003-11-13 Andrew Pinski <apinski@apple.com>
-
- * config/darwin.c (machopic_output_possible_stub_label):
- Allow stub symbol be not defined when outputting possible
- stub label.
-
-2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (___udivsi3): Jump to reti
- instead of exitdiv.
- (___umodsi3): Likewise.
- (exitdiv): Do not restore any register.
- (reti): Restore registers.
-
-2003-11-13 Steven Bosscher <stevenb@suse.de>
-
- * tree-inline.c (walk_tree): Handle PLACEHOLDER_EXPR.
-
-2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm: Fix comment typos.
-
-2003-11-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (udivsi3): Don't save/restore
- unused registers. Don't jump to exitdiv.
- (umodsi3): Likewise.
-
-2003-11-13 Mark Mitchell <mark@codesourcery.com>
- Kean Johnston <jkj@sco.com>
-
- PR c/13029
- * toplev.c (check_global_declarations): Do not warn about unused
- static consts.
-
-2003-11-13 Pavel Pisa <pisa@cmp.felk.cvut.cz>
- Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (DenHighNonZero): Optimize using
- the approximate quotient method.
-
-2003-11-13 Richard Earnshaw <rearnsha@arm.com>
-
- * combine.c (distribute_notes): When re-distributing the notes from
- an insn we are about to delete, ensure we can't end up with a cyclic
- list of notes.
-
-2003-11-13 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/12926
- * expr.c (expand_assignment) [COMPONENT_REF]: Don't put
- the UNCHANGING_RTX_P flag on memory references to read-only
- components that are not addressable.
-
-2003-11-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (divmodsi4): Clear S0P in
- DenHighNonZero.
-
-2003-11-13 Jan Hubicka <jh@suse.cz>
-
- PR opt/12275
- * c-decl.c (finish_decl): Use change_decl_assembler_name.
- * c-pragma.c (handle_pragma_redefine_extname): Likewise.
- * varasm.c (make_decl_rtl): Likewise.
- * cgraph.c (change_decl_assembler_name): New function.
- * tree.h (set_decl_assembler_name): Kill dead declaration.
- (change_decl_assembler_name): Declare.
-
- * decl.c (make_rtl_for_nonlocal_decl): Use change_decl_assembler_name.
- * decl2.c (make_rtl_for_nonlocal_decl): Use change_decl_assembler_name.
-
-2003-11-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (___mulsi3): Don't save/restore
- an unused register.
-
-2003-11-12 Richard Sandiford <rsandifo@redhat.com>
-
- PR bootstrap/12752
- * config/mips/t-iris6 (MULTILIB_OPTIONS): Put -mabi=n32 first.
- (MULTILIB_OSDIRNAMES): Reorder accordingly.
-
-2003-11-12 Janis Johnson <janis187@us.ibm.com>
-
- * rs6000-protos.h (rs6000_initial_elimination_offset): Add.
- (rs6000_stack_info): Remove. (debug_stack_info): Remove.
- (rs6000_emit_eh_reg_restore): Add
- * rs6000.c (rs6000_stack_t): Move from rs6000.h, change data type
- of vars_size and total_size to HOST_WIDE_INT.
- (emit_frame_save): Change parameter size to HOST_WIDE_INT.
- (rs6000_stack_info): Make static; change data size to HOST_WIDE_INT.
- (debug_stack_info): Make static; change output format of HOST_WIDE_INT
- values.
- (rs6000_emit_eh_reg_restore): New, with code formerly in rs6000.md.
- (rs6000_initial_elimination_offset): New, with code formerly in
- INITIAL_ELIMINATION_OFFSET.
- * rs6000.h (rs6000_stack_t): Remove.
- (INITIAL_ELIMINATION_OFFSET): Replace code with call to function
- rs6000_initial_elimination_offset.
- * rs6000.md (UNSPECV_EH_RR split): Replace code with call to
- rs6000_emit_eh_reg_restore.
-
-2003-11-12 Mike Stump <mrs@apple.com>
-
- * c-typeck.c (c_convert_parm_for_inlining): Add argnum, which
- is the argumnt we are processing so that warnings and errors
- will have that information.
- * c-tree.h (c_convert_parm_for_inlining): Add argnum.
- * lang-hooks-def.h
- (lhd_tree_inlining_convert_parm_for_inlining): Likewse.
- * langhooks.c (lhd_tree_inlining_convert_parm_for_inlining): Likewise.
- * langhooks.h (convert_parm_for_inlining): Likewise.
- * tree-inline.c (initialize_inlined_parameters): Compute and
- pass argnum down.
-
-2003-11-12 Alexey Starovoytov <alexey.starovoytov@sun.com>
- Roger Sayle <roger@eyesopen.com>
-
- PR optimization/12953
- * tree-inline.c (inline_forbidden_p_1): Added check for BUILT_IN
- before switch by FUNCTION_CODE.
-
-2003-11-12 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (storehi): Avoid use of explicit subreg.
- (storehi_bigend, storeinthi, movhi_bigend): Likewise.
-
-2003-11-12 J"orn Rennecke <joern.rennecke@superh.com>
-
- * config/sh/sh.md (prefetch): New pattern.
-
-2003-11-11 Eric Christopher <echristo@redhat.com>
-
- * reload1.c (reload): Verify that addresses for
- reg_equiv_* are valid for the architecture.
-
-2003-11-11 Eric Christopher <echristo@redhat.com>
-
- * function.c (purge_addressof_1): Add libcall check.
- Remove test for cached replacements on fallback case.
- Simplify mode comparisons. Add libcall test for
- paradoxical subregs.
-
-2003-11-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/t-h8300: Fix an obsolete comment.
-
-2003-11-11 James E Wilson <wilson@specifixinc.com>
-
- * expmed.c (store_bit_field, extract_bit_field): Revert last two
- changes.
-
-2003-11-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm: Replace DenHighZero with
- DenHighNonZero.
-
-2003-11-11 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_function_possibly_inlined_p): Use
- really_no_inline.
-
-2003-11-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.h (TRAMPOLINE_TEMPLATE): Fix flushing of cache lines when
- generating 64-bit code.
-
-2003-11-10 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Remove
- accidental commit in previous change.
-
-2003-11-10 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.h (STACK_SIZE_MODE): Add definition.
- * config/rs6000/rs6000.c (reg_or_mem_operand): Add macho-style
- address recognition.
- (macho_lo_sum_memory_operand): Routine to recognize macho-style
- address recognition.
-
-2003-11-10 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (gen_label_die): Cope with DECL_RTL not set.
-
-2003-11-10 Matt Austern <austern@apple.com>
-
- * config/darwin-protos.h (darwin_assemble_visibility): Declare.
- * config/darwin.c (darwin_assemble_visibility): Define. Warn for
- anything other than VISIBILITY_DEFAULT and VISIBILITY_HIDDEN.
- * config/darwin.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Use
- darwin_assemble_visibility instead of default.
-
-2003-11-10 Waldek Hebisch <hebisch@math.uni.wroc.pl>
-
- PR target/12865
- * config/sparc/sparc.c (sparc_initialize_trampoline): Call
- __enable_execute_stack only after writing onto the stack.
- (sparc64_initialize_trampoline): Likewise.
-
-2003-11-09 Roger Sayle <roger@eyesopen.com>
-
- * loop.c (check_dbra_loop): Try swapping the comparison operands
- of the loop condition to identify a suitable induction variable.
- * unroll.c (loop_iterations): Likewise.
-
-2003-11-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/sparc/sparc.h (TARGET_CPU_CPP_BUILTINS): Fix sparc vs
- sparc64 #cpu and #machine assertions.
-
-2003-11-09 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (rtlanal.o): Depend on BASIC_BLOCK_H.
-
-2003-11-09 Jan Hubicka <jh@suse.cz>
-
- * tree-optimize.c (tree_rest_of_compilation): Fix warning.
-
- * cgraphunit.c (cgraph_expand_function): Use
- cgraph_possibly_inlined_p.
- * tree-optimize.c (tree_rest_of_compilation): Do not kill saved tree.
-
- * opts.c (common_handle_option): Do not set max-inline-insns.
- * params.def: Update comments.
- (PARAM_MAX_INLINE_INSNS): Kill.
- * invoke.texi (max-inline-insns): Kill.
-
-2003-11-08 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/3190
- PR c/8714
- * c-format.c (set_Wformat): Do not enable -Wformat-y2k by default.
- * invoke.texi: Update.
-
-2003-11-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR optimization/12630
- * pa.c (compute_movstrsi_length): Rename to compute_movstr_length.
- Handle length computation 64-bit moves.
- (compute_clrstr_length, output_block_clear): Implement block clear.
- (output_block_move): Handle 64-bit moves.
- (pa_adjust_insn_length): Use compute_movstr_length and
- compute_clrstr_length.
- * pa.md (movstrsi): Revise operand order and comments. Don't use
- match_scratch.
- (movstrsi_internal): Delete.
- (movstrsi_prereload, movstrsi_postreload): New insns. Define splitter
- and peephole2 patterns to transform prereload to postreload form.
- (movstrdi, movstrdi_prereload, movstrdi_postreload, clrstrsi,
- clrstrsi_prereload, clrstrsi_postreload, clrstrdi, clrstrdi_prereload,
- clrstrdi_postreload): New patterns for 64-bit block move, and block
- clear.
- * pa-protos.h (output_block_clear): New prototype.
-
-2003-11-08 Andreas Schwab <schwab@suse.de>
-
- * dbxout.c (current_file): Also wrap inside DBX_DEBUGGING_INFO ||
- XCOFF_DEBUGGING_INFO.
-
-2003-11-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * dbxout.c (current_file): Wrap declaration in DBX_USE_BINCL.
-
-2003-11-07 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_legitimize_address): Remove
- redundant parens.
-
- * cppfiles.c (pch_open_file): New parameter 'invalid_pch', set it.
- (find_file_in_dir): Likewise.
- (_cpp_find_file): Print message if no header file is found
- but an invalid PCH file was.
-
-2003-11-08 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-typeck.c (pedantic_lvalue_warning): Deprecate compound
- expressions as lvalues.
- (internal_build_compound_expr): Remove special handling for
- non-pedantic case.
- * doc/extend.texi: Document that all extended lvalues are now
- deprecated.
-
-2003-11-07 Geoffrey Keating <geoffk@apple.com>
-
- PR 11654
- * dbxout.c (struct dbx_file): Do not save for PCH.
- (current_file): Likewise.
- (dbxout_init): Don't allocate struct dbx_file using GC.
- (dbxout_start_source_file): Likewise.
-
-2003-11-07 Falk Hueffner <falk@debian.org>
-
- * config/alpha/elf.h, config/alpha/unicosmk.h,
- config/alpha/vms.h: Convert to ISO C90.
-
-2003-11-07 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config/arm/pe.h: Convert to ISO C90.
-
-2003-11-07 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh-protos.h (sh_pch_valid_p): Declare.
- * sh.c ("intl.h"): Include.
- (TARGET_PCH_VALID_P): Override.
- (sh_target_switches): New variable.
- (target_switches): Define.
- (sh_pch_valid_p): New function.
-
- * sh.h (MODE_AFTER): Don't change mode unless TARGET_HITACHI.
-
-2003-11-07 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_64_sign_extended_value): Return false from tls variables.
- (x86_64_zero_extended_value): likewise.
-
-2003-11-07 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (loadgp): Take $25 as a second operand.
- * config/mips/mips.c (mips_expand_prologue): Modify accordingly.
-
-2003-11-06 Matt Austern <austern@apple.com>
-
- * c-common.c (handle_visibility_attribute): Set DECL_VISIBILITY
- field instead of hanging an attribute object off the decl.
- * tree.h (DECL_VISIBLITY): New accessor macro for
- symbol_visibility field in struct tree_decl.
- (enum symbol_visibility): Move definition to before tree_decl.
- (struct tree_decl): Define new two-bit field, symbol_visibility.
- (decl_visibility): Remove declaration.
- * varasm.c (maybe_assemble_visibility): Use DECL_VISIBILITY
- instead of decl_visibility.
- (default_binds_local_p_1): Use DECL_VISIBILITY instead of
- decl_visibility.
- (decl_visibility): Remove.
-
-2003-11-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_emit_epilogue): Recognize more cases
- where register 14 will be saved.
-
-2003-11-06 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.h (USE_FP_FOR_ARG_P): Move to rs6000.c.
- (USE_ALTIVEC_FOR_ARG_P): Likewise.
- * config/rs6000/rs6000.c (USE_FP_FOR_ARG_P): Move from rs6000.h.
- Take a pointer as the CUM parameter. Update callers.
- (USE_ALTIVEC_FOR_ARG_P): Likewise. Also correct for Darwin/AIX
- 32-bit ABIs.
- (function_arg_advance): Use USE_ALTIVEC_FOR_ARG_P. Correct case
- of vector parameters as named arguments of stdarg function.
- (function_arg): Likewise.
-
- * config/rs6000/darwin.h (ASM_SPEC): Use -force_cpusubtype_ALL when
- -maltivec is specified, not the non-existent -faltivec.
-
-2003-11-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_function_value): Declare.
- * config/s390/s390.c (TARGET_RETURN_IN_MEMORY): Define.
- (s390_return_in_memory): New function.
- (s390_function_value): New function.
- (s390_function_arg_float): Return false for all arguments larger
- than 8 bytes.
- (s390_function_arg_pass_by_reference): Likewise. Return true for
- all vector arguments.
- (s390_function_arg_integer): New function.
- (s390_function_arg_advance): Call it. Add sanity checks.
- (s390_function_arg): Likewise.
- * config/s390/s390.h (FUNCTION_VALUE): Call s390_function_value.
- (LIBCALL_VALUE): Likewise.
- (RET_REG): Remove.
- (RETURN_IN_MEMORY): Remove.
-
-2003-11-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_initial_elimination_offset): Change
- return type to HOST_WIDE_INT.
- * config/mips/mips.c (mips_frame_info): Give sizes type HOST_WIDE_INT.
- Make initialized a bool. Make register masks unsigned ints.
- (compute_frame_size): Make same mask change here. Use HOST_WIDE_INT
- where appropriate.
- (mips_initial_elimination_offset): Return a HOST_WIDE_INT.
- (mips_output_function_prologue): Print sizes as HOST_WIDE_INTs.
-
-2003-11-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/frv/frv.c (frv_initial_elimination_offset): Remove bogus
- negation.
-
-2003-11-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/frv/frv.h (ASM_OUTPUT_ALIGN_WITH_NOP): Define.
-
-2003-11-06 Momchil Velikov <velco@fadata.bg>
-
- * config/mips/mips.c (override_options): Set MASK_SOFT_FLOAT
- for VR4111 too.
-
-2003-11-06 Jan Hubicka <jh@suse.cz>
-
- * builtins.c (simplify_builtin_strrchr, simplify_builtin_strpbrk): Add
- missing casts.
-
-2003-11-06 Zack Weinberg <zack@codesourcery.com>
-
- * genmodes.c: Change the word "bitsize" to "precision" throughout.
- * machmode.def: Likewise.
- * machmode.h (GET_MODE_SIZE): Cast value to unsigned short.
- (GET_MODE_BITSIZE): Define as GET_MODE_SIZE * BITS_PER_UNIT.
- (GET_MODE_PRECISION): New macro.
- (mode_bitsize): Renamed mode_precision.
- * stor-layout.c (mode_for_size, smallest_mode_for_size):
- Use GET_MODE_PRECISION; clarify comments.
-
-2003-11-05 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/install-old.texi: Remove old documentation of building
- cross-compilers.
- * doc/install.texi: Move some of it to here.
-
-2003-11-05 Per Bothner <pbothner@apple.com>
-
- PR preprocessor/12891
- * c-opts.c (finish_options): Set include_cursor to disable premature
- calls to push_command_line_include from cpp_scan_nooutput.
- Fixes bug reported by DJ Delorie.
-
-2003-11-05 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.c (setup_incoming_varargs): Remove
- code supporting old-style varargs.
-
- * config/rs6000/rs6000.c (rs6000_machopic_legitimize_pic_address): Use
- an intermediate register for better optimisation.
-
-2003-11-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR optimization/10080
- * cfgloopanal.c (variable_initial_value, variable_initial_values,
- simple_loop_exit_p): Record the fact that initial value is extended
- from inner mode.
- (count_strange_loop_iterations, count_loop_iterations): Handle
- ivs that iterate in a narrower mode. Fix handling of overflows.
- Improve handling of NE conditions.
- (inverse, fits_in_mode_p): New static functions.
- (simple_increment): Detect variables that iterate in a narrower mode.
- * cfgloop.h (struct loop_desc): Fields inner_mode and extend added.
-
-2003-11-05 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.c (compute_vrsave_mask): Correct off-by-one
- error.
-
- * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Darwin
- needs VRSAVE.
-
-2003-11-05 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-typeck.c (pedantic_lvalue_warning): Deprecate use of
- conditional expressions as lvalues.
-
-2003-11-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * tsystem.h: Add the prototype of strlen.
- * unwind-pe.h (read_encoded_value_with_base): Add an
- appropriate cast to handle a case where the pointer size is
- smaller than sizeof (int).
-
-2003-11-04 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_global_pic_constant_p): Delete.
- (mips_delegitimize_address): Delete.
- (mips_gotoff_global, mips_load_got_page): Declare.
- (mips_load_got_global, mips_rewrite_small_data): Declare.
-
- * config/mips/mips.h (FIND_BASE_TERM): Remove definition.
- (DANGEROUS_FOR_LA25_P): Use global_got_operand.
- (PREDICATE_CODES): Add global_got_operand, local_got_operand and
- small_data_pattern. Remove CONST from const_arith_operand's entry.
-
- * config/mips/mips.c (UNSPEC_ADDRESS_P, CONST_GP_P): New macros.
- (UNSPEC_ADDRESS, UNSPEC_ADDRESS_TYPE): Likewise.
- (mips_constant_type): Delete.
- (mips_symbol_type): Add SYMBOL_GOTOFF_PAGE, SYMBOL_GOTOFF_GLOBAL,
- SYMBOL_GOTOFF_CALL and SYMBOL_GOTOFF_LOADGP.
- (NUM_SYMBOL_TYPES): New macro.
- (mips_address_type): Remove ADDRESS_INVALID.
- (machine_function): Add has_gp_insn_p.
- (mips_constant_info): Delete.
- (mips_address_info): Add the address type as an extra field. Replace
- the c field with symbol_type.
- (mips_split_p, mips_lo_relocs, mips_hi_relocs): New arrays.
- (TARGET_DELEGITIMIZE_ADDRESS): Remove definition.
- (mips_reloc_offset_ok_p, mips_classify_constant): Delete.
- (mips_split_const, mips_symbolic_constant_p): New functions.
- (mips_symbolic_address_p): Take the symbol type and mode as arguments.
- (mips_classify_address): Return true if the address is valid, storing
- its type in INFO. Use mips_symbolic_constant_p. Use mips_lo_relocs[]
- to test whether a LO_SUM address is allowed.
- (mips_symbol_insns): Return 0 for general mips16 symbols.
- Reorder SYMBOL_GOT_GLOBAL case to match mips_symbol_type definition.
- Handle the new SYMBOL_GOTOFF_*s.
- (mips_address_insns): Update call to mips_classify_address.
- (mips_const_insns): Be more fussy about HIGH constants. Remove use
- of mips_classify_constant. Be more accurate about CONSTs.
- (mips_global_pic_constant_p): Delete.
- (const_arith_operand): Only accept CONST_INTs.
- (call_insn_operand): Remove call to mips_classify_constant.
- Let mips_symbolic_constant_p check for invalid offsets.
- (move_operand): Check for general_operands first. Only accept symbolic
- constants if they satisfy mips_symbolic_constant_p and cannot be split.
- (symbolic_constant): Use mips_symbolic_constant_p.
- (global_got_operand, local_got_operand): New predicates.
- (stack_operand): Update call to mips_classify_address.
- (mips_legitimate_address_p): Likewise.
- (mips_reloc, mips_lui_reloc): Delete.
- (mips_force_temporary): Only use the given temporary if no_new_pseudos.
- Use emit_move_insn.
- (mips_split_symbol, mips_unspec_address): New functions.
- (mips_unspec_offset_high): New function.
- (mips_load_got): Replace reloc argument with a symbol_type.
- Use mips_unspec_address to create the address and put it in a
- LO_SUM with the base register.
- (mips_load_got16, mips_load_got32): Delete.
- (mips_emit_high, mips_legitimize_symbol): Delete.
- (mips_gotoff_global): New function.
- (mips_load_got_page, mips_load_got_global): New functions.
- (mips_legitimize_symbol): Inline handling of LO_SUM splits.
- (mips_legitimize_const_move): Likewise. Remove HIGH handling.
- Inline code to handle constants plus invalid offsets. Use
- mips_split_symbol to legitimize constant pool addresses.
- (mips_delegitimize_address): Delete.
- (mips_rtx_costs): Give legitimate symbolic constants and CONST_DOUBLEs
- a cost of 1 insn. Give the rest a cost of CONSTANT_POOL_ADDRESS.
- (mips_subword): Pass memrefs through mips_rewrite_small_data.
- (mips_output_move): Remove use of mips_classify_constant.
- (mips_expand_call): Use mips_unspec_offset_high to calculate the
- high part of the GOT address for calls to global functions.
- (override_options): Initialize mips_split_p[], mips_lo_relocs[]
- and mips_hi_relocs[].
- (print_operand): Use print_operand_reloc to handle '%h' and '%R'.
- Remove use of mips_classify_constant.
- (mips_reloc_string): Delete.
- (print_operand_reloc): New function.
- (print_operand_address): Update call to mips_classify_address.
- (mips_rewrite_small_data_p, small_data_pattern_1): New functions.
- (small_data_pattern): New predicate.
- (mips_rewrite_small_data_1, mips_rewrite_small_data): New functions.
- (mips_function_has_gp_insn): New function.
- (mips_global_pointer): Use it.
- (mips_gp_insn): Delete.
- (mips_expand_prologue): When compiling for n32/n64 abicalls, use a
- single loadgp pattern to initialize $gp. Pass it the offset of _gp
- from the start of the current function.
- (mips16_gp_pseudo_reg): Revert last patch.
-
- * config/mips/mips.md (RELOC_*): Delete.
- (UNSPEC_LOADGP, UNSPEC_FIRST_ADDRESS): New constants.
- (got): New insn attribute.
- (type): Set to "load" if got == load.
- (length): Set to 4 if got == load, 8 if got == xgot_high.
- (lui[sd]i): Delete.
- (*xgot_hi[sd]i, *xgot_lo[sd]i): New patterns.
- (*got_disp[sd]i, *got_page[sd]i): Likewise.
- (*low[sd]i): Change constraints to "d". Add a new define_split to
- rewrite small data constants into LO_SUMs.
- (loadgp): New insns.
-
-2003-11-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/_tilib.c: Use _ABI* in _MIPS_SIM tests.
-
-2003-11-04 DJ Delorie <dj@redhat.com>
-
- * config/v850/v850.md (mulhisi3): Expand the const_int case
- separately to avoid trying to sign extend the const.
-
-2003-11-04 Richard Sandiford <rsandifo@redhat.com>
-
- * emit-rtl.c (copy_rtx_if_shared): Don't allow MEMs with constant
- addresses to be shared.
- (force_const_mem): Return a copy of the pool entry.
-
-2003-11-03 Andreas Jaeger <aj@suse.de>
-
- * Makefile.in (GCC_CFLAGS): Remove @WERROR@ again.
-
-2003-11-03 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (cpp.dvi): New target split from cpp.info.
- (gcc.dvi): New target split from gcc.info.
- (gccint.dvi): New target split from gccint.info.
- (cppinternals.dvi): New target split from cppinternals.info
- (gccinstall.info): New specific rule.
- (gccinstall.dvi): Likewise.
- (dvi): Move targets to $(docobjdir).
- ($(docobjdir)/%.dvi): New implicit rule.
-
-2003-11-03 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * doc/gty.texi (tag, desc): Say more about role of desc values in
- selecting between tags.
-
-2003-11-03 Alexander Kabaev <ak03@gte.com>
-
- * real.c (encode_ieee_single): Ensure proper promotion.
-
-2003-11-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * doc/contrib.texi: Add Giovanni Bajo, Dara Hazeghi, Falk Hueffner,
- and Andrew Pinski.
-
-2003-11-03 Syd Polk <spolk@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Add G3, G4, and G5
- marketing names to the list of supported processors.
- * config/rs6000/rs6000.h: Ditto.
- * doc/invoke.texi: Ditto.
- * config.gcc: Ditto.
-
-2003-11-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (stdio_va_list): Allow tab before va_list.
- Merge two substitutions.
- * fixinc/fixincl.x: Regenerate.
- Fixes PR bootstrap/12666.
-
-2003-11-03 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/install-old.texi: Remove VMS documentation.
-
-2003-11-03 Jan Hubicka <jh@suse.cz>
-
- * i386.c (override_options): Remove hack enabling 128bit long double
- commited by accident.
-
-2003-11-02 Per Bothner <per@bothner.com>
-
- * c-opts.c (needValue): Do cpp_find_main_file before processing
- any imacros flags, so pfile->main_file is set for the latter.
-
-2003-11-03 Andreas Jaeger <aj@suse.de>
- Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (GCC_CFLAGS): Allow blacklisting of warnings.
- (SYSCALLS.c.X-warn): Suppress warnings.
-
-2003-11-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR optimization/12845
- * pa.c (output_cbranch): Use cmpb for DImode comparisons with 0.
-
-2003-11-02 Zack Weinberg <zack@codesourcery.com>
-
- * print-rtl.c (print_rtx): Call PRINT_REG with second argument -1.
- * config/i386/i386.c (print_reg): Abort on a virtual register
- if code != -1; not if file == asm_out_file.
- * config/i386/i386.h (PRINT_REG): Document meaning of CODE == -1.
- (DEBUG_PRINT_REG): Delete, unused.
-
-2003-11-02 Andreas Schwab <schwab@suse.de>
-
- * config/ia64/fde-glibc.c (_GNU_SOURCE): Define to 1 instead of
- empty to avoid conflict with the definition from configure.
-
-2003-11-02 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/10817
- * ifcvt.c (noce_emit_move_insn): Improve documentation comment.
- (noce_try_move): New function to optimize an if-the-else into an
- unconditional move, i.e. "if (a!=b) x=a; else x=b" into "x=a".
- (noce_process_if_block): Attempt simplification with noce_try_move.
-
- * simplify-rtx.c (simplify_ternary_operation): Some minor fixes
- and improvements to the optimizations of IF_THEN_ELSE expressions.
- (simplify_subreg): Silence signed/unsigned comparison warning.
-
-2003-11-02 Richard Sandiford <rsandifo@redhat.com>
-
- * Makefile.in (targhooks.o, reload.o): Update dependencies.
- (GTFILES): Add targhooks.c.
- (gt-targhooks.h): New rule; depend on s-gtype.
- * target.h (direct_pool_load_p): New hook.
- * target-def.h (TARGET_DIRECT_POOL_LOAD_P): New macro.
- (TARGET_INITIALIZER): Include it.
- * targhooks.h (default_direct_pool_load_p): Declare.
- (hook_bool_machine_mode_true): Declare.
- * targhooks.c: Include insn-config.h, recog.h, ggc.h and
- gt-targhooks.h.
- (pool_symbol): New variable.
- (default_direct_pool_load_p): New function.
- (hook_bool_machine_mode_true): New function.
- * reload.c: Include target.h.
- (find_reloads): If an alternative will force a constant into memory,
- count an extra reload if constant pool symbols are not valid
- addresses. If an alternative uses memory to move values between
- registers, count the move as two reloads rather than one.
- * config/s390/s390.c (TARGET_DIRECT_POOL_LOAD_P): Define.
- * doc/tm.texi (TARGET_DIRECT_POOL_LOAD_P): Document.
-
-2003-11-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/12799
- * postreload.c (reload_cse_move2add): Generate the add2
- patterns manually.
-
-2003-11-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_partial_nregs) [TARGET_ARCH64]:
- Return 0 for all complex modes whose size is lesser or equal to
- a word. Add a ??? comment for the condition used with 16-byte
- aligned modes.
-
-2003-11-01 Kelley Cook <kcook@gcc.gnu.org>
-
- * .cvsignore: Remove c-parse* and tradcif.c.
- * objc/.cvsignore: Delete.
-
-2003-11-01 Roger Sayle <roger@eyesopen.com>
-
- * unwind-sjlj.c (_Unwind_GetCFA): Return (_Unwind_Word)0 instead
- of NULL.
-
-2003-11-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * som.h (DO_GLOBAL_DTORS_BODY): Change to C90 declaration.
-
- * libgcc2.c (SYMBOL__MAIN): Provide C90 declaration.
-
- * collect2.c (scan_libraries): Fix typos.
-
- PR preprocessor/12847
- * cppfiles.c, cppexp.c, cpperror.c, cpplib.h, cpplib.c, cpplex.c,
- cppinit.c, cpptrad.c, cppmacro.c, fix-header.c, cpppch.c, c-pch.c,
- c-incpath.c, cppcharset.c (DL_WARNING, DL_WARNING_SYSHDR, DL_PEDWARN,
- DL_ERROR, DL_ICE, DL_EXTRACT, DL_WARNING_P): Prefix macro names with
- "CPP_".
-
-2003-11-01 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Correct
- no_units calculation.
-
-2003-11-01 Andreas Jaeger <aj@suse.de>
-
- * unwind-dw2.c (_Unwind_FrameState): Remove commas at end of
- enumeration list.
-
-2003-11-01 Andreas Schwab <schwab@suse.de>
-
- * config/ia64/sysv4.h (SDATA_SECTION_FUNCTION): Update to C90
- prototypes.
- (SBSS_SECTION_FUNCTION): Likewise.
-
-2003-11-01 Andreas Jaeger <aj@suse.de>
-
- * Makefile.in (GCC_CFLAGS): Add @WERROR@ for target files.
-
-2003-11-01 Andreas Tobler <a.tobler@schweiz.ch>
-
- * config/rs6000/sysv4.h (EXTRA_SECTION_FUNCTIONS): Update to C90
- prototypes.
-
-2003-11-01 Andreas Jaeger <aj@suse.de>
-
- * unwind-dw2.c (_Unwind_FindEnclosingFunction): Constify variable.
- (uw_frame_state_for): Constify variables.
- (extract_cie_info): Constify first argument.
-
- * unwind-dw2-fde-darwin.c: Adjust prototype of
- _Unwind_Find_registered_FDE for recent changes.
- (examine_objects): Constify return value and local variable result.
- (_Unwind_Find_FDE): Constify return value and local variable ret.
-
-2003-10-31 Per Bothner <pbothner@apple.com>
-
- * c-opts.c (finish_options): Change to returns boolean - false iff
- the call to cpp_find_main_file fails.
- (c_common_init): Skip preprocess_file if finish_options failed.
- (c_common_parse_file): Break if finish_options failed.
- Fixes PR preprocessor/12545.
-
-2003-10-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * aclocal.m4: Blacklist ultrix* for mmap file.
- * configure: Rebuilt.
-
- * function.c (assign_parms): Add ATTRIBUTE_UNUSED to variable
- reg_parm_stack_space.
- * toplev.c (default_get_pch_validity): Fix warning.
-
- * vax.c: Include toplev.h.
- (vax_init_libfuncs): Fix typo (umod).
- * vax.h (ASM_COMMENT_START): Define.
- (PRINT_OPERAND): Fix warning when HOST_WIDE_INT is a long long.
-
-2003-10-31 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/11968
- * expr.c (expand_expr <MULT_EXPR>): Remove inappropriate and
- confusing comment; distributivity isn't handled in expand_expr.
- * fold-const.c (extract_muldiv_1 <PLUS_EXPR>): Allow overflow
- in distributivity, if wrap-around semantics are specified with
- -fwrapv.
-
-2003-11-01 Alan Modra <amodra@bigpond.net.au>
-
- PR 12315
- * final.c (profile_function): Allow for NULL svrtx.
-
-2003-10-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (pa_select_section): Use new style declaration.
- * som.h (readonly_data): Likewise.
-
-2003-10-31 Kelley Cook <kcook@gcc.gnu.org>
-
- * config/rs6000/rs6000.c: Update to C90 prototypes.
-
-2003-10-31 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/7513
- * arm.h (CONDITIONAL_REGISTER_USAGE): Disable use of LR in Thumb
- code.
-
-2003-10-31 Andreas Jaeger <aj@suse.de>,
- Zack Weinberg <zack@codesourcery.com>
-
-
- * crtstuff.c (__register_frame_info, __register_frame_info_bases)
- (__deregister_frame_info, __deregister_frame_info_bases):
- Constify void * argument.
- * unwind-dw2-fde.h (struct fde_vector):
- Constify 'orig_data' and 'array' fields.
- (__register_frame_info, __register_frame_info_bases)
- (__deregister_frame_info, __deregister_frame_info_bases):
- Constify void * argument.
- (get_cie, next_fde, _Unwind_Find_FDE): Constify arguments,
- return values, and casts of type fde *, struct dwarf_fde *,
- and struct dwarf_cie *.
- * unwind-dw2-fde.c (__register_frame_info, __register_frame_info_bases)
- (__deregister_frame_info, __deregister_frame_info_bases):
- Constify void * argument.
- (get_cie_encoding, ): Constify struct dwarf_cie * argument.
- (get_fde_encoding, fde_unencoded_compare, fde_single_encoding_compare)
- (fde_mixed_encoding_compare, fde_compare_t, start_fde_sort, fde_insert)
- fde_split, SWAP, frame_downheap, frame_heapsort)
- (classify_object_over_fdes, add_fdes, linear_search_fdes,
- binary_search_unencoded_fdes, binary_search_single_encoding_fdes,
- binary_search_mixed_encoding_fdes, search_object, _Unwind_Find_FDE):
- Constify arguments, local variables, return values, and casts
- of type fde *, fde **, struct dwarf_fde *, and struct dwarf_cie *.
- Use const pointer types in sizeof expressions, for clarity.
- * unwind-dw2-fde-glibc.c
- (_Unwind_find_registered_FDE, _Unwind_find_FDE): Constify return value.
- (struct unw_eh_callback_data): Constify 'ret' field.
-
-2003-10-31 Fariborz Jahanian <fjahanian@apple.com>
- David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_mixed_function_arg): New.
- (function_arg): Call it.
- (rs6000_function_value): Widen integral return value to mode based
- on TARGET_32BIT, not word_mode.
- * config/rs6000/rs6000.h (PROMOTE_MODE): Likewise.
- (UNITS_PER_ARG): New.
- (RS6000_ARG_SIZE): Use it.
-
-2003-10-31 Gerald Pfeifer <gerald@pfeifer.com>
-
- * .cvsignore: No longer ignore gengtype-lex.c, gengtype-yacc.c,
- and gengtype-yacc.h.
-
-2003-10-31 Richard Earnshaw <rearnsha@arm.com>
-
- PR optimization/8896
- * postreload.c (reload_combine): Check that REGY doesn't die in an
- insn of the form (set (regx) (plus (regx) (regy))), ie REGX != REGY.
-
-2003-10-31 Josef Zlomek <zlomekj@suse.cz>
-
- PR/10239
- * cfgrtl.c (delete_insn): Decrease LABEL_NUSES for all REG_LABEL notes.
-
-2003-10-31 Josef Zlomek <zlomekj@suse.cz>
-
- PR/11640
- * cfgrtl.c (try_redirect_by_replacing_jump): Move jump
- immediatelly before BARRIER.
-
-2003-10-31 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (STRICT2_WARN): Add -Wold-style-definition.
-
-2003-10-31 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/11271
- * reload.c (find_reloads_address): Handle any register in
- (PLUS (PLUS (REG) (REG)) (CONST_INT).
-
-2003-10-31 Richard Earnshaw <rearnsha@arm.com>
-
- * ggc-page.c (ggc_pch_read): Wrap call to poison_pages in
- ENABLE_GC_CHECKING not in GGC_POISON.
-
-2003-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
-
- PR bootstrap/9863
- * configure.in: Bail out if awk is missing.
- * configure: Regenerate.
-
- PR ada/12761
- * Makefile.in: Move default definitions of X_ADA_CFLAGS,
- T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS from ada/Make-lang.in to here.
-
-2003-10-30 Richard Henderson <rth@redhat.com>
-
- * c-objc-common.c (c_tree_printer): Handle types correctly.
- Factor code a bit.
-
-2003-10-30 Kelley Cook <kcook@gcc.gnu.org>
-
- * value-prof.c, web.c: Update to C90.
-
-2003-10-30 Eric Christopher <echristo@redhat.com>
-
- * function.c (purge_addressof_1): Add case for REG_RETVAL
- notes when modes are unequal.
-
-2003-10-31 Jan Hubicka <jh@suse.cz>
-
- * i386-modes.def: Add XFmode format adjustment.
-
-2003-10-30 Jan Hubicka <jh@suse.cz>
-
- * real.c (encode_ieee_extended): Back out previous patch.
-
-2003-10-30 Jan Hubicka <jh@suse.cz>
-
- * real.c (encode_ieee_extended): Initialize whole array.
- * reg-stack.c (move_for_stack_reg0: Use always XFmode.
- * i386-modes.def: Change definitions of TFmode and XFmode.
- * i386.c (classify_argument): Rename TFmodes to XFmodes; add new TFmode
- code.
- (construct_container): Allow constructing of TFmode integer containers.
- (ix86_return_in_memory): XFmode is not returned in memory.
- (init_ext_80387_constants): Always use XFmode.
- (print_operand): Likewise.
- (ix86_prepare_fp_compare_regs): Likewise.
- (split_to_parts): Deal with TFmode.
- (split_long_move): Simplify.
- (ix86_init_mmx_sse_builtins): Add __float80, __float128.
- (ix86_memory_move_cost): Do not confuse TFmode.
- * i386.h (LONG_DOUBLE_TYPE_SIZE): Set to 96.
- (IS_STACK_MODE): TFmode is not stack mode.
- (HARD_REGNO_NREGS, CLASS_MAX_NREGS): Deal nicely with XFmode.
- (VALID_SSE_REG_MODE): Allow TFmode.
- (VALID_FP_MODE_P): Disallow TFmode.
- (VALID_INT_MODE_P): Allow TFmode in 64bit mode.
- * i386.md (TFmode patterns): Kill.
- (movtf, motf_rex64): New patterns.
-
-2003-10-30 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (adddi3): Fix typo in mips16 stack pointer code.
-
-2003-10-30 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (mov_lwl): Use memory_operand where appropriate.
- (mov_lwr, mov_swl, mov_swr): Likewise.
- (mov_ldl, mov_ldr, mov_sdl, mov_sdr): Likewise.
-
-2003-10-30 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_global_pointer): Don't try to use $25.
-
-2003-10-30 Richard Henderson <rth@redhat.com>
-
- * config/mips/mips.c (mips_build_builtin_va_list): Use runtime
- test for irix6 rather than preprocessor test.
-
-2003-10-30 Richard Henderson <rth@redhat.com>
-
- * cppcharset.c (one_utf8_to_utf16): Initialize 's' to silence warning.
-
-2003-10-30 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (struct machine_function): Use save_return_addr_p
- as a general flag that the return address register needs to be saved,
- not necessarily because of __builtin_return_addr (0).
- (s390_split_branches): Remove TEMP_REG and TEMP_USED arguments,
- remove special handling of zSeries machines.
- (s390_optimize_prolog): Remove TEMP_USED argument, treat the return
- register as a regular register on zSeries machines.
- (s390_reorg): Adjust calls to s390_split_branches and
- s390_optimize_prolog.
- (s390_frame_info): On zSeries machines, do not assume the return
- register is always used. Update regs_ever_live with current data
- for the special registers.
- (s390_emit_epilogue): Use save_return_addr_p to determine whether
- the return register was saved.
- * config/s390/s390.h (CONDITIONAL_REGISTER_USAGE): Do not mark
- RETURN_REGNUM fixed on zSeries machines.
- (REG_ALLOC_ORDER): Use RETURN_REGNUM last.
- * config/s390/s390.md ("*doloop_si"): Handle branch overflow
- via ahi-jgne pair on zSeries machines.
- ("*doloop_di"): Likewise.
- ("*doloop_di_long"): Remove.
-
-2003-10-30 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_override_options): Revert change of arm_constant_limit
- when optimizing for size.
-
-2003-10-29 Richard Henderson <rth@redhat.com>
-
- * fold-const.c (fold_single_bit_test): Convert the input to the
- operational intermediate type.
-
-2003-10-29 Richard Henderson <rth@redhat.com>
-
- * builtins.c (std_build_builtin_va_list): New.
- * expr.h (std_build_builtin_va_list): Declare.
- * defaults.h (BUILD_VA_LIST_TYPE): New.
- * system.h (BUILD_VA_LIST_TYPE): Poison.
- * target-def.h (TARGET_BUILD_BUILTIN_VA_LIST): New.
- * target.h (struct gcc_target): Add build_builtin_va_list.
- * tree.c (build_common_tree_nodes_2): Use it.
-
- * config/alpha/alpha-protos.h, config/alpha/alpha.c,
- config/alpha/alpha.h, config/alpha/unicosmk.h,
- config/d30v/d30v-protos.h, config/d30v/d30v.c, config/d30v/d30v.h,
- config/i386/i386-protos.h, config/i386/i386.c, config/i386/i386.h,
- config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h,
- config/i960/i960-protos.h, config/i960/i960.c, config/i960/i960.h,
- config/mips/iris6.h, config/mips/mips-protos.h, config/mips/mips.c,
- config/mips/mips.h, config/rs6000/rs6000-protos.h,
- config/rs6000/rs6000.c, config/rs6000/rs6000.h,
- config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
- config/sh/sh-protos.h, config/sh/sh.c, config/sh/sh.h,
- config/xtensa/xtensa-protos.h, config/xtensa/xtensa.c,
- config/xtensa/xtensa.h: Rename foo_build_va_list to
- foo_build_builtin_va_list; make it static. Define
- TARGET_BUILD_BUILTIN_VA_LIST. Remove BUILD_VA_LIST_TYPE.
- Update protos.
-
- * config/i386/i386.c (ix86_expand_carry_flag_compare): Make static.
- * config/iq2000/iq2000.h (BUILD_VA_LIST_TYPE): Remove.
-
-2003-10-29 James E Wilson <wilson@specifixinc.com>
-
- * recog.c (asm_operand_ok): Add missing break after case 'X'.
- Change if statements to else if statements in default case.
- (extract_constrain_insn_cached): Fix misspelling of constrain_operands
- in comment.
- (constrain_operands_cached): Likewise.
- (constrain_operands): Change if statements to else if statements in
- default case.
- * reload.c (find_reloads): Likewise.
-
-2003-10-29 Richard Henderson <rth@redhat.com>
-
- * config/m68k/m68k.c (notice_update_cc): Clear cc status for
- shifts and rotates.
-
-2003-10-30 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md: Remove duplicate pattern.
-
-2003-10-29 Hans-Peter Nilsson <hp@axis.com>
-
- * real.c (do_divide): Initialize result with a 0.
-
- * configure.in <enable-checking for valgrind>: Look for
- <valgrind/memcheck.h> first. AC_DEFINE HAVE_VALGRIND_MEMCHECK_H
- if it exists.
- * configure, config.in: Regenerate.
- * ggc-common.c [ENABLE_VALGRIND_CHECKING &&
- HAVE_VALGRIND_MEMCHECK_H]: Include <valgrind/memcheck.h>. Use
- #elif for other alternatives.
- * ggc-page.c: Ditto.
- * ggc-zone.c: Don't assume <valgrind/memcheck.h>; instead copy
- include structure from ggc-common.c.
-
-2003-10-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa-linux.h (ASM_OUTPUT_ADDR_VEC_ELT): Use label in big switch ELTs.
- (ASM_OUTPUT_ADDR_DIFF_ELT): Use label difference in big switch ELTs.
- * pa.c (pa_adjust_insn_length): Check for btable branches using
- attribute TYPE_BTABLE_BRANCH.
- (pa_reorg): Simplify.
- * pa.h (CASE_VECTOR_MODE): Change big switch mode to SImode.
- (ASM_OUTPUT_ADDR_VEC_ELT): As above.
- (ASM_OUTPUT_ADDR_DIFF_ELT): As above.
- * pa.md (btable_branch): New instruction type.
- (in_branch_delay, in_nullified_branch_delay, in_call_delay): Disallow
- btable branches.
- (define_delay): Add btable branches to insn types that may have an
- insn in the delay position.
- (Z2, Z3): Add btable branch to list.
- Simplify unamed pattern set copy pic_label_operand to register. Add
- PA 2.0 variant.
- (short_jump): New jump for use in branch tables.
- (casesi, casesi0): Revise for new branch table formats.
- (casesi32, casesi32p, casesi64p): New casesi patterns.
- (indirect_jump): Move.
-
-2003-10-29 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.h (UNITS_PER_WORD): Revert to
- !TARGET_POWERPC64.
- (UNITS_PER_GPR_WORD): Delete.
- (HARD_REGNO_NREGS): Revert to UNITS_PER_WORD.
- (HARD_REGNO_MODE_OK): Same.
- (CLASS_MAX_NREGS): Same.
-
-2003-10-29 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.h (ASM_COMMENT_START): Define.
-
-2003-10-29 Zack Weinberg <zack@codesourcery.com>
-
- * genmodes.c (complete_mode): Record MODE_CC, MODE_INT,
- MODE_FLOAT, and MODE_PARTIAL_INT modes as having one
- component, not zero.
-
-2003-10-29 Andreas Schwab <schwab@suse.de>
-
- * config/ia64/t-ia64 (LIB2ADDEH): Add $(srcdir)/gthr-gnat.c.
-
-2003-10-29 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_partial_nregs) [TARGET_ARCH64]:
- Never return 1 for complex integral modes whose size is lesser or
- equal to a word.
- (function_arg_pass_by_reference) [TARGET_ARCH64]: Mention CTImode
- in the comment.
- (function_arg_advance) [TARGET_ARCH64]: Don't special-case complex
- modes.
- (sparc_va_arg) [TARGET_ARCH64]: Handle any types whose size is
- greater than 16 bytes by reference.
-
-2003-10-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/ia64/ia64.c (ia64_assemble_integer): Test POINTER_SIZE,
- not TARGET_ILP32.
- (ia64_initialize_trampoline): Use globalize_label target call.
-
-2003-10-29 Andreas Schwab <schwab@suse.de>
-
- * doc/install.texi (Building): Add a sentence about building Ada
- for a canadian cross.
-
-2003-10-28 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/ia64.c (cmptf_libfunc): New static.
- (ia64_expand_compare): Add logic to open-code calls to
- _U_Qfcmp for TFmode comparisons.
- (ia64_hpux_init_libfuncs): Initialize cmptf_libfunc.
- Set libfuncs for TFmode eq/ne/gt/ge/lt/gt to 0; these should
- never be generated anymore.
- * config/ia64/ia64.md (cmptf): New expander.
-
-2003-10-28 Zack Weinberg <zack@codesourcery.com>
-
- * ia64.md (UNSPEC_SETF_EXP,UNSPEC_FR_SQRT_RECIP_APPROX): New constants.
- (*sqrt_approx): New instruction pattern for approximate square roots.
- (*setf_exp_xf): New instruction pattern for exponentiation.
- (*maddxf4_alts_truncsf): New instruction pattern for truncation.
- (sqrtsf2_internal_thr): New define_and_split implementing
- throughput-optimized inline calculation of SFmode square root.
- (sqrtdf2_internal_thr): Likewise for DFmode.
- (sqrtxf2_internal_thr): Likewise for XFmode.
- (sqrtsf2, sqrtdf2, sqrtxf2): New expanders to choose between
- latency- and throughput-optimized square root algorithms.
- * ia64.h (MASK_INLINE_SQRT_LAT, MASK_INLINE_SQRT_THR,
- TARGET_INLINE_SQRT_LAT, TARGET_INLINE_SQRT_THR, TARGET_INLINE_SQRT):
- New macros.
- (TARGET_SWITCHES): Add -minline-sqrt-min-latency and
- -minline-sqrt-max-throughput.
- * ia64.c (ia64_override_options): If both -minline-sqrt-min-latency
- and -minline-sqrt-max-throughput are given, notify the user
- that both options cannot be used simultaneously.
- If -minline-sqrt-min-latency is given, notify the user that
- this mode is not yet implemented.
- (rtx_needs_barrier): Reformat initial comment to obey
- 72-character width limit. Support UNSPEC_SETF_EXP and
- UNSPEC_FR_SQRT_RECIP_APPROX.
-
-2003-10-29 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md (movdf_softfloat64): Allow dummy ctr,ctr
- moves.
-
-2003-10-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- PR target/11598
- PR libgcj/10610
- * config/rs6000/sysv4.h (PREFERRED_STACK_BOUNDARY): New macro.
-
-2003-10-28 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_output_epilogue): When using a frame pointer, don't emit
- an extra stack adjustment insn if the stack pointer is already
- pointing at the right place.
- (use_return_insn): Allow a return insn to be used when we have a
- frame pointer if the stack pointer is in the right place.
- (output_return_instruction): Handle it.
-
-2003-10-28 Andreas Jaeger <aj@suse.de>
-
- * ggc-zone.c (check_cookies): Add missing variable.
- Add void to prototypes.
-
-2003-10-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/mips/irix6-libc-compat.c (inet_makeaddr): Prototype.
- * crtstuff.c (__do_global_ctors_1): Move prototype.
- * unwind-dw2.c (NO_SIZE_OF_ENCODED_VALUE): Define when
- appropriate.
- * unwind-sjlj.c (_Unwind_GetCFA, _Unwind_FindEnclosingFunction):
- Mark parameter with __attribute__((unused)).
-
-2003-10-27 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (pushdecl): Clarify comment.
-
-2003-10-27 Arnaud Charlet <charlet@act-europe.fr>
-
- * doc/install.texi: Update instructions for Ada cross builds
-
- PR ada/5909:
- * doc/sourcebuild.texi: Document Ada test suite.
-
-2003-10-27 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c: Convert to ISO C90.
- * config/m68hc11/m68hc11-protos.h: Likewise.
-
-2003-10-27 Jan Hubicka <jh@suse.cz>
- Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * toplev.c (enum dump_file_index, dump_file): Fix ordering of
- webizer pass dump.
-
-2003-10-27 Jakub Jelinek <jakub@redhat.com>
- Jan Hubicka <jh@suse.cz>
-
- * reload1.c (struct elim_table): Change offset, initial_offset and
- previous_offset fields to HOST_WIDE_INT.
- (offsets_at): Change from int to HOST_WIDE_INT.
- (reload): Adjust offsets_at initialization.
- (eliminate_regs_in_insn): Change type of offset to HOST_WIDE_INT.
- (verify_initial_elim_offsets): Change type of t to HOST_WIDE_INT.
- * config/i386/i386.c (ix86_compute_frame_layout): Change offset type
- to HOST_WIDE_INT. Don't save regs using mov for huge frame sizes
- if TARGET_64BIT.
- (pro_epilogue_adjust_stack): New function.
- (ix86_expand_prologue, ix86_expand_epilogue): Use it.
- * config/i386/i386.md (pro_epilogue_adjust_stack): Remove.
- (pro_epilogue_adjust_stack_1): Remove * in front of name.
- (pro_epilogue_adjust_stack_rex64): Handle -2147483648 properly.
- (pro_epilogue_adjust_stack_rex64_2): New insn.
-
- * config/i386/i386.c (ix86_expand_epilogue): Fix comment typo.
-
- * config/i386/i386.c (ix86_expand_call): Replace 40 with
- FIRST_REX_INT_REG + 3 /* R11 */.
-
-2003-10-26 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.md (attr cannot_copy): New.
- (call_osf_2_er, call_value_osf_2_er, ldgp_er_1, ldgp_er_2,
- prologue_ldgp_er_2, prologue_ldgp_1): Set it.
- * config/alpha/alpha.c (alpha_cannot_copy_insn_p): Test it.
-
-2003-10-26 Daniel Berlin <dberlin@dberlin.org>
-
- * ggc-zone.c: New file, zone allocating collector.
- * configure: Accept zone option for --with-gc
- * configure.in: Ditto.
- * ggc.h (ggc_pch_count_object): Pass bool indicating
- stringiness. Update all callers.
- (ggc_pch_alloc_object): Ditto.
- (ggc_pch_write_object): Ditto.
- (ggc_alloc_rtx): Use typed allocation, since all RTX's are of a single
- type.
- (ggc_alloc_rtvec): Ditto.
- (ggc_alloc_tree): Use zone allocation, since some things using this macro
- aren't a single typecode.
- * ggc-none.c (ggc_alloc_typed): New function.
- (ggc_alloc_zone): Ditto.
- * ggc-page.c: Ditto on both functions.
-
-2003-10-26 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (m68k_compute_frame_layout): Ensure FPU related
- frame information is always valid.
- (m68k_output_function_prologue): Remove superfluous TARGET_68881
- test; fix formatting.
-
-2003-10-26 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (m68k_compute_frame_layout): Swap reg_mask and
- reg_rev_mask computation.
- (m68k_output_function_prologue): Fix usage of current_frame (one typo
- and one missing); use reg_rev_mask not reg_mask.
- (m68k_output_function_epilogue): Fix usage of current_frame;
- use fpu_rev_mask not fpu_mask.
-
-2003-10-26 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c (m68k_output_function_prologue): Eliminate
- num_saved_regs, use current_frame.reg_no instead.
-
-2003-10-26 Bernardo Innocenti <bernie@develer.com>
- Paul Dale <pauli@snapgear.com>
-
- * doc/extend.texi (interrupt_handler): Add m68k to the
- list of processors implementing it.
- * doc/invoke.texi (-msep-data): Document new m68k option.
- (-mno-sep-data): Likewise.
- (-mid-shared-library): Likewise.
- (-mno-id-shared-library): Likewise.
- (-mshared-library-id): Likewise.
-
-2003-10-26 Andreas Jaeger <aj@suse.de>
-
- * unwind-dw2.c (_Unwind_GetGR): Avoid warning about unsigned
- comparison.
- (_Unwind_SetGR): Likewise.
-
-2003-10-26 Ottavio Campana <ottavio@campana.vi.it>
-
- PR target/12690
- * config/i386/mmintrin.h (_mm_set1_pi8): Fix comment.
-
-2003-10-26 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (m68k_output_function_prologue): Move front
- comment from here to...
- (m68k_save_reg): ...here. Fix comment formatting.
- (m68k_output_function_prologue): Fix comment formatting.
- (m68k_output_function_epilogue): Likewise.
- (const_method): Likewise.
-
-2003-10-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * toplev.c (default_get_pch_validity): Guard the use of
- target_options with #ifdef TARGET_OPTIONS.
- (default_pch_valid_p): Likewise.
-
-2003-10-26 Andreas Jaeger <aj@suse.de>
- Zack Weinberg <zack@codesourcery.com>
- Andreas Tobler <toa@pop.agri.ch>
-
- * dwarf2out.c (output_cfi): Use HOST_WIDE_INT_PRINT.
- (output_die): Likewise.
- (print_die): Likewise.
-
-2003-10-26 Andreas Jaeger <aj@suse.de>
-
- * tree.h (dwarf2out_def_cfa, dwarf2out_args_size,
- dwarf2out_reg_save, new_loc_descr): Update prototypes for recent
- dwarf2out.c change.
-
- * toplev.c (default_pch_valid_p): Fix warning.
-
-2003-10-25 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_replace_rtx): Avoid allocating duplicate
- RTL nodes. If an operator's operands are unchanged, return the
- original argument unchanged.
-
-2003-10-26 Graham Stott <graham.stott@btinternet.com>
-
- Fix bootstrap failure.
- * expmed.c (store_bit_field): Don't compare bitsize against
- modes with zero bit-size.
-
- (extract_bit_field): Likewise
-
-2003-10-25 Jan Hubicka <jh@suse.cz>
-
- * dwarf2out.c (dw_cfi_oprnd_struct): Offset is HOST_WIDE_INT.
- (cfa_loc): Likewise.
- (reg_save, stack_adjust_offset, queue_reg_save): Replace long by
- HOST_WIDE_INT.
- (args_size, old_args_size): change type to HOST_WIDE_INT.
- (dwarf2out_def_cfa, dwarf2out_args_size,
- dwarf2out_reg_save, new_loc_descr): offset is HOST_WIDE_INT.
- (dw_val_struct): integers, unsigneds and offsets are HOST_WIDE_INT.
- (add_AT_int, add_AT_unsigned, att_AT_offset, AT_int, AT_unsigned,
- AT_offset): Use HOST_WIDE_INT.
- (based_loc_descr): offset is HOST_WIDE_INT.
- (add_data_member): Likewise.
- (add_const_value_attribute): Simplify.
-
-2003-10-25 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_eax_live_at_start_p): New.
- (ix86_expand_prologue): Save and restore eax around stack probe
- if it's live.
-
-2003-10-25 Jan Hubicka <jh@suse.cz>
-
- * cppcharset.c (one_utf8_to_utf32): Initialize 's' to silence warning.
-
-2003-10-25 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12712
- * reg-stack.c (convert_regs_1): Create an arbitrary input stack
- if the block has no predecessors.
- (convert_regs_2): Document the problem with successors whose
- only predecessor is the block to be processed.
- (convert_regs): Don't create the arbitrary input stack here.
-
-2003-10-24 Zack Weinberg <zack@codesourcery.com>
-
- * genmodes.c (struct mode_data): Add contained and next_cont
- fields.
- (complete_mode): Maintain linked list of modes that have a
- given component.
- (emit_mode_unit_size): Delete.
- (emit_mode_nunits): New.
- (emit_insn_modes_c): Update to match.
- (emit_mode_adjustments): Propagate size and alignment
- adjustments from component modes to their containers.
- * machmode.h (mode_unit_size): Delete.
- (mode_nunits): New.
- (GET_MODE_NUNITS): Just return the value in the table.
- (GET_MODE_UNIT_SIZE): Compute using GET_MODE_INNER and
- GET_MODE_SIZE.
- * expmed.c (store_bit_field, extract_bit_field): Can use a
- plain move instruction if bitsize >= GET_MODE_BITSIZE of
- destination/source mode, respectively.
- * varasm.c (assemble_real): Write out the full size of the
- constant, not just its bitsize.
- (output_constant): Honor TYPE_MODE of TREE_REAL_CSTs.
-
- * config/ia64/ia64-modes.def: Define XFmode as well as TFmode.
- Use ADJUST_BYTESIZE and ADJUST_ALIGNMENT to set size and
- alignment of XF and TF modes in compliance with ia64 ABIs.
- Can now hardwire the format of both modes.
- * config/ia64/ia64.c: Change TFmode to XFmode wherever appropriate.
- (general_tfmode_operand, destination_tfmode_operand)
- (tfreg_or_fp01_operand, spill_tfmode_operand): Rename to
- general_xfmode_operand, destination_xfmode_operand,
- xfreg_or_fp01_operand, spill_xfmode_operand respectively.
- (ia64_init_builtins): Make TYPE_PRECISION of fpreg_type
- and float80_type be 96 so they get XFmode. Use !TARGET_HPUX,
- not INTEL_EXTENDED_IEEE_FORMAT, to decide how to define
- __float128.
- * config/ia64/ia64.h: Default TARGET_HPUX to 0.
- Change TFmode to XFmode wherever appropriate. Remove all
- references to INTEL_EXTENDED_IEEE_FORMAT.
- (LONG_DOUBLE_TYPE_SIZE): Varies with TARGET_HPUX.
- (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define (always 96).
- (PREDICATE_CODES): Update to match function renames.
- * config/ia64/ia64.md: Change TF to XF throughout; rename all
- patterns to match. Remove all references to
- INTEL_EXTENDED_IEEE_FORMAT. Update predicate calls to match
- function renames.
- * config/ia64/ia64-protos.c: Update all prototypes to match
- renamed functions.
- * config/ia64/hpux.h: Redefine TARGET_HPUX to 1.
- Remove all references to INTEL_EXTENDED_IEEE_FORMAT.
- * config/ia64/lib1funcs.asm: Add __divxf3 as new name for
- __divtf3; keep old name for backward compatibility.
- (L__compat): New section providing forwarding stubs for
- __fixtfti, __fixunstfti, __floattitf.
- * config/ia64/t-ia64: Add __compat to LIB1ASMFUNCS.
-
-2003-10-24 Geoffrey Keating <geoffk@apple.com>
-
- PR 10757
- * c-pch.c: Include target.h. Improve comments.
- (struct c_pch_validity): Add target_data_length.
- (pch_init): Add target's validity data.
- (c_common_valid_pch): Check target's validity data.
- * target-def.h (TARGET_GET_PCH_VALIDITY): New.
- (TARGET_PCH_VALID_P): New.
- (TARGET_INITIALIZER): Add new fields.
- * target.h: Include tm.h.
- (struct gcc_target): Add get_pch_validity, pch_valid_p.
- * toplev.h (default_get_pch_validity): New prototype.
- (default_pch_valid_p): New prototype.
- * toplev.c (default_get_pch_validity): New routine.
- (default_pch_valid_p): New routine.
- * Makefile.in (TARGET_H): Add TM_H. Replace all users of
- target.h with $(TARGET_H).
- (c-pch.o): Add TARGET_H.
- * doc/tm.texi (PCH Target): New node.
- (TARGET_GET_PCH_VALIDITY): Document.
- (TARGET_PCH_VALID_P): Document.
-
-2003-10-24 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in: Define a vpath for %.texi. Remove explicit $(docdir)
- and $(docdir)/include from any *.texi dependencies.
- ($(docobjdir)/%.dvi): Depend on stmp-docobjdir.
- ($(docobjdir)/%.1): Depend on .pod instead of .texi.
- ($(docobjdir)/%.7): Likewise.
- (%.pod): New implicit rule.
- (cpp.pod): New dependency only rule.
- (gcc.pod): New intermediate rule with dependencies and commands.
- (gfdl.pod): Likewise.
- (fsf-funding.pod): Likewise.
-
-2003-10-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/mkfixinc.sh: Remove special cases for svr4 and ptx, and
- related code.
- * fixinc/fixinc.ptx: Remove.
- * fixinc/fixinc.svr4: Remove.
-
-2003-10-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (load_multiple_operation): Allow both SImode
- and DImode if word_mode is DImode.
- (store_multiple_operation): Likewise.
- * config/s390/s390.md ("load_multiple", "store_multiple"): Likewise.
- ("*load_multiple_di"): Allow only if word_mode == DImode.
- ("movqi"): Use LLGC whenever TARGET_ZARCH.
- ("fix_truncdfsi2"): Fix incorrect temporary size.
- ("fix_truncsfsi2"): Likewise.
- ("*bras_r", "*brasl_r", "*basr_r"): Remove predicate and constraint
- string for function return value operand.
- ("*bras_tls", "*brasl_tls", "*basr_tls"): Likewise.
-
-2003-10-24 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-parse.in (array_declarator): Use expr_no_commas.
- Fixes PR c/11943.
-
-2003-10-24 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/linux.h: Wrap MD_FALLBACK_FRAME_STATE_FOR and
- associated includes in #ifndef inhibit_libc.
-
-2003-10-24 Roger Sayle <roger@eyesopen.com>
-
- * doc/libgcc.texi: Document some more of the libgcc API.
-
-2003-10-24 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_rtx_costs_1, case TARGET_THUMB): Adjust costs for
- comparing a constant with small negative numbers and add costing
- for constants in conjunction with AND.
- (note_invalid_constants): Tidy previous change.
- (thumb_cmp_operand): Tidy.
- (thumb_cmpneg_operand): New function.
- * arm.h (CONDITIONAL_REGISTER_USAGE): Don't use HI regs if optimizing
- for size.
- (FIRST_LO_REGNUM, FIRST_HI_REGNUM, LAST_HI_REGNUM): Define.
- (PREDICATE_CODES): Add thumb_cmpneg_operand.
- * arm.md (cbranchsi4): Convert to define_expand. Handle comparison
- with a negative constant.
- (cbranchsi4_insn): Matcher for cbranchsi4.
- (cbranchsi4_scratch): Similar, but a scratch is available for
- handling negative constants.
- (movsi_cbranchsi4): New pattern.
- (tstsi3_cbranch): Renamed from andsi3_cbranch_scratch, remove scratch
- and use the TST instruction.
- (andsi3_cbranch, orrsi3_cbranch, xorsi3_cbranch, cbranchne_decr1)
- (addsi3_cbranch, subsi3_cbranch): Ensure that register preferencing
- cannot see high regs or memory alternatives.
- (bicsi3_cbranch_scratch, bicsi3_cbranch): New patterns.
-
-2003-10-24 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (note_invalid_constants): Try to extract the constant
- pool value using avoid_constant_pool_reference; only use
- get_pool_constant if that returns the original reference.
-
-2003-10-24 Jan Hubicka <jh@suse.cz>
-
- PR c++/12624
- * varasm.c (notice_global_symbol): Disqualify global registers.
-
-2003-10-23 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/11414
- * loop.c (load_mems): Use redirect_jump to forward jumps from
- the original loop end label to the new "loop sink" block's label.
-
-2003-10-23 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/12705
- * optabs.c (expand_binop): When expanding complex operations
- inline, always calculate result into a new temporary register.
- Minor code clean-ups.
-
-2003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * objc/lang-specs.h: Handle -print-objc-runtime-info.
- * doc/invoke.texi (Objective-C Dialect Options): Document it.
-
-2003-10-24 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/cygwin.asm: Add copyright notice. Add comment
- on why this code is needed.
-
-2003-10-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/clzhi2.c: Fix warnings.
- * config/h8300/ctzhi2.c: Likewise.
- * config/h8300/fixunssfsi.c: Likewise.
- * config/h8300/parityhi2.c: Likewise.
- * config/h8300/popcounthi2.c: Likewise.
-
-2003-10-23 James E Wilson <wilson@specifixinc.com>
-
- * gcc.c (option_map): Delete --target and --use-version.
-
-2003-10-23 Fariborz Jahanian <fjahanian@apple.com>
- David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.h (UNITS_PER_WORD): Use TARGET_32BIT, not
- TARGET_POWREPC64.
- (UNITS_PER_GPR_WORD): Define.
- (HARD_REGNO_NREGS): Use UNITS_PER_GPR_WORD.
- (HARD_REGNO_CALL_PART_CLOBBERED): Define.
- (HARD_REGNO_MODE_OK): Use UNITS_PER_GPR_WORD.
- (CLASS_MAX_NREGS): Use UNITS_PER_GPR_WORD.
- * config/rs6000/rs6000.c (function_arg): Generate PARALLEL for
- DFmode and DImode in 32-bit ABI / 64-bit computation mode.
- (rs6000_emit_prologue): Select reg_mode and reg_size using
- TARGET_32BIT, not TARGET_POWERPC64.
- (rs6000_function_value): Generate PARALLEL for DImode in 32-bit
- ABI / 64-bit computation mode
-
-2003-10-22 Andrew Haley <aph@redhat.com>
-
- * toplev.c (output_file_directive): Allow for null input_name.
-
-2003-10-22 Waldek Hebisch <hebisch@math.uni.wroc.pl>
-
- * config/i386/i386.c (classify_argument): Handle SET_TYPE.
-
-2003-10-22 Chris Demetriou <cgd@broadcom.com>
-
- * configure.in: In --enable-generated-files-in-srcdir option
- handling, fix default case handling.
- * configure: Regenerate.
-
-2003-10-22 Phil Edwards <phil@codesourcery.com>
-
- * config.gcc: Update *-*-vxworks* generic hook and comments.
- (arm-wrs-vxworks, i[4567]86-wrs-vxworks, mips-wrs-vxworks,
- mips-wrs-windiss, sh-wrs-vxworks): New stanzas.
- * genmultilib: Allow the MULTILIB_OSDIRNAMES to be mapped directly.
- * config/svr4.h (SWITCH_TAKES_ARG): Undefine it before redefining it.
- * config/windiss.h: New file.
- * config/arm/t-vxworks: New file.
- * config/arm/vxworks.h: New file.
- * config/i386/t-vxworks: New file.
- * config/i386/vxworks.h: New file.
- * config/mips/t-vxworks: New file.
- * config/mips/vxworks.h: New file.
- * config/mips/windiss.h: New file.
- * config/sh/t-vxworks: New file.
- * config/sh/vxworks.h: New file.
-
-2003-10-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_output_function_epilogue): Remove.
- (h8300_saveall_function_p): New.
- (h8300_insert_attributes): Insert the saveall attribute if
- #pragma saveall is specified.
- (h8300_attribute_table): Add saveall.
- (TARGET_ASM_FUNCTION_EPILOGUE): Remove.
- * doc/extend.texi: Mention the saveall attribute.
-
-2003-10-22 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-typeck.c (pedantic_lvalue_warning): Unconditionally warn of
- deprecation of casts as lvalues.
- * fixinc/inclhack.def (obstack_lvalue_cast): New fix.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/obstack.h: New test.
-
-2003-10-22 Andreas Schwab <schwab@suse.de>
-
- PR target/12676
- * config/m68k/m68k.c (output_addsi3): Fix range check to work on
- LP64 platforms.
-
-2003-10-22 Jan Hubicka <jh@suse.cz>
-
- * dwarf2out.c (dwarf2out_abstract_function): Use DW_AT to check
- presence of DW_AT_inline.
- (gen_subprogram_die): Likewise; do not abort instead of emitting
- DW_AT_not_inline.
-
-2003-10-22 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_function_possibly_inlined_p): Be conservative when
- global info is not ready.
-
-2003-10-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/extend.texi: Mention H8S wherever H8/300H is mentioned.
-
-2003-10-22 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("movstr_short_64", "movstr_short_31"): Merge ...
- ("*movstr_short"): ... into this insn pattern.
- ("movstr_short"): New expander.
- ("*movstr_long_64"): Rename from "movstr_long_64", simplify.
- ("*movstr_long_31"): Rename from "movstr_long_31", simplify.
- ("movstr_long"): New expander.
- ("clrstr_short_64", "clrstr_short_31"): Merge ...
- ("*clrstr_short"): ... into this insn pattern.
- ("clrstr_short"): New expander.
- ("*clrstr_long_64"): Rename from "clrstr_long_64", simplify.
- ("*clrstr_long_31"): Rename from "clrstr_long_31", simplify.
- ("clrstr_long"): New expander.
- ("cmpmem_short_64", "cmpmem_short_31"): Merge ...
- ("*cmpmem_short"): ... into this insn pattern.
- ("cmpmem_short"): New expander.
- ("*cmpmem_long_64"): Rename from "cmpmem_long_64".
- ("*cmpmem_long_31"): Rename from "cmpmem_long_31".
- ("cmpmem_long"): New expander.
- * config/s390/s390.c (s390_expand_movstr): Use new expanders.
- (s390_expand_clrstr): Likewise.
- (s390_expand_cmpmem): Likewise.
-
-2003-10-22 Mark Mitchell <mark@codesourcery.com>
-
- * c-pch.c (struct c_pch_validity): Add pch_init field.
- (pch_init): Set it.
- (c_common_valid_pch): Check it.
-
-2003-10-22 David Taylor <dtaylor@emc.com>
-
- PR debug/12500
- * dbxout.c (dbxout_typedefs): Use COMPLETE_OR_VOID_TYPE_P.
-
-2003-10-22 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/alpha/alpha.c (function_value [ENABLE_CHECKING]): Don't call
- alpha_return_in_memory if no VALTYPE specified.
-
-2003-10-22 Jan Hubicka <jh@suse.cz>
-
- PR debug/12389
- * Makefile.in (dwarf2out.o): Depend on cgraph.h.
- * cgraph.c (cgraph_function_possibly_inlined_p): New function.
- * cgraph.h (cgraph_function_possibly_inlined_p): Declare.
- (cgraph_global_info): Add flag inlined
- * dwarf2out.c (gen_subprogram_die, gen_decl_die): Use
- cgraph_function_possibly_inded_p
- * cgraphunit.c (mark_inline): Set inlined flag.
- * toplev.c (rest_of_decl_compilation): Call outlining_inline_function
- only for possibly inlined functions.
- * c-decl.c (duplicate_decls): Never output abstract DIE representing old
- body of function.
-
-2003-10-22 Andrew Haley <aph@redhat.com>
-
- * varasm.c (output_constructor): Make constructor annotation
- conditional on ASM_COMMENT_START.
-
-2003-10-21 Jason Merrill <jason@redhat.com>
-
- * tree.c (get_unwidened): Check TREE_UNSIGNED on the field's type.
- (get_narrower): Likewise.
-
- * stor-layout.c (layout_decl): Do packed field alignment for
- bit-fields, too.
-
-2003-10-21 Eric Christopher <echristo@redhat.com>
-
- * expr.c (convert_move): Use FLOAT_EXTEND for extensions.
-
-2003-10-21 Geoffrey Keating <geoffk@apple.com>
-
- * c-pch.c: Add comments in various places.
- (struct c_pch_validity): Add the lengths of various strings.
- (host_machine): New static.
- (target_machine): New static.
- (get_ident): Bump version number.
- (pch_init): Write out version, host, target validity data.
- (c_common_valid_pch): Check version, host, target.
- * Makefile.in (c-pch.o): Add version.h; define HOST_MACHINE and
- TARGET_MACHINE.
-
-2003-10-21 Jason Merrill <jason@redhat.com>
-
- * tree.h (IS_EXPR_CODE_CLASS): Use strchr.
- (EXPR_P): New macro.
-
-2003-10-21 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/ia64.md (cmpxchg_acq_si): Mark operand 3 as DImode.
- * config/ia64/ia64.c (ia64_expand_fetch_and_op,
- ia64_expand_op_and_fetch): Make sure the REG for ar.ccv is
- DImode. Use convert_move to load ar.ccv.
- (ia64_expand_compare_and_swap): Likewise.
- If expand_expr doesn't put 'old' and 'new' in the proper
- modes, run them through convert_to_mode.
-
-2003-10-21 Eric Christopher <echristo@redhat.com>
-
- * config/frv/frv.c (frv_adjust_field_align): Check DECL_ARTIFICIAL
- for too large bitfields.
-
-2003-10-21 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in ($(docobjdir)/%.info): Honor BUILD_INFO.
-
-2003-10-21 Andrew Haley <aph@redhat.com>
-
- * varasm.c (output_constructor): Annotate constructor.
-
-2003-10-21 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in ($(DESTDIR)$(infodir)/%.info): Conditionalize chmod
- on existence of destination file.
-
-2003-10-21 Jan Hubicka <jh@suse.cz>
-
- * haifa-sched.c (choose_ready): Initialize index.
-
-2003-10-21 Jason Merrill <jason@redhat.com>
-
- * tree.c (build1): Fix off-by-one error.
-
-2003-10-21 Robert Millan <robertmh@gnu.org>
-
- * config/i386/kfreebsdgnu.h: New. i386-*-kfreebsd-gnu definitions.
- * config/kfreebsdgnu.h: New. *-*-kfreebsd-gnu definitions.
- * config/t-kfreebsd-gnu: New. *-*-kfreebsd-gnu tmake_file.
- * config.gcc: Add *-*-kfreebsd*-gnu and i[34567]86-*-kfreebsd*-gnu.
-
-2003-10-21 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * web.c: Fix various comments.
-
-2003-10-20 Nicolas Pitre <nico@cam.org>
-
- * config/arm/arm.c (arm_override_options): Set arm_constant_limit
- to 2 instead of 1 when optimize_size is true. Gather code based on
- optimize_size together. Add comment about XScale load latency.
-
-2003-10-21 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (m68k_output_function_prologue): Remove
- obsolete comments.
-
-2003-10-20 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in: Get parsedir and docobjdir from configure.
- * configure.in: Recogonize --enable-generated-files-in-srcdir.
- Pass along parsedir and docobjdir.
- * configure: Regenerate.
- * doc/install.texi: Document --enable-generated-files-in-srcdir.
-
-2003-10-20 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in: Define $(docdir) before the Make-lang.in fragments are
- included.
-
-2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-common.c (expand_tree_builtin): Ensure creal and cimag
- functions do not return lvalues.
-
-2003-10-20 Jason Merrill <jason@redhat.com>
-
- PR c/12553
- * tree.c (build1) <ADDR_EXPR>: Set TREE_SIDE_EFFECTS
- appropriately.
-
- PR c/11446
- * stor-layout.c (layout_decl): Fix alignment handling.
-
-2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/extend.texi: Deprecate casts as lvalues.
-
-2003-10-20 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Fix webizer pass ordering.
-
- * cgraphunit.c (decide_is_function_needed): Fix test dealing
- with functions implicitly made inline.
-
- * cgraphunit.c (cgraph_decide_inlining_incrementally): New function.
- (cgraph_finalize_function): Use it.
- (cgraph_mark_inline): Allow incrmental decisions
- * invoke.texi (max-inline-slope, min-inline-insns): Kill.
- * params.def (PARAM_MAX_INLINE_SLOPE, PARAM_MIN_INLINE_INSNS): Kill.
- * tree-inline.c (limits_allow_inlining): Kill.
- (expand_call_inline): Always use unit-at-a-time path.
-
-2003-10-20 Zack Weinberg <zack@codesourcery.com>
-
- * fixinc/inclhack.def (hpux11_snprintf): New edit.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/stdio.h: Add test for hpux11_snprintf.
-
-2003-10-20 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (install-info): Simplify.
- ($(DESTDIR)$(infodir)/%.info): New rule.
- * configure.in (target_list): Remove install-info.
- * doc/.cvsignore (gcc.info*): Remove.
- (gccint.info*): Likewise.
- (gccinstall.info*): Likewise.
- (cpp.info*): Likewise.
- (cppinternals.info*): Likewise.
- (*.info*): Add it.
- * doc/sourcebuild.texi: Update description of install-info.
- * objc/Make-lang.in (objc.install-info): Remove.
-
-2003-10-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Define _ABIO32.
- Use it in _MIPS_SIM definition.
- * config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Likewise.
-
-2003-10-20 Zack Weinberg <zack@codesourcery.com>
-
- * config/i386/i386.c (print_reg): Abort if REGNO (x) is a
- virtual register, but only if file == asm_out_file.
- * config/i386/i386.h (HI_REGISTER_NAMES): Use "argp", not "",
- for ARG_POINTER_REGNUM.
-
-2003-10-20 Zack Weinberg <zack@codesourcery.com>
-
- * c-common.c (registered_builtin_types): New static.
- (c_common_type_for_mode): Consult registered_builtin_types.
- (c_register_builtin_type): Add type to registered_builtin_types.
- * optabs.c (init_floating_libfuncs): Initialize libfuncs for
- all MODE_FLOAT modes, not just the ones corresponding to
- float_type_node, double_type_node, and long_double_type_node.
-
-2003-10-20 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.h (PREDICATE_CODES): Add normal_memory_operand.
- * config/alpha/alpha-protos.h: Remove PREDICATE_CODES prototypes.
-
-2003-10-20 Dorit Naishlos <dorit@il.ibm.com>
-
- * config/rs6000/rs6000.h: (rs6000_sched_insert_nops):
- support new flag -minsert-sched-nops.
- (DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Define.
- * config/rs6000/rs6000.c: (rs6000_sched_insert_nops):
- support new flag -minsert-sched-nops.
- (is_cracked_insn, is_microcoded_insn): New functions.
- (rs6000_sched_finish): New function.
- (rs6000_issue_rate): Return 5 for power4.
- (get_next_active_insn, insn_terminates_group_p): New
- functions.
- (is_costly_group, force_new_group): New functions.
- (redefine_groups, pad_groups): New functions.
- (rs6000_variable_issue): Use new functions.
- * doc/invoke.texi (-minsert-sched-nops): Document new
- option.
-
-2003-10-20 David S. Miller <davem@redhat.com>
-
- * config/sparc/sparc.md (type attribute): Add new insn types
- fpa, fpm_pack, fgm_mul, fgm_pdist, and fgm_cmp for VIS.
- (patterns emitting VIS insns): Use them.
- * config/sparc/ultra1_2.md: Add VIS scheduling rules.
- * config/sparc/ultra3.md: Likewise.
-
-2003-10-20 Falk Hueffner <falk@debian.org>
-
- PR target/12654
- * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't do
- comparison against constant by adjusting the argument except for
- EQ and NE.
-
-2003-10-19 Mark Mitchell <mark@codesourcery.com>
-
- * config.gcc: Add support for arm926ejs, arm1026ejs, arm1136js,
- arm1136jfs, and armv6j.
- * config/arm/arm.c (FL_ARCH6J): New macro.
- (FL_VFPV2): Likewise.
- (all_cores): Add entries for arm926ejs, arm1026ejs, arm1136js,
- and arm1136jfs.
- (all_architectures): Add entry for armv6j.
- (arm_override_options): Add entries for arm926ejs, arm1026ejs,
- arm1136js, and arm1136jfs.
- * config/arm/arm.h (TARGET_CPU_arm926ej_s): New macro.
- (TARGET_CPU_arm1026ej_s): Likewise.
- (TARGET_CPU_arm1136j_s): Likewise.
- (TARGET_CPU_arm1136jf_s): Likewise.
- * doc/invoke.texi: Document new ARM cores and architecture
- variants.
-
-2003-10-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (toplev.o): Add value-prof.h dependency.
- (value-prof.o): Add REGS_H dependency.
- * common.opt (fprofile-values, fvpt): New.
- * flags.h (flag_value_profile_transformations): Declare.
- * opts.c (common_handle_option): Handle -fprofile_values and
- -fvpt.
- * profile.c (branch_prob): Don't remove death notes here.
- * timevar.def (TV_VPT): New.
- * value-prof.c: Include regs.h.
- (insn_divmod_values_to_profile, gen_divmod_fixed_value, gen_mod_pow2,
- gen_mod_subtract, divmod_fixed_value_transform,mod_pow2_value_transform,
- mod_subtract_transform, value_profile_transformations): New.
- (insn_values_to_profile): Call insn_divmod_values_to_profile.
- (find_values_to_profile): Add dumps.
- * value-prof.h (value_profile_transformations): Declare.
- * toplev.c: Include value-prof.h.
- (rest_of_handle_value_profile_transformations): New.
- (enum dump_file_index): Add DFI_vpt.
- (dump_file): Add vpt dump.
- (flag_value_profile_transformations): New.
- (lang_independent_options): Add flag_profile_values and
- flag_value_profile_transformations.
- (rest_of_compilation): Call
- rest_of_handle_value_profile_transformations.
- (process_options): Let -fvpt imply -fprofile-values.
- * doc/invoke.texi (-fvpt): Document.
-
-2003-10-19 Jan Hubicka <jh@suse.cz>
-
- * i386.c (print_reg): Do not abort on certain registers.
-
- PR optimization/12612
- * reg-stack.c (subst_stack_regs_pat): Use st(1) for clobbers.
- * i386.md (fpatan, fyl2x, fscale patterns and expanders): Use
- match_scratch; avoid bogus paralles.
-
- PR target/12674
- * i386.c (ix86_function_regparm): Disable implicit register passing
- conventions when profiling.
-
-2003-10-19 Eric Botcazou <ebotcazou@libertysurf.fr>
- Richard Henderson <rth@redhat.com>
-
- PR optimization/8178
- * config/i386/i386.md (*movsi_zero): Delete.
- (*ffs_no_cmove): Use ix86_expand_clear to zero the third operand.
-
-2003-10-19 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (fix_operator): New.
- (divmod_operator): Tidy.
- (alpha_emit_xfloating_cvt): Handle UNSIGNED_FIX.
- * config/alpha/alpha.h (FIXUNS_TRUNC_LIKE_FIX_TRUNC): Remove.
- (PREDICATE_CODES): Update.
- * config/alpha/alpha.md (fix_truncdfsi_ieee): Use match_operator.
- (fix_truncdfsi_internal, fix_truncdfdi_ieee): Likewise.
- (fix_truncsfsi_ieee, fix_truncsfsi_internal): Likewise.
- (fix_truncsfdi_ieee): Likewise.
- (fix_truncdfdi2, fix_truncsfdi2): Turn into define_expand.
- (fixuns_truncdfdi2, fixuns_truncsfdi2, fixuns_trunctfdi2): New.
- * config/alpha/alpha-protos.h: Update.
-
-2003-10-19 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (INITIALIZE_TRAMPOLINE): Simplify.
- * config/mips/mips.c (mips_load_got): Assume Pmode == ptr_mode.
- * config/mips/mips.md (extendsidi2, *extendsidi2): Merge. Don't accept
- constant operands.
-
-2003-10-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/extend.texi: Fix typos.
- * doc/invoke.texi: Likewise.
-
-2003-10-18 Nicolas Pitre <nico@cam.org>
-
- * config/arm/arm.c (arm_override_options): Use arm_tune_xscale for
- XScale optimizations not arm_arch_xscale.
- * config/arm/arm.h (CONSTANT_ALIGNMENT_FACTOR, MOVE_RATIO): Likewise.
-
-2003-10-18 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (shift_count_operand): Add prototype.
- * config/s390/s390.c (shift_count_operand): New function.
- (s390_extra_constraint): Use it to implement 'Y' constraint.
- (print_shift_count_operand): New function.
- (print_operand): Use it to implement '%Y'.
- * config/s390/s390.h (EXTRA_ADDRESS_CONSTRAINT): Add 'Y' constraint.
- (PREDICATE_CODES): Add shift_count_operand.
- * config/s390/s390.md ("rotldi3"): Merge alternatives,
- using "shift_count_operand" predicate and "Y" constraint,
- and "%Y" to output the combined shift count.
- ("rotlsi3"): Likewise.
- ("ashldi3", "*ashldi3_31", "*ashldi3_64"): Likewise.
- ("ashrdi3", "*ashrdi3_31", "*ashrdi3_64", "*ashrdi3_cc_31",
- "*ashrdi3_cc_64", "*ashrdi3_cconly_31", "*ashrdi3_cconly_64"): Likewise.
- ("ashlsi3", "ashrsi3", "*ashrsi3_cc", "*ashrsi3_cconly"): Likewise.
- ("lshrdi3", "*lshrdi3_31", "*lshrdi3_64"): Likewise.
- ("lshrsi3"): Likewise.
-
-2003-10-18 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (m68k_output_function_epilogue): Add missing
- argument to asm_fprintf statement.
-
-2003-10-18 Fariborz Jahanian <fjahanian@apple.com>
-
- * rs6000.md: Separate TARGET_POWERPC64 patterns for TARGET_64BIT or TARGET_32BIT.
- (ashrdisi3_noppc64) Generate more efficient code for 32-bit right-shift of
- a "long long" argument.
-
-2003-10-18 Alexandre Oliva <aoliva@redhat.com>
-
- * final.c (final_scan_insn): Run FINAL_PRESCAN_INSNS on asm insns
- as well.
-
-2003-10-18 Richard Sandiford <rsandifo@redhat.com>
-
- * rtl.h (rtl_size): Declare.
- (rtunion): Remove rtwint.
- (rtx_def): Replace 'fld' with a union of an rtunion or a HOST_WIDE_INT.
- (RTX_HDR_SIZE, RTX_SIZE): New macros.
- (RTL_CHECK1): Adjust for new rtx_def layout.
- (RTL_CHECK2, RTL_CHECKC1, RTL_CHECKC2): Likewise.
- (XWINT, XCWINT): Likewise. Access the rtx structure directly.
- (X0WINT): Remove.
- (X0ANY): New macro.
- * rtl.def: Adjust comments for new rtx_def layout.
- * ggc.h (ggc_alloc_rtx): Take the rtx code as argument, not the
- number of slots.
- * rtl.c (rtx_size): New array.
- (rtx_alloc): Adjust call to ggc_alloc_rtx. Use RTX_HDR_SIZE.
- (copy_rtx): Use RTX_HDR_SIZE. Adjust for new rtx_def layout.
- (shallow_copy_rtx): Adjust call to ggc_alloc_rtx. Use RTX_SIZE.
- * integrate.c (copy_rtx_and_substitute): Use X0ANY to copy '0' fields.
- * emit-rtl.c (copy_most_rtx): Likewise.
- (copy_rtx_if_shared): Use RTX_SIZE.
- (copy_insn_1): Use RTX_HDR_SIZE. Adjust for new rtx_def layout.
- * gengenrtl.c (gendef): Adjust ggc_alloc_rtx call. Use RTX_HDR_SIZE.
- * gengtype.c (write_rtx_next): Use RTX_HDR_SIZE.
- (adjust_field_rtx_def): Expect "rtx_def" to be a union rather than
- an array. Adjust output for new rtx_def layout.
- * ggc-page.c (RTL_SIZE): Use RTX_HDR_SIZE.
- * reload1.c (eliminate_regs): Use RTX_SIZE.
- * rtlanal.c (loc_mentioned_in_p): Adjust for new rtx_def layout.
- * gdbinit.in (pi): Likewise.
-
-2003-10-18 Jan Hubicka <jh@suse.cz>
-
- * integrate.c (copy_decl_for_inlining): Revert previous patch.
-
-2003-10-18 Jan Hubicka <jh@suse.cz>
-
- * integrate.c (copy_decl_for_inlining): Fix copying of copies.
-
-2003-10-18 Roger Sayle <roger@eyesopen.com>
-
- * libgcc.texi: Group multi-word types, such as "long double" and
- "unsigned int", using braces in @deftypefn and @deftypefnx nodes.
- Document __unord?f2 as returning a non-zero value, not just one.
-
-2003-10-18 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/mmix/t-mmix (CRTSTUFF_T_CFLAGS): Define.
- ($(T)crti.o, $(T)crtn.o): Pass CRTSTUFF_T_CFLAGS here too.
-
-2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/i386/k6.md (k6_alux): Use the 'mode' attribute instead of
- match_operand.
-
-2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_record_value_1): New fourth
- parameter packed_p. Search for a DECL_PACKED field only if
- packed_p is false. Pass packed_p recursively.
- (function_arg_record_value_2): Likewise.
- (function_arg_record_value): Update calls to
- function_arg_record_value_1 and function_arg_record_value_2.
-
-2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * cse.c (cse_insn) [src_folded]: Check that the tentative replacement
- was successfully forced to memory before using the result.
-
-2003-10-18 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/8178
- * config/i386/i386.md (*movsi_zero): New insn to set
- a register to zero on TARGET_USE_MOV0 targets.
-
-2003-10-18 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (Makefile): Depend on the all Make-lang.in fragments.
- (POSTSTAGE1_FLAGS_TO_PASS): Pass down MAKEINFO and MAKEINFOFLAGS.
-
-2003-10-17 David Edelsohn <edelsohn@gnu.org>
-
- * doc/invoke.texi (gcse-las): Fix typo.
-
-2003-10-17 Andrew Pinski <pinskia@physics.uc.edu>
-
- * doc/install.texi: Remove first part of the sentence for
- zsh not working. Change gcc to GCC.
-
- PR bootstrap/12546
- * doc/install.texi: Document that zsh does not work when
- configuring gcc.
-
-2003-10-17 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config/ptx4.h: Switch to DWARF 2; update comments.
-
-2003-10-17 Segher Boessenkool <boessen@de.ibm.com>
- Hartmut Penner <hpenner@de.ibm.com>
-
- PR 10404, partial 11591, partial 11601
- * config/rs6000/altivec.md ("altivec_dst", "altivec_dstt",
- "altivec_dstst", "altivec_dststt", "altivec_lvsl", "altivec_lvsr",
- "altivec_lvebx", "altivec_lvehx", "altivec_lvewx", "altivec_lvxl",
- "altivec_lvx", "altivec_stvx", "altivec_stvxl", "altivec_stvebx",
- "altivec_stvehx", "altivec_stvewx"): Use a memory_operand.
- * config/rs6000/rs6000.c (altivec_expand_lv_builtin): New function.
- (altivec_expand_stv_builtin): Adjust for the memory_operand.
- (altivec_expand_builtin): Call altivec_expand_lv_builtin.
- (altivec_init_builtins): Use `long int' for memory offsets.
-
-2003-10-17 Jan Hubicka <jh@suse.cz>
-
- * opts.c (common_handle_option): Handle OPT_fweb
- * invoke.texi (-fweb): Add missing parts of documentation.
-
-2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/linux.h (FUNCTION_NAME_ALREADY_DECLARED): Undef
- before redefinition.
-
-2003-10-17 Mostafa Hagog <mustafa@il.ibm.com>
-
- * common.opt: Add description of the new -fgcse-las flag.
- * flags.h (flag_gcse_las): Declaration of global flag_gcse_las.
- * gcse.c (hash_scan_set): Handle the case of store expression and
- insert the memory expression to the hash table, this way we make it
- possible to discover redundant loads after stores and remove them.
- (pre_insert_copy_insn): moved the call to update_ld_motion_stores,
- to pre_insert_copies, it is not the correct place to call it after
- adding stores to be in the available expression hash table.
- (pre_insert_copies): Added the call to update_ld_motion_stores when
- one or more copies were inserted.
- * opts.c (common_handle_option): Handle the -fgcse-las flag.
- * toplev.c (flag_gcse_las): Initialization of flag_gcse_las.
-
- * doc/invoke.tex: Document new -fgcse-las flag.
-
-2003-10-18 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/crtsavres.asm: Correct alignment of powerpc64 code
- for posterity, then remove it.
-
-2003-10-17 Richard Earnshaw <rearnsha@arm.com>
- Nathan Sidwell <nathan@codesourcery.com>
-
- * config/arm/arm.c (use_return_insn): Not a single instruction, if
- there's a frame pointer.
- (arm_output_epilogue): Protect stack pointer from being corrupted
- on interrupt.
-
-2003-10-17 Ulrich Weigand <uweigand@de.ibm.com>
-
- * ifcvt.c (noce_try_addcc): Handle ifs with 'else' case.
-
-2003-10-17 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (simplify_set): Do not clear out undobuf.other_insn
- already set elsewhere.
-
-2003-10-17 Kelley Cook <kcook@gcc.gnu.org>
-
- * config/i386/i386.c (ix86_expand_prologue): Use
- gen_allocate_stack_worker.
-
-2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.gcc (mips-sgi-irix6*o32): Only enable use_collect2
- without gas.
- (mips-sgi-irix6*): Likewise.
-
- * config/mips/iris6gas.h: New file.
- * gcc/config.gcc (mips-sgi-irix6*): Use it.
-
- * config/mips/mips.h (TARGET_IRIX): Provide default.
- (TARGET_IRIX5): Likewise.
- (TARGET_SGI_O32_AS): Likewise.
- * config/mips/iris5.h (TARGET_IRIX): Redefine as 1.
- (TARGET_IRIX5): Likewise.
- * config/mips/iris6.h (TARGET_IRIX6): Remove.
- (TARGET_IRIX5): Redefine as 0.
-
- * config/mips/mips.c (mips_output_external): Test for IRIX 6 O32
- linker workaround with TARGET_IRIX and mips_abi instead of
- ASM_OUTPUT_UNDEF_FUNCTION.
- (mips_file_end): Inline old ASM_OUTPUT_UNDEF_FUNCTION definition,
- testing TARGET_IRIX and mips_abi explicitly.
- * config/mips/iris5.h (ASM_OUTPUT_UNDEF_FUNCTION): Remove.
- * config/mips/iris6.h (ASM_OUTPUT_UNDEF_FUNCTION): Remove undef.
-
- * config/mips/mips.c (irix_output_external_libcall): Renamed from
- mips_output_external_libcall.
- Use new TARGET_IRIX in guard.
- * config/mips/mips-protos.h (irix_output_external_libcall): Match
- this.
- * config/mips/iris5.h (TARGET_ASM_EXTERNAL_LIBCALL): Likewise.
-
- * config/mips/iris5gas.h (HAVE_GAS_SHF_MERGE): Update comment.
- Define as 0.
-
- * config/mips/iris6.h (FUNCTION_NAME_ALREADY_DECLARED): Define
- depending on mips_abi.
- * config/mips/linux.h (FUNCTION_NAME_ALREADY_DECLARED): Define as 1.
- * config/mips/mips.c (mips_output_function_prologue): Test
- FUNCTION_NAME_ALREADY_DECLARED at runtime.
- (mips_output_function_epilogue): Likewise.
- (build_mips16_function_stub): Likewise.
- (build_mips16_call_stub): Likewise.
- * config/mips/mips.h (FUNCTION_NAME_ALREADY_DECLARED): Provide
- default.
-
- * config/mips/iris6.h (DWARF2_UNWIND_INFO): Don't define for native
- IRIX 6 O32 assembler.
- (SUBTARGET_CC1_SPEC): Enforce mips2 ISA with O32 ABI.
- (TARGET_OS_CPP_BUILTINS): Define _ABIO32, use it to define
- _MIPS_SIM for O32 ABI.
- (DWARF2_FRAME_INFO): Don't define for native IRIX 6 O32 assembler.
- (ASM_DECLARE_FUNCTION_NAME): Integrate mips.h version.
- (ASM_DECLARE_FUNCTION_SIZE): Move undef before redefinition.
- Integrate O32 version.
- (SUBTARGET_ASM_SPEC): Handle -mabi=32.
- (SUBTARGET_ASM_DEBUGGING_SPEC): Add mdebug_asm_spec for gas with
- O32 ABI.
- (BSS_SECTION_ASM_OP_32): Define.
- (BSS_SECTION_ASM_OP_64): Likewise.
- (BSS_SECTION_ASM_OP): Define differently for O32 and N32/N64 ABIs
- using them.
- (TARGET_ASM_NAMED_SECTION): Reflect renaming.
- Move up to allow override for O32 ABI without GNU as.
- (EH_FRAME_SECTION_NAME): Define explicitly.
- (MUST_USE_SJLJ_EXCEPTIONS): Define.
- [_MIPS_SIM == _ABIO32 && !GAS] (CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP): Dummy definitions.
- (TARGET_ASM_NAMED_SECTION): Undef statically.
- (EH_FRAME_SECTION_NAME): Likewise.
- (ASM_OUTPUT_FILENAME): Integrate mips.h version.
- (LINK_SPEC): Only use default options -call_shared -no_unresolved
- without -r.
- Don't pass -init, -fini with -mabi=32.
- (COLLECT_PARSE_FLAG): Define.
-
- * config/mips/mips.c (iris6_asm_named_section_1): Changed guard to
- TARGET_IRIX.
- Renamed to use irix_ prefix.
- (iris6_asm_named_section): Likewise.
- (iris_section_align_entry_eq): Likewise.
- (iris_section_align_entry_hash): Likewise.
- (iris6_file_start): Likewise.
- (iris6_section_align_1): Likewise.
- (iris6_file_end): Likewise.
- (iris6_section_type_flags): Likewise.
- (iris_section_align_htab): Likewise.
- (iris_orig_asm_out_file): Likewise.
- [TARGET_IRIX] (TARGET_ASM_FILE_START): Reflect rename.
- (TARGET_ASM_FILE_END): Likewise.
- (TARGET_SECTION_TYPE_FLAGS): Likewise.
-
- * config/mips/mips.c [TARGET_IRIX5 && !TARGET_IRIX6]
- (TARGET_ASM_UNALIGNED_HI_OP): Use runtime initialization in
- override_options instead.
- (TARGET_ASM_UNALIGNED_SI_OP): Likewise.
- (TARGET_ASM_UNALIGNED_DI_OP): Likewise.
- * config/mips/mips.c (override_options) [USE_COLLECT2]: Restore
- flag_gnu_linker to defaults without USE_COLLECT2 for non-IRIX O32
- assemblers.
- Likewise for constructor/destructor handling.
- (override_options): Handle IRIX O32 assembler quirks.
- [TARGET_IRIX] (irix_asm_named_section): Handle O32 ABI with and
- without gas.
- (mips_file_start): Use new TARGET_IRIX.
- (mips_declare_object_name): No special processing for IRIX O32
- assembler.
- (mips_finish_declare_object): Likewise.
- (irix_asm_output_align): Renamed from iris6_asm_output_align.
- Don't record alignment for O32 ABI.
- (irix_file_start): Renamed from iris6_file_start.
- Return early for O32 ABI.
- (irix_file_end): Renamed from iris6_file_end.
- Don't emit .section directives for O32 ABI.
- * config/mips/iris6.h (ASM_OUTPUT_ALIGN): Reflect renaming.
- * config/mips/mips-protos.h (irix_asm_output_align): Likewise.
-
- * config/mips/t-iris6 (MULTILIB_OPTIONS): Add mabi=32.
- (MULTILIB_OSDIRNAMES): Likewise.
-
-2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * collect2.c (COLLECT_PARSE_FLAG): Provide default.
- (main): Use it.
- * doc/tm.texi (COLLECT_PARSE_FLAG): Document it.
-
-2003-10-17 Richard Earnshaw <rearnsha@arm.com>
-
- * arm-modes.def (CC_Nmode): New condition code mode.
- * arm.c (thumb_condition_code): Delete.
- (arm_select_cc_mode): Handle single-bit test for Thumb.
- (arm_print_operand, cases 'd' and 'D'): Don't special case the
- condition code logic for Thumb.
- (get_arm_condition_code): Handle CC_Nmode.
- (thumb_cbrch_target_operand): New function.
- * arm.h (PREDICATE_CODES): Add thumb_cbrch_target_operand.
- * arm-protos.h (thumb_cbrch_target_operand): Add prototype.
- * arm.md: Add Thumb split patterns for zero_extract and
- sign_extract.
- (tbit_cbranch, andsi3_cbranch_scratch, andsi3_cbranch)
- (orrsi3_cbranch_scratch, orrsi3_cbranch, xorsi3_cbranch_scratch)
- (xorsi3_cbranch, addsi3_cbranch, addsi3_cbranch_scratch)
- (subsi3_cbranch, subsi3_cbranch_scratch): New Thumb patterns.
- (cbranchne_decr1): Re-work to use CC_Nmode.
-
- * arm.c (thumb_expand_epilogue): Add clobbers of registers restored
- by the return instruction. Add a use of the link register if it
- wasn't stored.
-
-2003-10-17 Richard Earnshaw <rearnsha@arm.com>
-
- * flow.c (init_propagate_block_info): Don't abort if a conditional
- jump is not a comparison of a register. Instead, just don't record
- conditional life information.
-
-2003-10-16 Jan Hubicka <jh@suse.cz>
-
- PR optimization/12630
- * pa.md (movstrsi, movstrsi_internal): Use match_scratch in clobbers
- for operands 7 and 8.
-
-2003-10-16 Kelley Cook <kcook@gcc.gnu.org>
-
- * objc/Make-lang.in (objc-parse.o): Honor $(parsedir) for objc-parse.c.
-
-2003-10-16 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Define.
-
- * config/i386/winnt.c (gen_stdcall_suffix): Make static
- (gen_fastcall_suffix): Likewise.
- (i386_pe_dllexport_p): Likewise.
- (i386_pe_dllimport_p): Likewise.
- (i386_pe_mark_dllexport): Likewise.
- (i386_pe_mark_dllimport): Likewise.
- (i386_pe_asm_named_section): Fix formatting.
-
-2003-10-16 Zack Weinberg <zack@codesourcery.com>
-
- * configure.in: Add snprintf to gcc_AC_CHECK_DECLS list.
- * system.h: Declare snprintf if necessary.
- * configure, config.in: Regenerate.
-
-2003-10-15 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_va_arg): Only align vector
- arguments if TARGET_ALTIVEC_ABI.
-
-2003-10-15 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (fold_builtin_memcpy, fold_builtin_mempcpy,
- fold_builtin_memmove, fold_builtin_strcpy, fold_builtin_strncpy,
- fold_builtin_memcmp, fold_builtin_strcmp, fold_builtin_strncmp):
- New functions.
- (expand_builtin_memcpy): Use integer_zerop instead of testing
- host_integerp and tree_low_cst directly. Move misapplied hunk
- for optimization wher SRC and DEST point to the same location.
- (expand_builtin_mempcpy): From here.
- (expand_builtin_memmove): Use integer_zerop instead of testing
- host_integerp and tree_low_cst_directly.
- (expand_builtin_memset): Likewise.
- (expand_builtin_memcmp): Likewise (and for integer_onep).
- (expand_builtin_strncmp): Likewise.
- (fold_builtin): Call the appropriate fold_builtin_foo functions
- to optimize memcpy, mempcpy, memmove, strcpy, strncpy, memcmp,
- strcmp and strncmp.
-
-2003-10-15 Geoffrey Keating <geoffk@apple.com>
-
- * config/darwin-protos.h (machopic_non_lazy_ptr_name): Delete
- prototype. Clean up some whitespace.
- * config/darwin.c: Use gen_rtx_FOO (...) rather than
- gen_rtx (FOO, ...).
- (machopic_non_lazy_ptr_name): Make static.
- (name_needs_quotes): Allow '.' and '$' unquoted.
- (machopic_legitimize_pic_address): Improve codegen in dynamic-no-pic
- case.
-
-2003-10-15 Gábor Lóki <alga@rgai.hu>
-
- * fold-const.c (tree_swap_operands_p): Disable some features
- when optimizing for size.
-
-2003-10-15 David Daney <ddaney@avtrex.com>
-
- * config/mips/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New
- * config/mips/mips.h (DWARF_FRAME_REGNUM): Fixed to allow unwind
- from leaf functions.
- (DWARF_FRAME_RETURN_COLUMN): Ditto.
- (SIGNAL_UNWIND_RETURN_COLUMN): New, used
- by MD_FALLBACK_FRAME_STATE_FOR.
- * testsuite/gcc.dg/cleanup-9.c: Added mips*-*-linux* target.
-
-2003-10-15 Zack Weinberg <zack@codesourcery.com>
-
- * genmodes.c: Include hashtab.h.
- (modes_by_name, hash_mode, eq_mode, struct mode_adjust)
- (adj_bytesize, adj_alignment, adj_format, new_adjust)
- (_ADD_ADJUST, ADJUST_BYTESIZE, ADJUST_ALIGNMENT, ADJUST_FORMAT)
- (print_maybe_const_decl, emit_mode_adjustments): New.
- (known_modes): Rename to modes.
- (find_mode): Kill class argument; look up in hash table.
- (new_mode): Insert into hash table also.
- (new_adjust): New.
- (reset_float_format, make_partial_integer_mode)
- (make_vector_mode): Tweak error reporting.
- (reset_float_format): Correct type of fourth argument.
- (emit_insn_modes_h): Add #defines to help make mode_size,
- mode_base_align, and real_format_for_mode conditionally const.
- (emit_mode_size, emit_mode_base_align): Use print_maybe_const_decl.
- (emit_real_format_for_mode): Likewise, but temporarily disabled.
- (emit_insn_modes_c): Call emit_mode_adjustments.
- (main): Initialize modes_by_name.
- * Makefile.in: Update dependencies.
- * machmode.def: Document EXPR arguments and new ADJUST_* statements.
- * machmode.h: Use CONST_MODE_SIZE and CONST_MODE_BASE_ALIGN in
- declarations of mode_size and mode_base_align. Declare
- init_adjust_machine_modes.
- * toplev.c (backend_init): Call init_adjust_machine_modes.
-
-2003-10-15 Olivier Hainque <hainque@act-europe.fr>
-
- * genmodes.c (calc_wider_mode): Allocate enough room for all the
- entries we'll possibly assign in the sort buffer.
-
-2003-10-15 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config.gcc (s390x-ibm-tpf*): New target.
- * doc/install.texi: Document it.
- * config/s390/t-tpf: New file.
- * config/s390/tpf.h: New file.
-
-2003-10-15 Hans-Peter Nilsson <hp@axis.com>
-
- PR target/12598
- * config/cris/cris.md (define_split "*mov_sidesi_biap_mem"+1)
- (define_splits "*mov_sidesi_mem"+1, "casesi"+9, +10, +11, +12):
- Use cris_mem_op and replace_equiv_address, not gen_rtx_MEM.
- ("call", "call_value", define_split "*mov_sidesi_mem"+19, +20)
- (define_split "*mov_sidesi_mem"+21, +22, +23, +24, +25, +26, +27)
- (define_split "*mov_sidesi_mem"+28, +29, +30): Use
- replace_equiv_address, not gen_rtx_MEM.
- * config/cris/cris.c (cris_mem_op): New match_operator function.
- (cris_notice_update_cc): Use replace_equiv_address, not
- gen_rtx_MEM.
- * config/cris/cris.h (PREDICATE_CODES): Add cris_mem_op.
-
-2003-10-15 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h (MASK_SEP_DATA, TARGET_SEP_DATA,
- MASK_ID_SHARED_LIBRARY, TARGET_ID_SHARED_LIBRARY): Move
- definitions after the other flags.
-
-2003-10-14 Ziemowit Laski <zlaski@apple.com>
-
- * c-parse.in (methoddef, methodproto): Call objc_add_method()
- instead of add_method().
- * objc/objc-act.c (objc_check_decl): Do not check for
- constant_string_type.
- (add_method): Rename to objc_add_method().
- (really_start_method): Call objc_add_method() instead of
- add_method().
- * objc/objc-act.h (add_method): Rename to objc_add_method().
-
-2003-10-14 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_alc_comparison): Add prototype.
- (s390_slb_comparison): Likewise.
- * config/s390/s390.c (s390_alc_comparison, s390_slb_comparison):
- New functions.
- * config/s390/s390.h (PREDICATE_CODES): Add s390_alc_comparison
- and s390_slb_comparison.
- * config/s390/s390.md ("*adddi3_31", "*subdi3_31"): Do not use on
- zSeries machines.
- ("*adddi3_31z", "*subdi3_31z"): New insns.
- ("*adddi3_alc_cc", "*adddi3_alc", "*subdi3_slb_cc", "*subdi3_slb",
- "*addsi3_alc_cc", "*addsi3_alc", "*subsi3_slb_cc", "*subsi3_slb"):
- New insns.
-
-2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in: Clean up some feedback echoes.
- * configure: Regenerate.
-
- * aclocal.m4: Properly quote names of macros being defined.
-
- * config.gcc (am33_2.0-*-linux*): Use t-slibgcc-elf-ver.
-
-2003-10-14 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (ia64_expand_call): Force function address
- to DImode.
- * config/ia64/ia64.md (call_gp): Put DImode on operand 0.
-
-2003-10-14 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("muldf3", "*muldf3", "*muldf3_ibm",
- "mulsf3", "*mulsf3", "*mulsf3_ibm"): Do not clobber CC.
- ("divdf3", "*divdf3", "*divdf3_ibm", "divsf3", "*divsf3",
- "*divsf3_ibm"): Likewise.
-
-2003-10-14 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc, config/m68hc11/t-m68hc11-gas: Replace uses of
- target_alias with target_noncanonical.
-
-2003-10-14 Geoffrey Keating <geoffk@apple.com>
-
- * expr.c (block_move_libcall_safe_for_call_parm): Clean up,
- and add case for machines where outgoing register parameters
- get stack space.
-
- * config/darwin.c (machopic_indirect_data_reference): Use a scratch
- register when generating indirect address.
-
-2003-10-14 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_addimm_operand): MODE arguemnt is unused.
- * arm.md (cbranchne_decr1): Fix bootstrap warning.
-
-2003-10-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (alpha_pthread_gcc): New fix.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_GCC_CHECK]: New
- testcase.
- Fixes PR bootstrap/9330.
-
-2003-10-13 Eric Christopher <echristo@redhat.com>
-
- * config/frv/frv.c (frv_adjust_field_align): Redo check for
- too wide bitfields.
- (frv_hard_regno_mode_ok): Add SPR_P and AP_FIRST.
- * config/frv/frv.h (FUNCTION_PROFILER): Remove abort call.
- (SBSS_SECTION_ASM_OP): Remove.
- (EXTRA_SECTIONS): Remove in_sbss.
- (EXTRA_SECTION_FUNCTIONS): Remove SBSS_SECTION_FUNCTION.
- (SBSS_SECTION_FUNCTION, sbss_section): Remove.
- (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Change sbss_section to
- named_section.
-
-2003-10-13 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in, configure.in, config.host, mkheaders.in: Replace
- uses of ${target_alias} for directory names (and other places which
- won't like the empty string) with ${target_noncanonical}. Introduce
- call early in configure.in to _GCC_TOPLEV_NONCANONICAL_TARGET so it's
- available.
- * configure: Regenerate.
-
-2003-10-13 Ian Lance Taylor <ian@wasabisystems.com>
-
- * config/arm/iwmmxt.md (cond_iwmmxt_movsi_insn): New pattern.
- * config/arm/arm.md: For splits which rely on conditional moves,
- remove ! TARGET_IWMMXT condition.
-
-2003-10-13 David S. Miller <davem@redhat.com>
-
- * ifcvt.c (num_removed_blocks): Rename to num_true_changes.
- (find_cond_trap): Always increment if we emit a conditional
- trap insn.
-
-2003-10-13 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (BUILD_RTL): Replace $(BUILD_PREFIX)insn-modes.o
- with min-insn-modes.o.
- (STAGESTUFF): Add min-insn-modes.c.
- (genobjs): Add genmodes.o.
- (print-rtl.o, print-rtl1.o): Depend on $(TM_P_H).
- (insn-modes.o): Depend on $(TM_H) not $(GTM_H); also real.h.
- (min-insn-modes.c, min-insn-modes.o): New rules.
- (s-modes): Also generate min-insn-modes.c.
- ($(BUILD_PREFIX_1)insn-modes.o): Kill.
- * genmodes.c (struct mode_data): Add format field.
- (blank_mode, validate_mode, complete_mode): Update to match.
- (make_scalar_mode): Separate into make_int_mode and make_float_mode.
- (_SCALAR_MODE): Kill.
- (FLOAT_MODE, FRACTIONAL_FLOAT_MODE): Add format argument.
- (emit_insn_modes_c_header): Adjust.
- (emit_min_insn_modes_c_header, emit_real_format_for_mode)
- (emit_min_insn_modes_c): New functions.
- (emit_insn_modes_c): Call emit_real_format_for_mode.
- (main): Add -m option to generate min-insn-modes.c.
- * machmode.h: Update documentation. Add format argument to
- all uses of FLOAT_MODE.
- * real.c: Don't define real_format_for_mode here.
-
- * dwarfout.c: Move default definition of PRINT_REG...
- * defaults.h: ...here.
- * print-rtl.c: Include tm_p.h.
- (DEBUG_PRINT_REG, DEBUG_REGISTER_NAMES, debug_reg_names, reg_names):
- Kill.
- (print_rtx): Use PRINT_REG, not DEBUG_PRINT_REG. But surround
- this entire block with #ifndef GENERATOR_FILE.
- * regclass.c: Unconditionally define reg_names.
- * config/mips/mips.h, config/rs6000/rs6000.h, config/sh/sh.h
- Don't define DEBUG_REGISTER_NAMES.
- * config/rs6000/darwin.h: Don't use DEBUG_REGISTER_NAMES in
- redefinition of REGISTER_NAMES.
- * config/i386/i386.h: Don't define DEBUG_PRINT_REG.
-
- * combine.c: Change all preprocessor conditionals on
- EXTRA_CC_MODES to use SELECT_CC_MODE instead; rearrange a bit
- for clarity.
- * genopinit.c: Remove mention of EXTRA_CC_MODES in comment.
- * configure.in: Don't define EXTRA_CC_MODES.
- * configure, config.in: Regenerate.
- * doc/tm.texi: Remove documentation of EXTRA_CC_MODES.
-
- * config/arc/arc.c, config/m32r/m32r.c, config/sparc/sparc.c:
- May assume that GET_MODE_CLASS is accurate for extra CC modes
- at all times.
-
- * config/i860/i860.h (INIT_CUMULATIVE_ARGS): Pass correct
- number of arguments to aggregate_value_p.
-
- * genmodes.c (RESET_FLOAT_FORMAT, reset_float_format): New.
- * machmode.def: Explain ARCH-modes.def. Document
- RESET_FLOAT_FORMAT. Improve commentary on various mode
- clusters. Do not define OI, PQI, PHI, PSI, PDI, QF, HF, TQF,
- XF, or TF modes here. Remove backward-compatibility
- definition of CC.
-
- * config/alpha/alpha-modes.def: New file; define TF mode.
- * config/arc/arm-modes.def: Define XF mode.
- * config/c4x/c4x-modes.def: Define QF and HF modes. Unset
- float format for SF and DF modes.
- * config/dsp16xx/dsp16xx-modes.def: New file; define HF mode.
- * config/i386/i386-modes.def: Define XF and TF modes.
- * config/i960/i960-modes.def: Define TF mode.
- * config/ia64/ia64-modes.def: Define TF and OI modes.
- * config/m68k/m68k-modes.def: New file; define XF mode.
- * config/mips/mips-modes.def: New file; define TF mode, reset
- formats for SF and DF modes.
- * config/pa/pa-modes.def: Define TF mode.
- * config/rs6000/rs6000.c: Define TF and PSI modes.
- * config/s390/s390-modes.def: Define OI mode.
- * config/sh/sh-modes.def: New file; define PSI mode.
- * config/sparc/sparc-modes.def: Define TF mode.
- * config/vax/vax-modes.def: New file; reset formats for SF and
- DF modes.
-
- * config/c4x/c4x.c (c4x_override_options): No need to mess
- with real_format_for_mode or set REAL_MODE_FORMATs.
- (c4x_immed_int_constant): Don't apply GET_MODE_CLASS to rtx
- variable.
- * config/i386/i386.c (override_options): No need to set
- REAL_MODE_FORMATs here.
- * config/i960/i960.c (i960_initialize): Likewise.
- * config/m68k/m68k.c (m68k_override_options): Likewise.
- * config/ia64/ia64.c (ia64_override_options): Set REAL_MODE_FORMAT
- for TFmode only if not the default.
- * config/mips/mips.c (override_options): Likewise.
- * config/vax/vax.c (override_optionms): Set REAL_MODE_FORMAT for
- DFmode only if not the default.
-
- * config/i370/i370.h (RET_REG): Don't consider TFmode.
- * config/m68hc11/m68hc11.c (print_operand): Don't consider XFmode.
- * config/dsp16xx/dsp16xx.c (hard_regno_mode_ok): #if 0 out use
- of modes that don't appear anywhere in the machine description.
-
- * config/arc/arc-modes.def, config/arm/arm-modes.def
- * config/c4x/c4x-modes.def, config/frv/frv-modes.def
- * config/i386/i386-modes.def, config/i960/i960-modes.def
- * config/ia64/ia64-modes.def, config/mmix/mmix-modes.def
- * config/pa/pa-modes.def, config/pdp11/pdp11-modes.def
- * config/rs6000/rs6000-modes.def, config/s390/s390-modes.def
- * config/sparc/sparc-modes.def: Convert to new style for
- declaring extra CC modes.
-
-2003-10-13 Zack Weinberg <zack@codesourcery.com>
-
- * cpplex.c (_cpp_clean_line): In the common case of a line
- with no trigraphs and no \-newline, avoid writing to memory.
- (_cpp_skip_block_comment): Use a local 'cur' pointer instead
- of the buffer member. Make c an uchar to avoid unnecessary
- sign extensions.
-
-2003-10-13 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in: Remove unnecessary test.
- * configure: Regenerate.
-
- * configure.in: Fix grammatical error. Move UWIN host error to...
- * config.host: Here.
- * configure: Regenerate.
-
-2003-10-13 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390.md ("*fmadddf4", "*fmsubdf4", "*fmaddsf4",
- "*fmsubsf4"): Insns are now dependent on TARGET_FUSED_MADD instead
- of flag_unsafe_math_optimizations.
- * config/s390/s390.h ("MASK_NO_FUSED_MADD", "TARGET_NO_FUSED_MADD",
- "TARGET_FUSED_MADD", "TARGET_SWITCHES"): Introduced new target flags
- fused-madd and no-fused-madd.
- * doc/invoke.texi: Documented the new options fused-madd and
- no-fused-madd for S/390.
-
-2003-10-14 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Choose
- MASK_ALIGN_NATURAL if rs6000_alignment_string not given. Don't
- assign DEFAULT_ABI.
- (ADJUST_FIELD_ALIGN, ROUND_TYPE_ALIGN): Update comment.
- * config/rs6000/rs6000.c: Formatting.
- (rs6000_parse_alignment_option): Only set rs6000_alignment_flags
- when rs6000_alignment_string given.
-
-2003-10-13 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12538
- * config/sparc/sparc.c (MUST_SAVE_REGISTER): Delete.
- (sparc_flat_must_save_register_p): New function to decide whether
- a register must be saved/restored in the function prologue/epilogue.
- (sparc_flat_compute_frame_size): Use it instead of MUST_SAVE_REGISTER.
-
-2003-10-12 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/avr/avr.c, config/avr/avr-protos.h: Convert to
- ISO C90 function declarations and definitions.
- * config/sh/sh.c, config/sh/sh-protos.h: Likewise.
-
-2003-10-12 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (*-*-freebsd*): Use tm_defines instead of tiny
- config files which do the same thing.
- * config/freebsd3.h, config/freebsd4.h, config/freebsd5.h,
- config/freebsd6.h: Remove now unnecessary files.
-
-2003-10-12 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-common.c (c_common_truthvalue_conversion): Warn if the
- address of a non-weak function is used as a truth value.
-
-2003-10-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (WORD_REG_USED): Use SP_REG instead of
- a literal.
- * config/h8300/h8300.h (REGNO_OK_FOR_BASE_P): Use MAC_REG
- instead of a literal.
-
-2003-10-12 Hans-Peter Nilsson <hp@bitrange.com>
-
- * doc/extend.texi (Function Attributes): Mention the exceptional
- path for noreturn-marked functions.
-
-2003-10-12 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_decide_inlining): Fix uninitialized variable
- warning.
-
-2003-10-12 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/i386.c (x86_this_parameter): Fix typo.
-
-203-10-11 Jan Hubicka <jh@suse.cz>
-
- * Makefile.in (web.o): New.
- * web.c: New file.
- * rtl.h (web_main): Declare.
- * timervar.def (TV_WEB): New.
- * toplev.c (dump_file_index, dump_file_info): Add DFI_web.
- (rest_of_hanle_web): New.
- (flag_web): New static variable.
- (lang_independent_options): Add "web".
- (rest_of_compilation): Call rest_of_handle_web.
- * invoke.texi (-fweb): Document.
- * common.opt (fweb): New.
- * flags.h (flag_web): New.
- * opts.c (decode_options): Set flag_web at -O3.
-
- * passes.texi (web construction): Document.
- * invoke.texi (-O3): Document that -fweb is enabled.
-
- * regrename.c (regrename_optimize): Deal better with situation when
- replacement failed.
-
- * sched-ebb.c: Include params.h and profile.h
- (schedule_ebbs): Use tracer parameters to discover superblocks
- * Makefile.in (sched-ebb.o): Add dependencies.
-
-2003-10-11 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (negate_mathfn_p): New function to determine whether
- a built-in mathematical function is sign preserving, f(-x) == -f(x).
- Add support for BUILT_IN_ASIN, BUILT_IN_ASINF and BUILT_IN_ASINL.
- (tree_swap_operands_p): Change API to take an additional argument
- indicating that the swapped operands evaluate in reverse order.
- Canonicalize VAR_DECLs and PARM_DECLs last if we can, i.e. neither
- operand side-effects or we don't care about flag_evaluation_order.
- (reorder_operands_p): New function to check whether its safe to
- evaluate the given operands in reverse order.
- (negate_expr_p): We can always negate integer constants unless
- we honor -ftrapv and the signed type would overflow. Only allow
- -(A-B) into B-A if reorder_operands_p says that its OK. Allow
- negation of COMPLEX_CST if both real and imaginary parts can be
- negated. Allow negation through floating point extensions and
- sign-preserving built-in functions.
- (negate_expr): Move the code to negate integers from "fold" to
- here. Always negate integer constants unless we honor -ftrapv
- and the signed type would overflow. Always negate real constants
- unless we honor -ftrapping-math. Only convert -(A-B) into B-A
- if allowed by reorder_operands_p. Add support for COMPLEX_CST.
- Optimize negation through floating point extensions and
- sign-preserving built-in functions (as defined by negate_mathfn_p).
- (fold): Adjust calls to tree_swap_operands_p.
- (fold <NEGATE_EXPR>): Move the remaining negation optimizations
- to negate_expr_p/negate_expr.
- (fold <MINUS_EXPR>): Use reorder_operands_p to check whether we're
- allowed to convert (-A) - B into (-B) - A.
-
-2003-10-11 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_strcmp): Defend against the possibility
- that gen_cmpstrsi may fail: Stabilize the argument list against
- re-evaluation and expand the library call directly using this saved
- argument list if a cmpstrsi sequence can't be generated.
- (expand_builtin_strncmp): Likewise.
-
- * config/i386/i386.md (cmpstrsi, movstrsi): Disable with -Os.
-
-2003-10-11 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/12260
- * simplify-rtx.c (simplify_unary_operation): Simplify all unary
- operations through CONST nodes. Optimize (neg (plus X C)) as
- (minus -C X) for constant values C.
- (simplify_binary_operation): Optimize (minus (neg X) C) as
- (minus -C X) for constant values C.
- (simplify_plus_minus): Avoid creating (neg (const (plus X C)),
- instead create (minus -C X).
-
-2003-10-11 Roger Sayle <roger@eyesopen.com>
-
- * expr.c (expand_expr <PLUS_EXPR>): Let expand_operands call
- safe_from_p for us, once it chooses an evaluation order.
- (expand_expr <MULT_EXPR>): Likewise.
- (expand_expr <MIN_EXPR> <MAX_EXPR>): Likewise. If expand_operands
- places the second operand in "target", swap the operands.
- (do_store_flag): Let expand_operands call safe_from_p for us.
-
-2003-10-11 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/12544
- * function.c (put_var_into_stack): Don't generate ADDRESSOFs
- for DECL_NONLOCAL decls.
-
-2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * expr.c: Follow spelling conventions.
- * final.c: Likewise.
- * optabs.c: Likewise.
- * sched-deps.c: Likewise.
- * sdbout.c: Likewise.
-
-Sat Oct 11 12:24:23 CEST 2003 Jan Hubicka <jh@suse.cz>
-
- * varasm.c (notice_global_symbol): Fix handling of variables; avoid
- re-computing of variable.
-
-2003-10-11 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_return_in_memory): Rename from
- return_in_memory, make static, change signature to match target hook.
- (alpha_setup_incoming_varargs): Make static, change signature to
- match target hook, add code for vms and unicos.
- (TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
- TARGET_PROMOTE_PROTOTYPES, TARGET_STRUCT_VALUE_RTX,
- TARGET_RETURN_IN_MEMORY, TARGET_SETUP_INCOMING_VARARGS,
- TARGET_STRICT_ARGUMENT_NAMING,
- TARGET_PRETEND_OUTGOING_VARARGS_NAMED): New.
- * config/alpha/alpha-protos.h: Update.
- * config/alpha/alpha.h (PROMOTE_FUNCTION_ARGS,
- PROMOTE_FUNCTION_RETURN, RETURN_IN_MEMORY,
- SETUP_INCOMING_VARARGS): Remove.
- * config/alpha/unicosmk.h (SETUP_INCOMING_VARARGS): Remove.
- * config/alpha/vms.h (SETUP_INCOMING_VARARGS): Remove.
-
-2003-10-11 Ian Lance Taylor <ian@wasabisystems.com>
-
- * config/arm/arm.c (arm_regno_class): Handle IWMMXT_GR_REGS.
-
-2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m68k/lb1sf68.asm: Follow spelling conventions.
- * config/m68k/m68k.c: Likewise.
- * config/m68k/m68k.h: Likewise.
- * config/m68k/m68k.md: Likewise.
-
-2003-10-11 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_memcpy): Optimize case when the two
- pointer arguments are the equal, non-volatile and side-effect free.
- (expand_builtin_mempcpy): Likewise.
- (expand_builtin_memmove): Likewise.
- (expand_builtin_strcpy): Likewise.
- (expand_builtin_memcmp): Likewise.
- (expand_builtin_strcmp): Likewise.
- (expand_builtin_strncmp): Likewise.
-
-2003-10-11 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (apply_distributive_law): Enable "distributive" floating
- point optimizations with -funsafe-math-optimizations.
-
-2003-10-11 Andrew Pinski <pinskia@physics.uc.edu>
-
- * genmodes.c (emit_mode_mask) Change MASK to MODE_MASK.
-
-2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m68k/m68k-protos.h: Remove the prototype for
- finalize_pic.
-
-2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m68k/m68k.c: Fix comment typos.
-
-2003-10-11 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k-protos.h (use_return_insn): Change return type from
- int to bool.
- * config/m68k/m68k.c (struct m68k_frame): Add funcdef_no member.
- (current_frame): New global var.
- (m68k_compute_frame_layout): Cache computations in current_frame.
- (m68k_initial_elimination_offset): Use values from current_frame
- instead of recomputing them.
- (use_return_insn): Likewise.
- (m68k_output_function_prologue): Likewise.
- (m68k_output_function_epilogue): Likewise.
- * config/m68k/m68k.h (TARGET_CPU_CPP_PREDEFINES): Fold __PIC__ handling
- inside the block for __pic__.
-
-2003-10-11 Peter Barada <peter@baradas.org>
- Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c (m68k_frame): Move before protos referencing it.
- (m68k_save_reg): Add boolean parameter `interrupt_handler'.
- (m68k_interrupt_function_p): New function.
- (m68k_handle_fndecl_attribute): Ditto.
- (m68k_compute_frame_layout): Ditto.
- (m68k_attribute_table): Define back-end specific attributes.
- (m68k_output_function_epilogue): Emit RTE instruction for interrupt
- functions.
-
-2003-10-11 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/t-uclinux: New target Makefile fragment.
- * config/m68k/uclinux.h: New target macro file.
- * config.gcc (m68k-*-uclinux): New target definition.
-
-2003-10-10 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (builtin_mathfn_code): Generalize to check whether
- the call is to any built-in function by comparing the call's
- argument list against the builtin decl's function type.
-
-2003-10-10 Roger Sayle <roger@eyesopen.com>
-
- * cse.c (constant_pool_entries_regcost): New global variable to
- hold the register cost component of constant_pool_entries_cost.
- (fold_rtx): Calculate constant_pool_entries_regcost at the same
- time as constant_pool_entries_cost.
- (cse_insn): Set both src_folded_cost and src_folded_regcost from
- constant_pool_entries_cost and constant_pool_entries_regcost.
- (cse_main): Initialize constant_pool_entries_regcost to zero.
-
- * optabs.c (expand_unop): Attach a REG_EQUAL note describing
- the semantics of the sequence of bit operations used to negate
- a floating-point value.
- (expand_abs_nojump): Likewise attach a REG_EQUAL note describing
- the semantics of the bit operations used to abs a floating point
- value.
-
-2003-10-11 Bernardo Innocenti <bernie@develer.com>
- Paul Dale <pauli@snapgear.com>
-
- * config/m68k/lb1sf68.asm: Add __PIC__ and __ID_SHARED_LIBRARY__
- support.
- * config/m68k/m68k-none.h (ASM_SPEC): Pass --pcrel to assembler on
- -fpic, -fPIC, -msep-data and -mid-shared-library.
- * config/m68k/m68k.c (m68k_library_id_string): New global variable.
- (override_options): Add -msep-data and -mshared-library-id support.
- (m68k_output_function_prologue): Generate code to load A5 for
- TARGET_ID_SHARED_LIBRARY and TARGET_SEP_DATA.
- (m68k_output_mi_thunk): Emit indirect jump on TARGET_ID_SHARED_LIBRARY.
- (m68k_output_pic_call): New function.
- * gcc/config/m68k/m68k.h (TARGET_SEP_DATA): New target flag.
- (TARGET_ID_SHARED_LIBRARY): Ditto.
- (TARGET_SWITCHES): Add switches for -mid-shared-library and -msep-data.
- * gcc/config/m68k/m68k.md (call): Call m68k_output_pic_call().
- (call_value): Likewise.
-
-2003-10-10 Zack Weinberg <zack@codesourcery.com>
-
- * gengenrtl.c (find_formats, genheader): Make i an unsigned
- int, remove cast of NUM_RTX_CODE.
- * machmode.h: Make the HAVE_MACHINE_MODES #ifdef encompass the
- entire file. Remove the #ifs on GET_MODE_MASK etc and
- GET_MODE_WIDER_MODE etc.
-
-2003-10-10 Eric Christopher <echristo@redhat.com>
-
- * lcm.c (optimize_mode_switching): Change NORMAL_MODE
- to MODE_ENTRY and MODE_EXIT. Add MODE_AFTER for insns
- that set mode.
- * config/sh/sh.h (MODE_ENTRY): New macro.
- (MODE_EXIT): Ditto.
- (MODE_AFTER): Ditto.
- * config/sh/sh.md: Change for MODE_AFTER. Add
- fp_set attribute.
- * doc/tm.texi: Document MODE_AFTER, MODE_ENTRY, and MODE_EXIT.
-
-2003-10-10 Zack Weinberg <zack@codesourcery.com>
-
- * genmodes.c, mode-classes.def: New files.
- * machmode.def: Rewritten to genmodes.c interface.
- * Makefile.in (extra_modes_file): New substitution variable.
- (MACHMODE_H): No longer includes machmode.def or
- @extra_modes_file@; instead, mode-classes.def and insn-modes.h.
- (BUILD_RTL): Add $(BUILD_PREFIX)insn-modes.o.
- (OBJS-common): Add insn-modes.o.
- (STAGESTUFF): Add insn-modes.c, insn-modes.h, s-modes, and
- genmodes$(build_exeext).
- (insn-modes.o, insn-modes.c, insn-modes.h, s-modes, genmodes.o,
- genmodes$(build_exeext), $(BUILD_PREFIX_1)insn-modes.o): New targets.
- (s-genrtl): Don't depend on $(RTL_BASE_H).
- (gengenrtl.o): Don't depend on coretypes.h, $(GTM_H), real.h,
- or $(RTL_BASE_H); just rtl.def.
- * gengenrtl.c: Don't include coretypes.h, tm.h, rtl.h, or
- real.h. Give fake definition of CONST_DOUBLE_FORMAT and
- substitute definition of NUM_RTX_CODE. Add casts to avoid
- warnings.
- * machmode.h: Include insn-modes.h, not machmode.def. Include
- mode-classes.def to define enum mode_class. Tweak definitions
- of GET_MODE_CLASS, GET_MODE_SIZE, GET_MODE_BITSIZE, GET_MODE_MASK,
- GET_MODE_INNER, GET_MODE_WIDER_MODE, GET_CLASS_NARROWEST_MODE.
- (inner_mode_array): Renamed mode_inner.
- (mode_base_align): New.
- * rtl.c (mode_name, mode_class, mode_bitsize, mode_size,
- mode_unit_size, mode_wider_mode, mode_mask_array,
- inner_mode_array, class_narrowest_mode): Delete definitions.
- * stor-layout.c (get_mode_alignment): Use mode_base_align.
- * real.h: Use MIN_MODE_FLOAT and MAX_MODE_FLOAT, not QFmode
- and TFmode, in real_format_for_mode and REAL_MODE_FORMAT.
-
- * config/ip2k/ip2k.h, config/iq2000/iq2000.h:
- No need to define BITS_PER_UNIT.
-
-2003-10-10 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/ia64/ia64.c (ia64_vms_init_libfuncs): New function.
- (ia64_output_function_prologue): Only write .prologue if --with-gnu-as.
- (ia64_initialize_trampoline): If not using GAS, declare trampoline
- as global.
- * config/ia64/ia64.h (ASM_APP_ON, ASM_APP_OFF): Add vers for not GAS.
- (ASM_OUTPUT_DEBUG_LABEL): Likewise.
-
- * stor-layout.c (compute_record_mode): Don't force BLKmode if
- field is zero-length BLKmode.
- * expr.c (expand_expr, case COMPONENT_REF): Handle case of BLKmode
- zero-size references.
-
- * combine.c (distribute_links): Properly test for REG being set.
-
- * config/alpha/alpha.c (alpha_expand_block_mode): Don't use
- gen_lowpart and company except for REG.
-
-2003-10-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa64-hpux.h (LINK_SPEC): Use `-z' option with HP ld.
-
-2003-10-10 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (mips*-*-netbsd*): Remove content-free line.
-
-2003-10-10 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
-
- * gcov-io.h: Check BITS_PER_UNIT when defining gcov_unsigned_t,
- gcov_position_t and gcov_type.
-
-2003-10-09 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * configure.in (HAVE_AS_TLS): Add sh-*-* and sh[34]*-*-* cases.
- * configure: Regenerate.
-
-2003-10-09 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (define_asm_attributes): Specify
- the length of an asm insn more precisely.
-
-2003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris6.h (SUBTARGET_CPP_SPEC): Define.
-
-2003-10-09 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (xtensa_dbx_register_number): Change first
- FP register number to 48 and MAC16 accumulator to 0x210.
-
-2003-10-09 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Remove redundant thread_file setting clauses for
- various *-*-linux* targets.
-
-2003-10-09 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (define_asm_attributes): New.
-
-2003-10-09 Roger Sayle <roger@eyesopen.com>
-
- * optabs.c (prepare_float_lib_cmp): Always attach a REG_EQUAL note
- to the comparison, as emit_libcall_block calls copy_rtx on equiv.
-
-2003-10-09 Dorit Naishlos <dorit@il.ibm.com>
-
- * haifa-sched.c (ok_for_early_schedule): New function.
- (early_queue_to_ready): New function.
- (schedule_block): Allow early removal of insns from Q.
- (schedule_insn): Update INSN_TICK in case of premature
- issue.
- * common.opt (sched_stalled_insns): New flag.
- (sched_stalled_insns_dep): New flag.
- * flags.h: Same above flags.
- * opts.c: Same as above.
- * toplev.c: Same as above.
- * target.h (targetm.sched.is_costly_dependence): New
- hook.
- * target-def.h: Same as above.
- * config/rs6000/rs6000.h: (rs6000_sched_costly_dep):
- Support new flag -msched-costly-dep.
- (DEFAULT_SCHED_COSTLY_DEP): Define.
- * config/rs6000/rs6000.c:
- (rs6000_is_costly_dependence): New function.
- (is_load_insn, is_store_insn): New functions.
- (is_load_insn1, is_store_insn1, is_mem_ref): New
- functions.
- * doc/invoke.texi (-fsched-stalled-insns-dep)
- (-fsched-stalled-insns, -msched-costly-dep): Document
- options.
- * doc/tm.texi (is_costly_dependence): Define new
- scheduler target hook.
-
-2003-10-09 Jason Merrill <jason@redhat.com>
-
- PR c++/6392
- * c-common.c (c_build_qualified_type): Look through arrays first.
- (c_apply_type_quals_to_decl): Look through arrays.
-
- * c-common.c (c_apply_type_quals_to_decl): Unset TREE_READONLY for
- types with constructors.
-
- * coverage.c (build_ctr_info_value): Use build_decl to make a
- VAR_DECL.
- (create_coverage): Likewise.
-
- * stmt.c (resolve_asm_operand_names): Call check_unique_operand_names
- here.
- (expand_asm_operands): Not here.
- (parse_input_constraint): No longer static.
- * tree.h: Declare it.
-
-2003-10-08 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/t-linux (SHLIB_LINK): Override to use a linker script
- libgcc_s.so.
- (SHLIB_INSTALL): Likewise.
-
-2003-10-08 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * doc/install.texi: Remove reference to removed 'pthreads' thread
- option.
-
-2003-10-08 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.md ("abssi2_isel"): Add early clobber to
- operand 2.
-
-2003-10-08 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Don't accept --enable-threads=pthreads. Clean
- up related case statements.
- * configure.in: Don't accept --enable-threads=pthreads,
- decosf1, mach, or os2 (none of which work anyway). Alphabetize
- supported thread files in case clause.
- * configure: Regenerate.
-
-2003-10-08 Geoffrey Keating <geoffk@apple.com>
-
- * function.c (pad_to_arg_alignment): Move 'boundary_in_bytes'
- definition to above SPARC_STACK_BOUNDARY_HACK.
-
-2003-10-08 Jason Merrill <jason@redhat.com>
-
- * c-pretty-print.c (pp_c_postfix_expression)
- <COMPOUND_LITERAL_EXPR>: Fix thinko.
-
-2003-10-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * mklibgcc.in: Don't hide undefined or typeless symbols.
-
-2003-10-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR optimization/12142
- * cse.c (count_reg_usage): In a SET with a REG SET_DEST, count the
- uses of the register in the SET_SRC. Remove unnecessary argument.
- * pa.c (legitimize_pic_address): Before reload, use a scratch register
- for the intermediate result in loading the address of a SYMBOL_REF.
- Set the MEM_NOTRAP_P flag for the MEM. Add a REG_EQUAL to the insn
- which loads the SYMBOL_REF address.
-
-2003-10-08 Timo Kokkonen <tjko@iki.fi>
- Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR bootstrap/12490
- * scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant
- to define the size of the extern_C_braces array. Set it to 200.
- (scan_decls): Abort when extern_C_braces_length is out-of-bounds.
-
-2003-10-08 Carlo Wood <carlo@alinoe.com>
-
- * Makefile.in (gengtype-lex.c): flex 2.5.4[a] doesn't understand
- a space after the -o option. flex 2.5.31 understands both, with
- and without the space. Removed that space.
-
-2003-10-08 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_frame_info): Add cprestore_size field.
- (compute_frame_size): Initialize it. Remove the .cprestore slot
- from args_size.
- (mips_output_function_prologue): Simplify accordingly.
- (mips_debugger_offset): Change the mips16 frame pointer offset from
- current_function_outgoing_args to cfun->machine->frame.args_size.
- (mips_initial_elimination_offset): Likewise.
- (mips_expand_prologue): Likewise.
- (mips_expand_epilogue): Likewise.
-
-2003-10-08 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (EXTRA_CONSTRAINT): Add 'W' constraint.
- (EXTRA_MEMORY_CONSTRAINT): Define.
- (CAN_ELIMINATE): Remove lwu workaround.
- * config/mips/mips.md (*zero_extendsidi2_mem): Enable for mips16 too.
- Use a 'W' constraint for the source operand.
-
-2003-10-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * genopinit.c (main): Output code to declare undefined
- variables.
-
-2003-10-07 Kelley Cook <kcook@gcc.gnu.org>
-
- * gengtype-lex.l: Remove -Wtraditional cruft.
- * Makefile.in (gengtype-lex.c): Likewise.
-
-2003-10-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfgloopmanip.c (fix_irreducible_loops): Initialize e correctly.
-
-2003-10-07 Jason Merrill <jason@redhat.com>
-
- PR c++/12519
- * c-semantics.c (genrtl_cleanup_stmt): Ignore the CLEANUP_DECL if
- it isn't a decl.
-
-2003-10-07 Alexandre Oliva <aoliva@redhat.com>
-
- * gcc.c (cpp_options): Only pass -fworking-directory for -g* if
- not overridden.
- Fixes PR bootstrap/12173.
-
-2003-10-07 Zack Weinberg <zack@codesourcery.com>
-
- * errors.c: Don't include coretypes.h or tm.h.
- (trim_filename): Use IS_DIR_SEPARATOR.
- * Makefile.in: Update dependencies of errors.o and
- $(BUILD_PREFIX_1)errors.o.
-
-2003-10-07 Geoffrey Keating <geoffk@apple.com>
-
- * function.c (pad_to_arg_alignment): Take STACK_POINTER_OFFSET into
- account when aligning arguments.
- * calls.c (STACK_POINTER_OFFSET): Move default from here ...
- * defaults.h (STACK_POINTER_OFFSET): ... to here.
- * config/sparc/sparc.h (STACK_BOUNDARY): Add comment about how
- it's wrong when TARGET_ARCH64 && TARGET_STACK_BIAS.
- (SPARC_STACK_BOUNDARY_HACK): Define.
- * config/rs6000/rs6000.c (function_arg): On non-SVR4 systems,
- arrange for vector parameters to varargs functions to be passed
- in both memory and GPRs when appropriate.
- (rs6000_va_arg): Vector arguments passed in memory are 16-byte
- aligned.
-
- * hooks.c (hook_bool_tree_true): New.
- (hook_rtx_tree_int_null): New.
- (hook_rtx_rtx_null): Use NULL, not 0.
- * hooks.h: Add 'extern' to everything.
- (hook_bool_tree_true): New.
- (hook_rtx_tree_int_null): New.
- * targhooks.c (hook_bool_CUMULATIVE_ARGS_true): New.
- * targhooks.h (hook_bool_CUMULATIVE_ARGS_true): New.
- * config/rs6000/rs6000-protos.h (setup_incoming_varargs): Remove
- prototype.
- * config/rs6000/rs6000.c (rs6000_return_in_memory): New.
- (setup_incoming_varargs): Prototype.
- (TARGET_PROMOTE_FUNCTION_ARGS): Define.
- (TARGET_PROMOTE_FUNCTION_RETURN): Define.
- (TARGET_STRUCT_VALUE_RTX): Define.
- (TARGET_RETURN_IN_MEMORY): Define.
- (TARGET_SETUP_INCOMING_VARARGS): Define.
- (TARGET_STRICT_ARGUMENT_NAMING): Define.
- (TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Define.
- (init_cumulative_args): Use rs6000_return_in_memory.
- (setup_incoming_varargs): Make 'static'.
- * config/rs6000/rs6000.h (PROMOTE_FUNCTION_ARGS): Delete.
- (PROMOTE_FUNCTION_RETURN): Delete.
- (STRUCT_VALUE): Delete.
- (RETURN_IN_MEMORY): Delete.
- (SETUP_INCOMING_VARARGS): Delete.
-
-2003-10-07 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/invoke.texi (Warning Options): Simplify and clarify the
- descriptions of -Wnonnull and -Winit-self.
-
-2003-10-07 Richard Earnshaw <rearnsha@arm.com>
-
- * optabs.c (init_intraclass_conv_libfuncs): Fix order of array
- indicees for floating-point conversersion libcalls.
-
-2003-10-07 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in: Add more comments separating large conceptually
- separate sections.
-
- * configure.in: Clean up thread file logic.
- * configure: Regenerate.
-
-2003-10-07 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/cygming.h (READONLY_DATA_SECTION_ASM_OP): Define.
- (switch_to_section): Handle in_readonly_data.
- * config/i386/winnt.c (i386_pe_asm_named_section): Handle
- readonly data.
-
-2003-10-07 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (cmpsi2_addneg): New ARM pattern. Add peephole2 to generate
- it.
- (cbranchne_decr1): New Thumb pattern.
- * arm.c (arm_addimm_operand): New insn predicate.
- * arm-protos.h: Add a prototype for it.
- * arm.h (PREDICATE_CODES): Add it.
-
-2003-10-07 Dorit Naishlos <dorit@il.ibm.com>
-
- * sched-int.h (sched_info): New field
- sched_max_insns_priority.
- * sched-rgn.c (init_ready_list): Add invocations to
- targetm.sched.adjust_priority.
- (sched_max_insns_priority): Init new field.
- * sched-ebb.c (sched_max_insns_priority): Init new field.
- * haifa-sched.c (set_priorities): Set
- sched_info->sched_max_insns_priority.
- * config/rs6000/rs6000.h:
- (rs6000_sched_restricted_insns_priority_str): Support new
- flag -mprioritize-restricted-insns.
- (DEFAULT_RESTRICTED_INSNS_PRIORITY): Define.
- * config/rs6000/rs6000.c (is_dispatch_slot_restricted): New
- function.
- (rs6000_adjust_priority): Change priority of restricted
- insns, using above new function and new flag.
- * doc/invoke.texi (-mprioritize-restricted-insns): Document
- new option.
-
-2003-10-07 Zack Weinberg <zack@codesourcery.com>
-
- * expr.c (cmpstr_optab, cmpmem_optab): New.
- * genopinit.c: Initialize them.
- * optabs.h: Declare them.
- * optabs.c (init_optabs): Clear them.
- (prepare_cmp_insn): Use cmpstr_optab and cmpmem_optab to find
- block memory compare insns, not conditional chains. Restructure
- the fallback generation of a call to memcmp/bcmp for better
- readability.
-
-2003-10-07 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (MIPS_MAX_FIRST_STACK_STEP): New macro.
- (mips_save_restore_fn): New typedef.
- (mips_add_large_offset_to_sp, mips_emit_frame_related_store): Remove.
- (mips_set_frame_expr, mips_frame_set): Move above prologue code.
- (save_restore_insns): Remove, replacing with...
- (mips_save_restore_reg, mips_for_each_saved_reg): ...these new fns.
- (mips_save_reg, mips_restore_reg): New function.
- (mips_expand_prologue, mips_expand_epilogue): Rework.
- * config/mips/mips.h (MIPS_TEMP1_REGNUM, MIPS_TEMP2_REGNUM): Remove.
- (MIPS_PROLOGUE_TEMP_REGNUM, MIPS_EPILOGUE_TEMP_REGNUM): New macros.
- (MIPS_PROLOGUE_TEMP, MIPS_EPILOGUE_TEMP): New macros.
-
-2003-10-07 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_expand_prologue): Remove unused
- traversal of function arguments.
-
-2003-10-07 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Remove documentation of -mentry.
- * config/mips/mips.c (mips_entry_string, mips_entry): Remove.
- (override_options, mips_save_reg_p): Remove handling.
- (compute_frame_size, mips_output_function_prologue): Likewise.
- (mips_expand_prologue, mips_expand_epilogue): Likewise.
- * config/mips/mips.h (mips_entry_string): Remove declaration.
- (TARGET_OPTIONS): Remove -mentry.
- * config/mips/mips16.S: Remove mention of -mentry.
-
-2003-10-06 Zack Weinberg <zack@codesourcery.com>
-
- * libfuncs.h (LTI_extendsfdf2, LTI_extendsfxf2, LTI_extendsftf2)
- (LTI_extenddfxf2, LTI_extenddftf2, LTI_truncdfsf2, LTI_truncxfsf2)
- (LTI_trunctfsf2, LTI_truncxfdf2, LTI_trunctfdf2, LTI_floatsisf)
- (LTI_floatdisf, LTI_floattisf, LTI_floatsidf, LTI_floatdidf)
- (LTI_floattidf, LTI_floatsixf, LTI_floatdixf, LTI_floattixf)
- (LTI_floatsitf, LTI_floatditf, LTI_floattitf, LTI_fixsfsi, LTI_fixsfdi)
- (LTI_fixsfti, LTI_fixdfsi, LTI_fixdfdi, LTI_fixdfti, LTI_fixxfsi)
- (LTI_fixxfdi, LTI_fixxfti, LTI_fixtfsi, LTI_fixtfdi, LTI_fixtfti)
- (LTI_fixunssfsi, LTI_fixunssfdi, LTI_fixunssfti, LTI_fixunsdfsi)
- (LTI_fixunsdfdi, LTI_fixunsdfti, LTI_fixunsxfsi, LTI_fixunsxfdi)
- (LTI_fixunsxfti, LTI_fixunstfsi, LTI_fixunstfdi, LTI_fixunstfti)
- (extendsfdf2_libfunc, extendsfxf2_libfunc, extendsftf2_libfunc)
- (extenddfxf2_libfunc, extenddftf2_libfunc, truncdfsf2_libfunc)
- (truncxfsf2_libfunc, trunctfsf2_libfunc, truncxfdf2_libfunc)
- (trunctfdf2_libfunc, floatsisf_libfunc, floatdisf_libfunc)
- (floattisf_libfunc, floatsidf_libfunc, floatdidf_libfunc)
- (floattidf_libfunc, floatsixf_libfunc, floatdixf_libfunc)
- (floattixf_libfunc, floatsitf_libfunc, floatditf_libfunc)
- (floattitf_libfunc, fixsfsi_libfunc, fixsfdi_libfunc, fixsfti_libfunc)
- (fixdfsi_libfunc, fixdfdi_libfunc, fixdfti_libfunc, fixxfsi_libfunc)
- (fixxfdi_libfunc, fixxfti_libfunc, fixtfsi_libfunc, fixtfdi_libfunc)
- (fixtfti_libfunc, fixunssfsi_libfunc, fixunssfdi_libfunc)
- (fixunssfti_libfunc, fixunsdfsi_libfunc, fixunsdfdi_libfunc)
- (fixunsdfti_libfunc, fixunsxfsi_libfunc, fixunsxfdi_libfunc)
- (fixunsxfti_libfunc, fixunstfsi_libfunc, fixunstfdi_libfunc)
- (fixunstfti_libfunc): Delete.
- * optabs.h (struct optab_handlers): Break out of struct optab.
- (struct convert_optab, convert_optab, enum convert_optab_index,
- convert_optab_table, sext_optab, zext_optab, trunc_optab,
- sfix_optab, ufix_optab, sfixtrunc_optab, ufixtrunc_optab,
- sfloat_optab, ufloat_optab): New.
- (set_conv_libfunc): Prototype.
- (GEN_FCN): Use C90 indirect call syntax, remove unnecessary cast.
- (trunc_optab): Renamed btrunc_optab.
- * builtins.c (expand_builtin_mathfn): Update to match.
- * optabs.c (extendtab, fixtab, fixtrunctab, floattab): Delete.
- (convert_optab_table, new_convert_optab, init_convert_optab)
- (init_interclass_conv_libfuncs, init_intraclass_conv_libfuncs)
- (set_conv_libfunc): New.
- (can_extend_p, gen_extend_insn, can_fix_p, can_float_p)
- (expand_float, expand_fix): Use new conversion optabs,
- not old insn code tables or long chains of ifs.
- (init_optabs): No need to clear old insn code tables.
- Initialize the new optabs, not the old libfunc array entries.
- Don't handle FIXUNS_TRUNC_LIKE_FIX_TRUNC here.
- * genopinit.c: Initialize conversion optabs, not the
- former insn code tables. Remove unnecessary casts.
- Handle FIXUNS_TRUNC_LIKE_FIX_TRUNC here.
- * expr.c (convert_move): Remove redundant check that
- to_real==from_real. Use the conversion optabs instead
- of long chains of tests of modes. Move partial-integer-mode
- interconversion above all integer conversion. Do not recurse
- on a value forced into a register in the original mode.
-
- * config/gofast.h, config/frv/frv.c, config/ia64/ia64.c
- * config/mips/mips.c, config/pa/pa.c, config/rs6000/rs6000.c
- * config/sparc/sparc.c: Use set_conv_libfunc to adjust entries
- in new conversion optabs; do not reference the old libfunc
- array entries. No need to include libfuncs.h.
-
-2003-10-06 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.c (ix86_expand_setcc): Annotate the floating
- point comparison sequence with a REG_EQUAL note that describes
- the comparison's semantics.
-
-2003-10-06 Roger Sayle <roger@eyesopen.com>
-
- * expr.c (expand_expr <COND_EXPR>): Handle the void type semantics
- of COND_EXPR when expanding the "A op 0 ? FOO : A" optimizations.
-
-2003-10-06 Roger Sayle <roger@eyesopen.com>
- Zack Weinberg <zack@codesourcery.com>
-
- * optabs.c (prepare_float_lib_cmp): Avoid searching for REG_RETVAL
- instruction by using LCT_CONST and then calling emit_libcall_block
- ourselves.
-
-2003-10-06 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
-
- PR optimization/11974
- * optabs.c (expand_unop): Promote libcall outmode according to
- hard_libcall_value.
-
-2003-10-06 Zack Weinberg <zack@codesourcery.com>
-
- * real.h (REAL_MODE_FORMAT): New macro.
- * c-cppbuiltin.c, optabs.c, real.c, config/alpha/alpha.c
- * config/c4x/c4x.c, config/i370/i370.c, config/i386/freebsd.h
- * config/i386/i386.c, config/i960/i960.c, config/ia64/ia64.c
- * config/m68k/m68k.c, config/mips/mips.c, config/rs6000/rs6000.c
- * config/vax/vax.c: Use REAL_MODE_FORMAT instead of referring
- directly to real_format_for_mode array, wherever possible.
-
-2003-10-06 Devang Patel <dpatel@apple.com>
-
- * dwarf2out.c (is_main_source): Remove variable.
- (dwarf2out_start_source_file): Do not check is_main_source.
- Do not reset is_main_source.
- (dwarf2out_init): Do not initialize is_main_source.
-
-2003-10-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (stdio_va_list): Removed _ap fix.
- (irix_stdio_va_list): Don't require leading printf, IRIX 6.5.21
- introduced some multi-line prototypes.
- * fixinc/fixincl.x: Regenerate.
-
-2003-10-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (PREDICATE_CODES): Add stack_operand.
- * config/mips/mips.c (stack_operand): New predicate.
- * config/mips/mips.md: Use it for the destination of mips16 insns
- that store $31.
-
-2003-10-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (*lowsi): Renamed from lowsi.
- (*lowdi): Likewise lowdi.
- (*lowsi_mips16, *lowdi_mips16): New patterns.
- * config/mips/mips.c (mips_const_insns, mips_output_move): Remove
- mips16 CONSTANT_RELOC handling.
- (mips_delegitimize_address): Adjust for new sdata representation.
-
-2003-10-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_arg_info): If MUST_PASS_IN_STACK,
- skip any remaining register arguments.
-
-2003-10-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- * reload.c (find_reloads_subreg_address): Use correct offset for
- paradoxical MEM subregs on big-endian targets.
-
-2003-10-06 Andrew Haley <aph@redhat.com>
-
- * tree.c (get_callee_fndecl): Call
- lang_hooks.lang_get_callee_fndecl.
- * langhooks-def.h (LANG_HOOKS_GET_CALLEE_FNDECL): New.
- (lhd_get_callee_fndecl): New.
-
-2003-10-06 Andrew Pinski <apinski@apple.com>
-
- * config/darwin.c (machopic_non_lazy_ptr_name): Fix off by one
- error in calculating the length of the string.
- (machopic_stub_name): Likewise.
-
-2003-10-06 Roger Sayle <roger@eyesopen.com>
-
- * optabs.c (prepare_float_lib_cmp): Attach a REG_EQUAL note
- describing the return value of the comparison libcall to the
- REG_RETVAL instruction of the emitted sequence.
-
-2003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/12215
- * cse.c (cse_set_around_loop): Emit the move at the beginning
- of the next basic block for trapping sets.
-
-2003-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11637
- * combine.c (adjust_for_new_dest): New function to adjust the
- notes and LOG_LINKS when the dest of an insn has changed.
- (try_combine): Use it when deleting the first insn of a two-insn
- parallel or splitting a two-load parallel.
-
-2003-10-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_classify_constant): Only allow UNSPECs
- if TARGET_EXPLICIT_RELOCS.
-
-2003-10-06 Mark Mitchell <mark@codesourcery.com>
-
- PR bootstrap/12512
- * Makefile.in (info): Use double-colon rules.
- (dvi): Likewise.
- (generated-manpages): Likewise.
- * configure.in: Do not create lang.info, lang.dvi, or
- lang.generated-manpages hooks.
- * configure: Regenerated.
- * objc/Make-lang.in (objc.info): Remove.
- (objc.dvi): Remove.
- (objc.generated-manpages): Remove.
- * doc/sourcebuild.texi: Update description of info, dvi, and
- generated-manpages hooks.
-
-2003-10-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md: Merge mips16 lw/srl pattern with its splitter.
-
-2003-10-05 Andrew Pinski <apinski@apple.com>
-
- * config/darwin.c (machopic_non_lazy_ptr_name): Fix off by one
- errors in memcpy destinations.
- (machopic_stub_name): Likewise.
-
-2003-10-05 Andrew Pinski <apinski@apple.com>
-
- * config/darwin.c (machopic_non_lazy_ptr_name):
- Change strcat to memcpy and add length together.
- (machopic_stub_name): Likewise.
-
-2003-10-05 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Handle new
- signal trampoline codes.
-
-2003-10-05 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (*divsf3): Move description of
- SB-1 F2 erratum from here to...
- (divsf3): Here. Disable if TARGET_FIX_SB1 is set and
- flag_unsafe_math_optimizations is not.
-
-2003-10-05 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/linuxspe.h: Define TARGET_SPE_ABI, TARGET_SPE,
- TARGET_E500, TARGET_ISEL, and TARGET_FPRS.
-
-2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-pretty-print.c: Fix comment typos.
- * c-pretty-print.h: Likewise.
- * calls.c: Likewise.
- * cfgloopmanip.c: Likewise.
- * cgraphunit.c: Likewise.
- * cppfiles.c: Likewise.
- * final.c: Likewise.
- * function.c: Likewise.
- * gcov-io.h: Likewise.
- * gcse.c: Likewise.
- * genoutput.c: Likewise.
- * loop.c: Likewise.
- * postreload.c: Likewise.
- * reg-stack.c: Likewise.
- * regmove.c: Likewise.
- * sched-int.h: Likewise.
- * sched-rgn.c: Likewise.
- * simplify-rtx.c: Likewise.
- * tree-inline.c: Likewise.
- * config/m68hc11/m68hc11.h: Likewise.
- * config/mmix/mmix.c: Likewise.
- * config/mn10300/mn10300.md: Likewise.
- * config/sh/sh.h: Likewise.
-
-2003-10-05 Richard Henderson <rth@redhat.com>
-
- * tree-inline.c (remap_type): New.
- (remap_decl): Use it. Remap DECL_SIZE*.
- (copy_body_r): Use it.
- (walk_tree): Walk TREE_TYPE too.
- (copy_tree_r): Don't walk subtrees of types.
- * tree.c (variably_modified_type_p): Restructure. Consider integer
- types with non-const bounds variably modified.
-
-2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Fix typos.
-
-2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c: Follow spelling conventions.
- * function.c: Likewise.
- * config/c4x/c4x.h: Likewise.
- * config/c4x/c4x.md: Likewise.
- * config/frv/frv.md: Likewise.
- * config/rs6000/aix.h: Likewise.
- * config/rs6000/linux64.h: Likewise.
- * config/xtensa/xtensa.c: Likewise.
-
-2003-10-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-pretty-print.c: Fix comment formatting.
- * cfglayout.c: Likewise.
- * cfgloopanal.c: Likewise.
- * cppcharset.c: Likewise.
- * dbxout.c: Likewise.
- * ggc-page.c: Likewise.
- * ggc.h: Likewise.
- * target.h: Likewise.
-
-2003-10-04 Kelley Cook <kelleycook@wideopenwest.com>
-
- * gengtype-lex.l: Recognize typedef of functions without PARAMS macro.
-
-2003-10-04 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config/v850/v850-c.c, config/v850/v850-protos.h, config/v850/v850.c:
- Convert to ISO C90 function declarations and definitions.
-
-2003-10-04 Zack Weinberg <zack@codesourcery.com>
-
- * libfuncs.h
- (LTI_eqhf2, LTI_nehf2, LTI_gthf2, LTI_gehf2, LTI_lthf2)
- (LTI_lehf2, LTI_unordhf2, LTI_eqsf2, LTI_nesf2, LTI_gtsf2)
- (LTI_gesf2, LTI_ltsf2, LTI_lesf2, LTI_unordsf2, LTI_eqdf2)
- (LTI_nedf2, LTI_gtdf2, LTI_gedf2, LTI_ltdf2, LTI_ledf2)
- (LTI_unorddf2, LTI_eqxf2, LTI_nexf2, LTI_gtxf2, LTI_gexf2)
- (LTI_ltxf2, LTI_lexf2, LTI_unordxf2, LTI_eqtf2, LTI_netf2)
- (LTI_gttf2, LTI_getf2, LTI_lttf2, LTI_letf2, LTI_unordtf2)
- (eqhf2_libfunc, nehf2_libfunc, gthf2_libfunc, gehf2_libfunc)
- (lthf2_libfunc, lehf2_libfunc, unordhf2_libfunc, eqsf2_libfunc)
- (nesf2_libfunc, gtsf2_libfunc, gesf2_libfunc, ltsf2_libfunc)
- (lesf2_libfunc, unordsf2_libfunc eqdf2_libfunc, nedf2_libfunc)
- (gtdf2_libfunc, gedf2_libfunc, ltdf2_libfunc, ledf2_libfunc)
- (unorddf2_libfunc eqxf2_libfunc, nexf2_libfunc, gtxf2_libfunc)
- (gexf2_libfunc, ltxf2_libfunc, lexf2_libfunc, unordxf2_libfunc
- (eqtf2_libfunc, netf2_libfunc, gttf2_libfunc, getf2_libfunc)
- (lttf2_libfunc, letf2_libfunc, unordtf2_libfunc):
- Delete.
- * optabs.h (OTI_eq, OTI_ne, OTI_gt, OTI_ge, OTI_lt, OTI_le)
- (OTI_unord, eq_optab, ne_optab, gt_optab, ge_optab, lt_optab)
- (le_optab, unord_optab): New.
-
- * optabs.c (prepare_float_lib_cmp): Rewrite. Get the libfuncs
- from the code_to_optab table, not a giant switch; use
- swap_condition; do widening only if a comparison function that
- we can call exists in a wider mode, not if a cmp_optab insn or
- libfunc exists in a wider mode; call protect_from_queue
- exactly once on each operand.
- (init_optabs): Initialize the new optabs, not the deleted libfuncs.
-
- * config/gofast.h, config/ia64/ia64.c, config/mips/mips.c
- * config/pa/pa.c, config/rs6000/rs6000.c, config/sparc/sparc.c:
- Set floating point comparison libfuncs using set_optab_libfunc
- on the appropriate optab.
-
- * config/ia64/ia64.c (ia64_hpux_init_libfuncs): Fix typo.
- * config/rs6000/rs6000.c (rs6000_init_libfuncs): Correct ABI
- selector conditionals.
-
-2003-10-04 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/t-m68hc11-gas (MULTILIB_MATCHES): m68hcs12 is
- identical to m68hc12 as far as libraries are concerned.
-
-2003-10-04 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/12446
- * c-typeck.c (convert_for_assignment): Issue an error for
- array to pointer assignment after default conversion.
- (digest_init): Likewise.
-
-2003-10-04 Fariborz Jahanian <fjahanian@apple.com>
-
- * c-decl.c (duplicate_decls): retain DECL_COMMON of old declaration
-
-2003-10-03 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/extend.texi (Function Attributes): Fix title of GNU C
- Preprocessor manual.
- (C++ Extensions): Fix reference to "Predefined Macros" in the
- GNU C Preprocessor manual.
-
-2003-10-04 Richard Earnshaw <reanrsha@arm.com>
-
- * doc/extend.texi: Document how GCC estimates and relies on the size
- of an asm.
-
-2003-10-04 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_pad_arg_upward): Pad floating-point
- arguments downward for big-endian o64.
-
-2003-10-03 Robert Bowdidge <bowdidge@apple.com>
-
- * ggc-page.c (ggc_pch_write_object): Replace fseek() with fwrite() in
- PCH generation, avoiding too-frequent flushes when writing to NFS
- file system.
-
-2003-10-03 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (lookup_category): Mark as 'inline'.
-
-2003-10-03 Alexander Malmberg <alexander@malmberg.org>
- Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (add_method_to_hash_list, lookup_category):
- New functions.
- (lookup_method_in_hash_lists): New parameter indicating whether
- we are messaging 'Class' or 'id'.
- (check_duplicates): Likewise; do not assume all methods will
- be either class or instance methods.
- (generate_category, finish_class): Use lookup_category().
- (add_method): Use add_method_to_hash_list(); insert instance
- methods of root classes into the global class method hash table.
- (add_category): Use lookup_category(); avoid constructing
- duplicate categories.
- (really_start_method): Add method to corresponding @interface,
- if not already there (and if the @interface exists).
- (finish_message_expr, finish_objc): Adjust calls to
- check_duplicates().
-
-2003-10-03 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/9325, PR java/6391
- * fold-const.c (fold_convert): For floating point to integer
- conversions, return the maximum/minimum representable integer
- value if the real constant overflows the destination type.
- * tree.c (real_value_from_int_cst): Allow the type to be NULL,
- meaning don't truncate the result to a floating point mode.
- Simplify the logic by calling real_from_integer directly.
- * simplify-rtx.c (simplify_unary_operation): Implement the
- same semantics for folding floating point to integer conversions
- in RTL.
-
-2003-10-03 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.c (mips_emit_prefetch): Restructure
- to avoid use of arrays, handle indexed prefetch.
- * config/mips/mips.h (ISA_HAS_FP4, ISA_HAS_PREFETCH): Update comments.
- (ISA_HAS_PREFETCHX): New deffine.
- * config/mips/mips.md ("type" attr): Add new "prefetchx" value,
- update comments.
- (prefetch_indexed_di, prefetch_indexed_si): New insns.
-
-2003-10-03 Jeff Sturm <jsturm@one-point.com>
- Roger Sayle <roger@eyesopen.com>
-
- PR optimization/12289
- * calls.c (emit_call_1): Pretend to have popped the arguments
- to noreturn and longjmp functions instead of ignoring them.
- (expand_call): Don't adjust stack_pointer_dela while
- inhibit_defer_pop is set.
-
-2003-10-03 Andreas Schwab <schwab@suse.de>
-
- PR bootstrap/12276
- * configure.in: Check for libunwind on the host only if building
- a native compiler.
- * configure: Regenerated.
-
-2003-10-03 Paolo Carlini <pcarlini@unitus.it>
-
- * unwind-pe.h (read_encoded_value_with_base): Constify u and
- its inizialization cast.
-
-2003-10-03 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/12485
- * config/mips/mips.c (mips_load_got): GOT accesses can't trap.
-
-2003-10-02 Mark Mitchell <mark@codesourcery.com>
-
- PR optimization/12180
- * tree-inline.c (inline_forbidden_p_1): Do not permit inlining of
- functions containing calls to __builtin_next_arg.
-
-2003-10-02 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.c (mips_emit_prefetch): Use operand 3
- in instructions being output.
- * config/mips/mips.md (prefetch_si_address): Change third
- operand's constraint letter to 'I'.
- (prefetch_di_address): Likewise.
- (prefetch_si, prefetch_di): Set third operand to const0_rtx.
-
-2003-10-02 Zack Weinberg <zack@codesourcery.com>
-
- * system.h: Poison macros obsoleted by earlier patch.
- * config/cris/cris.c: C90-ify a function definition.
-
-2003-10-02 Josef Zlomek <zlomekj@suse.cz>
-
- PR/12292
- * combine.c (make_field_assignment): Check whether rtx's code
- is CONST_INT before using INTVAL.
-
-2003-10-02 Josef Zlomek <zlomekj@suse.cz>
-
- * cgraph.c (cgraph_node): Use INSERT instead of 1 in
- htab_find_slot_with_hash.
- (cgraph_node_for_identifier): Use NO_INSERT.
- (cgraph_remove_node): Use NO_INSERT.
- (cgraph_varpool_node): Use INSERT.
- (cgraph_varpool_node_for_identifier): Use NO_INSERT.
-
-2003-10-02 Josef Zlomek <zlomekj@suse.cz>
-
- Waldek Hebisch <hebisch@math.uni.wroc.pl>
- PR/12072
- * varasm.c (compare_constant): Fix thinko.
-
-2003-10-02 Richard Sandiford <rsandifo@redhat.com>
-
- * config/frv/frv.c (frv_issue_rate): New function.
- (frv_pack_insns): Use it.
- (TARGET_SCHED_ISSUE_RATE): Define.
-
-2003-10-02 Steven Bosscher <s.bosscher@student.tudelft.nl>
-
- * config/mcore/mcore.c: Convert to ISO C90 function declarations
- and definitions.
- * config/mcore/mcore.h: Likewise.
- * config/mcore/mcore-protos.h: Likewise.
-
-2003-10-02 Richard Sandiford <rsandifo@redhat.com>
-
- * config/frv/frv.c (frv_use_dfa_pipeline_interface): New function.
- (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define.
-
-2003-10-01 Per Bothner <pbothner@apple.com>
-
- * c-lex.c (src_line): Remove unneeded static variable.
- (cb_line_change): Set input_line directly, instead of src_line.
- (get_non_padding_token): We no longer need to compensate for the
- "horrible things" the C++ front-end does with the current line number,
-
- * cpplib.c (_cpp_pop_buffer): Do generate a _cpp_do_file_change
- callback even when popping the main file.
- * c-lex.c (fe_file_change): Handle a NULL new_map.
- * fix-header.c (cb_file_change): Likewise.
- * c-ppoutput.c (pp_file_change): Likewise.
-
- * cppinit.c (cpp_read_main_file): Split into two functions:
- Distribute _cpp_stack_file call over the two functions.
- (cpp_find_main_file): New function.
- Don't call _cpp_do_file_change even if working_directory flag set.
- (cpp_push_main_file): New function.
- * cppfiles.c (_cpp_find_failed): New helper function.
- (find_file): Made non-static and renamed to _cpp_find_file.
- (_cpp_stack_file): No longer needed. But note the following.
- (stack_file): Made non-static and renamed to _cpp_stack_file.
- * fix-header.c (cpp_read_main_file): Replace cpp_read_main_file
- call with calls to cpp_find_main_file and cpp_push_main_file.
- (search_path_head): If there is no current buffer, use main_file.
- * cpphash.h: Update function declarations.
- * cpplib.h: Update function declarations.
-
- * c-opts.c (c_common_post_options): Don't call cpp_find_main_file yet.
- (c_common_parse_file): No longer need to call cpp_read_main_file
- when file_index > 0 (as in multi-file or server compiation).
- (finish_options): Change to <built-in> is an LC_ENTER, not LC_RENAME
- as this now happens before cpp_push_main_file.
- (push_command_line_include): When done with options, pass LC_LEAVE
- instead of LC_RENAME to cpp_change_file and finally cpp_push_main_file.
- (fe_file_change): Handle NULL new_map, and simplify.
- * cpplex.c (_cpp_get_fresh_line): Revert my no-longer-needed
- 08-28 change, since we're never called with a NULL buffer.
- (_cpp_lex_direct): Likewise.
- * cpptrad.c (_cpp_read_logical_line_trad): Likewise.
- Return false if buffer is NULL at end.
-
- * cpplex.c (_cpp_get_fresh_line): Return value now just depends on
- whether pfile->buffer is NULL after pop, ignoring return_at_eof.
- * cpphash.h (struct cpp_buffer): Remove unused return_at_eof field.
- * cpplib.c (cpp_push_buffer): Since we no longer set return_at_eof,
- remove the unused return_at_eof parameter.
- * cppfiles.c, cpplib.c, cppmacro.c, cpppch.c, fix-header.c:
- Update callers of cpp_push_buffer.
-
-2003-10-01 Zack Weinberg <zack@codesourcery.com>
-
- * target.h (init_libfuncs): New hook.
- * target-def.h: Default TARGET_INIT_BUILTINS and
- TARGET_INIT_LIBFUNCS to hook_void_void. Add
- TARGET_INIT_LIBFUNCS to TARGET_INITIALIZER.
- * builtins.c (default_init_builtins): Delete.
- * expr.h (default_init_builtins): Delete prototype.
- * doc/tm.texi: Document TARGET_INIT_LIBFUNCS and US_SOFTWARE_GOFAST.
- Tweak documentation of TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL.
- Remove documentation of INIT_TARGET_OPTABS, MULSI3_LIBCALL,
- DIVSI3_LIBCALL, UDIVSI3_LIBCALL, MODSI3_LIBCALL, UMODSI3_LIBCALL,
- MULDI3_LIBCALL, DIVDI3_LIBCALL, UDIVDI3_LIBCALL, MODDI3_LIBCALL,
- and UMODDI3_LIBCALL,
-
- * Makefile.in (optabs.o): Depends on target.h.
- * defaults.h: Provide default for FLOAT_LIB_COMPARE_RETURNS_BOOL.
- * optabs.c: Include target.h.
- (prepare_float_lib_cmp): No need for #ifdef around use of
- FLOAT_LIB_COMPARE_RETURNS_BOOL.
- (set_optab_libfunc): New function.
- (init_optabs): Delete use of all *_LIBCALL defines.
- Call targetm.init_libfuncs not INIT_TARGET_OPTABS.
- * optabs.h: Prototype set_optab_libfunc.
-
- * config.gcc: Remove all references to pa/long_double.h,
- ia64/hpux_longdouble.h, and gofast.h.
- (mips-*-*): When --enable-gofast, just add US_SOFTWARE_GOFAST
- to tm_defines; don't set INIT_SUBTARGET_OPTABS or change tm_file.
-
- * config/alpha/alpha.c, config/c4x/c4x.c, config/cris/cris.c
- * config/frv/frv.c, config/h8300/h8300.c, config/i860/i860.c
- * config/ia64/ia64.c, config/ip2k/ip2k.c, config/m68hc11/m68hc11.c
- * config/mips/mips.c, config/pa/pa.c, config/rs6000/rs6000.c
- * config/sparc/sparc.c, config/vax/vax.c:
- Provide a definition for TARGET_INIT_LIBFUNCS. Where
- necessary, include optabs.h, libfuncs.h, and/or config/gofast.h.
-
- * config/alpha/unicosmk.h, config/alpha/vms.h, config/c4x/c4x.h
- * config/avr/avr.h, config/cris/cris.h, config/frv/frv.h
- * config/h8300/h8300.h, config/i860/i860.h, config/ip2k/ip2k.h
- * config/iq2000/iq2000.h, config/m68hc11/m68hc11.h, config/mips/mips.h
- * config/rs6000/aix.h, config/rs6000/sysv4.h, config/sparc/elf.h
- * config/sparc/lite.h, config/sparc/netbsd-elf.h, config/sparc/sol2.h
- * config/sparc/sparc.h, config/v850/v850.h, config/vax/vax.h
- * config/vax/elf.h: Don't define or use INIT_TARGET_OPTABS,
- INIT_SUBTARGET_OPTABS, or any *_LIBCALL macros.
-
- * config/ia64/hpux.h: Redefine INTEL_EXTENDED_IEEE_FORMAT to 0.
- Set TARGET_INIT_LIBFUNCS and FLOAT_LIB_COMPARE_RETURNS_BOOL here.
- * config/pa/pa-hpux.h: Define LONG_DOUBLE_TYPE_SIZE,
- HPUX_LONG_DOUBLE_LIBRARY, and FLOAT_LIB_COMPARE_RETURNS_BOOL here.
- * config/ia64/hpux_longdouble.h, config/pa/long_double.h: Delete.
-
- * config/rs6000/xcoff.h: Don't define RS6000_ITRUNC nor RS6000_UITRUNC.
- * config/sparc/sparc.h: Default SUN_CONVERSION_LIBFUNCS and
- SUN_INTEGER_MULTIPLY_64 to 0.
- * config/sparc/sol2.h: Redefine SUN_CONVERSION_LIBFUNCS and
- SUN_INTEGER_MULTIPLY_64 to 1.
- * config/sparc/elf.h: Redefine SUN_CONVERSION_LIBFUNCS and
- SUN_INTEGER_MULTIPLY_64 to 0.
- * config/sparc/lite.h, config/sparc/liteelf.h, config/sparc/sp86x-elf.h:
- Define US_SOFTWARE_GOFAST.
- * config/vax/vax.h: Default TARGET_ELF to 0.
- * config/vax/elf.h: Redefine TARGET_ELF to 1.
-
- * config/gofast.h: Don't define any macros here. Provide one
- static function, gofast_maybe_init_libfuncs, which does what
- INIT_GOFAST_LIBFUNCS used to do but only if US_SOFTWARE_GOFAST
- is already defined. Do not clear negation libfuncs. Do
- not mess with HFmode, XFmode, or TFmode libfuncs.
-
- * config/avr/avr.c (avr_init_once): #if 0 out; mark FIXME.
-
-2003-10-01 Kelley Cook <kelleycook@wideopenwest.com>
-
- PR C/12466
- * c-parse.in (parmlist_2): Mark declaration with an ellipsis as ISO C.
-
-2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/xm-iris5.h: Remove, unnecessary.
- * config.build (mips-sgi-irix5*): Remove.
- (mips-sgi-irix6*o32): Likewise.
- * config.gcc (mips-sgi-irix6*o32): Remove xm_file.
- (mips-sgi-irix5cross64): Likewise.
- (mips-sgi-irix5*): Likewise.
- * config.host (mips-sgi-irix5*): Remove.
- (mips-sgi-irix6*o32): Likewise.
-
-2003-10-01 Zack Weinberg <zack@codesourcery.com>
-
- * dbxout.c (dbxout_fptype_value): Delete.
- (dbxout_type): Emit R3 for all COMPLEX_TYPEs.
-
-2003-10-01 Alexandre Oliva <aoliva@redhat.com>
-
- * output.h (compute_reloc_for_constant): Declare.
- * varasm.c (compute_reloc_for_constant): Extract from...
- (output_addressed_constants): ... here. Adjust all callers.
-
-2003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * aclocal.m4: Add hpux10* and hpux11.00 to /dev/zero blacklist.
- * configure: Rebuilt.
-
-2003-10-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * fold-const.c (make_range): When handling unsigned, don't reverse
- range if high bound is zero.
-
-2003-09-30 Alexandre Oliva <aoliva@redhat.com>
-
- * config/frv/frv.h (PREDICATE_CODES): Added
- condexec_si_media_operator, condexec_sf_add_operator and
- condexec_sf_conv_operator. Removed condexec_sf_binary_operator
- and condexec_sf_unary_operator.
-
-2003-10-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * aclocal.m4: Add ultrix* to /dev/zero blacklist.
- * configure: Rebuilt.
-
-2003-10-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * except.h (MUST_USE_SJLJ_EXCEPTIONS): Revert 2003-09-23 change.
- Allow override.
- * doc/tm.texi (MUST_USE_SJLJ_EXCEPTIONS): Document.
-
-2003-09-23 David S. Miller <davem@redhat.com>
-
- * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Undefine
- before redefining.
- * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Likewise.
-
-2003-10-01 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/cris/cris-protos.h, config/cris/cris.c: Convert to ISO
- C90 function declarations and definitions.
-
-2003-10-01 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (cris-*-linux*): Revert mistaken commit.
-
-2003-10-01 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11753
- * config/sparc/sparc.md (length attribute) [fcc branch]: Add 1 to
- the length in the non-V9 case.
-
-2003-09-30 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes): Honor
- DWARF_ALT_FRAME_RETURN_COLUMN.
- * unwind-dw2.c (dwarf_reg_size_table): Expand by one.
- (_Unwind_GetGR, _Unwind_SetGR): Validate lookup column.
- (uw_frame_state_for): Return end-of-stack for null return address.
- * doc/tm.texi (DWARF_ALT_FRAME_RETURN_COLUMN): Add.
-
- * config/alpha/alpha.c (alpha_sa_mask): Add r31 for eh_return.
- (alpha_expand_prologue): Store a zero for it.
- (alpha_expand_epilogue): Don't reload it.
- * config/alpha/alpha.h (DWARF_ALT_FRAME_RETURN_COLUMN): New.
- * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Use column 64
- for the sigframe return address.
-
-2003-09-30 Kelley Cook <kelleycoook@wideopenwest.com>
-
- * sdbout.c: Convert to ISO C90 prototypes.
- * objc/objc-act.c: Likewise.
-
-2003-09-30 Kelley Cook <kelleycoook@wideopenwest.com>
-
- * config/i386/cygwin1.c: Convert to ISO C90 prototypes.
- * config/i386/winnt.c: Likewise.
- * config/i386/cygming.h: Likewise.
-
-2003-09-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Fold (A & ~B) - (A & B) into
- (A ^ B) - B for any B.
-
-2003-09-30 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (arm*-*-kaos*, i[34567]86-*-kaos*, powerpc-*-kaos*,
- powerpcle-*-kaos*, strongarm-*-kaos*): Disable fixproto.
-
-2003-09-30 Richard Earnshaw <rearnsha@arm.com>
-
- * arm/ieee754-sf.S: Tidy formatting.
-
-2003-09-30 Nicolas Pitre <nico@cam.org>
-
- * arm/lib1funcs.asm (ARM_DIV_MOD_BODY): Split into ARM_DIV_BODY
- and ARM_MOD_BODY.
- (ARM_MOD_BODY): Rewritten. added clz insns for __ARM_ARCH__ >= 5.
- (ARM_DIV_BODY): Added clz insns for __ARM_ARCH__ >= 5,
- added better divisor alignment in the other case.
- (ARM_DIV2_ORDER): Added, finds the order of a single bit divisor.
- (__divsi3, __udivsi3, __modsi3, __umodsi3): rewritten using the
- macros above, add fast exits for divisor >= dividend, etc.
-
-2003-09-30 Nicolas Pitre <nico@cam.org>
-
- * arm/ieee754-df.S: Split compilation of fixunsdfsi from
- L_fixdfsi target.
- * arm/t-arm-elf (LIB1ASMFUNCS): Add _fixunsdfsi.
-
-2003-09-30 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Default use_fixproto to 'no'.
-
-2003-09-30 Richard Sandiford <rsandifo@redhat.com>
-
- PR optimization/12345
- * config/mips/mips-protos.h (mips_restore_gp): Remove.
- (mips_gp_save_slot): Declare.
- * config/mips/mips.c (mips_restore_gp): Remove in favor of...
- (mips_gp_save_slot): ...this new function.
- * config/mips/mips.md (exception_receiver): Use mips_gp_save_slot
- and mips_output_move to generate the output template.
- (call_internal): Force splitting if TARGET_SPLIT_CALLS. Don't emit
- a gp load after a noreturn call. Load the gp using a move rather
- than an exception_receiver pattern.
- (call_value_internal, call_value_multiple_internal): Likewise.
- (call_split, call_value_split, call_value_multiple_split): Clobber $28.
-
-2003-09-30 Carlo Wood <carlo@alinoe.com>
-
- PR debug/12319
- * cfglayout.c (insn_scope): Use prologue_locator and
- epilogue_locator; return the outer function scope for
- pro- and epilogue insns.
-
-2003-09-29 Zack Weinberg <zack@codesourcery.com>
-
- * objc/objc-act.c (encode_type): Encode INTEGER_TYPEs and
- REAL_TYPEs based on the bitsize of the type's mode, not the
- mode directly.
-
-2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * dwarf2out.c (default_eh_frame_section): Split into ...
- (named_section_eh_frame_section, collect2_eh_frame_section): ... new
- functions.
- * output.h (named_section_eh_frame_section): Declare.
- (collect2_eh_frame_section): Likewise.
-
-2003-09-29 Zack Weinberg <zack@codesourcery.com>
-
- * real.c (real_sqrt): Use get_canonical_qnan directly.
-
- * dwarf2out.c (add_const_value_attribute): Use real_to_target.
-
- * varasm.c (assemble_real): Use real_to_target directly,
- calculate the number of significant elements of the result
- array and write them out in a loop, instead of using a giant
- switch statement to pick the correct REAL_VALUE_TO_TARGET_*
- macro.
-
-2003-09-29 Jan Hubicka <jh@suse.cz>
-
- PR c++/12175
- * varasm.c (notice_global_symbol): Discard external symbols.
-
- PR optimization/12286
- * gcov-io.c (gcov_read_words): Fix memmove call.
- * profile.c (compute_branch_probabilities): Add extra sanity checks.
-
-2003-09-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.gcc (sparc-*-solaris2*): Handle Solaris 10 and up like
- Solaris 7-9.
-
- * fixinc/inclhack.def (solaris_widec): Replace solaris2.[0-5]* by
- wildcards which explicitly match micro versions.
- * fixinc/fixincl.x: Regenerate.
-
-2003-09-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Fold (A & ~B) - (A & B) into
- (A ^ B) - B, where B is any power of 2 minus 1.
-
-2003-09-29 Jan Hubicka <jh@suse.cz>
-
- * libgcov.c (gcov_exit): Fix two pastos.
-
-2003-09-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*tst_extzv_1_n): Combine with the
- define_split immediately below to form define_insn_and_split.
-
-2003-09-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*tstsi_variable_bit): New.
- (*tstsi_variable_bit_qi): Likewise.
-
-2003-09-28 Phil Edwards <phil@codesourcery.com>
-
- * doc/cppopts.texi: Use 'dashMP' instead of '-MP' as a cross-
- reference name.
-
-2003-09-28 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (duplicate_decls): Copy DECL_SOURCE_LOCATION, not
- file and line separately.
-
-2003-09-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*adddi3_carry1_cc", "*adddi3_carry1_cconly",
- "*adddi3_carry2_cc", "*adddi3_carry2_cconly", "*subdi3_borrow_cc",
- "*subdi3_borrow_cconly"): New insns.
- ("*addsi3_sub", "*subsi3_sub"): Remove.
- ("*subdi3_cc", *subdi3_cconly"): Use only if TARGET_64BIT.
- ("*subsi3_cc"): Fix op_type attribute.
-
-2003-09-28 Richard Henderson <rth@redhat.com>
-
- * stmt.c (expand_asm_operands): Take a location_t, instead of
- individual file and line.
- * c-typeck.c (c_expand_asm_operands): Likewise.
- * tree.h (expand_asm_operands): Update decl.
- * c-common.h (c_expand_asm_operands): Likewise.
- * c-semantics (genrtl_asm_stmt): Update call.
-
-2003-09-28 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.c (legitimize_pic_address): Check
- SYMBOL_REF_LOCAL_P, not ENCODED_SHORT_CALL_ATTR_P.
- (arm_assemble_integer): Likewise.
-
-2003-09-28 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/pdp11/pdp11-protos.h, config/pdp11/pdp11.c,
- config/c4x/c4x-c.c, config/c4x/c4x-protos.h, config/c4x/c4x.c,
- config/c4x/c4x.h:
- Convert to ISO C90 function declarations and definitions.
-
-2003-09-28 Steven Bosscher <steven@gcc.gnu.org>
-
- * config/stormy16/stormy16.c, config/stormy16/stormy16-protos.h:
- Convert to ISO C90 function declarations and definitions.
-
-2003-09-28 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_constant_info): Add reloc field.
- (mips_classify_constant): Initialize it. Always set SYMBOL to the
- underlying symbol, not to an unspec.
- (mips_delegitimize_address, print_operand): Clean up accordingly.
-
-2003-09-28 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips16_gp_pseudo_reg): Remove.
- * config/mips/mips.h (LEGITIMATE_CONSTANT_P): Remove orphaned comment.
- * config/mips/mips.c (mips_reloc_offset_ok_p): New function.
- (mips_classify_constant): Use it.
- (mips_splittable_symbol_p): Add an offset argument.
- (mips_classify_address): Adjust call accordingly.
- (mips_legitimize_symbol): Handle sdata references with LO_SUM rather
- than a relocation unspec. Update call to mips_splittable_symbol_p.
- Generalize the code that copes with symbols + invalid offsets.
- (print_operand): Allow '%R' to be applied to small data addresses.
- (mips_reloc_string): Remove RELOC_GPREL16.
- (mips_sdata_pointer): Renamed from mips16_gp_pseudo_reg. Return $gp
- for TARGET_EXPLICIT_RELOCS. Return null if we can't use gp-relative
- relocation operators.
- * config/mips/mips.md (RELOC_GPREL16): Remove. Shuffle other reloc
- constants accordingly.
-
-2003-09-27 Roger Sayle <roger@eyesopen.com>
-
- * toplev.c (flag_evaluation_order): New global variable.
- * flags.h (flag_evaluation_order): Prototype here.
- * expr.c (expand_operands): If we need to preserve observable
- evaluation order, protect exp1 from clobbering exp0's result.
-
-2003-09-28 Andreas Jaeger <aj@suse.de>
-
- * c-decl.c (finish_function): Convert definition to ISO C90.
- * ifcvt.c (mark_loop_exit_edges): Likewise.
- * ra-rewrite.c (emit_colors): Likewise.
-
-2003-09-27 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (alpha*-dec-osf[45]*): Disable fixproto.
- * config.gcc (arm*-*-uclinux*): Disable fixproto.
- * config.gcc (powerpc-*-eabispe*, powerpc-*-eabisimaltivec*,
- powerpc-*-eabialtivec*): Disable fixproto.
-
-2003-09-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/12340
- * loop.h (struct induction): Document the new semantics
- of the 'same' field for bivs.
- * unroll.c (biv_total_increment): Don't count the same
- biv increment several times.
- (loop_iterations) [GENERAL_INDUCT]: Likewise.
-
-2003-09-27 Graham Stott <graham.stott@btinternet.com>
-
- * unroll.c (loop_interations)[GT]: Add missing break.
-
-2003-09-27 Kelley Cook <kcook@gcc.gnu.org>
-
- * config/chorus.h, config/darwin-c.c, config/darwin-protos.h,
- config/darwin.c, config/darwin.h, config/dbx.h, config/dbxcoff.h,
- config/dbxelf.h, config/elfos.h, config/fp-bit.h,
- config/freebsd-nthr.h, config/freebsd-spec.h, config/freebsd.h,
- config/freebsd3.h, config/freebsd4.h, config/freebsd5.h,
- config/freebsd6.h, config/netbsd-aout.h, config/netbsd-elf.h,
- config/netbsd.h, config/netware.h, config/openbsd-oldgas.h,
- config/openbsd.h, config/ptx4.h, config/alpha/alpha-protos.h,
- config/alpha/alpha.c, config/alpha/alpha.h, config/alpha/alpha.md,
- config/alpha/elf.h, config/alpha/ev4.md, config/alpha/ev5.md,
- config/alpha/ev6.md, config/alpha/freebsd.h, config/alpha/linux-elf.h,
- config/alpha/linux.h, config/alpha/netbsd.h, config/alpha/openbsd.h,
- config/alpha/osf.h, config/alpha/osf5.h, config/alpha/unicosmk.h,
- config/alpha/vms-cc.c, config/alpha/vms-crt0-64.c,
- config/alpha/vms-crt0.c, config/alpha/vms-dwarf2.asm,
- config/alpha/vms-dwarf2eh.asm, config/alpha/vms-ld.c,
- config/alpha/vms-psxcrt0-64.c, config/alpha/vms-psxcrt0.c,
- config/alpha/vms.h, config/alpha/vms64.h, config/alpha/vms_tramp.asm,
- config/alpha/xm-vms.h, config/arc/arc-modes.def,
- config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h,
- config/arc/arc.md, config/arc/initfini.c, config/arc/lib1funcs.asm,
- config/avr/avr-protos.h, config/avr/avr.c, config/avr/avr.h,
- config/avr/avr.md, config/d30v/d30v-protos.h, config/d30v/d30v.h,
- config/d30v/d30v.md, config/fr30/fr30-protos.h, config/fr30/fr30.c,
- config/fr30/fr30.h, config/fr30/fr30.md, config/fr30/lib1funcs.asm,
- config/frv/cmovd.c, config/frv/cmovh.c, config/frv/cmovw.c,
- config/frv/frv-abi.h, config/frv/frv-asm.h, config/frv/frv-modes.def,
- config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
- config/frv/frv.md, config/frv/frvbegin.c, config/frv/frvend.c,
- config/frv/lib1funcs.asm, config/h8300/clzhi2.c, config/h8300/ctzhi2.c,
- config/h8300/parityhi2.c, config/h8300/popcounthi2.c,
- config/i370/i370-c.c, config/i370/i370-protos.h, config/i370/i370.c,
- config/i370/i370.h, config/i370/i370.md, config/i370/linux.h,
- config/i370/mvs.h, config/i370/oe.h, config/i386/darwin.h,
- config/i960/i960-c.c, config/i960/i960-coff.h,
- config/i960/i960-modes.def, config/i960/i960-protos.h,
- config/i960/i960.c, config/i960/i960.h, config/i960/i960.md,
- config/i960/rtems.h, config/ia64/elf.h, config/ia64/ia64.h,
- config/m32r/initfini.c, config/m32r/m32r-protos.h, config/m32r/m32r.c,
- config/m32r/m32r.h, config/m32r/m32r.md, config/m68hc11/larith.asm,
- config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c,
- config/m68hc11/m68hc11.h, config/m68hc11/m68hc11.md,
- config/m68hc11/m68hc12.h, config/m68k/coff.h, config/m68k/crti.s,
- config/m68k/crtn.s, config/m68k/hp320.h, config/m68k/hp320base.h,
- config/m68k/lb1sf68.asm, config/m68k/linux.h, config/m68k/m68020-elf.h,
- config/m68k/m68k-aout.h, config/m68k/m68k-none.h,
- config/m68k/m68k-protos.h, config/m68k/m68k.c, config/m68k/m68k.h,
- config/m68k/m68k.md, config/m68k/m68kelf.h, config/m68k/m68kv4.h,
- config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
- config/m68k/rtemself.h, config/m68k/sgs.h, config/mcore/lib1.asm,
- config/mcore/mcore-elf.h, config/mcore/mcore-pe.h,
- config/mcore/mcore-protos.h, config/mcore/mcore.c,
- config/mcore/mcore.md, config/mips/elf.h, config/mips/elf64.h,
- config/mips/elforion.h, config/mips/iris5.h, config/mips/iris6.h,
- config/mips/iris6gld.h, config/mips/irix6-libc-compat.c,
- config/mips/linux.h, config/mips/mips-protos.h, config/mips/mips.c,
- config/mips/mips.h, config/mips/mips.md, config/mips/netbsd.h,
- config/mips/openbsd.h, config/mips/r3900.h, config/mips/rtems.h,
- config/mips/vr.h, config/mn10300/linux.h,
- config/mn10300/mn10300-protos.h, config/mn10300/mn10300.c,
- config/mn10300/mn10300.h, config/mn10300/mn10300.md,
- config/ns32k/__unorddf2.c, config/ns32k/__unordsf2.c,
- config/ns32k/netbsd.h, config/ns32k/ns32k-protos.h,
- config/ns32k/ns32k.c, config/ns32k/ns32k.h, config/ns32k/ns32k.md,
- config/pdp11/2bsd.h, config/pdp11/pdp11-modes.def,
- config/pdp11/pdp11-protos.h, config/pdp11/pdp11.c,
- config/pdp11/pdp11.h, config/pdp11/pdp11.md, config/rs6000/biarch64.h,
- config/rs6000/default64.h, config/sh/coff.h, config/sh/crt1.asm,
- config/sh/crti.asm, config/sh/crtn.asm, config/sh/elf.h,
- config/sh/embed-elf.h, config/sh/linux.h, config/sh/little.h,
- config/sh/netbsd-elf.h, config/sh/rtems.h, config/sh/rtemself.h,
- config/sh/sh-protos.h, config/sh/sh.c, config/sh/sh.h,
- config/sh/sh.md, config/sh/sh64.h, config/sh/shmedia.h,
- config/sh/sshmedia.h, config/sh/ushmedia.h, config/sparc/pbd.h,
- config/sparc/sparc.h, doc/install-old.texi, fixinc/fixinc.ptx,
- fixinc/fixinc.svr4: GNU CC -> GCC.
-
-2003-09-26 Loren James Rittle <ljrittle@acm.org>
-
- * objc/objc-act.c (tm_p.h): Tweak order.
- * objc/Make-lang.in (objc/objc-act.o): Add $(TM_P_H).
-
-2003-09-26 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (hppa*64*-*-linux* | parisc*64*-*-linux*):
- Include t-slibgcc-elf-ver and t-linux in tmake_file.
- * config.gcc (hppa*64*-*-linux* | parisc*64-*-linux*):
- Disable fixproto.
- * config.gcc (i960-*-coff*, m68k-*-aout*, sparclite-*-coff*):
- Disable fixproto.
- * config.gcc (i[34567]86-*-solaris2*, sparc64-*-solaris2*,
- sparcv9-*-solaris2*, sparc-*-solaris2*): Disable fixproto.
-
- * config/i386/unix.h: Remove (unused) DEFAULT_ASSEMBLER_DIALECT.
-
-2003-09-26 Loren James Rittle <ljrittle@acm.org>
-
- * config/i386/i386.h (ix86_return_in_memory): Revert my last patch.
- * objc/objc-act.c (tm_p.h): Include.
-
-2003-09-26 Per Bothner <pbothner@apple.com>
-
- * dbxout.c (dbxout_typedefs): Output typedefs in forward order.
- No longer any need to reverse by recursion.
-
-2003-09-26 Roger Sayle <roger@eyesopen.com>
- Richard Henderson <rth@redhat.com>
-
- PR optimization/11741
- * gcse.c (pre_insert_copy_insn): Tweak the logic for finding the
- appropriate set to match that in hash_scan_insn. Fall back to
- the original copy method, if we can't validate changing insn.
- (pre_delete): Only delete instructions that have a single_set,
- instead of aborting when we encounter an PARALLEL insn with more
- then one SET.
-
-2003-09-26 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390.md ("builtin_setjmp_setup"): Insn deleted.
- ("builtin_longjmp"): Insn deleted.
- ("save_stack_nonlocal"): Save literal pool base pointer behind
- backchain and stack pointer.
- ("restore_stack_nonlocal"): Restore literal pool base pointer.
- * config/s390/s390.h (STACK_SAVEAREA_MODE): Double size of
- the stack save area for the nonlocal goto case.
-
-2003-09-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR bootstrap/12358
- * pa.c (output_bvb): Fix typo.
-
-2003-09-26 Richard Sandiford <rsandifo@redhat.com>
-
- * expmed.c (store_bit_field): Don't search for an integer mode
- unless we need the result.
-
-2003-09-26 Richard Sandiford <rsandifo@redhat.com>
-
- * expr.c (emit_move_insn_1): If there is no move pattern for the
- original mode, try using a pattern for the corresponding integer mode.
-
-2003-09-26 Richard Sandiford <rsandifo@redhat.com>
-
- PR middle-end/9200
- * combine.c (if_then_else_cond): Tighten mode check.
-
-2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * cppcharset.c, cpphash.h: Rename 'struct strbuf' to
- 'struct _cpp_strbuf'.
-
- * config/i386/netbsd-elf.h, config/i386/netbsd64.h,
- config/i386/netware.h, config/i386/nto.h, config/i386/openbsd.h,
- config/i386/pentium.md, config/i386/pmmintrin.h, config/i386/ppro.md,
- config/i386/ptx4-i.h, config/i386/rtemself.h, config/i386/sco5.h,
- config/i386/sol2.h, config/i386/svr3gas.h, config/i386/sysv3.h,
- config/i386/sysv4-cpp.h, config/i386/sysv4.h, config/i386/sysv5.h,
- config/i386/unix.h, config/i386/uwin.h, config/i386/vsta.h,
- config/i386/xm-cygwin.h, config/i386/xm-djgpp.h,
- config/i386/xm-mingw32.h, config/i386/xmmintrin.h: Replace
- "GNU CC", "GNU compiler", and "GNU C-compiler" with "GCC".
- * config/i386/i386-aout.h, config/i386/i386-coff.h,
- config/i386/i386-interix.h, config/i386/i386-interix3.h,
- config/i386/i386-modes.def, config/i386/i386-protos.h,
- config/i386/i386.c, config/i386/i386.h, config/i386/i386.md,
- config/i386/i386elf.h, config/i386/k6.md, config/i386/kaos-i386.h,
- config/i386/linux-aout.h, config/i386/linux.h, config/i386/linux64.h,
- config/i386/lynx-ng.h, config/i386/lynx.h, config/i386/mingw32.h,
- config/i386/mmintrin.h, config/i386/moss.h: GNU CC -> GCC.
- "GNU compiler" -> GCC.
- * config/i386/att.h, config/i386/beos-elf.h, config/i386/biarch64.h,
- config/i386/bsd.h, config/i386/crtdll.h, config/i386/cygming.h,
- config/i386/cygwin.h, config/i386/cygwin1.c, config/i386/cygwin2.c,
- config/i386/darwin.h, config/i386/djgpp.h, config/i386/emmintrin.h,
- config/i386/freebsd-aout.h, config/i386/freebsd.h,
- config/i386/freebsd64.h, config/i386/gas.h: GNU CC -> GCC.
-
-2003-09-25 Kelley Cook <kelleycook@wideopenwest.com>
-
- * cgraph.c (dump_cgraph): Don't output newline before dump. Add in
- "local" to the callgraph dump. Output "after inlining" earlier.
- * cgraphunit.c: Fix dumpfile whitespace and commonize headers of the
- callgraph dumps. Correct misspellings.
- (cgraph_decide_inlining): Output number of insns before inlining.
- Output the calling function into which a function is inlined.
- (cgraph_decide_small_functions): Format dump file like always_inline.
-
-2003-09-25 Loren James Rittle <ljrittle@acm.org>
-
- * config/i386/i386.h (ix86_return_in_memory): Add prototype.
-
-2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_emit_prologue): Simplify accesses to
- FPR slots in the save area.
- (s390_emit_epilogue): Likewise.
-
-2003-09-25 Richard Sandiford <rsandifo@redhat.com>
-
- * cgraph.h (cgraph_remove_edge): Declare.
- * cgraph.c (cgraph_remove_edge): Make extern.
- * cgraphunit.c (cgraph_finalize_function): Call cgraph_remove_edge
- instead of cgraph_remove_call.
-
-2003-09-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * objc/objc-act.c (gen_declaration_1): Fix printf format.
-
-2003-09-25 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (all_cores): arm710t, arm720t and arm740t are all based on the
- arm7tdmi core.
-
-2003-09-25 Ziemowit Laski <zlaski@apple.com>
-
- * config/darwin-protos.h (objc_image_info_section):
- New prototype.
-
-2003-09-25 Ziemowit Laski <zlaski@apple.com>
-
- * Makefile.in (stub-objc.o): Depend on $(GGC_H).
-
-2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Get rid of more gratuitious 'x'es. Actually allow
- tsc701 as a --with-cpu, --with-tune setting for sparc.
-
-2003-09-25 Ziemowit Laski <zlaski@apple.com>
-
- * c-parse.in (objc_try_stmt): Do not specify a %type.
-
-2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: New 'widely ported system' clause for rtems.
- Set thread file there, not in individual clauses.
-
-2003-09-25 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/6222
- * config/mips/mips.c (mips_va_arg): Handle arguments that must be
- passed on the stack.
-
-2003-09-25 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (widely ported systems section): Mostly alphabetize
- by system. Comment the case where we can't.
- * config.gcc (widely ported systems section): Reindent and clean up.
-
- * config.gcc: Remove some unnecessary uses of 'x' in case statements.
- Actually allow ep9312 as an arm --with-arch setting.
-
- * config.gcc (*-hpux11): Disable fixproto.
-
-2003-09-24 Phil Edwards <phil@codesourcery.com>
-
- PR pch/12112
- * gcc/cppfiles.c (pch_open_file): Return based on combined
- result of all files.
- (validate_pch): Return validate flag for current file.
-
-2003-09-24 Roger Sayle <roger@eyesopen.com>
-
- PR bootstrap/12358
- * fold-const.c (tree_swap_operands_p): Only reorder operands when
- one of the operands is constant.
-
-2003-09-24 Ziemowit Laski <zlaski@apple.com>
-
- MERGE OF objc-improvements-branch into MAINLINE:
- * Makefile.in (C_OBJS): Add in stub-objc.o.
- (c-parse.y): Change sed demarcations to begin with '@@'.
- (stub-objc.o): New rule.
- * c-common.c (flag_nil_receivers, flag_objc_exceptions, flag_zero_link,
- flag_replace_objc_classes): New flags.
- * c-common.h (RID_AT_THROW, RID_AT_TRY, RID_AT_CATCH, RID_AT_FINALLY,
- RID_AT_SYNCHRONIZED): New keywords.
- (flag_nil_receivers, flag_objc_exceptions, flag_zero_link,
- flag_replace_objc_classes): New flags.
- (lookup_interface, is_class_name, objc_is_object_ptr, objc_check_decl,
- objc_comptypes, objc_message_selector, lookup_objc_ivar,
- get_current_scope, objc_mark_locals_volatile): New prototypes,
- some moved from c-tree.h.
- * c-decl.c (get_current_scope, objc_mark_locals_volatile): New functions.
- (finish_decl): Adjust where objc_check_decl() gets called.
- * c-lang.c (lookup_interface, is_class_name, objc_is_id, objc_check_decl,
- objc_comptypes, objc_message_selector, lookup_objc_ivar): Remove stubs.
- * c-opts.c (c_common_handle_option): Add handling for flag_nil_receivers,
- flag_objc_exceptions, flag_replace_objc_classes and flag_zero_link.
- * c-parse.in: Replace 'ifc' and 'end ifc' sed markers with '@@ifc' and
- '@@end_ifc', respectively.
- (AT_THROW, AT_TRY, AT_CATCH, AT_FINALLY, AT_SYNCHRONIZED): New %tokens.
- (objc_try_stmt, superclass, class_ivars, objc_try_catch-stmt,
- objc_finally_block): New rules.
- (component_decl_list2): Clean up semantic action for @defs construct.
- (component_decl, c99_block_start): Remove call to add_objc_decls().
- (poplevel): Add call to objc_clear_super_receiver().
- (stmt): Add rules for @throw, @try..@catch..@finally and @synchronized
- constructs.
- (classdef, methodprotolist): Clean up/simplify.
- (methodprotolist2): Eliminate.
- (methodproto): Call add_method() instead of add_class_method() and
- add_instance_method().
- (receiver): Add TYPENAME production.
- (reswords): Add "throw", "try", "catch", "finally" and "synchronized".
- (rid_to_yy): Add AT_THROW, AT_TRY, AT_CATCH, AT_FINALLY and
- AT_SYNCHRONIZED.
- * c-tree.h (lookup_interface, is_class_name, objc_is_id, objc_check_decl,
- objc_comptypes, objc_message_selector)
- * c-typeck.c (comptypes): In ObjC mode, call objc_comptypes() for
- struct and pointer types.
- (build_c_cast): Do not discard ObjC protocol qualifiers.
- (convert_for_assignment): Cache result of comp_target_types() instead
- of calling it more than once.
- * c.opt (fnext-runtime): Update description string.
- (fnil-receivers, fobjc-exceptions, freplace-objc-classes, fzero-link):
- New ObjC/ObjC++-specific flags.
- * function.h (GCC_FUNCTION_H): Header guard.
- * gengtype-lex.l: Teach lexer about new @@... sed demarcations.
- * stub-objc.c: New file, to be used to satisfy references to ObjC
- functions by the C and C++ front-ends.
- * config/darwin.c (_OBJC_IMAGE_INFO): New global metadata.
- * config/darwin.h (FUNCTION): Add in_objc_image_info.
- (SECTION_FUNCTION): Add objc_image_info_section.
- * doc/invoke.texi: Link to GCC web site for Objective-C information.
- (-fconstant-string-class): Update documentation.
- (-fno-nil-receivers, -fobjc-exceptions, -freplace-objc-classes,
- -fzero-link): New documentation.
- * objc/Make-lang.in (objc-parse.y): Change sed demarcations to begin
- with '@@'.
- * objc/lang-specs.h (@objective-c-header): Fix -E spec.
- * objc/objc/objc-act.c: Replace TYPE_NAME with OBJC_TYPE_NAME
- throughout; provide casts for return values from memory allocation
- functions (xmalloc, alloca, ggc_alloc, etc.).
- (OBJC_VOID_AT_END): New macro.
- (rtl.h): Do not #include any more.
- (STRING_OBJECT_GLOBAL_NAME): Replaced with STRING_OBJECT_GLOBAL_FORMAT.
- (TAG_MSGSEND_STRET, TAG_MSGSENDSUPER_STRET, TAG_MSGSEND_NONNIL,
- TAG_MSGSEND_NONNIL_STRET, TAG_EXCEPTIONEXTRACT, TAG_EXCEPTIONTRYENTER,
- TAG_EXCEPTIONTRYEXIT, TAG_EXCEPTIONMATCH, TAG_EXCEPTIONTHROW,
- TAG_SYNCENTER, TAG_SYNCEXIT): New NeXT runtime entry points.
- (struct val_stack, catch_count_stack, exc_binding_stack, val_stack_push,
- val_stack_pop): New.
- (objc_check_decl): Fix precondition for error message, along with
- the message itself.
- (lookup_and_install_protocols): Remove nonexistent protocols from
- protocol list instead of returning error_mark_node.
- (create_builtin_decl): Use DECL_ARTIFICIAL only for VAR_DECLs.
- (setup_string_decl): Generalize to use STRING_OBJECT_GLOBAL_FORMAT.
- (synth_module_prologue): General clean-up; construct NeXT-specific
- runtime API prototypes if needed.
- (build_string_class_template): Remove.
- (check_string_class_template, string_layout_checked): New.
- (build_objc_string_object): Generalize to work with
- -fconstant-string-class.
- (build_objc_symtab_template): Fix layout for the NeXT runtime.
- (build_metadata_decl): New.
- (forward_declare_categories): Call build_metadata_decl() instead of
- create_builtin_decl() et al.
- (build_module_descriptor): Use OBJC_VOID_AT_END instead of
- void_list_node_1.
- (build_selector_reference_decl, build_class_reference_decl,
- build_objc_string_decl): Do not set TREE_READONLY.
- (get_proto_encoding): Do not call hack_method_prototype().
- (get_class_reference): Add failure mode for invalid class names;
- support -fzero-link; defer if in an ObjC++ template declaration.
- (objc_declare_alias, objc_declare_class): Fix up duplicate name
- lookup; check for global scope if in ObjC++.
- (is_class_name): Generalize to work with various tree nodes (TYPE_DECL,
- RECORD_TYPE, IDENTIFIER_NODE, etc.)
- (objc_is_id): Removed.
- (objc_is_object_ptr): New function.
- (get_class_ivars_from_name): New function, used for @defs construct.
- (get_class_ivars): Add option to return raw ivars; create a
- ClASS_OWN_IVARS list for each class as needed.
- (objc_enter_block, objc_exit_block, objc_declare_variable,
- objc_build_throw_stmt, val_stack_push, val_stack_pop,
- objc_build_try_enter_fragment, objc_build_extract_expr,
- objc_build_try_exit_fragment, objc_build_extract_fragment,
- objc_build_try_prologue, objc_build_try_epilogue,
- objc_build_catch_stmt, objc_build_catch_epilogue,
- objc_build_finally_prologue, objc_build_finally_epilogue,
- objc_build_try_catch_finally_stmt, objc_build_synchronized_prologue,
- objc_build_synchronized_epilogue, build_objc_exception_stuff):
- New functions.
- (_JBLEN): _setjmp jmpbuf size (needs to be made a target hook in
- the future).
- (build_private_template): Fix up calls to get_class_ivars().
- (offset_is_register, forwarding_offset): Remove.
- (objc_method_parm_type, objc_encoded_type_size): New functions.
- (encode_method_prototype): Simplify to no longer depend on
- back-end information.
- (build_tmp_function_decl_xxx, build_tmp_function_decl,
- hack_method_prototype): Removed.
- (generate_protocol_references): Remove calls to
- build_tmp_function_decl().
- (generate_protocols): Adjust calls to encode_method_prototype().
- (build_class_template): Generate sel_id' and 'gc_object_type' fields
- for the NeXT runtime.
- (synth_forward_declarations): Call build_metadata_decl().
- (check_ivars): Check that the number of ivars matches also.
- (build_super_template): Modify super_type directly; disable debugging
- output while generating decl.
- (build_ivar_list_initializer): Skip list elements that are not
- FIELD_DECLs.
- (ivar_list_length): New function.
- (generate_ivar_lists): Call ivar_list_length() instead of list_length()
- and encode_method_prototype() instead of encode_method_def().
- (build_shared_structure_initializer): Generate 'sel_id' field for
- the NeXT runtime.
- (generate_category): Do not set TREE_USED.
- (build_keyword_selector): Ditto; transform into a function argument
- chain.
- (get_arg_type_list): If there are no user-specified arguments, use
- '...'; use OBJC_VOID_AT_END.
- (check_duplicates): Add a parameter indicating whether methods or
- selectors are being checked.
- (receiver_is_class_object): Add parameters indicating whether
- receiver is 'self' or 'super'; robustify.
- (build_message_expr): Defer call to finish_message_expr() if
- inside an ObjC++ template.
- (lookup_method_in_hash_lists): New function.
- (finish_message_expr): Complete rewrite/fix.
- (build_objc_method_call): Ditto; factor out commonalities between
- the GNU and NeXT runtimes; acccommodate ..._stret and ...NonNil
- messenger variants on the NeXT.
- (lookup_instance_method_static, lookup_class_method_static):
- Fold into a single lookup_method_static() function with an
- additional parameter.
- (add_class_method, add_instance_method): Fold into a single
- add_method() function with an additional parameter.
- (add_category): Make duplicate categories a hard error in ObjC++.
- (add_instance_variable): Properly handle unnamed ivars, arrays of
- zero or no size and bitfields. In ObjC++, check for nontrivial
- C++ class instances.
- (is_public): Allow C functions to access non-@public ivars, with
- a warning.
- (start_class): Move common initializations to
- synth_module_prologue(); check for global scope if in ObjC++.
- (continue_class): Fix calls to finish_struct().
- (objc_declare_protocols, start_protocol): Check for global scope
- if in ObjC++.
- (encode_pointer): Encode 'BOOL *' specially on the NeXT.
- (encode_aggregate_within): Rewrite to properly distinguish
- struct tags from typedefs in both ObjC and ObjC++.
- (encode_bitfield, encode_complete_bitfield): Remove.
- (encode_next_bitfield, encode_gnu_bitfield): New functions.
- (encode_field_decl): Call encode_next_bitfield() or
- encode_gnu_bitfield() as needed.
- (synth_self_and_ucmd_args): New function.
- (start_method_def): Use it.
- (objc_types_are_equivalent): New function.
- (comp_proto_with_proto): Use it instead of comptypes(), since
- we need symmetry.
- (really_start_method): Use lookup_method_static() instead of
- lookup_class_method_static() and lookup_instance_method_static();
- Emit 'extern "C"' if in ObjC++ mode.
- (add_objc_decls): Removed.
- (UOBJC_SUPER_scope): New variable.
- (get_super_receiver): Move construction of 'super' from
- add_objc_decls(); remove dependency on struct objc_class.
- (encode_method_def): Removed; encode_method_prototype() is
- used instead.
- (objc_clear_super_receiver): New function.
- (objc_expand_function_end): Do not do anything for ordinary
- C functions.
- (finish_method_def): Mark ObjC methods as un-inlinable.
- (gen_declaration_1): Emit widths of bitfields.
- (finish_objc): Call generate_objc_image_info() if needed;
- use check_duplicates() when checking for selector duplicates.
- (generate_objc_image_info): New function.
- * objc/objc-act.h (add_instance_method, add_class_method,
- get_class_ivars): Remove prototypes.
- (objc_build_throw_stmt, objc_build_try_catch_finally_stmt,
- objc_build_synchronized_prologue, objc_build_synchronized_epilogue,
- objc_build_catch_stmt, objc_build_catch_epilogue,
- objc_build_finally_prologue, objc_build_finally_epilogue,
- add_method, get_class_ivars_from_name): New prototypes.
- (CLASS_BINFO_ELTS, PROTOCOL_BINFO_ELTS): New.
- (TYPE_PROTOCOL_LIST): Robustify to distinguish from
- TRANSLATION_UNIT_DECLs.
- (OBJC_TYPE_NAME): New.
- (objc_tree_code): Ensure that either <c-tree.h> or <cp/cp-tree.h>
- got included.
- (IS_SUPER): Robustify.
- (umsg_stret_decl, umsg_super_stret_decl, umsg_nonnil_decl,
- umsg_nonnil_stret_decl, objc_storage_class, objc_exception_extract_decl,
- objc_exception_try_enter_decl, objc_exception_try_exit_decl,
- objc_exception_match_decl, objc_exception_throw_decl,
- objc_sync_enter_decl, objc_sync_exit_decl, objc_exception_data_template,
- objc_setjmp_decl, objc_stack_exception_data, objc_caught_exception,
- objc_rethrow_exception, objc_eval_once, objc_exception_block_stack,
- objc_catch_type): New ObjC/ObjC++ roots.
- * objc/objc-tree.def (MESSAGE_SEND_EXPR, CLASS_REFERENCE_EXPR): New
- ObjC/ObjC++ tree node codes.
-
-2003-09-24 Alexandre Oliva <aoliva@redhat.com>
-
- * cpplib.c (do_pragma): Reintroduce cb_line_change call in the
- code path that calls a handler.
-
-2003-09-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (c4x-*, tic4x-*, d30v-*, mmix-knuth-mmixware):
- Disable fixproto.
-
- * config.gcc: Clean up and reindent $with_cpu=yes|no clause and
- the section giving $with_cpu defaults by target.
-
- * config.gcc (arm-*-coff*, armel-*-coff*, arm*-*-ecos-elf,
- arm*-*-elf, ep9312-*-elf, arm*-wince-pe*, arm*-*-pe*, arm*-*-pe*,
- rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*,
- rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*,
- rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*,
- i[34567]86-pc-msdosdjgpp*): Disable fixproto.
-
-2003-09-24 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (movti_power): Collapse case 1 and 2
- together. Protect load string instruction with TARGET_STRING.
- (movti_string): Collapse case 1 and 2 together.
-
-2003-09-24 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-common.c (c_common_type_for_mode): Check for VOIDmode.
-
-2003-09-24 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Wrap in
- do...while(0)
-
-2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Move use_fixproto=no from generic vxworks clause to
- specific one.
-
- * config.gcc (powerpc-*-gnu-gnualtivec*): Disable fixproto
- (accidentally missed in last pass).
-
-2003-09-23 Andrew Pinski <apinski@apple.com>
-
- PR bootstrap/12383
- * configure: Regenerate.
-
-2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (x86_64-*-freebsd*): Disable fixproto (accidentally
- missed in last pass).
-
-2003-09-23 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.md (andsi3): Fix cut&pasto in 0xfffffffe
- constant.
-
-2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Move vax-*-vms* unsupported notice up with the rest.
-
- * config.gcc (alpha64*-dec-*vms*, alpha*-dec-*vms*,
- powerpc-*-eabisim*, powerpc-*-eabi*, powerpcle-*-eabisim*,
- powerpcle-*-eabi*): Disable fixproto.
-
- * config.gcc: Move use_fixproto=no from generic FreeBSD clause to
- specific FreeBSD clauses.
- * config.gcc: Move use_fixproto=no from generic NetBSD clause to
- specific NetBSD clauses.
- * config.gcc: Move use_fixproto=no from generic OpenBSD clause
- to specific OpenBSD clauses.
-
-2003-09-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (hppa_expand_prologue): Do pic register save in frame marker
- without adding a frame note.
- * pa.md (allocate_stack): Save pic register in new frame marker when
- generating pic code.
-
-2003-09-23 Kelley Cook <kelleycook@wideopenwest.com>
-
- * cgraphunit.c (cgraph_expand_all_functions): Renamed from
- cgraph_expand_functions.
-
-2003-09-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (gnucompare*): Merge into ...
- (slowcompare*): ... here.
- (fastcompare*): New targets.
- * aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): Add checks for
- other "fast" cmp programs.
- * configure: Regenerate.
-
-2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * targhooks.c: Include output.h.
- * Makefile.in (targhooks.o): Add output.h to dependency list.
-
-2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.host: Removed superfluous newline.
-
-2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Use ${target}, not $machine.
- * configure.in: Don't set $machine.
- * configure: Regenerate.
-
-2003-09-23 Geoffrey Keating <geoffk@apple.com>
-
- * config/t-darwin (crt2.o): Add stmp-int-hdrs to dependencies.
-
- * config/rs6000/rs6000.c (function_arg_pass_by_reference): Don't
- pass zero-size arrays by reference.
- (rs6000_va_arg): Likewise.
-
-2003-09-23 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Set use_fixproto=no in each specific *-gnu*
- configuration, rather than the generic one.
-
-2003-09-23 Richard Henderson <rth@redhat.com>
-
- * tree-inline.c (remap_save_expr): Map new save_expr to identity
- rather than to error_mark_node.
-
-2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in (HAVE_GAS_SHF_MERGE): Always define to test result.
- Update description.
- * configure: Regenerate.
- * config.in: Likewise.
- * dwarf2out.c (DEBUG_STR_SECTION_FLAGS): Test for
- HAVE_GAS_SHF_MERGE value.
- * varasm.c (mergeable_string_section): Likewise.
- (mergeable_constant_section): Likewise.
-
-2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * except.h (MUST_USE_SJLJ_EXCEPTIONS): Test for DWARF2_UNWIND_INFO
- value.
-
-2003-09-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * target.h (struct gcc_target): New member external_libcall.
- * target-def.h (TARGET_ASM_EXTERNAL_LIBCALL): Provide default.
- (TARGET_ASM_OUT): Use it.
- * doc/tm.texi (TARGET_ASM_EXTERNAL_LIBCALL): Document.
- * targhooks.c: Convert to ISO C 90.
- (default_external_libcall): New function.
- * targhooks.h (default_external_libcall): Declare.
- * varasm.c (assemble_external_libcall): Use
- targetm.asm_out.external_libcall instead of
- ASM_OUTPUT_EXTERNAL_LIBCALL.
- * config/mips/mips-protos.h [TARGET_IRIX5 || TARGET_IRIX 6]
- (mips_output_external_libcall): Declare.
- * config/mips/mips.c (mips_output_external_libcall): Change
- definition guard.
- Change to match TARGET_ASM_EXTERNAL_LIBCALL.
- Only operate for O32 ABI.
- * config/mips/iris5.h (TARGET_ASM_EXTERNAL_LIBCALL): Define
- instead of ASM_OUTPUT_EXTERNAL_LIBCALL.
- * config/mips/iris6.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Don't undef,
- superceded by TARGET_ASM_EXTERNAL_LIBCALL.
-
-2003-09-22 Nathnael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Do per-target disabling of fixproto here in clauses,
- not in t- fragments.
- * configure.in: Adjust to set STMP_FIXPROTO correctly.
- * configure: Regenerate.
- * config/arm/t-semi, config/cris/t-cris, config/i386/t-beos,
- config/i386/t-cygming, config/i386/t-nto, config/ia64/t-hpux,
- t-freebsd, t-linux, t-netbsd, t-openbsd, t-rtems, t-vxworks,
- xtensa/t-xtensa: Remove setting of STMP_FIXPROTO.
- * config/i370/t-oe, config/i386/t-netware, config/pa/t-bsd,
- t-interix, t-linux-aout: Delete files consisting only of
- setting of STMP_FIXPROTO.
-
- * config.host: Allow unknown hosts (not targets). Allow
- ns32k-*-netbsdelf* as a host (not a target). Remove redundant
- empty clauses. Remove useless obsolete-configuration clause.
- Prune unsupported configuration list. Collapse identical
- clauses for closely related systems. Rewrite comment for
- unsupported hosts list. Reorganize a little.
-
-2003-09-22 Richard Henderson <rth@redhat.com>
-
- * c-common.c (c_common_signed_or_unsigned_type): Examine mode,
- not precision.
-
-2003-09-22 David Edelsohn <edelsohn@gnu.org>
- Hartmut Penner <hpenner@de.ibm.com>
- Segher Boessenkool <boessen@de.ibm.com>
-
- * config/rs6000/rs6000.c (altivec_in_gprs_p): Rename to ...
- (gpr_or_gpr_p): Test INT_REGNO_P and convert to boolean.
- (rs6000_split_altivec_in_gprs): Rename to ...
- (rs6000_split_multireg_move): Add support for update addressing.
- * config/rs6000/rs6000-protos.h: Same.
- * config/rs6000/altivec.md: Same.
- * config/rs6000/rs6000.md (movdi_internal32): Use new splitter for
- multiple GPRs.
- (movti): Remove TARGET_STRING || TARGET_POWERPC64 final condition.
- (movti_power): Use new splitter for multiple GPRs.
- (movti_string): Same.
- (movti_ppc64): Same.
-
-2003-09-22 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa-protos.h: Convert to ISO C90.
- * config/xtensa/xtensa.c: Convert to ISO C90. Minor formatting fixes.
-
-2003-09-22 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.md: Revert 2003-09-17's patch.
- (andsi3): Set attr cc to set_zn when using shifts or adds.
-
-2003-09-22 Bernardo Innocenti <bernie@develer.com>
-
- * doc/contrib.texi: Add Peter Barada, Paul Dale and myself.
-
-2003-09-22 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h (MASK_RTD, TARGET_RTD, RETURN_POPS_ARGS):
- Resurrect -mrtd option.
-
-2003-09-21 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/12281
- * config/darwin.c (machopic_validate_stub_or_non_lazy_ptr): Call
- mark_referenced instead of setting TREE_SYMBOL_REFERENCED.
-
-2003-09-22 Olivier Hainque <hainque@act-europe.fr>
-
- PR target/9786
- * reg-stack.c (convert_regs_1): Purge possible dead eh edges
- after potential deletion of trapping insn. Avoids later ICE
- from call to fixup_abnormal_edges.
- (convert_regs_2): Stack the current block successors before
- processing this block, that is, before the potential deletion of
- dead edges by convert_regs_1, because these edges have been used
- to initialize the predecessors count.
-
-2003-09-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * real.c: Fix several nits in the head comment.
-
-2003-09-21 Richard Henderson <rth@redhat.com>
-
- * tree.h c-aux-info.c, c-decl.c, c-parse.in, coverage.c, dbxout.c,
- diagnostic.c, dwarf2out.c, dwarfout.c, function.c, integrate.c,
- print-tree.c, stmt.c, toplev.c, tree-dump.c, tree-inline.c,
- tree-optimize.c, tree.c, tree.def, xcoffout.c, config/alpha/alpha.c,
- config/mips/mips.c, doc/c-tree.texi, objc/objc-act.c: Revert.
-
-2003-09-21 Richard Henderson <rth@redhat.com>
-
- * tree.h (TREE_LOCUS): Rename from DECL_SOURCE_LOCATION; make const.
- (TREE_FILENAME, TREE_LINENO): Likewise.
- (set_tree_locus, copy_tree_locus, set_tree_file_line): New.
- (TREE_LOCUS_SET_P): New.
- * c-aux-info.c, c-decl.c, c-parse.in, coverage.c, dbxout.c,
- diagnostic.c, dwarf2out.c, dwarfout.c, function.c, integrate.c,
- print-tree.c, stmt.c, toplev.c, tree-dump.c, tree-inline.c,
- tree-optimize.c, tree.c, tree.def, xcoffout.c, config/alpha/alpha.c,
- config/mips/mips.c, doc/c-tree.texi, objc/objc-act.c: Update to match.
-
-2003-09-21 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config/vax/vax-protos.h: Convert to ISO C90.
- * config/vax/vax.c: Convert to ISO C90.
-
-2003-09-21 Graham Stott <grahams@btinternet.com>
-
- PR target/12353
- * config/i386/i386.md(ffs_no_cmove): Fix operand 2 constraint.
-
-2003-09-21 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12301
- * reorg.c (stop_search_p): Return 1 for insns that can
- throw internally.
-
-2003-09-20 Richard Henderson <rth@redhat.com>
-
- * c-format.c (gcc_diag_char_table): Add %J.
- (gcc_cdiag_char_table, gcc_cxxdiag_char_table): Likewise.
- (check_format_types): Fix wanted_type name lookup.
- (init_dynamic_diag_info): Setup %J.
- * diagnostic.c (text_specifies_location): Implement %J.
- * c-common.c, c-decl.c, c-objc-common.c, c-pragma.c, calls.c,
- dwarfout.c, expr.c, function.c, stmt.c, stor-layout.c, toplev.c,
- tree-inline.c, tree-optimize.c, varasm.c, config/arm/pe.c,
- config/i386/winnt.c, config/ia64/ia64.c, config/mcore/mcore.c,
- config/v850/v850.c, objc/objc-act.c: Use %J in diagnostics.
-
- * tree-inline.c: Include intl.h
- (inline_forbidden_p_1): Fix i18n of inline_forbidden_reason.
- * Makefile.in (tree-inline.o): Update.
-
-2003-09-20 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.c (ix86_expand_carry_flag_compare): Fix
- transformation of a>=0 into (unsigned)a<0x80000000.
-
-2003-09-20 Andrew Pinski <apinski@apple.com>
-
- * config/darwin.c (machopic_select_rtx_section): Fix check for PIC code.
-
-2003-09-20 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in: Don't set (unused) DLLTOOL.
-
- * config/arm/t-linux, config/arm/t-netbsd, config/arm-t-semi:
- Remove obsolete references to ENQUIRE.
-
-2003-09-19 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in: Remove --with-elf, which doesn't work.
- * configure: Regenerate.
- * config.gcc: Remove references to $elf, which does nothing.
-
- * config/i386/xm-vsta.h: Remove xm-file believed useless.
- * config.build (i386-vsta): Remove reference to it.
- * config.host (i386-vsta): Remove reference to it.
-
-2003-09-19 Phil Edwards <phil@codesourcery.com>
-
- * doc/install.texi: Document the multiple testsuite options.
-
-2003-09-19 Gerald Pfeifer <gerald@pfeifer.com>
-
- * doc/install.texi (Specific): Add the specific versions of GCC
- where support for FreeBSD 1, HP-UX version 9 and older, and AIX
- version 3 and older was discontinued.
-
-2003-09-19 Joel Sherrill <joel@oarcorp.com>
-
- * config/m68k/t-m68kbare, config/m68k/t-rtems: Change 68681 to
- 68881.
-
-2003-09-19 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h (TARGET_CPU_CPP_PREDEFINES): Add predefines
- for -m68030, -m68020-60 and -m68020-40.
- * config/m68k/m68k.h (TARGET_68030): New target flag.
- * config/m68k/m68k.h (MASK_RTD, TARGET_RTD, MASK_REGPARM,
- TARGET_REGPARM): Remove.
- * config/m68k/m68k.h: Regroup and renumber target flags.
- * config/m68k/m68k.h (TARGET_SWITCHES): Fix some tabulations.
- * config/m68k/m68k.h (RETURN_POPS_ARGS): Always evaluate to 0.
- * config/m68k/m68k.h (FUNCTION_ARG): Likewise.
- * config/m68k/m68k.h (FUNCTION_ARG_PARTIAL_NREGS): Likewise.
- * config/m68k/m68k-none.h: Use MASK_xxx values in M68K_CPU_xxx macros.
-
-2003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * config/m68k/t-rtems (m68k-*-rtems*): New.
- * config.gcc: Use config/m68k/t-rtems.
-
-2003-09-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * config/mips/t-rtems: New.
- * config.gcc (mips*-*-rtems*): Use config/mips/t-rtems.
-
-2003-09-19 Kelley Cook <kelleycook@wideopenwest.com>
-
- * cgraph.c: Fix typo in debugging output.
-
-2003-09-19 T. Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
- Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12166
- * config/sparc/sol2-c1.asm (start): Set __Argv if GCRT1.
-
-2003-09-18 Mike Stump <mrs@apple.com>
-
- * c-ppoutput.c (print): Use fileline typedef for field 'line'.
- (print_line, maybe_print_line, cb_define, cb_undef, cb_include,
- cb_ident, cb_def_pragma): Use fileline typedef.
- * cpphash.h (struct cpp_reader): Likewise for field out.first_line.
-
-2003-09-18 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/winnt.c (gen_stdcall_suffix): Quit summation of
- total parm size if a parm has incomplete type.
- (gen_fastcall_suffix): Likewise.
-
-2003-09-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * except.c (output_function_exception_table): Adjust last change
- to handle TYPE of INTEGER_CST.
-
-2003-09-18 Mark Mitchell <mark@codesourcery.com>
-
- PR target/11184
- * builtins.c (expand_builtin_apply): Use convert_memory_address
- before returning the value.
-
- * alias.c (find_base_value): Simplify use of
- convert_memory_address.
- (find_base_term): Likewise.
- * builtins.c (expand_builtin_stejmp_setup): Likewise.
- (expand_builtin_longjmp): Likewise.
- (expand_builtin_prefetch): Likewise.
- (get_memory_rtx): Likewise.
- (expand_builtin_return): Likewise.
- (expand_builtin_memcpy): Likewise.
- (expand_builtin_strncpy): Likewise.
- (expand_builtin_memset): Likewise.
- (expand_builtin_va_arg): Likewise.
- (expand_builtin_va_copy): Likewise.
- (expand_builtin_alloca): Likewise.
- * calls.c (expand_call): Likewise.
- * except.c (expand_builtin_extract_return_addr): Likewise.
- (expand_builtin_eh_return): Likewise.
- * explow.c (convert_memory_address): Define even when
- POINTER_EXTEND_UNSIGNED is not defined. Do nothing if the address
- is already in the right mode.
- * explow.c (memory_address): Simplify use of convert_memory_address.
- (probe_stack_range): Likewise.
- * expmed.c (make_tree): Likewise.
- * expr.c (emit_block_move_in_libcall): Likewise.
- (expand_assignment): Likewise.
- (expand_expr): Likewise.
- * function.c (assign_parms): Likewise.
- (expand_function_end): Likewise.
- * integrate.c (copy_rtx_and_substitute): Likewise.
- * stmt.c (expand_computed_goto): Likewise.
-
-2003-09-18 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_unary_operation): Only transform
- (not (eq X Y)) into (ne X Y) when mode is BImode or STORE_FLAG_VALUE
- is -1. RTL "not" is a bit-wise not, "~", not a logical not "!".
-
-2003-09-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR target/11674
- * config/i386/i386.c (x86_emit_floatuns): Also handle SImode operand.
-
-2003-09-18 Roger Sayle <roger@eyesopen.com>
-
- * tree.def (FFS_EXPR, CLZ_EXPR, CTZ_EXPR, POPCOUNT_EXPR,
- PARITY_EXPR): Delete unused tree codes.
- * c-common.c (c_common_truthvalue_conversion): Delete references
- to FFS_EXPR and POPCOUNT_EXPR.
- * c-pretty-print.c (pp_c_postfix_expression): Remove FFS_EXPR.
- (pp_c_expression): Likewise.
- * expr.c (expand_expr): Delete RTL expansion of FFS_EXPR, CLZ_EXPR,
- CTZ_EXPR, POPCOUNT_EXPR and PARITY_EXPR.
- * fold-const.c (tree_expr_nonnegative_p): Remove FFS_EXPR, CLZ_EXPR,
- CTZ_EXPR, POPCOUNT_EXPR and PARITY_EXPR. Add support for calls to
- BUILT_IN_FFS, BUILT_IN_PARITY and BUILT_IN_POPCOUNT and their long
- and long long variants.
-
-2003-09-18 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-pretty-print.h (pp_type_specifier_seq): Fix thinko.
- * c-pretty-print.c: Fix formatting.
- (pp_c_integer_constant): Append type annotation to literals. Tidy.
- (pp_c_type_specifier): Tidy.
- (pp_c_compound_literal): New function.
- (pp_c_initializer): Simplify..
- (pp_c_initializer_list): Likewise.
- (pp_c_brace_enclosed_initializer_list): New function.
- (pp_c_postfix_expression): Simplify.
-
-2003-09-17 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.md (andsi3, iorsi3, xorsi3,
- one_complsi2, bit-clear, bit-set, iorqi3): Make them set_zn.
-
-2003-09-17 Richard Henderson <rth@redhat.com>
-
- * tree-optimize.c (tree_rest_of_compilation): Save and restore
- input_location.
-
-2003-09-17 Daniel Jacobowitz <drow@mvista.com>
-
- * config/rs6000/sysv4.h (LIB_LINUX_SPEC): Give -lpthread before -lc.
-
-2003-09-17 Richard Henderson <rth@redhat.com>
-
- * cfg.c (dump_flow_info): Skip register dump if reg_n_info null.
-
-2003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in (gcc_cv_ld_hidden): Don't test gnu_ld_flag.
- * configure: Regenerate.
-
-2003-09-17 Mark Mitchell <mark@codesourcery.com>
-
- PR debug/12066
- * dbxout.c (dbxout_init): Use a langhook to find builtin types.
- * langhooks-def.h (lhd_return_null_tree_v): New function.
- (LANG_HOOKS_BUILTIN_TYPE_DECLS): New macro.
- (LANG_HOOKS_DECLS): Add it to the intializer.
- * langhooks.c (lhd_return_null_tree_v): New function.
- * langhooks.h (lang_hooks_for_decls): Add builtin_type_decls.
-
-2003-09-17 Daniel Jacobowitz <drow@mvista.com>
-
- * configure.in: Quote gcc_config_arguments for configargs.h.
- * configure: Regenerated.
- * gccbug.in: Don't shell-expand gcc_config_arguments.
-
-2003-09-17 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- PR c++/11357
- * c-pretty-print.c (pp_c_floating_constant): Append
- type-annotation to floating constants.
-
-2003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris5.h (TARGET_OS_CPP_BUILTINS): Define _LONGLONG.
- Define _ABIO32.
- Use it for _MIPS_SIM.
- * config/mips/iris6-o32.h (TARGET_OS_CPP_BUILTINS): Removed.
-
- * config/mips/iris6-o32-as.h (SUBTARGET_ASM_OPTIMIZING_SPEC):
- Moved ...
- * config/mips/iris5.h (SUBTARGET_ASM_OPTIMIZING_SPEC): ... here,
- updating comment.
- Fixes PR target/10190.
-
-2003-09-17 Daniel Jacobowitz <drow@mvista.com>
-
- * config/rs6000/sysv4.h (LIB_LINUX_SPEC): Make -pthread apply
- to shared libraries.
-
-2003-09-17 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11646
- * cfgrtl.c (purge_dead_edges) [JUMP_INSN]: Rematerialize the
- EDGE_ABNORMAL flag for EH edges.
- * toplev.c (rest_of_handle_cse): Delete unreachable blocks
- if dead edges were purged.
-
-2003-09-16 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Add target predefines.
- * config/m68k/m68k-none.h (CPP_CPU_DEFAULT_SPEC): Kill all definitions.
- * config/m68k/m68k-none.h (CPP_FPU_SPEC): Remove.
- * config/m68k/m68k-none.h (CPP_SPEC): Likewise.
-
-2003-09-16 Ian Lance Taylor <ian@wasabisystems.com>
-
- * cfgcleanup.c (label_is_jump_target_p): Correct use of table
- returned by tablejump_p.
-
-2003-09-16 Joel Brobecker <brobecker@gnat.com>
-
- * dwarf2asm.c (dw2_asm_output_nstring): Add comment.
-
-2003-09-16 Roger Sayle <roger@eyesopen.com>
-
- PR bootstrap/12269
- * simplify-rtx.c (simplify_gen_relational): Allow the cmp_mode
- argument to be VOIDmode, taking the mode of the comparison from
- the operands. Only call simplify_relational_operation if we
- know the mode of the comparison. Honor FLOAT_STORE_FLAG_VALUE
- if comparison has a floating point result. Ensure that the
- result is always of the specified mode.
- (simplify_replace_rtx): Simplify call to simplify_gen_relational.
- (simplify_unary_operation): Ensure the correct mode and cmp_mode
- are always passed to simplify_gen_relational. Simplify NOT of
- comparison operator in any mode, not just BImode.
- (simplify_ternary_operation): Correct tests on the return value
- of simplify_relational_operation to use const_true_rtx, not
- const1_rtx. Abort if it ever returns a non-constant result.
-
- * cfgloopanal.c (count_strange_loop_iterations): Use the function
- simplify_relational_operation, not simplify_gen_relational, if
- we're only interested in constant comparisons and will ignore
- non-constant results.
-
-2003-09-16 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (tree_swap_operands_p): New function to determine
- the prefered ordering of operands.
- (fold): Numerous clean-ups. Use tree_swap_operands_p when swapping
- operands to commutative, comparison or ternary operators. Replace
- uses of TREE_SET_CODE with recursive call to fold. Remove duplicate
- transformation of A ? B : C into !A ? C : B.
-
-2003-09-16 Jakub Jelinek <jakub@redhat.com>
-
- * config/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/arm/linux-elf.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/rs6000/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/rs6000/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/sh/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/sparc/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
- * config/sparc/linux64.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
-
-2003-09-16 Jason Merrill <jason@redhat.com>
- Jakub Jelinek <jakub@redhat.com>
-
- * c-common.c (handle_warn_unused_result_attribute): New function.
- (c_common_attribute_table): Add warn_unused_result.
- (c_expand_expr): Issue warning when result of inlined function
- with warn_unused_result attribute is ignored.
- * calls.c (expand_call): Issue warning when result of function
- with warn_unused_result attribute is ignored.
- * c-common.h (STMT_EXPR_WARN_UNUSED_RESULT): Define.
- * expr.c (expr_wfl_stack): Define.
- (expand_expr) <case EXPR_WITH_FILE_LOCATION>: If ignore,
- pass const0_rtx as target. Chain locations into expr_wfl_stack.
- * tree-inline.c (expand_call_inline): Set STMT_EXPR_WARN_UNUSED_RESULT
- bit if inlined function has warn_unused_result attribute.
- * input.h (expr_wfl_stack): Declare.
- * doc/extend.texi: Document warn_unused_result attribute.
-
-2003-09-15 Alexandre Oliva <aoliva@redhat.com>
-
- * cpplib.c (do_pragma): Remove unnecessary cb_line_change.
-
-2003-09-15 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Add
- ATTRIBUTE_UNUSED.
- (call_insn_operand): For PIC, don't allow a direct call to a
- function in a different section than the current one.
-
-2003-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * doc/invoke.texi (Warning Options): Add missing hyphen before
- "Wimport". Change "-Wno-endif-labels" to "-Wendif-labels".
- Move "-Wold-style-definition" to the C-only section.
- Fix the ordering of the warning options.
-
-2003-09-15 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
- Jeff Law <law@redhat.com>
-
- * gcse.c (remove_reachable_equiv_notes): New.
- replace_store_insn): Call it. Update antic list.
- (store_killed_in_insn): Take REG_EQUAL notes into account.
- (build_store_vectors, delete_store): Add parameter to
- replace_store_insn call.
-
-2003-09-15 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.h (LEGITIMATE_PIC_OPERAND_P): Use
- SYMBOL_REF_LOCAL_P.
-
-2003-09-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * expr.h (DEFAULT_FUNCTION_ARG_PADDING): New.
- (FUNCTION_ARG_PADDING): Use DEFAULT_FUNCTION_ARG_PADDING.
- * config/ia64/ia64.c (ia64_hpux_function_arg_padding):
- Likewise.
- * config/m68hc11/m68hc11.c (m68hc11_function_arg_padding):
- Likewise.
- * config/rs6000/rs6000.c (function_arg_padding): Likewise.
- * config/sparc/sparc.c (function_arg_padding): Likewise.
-
-2003-09-15 Vladimir Makarov <vmakarov@redhat.com>
-
- * haifa-sched.c (schedule_block): Use ready_remove_first instead
- of choose_ready for non-dfa insn scheduling.
-
-2003-09-15 Andreas Jaeger <aj@suse.de>
- Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * doc/invoke.texi (Warning Options): Describe -Wold-style-definition.
- * c-opts.c (c_common_handle_option): Handle OPT_Wold_style_definition.
- * c-parse.in: Warn about old-style parameter definition.
- * c-common.c: Define warn_old_style_defintion.
- * c-common.h: Declare it.
- * c.opt: Add Wold-style-defintion.
-
-2003-09-15 Andreas Jaeger <aj@suse.de>
-
- * config/rs6000/altivec.h: Convert () prototypes to ISO C90.
- * config/rs6000/rs6000.c: Likewise.
-
-2003-09-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR optimization/10914
- * expr.h (get_condition, canonicalize_condition): Declaration changed.
- * cfgloopanal.c (simple_loop_exit_p): Add parameter to a get_condition
- and canonicalize_condition calls.
- * gcse.c (fis_get_condition, delete_null_pointer_checks_1,
- delete_null_pointer_checks): Ditto.
- * ifcvt.c (noce_get_alt_condition, noce_get_condition): Ditto.
- * predict.c (estimate_probability, expected_value_to_br_prob): Ditto.
- * loop.c (check_dbra_loop, get_condition_for_loop): Ditto.
- (canonicalize_condition, get_condition): Allow to return comparisons
- of cc mode registers.
- * loop-unswitch.c (may_unswitch_on_p, unswitch_single_loop): Allow
- cc mode registers comparison in condition.
-
-2003-09-12 Mark Mitchell <mark@codesourcery.com>
-
- * coverage.c (create_coverage): Do not call pushlevel/poplevel.
- * langhooks-def.h (lhd_do_nothing_iii_return_null_tree): New
- function.
- * langhooks.c (lhd_do_nothing_iii_return_null_tree): Define it.
-
-2003-09-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c (simplify_comparison): Convert
- (ne (and (lshiftrt (xor X CST) Y) 1) 0) into
- (eq (and (lshiftrt X Y) 1) 0).
-
-2003-09-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * alias.c: Follow spelling conventions.
- * cpphash.h: Likewise.
- * fold-const.c: Likewise.
-
-2003-09-14 Alexandre Oliva <aoliva@redhat.com>
-
- * c-ppoutput.c (cb_line_change): Revert 2003-08-04's change.
- * c-lex.c (cb_line_change): Skip line changing whenever
- c-ppoutput.c would.
-
-2003-09-14 Steven Bosscher <steven@gcc.gnu.org>
-
- * ra.c: Convert to ISO C90 prototypes.
- * ra-build.c: Likewise.
- * ra-colorize.c: Likewise.
- * ra-debug.c: Likewise.
- * ra-rewrite.c: Likewise.
-
-2003-09-14 Richard Sandiford <rsandifo@redhat.com>
-
- * Makefile.in (%.dvi): Remove excess $(docdir).
-
-2003-09-14 Richard Sandiford <rsandifo@redhat.com>
-
- * function.c (STACK_BYTES): Move definition to head of file.
- (assign_parms): Don't pass current_function_pretend_args_size
- directly to SETUP_INCOMING_VARARGS. For partial register arguments,
- round current_function_pretend_args_size up to STACK_BYTES. Skip any
- excess before laying out the argument.
-
-2003-09-14 Andreas Jaeger <aj@suse.de>
-
- * objc/objc-act.c: Convert to ISO C90 prototypes.
- * objc/objc-act.h: Likewise.
-
-2003-09-14 Olaf Hering <olh@suse.de>
-
- * config/rs6000/rs6000.c: Fix typo: Remove extra ')'.
-
-2003-09-13 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/12021
- * config/m68k/netbsd-elf.h (TARGET_OS_CPP_BUILTINS): Remove the asserts
- as they already are done in config/m68k/m68k.h.
- * config/m68k/netbsd.h (TARGET_OS_CPP_BUILTINS): Likewise
-
- * config/rs6000/rs6000.c (GEN_LOCAL_LABEL_FOR_SYMBOL): Remove.
- (machopic_output_stub): Only generate pic base symbols when using pic
- and generate them in the form L00000000$spb.
-
-2003-09-13 Richard Henderson <rth@redhat.com>
-
- * cgraphunit.c (cgraph_assemble_pending_functions): Export.
- (cgraph_finalize_function): Revert TREE_ASM_WRITTEN check.
- * cgraph.h: Update.
-
-2003-09-12 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.c: Fix typos in previous.
-
-2003-09-12 Ziemowit Laski <zlaski@apple.com>
-
- * pretty-print.c (pp_construct): Use xcalloc instead of xmalloc
- when allocating pp->buffer.
-
-2003-09-12 Geoffrey Keating <geoffk@apple.com>
-
- * config/darwin.c (machopic_select_rtx_section): Use
- const_data_section for things that might require relocation.
-
-2003-09-12 H.J. Lu <hongjiu.lu@intel.com>
-
- PR bootstrap/12264
- * tree-inline.c (inline_forbidden_p_1): Cast the 3rd arg to tree.
-
-2003-09-12 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/elf.h (ASM_SPEC): Remove no-density option. Reformat.
- * config/xtensa/linux.h (ASM_SPEC): Likewise.
- * config/xtensa/xtensa.h (TARGET_SWITCHES): Remove -mbig-endian,
- -mlittle-endian, -m[no-]density, -m[no-]abs, -m[no-]addx, -m[no-]mac16,
- -m[no-]mul16, -m[no-]mul32, -m[no-]nsa, -m[no-]minmax, -m[no-]sext,
- -m[no-]booleans, -mhard-float, -msoft-float, -m[no-]hard-float-div,
- -m[no-]hard-float-recip, -m[no-]hard-float-sqrt, and
- -m[no-]hard-float-rsqrt options. Delete corresponding MASK_* macros
- and redefine corresponding TARGET_* macros with constants from the
- xtensa-config.h header.
- * doc/invoke.texi (Option Summary, Xtensa Options): Remove documention
- for the options listed above.
-
-2003-09-12 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000-protos.h: Use C90 prototypes.
- * config/rs6000/rs6000-c.c: Ditto.
- * config/rs6000/rs6000.c: Ditto.
- * config/rs6000/ sysv4.h: Ditto.
-
-2003-09-12 Chris Lattner <sabre@nondot.org>
-
- * loop.c: Move comments describing BIV's and GIV's to top of file
-
-2003-09-12 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/8967
- * alias.c (write_dependence_p): Modify to take an additional constp
- argument that controls whether the UNCHANGING_RTX_P flags are used.
- (anti_dependence, output_dependence): Adjust write_dependence_p
- callers to pass this additional argument, to return the same result.
- (unchanging_anti_dependence): New variant of anti_dependence that
- ignores the UNCHANGING_RTX_P property on memory references.
- * rtl.h (unchaning_anti_dependence): Prototype here.
- * flow.c (init_propagate_block): Place fake constant mem writes on
- the mem_set_list so that dead writes to const variables are deleted.
- (insn_dead_p): Change anti_dependence to unchanging_anti_dependence.
- (mark_used_regs): Likewise.
-
-2003-09-12 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mcore/mcore-protos.h (mcore_r15_operand_p): Declare.
- (mcore_secondary_reload_class): Declare.
- (mcore_output_inline_const_forced): Remove.
- * config/mcore/mcore.md (movsi): Remove the code that forced
- non-inlineable constants into a register if the target was r15
- or the stack pointer. Remove constant restrictions from the main
- define_insn. Remove r <- I, r <- M and r <- N alternatives in favor
- of an r <- P alternative. Remove fallback define_insn for reload.
- (movhi, movqi): Use gen_lowpart rather than gen_SUBREG. Remove reload
- define_insn. Use mcore_output_move in the remaining define_insn.
- Adjust condition and constraints in the way as for movsi.
- (movdi): Always split unacceptable constants into two. Use
- simplify_gen_subreg instead of operand_subword{,_force}.
- * config/mcore/mcore.c (mcore_output_inline_const_forced): Remove.
- (mcore_output_move): Support HImode and QImode moves as well.
- (mcore_m15_operand_p): New function.
- (mcore_reload_class): Use it to detect cases where LRW_REGS are better.
- (mcore_secondary_reload_class): New function.
- * config/mcore/mcore.h (SECONDARY_RELOAD_CLASS): Redefine in
- terms of mcore_secondary_reload_class.
-
-2003-09-11 Mike Stump <mrs@apple.com>
-
- * c-lex.c (fe_file_change): Don't transform to_line with SOURCE_LINE.
-
-2003-09-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin_logarithm): if N can't be truncated to
- MODE exactly, then only convert logN(N) -> 1.0 if
- flag_unsafe_math_optimizations is set.
-
- * builtins.c (builtin_dconsts_init, dconstpi, dconste,
- init_builtin_dconsts): Delete.
- * emit-rtl.c (dconstpi, dconste): Define.
- (init_emit_once): Initialize dconstpi & dconste.
- * real.h (dconstpi, dconste): Declare.
-
-2003-09-11 Alexandre Oliva <aoliva@redhat.com>
-
- PR fortran/11522
- * dwarf2out.c (gen_inlined_subroutine_die): Emit abstract function
- for ultimate origin even if block is abstract.
-
-2003-09-11 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (combine_simplify_rtx): Move several NOT and NEG
- optimizations from here...
- * simplify-rtx.c (simplify_unary_operation): to here. Recursively
- simplify expressions using simplify_gen_*ary instead of gen_rtx_*.
-
-2003-09-11 Richard Henderson <rth@redhat.com>
-
- * cgraphunit.c (cgraph_finalize_function): Add nested arg.
- Tweek tests for function already generated.
- (cgraph_expand_function): Don't double announce in !unit-at-a-time.
- * cgraph.h (cgraph_finalize_function): Update for extra arg.
- * c-decl.c (finish_function): Likewise.
-
-2003-09-10 Joe Buck <jbuck@welsh-buck.org>
-
- * c-decl.c (poplevel): Eliminate use of |= in function_body assignment.
-
-2003-09-10 Jerry Quinn <jlquinn@optonline.net>
-
- * real.c: Update URL to VAX floating point docs.
- (decode_vax_d): Extract 8 exponent bits instead of 7.
-
-2003-09-10 Ian Lance Taylor <ian@wasabisystems.com>
-
- * combine.c (force_to_mode): Set fuller_mask based only on mask,
- not op_mode.
-
-2003-09-11 Jan Hubicka <jh@suse.cz>
-
- * c-objc-common.c (c_cannot_inline_tree_fn): Warn
- on why function is not inlinable; do not check
- the body.
- (inline_forbidden_p): Move to...
- * tree-inline.c (inline_forbidden_p_1): ... here; Add warnings;
- deal with alloca, longjmp.
- (inline_forbidden_p): New static function.
- (find_alloca_call_1, find_alloca_call, find_builtin_longjmp_call_1,
- find_builtin_longjmp_call): Kill.
-
-2003-09-10 Richard Henderson <rth@redhat.com>
-
- * cgraph.h (struct cgraph_node): Rename lowered to analyzed.
- * cgraphunit.c: Update to match.
- (record_call_1): Rearrange. Call lang hook for language nodes.
- (cgraph_analyze_function): Don't call lower_function.
- * langhooks.h (struct lang_hooks_for_callgraph): Replace
- lower_function with analyze_expr.
- * langhooks-def.h: Update to match.
- * langhooks.c (lhd_callgraph_analyze_expr): New.
-
-2003-09-10 Martin Husemann <martin@duskware.de>
-
- PR target/11965
- * config/sparc/sparc.c (sparc_v8plus_shift): Protect against
- constants greater than 63.
- * config/sparc/sparc.md (ashlsi3, ashrsi3, lshrsi3): Protect
- against constants greater than 31.
- (*ashldi3_sp64, *ashrdi3_sp64, *lshrdi3_sp64): Protect against
- constants greater than 63.
-
-2003-09-09 Richard Henderson <rth@redhat.com>
-
- * cgraphunit.c (cgraph_finalize_function): Remove unused argument.
- * cgraph.h (cgraph_finalize_function): Update.
- * c-decl.c (finish_function): Update.
-
-2003-09-09 Devang Patel <dpatel@apple.com>
-
- * config/darwin.h (LINK_SPEC): Pass -nofixprebinding to linker.
- * doc/invoke.texi: Document new Darwin linker option -nofixprebinding.
-
-2003-09-09 Eric Christopher <echristo@redhat.com>
-
- * configure.in: Change usage of 'head' to 'sed 1q'.
- * configure: Regenerate.
-
-2003-09-09 Richard Henderson <rth@redhat.com>
-
- * except.c: Include cgraph.h.
- (output_function_exception_table): Invoke
- cgraph_varpool_mark_needed_node.
- * Makefile.in (except.o): Update.
-
-2003-09-07 Kelley Cook <kelleycook@wideopenwest.com>
-
- * Makefile.in: Define REMAKEFLAGS for LANGUAGES & BOOT_CFLAGS
- and use it throughout.
-
-2003-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (real_dconstp, fold_builtin_logarithm,
- fold_builtin_exponent): New, split out from fold_builtin. Also
- generalize to add log2, log10, exp2 and exp10/pow10 equivalents.
- * emit-rtl.c (dconst3, dconst10, dconstthird): New.
- (init_emit_once): Initialize new dconsts, use ARRAY_SIZE in lieu
- of hardcoded array size.
- * fold-const.c (fold): Add cases for exp2, exp10 and pow10.
- (tree_expr_nonnegative_p): Likewise.
- * real.h (dconst3, dconst10, dconstthird): New.
-
-2003-09-09 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_finalize_function): Fix handling of extern
- inline functions.
- (cgraph_finalize_compilation_unit): Fix crash when dealing with lost
- DECL_SAVED_TREE.
-
-2003-09-09 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (fold_builtin_cabs): Protect the complex argument
- against multiple evaluation when optimizing cabs* into sqrt*.
-
-2003-09-09 Jan Hubicka <jh@suse.cz>
-
- * varasm.c (notice_global_symbol): Properly deal with weak symbols.
-
-2003-09-08 Kelley Cook <kelleycook@wideopenwest.com>
-
- * Makefile.in: Revert yesterday's change.
-
-2003-09-08 Bernardo Innocenti <bernie@develer.com>
- Peter Barada <peter@baradas.org>
-
- * config/m68k/coff.h (REGISTER_NAMES): Add fake register `argptr'
- * config/m68k/hp320.h (REGISTER_NAMES): Likewise.
- * config/m68k/linux.h (REGISTER_NAMES): Likewise.
- * config/m68k/m68kelf.h (REGISTER_NAMES): Likewise.
- * gcc/config/m68k/sgs.h (REGISTER_NAMES): Likewise.
- * config/m68k/m68k-protos.h (m68k_initial_elimination_offset): Add prototype.
- * config/m68k/m68k.c (m68k_frame): New struct, simular to ix86 back-end.
- (m68k_compute_frame_layout): New function.
- (m68k_initial_elimination_offset): New function.
- (m68k_output_function_prologue): ColdFire-specific movem handling.
- (m68k_output_function_epilogue): Likewise.
- * config/m68k/m68k.h (FIRST_PSEUDO_REGISTER): Make room for argptr reg.
- (ARG_POINTER_REGNUM): Add new definition.
- (INITIAL_FRAME_POINTER_OFFSET): Remove macro.
- (ELIMINABLE_REGS): Define new macro, like in ix86 back-end.
- (CAN_ELIMINATE): Likewise.
- (INITIAL_ELIMINATION_OFFSET): Likewise.
-
-2003-09-08 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c (m68k_output_function_prologue): Simplify
- by removing redundant variable cfa_store_offset.
-
-2003-09-08 Mark Mitchell <mark@codesourcery.com>
-
- * langhooks-def.h (lhd_register_builtin_type): New function.
- (LANG_HOOKS_REGISTER_BUILTIN_TYPE): New macro.
- (LANG_HOOKS_FOR_TYPES_INITIALIZER): Update.
- * langhooks.h (lang_hooks_for_types): Add register_builtin_type.
- * langhooks.c (lhd_register_builtin_type): New function.
- * c-common.h (c_register_builtin_type): Declare.
- * c-common.c (c_register_builtin_type): New function.
- * c-lang.c (LANG_HOOKS_REGISTER_BUILTIN_TYPE): Define to
- c_register_builtin_type.
- * config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Remove __fpreg,
- __float80, and __float128 macros.
- * config/ia64/ia64.c (ia64_init_builtins): Create __fpreg,
- __float80, and __float128 types.
-
-2003-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtin-types.def
- (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
- BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
- BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT): New.
- * builtins.def (BUILT_IN_CACOS, BUILT_IN_CACOSF, BUILT_IN_CACOSH,
- BUILT_IN_CACOSHF, BUILT_IN_CACOSHL, BUILT_IN_CACOSL,
- BUILT_IN_CARG, BUILT_IN_CARGF, BUILT_IN_CARGL, BUILT_IN_CASIN,
- BUILT_IN_CASINF, BUILT_IN_CASINH, BUILT_IN_CASINHF,
- BUILT_IN_CASINHL, BUILT_IN_CASINL, BUILT_IN_CATAN,
- BUILT_IN_CATANF, BUILT_IN_CATANH, BUILT_IN_CATANHF,
- BUILT_IN_CATANHL, BUILT_IN_CATANL, BUILT_IN_CCOS, BUILT_IN_CCOSF,
- BUILT_IN_CCOSH, BUILT_IN_CCOSHF, BUILT_IN_CCOSHL, BUILT_IN_CCOSL,
- BUILT_IN_CEXP, BUILT_IN_CEXPF, BUILT_IN_CEXPL, BUILT_IN_CPOW,
- BUILT_IN_CPOWF, BUILT_IN_CPOWL, BUILT_IN_CPROJ, BUILT_IN_CPROJF,
- BUILT_IN_CPROJL, BUILT_IN_CSIN, BUILT_IN_CSINF, BUILT_IN_CSINH,
- BUILT_IN_CSINHF, BUILT_IN_CSINHL, BUILT_IN_CSINL, BUILT_IN_CSQRT,
- BUILT_IN_CSQRTF, BUILT_IN_CSQRTL, BUILT_IN_CTAN, BUILT_IN_CTANF,
- BUILT_IN_CTANH, BUILT_IN_CTANHF, BUILT_IN_CTANHL, BUILT_IN_CTANL):
- New.
- * doc/extend.texi: Document new builtins.
-
-2003-09-09 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_varpool_finalize_decl): Sanity check duplicated
- finalization.
- * cgraphunit.c (decide_is_fnction_needed): Avoid special case of nested
- functions, check for COMDAT.
- (cgraph_assemble_pending_functions): Break out from...
- (cgraph_finalize_function): ... here; allow redefinig of extern inline
- functions.
- (record_call_1): Record function references only in non-unit-at-a-time
- mode.
- (cgraph_analyze_function): Reset current_function_decl.
- (cgraph_finalize_compilation_unit): Assemble pending functions.
-
-2003-09-08 Mark Mitchell <mark@codesourcery.com>
-
- * mklibgcc.in (libcc.a): Depend on stmp-dirs.
- (libgov.a): Likewise.
- (libgcc_eh.a): Likewise.
-
-2003-09-08 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (operand_equal_p): Clarify documentation.
-
-2003-09-08 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (c_expand_body_1): Push and pop function context here.
- * tree-optimize.c (tree_rest_of_compilation): ... not here. Take
- nested argument instead of computing nesting ourselves.
-
-2003-09-08 Jakub Jelinek <jakub@redhat.com>
-
- * toplev.c (rest_of_handle_stack_regs): Call split_all_insns before
- regstack if optimizing but not scheduling after reload.
-
-2003-09-08 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.c (struct machine_function): New type.
- (TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
- (sparc_override_options): Initialize init_machine_status.
- (tls_symbolic_operand, tgd_symbolic_operand, tld_symbolic_operand,
- tie_symbolic_operand, tle_symbolic_operand): New functions.
- (symbolic_operand): Disallow tls_symbolic_operand.
- (symbolic_memory_operand): Likewise.
- (tls_call_delay, sparc_cannot_force_const_mem, legitimate_constant_p,
- constant_address_p, legitimate_pic_operand_p, legitimate_address_p):
- New functions.
- (sparc_tls_symbol): New variable.
- (sparc_tls_get_addr, sparc_tls_got, legitimize_tls_address,
- legitimize_address): New functions.
- (print_operand): Handle %&.
- (sparc_init_machine_status, get_some_local_dynamic_name,
- get_some_local_dynamic_name_1): New functions.
- (sparc_output_dwarf_dtprel): New function.
- * config/sparc/sparc.h (CONSTANT_ADDRESS_P): Moved into
- constant_address_p.
- (LEGITIMATE_PIC_OPERAND_P): Moved into legitimate_pic_operand_p.
- (LEGITIMATE_CONSTANT_P): Moved into legitimate_constant_p.
- (GO_IF_LEGITIMATE_ADDRESS): Moved into legitimate_address_p.
- (LEGITIMIZE_ADDRESS): Moved into legitimize_address.
- (PRINT_OPERAND_PUNCT_VALID_P): Add '&'.
- (TARGET_TLS, TARGET_SUN_TLS, TARGET_GNU_TLS): Define.
- (ASM_OUTPUT_DWARF_DTPREL): Define.
- (PREDICATE_CODES): Add tgd_symbolic_operand, tld_symbolic_operand,
- tie_symbolic_operand, tle_symbolic_operand.
- * config/sparc/sparc.md (UNSPEC_TLSGD, UNSPEC_TLSLDM, UNSPEC_TLSLDO,
- UNSPEC_TLSIE, UNSPEC_TLSLE, UNSPEC_TLSLD_BASE): New constants.
- (tls_call_delay): New attribute.
- (in_call_delay): Use it.
- (movqi, movhi, movsi, movdi): Call legitimize_tls_address if needed.
- (tgd_hi22, tgd_lo10, tgd_add32, tgd_add64, tgd_call32, tgd_call64,
- tldm_hi22, tldm_lo10, tldm_add32, tldm_add64, tldm_call32, tldm_call64,
- tldo_hix22, tldo_lox10, tldo_add32, tldo_add64, tie_hi22, tie_lo10,
- tie_ld32, tie_ld64, tie_add32, tie_add64, tle_hix22_sp32,
- tle_lox10_sp32, tle_hix22_sp64, tle_lox10_sp64): New insns.
- (tldo_ldub_sp32, tldo_ldub1_sp32, tldo_ldub2_sp32, tldo_ldsb1_sp32,
- tldo_ldsb2_sp32, tldo_ldub_sp64, tldo_ldub1_sp64, tldo_ldub2_sp64,
- tldo_ldub3_sp64, tldo_ldsb1_sp64, tldo_ldsb2_sp64, tldo_ldsb3_sp64,
- tldo_lduh_sp32, tldo_lduh1_sp32, tldo_ldsh1_sp32, tldo_lduh_sp64,
- tldo_lduh1_sp64, tldo_lduh2_sp64, tldo_ldsh1_sp64, tldo_ldsh2_sp64,
- tldo_lduw_sp32, tldo_lduw_sp64, tldo_lduw1_sp64, tldo_ldsw1_sp64,
- tldo_ldx_sp64, tldo_stb_sp32, tldo_stb_sp64, tldo_sth_sp32,
- tldo_sth_sp64, tldo_stw_sp32, tldo_stw_sp64, tldo_stx_sp64): New
- insns.
- * config/sparc/sparc-protos.h (legitimate_constant_p,
- constant_address_p, legitimate_pic_operand_p, legitimate_address_p,
- legitimize_tls_address, legitimize_address, tls_symbolic_operand,
- tls_call_delay, sparc_output_dwarf_dtprel): New prototypes.
- * config/sparc/linux.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Define.
- * config/sparc/linux64.h (TARGET_GNU_TLS, TARGET_SUN_TLS): Likewise.
- * configure.in (sparc*-*-*): Add TLS check.
- * configure: Rebuilt.
-
-2003-09-07 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/11689
- * config/i386/i386.c (memory_address_length): Fix computation when
- the base is esp or ebp.
-
-2003-09-07 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/11852
- * varasm.c (initializer_constant_valid_p): Correct logic for
- CONSTRUCTORs.
-
-2003-09-07 Roger Sayle <roger@eyesopen.com>
-
- * expr.c (expand_operands): New function to expand an operand pair.
- (expand_expr): Call expand_operands whenever we need to expand both
- operands of a binary operator.
- (do_store_flag): Likewise for operands of comparison operations.
-
-2003-09-07 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (combine_simplify_rtx): Don't convert -(A*B) into
- (-A)*B if we care about sign-dependent rounding.
-
-2003-09-07 Gabriel Dos Reis <gcc@integrable-solutions.net>
-
- * c-pretty-print.h (pp_c_left_brace): Declare.
- (pp_c_right_brace): Likewise.
- * c-pretty-print.c (pp_c_left_brace): Now a function
- (pp_c_right_brace): Likewise.
-
-2003-09-07 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch.
-
-2003-09-07 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * diagnostic.c (warn_deprecated_use): Move to toplev.c
-
-2003-09-07 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * langhooks.c (lhd_print_error_function): Move from diagnostic.c.
- * Makefile.in (langhooks.o): Depend on diagnostic.h
-
-2003-09-06 James E Wilson <wilson@tuliptree.org>
-
- * loop.c (loop_regs_update): Delete else clause for PATTERN rtx and
- simplify.
-
-2003-09-07 Kelley Cook <kelleycook@wideopenwest.com>
-
- * Makefile.in: Define $REMAKE to be $MAKE with LANGUAGES & BOOT_CFLAGS
- and use it throughout.
-
-2003-09-07 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (try_simplify_condjump): Fix my previous patch.
-
- * toplev.c (rest_of_decl_compilation): Do not finalize external
- virables.
-
- * cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized
- functions.
- (cgraph_varpool_finalize_decl): Notice global symbol when needed.
-
-2003-09-06 Jan Hubicka <jh@suse.cz>
-
- PR target/12070
- * calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments.
-
- PR opt/12082
- * cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning.
-
-2003-09-06 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * diagnostic.c (announce_function): Move to toplev.c.
-
-2003-09-06 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * gcse.c (expr_equiv_p): Don't consider anything to be equal to
- volatile mem.
-
-2003-09-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * ggc-common.c (init_ggc_heuristics): Don't use the heuristics
- when gc checking is enabled.
-
-2003-09-06 Steven Bosscher <steven@gcc.gnu.org>
-
- PR c/9862
- * c-decl.c (c_expand_body_1): Move return warning from here...
- (finish_function): ...to here.
-
-2003-09-05 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Always return
- a subset of the input class.
-
-2003-09-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i860/i860.c: Follow spelling conventions.
- * config/i860/i860.h: Likewise.
- * config/sh/sh.h: Likewise.
-
-2003-09-05 Nitin Yewale <NitinY@KPITCummins.com>
-
- * config/h8300/h8300-protos.h: Declare h8300_hard_regno_rename_ok
- * config/h8300/h8300.h (HARD_REGNO_RENAME_OK): New.
- * config/h8300/h8300.c (h8300_hard_regno_rename_ok): New.
-
-2003-09-05 Roger Sayle <roger@eyesopen.com>
- Richard Henderson <rth@redhat.com>
-
- PR optimization/1823
- * expmed.c (expand_divmod <EXACT_DIV_EXPR>): Use an unsigned
- multiplication to implement division by constant integer.
-
-2003-09-05 Jan Hubicka <jh@suse.cz>
-
- * opts.c (decode_options): Enable unit-at-a-time at -O2.
- * params.def (max-inline-insns-single): Set to 500
- (max-inline-insns-auto): Set to 150
- * invoke.texi (max-inline-insns-single, max-inline-insns-auto): Update.
-
-2003-09-04 Richard Henderson <rth@redhat.com>
-
- * cgraph.c (cgraph_mark_reachable_node): Split out from ...
- (cgraph_mark_needed_node): Remove needed argument.
- * cgraph.h: Update to match.
- * cgraphunit.c (decide_is_function_needed): Split out from ...
- (cgraph_finalize_function): Reorg. Avoid deferred_inline_function
- if we generated the function.
- (record_call_1): Update for cgraph_mark_reachable_node.
- * varasm.c (mark_referenced): Likewise.
- * objc/objc-act.c (mark_referenced_methods): Likewise.
-
-2003-09-04 DJ Delorie <dj@redhat.com>
-
- * targhooks.c: Add comment explaining the migration process.
-
-2003-09-04 Eric Christopher <echristo@redhat.com>
-
- * config/frv/t-frv: Fix path for frv-abi.h.
- * config/frv/frv-asm.h: Fix string concatenation.
-
-2003-09-04 DJ Delorie <dj@redhat.com>
-
- * builtins.c (apply_args_size): Guard against a NULL cfun.
- (expand_builtin_apply_args_1): Likewise.
- (expand_builtin_apply): Likewise.
- Fixes PR bootstrap/12172.
-
-2003-09-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in (gcc_cv_as_ix86_cmov_sun_syntax): Check if
- assembler supports Sun syntax for cmov.
- * configure: Regenerate.
- * config.in: Likewise.
- * config/i386/i386.c: Rename CMOV_SUN_AS_SYNTAX to
- HAVE_AS_IX86_CMOV_SUN_SYNTAX.
- * config/i386/sol2.h (CMOV_SUN_AS_SYNTAX): Remove.
- Fixes PR target/12101.
-
-2003-09-04 Matt Austern <austern@apple.com>
-
- * c-common.c (fname_as_string): Use lang_hooks.decl_printable_name
- with verbosity 0, instead of DECL_NAME, for human-readable string.
-
-2003-09-04 Eric Christopher <echristo@redhat.com>
-
- * targhooks.c (default_return_in_memory): Allow
- unconverted ports.
-
-2003-09-04 Eric Christopher <echristo@redhat.com>
-
- * targhooks.c (default_return_in_memory): Fix typo
- in last checkin.
-
-2003-09-04 Eric Christopher <echristo@redhat.com>
-
- * targhooks.c (default_return_in_memory): Fix default
- definition.
-
-2003-09-04 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c (m68k_coff_asm_named_section): Restore
- deleted function.
- * config/m68k/coff.h (M68K_TARGET_COFF): Add flag used to
- enable coff-only code in m68k.c.
-
-2003-09-04 Nick Clifton <nickc@redhat.com>
-
- * config.gcc: Add v850e1 target. Allow --with-cpu to accept
- v850e1.
- * config/v850/v850.h: Accept v850e1 as a default CPU.
- Accept -mv850e1 as a command line option.
- * doc/invoke.texi: Document new -mv850e1 command line switch.
- * config/v850/t-v850: Treat -mv850e1 as a multilib alias for
- -mv850e.
-
-2003-09-04 Nick Clifton <nickc@redhat.com>
-
- * config.gcc (v850e-*-*): Use t-v850e makefile fragment.
- * config/v850/t-v850: Only produce one extra multilib - for
- the v850e.
- * config/v850/t-v850e: New file: Only produce one extra
- multilib - for the v850.
-
-2003-09-04 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2.
- * config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function.
- * unwind.h (_Unwind_GetBSP): New prototype.
- * libgcc-std.ver: Add empty GCC_3.3.2 version.
- * mkmap-symver.awk: For symbol versions with no exported symbols,
- don't put anything into version script, just change all symbol
- versions which inherit from it to inherit from its ancestor.
-
-2003-09-04 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.c (mips_expand_prologue): Convert to
- calls.struct_value_rtx hook.
- (reg_or_const_float_1_operand): New.
- * config/mips/mips.h: Update Comments.
- (mips_arg): Add reg_or_const_float_1_operand.
- * config/mips/mips.md (divdf3); Convert to expander.
- (divsf3): Ditto.
- (*divdf3): New pattern.
- (*divsf3): Ditto.
-
-2003-09-04 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (wrapup_global_declarations): Fix final pass in
- unit-at-atime mode.
-
-2003-09-04 Mark Mitchell <mark@codesourcery.com>
-
- * doc/extend.texi: Document removal of cast-as-lvalue extension in
- C++.
-
-2003-09-04 Nicolas Roche <roche@act-europe.fr>
-
- * gcc.c (process_command): Fix typo.
-
-2003-09-03 David O'Brien <obrien@FreeBSD.org>
-
- optimization/11980
- * config/i386/freebsd.h (SIZE_TYPE): Support TARGET_64BIT.
- (PTRDIFF_TYPE): Likewise.
- (WCHAR_TYPE_SIZE): Likewise.
-
-2003-09-03 DJ Delorie <dj@redhat.com>
-
- * targhooks.c: New file.
- * targhooks.h: New file.
- * Makefile.in: Add targhooks.o support.
- (function.o): Depend on$(TARGET_H).
- (stmt.o): Likewise.
- (combine.o): Depend on $(TREE_H) and $(TARGET_H).
- * builtins.c (apply_args_size, expand_builtin_apply_args_1,
- expand_builtin_apply): Convert to calls.struct_value_rtx hook.
- (expand_builtin_saveregs): Convert to
- calls.expand_builtin_saveregs hook.
- * c-decl.c (start_decl): Handle new calls.promote_prototypes hook
- here, instead of ...
- (get_parm_info) ... here.
- (store_parm_decls_oldstyle): Convert to calls.promote_prototypes
- hook.
- (finish_function): Handle calls.promote_prototypes hook here too.
- * c-typeck.c (convert_arguments): Convert to
- calls.promote_prototypes hook.
- (c_convert_parm_for_inlining): Likewise.
- * calls.c (initialize_argument_information): Convert to
- calls.promote_function_args hook.
- (expand_call): Convert to calls.struct_value_rtx,
- calls.strict_argument_naming,
- calls.pretend_outgoing_varargs_named, and
- calls.promote_function_return hooks. Pass fndecl to
- aggregate_value_p. Initialize CUMULATIVE_ARGS before calling
- hooks, so they can use that.
- (emit_library_call_value_1): Likewise.
- * combine.c (setup_incoming_promotions): Convert to
- calls.promote_function_args hook.
- * emit-rtl.c: Convert to calls.struct_value_rtx hook.
- * expr.c (expand_assignment): Pass call to aggregate_value_p.
- (expand_expr): Likewise.
- * expr.h: Remove support for SETUP_INCOMING_VARARGS,
- STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED,
- RETURN_IN_MEMORY macro defaults.
- * final.c (profile_function): Convert to calls.struct_value_rtx
- hook.
- * function.c (aggregate_value_p): Accept function type tree as
- second parameter; try to deduce fntype from it. Convert to
- calls.return_in_memory hook.
- (assign_parms): Convert to calls.setup_incoming_varargs,
- calls.strict_argument_naming, calls.promote_function_args,
- calls.pretend_outgoing_varargs_named hooks. Pass fndecl to
- aggregate_value_p.
- (expand_function_start): Likewise. Convert to
- calls.struct_value_rtx hook.
- (expand_function_end): Convert to calls.promote_function_return hook.
- (allocate_struct_function): Pass fndecl to aggregate_value_p.
- * hard-reg-set.h: Update comments to new hook names.
- * integrate.c (expand_inline_function): Pass fndecl to aggregate_value_p.
- * reg-stack.c (stack_result): Likewise.
- * rtl.h (struct_value_rtx, struct_value_incoming_rtx): Delete.
- * stmt.c (expand_value_return): Convert to
- calls.promote_function_return hook.
- * target-def.h: Add TARGET_PROMOTE_FUNCTION_ARGS,
- TARGET_PROMOTE_FUNCTION_RETURN, TARGET_PROMOTE_PROTOTYPES,
- TARGET_STRUCT_VALUE_RTX, TARGET_RETURN_IN_MEMORY,
- TARGET_EXPAND_BUILTIN_SAVEREGS, TARGET_SETUP_INCOMING_VARARGS,
- TARGET_STRICT_ARGUMENT_NAMING,
- TARGET_PRETEND_OUTGOING_VARARGS_NAMED, and TARGET_CALLS.
- * target.h: Likewise.
- * tree.h (aggregate_value_p): Also takes a tree to deduce function
- attributes from (for target hooks).
- * doc/tm.texi (PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN,
- PROMOTE_PROTOTYPES, RETURN_IN_MEMORY, STRUCT_VALUE_REGNUM,
- STRUCT_VALUE, STRUCT_VALUE_INCOMING_REGNUM, STRUCT_VALUE_INCOMING,
- EXPAND_BUILTIN_SAVEREGS, SETUP_INCOMING_VARARGS,
- STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED): Convert
- to hooks.
-
- * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Pass function
- to aggregate_value_p.
- * config/arm/arm.c (arm_init_cumulative_args,
- arm_output_mi_thunk): Likewise.
- * config/i386/i386.c (ix86_return_pops_args, x86_this_parameter):
- Likewise.
- * config/mips/mips.c (mips_save_reg_p, mips_expand_prologue,
- mips_can_use_return_insn): Likewise.
- * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Likewise.
- * config/s390/s390.c (s390_output_mi_thunk): Likewise.
- * config/sparc/sparc.c (sparc_output_mi_thunk): Pass function to
- aggregate_value_p.
- * config/story16/stormy16.c (xstormy16_asm_output_mi_thunk): Pass
- function to aggregate_value_p.
- * objc/objc-act.c (generate_struct_by_value_array): Pass NULL to
- aggregate_value_p.
-
- * config/sh/sh-protos.h (sh_builtin_saveregs): Remove.
- (sh_attr_renesas_p, sh_cfun_attr_renesas_p, sh_function_arg,
- sh_function_arg_advance, sh_pass_in_reg_p): New. * config/sh/sh.c
- (sh_handle_renesas_attribute, sh_promote_prototypes,
- sh_struct_value_rtx, sh_return_in_memory, sh_builtin_saveregs,
- sh_setup_incoming_varargs, sh_strict_argument_naming,
- sh_pretend_outgoing_varargs_named): New decls.
- (targetm): Add new hooks.
- (calc_live_regs): Save MACL and MACH if the function has the
- renesas attribute.
- (sh_expand_prologue): Support renesas attribute.
- (sh_builtin_saveregs): Make static.
- (sh_build_va_list): Support renesas attribute.
- (sh_va_start): Likewise.
- (sh_va_arg): Likewise.
- (sh_promote_prototypes): New.
- (sh_function_arg): New, moved from sh.h. Support renesas
- attribute.
- (sh_function_arg_advance): Likewise.
- (sh_return_in_memory): Likewise.
- (sh_strict_argument_naming): Likewise.
- (sh_pretend_outgoing_varargs_named): Likewise.
- (sh_struct_value_rtx): New.
- (sh_attribute): Add renesas attribute.
- (sh_handle_renesas_attribute): New.
- (sh_attr_renesas_p, sh_cfun_attr_renesas_p): New.
- (sh_ms_bitfield_layout_p): Support renesas attribute also.
- (sh_output_mi_thunk): Pass function to aggregate_value_p. *
- config/sh/sh.h (TARGET_SWITCHES): Add -mrenesas as an alias for
- -mhitachi.
- (STRUCT_VALUE_REGNUM, STRUCT_VALUE, RETURN_IN_MEMORY): Moved to
- target hooks.
- (sh_args): Add renesas_abi flag.
- (INIT_CUMULATIVE_ARGS): Set it. Pass fndecl to aggregate_value_p.
- (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Move to sh.c.
- (PASS_IN_REG_P): Support renesas attribute. Pass DF and TF on the
- stack for the renesas abi.
- (STRICT_ARGUMENT_NAMING, PRETEND_OUTGOING_VARARGS_NAMED,
- SETUP_INCOMING_VARARGS, EXPAND_BUILTIN_SAVEREGS,
- PROMOTE_PROTOTYPES): Moved to sh.c. * config/sh/sh.md (call): Set
- call cookie to indicate renesas calls.
-
-2003-09-03 Mostafa Hagog <mustafa@il.ibm.com>
-
- * gcse.c (replace_one_set): New function.
- (pre_insert_copy_insn): Change the order of copying
- to make copy propagation discover additional PRE opportunities.
-
-2003-09-03 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/11700.
- * simplify-rtx.c (simplify_subreg): Check that the subreg offset
- of a hard register is representable before trying to simplify it
- using subreg_hard_regno.
-
-2003-09-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in (gcc_cv_ld_hidden): Disable unless using GNU ld.
- * configure: Regenerate.
-
-2003-09-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * intl.h (N_): Remove parentheses.
-
-2003-09-03 Bernardo Innocenti <bernie@develer.com>
-
- * config.gcc (m68k-*-linux*): Remove definition of LINUX_DEFAULT_ELF.
- * config/i370/linux.h (LINUX_DEFAULT_ELF): Remove unconditional
- definition and code blocks compiled when not defined.
- * config/i386/linux.h (LINUX_DEFAULT_ELF): Likewise.
- * config/i386/linux64.h (LINUX_DEFAULT_ELF): Likewise.
- * config/sparc/linux.h: (LINUX_DEFAULT_ELF): Likewise.
- * config/sparc/linux64.h: (LINUX_DEFAULT_ELF): Likewise.
-
-2003-09-03 Jeff Sturm <jsturm@one-point.com>
-
- * cgraphunit.c (visited_nodes): New static variable.
- (record_call_1): Use walk_tree with visited_nodes.
- (cgraph_create_edges): Use walk_tree with visited_nodes.
- Setup/teardown visited_nodes hashtable.
-
-2003-09-03 Roger Sayle <roger@eyesopen.com>
-
- * toplev.c (flag_rounding_math): New global variable.
- (f_options): Add to the list of language independent options.
- * flags.h (flag_rounding_math): Prototype here.
- (HONOR_SIGN_DEPENDENT_ROUNDING): Use flag_rounding_math instead.
- * common.opt (frounding-math): New common command line option.
- * opts.c (common_handle_option): Handle OPT_frounding_math.
- (set_fast_math_flags): -ffast-math clears flag_rounding_math.
-
- * doc/invoke.texi: Document this new command line option.
-
-2003-09-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/sol2.h (NO_IMPLICIT_EXTERN_C): Update comment.
-
-2003-09-03 Jan Hubicka <jh@suse.cz>
-
- * Makefile.in (c-objc-common.o): Kill gt-c-objc-common.h dependency.
- * c-decl.c (finish_function): Kill arguments, always use cgraph path.
- * c-objc-common.c: Kill include of gt-c-objc-common.h
- (expand_deferred_fns, deffer_fn): Kill function.
- (deferred_fns): Kill variable.
- (finish_cdtor): Update finish_function call.
- (c_objc_common_finish_file): Always call cgraph code.
- * c-parse.c: Regenerate.
- * c-parse.y: Regenerate.
- * c-tree.h (finish_function): Update prototype.
- * objc-acct.c (build_module_descriptor, finish_method_def):
- Update call of finish_function.
- * cgraphunit.c (cgraph_default_inline_p, cgraph_analyze_function): Add
- forward prototype.
- (cgraph_finalize_function): In non-unit-at-a-time mode analyze the
- function and assemble it if needed.
- (cgraph_finalize_compilation_unit): Do nothing in non-unit-at-a-time
- mode.
- (cgraph_optimize): Likewise.
- (cgraph_expand_function): In non-unit-at-a-time mode keep function body
- even when it has no inline callees.
- * c-parse.in: Update calls to finish_function.
-
-2003-09-03 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.h: Handle TARGET_CPU_iwmmxt.
- Use #error to generate the message if TARGET_DEFAULT is not
- recognised.
-
-2003-09-03 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (MASK_UNUSED1): Remove.
- (MASK_XGOT, TARGET_XGOT): Define.
- (TARGET_SWITCHES): Add an entry for -mxgot.
- (ASM_SPEC): Map -mxgot to -xgot.
- * config/mips/mips.c (mips_symbol_insns): Use TARGET_XGOT to decide
- whether we're using a big-GOT sequences.
- (mips_legitimize_const_move, mips_expand_call): Likewise.
- (override_options): Revert 2003-01-09 change.
- * doc/invoke.texi: Document -mxgot.
-
-2003-09-02 Jason Merrill <jason@redhat.com>
-
- * config/sol2.h (NO_IMPLICIT_EXTERN_C): Define here.
- * config/sparc/sol2.h: Not here.
-
-2003-09-02 Roger Sayle <roger@eyesopen.com>
-
- * expr.c (expand_expr): The code following both_summands performs
- the same task as simplify_gen_binary. Replace all gotos to
- both_summands with a call to simplify_gen_binary and delete the
- now unused label.
-
-2003-09-02 Jason Merrill <jason@redhat.com>
-
- PR c++/7327
- * config/sparc/sol2.h (NO_IMPLICIT_EXTERN_C): Define.
-
-2003-09-02 Jeff Sturm <jsturm@one-point.com>
-
- * cgraphunit.c (record_call_1): Use walk_tree_without_duplicates.
- (cgraph_optimize_function): Set current_function_decl to the
- fndecl we're integrating from.
-
-2003-09-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def: Break out _Complex math functions into their
- own category.
-
-2003-09-02 Andreas Jaeger <aj@suse.de>
-
- * langhooks-def.h (LANG_HOOKS_RTL_EXPAND_STMT): Cast properly.
-
-2003-09-02 Josef Zlomek <zlomekj@suse.cz>
-
- * cfgbuild.c (compute_outgoing_frequencies): Use NOTE instead of
- finding the note again.
-
-2003-09-02 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Remove host-specific rewrites of target_alias.
-
-2003-09-01 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (genprogs): Fix typo.
-
- * Makefile.in (gencheck.o): Remove build commands.
- (dummy-conditions.o): Likewise.
- (read-rtl.o): Likewise.
- (gensupport.o): Likewise.
- (genconfig$(build_exeext)): Remove rule.
- (genconfig.o): Remove build commands.
- (genflags$(build_exeext)): Remove rule.
- (genflags.o): Remove build commands.
- (gencodes$(build_exeext)): Remove rule.
- (gencodes.o): Remove build commands.
- (genconstants.o): Remove build commands.
- (genemit$(build_exeext)): Remove rule.
- (genemit.o): Remove build commands.
- (genrecog$(build_exeext)): Remove rule.
- (genrecog.o): Remove build commands.
- (genextract$(build_exeext)): Remove rule.
- (genextract.o): Remove build commands.
- (genpeep$(build_exeext)): Remove rule.
- (genpeep.o): Remove build commands.
- (genattr$(build_exeext)): Remove rule.
- (genattr.o): Remove build commands.
- (genprognames): New variable.
- (genprogs): Likewise.
- (genobjs): Likewise.
- (genprogs): New rule.
- (genobjs): Likewise.
- (genattrtab.o): Remove build commands.
- (genautomata.o): Likewise.
- (genoutput$(build_exeext)): Remove rule.
- (genoutput.o): Remove build commands.
- (gengenrtl.o): Likewise.
- (genpreds.o): Likewise.
- (gengtype.o): Likewise.
- (genconditions.o): Likewise.
- (gen-protos.o): Likewise.
- (scan.o): Likewise.
- (fix-header.o): Likewise.
- (scan-decls.o): Likewise.
- (check-g++): Combine with other check targets.
- (check-gcc): Likewise.
- (check-g77): Likewise.
- (check-objc): Likewise.
-
-2003-09-01 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Remove host-specific stuff which is unused here
- since the introduction of config.host.
-
- * doc/fragments.texi: Mention config.host.
- * doc/sourcebuild.texi: Mention config.host. Give brief descriptions
- of config.build, config.host, and config.gcc.
-
-2003-09-01 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (pushdecl): Don't put variables on
- C_TYPE_INCOMPLETE_VARS of a type unless that type is itself
- incomplete.
-
-2003-09-01 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.host: New file.
- * config.gcc: Remove some host-specific stuff and some
- logic needed only for repeated invocation.
- * configure.in: Use config.host.
- * configure: Regenerate.
-
-2003-09-01 Josef Zlomek <zlomekj@suse.cz>
-
- * c-typeck.c (build_binary_op): Kill BIT_ANDTC_EXPR.
- * convert.c (convert_to_integer): Kill BIT_ANDTC_EXPR.
- * fold-const.c (int_const_binop): Kill BIT_ANDTC_EXPR.
- (fold): Kill BIT_ANDTC_EXPR and label bit_and.
- * tree.def (BIT_ANDTC_EXPR): Kill.
-
-2003-08-31 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in: Remove uses of "for x in .. ${foo}" idiom.
- * configure: Regenerate.
-
- * config.gcc: Remove references to install_headers_dir, now unused
- since introduction of config.build.
- * config.gcc (i860-*-sysv4*): Don't set unused USG, SVR3 defines.
-
- * doc/fragments.texi, doc/sourcebuild.texi: Mention new file
- config.build.
-
- * config.build: New file.
- * config.gcc: Remove some build-specific stuff.
- * configure.in: Use config.build.
- * configure: Regnerate.
-
-2003-08-31 Steven Bosscher <steven@gcc.gnu.org>
- Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/11823
- * stmt.c (expand_end_case_type): Only use jump tables for dense
- switch statements when optimizing for size.
-
-2003-08-31 Olivier Hainque <hainque@act-europe.fr>
-
- * builtins.c (expand_builtin_setjmp): Use emit_jump to jump around
- the != 0 case, which ensures pending stack adjustments are flushed.
-
-2003-08-30 Zack Weinberg <zack@codesourcery.com>
-
- * configure.frag: Delete file.
- * configure.in: Rename the substitution variables
- dep_host_xmake_file and dep_tmake_file to xmake_file and
- tmake_file respectively. Do not expand $srcdir in the
- value of these; leave that for Make. Introduce a new
- substitution varaible, all_lang_makefrags, which lists
- subdirectory Make-lang.in files; exclude these from
- all_lang_makefiles, which is now only for subdirectory
- outputs. Do not invoke configure.frag. Do not set nor
- AC_SUBST_FILE target_overrides, host_overrides, or
- language_fragments. Create build subdirectories in
- config.status extra commands.
- * configure: Regenerate.
- * Makefile.in: Update substitutions to match changes to
- configure. Use include directives instead of @-insertions
- to read in host, target, and language fragments.
- (Makefile rule): Do not invoke configure.frag. Do not copy
- config.status to config.run before executing it. Set
- CONFIG_HEADERS and CONFIG_FILES so that only Makefile gets
- regenerated.
- (cstamp-h rule): Set CONFIG_FILES as well as CONFIG_HEADERS.
-
-2003-08-30 Zack Weinberg <zack@codesourcery.com>
-
- * c-tree.h: Delete COMPARE_DIFFERENT_TU from enumeration.
- * c-typeck.c (same_translation_unit_p): New function.
- (comptypes): Use it instead of flags parameter to identify
- structure types from different translation units.
- * c-decl.c (duplicate_decls): Always call comptypes with
- COMPTYPE_STRICT flags argument.
- (c_reset_state): Set BLOCK_SUPERCONTEXT of the block formed
- to file_scope_decl.
-
-2003-08-30 Zack Weinberg <zack@codesourcery.com>
-
- * c-tree.h (C_TYPE_INCOMPLETE_VARS): New macro.
- * c-decl.c (struct c_scope): Remove "incomplete" field.
- (pushdecl): Attach variables with incomplete types to
- the TYPE_MAIN_VARIANT of the incomplete type in question.
- (finish_struct): Look at C_TYPE_INCOMPLETE_VARS for variables
- to complete, not at current_scope->incomplete. All such
- variables do need completion.
-
-2003-08-30 Richard Earnshaw <rearnsha@arm.com>
- Nicolas Pitre <nico@cam.org>
-
- * arm/lib1funcs.asm (RETCOND): Delete.
- (RETLDM): New assembler macro. Use it for returning with ldm/ldr.
- (ARM_LDIV0, THUMB_LDIV0): Collapse multiple definitions.
- (__ARM_ARCH__): Move here from ieee754-?f.S.
- (RET, RETc): Clean up definitions.
- (DIV_FUNC_END): Renamed from FUNC_END. All uses changed.
- (FUNC_END): New macro that marks the end of any function.
- (ARM_FUNC_START): New macro that allows an assembler routine to be
- implemented in ARM code even if a Thumb-only build.
- Unconditionally include ieee754-?f.S.
- * arm/ieee754-df.S: Delete macros moved to lib1funcs.asm.
- Mark ends of functions.
- Split into separate conditionally-compiled units.
- Use RETLDM to return from routines.
- * arm/ieee754-sf.S: Similarly.
- * t-arm-elf (LIB1ASMFUNCS): Remove _ieee754_dp and _ieee754_sp.
- Add _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi
- _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2
- _fixsfsi and _fixunssfsi.
-
- * arm/ieee754-df.S (__muldf3): Fix bug when result of a
- multiplication underflows to zero.
- (__adddf3): Fix bug when using VFP ordering on little-endian
- processors.
- (__fixdfsi): Use rrx to extract the carry into a register instead of
- MRS instruction. Optimize later use of result.
- * arm/ieee754-sf.S (__fixsfsi): Likewise.
- (__fixunssfsi): Use a better sequence for handling negative-or-zero.
-
-2003-08-29 Richard Henderson <rth@redhat.com>
-
- * tree-optimize.c: New file.
- * Makefile.in (OBJS-archive): Add tree-optimize.o.
- (tree-optimize.o): New.
- * c-decl.c (store_parm_decls): Use allocate_struct_function.
- (finish_function): Don't free_after_parsing or free_after_compilation.
- (set_save_expr_context): Move to tree-optimize.c.
- (c_expand_body_1): Use tree_rest_of_compilation.
- * c-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
- * objc/objc-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New.
- * c-objc-common.c (expand_deferred_fns): Don't emit unused inlines;
- iterate until closure.
- * langhooks-def.h (LANG_HOOKS_RTL_EXPAND_START,
- LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_RTL_EXPAND_END): New.
- (LANG_HOOKS_RTL_EXPAND_INITIALIZER): New.
- * langhooks.h (struct lang_hooks_for_rtl_expansion): New.
- * toplev.h (tree_rest_of_compilation): Declare it.
-
-2003-08-29 Richard Henderson <rth@redhat.com>
-
- * function.h (struct function): Add rtl_inline_init, saved_for_inline.
- * integrate.c (save_for_inline): Set saved_for_inline.
- * c-semantics.c (genrtl_scope_stmt): Check it.
- * toplev.c (wrapup_global_declarations): Check it.
- (rest_of_handle_inlining): Set and check rtl_inline_init.
- (rest_of_compilation): Remove out of date comment.
-
-2003-08-29 Richard Henderson <rth@redhat.com>
-
- * function.c (allocate_struct_function): New, split out of ...
- (prepare_function_start, init_function_start): ... here.
- * expr.c (init_expr): Use ggc_alloc_cleared.
- * stmt.c (init_stmt_for_function): Likewise.
- * tree.h (allocate_struct_function): Declare.
-
-2003-08-29 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Don't use negated character class in shell case
- clause.
-
-2003-08-29 Richard Henderson <rth@redhat.com>
-
- * function.h (struct function): Move function_frequency and
- max_jumptable_ents before start of bit field members.
-
-2003-08-29 Richard Henderson <rth@redhat.com>
-
- * builtins.c (expand_builtin_constant_p): Check cse_not_expected here,
- (fold_builtin_constant_p) ... not here.
-
-2003-08-29 Richard Henderson <rth@redhat.com>
-
- * c-tree.h (C_DECL_FILE_SCOPE): Move ...
- * tree.h (DECL_FILE_SCOPE_P): ... here, and rename.
- * c-decl.c, c-objc-common.c, c-typeck.c: Update to match.
-
-2003-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def: Fix typos.
- (ATTR_MATHFN_FPROUNDING_STORE): New macro.
- (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL, BUILT_IN_MODF,
- BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO, BUILT_IN_REMQUOF,
- BUILT_IN_REMQUOL, BUILT_IN_SINCOS, BUILT_IN_SINCOSF,
- BUILT_IN_SINCOSL): Use ATTR_MATHFN_FPROUNDING_STORE.
-
- * builtins.def (BUILT_IN_ERFC, BUILT_IN_ERFCF, BUILT_IN_ERFCL):
- Use ATTR_MATHFN_FPROUNDING_ERRNO.
-
-2003-08-29 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc (i386-*-vsta): Fix obvious bogosity.
-
- * fixinc/inclhack.def: Remove special cases for unsupported
- PTX 1 and PTX 2 (including i[34567]86-sequent-sysv3).
- * fixinc/fixincl.x: Regenerate.
-
-2003-08-29 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (cpp.info): Just state dependencies.
- (gcc.info): Likewise.
- (gccint.info): Likewise.
- (gccinstall.info): Likewise.
- (cppinternals.info): Likewise.
- (cpp.dvi): Likewise.
- (gcc.dvi): Likewise.
- (gccint.dvi): Likewise.
- (gccinstall.dvi): Likewise.
- (cppinternals.dvi): Likewise.
- (gcov.1): Likewise.
- (cpp.1): Likewise.
- (gcc.1): Likewise.
- (gfdl.7): Likewise.
- (gpl.7): Likewise.
- (fsf-funding.7): Likewise.
- ($(objdir)/%.info): New pattern rule.
- (%.dvi): Likewise.
-
-2003-08-29 Kelley Cook <kelleycook@wideopenwest.com>
-
- * Makefile.in (restage1): Pass BOOT_CFLAGS to recursive make.
- (restage2): Likewise.
- (restage3): Likewise.
- (restage4): Likewise.
- (restageprofile): Likewise.
- (restagefeedback): Likewise.
- (bubblestrap): Likewise.
-
-2003-08-29 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Narrow unsupported target match to avoid clobbering
- i?86-sequent-sysv4*.
-
-2003-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (mathfn_built_in): Handle new math builtins.
-
-2003-08-28 Per Bothner <per@bothner.com>
-
- Fix (hopefully temporary) for breakage caused by my 08-21 patch.
- * cpplex.c (_cpp_get_fresh_line): Check for null buffer.
- (_cpp_lex_buffer): Likewise.
- * cpptrad.c (_cpp_read_logical_line_trad): Likewise.
-
-2003-08-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*mulsi3_sign"): New insn.
- ("mulsidi3" expander, "mulsi_6432" insn): Remove, replace by ...
- ("mulsidi3"): ... this new insn.
- ("umulsidi3"): New insn.
- ("divmoddi3", "divmodtidi3", "divmodtisi3"): Simplify by using
- mixed-mode matching constraints.
- ("udivmodsi4", "udivmoddisi3"): New insns.
- ("udivsi3", "umodsi3"): Use only in ESA/390 mode.
-
-2003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtin-types.def (BT_INT_PTR, BT_FLOAT_PTR, BT_DOUBLE_PTR,
- BT_LONGDOUBLE_PTR, BT_FN_FLOAT_FLOAT_FLOATPTR,
- BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
- BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
- BT_FN_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_INTPTR,
- BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
- BT_FN_FLOAT_FLOAT_FLOAT_INTPTR, BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
- BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
- BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
- BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
- BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR): New.
- * builtins.def (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL,
- BUILT_IN_MODF, BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO,
- BUILT_IN_REMQUOF, BUILT_IN_REMQUOL, BUILT_IN_SINCOS,
- BUILT_IN_SINCOSF, BUILT_IN_SINCOSL): New.
- * tree.c: Assign new type_nodes.
- * tree.h (tree_index): Add TI_FLOAT_PTR_TYPE, TI_DOUBLE_PTR_TYPE,
- TI_LONG_DOUBLE_PTR_TYPE, TI_INTEGER_PTR_TYPE.
- (float_ptr_type_node, double_ptr_type_node,
- long_double_ptr_type_node, integer_ptr_type_node): New type_nodes.
-
- * doc/extend.texi: Document new builtins.
-
-2003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtin-types.def (BT_FN_FLOAT_INT_FLOAT,
- BT_FN_DOUBLE_INT_DOUBLE, BT_FN_LONGDOUBLE_INT_LONGDOUBLE): New.
-
- * builtins.def (BUILT_IN_ERF, BUILT_IN_ERFC, BUILT_IN_ERFCF,
- BUILT_IN_ERFCL, BUILT_IN_ERFF, BUILT_IN_ERFL, BUILT_IN_GAMMA,
- BUILT_IN_GAMMAF, BUILT_IN_GAMMAL, BUILT_IN_J0, BUILT_IN_J0F,
- BUILT_IN_J0L, BUILT_IN_J1, BUILT_IN_J1F, BUILT_IN_J1L,
- BUILT_IN_JN, BUILT_IN_JNF, BUILT_IN_JNL, BUILT_IN_LGAMMA,
- BUILT_IN_LGAMMAF, BUILT_IN_LGAMMAL, BUILT_IN_SIGNIFICAND,
- BUILT_IN_SIGNIFICANDF, BUILT_IN_SIGNIFICANDL, BUILT_IN_TGAMMA,
- BUILT_IN_TGAMMAF, BUILT_IN_TGAMMAL, BUILT_IN_Y0, BUILT_IN_Y0F,
- BUILT_IN_Y0L, BUILT_IN_Y1, BUILT_IN_Y1F, BUILT_IN_Y1L,
- BUILT_IN_YN, BUILT_IN_YNF, BUILT_IN_YNL): New.
-
- * doc/extend.texi: Document new builtins.
-
-2003-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/mkfixinc.sh: Remove special case code for unsupported
- variants of i?86, powerpcle, and thumb.
- * fixinc/mkfixinc.sh: Remove special case code for unsupported
- arm and hppa variants.
-
-2003-08-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtin-types.def (BT_FN_INT_FLOAT, BT_FN_INT_DOUBLE,
- BT_FN_INT_LONGDOUBLE, BT_FN_LONG_FLOAT, BT_FN_LONG_DOUBLE,
- BT_FN_LONG_LONGDOUBLE, BT_FN_LONGLONG_FLOAT,
- BT_FN_LONGLONG_DOUBLE, BT_FN_LONGLONG_LONGDOUBLE,
- BT_FN_FLOAT_FLOAT_LONGDOUBLE, BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
- BT_FN_FLOAT_FLOAT_INT, BT_FN_DOUBLE_DOUBLE_INT,
- BT_FN_LONGDOUBLE_LONGDOUBLE_INT, BT_FN_FLOAT_FLOAT_LONG,
- BT_FN_DOUBLE_DOUBLE_LONG, BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
- BT_FN_FLOAT_FLOAT_FLOAT_FLOAT, BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
- BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE): New.
-
- * builtins.def (BUILT_IN_ACOS, BUILT_IN_ACOSF, BUILT_IN_ACOSH,
- BUILT_IN_ACOSHF, BUILT_IN_ACOSHL, BUILT_IN_ACOSL, BUILT_IN_ASIN,
- BUILT_IN_ASINF, BUILT_IN_ASINH, BUILT_IN_ASINHF, BUILT_IN_ASINHL,
- BUILT_IN_ASINL, BUILT_IN_ATANH, BUILT_IN_ATANHF, BUILT_IN_ATANHL,
- BUILT_IN_CBRT, BUILT_IN_CBRTF, BUILT_IN_CBRTL, BUILT_IN_COPYSIGN,
- BUILT_IN_COPYSIGNF, BUILT_IN_COPYSIGNL, BUILT_IN_COSH,
- BUILT_IN_COSHF, BUILT_IN_COSHL, BUILT_IN_DREM, BUILT_IN_DREMF,
- BUILT_IN_DREML, BUILT_IN_EXP10, BUILT_IN_EXP10F, BUILT_IN_EXP10L,
- BUILT_IN_EXP2, BUILT_IN_EXP2F, BUILT_IN_EXP2L, BUILT_IN_EXPM1,
- BUILT_IN_EXPM1F, BUILT_IN_EXPM1L, BUILT_IN_FDIM, BUILT_IN_FDIMF,
- BUILT_IN_FDIML, BUILT_IN_FMA, BUILT_IN_FMAF, BUILT_IN_FMAL,
- BUILT_IN_FMAX, BUILT_IN_FMAXF, BUILT_IN_FMAXL, BUILT_IN_FMIN,
- BUILT_IN_FMINF, BUILT_IN_FMINL, BUILT_IN_HYPOT, BUILT_IN_HYPOTF,
- BUILT_IN_HYPOTL, BUILT_IN_ILOGB, BUILT_IN_ILOGBF, BUILT_IN_ILOGBL,
- BUILT_IN_LDEXP, BUILT_IN_LDEXPF, BUILT_IN_LDEXPL, BUILT_IN_LLRINT,
- BUILT_IN_LLRINTF, BUILT_IN_LLRINTL, BUILT_IN_LLROUND,
- BUILT_IN_LLROUNDF, BUILT_IN_LLROUNDL, BUILT_IN_LOG10,
- BUILT_IN_LOG10F, BUILT_IN_LOG10L, BUILT_IN_LOG1P, BUILT_IN_LOG1PF,
- BUILT_IN_LOG1PL, BUILT_IN_LOG2, BUILT_IN_LOG2F, BUILT_IN_LOG2L,
- BUILT_IN_LOGB, BUILT_IN_LOGBF, BUILT_IN_LOGBL, BUILT_IN_LRINT,
- BUILT_IN_LRINTF, BUILT_IN_LRINTL, BUILT_IN_LROUND,
- BUILT_IN_LROUNDF, BUILT_IN_LROUNDL, BUILT_IN_NEXTAFTER,
- BUILT_IN_NEXTAFTERF, BUILT_IN_NEXTAFTERL, BUILT_IN_NEXTTOWARD,
- BUILT_IN_NEXTTOWARDF, BUILT_IN_NEXTTOWARDL, BUILT_IN_POW10,
- BUILT_IN_POW10F, BUILT_IN_POW10L, BUILT_IN_REMAINDER,
- BUILT_IN_REMAINDERF, BUILT_IN_REMAINDERL, BUILT_IN_RINT,
- BUILT_IN_RINTF, BUILT_IN_RINTL, BUILT_IN_SCALB, BUILT_IN_SCALBF,
- BUILT_IN_SCALBL, BUILT_IN_SCALBLN, BUILT_IN_SCALBLNF,
- BUILT_IN_SCALBLNL, BUILT_IN_SCALBN, BUILT_IN_SCALBNF,
- BUILT_IN_SCALBNL, BUILT_IN_SINH, BUILT_IN_SINHF, BUILT_IN_SINHL,
- BUILT_IN_TANH, BUILT_IN_TANHF, BUILT_IN_TANHL): New.
-
- * doc/extend.texi: Document new builtins.
-
-2003-08-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (legitmate_constant_p): Use LARL on
- zSeries machines even in 31-bit addressing mode.
- (legitimate_reload_constant_p): Likewise.
- (legitimize_pic_address): Likewise.
- (legitimize_tls_address): Likewise.
- (s390_split_branches): Likewise.
- (s390_dump_pool): Likewise.
- (s390_mainpool_finish): Likewise.
- (s390_chunkify_start): Likewise.
- (s390_select_rtx_section): Likewise.
- * config/s390/s390.md ("doloop_si"): Likewise.
- ("pool_start_31", "pool_end_31"): Likewise.
- ("pool_start_64", "pool_end_64"): Likewise.
- ("main_base_31_small", "main_base_31_large"): Likewise.
- ("main_base_64"): Likewise.
- ("reload_base_31", "reload_base_64"): Likewise.
- ("*movsi_larl"): New insn.
- ("cjump", "icjump"): Use long branches on zSeries machines.
- ("jump"): Likewise.
- ("call"): Use BRASL on zSeries machines.
- ("call_value", "call_value_tls"): Likewise.
- ("brasl", "bras", "basr_64", "basr_31", "bas_64", "bas_31"): Remove
- and replace by ...
- ("*bras", "*brasl", "*basr") ... these new insns.
- ("brasl_r", "bras_r", "basr_64_r", "basr_31_r", "bas_64_r",
- "bas_31_r"): Remove and replace by ...
- ("*bras_r", "*brasl_r", "*basr_r") ... these new insns.
- ("brasl_tls", "bras_tls", "basr_64_tls", "basr_31_tls",
- "bas_64_tls", "bas_31_tls"): Remove and replace by ...
- ("*bras_tls", "*brasl_tls", "*basr_tls") ... these new insns.
- ("*return_si", "*return_di"): Remove and replace by ...
- ("*return"): ... this new insn.
- ("rotlsi3"): Allow on zSeries machines.
-
- * config/s390/s390.c (legitimize_reload_constant_p): Use
- LL/LH type instructions in z/Architecture mode.
- * config/s390/s390.md ("*movsi_lli"): Likewise.
- ("*andsi3_ni", "*andhi3_ni", "*andqi3_ni"): Likewise.
- ("*iorsi3_ni", "*iorhi3_ni", "*iorqi3_ni"): Likewise.
- ("*extendqisi2"): Use LB in z/Architecture mode.
- ("*zero_extendqisi2_64", "*zero_extendqisi2_31"): Use LLGC in
- z/Architecture mode.
- ("zero_extendqihi2", "*zero_extendqihi2_64", "*zero_extendqihi2_31"):
- Likewise.
-
- * config/s390/s390.md ("*tmdi_ext"): Allow in both 64-bit
- and 31-bit mode.
- ("ptr_extend"): Allow only in 64-bit mode.
-
-2003-08-27 Daniel Jacobowitz <drow@mvista.com>
-
- * gcc.c (STANDARD_EXEC_PREFIX, STANDARD_STARTFILE_PREFIX)
- (TOOLDIR_BASE_PREFIX, STANDARD_BINDIR_PREFIX): Remove unnecessary
- definitions.
- (main): Only use standard_startfile_prefix if native.
- * doc/tm.texi (STANDARD_STARTFILE_PREFIX): Update.
-
-2003-08-27 Per Bothner <pbothner@apple.com>
-
- * cpperror.c (print_location): Don't check for !pfile->buffer. That
- test fails following my 08-21 change, and it seems unnecessary anyway.
- (cpp_error): Likewise.
-
-2003-08-27 Jason Merrill <jason@redhat.com>
-
- * real.c (do_multiply): Initialize with memset.
-
-2003-08-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * gcov.c (typedef struct arc_info): New field cs_count.
- (accumulate_line_counts): Find cycles correctly.
-
-2003-08-27 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (struct machine_function): Remove member
- literal_pool_label.
- (s390_optimize_prolog): Replace TEMP_REG argument with
- TEMP_USED and BASE_USED. Do not check get_pool_size ().
- (general_s_operand): Accept all immediates before reload if
- ALLOW_IMMEDIATE. If not ALLOW_IMMEDIATE, reject literal pool
- references.
- (s390_output_symbolic_const): Remove UNSPEC_LTREL_OFFSET handling.
- (find_constant_pool_ref): Ignore UNSPECV_POOL_ENTRY insns.
- (s390_alloc_pool): New function.
- (s390_new_pool): Call it.
- (s390_dump_pool): Add REMOTE_LABEL argument.
- (s390_chunkify_start): Add BASE_REG argument. Do not check
- get_pool_size ().
- (s390_chunkify_finish): Add BASE_REG argument. Adapt
- s390_dump_pool call.
- (s390_pool_count, s390_nr_constants): Remove.
- (s390_output_constant_pool): Remove.
- (s390_mainpool_start): New function.
- (s390_mainpool_finish): New function.
- (s390_mainpool_cancel): New function.
- (s390_reorg): Implement main literal pool handling.
- (s390_emit_prologue): Emit main_pool placeholder instead of
- literal_pool_31 / literal_pool_64 insns.
- * config/s390/s390.h (s390_pool_count, s390_nr_constants): Remove.
- (ASM_OUTPUT_POOL_PROLOGUE, ASM_OUTPUT_SPECIAL_POOL_ENTRY): Remove.
- * config/s390/s390.md (UNSPEC_MAIN_BASE): New symbolic constant.
- ("main_base_31_small", "main_base_31_large"): New insns.
- ("main_base_64", "main_pool"): New insns.
- ("literal_pool_31", "literal_pool_64"): Remove.
-
-2003-08-27 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (ptx_netswap): New disabled fix, ported from
- fixinc.ptx.
- * fixinc/inclhack.def (undefine_null): Don't generate \r characters.
- Prettify a little.
- * fixinc/fixincl.x: Regenerate.
-
-2003-08-27 Richard Earnshaw <rearnsha@arm.com>
-
- * lib1funcs.asm (L_ieee754_sp): New. Include ieee754-sf.S.
- (L_ieee754_dp): New. Include ieee754-df.S.
- * arm/ieee754-sf.S: Rework to allow interworking, calling from Thumb,
- and compilation in apcs-26 mode.
- * arm/ieee754-df.S: Likewise.
- * t-arm-elf (DPBIT, FPBIT, fp-bit.c dp-bit.c): Delete rules
- (LIB1ASMFUNCS): Add _ieee754_sp and _ieee754_dp targets.
-
-2003-08-27 Nicolas Pitre <nico@cam.org>
-
- * arm/ieee754-sf.S: New.
- * arm/ieee754-df.S: New.
-
-2003-08-27 Jakub Jelinek <jakub@redhat.com>
-
- * builtins.c (expand_builtin_expect_jump): Save pending_stack_adjust
- and restore it if returning NULL.
-
-2003-08-27 Richard Sandiford <rsandifo@redhat.com>
-
- * calls.c (initialize_argument_information): If an argument has no
- stack space associated with it, and BLOCK_REG_PADDING is defined,
- use it to decide at which end the argument should be padded.
- * function.c (assign_parms): Allocate BLKmode stack slots.
- * config/mips/mips-protos.h (mips_pad_arg_upward): Declare.
- (mips_pad_reg_upward): Declare.
- * config/mips/mips.h (PAD_VARARGS_DOWN): Use FUNCTION_ARG_PADDING.
- (CUMULATIVE_ARGS): Remove num_adjusts and adjusts.
- (FUNCTION_ARG_PADDING): Use mips_pad_arg_upward.
- (BLOCK_REG_PADDING): Use mips_pad_reg_upward.
- * config/mips/mips.c (struct mips_arg_info): Remove struct_p.
- (mips_expand_call): Remove code for generating structure shifts.
- (mips_arg_info): Don't set struct_p. Don't set fpr_p for non-float
- types unless using the EABI.
- (function_arg_advance): Don't generate shift instructions.
- (function_arg): Don't return them. Don't short-circuit the
- check for double structure chunks for DFmode arguments.
- (mips_pad_arg_upward, mips_pad_reg_upward): New functions.
- (mips_expand_prologue): Remove code to emit structure shifts.
- * config/mips/irix6-libc-compat.c: Remove workarounds for buggy
- structure passing (inet_ntoa, inet_lnaof, inet_netof). Update
- comments to say that only structure returns are a problem.
-
-2003-08-26 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/tests/base/string.h, fixinc/tests/base/sys/regset.h:
- Fix to match produced versions.
- * fixinc/inclhack.def (longlong_t): New disabled test, ported
- from fixinc.svr4.
- * fixinc/inclhack.def (ptx_pwd_h): New disabled fix, ported
- from fixinc.ptx.
- * fixinc/inclhack.def (ptx_sys_mc_param_h): New disabled fix,
- ported from fixinc.ptx.
-
-2003-08-26 Per Bothner <pbothner@apple.com>
-
- * cpplib.h (struct cpp_token): Change type of field line to fileline.
- (cpp_error_with_line): Use fileline for appropriate parameter.
- * cpphash.h (struct cpp_macro): Change type of field line to fileline.
- (struct cpp_reader): Likewise for fields line and directive_line.
- (_cpp_begin_message): Use fileline for appropriate parameter.
- * cpperror.c (print_location, _cpp_begin_message, cpp_error_with_line,
- cpp_error): Use fileline for appropriate parameters and variables.
- (print_location): New local lin, since it is not a fileline.
-
-2003-08-26 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/12002
- * tree.h (SCALAR_FLOAT_TYPE_P, COMPLEX_FLOAT_TYPE_P): New macros.
- (FLOAT_TYPE_P): Define in terms of these two new macros.
- * fold-const.c (fold <PLUS_EXPR>): Don't convert x+x into x*2.0
- for complex floating point types.
-
-2003-08-26 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (emit_prologue): Don't check literal pool size.
- * config/s390/s390.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Call
- s390_output_pool_entry.
-
-2003-08-26 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (svr4_preproc_lint_on,
- svr4_preproc_lint_off, svr4_preproc_machine): New disabled
- fixes, ported from fixinc.svr4.
-
-2003-08-26 Mark Mitchell <mark@codesourcery.com>
-
- * doc/install.texi (Prerequisites): Mention GNU make requirement.
-
- * Makefile.in (AR_FOR_TARGET): Export it.
- (AR_CREATE_FOR_TARGET): Likewise.
- (AR_FLAGS_FOR_TARGET): Likewise.
- (AR_EXTRACT_FOR_TARGET): Likewise.
- (AWK): Likewise.
- (BUILD_PREFIX): Likewise.
- (BUILD_PREFIX_1): Likewise.
- (DESTDIR): Likewise.
- (GCC_FOR_TARGET): Likewise.
- (INCLUDES): Likewise.
- (INSTALL_DATA): Likewise.
- (LIB1ASMSRC): Likewise.
- (LIBGCC2_CFLAGS): Likewise.
- (MACHMODE_H): Likewise.
- (NM_FOR_TARGET): Likewise.
- (RANLIB_FOR_TARGET): Likewise.
- (libsubdir): Likewise.
- (slibdir): Likewise.
- (ORDINARY_FLAGS_TO_PASS): Remove stuff that we're
- exporting.
- (libgcc.a): Don't pass them here.
- (stmp-multilib): Or here.
- (install-libgcc): Or here.
- (install-multilib): Or here.
- (POSTSTAGE1_FLAGS_TO_PASS): Or here.
- (stage1_build): Or here.
-
-2003-08-26 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390.md ("*llgt_sisi", "*llgt_sisi_split", "*llgt_didi",
- "*llgt_didi_split", "*llgt_sidi", "*llgt_sidi_split"): New insns.
-
-2003-08-26 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390.md ("*fmadddf", "*fmsubdf",
- "*fmaddsf", "*fmsubsf"): New insns.
-
-2003-08-26 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold <MULT_EXPR>): Optimize (C1/X)*C2 into
- (C1*C2)/X when unsafe math optimizations are allowed.
- (fold <RDIV_EXPR>): Optimize C1/(X*C2) into (C1/C2)/X with unsafe
- math optimizations. Minor code clean-ups. Recursively call
- fold when constructing sub-expressions.
-
-2003-08-26 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (fold_builtin_bitop): New function to perform constant
- folding of ffs, clz, ctz, popcount and parity builtin functions
- and their long and long long variants (such as ffsl and ffsll).
- (fold_builtin): fold_builtin_bitop when appropriate.
- * simplify-rtx.c (simplify_unary_operation): Honor both
- CLZ_DEFINED_VALUE_AT_ZERO and CTZ_DEFINED_VALUE_AT_ZERO when
- evaluating clz and ctz at compile-time, for operands wider
- than HOST_WIDE_INT.
-
-2003-08-26 Nathan Sidwell <nathan@codesourcery.com>
-
- * builtins.c (build_function_call_expr): Don't set
- TREE_SIDE_EFFECTS here.
- * expr.c (emit_block_move_via_libcall): Likewise.
- (clear_storage_via_libcall): Likewise.
- * tree.c (build): Set TREE_SIDE_EFFECTS for non-const, non-pure
- CALL_EXPRs.
-
- * gcse.c (is_too_expensive): New function.
- (gcse_main, delete_null_pointer_checks, bypass_jumps): Use it.
-
-2003-08-25 Zack Weinberg <zack@codesourcery.com>
-
- * config.gcc (hppa*-*-hpux11*, ia64*-*-hpux*): Remove
- commented-out logic to use DCE threads (if present), add
- support for POSIX threads.
- * config/ia64/hpux.h: Define CPP_SPEC to set appropriate
- #defines for -pthread. Add -lpthread to LIB_SPEC when
- -pthread. In both cases take -mt as a synonym for -pthread
- for acc compatibility.
- Define GTHREAD_USE_WEAK to 0.
- * config/pa/pa-hpux11.h: Likewise for CPP_SPEC and LIB_SPEC.
- Remove old logic for DCE threads from LIB_SPEC.
- * config/pa/pa64-hpux.h: Define GTHREAD_USE_WEAK to 0.
-
-2003-08-25 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_mathfn): Rearrange so that we only
- return 0 for invalid argument types. Instead drop through to a
- call of expand_call at the bottom of function. If op is SQRT,
- try attaching a SQRT rtx as the REQ_EQUAL note of the libcall.
-
-2003-08-25 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.c (ia64_expand_tls_address): Properly truncate
- result when op0 is SImode.
-
-2003-08-25 Nathanael Nerode <neroden@twcny.rr.com>
-
- * fixinc/inclhack.def (svr4_sighandler_type): New fix, ported
- from fixinc.svr4.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/sys/signal.h: Regenerate.
-
-2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (simplify_comparison): Re-enable widening of comparisons
- with non-paradoxical subregs of non-REG expressions.
-
-2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (distribute_notes): Handle REG_ALWAYS_RETURN.
-
-2003-08-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (combine_simplify_rtx): Fix RTL sharing bug.
-
-2003-08-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * pretty-print.h (pp_maybe_newline_and_indent): New macro.
- * c-pretty-print.h (c_pretty_printer): Now typedef to the
- structure. Be consistent with pretty-print.h abd cxx-pretty-print.h
- (struct c_pretty_print_info): Document. Add new fields.
- (pp_type_specifier_seq): Rename from pp_c_type_specifier.
- (pp_direct_abstract_declarator): New macro.
- (pp_ptr_operator): Likewise.
- (pp_simple_type_specifier): Likewise.
- (pp_expression): Likewise.
- (pp_parameter_list): Rename from pp_parameter_declaration.
- * c-pretty-print.c (pp_c_whitespace): Now a function.
- (pp_c_left_paren): Likewise.
- (pp_c_right_paren): Likewise.
- (pp_c_dot): Likewise.
- (pp_c_ampersand): Likewise.
- (pp_c_arrow): Likewise.
- (pp_c_semicolon): Likewise.
- (pp_c_type_cast): New function.
- (pp_c_space_for_pointer_operator): Likewise.
- (pp_c_call_argument_list): Likewise.
- (pp_c_cv_qualifier): Adjust prototype.
- (pp_c_type_qualifier_list): Likewise.
- (pp_c_pointer): Likewise. Handle REFERENCE_TYPE here.
- (pp_c_type_specifier): Rename from pp_c_simple_type_specifier.
- Adjust to follow standard grammar.
- (pp_c_specifier_qualifier_list): Adjusr prototype. Handle
- REFERENCE_TYPE. Tidy.
- (pp_c_parameter_type_list): Adjust prototype. Tidy.
- (pp_c_parameter_declaration): Remove.
- (pp_c_abstract_declarator): Adjust prototype.
- (pp_c_direct_abstract_declarator): Likewise.
- (pp_c_type_id): Likewise.
- (pp_c_storage_class_specifier): Likewise.
- (pp_c_function_specifier): Likewise.
- (pp_c_declaration_specifiers): Likewise.
- (pp_c_direct_declarator): Likewise.
- (pp_c_declarator): Likewise.
- (pp_c_declarator): Likewise.
- (pp_c_declaration): Likewise.
- (pp_c_attributes): Likewise. Tidy.
- (pp_c_function_definition): Adjust prototype.
- (pp_c_char): Likewise.
- (pp_c_string_literal): Likewise.
- (pp_c_integer_constant): Likewise.
- (pp_c_character_constant): Likewise.
- (pp_c_bool_constant): Likewise.
- (pp_c_enumeration_constant): Likewise.
- (pp_c_floating_constant): Likewise.
- (pp_c_constant): Likewise.
- (pp_c_identifier): Likewise.
- (pp_c_primary_expression): Likewise. Remove TARGET_EXPR case. Tidy.
- (pp_c_initializer): Adjust prototype.
- (pp_c_init_declarator): Likewise.
- (pp_c_initializer_list): Likewise.
- (pp_c_id_expression): Likewise.
- (pp_c_postfix_expression): Likewise.
- (pp_c_expression_list): Likewise.
- (pp_c_unary_expression): Likewise.
- (pp_c_cast_expression): Likewise.
- (pp_c_multiplicative_expression): Likewise.
- (pp_c_additive_expression): Likewise.
- (pp_c_shift_expression): Likewise.
- (pp_c_relational_expression): Likewise.
- (pp_c_equality_expression): Likewise.
- (pp_c_and_expression): Likewise.
- (pp_c_exclusive_or_expression): Likewise.
- (pp_c_inclusive_or_expression): Likewise.
- (pp_c_logical_and_expression): Likewise.
- (pp_c_logical_or_expression): Likewise.
- (pp_c_conditional_expression): Likewise.
- (pp_c_assignment_expression): Likewise.
- (pp_c_expression): Likewise. Tidy.
- (pp_c_statement): Likewise. Document.
- (pp_c_pretty_printer_init): Adjust prototype. Tidy.
-
- * c-lang.c (c_initialize_diagnostics): Update.
- * c-common.h (strip_pointer_operator): Declare.
- * c-common.c (strip_pointer_operator): Define.
-
-2003-08-25 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/8795
- * tree.h (build_method_type_directly): Declare.
- * c-common.c (handle_vector_size_attributes): Handle METHOD_TYPEs.
- (vector_size_helper): Likewise.
- * tree.c (build_method_type_directly): New function.
- (build_method_type): Use it.
-
-2003-08-24 Richard Henderson <rth@redhat.com>
-
- * config/i386.i386.c (ix86_return_in_memory): Reformat. Return true
- for 16-byte vector modes if sse not enabled; warn for abi change.
- (ix86_value_regno): Only return xmm0 for 16-byte vector types.
-
-2003-08-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * rtlanal.c (may_trap_p): Simplify an integer comparison.
-
-2003-08-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (AAB_svr4_replace_byteorder): Enhance
- comment. Enable for DYNIX/ptx systems (when they switch to
- regular fixincludes).
- * fixinc/fixincl.x: Regenerate.
-
-2003-08-23 Jason Eckhardt <jle@rice.edu>
-
- * config/i860/t-i860: New.
- * config.gcc (i860-*-sysv4*): Add t-i860 to tmake_file.
-
-2003-08-23 Jakub Jelinek <jakub@redhat.com>
-
- * c-decl.c (pushdecl): Only put decls which finish_struct will do
- something about onto incomplete chain.
- (finish_struct): If not removing type from incomplete
- list, update prev.
-
-2003-08-20 Jan Hubicka <jh@suse.cz>
-
- PR target/11369
- * i386.c (ix86_expand_carry_flag_compare): Validate operand.
-
- PR target/11031
- * i386.c (const_0_to_3_operand, const_0_to_7_operand,
- const_0_to_15_operand, const_0_to_255_operand): New predicates.
- * i386.h (PREDICATE_CODES): Add these.
- * i386.c (pinsrw and pextrw patterns): Use them.
-
- PR target/10984
- * i386.c (ix86_expand_binop_builtin): Behave sanely for VOIDmodes.
-
- PR target/8869
- * expr.c (convert_modes): Deal properly with integer to vector
- constant conversion.
-
- PR target/8871
- * i386.md (zero_extendsidi2*): Add MMX and SSE alternatives.
-
-2003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h (LOAD_EXTEND_OP): Remove.
- * config/s390/s390.md ("movhi"): New expander; old insn renamed to ...
- ("*movhi"): ... this.
- ("movqi", "*movqi"): Likewise.
- ("movqi_64"): Remove.
- ("*zero_extendhisi2_31"): Change predicate to s_operand.
-
-2003-08-23 Dale Johannesen <dalej@apple.com>
- * calls.c (emit_library_call_value_1): Fix obvious errors in
- arguments to emit_group_store.
-
-2003-08-23 Jason Eckhardt <jle@rice.edu>
-
- * calls.c (emit_library_call_value_1): Remove code related
- to LIBGCC_NEEDS_DOUBLE.
- * config/stormy16/stormy16.h: Remove mention of LIBGCC_NEEDS_DOUBLE.
- * doc/tm.texi: Likewise.
- * system.h: Poison the LIBGCC_NEEDS_DOUBLE macro.
-
-2003-08-23 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
-
-2003-08-23 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_setup_incoming_varargs): Handle o32 and o64
- as well. Put memory references in the varargs alias set.
- (mips_expand_prologue): Remove varargs handling from here.
-
-2003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_expand_movstr, s390_expand_clrstr,
- s390_expand_cmpmem, s390_output_constant_pool, s390_build_va_list,
- s390_function_profiler, s390_output_mi_thunk): Use ISO C syntax
- for function pointer calls.
- * config/s390/s390.md ("*negdi2_31"): Likewise.
-
-2003-08-23 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (apply_distributive_law): Correct comment.
-
-2003-08-23 Jason Eckhardt <jle@rice.edu>
-
- * config/i860/i860.h: Remove comment mentioning LIBGCC_NEEDS_DOUBLE.
-
-2003-08-22 Jason Eckhardt <jle@rice.edu>
-
- * config/i860/i860.c (i860_build_va_list): Create the va_decl
- declaration. Document the va_list structure.
- (i860_va_start): Initialize the va_list structure.
- (i860_va_arg): Rewrite completely.
- * config/i860/i860.h (LIBGCC_NEEDS_DOUBLE): Don't define.
- * config/i860/varargs.asm: Do not allocate or initialize
- a va_list. Return the address of the register save area.
-
-2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/iq2000/iq2000.c: Fix comment typos.
- * config/iq2000/iq2000.md: Likewise.
-
-2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/iq2000/iq2000.c: Follow spelling conventions.
- * config/iq2000/iq2000.h: Likewise.
- * config/mn10300/mn10300.c: Likewise.
-
-2003-08-22 Jason Eckhardt <jle@rice.edu>
-
- * config/i860/i860.c (output_move_double): Don't set latehalf
- to zero for CONST_INT (since it could be, e.g., -1).
-
- * config/i860/i860.h (REMSI3_LIBCALL): Replace this macro...
- (MODSI3_LIBCALL): ...with this one.
- (UREMSI3_LIBCALL): Replace this macro...
- (UMODSI3_LIBCALL): ...with this one.
-
-2003-08-22 Jason Eckhardt <jle@rice.edu>
-
- * config/i860/i860-protos.h (output_delay_insn): Remove prototype.
- (output_delayed_branch): Remove prototype.
- (single_insn_src_p): Remove prototype.
- * config/i860/i860.c (single_insn_src_p): Remove function.
- (output_delayed_branch): Remove function.
- (output_delay_insn): Remove function.
- (va_start): Remove unconditional test and dead code, re-format.
- Fix coding style and spelling problems in various comments.
- * config/i860/i860.md (UNSPECV_BLOCKAGE): Define constant...
- (blockage pattern): ...and use it here.
- (all define_peephole patterns related to delayed branches): Remove.
- Fix coding style and spelling problems in various comments.
-
-2003-08-22 Jason Eckhardt <jle@rice.edu>
-
- * config/i860/i860.c: Replace all occurrences of 'GNU CC' with 'GCC'.
- Remove all uses of the PARAMS macro. Remove superflous prototypes.
- Convert all function definitions from traditional to ISO C90 syntax.
- * config/i860/i860-protos.h: Replace all occurrences of 'GNU CC'
- with 'GCC'. Remove all uses of the PARAMS macro.
- * config/i860/i860.h: Replace all occurrences of 'GNU CC' with 'GCC'.
- * config/i860/i860.md: Likewise.
- * config/i860/sysv4.h: Likewise.
- * config/i860/varargs.asm: Likewise.
-
-2003-08-22 Jason Eckhardt <jle@rice.edu>
-
- * config/i860/i860-protos.h (i860_va_start): Remove 'stdarg_p'
- argument.
- (tdesc_section): Add prototype.
- Update copyright dates.
- * config/i860/i860.c: Include coretypes.h, tm.h, and toplev.h.
- (TARGET_ASM_FUNCTION_PROLOGUE): Move definition to end of file.
- (TARGET_ASM_FUNCTION_EPILOGUE): Likewise.
- (targetm): Likewise.
- (i860_output_function_prologue): Substitute HOST_WIDE_INT_PRINT_DEC
- for '%d' where necessary.
- (i860_va_start): Remove 'stdarg_p' argument. Make conditional checks
- on 'stdarg_p' unconditional. Divide current_function_args_info.ints
- by UNITS_PER_WORD when referencing (likewise for .floats).
- (I860_SVR4_VARARGS): Rename...
- (I860_SVR4_VA_LIST): ...to this.
- Call build() with 't' rather than 'field'.
- (i860_rtx_costs): New function.
- (TARGET_RTX_COSTS): Define.
- (i860_internal_label): New function.
- (TARGET_ASM_INTERNAL_LABEL): Define.
- (i860_file_start): New function.
- Update copyright dates.
- * config/i860/i860.h (CPP_PREDEFINES): Remove.
- (TARGET_CPU_CPP_BUILTINS): Define.
- (EXPAND_BUILTIN_VA_START): Remove 'stdarg' argument.
- (CONST_COSTS): Remove (and move code to i860_rtx_costs).
- (ASM_FILE_START): Remove.
- (ASM_FILE_START_1): Remove.
- (ASM_GLOBALIZE_LABEL): Remove.
- (ASM_OUTPUT_INTERNAL_LABEL): Remove.
- (ASM_OUTPUT_CASE_LABEL): Replace call of ASM_OUTPUT_INTERNAL_LABEL
- with targetm.asm_out.internal_label.
- Update copyright dates.
- * config/i860/sysv4.h (USER_LABEL_PREFIX): Define.
- (CPP_PREDEFINES): Remove.
- (TARGET_OS_CPP_BUILTINS): Define.
- (GLOBAL_ASM_OP): Define.
- (ASM_FILE_START): Remove.
- (TARGET_ASM_FILE_START_FILE_DIRECTIVE): Define.
- (TARGET_ASM_FILE_START): Define.
- Update copyright dates.
-
-2003-08-22 Jason Eckhardt <jle@rice.edu>
-
- * gcc/config.gcc (i860-*-sysv4*): Add target.
- * config/i860/i860-protos.h: New.
- * config/i860/i860.c: New.
- * config/i860/i860.h: New.
- * config/i860/i860.md: New.
- * config/i860/sysv4.h: New.
- * config/i860/varargs.asm: New.
- * config/i860/x-sysv4: New.
-
-2003-08-22 Jason Eckhardt <jle@rice.edu>
-
- * config/pa/pa.c: Replace 'GNU CC' with 'GCC'.
- Remove all uses of PARAMS macro.
- Convert all function definitions to ISO C90 syntax.
- * config/pa/elf.h: Replace 'GNU CC' with 'GCC'.
- * config/pa/fptr.c: Likewise.
- * config/pa/lib2funcs.asm: Likewise.
- * config/pa/long_double.h: Likewise.
- * config/pa/milli64.S: Likewise.
- * config/pa/pa-64.h: Likewise.
- * config/pa/pa-hpux.h: Likewise.
- * config/pa/pa-hpux10.h: Likewise.
- * config/pa/pa-hpux11.h: Likewise.
- * config/pa/pa-linux.h: Likewise.
- * config/pa/pa-modes.def: Likewise.
- * config/pa/pa-osf.h: Likewise.
- * config/pa/pa-pro-end.h: Likewise.
- * config/pa/pa.md: Likewise.
- * config/pa/pa32-linux.h: Likewise.
- * config/pa/pa64-linux.h: Likewise.
- * config/pa/pa64-hpux.h: Likewise.
- * config/pa/pa64-regs.h: Likewise.
- * config/pa/quadlib.c: Likewise.
- * config/pa/rtems.h: Likewise.
- * config/pa/pa-protos.h: Replace 'GNU CC' with 'GCC' and remove
- all uses of the PARAMS macro.
- * config/pa/pa.h: Likewise.
- * config/pa/som.h: Likewise.
-
- * config/iq2000/iq2000.c: Replace 'GNU CC' with 'GCC'.
- Remove all uses of PARAMS macro.
- Convert all function definitions to ISO C90 syntax.
- * config/iq2000-protos.h: Replace 'GNU CC' with 'GCC'.
- Remove all uses of PARAMS macro.
- * config/iq2000.h: Remove all uses of PARAMS macro.
- * config/iq2000/iq2000.md: Replace 'GNU CC' with 'GCC'.
-
-2003-08-23 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_output_pool_entry): Declare.
- * config/s390/s390.c (gen_consttable): Remove.
- (s390_dump_pool): Use UNSPECV_POOL_ENTRY for pool entry insns.
- (s390_output_pool_entry): New function.
- * config/s390/s390.md (UNSPECV_POOL_QI, UNSPECV_POOL_HI,
- UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI,
- UNSPECV_POOL_SF, UNSPECV_POOL_DF): Remove, replace by ...
- (UNSPECV_POOL_ENTRY): ... this new constant.
- ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
- "consttable_ti", "consttable_sf", "consttable_df"): Remove ...
- ("*pool_entry"): ... and replace by this new insn.
- ("literal_pool_31"): Do not emit anchor label if pool empty.
-
- * config/s390/s390.c (struct machine_function): Add save_return_addr_p.
- (s390_optimize_prolog): Save RETURN_REGNUM if save_return_addr_p.
- (s390_fixup_clobbered_return_reg): Remove.
- (s390_reorg): Don't call s390_fixup_clobbered_return_reg.
- (s390_return_addr_rtx): Always retrieve return address from save area
- slot. Use save_return_addr_p to force slot to be filled.
- (s390_emit_prologue): Remove has_hard_reg_initial_val test.
-
-2003-08-22 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.h (MASK_FIX_SB1, TARGET_FIX_SB1): New defines.
- (TARGET_SWITCHES): Add -mfix-sb1 and -mno-fix-sb1.
- * config/mips/mips.md (divdf3, divsf3, sqrtdf2, sqrtsf2): Work
- around SB-1 errata if TARGET_FIX_SB1 is set.
- (recip.d insn, recip.s insn, rsqrt.d insn, rsqrt.s insn): Likewise.
- * doc/invoke.texi: Document MIPS -mfix-sb1 and -mno-fix-sb1.
-
-2003-08-22 Roger Sayle <roger@eyesopen.com>
-
- * hashtable.c (ht_expand): Avoid calculating rehash for the common
- case that the first probe hits an empty hash table slot.
-
-2003-08-22 Mark Mitchell <mark@codesourcery.com>
-
- * config/ia64/hpux.h (SUPPORTS_INIT_PRIORITY): Define to 0.
-
-2003-08-22 Mark Mitchell <mark@codesourcery.com>
-
- * config/ia64/ia64.md (*ptr_extend_plus_1): Rename to ...
- (ptr_extend_plus_imm): ... this.
- * config/ia64/ia64.c (addp4_optimize_ok): Do not disable addp4
- optimization in C++.
- (ia64_output_mi_thunk): Support ILP32 mode.
-
-2003-08-22 Bernardo Innocenti <bernie@develer.com>
-
- * gcc/config/m68k/m68k.c (m68k_coff_asm_named_section): remove unused
- function.
- * gcc/config/m68k/m68k.c (-m68k_svr3_asm_out_constructor): likewise.
-
-2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386.c (const_int_1_operand): Simplify an
- integer comparison.
-
-2003-08-22 Alan Modra <amodra@bigpond.net.au>
-
- * config/fp-bit.c: Specify config/ dir for include of fp-bit.h.
- * config/rs6000/ppc64-fp.c: Likewise.
-
-2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * cfgcleanup.c: Fix comment typos.
- * emit-rtl.c: Likewise.
- * optabs.c: Likewise.
- * ra-build.c: Likewise.
- * rtlanal.c: Likewise.
- * tree.h: Likewise.
-
-2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-decl.c: Fix comment formatting.
- * cfgrtl.c: Likewise.
- * combine.c: Likewise.
- * convert.c: Likewise.
- * dominance.c: Likewise.
- * dwarf2out.c: Likewise.
- * dwarfout.c: Likewise.
- * expmed.c: Likewise.
- * fold-const.c: Likewise.
- * gcov.c: Likewise.
- * genattrtab.c: Likewise.
- * ggc-common.c: Likewise.
- * mips-tfile.c: Likewise.
- * regmove.c: Likewise.
-
-2003-08-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtin-attrs.def: Fix comment formatting.
- * c-pretty-print.c: Likewise.
- * diagnostic.h: Likewise.
- * langhooks.h: Likewise.
- * recog.c: Likewise.
- * simplify-rtx.c: Likewise.
- * tree.def: Likewise.
-
-2003-08-22 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k-protos.h: Convert to ISO C90.
- * config/m68k/m68k.c: Likewise.
-
-2003-08-21 Bernardo Innocenti <bernie@develer.com>
- Paul Dale <pauli@snapgear.com>
- Peter Barada <peter@baradas.org>
-
- * config/m68k/m68k.c (m68k_rtx_costs): Adjust mul/div costs for
- ColdFire cores.
-
-2003-08-21 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (INCLUDES): Remove -I$(srcdir)/config.
- * config.gcc (*-*-openbsd): Don't set tm_file.
- (alpha*-*-openbsd, arm*-*-coff*, arm*-wince-pe*,
- arm-*-pe*, avr-*-*, h8300-*-rtems*, h8300-*-elf*,
- h8300-*-*, hppa*-*-osf*, hppa*-*-bsd*, hppa*-*-hpux*,
- i370-*-opened*, i370-*-mvs*, i370-*-linux*, i?86-*-openbsd*,
- i?86-*-lynxos, i?86-*-nto-qnx*, iq2000*-*-elf*, m68000-hp-hpux*,
- m68k-hp-hpux*, m68k-*-aout*, m68k-*-coff*, m68020-*-elf*,
- m68k-*-elf*, m68k*-*-netbsd*, m68k*-*-openbsd*, m68k-*-sysv4*,
- m68k-*-linux*, m68k-*-rtems*, mcore-*-pe*, mips*-*-netbsd*,
- mips*-*-openbsd*, rs6000-*-lynxos*, sh*-*-elf*, sh*-*-ka,
- sh-*-rtemself, sparc-*-openbsd*, strongarm-*-pe, vax-*-openbsd*,
- xscale-*-coff): Use explicit and complete lists of target headers
- to include. Move definitions to tm_defines where appropriate.
- (hppa*-*-openbsd*, powerpc-*-openbsd*): Comment out stanza for
- not-yet-contributed configuration.
-
- * config/lynx.h, config/alpha/openbsd.h, config/arm/coff.h
- * config/avr/avr.h, config/frv/frv.h, config/h8300/elf.h
- * config/i370/linux.h, config/i370/mvs.h, config/i370/oe.h
- * config/i386/nto.h, config/iq2000/iq2000.h,
- * config/m68k/coff.h, config/m68k/hp310.h, config/m68k/hp320.h
- * config/m68k/linux.h, config/m68k/m68k-aout.h
- * config/m68k/m68k-none.h, config/m68k/m68kv4.h
- * config/m68k/netbsd.h, config/m68k/openbsd.h
- * config/m68k/sgs.h, config/mcore/mcore-pe.h,
- * config/mips/netbsd.h, config/mips/openbsd.h, config/pa/pa.h,
- * config/rs6000/lynx.h, config/sh/embed-elf.h, config/sparc/openbsd.h:
- Remove includes of other target config headers, and
- definitions of macros moved to tm_defines lists. Add #undefs
- where now necessary to prevent redefinition warnings.
-
- * config/h8300/coff.h: New file split out of...
- * config/h8300/elf.h: ...here.
- * config/m68k/hp320base.h: New file split out of...
- * config/m68k/hp320.h: ...here.
- * config/rs6000/lynxbase.h: New file split out of...
- * config/rs6000/lynx.h: ...here.
-
- * config/m68k/hp310g.h, config/m68k/hp320g.h, config/m68k/hpux7.h
- * config/m68k/m68k-coff.h, config/mips/openbsd-be.h: Delete file.
-
- * config/sol2.h: Remove #if 0-ed #include of sys/mman.h.
- * config/m68k/m68kelf.h: Remove commented out #include of m68k/sgs.h.
- * config/mcore/mcore.h: Don't include hwint.h nor machmode.h.
- Remove unnecessary #ifndef.
- * config/s390/s390.h: Prefix #include of s390/fixdfdi.h
- [under IN_LIBGCC2] with config/.
-
-2003-08-21 Per Bothner <pbothner@apple.com>
-
- * cppfiles.c (stack_file): Correctly pass return_at_eof parameter
- to cpp_push_buffer.
- * cpplex.c (_cpp_get_fresh_line): Don't buffer->prev - handled
- by return_at_eof check. Always call _cpp_pop_buffer at end.
-
-2003-08-21 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/11805
- * config/h8300/h8300.md (two anonymous patterns): Remove.
-
-2003-08-21 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (MUST_PASS_IN_STACK): Remove BLKmode clause.
- * config/mips/mips.c (function_arg_pass_by_reference): Never return
- true for n32 & n64.
-
-2003-08-21 Josef Zlomek <zlomekj@suse.cz>
-
- * fold-const.c (fold): Fix bug in (A & C) == D where D & ~C != 0
- and similarly in (A | C) == D where C & ~D != 0.
-
-2003-08-20 Geoffrey Keating <geoffk@apple.com>
-
- PR 8180
- * configure.in: When testing with_libs and with_headers, treat
- 'no' as unset. Based on a patch by Dan Kegel <dank@kegel.com>.
- * configure: Regenerate.
-
-2003-08-20 Peter Barada <peter@baradas.org>
-
- * longlong.h (umul_ppmm): Add ColdFire support.
-
-2003-08-20 Peter Barada <peter@baradas.org>
- Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k-none.h: Introduce new ColdFire archs.
- * config/m68k/m68k.h: Likewise.
- * config/m68k/lb1sf68.asm: Rename __mcf5200__ to __mcoldfire__.
- * config/m68k/coff.h: Rename TARGET_5200 to TARGET_COLDFIRE.
- * config/m68k/linux.h: Likewise.
- * config/m68k/m68k.c: Likewise.
- * config/m68k/m68k.md: Likewise.
- * config/m68k/m68kelf.h: Likewise.
- * config/m68k/netbsd-elf.h: Likewise.
- * config/m68k/t-m68kelf: Add multilib targets for new ColdFire archs.
-
-2003-08-20 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c: Strip away code depending on NO_ADDSUB_Q definition.
- * config/m68k/m68k.md: Likewise.
-
-2003-08-20 Mark Mitchell <mark@codesourcery.com>
-
- PR java/11996
- Revert this change:
- 2003-08-19 Mark Mitchell <mark@codesourcery.com>
- * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
- types with precisions other than those given by native machine
- modes.
-
-2003-08-20 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.md (anonymous define_insn): remove obsolete code
- selected by FSGLMUL_USE_S and FSGLDIV_USE_S
- * config/m68k/m68k.c (output_move_himode): remove SGS_NO_LI check
- * config/m68k/m68k.md (anonymous define_insn): Likewise
- * config/m68k/m68k.md (anonymous define_insn): remove ISI_OV check
- * config/m68k/m68k.c (standard_68881_constant_p): remove obsolete
- code selected by NO_ASM_FMOVECR
-
-2003-08-20 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (output_move_const_into_data_reg,
- output_move_himode): unify MOTOROLA/MIT handling of moveq
- * config/m68k/m68k.md (movsi_const0, anonymous define_insn):
- Likewise
-
-2003-08-20 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (m68k_output_function_prologue): use %U in
- label name
- * config/m68k/m68k.c (m68k_output_function_epilogue): replace
- HOST_WIDE_INT_PRINT_DEC with %wd
-
-2003-08-20 Loren James Rittle <ljrittle@acm.org>
-
- * config/i386/freebsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Handle
- redefine warning.
-
-2003-08-20 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/11984
- * fold-const.c (fold <PLUS_EXPR>): Check for integer constant
- operands before calling tree_int_cst_lt when performing associative
- transformations.
-
-2003-08-20 Jason Merrill <jason@redhat.com>
-
- * tree.h (IS_EXPR_CODE_CLASS): Also include 'r' and 's'.
- (EXPR_CHECK): Don't check for 'r' or 's' if we're
- checking IS_EXPR_CODE_CLASS.
- * calls.c (calls_function_1): Likewise.
- * fold-const.c (fold): Likewise.
- * tree.c (iterative_hash_expr): Likewise.
- * tree-inline.c (walk_tree, copy_tree_r): Likewise.
-
-2003-08-20 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c (m68k_output_mi_thunk): delete obsolete code
- depending on MOTOROLA_BSR
- * config/m68k/m68k.md (anonymous define_insn): Likewise
-
-2003-08-20 Jason Merrill <jason@redhat.com>
-
- * builtins.c (expand_builtin_mathfn): Use get_callee_fndecl.
- (expand_builtin_mathfn2, expand_builtin, builtin_mathfn_code,
- fold_trunc_transparent_mathfn, fold_builtin): Likewise.
- * dojump.c (do_jump): Likewise.
- * fold-const.c (operand_equal_p, fold): Likewise.
- (tree_expr_nonnegative_p): Likewise.
-
- * stor-layout.c (do_type_align): Only copy DECL_USER_ALIGN from
- TYPE_USER_ALIGN for FIELD_DECLs.
-
- * attribs.c (decl_attributes): Rebuild the function pointer type after
- changing the target type.
- * tree.c (get_qualified_type): Also check that the attributes match.
-
-2003-08-19 Matt Kraai <kraai@alumni.cmu.edu>
-
- * Makefile.in (STAGESTUFF): Move cc1obj$(exeext) from here ...
- * objc/config-lang.in (stagestuff): ... to here.
-
-2003-08-19 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/11946
- * convert.c (convert_to_integer): Use CONVERT_EXPR (instead of
- NOP_EXPR) when necessary.
- * c-common.c (c_common_signed_or_unsigned_type): Correctly handle
- types with precisions other than those given by native machine
- modes.
-
-2003-08-19 Geoffrey Keating <geoffk@apple.com>
-
- * cpppch.c (cpp_valid_state): Re-add warning about PCH not used
- because some macro is defined.
-
- * config/darwin.h (LINK_COMMAND_SPEC): Add -arch and -arch_only
- options.
- * config/i386/darwin.h (ASM_SPEC): New.
- (SUBTARGET_EXTRA_SPECS): New.
- * config/rs6000/darwin.h (ASM_SPEC): New.
- (SUBTARGET_EXTRA_SPECS): New.
- * configure.in: Don't set CROSS or SYSTEM_HEADER_DIR when building
- a cross-compiler between two different processors on Darwin.
- * configure: Regenerate.
-
-2003-08-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.c: Fix comment typos.
- * c-common.c: Likewise.
- * c-decl.c: Likewise.
- * c-pretty-print.c: Likewise.
- * cfgbuild.c: Likewise.
- * cfglayout.c: Likewise.
- * cfgloopanal.c: Likewise.
- * cgraphunit.c: Likewise.
- * cppfiles.c: Likewise.
- * dwarfout.c: Likewise.
- * expr.c: Likewise.
- * fold-const.c: Likewise.
- * gcse.c: Likewise.
- * ggc-page.c: Likewise.
- * haifa-sched.c: Likewise.
- * pretty-print.c: Likewise.
- * tree.c: Likewise.
- * tree.h: Likewise.
- * value-prof.c: Likewise.
-
-2003-08-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-decl.c: Follow spelling conventions.
- * cppfiles.c: Likewise.
-
-2003-08-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-common.c: Fix comment formatting.
- * c-common.h: Likewise.
- * c-decl.c: Likewise.
- * cppinit.c: Likewise.
- * cpplib.h: Likewise.
- * emit-rtl.c: Likewise.
- * input.h: Likewise.
- * line-map.h: Likewise.
- * opts.c: Likewise.
- * opts.h: Likewise.
- * simplify-rtx.c: Likewise.
-
-2003-08-19 Daniel Jacobowitz <drow@mvista.com>
-
- * unwind-c.c: Add libgcc-style exception.
- * unwind-dw2.c: Likewise.
- * unwind-pe.h: Likewise.
- * unwind-sjlj.c: Likewise.
- * unwind.inc: Likewise.
-
-2003-08-19 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c/5582 PR c++/10538
- * langhooks-def.h (lhd_decl_uninit): Declare.
- (LANG_HOOKS_DECL_UNINIT): New macro.
- (LANG_HOOKS_INITIALIZER): Adjust.
- * langhooks.h (struct lang_hooks): Add new field
- decl_uninit.
- * langhooks.c (lhd_decl_uninit): Define.
- * c-common.c (c_decl_uninit_1): New function.
- (c_decl_uninit): New function.
- (warn_init_self): Define.
- * c-common.h (c_decl_uninit): Declare.
- (warn_init_self): Declare.
- * c.opt: Introduce -Winit-self.
- * c-opts.c (c_common_handle_options): Set warn_init_self.
- * c-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
- * objc/objc-lang.c (LANG_HOOKS_DECL_UNINIT): Define.
- * function.c (uninitialized_vars_warning): Call the language hook.
- * doc/invoke.texi: Document -Winit-self.
-
-2003-08-19 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md: Adjust SI-mode "trap_if" instruction
- to use better predicates and constraints. Define new
- instruction to handle "trap_if" with DI-mode arguments.
- (conditional_trap): FAIL if trap code is not 0.
-
-2003-08-19 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/i386/i386.c (legitimate_pic_address_disp_p): Change the
- strstr with $pb to a strcompare with "<pic base>"
- (ix86_output_addr_diff_elt): Output the real pic base.
-
-2003-08-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * langhooks-def.h (LANG_HOOKS_INITIALIZE_DIAGNOSTICS): Fix spelling.
- (LANG_HOOKS_INITIALIZER): Correct.
- * c-lang.c: Likewise.
-
-2003-08-19 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_mark_needed_node): Call notice_global_symbol.
- (cgraph_varpool_mark_needed_node): Likewise.
- * cgraph.h (notice_global_symbol): Declare
- * varasm.c (notice_global_symbol): Break out from ...
- (assemble_start_function): ... here; update for variables.
- (assemble_variable): Use notice_global_symbol.
-
-2003-08-19 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_va_arg): If EABI_FLOAT_VARARGS_P,
- expect SFmode and DFmode arguments to be passed in FPRs,
- regardless of the underlying type.
-
-2003-08-19 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/11924
- * config/mips/mips.c (INTERNAL_SYMBOL_P): New macro.
- (mips_classify_symbol, m16_usym8_4, m16_usym5_4): Use it.
-
-2003-08-18 Matt Kraai <kraai@alumni.cmu.edu>
-
- PR c/11207
- * c-typeck.c (set_init_index): Check for negative index.
-
-2003-08-18 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/crti.asm (_init, _fini): Add alternate code for new
- call0 ABI.
- * config/xtensa/crtn.asm (_init, _fini): Likewise.
- * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
- __umodsi3, __modsi3): Likewise.
- * config/xtensa/t-xtensa (crti.o, crtn.o): Add $(GCC_CFLAGS) and
- $(INCLUDES).
-
-2003-08-18 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md ("*nabssf2_gpr"): New.
-
-2003-08-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md: Quote C code in braces. Remove use of
- fake const0_rtx operands. Remove double backslashes. Use \;.
- Remove workarounds for bogus warnings.
-
-2003-08-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (muldf3, mulsf3): Don't call a gen_* function.
- (muldf3_internal, muldf3_r4300): Select based on TARGET_4300_MUL_FIX
- rather than TARGET_MIPS4300.
- (mulsf3_internal, mulsf3_r4300): Likewise.
-
-2003-08-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md: Renumber unspecs. Clean up comments.
-
-2003-08-17 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (associative_constant_p): New function to test
- whether an RTX expression is an immediate constant.
- (simplify_associative_operation): New function to perform some
- reassociation optimizations of associative binary expressions.
- (simplify_binary_operation): Use simplify_associative_operation
- to simplify PLUS, MULT, AND, IOR, XOR, SMIN, SMAX, UMIN and UMAX.
- Floating point expressions are only reassociated when unsafe
- math optimizations are permitted.
-
-2003-08-17 Andreas Jaeger <aj@suse.de>
-
- * config/alpha/alpha.md: Remove usage of PARAMS.
-
- * config/i386/cygwin.h: Convert K&R prototypes to ISO C90.
- * config/i386/i386-interix.h: Likewise.
- * config/i386/winnt.c: Likewise.
- * config/i386/cygming.h: Likewise.
- * config/i386/cygwin2.c: Likewise.
- * config/darwin.c: Likewise.
- * config/darwin-c.c: Likewise.
- * config/darwin-protos.h: Likewise.
- * config/darwin.h: Likewise.
- * config/s390/s390-protos.h: Likewise.
- * config/s390/s390.c: Likewise.
- * config/ia64/ia64.c: Likewse
- * config/ia64/ia64-protos.h: Likewise.
- * config/ia64/ia64-c.c: Likewise.
-
-2003-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/sparc/sparc.c: Convert to ISO C.
-
- * config/sparc/sparc-protos.h: Don't use the PARAMS macro.
- * config/sparc/sparc.c: Likewise.
-
-2003-08-16 Nathan Sidwell <nathan@codesourcery.com>
-
- PR c++/11512
- * stmt.c (expand_expr_stmt_value): Don't warn about any void
- typed expression.
-
-2003-08-16 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_fntype_regparm): Rename from ...
- (ix86_function_regparm): ... this one; add fastcall and local
- functions.
- (ix86_function_ok_for_sibcall): Update.
- (ix86_return_pops_args): Likewise.
- (init_cumulative_args): Likewise.
- (x86_can_output_mi_thunk): Likewise.
- (function_arg): Fix formating.
- (x86_this_parameter): Fix fastcall.
- (x86_output_mi_thunk): Likewise.
-
- * cgraph.c (cgraph_mark_needed_node): Do not mark functions without
- body as reachable; mark nested functions as needed too.
- (dump_cgraph): Do not output global.calls.
- * cgraph.h (cgraph_global_info): Kill.
- * cgraphunit.c (cgraph_finalize_function): Enqueue needed functions.
- (record_call_1): Speedup.
- (cgraph_analyze_function): Break out from ...; compute inlining
- parameters.
- (cgraph_finalize_compilation_unit): ... here.
- (cgraph_mark_inline): Kill computation of calls.
- (cgraph_decide_inlining): Do not compute most of initial values.
-
-2003-08-14 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (negate_expr_p): MULT_EXPRs and RDIV_EXPRs are easy
- to negate if either operand is easy to negate, if we don't care
- about sign-dependent rounding.
- (negate_expr): Make the logic to negate a REAL_CST explicit.
- Attempt to negate a MULT_EXPR or RDIV_EXPR by negating an operand
- that's easy to negate, if we don't honor sign-dependent rounding.
- (fold <MULT_EXPR>): Optimize -A * B as A * -B if B is easy to
- negate, and the symmetric A * -B as -A * B if A is easy to negate.
- (fold <RDIV_EXPR>): Likewise, optimize -A/B and C/-D as A/-B and
- -C/D if B and C are cheap to negate. Add an explicit rule to
- optimize X/-1.0 as -X when we don't care about signaling NaNs.
-
-2003-08-14 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (tm_file): Rename tm_include_list.
- (tm_p_file): Rename tm_p_include_list.
- (build_xm_file): Rename build_xm_include_list.
- (host_xm_file): Rename host_xm_include_list.
- (xm_file): Rename xm_include_list.
- (xm_file_list): Add to be substituted.
- (cs-config.h, cs-bconfig.h, cs-tconfig.h, cs-tm.h, cs-tm_p.h):
- Update to match.
- (bt-load.o): Add missing dependency on $(TM_H).
- * configure.in: Prefix value of EXTRA_MODES_FILE with config/.
- For each of tm_file, tm_p_file, xm_file, host_xm_file, and
- build_xm_file, generate both *_file_list and *_include_list
- values from it. (xm_file_list was formerly not being generated.)
- In *_include_list, prefix the names of all headers found in
- $(srcdir)/config with config/. In each loop, consider only
- the special case files that can actually appear in that list.
- AC_SUBST all *_file_list and all *_include_list variables; do
- not AC_SUBST the plain *_file variables.
- * configure: Regenerate.
-
-2003-08-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfg.c (dump_edge_info): Add name of loop_exit edge flag.
-
-2003-08-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (pa_adjust_insn_length): Delete adjustment for delay slot in
- direct calls.
- (attr_length_call): Include it here. Improve length estimate for
- local calls.
- (output_call): Use targetm.binds_local_p.
-
-2003-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (CASE_MATHFN): New helper macro.
- (mathfn_built_in): Simplify and sort.
-
- * protoize.c (substr): Delete, callers changed to `strstr'.
-
-2003-08-13 Zack Weinberg <zack@codesourcery.com>
-
- * config.gcc (iq2000*-*-elf*): Don't set xm_file.
- * config/iq2000/xm-iq2000.h: Delete file.
-
-2003-08-13 Geoffrey Keating <geoffk@apple.com>
-
- * gengtype.c (walk_type): Process a subobject before processing
- the pointer that points to the subobject.
-
-2003-08-13 Per Bothner <pbothner@apple.com>
-
- * regclass.c (init_reg_modes): Make non-static.
- Rename to init_reg_modes_once per new naming convention.
- (init_regs): Don't call init_reg_modes here.
- * emit-rtl.c (init_emit_once): Call init_reg_modes_once here instead.
- * rtl.h (init_reg_modes_once): New declaration.
- * toplev.c (backend_init): Call init_regs after init_emit_once.
-
-2003-08-13 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/linux.h (DBX_REGISTER_NUMBER): Define so to map a
- special index for MD_FALLBACK_FRAME_STATE_FOR to itself.
-
-2003-08-13 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (sh_get_pr_initial_val): Always wrap in unspec for TARGET_SH1.
- * sh.md (load_ra): Change insn predicate to TARGET_SH1.
-
-2003-08-13 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.md (ctrsi, ctrdi): Reenable
- handling of decrement-and-branch farther than 32 bits.
-
-2003-08-12 Kelley Cook <kelleycook@wideopenwest.com>
-
- * configure.in (make_compare_target): Move test to ...
- * aclocal.m4 (gcc_AC_PROG_CMP_IGNORE_INITIAL): here.
- * configure: Regenerate.
-
-2003-08-12 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/iris6.h: Convert to C90 prototypes.
- * config/mips/irix6-libc-compat.c: Likewise.
- * config/mips/mips-protos.h: Likewise.
- * config/mips/mips.c: Likewise.
-
-2003-08-12 Nathanael Nerode <neroden@gcc.gnu.org>
-
- fixinc/inclhack.def (svr4_krnl): Rename from svr4_kernel. Enable
- for selected machines. Comment heavily.
- fixinc/fixincl.x: Rebuild.
- fixinc/tests/base/fs/rfs/rf_cache.h: New file.
-
-2003-08-12 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h: Tweak various comments.
- * config/mips/mips.c: Likewise.
-
-2003-08-11 James E Wilson <wilson@tuliptree.org>
-
- PR optimization/11319
- PR target/10021
- * alias.c (find_base_value, case REG): Return 0 not src if no base
- found.
-
-2003-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcse.c (gmalloc): Fix last change.
-
-2003-08-11 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_binary_operation): Replace calls to
- gen_rtx_NEG and gen_rtx_NOT with calls to simplify_gen_unary,
- and calls to gen_rtx_PLUS, gen_rtx_MULT, gen_rtx_LSHIFTRT,
- gen_rtx_ASHIFT and gen_rtx_AND with calls to simplify_gen_binary.
-
-2003-08-11 Roger Sayle <roger@eyesopen.com>
-
- * expr.c (expand_expr): If an ABS_EXPR has a complex type, abort.
- * c-typeck.c (build_unary_op): COMPLEX_TYPE is not a valid
- typecode for an ABS_EXPR.
-
- * doc/c-tree.texi: Document ABS_EXPR.
-
-2003-08-11 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold): Optimize any associative floating point
- operator with -funsafe-math-optimizations, not just MULT_EXPR.
-
-2003-08-11 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/lib1funcs.asm (__udivdi3): Add .type and .size
- information in SHmedia case too.
- (__divdi3, __umoddi3, __moddi3, __init_trampoline, __ic_invalidate):
- Likewise.
- (__set_fpscr): Use an access via GOT for PIC case.
-
-2003-08-11 Kelley Cook <kelleycook@wideopenwest.com>
-
- * configure.in (intermodule): Make switch test more portable.
- * configure: Regenerate.
-
-2003-08-11 Kelley Cook <kelleycook@wideopenwest.com>
-
- * Makefile.in (cleanstrap): Pass BOOT_CFLAGS to bootstrap.
- (restrap): Likewise.
-
-2003-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gcse.c (gmalloc): Argument is a size_t. Add ATTRIBUTE_MALLOC.
- (grealloc): Size argument is a size_t.
- (gcalloc): New function. Use throughout in lieu of
- gmalloc/memset.
-
- * config/avr/avr.c (avr_init_once): Use xcalloc in lieu of
- xmalloc/memset.
- * config/ia64/ia64.c (ia64_reorg): Likewise.
- * conflict.c (conflict_graph_new): Likewise.
- * fixinc/fixincl.c (run_compiles): Likewise.
- * genattrtab.c (optimize_attrs): Likewise.
- * genrecog.c (new_decision): Likewise.
- * haifa-sched.c (schedule_block): Likewise.
- * hashtable.c (ht_create): Likewise.
-
-2003-08-11 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/lib2funcs.S: Fix whitespace.
- * config/xtensa/xtensa.md (all insns and expanders): Use brace block
- syntax where appropriate. Remove unnecessary backslash escapes.
- Reformat comments and fix some code formatting.
- (extendqisi2): Rearrange conditional.
- (*btrue, *bfalse, *ubtrue, *ubfalse, *bittrue, *bitfalse, *masktrue,
- *maskfalse, movsicc_internal0, movsfcc_internal0): Call abort instead
- of fatal_insn.
-
-2003-08-11 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c: Various formatting fixes.
- (override_options): Resync -mtune handling with gas.
- (mips_issue_rate): Rearrange like mips_use_dfa_pipeline_interface.
- * config/mips/mips.h: More formatting fixes.
- (mips_abi): Move declaration.
- * config/mips/mips.md (exception_receiver): Add mode to
- unspec_volatile.
-
-2003-08-11 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (spe_init_builtins): Handle evsplati and
- evsplatfi here.
- (bdesc_1arg): Remove evsplati and evsplatfi.
-
-2003-08-11 J"orn Rennecke <joern.rennecke@superh.com>
-
- * dwarf2asm.c (dw2_output_indirect_constant_1): Take user_label_prefix
- into account.
-
-2003-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strcat): Optimize constant strings.
-
-2003-08-10 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * pretty-print.c (pp_base_indent): Rename from pp_indent.
- * c-pretty-print.h (pp_c_pretty_print_flag)s: New datatype.
- (struct c_pretty_print_info): Add more fields.
- (pp_c_left_paren): Move to c-pretty-print.c.
- (pp_c_right_paren): Likewise.
- (pp_c_left_brace): Likewise.
- (pp_c_right_brace): Likewise.
- (pp_c_left_bracket): Likewise.
- (pp_c_right_bracket): Likewise.
- (pp_c_declarator): Declare.
- (pp_c_direct_declarator): Likewise.
- (pp_c_specifier_qualifier_list): Likewise.
- (pp_c_type_id): Likewise.
- * c-pretty-print.c (pp_c_cv_qualifier): Change prootype. Rework..
- (pp_c_type_qualifier_list): New.
- (pp_c_pointer): Likewise.
- (pp_c_parameter_type_list): Likewise.
- (pp_c_function_definition): Likewise.
- (pp_c_id_expression): Likewise.
- (pp_c_simple_type_specifier): Tidy.
- (pp_c_unary_expression): Likewise.
- (pp_c_expression): Likewise.
- (pp_c_pretty_printer_init): Likewise.
- (pp_c_specifier_qualifier_list): Rework..
- (pp_c_abstract_declarator): Likewise.
- (pp_c_postfix_expression): Likewise.
- (pp_c_primary_expression): Likewise.
- (pp_c_cast_expression): Likewise.
- (pp_c_direct_abstract_declarator): Likewise.
- (pp_c_storage_class_specifier): Likewise.
- (pp_c_function_specifier): Likewise.
- (pp_c_declaration_specifiers): Likewise.
- (pp_c_direct_declarator): Likewise.
- (pp_c_declarator): Likewise.
- (pp_c_declaration): Likewise.
- (pp_c_statement): Likewise.
- (pp_c_integer_constant): Rename from pp_c_integer_literal.
- (pp_c_character_constant): Rename from pp_c_character_literal.
- (pp_c_bool_constant): Rename from pp_c_bool_literal.
- (pp_c_enumeration_constant): Rename from pp_c_enumerator.
- (pp_c_floating_constant): Rename from pp_c_real_literal.
- (pp_c_constant): Rename from pp_c_literal.
- * c-lang.c: Include diagnostic.h and c-pretty-print.h
- (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): Define.
- (c_initialize_diagnostics): New.
- * Makefile.in (c-lang.o): Update dependency.
-
-2003-08-10 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-typeck.c (digest_init): Add conversion for VECTOR_TYPEs.
-
-2003-08-10 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_no_mips16_string): Remove.
- (override_options): Don't handle -mips16 as part of -mipsN.
- * config/mips/mips.h (mips_no_mips16_string): Remove declaration.
- (TARGET_SWITCHES): Add -mips16 and -mno-mips16 entries.
- (TARGET_OPTIONS): Remove -mno-mips16.
-
-2003-08-10 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (coprocessor_operand): Remove declaration.
- (coprocessor2_operand): Likewise.
- * config/mips/mips.c (STAB_CODE_TYPE): Remove.
- (lookup_name): Remove declaration.
- (abort_with_insn): Remove. Replace all uses with fatal_insn.
- (mips16, mips_abicalls): Remove.
- (mips_char_to_class): Remove initialiser: all entries are NO_REGS.
- (arith32_operand, large_int, true_reg_or_0_operand): Remove.
- (coprocessor_operand, coprocessor2_operand): Remove.
- (override_options): Don't set mips16 or mips_abicalls.
- (print_operand): Don't expect SIGN_EXTEND operands.
- (mips_secondary_reload_class): Likewise.
- (mips_output_conditional_branch): Remove disabled long-branch code.
- * config/mips/mips.h (call_used_regs): Remove declaration.
- (may_call_alloca): Likewise.
- (mips_cpu_attr, mips_abicalls_type, mips_abicalls_attr): Remove.
- (mips_abicalls, mips16): Remove declarations.
- (ASM_FINAL_SPEC, LIB_SPEC): Remove.
- (CC1_SPEC): Remove outdated comment.
- (MIPS_VERSION, MACHINE_TYPE): Remove.
- (TARGET_VERSION_INTERNAL, TARGET_VERSION): Remove.
- (PC_REGNUM, STACK_POINTER_OFFSET): Remove disabled definitions.
- (STRUCT_VALUE_RETURN_REGNUM, STACK_DYNAMIC_OFFSET): Likewise.
- (PUSH_ROUNDING): Likewise.
- (ASSEMBLER_SCRATCH_REGNUM): Remove.
- * config/mips/mips.md: Replace mips_cpu_attr with mips_tune
- and mips16 with TARGET_MIPS16.
-
-2003-08-09 Per Bothner <pbothner@apple.com>
-
- * cppinit.c (cpp_read_main_file): Split out source-independent
- initialization to separate function ...
- (cpp_post_options): New function.
- * cppfiles.c (cpp_stack_file): Rename public name to ...
- (_cpp_stack_file): New internal function name.
- * cpplib.h: Update accordingly.
- * cppinit.c: (cpp_create_reader): Initialize cpp_readers line here.
- (cpp_read_main_file): Don't initialize line here.
- * c-opts.c (c_common_post_options): Call cpp_post_options.
- (c_common_parse_file): Call cpp_read_main_file, not cpp_stack_file.
- * fix-header.c (read_scan_file): Call cpp_post_options.
-
-2003-08-09 Per Bothner <per@bothner.com>
-
- * c-decl.c (SCOPE_LIST_APPEND): Remove bogus line continuation.
-
-2003-08-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (pa_asm_output_mi_thunk): Fix typo.
-
-2003-08-09 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/11839
- * cppfiles.c (open_file): Handle ENOTDIR.
-
-2003-08-09 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/11699
- * config/mips/mips.c (override_options): Reject -mabi=eabi -mabicalls.
-
-2003-08-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md (extzv, extv, insv): Fix operand limit checks. Fail if
- source/destination is not a register operand.
-
-2003-08-08 Richard Henderson <rth@redhat.com>
-
- PR target/11535
- * config/ia64/ia64.c (ia64_initial_elimination_offset): Remove
- RETURN_ADDRESS_POINTER_REGNUM.
- (ia64_expand_prologue): Don't frob it.
- (ia64_output_function_epilogue): Likewise.
- (ia64_return_addr_rtx): New.
- (ia64_split_return_addr_rtx): New.
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/ia64.h (FIRST_PSEUDO_REGISTER): Decrement.
- (RETURN_ADDRESS_POINTER_REGNUM): Remove.
- (GENERAL_REGNO_P): Don't check it.
- (AR_*_REGNUM): Renumber.
- (FIXED_REGISTERS): Remove RETURN_ADDRESS_POINTER_REGNUM.
- (CALL_USED_REGISTERS, CALL_REALLY_USED_REGISTERS): Likewise.
- (REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Likewise.
- (ELIMINABLE_REGS, REGISTER_NAMES): Likewise.
- (RETURN_ADDR_RTX): Use ia64_return_addr_rtx.
- * config/ia64/ia64.md (UNSPEC_RET_ADDR): New.
- (movdi_ret_addr): New.
-
-2003-08-08 Geoffrey Keating <geoffk@apple.com>
-
- * config.gcc (powerpc-*-darwin*): Don't build a soft-float multilib.
-
-2003-08-08 Roger Sayle <roger@eyesopen.com>
-
- * tree.h (get_identifier) Define a macro form of get_identifier
- that calls get_identifier_with_length when the string is constant.
- (get_identifier_with_length): Change type of second argument to
- size_t in prototype.
- * stringpool.c (get_identifier): Undefine the macro before giving
- the function definition.
- (get_identifier_with_length): Change type of second argument to
- size_t in function definition.
- * hashtable.c (calc_hash): Change type of second argument to size_t.
- (ht_lookup): Change type of third argument to size_t. Reorganize
- to speed-up the cases where the hash table slot is empty, or the
- first probe matches (i.e. there isn't a collision).
- * hashtable.h (ht_lookup): Adjust function prototype.
-
-2003-08-08 Bernardo Innocenti <bernie@develer.com>
-
- PR target/9697
- PR target/11777
- * longlong.h (count_leading_zeros): Exclude on __mcpu32__.
-
-2003-08-08 Neil Booth <neil@daikokuya.co.uk>
-
- * common.opt: Add debug switches.
- * flags.h (use_gnu_debug_info_extensions): Boolify.
- * opts.c (write_symbols, debug_info_level,
- use_gnu_debug_info_extensions): Move from toplev.c.
- (set_debug_level): New.
- (common_handle_options): Handle debug switches.
- (print_help): Display target options directly.
- * toplev.c (debug_hooks): Don't initialize.
- (write_symbols, debug_info_level,
- use_gnu_debug_info_extensions): Move to opts.c.
- (debug_args, display_help, decode_g_option): Remove.
- (process_options): Set no debug if level zero here,
- and no-debug-hooks. Error here if impossible debug format selected.
- * toplev.h (display_help, decode_g_option): Remove.
-
-2003-08-08 Richard Sandiford <rsandifo@redhat.com>
-
- * tree.c (get_file_function_name_long): Fix size of alloca() area.
-
-2003-08-08 Kelley Cook <kelleycook@wideopenwest.com>
-
- * configure.in (gcc_cv_prog_cmp_skip): Flipflop make_compare_target
- and gcc_cv_prog_cmp_skip.
- * configure: Regenerate.
-
-2003-08-08 Stan Cox <scox@redhat.com>
-
- * config/iq2000: New port.
- * config.gcc (iq2000-*-elf): Added.
- * doc/install.texi (Specific): Add iq2000 description.
-
-2003-08-08 Andreas Schwab <schwab@suse.de>
-
- * configure.in (gcc_cv_as_ia64_ltoffx_ldxmov_relocs): Fix quoting
- and insert missing empty argument.
- * configure: Regenerate.
-
-2003-08-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (update_total_code_bytes): Use new macro IN_NAMED_SECTION_P.
- (attr_length_millicode_call): Likewise.
- (attr_length_call): Likewise. Revise some maximum insn lengths.
- (attr_length_indirect_call): Likewise.
- (output_call): Fix thinko that added extra nop.
- * pa.h (IN_NAMED_SECTION_P): Define.
-
- PR c++/11712
- * pa-hpux.h, pa-hpux10.h, pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define
- __STDC_EXT__ when using C++ dialect.
-
-2003-08-07 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (calc_live_regs): If the return address pointer is live,
- force pr live.
- (sh5_schedule_saves): Exclude PR_MEDIA_REG from being a temp register
- for saves / restores.
- (sh_expand_epilogue): If sh_media_register_for_return returns a
- register number, flag the instructions that restores PR_MEDIA_REG
- as possibly dead.
- Remove dead update of offset.
- (sh_get_pr_initial_val): Use UNSPEC_RA if we don't know yet if
- we can use the result of get_hard_reg_initial_val.
- * sh.md (UNSPEC_RA): New constant.
- (movsi_i_lowpart+1): Changed into a define_insn_and_split, named:
- (load_ra). Handle UNSPEC_RA.
- (sibcall_media): Use PR_MEDIA_REG.
-
- * sh.h (CALL_USED_REGISTERS): Include PR_REG and PR_MEDIA_REG.
- * sh.c (calc_live_regs): Use sh_pr_n_sets to determine if pr
- needs saving on SHmedia.
-
-2003-08-07 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md: Replace all occurrences of \\t with \t.
-
-2003-08-07 Richard Sandiford <rsandifo@redhat.com>
-
- * local-alloc.c (combine_regs): Fix comment typo.
-
-2003-08-06 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (builtin_decls): Replace with first_builtin_decl
- and last_builtin_decl.
- (c_init_decl_processing): Initialize both.
- (c_reset_state): Iterate from first_builtin_decl to
- last_builtin_decl inclusive to reintroduce builtins.
-
-2003-08-06 David Mosberger <davidm@hpl.hp.com>
-
- * doc/extend.texi (Function Attributes): Document the IA-64 version
- of the "model" attribute.
-
- * config/ia64/ia64.h (SYMBOL_FLAG_SMALL_ADDR): New macro.
- (SYMBOL_REF_SMALL_ADDR_P): Ditto.
- (PREDICATE_CODES): Mention "small_addr_symbolic_operand".
-
- * config/ia64/ia64.c (ia64_handle_model_attribute): New function.
- (ia64_encode_section_info): Likewise.
- (ia64_attribute_table): Add "model" attribute.
- (TARGET_ENCODE_SECTION_INFO): Define.
- (small_addr_symbolic_operand): New function.
- (got_symbolic_operand): Return 0 for a symbolref to an object
- in the small address area.
- (enum ia64_addr_area): New type.
- (small_ident1): New variable.
- (small_ident2): Likewise.
- (init_idents): New function.
- (ia64_get_addr_area): Likewise.
- (ia64_encode_addr_area): Likewise.
- (ia64_encode_section_info): Likewise.
- (ia64_expand_load_address): For symbolic references to objects in
- the small-address-area, load the address via gen_rtx_SET() (which,
- eventually, will expand into "addl").
-
-2003-08-06 Per Bothner <pbothner@apple.com>
-
- * line-map.h (fileline): New typedef.
- (struct line_map, linemap_add, linemap_lookup): Use it.
- * input.h (struct location_s): Comment notes that long-term we want
- to replace it by fileline.
-
-2003-08-06 J"orn Rennecke <joern.rennecke@superh.com>
-
- Fix SHcompact exception handling:
- * sh.c (sh_get_pr_initial_val): If PR is or miight be clobbered
- by the prologue, return a MEM with return_address_pointer_rtx
- as address.
- * sh.h (HARD_REGNO_MODE_OK): PR is OK for SImode.
- (RETURN_ADDR_OFFSET): Don't define.
- (SH_DBX_REGISTER_NUMBER): Use SHmedia numbers for SHmedia
- registers that are visible in compact mode. Show that SHmedia
- registers still exist in compact mode, even if there are not
- readily accessible.
- (ASM_PREFERRED_EH_DATA_FORMAT): Supply DW_EH_PE_indirect
- if GLOBAL. Use DW_EH_PE_textrel (nominally) for CODE,
- and DW_EH_PE_pcrel for pic data.
- (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): If DW_EH_PE_textrel,
- set SYMBOL_FLAG_FUNCTION in symbol, and actually use
- DW_EH_PE_pcrel / DW_EH_PE_absptr encoding.
- (ALLOCATE_INITIAL_VALUE): Put PR on stack if prologue clobbers it.
- * sh.md (movsi_media-1): New splitter.
-
-2003-08-06 Graeme Peterson <gp@qnx.com>
-
- * config/i386/nto.h: New.
- * config/i386/t-nto: New.
- * config.gcc (i[34567]86-*-nto-qnx*): New.
-
-2003-08-06 Phil Edwards <pme@gcc.gnu.org>
-
- * doc/install.texi (*-*-solaris2*): Refine configure instructions.
-
-2003-08-06 Alan Modra <amodra@bigpond.net.au>
-
- * calls.c (load_register_parameters): Arrange for call_fusage to
- report the whole register as used when shifting to the msb.
-
-2003-08-05 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin): When not optimizing, call the library
- function for all builtins that have library functions (except alloca).
-
-2003-08-05 Alexandre Oliva <aoliva@redhat.com>
-
- * c.opt: Introduce -fworking-directory.
- * doc/cpp.texi, doc/invoke.texi, doc/cppopts.texi: Document it.
- * c-common.h (flag_working_directory): Declare.
- * c-common.c (flag_working_directory): Define.
- * c-opts.c (c_common_handle_options): Set it.
- (sanitize_cpp_opts): Set...
- * cpplib.h (struct cpp_options): ... working_directory option.
- (struct cpp_callbacks): Add dir_change.
- * cppinit.c (read_original_filename): Call...
- (read_original_directory): New. Look for # 1 "directory//"
- and process it.
- (cpp_read_main_file): Call dir_change callback if working_directory
- option is set.
- * gcc.c (cpp_unique_options): Pass -g*.
- * c-lex.c (cb_dir_change): New.
- (init_c_lex): Set dir_change callback.
- * toplev.c (src_pwd): New static variable.
- (set_src_pwd, get_src_pwd): New functions.
- * toplev.h (get_src_pwd, set_src_pwd): Declare.
- * dbxout.c (dbxout_init): Call get_src_pwd() instead of getpwd().
- * dwarf2out.c (gen_compile_unit_die): Likewise.
- * dwarfout.c (output_compile_unit_die, dwarfout_init): Likewise.
-
-2003-08-05 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * pretty-print.h (pp_set_line_maximum_length): Make macro.
- (pp_set_prefix): Likewise.
- (pp_destroy_prefix): Likewise.
- (pp_remaining_character_count_for_line): Likewise.
- (pp_clear_output_area): Likewise.
- (pp_formatted_text): Likewise.
- (pp_last_position_in_text): Likewise.
- (pp_emit_prefix): Likewise.
- (pp_append_text): Likewise.
- (pp_flush): Likewise.
- (pp_format_text): Likewise.
- (pp_format_verbatim): Likewise.
- (pp_tree_identifier): Tidy.
- * pretty-print.c (pp_base_format_text): Rename from pp_format_text.
- (pp_base_format_verbatim): Rename from pp_format_verbatim.
- (pp_base_flush): Rename from pp_flush.
- (pp_base_set_line_maximum_length): Rename from
- pp_set_line_maximum_length.
- (pp_base_clear_output_area): Rename from pp_clear_output_area.
- (pp_base_set_prefix): Rename from pp_set_prefix.
- (pp_base_destroy_prefix): Rename from pp_destroy_prefix.
- (pp_base_emit_prefix): Rename from pp_emit_prefix.
- (pp_base_append_text): Rename from pp_append_text.
- (pp_base_formatted_text): Rename from pp_formatted_text.
- (pp_base_last_position_in_text): Rename from pp_last_position_in_text.
- (pp_base_remaining_character_count_for_line): Rename from
- pp_remaining_character_count_for_line.
- * diagnostic.h (diagnostic_format_decoder): Tidy.
- (diagnostic_flush_buffer): Likewise.
- * c-pretty-print.h: (pp_c_string_literal): Declare.
- (pp_c_real_literal): Likewise.
- (pp_c_integer_literal): Likewise.
- * c-pretty-print.c (pp_c_char): Use pp_string in lieu of
- pp_identifier.
- (pp_c_character_literal): Tidy.
- (pp_c_string_literal): Make public.
- (pp_c_bool_literal): Likewise.
- (pp_c_integer_literal): Likewise.
- (pp_c_real_literal): Likewise.
-
- * Makefile.in (C_PRETTY_PRINT_H): New variable.
- (c-pretty-print.o): Update dependence.
-
-2003-08-05 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (fix_truncdfsi2_macro): Properly restore
- ".set nomacro" state.
- (fix_truncsfsi2_macro): Likewise.
-
-2003-08-05 Steven Bosscher <steven@gcc.gnu.org>
-
- * tree.h (DID_INLINE_FUNC): Remove macro.
- (DECL_DECLARED_INLINE_P): Move from c-tree.h and cp/cp-tree.h,
- add tree check for FUNCTION_DECL.
- (DECL_ESTIMATED_INSNS): Move from c-common.h and java/java-tree.h.
- (struct tree_decl): Rename inlined_function_flag to
- declared_inline_flag.
- * c-common.h (c_lang_decl): Remove.
- (DECL_ESTIMATED_INSNS): Remove.
- * c-tree.h (struct lang_decl): Don't include c_lang_decl.
- (DECL_DECLARED_INLINE_P): Remove.
- * c-decl.c (grokdeclarator): Update comment. With -finline-functions,
- do not reset DECL_DECLARED_INLINE_P. Don't use DID_INLINE_FUNC.
- (finish_function): Make uninlinable a bool. Fixup call to
- tree_inlinable_function_p() and fix some code style issues.
- * cgraph.h (disgread_inline_limits): Fix spelling: `disregard'.
- * cgraph.c (dump_cgraph): Likewise.
- * cgraphunit.c (cgraph_decide_inlining): Likewise
- (cgraph_finalize_compilation_unit): Likewise.
- Also update call to tree_inlinable_function_p().
- (cgraph_default_inline_p): Don't use DID_INLINE_FUNC. Instead
- look at DECL_DECLARED_INLINE and reverse logic.
- * print-tree.c (print_node): Likewise.
- * toplev.c (rest_of_handle_inlining): Don't use DID_INLINE_FUNC.
- * tree-inline.h (tree_inlinable_function_p): Make a bool. Update
- prototype.
- * tree-inline.c (inlinable_function_p): Split up in this function to
- check for basic inlining inhibiting conditions, and new
- limits_allow_inlining() function. Warn if inlining is impossible
- because the inline candidate calls alloca or uses sjlj exceptions.
- (limits_allow_inlining): this new function to check if the inlining
- limits are satisfied. Throttle from currfn_max_inline_insns, not from
- MAX_INLINE_INSNS_SINGLE. The latter only makes sense if
- MAX_INLINE_INSNS_AUTO and MAX_INLINE_INSNS_SINGLE are equal.
- Update prototypes.
- (tree_inlinable_function_p): Make a bool. Update call to
- inlinable_function_p
- (expand_call_inline): Use limits_allow_inlining() when not in
- unit-at-a-time mode to decide on inlining. Don't use DID_INLINE_FUNC,
- instead see if the function was declared `inline'.
-
-2003-08-05 Josef Zlomek <zlomekj@suse.cz>
-
- * gcse.c (try_replace_reg): Fix updating of note.
-
-2003-08-04 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/11771
- * fold-const.c (negate_expr_p <MINUS_EXPR>): Change to match the
- logic in negate_expr, i.e. we don't invert (A-B) for floating
- point types unless flag_unsafe_math_optimizations.
-
-2003-08-04 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold <PLUS_EXPR>): Transform x+x into x*2.0.
- Optimize x*c+x and x+x*c into x*(c+1) and x*c1+x*c2 into x*(c1+c2)
- for floating point expressions with -ffast-math.
- (fold <MULT_EXPR>): Don't transform x*2.0 into x+x.
- * expmed.c (expand_mult): Wrap long line. Expand x*2.0 as x+x.
-
-2003-08-04 Roger Sayle <roger@eyesopen.com>
-
- * c-common.c (flag_noniso_default_format_attributes): Delete.
- (built_in_attribute): Don't define/undefine DEF_FN_ATTR.
- (c_attrs_initialized): Delete.
- (c_common_nodes_and_builtins): Don't test c_attrs_initialized,
- always call c_init_attributes.
- (c_init_attributes): Don't define/undefine DEF_FN_ATTR. Don't
- set c_attrs_initialized when done.
- (c_common_insert_default_attributes): Delete.
- * c-common.h (flag_noniso_default_format_attributes): Delete.
- (c_coomon_insert_default_attributes): Delete prototype.
- * c-opts.c (set_std_c89, set_std_c99, set_std_cxx98): Dont set
- flag_noniso_default_format_attributes.
-
- * c-decl.c (c_insert_default_attributes): Delete.
- * c-tree.h (c_insert_default_attributes): Delete prototype.
-
- * attribs.c (decl_attributes): Don't call insert_default_attributes
- langhook. Update function description comment.
- * langhooks.h (lang_hooks): Remove insert_default_attributes field.
- * langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Delete.
- * c-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't define.
- * system.h: Poison LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES macro.
-
- * objc/objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Don't
- define.
-
-2003-08-04 Richard Sandiford <rsandif@redhat.com>
-
- * config/mips/mips.c (override_options): Disable -G on targets that
- have no .section support.
- (mips_select_section): Use default_select_section for such targets.
-
-2003-08-04 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (svr4_undeclared_getrnge): Introduce and enable.
- * fixinc/inclhack.def (static_getrnge): Remove disabled hack.
- * fixinc/fixincl.x: Rebuild.
- * fixinc/tests/base/regexp.h: New test.
-
-2003-08-04 Alexandre Oliva <aoliva@redhat.com>
-
- * c-ppoutput.c (cb_line_change): Don't skip line changing while
- parsing macro arguments in the top-level context.
-
-2003-08-04 Neil Booth <neil@daikokuya.co.uk>
-
- * config.in: Remove HAVE_LSTAT.
- * configure, configure.in: Don't test for lstat.
-
-2003-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * opts.c (decode_options): Do language-specific initialization for
- the global diagnostic context.
- * langhooks-def.h (lhd_initialize_diagnostics): Declare.
- (LANG_HOOKS_INITIALIZE_DIAGNOSTITCS): New macro.
- (LANG_HOOKS_INITIALIZER): Adjust.
- * langhooks.h (struct lang_hooks): Add new field
- initialize_diagnostics.
- * langhooks.c (lhd_initialize_diagnostics): Define.
-
-2003-08-03 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * pretty-print.h: Adjust macro definitions.
- * pretty-print.c (pp_newline): Rename to pp_base_newline.
- (pp_character): Rename to pp_base_character.
- (pp_string): Rename to pp_base_string.
- * c-pretty-print.c (pp_buffer): Move to pretty-print.h
- (pp_newline): Likewise. Adjust.
- (pp_c_char): Adjust.
-
-2003-08-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def (BUILT_IN_ABS, BUILT_IN_IMAXABS, BUILT_IN_LABS,
- BUILT_IN_LLABS): Move to miscellaneous section.
-
-2003-08-03 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/11534
- * cppexp.c (parse_defined): Warn only if -pedantic.
-
-2003-08-03 Neil Booth <neil@daikokuya.co.uk>
-
- * cppfiles.c (stack_file): Use file path.
-
-2003-08-02 Roger Sayle <roger@eyesopen.com>
-
- * builtin-types.def (BT_SSIZE): New primitive type.
- (BT_FN_INT_PTR_CONST_STRING_VALIST_ARG,
- BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
- BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
- BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR): New function types.
- * builtins.def (BUILT_IN_DCGETTEXT, BUILT_IN_DGETTEXT,
- BUILT_IN_FSCANF, BUILT_IN_GETTEXT, BUILT_IN_STRFMON,
- BUILT_IN_STRFTIME, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): New builtins.
- * builtin-attrs.def: Remove DEF_FN_ATTR construct and the last
- few functions that define default attributes using it.
- * c-common.c (c_common_insert_default_attributes): Do nothing.
-
- * doc/extend.texi: Document these "new" builtins.
-
-2003-08-02 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/linux.h (SUBTARGET_LINK_SPEC): Don't set rpath.
- (LIB_SPEC): Set -lpthread always when -pthread set. Set -lieee
- when -mieee-fp set and -shared not set.
- (SH_FALLBACK_FRAME_FLOAT_STATE): Don't define for SH5.
-
-2003-08-02 Neil Booth <neil@daikokuya.co.uk>
-
- * cppfiles.c (struct _cpp_file): Rename once_only_next to
- next_file. Remove import and pragma_once, add once_only.
- (find_file): Add new file structures to the all_files list.
- (should_stack_file): Mark #import-ed files once-only, and
- don't stack them if the file has already been stacked.
- (_cp_mark_file_once_only): Simplify.
- * cpphash.h (struct cpp_reader): Rename once_only_files
- to all_files. Rename saw_pragma_once to seen_once_only.
- (_cpp_mark_file_once_only): Update prototype.
- * cpplib.c (do_pragma_once): Update.
-
-2003-08-02 Neil Booth <neil@daikokuya.co.uk>
-
- * cppfiles.c (ENOTDIR): Remove.
- (open_file_in_dir): Rename find_file_in_dir. Handle errors
- other than ENOENT here.
- (once_only_file_p): Rename should_stack_file.
- (find_file, open_file_failed, read_file_guts): Report errors
- with full path name.
- (read_file): Move pch handling to should_stack_file.
- (should_stack_file): Handle PCH and once-only issues, and
- reading the file.
- (stack_file): Don't do file reads.
-
-2003-08-02 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * libgcov.c (gcov_exit): Cleanup and fix.
- * profile.c (compute_value_histograms): Don't try to read profiles
- that are not present.
-
-2003-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def: Categorize.
-
- * builtins.def (BUILT_IN_CABS, BUILT_IN_CABSF, BUILT_IN_CABSL):
- Mind fp rounding.
- (BUILT_IN_FFSL): Use DEF_EXT_LIB_BUILTIN.
-
-2003-08-02 Andreas Tobler <a.tobler@schweiz.ch>
-
- * config.gcc: Enable posix threads by default on darwin.
-
-2003-08-01 Jakub Jelinek <jakub@redhat.com>
-
- * cfgcleanup.c (outgoing_edges_match): Check REG_EH_REGION notes
- even if nehedges1 is 0.
-
-2003-08-01 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/fixfixes.c, fixinc/fixlib.c, fixinc/fixlib.h,
- fixinc/fixtests.c, fixinc/procopen.c, fixinc/server.c,
- fixinc/server.h, fixinc/fixincl.c: ANSIfy function prototypes
- and defintions.
-
- * fixinc/inclhack.def (broken_cabs): Make matching more generous.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/math.h: Regenerate to match test_text change.
-
-2003-08-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * ggc-common.c (gt_pch_restore): Case MAP_FAILED to void *.
-
-2003-08-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * except.c (sjlj_emit_dispatch_table): Use ptr_mode, not Pmode,
- for accesses to exc_ptr.
-
-2003-08-01 Geoffrey Keating <geoffk@apple.com>
-
- * doc/sourcebuild.texi (Front End Directory): Don't make references
- to libsubdir, it's not part of the interface to frontends.
- * doc/install.texi (Configuration): Help users read faster by saying
- that GCC's configure options are the standard autoconf ones.
- Mention --libdir. Update the default rules for finding the
- assembler. Don't use libsubdir since we haven't said what it means.
- (Specific): In the Solaris 7 notes, update the place to put the
- assembler.
- * doc/invoke.texi: Update lib/gcc-lib to lib/gcc.
- * doc/cpp.texi (Search Path): Actually, the search path
- depends on libdir, which can relocate with cpp.
- * doc/tm.texi (Driver): Don't document STANDARD_EXEC_PREFIX, it's
- now a private interface between the Makefile and the driver.
-
-2003-08-01 Richard Henderson <rth@redhat.com>
-
- * system.h: Poison ASM_SIMPLIFY_DWARF_ADDR.
-
- * varasm.c (lookup_constant_def): New function.
- * rtl.h (lookup_constant_def): Declare it.
- * dwarf2out.c (loc_descriptor_from_tree): Use it.
- Use targetm.delegitimize_address, not ASM_SIMPLIFY_DWARF_ADDR.
-
-2003-08-01 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (gettags, pushdecl_function_level): Delete.
- (last_function_parm_vars): Rename last_function_parm_others.
- (current_function_parm_vars): Rename current_function_parm_others.
- (struct c_scope): Rewrite comment explaining this data structure.
- Add names_last, blocks_last, parms_last fields. Rename
- incomplete_list to incomplete.
- (SCOPE_LIST_APPEND, SCOPE_LIST_CONCAT): New macros.
- (poplevel): Ignore second argument. No need to nreverse
- anything. Restructure such that each list is processed
- exactly once. Use 'const location_t *locus' syntactic sugar
- variable where useful. Issue unused variable warnings
- ourselves, do not rely on function.c.
- (insert_block, pushdecl, bind_label): Use SCOPE_LIST_APPEND.
- (pushdecl_top_level): Likewise. Don't call duplicate_decls.
- (implicitly_declare): decl cannot be error_mark_node.
- (undeclared_variable): Manipulate scope structure directly.
- (c_make_fname_decl): Likewise.
- (getdecls, c_init_decl_processing): Fix comment.
- (mark_forward_parm_decls): Use SCOPE_LIST_CONCAT. No need
- for 'last' variable.
- (grokparms): No need to nreverse parms list.
- (store_parm_decls_newstyle): Set up the parms_last and
- names_last fields of the new scope too.
- (store_parm_decls_oldstyle): Can assume DECL_WEAK is not set
- on parms to begin with; check this under ENABLE_CHECKING. Set
- up parms_last.
- (check_for_loop_decls): Refer directly to current_scope->tags.
- Use consistent quote style in diagnostics.
- (c_write_global_declarations): The names list is not backward.
-
- * c-common.h: Don't prototype gettags.
- * c-parse.in: Call poplevel with second argument 0 always.
-
-2003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def: Resort builtins.
-
-2003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def (DEF_GCC_BUILTIN, DEF_LIB_BUILTIN,
- DEF_EXT_LIB_BUILTIN, DEF_C99_BUILTIN, DEF_C99_C90RES_BUILTIN):
- Prepend "__builtin_" onto NAME with string concatenation. Remove
- explicit "__builtin_" from each macro call.
-
- Reformat entire file.
-
-2003-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def (ATTR_MATHFN_ERRNO, ATTR_MATHFN_FPROUNDING,
- ATTR_MATHFN_FPROUNDING_ERRNO): New macros. Use throughout.
-
-2003-08-01 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390.c (s390_select_ccmode): Do not attempt to use CCL,
- CCL1, or CCL2 modes with floating point operations.
-
- * config/s390/s390.md ("*addsf3_cc", "*addsf3_cconly", "*adddf3_cc",
- "*adddf3_cconly", "*subsf3_cc", "*subsf3_cconly", "*subdf3_cc",
- "*subdf3_cconly"): New insns.
- ("*negabssi2", "*negabsdi2", "*negabsdf2", "*negabssf2"): Likewise.
-
-2003-08-01 Neil Booth <neil@daikokuya.co.uk>
-
- * Makefile.in: Refine dependencies.
- * c-opts.c (c_common_handle_option): Do nothing for -Wimport.
- * c.opt: Update help for -Wimport.
- * cppfiles.c: Include hashtab.h. Update comments.
- (stack_file): Read the file before updating dependencies.
- (once_only_file_p): Be smarter about marking once-only files.
- (_cpp_mark_file_once_only): Correct the check for existence on
- the list.
- (open_file_failed): Use name not path, which is NULL.
- * cpphash.h: Don't include hashtab.h.
- (struct _cpp_file): Remove.
- (struct cpp_reader): Update.
- * cppinit.c (cpp_create_reader): Don't initialize warn_import.
- * cpplib.h (struct cpp_options): Remove warn_import.
- (cpp_simplify_path): Remove.
-
-2003-08-01 Nathan Sidwell <nathan@codesourcery.com>
-
- PR c++/11295
- * doc/extend.texi (Statement Expressions): Document C++ semantics.
-
-2003-07-31 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
-
- * config.gcc (sh-*-linux*): Do not override sh/t-linux with sh/t-le.
-
-2003-07-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtin-types.def: Use `LONGDOUBLE' instead of `LONG_DOUBLE'
- throughout.
- * builtins.def: Likewise.
-
-2003-07-31 Jason Merrill <jason@redhat.com>
-
- * Makefile.in (bubblestrap): Don't require a previous full
- bootstrap.
-
- * expr.c (mostly_zeros_p): No longer static.
- * tree.h: Declare it.
- * stmt.c (resolve_asm_operand_names): Don't copy the pattern
- unless we need to do substitutions.
-
-2003-07-31 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold <MULT_EXPR>): Optimize both x*pow(x,c) and
- pow(x,c)*x as pow(x,c+1) for constant values c. Optimize x*x
- as pow(x,2.0) when the latter will be expanded back into x*x.
- (fold <RDIV_EXPR>): Optimize pow(x,c)/x as pow(x,c-1).
- * builtins.c (expand_builtin_pow): Ignore flag_errno_math as
- pow can never set errno when used with an integer exponent.
- Always use expand_powi when exponent is -1, 0, 1 or 2.
- (fold_builtin): Don't rewrite pow(x,2.0) as x*x nor pow(x,-2.0)
- as 1.0/(x*x). This avoids unbounded recursion as we now prefer
- the pow forms of these expressions.
-
-2003-07-31 Geoffrey Keating <geoffk@apple.com>
-
- * Makefile.in (libexecdir): New.
- (libsubdir): Use gcc instead of gcc-lib.
- (libexecsubdir): New.
- (ORDINARY_FLAGS_TO_PASS): Add libexecsubdir.
- (DRIVER_DEFINES): Add STANDARD_LIBEXEC_PREFIX, use gcc instead of
- gcc-lib.
- (installdirs): Make libexecsubdir.
- (install-common): Put executables in libexecsubdir.
- (itoolsdir): Use libexecsubdir.
- (itoolsdatadir): New.
- (install-mkheaders): Separate data files and executables.
- (install-collect2): Put executables in libexecsubdir.
- (uninstall): Remove libexecsubdir.
- * mkheaders.in: Update for new arrangement of files.
- (libexecdir): New.
- (libexecsubdir): New.
- (itoolsdir): Use libexecsubdir.
- (itoolsdatadir): New.
- * gcc.c (gcc_libexec_prefix): New.
- (STANDARD_LIBEXEC_PREFIX): Use gcc instead of gcc-lib.
- (standard_exec_prefix_1): Use libexec.
- (standard_exec_prefix_2): New.
- (standard_libexec_prefix): New.
- (process_command): Update for new arrangement of files. Compute
- gcc_libexec_prefix. Update for change from gcc-lib to gcc.
-
-2003-07-31 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * inclhack.def (stdio_va_list): Avoid bogus replacement which
- triggers on Interix.
- * fixincl.x: Regenerate.
-
-2003-07-31 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (legitimate_pic_address_disp_p): Disallow TLS
- SYMBOL_REFs not inside UNSPEC even in PLUS rtx.
-
-2003-07-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * dwarf2out.c (loc_descriptor_from_tree, case CONSTRUCTOR): New case.
-
-2003-07-31 Per Bothner <pbothner@apple.com>
-
- * opts.c (in_fnames, num_in_fnames): Moved here from c-opts.
- (add_input_filename): New function.
- (handle_options): Call add_input_filename directly instead of
- with a lang hook.
- * opts.h (in_fnames, num_in_fnames): Moved here.
- (add_input_filename): Declare.
- * c-decl.c: Need to #include opts.h.
- * Makefile.in (c-decl.o): Also depends on opts.h.
- * c-opts.c (in_fnames, num_in_fnames): Moved to opts.c.
- (c_common_handle_filename): Replaced by add_input_filename.
- * c-common.h (in_fnames, num_in_fnames, c_common_handle_filename):
- Remove.
- * langhooks.h (struct lang_hooks): Remove handle_filename hook.
- * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME): Remove macro.
- (LANG_HOOKS_INITIALIZER): Remove use of LANG_HOOKS_HANDLE_FILENAME.
- * c-lang.c (LANG_HOOKS_HANDLE_FILENAME): Remove macro.
-
-2003-07-31 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * combine.c (try_combine): Set JUMP_LABEL for newly created
- unconditional jump.
-
-2003-07-31 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * fold-const.c (fold): Fold some comparisons of bit operations.
-
-2003-07-31 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (create_edge): Fix typo.
- * i386.c (pic_symbolic_operand): Reorder tests.
-
-2003-07-31 Nathan Sidwell <nathan@codesourcery.com>
-
- * doc/gcov.texi (Invoking Gcov): Describe output name mangling
- more fully.
- (Gcov Data Files): Update.
-
-2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.gcc (alpha*-dec-osf[45]*): Enable POSIX thread support by
- default.
-
- * gthr-posix.c: New file.
- * gthr-posix.h: Define _REENTRANT if missing.
- Make _LIBOBJC #pragma weak visible with _LIBOBJC_WEAK.
-
- * config/alpha/t-osf4 (SHLIB_LINK): Hide dummy functions provided
- by gthr-posix.o.
- * config/alpha/t-osf-pthread: New file.
-
- * fixinc/inclhack.def (alpha_pthread): New fix.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/pthread.h [ALPHA_PTHREAD_CHECK]: New testcase.
-
- * doc/install.texi (alpha*-dec-osf*): Remove --enable-threads
- warning.
- Fixes PR bootstrap/9330.
-
-2003-07-31 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in (gcc_cv_ld_hidden): Also disable on mips-sgi-irix5*
- without GNU ld.
- Update comment.
- * configure: Regenerate.
-
-2003-07-31 Vladimir Makarov <vmakarov@redhat.com>
-
- * sched-deps.c (sched_analyze_2): Prevent interblock move of CC0
- setter.
-
-2003-07-30 Roger Sayle <roger@eyesopen.com>
-
- * builtins.def: Alphabetize.
-
-2003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
-
- * doc/c-tree.texi: Normalize spellings of "lowercase" and
- "uppercase".
- * doc/cpp.texi: Likewise.
- * doc/md.texi: Likewise.
- * doc/rtl.texi: Likewise.
- * doc/tm.texi: Likewise.
-
-2003-07-30 Matt Kraai <kraai@alumni.cmu.edu>
-
- * objc/Make-lang.in (objc.stage1, objc.stage2, objc.stage3)
- (objc.stage4, objc.stageprofile, objc.stagefeedback): Remove moves
- of cc1obj.
-
-2003-07-30 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Undef these
- macros before defining them.
-
-2003-07-31 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md (UNSPEC_ROUND, UNSPEC_SETHIGH,
- UNSPECV_BLOCKAGE): New constants.
- ("*sethighqisi", "*sethighhisi", "*sethiqidi_64", "*sethiqidi_31",
- "*extractqi", "*extracthi", "*extendqidi2" splitter, "*extendqisi2"
- splitter, "fix_truncdfdi2_ieee", "fix_truncdfsi2_ieee",
- "fix_truncsfdi2", "fix_truncsfsi2", "blockage"): Use them.
-
- (all insns and expanders): Write output control string as brace block
- where appropriate. Remove \-escapes for doublequote characters.
-
-2003-07-31 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (insert_store): Fix typo in previous patch.
-
-2003-07-30 Neil Booth <neil@daikokuya.co.uk>
-
- * cppfiles.c (stack_file, open_file_failed): Use path for deps.
-
-2003-07-30 Andi Kleen <ak@muc.de>
-
- * loop.c (check_dbra_loop): Allow LTU in the loop condition.
-
-2003-07-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * combine.c (distribute_notes): Cancel REG_VALUE_PROFILE notes.
- * gcov-io.h (GCOV_FIRST_VALUE_COUNTER, GCOV_LAST_VALUE_COUNTER,
- GCOV_N_VALUE_COUNTERS): New.
- * profile.c (compute_value_histograms): New static function.
- (branch_prob): Read back the value histograms.
- * rtl.c (reg_note_name): Add name for REG_VALUE_PROFILE note.
- * rtl.h (enum reg_note): Add REG_VALUE_PROFILE note.
- * value-prof.c: Add comment on reading the profile.
- * value-prof.h (COUNTER_FOR_HIST_TYPE, HIST_TYPE_FOR_COUNTER): New.
- * doc/invoke.texi (-fprofile-values): Document behavior with
- -fbranch-probabilities.
-
-2003-07-30 David Edelsohn <edelsohn@gnu.org>
-
- * longlong.h (PowerPC umul_ppmm): Do not test __vxworks__.
-
-2003-07-30 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
- symbolically.
-
-2003-07-30 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (insert_store): Ignore fake edges.
-
- * c-common.c (flag_vtable_gc): Kill.
- * c-common.g (flag_vtable_gc): Kill.
- * c-opts (c_common_handle_option): Kill.
- * c.opt (fvtable-gc): Kill.
- * final.c (final_scan_insn): Do not call assemble_vtable_entry.
- * output.h (assemble_vtable_entry, assemble_vtable_inherit): Kill.
- * varasm.c (assemble_vtable_entry, assemble_vtable_inherit): Kill.
-
- * invoke.texi (-ftable-gc): Kill documentation.
-
- * tree-inline.c (inlinable_function_p): Don't set DECL_UNINLINABLE
- just because function body is missing.
-
- * i386.c (pic_symbolic_operand): Properly detect RIP relative unspecs.
-
-2003-07-30 Ranjit Mathew <rmathew@hotmail.com>
-
- * unwind-sjlj.c: Fix typo in file description.
-
-2003-07-30 Alan Modra <amodra@bigpond.net.au>
-
- * calls.c (load_register_parameters): When shifting reg sized values
- to the msb, move the value to a reg first.
-
-2003-07-29 Geoffrey Keating <geoffk@apple.com>
-
- * cppfiles.c (stack_file): Leave filename as "" rather than "<stdin>".
- * line-map.h (linemap_add): Update comments.
- * line-map.c (linemap_add): Update comments, interpret zero-length
- filename as "<stdin>".
-
-2003-07-29 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * mkinstalldirs: Import autoconf 2.57 / automake 1.7 version.
-
-2003-07-29 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (last_function_parm_vars, current_function_parm_vars):
- New static variables.
- (struct c_scope): Add parms and warned_forward_parm_decls
- fields; remove parm_order.
- (storedecls, storetags): Delete.
- (poplevel): Also clear bindings on the parms chain.
- (pushdecl): Handle forward declarations of parameters, and
- chain PARM_DECLs on the parms list, not the names list.
- (lookup_name_current_level): Check for PARM_DECLs on the parms
- list too.
- (push_parm_decl): Don't update parm_order.
- (clear_parm_order): Rename mark_forward_parm_decls. Issue the
- warning, only once per parameter list, and set TREE_ASM_WRITTEN
- on the decls here. Then move the forward decls to the names list.
- (grokparms): Set last_function_parm_vars.
- (get_parm_info): Don't use gettags or getdecls. No need to
- extract non-parms from the parms list, or reorganize the parms
- list. Feed nonparms back in the TREE_TYPE of the list node
- returned. Issue only one error per parameter list for "void"
- appearing more than once in said parameter list. Collapse
- parmlist_tags_warning into this function to avoid double scan
- of tags list.
- (start_function): Set current_function_parm_vars.
- (store_parm_decls_newstyle): Bypass pushdecl, manipulate scope
- directly. Get non-parms from current_function_parm_vars; no
- need to extract them from the parms chain. Properly bind tags
- in the new scope.
- (store_parm_decls_oldstyle): No need to extract non-parameters
- from the parms chain, nor to store them back afterward. Move
- declaration to top of function, restructure code reordering
- DECL_ARGUMENTS.
- (store_parm_decls): No need to save and restore warn_shadow.
- * c-parse.in: Don't call parmlist_tags_warning nor
- clear_parm_order. Call mark_forward_parm_decls when forward
- parm decls are encountered.
- * c-tree.h: Prototype mark_forward_parm_decls; not
- clear_parm_order or parmlist_tags_warning.
-
-2003-07-29 Geoffrey Keating <geoffk@apple.com>
-
- * c-common.c (allow_pch): Remove.
- * c-common.h (allow_pch): Remove.
- (c_common_no_more_pch): Declare.
- * c-lex.c (c_lex): Call c_common_no_more_pch when appropriate.
- * c-pch.c: Include hosthooks.h.
- (c_common_valid_pch): Don't check allow_pch.
- (c_common_read_pch): Clear valid_pch to prevent reading PCH files.
- (c_common_no_more_pch): New.
- * ggc-common.c: Include hosthooks.h.
- (gt_pch_save): Call gt_pch_get_address.
- (gt_pch_restore): Call gt_pch_use_address.
- * hooks.c (hook_voidp_size_t_null): New.
- (hook_bool_voidp_size_t_false): New.
- * hooks.h (hook_voidp_size_t_null): New.
- (hook_bool_voidp_size_t_false): New.
- * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): New.
- (HOST_HOOKS_GT_PCH_USE_ADDRESS): New.
- (HOST_HOOKS_INITIALIZER): Add HOST_HOOKS_GT_PCH_GET_ADDRESS,
- HOST_HOOKS_GT_PCH_USE_ADDRESS.
- * hosthooks.h (struct host_hooks): Add gt_pch_get_address,
- gt_pch_use_address.
- * doc/hostconfig.texi (Host Common): Document
- HOST_HOOKS_GT_PCH_GET_ADDRESS, HOST_HOOKS_GT_PCH_USE_ADDRESS.
- * Makefile.in (c-pch.o): Depend on hosthooks.h.
- (ggc-common.o): Likewise.
-
- * config/rs6000/host-darwin.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Define.
- (HOST_HOOKS_GT_PCH_USE_ADDRESS): Define.
- (pch_address_space): New.
- (darwin_rs6000_gt_pch_get_address): New.
- (darwin_rs6000_gt_pch_use_address): New.
-
-2003-07-29 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/11569
- PR preprocessor/11649
- * Makefile.in (LIBCPP_DEPS): Add HASHTAB_H.
- * cppfiles.c: Completely rewritten.
- * c-incpath.c (free_path, remove_duplicates, heads, tails, add_path):
- struct cpp_path is now struct cpp_dir.
- (remove_duplicates): Don't simplify path names.
- * c-opts.c (c_common_parse_file): cpp_read_next_file renamed
- cpp_stack_file.
- * cpphash.h: Include hashtab.h.
- (_cpp_file): Declare.
- (struct cpp_buffer): struct include_file is now struct _cpp_file,
- and struct cpp_path is now struct cpp_dir. Rename members.
- (struct cpp_reader): Similarly. New members once_only_files,
- file_hash, file_hash_entries, quote_ignores_source_dir,
- no_search_path, saw_pragma_once. Remove all_include_files and
- max_include_len. Make some members bool.
- (_cpp_mark_only_only): Renamed from _cpp_never_reread.
- (_cpp_stack_file): Renamed from _cpp_read_file.
- (_cpp_stack_include): Renamed from _cpp_execute_include.
- (_cpp_init_files): Renamed from _cpp_init_includes.
- (_cpp_cleanup_files): Renamed from _cpp_cleanup_includes.
- * cppinit.c (cpp_create_reader): Initialize no_search_path. Update.
- (cpp_read_next_file): Rename and move to cppfiles.c.
- (cpp_read_main_file): Update.
- * cpplib.c (run_directive): Update for renamed members.
- (do_include_common, _cpp_pop_buffer): Update.
- (do_import): Undeprecate #import.
- (do_pragma_once): Undeprecate. Use _cpp_mark_file_once_only.
- * cpplib.h: Remove file_name_map_list.
- (cpp_options): Remove map_list.
- (cpp_dir): Rename from cpp_path. New datatype for name_map.
- (cpp_set_include_chains, cpp_stack_file, cpp_included): Update.
-
-2003-07-29 Phil Edwards <pme@gcc.gnu.org>
-
- * Makefile.in: Make stamp-objdir safe for parallel builds.
-
-2003-07-29 Phil Edwards <pme@gcc.gnu.org>
-
- * Makefile.in (stmp-docobjdir): New target; ensure $docobjdir exists.
- (info): Depend on stmp-docobjdir.
-
-2003-07-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure: Regenerate.
-
-2003-07-29 Jan Hubicka <jh@suse.cz>
-
- PR C++/11131
- * tree-inline.c (expand_call_inline): Always call inlinable_function_p
- in !unit-at-a-time mode.
-
-2003-07-28 Geoffrey Keating <geoffk@apple.com>
-
- * c-decl.c (c_expand_body_1): Use C_DECL_FILE_SCOPE to detect
- main function.
-
-2003-07-28 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/11667
- * c-common.c (shorten_compare): Take into account differences
- between C and C++ representation for enumeration types.
- * tree.h (set_min_and_max_values_for_integral_type): Declare.
- * stor-layout.c (set_min_and_max_values_for_integral_type): New
- function, broken out from ...
- (fixup_signed_type): ... here and ...
- (fixup_unsigned_type): ... here.
-
-2003-07-28 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c: Update commentary, adjust blank lines throughout.
- (struct c_scope): Fix indentation. Reorder members so
- outer-context pointers come first, booleans last.
- (duplicate_decls, define_label): Use a 'locus' variable for
- diagnostic locations in a few more places.
- (warn_if_shadowing): Un-split a conditional that fits on one line.
- (c_init_decl_processing): No need to clear current_scope and
- current_function_scope.
- (start_decl): Merge if/else if statements with same action.
- (push_parm_decl): Rename old_immediate_size_expand to use
- save_foo convention; save/restore around entire function.
- (grokdeclarator): Remove unnecessary braces.
-
-2003-07-28 Hans-Peter Nilsson <hp@bitrange.com>
- Michael Culbertson <Michael.J.Culbertson@wheaton.edu>
-
- * c-parse.in (lineno_stmt_decl_or_labels_ending_decl): Also warn
- when warn_declaration_after_statement. Call pedwarn_c90, not
- pedwarn. Correct message: it's "ISO C90", not "ISO C89".
- * c-common.c (warn_declaration_after_statement): Define.
- * c-common.h (warn_declaration_after_statement): Declare.
- * c.opt (Wdeclaration-after-statement): New.
- * c-errors.c (pedwarn_c90): New function.
- * c-opts.c (c_common_handle_option) <case
- OPT_Wdeclaration_after_statement>: New.
- * c-tree.h (pedwarn_c90): Declare.
- * doc/invoke.texi (Option Summary): Document
- -Wdeclaration-after-statement.
- (Warning Options): Ditto.
-
-2003-07-28 Jan Hubicka <jh@suse.cz>
-
- * i386.md (memory attribute) Avoid accessing uninitialized memory
- for ishift1 type instructions.
-
-2003-07-28 Jakub Jelinek <jakub@redhat.com>
-
- * configure.in (--enable-checking): Add fold category.
- (ENABLE_FOLD_CHECKING): Define if requested.
- * configure: Rebuilt.
- * config.in: Rebuilt.
- * doc/install.texi: Document it.
- * fold-const.c: Include md5.h.
- [ENABLE_FOLD_CHECKING] (fold): Define to fold_1.
- [ENABLE_FOLD_CHECKING] (fold, fold_checksum_tree, fold_check_failed,
- print_fold_checksum): New functions.
-
- * fold-const.c (fold): Never modify argument passed to fold, instead
- change a copy and return it.
- * convert.c (convert_to_integer): Likewise.
-
-2003-07-27 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/fixinc.svr4: Remove dead code. Remove now-unnecessary
- cleanup of junk after #else and #endif directives. Collapse repeated
- clauses into for statment.
-
- * fixinc/fixincl.sh: GNU C -> GCC. Add usage comment.
-
-2003-07-27 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (struct c_scope): Remove keep_if_subblocks field.
- (keep_next_if_subblocks): Rename next_is_function_body.
- (pushlevel): Adjust commentary. Always set ->keep on the
- outermost level of a function. Don't set ->keep_if_subblocks.
- (poplevel): Adjust commentary. Don't look at ->keep_if_subblocks.
- (store_parm_decls): Adjust to match.
- (finish_function): Adjust to match.
- Call poplevel with all three arguments zero.
-
- * c-decl.c (store_parm_decls_newstyle, store_parm_decls_oldstyle):
- New functions split out of store_parm_decls.
- Avoid unnecessary work. Use local variables consistently.
- (store_parm_decls): Likewise.
-
- (finish_function): No need to set functionbody flag on call to
- poplevel.
- (struct language_function): Remove scope field.
- (c_push_function_context, c_pop_function_context): No need to
- save and restore current_scope.
-
-2003-07-27 Nathan Sidwell <nathan@codesourcery.com>
-
- * doc/extend.texi (Deprecated Features): Implicit typename is
- gone. Default args on types is going.
-
-2003-07-26 J"orn Rennecke <joern.rennecke@superh.com>
-
- * Makefile.in (ifcvt.o): Depend on target.h
- * ifcvt.c (target.h): Include.
- (if_convert): Don't call mark_loop_exit_edges if we can't
- modify jumps.
-
-2003-07-26 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Testing): Adjust required versions of DejaGnu.
-
-2003-07-26 Richard Henderson <rth@redhat.com>
-
- PR inline-asm/11676
- * cse.c (count_reg_usage): Handle asm_operands properly.
-
-2003-07-26 Roger Sayle <roger@eyesopen.com>
-
- * builtins.def (DEF_FALLBACK_BUILTIN): Delete.
- (DEF_EXT_FALLBACK_BUILTIN): Delete.
- (BUILT_IN_BZERO, BUILT_IN_BCOPY, BUILT_IN_BCMP): Declare using
- the regular DEF_EXT_LIB_BUILTIN macro.
- (BUILT_IN_FPUTC, BUILT_IN_FPUTS, BUILT_IN_FWRITE): Declare using
- the regular DEF_LIB_BUILTIN macro.
- (BUILT_IN_PUTCHAR_UNLOCKED, BUILT_IN_PUTS_UNLOCKED,
- BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS_UNLOCKED,
- BUILT_IN_FWRITE_UNLOCKED): Declare using the regular
- DEF_EXT_LIB_BUILTIN macro.
-
- * c-decl.c (duplicate_decls): Remove code to handle builtin
- functions prototyped without an argument list.
-
-2003-07-26 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/winnt.c: Revert 2003-07-08 change.
- (i386_pe_section_type_flags): Remove error_with_decl here too.
-
-2003-07-26 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * config/arm/pe.c (arm_mark_dllimport): Don't use xxx_with_decl.
- * config/mcore/mcore.c (mcore_mark_dllimport): Likewise.
- * config/v850/v850.c (v850_handle_data_area_attribute): Likewise.
- (v850_handle_data_area_attribute): Likewise.
-
-2003-07-26 Geoffrey Keating <geoffk@apple.com>
-
- * varasm.c (output_constant_def_contents): Use
- ASM_DECLARE_CONSTANT_NAME if defined.
- * doc/tm.texi (Label Output): Document ASM_DECLARE_CONSTANT_NAME.
- * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Ensure zero-sized
- objects get at least one byte to prevent assembler problems.
- (ASM_DECLARE_CONSTANT_NAME): New.
-
- * Makefile.in (libbackend.o): Remove options_.h.
- (mostlyclean): Likewise.
-
- * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't
- insert a label at the end of an function under Mach-O.
-
- * c-decl.c (c_static_assembler_name): Remove TREE_STATIC test.
-
-2003-07-25 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (is_ev64_opaque_type): Only check pointer
- equality.
- (spe_init_builtins): Declare __ev64_opaque__ as a builtin type.
-
- * config/rs6000/spe.h: Remove __ev64_opaque__ definition.
-
-2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * doc/passes.texi (Passes): Mention pretty-printing and
- diagnostic files.
-
-2003-07-25 Nathan Sidwell <nathan@codesourcery.com>
-
- * doc/extend.texi (Function Attributes): GNU C++ does now allow
- unused parameter decls.
- (Attribute Syntax): GNU C++ does not allow label attributes to be
- after the ':'.
-
-2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * objc/objc-act.c (objc_check_decl): Don't use xxx_with_decl.
- (objc_declare_class): Likewise.
- (error_with_ivar): Likewise.
- (start_class): Likewise.
- (warn_with_method): Likewise.
-
-2003-07-25 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- Remove pedwarn_with_decl, warning_with_decl and error_with_decl
- from GCC.
- * calls.c (try_to_integrate): Don't use xxx_with_decl.
- (expand_call): Likewise.
- * dwarfout.c (output_reg_number): Likewise.
- * expr.c (expand_expr): Likewise.
- * function.c (assign_temp): Likewise.
- (uninitialized_vars_warning): Likewise.
- (setjmp_args_warning): Likewise.
- (expand_function_end): Likewise.
- * stmt.c (fixup_gotos): Likewise.
- (warn_about_unused_variables): Likewise.
- (expand_end_bindings): Likewise.
- * stor-layout.c (layout_decl): Likewise.
- (place_field): Likewise.
- * toplev.c (check_global_declarations): Likewise.
- (rest_of_handle_inlining): Likewise.
- (default_tree_printer): New function.
- (general_init): Initialize diagnostic machinery before routing
- signals to the ICE machinery. Set default tree printer.
- * toplev.h (pedwarn_with_decl): Remove declaration.
- (warning_with_decl): Likewise.
- (error_with_decl): Likewise.
- (pedwarn): Remove attribute for the time being.
- * tree-inline.c (expand_call_inline): Don't use xxx_with_decl.
- * varasm.c (named_section): Likewise.
- (make_decl_rtl): Likewise.
- (assemble_variable): Likewise.
- (merge_weak): Likewise.
- (declare_weak): Likewise.
-
- * diagnostic.h: Move non-diagnostic stuff into pretty-print.h.
- * diagnostic.c: Move non-diagnostic stuff into pretty-print.c.
- (format_with_decl): Remove.
- (diagnostic_for_decl): Likewise.
- (pedwarn_with_decl): Likewise.
- (warning_with_decl): Likewise.
- (error_with_decl): Likewise.
- (diagnostic_initialize): Adjust.
- (diagnostic_count_diagnostic): Likewise.
- (announce_function): Likewise.
- (lhd_print_error_function): Likewise.
- (diagnostic_report_current_module): Likewise.
- (default_diagnostic_starter): Likewise.
- (diagnostic_report_diagnostic): Likewise.
- (default_diagnostic_finalizer): Likewise.
- (verbatim): Likewise.
- (error): Likewise.
- (warning): Likewise.
- * opts.c (common_handle_option): Likewise.
- * pretty-print.c: New file.
- * c-pretty-print.h (pp_base): Override.
- * c-pretty-print.c: Adjust use of macros throughout.
- (pp_buffer): New macro.
- (pp_newline): Likewise.
- * c-objc-common.c (c_tree_printer): Adjust prototype. Tidy.
- * Makefile.in (DIAGNOSTIC_H): New variable.
- (c-errors.o): Use it.
- (c-objc-common.o): Likewise.
- (c-common.o): Likewise.
- (c-opts.o): Likewise.
- (c-format.o): Likewise.
- (diagnostic.o): Likewise.
- (opts.o): Likewise.
- (toplev.o): Likewise.
- (rtl-error.o): Likewise.
- (dwarf2out.o): Likewise.
- (jump.o): Likewise.
- (pretty-print.o): New rule.
-
-2003-07-24 Roger Sayle <roger@eyesopen.com>
-
- * builtins.def (BUILT_IN_PRINTF, BUILT_IN_FPRINTF): Changed from
- front-end builtins to normal builtins, using DEF_LIB_BUILTIN.
- (BUILT_IN_PRINTF_UNLOCKED, BUILT_IN_FPRINTF_UNLOCKED): Changed
- from front-end to normal builtins, using DEF_EXT_LIB_BUILTIN.
- (DEF_FRONT_END_LIB_BUILTIN): Delete.
- (DEF_EXT_FRONT_END_LIB_BUILTIN): Delete.
- (BUILT_IN_FWRITE_UNLOCKED): Wrap long line.
-
- * builtins.c (build_string_literal): New function to construct
- a char* pointer to a string literal.
- (expand_builtin_fputs): Change 2nd argument from "int ignore" to
- "rtx target" to be consistent with other expand_builtin_* functions.
- Change 3rd argument from "int unlocked" to "bool unlocked".
- (expand_builtin_printf): Rewrite of c_expand_builtin_printf from
- c-common.c to avoid front-end dependencies. Optimize printf("")
- as a no-op when the result isn't required. Handle embedded NULs
- in format string.
- (expand_builtin_fprintf): A rewrite of c_expand_builtin_fprintf
- from c-common.c to avoid front-end dependencies. Likewise, optimize
- fprintf(fp,"") as a no-op when the result isn't required, evaluating
- fp for side-effects. Handle embedded NULs in format string.
- (expand_builtin_sprintf): Fix typo.
- (expand_builtin): Don't expand BUILT_IN_FPRINT{,_UNLOCKED} when not
- optimizing. Adjust calls of expand_builtin_fputs to match the API
- change. Expand BUILT_IN_PRINTF and BUILT_IN_PRINTF_UNLOCKED using
- expand_builtin_printf. Likewise, expand BUILT_IN_FPRINTF_UNLOCKED
- and BUILT_IN_FPRINTF using expand_builtin_fprintf.
-
- * c-common.c (is_valid_printf_arglist): Delete.
- (c_expand_builtin): Delete.
- (c_expand_builtin_printf): Moved to builtins.c. Delete.
- (c_expand_builtin_fprintf): Moved to builtins.c. Delete.
- (c_expand_expr): No longer treat CALL_EXPRs specially.
- (CALLED_AS_BUILT_IN): Delete.
-
-2003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR optimization/11631
- * gcse.c (store_motion): Connect infinite loops to exit.
-
-2003-07-24 Jason Merrill <jason@redhat.com>
-
- * tree.h (boolean_type_node): Move from C/C++/Java frontends.
- (boolean_true_node, boolean_false_node): Likewise.
- (enum tree_index): Add TI_BOOLEAN_{TYPE,FALSE,TRUE}.
- * tree.c (build_common_tree_nodes): Init boolean_type_node.
- (build_common_tree_nodes_2): Init boolean_{true,false}_node.
- * stor-layout.c (set_sizetype): Handle an early BOOLEAN_TYPE.
- * c-common.h (truthvalue_type_node): Renamed from boolean_type_node.
- (truthvalue_true_node): Renamed from boolean_true_node.
- (truthvalue_false_node): Renamed from boolean_false_node.
- * c-decl.c: Just set truthvalue_* to integer_*.
- * c-*.[ch]: s/boolean/truthvalue/. s/c_bool/boolean/.
-
-2003-07-24 Roger Sayle <roger@eyesopen.com>
-
- * c-decl.c (match_builtin_function_types): New subroutine of
- duplicate_decls to test whether a redeclaration of a builtin
- function is suitably close, i.e. the return type and all of
- the argument types have the same modes as the builtin expects.
- (duplicate_decls): Fuzzy type matching for builtin functions
- moved to match_builtin_function_types.
-
-2003-07-24 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfgloopmanip.c (duplicate_loop_to_header_edge): Update irreducible
- flag correctly.
-
-2003-07-24 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c: Search-and-replace change 'binding level' to
- 'scope' in commentary.
- (struct binding_level): Now struct c_scope.
- (current_binding_level): Now current_scope.
- (free_binding_level): Now scope_freelist.
- (current_function_level): Now current_function_scope.
- (global_binding_level): Now global_scope.
- (make_binding_level): Now make_scope.
- (pop_binding_level): Now pop_scope.
-
-2003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in (libgcc_visibility): Add missing whitespace.
-
-2003-07-24 Richard Henderson <rth@redhat.com>
-
- * libgcc-std.ver (GCC_3.3.1): Export __gcc_personality_sj0,
- __gcc_personality_v0.
-
-2003-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * Makefile.in: Replace pwd by ${PWD_COMMAND}.
-
-2003-07-24 Nathan Sidwell <nathan@codesourcery.com>
-
- * doc/invoke.texi (-fprofile-arcs, -ftest-coverage): Update
- documentation missed from my 2003-07-09 patch.
-
-2003-07-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * aclocal.m4 (_gcc_COMPUTE_GAS_VERSION): Set patch level to 0 if
- it's not provided.
- * configure: Rebuild.
-
-2003-07-24 Steven Bosscher <steven@gcc.gnu.org>
-
- PR c/10602
- * c-typeck.c (type_lists_compatible_p): Do not compare
- arguments if one of them is an error_mark_node
-
-2003-07-24 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_emit_prologue): Save fp regs inline
- if current_function_calls_eh_return.
-
-2003-07-23 Mark Mitchell <mark@codesourcery.com>
-
- * doc/c-tree.texi (OFFSET_TYPE): Update description.
-
-2003-07-23 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/crti.asm (_init, _fini): Increase frame size to 64.
- * config/xtensa/lib1funcs.asm (__mulsi3, __udivsi3, __divsi3,
- __umodsi3, __modsi3): Increase frame size to 32.
-
-2003-07-23 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/host-darwin.c: ANSIfy, update comment for sigaltstack
- prototype.
-
-2003-07-23 Mark Mitchell <mark@codesourcery.com>
-
- * doc/c-tree.texi (Types): Update documentation for OFFSET_TYPE.
-
- PR optimization/10679
- * tree-inline.c (inlinable_function_p): Honor MIN_INLINE_INSNS.
-
-2003-07-23 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/11607 and PR target/11516
- * pa.md (extzv, extv, insv): Revert latter half of last patch.
-
-2003-07-22 Mark Mitchell <mark@codesourcery.com>
-
- * fold-const.c (force_fit_type): Handle OFFSET_TYPE.
- * varasam.c (output_constant): Likewise.
-
-2003-07-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * alias.c: Fix comment formatting.
- * c-common.c: Likewise.
- * c-decl.c: Likewise.
- * c-opts.c: Likewise.
- * combine.c: Likewise.
- * cpplib.c: Likewise.
- * diagnostic.c: Likewise.
- * dojump.c: Likewise.
- * final.c: Likewise.
- * fold-const.c: Likewise.
- * gcc.c: Likewise.
- * gcse.c: Likewise.
- * ggc-page.c: Likewise.
- * jump.c: Likewise.
- * loop.c: Likewise.
- * mips-tfile.c: Likewise.
- * recog.c: Likewise.
- * regclass.c: Likewise.
- * regmove.c: Likewise.
- * tree.c: Likewise.
- * tree.h: Likewise.
-
-2003-07-22 Per Bothner <pbothner@apple.com>
-
- * line-map.c (add_line_map): Handle invalid LEAVE request.
- Fixes PR preprocessor/11361.
-
-2003-07-22 Per Bothner <pbothner@apple.com>
-
- * diagnostic.c.(diagnostic_report_current_module): Update to match
- 2003-06-05 changes to push_srcloc and pop_srcloc.
-
-2003-07-22 Wolfgang Bangerth <bangerth@dealii.org>
-
- * doc/trouble.texi: Better document two-stage name lookup.
-
-2003-07-22 Eric Christopher <echristo@redhat.com>
-
- * config/s390.c (s390_valid_pointer_mode): New.
- (TARGET_VALID_POINTER_MODE): Use.
- (s390_emit_prologue): Add tpf profiling hooks.
- (s390_emit_epilogue): Ditto.
- * config/s390.h (MASK_TPF): New.
- (TARGET_TPF): Use.
- (POINTERS_EXTEND_UNSIGNED): Define.
- * config/s390.md (ptr_extend): New pattern.
-
-2003-07-22 Zack Weinberg <zack@codesourcery.com>
-
- * hashtable.c (approx_sqrt): Make static.
- * hashtable.h: Don't prototype approx_sqrt.
- * line-map.c (init_line_maps): Rename linemap_init.
- (free_line_maps): Rename linemap_free.
- (add_line_map): Rename linemap_add.
- (lookup_line): Rename linemap_lookup.
- (print_containing_files): Rename linemap_print_containing_files.
- * linemap.h: Update to match.
-
- * cpperror.c, cppinit.c, cpplib.c, cppmacro.c: Update calls to
- linemap routines to use new names.
-
-2003-07-16 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-common.c (handle_packed_attribute): Don't pack a struct via a
- typedef. Propagate packedness from a main variant.
-
-2003-07-22 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in (install-common): Add dependency on installdirs.
-
-2003-07-21 Alexandre Oliva <aoliva@redhat.com>
-
- * c-common.c (c_common_type_for_mode): Return integer types for
- pointer modes.
-
-2003-07-22 Geoffrey Keating <geoffk@apple.com>
-
- * c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.
- (finish_decl): Call maybe_apply_pragma_weak here.
- (grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before
- TREE_PUBLIC and TREE_STATIC are decided.
- (start_function): Move call to maybe_apply_pragma_weak. Check that
- DECL_ASSEMBLER_NAME isn't set too early.
-
- * cpplex.c (_cpp_process_line_notes): Mention option name in
- trigraphs warning.
-
-2003-07-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c (if_then_else_cond): Simplify the comparison of
- rtx against -1, 0, and 1.
- * loop.c (check_dbra_loop): Likewise.
- * optabs.c (emit_conditional_move): Likewise.
- (emit_conditional_add): Likewise.
- * config/i386/i386.md (*movsi_or): Likewise.
- (*movdi_or_rex6): Likewise.
-
-2003-07-22 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.
-
-2003-07-21 Neil Booth <neil@daikokuya.co.uk>
-
- * cppfiles.c (open_file_pch): Don't put unused entries in the
- splay tree. Remove dead code.
-
-2003-07-21 Geoffrey Keating <geoffk@apple.com>
-
- * c-common.h (num_in_fnames): Declare.
- (c_static_assembler_name): Move from here...
- * c-tree.h (c_static_assembler_name): ... to here.
- * c-opts.c: Don't include langhooks-def.h.
- (c_static_assembler_name): Move to c-decl.c.
- (num_in_fnames): Make externally visible.
- * c-decl.c: Include langhooks-def.h.
- (c_static_assembler_name): Move from c-opts.c.
- * Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H).
- (c-opts.o): Remove $(LANGHOOKS_DEF_H).
-
- * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME
- when it's not needed.
-
-2003-07-21 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/rs6000.h (machine_function): Add ra_need_lr.
- * config/rs6000/rs6000.c (rs6000_return_addr): Set it.
- (rs6000_emit_prologue): Save FPRs inline if set.
-
-2003-07-21 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/ia64/ia64.md (prefetch): Support predicate.
-
-2003-07-21 Josef Zlomek <zlomekj@suse.cz>
-
- * cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.
- * rtlanal.c (tablejump_p): Use next_active_insn for finding the jump
- table.
-
-2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11536
- * unroll.c (loop_iterations): Do not replace a register holding
- the final value by its equivalent before the loop if it is not
- invariant.
-
-2003-07-21 Dave Fluri <dave.fluri@onlink.net>
-
- * doc/extend.texi: Fixes to spelling, grammar, and diction.
-
-2003-07-21 Ben Elliston <bje@wasabisystems.com>
-
- * doc/invoke.texi (Optimize Options): Replace "it's" with "its".
- (V850 Options): Spelling fixes.
-
-2003-07-20 Lisa M. Goldstein <opus@gnu.org>
-
- * doc/invoke.texi: Fixes to style, grammar and diction.
-
-2003-07-20 Roger Sayle <roger@eyesopen.com>
-
- * builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.
- * system.h (SMALL_STACK): Poison obsolete target macro.
- * doc/tm.texi (SMALL_STACK): Remove target macro documentation.
-
-2003-07-20 Phil Edwards <pme@gcc.gnu.org>
-
- * configure.in: Cache the results of testing for cmp's capabilities.
- * configure: Regenerate.
-
-2003-07-20 Mark Mitchell <mark@codesourcery.com>
-
- PR debug/11279
- * dwarf2out.c (gen_enumeration_type_die): Remember that
- enumerators can be unsigned.
-
-2003-07-19 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (named_labels, shadowed_labels, label_level_chain)
- (push_label_level, pop_label_level): Kill.
- (struct binding_level): Rename level_chain to outer.
- Add outer_function field. Change parm_flag, function_body,
- keep, keep_if_subblocks to 1-bit bitfields of type bool.
- (current_function_level): New variable.
- (keep_next_level_flag, keep_next_if_subblocks): Change type to bool.
- (keep_next_level, declare_parm_level, warn_if_shadowing):
- Update to match.
- (struct language_function): Kill named_labels, shadowed_labels fields.
- (c_init_decl_processing, start_function, c_push__function_context)
- (c_pop_function_context): No need to muck with named_labels nor
- shadowed_labels.
-
- (make_binding_level): No need to clear the structure here.
- (pop_binding_level): Always operate on current_binding_level.
- Update current_function_level if necessary.
- (pushlevel): Don't clear named_labels. Update current_function_level
- if necessary. Use "true" and "false" where appropriate.
- (poplevel): Diagnose labels defined but not used, or vice
- versa, and clear out label-meanings leaving scope, while
- walking down the decls list, for all binding levels.
- Handle LABEL_DECLs appearing in the shadowed list.
- pop_binding_level takes no arguments.
- (pushdecl_function_level): Use current_function_level.
-
- (make_label, bind_label): New static functions.
- (declare_label): New exported function.
- (lookup_label, define_label): Rewritten for new data structure.
- (shadow_label): Kill.
-
- * c-tree.h: Prototype declare_label; don't prototype
- push_label_level, pop_label_level, nor shadow_label.
- * c-parse.in: Remove all calls to push_label_level and
- pop_label_level. Use declare_label for __label__ decls.
-
- * doc/extend.texi: Clarify that __label__ can be used to
- declare labels with local scope in any nested block, not
- just statement expressions. Cross-reference nested functions
- section from local labels section.
-
-2003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * sched-rgn.c (find_rgns): Initialize current_edge correctly.
-
-2003-07-19 Phil Edwards <pme@gcc.gnu.org>
-
- * doc/makefile.texi (restrap, profiledbootstrap): Document targets.
-
-2003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c
- fixinc/server.c objc/objc-act.c: Remove unnecessary casts.
-
-2003-07-19 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (legitimize_pic_address): Access local symbols
- relative to the GOT instead of relative to the literal pool base.
- (s390_output_symbolic_const): Handle new GOT-relative accesses.
- * config/s390/s390.md ("call"): Access local functions and PLT stubs
- relative to the GOT instead of relative to the literal pool base.
- ("call_value"): Likewise.
- ("call_value_tls"): Likewise.
-
- * config/s390/s390.c (s390_chunkify_start): Remove pool anchor
- reloading. Support LTREL_BASE / LTREL_OFFSET construct.
- (s390_chunkify_finish): Likewise.
- (s390_chunkify_cancel): Likewise.
- (s390_reorg): Adapt caller.
- (find_base_register_in_addr,
- find_base_register_ref, replace_base_register_ref): Delete.
- (find_ltrel_base, replace_ltrel_base): New functions.
- (find_constant_pool_ref): Handle LTREL_BASE unspecs.
- (s390_decompose_address): Handle LTREL_BASE unspecs. Optimize
- base vs. index register usage.
- (struct constant_pool): Remove 'anchor'.
- (s390_add_anchor): Delete.
- (s390_dump_pool): Remove anchor handling.
- * config/s390/s390.md ("reload_anchor"): Remove.
-
- * config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET.
- (s390_load_got): New function. Use LTREL_BASE/OFFSET.
- (s390_emit_prologue): Use it.
- * config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup",
- "builtin_setjmp_receiver"): Cleanup. Use s390_load_got. Do not
- hard-code register 14.
- * config/s390/s390-protos.h (s390_load_got): Declare.
-
- * config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable):
- Support TImode constants.
- * config/s390/s390.md ("consttable_ti"): New.
- ("consttable_si", "consttable_di"): Handle TLS symbols correctly.
-
- * config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE,
- UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF,
- UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END,
- UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI,
- UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL):
- New symbolic constants.
- ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di",
- "consttable_sf", "consttable_df", "pool_start_31", "pool_end_31",
- "pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64",
- "pool", "literal_pool_31", "literal_pool_64"): Cleanup. Use
- symbolic UNSPEC values.
- * config/s390/s390.c (larl_operand, s390_short_displacement,
- bras_sym_operand, s390_cannot_force_const_mem,
- s390_delegitimize_address, s390_decompose_address,
- legitimize_pic_address, s390_output_symbolic_const,
- s390_function_profiler): Use symbolic UNSPEC values.
-
-2003-07-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c
- c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in
- c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c
- collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c
- cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c
- cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c
- dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c
- fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c
- gcse.c genattr.c genattrtab.c genautomata.c genconditions.c
- genemit.c genextract.c genoutput.c genrecog.c gensupport.c
- ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c
- integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c
- loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c
- postreload.c prefix.c print-tree.c protoize.c ra-build.c
- ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c
- regmove.c regrename.c reload.c reload1.c reorg.c resource.c
- sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c
- simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c
- tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c
- varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary
- casts.
-
-2003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.
- * toplev.h (warning): Remove attribute.
-
-2003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.
- (pop_label_level): Likewise.
- (duplicate_decls): Likewise.
- (implicitly_declare): Likewise.
- (shadow_label): Likewise.
- (start_decl): Likewise.
- (finish_decl): Likewise.
- (grokdeclarator): Likewise.
- (get_parm_info): Likewise.
- (detect_field_duplicates): Likewise.
- (finish_struct): Likewise.
- (start_function): Likewise.
- (store_parm_decls): Likewise.
- (finish_function): Likewise.
- (c_expand_body_1): Likewise.
- (check_for_loop_decls): Likewise.
- (merge_translation_unit_decls): Likewise.
-
-2003-07-19 Neil Booth <neil@daikokuya.co.uk>
-
- * common.opt: Document --param.
- * opts.c (columns, undocumented_msg): New.
- (print_help): Get number of columns from environment. Print
- --param help. Tweak newline handling.
- (print_param_help): New.
- (print_filtered_help): Better handling of duplicates. Complain
- about undocumented switches.
- (print_switch): New.
- (wrap_help): Improve wrapping, use COLUMNS.
- * opts.sh: Ignore comments in records.
- * params.def: Fix typos and remove trailing periods.
- * toplev.c (display_help): Don't dump --param help.
- * doc/sourcebuild.texi: Update.
-
-2003-07-18 Richard Henderson <rth@redhat.com>
-
- PR target/11556
- * optabs.c (prepare_operand): Fail gracefully instead of abort
- if the predicate doesn't satisfy.
- (gen_cond_trap): Allow prepare_operand to fail.
-
-2003-07-19 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-common.c: Don't undefine GCC_DIAG_STYLE.
- (fname_decl): Don't use xxx_with_decl.
- (c_add_case_label): Likewise.
- (handle_section_attribute): Likewise.
- (handle_alias_attribute): Likewise.
- (handle_no_instrument_function_attribute): Likewise.
- (handle_no_limit_stack_attribute): Likewise.
- * c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs.
- * c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier.
-
-2003-07-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (ifcvt.o): Add cfgloop.h.
- * basic-block.h (EDGE_LOOP_EXIT): New flag.
- * cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly.
- * ifcvt.c: Include cfgloop.h.
- (mark_loop_exit_edges): New static function.
- (if_convert): Call it.
- (find_if_header): Ignore branches out of loops.
-
-2003-07-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c (simplify_comparison): Don't share rtx when converting
- (ne (and (not X) 1) 0) to (eq (and X 1) 0).
-
-2003-07-18 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define.
- (AGGREGATES_PAD_UPWARD_ALWAYS): Define.
- (MUST_PASS_IN_STACK): Define.
- (BLOCK_REG_PADDING): Define.
-
-2003-07-18 Richard Henderson <rth@redhat.com>
-
- * cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p
- to skip the addr_vec.
-
-2003-07-18 Alexandre Oliva <aoliva@redhat.com>
-
- * combine.c (combinable_i3pat): Don't forbid occurrences of
- i2dest or i1dest in inner_dest if inner_dest is a mem.
-
-2003-07-18 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_remove_node): Clear the hash table slot.
-
-2003-07-17 Jakub Jelinek <jakub@redhat.com>
-
- PR target/11087
- * loop.c (basic_induction_var): Check if convert_modes emitted any
- instructions. Remove them and return 0 if so.
-
-2003-07-18 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11083
- * toplev.c (rest_of_handle_addresof): Rename into
- rest_of_handle_addressof. Delete unreachable blocks
- if dead edges were purged after the addressof pass.
-
-2003-07-18 Neil Booth <neil@daikokuya.co.uk>
-
- * Makefile.in, configure, configure.in: Remove handling of
- lang-options.h and options_.h.
- * toplev.c (struct lang_opt, documented_lang_options): Remove.
- (display_help): Don't use documented_lang_options.
-
-2003-07-17 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (pushdecl_function_level): Make static, return nothing.
- (kept_level_p): Fold into poplevel.
- (undeclared_variable): Moved here from c-typeck.c. Export.
- * c-tree.h (KEEP_YES, KEEP_NO, KEEP_MAYBE): New #defines.
- (undeclared_variable): Prototype here. Don't prototype
- kept_level_p nor pushdecl_function_level.
- * c-parse.in: Change first argument to poplevel from
- "kept_level_p()" to "KEEP_MAYBE".
- * c-typeck.c (undeclared_variable): Moved to c-decl.c.
-
-2003-07-17 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_rtx): Use simplify_gen_binary to swap
- commutative operands instead of modifying the RTL in-place.
-
-2003-07-17 Mark Mitchell <mark@codesourcery.com>
-
- PR optimization/11557
- * calls.c (flags_from_decl_or_type): Do not set ECF_LIBCALL_BLOCK
- unless we know which function is being called.
-
-2003-07-17 Roger Sayle <roger@eyesopen.com>
-
- * cse.c (fold_rtx): Use swap_commutative_operands_p to determine
- whether to reorder the operands of a commutative binary operator.
-
-2003-07-17 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (const_binop): Avoid performing the FP operation at
- compile-time, if either operand is NaN and we honor signaling NaNs,
- or if we're dividing by zero and either flag_trapping_math is set
- or the desired mode doesn't support infinities.
- (fold_initializer): New function to fold an expression ignoring any
- potential run-time exceptions or traps.
- * tree.h (fold_initializer): Prototype here.
- * c-typeck.c (build_binary_op): Move to the end of the file so
- that intializer_stack is in scope. If constructing an initializer,
- i.e. when initializer_stack is not NULL, use fold_initializer to
- fold expressions.
- * simplify-rtx.c (simplify_binary_operation): Likewise, avoid
- performing FP operations at compile-time, if they would raise an
- exception at run-time.
-
-2003-07-17 Geoffrey Keating <geoffk@apple.com>
-
- PR 11498
- * Makefile.in (c-opts.o): Add $(LANGHOOKS_DEF_H).
- (langhooks.o): Add $(GGC_H), gt-langhooks.h.
- (GTFILES): Add langhooks.c.
- (gt-langhooks.h): New.
- * c-common.h (c_static_assembler_name): Prototype.
- * c-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
- * objc/objc-lang.c (LANG_HOOKS_SET_DECL_ASSEMBLER_NAME): Define.
- * c-opts.c: Include langhooks-def.h.
- (c_static_assembler_name): New.
- * langhooks.c: Include ggc.h. Include gt-langhooks.h.
- (var_labelno): New.
- (lhd_set_decl_assembler_name): Give static objects with context
- unique names.
- * varasm.c (var_labelno): Delete.
- (make_decl_rtl): Don't change the assembler name once it's set.
-
- * c-opts.c (this_input_filename): New.
- (finish_options): Take new parameter, name of file being compiled.
- Update callers. Set this_input_filename.
- (push_command_line_include): Use this_input_filename not
- main_input_filename.
-
-2003-07-17 Neil Booth <neil@daikokuya.co.uk>
-
- * Makefile.in: Depend .pot generation on options.c.
- * po/exgettext: Add an extra_files variable containing additional
- files to scan.
-
-2003-07-17 Zack Weinberg <zack@codesourcery.com>
-
- * objc/objc-lang.c: Override LANG_HOOKS_WRITE_GLOBALS to
- c_write_global_declarations.
-
- * c-decl.c: Fix typos in several comments. Remove all
- #if 0 blocks; reindent as needed. Remove unused argument
- to declare_parm_level; all callers changed.
- * c-parse.in: Update calls to declare_parm_level. Avoid
- issuing a double warning in some circumstances.
- * c-typeck.c: Update calls to declare_parm_level.
- * c-tree.h: Update prototype of declare_parm_level.
-
- * c-pragma.c (apply_pragma_weak): Don't complain about a
- redundant #pragma weak.
-
- * objc/objc-act.c (forward_declare_categories,
- build_selector_reference_decl, build_class_reference_decl,
- build_objc_string_decl, synth_forward_declarations,
- build_protocol_reference): Set TREE_PUBLIC on synthetic
- forward decl to 0, consistent with eventual definition.
- Correct comments to match.
-
- * fixinc/inclhack.def (solaris_mutex_init_2): Escape braces
- in regexp that don't form a range expression.
- * fixinc/fixincl.def: Regenerate.
-
-2003-07-17 Richard Henderson <rth@redhat.com>
-
- PR target/10907
- * config/ia64/ia64.c (ia64_epilogue_uses): GP is live at end
- even with !TARGET_CONST_GP.
- (ia64_function_ok_for_sibcall): Reject non-local functions.
-
-2003-07-17 Steven Bosscher <steven@gcc.gnu.org>
-
- * c-common.c (c_estimate_num_insns_1): Don't handle
- METHOD_CALL_EXPR.
- * expr.c (safe_from_p): Likewise.
- * gengtype.c (adjust_field_tree_exp): Likewise.
- * stmt.c (warn_if_unused_value): Likewise
- * tree.c (first_rtl_op): Likewise.
- * tree.def: Don't define METHOD_CALL_EXPR.
- * java/lang.c (java_estimate_num_insns_1): Don't handle
- METHOD_CALL_EXPR.
-
-2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR other/11466
- * doc/invoke.texi (SPARC Options): Document "-mlittle-endian"
- and its restrictions for the SPARC64 port.
- Move the entry of "-mimpure-text" before that of "-mv8".
-
-2003-07-17 Eric Botcazou <ebotcazou@libertysurf.fr>
- Phil Edwards <phil@jaj.com>
-
- * doc/install.texi (*-*-solaris2*): Document the step-by-step
- procedure to bootstrap and install.
- Document the preference for the legacy Sun tools in /usr/bin
- over the POSIX tools in /usr/xpg4/bin for the build process.
-
-2003-07-17 Neil Booth <neil@daikokuya.co.uk>
-
- * c.opt: Document Uncodumented; use it. Document ObjC options.
- * opts.c (print_filtered_help): Skip undocumented switches.
- * opts.h (CL_UNDOCUMENTED): New.
- * opts.sh: Handle Undocumented.
- * toplev.c (documented_lang_options): Prevent its becoming empty.
-objc:
- * lang-options.h: Remove.
-
-2003-07-16 Ulrich Weigand <uweigand@de.ibm.com>
-
- * loop.c (check_ext_dependent_givs): Pass const struct loop *
- instead of struct loop_info * as argument. Accept BIVs with
- increment +/- 1 provided there is a friendly exit test against
- a loop-invariant value.
- (strength_reduce): Adapt call to check_ext_dependent_givs.
-
-2003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
- Con Bradley <con.bradley@superh.com>
-
- * sh-protos.h (sh_get_pr_initial_val): Declare.
- * sh.c (regno_reg_class): Make its elements type enum reg_class.
- (output_stack_adjust): Remove emit_fn argument. Add epilogue_p
- and live_regs_mask arguments. Changed all callers.
- (save_schedule_s): New structure.
- (save_schedule): New typedef.
- (scavenge_reg, sh5_schedule_saves, sh5_schedule_saves): New functions.
- (calc_live_regs): For TARGET_SHMEDIA, use leaf_function_p.
- In interrupts handlers, also save registers that are usually
- partially saved, and make sure there is at least one general purpose
- register saved if a target register needs saving.
- Add casts in comparisons to avoid warnings.
- (sh_media_register_for_return): return -1 for interrupt handlers.
- (MAX_SAVED_REGS, MAX_TEMPS): New defines.
- (sh_expand_prologue): Use sh5_schedule_saves. Check that any temp
- registers used are available.
- Set RTX_FRAME_RELATED_P where appropriate.
- Add an REG_FRAME_RELATED_EXPR for r0 + offset addressing.
- (sh_expand_epilogue, sh_set_return_address): Use sh5_schedule_saves.
- (initial_elimination_offset): Likewise.
- * sh.h (DWARF_CIE_DATA_ALIGNMENT): Set to -4.
- (LOCAL_ALIGNMENT, GENERAL_REGISTER_P): Add casts to avoid warnings.
- (FP_REGISTER_P): Add casts to fix broken handling of unsigned REGNO.
- (XD_REGISTER_P, TARGET_REGISTER_P): Likewise.
- (HARD_REGNO_CALL_PART_CLOBBERED): Also yield nonzero for r15,
- and for target registers.
- (RETURN_IN_MEMORY): Add parentheses to avoid warnings.
- (regno_reg_class): Make its elements type enum reg_class.
- (CONSTRAINT_LEN): Don't use isdigit.
- (FUNCTION_ARG_REGNO_P): Add casts to avoid warnings.
- (FUNCTION_ARG): Add parentheses to avoid warnings.
- (RETURN_ADDR_RTX): Use sh_get_pr_initial_val.
- (RETURN_ADDR_OFFSET): Define to -1 for TARGET_SH5.
- (SH_DBX_REGISTER_NUMBER): Add casts to avoid warnings.
- (EH_RETURN_DATA_REGNO): Use unsigned constants to avoid warnings.
- * sh.md (xordi3+1): Remove unused variable regno.
- (return_media): Check that tr0 is available before using it.
-
-2003-07-16 Neil Booth <neil@daikokuya.co.uk>
-
- * c.opt: Document more options.
-
-2003-07-16 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (subst): Also handle (subreg (const_double ...)) case
- if created by a substitution, by using the original inner mode.
-
-2003-07-16 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_replace_rtx): Convert constant comparisons
- to MODE_FLOAT constants if FLOAT_STORE_FLAG_VALUE is defined.
- (simplify_rtx): Likewise. Simplify (lo_sum (high X) X) as X.
-
-2003-07-16 Andrew Pinski <pinskia@physics.uc.edu>
-
- * doc/install.texi (--without-headers): New.
-
- Partial Fix PR/10129
- * config/darwin.c (machopic_function_base_name): Only Return "<pic base>".
- (machopic_output_function_base_name): New; print the true pic label.
- (machopic_classify_ident): Pic Base is always a defined data.
- * config/darwin.h (ASM_OUTPUT_LABELREF): Support the pic base label.
- * config/darwin-proto.h (machopic_output_function_base_name): Prototype.
-
- * gcse.c (gcse_constant_p): COMPARE of the same registers is a constant
- if they are not floating point registers.
-
- PR c/10962
- * ggc.h: Add header guards.
- * c-decl.c (finish_struct): Sort fields if
- number greater than 15 and there are no
- anonymous structs/unions.
- * c-common.h: Include ggc.h.
- (sorted_fields_type): New struct.
- (field_decl_cmp): New prototype.
- (resort_sorted_fields): New prototype.
- (DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro.
- * c-tree.h: (lang_type): Use pointer to sorted_fields_type
- as s, removing other fields.
- * c-typeck.c (lookup_field): Use s in lang_type.
- These were mostly moved from cp/class.c:
- * c-common.c (field_decl_cmp): New static function.
- (field_decl_cmp): New function.
- (resort_sorted_fields): New function.
-
-2003-07-16 Geoffrey Keating <geoffk@apple.com>
-
- * config/darwin.c (machopic_select_section): Use decl_readonly_section
- to do most of the work.
-
-2003-07-16 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/mmix/mmix-protos.h: Convert prototypes to ISO C90.
- * config/mmix/mmix.c: Convert functions to ISO C90.
- (mmix_eh_return_handler_rtx, mmix_output_shifted_value): Tweak
- formatting.
- (mmix_get_hard_reg_initial_val): Tweak section head comment.
-
-2003-07-16 J"orn Rennecke <joern.rennecke@superh.com>
-
- * c-pragma.h (HANDLE_PRAGMA_WEAK): Always define to SUPPORTS_WEAK.
-
-2003-07-16 Jakub Jelinek <jakub@redhat.com>
-
- * unwind-dw2.c (MD_FROB_UPDATE_CONTEXT): Define.
- (uw_update_context_1): Use it.
- * config/rs6000/rs6000.c (insn_after_throw): Remove.
- (rs6000_aix_emit_builtin_unwind_init): Save $r2 to its location
- in parent frame if _Unwind_* called directly instead of through
- .plt.
- (rs6000_emit_eh_toc_restore): Remove.
- (rs6000_emit_prologue): Update stack pointer before doing any saving
- if current_function_calls_eh_return. Generate unwind info for $r2.
- (rs6000_emit_epilogue): Restore stack pointer after doing all
- restoring if current_function_calls_eh_return. Restore $r2.
- * config/rs6000/rs6000-protos.h (rs6000_emit_eh_toc_restore): Remove.
- * config/rs6000/rs6000.md (eh_return): Remove call to
- rs6000_emit_eh_toc_restore.
- * config/rs6000/linux64.h (MD_FROB_UPDATE_CONTEXT): Define.
- * config/rs6000/aix.h (MD_FROB_UPDATE_CONTEXT): Define.
-
-2003-07-15 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (emit_block_move): Don't move anything if size is const 0.
- (clear_storage): Test against const0_rtx instead of comparing INTVAL
- against 0.
-
-2003-07-15 David S. Miller <davem@redhat.com>
-
- * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Only
- emit nop if the last real insn is CALL_INSN.
-
-2003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/xm-mingw32.h (HOST_BIT_BUCKET): Define
- as "nul".
- * config/i386/xm-mingw32.h: Change GNU CC to GCC.
-
-2003-07-16 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/winnt.c (associated_type): Artificial methods are not
- affected by the import/export status of their class unless they are
- COMDAT.
- (i386_pe_dllimport_p): Do not mark artificial methods as dllimport.
-
- * config/i386/winnt.c: Fix GCC copyright comment.
-
-2003-07-16 Gabriel Dos Reis <gcc@integrable-solutions.net>
-
- PR c++/11531
- * diagnostic.c (diagnostic_report_diagnostic): Don't ICE if we're
- not recursing on hard error.
- (diagnostic_for_decl): Likewise.
- * diagnostic.def: Rearrange.
-
-2003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
-
- * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
- If DWARF_FRAME_RETURN_COLUMN doesn't have a register mode, use Pmode.
-
-2003-07-15 J"orn Rennecke <joern.rennecke@superh.com>
- Richard Henderson <rth@redhat.com>
-
- * unwind-dw2.c (_Unwind_GetGR): Use dwarf_reg_size_table
- to decide if to access a _Unwind_Ptr or a _Unwind_Word.
- (_Unwind_SetGR): Likewise.
- (_Unwind_GetPtr, _Unwind_SetSpColumn): New functions.
- (Unwind_SpTmp): New typedef.
- (uw_update_context_1): Use _Unwind_SetSpColumn and _Unwind_GetPtr.
- (uw_update_context): Use _Unwind_GetPtr.
- (init_dwarf_reg_size_table): Move above uw_init_context_1.
- (uw_init_context_1): Initialize dwarf_reg_size_table if necessary.
- Use _Unwind_SetSpColumn.
- (uw_install_context_1): Don't initialize dwarf_reg_size_table.
- Use _Unwind_GetPtr.
-
-2003-07-15 Neil Booth <neil@daikokuya.co.uk>
-
- * c.opt: Document more options.
- * toplev.c (documented_lang_options): Remove all local help strings.
-
-2003-07-15 Mark Mitchell <mark@codesourcery.com>
-
- PR debug/11473
- * dbxout.c (dbxout_type): Use TYPE_SIZE to determine the sizes of
- base classes.
-
-2003-07-15 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/10795
- * config/i386/i386.c (ix86_expand_carry_flag_compare): Don't
- swap comparison operands if doing so would generate an
- unrecognizable insn.
-
-2003-07-15 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11320
- * sched-int.h (struct deps) [reg_conditional_sets]: New field.
- (struct sched_info) [compute_jump_reg_dependencies]: New prototype.
- * sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
- current_sched_info->compute_jump_reg_dependencies. Record which
- registers are used and which registers are set by the jump.
- Clear deps->reg_conditional_sets after a barrier.
- Set deps->reg_conditional_sets if the insn is a COND_EXEC.
- Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
- (init_deps): Initialize reg_conditional_sets.
- (free_deps): Clear reg_conditional_sets.
- * sched-ebb.c (compute_jump_reg_dependencies): New prototype.
- Mark registers live on entry of the fallthrough block and conditionally
- set as set by the jump. Mark registers live on entry of non-fallthrough
- blocks as used by the jump.
- * sched-rgn.c (compute_jump_reg_dependencies): New prototype.
- Mark new parameters as unused.
-
-2003-07-15 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Resync MIPS -march documentation.
-
-2003-07-15 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (PROCESSOR_R9000): New processor_type.
- (TARGET_MIPS9000, TUNE_MIPS9000): New macros.
- (GENERATE_MULT3_SI): True for TARGET_MIPS9000.
- * config/mips/mips.c (mips_cpu_info_table): Add rm9000 entry.
- (mips_rtx_costs): Adjust integer multiplication costs for the rm9000.
- (mips_issue_rate): Handle PROCESSOR_R9000.
- (mips_use_dfa_pipeline_interface): Likewise.
- * config/mips/9000.md: New file.
- * config/mips/mips.md: Include it.
- (define_attr cpu): Add r9000.
- (mulsi3_mult3): Use "mul" for rm9000 code.
-
-2003-07-15 Stan Cox <scox@redhat.com>
-
- * config/mips/mips.h (PROCESSOR_R7000): New processor_type.
- (TARGET_MIPS7000, TUNE_MIPS7000): New macros.
- (GENERATE_MULT3_SI): True for TARGET_MIPS7000.
- * config/mips/mips.c (mips_cpu_info_table): Add rm7000 entry.
- (mips_rtx_costs): Adjust integer multiplication costs for the rm7000.
- (mips_issue_rate): Handle PROCESSOR_R7000.
- (mips_use_dfa_pipeline_interface): Likewise.
- * config/mips/7000.md: New file.
- * config/mips/mips.md: Include it.
- (define_attr cpu): Add r7000.
- (mulsi3_mult3): Use "mul" for rm7000 code.
-
-2003-07-15 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (define_attr type): Add condmove. Use it for
- the conditional move patterns.
- * config/mips/5400.md (ir_vr54_move): Rename to ir_vr54_condmove.
- Check for condmove type.
- (ir_vr54_arith): Add move type.
- * config/mips/5500.md (ir_vr55_move, ir_vr55_arith): Likewise.
- * config/mips/sr71k.md (ir_sr70_move, ir_sr70_arith): Likewise.
-
-2003-07-15 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (print_help): Remove.
- (c_common_handle_option): Don't handle --help.
- * c.opt: Document some options.
- (--help): Remove.
- * opts.c (print_filtered_help): New.
- (print_help): Use it.
-
-2003-07-14 Geoffrey Keating <geoffk@apple.com>
-
- * c-common.c (c_common_type_for_mode): Handle V4DFmode.
- * tree.c: (build_common_tree_nodes_2): Likewise.
- * tree.h (enum tree_index): Add TI_V4DF_TYPE.
- (V4DF_type_node): New.
-
- * c-opts.c (push_command_line_include): Don't free deferred_opts,
- we'll need it.
- (finish_options): Reset init_cursor.
-
-2003-07-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * expr.c (expand_assignment): Remove an unused argument
- SUGGEST_REG.
- * expr.h: Update the prototype.
- * function.c: Update the callers.
- * stmt.c: Likewise.
-
-2003-07-14 Mark Mitchell <mark@codesourcery.com>
-
- PR debug/11098
- * integrate.c (copy_decl_for_inlining): Do not mark copied decls
- as DECL_ABSTRACT.
-
-2003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (avoid_bool_define, avoid_bool_type): Bypass
- with __cplusplus, not "we must use the C++ compiler's type"
- * fixinc/inclhack.def (void_null): Note that Interix needs this.
- * fixinc/fixincl.x: Regenerate.
-
-2003-07-14 Geoffrey Keating <geoffk@apple.com>
-
- * unwind-dw2-fde-darwin.c (live_image_destructor): Get seen_objects
- and unseen_objects from the global data before calling
- __deregister_frame_info_bases.
- (examine_objects): Insert objects into the seen_objects list,
- not unseen_objects.
- (_Unwind_Find_FDE): Always unlock the global object lists, even if
- we couldn't allocate a data structure to put in it.
-
- * objc/objc-act.h (CLASS_SUPER_NAME): Add a little typechecking.
- (TYPE_PROTOCOL_LIST): Share use of type.context with C frontend.
- (SET_TYPE_PROTOCOL_LIST): New.
- * objc/objc-act.c (get_static_reference): Use SET_TYPE_PROTOCOL_LIST.
- (get_object_reference): Likewise.
-
-2003-07-14 Jan Hubicka <jh@suse.cz>
-
- * cfglayout.c (locator_file): Break out from ....
- (insn_file): ... here.
- (locator_line): Break out from ....
- (insn_line): ... here.
- * rtl.h (locator_file, locator_line): Declare.
- (final_start_function): Set proper line/file info.
-
-2003-07-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-pretty-print.c (pp_c_unary_expression): A CONVERT_EXPR is
- handled by pp_c_cast_expression.
-
-2003-07-14 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_expand_prologue): Use a single insn to
- allocate 32768 bytes of stack. Use addition rather than subtraction
- when a single insn is enough.
- * config/mips/mips.md: Remove insns and splitters for subtracting
- constants.
- (subsi3): Only accept register operands.
- (subsi3_internal): Likewise. Use for TARGET_MIPS16 as well.
- (subdi3_internal_3, subsi3_internal_2): Likewise.
- (casesi): Use expand_binop to subtract the lower bound.
-
-2003-07-14 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_in_small_data_p): Don't handle
- TARGET_MIPS16 specially.
-
-2003-07-14 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Use
- mips_output_aligned_bss.
- * config/mips/linux.h: Likewise.
- * config/mips/mips-protos.h (mips_output_aligned_bss): Declare.
- * config/mips/mips.c (mips_output_aligned_bss): New function.
-
- * config/mips/elf.h (DBX_DEBUGGING_INFO): Delete.
- * config/mips/elf64.h: Likewise.
-
- * config/mips/elf.h (ASM_DECLARE_OBJECT_NAME): Use
- mips_declare_object_name.
- (ASM_FINISH_DECLARE_OBJECT): Likewise mips_finish_declare_object.
- * config/mips/elf64.h: As for elf.h.
- * config/mips/iris6.h: Likewise.
- * config/mips/linux.h (ASM_DECLARE_OBJECT_NAME): As for elf.h.
- * config/mips/mips.h (ASM_DECLARE_OBJECT_NAME): Remove unnecessary
- do...while (0) block.
- * config/mips/mips-protos.h (mips_declare_object_name): Declare.
- (mips_finish_declare_object): Declare.
- * config/mips/mips.c (mips_declare_object_name): New function.
- (mips_finish_declare_object): New function.
-
- * config/mips/elf.h (SBSS_SECTION_ASM_OP): Delete.
- * config/mips/linux.h: Likewise.
-
- * config/mips/mips.c (inside_function): Delete.
- (file_in_function_warning, ignore_line_number): Delete.
- (mips_output_filename): Don't warn about changing filenames within
- a function.
- (mips_output_lineno): Update accordingly.
- (mips_output_function_prologue): Don't reset the deleted variables.
- * config/mips/mips.h (inside_function): Delete.
- (file_in_function_warning, ignore_line_number): Delete.
-
- * config/mips/elf.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Remove undefs.
- * config/mips/elf64.h: Likewise.
- * config/mips/openbsd.h: Likewise.
- * config/mips/iris5.h (OBJECT_FORMAT_COFF): Remove undefs.
- * config/mips/linux.h: Likewise.
- * config/mips/mips.h (OBJECT_FORMAT_COFF, EXTENDED_COFF): Delete.
- (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB, MIPS_UNMARK_STAB): Delete.
-
- * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Add mips/sdb.h
- to the list of include files when using gas.
- (mips*el-*-openbsd*, mips*-*-openbsd*): Add mips/sdb.h unconditionally.
- * config/mips/elf.h: Remove #undef SDB_DEBUGGING_INFO.
- * config/mips/elf64.h: Likewise.
- * config/mips/iris5.h: Likewise.
- * config/mips/linux.h: Likewise.
- * config/mips/iris5gas.h (SDB_DEBUGGING_INFO): Remove definition.
- * config/mips/mips.h (PREFERRED_DEBUGGING_TYPE): Likewise.
- (SDB_DEBUGGING_INFO, sdb*, SDB_ALLOW_*, PUT_SDB*): Move to...
- * config/mips/sdb.h: ...this new file.
-
-2003-07-14 Douglas Rupp <rupp@gnat.com>
-
- * fixinc/server.c (server_setup): Don't use non-POSIX NULL first
- argument to getcwd; use fixed buffer instead.
-
-2003-07-14 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/mkfixinc.sh: Treat OpenBSD normally.
- * fixinc/fixinc.wrap: Delete.
-
-2003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
-
- * ggc-page.c (extra_order_size_table): Insns have 9 slots. Regs
- don't have 2.
-
-2003-07-14 Dan Nicolaescu <dann@ics.uci.edu>
-
- * ggc-page.c (struct globals): Add new fields to keep track of the
- total allocated memory and overhead.
- (ggc_print_statistics): Print them.
- (ggc_alloc): Keep track of the total allocated memory and the
- overhead.
-
- * tree.c (dump_tree_statistics): Increase spacing.
- (enum tree_node_kind): Move to ...
- * tree.h (enum tree_node_kind): ... here.
- (tree_node_counts, tree_node_sizes): Declare.
-
-2003-07-14 James A. Morrison <ja2morri@student.math.uwaterloo.ca>
-
- * doc/include/texinfo.tex: Upgrade to texinfo 4.6.
-
-2003-07-14 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- PR optimization/11440
- * gcse.c (try_replace_reg): Don't attach notes to ZERO_EXTRACT or
- SIGN_EXTRACT SETs.
-
-2003-07-14 Alan Modra <amodra@bigpond.net.au>
-
- * doc/tm.texi (BLOCK_REG_PADDING): Describe.
- * expr.h (struct locate_and_pad_arg_data): Add where_pad.
- (emit_group_load, emit_group_store): Adjust declarations.
- Remove most occurrences of #ifdef TREE_CODE.
- * expr.c (emit_group_load): Add "type" param, and use
- BLOCK_REG_PADDING to determine need for a shift. Optimize non-
- aligned accesses if !SLOW_UNALIGNED_ACCESS.
- (emit_group_store): Likewise.
- (emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
- emit_group_load and emit_group_store calls.
- * calls.c (store_unaligned_arguments_into_pseudos): Tidy. Use
- BLOCK_REG_PADDING to determine whether we need endian_correction.
- (load_register_parameters): Localize vars. Handle shifting of
- small values to the correct end of regs. Adjust emit_group_load
- call.
- (expand_call, emit_library_call_value_1): Adjust emit_group_load
- and emit_group_store calls.
- * function.c (assign_parms): Set mem alignment for stack slots.
- Adjust emit_group_store call. Store values at the "wrong" end
- of regs to the stack. Use BLOCK_REG_PADDING.
- (locate_and_pad_parm): Save where_pad.
- (expand_function_end): Adjust emit_group_load call.
- * stmt.c (expand_value_return): Adjust emit_group_load call.
- * Makefile.in (calls.o): Depend on $(OPTABS_H).
- * config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
- (AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
- (MUST_PASS_IN_STACK): Define.
- (BLOCK_REG_PADDING): Define.
- * config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
- (PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
- * config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
- (function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
- Act on AGGREGATES_PAD_UPWARD_ALWAYS.
-
-2003-07-13 Aaron W. LaFramboise <awlaframboise@aol.com>
-
- * config/i386/gthr-win32.c (__GTHREAD_HIDE_WIN32API): Define to 1.
-
-2003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case COMPONENT_REF): If reg, copy OP0 to MEM
- both if OFFSET specified and if result BLKmode for ARRAY_RANGE_REF.
-
-2003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
-
- PR other/11123
- * toplev.c: Don't cut off option names.
-
-2003-07-13 Andreas Jaeger <aj@suse.de>
-
- * c-decl.c (link_hash_hash): Avoid warning about casting pointer
- to integer of different size.
-
-2003-07-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c (simplify_comparison): Convert (ne (and (not X) 1) 0)
- to (eq (and X 1) 0).
-
-2003-07-13 Andreas Jaeger <aj@suse.de>
-
- * config.gcc: Add pmmintrin.h for x86_64-*-*.
-
-2003-07-13 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (LIBCPP_DEPS): Remove coretypes.h and $(TM_H).
- (hashtable.o, line-map.o, mkdeps.o): Likewise, from dependency
- list. Move these all together down by cpplib.
-
- * cpplib.h: Don't refer to MAX_WCHAR_TYPE_SIZE when determining
- definition of CPPCHAR_SIGNED_T.
-
- * cppcharset.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c, cppinit.c
- * cpplex.c, cpplib.c, cppmacro.c, cpppch.c, cpptrad.c, hashtable.c
- * line-map.c, mkdeps.c: Don't include coretypes.h or tm.h.
-
- * cpphash.c (_cpp_init_hashtable): Don't use gcc_obstack_init.
- * cppinit.c (cpp_create_reader): Likewise.
-
- * cpphash.h (scan_out_logical_line): Rename _cpp_scan_out_logical_line.
- * cpptrad.c: Likewise. All callers changed.
- * cpplib.c: All callers changed.
- * c-ppoutput.c: Replace 'uchar' with 'unsigned char' throughout.
- * hashtable.h: Define GTY(x) to nothing here too.
-
-2003-07-13 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * stor-layout.c (compute_record_mode): Remove very obsolete test
- that forces BLKmode for records with fields crossing word boundary.
-
-2003-07-13 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in: Remove orphan reference to acconfig.h.
-
-2003-07-13 Andreas Jaeger <aj@suse.de>
-
- * cgraphunit.c: Convert prototypes to ISO C90.
-
-2003-07-13 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (avoid_wchar_t_type): Use __cplusplus bypass
- (for OpenBSD).
- * fixinc/fixincl.x: Rebuild.
-
-2003-07-12 Zack Weinberg <zack@codesourcery.com>
-
- * configure.in: Always define HAVE_AS_GOTOFF_IN_DATA for
- i?86-*-*. Use correct name of cache variable.
- * configure: Regenerate.
-
-2003-07-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.c: Fix comment typos.
- * config/alpha/alpha.md: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/arm.md: Likewise.
- * config/arm/lib1funcs.asm: Likewise.
- * config/avr/avr.md: Likewise.
- * config/arm/README-interworking: Fix typos.
-
-2003-07-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-format.c: Fix comment formatting.
- * c-typeck.c: Likewise.
- * coverage.c: Likewise.
- * cppcharset.c: Likewise.
- * cpplib.c: Likewise.
- * dbxout.c: Likewise.
- * gcov-io.h: Likewise.
- * toplev.c: Likewise.
-
-2003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (alpha_sbrk): Note that OpenBSD needs this
- fix.
-
-2003-07-12 Zack Weinberg <zack@codesourcery.com>
-
- * aclocal.m4 (gcc_AC_CHECK_TYPE): Clone of AC_CHECK_TYPE,
- uses three-argument AC_DEFINE so no acconfig.h entries are
- needed.
- (_gcc_COMPUTE_GAS_VERSION): Also provide gcc_cv_gas_vers
- which contains the GAS version number as a scaled integer.
- (gcc_GAS_VERSION_GTE_IFELSE): Use gcc_cv_gas_vers. Add
- ability to check for ELF assembler.
- (gcc_GAS_CHECK_FEATURE): New macro.
- * configure.in: Use gcc_AC_CHECK_TYPE. Rewrite all
- assembler feature checks using gcc_GAS_CHECK_FEATURE.
- Use three-argument AC_DEFINE everywhere.
- * acconfig.h: Deleted.
- * config.in, configure: Regenerate.
-
-2003-07-12 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/inclhack.def (struct_sockaddr): Avoid "fixing" sockaddr_in
- (on OpenBSD).
- * fixinc/fixincl.x: Regenerate.
-
- * fixinc/inclhack.def (gnu_types): Improve comment.
-
-2003-07-12 Andreas Jaeger <aj@suse.de>
-
- * fp-test.c (main): Use ISO C90 prototype.
-
- * version.c: Remove unneded include of ansidecl.h.
-
- * cgraph.h: Convert prototypes to ISO C90.
- * cgraph.c: Likewise.
- * fix-header.c: Likewise.
- * ra.h: Likewise.
- * protoize.c: Likewise.
-
-2003-07-12 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_inlined_into, cgraph_inlined_calees): Fix
- warning.
-
-2003-07-12 Jan Hubicka <jh@suse.cz>
- Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * cgraph.c (cgraph_max_uid): New global variable.
- (cgraph_node): Set uid field.
- (create_edge): Keep inline flags consistent.
- (dump_cgraph): Dump more info.
- * cgraph.h (struct cgraph_local_info): Remove inline_many and
- can_inline_once; add inlinable, disgread_inline_limits, and self_insn
- (struct cgraph_global_info): Add insns, calls, cloned_times,
- will_be_output.
- (struct cgraph_node): Add uid.
- (struct cgraph_edge): Add inline_call.
- (cgraph_max_uid, cgraph_inline_p): Declare.
- * cgraph.c: Include params.h and fibheap.h
- (cgraph_mark_functions_to_inline_once): Kill.
- (INSNS_PER_CALL): New constant.
- (ncalls_inlined, nfunctions_inlined, initial_insns, overall_insns): New
- static variables.
- (cgraph_finalize_function): Do not analyze inlining.
- (cgraph_finalize_compilation_unit): Set inlining attributes.
- (cgraph_mark_functions_to_output): More consistency checks.
- (cgraph_optimize_function): Set current_function_decl to NULL.
- (cgraph_expand_function): Use new inline flags.
- (cgraph_postorder): Expand from cgraph_expand_functions.
- (INLINED_TIMES, SET_INLINED_TIMES): New macros.
- (cgraph_inlined_into, cgraph_inlined_callees,
- cgraph_estimate_size_after_inlining, cgraph_estimate_growth,
- cgraph_mark_inline, cgraph_check_inline_limits,
- cgraph_default_inline_p, cgraph_decide_inling_of_small_functions,
- cgraph_decide_inlining, cgraph_inline_p): New functions.
- * params.def (PARAM_LARGE_FUNCTION_INSNS, PARAM_LARGE_FUNCTION_GROWTH,
- PARAM_INLINE_UNIT_GROWTH): New parameters.
- * tree-inline.c (struct inline_data): New field current_decl.
- (expand_call_inline): Avoid forward declarations; use
- inlinable_function_p.
- (optimize_inline_calls): Set id.current_decl.
-
-2003-07-11 Andrew Pinski <pinskia@physics.uc.edu>
-
- * configure.in: Remove wrongly added definition of
- local_prefix.
- * configure: Regenerate.
-
-2003-07-11 Dan Nicolaescu <dann@ics.uci.edu>
-
- * rtl.def (NOTE): Do not use padding.
-
-2003-07-11 Dara Hazeghi <dhazeghi@yahoo.com>
-
- * doc/install.tex: Update required binutils for i?86-*-linux*
-
-2003-07-11 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (stage1_build): Force OBJS-onestep=OBJS.
-
-2003-07-11 Mark Mitchell <mark@codesourcery.com>
-
- * varasm.c (make_decl_rtl): Treat decls with a DECL_CONTEXT of
- TRANSLATION_UNIT_DECL as top_level.
-
-2003-07-11 Jakub Jelinek <jakub@redhat.com>
-
- * optabs.c (prepare_cmp_insn): Try cmpmemM first if it exists,
- then fall back to cmpstrM.
- * builtins.c (expand_builtin_memcmp): Likewise.
- * config/s390/s390-protos.h (s390_expand_cmpstr): Rename to...
- (s390_expand_cmpmem): ... this.
- * config/s390/s390.md (cmpmemdi, cmpmemsi, cmpmem_short_64,
- cmpmem_short_31, cmpmem_long_64, cmpmem_long_31): Renamed
- from cmpstr* patterns. Rename call to s390_expand_cmpstr
- to s390_expand_cmpmem.
- * config/s390/s390.c (s390_expand_cmpstr): Rename to...
- (s390_expand_cmpstr): ... this. Rename cmpstr* instructions
- to cmpmem*.
- * config/i370/i370.md (cmpmemsi, cmpmemsi_1): Renamed from
- cmpstr* patterns.
- * doc/md.texi (cmpstrM): Describe as String compare insn, not
- Block compare insn.
- (cmpmemM): Add.
-
-2003-07-11 Loren James Rittle <ljrittle@acm.org>
-
- * config/i386/freebsd.h (SET_ASM_OP): Remove.
- (SUBTARGET_OVERRIDE_OPTIONS): Handle TARGET_64BIT case.
- (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, DBX_REGISTER_NUMBER
- MCOUNT_NAME, SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE_SIZE): Whitespace.
-
-2003-07-11 Richard Henderson <rth@redhat.com>
-
- * function.c (assign_parms): Don't recombine complex args if
- fnargs is unchanged from orig_fnargs.
- (split_complex_args): Return args without complex before copying.
- Re-layout the modified parameters.
-
-2003-07-11 J"orn Rennecke <joern.rennecke@superh.com>
-
- * regclass.c (choose_hard_reg_mode): Add third argument.
- Changed all callers.
- * rtl.h (choose_hard_reg_mode): Update declaration.
- * dwarf2out.c (expand_builtin_init_dwarf_reg_sizes):
- Take HARD_REGNO_CALL_PART_CLOBBERED into account.
-
-2003-07-11 Geoffrey Keating <geoffk@apple.com>
-
- * c-decl.c (finish_decl): Handle 'used' here...
- * cgraphunit.c (cgraph_finalize_function): ... and here ...
- * c-common.c: (handle_used_attribute): ... not here.
-
- * configure.in (onstep): Support --enable-intermodule.
- * Makefile.in (OBJS-common): New.
- (OBJS-md): New.
- (OBJS-archive): New.
- (OBJS): Build from OBJS-common, OBJS-md, OBJS-archive.
- (OBJS-onestep): New.
- (libbackend.a): Support @onestep@.
- (libbackend.o): New.
- * configure: Regenerate.
-
- * c-common.h (c_reset_state): New prototype.
- (c_parse_file): New prototype.
- (finish_file): Move prototype from c-tree.h.
- * c-decl.c: Include <hashtab.h>.
- (builtin_decls): New.
- (current_file_decl): New.
- (duplicate_decls): Add extra parameter. Change all callers. Don't
- output duplicate common symbols.
- (link_hash_hash): New.
- (link_hash_eq): New.
- (poplevel): Handle popping of the top level.
- (warn_if_shadowing): Handle TRANSLATION_UNIT_DECL.
- (pushdecl): Set DECL_CONTEXT to TRANSLATION_UNIT_DECL if appropriate.
- (pushdecl_top_level): Likewise.
- (redeclaration_error_message): Handle TRANSLATION_UNIT_DECL.
- (c_init_decl_processing): Create TRANSLATION_UNIT_DECL.
- (finish_decl): Handle TRANSLATION_UNIT_DECL.
- (merge_translation_unit_decls): New.
- (c_write_global_declarations): New.
- (c_reset_state): New.
- (implicitly_declare): Handle TRANSLATION_UNIT_DECL.
- * c-lang.c (LANG_HOOKS_WRITE_GLOBALS): New.
- * c-objc-common.c (c_cannot_inline_tree_fn): Handle
- TRANSLATION_UNIT_DECL.
- (c_objc_common_finish_file): Call merge_translation_unit_decls.
- * c-opts.c (in_fnames): Rename from in_fname.
- (c_common_decode_option): Handle multiple input filenames.
- (c_common_post_options): Likewise.
- (c_common_parse_file): Likewise; also, call c_parse_file rather than
- yyparse.
- * c-parse.in: Move cleanup code to c_parse_file.
- (free_parser_stacks): Move contents to c_parse_file.
- (c_parse_file): New.
- * c-tree.h (union lang_tree_node): Chain along TYPE_NEXT_VARIANT
- for integer types.
- (C_DECL_FILE_SCOPE): New.
- (finish_file): Move prototype to c-common.h.
- (merge_translation_unit_decls): New prototype.
- (comptypes): Add extra parameter to prototype.
- (c_write_global_declarations): New prototype.
- * c-typeck.c (tagged_types_tu_compatible_p): New.
- (function_types_compatible_p): Add extra parameter, change all callers.
- (type_lists_compatible_p): Likewise.
- (comptypes): Likewise.
- (struct tagged_tu_seen): New.
- (tagged_tu_seen_base): New.
- (build_unary_op): Handle TRANSLATION_UNIT_DECL.
- (c_mark_addressable): Remove #if 0 code.
- * calls.c (special_function_p): Handle TRANSLATION_UNIT_DECL, add
- comment explaining why it shouldn't have to.
- * cgraph.h (struct cgraph_node): Add chain_next and chain_prev GTY
- options.
- * cppinit.c (cpp_read_next_file): New.
- (cpp_read_main_file): Use it.
- * cpplib.c (undefine_macros): New.
- (cpp_undef_all): New.
- * cpplib.h (cpp_read_next_file): Prototype.
- (cpp_undef_all): Prototype.
- * langhooks-def.h (write_global_declarations): Remove prototype.
- * toplev.h (write_global_declarations): Add prototype.
- * tree.c (decl_type_context): Use switch statement, handle
- TRANSLATION_UNIT_DECL.
- * tree.def: Update documentation for TRANSLATION_UNIT_DECL.
- (TRANSLATION_UNIT_DECL): New kind of tree.
- * tree.h: Update documentation for TRANSLATION_UNIT_DECL.
- * Makefile.in (c-decl.o): Add $(HASHTAB_H) to dependencies.
- * doc/invoke.texi: Make attempt to document new functionality.
-
- 2003-05-19 Per Bothner <bothner@apple.com>
-
- * gcc.c (combine_inputs): New.
- (process_command): Set combine_inputs.
- (do_spec_1): Handle combine_inputs.
- (main): Likewise.
-
-2003-07-10 James E Wilson <wilson@tuliptree.org>
-
- PR optimization/9745
- * loop.c (loop_iv_add_mult_emit_before): Call loop_regs_update before
- loop_insn_emit_before.
- (loop_iv_add_mult_sink, loop_iv_add_mult_hoist): Likewise.
-
-2003-07-10 Zack Weinberg <zack@codesourcery.com>
-
- * cppcharset.c: Fix comment.
- (iconv_close [!HAVE_ICONV]): #define to (void)0 to prevent warning.
- (EILSEQ): #define to EINVAL if not already defined.
- (convert_using_iconv): #if out when !HAVE_ICONV.
- (init_iconv_desc): Handle !HAVE_ICONV here...
- (cpp_init_iconv): ...not here.
-
-2003-07-11 Neil Booth <neil@daikokuya.co.uk>
-
- * common.opt: More --help messages.
- * opts.c (print_help): Use puts().
- * toplev.c (f_options): Remove help text.
- (display_help): Don't dump f_options.
-
-2003-07-11 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
- Move i?86-*-interix* to the don't-fix list.
- * fixinc/fixinc.interix: Delete with extreme prejudice.
-
-2003-07-10 Dara Hazeghi <dhazeghi@yahoo.com>
-
- PR bootstrap/10758
- * doc/install.texi: Document requirements for ia64-*-hpux* target.
-
-2003-07-10 Roger Sayle <roger@eyesopen.com>
-
- * config/ia64/hpux.h (TARGET_C99_FUNCTIONS): Define.
-
-2003-07-10 Zack Weinberg <zack@codesourcery.com>
-
- * cppcharset.c (one_utf8_to_cppchar, one_cppchar_to_utf8,
- one_utf8_to_utf32, one_utf32_to_utf8, one_utf8_to_utf16,
- one_utf16_to_utf8, conversion_loop, convert_utf8_utf16,
- convert_utf8_utf32, convert_utf16_utf8, convert_utf32_utf8,
- convert_no_conversion, convert_using_iconv): New functions.
- (APPLY_CONVERSION): New macro.
- (struct conversion, conversion_tab): New data structure.
- (init_iconv_desc): Check conversion_tab for a custom conversion
- primitive before trying to use iconv.
- (convert_cset): Deleted.
- (cpp_init_iconv): Use UTF- terminology, not UCS-.
- (_cpp_destroy_iconv): Update to match.
- (_cpp_valid_ucn): We don't need iconv to implement UCNs.
- (convert_ucn): Use one_cppchar_to_utf8 and APPLY_CONVERSION.
- (convert_escape, cpp_interpret_string): Use APPLY_CONVERSION.
- (_cpp_interpret_string_notranslate): New function, moved here
- from cpplib.c.
-
- * cpphash.h (convert_f, struct cset_converter): New types.
- (struct cpp_reader): narrow_cset_desc and wide_cset_desc
- are now struct cset_converter, not bare iconv_t.
- Update prototypes.
- * cpplib.c (interpret_string_notranslate): Moved to cppcharset.c;
- all callers changed.
-
-2003-07-10 Kelley Cook <kelleycook@wideopenwest.com>
-
- * Makefile.in (options.h): Depend on Makefile. Add move-if-change
- to opts.sh command line.
- * opts.sh: Write to temporary files with a move-if-change at the end.
-
-2003-07-10 Denis Chertykov <denisc@overta.ru>
- Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * combine.c (gen_binary): Handle the CLOBBER rtx and
- don't build a binary operation with it.
-
-2003-07-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * gcse.c (load_kills_store, find_loads, store_killed_in_insn,
- store_killed_after, store_killed_before): Keep track of the correct
- dependency function to use.
-
-2003-07-10 Steven Bosscher <steven@gcc.gnu.org>
- * toplev.c (do_compile): Don't try to open dump files before
- lang_dependent_init initializes dump_base_name.
-
-2003-07-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/arm/arm.c (arm_init_iwmmxt_builtins, arm_expand_builtin):
- Use ARRAY_SIZE.
- * config/frv/frv.c (frv_expand_builtin): Likewise.
- * config/sh/sh.c (sh_media_init_builtins): Likewise.
-
-2003-07-09 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/10032
- * doc/invoke.texi (C++ Dialect Options): Change documentation of
- -fpermissive.
-
-2003-07-10 J"orn Rennecke <joern.rennecke@superh.com>
-
- * tm.texi (RETURN_ADDR_OFFSET): Document.
-
-2003-07-10 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcov-io.h: Update documentation.
- (GCOV_UNSIGNED2STRING): New.
- (GCOV_TAG_FUNCTION_LENGTH, GCOV_TAG_BLOCKS_LENGTH,
- GCOV_TAG_ARCS_LENGTH, GCOV_TAG_COUNTER_LENGTH,
- GCOV_TAG_SUMMARY_LENGTH): Adjust.
- (GCOV_TAG_BLOCKS_NUM, GCOV_TAG_ARCS_NUM,
- GCOV_TAG_COUNTER_NUM): New.
- (GCOV_BLOCK_SIZE): Number of words.
- (gcov_var): Adjust buffer type.
- * gcov-io.c (gcov_write_bytes, gcov_read_bytes): Rename to ...
- (gcov_write_words, gcov_read_words): ... here. Take a 4-byte word
- count, not byte count.
- (gcov_open): Adjust overread init.
- (gcov_allocate, gcov_write_unsigned, gcov_write_counter,
- gcov_write_string, gcov_write_tag, gcov_write_length,
- gcov_write_tag_length): Adjust.
- (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Adjust.
- (gcov_sync, gcov_seek): Adjust.
- * gcov-dump.c (print_usage): Show gcc version only.
- (dump_file): Use GCOV_UNSIGNED2STRING.
- (tag_blocks, tag_arcs, tag_counters): Use GCOV_TAG_*_NUM macros.
- * gcov.c (print_version): Show gcc version only.
- (read_graph_file): Use GCOV_UNSIGNED2STRING. Use
- GCOV_TAG_*_NUM macros.
- (read_count_file): Use GCOV_UNSIGNED2STRING. Use
- GCOV_TAG_COUNTER_LENGTH.
- * coverage.c (read_counts_file): Use GCOV_UNSIGNED2STRING.
- Use GCOV_TAG_COUNTER_NUM.
- * libgcov.c (gcov_version): Use GCOV_UNSIGNED2STRING.
- (__gcov_merge_single, __gcov_merge_delta): Use GCOV_CHECK.
-
-2003-07-10 Andreas Schwab <schwab@suse.de>
-
- * gcov-dump.c (dump_file): Fix missing address operator.
-
-2003-07-10 Kazu Hirata <kazu@cs.umass.edu>
-
- PR c/11449
- * fold-const.c (sign_bit_p): Return EXP if VAL is the sign bit
- of HOST_WIDE_INT.
- (fold_single_bit_test): If sign_bit_p() fails, assume that the
- bit being tested is not a sign bit.
-
-2003-07-10 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (a peephole2): New.
-
-2003-07-10 Alexandre Oliva <aoliva@redhat.com>
-
- 2001-12-13 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/linux.h (LINK_SPEC): Rename the dynamic linker
- from ld-linux.so.2 to ld.so.1.
- 2001-11-18 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/linux.h (LINK_SPEC): -lpthread, not -lthread.
- * config/mn10300/linux.h (LINK_SPEC): Don't handle -Wl,-rpath
- nor -Wl,-rpath-link.
- (LIB_SPEC): Add -rpath-link if !static.
- 2001-08-22 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.c (mn10300_protect_label): New
- variable.
- * config/mn10300/linux.h (PRINT_OPERAND,
- PRINT_OPERAND_ADDRESS): Set it during their execution.
- (ASM_OUTPUT_LABELREF): Output `+' before symbol name if
- mn10300_protect_label is set.
- * config/mn10300/linux.h (LINK_SPEC): Recognize -Wl,-rpath and
- -Wl,-rpath-link.
- (LIB_SPEC, STARTFILE_SPEC): Define.
- 2001-05-11 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/t-linux (dp-bit.c, fp-bit.c): Don't define
- FLOAT_BIT_ORDER_MISMATCH.
- 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
- * config.gcc (am33_2.0-*-linux*): Added.
- * config/mn10300/linux.h: New.
- * config/mn10300/t-linux: New.
-
-2003-07-10 Andreas Jaeger <aj@suse.de>
-
- * fold-const.c: Properly wrap prototypes.
-
-2003-07-09 Alexandre Oliva <aoliva@redhat.com>
-
- 2003-06-16 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter):
- Moved from...
- * config/mn10300/mn10300.md (GOTaddr2picreg): ... here.
- * config/mn10300/mn10300.h: GTY-declare it.
- 2003-06-11 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.c (mn10300_encode_section_info): Fix
- prototype. Use incoming RTL argument.
- 2002-12-12 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.md (int_label): Move C statements...
- (GOTaddr2picreg): ... here.
- 2002-08-15 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.h (ENCODE_SECTION_INFO): Move...
- * config/mn10300/mn10300.c (mn10300_encode_section_info):
- ... here. New function.
- (TARGET_ENCODE_SECTION_INFO): Define to it.
- 2001-11-04 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.md (builtin_setjmp_receiver): Fix typo in
- pattern name.
- (mn10300_loadPC): Define as insn splittable after reload.
- 2001-05-13 Alexandre Oliva <aoliva@redhat.com>
- * config/sh/mn10300.h (JUMP_TABLES_IN_TEXT_SECTION): Let them
- be defined in .rodata even in PIC, now that the assembler
- supports that.
- 2001-05-09 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.h (GOT_SYMBOL_NAME): Don't let the
- symbol take an underscore prefix.
- 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300-protos.h (legitimate_pic_operand_p,
- legitimize_pic_address): Declare.
- * config/mn10300/mn10300.h (CONDITIONAL_REGISTER_USAGE): Mark
- the PIC register as fixed.
- (EXTRA_CONSTRAINT): Match UNSPEC_PLT and UNSPEC_PIC for 'S'.
- (GO_IF_LEGITIMATE_ADDRESS): Require legitimate_pic_operand for
- PIC.
- (LEGITIMATE_PIC_OPERAND_P): Define.
- (PIC_OFFSET_TABLE_REGNUM): Define.
- (GOT_SYMBOL_NAME): Define.
- (SYMBOLIC_CONST_P): Define.
- (ENCODE_SECTION_INFO): Use SYMBOL_REF_FLAG to mark local
- symbols.
- (MN10300_GLOBAL_P): Test it.
- (OUTPUT_ADDR_CONST_EXTRA): Handle PIC-related unspecs.
- (JUMP_TABLES_IN_TEXT_SECTION): Enable for PIC.
- * config/mn10300/mn10300.c (print_operand): Handle unspec.
- (expand_prologue): Set PIC register.
- (call_address_operand): Don't match SYMBOL_REFs in PIC.
- (legitimize_address): Call legitimize_pic_address.
- (legitimize_pic_address): New fn.
- (legitimate_pic_operand_p): New fn.
- * config/mn10300/mn10300.md (PIC_REG, SP_REG): New constants.
- (UNSPEC_INT_LABEL, UNSPEC_PIC, UNSPEC_GOT, UNSPEC_GOTOFF,
- UNSPEC_PLT): New constants.
- (pop_pic_reg): New insn.
- (movsi): Adjust non-PIC addresses.
- (builtin_setjmp_receiver): Restore the PIC register.
- (casesi): New insn.
- (call): Adjust non-PIC addresses.
- (int_label, GOTaddr2picreg): New expands.
- (am33_loadPC): New insn.
- (mn10300_loadPC): New expand.
- (call_next_insn): New insn.
- (add_GOT_to_pic_reg): New expand.
- (symGOT2reg, symGOT2reg_i): New expands.
- (symGOTOFF2reg, symGOTOFF2reg_i): New expands.
- (sym2PIC, sym2PLT): New expands.
-
-2003-07-09 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.h (PREDICATE_CODES): Define.
- 2001-05-01 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.md (sqrtsf2): flag_fast_math was renamed
- to flag_unsafe_math_optimizations.
- 2001-04-14 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.c (expand_prologue): Mark
- FP-register-saving insns as frame-related.
- 2001-02-13 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.c
- (mn10300_get_live_callee_saved_regs): Don't search past
- LAST_EXTENDED_REGNUM.
- (mn10300_gen_multiple_store, store_multiple_operation): Likewise.
- * config/mn10300/mn10300.md: Remove excessive line breaks from
- `@' output patterns that were accounted as additional
- alternatives.
- * config/mn10300/mn10300.md, config/mn10300/mn10300.c:
- Re-introduce changes accidentally removed in Richard Sandiford's
- 2000-12-05's patch.
- * config/mn10300/t-mn10300 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
- Re-instate am33-2 lost in merge from net GCC.
- 2000-08-26 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Added
- floating-point registers.
- 2000-08-07 Alexandre Oliva <aoliva@redhat.com>
- * config/mn10300/mn10300.md (movdf): Revert some am33-specific
- pessimizations that had gone in on 2000-05-08.
- 2000-06-28 Graham Stott <grahams@cygnus.co.uk>
- * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Fix typo.
- 2000-06-22 Graham Stott <grahams@cygnus.co.uk>
- * config/mn10300/mn10300.md (movqi): Use nonimmediate_operand for
- operand 0.
- * (movhi): Likewise.
- * (movsi): Likewise.
- * (movsf): Likewise.
- * (movdi): Likewise.
- * (movdf): Likewise.
- 2000-05-24 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.c (fp_regs_to_save): New function.
- (can_use_return_insn, initial_offset): Add fp_regs_to_save.
- (expand_prologue, expand_epilogue): Save and restore FP regs.
- 2000-05-20 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.md (movdi, movdf): 64-bit clean-up.
- 2000-05-13 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2, addsf3,
- subsf3, mulsf3, divsf3, fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4):
- Do not clobber cc0.
- 2000-05-12 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.md (abssf2, negsf2, rsqrtsf2):
- Discourage the two-argument, longer opcodes.
- (addsf3, subsf3, mulsf3, divsf3): Likewise for three-argument
- ones.
- * config/mn10300/mn10300.h (struct mn10300_cc_status_mdep): New.
- (CC_STATUS_MDEP, CC_STATUS_MDEP_INIT): Define.
- * config/mn10300/mn10300.md (cmpsf): New pattern.
- (branch): Test mdep.fpCC and output fbCC.
- * config/mn10300/mn10300.c (print_operand): Output conditions.
- (notice_cc_update): Recognize fcmp and set mdep.fpCC.
- 2000-05-10 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.md (movsf, movdf, addsf3, subsf3,
- mulsf3, divsf3): Use the `F' constraint for FP values.
- * config/mn10300/mn10300.c (const_1f_operand): New function.
- * config/mn10300/mn10300-protos.h (const_1f_operand): Declare.
- * config/mn10300/mn10300.md (sqrtsf2): New expand.
- (rsqrtsf2): New insn.
- 2000-05-09 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.md (movdf): Oops, I missed it in my
- previous check-in.
- 2000-05-08 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.md (abssf2, negdf2): On
- TARGET_AM33_2, expand to...
- (abssf2_am33_2, negdf2_am33_2): New insns.
- (addsf3, subsf3, mulsf3, divsf3): Likewise.
- (fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4): Likewise.
- * config/mn10300/mn10300.md (movqi, movhi, movsi, movsf,
- movdi, movdf): Added FP regs.
- * invoke.texi (-mam33-2, -mno-am33-2): Document.
- 2000-04-29 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.h (FIRST_FP_REGNUM, LAST_FP_REGNUM):
- New macros.
- (REGNO_AM33_2_FP_P): Renamed to...
- (REGNO_FP_P): Redefine in terms of FIRST_* and LAST_*.
- (CONDITIONAL_REGISTER_USAGE, REGNO_REG_CLASS): Likewise.
- 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.h (REG_CLASS_CONTENTS): Remove FP
- regs from GENERAL_REGS.
- 2000-04-27 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.h (REGNO_AM33_2_FP_P): New macro.
- * config/mn10300/mn10300.c (mn10300_address_cost): Added FP_REGS.
- * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Added FP_REGS.
- 2000-04-23 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.h (CLASS_CANNOT_CHANGE_SIZE): Defined
- as FP_REGS.
- 2000-04-21 Alexandre Oliva <aoliva@cygnus.com>
- * config/mn10300/mn10300.h (OK_FOR_Q): New macro.
- (EXTRA_CONSTRAINT): Added OK_FOR_Q.
- * config/mn10300/mn10300.c (secondary_reload_class): Adjust.
- * config/mn10300/mn10300.c (print_operand): Support `D' for doubles.
- * config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Adjust.
- (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER): Added
- AM33/2.0 floating-point registers.
- (CONDITIONAL_REGISTER_USAGE): Adjust.
- (enum reg_class, REG_CLASS_NAMES): Added FP_REGS and FP_ACC_REGS.
- (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Adjust.
- (REG_CLASS_FROM_LETTER): Added `f' and `A'.
- (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Adjust.
- * config/mn10300/t-mn10300 (MULTILIB_OPTIONS): Added am33-2.
- (MULTILIB_DIRNAMES): Likewise.
- * config/mn10300/mn10300.h (CPP_SPEC): Define `__AM33__=2' and
- `__AM33_2__' when `-mam33-2' is given.
- (TARGET_AM33_2): Define.
- (TARGET_SWITCHES): Adjust.
- * config/mn10300/mn10300.c (asm_file_start): Print `.am33_2'
- when appropriate.
-
-2003-07-09 Matt Kraai <kraai@alumni.cmu.edu>
-
- * doc/install.texi: Add missing @.
-
-2003-07-09 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.h (CRT_CALL_STATIC_FUNCTION): Define.
-
-2003-07-09 Aldy Hernandez <aldyh@redhat.com>
-
- PR/11144
- * config/i386/i386.c (ix86_function_arg_boundary): Remove abort.
-
-2003-07-09 Nathanael Nerode <neroden@gcc.gnu.org>
-
- PR bootstrap/11043
- * config/arc/t-arc: Replace bogus references to "x-crtinit.o",
- "x-crtfini.o" with "crtinit.o", "crtfini.o".
-
- * fixinc/inclhack.def (limits_ifndefs): Add select test.
- * fixinc/fixincl.x: Rebuild.
-
- * fixinc/inclhack.def (math_exception): Improve bypass and comment.
- * fixinc/fixincl.x: Rebuild.
-
-2003-07-09 Hans-Peter Nilsson <hp@bitrange.com>
-
- * doc/install.texi (Configuration): Document the valgrind option
- to --enable-checking.
-
-2003-07-09 Jan Hubicka <jh@suse.cz>
-
- * objc-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
-
-2003-07-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * c-lex.c (cb_ident): Cast cstr.text to const char *.
-
-2003-07-09 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcov-io.h: Update documentation.
- (GCOV_GRAPH_SUFFIX, GCOV_GRAPH_MAGIC): Rename to GCOV_NOTE_SUFFIX,
- GCOV_NOTE_MAGIC.
- (GCOV_DATA_SUFFIX, GCOV_NOTE_SUFFIX): Update.
- (GCOV_DATA_MAGIC, GCOV_NOTE_MAGIC): Make non-palindromic.
- (struct gcov_var): Change buffer's type. Add endian flag.
- (gcov_open): Remove mode in libgcov.
- (gcov_magic): Prototype.
- * gcov-io.c (from_file): New.
- (gcov_open): Clear endian flag.
- (gcov_magic): New.
- (gcov_write_bytes, gcov_read_bytes): Return gcov_unsigned_t
- pointers.
- (gcov_write_unsigned, gcov_write_counter, gcov_write_string,
- gcov_write_tag, gcov_write_length, gcov_write_tag_length): Update.
- (gcov_read_unsigned, gcov_read_counter, gcov_read_string): Update.
- * gcov-iov.c (main): Correct cast.
- * coverage.c (read_counts_file): Use gcov_magic. Remove endianness
- conversion.
- (gcov_begin_output): Use GCOV_NOTE_MAGIC.
- (coverage_init): Use GCOV_NOTE_SUFFIX.
- * libgcov.c (gcov_version_mismatch): Remove endianness conversion.
- Rename to gcov_version, and return flag.
- (gcov_exit): Use gcov_version.
- (__gcov_init): Use gcov_version.
- * Makefile.in (coverageexts): Update.
- * gcov.c (print_version): Remove endianness conversion.
- (create_file_names): Use GCOV_NOTE_SUFFIX.
- (read_graph_file): Use gcov_magic.
- (read_count_file): Likewise.
- * gcov-dump.c (dump_file): Remove endianness conversion, use
- gcov_magic.
-
-2003-07-09 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.in (BUILD_PREFIX, BUILD_PREFIX_1): Set if enable
- coverage is on.
- * configure: Regenerated.
- * Makefile.in (ALL_CFLAGS): Correct its comment.
-
-2003-07-08 Mark Mitchell <mark@codesourcery.com>
-
- * fold-const.c (make_range): Do not access operand 1 for a
- zero-operand operator.
-
-2003-07-09 Neil Booth <neil@daikokuya.co.uk>
-
- * toplev.c (warn_dummy, W_options): Die.
- (display_help): Don't print W_options.
- * common.opt: Add W_options help from toplev.c.
-
-2003-07-09 Andreas Jaeger <aj@suse.de>
-
- * opts.c (wrap_help): Only pass int arguments as arguments to
- printf's '*' modifier. Change argument of function.
-
-2003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
-
- * doc/invoke.texi: Fix misspelling of "@item".
-
-2003-07-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386.md: Remove an old comment about
- NOTICE_UPDATE_CC.
-
-2003-07-09 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_node_name): New function.
- (dump_cgraph): Use it.
- * cgraph.h (cgraph_dump_file): Declare.
- (cgraph_node_name): Declare.
- * cgraphunit.c: Include timevar.h
- (cgraph_finalize_compilation_unit): Use timevar; reorganize dumps.
- (cgraph_optimize_function): Use TV_INTEGRATION.
- (cgraph_mark_local_functions): reorganize dumps.
- (cgraph_mark_functions_to_inline_once): Likewise.
- (cgraph_optimize): Likewise; use timevar.
- * timevar.def (TV_CGRAPH, TV_CGRAPHOPT): New.
- * toplev.c (dump_file_index): Add DFI_cgraph.
- (dump_file_info): Likewise.
- (cgraph_dump_file): New global variable.
- (do_compile): Open and close cgraph dump.
- * invoke.texi (-d): Document new flag; renumber.
-
-2003-07-08 Roger Sayle <roger@eyesopen.com>
-
- PR c/11370
- * calls.c (emit_call_1): Don't bother popping the arguments off of
- the stack after a noreturn function call; The adjustment is dead.
- (expand_call): Likewise.
-
-2003-07-08 Geoffrey Keating <geoffk@apple.com>
-
- * expr.c (MOVE_MAX_PIECES): Move from here...
- * defaults.h (MOVE_MAX_PIECES): ... to here.
-
-2003-07-08 Matt Kraai <kraai@alumni.cmu.edu>
-
- * Makefile.in (stage1-start): Handle an empty SUBDIRS.
-
-2003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * genattr.c (internal_dfa_insn_code): Don't prototype.
- * genattrtab.c (attr_desc): Add `static_p' field.
- (expand_units): Make blockage range and ready cost functions
- static.
- (write_attr_get): Don't add extern prototypes in C file. Mark
- static functions as appropriate.
- (find_attr, make_internal_attr): Initialize static_p.
- * genattrtab.h (ATTR_STATIC): New macro.
- * genautomata.c (output_internal_reset_func): Mark output function
- as inline.
- (make_internal_dfa_insn_code_attr): Mark output function as static.
-
-2003-07-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * genattrtab.h: Add new macros for attr `special' flags.
- * genattrtab.c (attr_desc): Reorder/resize fields better.
- Use attr `special' macros in all calls to make_internal_attr.
- * genautomata.c: Likewise.
-
-2003-07-09 Jan Hubicka <jh@suse.cz>
-
- * c-common.c (c_estimate_num_insns_1): New static function.
- (c_estimate_num_insns): New global function.
- * c-common.h (DECL_NUM_STMTS): Rename to...
- (DECL_ESTIMATED_INSNS): ... this.
- (c_estimate_num_insns): Declare.
- * c-decl.c (duplicate_decls): Use DECL_ESTIMATED_INSNS.
- * c-lang.c (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): New.
- * c-semantics.c (add_stmt): Do not account statements.
- * langhooks-def.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS):
- New.
- * langhooks.h (lang_hooks_for_tree_inlining): Add
- estimate_num_insns
- * params.def (max-inline-insns-auto, max-inline-insns-auto): set
- to 100.
- (max-inline-insns): set to 300.
- (min-inline-insns): set to 10.
- * tree-inline.c (struct inline_data): Rename inlined_stmts to
- inlined-insns.
- (INSNS_PER_STMT): Kill.
- (inlinable_function_p): Compute and store body size.
- (expand_call_inline): Likewise.
- (optimize_inline_calls): Likewise.
-
-2003-07-08 James E Wilson <wilson@tuliptree.org>
-
- PR target/10021
- * emit-rtl.c (set_mem_attribute_minus_bitpos): When handle ARRAY_REF,
- loop over new variable t2 instead of t.
-
-2003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
-
- PR bootstrap/11455
- * config/i386/winnt.c: Replace use of error(), warning() with
- error_with_decl(), warning_with_decl(), throughout.
-
-2003-07-08 Neil Booth <neil@daikokuya.co.uk>
-
- * opts.c (wrap_help): Use unsigned int, not size_t.
-
-2003-07-08 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.h (HAVE_AS_DWARF2_DEBUG_LINE): Don't define
- as .file/.loc directives are incompatible with linker relaxation.
-
-2003-07-08 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (fixinc.sh): Remove gnu-regex.[ch] from dependencies.
- * fixinc/Makefile.in: Remove all references to gnu-regex.[och].
- * fixinc/fixfixes.c, fixinc/fixincl.c, fixinc/fixlib.c
- * fixinc/fixtests.c: Use xregexec not regexec, xregcomp not regcomp.
- * fixinc/fixlib.h: Include xregex.h not gnu-regex.h.
- * fixinc/inclhack.def (hpux10_cpp_pow_inline, hpux11_cpp_pow_inline):
- Escape { and } characters which are not part of range expressions.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Delete file.
-
-2003-07-08 Steven Bosscher <steven@gcc.gnu.org>
-
- PR c/1687
- * tree-inline.c (find_alloca_call): Use
- walk_tree_without_duplicates, instead of walk_tree.
- (find_builtin_longjmp_call): Likewise.
- * c-objc-common.c (c_cannot_inline_fn): Likewise.
- * c-semantics.c (find_reachable_label): Likewise.
-
-2003-07-08 Jakub Jelinek <jakub@redhat.com>
-
- PR c/11420
- * config/i386/i386.c (ix86_check_movabs): New function.
- * config/i386/i386-protos.h (ix86_check_movabs): New prototype.
- * config/i386/i386.md (movabs[shqd]i_1_rex64): Kill broken alternative.
- (movabs[shqd]i_[12]_rex64): Add ix86_check_movabs check to conditions.
-
-2003-07-08 Chris Demetriou <cgd@broadcom.com>
-
- * Makefile.in (install-po): Cope with empty CATALOGS.
-
-2003-07-08 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/elf64.h (TARGET_ASM_UNIQUE_SECTION): Delete.
- (EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Delete.
- (SECTION_FUNCTION_TEMPLATE): Delete.
- * config/mips/elf.h: As for elf64.h.
- (ASM_OUTPUT_ALIGNED_BSS): Use named_section rather than sbss_section.
- * config/mips/linux.h: As for elf.h
- * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
- * config/mips/iris6.h (EXTRA_SECTIONS): Delete.
- (EXTRA_SECTION_FUNCTIONS): Remove sdata_section. Remove the handling
- of in_sdata from current_section_name and current_section_flags.
- * config/mips/iris6gld.h (TARGET_ASM_UNIQUE_SECTION): Delete.
- * config/mips/mips.h (sdata_section, sbss_section): Remove prototypes.
- (MASK_GP_OPT, TARGET_GP_OPT): Delete.
- (MASK_NO_FUSED_MADD): Use MASK_GP_OPT's old value.
- (TARGET_SWITCHES): Neuter gpOPT, gpopt, no-gpOPT and no-gpopt.
- (SMALL_DATA_SECTION, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS): Remove.
- * config/mips/mips.c (TARGET_IN_SMALL_DATA_P): Override.
- (TARGET_SECTION_TYPE_FLAGS): Override if TARGET_IRIX6.
- (mips_classify_symbol): Use SYMBOL_REF_SMALL_P.
- (override_options): Remove setting of MASK_GPOPT.
- (mips_output_external): Use mips_in_small_data_p to check whether a
- symbol needs an .extern directive. Don't emit such directives for
- TARGET_EXPLICIT_RELOCS.
- (mips_declare_object): Update accordingly.
- (mips_select_rtx_section): Call named_section rather than
- SMALL_DATA_SECTION.
- (mips_select_section): Use default_elf_section_section for everything
- except .text string constants.
- (mips_in_small_data_p): New function.
- (mips_encode_section_info): Remove small data handling.
- (mips_unique_section): Delete.
- (iris6_section_type_flags): New function.
- * doc/tm.texi: Remove documentation of -mgpopt and -mhalf-pic.
-
-2003-07-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR Target/11453
- * pa.md: Disparage all mtsar constraints.
- (extzv, extv, insv): Don't fail on length of {32|64}.
-
-2003-07-08 Zack Weinberg <zack@codesourcery.com>
-
- * system.h: Poison MAP_CHARACTER.
- * config/i370/i370-protos.h (mvs_map_char): Delete.
- * config/i370/i370.c (ascebc, ebcasc, mvs_map_char): Delete.
- * config/i370/i370.h (MAP_CHARACTER): Delete definition.
- (ASM_OUTPUT_ASCII): Don't use MAP_CHARACTER.
-
-2003-07-08 Danny Smith <dannysmith@users.sourceforge.net>
-
- * toplev.c (randomize): Correct call to time().
-
-2003-07-08 Jakub Jelinek <jakub@redhat.com>
-
- * unroll.c (reg_dead_after_loop): Check for reg in REG_EQUAL and
- REG_EQUIV notes as well.
-
-2003-07-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/md.texi: Fix the description of addmodecc.
-
-2003-07-07 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (top_builddir): Set to "..", not ".".
- (INTLLIBS, INTLDEPS): Delete.
- (LIBINTL, LIBINTL_DEP, LIBICONV_DEP): New variables to be substituted.
- (LIBDEPS): Add $(LIBICONV_DEP).
- (LIBS): Take out $(INTLLIBS), add $(LIBINTL) and $(LIBICONV).
- (INCLUDES): Replace -I../intl with @INCINTL@.
- ($(top_builddir)/intl/libintl.a): Delete rule.
- (stage2-start, stage3-start, stage4-start, stageprofile-start,
- stagefeedback-start): Use $$ for variable to be evaluated by
- shell, not make.
- * acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_GETTEXT,
- HAVE_LC_MESSAGES, HAVE_STPCPY): Delete.
- * aclocal.m4: sinclude ../config/progtest.m4. Add
- contents of lcmessage.m4 from gettext distro.
- * configure.in: Check for wchar.h and setlocale. Set
- LIBICONV_DEP to the empty string and substitute it.
- Call AM_LC_MESSAGES. Delete AC_ARG_ENABLE for --enable-nls;
- this is handled elsewhere. Use ZW_GNU_GETTEXT_SISTER_DIR,
- not CY_GNU_GETTEXT. Clear $LIBICONV if its text is included
- in $LIBINTL, to avoid linking it twice.
- * configure, config.in: Regenerate.
-
-2003-07-08 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * fixinc/mkfixinc.sh: Remove winnt support.
- * fixinc/fixinc.winnt: Delete with extreme prejudice.
-
-2003-07-08 Neil Booth <neil@daikokuya.co.uk>
-
- * Makefile.in: Update.
- * c-opts.c (c_common_handle_option): opt_text now contains the '-'.
- * c.opt: Update documentation.
- * common.opt: Add some help text.
- * opts.c: Include intl.h.
- (wrap_help, print_help): New.
- (find_opt, handle_option, common_handle_option): opt_text now
- contains the '-'. Use print_help to output help.
- * opts.h (struct cl_option): New member "help".
- * opts.sh: Update to handle help text output and to prepend
- options with '-'.
- * toplev.c (display_help): Remove some help text.
-
-2003-07-07 David Edelsohn <edelsohn@gnu.org>
- Fariborz Jahanian <fjahanian@apple.com>
-
- * configure.in: Test for PowerPC mfcr field support in assembler.
- * config.in, configure: Regenderated.
-
- * config/rs6000/power4.md: Add mfcrf reservation.
- * config/rs6000/rs6000-protos.h (mfcr_operation): Declare.
- * config/rs6000/rs6000.c (mfcr_operation): Define.
- (print_operand): Add 'Q' case for mfcrf.
- * config/rs6000/rs6000.h (TARGET_MFCRF): New.
- * config/rs6000/rs6000.md (attribute "type"): Add mfcrf.
- (movcc_internal1): Emit optional field operand for mfcr and set
- "type" attribute appropriately.
- (mfcr SCC): Likewise.
- (movesi_from_cr_one): New.
-
-2003-07-07 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.md: Correct check-in of incorrect version.
-
-2003-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * bitmap.c (debug_bitmap_file): Merge uses of HOST_PTR_PRINTF with
- adjacent stdio calls.
- * c-decl.c (c_print_identifier): Likewise.
- * mips-tfile.c (write_varray, write_object, allocate_cluster): Likewise.
- * print-rtl.c (print_rtx): Likewise.
- * print-tree.c (print_node_brief, print_node): Likewise.
- * system.h (HOST_PTR_PRINTF): Ensure we have a literal string.
-
- * configure.in (AC_COMPILE_CHECK_SIZEOF): Check for `void *'.
- * config.in, configure: Regenerated.
-
-2003-07-07 Roger Sayle <roger@eyesopen.com>
-
- PR target/10979
- * config/i386/i386.md (atan2df3, atan2sf3, atan2xf3, atan2tf3):
- Changed to define_expand patterns that copy operand[1] to prevent
- it from being clobbered before emitting an atan2?f3_1 insn.
- (atan2df3_1, atan2sf3_1, atan2xf_1, atan2tf3_1): New define_insn
- patterns that actually specify the behaviour of x87's FPATAN.
-
-2003-07-07 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Remove bogus
- clearing of SYMBOL_FLAG_LOCAL bit.
- If vcall_offset fits into signed 16-bit immediate, use
- one instruction for both addition and load.
-
-2003-07-07 Neil Booth <neil@daikokuya.co.uk>
-
- * opts.c (common_handle_option): Correct handling of the
- -falign- switches that do and don't take an argument.
-
-2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (pushqi1_h8300hs): Revert my patch
- today.
- (pushhi1_h8300hs): Likewise.
-
-2003-07-07 Andreas Jaeger <aj@suse.de>
-
- * genextract.c: Convert remaining prototypes to ISO C90.
-
- * cpplex.c (_cpp_free_buff): Convert prototype to ISO C90.
- * fold-const.c (fold_single_bit_test): Likewise.
- * diagnostic.c (default_diagnostic_finalizer): Likewise.
- * cfgrtl.c (rtl_redirect_edge_and_branch): Likewise.
-
- * gengtype.c (write_array): Generate ISO C90 prototypes.
-
- * genflags.c (gen_proto): Generate ISO C90 prototypes.
-
-2003-07-07 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/11059
- * expr.c (can_store_by_pieces): Return true if length is zero.
- (store_by_pieces): If length is zero and endp is two, abort,
- othwerise, if length is zero and endp is not two, return "to".
- (clear_by_pieces): Do nothing if length is zero.
- (clear_storage): Do nothing if length is zero.
- (store_constructor): Simplify code when size is zero, or the
- target has already been cleared. This avoids emitting a
- blockage instruction when initializing empty structures.
-
-2003-07-07 Andreas Jaeger <aj@suse.de>
-
- * mips-tfile.c: Convert prototypes to ISO C90.
- * mips-tdump.c: Convert prototypes to ISO C90.
-
-2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
-
- * rtl.h (emit_line_note): Take a location_t.
- (emit_line_note_force): Remove.
- (set_file_and_line_for_statement): Take a location_t.
- * tree.g (emit_line_note): Take a location_t.
- * emit-rtl.c (emit_line_note): Take a location_t.
- (emit_line_note_force): Remove.
- * function.c (init_function_start): Adjust emit_line_note call.
- (expand_function_end): Use force_next_line_note, not
- emit_line_note_force.
- * c-parse.in (maybe_type_qual): Adjust emit_line_note calls.
- * c-semantics.c (genrtl_do_pushlevel, genrtl_goto_stmt,
- genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
- genrtl_while_stmt, genrtl_do_stmt_1, genrtl_return_stmt,
- genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
- genrtl_continue_stmt, genrtl_switch_stmt,
- genrtl_asm_stmt): Likewise.
- * expr.c (expand_expr): Likewise.
- * integrate.c (expand_inline_function): Likewise.
- * stmt.c (set_file_and_line_for_stmt): Take a location_t.
- (expand_decl_init): Adjust emit_line_note call.
-
-2003-07-07 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/darwin-tramp.asm: Fix trampolines. PR 10900.
-
-2003-07-07 Andreas Jaeger <aj@suse.de>
-
- * config/i386/i386-protos.h: Convert prototypes to ISO C90.
- * config/i386/i386.c: Likewise.
-
-2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Use gen_int_mode instead of
- GEN_INT (trunc_int_for_mode (...)).
-
-2003-07-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (pushqi1_h8300hs): Optimize by pushing
- 2 bytes and then subtract 2 from the stack pointer.
- (pushhi1_h8300hs): Likewise.
-
-2003-07-07 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.in (enable_coverage): Remove -DSELF_COVERAGE, add
- -frandom-seed.
- * configure: Regenerated.
- * Makefile.in: Remove extraneous comment.
- * toplev.c (randomize): Protect against potential multiple calls.
- * doc/invoke.texi (-frandom-seed): Document use for in coverage
- files.
-
-2003-07-07 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
- Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11198
- * alias.c (objects_must_conflict_p): Return 1 if the types have
- the same alias set, not if the alias sets only conflict.
-
-2003-07-07 Andrew Pinski <pinskia@physics.uc.edu>
-
- * cppcharset.c (ICONV_CONST): Define iff !HAVE_ICONV.
- (convert_cset): Change inbuf to type ICONV_CONST char.
- * Makefile.in (LIBS): Add LIBICONV.
-
- * doc/invoke.texi (-falign-functions): Document that
- when n is zero then a machine-dependent default is used.
- (-falign-labels): Document that when n is zero then a
- machine-dependent default is used and that -falign-labels =1
- is equivalent to -fno-align-labels.
- (-falign-loops): Likewise.
- (-falign-jumps): Likewise.
-
-2003-07-06 Art Haas <ahaas@airmail.net>
-
- * f/global.c (ffeglobal_type_string_): Fix obsolete GCC array
- initializer syntax.
-
-2003-07-06 James E Wilson <wilson@tuliptree.org>
-
- PR optimization/9812
- * rtl.h (mem_for_const_double): Delete prototype.
- * varasm.c (mem_for_const_double): Delete function.
- * config/m68k/hp320.h, config/m68k/linux.h, config/m68k/m68kelf.h,
- config/m68k/m68kv4.h, config/m68k/netbsd-elf.h
- (LEGITIMATE_PIC_OPERAND_P): Delete duplicate definitions.
- * config/m68k/m68k.h (LEGITIMATE_CONSTANT_P): Disallow XFmode.
- (LEGITIMATE_PIC_OPERAND_P): Delete CONST_DOUBLE tests.
- * config/m68k/m68k.md (movxf): Add reload_in_progress guard. Add
- comment about confused support for XFmode constants.
-
-2003-07-07 Jan Hubicka <jh@suse.cz>
-
- * cfglayout.c (fixup_reorder_chain): Call delete_dead_jumptables.
-
-2003-07-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Fix comment typos.
- * config/h8300/h8300.md: Likewise.
- * config/i386/athlon.md: Likewise.
- * config/i386/i386.c: Likewise.
- * config/i386/pentium.md: Likewise.
- * config/ia64/ia64.c: Likewise.
- * config/ia64/itanium1.md: Likewise.
- * config/ia64/itanium2.md: Likewise.
- * config/m32r/m32r.md: Likewise.
- * config/m68hc11/m68hc11.c: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mips/sr71k.md: Likewise.
- * config/mips/t-iris5-as: Likewise.
- * config/mmix/mmix.h: Likewise.
- * config/ns32k/ns32k.h: Likewise.
- * config/ns32k/NOTES: Fix a typo.
-
-2003-07-06 Andreas Jaeger <aj@suse.de>
-
- * stmt.c: Convert remaining prototypes to ISO C90.
- * cfglayout.c: Likewise.
- * dbxout.c: Likewise.
- * gcc.c: Likewise.
- * genemit.c: Likewise.
-
- * basic-block.h: Convert prototypes to ISO C90.
- * c-parse.in: Likewise.
- * c-pragma.h: Likewise.
- * c-typeck.c: Likewise.
- * cfghooks.h: Likewise.
- * cfgloopanal.c: Likewise.
- * dbxout.h: Likewise.
- * debug.h: Likewise.
- * dwarf2asm.h: Likewise.
- * gcov.c: Likewise.
- * gengtype-lex.l: Likewise.
- * sched-int.h: Likewise.
- * timevar.c: Likewise.
-
-2003-07-06 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.h (c_comon_handle_filename,
- c_common_missing_arguement): New.
- * c-lang.c (LANG_HOOKS_HANDLE_FILENAME,
- LANG_HOOKS_MISSING_ARGUMENT): New.
- * c-opts.c (missing_arg): Rename c_common_missing_argument,
- update to be an appropriate langhook.
- (c_common_handle_option): Don't handle filenames.
- (c_common_handle_filename): New.
- * hooks.c (hook_void_constcharptr,
- hook_bool_constcharptr_size_t_false): New.
- * hooks.h (hook_void_constcharptr,
- hook_bool_constcharptr_size_t_false): New.
- * langhooks-def.h (LANG_HOOKS_HANDLE_FILENAME,
- LANG_HOOKS_MISSING_ARGUMENT): New.
- (LANG_HOOKS_INITIALIZER): Update.
- * langhooks.h (struct lang_hooks): Add handle_filename and
- missing_argument.
- * opts.c (handle_option): Don't handle filenames here, but ...
- (handle_options): ... here.
- (common_handle_option): Don't handle missing arguments here.
- * objc/objc-lang.c (LANG_HOOKS_HANDLE_FILENAME,
- LANG_HOOKS_MISSING_ARGUMENT): New.
-
-2003-07-06 Neil Booth <neil@daikokuya.co.uk>
-
- * Makfile.in: Remove traces of mbchar.
- * c-parse.in (MULTIBYTE_CHARS): Remove.
- * config.in (MULTIBYTE_CHARS): Remove.
- * configure: Remove --enable-mbchar.
- * configure.in: Remove --enable-mbchar.
- * mbchar.c, mbchar.h: Remove.
- * system.h: Poison MULTIBYTE_CHARS.
- * config/linux-aout.h (MULTIBYTE_CHARS): Remove.
- * config/linux.h (MULTIBYTE_CHARS): Remove.
- * config/svr4.h (MULTIBYTE_CHARS): Remove.
- * config/sparc/linux.h (MULTIBYTE_CHARS): Remove.
-
-2003-07-06 Andreas Jaeger <aj@suse.de>
-
- * varray.c (varray_check_failed): Fix typo.
-
- * unroll.c: Convert prototypes to ISO C90.
- * varasm.c: Likewise.
- * varray.c: Likewise.
- * varray.h: Likewise.
- * vmsdbgout.c: Likewise.
- * xcoffout.c: Likewise.
- * xcoffout.h: Likewise.
-
-2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcov-io.h: Add a local time stamp.
- (struct gcov_info): Add stamp field.
- (gcov_truncate): New.
- * coverage.c (read_counts_file): Skip the stamp.
- (coverage_begin_output): Write the stamp.
- (build_gcov_info): Declare and init the stamp.
- (coverage_finish): Only unlink data file, if stamp is zero.
- * gcov-dump.c (dump_file): Dump the stamp.
- * gcov.c (bbg_stamp): New.
- (release_structures): Clear bbg_stamp.
- (read_graph_file): Read stamp.
- (read_count_file): Check stamp.
- * libgcov.c (gcov_exit): Check stamp and truncate if needed.
-
-2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
-
- * tree.h (default_flag_random_seed): Remove.
- * toplev.h (local_tick): Declare.
- * tree.c (flag_random_seed, default_flag_random_seed): Move to
- toplev.c.
- (append_random_chars): Don't call default_flag_random_seed.
- * toplev.c (flag_random_seed): Define here. Set local_tick.
- (local_tick): Define.
- (randomize): New, moved from tree.c.
- (print_switch_values): Adjust.
- (toplev_main): Call randomize.
-
-2003-07-06 Nathan Sidwell <nathan@codesourcery.com>
-
- * tree.h (crc32_string): Declare.
- * tree.c (append_random_chars): Remove.
- (crc32_string): New.
- (get_file_function_name_long): Use crc32_string here.
-
-2003-07-06 Andreas Jaeger <aj@suse.de>
-
- * gcc.c: Convert prototypes to ISO C90.
- * gcc.h: Likewise.
- * gcov-dump.c: Likewise.
- * gcov-iov.c: Likewise.
- * gcse.c: Likewise.
- * genattrtab.h: Likewise.
- * ggc.h: Likewise.
- * global.c: Likewise.
- * graph.c: Likewise.
- * graph.h: Likewise.
- * hosthooks.h: Likewise.
- * hooks.h: Likewise.
- * hooks.c: Likewise.
- * hashtable.h: Likewise.
- * hashtable.c: Likewise.
- * haifa-sched.c: Likewise.
- * integrate.h: Likewise.
- * integrate.c: Likewise.
- * input.h: Likewise.
- * ifcvt.c: Likewise.
- * jump.c: Likewise.
- * langhooks-def.h: Likewise. Add extern to prototypes.
- * langhooks.c: Likewise.
- * langhooks.h: Likewise.
- * lcm.c: Likewise.
- * local-alloc.c: Likewise.
- * loop-init.c: Likewise.
- * loop-unroll.c: Likewise.
- * loop-unswitch.c: Likewise.
- * loop.c: Likewise.
- * loop.h: Likewise. Add extern to prototypes.
- * machmode.h: Likewise.
- * main.c: Likewise.
- * mbchar.c: Likewise.
- * mbchar.h: Likewise.
- * mkdeps.c: Likewise.
- * mkdeps.h: Likewise.
- * optabs.c: Likewise.
- * optabs.h: Likewise.
- * output.h: Likewise.
- * gccspec.c: Likwise.
- * postreload.c: Likewise.
- * prefix.c: Likewise.
- * prefix.h: Likewise.
- * print-rtl.c: Likewise.
- * print-tree.c: Likewise.
- * profile.c: Likewise.
- * read-rtl.c: Likewise.
- * real.c: Likewise.
- * real.h: Likewise.
- * recog.c: Likewise.
- * recog.h: Likewise.
- * reg-stack.c: Likewise.
- * regclass.c: Likewise.
- * regmove.c: Likewise.
- * regrename.c: Likewise.
- * regs.h: Likewise.
- * reload.c: Likewise.
- * reload.h: Likewise.
- * reload1.c: Likewise.
- * reorg.c: Likewise.
- * resource.c: Likewise.
- * resource.h: Likewise.
- * rtl-error.c: Likewise.
- * rtl.c: Likewise.
- * rtl.h: Likewise.
- * rtlanal.c: Likewise.
- * sbitmap.c: Likewise.
- * sbitmap.h: Likewise.
- * scan-decls.c: Likewise.
- * scan.c: Likewise.
- * sched-deps.c: Likewise.
- * sched-ebb.c: Likewise.
- * sched-int.h: Likewise.
- * sched-rgn.c: Likewise.
- * sched-vis.c: Likewise.
- * sibcall.c: Likewise.
- * simplify-rtx.c: Likewise.
- * sreal.c: Likewise.
- * sreal.h: Likewise.
- * ssa-ccp.c: Likewise.
- * ssa-dce.c: Likewise.
- * ssa.c: Likewise.
- * ssa.h: Likewise.
- * stack.h: Likewise.
- * stmt.c: Likewise.
- * stor-layout.c: Likewise.
- * stringpool.c: Likewise.
- * target.h: Likewise.
- * timevar.c: Likewise.
- * timevar.h: Likewise.
- * tlink.c: Likewise.
- * tracer.c: Likewise.
- * tree-inline.c: Likewise.
- * tree-inline.h: Likewise.
- * tree.c: Likewise.
- * tree.h: Likewise.
-
-2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c (nonzero_bits1): Fix a warning.
-
-2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (compute_mov_length): Correct the
- length of loading CONST0_RTX (SFmode).
-
-2003-07-05 Nathan Sidwell <nathan@codesourcery.com>
-
- * toplev.c (output_clean_symbol_name): Remove.
- * toplev.h (output_clean_symbol_name): Remove.
- * config/alpha/alpha.c (unicosmk_output_module_name): Use
- lbasename & clean_symbol_name.
-
-2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * ggc.h: Follow spelling conventions.
- * config/i386/i386.c: Likewise.
- * config/i386/winnt.c: Likewise.
- * config/rs6000/rs6000.c: Likewise.
-
-2003-07-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * bt-load.c: Fix comment typos.
- * c-incpath.c: Likewise.
- * cfg.c: Likewise.
- * cfgcleanup.c: Likewise.
- * cfgloop.h: Likewise.
- * cfgloopmanip.c: Likewise.
- * cfgrtl.c: Likewise.
- * diagnostic.h: Likewise.
- * dwarfout.c: Likewise.
- * emit-rtl.c: Likewise.
- * et-forest.c: Likewise.
- * et-forest.h: Likewise.
- * expr.c: Likewise.
- * gcse.c: Likewise.
- * genattr.c: Likewise.
- * jump.c: Likewise.
- * langhooks.h: Likewise.
- * local-alloc.c: Likewise.
- * loop-unroll.c: Likewise.
- * loop-unswitch.c: Likewise.
- * ra-build.c: Likewise.
- * regclass.c: Likewise.
- * regmove.c: Likewise.
- * rtl.def: Likewise.
- * rtlanal.c: Likewise.
- * sched-ebb.c: Likewise.
- * sched-rgn.c: Likewise.
- * simplify-rtx.c: Likewise.
- * ssa.c: Likewise.
- * tracer.c: Likewise.
- * tree.c: Likewise.
-
-2003-07-05 Zack Weinberg <zack@codesourcery.com>
-
- * cppcharset.c: Use the correct return type for the fallback iconv
- macro.
-
-2003-07-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- Blame to Jan Hubicka <jh@suse.cz>
- * cfglayout.c (record_effective_endpoints): Split insns before
- first basic block correctly.
-
-2003-07-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case COMPONENT_REF): When seeing if should use
- bitfield operations, use STRICT_ALIGNMENT, not SLOW_UNALIGNED_ACCESS
- if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
-
-2003-07-05 Andreas Jaeger <aj@suse.de>
-
- * genattrtab.c (write_attr_get): Revert part of last patch to
- always write out a prototype.
-
- * genemit.c (gen_split): Readd lost unused attributes in last
- patch.
-
-2003-07-05 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfgloopmanip.c (force_single_succ_latches): Force latch to be
- different from header.
-
-2003-07-05 Andreas Schwab <schwab@suse.de>
-
- * config/m68k/m68k.c: Remove code protected by CRDS.
- * config/m68k/m68k.md: Likewise.
-
-2003-07-05 Neil Booth <neil@daikokuya.co.uk>
-
- PR driver/11417
- * c-opts.c (permit_fortran_options): New.
- (c_common_init_options): Accept fortran front end options if
- it looks like we might be preprocessing Fortran.
- (c_common_handle_option): Don't reject switch if permit_fotran_options.
-
-2003-07-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * genattr.c (internal_dfa_insn_code): Output prototype.
- * genattrtab.c: Don't output unnecessary decls, output in ISO C.
- * genautomata.c: Likewise.
- * genconditions.c: Likewise.
- * genemit.c: Likewise.
- * genextract.c: Likewise.
- * gengenrtl.c: Likewise.
- * gengtype.c: Likewise.
- * genopinit.c: Likewise.
- * genoutput.c: Likewise.
- * genpeep.c: Likewise.
- * genrecog.c: Likewise.
-
-2003-07-04 Zack Weinberg <zack@codesourcery.com>
-
- * cpplib.h (CPP_AT_NAME, CPP_OBJC_STRING): New token types.
- (struct cpp_options): Add narrow_charset, wide_charset,
- bytes_big_endian fields. Remove EBCDIC field.
- (cpp_init_iconv, cpp_interpret_string): New external interfaces.
-
- * cpphash.h: Include <iconv.h> if we have it, otherwise
- provide a dummy definition of iconv_t.
- (struct cpp_reader): Add narrow_cset_desc and wide_cset_desc fields.
- (_cpp_valid_ucn): Update prototype.
- (_cpp_destroy_iconv): New prototype.
-
- * doc/cpp.texi: Document character set handling.
- * doc/cppopts.texi: Document -fexec-charset= and -fexec-wide-charset=.
- * doc/extend.texi: Delete entire section on multiline strings.
- Rewrite section on __FUNCTION__ etc now that these are
- variables in C.
-
- * cppucnid.tab, cppucnid.pl: New files.
- * cppucnid.h: New generated file.
- * cppcharset.c: Include cppucnid.h. Lots of commentary added.
- (iconv_open, iconv, iconv_close): Provide dummy definitions
- if !HAVE_ICONV.
- (SOURCE_CHARSET, struct strbuf, init_iconv_desc, cpp_init_iconv,
- _cpp_destroy_iconv, convert_cset, width_to_mask, convert_ucn,
- emit_numeric_escape, convert_hex, convert_oct, convert_escape,
- cpp_interpret_string, narrow_str_to_charconst,
- wide_str_to_charconst): New.
- (ucn_valid_in_identifier): Use a binary search through the
- ucnranges table defined in cppucnid.h, not a long chain of if
- statements.
- (_cpp_valid_ucn): Add a limit pointer. Downgrade "universal
- character names are only valid in C++ and C99" to a warning.
- Issue the "meaning of \[uU] is different in traditional C"
- warning here. Take care not to let iconv see an invalid UCS
- value if we get a malformed UCN. Issue an error if we don't
- have iconv.
- (cpp_interpret_charconst): Moved here from cpplex.c. Use
- cpp_interpret_string to do the heavy lifting.
-
- * cppinit.c (cpp_create_reader): Initialize bytes_big_endian,
- narrow_charset, wide_charset fields of options structure.
- (cpp_destroy): Call _cpp_destroy_iconv.
- * cpplex.c (forms_identifier_p): Adjust call to _cpp_valid_ucn.
- (maybe_read_ucn, hex_digit_value, cpp_parse_escape): Delete.
- (cpp_interpret_charconst): Moved to cppcharset.c.
- * cpplib.c (dequote_string): Delete.
- (interpret_string_notranslate): New.
- (do_line, do_linemarker): Use interpret_string_notranslate.
-
- * Makefile.in (cppcharset.o): Depend on cppucnid.h.
-
- * c-common.c (fname_string, combine_strings): Delete.
- * c-common.h (fname_string, combine_strings): Delete prototypes.
- * c-lex.c (ignore_escape_flag): Delete.
- (cb_ident): Use cpp_interpret_string, not lex_string.
- (get_nonpadding_token): New function.
- (c_lex): Handle Objective-C @-prefixed identifiers and strings here.
- Adjust calls to lex_string. Don't write *value twice.
- (lex_string): Now handles string constant concatenation.
- Most of the work handed off to cpp_interpret_string.
- Call fix_string_type here.
- * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): Replace with
- FUNC_NAME, throughout.
- (OBJC_STRING): New token type.
- (primary:STRING): No need to call fix_string_type here.
- (primary:objc_string): Make that OBJC_STRING.
- (objc_string nonterminal): Delete.
- (yylexname): Delete code to handle fake string constants.
- (yylexstring): Delete entirely.
- (_yylex): Handle CPP_AT_NAME and CPP_OBJC_STRING. No need
- to handle CPP_ATSIGN.
-
- * c.opt (-fexec-charset=, -fwide-exec-charset=): New options.
- * c-opts.c (missing_arg, c_common_handle_option): Handle
- OPT_fexec_charset_ and OPT_fwide_exec_charset_.
- (c_common_init): Set cpp_opts->bytes_big_endian, not
- cpp_opts->EBCDIC. Call cpp_init_iconv.
- (print_help): Document -fexec-charset= and -fexec-wide-charset=.
- (TARGET_EBCDIC): Delete default definition.
-
- * objc/objc-act.c (build_objc_string_object): No need to
- handle string constant concatenation.
-
-2003-07-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/install.texi: Fix typos.
- * doc/invoke.texi: Likewise.
- * doc/tm.texi: Likewise.
-
-2003-07-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/pa/fptr.c: Fix comment typos.
- * config/pa/pa-64.h: Likewise.
- * config/pa/pa.c: Likewise.
- * config/pa/pa.h: Likewise.
- * config/rs6000/603.md: Likewise.
- * config/rs6000/7xx.md: Likewise.
- * config/rs6000/darwin.h: Likewise.
- * config/rs6000/freebsd.h: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/rs6000/rs6000.md: Likewise.
- * config/rs6000/spe.h: Likewise.
-
-2003-07-04 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/2064.md: Change GNU CC to GCC.
- * config/s390/2084.md: Likewise.
- * config/s390/fixdfdi.h: Likewise.
- * config/s390/linux.h: Likewise.
- * config/s390/s390-modes.def: Likewise.
- * config/s390/s390-protos.h: Likewise.
- * config/s390/s390.c: Likewise.
- * config/s390/s390.h: Likewise.
- * config/s390/s390.md: Likewise.
- * config/s390/s390x.h: Likewise.
-
-2003-07-04 Jeff Law <law@redhat.com>
-
- PR c/11428
- * expr.c (do_store_flag): Pass in the correct result type
- when calling fold_single_bit_test.
- * fold-const.c (fold_single_bit_test): Use result_type for the
- result when folding a sign bit test.
-
-2003-07-04 Neil Booth <neil@daikokuya.co.uk>
-
- * opts.c (common_handle_options): Negate sense of -falign- switches.
-
-2003-07-04 H.J. Lu <hongjiu.lu@intel.com>
-
- * Makefile.in: Replace PWD with PWD_COMMAND.
-
-2003-07-04 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfgloopanal.c (count_strange_loop_iterations): New static function.
- (constant_iterations, count_loop_iterations, simple_loop_exit_p):
- Handle strange loops.
-
-2003-07-04 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * install.texi: Even the g77 manpage is derived from
- the full g77 manual.
-
-2003-07-04 Zack Weinberg <zack@codesourcery.com>
-
- * ABOUT-NLS: Delete.
- * intl: Delete entire directory.
- * aclocal.m4: Include ../config/gettext.m4. Delete
- AC_ISC_POSIX, AM_LANGINFO_CODESET, jm_GLIBC21, AM_LC_MESSAGES,
- AM_PATH_PROG_WITH_TEST, AM_WITH_NLS, and AM_GNU_GETTEXT.
- * configure.in: Use CY_GNU_GETTEXT, not AM_GNU_GETTEXT.
- Remove intl/Makefile from all_outputs.
- * configure, config.in: Regenerate.
- * Makefile.in: Expunge all references to intl subdirectory.
- Add -I../intl to INCLUDES.
- * intl.h: Include libintl.h if and only if ENABLE_NLS is defined.
-
-2003-07-04 Roger Sayle <roger@eyesopen.com>
-
- * config/rs6000/aix51.h (TARGET_C99_FUNCTIONS): Define.
- * config/rs6000/aix52.h (TARGET_C99_FUNCTIONS): Likewise.
-
-2003-07-04 Danny Smith <dannysmith@users.sourceforge.net>
-
- PR c++/5287, PR c++/7910, PR c++/11021
- * config/i386/winnt.c (ix86_handle_dll_attribute): Don't add
- dllimport attribute if function is defined at declaration, but
- report error instead. Likewise for dllimport'd variable
- definitions. Set implicit TREE_PUBLIC for dllimport'd variables
- declared within functions, Report error if dllimport or dllexport
- symbol is not global.
- (i386_pe_dllimport_p): Ignore dllimport attribute of functions
- if defined after declaration or if inlined. Don't allow definition
- of static data members of C++ classes. Don't dllimport virtual
- methods.
- (i386_pe_mark_dllexport): Warn about inconsistent dll attributes.
- (i386_pe_mark_dllimport): Remove unnecessary checks.
- (i386_pe_encode_section_info): Warn if the dllimport attribute
- and symbol prefix have been instantiated and then overridden.
-
- * doc/extend.texi: Document dllimport and dllexport attributes.
-
- * config/i386/winnt.c (i386_pe_output_labelref): Fix indents.
-
-2003-07-03 Uwe Stieber <uwe@kaos-group.de>
-
- * config/kaos.h (CPP_PREDEFINES): Delete.
- (TARGET_OS_CPP_BUILTINS): New.
-
-2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-aux-info.c: Include toplev.h after c-tree.h.
- * c-common.c: Likewise.
- (GCC_DIAG_STYLE): Undef.
- * c-semantics.c (GCC_DIAG_STYLE): Define.
- * c-tree.h (GCC_DIAG_STYLE): Likewise.
- * diagnostic.h (inform): Move prototype to toplev.h.
- * jump.c: Include diagnostic.h before toplev.h.
- * toplev.h (GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG): Define.
- (warning, error, fatal_error, pedwarn, sorry, inform,
- error_for_asm, warning_for_asm): Mark with ATTRIBUTE_GCC_CXXDIAG.
-
-2003-07-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfglayout.c (cfg_layout_duplicate_bb): Do not update frequencies
- at all if edge is not specified.
- (can_copy_bbs_p, copy_bbs): New.
- * cfglayout.h (can_copy_bbs_p, copy_bbs): Declare.
- * cfgloop.c (get_loop_body): Comment more precisely.
- * cfgloopmanip.c (copy_bbs, record_exit_edges): Removed.
- (scale_bbs_frequencies): Fix comment typo.
- (can_duplicate_loop_p): Use can_copy_bbs_p.
- (duplicate_loop_to_header_edge): Simplify by using copy_bbs.
-
-2003-07-03 Devang Patel <dpatel@apple.com>
-
- * c-opts.c (c_common_parse_file): Remove extra
- debug_hooks->start_source_file call.
-
-2003-07-03 Roger Sayle <roger@eyesopen.com>
-
- * real.c (real_trunc, real_floor, real_ceil): New functions
- to implement trunc, floor and ceil respectively.
- * real.h (real_trunc, real_floor, real_ceil): Prototype here.
- * builtins.c (integer_valued_real_p): New function to test if
- a floating point expression has an integer valued result.
- (fold_trunc_transparent_mathfn): Optimize foo(foo(x)) as
- foo(x) where foo is an integer rounding function. Similarly,
- optimize foo(bar(x)) as bar(x), and foo((double)(int)x) as
- (double)(int)x when both foo and bar are integer rounding
- functions and we don't need to honor errno.
- (fold_builtin_trunc, fold_builtin_floor, fold_builtin_ceil):
- New functions to fold trunc, floor and ceil.
- (fold_builtin): Use fold_builtin_trunc to fold BUILT_IN_TRUNC*,
- fold_builtin_floor to fold BUILT_IN_FLOOR* and fold_builtin_ceil
- to fold BUILT_IN_CEIL*.
- * fold-const.c (tree_expr_nonnegative_p): Handle FLOAT_EXPR and
- the remaining integer rounding functions.
-
-2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_partial_nregs): Use
- SPARC_INT_ARG_MAX to determine where to split unnamed
- complex FP arguments.
-
-2003-07-03 Jan Hubicka <jh@suse.cz>
-
- * basic-block.h (create_basic_block, merge_blocks_nomove): Kill.
- * cfgcleanup.c (merge_blocks): Rename to merge_blocks_move.
- (merge_blocks_move_predecessor_nojumps,
- merge_blocks_move_successor_nojumps): Use merge_blocks.
- (try_optimize_cfg): Use merge_blocks_move.
- * cfgrtl.c (create_basic_block): Rename to rtl_create_basic_block.
- (merge_blocks_nomove): Rename to rtl_merge_blocks.
- (cfg_layout_create_basic_block): New.
- (rtl_can_merge_blocks): New.
- (cfg_layout_split_block): Do not alloc aux by hand.
- * cfghooks.h (cfg_hooks): Add create_basic_block, can_merge_blocks_p,
- merge_blocks.
- (create_basic_block, can_merge_blocks_p, merge_blocks): New macros.
- * cfglayout.c (cfg_layout_duplicate_bb): Do not allocate aux by hand.
- * cfgloopmanip.c (loop_split_edge_with): Likewise.
- * ifcvt.c (merge_if_block): Use merge_blocks_nomove.
-
- * basic-block.h (basic_block_def): Add field 'rbi'.
- * bb-reorder.c (find_traces, rotate_loop, mark_bb_visited,
- find_traces_1_round, copy_bb, connect_traces): Update use of rbi.
- * cfg.c (entry_exit_blocks): Add new field.
- * cfglayout.c: Include alloc-pool.h;
- (cfg_layout_pool): New.
- (record_effective_endpoints, fixup_reorder_chain,
- fixup_fallthru_exit_predecessor, cfg_layout_duplicate_bb): Update use
- of rbi.
- (cfg_layout_initialize_rbi): New function.
- (cfg_layout_initialize): Use it.
- (cfg_layout_finalize): Clear rbi fields.
- * cfglayout.h (RBI): Kill.
- (cfg_layout_initialize_rbi): Declare.
- * cfgloopmanip.c (copy_bbs): Use rbi.
- (record_exit_edges): Likewise.
- (duplicate_loop_to_header_edge): Likewise.
- * cfgrtl.c (cfg_layout_create_basic_block): Use
- cfg_layout_initialize_rbi.
- (cfg_layout_split_block): Use rbi.
- (cfg_layout_delete_block): Likewise.
- * loop-init.c (loop_optimizer_finalize): Likewise.
- * loop-unswitch.c (unswitch_loop): Likewise.
- * tracer.c (seen, tail_duplicate, layout_superblocks): Likewise.
-
- * cfgrtl.c: Update comments.
- (try_redirect_by_replacing_jump): New argument.
- (redirect_branch_edge): Break out from ...
- (rtl_redirect_edge_and_branch): ... this one.
- (update_cfg_after_block_merging): Break out from ...
- (rtl_merge_blocks): ... this one.
- (cfg_layout_split_edge): New.
- (cfg_layout_merge_blocks): New.
- (cfg_layout_can_merge_blocks_p): New.
- (cfg_layout_redirect_edge_and_branch): Reorganize.
- (cfg_layout_rtl_cfg_hooks): Fill in.
- (cfg_layout_delete_block): Kill barriers.
- * cfganal.c (can_fallthru): Deal with exit blocks
- * cfglayout.c (cfg_layout_function_header): New function
- (record_effective_endpoints): Record function header.
- (fixup_reorder_chain): Fixup dead jumptables; place header
-
- * basic-block.h (CLEANUP_CFGLAYOUT): New flag.
- * bb-reorder.c (cfg_layout_initialize): Update call.
- * cfgcleanup.c (try_optimize_cfg): Supress optimizations of fallthru
- edges in cfglayout mode.
- * cfglayout.c (cleanup_unconditional_jumps): Kill.
- (cfg_layout_initialize): Kill agrument loops; use cfgcleanup.
- * cfglayout.h (cfg_layout_initialize): Update prototype.
- * cfgloop.h (CP_INSIDE_CFGLAYOUT): Kill.
- * cfgloopmanip.c (loop_split_edge_with): Use split_edge.
- * flow.c (propagate_block): Do not crash when basic block ends
- by first insn in the chain.
- * loop-init.c (loop_optimizer_init): First enter cfglayout mode; later
- do loop discovery.
- * tracer.c (tracer): Update call of cfg_layout_initialize.
-
-2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in: Use dependency variables in lieu of explicit
- files throughout.
-
-2003-07-03 Steven Bosscher <steven@gcc.gnu.org>
-
- * rtl.h (ECF_*, flags_from_decl_or_type): Move from here...
- * tree.h: ...to here.
-
-2003-07-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/s390/2064.md: Fix comment typos.
- * config/s390/2084.md: Likewise.
- * config/s390/s390.c: Likewise.
- * config/s390/s390.md: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sh/sh.h: Likewise.
- * config/sh/sh.md: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/sparc/sparc.md: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/stormy16/stormy16.h: Likewise.
- * config/stormy16/stormy-abi: Fix a typo.
-
-2003-07-03 Kelley Cook <kelleycook@wideopenwest.org>
-
- * Makefile.in (ifcvt.o): Depend on OPTABS_H.
-
-2003-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/mips/mips.h (save_argv): Delete.
-
-2003-07-03 Roger Sayle <roger@eyesopen.com>
-
- PR target/10700
- * fold-const.c (extract_muldiv_1): There's nothing that can be done
- if the expression is a SAVE_EXPR.
-
-2003-07-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.c: Fix comment typos.
- * config/m68hc11/m68hc11.c: Likewise.
- * config/m68hc11/m68hc11.h: Likewise.
- * config/m68k/m68k.c: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mcore/mcore.h: Likewise.
- * config/mcore/mcore.md: Likewise.
- * config/mips/mips.c: Likewise.
- * config/mips/mips.h: Likewise.
- * config/mips/mips.md: Likewise.
- * config/mips/netbsd.h: Likewise.
- * config/mn10300/mn10300.c: Likewise.
-
-2003-07-03 Andreas Schwab <schwab@suse.de>
-
- * dbxout.c (pending_bincls): Move decl down inside
- DBX_DEBUGGING_INFO || XCOFF_DEBUGGING_INFO section.
-
-2003-07-02 Nathan Sidwell <nathan@codesourcery.com>
-
- * rtl.h (NOTE_DATA): Refer to whole union.
- * emit-rtl.c (emit_note): Use memset to clear NOTE_DATA.
-
-2003-07-03 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11381
- * simplify-rtx.c (simplify_relational_operation): Check that
- two equal operands have no side-effects before simplifying
- the comparison.
-
-2003-07-02 Jeff Law <law@redhat.com>
-
- * expr.c (do_store_flag): Remove special case folding for
- single bit tests. Instead call back into the commonized folder
- routine.
- * fold-const.c (fold_single_bit_test): New function, mostly
- extracted from do_store_flag, with an additional case extracted
- from fold.
- (fold): Call fold_single_bit_test appropriately.
- * tree.h (fold_single_bit_test): Prototype.
-
-2003-07-02 Zack Weinberg <zack@codesourcery.com>
-
- * system.h: Include filenames.h.
- (IS_DIR_SEPARATOR, IS_ABSOLUTE_PATHNAME): Don't define.
- (DIR_SEPARATOR, DIR_SEPARATOR_2): If not already defined,
- define based on HAVE_DOS_BASED_FILE_SYSTEM.
- * config/i386/xm-cygwin.h, config/i386/xm-djgpp.h
- * config/i386/xm-mingw32.h: Don't define
- HAVE_DOS_BASED_FILE_SYSTEM,
- DIR_SEPARATOR, or DIR_SEPARATOR_2.
- * doc/hostconfig.texi: Update to match.
-
- * cppfiles.c, gcc.c, gensupport.c, protoize.c,
- config/i386/cygwin.h:
- Use IS_ABSOLUTE_PATH throughout.
- * gcc.c (DIR_UP): Delete, unused.
- * protoize.c (IS_SAME_PATH): Define in terms of
- FILENAME_CMP.
- (is_abspath): Delete.
-
-2003-07-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/emmintrin.h: Fix comment typos.
- * config/i386/i386.c: Likewise.
- * config/i386/i386.h: Likewise.
- * config/i386/sco5.h: Likewise.
- * config/ia64/ia64.c: Likewise.
- * config/ia64/itanium2.md: Likewise.
-
-2003-07-02 H.J. Lu <hongjiu.lu@intel.com>
-
- * dbxout.c (pending_bincls): Replace DBX_USE_BINCLS with
- DBX_USE_BINCL.
- (emit_bincl_stab): Same.
- (emit_pending_bincls): Same.
-
-2003-07-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (compute_mov_length): Fix the length of
- loading CONST0_RTX (SFmode).
- * config/h8300/h8300.h (CONST_DOUBLE_OK_FOR_LETTER_P): Change
- 'G' to CONST0_RTX (SFmode).
- * config/h8300/h8300.md (movsf_h8300): Change the first
- constraint to 'G'.
- (movsf_h8300h): Likewise.
-
-2003-07-02 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.h (c_common_init_options): New prototype.
- * c-opts.c (deferred_size): Remove.
- (defer_opt): Array is now pre-allocated.
- (c_common_init_options): Pre-allocate deferred_opts. Make
- lang_flags unsigned.
- (push_command_line_options): Free deferred_opts.
- * hooks.c (hook_uint_uint_constcharptrptr_0): New.
- * hooks.h (hook_uint_uint_constcharptrptr_0): New.
- * langhooks-def.h (LANG_HOOKS_INIT_OPTIONS): Update.
- * langhooks.h (struct lang_hooks): New prototype for init_options.
- * main.c (main): Cast argv.
- * opts.c (handle_option, handle_options): Update prototypes.
- (decode_options): save_argc, save_argv are not global. Constify.
- * opts.h (decode_options): New prototype.
- * toplev.c (general_init): New protoype.
- (save_argv): Make static.
- (save_argc): Remove.
- (print_switch_values, general_init): Constify.
- (toplev_main): Save argv.
- * toplev.h (toplev_main): Update prototype.
- (save_argc, save_argv): Remove.
-
-2003-07-02 David Edelsohn <edelsohn@gnu.org>
-
- * dbxout.c (pending_bincls): Guard with DBX_USE_BINCLS.
- (emit_bincl_stab): Same.
- (emit_pending_bincls): Same.
-
-2003-07-02 Nathan Sidwell <nathan@codesourcery.com>
-
- PR c++/11072
- * ginclude/stddef.h (offsetof): Remove cast to 'char &'. Explain why.
-
-2003-07-02 Andreas Schwab <schwab@suse.de>
-
- * dbxout.c (pending_bincls): Only define if DBX_DEBUGGING_INFO.
-
-2003-07-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/11210
- * expr.c (handled_component_p) [NOP_EXPR]: Add ??? note
- about the behaviour with regard to bitfields.
- * fold-const (decode_field_reference): Record outermost type in
- case the expression is a NOP. Strip all NOPs. Set the signedness
- to that of the outermost type (if any) when the bitsize is equal
- to the size of the type.
-
-2003-07-02 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (addsi3): Remove workaround for adds of -32768.
- (addsi3_internal, adddi3, adddi3_internal_2): Likewise.
- (adddi3_internal_3, addsi3_internal_2): Likewise.
-
-2003-07-02 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (machine_function): Add new fields:
- ignore_hazard_length_p and all_noreorder_p.
- (mips_flag_delayed_branch): New variable.
- (override_options): Treat '/' as an operand punctuation character.
- Set up mips_flag_delayed_branch.
- (print_operand): Handle '/'.
- (mips_output_function_prologue): Put the whole function in
- .set noreorder and .set nomacro if all_noreorder_p is true.
- (mips_output_function_epilogue): End the noreorder/nomacro sequence.
- (mips16_optimize_gp): Remove "first insn" parameter.
- (mips16_lay_out_constants): New function, split out from mips_reorg.
- (mips_avoid_hazard, mips_avoid_hazards): New functions.
- (mips_reorg): For mips16 code, call mips16_lay_out_constant
- and (optionally) mips16_optimize. If TARGET_EXPLICIT_RELOCS,
- do delayed-branch scheduling followed by hazard detection.
- (mips_adjust_insn_length): Only account for hazards if
- !ignore_hazard_length_p.
- (mips_output_load_label): Add a nop to the o32 sequence if
- the target suffers from load delays.
- (mips_output_conditional_branch): Add %/ to the end of branches.
- (mips_output_division): Fill the branch delay slot with %#.
- * config/mips/mips.md: Remove redundant '%*' from mips16 branch
- instructions. End all other %* branches with %/.
- (ffssi2, ffsdi2): Fix lengths.
- (truncdisi2, truncdihi2, truncdiqi2): Add store attributes.
- (fix_truncdfsi2_macro): Turn off .set nomacro if appropriate.
- (fix_truncsfsi2_macro): Likewise.
- (mov_lwl): Set hazard to "none".
- (ashldi3_internal): Fill the branch delay slot with %#.
- (ashrdi3_internal, lshrdi3_internal): Likewise.
- (exception_receiver): Explicitly set $28.
- (hazard_nop): New pattern.
-
-2003-07-02 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_finalize_unit): Set current_function_decl
- before calling tree_inlinable_function_p.
-
-2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (irix_stdio_va_list): Apply to IRIX 6.5
- <internal/stdio_core.h> too.
- (stdio_va_list): Apply to IRIX 6.5 <internal/stdio_core.h> and
- <internal/wchar_core.h> too.
- Substitute va_list uses in inline definition.
- * fixinc/fixincl.x: Regenerate.
-
-2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris5.h (SET_FILE_NUMBER): Moved here from iris3.h.
- Undef before redefinition.
- (LABEL_AFTER_LOC): Likewise.
- (DEFAULT_SIGNED_CHAR): Likewise.
- (ASM_OUTPUT_ASCII): Moved here from iris4.h.
- Fix IRIX spelling.
-
- * config/mips/iris3.h: Remove, unused.
- * config/mips/iris4.h: Likewise.
-
- * config/mips/mips.h (STACK_ARGS_ADJUST): Remove, unused.
-
- * config/mips/iris5.h (TARGET_DEFAULT): Move ...
- * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here to
- target_cpu_default.
-
- * config/mips/iris5.h: Move explicit includes ...
- * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): ... here.
-
- * config/mips/iris6.h (MIPS_ISA_DEFAULT, MIPS_ABI_DEFAULT): Move ...
- * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
- tm_defines.
-
- * config/mips/iris6.h (TARGET_DEFAULT): Move ...
- * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here to
- target_cpu_default.
-
- * config/mips/iris6.h: Fix IRIX spelling.
- (MULTILIB_DEFAULTS): Undef before redefinition.
-
- * config/mips/iris6.h: Move explicit includes ...
- * config.gcc (mips-sgi-irix6*, mips-sgi-irix5cross64): ... here.
-
-2003-07-02 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_mark_needed_node, cgraph_varpool_mark_needed_node,
- cgraph_varpool_finalize_decl, cgraph_varpool_assemble_pending_decls):
- Use next_needed field instead of aux to maintain the queue.
- * cgraph.h (cgraph_node): Add next_needed.
- (cgraph_varpool_node): Add next_needed; remove aux.
- * cgraphunit.c (cgraph_finalize_compilation_unit): Use next_needed.
-
-2003-07-02 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_finalize_function): Set finalized.
- (cgraph_finalize_function): Do not examine inlinablility.
- (cgraph_finalize_compilation_unit): Do it here.
- * cgraph.h (cgraph_local_info): Add finalized field.
-
-2003-07-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * ggc-common.c (gt_pch_save): Cast MAP_FAILED to void *.
- (gt_pch_restore): Likewise.
-
-2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.c: Fix comment typos.
- * config/alpha/elf.h: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/arm.h: Likewise.
- * config/arm/arm.md: Likewise.
- * config/arm/t-arm-coff: Likewise.
- * config/arm/t-strongarm-pe: Likewise.
- * config/arm/xscale-elf.h: Likewise.
- * config/avr/avr.h: Likewise.
-
-2003-07-01 Jeff Law <law@redhat.com>
-
- * stmt.c (any_pending_cleanups): Remove another redundant test.
-
-2003-07-01 David Edelsohn <edelsohn@gnu.org>
- J"orn Rennecke <joern.rennecke@superh.com>
-
- * config/rs6000/rs6000.md (ctr{s,d}i_internal?): Add earlyclobber
- for MEM case.
-
-2003-07-01 Devang Patel <dpatel@apple.com>
-
- * dbxout.c (DBXOUT_DECR_NESTING): Emit pending bincls, if required.
- (binclstatus): New.
- (struct dbx_file): New members - bincl_status, pending_bincl_name and
- prev.
- (pending_bincls): New.
- (dbxout_init): Initialize new dbx_file members.
- (dbxout_start_source_file): Same.
- (emit_bincl_stab): New function.
- (emit_pending_bincls): Same.
- (emit_pending_bincls_if_required): Same.
- (dbxout_end_source_file): Emit EINCL stab only if BINCL is already
- processed.
- (dbxout_begin_block): Emit pending BINCL stabs.
- (dbxout_end_block): Same.
- (dbxout_function_decl): Same.
- (dbxout_continue): Same.
- (dbxout_type): Same.
- (dbxout_class_name_qualifiers): Same.
- (dbxout_symbol): Same.
- (dbxout_symbol_location): Same.
- (dbxout_parms): Same.
-
-2003-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-semantics.c (genrtl_case_label): Fix format specifier bug.
- * cfgrtl.c (rtl_verify_flow_info_1): Likewise.
-
-2003-07-01 Andreas Jaeger <aj@suse.de>
-
- * fold-const.c: Convert prototypes to ISO C90.
- * function.c: Likewise.
- * function.h: Likewise.
-
-2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/contrib.texi: Fix typos.
- * doc/invoke.texi: Likewise.
- * doc/passes.texi: Likewise.
- * doc/sourcebuild.texi: Likewise.
- * doc/tm.texi: Likewise.
-
-2003-07-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * basic-block.h: Fix comment typos.
- * bb-reorder.c: Likewise.
- * c-format.c: Likewise.
- * cfgcleanup.c: Likewise.
- * cfghooks.h: Likewise.
- * cfgloop.c: Likewise.
- * cfgloopmanip.c: Likewise.
- * cfgrtl.c: Likewise.
- * cgraph.h: Likewise.
- * cgraphunit.c: Likewise.
- * combine.c: Likewise.
- * convert.c: Likewise.
- * dbxout.c: Likewise.
- * df.c: Likewise.
- * df.h: Likewise.
- * diagnostic.c: Likewise.
- * dwarf2out.c: Likewise.
- * et-forest.h: Likewise.
- * flow.c: Likewise.
- * fold-const.c: Likewise.
- * function.h: Likewise.
- * gcov-io.h: Likewise.
- * gcov.c: Likewise.
- * gcse.c: Likewise.
- * genautomata.c: Likewise.
- * ggc-common.c: Likewise.
- * ggc-page.c: Likewise.
- * loop-unroll.c: Likewise.
- * loop-unswitch.c: Likewise.
- * loop.c: Likewise.
- * mips-tfile.c: Likewise.
- * optabs.c: Likewise.
- * ra-build.c: Likewise.
- * ra-colorize.c: Likewise.
- * ra-rewrite.c: Likewise.
- * ra.h: Likewise.
- * regmove.c: Likewise.
- * reload.c: Likewise.
- * rtlanal.c: Likewise.
- * sched-ebb.c: Likewise.
- * sched-int.h: Likewise.
- * sched-vis.c: Likewise.
- * sreal.c: Likewise.
- * ssa-ccp.c: Likewise.
- * ssa.c: Likewise.
- * toplev.c: Likewise.
- * tree-inline.c: Likewise.
- * value-prof.c: Likewise.
- * value-prof.h: Likewise.
-
-2003-07-01 Nathan Sidwell <nathan@codesourcery.com>
-
- * rtl.h (emit_line_note_after): Remove.
- (emit_note_copy_after, emit_note_copy): New.
- * emit-rtl.c (reorder_insns_with_line_notes): Replace
- emit_line_note_after with emit_note_copy_after.
- (emit_insn_after_with_line_notes): Likewise.
- (emit_line_note_after): Kill.
- (emit_note_copy_after): New.
- (emit_note_copy): New.
- * function.c (emit_return_into_block): Use emit_note_copy_after.
- (thread_prologue_and_epilogue_insns): Likewise.
- * integrate.c (expand_inline_function): Use emit_note_copy.
- (copy_insn_list): Likewise.
- * unroll.c (copy_loop_body): Likewise.
- * cfglayout.c (duplicate_insn_chain): Likewise.
-
-2003-07-01 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-tree.h (define_label): Replace filename and lineno arguments
- with a location_t.
- * c-decl.c (poplevel): Adjust define_label call.
- (pop_label_level): Likewise.
- (define_label): Replace filename and lineno arguments with a
- location_t.
- (store_parm_decls): Use DECL_SOURCE_LOCATION.
- * c-parse.in (label): Adjust define_label call.
-
-2003-07-01 Neil Booth <neil@daikokuya.co.uk>
-
- * config/sol2.h, config/alpha/alpha.h, config/alpha/linux.h,
- config/i386/i386-interix.h, config/ia64/hpux.h, config/mips/iris6.h,
- config/mips/linux.h, config/mips/mips.h, config/pa/pa-hpux.h,
- config/pa/pa-hpux10.h, config/pa/pa-hpux11.h, config/pa/pa-pro-end.h,
- config/pa/pa.h, config/pa/rtems.h: Use c_dialect_ macros.
-
-2003-07-01 Andreas Jaeger <aj@suse.de>
-
- * final.c: Convert prototypes to ISO C90.
- * flow.c: Likewise.
- * flags.h: Likewise.
- * gcov-io.c: Likewise.
- * gcov-io.h: Likewise.
-
-See ChangeLog.9 for earlier changes.
diff --git a/gcc/ChangeLog.11 b/gcc/ChangeLog.11
deleted file mode 100644
index 92a4d69b804..00000000000
--- a/gcc/ChangeLog.11
+++ /dev/null
@@ -1,21016 +0,0 @@
-2004-06-30 Roger Sayle <roger@eyesopen.com>
-
- * expmed.c (expand_shift): Consider expanding LSHIFT_EXPR by a
- constant as a sequence of additions depending upon the rtx_costs.
- (synth_mult): Update the "observed" cost of a shift, based upon
- the above optimization.
-
-2004-06-28 Geoffrey Keating <geoffk@apple.com>
- Andreas Tobler <a.tobler@schweiz.ch>
-
- PR 15813
- * dwarf2out.c (reg_save): Output DW_CFA_same_value when a
- register is saved in itself.
- (initial_return_save): If the return address is a register,
- it's already there, don't bother to mention it in the CFI.
- (struct queued_reg_save): Add field saved_reg.
- (struct reg_saved_in_data): New.
- (regs_saved_in_regs): New.
- (num_regs_saved_in_regs): New.
- (queue_reg_save): Add extra parameter to specify register saved
- in register. Remove duplicate entries from queue. Add comment
- for function.
- (flush_queued_reg_saves): Handle registers saved in registers.
- Update regs_saved_in_regs. Add comment for function.
- (clobbers_queued_reg_save): Add comment for function. Allow
- for regs_saved_in_regs.
- (reg_saved_in): New.
- (dwarf2out_frame_debug_expr): Handle saving registers in other
- registers.
- (dwarf2out_frame_debug): Reset regs_saved_in_regs.
- * unwind-dw2.c (execute_cfa_program): Correct handling of
- DW_CFA_same_value. Add FIXME comment about incorrect implementation
- of DW_CFA_restore_extended.
- * config/rs6000/rs6000.c (rs6000_emit_prologue): Let
- dwarf2out_frame_debug_expr see instructions that save registers
- in other registers or save those other registers in memory.
-
- * unwind-dw2.c (DWARF_FRAME_REGISTERS): Move to unwind-dw2.h.
- (_Unwind_FrameState): Likewise.
- * unwind-dw2.h: New.
- * Makefile.in (LIB2ADDEHDEP): Add unwind-dw2.h.
- * config/rs6000/darwin-fallback.c: New file.
- * config/rs6000/darwin.h (MD_FALLBACK_FRAME_STATE_FOR): Define.
- * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Add darwin-fallback.o.
-
-2004-07-01 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Rewrite.
- (function_arg): Use rs6000_arg_size rather than CLASS_MAX_NREGS in
- calculating gpr size for altivec. Simplify and correct
- rs6000_mixed_function_arg calls. Call rs6000_mixed_function_arg
- for ABI_V4 gpr case too. Fix off-by-one error in long double
- reg test. Generate the correct PARALLEL to handle long double
- for ABI_AIX 32-bit. Use this for -m32 -mpowerpc64 fpr case too.
- (function_arg_partial_nregs): Align before calculating regs left.
- Don't return info on partial fprs when we need info on gprs.
- Correct long double fpr off-by-one error.
-
-2004-06-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa-protos.h (prefetch_operand): Add prototype.
- * pa.c (prefetch_operand): New function.
- * pa.h (prefetch_operand): Add to PREDICATE_CODES.
- * pa.md (prefetch, prefetch_32, prefetch_64): New prefetch patterns.
-
-2004-06-30 Richard Henderson <rth@redhat.com>
-
- * function.h (struct function): Remove x_whole_function_mode_p.
- * c-decl.c (store_parm_decls): Don't set it.
- * tree-optimize.c (tree_rest_of_compilation): Likewise.
- * passes.c (rest_of_compilation): Don't check it.
- * stmt.c (expand_fixup): Likewise.
- * function.c (fixup_var_refs_insn): Remove unused variable.
-
-2004-06-30 Richard Henderson <rth@redhat.com>
-
- * tree.h (immediate_size_expand): Delete.
- * stor-layout.c (immediate_size_expand): Delete.
- (variable_size): Don't look at it.
- * c-decl.c (push_parm_decl): Don't frob immediate_size_expand.
- (start_function): Likewise.
- * cfgexpand.c (construct_exit_block): Likewise.
- * function.c (init_function_start, expand_function_end): Likewise.
- * tree-optimize.c (tree_rest_of_compilation): Likewise.
-
-2004-06-30 Richard Henderson <rth@redhat.com>
-
- * gimplify.c (gimplify_compound_lval): Take fallback argument
- instead of want_lvalue.
- (gimplify_call_expr): Take want_value argument instead of test
- function. Gimplify arguments to val only if reg_type; otherwise
- allow lvalue forms.
- (gimplify_expr): Update gimplify_compound_lval and gimplify_call_expr
- calls.
- * tree-gimple.c: Update GIMPLE grammer. Use true/false not 1/0.
- Tidy commentary globally.
- (get_call_expr_in): Remove RETURN_EXPR handling. Tidy.
- * tree-gimple.h (is_gimple_call_addr): Mark extern.
-
- * gimplify.c (gimplify_modify_expr_to_memcpy): Fix typo.
-
-2004-06-30 Richard Henderson <rth@redhat.com>
-
- * tree-gimple.c (right_assocify_expr): Kill
- (rationalize_compound_expr): Kill.
- * tree-gimple.h: Likewise.
- * tree-inline.c (expand_call_inline): Don't call it.
-
- * function.h (struct function): Remove x_last_parm_insn,
- inl_last_parm_insn.
- (last_parm_insn): Remove.
- * function.c (free_after_compilation): Don't clear them.
- (fixup_var_refs_insn, assign_parms): Don't set them.
-
- * function.c, rtl.h (get_first_nonparm_insn): Remove.
-
-2004-06-30 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-common.h (check_function_format): Remove first parameter.
- * c-format.c (format_check_context): Remove status.
- (check_format_info, check_format_info_main,
- maybe_read_dollar_number, avoid_dollar_number,
- finish_dollar_format_checking, check_format_types,
- check_function_format): Remove first parameter. Don't use
- status_warning.
- (check_format_arg): Don't use status_warning.
- (status_warning): Remove.
- * c-common.c (check_function_arguments): Update call to
- check_function_format.
-
-2004-06-30 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc-protos.h (output_cbranch): Constify return
- value.
- (output_v9branch): Likewise.
- (sparc_v8plus_shift): Likewise. Rename into output_v8plus_shift.
- * config/sparc/sparc.c (output_cbranch): Constify return value.
- Prettify output for delay slots.
- (output_v9branch): Likewise.
- (sparc_v8plus_shift): Constify return value. Rename into
- output_v8plus_shift.
- * config/sparc/sparc.md (ashldi3_v8plus): Adjust call to
- sparc_v8plus_shift.
- (ashrdi3_v8plus): Likewise.
- (lshrdi3_v8plus): Likewise.
- (call_address_struct_value_sp32): Prettify output for delay slots.
- (call_symbolic_struct_value_sp32): Likewise.
- (call_address_untyped_struct_value_sp32): Likewise.
- (call_symbolic_untyped_struct_value_sp32): Likewise.
-
-2004-06-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * common.opt (ftree-loop-optimize): New flag.
- * tree-flow.h (kill_redundant_phi_nodes): Declare.
- * tree-optimize.c (init_tree_optimization_passes): Add pass_loop.
- * tree-pass.h (pass_loop_init, pass_loop_done): Declare.
- * tree-ssa-loop.c (current_loops): New variable.
- (tree_loop_optimizer_init, gate_loop, tree_ssa_loop_init,
- tree_ssa_loop_done): New functions.
- (pass_loop, pass_loop_init, pass_loop_done): New passes.
- * tree-ssa.c (kill_redundant_phi_nodes): Export.
- * doc/invoke.texi (-ftree-loop-optimize): Document.
-
-2004-06-30 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * tree-ssa-loop-ch.c: New file.
- * Makefile.in (tree-ssa-loop-ch.o): Add.
- (tree-into-ssa.o): Add GGC_H dependency.
- * tree-cfg.c (tree_duplicate_bb): Copy virtual arguments.
- * tree-flow.h (rewrite_into_ssa): Declaration changed.
- (rewrite_ssa_into_ssa, compute_global_livein, duplicate_ssa_name):
- Declare.
- * tree-into-ssa.c: Include ggc.h.
- (struct def_blocks_d): Add phi_blocks field.
- (struct mark_def_sites_global_data): Add names_to_rename field.
- (struct ssa_name_info): New.
- (compute_global_livein): Export.
- (set_def_block, insert_phi_nodes, mark_def_sites, set_livein_block,
- insert_phi_nodes_1, rewrite_finalize_block, insert_phi_nodes_for,
- register_new_def, get_reaching_def, def_blocks_free,
- get_def_blocks_for, rewrite_into_ssa): Modified to work with
- rewrite_ssa_into_ssa.
- (get_ssa_name_ann, get_phi_state, set_phi_state, get_current_def,
- set_current_def, ssa_mark_def_sites_initialize_block,
- ssa_mark_phi_uses, ssa_mark_def_sites, duplicate_ssa_name,
- ssa_register_new_def, ssa_rewrite_initialize_block,
- ssa_rewrite_phi_arguments, ssa_rewrite_finalize_block,
- ssa_rewrite_stmt, rewrite_ssa_into_ssa, rewrite_all_into_ssa): New
- functions.
- (pass_build_ssa): Call rewrite_all_into_ssa.
- * tree-optimize.c (execute_todo, execute_one_pass,
- tree_rest_of_compilation): Allocate vars_to_rename only once.
- * tree-ssa-dom.c (tree_ssa_dominator_optimize): Provide parameter
- to rewrite_into_ssa.
- * tree-ssa-loop.c (should_duplicate_loop_header_p,
- mark_defs_for_rewrite, duplicate_blocks, do_while_loop_p,
- copy_loop_headers, gate_ch, pass_ch): Moved to tree-ssa-loop-ch.c.
- Use rewrite_ssa_into_ssa.
- * tree-ssa-operands.c (copy_virtual_operands): New function.
- * tree-ssa-operands.h (copy_virtual_operands): Declare.
- * tree.h (struct tree_ssa_name): Add aux field.
- (SSA_NAME_AUX): New macro to access it.
-
-2004-05-28 Aaron W. LaFramboise <aaronraolete36@aaronwl.com>
-
- * prefix.c (lookup_key): Cast buffer to LPBYTE.
-
-2004-06-30 Per Bothner <per@bothner.com>
-
- Conditionally compile support for --enable-mapped_location.
- * input.h: #include line-map.h for source_location typedef.
- (BUILTINS_LOCATION, UNKNOWN_LOCATION, expand_location,
- LOCATION_FILE, LOCATION_LINE): New macros and functions.
- (expanded_location, source_locus): New typedefs.
- (push_srcloc): Change parameter list if USE_MAPPED_LOCATION.
- * rtl.def (NOTE, ASM_OPERANDS): Modify specifcation, if
- USE_MAPPED_LOCATION.
- * rtl.h (NOTE_DELETED_LABEL_NAME): New macro.
- (NOTE_SOURCE_LOCATION, NOTE_EXPNDED_LOCATION, SET_INSN_DELETED):
- New conditional macros.
- (ASM_OPERANDS_SOURCE_FILE, ASM_OPERANDS_SOURCE_LINE): Replace
- by ASM_OPERANDS_SOURCE_LOCATION if USE_MAPPED_LOCATION.
- * tree.h (EXPR_LOCATION, SET_EXPR_LOCATION, EXPR_HAS_LOCATION,
- EXPR_LOCUS, SET_EXPR_LOCUS, EXPR_FILENAME, EXPR_LINENO,
- DECL_IS_BUILTIN): New macros, most depending on USE_MAPPED__LOCATION.
- (tree_exp): Change type of locus to use new source_locus typedef.
- * tree.c (build1_stat): Use SET_EXPR_LOCATION.
- (annotate_with_locus, annotate_with_file_line): Conditionalize.
- (expand_location): New function.
- * toplev.c (unknown_location): New static, when USE_MAPPED_LOCATION.
- (push_srcloc, pop_loc): Adjust parameter handling.
- (process_options): Don't set input_filename by itself.
- (lang_dependent_init): Save, set input_location to <built-in>.
- (warn_deprecated_use): Use expand_location.
-
- * basic-block.h (struct edge_def): Use new source_locus typedef.
- * c-common.c (fname_decl): Update save/clear/store of input_location.
- (c_do_switch_warnings): Update for USE_MAPPED_LOCATION case.
- * c-decl.c: Likewise.
- * c-dump.c (dump_stmt): Likewise.
- * c-gimplify.c (c-gimplify.c): Generalize using SET_EXPR_LOCATION.
- * c-lex.c (cb_line_change): If USE_MAPPED_LOCATION use token's src_loc
- to set input_location direction, rather than using linemap_lookup.
- (fe_file_change, cb_def_pragma): Again use source_location directly.
- * c-opts.c (saved_lineno): Remove static variable.
- (c_common_post_options, c_common_init): Don't bothner to save,
- clear and restore input_Location - now handled by lang_dependent_init.
- * function.c (init_function_start): Use new DECL_IS_BUILTIN macro.
- * xcoffout.c (xcoff_assign_fundamental_type_number): Likewise.
- * tree-mudflap.c (mf_file_function_line_tree): Take a location_t
- rather than a pointer to one. Use expand_location.
- (mf_varname_tree): Use expand_location.
- * tree-dump.c: Use expand_location on DECL_SOURCE_LOCATION.
- * coverage.c: Likewise.
- * print-tree.c: Likewise.
- * c-aux-info.c (gen_aux_info_record): Likewise.
- * c-parse.in: Use SET_EXPR_LOCATION macro.
- * gimple-low.c: Likewise.
- * tree-mudflap.c: Likewise.
- * gimplify.c: Likewise. Also use EXPR_LOCATION and EXPR_HAS_LOCATION.
- * c-ppoutput.c: Use new source_location typedef instead of fileline.
- * c-semantics.c: Use new macros.
- * c-typeck.c: Likewise.
- * cfgexpand.c: Handle USE_MAPPED_LOCATION case for function_end_locus.
- * cfglayout.c (insn_locators_initialize): Const cleanup. New macros.
- * cfgrtl.c (delete_insn): Use new NOTE_DELETED_LABEL_NAME macro.
- * print-rtl.c (print_rtx): Likewise.
- * emit-rtl.c: Don't clear NOTE_SOURCE_FILE if USE_MAPPED_LOCATION.
- * combine.c: Use new SET_INSN_DELETED macro.
- * flow.c: Likewise.
- * haifa-sched.c: Likewise.
- * ifcvt.c: Likewise.
- * recog.c: Likewise.
- * reload1.c: Likewise.
- * diagnostic.c: Use expand_location macro.
- * pretty-print.c (pp_base_format_text): Likewise.
- * profile.c: Likewise.
- * dwarf2out.c: Likewise. Also use expand_location, DECL_IS_BUILTIN.
- * dwarf2out.c (dwarf2out_decl: Use BUILTINS_LOCATION.
- * emit-rtl.c (emit_line_note): Simplify if USE_MAPPED_LOCATION.
- (force_next_line_note, insn_emit): Handle USE_MAPPED_LOCATION case.
- * final.c (final): Likewise.
- * haifa-sched.c: Likewise.
- * integrate.c: Likewise.
- * jump.c: Likewise.
- * rtl-error.c: Likewise.
- * stmt.c (check_seenlabel): Likewise.
- * tree-pretty-print.c: Likewise.
- * gengtype-lex.l: Temporary kludge to avoid duplicate typedef.
- * gengtype.c: Update for now typdefs in input.h. More kludges.
- * modulo-sched.c (sms_schedule): Use NOTE_EXPANDED_LOCATION macro.
- * ra-debug.c (ra_print_rtl): Likewise.
- * sched-rgn.c: Likewise.
- * sched-vis.c: Likewise.
- * rtl.h (gen_rtx_ASM_OPERANDS): Redefine if USE_MAPPED_LOCATION.
- * stmt.c (expand_asm_operands): Adjust calls to gen_rtx_ASM_OPERANDS.
- * tree-cfg.c: Use new macros and typedefs.
- * tree-flow-inline.h: Likewise.
-
-2004-06-30 Richard Sandiford <rsandifo@redhat.com>
- Eric Christopher <echristo@redhat.com>
-
- * config/mips/3000.md: Improve description.
-
-2004-06-30 Paul Brook <paul@codesourcery.com>
-
- * config/arm/cirrus.md (cirrus_arm_movdi, cirrus_movsf_hard_insn,
- cirrus_movdf_hard_insn): Set pool ranges for coprocessor loads.
-
-2004-06-30 Sebastian Pop <pop@cri.ensmp.fr>
-
- * Makefile.in (OBJS-common): Add tree-chrec.o.
- (tree-chrec.o): New rule.
- (GTFILES): Add tree-chrec.h.
- * gengtype.c (open_base_files): Add tree-chrec.h.
- * tree-chrec.c: New file.
- * tree-chrec.h: New file.
- * tree.def (SCEV_KNOWN, SCEV_NOT_KNOWN, POLYNOMIAL_CHREC): New nodes.
-
-2004-06-30 Roger Sayle <roger@eyesopen.com>
-
- * combine.c: Include "output.h" to define dump_file.
- (uid_insn_cost, last_insn_cost): New global variables.
- (combine_insn_cost): New function to estimate cost of an insn.
- (combine_validate_cost): New function to determine whether a
- try_combine replacement sequence is cheaper than the original.
- (combine_instructions): Allocate and populate uid_insn_cost
- array at the start of the combine pass, and deallocate it after.
- (try_combine): Check combine_validate_cost to determine whether
- a "recombination" should be rejected as being more expensive.
- * Makefile.in (combine.o): Add dependency upon output.h.
-
-2004-06-30 Roger Sayle <roger@eyesopen.com>
-
- * config/rs6000/rs6000.c (rs6000_rtx_costs) <MINUS_EXPR>: Handle
- subtractions identically to additions, always COSTS_N_INSNS (1).
-
-2004-06-30 J"orn Rennecke <joern.rennecke@superh.com>
-
- * expmed.c (expand_smod_pow2): Fix sign of mask.
-
-2004-06-29 Diego Novillo <dnovillo@redhat.com>
-
- * tree-ssa-pre.c (phi_trans_add): Use is_gimple_min_invariant
- to check for constants.
- (set_remove): Likewise.
- (value_replace_in_set): Likewise.
- (find_leader): Likewise.
- * tree-vn.c (set_value_handle): Likewise.
- (vn_lookup): Likewise.
- (vn_lookup_or_add): Likewise.
-
-2004-06-30 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- RTL prologue/epilogue for SPARC
- * config/sparc/sparc-protos.h (sparc_emitting_epilogue): Delete.
- (sparc_skip_caller_unimp): Likewise.
- (load_pic_register): Likewise.
- (leaf_return_peephole_ok): Likewise.
- (compute_frame_size): Rename into sparc_compute_frame_size.
- (sparc_expand_prologue): New prototype.
- (sparc_expand_epilogue): Likewise.
- (output_return): Likewise.
- (eligible_for_epilogue_delay): Rename into eligible_for_return_delay.
- * config/sparc/sparc.h (INITIAL_ELIMINATION_OFFSET): Adjust call to
- compute_frame_size. Move comment up.
- (DELAY_SLOTS_FOR_EPILOGUE): Delete.
- (ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.
- (EPILOGUE_USES): Return true for %g1 if the function uses EH return.
- * config/sparc/sparc.md (UNSPECV_SAVEW): New constant.
- (type attribute): Add 'return' and 'savew'.
- (eligible_for_return_delay): New attribute.
- (return): New delay_slot.
- (sibcall_epilogue): Call sparc_expand_epilogue.
- (prologue): Likewise. Move up.
- (save_register_window): New expander.
- (save_register_windowsi): New pattern.
- (save_register_windowdi): Likewise.
- (epilogue): New expander.
- (return_internal): New pattern.
- (Return peepholes): Delete.
- * config/sparc/sparc.c (SIBCALL_SLOT_EMPTY_P): New macro.
- (sparc_emitting_epilogue): Delete.
- (sparc_skip_caller_unimp): Likewise.
- (sparc_sr_alias_set): New global variable.
- (frame_base_name): Delete.
- (frame_base_reg): New global variable.
- (sparc_override_options): Get new alias set for save/restore.
- (leaf_return_peephole_ok): Delete.
- (eligible_for_epilogue_delay): Rename into eligible_for_return_delay.
- Factor out code into eligible_for_restore_insn_delay.
- (eligible_for_restore_insn_delay): New function extraced from above.
- Use IN_UNCOND_BRANCH_DELAY_TRUE instead of IN_BRANCH_DELAY_TRUE.
- (eligible_for_sibcall_delay): Use SIBCALL_SLOT_EMPTY_P.
- Factor out code into eligible_for_restore_insn_delay.
- (load_pic_register): Make static. Remove check.
- (save_regs): Delete.
- (restore_regs): Likewise.
- (compute_frame_size): Rename into sparc_compute_frame_size.
- Rename leaf_function into leaf_function_p.
- (build_big_number): Delete.
- (save_or_restore_regs): New function.
- (emit_save_regs): Likewise.
- (emit_restore_regs): Likewise.
- (emit_stack_pointer_increment ): Likewise.
- (emit_stack_pointer_decrement): Likewise.
- (sparc_expand_prologue): Likewise.
- (sparc_function_prologue): Rename into sparc_asm_function_prologue.
- Remove all code to emit instructions.
- (sparc_expand_epilogue): New function.
- (sparc_function_epilogue): Rename into sparc_asm_function_epilogue.
- Remove all code to emit instructions.
- (output_restore): New function.
- (output_return): Likewise.
- (output_sibcall): Factor out code into output_restore.
- (print_operand): Adjust for frame_base_reg.
- * target.h (struct gcc_target): New field 'late_rtl_prologue_epilogue'.
- * target-def.h (TARGET_LATE_RTL_PROLOGUE_EPILOGUE): New define.
- (TARGET_INITIALIZER): Add it.
- * passes.c (rest_of_compilation): Set the conditional predicate
- 'current_function_uses_only_leaf_regs' before sched2. If target
- has 'late_rtl_prologue_epilogue', emit RTL prologue/epilogue right
- before sched2.
- * reorg.c (return_insn_p): New predicate.
- (find_end_label): Use it.
- (relax_delay_slots): Do not thread an unconditional jump that points
- to the end return label.
- * doc/tm.texi (Registers) <Leaf Functions>: Clarify the validity
- domain of 'current_function_uses_only_leaf_regs'.
- (Stack and Calling) <Function Entry>: Document new target hook
- TARGET_LATE_RTL_PROLOGUE_EPILOGUE.
-
-2004-06-30 Jakub Jelinek <jakub@redhat.com>
-
- * simplify-rtx.c (simplify_binary_operation): Simplify
- ((A & N) + B) & M -> (A + B) & M if M is pow2 minus 1 constant and
- N has at least all bits in M set as well.
-
- PR tree-optimization/15310
- * expr.c (expand_assignment): Optimize += or -= on a bit field in
- most significant bits.
-
-2004-06-30 Steven Bosscher <stevenb@suse.de>
-
- * config/c4x/c4x.md: Fix comment.
-
-2004-06-30 Akos Kiss <akiss@inf.u-szeged.hu>
-
- * arm.md (cond_return_inverted): Add "length" attribute.
-
-2004-06-29 Per Bothner <per@bothner.com>
-
- * config/i386/winnt.c (i386_pe_encode_section_info): Smash rtlname's
- XSTR in place, so we don't lose SYMBOL_REF_DECL info.
-
-2004-06-29 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/hpux.h: Target does too support thread-local storage.
-
-2004-06-29 Zack Weinberg <zack@codesourcery.com>
-
- * combine.c (distribute_notes): Don't look at global_regs for
- pseudos.
-
-2004-06-29 Richard Henderson <rth@redhat.com>
-
- * gimplify.c (gimplify_modify_expr_rhs): Move immediately before
- gimplify_modify_expr.
- (gimplify_init_constructor): Likewise. Gimplify the null
- CONSTRUCTOR assignment.
- (gimplify_modify_expr_to_memcpy): New.
- (gimplify_modify_expr_to_memset): New.
- (gimplify_modify_expr): Use them.
-
-2004-06-29 Roman Zippel <zippel@linux-m68k.org>
-
- * web.c (union_defs): use all defs of an instruction to create a
- union with a read/write use
-
-2004-06-29 Richard Henderson <rth@redhat.com>
-
- PR middle-end/16216
- * builtins.c (gimplify_va_arg_expr): Check for valist being
- an error_mark_node.
-
-2004-06-29 Jakub Jelinek <jakub@redhat.com>
-
- PR target/16195
- * config/rs6000/rs6000.c (rs6000_conditional_register_usage): Make
- r30 fixed if TARGET_TOC && TARGET_MINIMAL_TOC.
- (first_reg_to_save): Pretend call_used_regs[30] is 0 if
- TARGET_TOC && TARGET_MINIMAL_TOC.
- (rs6000_emit_prologue, rs6000_emit_epilogue): Likewise.
-
-2004-06-29 J"orn Rennecke <joern.rennecke@superh.com>
-
- Fix gcc.dg/builtin-apply2.c failures:
- * sh.h (TARGET_VARARGS_PRETEND_ARGS): Define.
- * sh.c (extra_push): Delete.
- (sh_expand_prologue): Don't do extra stack adjustment for
- current_function_pretend_args_size if it comes from varargs setup.
- Use TARGET_VARARGS_PRETEND_ARGS. Don't set extra_push.
- (sh_expand_epilogue): Don't use extra_push.
- (sh_setup_incoming_varargs): Set pretend_arg_size when necessary.
-
-2004-06-29 Roger Sayle <roger@eyesopen.com>
-
- * expmed.c (expand_smod_pow2): Provide alternate implementations
- that avoid conditional jumps, and choose between them based upon
- the target's rtx_costs.
-
-2004-06-29 Andrew Pinski <apinski@apple.com>
-
- * tree-sra.c: Include expr.h for definition of MOVE_RATIO.
- * Makefile.in (tree-sra.c): Update dependencies.
-
-2004-06-29 Richard Henderson <rth@redhat.com>
-
- * tree-sra.c: Rewrite from scratch. Handle nested aggregates.
-
-2004-06-29 Nathan Sidwell <nathan@codesourcery.com>
-
- * vec.h (VEC_T_safe_push, VEC_T_safe_insert): Tweak for when
- size_t is bigger than int.
-
-2004-06-29 Paul Brook <paul@codesourcery.com>
-
- * target-def.h (TARGET_CXX_GET_COOKIE_SIZE,
- TARGET_CXX_COOKIE_HAS_SIZE): Define.
- (TARGET_CXX): Use them.
- * target.h (struct gcc_target): Add cxx.get_cookie_size and
- cxx.cookie_has_size.
- * targhooks.c (default_cxx_get_cookie_size): New fucntion.
- * targhooks.h (default_cxx_get_cookie_size): Add prototype.
- * config/arm/arm.c (TARGET_CXX_GET_COOKIE_SIZE,
- TARGET_CXX_COOKIE_HAS_SIZE): Define.
- (arm_get_cookie_size, arm_cookie_has_size): New functions.
- * Make-lang.in (cp/init.o): Add dependency on $(TARGET_H).
- * doc/tm.texi: Document TARGET_CXX_GET_COOKIE_SIZE and
- TARGET_CXX_COOKIE_HAS_SIZE.
-
-2004-06-29 J"orn Rennecke <joern.rennecke@superh.com>
-
- * cfglayout.c (fixup_reorder_chain): Don't do anything for
- e_fall->dest == EXIT_BLOCK_PTR.
-
-2004-06-28 Richard Henderson <rth@redhat.com>
-
- * tree-cfg.c (verify_stmt): Add last_in_block parameter. Verify
- that eh stmts can throw.
- (verify_stmts): Update verify_stmt call.
- (tree_purge_dead_eh_edges, tree_purge_all_dead_eh_edges): New.
- * tree-eh.c (remove_stmt_from_eh_region): New.
- (lower_eh_constructs): Fix throw_stmt_table delete routine.
- (tree_could_trap_p): Match may_trap_p.
- (maybe_clean_eh_stmt): New.
- * tree-flow.h: Update decls.
- * tree-ssa-ccp.c (pass_ccp): Add TODO_verify_stmts.
- (substitute_and_fold): Clean eh edges.
- * tree-ssa-dce.c (mark_control_dependent_edges_necessary): Handle
- empty basic blocks.
- * tree-ssa-dom.c (need_eh_cleanup): New.
- (tree_ssa_dominator_optimize): Allocate it. Cleanup eh edges.
- (optimize_stmt): Cleanup eh stmts; set need_eh_cleanup.
-
-2004-06-29 Alan Modra <amodra@bigpond.net.au>
-
- * function.c (assign_parms): Don't abort with zero size stack
- parm failing the PARM_BOUNDARY check.
-
-2004-06-28 Diego Novillo <dnovillo@redhat.com>
-
- * common.opt (ftree-fre): New flag.
- * flags.h (flag_tree_fre): Declare.
- * opts.c (decode_options): Set.
- * timevar.def (TV_TREE_FRE): Define.
- * tree-flow-inline.h (may_propagate_copy): Re-arrange for
- readability. Handle destinations that are not SSA_NAMEs.
- * tree-flow.h (struct ptr_info_def): Move from tree.h
- (cprop_into_stmt, cprop_into_successor_phis): Remove.
- (vn_compute, vn_lookup_or_add, vn_add, vn_lookup): Add
- vuse_optype parameter.
- * tree-pass.h (pass_fre): Declare.
- * tree-ssa-copy.c (cprop_operand): Move to tree-ssa-dom.c
- (cprop_into_stmt): Likewise.
- (cprop_into_successor_phis): Likewise.
- * tree-ssa-dom.c (eliminate_redundant_computations): Fix
- argument ordering in call to may_propagate_copy.
- * tree-ssa-pre.c (is_undefined_value): Assume hard registers
- to be always defined.
- (add_to_sets): New local function.
- (create_value_expr_from): New local function.
- (compute_avail): Call them.
- (eliminate): Don't ignore statements with virtual operands.
- (init_pre): New local function.
- (fini_pre): New local function.
- (execute_pre): Call them.
- Add argument DO_FRE. Don't do insertion if DO_FRE is true.
- (do_pre): New function.
- (do_fre): New function.
- (gate_fre): New function.
- (pass_fre): Declare.
- * tree-ssa.c (init_tree_ssa): Don't call vn_init.
- (delete_tree_ssa): Don't call vn_delete.
- * tree-vn.c (val_expr_pair_d): Add documentation.
- (vn_compute): Add VUSES argument to incorporate in computing
- hash values. Update all callers.
- (expressions_equal_p): Call operand_equal_p with
- OEP_PURE_SAME.
- (vn_add): Add VUSES argument. Update all callers.
- (vn_lookup): Likewise.
- (vn_lookup_or_add): Likewise.
- * doc/invoke.texi: Document -ftree-fre and -fdump-tree-fre.
-
-2004-06-28 Steven Bosscher <stevenb@suse.de>
-
- * config/m32r/m32r.c (m32r_sched_odd_word_p, m32r_adjust_cost,
- m32r_sched_init, m32r_sched_reorder, m32r_variable_issue): Remove.
- (TARGET_SCHED_ADJUST_COST, TARGET_SCHED_VARIABLE_ISSUE,
- TARGET_SCHED_INIT, TARGET_SCHED_REORDER): Don't define.
- * config/m32r/m32r.md: Rewrite the pipeline description as a DFA.
-
-2004-06-28 Richard Henderson <rth@redhat.com>
-
- * tree.def (REALPART_EXPR, IMAGPART_EXPR): Change class to 'r'.
- * fold-const.c (operand_equal_p <case 'r'>): Add REALPART_EXPR,
- IMAGPART_EXPR.
- * tree-dump.c (dequeue_and_dump): Handle REALPART_EXPR and
- IMAGPART_EXPR explicitly.
- * tree-inline.c (estimate_num_insns_1): Don't handle REALPART_EXPR
- and IMAGPART_EXPR specially.
- * tree.c (build1_stat): Copy TREE_THIS_VOLATILE into class 'r'.
-
-2004-06-28 J"orn Rennecke <joern.rennecke@superh.com>
-
- * config.gcc (sh*-*elf*): Remove dead assignment of sh_multilibs.
-
-2004-06-28 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * builtins.def (execl, execlp, execle, execv, execvp, execve,
- fork): Change to DEF_EXT_LIB_BUILTIN.
-
-2004-06-28 Roger Sayle <roger@eyesopen.com>
-
- * expmed.c (expand_smod_pow2): New function to expand signed
- remainder by a constant power of 2, such as "x % 16".
- (expand_divmod): Call new expand_smod_pow2 when appropriate.
- Minor corrections to comments, e.g. wrapping long lines.
-
-2004-06-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * Makefile.in (vec.o): Fix dependencies.
-
-2004-06-28 Andreas Tobler <a.tobler@schweiz.ch>
-
- * Makefile.in: Fix parallel make dependency problem on vec.o.
-
-2004-06-28 Dhananjay Deshpande <dhananjayd@kpitcummins.com>
-
- PR target/14041
- * config/h8300/h8300.h (ASM_OUTPUT_ALIGNED_BSS): Define.
-
-2004-06-28 Nathan Sidwell <nathan@codesourcery.com>
-
- * tree.h (tree_check_failed): Make varadic.
- (tree_not_check_failed): New prototype.
- (tree_check2_failed, tree_check3_failed,
- tree_check4_failed, tree_check5_failed): Remove.
- (TREE_CHECK, TREE_CHECK2, TREE_CHECK3, TREE_CHECK4,
- TREE_CHECK5): Adjust.
- (TREE_NOT_CHECK, TREE_NOT_CHECK2, TREE_NOT_CHECK3, TREE_NOT_CHECK4,
- TREE_NOT_CHECK5): New.
- (TREE_VEC_ELT_CHECK, PHI_NODE_ELT_CHECK, TREE_OPERAND_CHECK_CODE,
- TREE_RTL_OPERAND_CHECK): Adjust.
- * tree.c (tree_check_failed): Make varadic.
- (tree_not_check_failed): New.
- (tree_check2_failed, tree_check3_failed,
- tree_check4_failed, tree_check5_failed): Remove.
-
-2004-06-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (can_combine_p): Do not prevent building insns that use
- and clobber the same fixed hard register.
- (reg_dead_at_p): Likewise.
-
-2004-06-28 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree-sra.c (is_sra_candidate_ref): Remove second arg; all callers
- changed.
- (is_sra_candidate_complex_ref): New function.
- (scalarize_modify_expr): Call it and check for LHS also.
-
- * tree-pretty-print.c (dump_function_declaration): New.
- (dump_generic_node, case FUNCTION_TYPE): Call it.
- (dump_generic_node, case RECORD_TYPE): Don't output dup semicolon.
- (dump_generic_node, case DECL_EXPR): New case.
- (dump_generic_node, case PLACEHOLDER_EXPR): Handle.
- (print_declaration): Handle type and function declarations.
-
- * tree-nested.c (create_tmp_var_for): Allow ARRAY_TYPE.
- (convert_nonlocal_reference, convert_local_reference): Properly
- convert nest of handled component references.
-
-2004-06-28 Nathan Sidwell <nathan@codesourcery.com>
-
- * vec.h, vec.c: New, type safe vector API.
- * Makefile.in (OBJS-common): Add vec.o.
- (vec.o): New target.
- (gengtype-lex.o): Depend on vec.h.
-
-2004-06-28 Paolo Bonzini <bonzini@gnu.org>
-
- * fold-const.c (fold_cond_expr_with_comparison): Add ARG1
- parameter. Use it instead of ARG00 to produce the result.
-
-2004-06-28 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300-protos.h (legitimate_address_p): Declare.
- * config/mn10300/mn10300.c (legitimate_address_p): New. Test that
- index is legitimate, compared with code moved from...
- * config/mn10300/mn10300.h (GO_IF_LEGITIMATE_ADDRESS): here.
- (REG_STRICT): Define, according to REG_OK_STRICT.
- (REGNO_IN_RANGE_P, REGNO_DATA_P, REGNO_ADDRESS_P, REGNO_SP_P,
- REGNO_EXTENDED_P, REGNO_AM33_P, REGNO_FP_P): Introduce strict
- argument.
- (REGNO_STRICT_OK_FOR_BASE_P, REGNO_STRICT_OK_FOR_BIT_BASE_P,
- REGNO_STRICT_OK_FOR_INDEX_P): New.
- (REGNO_OK_FOR_BASE_P, REG_OK_FOR_BASE_P, REGNO_OK_FOR_BIT_BASE_P,
- REG_OK_FOR_BIT_BASE_P, REGNO_OK_FOR_INDEX_P, REG_OK_FOR_INDEX_P,
- RTX_OK_FOR_BASE_P): Use them.
-
-2004-06-28 Ben Elliston <bje@au.ibm.com>
-
- * doc/cfg.texi (Basic Blocks): Define dominators.
-
-2004-06-27 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c++/16205
- * c-common.c (warn_for_collisions_1): Warn for only decls which
- have a name.
-
- PR c++/15145
- * c.opt (Wsequence-point): Enable for C++ and ObjC++.
-
- PR c/14963
- * c-decl.c (start_decl): Check for null types.
-
-2004-06-27 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
- Accept TOC addresses.
-
-2004-06-27 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_load_got): Update prototype.
- * config/s390/s390.c (struct machine_function): Add member base_reg.
- (s390_decompose_address): Accept UNSPEC_LTREF. Simplify logic.
- (s390_split_branches): Annotate late pool references.
- (annotate_constant_pool_refs): New function.
- (find_constant_pool_ref): Work on annotated pool references.
- (replace_constant_pool_ref): Likewise. Use explicit base.
- (replace_ltrel_base): Use explicit base.
- (s390_mainpool_start): Reflect main_pool pattern change.
- (s390_mainpool_finish): Use base register from main_pool.
- Update calls to replace_ltrel_base and replace_constant_pool_ref.
- (s390_chunkify_start): Use base_reg from struct machine_function.
- (s390_chunkify_finish): Remove base_reg argument. Update calls
- to replace_ltrel_base and replace_constant_pool_ref.
- (s390_reorg): Don't decide upon base register. Update calls.
- (s390_load_got): Remove MAYBE_DEAD handling. Do not emit insns
- but return sequence instead.
- (s390_emit_prologue): Decide upon base register to use. Annotate
- all literal pool references. Adapt to main_pool pattern change.
- Update s390_load_got call; move MAYBE_DEAD handling here.
- (s390_emit_epilogue): Annotate late literal pool references.
- Remove barrier before register restore instruction.
- * config/s390/s390.md (UNSPEC_LTREF): New constant.
- ("builtin_setjmp_receiver"): Update s390_load_got call.
- ("main_pool"): Explicitly reference base register.
-
-2004-06-27 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) <BIT_IOR_EXPR>: Optimize ~X|X and X|~X as -1.
- <BIT_XOR_EXPR>: Optimize ~X|X and X|~X as -1.
- <BIT_AND_EXPR>: Optimize ~X&X and X&~X as 0.
- <TRUTH_AND_EXPR, TRUTH_ANDIF_EXPR>: Optimize !X&&X and X&&!X as false.
- <TRUTH_OR_EXPR, TRUTH_ORIF_EXPR>: Optimize !X||X and !X||X as true.
- <TRUTH_XOR_EXPR>: Optimize !X^X and X^X! as true. Now that
- TRUTH_XOR_EXPR is a commutative tree code, don't test whether arg0
- is a constant.
-
-2004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * c-common.c (c_safe_from_p, c_walk_subtrees): Deleted.
- * c-common.def (DECL_STMT): Remove.
- * c-common.h (DECL_STMT_DECL): Deleted.
- (COMPOUNT_LITERAL_EXPR_DECL): Use DECL_EXPR_DECL.
- (c_safe_from_p, c_walk_subtrees): Deleted.
- * c-decl.c, c-parse.in, c-pretty-print.c: DECL_STMT now DECL_EXPR.
- * c-dump.c (c_dump_tree, case DECL_STMT): Deleted.
- * c-gimplify.c (gimplify_decl_stmt): Deleted.
- (gimplify_compound_literal_expr): Use DECL_EXPR_DECL
- and gimplify_and_add.
- (c_gimplify_expr, case DECL_EXPR): New case.
- (c_gimplify_expr, case DECL_STMT): Deleted.
- * c-lang.c (LANG_HOOKS_SAFE_FROM_P): Likewise.
- (LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Likewise.
- * expr.c (safe_from_p, case 's'): New case.
- * gimplify.c (gimplify_decl_expr): New function.
- (gimplify_expr, case DECL_EXPR): New case.
- * tree-inline.c (walk_tree): Walk into all fields of a type and
- decl only if they are in a DECL_EXPR.
- (mark_local_for_remap_r): Minor code cleanup.
- * tree-outof-ssa.c (discover_nonconstant_array_refs_r): Add else.
- * tree.c (has_cleanups, case DECL_EXPR): New case.
- * tree.def (DECL_EXPR): New code.
- * tree.h (DECL_EXPR_DECL): New macro.
-
- * objc/objc-lang.c (LANG_HOOKS_SAFE_FROM_P): Deleted.
-
-2004-06-26 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR 13334
- * doc/install.texi: Document non-standard CFLAGS and bootstrap
- failures and warnings.
-
-2004-06-26 Andrew Haley <aph@redhat.com>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Check
- TREE_THIS_NOTRAP when setting MEM_NOTRAP_P.
- * tree-eh.c (tree_could_trap_p): Check TREE_THIS_NOTRAP.
- * tree.h (TREE_THIS_NOTRAP): New.
-
-2004-06-26 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * genattrtab.c (write_test_expr): Put a unsigned cast before
- the first operand for GEU, GTU, LEU and LTU.
-
-2004-06-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-typeck.c, cfgexpand.c, ddg.c, ddg.h, df.c, fold-const.c,
- gcov.c, gimplify.c, modulo-sched.c, passes.c, tree-cfg.c,
- tree-mudflap.c, tree-nrv.c, tree-outof-ssa.c, tree-ssa-dom.c,
- tree-ssa-dse.c, tree-ssa-operands.c, tree-ssa-pre.c,
- tree-tailcall.c: Fix comment typos. Follow spelling
- conventions.
-
-2004-06-25 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.md: Add back scheduling exclusion info.
-
-2004-06-25 Roger Sayle <roger@eyesopen.com>
-
- * ifcvt.c (seq_contains_jump): Delete function.
- (end_ifcvt_sequence): Replace call to seq_contains_jump with an
- inline test for a jump instruction in the existing "insn" loop.
- (block_fallthru): Document function.
-
-2004-06-25 Philip Blundell <philb@gnu.org>
-
- PR wrong-code/15089
- * loop.c (scan_loop): Do not move user-specified register
- assignments.
-
-2004-06-25 DJ Delorie <dj@redhat.com>
-
- * c-common.h (warn_cast_qual, warn_missing_format_attribute,
- warn_pointer_arith, warn_missing_prototypes, warn_parentheses,
- warn_missing_braces, warn_sign_compare, warn_long_long,
- warn_redundant_decls, warn_float_equal, warn_char_subscripts,
- warn_conversion, warn_format_y2k, warn_format_extra_args,
- warn_format_zero_length, warn_format_nonliteral,
- warn_format_security, mesg_implicit_function_declaration,
- warn_bad_function_cast, warn_traditional,
- warn_declaration_after_statement, warn_strict_prototypes,
- warn_missing_declarations, warn_nested_externs,
- warn_sequence_point, warn_init_self, warn_div_by_zero,
- warn_implicit_int, warn_nonnull, warn_old_style_definition,
- warn_selector, warn_undeclared_selector, warn_protocol,
- warn_abi, warn_invalid_offsetof, warn_ctor_dtor_privacy,
- warn_overloaded_virtual, warn_nonvdtor, warn_reorder,
- warn_synth, warn_pmf2ptr, warn_ecpp, warn_sign_promo,
- warn_old_style_cast, warn_nontemplate_friend,
- warn_deprecated): Remove explicit declarations.
- * c-common.c: Likewise, remove explicit definitions.
- * c-opts.c: Likewise, remove explicit assignments.
- * c.opts: Likewise, add implicit declare/define/assign.
-
-2004-06-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * gimplify.c (lookup_tmp_var): Set TREE_READONLY in is_formal case.
- (build_addr_expr_with_type): Deleted.
- (build_addr_expr): Deleted; callers changed to build_fold_addr_expr.
- (gimplify_compound_lval): Make two passes over reference nest.
-
- * tree-nested.c (build_addr): Merge real/imagpart with
- handled_component_p.
- (convert_nonlocal_reference, convert_local_reference): Process extra
- args to COMPONENT_REF and ARRAY_REF.
- * tree-outof-ssa.c (discover_nonconstant_array_refs_r): Check for
- lower bound and field offset being constant.
-
-2004-06-25 Mark Mitchell <mark@codesourcery.com>
-
- PR wrong-code/16129
- * alias.c (get_alias_set): Adjust setting of
- DECL_POINTER_ALIAS_SET for pointers to aggregates.
-
-2004-06-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree-inline.c (remap_type): Arrange to have just one pointer type
- for each type, mode, and 'can alias' value.
- (setup_one_parameter): Remap type when making VAR_DECL for PARM_DECL.
- (estimate_num_insns_1): Minor code reformatting.
- (inline_forbidden_p_1): Likewise; add; missing return statement.
-
-2004-06-25 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/15825
- * ifcvt.c (unshare_ifcvt_sequence): Rename to end_ifcvt_sequence.
- Use get_isns and end_sequence instead of accepting a seq argument.
- Scan the instruction sequence for unrecognizable or jump insns.
- (noce_try_move, noce_try_store_flag, noce_try_store_flag_constants,
- noce_try_addcc, noce_try_store_flag_mask, noce_try_cmove,
- noce_try_cmove_arith, noce_try_minmax, noce_try_abs,
- noce_try_sign_mask): Use end_ifcvt_sequence to factor common code.
-
-2004-06-24 Jeff Law <law@redhat.com>
-
- * gimplify.c (gimplify_compound_lval): Reset TREE_SIDE_EFFECTS
- after gimplifying the innermost component.
-
-2004-06-25 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/16176
- * config/mips/mips.c (mips_expand_unaligned_load): Use a temporary
- register for the destination of the lwl or ldl.
-
-2004-06-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree-dfa.c (get_virtual_var): Merge real/imaginary parts with
- handled_component_p handling.
- * tree-gimple.c (get_base_address): Likewise and fix typo that
- caused both recursion and looping.
-
- * tree-cfg.c (verify_expr): Add macro CHECK_OK.
- Properly test for nest of handled_components in LHS context.
-
-2004-06-25 Devang Patel <dpatel@apple.com>
-
- * doc/tree-ssa.texi: Document info about MODIFY_EXPR's type
-
-2004-06-25 Paul Brook <paul@codesourcery.com>
-
- * target-def.h (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT,
- TARGET_CXX): Define.
- (TARGET_INITIALIZER): Use TARGET_CXX.
- * target.h (struct gcc_target): Add struct cxx.
- * targhooks.h (default_cxx_guard_type): Add prototype.
- * targhooks.c (default_cxx_guard_type): New function.
- * config/arm/arm.c (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT):
- Define.
- (arm_cxx_guard_type, arm_cxx_guard_mask_bit): New functions.
- * doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
- TARGET_CXX_GUARD_MASK_BIT.
-
-2004-06-25 Devang Patel <dpatel@apple.com>
-
- * config/rs6000/darwin.h (CC1_SPEC): Handle -gused and -gfull.
- * config/i386/darwin.h (CC1_SPEC): Same.
-
-2004-06-25 Mark G. Adams <mark.g.adams@sympatico.ca>
-
- * dbxout.h: Add include guards
-
-2004-06-25 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_EABI__.
-
-2004-06-25 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_arch4t): New variable.
- (arm_override_options): Initialize it. If compiling for armv5 or
- higher clear TARGET_INTERWORK.
- (output_call): Abort if called for armv5. Use BX if it's available.
- (output_call_mem): Use BLX if available and ensure that all armv5
- code is interworking safe.
- (output_return_instruction): Always use BX in preference to MOV if
- it's available.
- (arm_output_epilogue): Likewise.
- (arm_final_prescan_insn): Never conditionally call a subroutine
- on armv5.
- * arm.h (arm_arch4t): Declare.
- * arm.md (call_reg_armv5, call_value_reg_armv5): New.
- (call_reg_arm, call_value_reg_arm): Renamed from call_reg and
- call_value_reg respectively.
- (call_reg_thumb_v5, call_value_reg_thumb_v5): New.
- (call_reg_thumb, call_value_reg_thumb): Renamed from call_indirect
- and call_value_indirect respectively.
-
-2004-06-25 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (reg_or_const_float_1_operand): Reimplement
- in terms of const_float_1_operand.
-
-2004-06-25 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/16144
- * config/mips/mips.md (divsf, divdf): Don't FAIL if the first operand
- is 1.0; force it into a register instead.
-
-2004-06-25 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h: Restore valid comment removed by mistake with
- the recent m68k comments cleanup.
-
-2004-06-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * c-gimplify.c (gimplify_for_stmt): Use gimplify_and_add.
- * gimplify.c (internal_get_tmp_var, gimplify_return_expr): Likewise.
- (gimplify_loop_expr, gimplify_init_constructor): Likewise.
- (gimplify_self_mod_expr, gimplify_cond_expr): Likewise.
-
- PR/16131
- * gimplify.c (voidify_wrapper_expr): Allow TARGET_EXPR.
-
- * gimplify.c: Remove unneeded forward declarations.
-
- * gimplify.c (append_to_compound_expr): Deleted.
- * tree-gimple.h (append_to_compound_expr): Deleted.
-
- * fold-const.c (fold_addr_expr_with_type): Look through all
- valid LHS modifiers to find a base to mark addressable.
-
- * tree.h (debug_find_tree): Add declaration.
- * tree-inline.c (debug_find_tree): Remove extern declaration.
-
-2004-06-24 Eric Christopher <echristo@redhat.com>
-
- * config/rs6000/rs6000.md: Apply change mistakenly
- deleted with 2004-06-22 patch.
-
-2004-06-24 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (c_in_iteration_stmt, c_in_case_stmt): Remove.
- (c_break_label, c_cont_label): New.
- (start_function): Update initializations.
- (c_push_function_context): Update saves.
- (c_pop_function_context): Update restores.
- * c-parse.in: Update expected conflicts.
- (stmt_count, compstmt_count): Remove. Remove all updates.
- (if_prefix, simple_if, do_stmt_start): Remove.
- (lineno_labeled_stmt): Remove.
- (lineno_labels): New.
- (c99_block_lineno_labeled_stmt): Use it.
- (lineno_stmt, lineno_label): Don't clear EXPR_LOCUS before calling
- annotate_with_locus.
- (select_or_iter_stmt): Replace by ...
- (condition, if_statement_1, if_statement_2, if_statement,
- start_break, start_continue, while_statement, do_statement,
- for_cond_expr, for_incr_expr, for_statement, switch_statement): New.
- (stmt): Split out ...
- (stmt_nocomp): ... this. Use c_finish_bc_stmt, c_finish_goto_label,
- c_finish_goto_ptr.
- * c-semantics.c (add_stmt): Don't add line numbers to labels.
- * c-tree.h: Update prototypes.
- (struct language_function): Remove x_in_iteration_stmt, x_in_case_stmt;
- add x_break_label, x_cont_label, x_switch_stack.
- (c_switch_stack): Declare.
- * c-typeck.c (c_finish_goto_label, c_finish_goto_ptr): New.
- (c_finish_return): Return the statement.
- (c_switch_stack): Rename from switch_stack; export.
- (if_elt, if_stack, if_stack_space, if_stack_pointer): Remove.
- (c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_begin_else,
- c_finish_else): Remove.
- (c_finish_if_stmt): Rewrite to perform the entire operation.
- (c_begin_while_stmt, c_finish_while_stmt_cond, c_finish_while_stmt,
- c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
- c_finish_for_stmt_incr, c_finish_for_stmt): Remove.
- (c_finish_loop): New.
- (c_finish_bc_stmt): New.
- (c_finish_expr_stmt): Return the statement. Split out...
- (c_process_expr_stmt): ... this. Don't add locus to error marks.
- * gimplify.c (gimplify_cond_expr): Accept NULL type statements.
- * tree-gimple.c (is_gimple_stmt): Likewise.
- * tree-pretty-print.c (dump_generic_node <COND_EXPR>): Likewise.
- (print_struct_decl): Delete empty compound statement.
- * objc/objc-act.c (objc_build_throw_stmt): Return the statement.
- * objc/objc-act.h: Update decl.
-
-2004-06-24 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree-pretty-print.c (dump_generic_node, case TYPE_DECL):
- Don't look at TYPE_METHODS unless RECORD_TYPE or UNION_TYPE.
-
-2004-06-24 Andrew Pinski <apinski@apple.com>
-
- * objc-act.c (build_objc_method_call): Save the lookup_object
- so we do not call it twice.
-
-2004-06-24 Richard Henderson <rth@redhat.com>
-
- * tree-ssa-dom.c (real_avail_expr_hash): New.
- (tree_ssa_dominator_optimize): Use it in the htab.
-
-2004-06-24 Frank Ch. Eigler <fche@redhat.com>
-
- * tree-mudflap.c (mx_register_decls): Add third (type) argument
- to synthesized __mf_unregister call.
-
-2004-06-24 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/15239
- * expmed.c (expand_mult): Remove artificial restriction on the
- maximum cost of a synthetic multiplication sequence.
-
-2004-06-24 Eric Christopher <echristo@redhat.com>
-
- * combine.c (distribute_notes): Don't delete sets to
- global register variables.
-
-2004-06-24 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (ffsdi2, clzdi2): New expanders.
- (ffs_rex64): New splitter.
- (ffsdi_1, ctzdi2, bsr_rex64): New instructions.
-
-2004-06-24 Andrew Pinski <apinski@apple.com>
-
- * config/darwin7.h (MATH_LIBRARY): Remove.
- (LIB_SPEC): Define.
- * config/darwin.h (MATH_LIBRARY): Define always to empty.
- (LIB_SPEC): Only define if not already defined.
-
-2004-06-24 Revital Eres <eres@il.ibm.com>
-
- * loop-iv.c (iv_analyze, simple_set_p): Support for identifying
- shifts of induction variable.
- (iv_shift): New function.
-
-2004-06-24 Richard Henderson <rth@redhat.com>
-
- * gimplify.c (gimplify_body): Watch for body vanishing.
-
-2004-06-24 Jeff Law <law@redhat.com>
-
- * tree-ssa-dom.c (record_dominating_conditions): New function.
- (dom_opt_finalize_block, get_eq_expr_value): Use it.
-
-2004-06-24 Richard Sandiford <rsandifo@redhat.com>
-
- * calls.c (shift_returned_value): Fix handling of non-integer
- TYPE_MODEs.
-
-2004-06-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- * c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
- * system.h (DEFAULT_MAIN_RETURN): Poison.
- * doc/tm.texi (DEFAULT_MAIN_RETURN): Remove documentation.
-
-2004-06-24 Ben Elliston <bje@au.ibm.com>
-
- * doc/cfg.texi (Edges): Fix typo.
-
-2004-06-24 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_output_epilogue): Remove excess checks.
-
-2004-06-23 Andrew Pinski <apinski@apple.com>
-
- PR middle-end/15988
- * fold-const.c (fold_convert): Types which are compatible
- can be converted with only a NOP_EXPR.
-
-2004-06-24 Alan Modra <amodra@bigpond.net.au>
-
- * calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and
- pass raw n_named_args to it.
- * targhooks.c: Formatting.
- (hook_bool_CUMULATIVE_ARGS_false): Correct comment.
-
-2004-06-23 Richard Henderson <rth@redhat.com>
-
- * c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside
- non-constant size check. Gimplify the type too. Tidy building
- BUILT_IN_STACK_ALLOC call.
-
-2004-06-23 Roger Sayle <roger@eyesopen.com>
-
- * c-common.c (expand_unordered_cmp): Delete.
- (expand_tree_builtin): Delete.
- * c-common.h (expand_tree_builtin): Delete function prototype.
- * c-typeck.c (build_function_call): Don't call expand_tree_builtin.
-
-2004-06-23 Richard Henderson <rth@redhat.com>
-
- * gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or
- COMPONENT_REF variable fields unless they're non-constant.
-
-2004-06-23 Robert Millan <robertmh@gnu.org>
-
- * config.gcc: Merge kfreebsd*-gnu with linux* and add knetbsd*-gnu.
- * config/i386/linux.h: Allow overriding of LINK_EMULATION,
- DYNAMIC_LINKER and register names in sc_ structure.
- * config/kfreebsd-gnu.h: New. kfreebsd-gnu followup for linux.h.
- * config/i386/kfreebsd-gnu.h: New. Ditto for i386-kfreebsd-gnu.
- * config/knetbsd-gnu.h: New. Ditto for knetbsd-gnu.
- * config/i386/knetbsd-gnu.h: New. Ditto for i386-knetbsd-gnu.
-
- * config/kfreebsdgnu.h: Remove.
- * config/t-kfreebsd-gnu: Likewise.
- * config/i386/kfreebsdgnu.h: Likewise.
-
-2004-06-23 Eric Christopher <echristo@redhat.com>
-
- * fold-const.c (make_range): Cleanup type checking through function.
- Remove orig_type. Replace with checks to exp_type and arg0_type.
- Clarify comment when converting from unsigned to signed.
-
-2004-06-23 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.c (mips_use_dfa_pipeline_interface): Add R3000.
- * config/mips/mips.md: Remove R3000 scheduling description.
- * config/mips/3000.md: New file.
-
-2004-06-23 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_emit_compare): Add prototype.
- (s390_emit_jump): Likewise.
- * config/s390/s390.c (s390_emit_compare): New function.
- (s390_emit_jump): Likewise.
- * config/s390/s390.md ("beq", "bne", "bgt", "bgtu", "blt", "bltu",
- "bge", "bgeu", "ble", "bleu", "bunordered", "bordered", "buneq",
- "bungt", "bunlt", "bunge", "bunle", "bltgt"): Use s390_emit_compare
- and s390_emit_jump.
- ("cjump"): Remove, replace by ...
- ("*cjump_64", "*cjump_31"): ... these insns. Improve length default.
- ("icjump", "*icjump_64", "*icjump_31"): Likewise.
- ("trap"): Fix type attribute.
- ("conditional_trap"): Use s390_emit_compare.
- ("doloop_si"): Remove, replace by ...
- ("doloop_si64", "doloop_si31"): ... these new insn_and_split.
- Merge existing splitter into insn_and_split. Improve length default.
- ("doloop_di"): Merge with existing splitter into insn_and_split.
- ("doloop"): Adapt.
- ("jump"): Convert to expander. Use s390_emit_jump.
- ("*jump_64", "*jump_31"): New insns. Improve length default.
-
-2004-06-23 Wu Yongwei <adah@sh163.net>
-
- * gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
- (__gthr_i486_lock_cmp_xchg): New inline assembly function.
- (__GTHR_W32_InterlockedCompareExchange): New macro to choose a
- suitable function for interlocked compare-and-exchange.
- (__gthread_mutex_trylock): Use
- __GTHR_W32_InterlockedCompareExchange.
- (__gthread_mutex_init_function, __gthread_mutex_lock,
- __gthread_mutex_trylock, __gthread_mutex_unlock): Adjust the
- initial counter value to work correctly under Windows 95.
- * config/i386/gthr-win32.c: Adjust include order.
- Define __GTHREAD_I486_INLINE_LOCK_PRIMITIVES before including
- gthr-win32.h.
- (__gthr_win32_mutex_init_function, __gthr_win32_mutex_lock,
- __gthr_win32_mutex_trylock, __gthr_win32_mutex_unlock): Adjust
- to match inline versions in gthr-win32.h.
-
-2004-06-23 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_use_dfa_pipeline_interface): Delete.
- (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Redefine a hook_int_void_1.
- (insvdi_rshift_rlwimi_p): New function.
- * config/rs6000/rs6000.md (insvdi_internal2/3): New patterns.
- (extendsfdf2): Convert to define_insn_and_split.
- * config/rs6000/rs6000-protos.h (insvdi_rshift_rlwimi_p): Prototype.
-
-2004-06-23 Andrew Pinski <apinski@apple.com>
-
- * c-typeck.c (composite_type, <case ARRAY_TYPE>): Abort if we have
- type qualifiers at all.
- If both of the type domains are null and the new element type is
- the same as one of the, return the one which the element type.
- matches.
- Do not call qualify_type on the new type.
-
-2004-06-23 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h (DEFAULT_MAIN_RETURN): Remove.
-
-2004-06-23 Roger Sayle <roger@eyesopen.com>
-
- * convert.c (strip_float_extension): Skip both NOP_EXPR and
- CONVERT_EXPR floating point extensions.
-
-2004-06-23 Diego Novillo <dnovillo@redhat.com>
-
- * Makefile.in (tree-vn.o): New.
- (tree-ssa-pre.o): Don't depend on RTL_H.
- * tree-dfa.c (find_referenced_vars): Don't call init_tree_ssa.
- * tree-flow.h (struct var_ann_d): Remove field expr_set.
- (add_to_value, expressions_equal_p, get_value_handle, vn_compute,
- vn_lookup_or_add, vn_add, vn_lookup, vn_init, vn_delete): Declare.
- * tree-optimize.c (execute_init_datastructures): New local function.
- (pass_init_datastructures): New local variable.
- (init_tree_optimization_passes): Sequence pass_init_datastructures.
- * tree-pretty-print.c (MASK_POINTER): Remove.
- (dump_generic_node): Handle VALUE_HANDLE.
- * tree-ssa-pre.c: Move all value numbering routines to tree-vn.c.
- Update callers to use new function names.
- Use VALUE_HANDLE_ID and VALUE_HANDLE_EXPR_SET instead of
- variable annotations.
- * tree-ssa.c (init_tree_ssa): Call vn_init.
- (delete_tree_ssa): Call vn_delete.
- * tree-vn.c: New file.
- * tree.c (tree_size): Handle VALUE_HANDLE.
- (tree_node_structure): Likewise.
- (iterative_hash_expr): Likewise.
- * tree.def (VALUE_HANDLE): New code.
- * tree.h (struct tree_value_handle): New.
- (VALUE_HANDLE_ID): Define.
- (VALUE_HANDLE_EXPR_SET): Define.
- (enum tree_node_structure_enum): Add TS_VALUE_HANDLE.
- (union tree_node): Add struct tree_value_handle.
-
-2004-06-23 Andrew Pinski <apinski@apple.com>
-
- * c-typeck.c (composite_type):
- <case POINTER_TYPE>: Build a qualified type of
- the new type.
- <case ARRAY_TYPE>: Likewise.
- <case FUNCTION_TYPE>: Likewise.
-
-2004-06-23 Pat Haugen <pthaugen@us.ibm.com>
-
- PR optimization/15633
- * value-prof.c (divmod_fixed_value_transform): Compute probability
- of taking optimal path and pass along to gen_ routine.
- (mod_pow2_value_transform): Same.
- (mod_subtract_transform): Same.
- (gen_divmod_fixed_value): Add new probability parameter.
- Add probability to newly created jump.
- (gen_mod_pow2): Same.
- (gen_mod_subtract): Same.
-
-2004-06-23 Richard Earnshaw <rearnsha@arm.com>
-
- * PR target/15948
- * arm.md (bicsi3_cbranch): Add alternative to handle tying operands
- one and two.
-
-2004-06-23 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/15927
- * arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary
- reload if CLASS is BASE_REGS.
-
-2004-06-23 Richard Sandiford <rsandifo@redhat.com>
-
- * gengtype-yacc.y (option): Avoid use of non-constant struct
- initializer.
-
-2004-06-23 Nathan Sidwell <nathan@codesourcery.com>
-
- * doc/extend.texi (Function Attributes): Alphabetize.
-
-2004-06-23 Richard Henderson <rth@redhat.com>
-
- * c-gimplify.c (gimplify_decl_stmt): Update gimplify_type_sizes call.
- Use gimplify_and_add.
- * c-typeck.c (c_finish_if_stmt): Use NULL instead of empty stmt.
- * gimplify.c (build_and_jump, gimplify_exit_expr,
- gimplify_init_constructor, gimplify_save_expr, gimple_push_cleanup,
- gimplify_stmt, gimplify_expr): Likewise.
- (shortcut_cond_expr): Handle NULL arms of COND_EXPR.
- (gimplify_statement_list): Remove NULL entries.
- (gimplify_to_stmt_list): Handle NULL results.
- (gimplify_type_sizes): Add list_p argument.
- (gimplify_one_sizepos): Don't use internal pre/post queue.
- * tree-gimple.h (gimplify_type_sizes): Update.
-
-2004-06-22 Eric Christopher <echristo@redhat.com>
-
- * config/rs6000/rs6000.md (*insvsi_internal5/6): New patterns.
-
-2004-06-22 Pat Haugen <pthaugen@us.ibm.com>
-
- * cfghooks.c (make_forwarder_block): Decrement count on fallthru edge
- when redirecting back edges.
-
- * cfghooks.c (split_block): Call make_single_succ_edge so that edge
- count/probability are set correctly.
-
-2004-06-22 Richard Henderson <rth@redhat.com>
-
- * c-typeck.c (emit_side_effect_warnings): Ignore error marks.
- (c_finish_stmt_expr): Likewise.
-
- * config/i386/i386.c (TARGET_STRUCT_VALUE_RTX): New.
- (ix86_return_in_memory): Move SSE vector return warning ...
- (ix86_struct_value_rtx): ... here. New.
-
-2004-06-22 Richard Henderson <rth@redhat.com>
-
- * tree.def (VTABLE_REF): Remove.
- (OBJ_TYPE_REF): New.
- (TRY_CATCH_EXPR, TRY_FINALLY_EXPR): Set type 's'.
- * expr.c (expand_expr_real_1): Replace VTABLE_REF with OBJ_TYPE_REF.
- * fold-const.c (non_lvalue): Likewise.
- * gimplify.c (gimplify_expr): Likewise.
- (gimplify_call_expr): Use is_gimple_call_addr.
- * langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New.
- * langhooks.h (fold_obj_type_ref): New.
- * tree-gimple.c (is_gimple_call_addr): New.
- * tree-gimple.h (is_gimple_call_addr): Declare.
- * tree-inline.c (inlinable_function_p): Fix merge error.
- (estimate_num_insns_1): Replace VTABLE_REF with OBJ_TYPE_REF.
- * tree-pretty-print.c (dump_generic_node): Likewise.
- (print_call_name): Handle OBJ_TYPE_REF.
- * tree-ssa-ccp.c (fold_stmt): Fold OBJ_TYPE_REF.
- * tree-ssa-operands.c (get_expr_operands): Handle OBJ_TYPE_REF.
- * tree.h (OBJ_TYPE_REF_EXPR): New.
- (OBJ_TYPE_REF_OBJECT, OBJ_TYPE_REF_TOKEN): New.
- * doc/c-tree.texi (VTABLE_REF): Remove.
- * objc/objc-act.c (build_objc_method_call): Build an OBJ_TYPE_REF.
-
-2004-06-22 Richard Henderson <rth@redhat.com>
-
- PR middle-end/16026
- * function.c (assign_parms): Don't abort for overaligned PARALLEL.
-
-2004-06-22 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * Makefile.in (distclean): Don't try to remove empty directories.
-
-2004-06-22 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/15869
- * config/mips/mips.c (mips_avoid_hazards): Call split_all_insns_noflow.
-
-2004-06-22 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.md (movdi, movdf): Use high/low for movu
- operands.
-
-2004-06-22 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.c (legitimate_offset_address_p): Make
- global, rename rs6000_legitimate_offset_address_p.
- (rs6000_legitimate_address_p): Adjust calls to it.
- (lmw_operation): Ditto.
- (stmw_operation): Ditto.
- * config/rs6000/rs6000-protos.h: Declare it.
- * config/rs6000/rs6000.md (*movdf_hardfloat32): Use it
- instead of offsettable_memref_p.
-
-2004-06-22 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_legitimate_address): Disallow
- [reg+reg] mode for TFmode memory accesses.
- (rs6000_eliminate_indexed_memrefs): New.
- (rs6000_emit_move): Call preceding for TImode and TFmode.
-
-2004-06-22 Paolo Bonzini <bonzini@gnu.org>
-
- * tree-cfg.c (pass_warn_function_return): It needs
- CFG, not SSA.
-
-2004-06-22 Nathan Sidwell <nathan@codesourcery.com>
-
- * doc/invoke.texi (Machine Dependent Options): Alphabetize.
- (Submodel Options): Likewise.
-
-2004-06-21 Andrew Pinski <apinski@apple.com>
-
- Radar #: 3701874
- * c-decl.c (push_file_scope): Return early if we already
- have a file scope.
-
-2004-06-21 Geoffrey Keating <geoffk@apple.com>
-
- * c-opts.c (c_common_handle_option): Handle -fpch-preprocess.
- * c-common.h (flag_pch_preprocess): Declare.
- (c_common_pch_pragma): Likewise.
- * c-common.c (flag_pch_preprocess): New.
- * c-pch.c (c_common_read_pch): Support -fpreprocess-only.
- (c_common_pch_pragma): New.
- * c-ppoutput.c (cb_read_pch): New.
- (init_pp_output): Support -fpch-preprocess.
- * c-pragma.c (init_pragma): Support #pragma GNUC pch_preprocess.
- * c.opt (fpch-preprocess): New.
- * gcc.c (cpp_options): When save-temps, pass -fpch-preprocess.
- * doc/cppopts.texi: Document -fpch-preprocess.
- * doc/invoke.texi (Precompiled Headers): Mention that
- -fpreprocessed is safe for PCH. Mention that if an option is
- listed as safe that doesn't mean it does what you expect.
-
-2004-06-22 Ben Elliston <bje@au.ibm.com>
-
- * tree-ssa.c (ssa_redirect_edge): Correct leading comment.
-
-2004-06-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * Makefile.in (gimplify.o): Add cgraph.h.
- * alias.c (adjust_offset_for_component_ref): Use
- component_ref_field_offset.
- * c-decl.c (build_array_declarator): Add news args for ARRAY_REF.
- * c-gimplify.c (gimplify_expr_stmt): Use alloc_stmt_list.
- (gimplify_decl_stmt): Call gimplify_type_sizes for type.
- For decl, call gimplify_one_sizepos and use statement list.
- (gimplify_compound_literal_expr): New arg PRE_P.
- Add statement to PRE_P list and return DECL.
- (c_gimplify_expr, case COMPOUND_LITERAL_EXPR): Add arg to
- gimplify_compound_literal_expr.
- * c-tree.h (getdecls): Deleted.
- * c-typeck.c (build_component_ref): Add operand for COMPONENT_REF.
- (build_array_ref): Add two operands for ARRAY_REF.
- (build_unary_op): Set TREE_INVARIANT and TREE_CONSTANT for
- COMPOUND_LITERAL_EXPR.
- * coverage.c (tree_coverage_counter_ref): Add new operands
- for ARRAY_REF.
- * emit-rtl.c (component_ref_for_mem_expr): Add new operand
- for COMPONENT_REF.
- (set_mem_attributes_minus_bitpos): Use array_ref_low_bound
- and array_ref_element_size.
- (widen_memory_access):Use component_ref_field_offset.
- * explow.c (update_nonlocal_goto_save_area): Add two operands
- for ARRAY_REF.
- * expr.c (array_ref_element_size, array_ref_low_bound): New functions.
- (component_ref_field_offset): Likewise.
- (get_inner_reference): Use them.
- (expand_expr_real_1, case ARRAY_REF): Use array_ref_low_bound.
- * fold-const.c (fold, case EQ_EXPR): Properly handle DECL_SIZE.
- (fold_read_from_constant_string): Use array_ref_low_bound.
- Verify that result is a character type.
- (build_fold_indirect_ref): Add two operands for ARRAY_REF.
- * function.c (expand_function_start): Likewise.
- * gimple-low.c (expand_var_p): Delete duplicated line.
- * gimplify.c: Add static decls for local functions.
- (cgraph.h): Now included.
- (create_tmp_var): Remove check for ARRAY_TYPE.
- (copy_if_shared_r): Look at bounds and sizes of types.
- (build_and_jump): Return alloc_stmt_list instead of build_empty_stmt.
- (gimplify_exit_expr, shortcut_cond_expr): Likewise.
- (gimplify_save_expr, gimple_push_cleanup): Likewise.
- (gimplify_init_constructor): Likewise.
- WANT_VALUE now bool.
- If empty list with no result wanted, return GS_UNHANDLED.
- Add additional operands for ARRAY_REF and COMPONENT_REF.
- (canonicalize_component_ref): Convert to &array[L].
- (gimplify_array_ref_to_plus): Use array_ref_element_size and
- array_ref_lower_bound.
- (build_addr_expr_with_type, build_addr_expr): New functions.
- (gimplify_compound_lval): WANT_LVALUE now bool.
- Major rework to allow handle_component_p and initialize and
- gimplify new operands for ARRAY_REF, ARRAY_RANGE_REF, and
- COMPONENT_REF.
- (gimplify_array_ref): Deleted.
- (gimplify_self_mod_expr): WANT_VALUE now bool.
- (gimplify_modify_expr): Gimplify to_p and from_p later.
- Factor out code into gimplify_modify_expr_rhs and call twice.
- Move variable-size code earlier and handle PLACEHOLDER_EXPR.
- (gimplify_modify_expr_rhs, gimplify_variable_sized_compare): New fns.
- (gimplify_addr_expr, case VIEW_CONVERT_EXPR): New case.
- (gimplify_expr, case ARRAY_REF): Delete special case.
- Instead handle like COMPONENT_REF; also do ARRAY_RANGE_REF,
- IMAGPART, and REALPART the same way.
- (gimplify_expr, case VIEW_CONVERT_EXPR): New case.
- (gimplify_expr): Call gimplify_variable_sized_compare if applicable.
- Call alloc_stmt_list instead of build_empty_stmt.
- Deal with _REF that's volatile.
- (gimplify_type_sizes, gimplify_one_sizepos): New functions.
- (unshare_body, unvisit_body): New functions.
- (gimplify_body): Call them.
- * stmt.c (expand_stack_alloc): Don't expand TYPE_MAX_VALUE.
- * stor-layout.c (get_pending_sizes): Don't change SAVE_EXPR_CONTEXT.
- * tree-alias-common.c (get_alias_var): Also skip ARRAY_RANGE_REF.
- * tree-cfg.c (tree_node_can_be_shared): Treat ARRAY_RANGE_REF
- like ARRAY_REF.
- (verify_expr, case ADDR_EXPR): Use handled_component_p.
- * tree-dfa.c (get_virtual_var): Likewise.
- * tree-dump.c (dequeue_and_dump, case COMPONENT_REF, ARRAY_REF):
- New cases to dump new operands; likewise for ARRAY_RANGE_REF.
- * tree-eh.c (tree_could_trap, case ARRAY_RANGE_REF): Like ARRAY_REF.
- * tree-gimple.c (is_gimple_addr_expr_arg): Add ARRAY_RANGE_REF
- and INDIRECT_REF.
- (get_base_address): Use handled_component_p.
- * tree-gimple.h (gimplify_type_sizes, gimplify_one_sizepos): New.
- * tree-inline.c (walk_tree): Walk more things for types and decls.
- * tree-mudflap.c (mf_build_check_statement_for): Add new operands
- for ARRAY_REF and COMPONENT_REF.
- (mx_xform_derefs_1): Clean up usage of decl sizes.
- * tree-nested.c (build_addr): Use handled_component_p.
- (walk_stmts, case CATCH_EXPR): Add missing "break".
- (get_static_chain, get_frame_field): Add new operand for COMPONENT_REF.
- (finalize_nesting_tree_1): Likewise.
- (convert_nonlocal_reference, case ARRAY_RANGE_REF): Like ARRAY_REF
- and process additional operands.
- (convert_local_reference): Likewise.
- * tree-outof-ssa.c (discover_nonconstant_array_refs_r): Treat
- ARRAY_RANGE_REF similarly to ARRAY_REF.
- * tree-pretty-print.c (dump_generic_node, case QUAL_UNION_TYPE): Handle
- like RECORD_TYPE.
- (dump_generic_node, case COMPONENT_REF): Print offset operand.
- (dump_generic_node, case ARRAY_RANGE_REF): Treat like ARRAY_REF
- and print lower bound and element size for both.
- (op_prio, case ARRAY_RANGE_REF): Like ARRAY_REF.
- * tree-sra.c (csc_build_component_ref): Add new operand.
- (scalarize_call_expr): Use get_base_address.
- * tree-ssa-ccp.c (widen_bitfield): Clean up size handling.
- (maybe_fold_offset_to_array_ref): Rework to handle input having an
- ARRAY_REF, refine handling of lower bound, and add new operands
- for ARRAY_REF.
- (maybe_fold_to_component_ref): Add new operand for COMPONENT_REF.
- (maybe_fold_stmt_indirect): Only fold *&B to B if types match.
- (maybe_fold_stmt_addition): Only handle constant lower bound.
- * tree-ssa-operands.c (get_expr_operands): Minor rearrangements.
- Treat ARRAY_REF and ARRAY_RANGE_REF the same; look at extra operands.
- Look at new offset operand of COMPONENT_REF.
- * tree-ssa.c (set_is_used): Use handled_component_p.
- * tree.c (substitute_in_expr, case COMPONENT_REF): Add new operand.
- (stabilize_reference, case COMPONENT_REF): Likewise.
- (stabilize_reference, case ARRAY_RANGE_REF, ARRAY_REF): Similarly.
- (recompute_tree_invariant_for_addr_expr): Completely rework to
- be more precise. Also set TREE_SIDE_EFFECTS.
- (build1_stat, case ARRAY_EXPR): Don't handle TREE_SIDE_EFFECTS here.
- (build2_stat, build3_stat, build4_stat): For references,
- propagate TREE_THIS_VOLATILE.
- (get_unwidened): Add new operand for COMPONENT_REF.
- (get_narrower): Likewise; use host_integerp for DECL_SIZE.
- * tree.def (COMPONENT_REF): Add new operand.
- (ARRAY_REF, ARRAY_RANGE_REF): Add two new operands.
- * tree.h (array_ref_element_size, array_ref_low_bound): New decls.
- (component_ref_field_offset): Likewise.
- * config/alpha/alpha.c (alpha_va_start): Add new op for COMPONENT_REF.
- (alpha_gimplify_va_arg): Likewise.
- * config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
- * config/i860/i860.c (i860_va_start, i860_va_arg): Likewise.
- * config/iq2000/iq2000.c (iq2000_va_arg): Likewise.
- * config/mips/mips.c (mips_va_start, mips_va_arg): Likewise.
- * config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg):
- Likewise.
- * config/s390/s390.c (s390_va_start, s390_gimplify_va_arg): Likewise.
- * config/sh/sh.c (sh_va_start, sh_va_arg): Likewise.
- * config/stormy16/stormy16.c (xstormy1_expand_builin_va_start):
- Likewise.
- (xstormy16_expand_builtin_va_arg): Likewise.
- * config/xtensa/xtensa.c (xtensa_va_start, xtensa_va_arg): Likewise.
- * objc/objc-act.c (generate_static_references): Likewise.
- (generate_strings, build_method_prototype_list_template): Likewise.
- (generate_protocol_list): Likewise.
-
-2004-06-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR rtl-optimization/14782
- * pa.c (emit_move_sequence): Use SFmode for 4-byte modes when doing
- the address checks for secondary reloads for loads from and stores
- to floating-point registers.
- * pa.h (EXTRA_CONSTRAINT, case T): Use SFmode for 4-byte modes
- in the address check. Move work around for ELF32 targets to
- GO_IF_LEGITIMATE_ADDRESS.
- (GO_IF_LEGITIMATE_ADDRESS): Require constant offsets to be
- correctly aligned for DImode loads and stores. Don't allow long
- SFmode displacements on ELF32.
-
-2004-06-21 Richard Henderson <rth@redhat.com>
-
- PR rtl-opt/16114
- * cse.c (merge_equiv_classes): Also rehash in response to
- delete_reg_equiv changes.
- (rehash_using_reg): Don't exclude REGs from rehashing.
-
-2004-06-21 Richard Henderson <rth@redhat.com>
-
- * c-common.def (RETURN_STMT): Remove.
- * c-common.h (RETURN_STMT_EXPR): Remove.
- (c_expand_return, build_return_stmt): Remove.
- (c_common_stmt_codes): Remove RETURN_STMT.
- * c-dump.c (dump_next_stmt): Remove.
- (c_dump_tree): Remove RETURN_STMT.
- * c-decl.c (finish_function): Use c_finish_return.
- * c-parse.in (stmt): Likewise.
- * c-gimplify.c (gimplify_return_stmt): Remove.
- (c_gimplify_expr): Remove RETURN_STMT.
- * c-pretty-print.c (pp_c_statement): Likewise.
- * c-semantics.c (build_return_stmt): Remove.
- * c-tree.h (c_finish_return): Declare.
- * c-typeck.c (c_finish_return): Rename from c_expand_return.
- Return void. Build RETURN_EXPR directly.
- * tree-dump.h (dump_next_stmt): Remove.
-
-2004-06-21 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (start_function): Don't call make_decl_rtl. Don't
- look at TREE_ADDRESSABLE of symbol name.
-
-2004-06-21 Kelley Cook <kcook@gcc.gnu.org>
-
- PR target/15551
- * config/i386/i386.md: Change UNSPEC_STACK_PROBE to UNSPECV_STACK_PROBE.
- (allocate_stack_worker): Make unspec_volatile.
- (allocate_stack_worker_rex64): Likewise.
- (allocate_stack_worker_postreload): Likewise.
- (allocate_stack_worker_rex64_postreload): Likewise.
-
-2004-06-21 Daniel Berlin <dberlin@dberlin.org>
-
- Fix PR optimization/15982
- * tree-ssa-pre.c: Update a few comments and todos to
- reflect constants change.
- (get_value_handle): Constants now value number to themselves.
- (lookup): Constants lookup to themselves.
- (add_to_value): Adjust to always be on.
- (set_contains_value): Adjust for constants change.
- (find_leader): Ditto.
- (phi_translate): 'r' nodes are never ANTIC right now.
- (valid_in_set): Ditto.
- (get_expr_set): New function.
- (find_or_generate_expression): New function, broken out from
- insert_aux.
- (create_expression_by_pieces): Ditto, plus additional
- machinery to handle complex values.
- (compute_avail): Remove dead RETURN_EXPR handling.
-
-2004-06-21 Steven Bosscher <stevenb@suse.de>
-
- * config/i386/i386.c: Include insn-codes.h
- * config/i386/i386.h (FLAGS_REG, FPSR_REG, DIRFLAG_REG): Don't
- define here.
- * config/i386/i386.md (BP_REG, SP_REG, FLAGS_REG, FPSR_REG,
- DIRFLAG_REG): New define_constants. Use them everywhere.
-
-2004-06-21 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/t-linux (MULTILIB_OPTIONS): Remove.
-
-2004-06-21 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (SUPPORT_SH1, SUPPORT_SH2E, SUPPORT_SH4): Conditionally define.
- (SUPPORT_SH4_SINGLE): Likewise.
- (TARGET_SWITCHES): Break out switches for cpu subtargets:
- (TARGET_SWITCH_SH1, TARGET_SWITCH_SH2, TARGET_SWITCH_SH2E): Define.
- (TARGET_SWITCH_SH3, TARGET_SWITCH_SH3E): Likewise.
- (TARGET_SWITCH_SH4_SINGLE_ONLY, TARGET_SWITCH_SH4_SINGLE): Likewise.
- (TARGET_SWITCH_SH4_NOFPU, TARGET_SWITCH_SH4): Likewise.
- (TARGET_SWITCH_SH5_64MEDIA, TARGET_SWITCH_SH5_64MEDIA_NOFPU): Likewise.
- (TARGET_SWITCHES_SH5_32MEDIA): Likewise.
- (TARGET_SWITCHES_SH5_32MEDIA_NOFPU): Likewise.
- (SELECT_SH5_64, SELECT_SH5_64_NOFPU): Rename to:
- (SELECT_SH5_64MEDIA, SELECT_SH5_64MEDIA_NOFPU)
- (SELECT_SH5_32, SELECT_SH5_32_NOFPU): Rename to:
- (SELECT_SH5_32MEDIA, SELECT_SH5_32MEDIA_NOFPU).
- (SH_MULTILIB_CPU_DEFAULT, MULTILIB_DEFAULTS): Define.
- (ASM_ISA_SPEC_DEFAULT, ASM_ISA_DEFAULT_SPEC): Likewise.
- * sh64.h (ASM_SPEC, LINK_DEFAULT_CPU_EMUL): Don't redefine.
- (TARGET_DEFAULT): Likewise.
- * config/sh/t-elf: Amend comment.
- * config/sh/t-1e, config/sh/t-mlib-sh1: New files.
- * config/sh/t-mlib-sh2, config/sh/t-mlib-sh2e: Likewise.
- * config/sh/t-mlib-sh3, config/sh/t-mlib-sh3e: Likewise.
- * config/sh/t-mlib-sh4, config/sh/t-mlib-sh4-nofpu: Likewise.
- * config/sh/t-mlib-sh4-single: Likewise.
- * config/sh/t-mlib-sh4-single-only: Likewise.
- * config/sh/t-mlib-sh5-32media: Likewise.
- * config/sh/t-mlib-sh5-32media-nofpu: Likewise.
- * config/sh/t-mlib-sh5-64media: Likewise.
- * config/sh/t-mlib-sh5-64media-nofpu: Likewise.
- * config/sh/t-mlib-sh5-compact: Likewise.
- * config/sh/t-mlib-sh5-compact-nofpu: Likewise.
- * config/sh/t-sh: (MULTILIB_ENDIAN): Add mb.
- (MULTILIB_CPUS): Define.
- (MULTILIB_OPTIONS): Use MULTILIB_CPUS.
- (MULTILIB_MATCHES): Use some shell code to calculate it.
- (MULTILIB_EXCEPTIONS): Change to ml/m1.
- * config/sh/elf.h (SUBTARGET_ASM_ISA_SPEC): Use ASM_ISA_DEFAULT_SPEC.
- * config/sh/netbsd-elf.h: Update code which sets TARGET_VERSION_CPU.
- (LINK_DEFAULT_CPU_EMUL): Don't redefine.
- (NO_PROFILE_COUNTERS): Define to 1.
- * config/sh/t-netbsd (MULTILIB_OPTIONS): Don't append to.
- (MULTILIB_DIRNAMES, MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
- * config/sh/t-netbsd-sh5-64 (MULTILIB_OPTIONS): Don't redefine.
- (MULTILIB_MATCHES): Don't zap.
- (MULTILIB_DIRNAMES): Use MULTILIB_RAW_DIRNAMES.
- * config/sh/t-sh64 (MULTILIB_OPTIONS): Don't redefine.
- (MULTILIB_MATCHES, MULTILIB_EXCEPTIONS): Don't zap.
- (MULTILIB_RAW_DIRNAMES): Define.
- (MULTILIB_DIRNAMES): Use it.
- * config.gcc: Also set cpu_type / need_64bit_hwint for sh[be]*-*-*.
- (sh*linux configurations): Merge into:
- (sh*elf / sh*kaos configurations). Support --with-endian, --with-cpu,
- --with-multilib-list options. Support sh-superh-elf configuration.
- (sh*-netbsd*): Use SELECT_SH* macros.
- (supported_defaults): sh[123456ble]-*-* | sh-*-* support "cpu".
- Merge sh*-*-netbsd* configurations into sh-elf configurations.
- * config/sh/t-netbsd-sh5, config/sh/t-be, config/sh/t-le: Delete.
- * config/sh/t-monolib: Likewise.
-
-2004-06-21 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Soft-float need
- not imply FPA.
-
-2004-06-21 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (operand_equal_p): Pass flags in recursive calls for
- binary and relational operations. Add support for TRUTH_ANDIF_EXPR,
- TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR.
- * tree.c (commutative_tree_code): Also list UNORDERED_EXPR,
- ORDERED_EXPR, UNEQ_EXPR, LTGT_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR
- and TRUTH_XOR_EXPR.
-
-2004-06-21 Paolo Bonzini <bonzini@gnu.org>
-
- * rtlanal.c (may_trap_p): Mark LTGT as trapping.
-
-2004-06-21 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * tree-alias-common.h (struct tree_alias_ops): Change ip and
- ip_partial to unsigned int.
-
-2004-06-21 Richard Henderson <rth@redhat.com>
-
- * c-common.c (verify_sequence_points): Export.
- (c_expand_expr_stmt): Move to c-typeck.c.
- * c-common.h (c_expand_expr_stmt): Remove.
- (verify_sequence_points): Declare.
- * c-mudflap.c (mflang_flush_calls): Use c_finish_expr_stmt.
- * c-parse.in (for_init_stmt, stmt): Likewise.
- * c-tree.h (c_finish_expr_stmt): Declare.
- (c_tree_expr_nonnegative_p): Remove.
- * c-typeck.c (c_tree_expr_nonnegative_p): Remove.
- (build_conditional_expr, build_binary_op): Use tree_expr_nonnegative_p.
- (emit_side_effect_warnings): New.
- (c_finish_expr_stmt): Rename from c_expand_expr_stmt. Use it.
- (c_finish_stmt_expr): Work without EXPR_STMT. Handle eh regions.
- Use emit_side_effect_warnings.
- (push_cleanup): Copy STATEMENT_LIST_STMT_EXPR.
- * fold-const.c (tree_expr_nonnegative_p): Handle TARGET_EXPR.
- * gimplify.c (gimplify_modify_expr): Don't discard TARGET_EXPR
- with void initializer.
- (gimplify_target_expr): Handle void BIND_EXPR initializer.
- * tree-inline.c (estimate_num_insns_1): Fix type lookup for
- INIT_EXPR and MODIFY_EXPR.
- * objc/objc-act.c (build_module_descriptor): Use add_stmt
- instead of c_expand_expr_stmt.
-
-2004-06-21 Paolo Bonzini <bonzini@gnu.org>
-
- * fold-const.c (fold_cond_expr_with_comparison):
- New function, extracted from fold.
- (fold): Extract code to fold A op B ? A : C, use
- it to fold A op B ? C : A. Really optimize
- A & N ? N : 0 where N is a power of two. Avoid
- relying on canonicalization and recursion for
- foldings of COND_EXPR to happen.
-
-2004-06-20 David Ayers <d.ayers@inode.at>
-
- * objc/objc-act.h (get_object_reference): Rename to
- get_protocol_reference.
- (super_type): Rename to objc_super_type.
- (selector_type): Rename to objc_selector_type.
- (id_type): Rename to objc_id_type.
- (instance_type): Rename to objc_instance_type.
- (protocol_type): Rename to objc_protocol_type.
- (IS_ID): Update reference to id_type.
- * objc/objc-act.c (get_object_reference): Rename to
- get_protocol_reference; add documentation; update references to
- id_type.
- (lookup_method_in_protocol_list): Rename class_meth to
- is_class; add documentation.
- (finish_message_expr): Rename is_class to class_tree.
- (synth_module_prologue, objc_is_object_ptr, objc_build_exc_ptr,
- next_sjlj_build_try_catch_finally, objc_begin_catch_clause,
- build_next_objc_exception_stuff, get_arg_type_list,
- build_objc_method_call): Update references to id_type.
- (synth_module_prologue, build_objc_symtab_template,
- build_selector_reference_decl, build_selector,
- build_selector_translation_table, build_typed_selector_reference,
- get_arg_type_list, synth_self_and_ucmd_args, get_arg_type_list,
- synth_self_and_ucmd_args): Update references to selector_type.
- (build_private_template, build_ivar_reference): Update references
- to instance_type.
- (synth_module_prologue, build_protocol_reference,
- build_protocol_expr, start_protocol): Update references to
- protocol_type.
- (synth_module_prologue, get_arg_type_list, build_objc_method_call):
- Update references to super_type.
- * c-parse.in: (typespec_nonreserved_nonattr): Update
- references to get_object_reference.
- * objc/objc-tree.def: Add C mode identifier sequence.
-
-2004-06-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * loop-invariant.c: New file.
- * Makefile.in (loop-invariant.o): New.
- * cfgloop.h (global_cost_for_size, init_set_costs,
- move_loop_invariants): Declare.
- * cfgloopanal.c (seq_cost, init_set_costs, global_cost_for_size): New
- functions.
- (avail_regs, res_regs, small_cost, pres_cost, spill_cost): New
- variables.
- * common.opt (floop-optimize2, fmove-loop-invariants): New options.
- * loop-init.c (loop_optimizer_init): Call init_set_costs.
- * passes.c (rest_of_handle_loop2): Call move_loop_invariants.
- (rest_of_compilation): Check flag_loop_optimize2.
- * toplev.c (process_options): Handle flag_loop_optimize2.
- * doc/invoke.texi (-floop-optimize2, -fmove-loop-invariants): Document.
- * doc/passes.texi (loop-invariant.c): Document.
-
-2004-06-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * tree-ssa-pre.c (compute_antic): Keep BB_VISITED flag zeroed.
-
-2004-06-20 Richard Henderson <rth@redhat.com>
-
- * stmt.c (warn_if_unused_value): Add locus argument.
- * tree.h (warn_if_unused_value): Update decl.
- * c-typeck.c (internal_build_compound_expr): Update call.
- * c-gimplify.c (gimplify_expr_stmt): Likewise.
-
-2004-06-20 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR middle-end/16089
- * builtins.c (entry_of_function): Move to ...
- * cfgrtl.c (entry_of_function): Here and make non-static.
- * integrate.c (emit_initial_value_sets): Use entry_of_function.
- * rtl.h (entry_of_function): Prototype.
-
-2004-06-20 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.c (pentium4_cost): Increase "lea" cost from 1 to 3.
- (ix86_rtx_costs) <ASHIFT, PLUS>: Consider ix86_cost->lea even when
- TARGET_DECOMPOSE_LEA.
-
-2004-06-20 Richard Henderson <rth@redhat.com>
-
- * c-common.h (add_decl_stmt): Move to cp-tree.h.
- * c-decl.c (finish_decl): Don't use add_decl_stmt.
- * c-parse.in: Likewise.
- * c-gimplify.c (gimplify_expr_stmt): Don't build CLEANUP_POINT_EXPR.
- (gimplify_c_loop, gimplify_return_stmt, gimplify_decl_stmt): Likewise.
- * c-semantics.c (add_decl_stmt): Move to cp/semantics.c.
-
-2004-06-20 Richard Henderson <rth@redhat.com>
-
- * c-common.def (IF_STMT, CLEANUP_STMT): Move to cp-tree.def.
- * c-common.h (IF_COND, THEN_CLAUSE, ELSE_CLAUSE, CLEANUP_BODY,
- CLEANUP_EXPR, CLEANUP_DECL): Move to cp-tree.h.
- (c_common_stmt_codes): Remove IF_STMT, CLEANUP_STMT.
- * c-dump.c (c_dump_tree): Move IF_STMT, CLEANUP_STMT to cp_dump_tree.
- * c-pretty-print.c (pp_c_statement): Similarly.
- * c-gimplify.c (gimplify_cleanup_stmt, gimplify_cleanup_stmts,
- gimplify_if_stmt): Move to cp-gimplify.c.
- (c_genericize, c_gimplify_expr): Don't call them.
- * c-semantics.c (push_cleanup): Move to cp/semantics.c.
- * c-typeck.c (push_cleanup): New.
- (c_begin_if_stmt, c_finish_if_cond, c_finish_then, c_finish_else,
- c_finish_if_stmt): Use COND_EXPR.
- * tree.h (CLEANUP_EH_ONLY): Update documentation.
-
-2004-06-20 Zack Weinberg <zack@codesourcery.com>
-
- * c-common.h (has_c_linkage): New interface.
- * c-cppbuiltin.c: Include target.h.
- (c_cpp_builtins): Define __PRAGMA_REDEFINE_EXTNAME and
- __PRAGMA_EXTERN_PREFIX when appropriate.
- * c-pragma.c: Include target.h.
- Document clarified semantics of symbol-renaming #pragmas.
- (handle_pragma_redefine_extname, handle_pragma_extern_prefix)
- (maybe_apply_renaming_pragma): Rewrite according to clarified
- semantics. Always recognize, but do not necessarily execute.
- (init_pragma): Unconditionally register symbol-renaming pragmas.
- * system.h: Poison HANDLE_PRAGMA_REDEFINE_EXTNAME
- and HANDLE_PRAGMA_EXTERN_PREFIX.
- * target.h (struct gcc_target): Add handle_pragma_redefine_extname
- and handle_pragma_extern_prefix flags.
- * target-def.h: Add defaults for TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME
- and TARGET_HANDLE_PRAGMA_EXTERN_PREFIX.
- * Makefile.in (c-pragma.o, c-cppbuiltin.o): Update dependencies.
- * config/sol2.h: Define TARGET_HANDLE_PRAGMA_REDEFINE_EXTNAME,
- not HANDLE_PRAGMA_REDEFINE_EXTNAME.
- (TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_REDEFINE_EXTNAME.
- (TRANSFER_FROM_TRAMPOLINE): Prototype mprotect.
- * config/alpha/osf.h: Define TARGET_HANDLE_PRAGMA_EXTERN_PREFIX,
- not HANDLE_PRAGMA_EXTERN_PREFIX.
- (TARGET_OS_CPP_BUILTINS): No need to define __PRAGMA_EXTERN_PREFIX.
- * doc/extend.texi (Solaris Pragmas, Tru64 Pragmas): Combine
- into one section "Symbol-Renaming Pragmas"; clarify; document
- adjusted semantics.
-
- * builtins.c (expand_builtin): Do not issue error for a builtin
- with no special case code and no DECL_ASSEMBLER_NAME; just do the
- library call.
- * c-decl.c (builtin_function): Don't call make_decl_rtl.
- * c-objc-common.c (has_c_linkage): Stub implementation.
- * cgraphunit.c (cgraph_expand_function)
- (cgraph_remove_unreachable_nodes): Don't clear DECL_ARGUMENTS.
-
-2004-06-19 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (fold_builtin_unordered_cmp): Take an EXP argument
- instead of both an ARGLIST and a result TYPE. Handle these C99
- comparison functions as "polymorphic" builtins. Also handle
- lowering of BUILT_IN_ISUNORDERED to an UNORDERED_EXPR tree node.
- (fold_builtin_1): Update calls to fold_builtin_unordered_cmp.
- Move handling of BUILT_IN_ISUNORDERED from here to there.
-
-2004-06-19 Richard Henderson <rth@redhat.com>
-
- * c-common.c, c-common.h (lang_gimplify_stmt): Remove.
- * c-gimplify.c: Remove unnecessary prototypes.
- (c_gimplify_stmt): Merge into ...
- (c_gimplify_expr): ... here. Don't play with prep_stmt.
- * c-semantics.c (prep_stmt): Remove.
- * gimplify.c (annotate_one_with_locus): Break out from ...
- (annotate_all_with_locus): ... here.
- (gimplify_expr): Add locus to expressions even if pre/post queues
- are not present.
-
-2004-06-19 Richard Henderson <rth@redhat.com>
-
- PR target/15941
- * function.c (assign_parms): If not padding upward or intentionally
- forcing upward padding, take offset_rtx into account when determining
- the alignment for stack_parm.
-
-2004-06-19 Richard Henderson <rth@redhat.com>
-
- PR target/15550
- * ifcvt.c (noce_try_move): Recognize all generated instructions.
-
-2004-06-19 Jan Hubicka <jh@suse.cz>
-
- * function.c (free_after_compilation): Do not free computed_goto_common*.
- * function.h (struct function): Kill computed_goto_common*.
- * stmt.c (expand_computed_goto): Do not commonize the computed gotos.
- * tree-cfg.c (disband_implicit_edges): Do not forward across the
- commonized computed goto.
-
-2004-06-19 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * doc/invoke.texi: Remove obsolete comment regarding PA 2.0 support
- in binutils.
-
-2004-06-19 Andrew Pinski <apinski@apple.com>
-
- PR c++/15721
- * toplev.c (wrapup_global_declarations): Do not check
- TREE_SYMBOL_REFERENCED of the DECL_ASSEMBLER_NAME but check
- cgraph_varpool_node's needed field.
-
-2004-06-19 Jan Hubicka <jh@suse.cz>
- Steven Bosscher <stevenb@suse.de>
-
- CFG transparent RTL expansion:
- * Makefile.in (cfgexpand.o): New object file.
- (builtins.o): Add dependency on basic-block.h
- * builtins.c: Include basic-block.h
- (entry_of_function): New function.
- (expand_builtin_apply_args, expand_builtin_saveargs): Use it.
- * cfgexpand.c: New file.
- * expr.c (execute_expand, pass_expand): Kill.
- * pass.c (rest_of_compilation): Do not build CFG unless called from
- coverage code.
- * tree-cfg.c (delete_tree_cfg): Rename to..
- (delete_tree_cfg_annotations): ... this one; Do not remove the CFG itself.
- * tree-flow.h (delete_tree_cfg_annotations): Declare.
- (dleete_tree_cfg): Kill.
- * tree-optimize.c (execute_rebuild_bind, pass_rebuild_bind): Kill.
- (execute_del_cfg): Rename to...
- (execute_free_datastructures): This one...
- (pass_del_cfg): Rename to...
- (pass_free_datastructures): ... this one; Do not kill PROP_cfg.
- (init_tree_optimization_passes): Make cfg build and profiling to happen
- unconditionally.
-
-2004-06-19 Steven Bosscher <stevenb@suse.de>
-
- * tree-mudflap.c (mf_decl_cache_locals): Skip labels before
- inserting the cache variables.
-
- * tree-mudflap.c: Include headers to make basic_block available.
- Move functions around such that related functions are near each
- other. Add prototypes for all static functions. Add comments
- briefly explaining what IR the mudflap1 and mudflap2 work on and
- what they do.
- (mudflap_function_decls): Rename to execute_mudflap_function_decls.
- (mudflap_function_ops): Rename to execute_mudflap_function_ops.
- (pass_mudflap_1, pass_mudflap_2): Update.
- (mf_decl_cache_locals): Make it work on the CFG instead of the saved
- function tree.
- (mf_build_check_statement_for): Make it work on the CFG.
- (mf_xform_derefs_1): Likewise. Cleanup code style.
- (mf_xform_derefs): Likewise.
-
-2004-06-19 Jan Hubicka <jh@suse.cz>
-
- * tree-cfg.c (label_to_block): Invent the label destination for
- undefined labels.
- (cleanup_dead_labels): Update table in the case label_to_block added
- new label.
-
-2004-06-18 Richard Henderson <rth@redhat.com>
-
- PR c++/16036
- * gimple-low.c (lower_function_body): Generate return statement for
- fall off the end of the function here ...
- * tree-cfg.c (make_edges): ... instead of here.
- * gimplify.c (gimplify_return_expr): Mark return temp TREE_NO_WARNING.
-
-2004-06-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * tree-ssa.c (raise_value): Removed.
- (get_eq_name, check_phi_redundancy): New functions.
- (kill_redundant_phi_nodes): Use standard ssa minimalization algorithm.
-
-2004-06-18 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) <UNORDERED_EXPR, ORDERED_EXPR, UNLT_EXPR,
- UNLE_EXPR, UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR, LTGT_EXPR>: Add
- constant folding for unordered comparison tree nodes. If both
- operands are real constants, call fold_relational_const. If either
- operand is a NaN, evaluate the other for side-effects and return a
- constant. Optimize (double)float1 CMP (double)float2 into the
- equivalent float1 CMP float2.
- (nondestructive_fold_binary_to_constant) <UNORDERED_EXPR,
- ORDERED_EXPR, UNLT_EXPR, UNLE_EXPR, UNGT_EXPR, UNGE_EXPR, UNEQ_EXPR,
- LTGT_EXPR>: Call fold_relational_const for constant operands.
- (fold_relational_const): Add support for unordered comparison tree
- nodes. Don't constant fold "ordered" floating point comparisons
- against NaN if when flag_trapping_math is set.
-
-2004-06-19 Jakub Jelinek <jakub@redhat.com>
-
- * fold-const.c (build_range_check): If !in_p and recursive call
- fails, exit immediately. If high - low overflows and etype is
- a signed type, retry with unsigned etype.
- (merge_ranges): If !in0_p and !in1_p, handle even range2 adjacent
- to range1 at TYPE_MAX_VALUE and TYPE_MIN_VALUE.
-
-2004-06-18 Richard Henderson <rth@redhat.com>
-
- * c-gimplify.c (gimplify_condition): Remove.
- (gimplify_c_loop, gimplify_if_stmt, gimplify_switch_stmt): Don't
- call it.
-
-2004-06-18 Richard Henderson <rth@redhat.com>
-
- * tree-eh.c (decide_copy_try_finally): Fix scaling of copy and
- switch estimates.
-
-2004-06-18 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/i386/darwin.h (HOT_TEXT_SECTION_NAME): Define.
- (NORMAL_TEXT_SECTION_NAME): Define.
- (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Define.
- (SECTION_FORMAT_STRING): Define.
-
-2004-06-18 Steven Bosscher <stevenb@suse.de>
-
- * config/xtensa/xtensa.c
- (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define.
- * xtensa.md: Replace the old pipeline description with a DFA model.
-
-2004-06-18 Steven Bosscher <stevenb@suse.de>
- Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
-
- * config/s390/s390.md: Remove the generic pipeline description.
- * config/s390/2064.md: Make all insn reservations apply to
- the z900, g5 and g6.
- * config/s390/s390.c (s390_use_dfa_pipeline_interface): Remove.
- (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
- Define to hook_int_void_1.
- (s390_adjust_cost): Cleanup. Don't check address dependency here.
- (s390_first_cycle_multipass_dfa_lookahead): Always return 4.
-
-2004-06-18 Daniel Berlin <dberlin@dberlin.org>
- Diego Novillo <dnovillo@redhat.com>
-
- * tree-dfa.c (create_var_ann): tree_ann -> tree_ann_t.
- (create_stmt_ann): Ditto.
- (create_tree_ann): New function.
- (create_cst_ann): Remove.
- (create_expr_ann): Ditto.
-
- * tree-flow-inline.h (cst_ann): Remove.
- (get_cst_ann): Ditto.
- (get_expr_ann): Ditto.
- (expr_ann): Ditto.
- (get_tree_ann): New function.
- (tree_ann): Ditto.
- (ann_type): tree_ann -> tree_ann_t.
- * tree-flow.h (tree_ann_type): CST_ANN, EXPR_ANN removed.
- (struct cst_ann_d): Removed.
- (struct expr_ann_d): Ditto.
- (union tree_ann_d): Removed cst and expr.
- (tree_ann): Renamed to tree_ann_t.
- * tree-ssa-ccp.c (set_rhs): tree_ann -> tree_ann_t.
- * tree-ssa-pre.c (get_value_handle): Rewrite for single common
- annotation.
- (set_value_handle): Ditto.
- (phi_translate): Ditto.
- * tree-tailcall.c (adjust_return_value): tree_ann -> tree_ann_t.
-
-2004-06-18 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/t-linux64: New file.
- * config.gcc: Add it to tmake_file for sh64*-*-linux*.
-
-2004-06-18 Paolo Bonzini <bonzini@gnu.org>
-
- * emit-rtl.c (unshare_all_rtl_1): New name of unshare_all_rtl.
- (unshare_all_rtl_again): Call unshare_all_rtl_1.
- (unshare_all_rtl): New.
- * function.c (instantiate_virtual_regs): Remove parameters.
- * function.h (instantiate_virtual_regs): Add prototype.
- * rtl.h (unshare_all_rtl): Add prototype.
- * tree.h (instantiate_virtual_regs, unshare_all_rtl): Remove
- prototype.
- * passes.c: Remove assertions on the parameters to
- rest_of_handle_* functions. Remove the parameters to
- the functions, replacing decl with current_function_decl
- and insns with get_insns ().
-
-2004-06-17 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (constant_boolean_node): Handle boolean_type_node
- directly, return either boolean_true_node or boolean_false_node.
-
-2004-06-18 Kelley Cook <kcook@gcc.gnu.org>
-
- * opts.sh: Delete. Break out generated code to next four files.
- * opt-gather.awk: New file.
- * optc-gen.awk: New file.
- * opth-gen.awk: New file.
- * opt-functions.awk: New common file.
- * Makefile.in: Update for above.
- * configure.ac: Update comment.
- * configure: Regenerate.
-
-2004-06-17 Richard Henderson <rth@redhat.com>
-
- * c-common.c (flag_objc_sjlj_exceptions): New.
- * c-common.h (flag_objc_sjlj_exceptions): Declare.
- * c-opts.c (c_common_handle_option): Set it.
- (c_common_post_options): Handle interation of different
- objective-c exception and runtime switches.
- * c-decl.c (c_eh_initialized_p): New.
- (finish_decl): Use it instead of local eh_initialized_p.
- * c-parse.in (nested_function, notype_nested_function): Record
- the result of compstmt.
- (compstmt_or_error): Likewise.
- (compstmt): Don't add_stmt the result.
- (stmt): Don't return anything. Rewrite objc try and sync rules.
- (objc_try_stmt, objc_catch_list): Remove.
- (objc_catch_block, objc_finally_block): Remove.
- (objc_catch_prefix, objc_catch_clause, objc_opt_catch_list): New.
- (objc_try_catch_clause, objc_finally_clause): New.
- (objc_try_catch_stmt): Rewrite.
- * c-tree.h (c_eh_initialized_p): Declare.
- * c-opt (fobjc-sjlj-exceptions): New.
- * except.c (output_function_exception_table): Don't call cgraph
- on non-decls.
- * objc/objc-act.c (UTAG_EXCDATA_VAR, UTAG_CAUGHTEXC_VAR,
- UTAG_RETHROWEXC_VAR, UTAG_EVALONCE_VAR, struct val_stack,
- catch_count_stack, exc_binding_stack, if_nesting_count,
- blk_nesting_count, objc_enter_block, objc_exit_block,
- objc_declare_variable, val_stack_push, val_stack_pop,
- objc_build_try_enter_fragment, objc_build_extract_expr,
- objc_build_try_exit_fragment, objc_build_extract_fragment,
- objc_build_try_prologue, objc_build_try_epilogue,
- objc_build_catch_stmt, objc_build_catch_epilogue,
- objc_build_finally_prologue, objc_build_finally_epilogue,
- objc_build_try_catch_finally_stmt, objc_build_synchronized_prologue,
- objc_build_synchronized_epilogue): Remove.
- (objc_create_temporary_var, struct objc_try_context, cur_try_context,
- objc_eh_runtime_type, objc_init_exceptions, objc_build_exc_ptr,
- next_sjlj_build_try_exit, next_sjlj_build_enter_and_setjmp,
- next_sjlj_build_exc_extract, next_sjlj_build_catch_list,
- next_sjlj_build_try_catch_finally, objc_begin_try_stmt,
- objc_begin_catch_clause, objc_finish_catch_clause,
- objc_build_finally_clause, objc_finish_try_stmt,
- objc_build_synchronized): New.
- (objc_is_object_id, objc_is_class_id): New.
- (objc_comptypes): Use them.
- (build_next_objc_exception_stuff): Break NeXT sjlj out from
- build_objc_exception_stuff.
- (synth_module_prologue): Update to match.
- (objc_build_throw_stmt): Use cur_try_context to decide if
- we're in a @catch.
- * objc/objc-act.h: Update prototypes.
- (OCTI_EXCEPTION_BLK_STACK, objc_exception_block_stack): Remove.
-
-2004-06-17 Andrew Pinski <apinski@apple.com>
-
- * c-typeck.c (tagged_types_tu_compatible_p <case UNION_TYPE>):
- Use TYPE_FIELDS instead of TYPE_VALUES.
-
-2004-06-17 Jason Merrill <jason@redhat.com>
-
- PR c++/16015
- * gimplify.c (gimplify_target_expr): Handle void initializer.
- * expr.c (expand_expr_real_1) [TARGET_EXPR]: Likewise.
- * doc/c-tree.texi (Expression trees): Update TARGET_EXPR
- and AGGR_INIT_EXPR.
-
-2004-06-17 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_relational_const): Use constant_boolean_node.
-
-2004-06-17 Jan Hubicka <jh@suse.cz>
-
- PR target/15433
- * i386.md (SSE SF cmov 0 splitter): The conditional is VOIDmode; fix
- operand numbering in the output template.
- (SSE DF cmov 0 splitter): The conditional is VOIDmode.
-
-2004-06-17 Jan Hubicka <jh@suse.cz>
-
- * except.c (can_throw_internal): Recognize RESX expresisons.
-
-2004-06-17 Jan Hubicka <jh@suse.cz>
-
- * cfgbuild.c (make_edges): Do not use label_value_list.
- (find_basic_blocks_1): Do not collect label_value_list.
- (find_sub_basic_blocks): Update call of make_edges.
-
-2004-06-17 Andrew MacLeod <amacleod@redhat.com>
-
- * tree-cfg.c (tree_make_forwarder_block): Use SET_PHI_RESULT.
- * tree-flow-inline.h (get_use_op_ptr): Return a use_operand_p.
- (get_use_from_ptr, get_def_from_ptr): New. Return operand pointers.
- (get_def_op_ptr): Return a def_operand_p instead of a 'tree *'.
- (get_v_may_def_result_ptr): Return a def_operand_p.
- (get_v_may_def_op_ptr, get_vuse_op_ptr): Return a use_operand_p.
- (get_v_must_def_op_ptr): Return a def_operand_p.
- (get_phi_result_ptr): New. Return a pointer to the result of a PHI.
- (get_phi_arg_def_ptr): New. Return a pointer to an argument of a PHI.
- (phi_element_for_edge): Remove.
- * tree-flow.h (propagate_value, replace_exp): Change prototype.
- (propagate_tree_value): Add new prototype.
- (phi_element_for_edge): Remove prototype.
- * tree-into-ssa.c (mark_def_sites): Use new operand types.
- (prepare_operand_for_rename): Split into two functions.
- (prepare_use_operand_for_rename): Prepare use operands.
- (prepare_def_operand_for_rename): Prepare def operands.
- (rewrite_stmt): Use new operand types.
- (rewrite_operand): Use new operand types, change parameter type.
- * tree-outof-ssa.c (replace_variable): Split into two functions.
- (replace_use_variable): Rewrite uses.
- (replace_def_variable): Rewrite defs.
- (rewrite_trees, rewrite_vars_out_of_ssa): Use new operand types.
- * tree-phinodes.c (make_phi_node, resize_phi_node): Use new types.
- (add_phi_arg, remove_phi_arg_num): Use new operand types.
- * tree-ssa-ccp.c (substitute_and_fold): Use new operand types.
- (ccp_fold, replace_uses_in): Use new operand types.
- * tree-ssa-copy.c (replace_ssa_names): Rename to replace_ssa_names_ann
- and no longer set the value, change parameter type.
- (replace_exp_1): Use new operand types.
- (propagate_value): Change parameter type, use new operand types.
- (propagate_tree_value): Propagate_value without SSA operands.
- (replace_exp, cprop_operand, cprop_into_stmt): Use new operand types.
- (cprop_into_successor_phis): Use new operand types.
- * tree-ssa-dom.c (thread_across_edge): Use new operand types.
- (eliminate_redundant_computations): Use new operand types.
- * tree-ssa-dse.c (fix_phi_uses): Use new operand_types.
- (fix_stmt_v_may_defs): Use new operand_types.
- * tree-ssa-live.c (create_ssa_var_map): Use new operand_types.
- (build_tree_conflict_graph): Use new operand_types.
- * tree-ssa-loop.c (duplicate_blocks): Use PHI_ARG_DEF_FROM_EDGE.
- * tree-ssa-operands.c (struct freelist_d): Remove.
- (check_optype_freelist, add_optype_freelist): Remove.
- (allocate_def_optype, allocate_use_optype, allocate_v_may_def_optype,
- allocate_vuse_optype, allocate_v_must_def_optype): Call ggc_alloc.
- (free_uses, free_defs, free_vuses, free_v_may_defs, free_v_must_defs):
- Call ggc_free instead of add_optype_freelist.
- (init_ssa_operands, fini_ssa_operands): Remove free list code.
- (finalize_ssa_defs, finalize_ssa_uses): Set new use/def operands.
- * tree-ssa-operands.h (struct def_optype_d): Change underlying type.
- (struct use_optype_d): Change underlying type.
- (def_operand_p, use_operand_p): New types for pointers to operands.
- (USE_OP, DEF_OP, V_MAY_DEF_RESULT, V_MAY_DEF_OP, VUSE_OP,
- V_MUST_DEF_OP): Use new pointer type instead of dereferencing directly.
- (USE_FROM_PTR, DEF_FROM_PTR): New macros to "dereference" operand
- pointer types.
- (SET_USE, SET_DEF): New macros to set operands from their pointer.
- (SET_USE_OP, SET_DEF_OP, SET_V_MAY_DEF_RESULT, SET_V_MAY_DEF_OP,
- SET_VUSE_OP, SET_V_MUST_DEF_OP): New SET routines for operands.
- (PHI_RESULT_PTR, PHI_RESULT, SET_PHI_RESULT): Macros to manage the
- PHI result as an operand.
- (PHI_ARG_DEF_PTR, PHI_ARG_DEF, SET_PHI_ARG_DEF, PHI_ARG_DEF_FROM_EDGE,
- PHI_ARG_DEF_PTR_FROM_EDGE): Macros to manage the PHI arguments.
- * tree-ssa-pre.c (eliminate): Call propagate_tree_value.
- * tree-tailcall.c (independent_of_stmt_p, propagate_through_phis): Use
- PHI_ARG_DEF_FROM_EDGE.
- * tree.h (PHI_RESULT): Renamed to PHI_RESULT_TREE.
- (PHI_ARG_DEF): Renamed to PHI_ARG_DEF_TREE.
-
-2004-06-17 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR tree-optimization/15991
- * tree-cfg.c (tree_block_label): Export.
- * tree-flow-inline.h (bsi_after_labels): New function.
- * tree-flow.h (bsi_after_labels, tree_block_label): Declare.
- * tree-ssa.c (propagate_into_addr): New function.
- (replace_immediate_uses): Handle propagation of pointer constants.
- (raise_value): Do not restrict propagation of pointer constants.
- * tree-ssanames.c (duplicate_ssa_name): New function.
- * tree.h (duplicate_ssa_name): Declare.
-
-2004-06-17 David Ayers <d.ayers@inode.at>
-
- * c-parse.in: Unify Objective-C token names.
-
-2004-06-17 Zack Weinberg <zack@codesourcery.com>
-
- Bug 14610
- * Makefile.in (min-insn-modes.o): Correct dependencies.
- * real.c (encode_ieee_extended, decode_ieee_extended): Always
- produce/consume 12-byte little-endian Intel format.
- (encode_ieee_extended_128, decode_ieee_extended_128): Delete.
- (encode_ieee_extended_motorola, decode_ieee_extended_motorola)
- (encode_ieee_extended_intel_96, decode_ieee_extended_intel_96)
- (encode_ieee_extended_intel_128, decode_ieee_extended_intel_128):
- New functions which convert between 12-byte little-endian Intel
- format and the desired format.
- (ieee_extended_motorola_format, ieee_extended_intel_96_round_53_format)
- (ieee_extended_intel_96_format, ieee_extended_intel_128_format):
- Update.
-
-2004-06-17 Zack Weinberg <zack@codesourcery.com>
-
- * expmed.c (expand_mult_const): In sanity check, compare only
- the bits of val and val_so_far that are significant in the
- result mode.
-
-2004-06-17 Daniel Berlin <dberlin@dberlin.org>
-
- * tree-ssa-pre.c: Update comments.
- (val_expr_pair_eq): Factor code from here.
- (expr_pred_trans_eq): and here.
- (expressions_equal_p): To here.
- (print_value_set): Print value for expression.
- (phi_trans_lookup): Rename some variables.
- (lookup): Ditto.
- (value_exists_in_set_bitmap): Ditto.
- (value_remove_from_set_bitmap): Ditto.
- (value_insert_into_set_bitmap): Ditto.
-
-2004-06-17 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-modes.def (CCL3mode): New machine mode.
- * config/s390/s390.c (s390_match_ccmode_set): Support CCL3mode.
- (s390_alc_comparison, s390_slb_comparison): Likewise.
- (s390_branch_condition_mask): Likewise.
- * config/s390/s390.md ("*subdi3_cc2", "*subdi3_cconly2"): New.
- ("*subsi3_cc2", "*subsi3_cconly2"): New.
-
- * config/s390/s390.h (PREDICATE_CODE): Accept SIGN_EXTEND and
- ZERO_EXTEND for s390_alc_comparison and s390_slb_comparison.
- * config/s390/s390.c (s390_alc_comparison, s390_slb_comparison):
- Handle SIGN_EXTEND and ZERO_EXTEND.
-
- * config/s390/s390-protos.h (s390_expand_addcc): New prototype.
- * config/s390/s390.c (s390_expand_addcc): New function.
- * config/s390/s390.md ("adddicc", "addsicc"): New expanders.
- ("*sconddi", "*scondsi", "*sconddi_neg", "*scondsi_neg"): New insns.
- ("sltu", "sgtu", "sleu", "sgeu"): New expanders.
-
-2004-06-17 Ben Elliston <bje@au.ibm.com>
-
- * tree-alias-common.c: Add whitespace.
- * tree-inline.c: Correct comment about this file's purpose.
- * tree-optimize.c: Likewise.
- * tree-tailcall.c: Likewise.
-
- * tree-alias-ander.h: Add standard top-of-file comment.
- * tree-alias-common.h: Likewise.
- * tree-alias-type.h: Likewise.
-
-2004-06-16 Daniel Berlin <dberlin@dberlin.org>
-
- * tree-ssa-pre.c (compute_avail): Value number uses as well.
- Strip useless type conversions.
- Casts have to be treated slightly different than normal unaries.
-
-2004-06-16 Richard Henderson <rth@redhat.com>
-
- * c-common.def (COMPOUND_STMT): Remove.
- * c-common.c (finish_fname_decls): Don't look through it.
- * c-typeck.c (c_tree_expr_nonnegative_p): Likewise.
- * c-common.h (COMPOUND_BODY): Remove.
- (c_common_stmt_codes): Remove COMPOUND_STMT.
- * c-dump.c (c_dump_tree): Likewise.
- * c-gimplify.c (c_gimplify_stmt): Likewise.
- * c-pretty-print.c (pp_c_statement): Likewise.
- * tree.h (DECL_SAVED_TREE): Update commentary.
- * doc/c-tree.texi (ASM_EXPR): Rename from ASM_STMT.
- (CASE_LABEL_EXPR): Rename from CASE_LABEL.
- (GOTO_EXPR): Rename from GOTO_STMT.
- (GOTO_FAKE_P): Remove.
- (COMPOUND_STMT): Remove.
- (HANDLER): Update wrt COMPOUND_STMT.
- (STMT_EXPR): Likewise.
- (LABEL_EXPR): Rename from LABEL_STMT.
- (SCOPE_STMT): Remove.
- * objc/objc-act.c (objc_build_try_catch_finally_stmt): Don't look
- through COMPOUND_STMT.
-
-2004-06-16 Richard Henderson <rth@redhat.com>
-
- * c-common.h (c_begin_if_stmt, c_begin_while_stmt,
- c_finish_while_stmt_cond): Remove decls.
- * c-parse.in (if_prefix): Don't save c_begin_if_stmt result.
- * c-typeck.c (c_begin_if_stmt): Return void.
- (c_begin_else): Tidy. Save stmt_count.
- * c-tree.h (c_begin_if_stmt): Update decl.
-
- * objc/objc-act.c (objc_build_try_enter_fragment,
- objc_build_extract_fragment, objc_build_try_epilogue,
- objc_build_catch_stmt, objc_build_catch_epilogue,
- objc_build_finally_prologue, objc_build_finally_epilogue): Update
- for if builder function changes.
-
-2004-06-16 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (struct machine_function): New member
- last_restore_gpr.
- (s390_frame_info): Add BASE_USED and RETURN_ADDR_USED parameters.
- Do not modify machine->save_return_addr_p or regs_ever_live.
- Fill in machine->last_restore_gpr.
- (s390_optimize_prolog): Use s390_frame_info to compute registers
- to save/restore, remove duplicated code.
- (s390_arg_frame_offset): Use s390_frame_info to compute frame
- size, remove duplicated code.
- (s390_emit_prologue): Adapt s390_frame_info call. Update
- machine->save_return_addr_p and regs_ever_live.
- (s390_emit_epilogue): Use machine->last_restore_gpr instead of
- machine->last_save_gpr.
-
-2004-06-16 Richard Henderson <rth@redhat.com>
-
- * c-parse.in (if_stmt_locus): Remove.
- (if_prefix): Increment stmt_count; pass it to c_finish_if_cond.
- (select_or_iter_stmt): Move empty if warnings to c-typeck.c.
- * c-typeck.c (if_elt): Sort by expected size. Rename locus to
- empty_locus. Add stmt_count, saw_else.
- (c_begin_if_stmt): Push if_stack here.
- (c_finish_if_cond): Rename from c_expand_end_cond. Record stmt_count.
- (c_finish_then, c_finish_else): Record empty_locus.
- (c_begin_else): Rename from c_expand_start_else. Record stmt_count.
- (c_finish_if_stmt): Rename from c_expand_end_cond. Warn for empty
- if or else body.
- * c-tree.h: Update prototypes.
-
-2004-06-16 Steven Bosscher <stevenb@suse.de>
-
- * tree.h (PHI_CHAIN): New.
- * (tree-cfg.c, tree-dfa.c, tree-flow-inline.h, tree-into-ssa.c,
- tree-outof-ssa.c, tree-phinodes.c, tree-pretty-print.c,
- tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-dom.c, tree-ssa-dse.c,
- tree-ssa-live.c, tree-ssa-loop.c, tree-ssa-phiopt.c, tree-ssa-pre.c,
- tree-ssa.c, tree-tailcall.c): Use PHI_CHAIN instead of TREE_CHAIN
- when traversing a list of PHI_NODEs.
-
-2004-06-16 Bernardo Innocenti <bernie@develer.com>
-
- PR target/13292
- * config/m68k/m68k.h (TARGET_SWITCHES): Don't remove MASK_68040_ONLY
- on -msoft-float.
- (TARGET_FLT_EVAL_METHOD): Don't advertise extended precision for
- 68040 and soft-float.
- * config/m68k/m68k.md (truncdfsf2): Explicitly require TARGET_68881
- in the TARGET_68040_ONLY case.
-
-2004-06-16 Peter Barada <peter@the-baradas.com>
-
- * config/m68k/m68k.md (movsi_cfv4): New pattern to allow mov3q.
- (movsi_cf): Make named, don't match TARGET_CFV4.
- (pushexthisi_const): Use mov3q if possible.
- (extendhisi2, cvf4_extendhisi2): Split extendhisi2 pattern
- to special case mvz.w for ColdFire V4.
- (extendqisi2, cvf4_extendqisi2): Split extendhisi2 pattern
- to special case mvz.b for ColdFire V4.
- (udivmodhi4, divmodhi4): Use mvz to zero extend arg for
- divide.
- (iorsi3, xorsi3, andsi3): Use bitfield instructions if possible.
- * config/m68k/m68k.c(valid_mov3q_const): New function.
- (const_method): SWAP is valid for ColdFire.
- (MULL_COST, MULW_COST): Fix costs for ColdFire V3/V4.
- * config/m68k/m68k-protos.h (valid_mov3q_const): Prototype here.
-
-2004-06-16 Richard Henderson <rth@redhat.com>
-
- * c-common.def (CASE_LABEL): Remove.
- * c-common.c (c_add_case_label): Use CASE_LABEL, not CASE_LABEL_DECL.
- (match_case_to_enum_1): Likewise.
- * c-common.h (c_common_stmt_codes): Remove CASE_LABEL.
- * c-dump.c (c_dump_tree): Likewise.
- * c-gimplify.c (c_gimplify_stmt): Likewise.
- * c-pretty-print.c (pp_c_statement): Likewise.
- * c-semantics.c (build_case_label): Use CASE_LABEL_EXPR.
- * tree.h (CASE_LOW): Update commentary.
-
-2004-06-16 Richard Henderson <rth@redhat.com>
-
- * c-common.def (ASM_STMT): Remove.
- * c-common.h (c_common_stmt_codes): Remove ASM_STMT.
- * c-dump.c (c_dump_tree): Likewise.
- * c-gimplify.c (c_gimplify_stmt): Likewise.
- * c-pretty-print.c (pp_c_statement): Likewise.
- * c-typeck.c (build_asm_expr): Use ASM_EXPR.
- * tree.h: Fix commentary.
-
-2004-06-16 Richard Henderson <rth@redhat.com>
-
- * c-common.def (GOTO_STMT, LABEL_STMT): Remove.
- * c-common.c (c_add_case_label): Use LABEL_EXPR.
- * c-common.h (GOTO_FAKE_P, LABEL_STMT_LABEL): Remove.
- (c_common_stmt_codes): Remove GOTO_STMT, LABEL_STMT.
- * c-dump.c (c_dump_tree): Likewise.
- * c-gimplify.c (c_gimplify_stmt): Likewise.
- * c-pretty-print.c (pp_c_statement): Likewise.
- * c-parse.in (stmt): Use GOTO_EXPR.
- (label): Use LABEL_EXPR.
- * c-semantics.c (build_stmt): Set TREE_TYPE to void.
- * tree-inline.c (copy_body_r): Don't build empty BLOCKs.
-
-2004-06-16 J"orn Rennecke <joern.rennecke@superh.com>
-
- * cfgcleanup.c (try_simplify_condjump): Update test to make
- sure we have a conditional branch around am unconditional branch.
-
-2004-06-16 Daniel Berlin <dberlin@dberlin.org>
-
- * tree-cfg.c (pass_split_crit_edge): Give it a name and a dump file.
-
-2004-06-16 Dale Johannesen <dalej@apple.com>
-
- * loop.c (loop_givs_reduce): Avoid miscompilation of
- loops entered at bottom.
-
-2004-06-16 J"orn Rennecke <joern.rennecke@superh.com>
-
- * cfglayout.c (fixup_reorder_chain): Handle case where the
- destination of E_FALL is EXIT_BLOCK_PTR.
-
-2004-06-16 Vladimir Makarov <vmakarov@redhat.com>
-
- PR target/15653
- * config/ia64/ia64.c (ia64_dfa_new_cycle): Do not insert nops
- after shifts before asm.
-
-2004-06-16 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR tree-optimization/15993
- * tree-ssa-dom.c (thread_across_edge): Do not thread edge if its
- destination is unchanged.
-
-2004-06-16 Andreas Jaeger <aj@suse.de>
-
- * doc/install.texi (Configuration): Update description for
- --enable-version-specific-runtime-libs.
-
-2004-06-16 Paolo Bonzini <bonzini@gnu.org>
-
- * doc/install.texi: boehm-gc now uses automake 1.8.5.
-
-2004-06-16 Paolo Bonzini <bonzini@gnu.org>
-
- * toplev.h (rest_of_compilation): Adjust prototype.
-
-2004-06-16 Paolo Bonzini <bonzini@gnu.org>
-
- * coverage.c: Remove argument to rest_of_compilation.
- * expr.c (execute_expand, set_save_expr_context, pass_expand): New.
- * passes.c (rest_of_compilation): Remove argument.
- (pass_rest_of_compilation): New.
- (rest_of_handle_final, rest_of_handle_delay_slots,
- rest_of_handle_stack_regs, rest_of_handle_variable_tracking
- rest_of_handle_machine_reorg, rest_of_handle_regrename
- rest_of_handle_sched, rest_of_handle_sched2, rest_of_handle_gcse2
- rest_of_handle_regmove, rest_of_handle_tracer
- rest_of_handle_if_conversion, rest_of_handle_if_after_combine
- rest_of_handle_web, rest_of_handle_branch_prob
- rest_of_handle_value_profile_transformations, rest_of_handle_cfg
- rest_of_handle_addressof, rest_of_handle_jump_bypass
- rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2):
- Check that the two arguments are actually superfluous.
- * tree-optimize.c (register_dump_files): Add properties argument.
- Track validity of passes. Only initialize dump files for
- tree-based passes. Store the full set of provided passes in
- the pass.
- (init_tree_optimization_passes): Register pass_expand and
- pass_rest_of_compilation.
- (execute_one_pass): Do not track the presence of required properties
- here. Set in_gimple_form. Do not update current_properties.
- (current_properties): Remove.
- (set_save_expr_context): Remove.
- (tree_rest_of_compilation): Do not set in_gimple_form. Do not
- expand to RTL here, and do not call rest_of_compilation. Push
- GGC context even before gimplification.
- * tree-pass.h (PROP_rtl, PROP_trees): New flags.
- (pass_expand, pass_rest_of_compilation): Declare.
-
-2004-06-15 Jeff Law <law@redhat.com>
-
- * fold-const.c (swap_tree_comparison): No longer static.
- (tree_swap_operands_p): Similarly. Return true if both operands
- are SSA_NAMEs and the first operand has a higher version number than
- the second operand.
- * tree.h (swap_tree_comparison): Prototype.
- (tree_swap_operands_p): Prototype.
- * tree-ssa-operands.c (get_expr_operands): For commutative
- operators and relational comparisons, canonicalize the
- order of the operands.
-
-2004-06-15 Richard Henderson <rth@redhat.com>
-
- * c-common.c (lang_gimplify_stmt): Remove next_p argument.
- (if_elt, if_stack, if_stack_space, c_expand_start_cond, c_finish_then,
- c_expand_end_cond, c_expand_start_else, c_finish_else, c_begin_if_stmt,
- c_begin_while_stmt, c_finish_while_stmt_cond): Move to c-typeck.c.
- (finish_fname_decls, fname_decl): Use statement_lists.
- (c_expand_expr_stmt): Don't set last_expr_type.
- (c_type_hash): Fix indentation.
- (c_safe_from_p): Don't follow TREE_CHAIN.
- (c_tree_chain_matters_p): Remove.
- * c-common.def (SCOPE_STMT): Remove.
- (CLEANUP_STMT): Redefine to contain its own body.
- * c-common.h (struct stmt_tree_s): Remove x_last_stmt,
- x_last_expr_type, x_last_expr_filename, x_scope_stmt_stack.
- Add x_cur_stmt_list.
- (last_tree, last_expr_type, last_expr_filename, RECHAIN_STMTS): Remove.
- (cur_stmt_list): New.
- (STATEMENT_LIST_STMT_EXPR): New.
- (SCOPE_BEGIN_P, SCOPE_END_P, SCOPE_STMT_BLOCK, SCOPE_NULLIFIED_P,
- SCOPE_NO_CLEANUPS_P, SCOPE_PARTIAL_P, NEW_FOR_SCOPE_P): Remove.
- (CLEANUP_BODY): New.
- (CLEANUP_DECL): Move to operand 2.
- (c_common_stmt_codes): Remove SCOPE_STMT.
- (COMPOUND_STMT_NO_SCOPE, COMPOUND_STMT_BODY_BLOCK): Remove.
- * c-decl.c (c_scope_stmt_stack, current_scope_stmt_stack): Remove.
- (c_push_function_context, c_pop_function_context): Don't save it.
- (finish_decl): Set TREE_USED on the decl for a cleanup.
- Use push_cleanup.
- (store_parm_decls): Use statement lists.
- (finish_function): Remove compstmt rule workaround. Use statement
- lists. Call finish_fname_decls after finalizing the body.
- (c_begin_compound_stmt): Move to c-typeck.c.
- * c-dump.c (c_dump_tree): Remove SCOPE_STMT.
- * c-gimplify.c (gimplify_cleanup_stmt, gimplify_cleanup_stmts): New.
- (c_genericize): Invoke them.
- (c_gimplify_stmt): Don't look through TREE_CHAIN. Kill SCOPE_STMT.
- (c_build_bind_expr): Export.
- (gimplify_block, gimplify_cleanup): Remove.
- (gimplify_condition): Use gimplify_stmt.
- (gimplify_for_stmt): Remove FOR_INIT_STMT chaining hack.
- (gimplify_if_stmt): Remove recursion hack.
- (c_gimplify_expr): Remove STMT_EXPR handling.
- (stmt_expr_last_stmt, gimplify_stmt_expr): Remove.
- (is_last_stmt_of_scope): Remove.
- * c-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Remove.
- * c-mudflap.c (mflang_flush_calls): Use c_begin_compound_stmt,
- c_end_compound_stmt.
- * c-objc-common.c (build_cdtor): Likewise.
- * c-parse.in (primary): Use c_finish_stmt_expr.
- (push_scope, pop_scope): Remove.
- (c99_block_start, compstmt_start): Use c_begin_compound_stmt.
- (c99_block_end, compstmt): Use c_end_compound_stmt.
- (c99_block_lineno_labeled_stmt): Likewise.
- (compstmt_primary_start): Use c_begin_stmt_expr.
- (simple_if, select_or_iter_stmt): Update calls to stmt builders.
- (do_stmt_start): Fill in body directly.
- (lineno_stmt): Avoid setting lineno on constants.
- * c-pretty-print.c (pp_c_statement): Handle STATEMENT_LIST.
- Remove SCOPE_STMT.
- * c-semantics.c (begin_stmt_tree): Remove.
- (push_stmt_list, re_push_stmt_list, pop_stmt_list): New.
- (add_stmt): Use statement lists.
- (add_scope_stmt, finish_stmt_tree): Remove.
- (push_cleanup): New.
- * c-tree.h: Move some decls from c-common.h.
- * c-typeck.c (c_tree_expr_nonnegative_p): Simplify for statement lists.
- (do_case, c_finish_case): Likewise.
- (c_finish_then): Take body for then as argument.
- (c_finish_else): Similarly.
- (c_begin_for_stmt, c_finish_for_stmt_init, c_finish_for_stmt_cond,
- c_finish_for_stmt_incr, c_finish_for_stmt): New.
- (c_begin_stmt_expr, c_finish_stmt_expr): New.
- (c_begin_compound_stmt): Do scope management.
- (c_end_compound_stmt): New.
- * fold-const.c (tree_expr_nonnegative_p): Fix BIND_EXPR.
- * gimplify.c (voidify_wrapper_expr): Accept temporary argument.
- Look through exception handling constructs.
- (gimplify_bind_expr): Accept temporary argument.
- (gimplify_target_expr): Special case BIND_EXPR bodies.
- (gimplify_expr): Handle fallback == fb_none like a statement.
- * langhooks-def.h (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P): Kill.
- * langhooks.c (lhd_tree_inlining_tree_chain_matters_p): Remove.
- * langhooks.h (tree_chain_matters_p): Remove.
- * stub-objc.c (objc_clear_super_receiver): New.
- * tree-gimple.h (voidify_wrapper_expr): Update decl.
- (append_to_statement_list, append_to_statement_list_force): Move
- to tree-iterator.h.
- * tree-inline.c (expand_call_inline): Update call.
- (clone_body): Use statement lists.
- (walk_tree): Don't check tree_chain_matters_p.
- (copy_tree_r): Likewise.
- * tree-iterator.c (alloc_stmt_list): Clear lang bits.
- (tsi_link_before, tsi_link_after): Set TREE_SIDE_EFFECTS properly.
- * tree-iterator.h (append_to_statement_list,
- append_to_statement_list_force): Moved from tree-gimple.h.
- * tree-pretty-print.c (dump_generic_node): Clean up TARGET_EXPR dump.
- * objc/objc-act.c (build_module_descriptor): Use c_begin_compound_stmt.
- (objc_enter_block): Likewise.
- (objc_exit_block): Use c_end_compound_stmt.
- (objc_build_try_enter_fragment): Add #error and comment for
- rewriting for OBJCPLUS.
- (objc_build_extract_fragment, objc_build_try_epilogue,
- objc_build_catch_stmt, objc_build_finally_prologue,
- objc_build_finally_epilogue): Update for C statement builders.
- * objc/objc-lang.c (LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P):
- Remove.
-
-2004-06-15 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * df.c (df_reg_clobber_gen): Removed.
- (df_bb_rd_local_compute, df_insn_refs_record, df_rd_local_compute):
- Make more effective for hard regs.
- * ra-build.c (livethrough_conflicts_bb): Check contains_call.
-
-2004-06-15 Alexandre Oliva <aoliva@redhat.com>
-
- * c-pragma.h (c_lex_string_translate): Change type to int.
- * c-parse.in: Change all assignments of c_lex_string_translate
- to true and false to 1 and 0.
- * c-lex.c (c_lex_string_translate): Likewise.
- (lex_string): Convert string without translation in the -1
- case.
-
-2004-06-15 Mark G. Adams <mark.g.adams@sympatico.ca>
-
- * convert.h: Add include guards
-
-2004-06-15 Daniel Berlin <dberlin@dberlin.org>
-
- * tree-flow-inline.h: Document all functions.
-
-2004-06-15 Daniel Berlin <dberlin@dberlin.org>
-
- * tree-flow-inline.h (stmt_ann): Remove use of is_essa_node.
- * tree-dfa.c (create_stmt_ann): Ditto.
- * tree-pretty-print.c (dump_generic_node): Remove E* node handling.
- * tree-inline.c (estimate_num_insns_1): Ditto.
- * tree.c (tree_size): Ditto.
- (make_node_stat): Ditto.
- (tree_node_structure): Ditto.
- (ephi_node_elt_check_failed): Remove.
- (is_essa_node): Ditto.
- * tree.def (EPHI_NODE): Ditto.
- (EEXIT_NODE): Ditto.
- (EUSE_NODE): Ditto.
- (EKILL_NODE): Ditto.
- * tree.h (EREF_NODE_CHECK): Remove.
- (EPHI_NODE_ELT_CHECK): Ditto.
- (struct tree_eref_common): Ditto.
- (struct tree_euse_node): Ditto.
- (struct ephi_arg_d): Ditto.
- (struct tree_ephi_node): Ditto.
- (ephi_node_elt_check_failed): Remove prototype.
- (is_essa_node): Ditto.
- (enum tree_node_structure_enum): Remove TS_E*_NODE.
- (union tree_node): Remove E*_NODE uses.
-
-2004-06-15 Jerry Quinn <jlquinn@optonline.net>
-
- * alias.c (record_set, record_base_value, canon_rtx, get_addr,
- nonlocal_mentioned_p_1, init_alias_analysis): Use REG_P.
- * bt-load.c (find_btr_reference, insn_sets_btr_p, note_btr_set):
- Likewise.
- * builtins.c (expand_builtin_setjmp, expand_builtin_apply,
- expand_builtin_mathfn, expand_builtin_strlen, expand_builtin_memcmp,
- expand_builtin_strcmp, expand_builtin_strncmp,
- expand_builtin_frame_address): Likewise.
- * caller-save.c (mark_set_regs, add_stored_regs, mark_referenced_regs,
- insert_one_insn): Likewise.
- * calls.c (prepare_call_address, precompute_register_parameters,
- precompute_arguments, expand_call, emit_library_call_value_1): Likewise.
- * cfganal.c (flow_active_insn_p): Likewise.
- * combine.c (set_nonzero_bits_and_sign_copies, can_combine_p,
- combinable_i3pat, try_combine, find_split_point, COMBINE_RTX_EQUAL_P,
- subst, combine_simplify_rtx, simplify_if_then_else, simplify_set,
- make_extraction, recog_for_combine, gen_lowpart_for_combine,
- simplify_comparison, record_dead_and_set_regs_1,
- record_dead_and_set_regs, record_promoted_value,
- check_promoted_subreg, get_last_value_validate, get_last_value,
- reg_dead_at_p_1, reg_bitfield_target_p, distribute_notes,
- unmentioned_reg_p_1): Likewise.
- * conflict.c (mark_reg): Likewise.
- * cse.c (HASH, COST, COST_IN, approx_reg_cost_1, notreg_cost,
- mention_regs, insert_regs, lookup, lookup_for_remove, insert,
- merge_equiv_classes, flush_hash_table, invalidate,
- remove_invalid_refs, remove_invalid_subreg_refs, rehash_using_reg,
- invalidate_for_call, use_related_value, canon_hash, exp_equiv_p,
- cse_rtx_varies_p, canon_reg, find_best_addr, fold_rtx, equiv_constant,
- record_jump_cond, cse_insn, addr_affects_sp_p,
- invalidate_from_clobbers, cse_process_notes, cse_around_loop,
- cse_set_around_loop, count_reg_usage, set_live_p, cse_change_cc_mode,
- cse_cc_succs, cse_condition_code_reg): Likewise.
- * cselib.c (cselib_reg_set_mode, rtx_equal_for_cselib_p,
- cselib_lookup, cselib_invalidate_regno, cselib_invalidate_rtx,
- cselib_record_set, cselib_record_sets): Likewise.
- * dbxout.c (dbxout_symbol_location, dbxout_parms, dbxout_reg_parms,
- dbxout_block): Likewise.
- * df.c (df_ref_record, df_def_record_1, df_uses_record): Likewise.
- * dojump.c (do_jump): Likewise.
- * dwarf2out.c (dwarf2out_frame_debug_expr, is_pseudo_reg,
- is_based_loc, rtl_for_decl_location): Likewise.
- * emit-rtl.c (set_reg_attrs_for_parm, set_decl_rtl,
- set_decl_incoming_rtl, mark_user_reg): Likewise.
- * explow.c (copy_all_regs, copy_all_regs, memory_address, force_reg,
- copy_to_suggested_reg, allocate_dynamic_stack_space,
- probe_stack_range, hard_function_value): Likewise.
- * expmed.c (store_bit_field, store_fixed_bit_field,
- store_split_bit_field, extract_bit_field, extract_fixed_bit_field,
- extract_split_bit_field, expand_divmod, emit_store_flag_force):
- Likewise.
- * expr.c (convert_move, convert_modes,
- block_move_libcall_safe_for_call_parm, emit_group_load, use_reg,
- use_group_regs, emit_move_insn, emit_move_insn_1,
- compress_float_constant, push_block, emit_single_push_insn,
- emit_push_insn, get_subtarget, expand_assignment, store_expr,
- store_constructor, store_field, force_operand, safe_from_p,
- expand_expr_real_1, expand_increment, do_store_flag, do_tablejump):
- Likewise.
- * final.c (profile_function, final_scan_insn, alter_subreg,
- get_mem_expr_from_op, output_asm_operand_names, output_operand,
- only_leaf_regs_used, leaf_renumber_regs_insn): Likewise.
- * flow.c (verify_wide_reg_1, mark_regs_live_at_end,
- find_regno_partial, propagate_one_insn, init_propagate_block_info,
- insn_dead_p, libcall_dead_p, mark_set_1, not_reg_cond,
- attempt_auto_inc, find_auto_inc, mark_used_regs,
- count_or_remove_death_notes_bb): Likewise.
- * function.c (find_temp_slot_from_address, update_temp_slot_address,
- preserve_temp_slots, put_var_into_stack, fixup_var_refs_insn,
- fixup_var_refs_1, fixup_stack_1, optimize_bit_field, flush_addressof,
- put_addressof_into_stack, purge_addressof_1, insns_for_mem_walk,
- purge_single_hard_subreg_set, instantiate_decl,
- instantiate_virtual_regs_1, aggregate_value_p, assign_parms,
- promoted_input_arg, setjmp_vars_warning, setjmp_args_warning,
- setjmp_protect, setjmp_protect_args, fix_lexical_addr,
- expand_function_start, diddle_return_value, clobber_return_register,
- expand_function_end, keep_stack_depressed, handle_epilogue_set,
- update_epilogue_consts): Likewise.
- * genemit.c (gen_exp, gen_insn): Likewise.
- * genrecog.c (make_insn_sequence): Likewise.
- * global.c (global_conflicts, expand_preferences, mark_reg_store,
- mark_reg_conflicts, set_preference, reg_becomes_live,
- build_insn_chain, mark_reg_change): Likewise.
- * haifa_sched.c (CONST_BASED_ADDRESS_P, find_set_reg_weight):
- Likewise.
- * ifcvt.c (noce_try_abs, noce_get_condition, noce_process_if_block):
- Likewise.
- * integrate.c (copy_rtx_and_substitute, try_constants,
- subst_constants, mark_stores, allocate_initial_values): Likewise.
- * jump.c (reversed_comparison_code_parts, delete_prior_computation,
- delete_computation, rtx_renumbered_equal_p, true_regnum,
- reg_or_subregno): Likewise.
- * lcm.c (reg_dies, reg_becomes_live): Likewise.
- * local-alloc.c (validate_equiv_mem_from_store, validate_equiv_mem,
- update_equiv_regs, no_equiv, block_alloc, combine_regs, reg_is_set,
- wipe_dead_reg, no_conflict_p): Likewise.
- * loop-iv.c (simple_reg_p, simple_set_p, kill_sets,
- iv_get_reaching_def, iv_analyze_biv, altered_reg_used, mark_altered,
- simple_rhs_p, simplify_using_assignment, implies_p): Likewise.
- * loop.c (scan_loop, combine_movables, rtx_equal_for_loop_p,
- move_movables, note_set_pseudo_multiple_uses, consec_sets_invariant_p,
- find_single_use_in_loop, count_one_set, loop_bivs_init_find,
- loop_givs_rescan, check_insn_for_bivs, check_insn_for_givs,
- valid_initial_value_p, simplify_giv_expr, consec_sets_giv,
- loop_regs_update, check_dbra_loop, maybe_eliminate_biv,
- maybe_eliminate_biv_1, record_initial, update_reg_last_use,
- canonicalize_condition, loop_regs_scan, load_mems, try_copy_prop,
- try_swap_copy_prop): Likewise.
- * optabs.c (expand_binop, expand_vector_binop, expand_vector_unop,
- expand_abs, emit_no_conflict_block, emit_libcall_block, expand_float):
- Likewise.
- * postreload.c (reload_cse_simplify, reload_cse_simplify_set,
- reload_cse_simplify_operands, reload_combine,
- reload_combine_note_store, reload_combine_note_use,
- reload_cse_move2add, move2add_note_store): Likewise.
- * print-rtl.c (print_rtx): Likewise.
- * ra-build.c (copy_insn_p, remember_move, init_one_web_common,
- contains_pseudo, handle_asm_insn): Likewise.
- * ra-debug.c (ra_print_rtx_object, dump_constraints,
- dump_static_insn_cost): Likewise.
- * ra-rewrite.c (slots_overlap_p, emit_colors,
- remove_suspicious_death_notes): Likewise.
- * recog.c (validate_replace_rtx_1, find_single_use_1, find_single_use,
- register_operand, scratch_operand, nonmemory_operand,
- constrain_operands): Likewise.
- * reg-stack (check_asm_stack_operands, remove_regno_note,
- emit_swap_insn, swap_rtx_condition, subst_stack_regs_pat,
- subst_asm_stack_regs): Likewise.
- * regclass.c (scan_one_insn, record_reg_classes, copy_cost,
- record_address_regs, reg_scan_mark_refs): Likewise.
- * regmove.c (discover_flags_reg, replacement_quality,
- copy_src_to_dest, reg_is_remote_constant_p, regmove_optimize,
- fixup_match_1): Likewise.
- * regrename.c (note_sets, clear_dead_regs, build_def_use, kill_value,
- kill_set_value, copyprop_hardreg_forward_1): Likewise.
- * reload.c (MATCHES, push_secondary_reload, find_reusable_reload,
- reload_inner_reg_of_subreg, can_reload_into, push_reload,
- combine_reloads, find_dummy_reload, hard_reg_set_here_p,
- operands_match_p, decompose, find_reloads, find_reloads_toplev,
- find_reloads_address, subst_indexed_address, find_reloads_address_1,
- find_reloads_subreg_address, find_replacement,
- refers_to_regno_for_reload_p, reg_overlap_mentioned_for_reload_p,
- refers_to_mem_for_reload_p, find_equiv_reg, regno_clobbered_p): Likewise.
- * reload1.c (replace_pseudos_in, reload, calculate_needs_all_insns,
- find_reg, delete_dead_insn, alter_reg, eliminate_regs,
- elimination_effects, eliminate_regs_in_insn, scan_paradoxical_subregs,
- forget_old_reloads_1, reload_reg_free_for_value_p, choose_reload_regs,
- emit_input_reload_insns, emit_output_reload_insns, do_input_reload,
- do_output_reload, emit_reload_insns, gen_reload,
- delete_address_reloads_1, inc_for_reload): Likewise.
- * reorg.c (update_reg_dead_notes, fix_reg_dead_note,
- update_reg_unused_notes, fill_slots_from_thread): Likewise.
- * resource.c (update_live_status, mark_referenced_resources,
- mark_set_resources, mark_target_live_regs): Likewise.
- * rtlanal.c (nonzero_address_p, get_jump_table_offset,
- global_reg_mentioned_p_1, reg_mentioned_p, reg_referenced_p,
- reg_set_p, set_noop_p, find_last_value, refers_to_regno_p,
- note_stores, dead_or_set_p, dead_or_set_regno_p, find_regno_note,
- find_reg_fusage, find_regno_fusage, replace_regs, regno_use_in,
- parms_set, find_first_parameter_load, keep_with_call_p,
- hoist_test_store, hoist_update_store, address_cost, nonzero_bits1,
- num_sign_bit_copies1): Likewise.
- * rtlhooks.c (gen_lowpart_general): Likewise.
- * sched-deps.c (deps_may_trap_p, sched_analyze_1, sched_analyze_insn,
- sched_analyze): Likewise.
- * sched-rgn.c (check_live_1, update_live_1, sets_likely_spilled_1):
- Likewise.
- * sdbout.c (sdbout_symbol, sdbout_parms, sdbout_reg_parms): Likewise.
- * simplify-rtx.c (simplify_replace_rtx, simplify_unary_operation,
- simplify_binary_operation, simplify_const_relational_operation,
- simplify_subreg): Likewise.
- * stmt.c (decl_conflicts_with_clobbers_p, expand_asm_operands,
- expand_end_stmt_expr, expand_return, expand_decl,
- expand_anon_union_decl): Likewise.
- * unroll.c (precondition_loop_p, calculate_giv_inc, copy_loop_body,
- find_splittable_regs, find_splittable_givs, find_common_reg_term,
- loop_iterations): Likewise.
- * var-tracking.c (variable_union, variable_part_different_p,
- variable_different_p, count_uses, add_uses, add_stores,
- compute_bb_dataflow, set_variable_part, delete_variable_part,
- emit_notes_in_bb, vt_get_decl_and_offset, vt_add_function_parameters):
- Likewise.
- * varasm.c (assemble_variable): Likewise.
-
-2004-06-15 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
- definition.
- * config/mips/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Remove
- #undef and #if 0'd definition.
-
-2004-06-15 J"orn Rennecke <joern.rennecke@superh.com>
-
- * combine.c (distribute_notes): Comment typo fix.
-
-2004-06-15 Roger Sayle <roger@eyesopen.com>
-
- * expmed.c (synth_mult): Mask bits of the multiplier to the
- machine mode of the multiplication. Don't consider shifts
- by more than (or equal to) the width of the operation's mode.
-
-2004-06-15 Paolo Bonzini <bonzini@gnu.org>
-
- * doc/install.texi: Yet another update for autoconf
- and automake versions.
-
-2004-06-15 Paolo Bonzini <bonzini@gnu.org>
-
- * function.h (struct function): Remove cannot_inline field.
- (current_function_cannot_inline): Remove.
- * passes.c (rest_of_compilation): Reset DECL_DEFER_OUTPUT.
- Simplify conditionals to ignore warn_return_type.
- * tree-optimize.c (tree_rest_of_compilation): Do not reset
- DECL_DEFER_OUTPUT.
- * objc/objc-act.c (build_module_descriptor, finish_method_def):
- Do not set current_function_cannot_inline.
-
-2004-06-15 J"orn Rennecke <joern.rennecke@superh.com>
-
- * cfglayout.c (fixup_reorder_chain): Handle case where the
- destination of E_TAKEN is EXIT_BLOCK_PTR.
-
-2004-06-15 Diego Novillo <dnovillo@redhat.com>
-
- * tree-ssa-copy.c (cprop_into_successor_phis): Fix typo.
-
-2004-06-15 Paolo Bonzini <bonzini@gnu.org>
-
- * fold-const.c (operand_equal_p): Update comment.
-
-2004-06-15 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h (RETURN_ADDR_RTX): Define.
- (INCOMING_RETURN_ADDR_RTX): Define.
- * config/m32r/m32r-protos.h (m32r_return_addr): Added.
- * config/m32r/m32r.c (m32r_exppand_prologue): Changed for
- __builtin_return_address(0).
- (m32r_return_addr): Added for __builtin_return_address(0).
- (m32r_reload_lr): Ditto.
-
- * longlong.h: Fix macros for m32r add_ssaaaa and sub_ddmmss.
-
-2004-06-15 Paolo Bonzini <bonzini@gnu.org>
-
- * doc/install.texi (Prerequisites): Update libbanshee,
- fastjar, libcpp, libjava/libltdl entries to
- automake 1.8.5.
-
-2004-06-15 Eric Botcazou <ebotcazou@act-europe.fr>
- Olivier Hainque <hainque@act-europe.fr>
-
- * function.c (fixup_var_refs): Also adjust the start of sequence
- after fixing up the insns.
-
-2004-06-15 Giovanni Bajo <giovannibajo@gcc.gnu.org>
-
- * gccbug.in: Update optimization -> tree-optimization/rtl-optimization.
-
-2004-06-14 Benjamin Kosnik <bkoz@redhat.com>
-
- * doc/install.texi (Prerequisites): Update libstdc++ entry to
- automake 1.8.5.
-
-2004-06-14 Eric Christopher <echristo@redhat.com>
-
- * config/s390/s390.h (TARGET_SWITCHES): Change -mtpf (-mno-tpf)
- to -mtpf-trace (-mno-tpf-trace).
- * doc/invoke.texi (S/390 and zSeries Options): Add tpf option
- documentation.
-
-2004-06-14 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * real.c: Fix bit count in head comment.
-
-2004-06-14 Jeff Law <law@redhat.com>
-
- * tree-ssa.c (kill_redundant_phi_nodes): More correctly handle
- PHIs where the destination or an argument is marked with
- SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
-
-2004-06-14 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/15945
- * simplify-rtx.c (simplify_binary_operation): Don't optimize out
- Inf + -Inf, Inf - Inf, Inf / Inf and 0 * Inf if flag_trapping_math.
-
-2004-06-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * opts.sh (var_args): Fix regexp.
-
-2004-06-14 Jakub Jelinek <jakub@redhat.com>
-
- PR target/15178
- * config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Define.
-
-2004-06-14 Paul Brook <paul@codesourcery.com>
-
- * dwarf2out.c (output_call_frame_info): Support dwarf3 cie entries.
-
-2004-06-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (FLAGS_H): New.
- (flags.h): Replace by FLAGS_H.
- * c.opt: Document Var, VarExists, Init and Report attributes.
- * common.opt: Fill the values of the attributes.
- * diagnostic.c (flag_fatal_errors): Do not define.
- * except.c (flag_non_call_exceptions): Do not define.
- * flags.h: Include options.h. Remove declarations conflicting with
- the automatically defined ones.
- * opts.c: Remove automatically defined variables.
- (handle_option): Perform default initialization.
- (common_handle_option): Do not handle options covered by the
- default initialization.
- * opts.h (struct cl_option): Add flag_var, has_set_value and set_value
- fields.
- (CL_REPORT): New.
- * opts.sh: Generate variable declarations, handle CL_REPORT.
- * toplev.c: Remove automatically defined variables.
- (f_options): Removed.
- (print_switch_values): Use cl_options instead of f_options.
- * toplev.h (version_flag): Declaration removed.
-
-2004-06-14 Ian Lance Taylor <ian@wasabisystems.com>
-
- * config/sparc/sparc.h: Correct comment about availability of
- little endian option.
-
- * config.gcc: Remove sparc64-*-aout*.
- * config/sparc/sparc.c (sparc_aout_select_rtx_section): Remove.
- * config/sparc/sp64-aout.h: Remove.
- * config/sparc/aout.h: Remove.
-
-2004-06-14 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c: Include "tree-gimple.h".
- (s390_gimplify_va_arg): New function.
- (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
- (s390_va_arg): Remove.
- * config/s390/s390-protos.h (s390_va_arg): Remove.
- * config/s390/s390.h (EXPAND_BUILTIN_VA_ARG): Call abort ().
-
-2004-06-14 J"orn Rennecke <joern.rennecke@superh.com>
-
- * basic-block.h (could_fall_through): Declare.
- * cfganal.c (can_fallthru): Succeed if the target is EXIT_BLOCK_PTR.
- Fail if the source already has a fallthrough edge to the exit
- block pointer.
- (could_fall_through): New function.
- * cfgbuild.c (make_edges): Check if we already have a fallthrough
- edge to the exit block pointer.
- * cfglayout.c (fixup_fallthru_exit_predecessor): Check that it is
- not called before reload has completed.
- Handle special case of first block having a fall-through exit edge.
- (cfg_layout_finalize): Don't call it before reload or if we have
- rtl epilogues.
- (fixup_reorder_chain): A fall through to the exit block does not
- require the block to come last. Add sanity checks.
- * cfgrtl.c (rtl_split_edge): Add special handling of fall through
- edges to the exit block.
- * function.c (cfglayout.h): #include.
- (thread_prologue_and_epilogue_insns): If we have neither return nor
- epilogue, but a fall through to the exit block from mid-function,
- force a non-fall-through exit.
- * Makefile.in (function.o): Depend on CFGLAYOUT_H.
-
-2004-06-14 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.h (ASM_CPU_SPEC): Handle -mpowerpc64 and -mcpu
- for power5 and rs64a. Correct condition for default. Correct power3,
- 620, 630, 7400, 7450, G4, 970 and G5 -mcpu entries. Add -many.
-
-2004-06-13 Steven Bosscher <stevenb@suse.de>
-
- * gcse.c (hash_scan_set, hash_scan_insn, mark_set, mark_oprs_set):
- Revert previous change, don't use CALL_P.
-
-2004-06-13 Jason Merrill <jason@redhat.com>
-
- * tree.h: Move std_gimplify_va_arg_expr protoype here.
- * tree-gimple.h: From here.
-
-2004-06-13 Daniel Berlin <dberlin@dberlin.org>
-
- Fix PR tree-optimization/15979
- Fix PR tree-optimization/15981
- * tree-ssa-pre.c (insert_aux): Fix faulty logic so that we don't
- try to insert values undefined along some path.
-
-2004-06-13 Daniel Berlin <dberlin@dberlin.org>
-
- * tree-ssa-pre.c (add_to_value): is_gimple_min_invariant things
- are available everywhere too.
-
-2004-06-13 Andrew Pinski <pinskia@physics.uc.edu>
-
- * fold-const.c (fold_checksum_tree <case 't'>): Only
- look at TREE_VALUES if the EXPR is an ENUMERAL_TYPE.
- Only look at TYPE_MIN_VALUE and TYPE_MAX_VALUE if
- EXPR is an INTEGERAL_TYPE or a scalar float type.
-
-2004-06-13 Diego Novillo <dnovillo@redhat.com>
-
- * tree-sra.c (tree_sra): Update documentation.
-
-2004-06-13 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-typeck.c (comptypes, tagged_types_tu_compatible_p,
- function_types_compatible_p, type_lists_compatible_p): Remove
- flags parameter.
- * c-tree.h (comptypes): Likewise.
- (COMPARE_STRICT): Remove.
- * c-decl.c, c-lang.c, c-parse.in, c-typeck.c, objc/objc-act.c: All
- callers changed.
-
-2004-06-13 Eric Christopher <echristo@redhat.com>
-
- * c-decl.c (diagnose_mismatched_decls): Improve error message.
- Remove unused code.
- * c-typeck.c (comptypes): Add location in standard we're checking.
-
-2004-06-13 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/libgcc-std.ver: Add __unorddf2 and __unordsf2 with
- version 3.3.4.
-
-2004-06-12 Roger Sayle <roger@eyesopen.com>
-
- * expmed.c (shift_cost, shiftadd_cost, shiftsub_cost): Additionally
- index by machine mode.
- (init_expmed): Initialize shift_cost, shiftadd_cost and shiftsub_cost
- tables inside the loop over machine modes.
- (synth_mult, expand_mult_highpart_optab, expand_mult_highpart,
- expand_divmod): Index shift*_cost by the appropriate machine mode.
-
-2004-06-12 Eric Christopher <echristo@redhat.com>
-
- * config/s390/s390.h: Rename TARGET_TPF to TARGET_TPF_PROFILING.
- * config/s390/s390.md: Ditto.
- * config/s390/s390.c: Ditto.
- (s390_frame_info): Conditionalize frame and setup info on
- TARGET_TPF_PROFILING.
- (s390_arg_frame_offset): Ditto.
-
-2004-06-12 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (omit_two_operands): New function.
- * tree.h (omit_two_operands): Prototype here.
- * builtins.c (fold_builtin_unordered_cmp): New function to lower
- C99 unordered comparison builtins to the appropriate tree nodes.
- (fold_builtin_1): Use fold_builtin_unordered_cmp to lower
- BUILT_IN_ISGREATER, BUILT_IN_ISGREATEREQUAL, BUILT_IN_ISLESS,
- BUILT_IN_ISLESSEQUAL and BUILT_IN_ISLESSGREATER. Manually lower
- BUILT_IN_ISUNORDERED comparisons to an UNORDERED_EXPR tree node.
- (simplify_builtin_memcmp, simplify_builtin_strncmp,
- simplify_builtin_strncat, simplify_builtin_strspn): Use the new
- omit_two_operands function to build the required COMPOUND_EXPRs.
-
-2004-06-12 Steven Bosscher <stevenb@suse.de>,
- Andreas Jaeger <aj@suse.de>
-
- * gcse.c (record_set_info): Use predicates like REG_P.
- (mems_conflict_for_gcse_p): Likewise.
- (load_killed_in_block_p): Likewise.
- (hash_expr_1): Likewise.
- (insert_set_in_table): Likewise.
- (gcse_constant_p): Likewise.
- (hash_scan_set): Likewise.
- (hash_scan_insn): Likewise.
- (canon_list_insert): Likewise.
- (record_last_mem_set_info): Likewise.
- (record_last_set_info): Likewise.
- (compute_hash_table_work): Likewise.
- (mark_set): Likewise.
- (mark_clobber): Likewise.
- (mark_oprs_set): Likewise.
- (compute_transp): Likewise.
- (find_avail_set): Likewise.
- (cprop_insn): Likewise.
- (do_local_cprop): Likewise.
- (cprop): Likewise.
- (find_implicit_sets): Likewise.
- (find_bypass_set): Likewise.
- (bypass_conditional_jumps): Likewise.
- (insert_insn_end_bb): Likewise.
- (pre_insert_copy_insn): Likewise.
- (compute_transpout): Likewise.
- (next_ls_expr): Likewise.
- (invalidate_any_buried_refs): Likewise.
- (compute_ld_motion_mems): Likewise.
- (reg_set_info): Likewise.
- (reg_clear_last_set): Likewise.
- (find_moveable_store): Likewise.
- (compute_store_table): Likewise.
- (find_loads): Likewise.
- (store_killed_in_insn): Likewise.
- (insert_insn_start_bb): Likewise.
- (reg_set_between_after_reload_p): Likewise.
- (reg_used_between_after_reload_p): Likewise.
- (is_jump_table_basic_block): Likewise.
- (gcse_after_reload): Likewise.
- (hash_scan_set_after_reload): Likewise.
- (compute_hash_table_after_reload): Likewise.
-
-2004-06-12 Steven Bosscher <stevenb@suse.de>
-
- * rtl.h (MEM_P, NONJUMP_INSN_P, CALL_INSN_P): New predicates.
- (INSN_P): Don't look at the rtx code class, just explicitly
- check for one of the tree RTX_INSN codes.
-
-2004-06-11 Zack Weinberg <zack@codesourcery.com>
-
- * c-typeck.c (default_function_array_conversion): Use
- build_pointer_type not TYPE_POINTER_TO.
-
-2004-06-11 Zack Weinberg <zack@codesourcery.com>
-
- * configure.ac: Don't invoke ACX_HEADER_STDBOOL.
- * configure, config.in: Regenerate.
- * system.h: Unconditionally define bool as unsigned char,
- BOOL_BITFIELD as unsigned int.
- * domwalk.h: Use BOOL_BITFIELD.
-
-2004-06-12 Andreas Jaeger <aj@suse.de>
-
- * libgcc-std.ver: Add __unorddf2 and __unordsf2 with version 3.3.4.
- * libgcc-darwin.ver: Likewise.
-
-2004-06-12 Peter Jakubek <peter@laseranimation.com>
-
- * reload.c (find_reloads): Force reload for pseudo registers on big
- endian machines.
-
-2004-06-11 Steven Bosscher <stevenb@suse.de>
-
- * tree-ssa-dce.c (mark_control_dependent_edges_necessary):
- Don't try to mark anything control dependent on the entry or
- exit blocks.
-
-2004-06-11 Daniel Berlin <dberlin@dberlin.org>
-
- Fix Bug 15899
- Fix Bug 15460
- * tree.h (SSA_NAME_VALUE): New macro.
- (struct tree_ssa_name): Add value_handle member.
- * tree-ssa-pre.c: Replaced.
- * tree-flow.h (tree_ann_type): Add CST_ANN, EXPR_ANN.
- (struct cst_ann_d): New.
- (struct expr_ann_d): New.
- (union tree_ann_d): Add cst_ann, expr_ann.
- * tree-dfa.c (create_cst_ann): New function.
- (create_expr_ann): Ditto.
- * tree-flow-inline.h (cst_ann): New function.
- (expr_ann): Ditto.
- (get_cst_ann): Ditto.
- (get_expr_ann): Ditto..
-
-2004-06-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (pa_hpux_init_libfunc): Add support for unord_optab.
- * pa/quadlib.c (enum qfcmp_magic): Define magic values for call to
- _U_Qfcmp library function.
- (_U_Qfltgt, _U_Qfunle, _U_Qfunlt, _U_Qfunge, _U_Qfungt, _U_Qfuneq,
- _U_Qfunord, _U_Qford): Add more TFmode builtin compare functions.
-
- * pa.c (legitimize_pic_address): Use UNSPEC_DLTIND14R to identify
- unspec used for loading address from DLT.
- * pa.md: Define constants for the uses of UNSPEC and UNSPEC_VOLATILE.
- Change all users of UNSPEC and UNSPEC_VOLATILE to use new constants.
- Don't use short code sequence when loading the address of a nonlocal
- label.
- (nonlocal_goto): New expander.
- (indirect_goto): New jump pattern for nonlocal gotos.
- (short_jump): Remove extra whitespace.
- (builtin_longjmp): Clobber memory and hard frame pointer. Restore
- frame pointer via virtual_stack_vars_rtx when we have a nonlocal goto
- pattern.
-
-2004-06-11 Roger Sayle <roger@eyesopen.com>
-
- * expmed.c (synth_mult): Add an additional MODE argument for the
- machine mode of the multiplication. Update recursive calls. Use
- mode instead of word_mode for determining operation costs.
- (choose_mult_variant): Update calls to synth_mult with "mode".
-
-2004-06-11 Richard Henderson <rth@redhat.com>
-
- * tree-ssa-operands.c (get_stmt_operands): Clear makes_aliased_loads
- and makes_aliased_stores.
-
-2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
-
- * doc/install.text (--enable-shared): Fix typo.
-
-2004-06-11 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_gimplify_va_arg_1): Remove post_p
- argument. Use internal post for call to gimplify_expr. Tidy
- rounded type size computation.
- (alpha_gimplify_va_arg): Use get_formal_tmp_var and
- get_initialized_tmp_var.
-
-2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
-
- * doc/install.texi (--enable-shared): Update libobjc's shared library
- status. Remove reference to libf2c.
-
-2004-06-11 Jason Merrill <jason@redhat.com>
-
- * config/i386/i386.h (EXPAND_BUILTIN_VA_ARG): Just abort.
- * config/i386/i386.c (ix86_va_arg): Remove.
- * config/rs6000/rs6000.h (EXPAND_BUILTIN_VA_ARG): Just abort.
- * config/rs6000/rs6000.c (rs6000_va_arg): Remove.
- * config/alpha/alpha.h (EXPAND_BUILTIN_VA_ARG): Just abort.
- * config/alpha/alpha.c (alpha_va_arg): Remove.
- * config/sparc/sparc.h (EXPAND_BUILTIN_VA_ARG): Just abort.
- * config/sparc/sparc.c (sparc_va_arg): Remove.
-
- * tree-ssa-operands.c (get_stmt_operands): Use a V_MAY_DEF if the
- assignment might throw.
- * tree-eh.c (tree_could_throw_p): Support non-call exceptions in
- expressions.
-
-2004-06-11 J"orn Rennecke <joern.rennecke@superh.com>
-
- PR 15886:
- * sh.h (ALLOCATE_INITIAL_VALUE): Use return_address_pointer_rtx.
-
-2004-06-11 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/install.texi (Prerequisites): Update documentation of
- required versions of autoconf and automake. Remove mention of
- libf2c.
-
-2004-06-11 Jason Merrill <jason@redhat.com>
-
- * config/sparc/sparc.c (sparc_gimplify_va_arg): New fn.
- (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
-
-2004-06-11 Jerry Quinn <jlquinn@optonline.net>
-
- * typeclass.h: Add GPL plus exception license. Add include
- guard.
-
-2004-06-10 Jason Merrill <jason@redhat.com>
-
- * gimplify.c (gimplify_modify_expr): Don't force a temporary
- of an aggregate_value_p type.
-
-2004-06-10 Jeff Law <law@redhat.com>
-
- * fold-const.c (fold_inf_compare): Avoid creating non-gimple
- code when we are in gimple form.
-
-2004-06-10 Diego Novillo <dnovillo@redhat.com>
-
- * Makefile.in (tree-ssanames.o): Depend on TREE_FLOW_H.
- * tree-flow.h (ssa_names, num_ssa_names, ssa_name): Declare.
- (highest_ssa_version): Remove.
- * tree-outof-ssa.c (new_temp_expr_table): Replace
- highest_ssa_version with num_ssa_names.
- (dump_replaceable_exprs): Likewise.
- (rewrite_vars_out_of_ssa): Likewise.
- * tree-ssa-ccp.c (initialize): Likewise
- * tree-ssa-copyrename.c (rename_ssa_copies): Likewise.
- * tree-ssa-dce.c (tree_dce_init): Likewise.
- * tree-ssa-dom.c (tree_ssa_dominator_optimize): Likewise.
- * tree-ssa-live.c (create_ssa_var_map): Likewise.
- (dump_var_map): Likewise.
- * tree-ssa.c (verify_ssa): Likewise.
- (kill_redundant_phi_nodes): Likewise.
- Do not build a local array of SSA_NAMEs. Use the ssa_names table.
- * tree-ssanames.c: Include tree-flow.h
- (ssa_names): New varray.
- (init_ssa_names): Initialize ssa_names.
- Reserve the first slot of the ssa_names table.
- (make_ssa_name): Push the newly created SSA_NAME into ssa_names.
- Assign version numbers using num_ssa_names.
-
-2004-06-10 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/sourcebuild.texi (Front End): Add details of more
- installation documentation required.
-
-2004-06-10 Brian Booth <bbooth@redhat.com>
-
- * doc/tree-ssa.texi: Remove references to VDEF and add descriptions
- of V_MAY_DEF and V_MUST_DEF.
- * tree-dfa.c (dfa_stats_d): Add num_v_must_defs and rename
- num_vdefs to num_v_may_defs.
- (compute_immediate_uses_for_stmt): Rename occurences of vdef
- to v_may_def.
- (redirect_immediate_uses): Ditto.
- (dump_dfa_stats): Ditto. Also added code to dump num_v_must_defs.
- (collect_dfa_stats_r): Rename occurences of vdef to v_may_def.
- Also add code to sum up the number of v_must_defs.
- (vdefs_disappeared_p): Replace with...
- (v_may_defs_disappeared_p): This.
- (v_must_defs_disappeared_p): New function.
- (mark_new_vars_to_rename): Rename occurences of vdef to v_may_def.
- Also add code to mark new variables found in V_MUST_DEFs for
- renameing.
- * tree-flow.h (stmt_ann_d): Add v_must_def_ops and replace
- vdef_ops to v_may_def_ops.
- (get_vdef_ops): Replace with...
- (get_v_may_def_ops): This.
- * tree-flow-inline.h (get_vdef_ops): Replace with...
- (get_v_may_def_ops): This.
- (get_v_must_def_ops): New function.
- (get_vdef_result_ptr): Replace with...
- (get_v_may_def_result_ptr): This.
- (get_vdef_op_ptr): Ditto with...
- (get_v_may_def_op_ptr); This.
- (get_v_must_def_op_ptr): New function.
- * tree-into-ssa.c (mark_def_sites): Rename occurences of vdef
- to v_may_def. Also add code to mark statements with
- V_MUST_DEFs as definition sites.
- (rewrite_stmt): Rename occurences of vdef to v_may_def. Also
- add code to register new V_MUST_DEFs made by the statement.
- * tree-outof-ssa.c (VIRTUAL_PARTITION): Update comments.
- (check_replaceable): Rename occurences of vdef to v_may_def. Also
- add check for V_MUST_DEFs.
- (find_replaceable_in_bb): Ditto.
- * tree-pretty-print.c (dump_vops): Rename occurences of vdef
- to v_may_def. Also add code to dump V_MUST_DEFs.
- * tree-sra.c (mark_all_vdefs): Replace with...
- (mark_all_v_may_defs): This.
- (mark_all_v_must_defs): New function.
- (create_scalar_copies): Replace call to mark_all_vdefs with
- calls to mark_all_v_may_defs and mark_all_v_must_defs.
- (scalarize_structures): Rename occurences of vdef to v_may_def.
- Also add a check for V_MUST_DEFs.
- (scalarize_modify_expr): Rename occurences of vdef to v_may_def.
- * tree-ssa-alias.c (global_var): Update comment.
- (compute_may_aliases): Ditto.
- (compute_points_to_and_addr_escape): Rename occurences of vdef
- to v_may_def. Also add code to mark variables in V_MUST_DEF
- operands as being written to.
- (group_aliases): Update comment.
- (maybe_create_global_var): Ditto.
- * tree-ssa.c (verify_ssa): Rename occurences of vdef to v_may_def.
- Also add a check for V_MUST_DEFs on GIMPLE registers.
- (replace_immediate_uses): Rename occurences of vdef to v_may_def.
- * tree-ssa-ccp.c (visit_stmt): Rename occurences of vdef
- to v_may_def. Also add code to mark all V_MUST_DEF operands
- VARYING.
- (initialize): Ditto.
- (set_rhs): Rename occurences of vdef to v_may_def. Also add
- code to update SSA_NAMEs in V_MUST_DEFs.
- * tree-ssa-copy.c (cprop_into_stmt): Rename occurences of vdef
- to v_may_def.
- * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Rename
- occurences of vdef to v_may_def. Also add code to mark statements
- with V_MUST_DEFs as necessary.
- (propagate_necessity): Rename occurences of vdef to v_may_def.
- * tree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Rename
- occurences of vdef to v_may_def. Also add code to mark operands
- in V_MUST_DEFs for renaming.
- (eliminate_redundant_computations): Rename occurences of vdef
- to v_may_def.
- (record_equivalences_from_stmt): Rename occurences of vdef
- to v_may_def. Also add code to record VUSEs for V_MUST_DEFs.
- (optimize_stmt): Remove unnesessary variable vdefs. Update
- comment.
- (register_definitions_for_stmt): Rename occurences of vdef
- to v_may_def. Also add code to register definitions made with
- V_MUST_DEFs.
- * tree-ssa-dse.c (fix_stmt_vdefs): Replace with...
- (fix_stmt_v_may_defs): This.
- (fix_phi_uses): Rename occurences of vdef to v_may_def.
- (dse_optimize_stmt): Ditto.
- * tree-ssa-live.c (create_ssa_var_map): Rename occurences of vdef
- to v_may_def. Also add code to mark V_MUST_DEF operands as being
- used in virtual operators.
- * tree-ssa-loop.c (mark_defs_for_rewrite): Rename occurences of
- vdef to v_may_def. Also add code to mark V_MUST_DEF operands for
- renaming.
- * tree-ssa-operands.c (opf_kill_def): New flag for killing
- definitions.
- (build_vdefs): Renamed to...
- (build_v_may_defs): This.
- (build_v_must_defs): New variable.
- (voperands_d): Add v_must_def_ops and replace vdef_ops with
- v_may_def_ops.
- (append_vdef): Replace with...
- (append_v_may_def): This.
- (append_v_must_def): New function.
- (NUM_FREE): Increment for V_MUST_DEF
- (optype_freelist): Increment its size for V_MUST_DEF
- (allocate_vdef_optype): Replace with...
- (allocate_v_may_def_optype): This.
- (allocate_v_must_def_optype): New function.
- (free_vdefs): Replace with...
- (free_v_may_defs): This.
- (free_v_must_defs): New function.
- (remove_vdefs): Replace with...
- (remove_v_may_defs): This.
- (remove_v_must_defs): New function.
- (init_ssa_operands): Rename occurences of vdef to v_may_def. Also
- add code to initialize build_v_must_defs.
- (finalize_ssa_vdefs): Replace with...
- (finalize_ssa_v_may_defs): This.
- (finalize_ssa_vuses): Rename occurences of vdef to v_may_def.
- (finalize_ssa_v_must_defs): New function.
- (finalize_ssa_stmt_operands): Replace call to finalize_ssa_vdefs
- with calls to finalize_ssa_v_may_defs and finalize_ssa_v_must_defs.
- (verify_start_operands): Rename occurences of vdef to v_may_def.
- Also add check for build_v_must_defs.
- (get_stmt_operands): Rename occurences of vdef to v_may_def.
- Also add code to handle V_MUST_DEFs and to use opf_kill_def for
- killing definitions.
- (get_expr_operands): Update comment and use opf_kill_def for
- killing definitions.
- (add_stmt_operand): Replace code that appends VDEFs with code
- that appends V_MUST_DEFs when opf_kill_def is set and V_MAY_DEFs
- otherwise.
- (add_call_clobber_ops): Update comments.
- * tree-ssa-operands.h (vdef_optype_d): Replace with...
- (v_may_def_optype_d): This.
- (v_must_def_optype_d): New structure.
- (VDEF_OPS): Replace with...
- (V_MAY_DEF_OPS): This.
- (STMT_VDEF_OPS): Same with...
- (STMT_V_MAY_DEF_OPS): This.
- (NUM_VDEFS): And...
- (NUM_V_MAY_DEFS): This.
- (VDEF_RESULT_PTR): As well as...
- (V_MAY_DEF_RESULT_PTR): This.
- (VDEF_RESULT): Same goes for...
- (V_MAY_DEF_RESULT): This.
- (VDEF_OP_PTR): And...
- (V_MAY_DEF_OP_PTR): This.
- (VDEF_OP): And...
- (V_MAY_DEF_OP): This.
- (V_MUST_DEF_OPS): New macro.
- (STMT_V_MUST_DEF_OPS): Ditto.
- (NUM_V_MUST_DEFS): Ditto.
- (V_MUST_DEF_OP_PTR): Ditto.
- (V_MUST_DEF_OP): Ditto.
- (remove_vdefs): Replace signature with...
- (remove_v_may_defs): This.
- (remove_v_must_defs): New function signature.
- * tree-ssa-pre.c (subst_phis): Replace call to remove_vdefs
- with calls to remove_v_may_defs and remove_v_must_defs.
- (process_left_occs_and_kills): Rename occurences of vdef to v_may_def.
- Also add code that marks left occurences of operands in V_MUST_DEFs.
- * tree-tailcall.c (find_tail_calls): Rename occurences of vdef
- to v_may_def. Also add check for V_MUST_DEFs.
- (eliminate_tail_call):Rename occurences of vdef to v_may_def.
-
-2004-06-10 Vladimir Makarov <vmakarov@redhat.com>
-
- PR target/15653
- * haifa-sched.c (schedule_block): Finish cycle after issuing asm
- insn.
-
-2004-06-10 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- PR web/15263
- * doc/install.texi: Remove superfluous linebreak.
-
-2004-06-10 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin): Fall back to library function call for
- conj, conjf, conjl, creal, crealf, creall, cimag, cimagf and cimagl.
- (fold_builtin_1): Lower built-ins BUILT_IN_CONJ{,F,L} to CONJ_EXPR,
- BUILT_IN_CREAL{,F,L} to REALPART_EXPR, and BUILT_IN_CIMAG{,F,L} to
- IMAGPART_EXPR respectively.
-
-2004-06-10 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (dump_table): New argument start. Changed caller.
- (fixup_mova): New function.
- (find_barrier): Use it.
- (sh_reorg): Likewise. Check for CODE_FOR_casesi_worker_2.
- If the label a mova refers to is above the mova itself, change
- the mova into a load.
- * sh.md (*casesi_worker): Rename to:
- (casesi_worker_1).
- (casesi_worker_2): New insn.
-
-2004-06-10 Jason Merrill <jason@redhat.com>
-
- * target.h (struct gcc_target): Change gimplify_va_arg_expr
- hook signature.
- * tree-gimple.h: Adjust.
- * config/alpha/alpha.c (alpha_gimplify_va_arg): Adjust.
- * config/i386/i386.c (ix86_gimplify_va_arg): Adjust.
- Use fold_convert.
- * config/ia64/ia64.c (ia64_gimplify_va_arg): Adjust.
- * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Adjust.
- Use COMPLEX_EXPR for complex numbers. Use fold_convert.
- * builtins.c (std_gimplify_va_arg_expr): Adjust. Use fold_convert.
- (gimplify_va_arg_expr): Return GS_ERROR in error case.
- Gimplify valist rather than calling stabilize_va_list.
-
-2004-06-10 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (df.o): Remove fibheap dependency.
- * df.h: Do not include sbitmap.h.
- (struct ref): New field "data".
- (DF_REF_DATA): New accessor macro.
- (struct df): Field "dom" removed.
- (df_analyze_subcfg): New function.
- (transfer_function_sbitmap, transfer_function_bitmap): Replaced by ...
- (transfer_function): ... new type.
- (iterative_dataflow_sbitmap, iterative_dataflow_bitmap): Replaced by ...
- (iterative_dataflow): ... new function.
- (enum set_representation, struct dataflow): New.
- * df.c: Do not include fibheap.h.
-
- (df_reg_def_chain_clean, df_reg_use_chain_clean,
- (df_bb_table_realloc, df_analyse_subcfg, free_reg_ref_chain,
- prune_to_subcfg, df_bb_modify): New functions.
- (df_bitmaps_alloc, df_reg_def_chain_create, df_reg_use_chain_create,
- df_refs_update, df_reg_table_realloc, df_ref_create,
- df_bb_reg_def_chain_create, df_bb_reg_use_chain_create,
- df_bb_rd_local_compute, df_bb_ru_local_compute, df_bb_lr_local_compute,
- df_analyse_1, df_insn_modify): Support analysing only a part of the cfg.
-
- (dataflow_set_a_op_b, dataflow_set_copy): New functions.
- (df_rd_transfer_function, df_ru_transfer_function,
- df_lr_transfer_function): Type of bitmaps changed to void *.
- (hybrid_search_bitmap, hybrid_search_sbitmap): Merge into ...
- (hybrid_search): ... new function.
- (iterative_dataflow_bitmap, iterative_dataflow_sbitmap): Merge into ...
- (iterative_dataflow): ... new function. Avoid use of fibheaps for
- a worklist. Do not process basic blocks unnecessarily.
-
-2004-06-10 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_abs_const): Make extern.
- * tree.h (fold_abs_const): Prototype here.
- * builtins.c (fold_builtin_fabs): New function to transform
- fabs, fabsf and fabsl builtins into ABS_EXPR tree nodes.
- (fold_builtin_abs): New function to transform abs, labs, llabs
- and imaxabs builtins into ABS_EXPR tree nodes.
- (expand_builtin): Fall back to a function call for abs, labs,
- llabs and imaxabs builtins that survive constant folding.
- (fold_builtin_1): Call fold_builtin_fabs for FABS, FABSF and
- FABSL, and fold_builtin_abs for ABS, LABS, LLABS and IMAXABS.
-
-2004-06-10 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/unwind-ia64.c (uw_frame_state_for): Don't assume a
- leaf function without unwind info at RP 0.
-
-2004-06-10 Jakub Jelinek <jakub@redhat.com>
-
- PR c++/14791
- * tree.h (enum tree_index): Add TI_FILEPTR_TYPE.
- (fileptr_type_node): Define.
- * tree.c (build_common_tree_nodes_2): Initialize
- fileptr_type_node to ptr_type_node.
- * c-common.c (c_common_nodes_and_builtins): For C++, make
- fileptr_type_node a distinct type copy.
- * builtin-types.def (BT_FILEPTR, BT_FN_INT_CONST_STRING_FILEPTR,
- BT_FN_INT_INT_FILEPTR, BT_FN_INT_FILEPTR_CONST_STRING_VALIST_ARG,
- BT_FN_SIZE_CONST_PTR_SIZE_SIZE_FILEPTR,
- BT_FN_INT_FILEPTR_CONST_STRING_VAR): Add.
- (BT_FN_INT_CONST_STRING_PTR, BT_FN_INT_INT_PTR,
- BT_FN_SIZE_CONST_PTR_SIZE_SIZE_PTR, BT_FN_INT_PTR_CONST_STRING_VAR,
- BT_FN_INT_PTR_CONST_STRING_VALIST_ARG): Remove.
- * builtins.def (BUILT_IN_FPRINTF, BUILT_IN_FPRINTF_UNLOCKED,
- BUILT_IN_FPUTC, BUILT_IN_FPUTC_UNLOCKED, BUILT_IN_FPUTS,
- BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FSCANF, BUILT_IN_FWRITE,
- BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_VFPRINTF, BUILT_IN_VFSCANF): Use
- the above *FILEPTR* types instead of *PTR*.
-
-2004-06-09 Daniel Berlin <dberlin@dberlin.org>
-
- * tree-ssa.c (verify_ssa): Verify that vdefs/makes_aliased_stores
- match.
-
-2004-06-09 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_not_const): New function.
- (fold) <ABS_EXPR>: Don't bother testing wins.
- (fold) <BIT_NOT_EXPR>: Call fold_not_const.
- (nondestructive_fold_unary_to_constant) <BIT_NOT_EXPR>: Likewise.
-
-2004-06-09 Richard Henderson <rth@redhat.com>
-
- PR middle-end/15228
- * function.c (assign_parms): Always set_mem_align with the computed
- FUNCTION_ARG_BOUNDARY. Don't clear stack_parm if !STRICT_ALIGNMENT.
-
-2004-06-09 Richard Henderson <rth@redhat.com>
-
- PR opt/15108
- * tree-tailcall.c (find_tail_calls): Don't check early for
- tail_recursion failure.
-
-2004-06-09 Diego Novillo <dnovillo@redhat.com>
-
- Move SSA_NAME annotations into tree_ssa_name.
-
- * tree-dfa.c (create_ssa_name_ann): Remove.
- * tree-flow-inline.h (ssa_name_ann, get_ssa_name_ann): Remove.
- * tree-flow.h (enum tree_ann_type): Remove SSA_NAME_ANN.
- (struct ssa_name_ann_d): Remove.
- (union tree_ann_d): Update.
- (ssa_name_ann_t): Remove.
- * tree-ssa-alias.c: (get_ptr_info): New local function.
- Replace references to ssa_name_ann_t with struct ptr_info_def.
- * tree-ssa-operands.c (get_expr_operands): Likewise.
- * tree.h (SSA_NAME_PTR_INFO): Define.
- (struct ptr_info_def): Declare.
- (struct tree_ssa_name): Add field 'ptr_info'.
-
-2004-06-09 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/winnt.c (i386_pe_output_labelref): Correct
- misplaced ')'.
-
-2004-06-09 Steven Bosscher <stevenb@suse.de>
-
- * config/i386/k6.md: Rewrite using the DFA model.
- * config/i386/i386.c (ix86_adjust_cost): Don't increase the
- cost of load-operation insns for the K6.
- (ia32_use_dfa_pipeline_interface): Add TARGET_K6.
- (ia32_multipass_dfa_lookahead): Likewise.
-
-2004-06-09 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_gimplify_va_arg_1,
- alpha_gimplify_va_arg, TARGET_GIMPLIFY_VA_ARG_EXPR): New.
-
-2004-06-09 Richard Henderson <rth@redhat.com>
-
- * expmed.c (emit_store_flag): Cope with FLOAT_STORE_FLAG_VALUE.
-
-2004-06-09 Geoffrey Keating <geoffk@apple.com>
-
- * Makefile.in (CPPLIB_H): Put files in order of inclusion.
- (CPP_ID_DATA_H): New.
- (gtype-desc.o): Update dependencies.
- (GTFILES): Use CPP_ID_DATA_H.
-
-2004-06-09 Mark Mitchell <mark@codesourcery.com>
-
- Revert:
- PR c++/15815
- 2004-06-07 Mark Mitchell <mark@codesourcery.com>
- * doc/extend.texi: Deprecate #pragma interface and #pragma
- implementation.
-
-2004-06-09 David S. Miller <davem@nuts.davemloft.net>
-
- * config/sparc/sparc.h (MOVE_RATIO): New definition.
-
-2004-06-09 Richard Henderson <rth@redhat.com>
-
- * basic-block.h (struct edge_def): Add goto_locus.
- * tree-cfg.c (make_goto_expr_edges): Set it.
- (disband_implicit_edges): Use it.
- * tree-pretty-print.c (dump_implicit_edges): Print it.
-
-2004-06-08 Anil Paranjpe <anilp1@kpitcummins.com>
-
- * h8300.md (ldm_h8300s_4): Fix condition for expander.
-
-2004-06-08 Jason Merrill <jason@redhat.com>
-
- Gimplify VA_ARG_EXPR into simpler forms.
- * target.h: Add gimplify_va_arg_expr hook.
- * target-def.h: Add TARGET_GIMPLIFY_VA_ARG_EXPR.
- * fold-const.c (build_fold_addr_expr)
- (build_fold_addr_expr_with_type): Move from gimplify.c.
- * tree.h: Declare them.
- * gimplify.c (gimplify_and_add): New fn.
- (build_addr_expr, build_addr_expr_with_type): Move to fold-const.c.
- (gimplify_array_ref_to_plus, gimplify_modify_expr)
- (gimplify_expr): Use build_fold_*.
- (copy_if_shared_r): Only mark VA_ARG_EXPR volatile if we
- don't know how to gimplify it.
- * builtins.c (std_gimplify_va_arg_expr): New fn.
- (dummy_object): New static fn.
- (gimplify_va_arg_expr): New fn.
- (stabilize_va_list): Use build_fold_*.
- * tree-gimple.h: Declare new fns.
- * config/i386/i386.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
- (ix86_gimplify_va_arg): New fn.
- * config/ia64/ia64.c (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
- (ia64_gimplify_va_arg): New fn.
- * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): New fn.
- (TARGET_GIMPLIFY_VA_ARG_EXPR): Define.
- * alias.c (get_varargs_alias_set): Just return 0 for now.
-
- * c-objc-common.c (c_tree_printer): Improve handling of %T.
-
-2004-06-09 Andrew Pinski <pinskia@physics.uc.edu>
-
- * tree-complex.c (expand_complex_comparison): Use fold_convert instead
- of convert.
- * tree-inline.c (setup_one_parameter): Likewise.
- * tree-sra.c (csc_build_component_ref): Likewise.
- * tree-ssa-ccp.c (ccp_fold): Likewise.
- * tree-ssa-copy.c (cprop_operand): Likewise.
- * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
- * tree-tailcall.c (tree_optimize_tail_calls_1): Likewise.
-
-2004-06-09 J"orn Rennecke <joern.rennecke@superh.com>
-
- PR rtl-optimization/15521:
- * sched-int.h (in_post_call_group_p): Change type to enum.
- * sched-deps.c (sched_analyze_insn):
- (sched_analyze): When in_post_call_group_p is post_call_initial,
- don't add a dependency, but still set SCHED_GROUP_P and CANT_MOVE,
- and also reset in_post_call_group_p to post_call.
- (sched_analyze): When the previous basic block ended in a CALL_INSN,
- initialize in_post_call_group_p as post_call_initial.
- (init_deps): initialize in_post_call_group_p to not_post_call.
-
-2004-06-09 Arnaud Charlet <charlet@act-europe.fr>
-
- PR ada/6637
- * doc/install.texi: List ada, libada as options to --enable-shared
-
-2004-06-09 Paolo Bonzini <bonzini@gnu.org>
-
- * aclocal.m4 (gcc_AC_PROG_LN): Remove.
- (gcc_AC_CHECK_DECLS): Use AH_TEMPLATE to generate
- config.in entries.
- * configure.ac: Call ACX_PROG_LN, falling back to $LN_S
- if hard links are not available.
- * configure: Regenerate.
- * config.in: Regenerate.
-
-2004-06-08 Per Bothner <per@bothner.com>
-
- * configure.ac: New --enable-mapped-location sets USE_MAPPED_LOCATION.
-
-2004-06-08 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * toplev.c (floor_log2_wide): Correct casts for 64-bit hosts.
- Correct formatting.
-
-2004-06-08 James E Wilson <wilson@specifixinc.com>
-
- PR target/15790
- * config/i386/i386-coff.h (ASM_OUTPUT_ALIGN): Define.
-
-2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
-
- * fold-const.c (fold_convert): Treat OFFSET_TYPE like
- POINTER_TYPE and INTEGER_TYPE.
-
-2004-06-08 Bernardo Innocenti <bernie@develer.com>
-
- * modulo-sched.c: Compile only when INSN_SCHEDULING is
- defined.
-
-2004-06-08 Jeff Law <law@redhat.com>
-
- * doc/contrib.texi: Add entries for Stefan Olsson and
- Ola Ronnerup.
-
-2004-06-08 DJ Delorie <dj@redhat.com>
-
- * toplev.c (floor_log2_wide): Replace loop with faster bit
- operations.
- (exact_log2_wide): Define in terms of the above.
- * toplev.h (floor_log2): Use _builtin_clz family of builtins if
- available.
-
-2004-06-08 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000.c (print_operand, <case 'z'>):
- Make sure that we are in INDIRECT mode when getting the
- stub name.
-
-2004-06-08 Anil Paranjpe <anilp1@kpitcummins.com>
-
- * h8300.md (extendqisi2_h8300): Add constraints.
- (ldm_h8300s_4_normal): Fix typo.
-
-2004-06-08 Richard Henderson <rth@redhat.com>
-
- * gimple-low.c (struct lower_data): Replace the_return_label and
- one_return_stmt with return_statements.
- (lower_function_body): Process the entire list of return_statements.
- (lower_return_expr): Check source value before unifying return_exprs.
- * gimplify.c (gimplify_return_expr): Force the use of a temporary
- for !aggregate_value_p.
- * tree-gimple.c: Update RETURN_EXPR grammer.
-
-2004-06-08 Vladimir Makarov <vmakarov@redhat.com>
-
- PR target/15598
- * config/ia64/ia64.c (bundling): Add missed TYPE_A.
-
-2004-06-08 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR rtl-optimization/15717
- * config/i386/i386.c (legitimate_constant_p): Do not allow
- x - symbol_ref.
-
-2004-06-08 Alexandre Oliva <aoliva@redhat.com>
-
- * gimplify.c (copy_if_shared_r): Revert:
- 2004-05-21 Richard Henderson <rth@redhat.com>
- * gimplify.c [...] Don't mark VA_ARG_EXPRs volatile here.
-
-2004-06-07 Roger Sayle <roger@eyesopen.com>
-
- * expmed.c (add_cost, neg_cost, sdiv_pow2_cheap, smod_pow2_cheap):
- Make arrays indexed by machine mode. Rename negate_cost to neg_cost.
- (init_expmed): Initialize these cost arrays as appropriate.
- (store_bit_field, extract_bit_field): Correct whitespace.
- (synth_mult, choose_mult_variant, expand_mult, expand_mult_highpart,
- expand_mult_highpart_optab, expand_divmod): Update uses of add_cost,
- neg_cost, sdiv_pow2_cheap, smod_pow2_cheap to index with mode,
- word_mode or compute_mode as appropriate.
-
-2004-06-07 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/15783
- * config/sparc/sparc.c (function_arg_union_value): Add 'mode'
- parameter. Enumerate the registers inside the PARALLEL.
- (function_arg): Adjust call to function_arg_union_value.
- (function_value): Likewise.
-
- * config/sparc/sparc.c (sparc_function_epilogue): Properly format.
-
-2004-06-07 Roger Sayle <roger@eyesopen.com>
-
- * real.c (real_copysign): New function to implement libm's copysign.
- * real.h (real_copysign): Prototype here.
- * fold-const.c (tree_expr_nonnegative_p): The result of sqrt, sqrtf
- and sqrtl can be negative, as sqrt(-0.0) = -0.0. Correct whitespace.
- * builtins.c (fold_builtin_isascii, fold_builtin_toascii,
- fold_builtin_isdigit): Add function prototypes.
- (fold_builtin_copysign): New function to fold copysign, copysignf
- and copysignl. Optimize copysign(x,x) as x. Evaluate copysign of
- constant arguments at compile-time using real_copysign. Fold
- copysign(X,Y) as fabs(X) if Y is always non-negative.
- (fold_builtin_1): Correct minor whitespace/style issues. Call
- fold_builtin_copysign for BUILT_IN_COPYSIGN{,F,L}.
-
-2004-06-07 J"orn Rennecke <joern.rennecke@superh.com>
-
- * tree.c (iterative_hash_expr): Use real_hash.
-
-2004-06-07 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/14765
- * c-parse.in (compstmt_primary_start): Set last_expr_type to
- NULL_TREE.
-
-2004-06-07 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/15815
- * doc/extend.texi: Deprecate #pragma interface and #pragma
- implementation.
-
-2004-06-07 Alexandre Oliva <aoliva@redhat.com>
-
- PR middle-end/15666
- * c-decl.c (finish_decl): Use change_decl_assembler_name for the
- builtin decl as well.
-
-2004-06-07 Roger Sayle <roger@eyesopen.com>
-
- PR c/14649
- * c-typeck.c (require_constant_value, require_constant_elements):
- Move declarations to the top of the file.
- (build_function_call): If we require a constant value, fold with
- fold_initializer. If the result is a constant, and the function
- wasn't called using __builtin_foo, issue a pedantic warning.
- (build_unary_op): If we require a constant value, fold tree with
- fold_initializer.
- (build_binary_op): Use require_constant_value to determine whether
- to call fold or fold_initializer.
-
-2004-06-07 Richard Henderson <rth@redhat.com>
-
- * gimple-low.c (struct lower_data): Add the_return_label and
- one_return_stmt.
- (lower_function_body): Initialize and use them.
- (lower_return_expr): New.
- (lower_stmt): Call it.
- * gimplify.c (gimplify_return_expr): Force the argument to be either
- null or a result_decl.
- * tree-gimple.c: Update gimple grammer to match.
- * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Deny
- coalescing of result_decls.
-
-2004-06-07 Richard Henderson <rth@redhat.com>
-
- PR rtl-opt/15193
- * expmed.c (extract_bit_field): Fix vector_extract return.
-
- * config/i386/i386.md (negv4sf2): New pattern.
-
-2004-06-07 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/15337
- * c-common.c (c_sizeof_or_alignof_type): Use more detailed error
- message.
-
-2004-06-06 Paolo Bonzini <bonzini@gnu.org>
-
- * config.in: Regenerate.
-
-2004-06-06 Steven Bosscher <stevenb@suse.de>
-
- * tree-cfg.c (tree_verify_flow_info): Make sure that labels in
- SWITCH_LABELS are always sorted.
-
-2004-06-06 Steven Bosscher <stevenb@suse.de>
-
- * hooks.c (hook_int_void_1): New generic hook.
- * hooks.h (hook_int_void_1): Add prototype.
- * config/c4x/c4x.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
- Define to hook_int_void_1.
- * config/c4x/c4x.md: Replace dummies for the old pipeline model
- with dummies for the new one.
-
-2004-06-06 Roger Sayle <roger@eyesopen.com>
-
- * tree.h (lvalue_or_else): Delete function prototype.
- * c-typeck.c (lvalue_or_else): Make static. Add static prototype.
-
-2004-06-06 Stephane Carrez <stcarrez@nerim.fr>
-
- PR target/14542
- * config/m68hc11/m68hc11.md (move peephole2): Emit a use note to avoid
- a live change of a register after peephole replacement.
-
-2004-06-06 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/13519
- * c-typeck.c (composite_type, common_pointer_type): New functions.
- (common_type): Split parts into composite_type and
- common_pointer_type. Ensure that arithmetic operations return
- unqualified types without attributes. Don't make composite type
- of signed enum and compatible integer be unsigned.
- (build_conditional_expr, build_binary_op): Use
- common_pointer_type.
- * c-decl.c (merge_decls): Use composite_type.
- * c-tree.h (composite_type): Declare.
-
-2004-06-06 Stephane Carrez <stcarrez@nerim.fr>
-
- PR target/14457
- * config/m68hc11/m68hc11.c (splitable_operand): New predicate.
- * config/m68hc11/m68hc11-protos.h (splitable_operand): Declare.
- * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register it.
- (inhibit_libc): Must define.
- * config/m68hc11/m68hc11.md ("movhi_const0"): Use splitable_operand.
- ("*andhi3_gen", "iorhi3", "*iorhi3_gen"): Likewise.
- ("xorhi3"): Likewise.
-
-2004-06-06 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * cgraphunit.c (cgraph_decide_inlining): Adjust dump lines in
- always_inline pass.
-
-2004-06-05 David S. Miller <davem@nuts.davemloft.net>
-
- * config/sparc/linux.h (TARGET_C99_FUNCTIONS): Set.
- * config/sparc/linux64.h (TARGET_C99_FUNCTIONS): Likewise.
-
-2004-06-05 Bernardo Innocenti <bernie@develer.com>
-
- * regclass.c (init_reg_sets): Check for missing registers in target
- initializer macros FIXED_REGISTERS and CALL_USED_REGISTERS.
-
-2004-06-05 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (MKDEPS_H): New shorthand.
- (c-opts.o): Update dependencies.
- * c-opts.c: Include mkdeps.h.
- (handle_deferred_opts): Use cpp_get_deps and deps_add_target,
- not cpp_add_dependency_target.
-
-2004-06-05 Steven Bosscher <stevenb@suse.de>
-
- * config/v850/v850.c (v850_use_dfa_pipeline_interface): New.
- * config/v850/v850.md: Convert to DFA scheduler description.
-
-2004-06-05 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
-
- PR fortran/15478
- * doc/install.texi: Document GMP as prerequisite. Document
- --with-gmp and --with-gmp-dir configure options.
- * fortran/gfortran.texi: Remove section "Compiling and testing",
- remove TOC reference to it.
-
-2004-06-05 Graham Stott <graham.stott@btinternet.com>
-
- * combine.c(simplify_shift_const): Check shift amount is a
- CONST_INT.
-
-2004-06-05 Danny Smith <dannysmith@users.sourceforge.net>
-
- * toplev.c (init_asm_output): Add explicit 'b' to mode when
- opening asm_out_file.
- * c-pch.c (c_common_write_pch): Remove unnecessary fflush before
- reading asm_out_file. Replace fflush after reading asm_out_file
- with fseek.
- * hosthooks-def.h (HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY): Define
- default and add to HOST_HOOKS_INITIALIZER.
- * hosthooks.h (gt_pch_alloc_granularity): Declare hook function.
- * ggc-common.c (default_gt_pch_alloc_granularity): New function.
- (gt_pch_save): Use host_hooks.gt_pch_alloc_granularity
- to set mmi.offset padding.
- * config.gcc (i[34567]86-*-mingw32*): Set target_gtfiles to
- $(srcdir)/config/i386/winnt.c.
- (i[34567]86-*-pe | i[34567]86-*-cygwin*): Likewise.
- (i[34567]86-*-uwin*): Likewise.
- *i[34567]86-*-interix3*): Likewise.
- * config.host (i[34567]86-*-mingw32*): Set out_host_hook_obj.
- * config/i386/host-mingw32.c: New file.
- * config/i386/x-mingw32: Add rule for host-mingw32.o.
- * config/i386/winnt.c: (struct extern_list) Tag as GTY.
- (extern_head): Likewise.
- (struct export_list) Likewise.
- (export_head): Likewise.
- (i386_pe_record_external_function): Use ggc_alloc.
- (i386_pe_record_exported_symbol): Likewise.
- Include "gt-winnt.h" at end.
- * doc/hostconfig.texi: Document
- HOST_HOOKS_GT_PCH_ALLOC_GRANULARITY.
-
-2004-06-04 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h: Remove comments copied over from tm.texi.
- Rename 68000 and 68k to m68k for consistency in comments. Remove
- trailing whitespace before EOLs and before TABs.
- (MAX_CODE_ALIGN): Remove unused macro.
- (CALL_USED_REGISTERS): Reformat and add comments.
-
-2004-06-04 Frank Ch. Eigler <fche@redhat.com>
-
- * gcc.c (MFLIB_SPEC): Remove library references, to require users
- to enumerate -lmudflap* and dependencies when linking.
-
-2004-06-04 Paolo Bonzini <bonzini@gnu.org>
-
- PR target/15822
- * dojump.c (do_jump): Fix uninitialized variable tcode1.
-
-2004-06-04 Jerry Quinn <jlquinn@optonline.net>
-
- * Makefile.in (insn-conditions.o): Back out removal of reload.h.
- * genconditions.c (write_header): Back out removal of reload.h.
-
-2004-06-04 Jan Hubicka <jh@suse.cz>
-
- Re-apply hopefully fixed patch:
- * i386.md (UNSPECV_EH_RETURN): Kill.
- (eh_return): Use jump_insn.
- (eh_return_si, eh_return_di): Change pattern to jump instruction.
-
-2004-06-04 Jeff Law <law@redhat.com>
-
- * cfgrtl.c (try_redirect_by_replacing_jump): Fix return value.
-
-2004-06-04 Steven Bosscher <stevenb@suse.de>
-
- * except.c (for_each_eh_region): New function.
- * except.h (for_each_eh_region): Add a prototype for it.
- * tree-cfg.c (update_eh_labels): New function, callback for
- for_each_eh_region.
- (label_for_bb): Make global static, unfortunately.
- (cleanup_dead_labels): Also update label references for
- exception regions.
-
-2004-06-03 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.c (struct irix_section_align_entry): Fix
- GTY marker.
-
-2004-06-03 Geoffrey Keating <geoffk@apple.com>
-
- * toplev.c (check_global_declarations): Don't ask for
- DECL_ASSEMBLER_NAME unless the function really is declared
- static and not defined.
-
-2004-06-03 Matt Austern <austern@apple.com>
-
- PR c++/15428
- * default.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): New name
- for TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, with reversed sense.
- * config/darwin.h (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Likewise.
- * doc/tm.texi (TARGET_WEAK_NOT_IN_ARCHIVE_TOC): Rewrite
- documentation to reflect the new macro name and to clarify its
- meaning.
-
-2004-06-03 Steven Bosscher <stevenb@suse.de>
-
- * rtl.def (VAR_LOCATION): Make RTX_EXTRA.
-
-2004-06-03 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/darwin.c (machopic_indirect_data_reference): Copy
- the SYMBOL_REF_DECL from the original RTX for the new
- non-lazy pointer RTX.
-
-2004-06-03 Mark G. Adams <mark.g.adams@sympatico.ca>
-
- * tree.h: Remove include of version.h
- * c-cppbuiltin.c: Include version.h
- * diagnostic.c: Include version.h
- * dwarf2out.c: Include version.h
- * toplev.c: Include version.h
- * vmsdbgout.c: Include version.h
- * Makefile.in: Remove dependency on version.h from TREE_H, and
- add dependencies to required .o targets
-
-2004-06-03 Jerry Quinn <jlquinn@optonline.net>
-
- * Makefile.in (RA_H, RESOURCE_H, SCHED_INT_H, CFGLAYOUT_H,
- CFGLOOP_H, DF_H, DDG_H, TREE_SSA_LIVE_H): New.
- (TARGET_H): Add insn-modes.h.
- (tree-ssa.o, tree-cfg.o, tree-ssa-loop.o, toplev.o, passes.o,
- loop.o, loop-doloop.o, unroll.o, cfgloop.o, cfgloopanal.o,
- loop-iv.o, cfgloopmanip.o, loop-init.o, loop-unswitch.o,
- loop-unroll.o, ddg.o, modulo-sched.o, predict.o,
- cfglayout.o, ifcvt.o): Replace cfgloop.h with CFGLOOP_H.
- (toplev.o, passes.o, cfghooks.o, cfgloopmanip.o, loop-init.o,
- loop-unswitch.o, loop-unroll.o, ddg.o, modulo-sched.o,
- bb-reorder.o, tracer.o, cfglayout.o): Replace cfglayout.h with
- CFGLAYOUT_H.
- (ra.o, ra-build.o, ra-colorize.o, ra-debug.o, ra-rewrite.o):
- Replace ra.h with RA_H.
- (resource.o, regrename.o, insn-conditions.o, insn-emit.o,
- insn-recog.o): Replace resource.h with RESOURCE_H.
- (ddg.o, modulo-sched.o, haifa-sched.o, sched-deps.o, sched-rgn.o,
- sched-ebb.o, sched-vis.o, out_object_file): Replace sched-int.h
- with SCHED_INT_H.
- (web.o, lcm.o, df.o, ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
- ra-rewrite.o): Replace df.h with DF_H.
- (ddg.o, modulo-sched.o): Replace ddf.h with DDG_H.
- (tree-outof-ssa.o, tree-ssa-live.o, tree-ssa-copyrename.o):
- Replace tree-ssa-live.h with TREE_SSA_LIVE_H.
- (insn-conditions.o): Remove unused reload.h.
- * cfglayout.h: Add include guard. Include basic-block.h.
- * cfgloop.h: Add include guard. Include basic-block.h, rtl.h.
- * ddg.h: Include sbitmap.h, basic-block.h, df.h.
- * df.h: Add include guard. Include bitmap.h, sbitmap.h,
- basic-block.h.
- * genconditions.c: Remove reload.h.
- * ra.h: Add include guard. Include bitmap.h, sbitmap.h,
- hard-reg-set.h, insn-modes.h.
- * resource.h: Add include guard. Include hard-reg-set.h.
- * sched-int.h: Add include guard. Include insn-attr.h,
- basic-block.h, rtl.h.
- * target.h: Add include guard. Include insn-modes.h.
- * tree-ssa-live.h: Include partition.h.
-
-2004-06-03 Daniel Berlin <dberlin@dberlin.org>
- Kenneth Zadeck <zadeck@naturalbridge.com>
-
- * tree-ssa-ccp.c (varying_ssa_edges): New worklist.
- (add_var_to_ssa_edges_worklist): Add value argument.
- Update callers.
- Use new worklist.
- (process_ssa_edge_worklist): New function.
- (tree_ssa_ccp): Move worklist processing core to
- process_ssa_edge_worklist, and just call that for the two worklists.
-
-2004-06-03 Steven Bosscher <stevenb@suse.de>
-
- * basic-block.c (tail_recursion_label_list): Don't declare.
- (CLEANUP_PRE_SIBCALL): Remove. Renumber the other CLEANUP_*
- accordingly.
- * cfgbuild.c (find_label_refs): Remove.
- (find_basic_blocks_1): Don't handle CALL_PLACEHOLDER insns.
- * cfgcleanup.c (tail_recursion_label_p): Remove.
- (merge_blocks_move): Do not check for tail recursion.
- (try_optimize_cfg): Likewise.
- (cleanup_cfg): Never handle CLEANUP_PRE_SIBCALL.
- * cfgrtl.c (tail_recursion_label_list): Remove.
- * except.c (remove_unreachable_regions): Don't handle
- CALL_PLACEHOLDER insns.
- (convert_from_eh_region_ranges_1, can_throw_internal,
- can_throw_external): Likewise.
- * function.c (free_after_compilation): Don't clear
- x_tail_recursion_label.
- (fixup_var_refs_insns): Don't handle CALL_PLACEHOLDER insns.
- (identify_blocks_1): Don't recurse for CALL_PLACEHOLDER insns.
- (reorder_blocks_1): Likewise.
- * function.h (struct function): Remove x_tail_recursion_label
- member. Don't define tail_recursion_label.
- * jump.c (mark_all_labels): Don't handle CALL_PLACEHOLDER insns.
- * print-rtl.c (print_rtx): Likewise.
- * rtl.def (CALL_PLACEHOLDER): Remove.
- * rtl.h (sibcall_use_t): Remove enum.
- (optimize_sibling_and_tail_recursive_calls,
- replace_call_placeholder): Remove function prototypes.
- * stmt.c (tail_recursion_args): Remove.
- (optimize_tail_recursion): Remove.
- (expand_return): Don't check for possible tail recursion.
- * tree.h (optimize_tail_recursion): Remove prototype.
-
-2004-06-02 Jan Hubicka <jh@suse.cz>
-
- * tree-cfg.c (tree_find_edge_insert_loc): Allow inserting before
- return_stmt.
-
-2004-06-02 Jason Merrill <jason@redhat.com>
-
- * Makefile.in (TAGS): Don't mess with c-parse.[ch].
- Do include c-parse.in.
-
-2004-06-02 Eric Christopher <echristo@redhat.com>
-
- * c-typeck.c (common_type): Don't lose type qualifiers
- when creating new variants.
-
-2004-06-02 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR tree-optimization/14042
- PR tree-optimization/14729
- PR tree-optimization/14736
- * tree-ssa.c (tree_ssa_useless_type_conversion_1):
- Check the type which the pointer points to
- instead of the pointer types.
-
-2004-06-02 Kazu Hirata <kazu@cs.umass.edu>
-
- PR tree-optimization/15738.
- * builtins.c (fold_builtin_strchr): Transform
- strrchr (s, '\0') to strchr (s, '\0').
-
-2004-06-02 Steven Bosscher <stevenb@suse.de>
-
- * i386.c (ix86_adjust_cost): Don't increase the cost for
- load+operation for PROCESSOR_PENTIUMPRO, it is already
- modelled in the DFA description
-
-2004-06-01 Jerry Quinn <jlquinn@optonline.net>
-
- * Makefile.in (EXPR_H): Add insn-config.h, function.h,
- $(RTL_H), flags.h, $(TREE_H), $(MACHMODE_H), $(EXPR_H).
- (ALIAS_H, EMIT_RTL_H): New.
- (cselib.o): Replace EXPR_H with EMIT_RTL_H.
- (cfgcleanup.o): Add EMIT_RTL_H.
- (alias.o): Replace EXPR_H with EMIT_RTL_H and ALIAS_H.
- * alias.c: Replace expr.h with emit-rtl.h and alias.h.
- * attribs.c, c-lex.c, c-obj-common.c, c-semantics.c: Remove expr.h.
- * cfgcleanup.c, cselib.c: Replace expr.h with emit-rtl.h.
- * expr.h: Add include guard. Include function.h, rtl.h, flags.h,
- tree.h, machmode.h, insn-config.h, alias.h, emit-rtl.h.
- (get_varargs_alias_set, get_frame_alias_set, record_base_value,
- record_alias_subset, new_alias_set, can_address_p): Move to alias.h.
- (set_mem_alias_set, set_mem_align, set_mem_expr, set_mem_offset,
- set_mem_size): Move to emit-rtl.h.
- * emit-rtl.h: New.
- * alias.h: New.
-
-2004-06-01 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * function.c (walk_fixup_memory_subreg): New parameter 'var'.
- Call fixup_memory_subreg only if the MEM is equal to 'var'.
- Adjust recursive calls to self.
- (fixup_var_refs_insn): Pass 'var' to walk_fixup_memory_subreg.
-
-2004-06-01 Richard Henderson <rth@redhat.com>
- Andrew Pinski <pinskia@physics.uc.edu>
-
- * c-parse.in (OFFSETOF, offsetof_member_designator): New.
- (primary): Handle offsetof. Add error productions for faux functions.
- Move component_ref objc checking to build_component_ref.
- (reswords): Add offsetof.
- (rid_to_yy): Add offsetof.
- * c-tree.h (build_offsetof): Declare.
- * c-common.h (objc_is_public): Declare.
- * c-typeck.c (build_component_ref): Check objc_is_public.
- (build_offsetof): New.
- * stub-objc.c (objc_is_public): New.
- * objc/objc-act.c, objc/objc-act.h (objc_is_public): Rename
- from is_public.
- * ginclude/stddef.h (offsetof): Use __builtin_offsetof.
- * doc/extend.texi (Offsetof): Move from C++ section to C section
- and rewrite for __builtin_offsetof.
-
-2004-06-01 Peter Barada <peter@the-baradas.com>
- Peter Jakubek <peter@laseranimation.com>
-
- * config/m68k/m68k.c(m68k_output_mi_thunk): For ColdFire, use %d0 as
- a scratch to perform an add to memory.
-
-2004-06-01 Bernardo Innocenti <bernie@develer.com>
-
- PR target/14018
- * config/m68k/m68k.c (m68k_align_loops_string, m68k_align_jumps_string,
- m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps,
- m68k_align_funcs): Remove.
- (override_options): Remove code to handle -malign-* options.
- * config/m68k/m68k.h (TARGET_OPTIONS): Remove -malign-* options.
- (FUNCTION_BOUNDARY, LOOP_ALIGN, LOOP_ALIGN_AFTER_BARRIER): Remove.
- (m68k_align_loops_string, m68k_align_jumps_string,
- m68k_align_funcs_string, m68k_align_loops, m68k_align_jumps,
- m68k_align_funcs): Remove definitions.
-
-2004-06-01 Paul Eggert <eggert@cs.ucla.edu>
-
- PR target/15626
- * doc/install.texi (sparc-sun-solaris2*): Document messages issued
- by the Sun linker in conjunction with the Sun assembler.
- (sparc-sun-solaris2.7): Update revision info for Sun patch 106950.
-
-2004-06-01 Jeff Law <law@redhat.com>
-
- * stmt.c (expand_decl): Be more selective about calling
- mark_reg_pointer.
-
-2004-06-01 Nicola Pero <nicola@brainstorm.co.uk>
-
- PR objc/7993
- * objc-act.c (is_private): Do not emit the 'instance variable %s
- is declared private' error.
- (is_public): Emit the error after calling is_private.
- (lookup_objc_ivar): If the instance variable is private, return 0
- - the instance variable is invisible here.
-
-2004-06-01 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/invoke.texi (-static-libgcc): Explicitly mention
- non-GNU linkers.
-
-2004-06-01 Bernardo Innocenti <bernie@develer.com>
-
- PR target/12968
- * doc/invoke.texi: Document stack alignment side-effect of -mshort.
-
-2004-05-31 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/15749
- * c-decl.c (grokdeclarator, finish_struct): Don't pedwarn for
- misuses of structures with flexible array members if
- in_system_header.
-
-2004-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/15693
- * config/sparc/sparc.c (compare_operand): New predicate.
- * config/sparc/sparc.h (PREDICATE_CODES): Add it.
- * config/sparc/sparc.md (cmpsi expander): Use it. If the first
- operand is a ZERO_EXTRACT and the second operand is not zero,
- force the former to a register.
- (cmpdi expander): Likewise.
-
-2004-05-31 Geoffrey Keating <geoffk@apple.com>
-
- * gengtype-lex.l: Catch stray GTY markers in the files gengtype
- looks at.
- * alias.c (alias_invariant_size): Make alias_invariant_size
- static, fix GTY marker.
-
-2004-05-31 Kazu Hirata <kazu@cs.umass.edu>
-
- PR tree-optimization/15743.
- * builtins.c (fold_builtin_1): Fold index() and rindex().
-
-2004-05-31 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/15069
- * fold-const.c (fold_single_bit_test): Only perform "(X & C) != 0"
- into "X < 0" (where C is the signbit) if X's type is a full mode.
-
-2004-05-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md: Disable the peephole2 patterns that generate indexed
- floating-point stores when indexing is disabled.
-
-2004-05-31 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-pretty-print.c (pp_c_left_bracket): Make a function.
- (pp_c_right_bracket): Likewise.
- (pp_c_star): Likewise.
- (pp_c_ampersand): Define.
- * c-pretty-print.h (pp_c_left_bracket): Declare.
- (pp_c_right_bracket): Likewise.
- (pp_c_star): Likewise.
- (pp_c_ampersand): Likewise.
-
-2004-05-31 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sol2.h (__enable_execute_stack): ANSIfy function
- definition.
-
-2004-05-31 Danny Smith <dannysmith@users.sourceforge.net>
-
- * c-incpath.c (add_path): Canonicalize paths to use '/' if
- HAVE_DOS_BASED_FILESYSTEM.
-
-2004-05-31 Steven Bosscher <stevenb@suse.de>
-
- * tree-ssa-dom.c (record_equivalences_from_incoming_edge):
- Only look at case labels if the immediate dominator is also
- the only predecessor. Don't look for more case labels if the
- first seen is a case range.
-
-2004-05-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.c: Add a prototype for fold_builtin_strchr().
-
-2004-05-31 Paolo Bonzini <bonzini@gnu.org>
-
- Revert this patch:
- 2004-05-27 Paolo Bonzini <bonzini@gnu.org>
-
- * combine.c (gen_binary): Remove.
- (known_cond, simplify_shift_const
- find_split_point, combine_simplify_rtx,
- simplify_if_then_else, simplify_set,
- simplify_logical, expand_field_assignment,
- extract_left_shift, force_to_mode,
- if_then_else_cond, apply_distributive_law,
- simplify_and_const_int, simplify_shift_const,
- gen_lowpart_for_combine, simplify_comparison,
- reversed_comparison): Replace with
- simplify_gen_binary, simplify_gen_relational or
- distribute_and_simplify_rtx.
- (distribute_and_simplify_rtx): New function.
-
-2004-05-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c (emit_move_sequence): Fix loading of non 14-bit CONST operands
- when generating PIC code.
-
-2004-05-30 Andrew Pinski <pinskia@physics.uc.edu>
-
- * c-decl.c (c_expand_body_1): Remove and fold back into ...
- (c_expand_body): here.
- (c_expand_decl): Move to ...
- * c-common.c (c_expand_decl): Here and remove check for nested
- functions.
- * c-common.h (c_expand_decl): Add prototype.
- * c-tree.h (c_expand_decl): Remove.
-
-2004-05-30 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (combine_comparisons, optimize_bit_field_compare,
- range_binop, fold_truthop, fold_binary_op_with_conditional_arg,
- fold_mathfn_compare, fold_inf_compare, fold,
- fold_relational_hi_lo, nondestructive_fold_binary_to_constant):
- Use constant_boolean_node where appropriate. Don't bother using
- fold_convert on the second argument to omit_one_operand.
-
-2004-05-30 Roger Sayle <roger@eyesopen.com>
-
- * doc/c-tree.texi (Expressions): Document FLOOR_DIV_EXPR,
- CEIL_DIV_EXPR, ROUND_DIV_EXPR, FLOOR_MOD_EXPR, CEIL_MOD_EXPR,
- ROUND_MOD_EXPR, EXACT_DIV_EXPR. Improve documentation of
- TRUNC_DIV_EXPR, TRUNC_MOD_EXPR and comparison operations.
- Add missing (but documented) tree nodes to the index.
-
-2004-05-30 Steven Bosscher <stevenb@suse.de>
-
- PR tree-optimization/14819
- * builtins.c (fold_builtin_strchr): New.
- (fold_builtin_1): Handle BUILT_IN_STRCHR and BUILT_IN_STRRCHR
- with fold_builtin_strchr().
-
-2004-05-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * bb-reorder.c, builtins.c, c-common.c, c-gimplify.c,
- c-incpath.c, cgraphunit.c, ddg.c, defaults.h, dwarf2out.c,
- expmed.c, flags.h, gcc.c, gensupport.c, gimplify.c, global.c,
- passes.c, reg-stack.c, target.h, toplev.c, tree-alias-ander.c,
- tree-alias-common.c, tree-cfg.c, tree-complex.c, tree-dfa.c,
- tree-eh.c, tree-mudflap.c, tree-mudflap.h, tree-outof-ssa.c,
- tree-phinodes.c, tree-pretty-print.c, tree-ssa-alias.c,
- tree-ssa-ccp.c, tree-ssa-live.c, tree-ssa-live.h,
- tree-ssa-pre.c, tree.h, value-prof.h, varasm.c: Fix comment
- formatting.
-
-2004-05-30 Steven Bosscher <stevenb@suse.de>
-
- * gimplify.c (sort_case_labels): New. Split out from...
- (gimplify_switch_expr): ...here. Use it.
- * tree-eh.c (lower_try_finally_switch): Sort the labels of
- the SWITCH_EXPR created here before leaving the function.
- * tree.c (sort_case_labels): Add prototype.
-
-2004-05-30 Andrew Pinski <pinskia@physics.uc.edu>
-
- * fold-const.c (fold) [case TRUTH_NOT_EXPR]: Make sure the type is
- of BOOLEAN_TYPE.
-
-2004-05-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-common.c, calls.c, cfgcleanup.c, cgraph.c, cgraphunit.c,
- ddg.c, ddg.h, df.c, df.h, except.c, expr.c, flags.h,
- fold-const.c, gcc.c, gimplify.c, haifa-sched.c,
- modulo-sched.c, tree-inline.c, tree-into-ssa.c, tree-nested.c,
- tree-nrv.c, tree-ssa-ccp.c, tree-ssa-dom.c, tree-ssa-live.c,
- tree-ssa-loop.c, tree-ssa-pre.c, tree-tailcall.c, tree.h: Fix
- comment typos. Follow spelling conventions.
-
-2004-05-29 Geoffrey Keating <geoffk@apple.com>
-
- * gengtype-yacc.y: Add NESTED_PTR token.
- (option): Record `nested_ptr' option.
- * gengtype-lex.l: Handle `nested_ptr' keyword.
- * gengtype.c (walk_type): Process `nested_ptr' option.
- * gengtype.h (struct nested_ptr_data): New.
- * doc/gty.texi (GTY Options): Document `nested_ptr' option.
- * stringpool.c (struct string_pool_data): Make 'entries' point to
- ht_identifier instead of tree.
- (gt_pch_save_stringpool): Don't adjust pointers.
- (gt_pch_restore_stringpool): Call ht_load.
-
-2004-05-29 Jason Merrill <jason@redhat.com>
-
- * gimplify.c (gimplify_expr): Don't build a statement list
- if no gimplification was necessary.
-
-2004-05-29 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * pretty-print.c (pp_base_format_text): Support %< instead of %`
- and %> as well as %'.
- * c-format.c: Use %< and %>.
- (gcc_diag_char_table, gcc_cdiag_char_table,
- gcc_cxxdiag_char_table): Update.
-
-2004-05-29 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-typeck.c (common_type): Correct comment.
-
-2004-05-29 Peter Barada <peter@the-baradas.com>
-
- * config/m68k/m68k.c (CONST_METHOD): Add MVZ, MVS.
- * config/m68k/m68k.c (const_method): Likewise.
- * config/m68k/m68k.c (const_int_cost): Likewise.
- * config/m68k/m68k.c (const_int_cost): Likewise.
- * config/m68k/m68k.c (output_move_const_into_data_reg): Likewise.
-
-2004-05-29 Peter Barada <peter@the-baradas.com>
-
- * config/m68k/m68k.h (EXTRA_CONSTRAINT): add 'U' for register offset
- addressing.
- * config/m68k/m68k.md: Add 'U,U' alternative to ColdFire variants of
- movsi,movhi,movqi insn patterns.
-
-2004-05-28 Andrew Pinski <pinskia@physics.uc.edu>
-
- * c-semantics.c (emit_local_var): Remove code for DECL_INITIAL.
-
- PR target/15720
- * config/darwin.c (machopic_indirect_call_target): Copy
- the SYMBOL_REF_DECL from the original RTX for the new
- stub RTX.
-
-2004-05-28 DJ Delorie <dj@redhat.com>
-
- * stor-layout.c (place_field): Revert erroneous commit.
-
-2004-05-28 Ziemowit Laski <zlaski@apple.com>
-
- * config/rs6000/altivec.h (vec_ctf, vec_vcfsx, vec_vcfux, vec_cts,
- vec_ctu, vec_dss, vec_dst, vec_dstst, vec_dststt, vec_dstt, vec_ld,
- vec_ldl, vec_lvsl, vec_lvsr, vec_sld, vec_splat, vec_vspltw,
- vec_vsplth, vec_vspltb, vec_splat_s8, vec_splat_s16, vec_splat_s32,
- vec_splat_u8, vec_splat_u16, vec_splat_u32, vec_st, vec_stl,
- vec_ste): Remove type checks for integral parameters and literals
- from '..._args_eq' macros.
-
-2004-05-28 Aldy Hernandez <aldyh@redhat.com>
-
- * c-common.c (fname_as_string): Fix xcalloc to xmalloc.
-
-2004-05-28 Aldy Hernandez <aldyh@redhat.com>
-
- * testsuite/g++.dg/charset/function.cc: New.
-
- * testsuite/gcc.dg/charset/function.c: New.
-
- * c-decl.c (c_make_fname_decl): Free return value from
- fname_as_string.
-
- * cp/decl.c (cp_make_fname_decl): Free return value from
- fname_as_string.
-
- * c-common.c (fname_as_string): Translate if necessary.
-
-2004-05-28 Geoffrey Keating <geoffk@apple.com>
-
- * stringpool.c: Add comments to PCH saving/restoring routines.
-
-2004-05-28 Andrew Pinski <pinskia@physics.uc.edu>
-
- * c-common.c (c_estimate_num_insns_1): Kill.
- (c_estimate_num_insns): Kill.
- * c-common.h (c_estimate_num_insns): Kill.
-
- * gthr-posix.h: Check for _POSIX_PRIORITY_SCHEDULING
- when checking for _POSIX_THREAD_PRIORITY_SCHEDULING.
- Remove comment about not checking for
- _POSIX_PRIORITY_SCHEDULING.
- * gthr-posix.c: Likewise.
-
-2004-05-28 Paolo Bonzini <bonzini@gnu.org>
- Roger Sayle <roger@eyesopen.com>
-
- PR rtl-optimization/15649
- Add LTGT_EXPR and improve pretty-printing of unordered
- comparisons.
- * c-common.c (c_common_truthvalue_conversion):
- Handle LTGT_EXPR.
- * c-typeck.c (build_binary_op): Likewise.
- * dojump.c (do_jump): Likewise.
- * expr.c (expand_expr_real_1, do_store_flag): Likewise.
- * predict.c (tree_predict_by_opcode): Likewise.
- * real.c (real_compare): Likewise.
- * tree-cfg.c (verify_expr): Likewise.
- * tree-inline.c (estimate_num_insns_1): Likewise.
- * tree-pretty-print.c (dump_generic_node): Likewise.
- Handle ORDERED_EXPR, UNORDERED_EXPR.
- (op_symbol): Print unordered comparisons differently
- than ordered ones.
- * tree.def (LTGT_EXPR): New '<' tree code.
- * doc/c-tree.texi (Expressions): Document floating-point
- comparison nodes.
-
- Fold comparisons between floating point values.
- * fold-const.c (enum comparison_code): New, from
- #define'd constants. Define compcodes for unordered
- comparisons and for invalid transformations.
- (invert_tree_comparison): Add "honor_nans" parameter.
- (fold_truthop): Revamp to work on floating-point types too.
- (comparison_to_compcode): Support unordered comparisons.
- Use new enum comparison_code.
- (compcode_to_comparison): Likewise.
- (combine_compcodes): New function.
- (invert_truthvalue): Let invert_tree_comparison decide
- whether it is valid to fold the comparison. Fold ORDERED
- and UNORDERED even if flag_unsafe_math_optimizations is off,
- and the remaining even if flag_unsafe_math_optimizations
- is off but we are under -fno-trapping-math.
- (fold_relational_const): Integer modes do not honor NaNs.
-
-2004-05-28 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_output_epilogue): Remove redundant code.
-
-2004-05-28 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (thumb_force_lr_save): New function.
- (arm_get_frame_offsets, thumb_unexpanded_epilogue,
- thumb_output_function_prologue): Use it.
- (thumb_expand_prologue): Set lr_save_eliminated.
-
-2004-05-28 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (extendsidi2): Tie the source and destination
- of the register alternative. Split it into nothing.
-
-2004-05-28 Richard Sandiford <rsandifo@redhat.com>
-
- * rtl.h (skip_consecutive_labels): Declare.
- * emit-rtl.c (skip_consecutive_labels): New function.
- * reorg.c (relax_delay_slots, dbr_schedule): Use it.
- * jump.c (follow_jumps): Say what null return values mean.
-
-2004-05-28 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/13250
- * config/sh/sh.md (rotlsi3): Use emit_move_insn.
-
-2004-05-27 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/t-linux (SHLIB_MAPFILES): Use sh specific
- libgcc-std.ver.
- * config/sh/libgcc-std.ver: New file.
-
-2004-05-27 Bryce McKinlay <mckinlay@redhat.com>
-
- * except.c: Revert change of 2004-05-26.
- * config/i386/i386.md: Revert change of 2004-05-27.
-
-2004-05-27 Bryce McKinlay <mckinlay@redhat.com>
-
- * configure.ac: Remove --enable-tree-browser option.
- Define TREEBROWSER when ac_tree_checking is defined.
- * configure: Rebuilt.
-
-2004-05-27 Olivier Hainque <hainque@act-europe.fr>
-
- * expr.c (store_constructor): Restore sanity check on
- the size of the type before clearing.
-
-2004-05-27 Jan Hubicka <jh@suse.cz>
-
- * cfgbuild.c (control_flow_insn_p): Notice noreturn call
-
-2004-05-27 Paolo Bonzini <bonzini@gnu.org>
-
- * combine.c (gen_binary): Remove.
- (known_cond, simplify_shift_const
- find_split_point, combine_simplify_rtx,
- simplify_if_then_else, simplify_set,
- simplify_logical, expand_field_assignment,
- extract_left_shift, force_to_mode,
- if_then_else_cond, apply_distributive_law,
- simplify_and_const_int, simplify_shift_const,
- gen_lowpart_for_combine, simplify_comparison,
- reversed_comparison): Replace with
- simplify_gen_binary, simplify_gen_relational or
- distribute_and_simplify_rtx.
- (distribute_and_simplify_rtx): New function.
- * simplify-rtx.c (simplify_binary_operation):
- Use nonzero_bits to simplify ANDs where we are
- turning off bits already known to be off in OP0.
-
-2004-05-27 Alan Modra <amodra@bigpond.net.au>
-
- PR target/14478
- * config/rs6000/rs6000.c (reg_or_neg_short_operand): Don't allow zero.
-
-2004-05-27 Josef Zlomek <zlomekj@suse.cz>
-
- PR middle-end/14084
- * emit-rtl.c (gen_rtx_REG_offset): Adjust the offset according
- to size of decl.
-
-2004-05-26 Aldy Hernandez <aldyh@redhat.com>
-
- PR/14924
- * config/rs6000/rs6000.c (spe_expand_stv_builtin): New.
-
-2004-05-26 Roger Sayle <roger@eyesopen.com>
-
- * tree.h: Fix comment typo.
-
-2004-05-27 Steven Bosscher <stevenb@suse.de>
-
- * gimplify.c (compare_case_labels): New function.
- (gimplify_switch_expr): Sort case labels, and make sure the
- last label in the label vector is the default case.
- * tree-cfg.c (group_case_labels): New function.
- (build_tree_cfg): Cleanup redundant labels and group case labels
- before creating edges.
- (cleanup_dead_labels): Handle GOTO_EXPRs.
- (find_case_label_for_value): Use a binary search to find the
- case label for the given value.
- * tree-gimple.c: Mention that labels are sorted, and that the
- last label must be the default.
-
-2004-05-27 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (try_optimize_cfg): Do not merge across jumptables.
-
-2004-05-27 Jan Hubicka <jh@suse.cz>
-
- * i386.md (UNSPECV_EH_RETURN): Kill.
- (eh_return): Use jump_insn.
- (eh_return_si, eh_return_di): Change pattern to jump instruction.
-
-2004-05-26 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (try_forward_edges): Do not check loop structure when
- not loop optimizing.
-
-2004-05-26 Jan Hubicka <jh@suse.cz>
-
- * except.c (can_throw_internal): Notice RESX instructions.
-
-2004-05-26 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * varasm.c (output_constant) <INTEGER_TYPE>: Pass the minimum
- of the two sizes to assemble_integer.
-
-2004-05-25 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (thumb_exit, thumb_unexpanded_epilogue): Remove
- pointless #ifdef.
-
-2004-04-25 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.in (top_builddir): Define to .
-
-2004-05-25 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.ac (gcc_cv_ld): Prefer in-tree ld over whatever the
- top-level detects, except when in-tree ld is being cross-built.
- (gcc_cv_as): Likewise for as. Use AS_FOR_TARGET otherwise, and
- then AS only if target is host.
- * configure: Rebuilt.
-
-2004-05-25 Vladimir Makarov <vmakarov@redhat.com>
-
- * global.c (global_alloc): Call make_accurate_live_analysis.
- (record_one_conflict): Remove dead code.
- (mark_reg_clobber): Remove ATTRIBUTE_UNUSED for parameter data.
- (bb_info): New structure.
- (BB_INFO, BB_INFO_BY_INDEX): New macros.
- (allocate_bb_info, free_bb_info, mark_reg_change,
- calculate_local_reg_bb_info, set_up_bb_rts_numbers, rpost_cmp,
- modify_bb_reg_pav, calculate_reg_pav,
- make_accurate_live_analysis): New functions.
-
-2004-05-25 Devang Patel <dpatel@apple.com>
-
- * alias.c (init_alias_analysis): Use ggc_calloc instead of
- xrealloc.
- (end_alias_analysis): Use ggc_free instead fo free.
-
-2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/15546
- * config/ia64/ia64.h (ASM_OUTPUT_FDESC): Mark the DECL
- as needed to be outputted.
-
-2004-05-25 Jan Hubicka <jh@suse.cz>
-
- * builtins.def (__builtin_expect): Mark the function as const&nothrow.
-
-2004-05-25 Ayal Zaks <zaks@il.ibm.com>
- Mostafa Hagog <mustafa@il.ibm.com>
-
- * Makefile.in (modulo-sched.o, ddg.o): New.
- * ddg.h, ddg.c, modulo-sched.c: New files.
- * cfglayout.c (duplicate_insn_chain): Remove "static" and push
- internals to "dupicate_insn".
- (duplicate_insn): New function.
- * cfglayout.h (duplicate_insn_chain, duplicate_insn): New
- declarations.
- * common.opt (fmodulo-sched): New flag.
- * df.c (df_bb_regno_last_use_find, df_bb_regno_first_def_find):
- Remove static and forward declaration.
- (df_find_def, df_reg_used, df_bb_regno_last_def_find): New
- functions.
- * df.h (df_bb_regno_last_use_find, df_bb_regno_first_def_find,
- df_bb_regno_last_def_find, df_find_def, df_reg_used): New
- declarations.
- * flags.h (flag_modulo_sched): New flag.
- * opts.c (common_handle_option): Handle modulo-sched flag.
- * params.def (max-sms-loop-number, sms-max-ii-factor,
- sms-dfa-history, sms-loop-average-count-threshold): New
- parameters.
- * params.h (MAX_SMS_LOOP_NUMBER, SMS_MAX_II_FACTOR,
- SMS_DFA_HISTORY, SMS_LOOP_AVERAGE_COUNT_THRESHOLD): New
- parameters.
- * passes.c ("sms", "sms-vcg"): New dumps.
- (rest_of_handle_sched): Call sms_schedule.
- * rtl.h (sms_schedule): New declaration.
- * timevar.def (TV_SMS): New.
- * toplev.c (flag_modulo_sched): Initialize.
- (f_options): Handle -fmodulo-sched option.
- * docs/invoke.texi: Document -fmodulo-sched & -dm options.
- * docs/passes.texi: Document new SMS pass.
-
-2004-05-25 Paolo Bonzini <bonzini@gnu.org>
-
- * Makefile.in (OBJS): Add rtlhooks.o.
- (rtlanal.o): Depend on function.h.
- (cse.o): Depend on rtlhooks-def.h.
- (combine.o): Depend on rtlhooks-def.h.
- (rtlhooks.o): New rule.
- * combine.c: Include rtlhooks-def.h.
- (nonzero_bits, cached_nonzero_bits, nonzero_bits1,
- num_sign_bit_copies, cached_num_sign_bit_copies,
- num_sign_bit_copies1): Move most of the code to rtlanal.c.
- (reg_nonzero_bits_for_combine,
- reg_num_sign_bit_copies_for_combine): New functions holding
- the remnants of the above.
- (combine_rtl_hooks): New.
- (combine_instructions): Set rtl_hooks instead of gen_lowpart.
- * cse.c: Include rtlhooks-def.h.
- (cse_rtl_hooks): New.
- (cse_main): Set rtl_hooks instead of gen_lowpart.
- * emit-rtl.c (gen_lowpart): Remove.
- (gen_lowpart_general): Move to rtlhooks.c.
- * rtl.h (nonzero_bits, num_sign_bit_copies,
- struct rtl_hooks, rtl_hooks, general_rtl_hooks): New.
- (gen_lowpart_general): Remove.
- (gen_lowpart): Temporarily redefine as a macro.
- * rtlanal.c: Include function.h.
- (nonzero_bits, cached_nonzero_bits, nonzero_bits1,
- num_sign_bit_copies, cached_num_sign_bit_copies,
- num_sign_bit_copies1): New, from combine.c.
- * rtlhooks.c: New file.
- * rtlhooks-def.h: New file.
-
-2004-05-25 Svein E. Seldal <Svein.Seldal@solidas.com>
-
- * config/avr/avr.h (LONG_LONG_TYPE_SIZE): Changed long long type
- to support 32-bit -mint8 mode.
-
- * doc/invoke.texi (-mint8): Added documentation for the -mint8
- option in the AVR architecture.
-
-2004-05-24 Mike Stump <mrs@apple.com>
-
- * doc/install.texi: Document that dejagnu 1.4.4 is required.
-
-2004-05-24 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * intl.h (open_quote, close_quote): New.
- * intl.c (open_quote, close_quote): New.
- (gcc_init_libintl): Set them.
- * pretty-print.c: Include "intl.h".
- (pp_base_format_text): Support 'q' format flag and %` and %'
- formats. Use ' instead of ` in comments.
- * c-format.c (gcc_diag_flag_specs, gcc_cxxdiag_flag_specs,
- gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table,
- foramt_types_orig): Describe these new formats.
- (decode_format_attr, check_function_format,
- check_format_info_main): Use these new formats.
- (status_warning): Use ATTRIBUTE_GCC_DIAG.
- * toplev.c (ATTRIBUTE_GCC_DIAG): Increase required GCC version to
- check these formats to 3.5.
-
-2004-05-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * Makefile.in (CPPLIBS): Renamed to CPPLIB.
- (BACKEND): Reflect this.
- (LIBDEPS): Move CPPLIB before LIBIBERTY.
- (LIBS): Likewise.
-
-2004-05-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- PR tree-optimization/14197
- * builtins.c: Include "tree-gimple.h"
- (readonly_data_expr): Use get_base_address. Make sure to call
- decl_readonly_section only on trees it can handle.
- * tree-gimple.c (get_base_address): Accept STRING_CST and
- CONSTRUCTOR expressions.
- * Makefile.in: Update dependencies.
-
-2004-05-23 Paolo Bonzini <bonzini@gnu.org>
-
- Move libcpp to the toplevel.
- * Makefile.in: Remove references to libcpp files,
- use CPPLIBS instead of libcpp.a. Define SYMTAB_H
- and change hashtable.h to that.
- * aclocal.m4 (gcc_AC_HEADER_STDBOOL,
- gcc_AC_HEADER_STRING, gcc_AC_C__BOOL): Remove.
- * configure.ac (gcc_AC_C__BOOL, HAVE_UCHAR): Remove tests.
- * configure: Regenerate.
- * config.in: Regenerate.
- * c-ppoutput.c: Include ../libcpp/internal.h instead of cpphash.h.
- * cppcharset.c: Removed.
- * cpperror.c: Removed.
- * cppexp.c: Removed.
- * cppfiles.c: Removed.
- * cpphash.c: Removed.
- * cpphash.h: Removed.
- * cppinit.c: Removed.
- * cpplex.c: Removed.
- * cpplib.c: Removed.
- * cpplib.h: Removed.
- * cppmacro.c: Removed.
- * cpppch.c: Removed.
- * cpptrad.c: Removed.
- * cppucnid.h: Removed.
- * cppucnid.pl: Removed.
- * cppucnid.tab: Removed.
- * hashtable.c: Removed.
- * hashtable.h: Removed.
- * line-map.c: Removed.
- * line-map.h: Removed.
- * mkdeps.c: Removed.
- * mkdeps.h: Removed.
- * stringpool.h: Include symtab.h instead of hashtable.h.
- * tree.h: Include symtab.h instead of hashtable.h.
- * system.h (O_NONBLOCK, O_NOCTTY): Do not define.
-
-2004-05-23 Paolo Bonzini <bonzini@gnu.org>
-
- * gcc.c (struct prefix_list): Add forward declaration.
- (do_spec_path): New function, extracted from...
- (do_spec_1) <'D'>: ... here. Drop support for
- SPACE_AFTER_L_OPTION.
- (do_spec_1) <'I'>: Use do_spec_path.
- (process_command): Do not store the 'include' suffix
- in include_prefixes.
- * system.h: Poison SPACE_AFTER_L_OPTION.
-
-2002-05-23 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (non_lvalue): Explicitly list the tree codes that
- need to be wrapped by NON_LVALUE_EXPR, instead of those that don't.
-
-2004-05-23 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/gcc.texi, doc/gccint.texi, doc/include/gcc-common.texi:
- Update based on printed manual. Enable setting of offsets for
- FSFPRINT and move it to gcc-common.texi.
- * doc/gcc.texi: Update FSF printing details.
- * doc/gccint.texi: Remove FSF printing details.
-
-2004-05-23 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/t-rs6000: Remove the disabling -Werror.
-
-2004-05-22 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_strstr, expand_builtin_strchr,
- expand_builtin_strrchr, expand_builtin_strpbrk,
- expand_builtin_mempcpy, expand_builtin_memcmp,
- expand_builtin_strcmp, expand_builtin_strncmp,
- expand_builtin_strcat, std_expand_builtin_va_start,
- std_expand_builtin_va_arg, expand_builtin_va_copy,
- expand_builtin_signbit, fold_builtin_cabs,
- fold_builtin_logarithm, fold_builtin_mempcpy,
- fold_builtin_signbit, fold_builtin_isascii,
- fold_builtin_toascii, fold_builtin_isdigit,
- fold_builtin_1, build_function_call_expr,
- simplify_builtin_strchr, simplify_builtin_strrchr,
- simplify_builtin_strpbrk, simplify_builtin_strncpy,
- simplify_builtin_memcmp, simplify_builtin_strcmp,
- simplify_builtin_strncmp, simplify_builtin_strncat,
- simplify_builtin_strspn, simplify_builtin_strcspn,
- simplify_builtin_fputs, simplify_builtin_sprintf): Replace calls
- to build with calls to build2, build3 or omit_one_operand.
-
-2004-05-22 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_file_start): Emit a .gcc_compiled_longXX
- section when generating EABI code.
-
-2004-05-22 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR 15546
- * config/i386/i386.c (output_pic_addr_const <case SYMBOL_REF>):
- Call mark_decl_referenced on the SYMBOL_REF_DECL.
-
-2004-05-22 Andrew Pinski <pinskia@physics.uc.edu>
-
- * c-common.c (c_common_truthvalue_conversion): Handle
- UNEQ_EXPR, UNLE_EXPR, UNGE_EXPR, UNLT_EXPR, UNGT_EXPR,
- ORDERED_EXPR, and UNORDERED_EXPR as comparison operators,
- i.e. set the type to truthvalue_type_node and return.
-
-2004-05-22 Zack Weinberg <zack@codesourcery.com>
-
- * tree.h (struct tree_decl): Add possibly_inlined bit.
- (DECL_POSSIBLY_INLINED): New accessor macro.
- * cgraph.h: Remove declaration of cgraph_inline_hash.
- * cgraph.c: Remove definition of cgraph_inline_hash.
- (hash_node): Revert to hashing DECL_UID.
- (eq_node): Take two pointers to cgraph_node structures.
- Compare DECL_UIDs.
- (cgraph_remove_node): Pass the node directly to htab_find_slot.
- (cgraph_varpool_hash_node): Rename hash_varpool_node;
- hash on DECL_UID.
- (eq_cgraph_varpool_node): Rename eq_varpool_node; take two
- pointers to cgraph_varpool_node structures; compare DECL_UIDs.
- (cgraph_node): Allocate a temporary node on the stack, fill in
- its DECL field, and pass that to htab_find_slot.
- (cgraph_varpool_node): Likewise.
- (cgraph_function_possibly_inlined_p): If global info is ready,
- return the DECL_POSSIBLY_INLINED bit.
- * cgraphunit.c (cgraph_mark_inline_edge): Set DECL_POSSIBLY_INLINED
- instead of mucking with cgraph_inline_hash.
-
-2004-05-22 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/contrib.texi: Add g77 contributors.
-
-2004-05-22 Richard Sandiford <rsandifo@redhat.com>
-
- * calls.c (initialize_argument_information): Forbid sibcalls if a
- callee-copied argument is stored in the current function's frame.
-
-2004-05-22 Eric Christopher <echristo@redhat.com>
-
- * fix-header.c (read_scan_file): Update for add_path change.
-
-2004-05-22 Ben Elliston <bje@au.ibm.com>
-
- * c.opt (Wmissing-include-dirs): New.
- * c-opts.c (c_common_handle_option): Pass true for user_supplied_p
- to add_path () for -I, but false for OPT_idirafter, OPT_iquote and
- OPT_isystem. Handle case OPT_Wmissing_include_dirs.
- * c-incpath.h (add_path): Add fourth (bool) argument.
- * c-incpath.c (add_env_var_paths): Pass false to add_path ().
- (add_standard_paths): Likewise.
- (remove_duplicates) [REASON_NOENT]: Warn if -Wmissing-include-dirs
- is used and the directory was user-supplied via -I.
- (add_path): Set p->user_supplied_p. Remove duplicated code by
- using add_cpp_dir_path ().
- * cpplib.h (struct cpp_options): Add warn_missing_include_dirs.
- (struct cpp_dir): Add user_supplied_p.
- * doc/invoke.texi (Warning Options): Document new option.
-
-2004-05-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * fold-const.c (fold_read_from_constant_string): Convert result to
- requested type.
-
-2004-05-21 Richard Henderson <rth@redhat.com>
-
- * gimplify.c (mostly_copy_tree_r): Don't attempt to copy decls.
- (copy_if_shared_r): Don't copy decls, types, constants, BINDs.
- Don't mark VA_ARG_EXPRs volatile here.
- (gimplify_modify_expr): Unshare TYPE_SIZE_UNIT.
-
-2004-05-21 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (tree-dump.o): Depend on tree-iterator.h.
- * tree-dump.c (dequeue_and_dump): Dump STATEMENT_LISTs.
-
-2004-05-21 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold, fold_relational_hi_lo,
- nondestructive_fold_binary_to_constant,
- fold_read_from_constant_string): Use fold_convert instead of convert.
- * builtins.c (simplify_builtin, simplify_builtin_strstr,
- simplify_builtin_strchr, simplify_builtin_strrchr,
- simplify_builtin_strpbrk): Use fold_convert instead of convert.
-
-2004-05-21 Diego Novillo <dnovillo@redhat.com>
-
- * tree-flow-inline.h (num_immediate_uses): Don't abort if DF
- is NULL.
-
-2004-05-21 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/linux64.h (OPTION_DEFAULT_SPECS): If SPARC_BI_ARCH,
- override sparc.h definition.
-
-2004-05-20 Roger Sayle <roger@eyesopen.com>
-
- * tree.c (array_type_nelts, save_expr, substitute_in_expr,
- get_unwidened, get_narrower): Replace build with build2.
- * fold-const.c (negate_expr, associate_trees, size_binop,
- fold_convert, eval_subst, omit_one_operand, invert_truthvalue,
- pedantic_omit_one_operand, distribute_bit_expr,
- make_bit_field_ref, optimize_bit_field_compare,
- decode_field_reference, range_binop, make_range,
- build_range_check, fold_range_test, fold_truthop,
- optimize_minmax_comparison, extract_muldiv_1,
- fold_binary_op_with_conditional_arg, fold_mathfn_compare,
- fold_inf_compare, fold_single_bit_test, fold,
- fold_relational_hi_lo, nondestructive_fold_binary_to_constant):
- Likewise replace build with either build2 or build3.
-
-2004-05-20 Ian Lance Taylor <ian@wasabisystems.com>
-
- * system.h: Poison NO_RECURSIVE_FUNCTION_CSE.
- * calls.c (prepare_call_address): Don't test
- NO_RECURSIVE_FUNCTION_CSE.
- * config/arc/arc.h (NO_RECURSIVE_FUNCTION_CSE): Don't define.
- * config/arm/arm.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/avr/avr.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/frv/frv.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/i386/i386.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/ip2k/ip2k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/iq2000/iq2000.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/m32r/m32r.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/m68k/m68k.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/mcore/mcore.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/mips/mips.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/stormy16/stormy16.h (NO_RECURSIVE_FUNCTION_CSE):
- Likewise.
- * config/xtensa/xtensa.h (NO_RECURSIVE_FUNCTION_CSE): Likewise.
- * config/sh/sh.h: Remove NO_RECURSIVE_FUNCTION_CSE comment.
- * doc/tm.texi (Costs): Remove documentation for
- NO_RECURSIVE_FUNCTION_CSE.
-
-2004-05-20 Paul Brook <paul@codesourcery.com>
-
- * unwind-dw2-fde.c (get_cie_encoding): Handle dwarf3 CIE format.
- * unwind-dw2.c (extract_cie_info): Ditto.
- (_Unwind_FrameState): Change retaddr_column to word type.
-
-2004-05-20 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/3074
- * fold-const.c (strip_compound_expr): Delete function.
- (count_cond): Delete function.
- (fold_binary_op_with_conditional_arg): Only perform transformations
- "a + (b?c:d) -> b ? a+c : a+d" and "(b?c:d) + a -> b ? c+a : d+a"
- when a is constant. This greatly simplifies this routine.
-
- * tree.c (saved_expr_p): Delete function.
- * tree.h (saved_expr_p): Delete function prototype.
-
-2004-05-20 Andrew Pinski <pinskia@physics.uc.edu>
-
- * common.opt (ftree-loop-optimize): Remove.
-
-2004-05-20 Daniel Jacobowitz <dan@debian.org>
-
- * Makefile.in (AR_FOR_TARGET, RANLIB_FOR_TARGET)
- (NM_FOR_TARGET): Use := and $(shell).
- (mainversion): Remove unused variable.
-
-2004-05-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * reorg.c (delete_from_delay_slot): If we have a barrier after the
- sequence containing the insn to be deleted, always reemit it.
-
-2004-05-20 Richard Henderson <rth@redhat.com>
-
- PR 15454
- * tree-nested.c (get_chain_decl): Create a PARM_DECL by hand.
- * function.c (expand_function_start): Expand static_chain_decl by hand.
- * gimplify.c (create_tmp_var_name): Export.
- * tree-gimple.h (create_tmp_var_name): Declare.
-
-2004-05-20 Andrew Pinski <pinskia@physics.uc.edu>
-
- * rs6000.c (print_operand) <case 'z'>: Call
- mark_decl_referenced before assemble_name.
-
-2004-05-20 Zack Weinberg <zack@codesourcery.com>
-
- * cgraph.c (hash_node, eq_node, cgraph_node, cgraph_remove_node)
- (cgraph_varpool_hash_node, eq_cgraph_varpool_node)
- (cgraph_varpool_node): Hash on the pointer to the decl, not
- the DECL_UID. Fixes 64-bit bootstrap failure.
-
-2004-05-20 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (ite_ne_zeroextractsi, ite_ne_zeroextractsi_shifted): Ensure
- we don't earlyclobber operands used in the second insn.
-
-2004-05-20 Steven Bosscher <stevenb@suse.de>
-
- * tree-mudflap.c: Formatting fixes.
-
-2004-05-20 J"orn Rennecke <joern.rennecke@superh.com>
-
- * Makefile.in (GTFILES): Add $(srcdir)/reload.h.
- * gengtype.c (open_base_files): Include reload.h in ifiles.
- * reload.h (reg_equiv_memory_loc_varray): Declare.
- * reload1.c (reg_equiv_memory_loc_varray): New variable.
- (init_reload): Initialize it.
- (reload): Instead of freeing reg_equiv_memory_loc, 'grow'
- reg_equiv_memory_loc_varray to size 0.
- * ra.c (reg_alloc): Allocate reg_equiv_memory_loc by
- growing reg_equiv_memory_loc_varray to the desired size.
- * passes.c (rest_of_handle_old_regalloc): Likewise.
- * reload.c: Amend comment on calling init_reload.
-
-2004-05-20 Nick Clifton <nickc@redhat.com>
-
- * config/c4x/c4x.h (INITIALIZE_TRAMPOLINE): Replace 'tramp'
- with 'TRAMP' in the body of the macro definition.
-
-2004-05-19 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/15383
- * config/ia64/ia64.c (ia64_expand_compare): Don't check
- TARGET_HPUX for TFmode compare. Abort if op0 is in TFmode and
- cmptf_libfunc isn't set.
- (ia64_init_libfuncs): Rename TFmode libfuncs using the HPUX
- conventions.
- (ia64_sysv4_init_libfuncs): New.
-
- * config/ia64/sysv4.h (TARGET_INIT_LIBFUNCS): New. Defined as
- ia64_sysv4_init_libfuncs.
-
-2004-05-20 Falk Hueffner <falk@debian.org>
-
- PR other/15526
- * libgcc2.c (__mulvsi3): Fix overflow test.
-
-2004-05-19 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c/14171
- * reg-stack.c (nan): Rename to ...
- (not_a_num): Here.
- (reg_to_stack): Rename nan to not_a_num.
- (subst_stack_regs_pat): Likewise.
- (convert_regs_entry): Likewise.
- (convert_regs_1): Likewise.
-
- * tree-cfg.c (find_case_label_for_value): Replace call to
- simple_cst_equal with tree_int_cst_equal.
-
-2004-05-19 Jeff Law <law@redhat.com>
-
- * tree-into-ssa.c (prepare_operand_for_rename): New argument is_use.
- If the operand is for a use, then strip away the SSA_NAME, do not
- strip away the SSA_NAME for a set. Never call release_ssa_name.
- (mark_def_sites): Appropriately pass additional argument to
- prepare_operand_for_rename. If a VDEF_RESULT is not an SSA_NAME,
- then set the VDEF_RESULT to the VDEF_OP.
- (set_def_block): Strip away any SSA_NAME to get to the real
- underlying variable.
-
- * tree-ssa-phiopt.c (value_replacement): Handle the case where
- the desired edge out of COND_BLOCK reaches OTHER_BLOCK rather than
- BB directly.
-
-2004-05-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR c++/15463
- * loop-iv.c (iv_number_of_iterations): Use trunc_int_for_mode on
- result of inverse.
-
- PR rtl-optimization/15274
- * loop-iv.c (determine_max_iter, shorten_into_mode,
- iv_number_of_iterations): Handle constants correctly.
- * rtl.h (get_mode_bounds): Declaration changed.
- * stor-layout.c (get_mode_bounds): Return a constant suitable for
- the target mode.
-
- PR rtl-optimization/14692
- * loop-unswitch.c (may_unswitch_on): Try folding the result.
- (unswitch_single_loop): Work correctly when may_unswitch_on
- returns a folded constant.
-
- * loop-iv.c (implies_p): Handle A < B ==> A + 1 <= B.
- * simplify-rtx.c (simplify_const_relational_operation): Optimize
- comparisons with mode bounds.
-
- * function.c (struct temp_slot): Add new field prev.
- (free_after_compilation, init_temp_slots): Free new fields.
- (cut_slot_from_list, insert_slot_to_list,
- temp_slots_at_level, max_slot_level, move_slot_to_level,
- make_slot_available): New functions.
- (assign_stack_temp_for_type, combine_temp_slots,
- find_temp_slot_from_address, preserve_temp_slots,
- preserve_rtl_expr_result, free_temp_slots,
- free_temps_for_rtl_expr, pop_temp_slots): Work with
- the new structure of lists.
- (mark_all_temps_used): Removed.
- * function.h (struct function): Field x_temp_slots
- replaced by x_used_temp_slots and x_avail_temp_slots.
- (temp_slots): Replaced by ...
- (used_temp_slots, avail_temp_slots): New.
- * tree.h (mark_all_temps_used): Declaration removed.
-
- * loop-iv.c (mark_single_set, get_biv_step_1, iv_analyze,
- simplify_using_assignment): Take the expression out of
- the expr_list wrapper.
-
- * loop-iv.c (iv_number_of_iterations): Improve clasification of
- infinite loops.
-
-2004-05-19 Roger Sayle <roger@eyesopen.com>
-
- * doc/tm.texi (TARGET_RTX_COSTS): Document that instruction
- costs should be based on code size when optimizing for size.
-
-2004-05-19 Paolo Bonzini <bonzini@gnu.org>
-
- * fold-const.c: Remove non-printable character 160.
-
-2004-05-19 Nick Clifton <nickc@redhat.com>
-
- * doc/invoke.texi (ARM Options): Fix typo.
- Remove descrption of -mshort-load-bytes and
- -mno-short-load-bytes.
-
- * config/ip2k/ip2k.c (ip2k_composite_xexp_not_uses_reg_p): Add
- missing parenthesis.
- * config/ip2k/ip2k.c (ip2k_unary_operator): Likewise.
- * config/ip2k/ip2k.c (ip2k_binary_operator): Likewise.
-
-2004-05-19 Steven Bosscher <stevenb@suse.de>
-
- * expr.c (store_constructor): Build loop start and end by hand
- instead of via loop functions from stmt.c.
- (expand_expr_real_1): Abort if we see an EXIT_EXPR or a LOOP_EXPR.
- Remove the code to expand them.
-
- * stmt.c (loop_stack): Remove this and everything related.
- (struct nesting, enum nesting_desc): Update.
- (expand_fixup): Likewise.
- (expand_loop_start, expand_start_loop_continue_elsewhere,
- expand_start_null_loop, expand_loop_continue_here, expand_end_loop,
- expand_end_null_loop, expand_continue_loop, expand_exit_loop,
- expand_exit_loop_if_false, expand_exit_loop_top_cond,
- expand_exit_something): Remove.
- * tree.h: Remove prototypes.
-
-2004-05-18 Mike Stump <mrs@apple.com>
- Devang Patel <dpatel@apple.com>
-
- * doc/tm.texi (TARGET_ASM_EMIT_UNWIND_LABEL): Add argument to indicate
- if this label is for eh.
- * config/darwin-protos.h (darwin_emit_unwind_label): Likewise.
- * config/darwin.c (darwin_emit_unwind_label): Likewise.
- * dwarf2out.c (output_call_frame_info): Likewise.
- * output.h (default_emit_unwind_label): Likewise.
- * target.h (unwind_label): Likewise.
- * varasm.c (default_emit_unwind_label): Likewise.
-
- * config/darwin.h (DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE,
- DEBUG_FRAME_SECTION, DEBUG_INFO_SECTION, DEBUG_ABBREV_SECTION,
- DEBUG_ARANGES_SECTION, DEBUG_MACINFO_SECTION, DEBUG_LINE_SECTION,
- DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_STR_SECTION,
- DEBUG_RANGES_SECTION): Define.
-
-2004-05-18 Zack Weinberg <zack@codesourcery.com>
-
- * cgraph.c (hash_node, eq_node, cgraph_node, cgraph_remove_node)
- (cgraph_varpool_hash_node, eq_cgraph_varpool_node)
- (cgraph_varpool_node):
- Use DECL_UID for the key, not DECL_ASSEMBLER_NAME.
- (cgraph_function_possibly_inlined_p): Use the decl itself for
- the key, not DECL_ASSEMBLER_NAME.
- (change_decl_assembler_name): No need to muck with the hash tables.
- (cgraph_node_for_identifier, cgraph_varpool_node_for_identifier):
- Delete.
- * cgraphunit.c (cgraph_mark_inline_edge): Use the decl itself
- for the key, not DECL_ASSEMBLER_NAME.
- * cgraph.h: Remove prototypes of deleted functions.
- * varasm.c (mark_referenced): Just set TREE_SYMBOL_REFERENCED.
- (mark_decl_referenced): New function.
- * tree.h: Prototype mark_decl_referenced.
- * final.c (output_addr_const) <case SYMBOL_REF>: Call
- mark_decl_referenced before assemble_name.
- * c-decl.c (finish_decl): Use mark_decl_referenced.
-
-2004-05-18 Andrew Pinski <pinskia@physics.uc.edu>
- Jeff Law <law@redhat.com>
-
- * tree-ssa-phiopt.c (abs_replacement): New function.
- (empty_block_p): New function extracted from...
- (candidate_bb_for_phi_optimization): Break out empty block test.
- (conditional_replacement): Use empty_block_p.
- (value_replacement): Similarly.
-
- * Makefile.in (tree-ssa-phiopt.o): Depends on flags.h.
- * tree-ssa-phiopt.c: Include flags.h.
- (conditional_replacement): Remove argument names from prototype.
- Minor formatting and comment fixes.
- (tree_ssa_phiopt): If conditional_replacement returns false, then
- call value_replacement.
- (value_replacement): New function.
-
-2004-05-18 Jeff Law <law@redhat.com>
-
- * tree-ssa-phiopt.c (replace_phi_with_stmt): New function extracted
- from conditional_replacement.
- (candidate_bb_for_phi_optimization): Similarly.
- (conditional_replacement): Use replace_phi_with_stmt and
- candidate_bb_for_phi_optimization.
-
- * tree-ssa-phiopt.c: Fix various formatting issues.
-
-2004-05-18 Steven Bosscher <stevenb@suse.de>
-
- * config/s390/s390.c (s390_expand_movstr, s390_expand_clrstr,
- s390_expand_cmpmem): Do not use expand_start_loop and
- expand_end_loop, instead build the loop manually.
-
-2004-05-18 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md (ctrsi_internal3): Delete.
- (ctrsi_internal4, ctrdi_internal3, ctrdi_internal4): Delete.
-
-2004-05-17 Jeff Law <law@redhat.com>
-
- * toplev.h (flag_delete_null_pointer_checks): Move from here to...
- * flags.h (flag_delete_null_pointer_checks): Here.
- * tree-flow.h (cprop_into_successor_phis): Add argument to prototype.
- * tree-phinodes.c (resize_phi_node): Initialize PHI_ARG_NONZERO.
- (add_phi_arg, remove_phi_arg_num): Similarly.
- * tree-ssa-copy.c (cprop_into_successor_phis): Propagate nonzero
- property into PHI nodes.
- * tree-ssa-dom.c: Remove redundant inclusion of flags.h.
- (record_equivalences_from_phis): If all PHI arguments are known to be
- nonzero, then the result must be nonzero as well.
- (cprop_into_phis): Pass nonzero_vars bitmap to cprop_into_successor_phis.
- (record_equivalences_from_stmt): Check flag_delete_null_pointer_checks
- appropriately. Walk the USE-DEF chains and propagate nonzero property
- as appropriate.
- * tree.h (PHI_ARG_NONZERO): Define.
- (phi_arg_d): Add nonzero flag.
-
-2004-05-17 Zack Weinberg <zack@codesourcery.com>
-
- * f: Entire directory removed
-
- * c-common.h (CTI_G77_INTEGER_TYPE, CTI_G77_UINTEGER_TYPE)
- (CTI_G77_LONGINT_TYPE, CTI_G77_ULONGINT_TYPE)
- (g77_integer_type_node, g77_uinteger_type_node)
- (g77_longint_type_node, or g77_ulongint_type_node): Delete.
- * c-common.c (c_common_nodes_and_builtins): Do not initialize
- the above set of variables.
-
- * config/i386/uwin.h: No need to define WIN32_UWIN_TARGET.
- * doc/invoke.texi, doc/standards.texi: Remove cross-references
- to g77 manual.
-
-2004-05-17 Steven Bosscher <stevenb@suse.de>
-
- PR tree-optimization/15438
- * tree-ssa-operands.c (get_expr_operands): Do not treat malloc
- attributed functions as pure or const.
-
-2004-05-17 Frank Ch. Eigler <fche@redhat.com>
-
- * tree-mudflap.c (mx_register_decls): Tolerate decl trees resulting
- from source code with errors.
-
-2004-05-17 Ranjit Mathew <rmathew@hotmail.com>
-
- Enable tree browser for all front ends.
- * Makefile.in (cc1): Moved @TREEBROWSER@ from here...
- (BACKEND): ...to here.
-
-2004-05-17 Jan Hubicka <jh@suse.cz>
-
- * i386.c (construct_container): Do not produce BLKmode registers.
- (classify_argument): Properly compute alignment of complex types.
-
-2004-05-17 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/15084
- * config/i386/i386.md (*movsi_insv_1_rex64): Changed to DImode
- and renamed to movdi_insv_1_rex64.
- (insv): Support SImode for 32bit and DImode for 64bit.
-
-2004-05-17 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (MASK_DEBUG_G, TARGET_DEBUG_G_MODE): Delete.
- (TARGET_SWITCHES): Remove debugg.
- * config/mips/mips.md (adddi3, ashldi3, ashrdi3, lshrdi3): Only handle
- TARGET_64BIT.
- (subdi3): Replace the define_expand with a define_insn, the latter
- renamed from subdi3_internal_3.
- (negdi2): Likewise negdi2_internal_2.
- (adddi3_internal_[12], subdi3_internal, ashldi3_internal{,2,3})
- (ashrdi3_internal{,2,3}, lshrdi3_internal{,2,3}): Remove patterns
- and associated define_splits.
- (adddi3_internal): Renamed from adddi3_internal_3.
- (ashldi3_internal): Likewise ashldi3_internal4.
- (ashrdi3_internal): Likewise ashrdi3_internal4.
- (lshrdi3_internal): Likewise lshrdi3_internal4.
-
-2004-05-17 Richard Sandiford <rsandifo@redhat.com>
-
- * optabs.c (expand_unop): Try implementing negation using subtraction
- from zero.
-
-2004-05-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md: Fix typo from last change. Remove DFmode move to and from
- SAR register.
-
-2004-05-16 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/10982
- * arm.md (ne_zeroextractsi): Convert to insn-and-split.
- (ne_zeroextractsi_shifted): New pattern.
- (ite_ne_zeroextractsi): New pattern.
- (ite_ne_zeroextractsi_shifted): New pattern.
-
-2004-05-15 Steven Bosscher <stevenb@suse.de>
-
- * c-gimplify.c (c_genericize):
- Replace calls via (*lang_hooks.foo) with lang_hooks.foo.
- * c-parse.in <expr_no_commas>: Likewise.
- <if_prefix>: Likewise.
- <select_or_iter_stmt>: Likewise.
- * expr.c (expand_var, expand_expr_real_1): Likewise.
- * expr.h (expand_expr): Make it a static inline function.
- Move prototype for expand_expr_real up before this.
- * fold-const.c (fold_relational_hi_lo, fold_relational_const):
- Likewise.
- * gimplify.c (gimple_boolify, gimplify_addr_expr,
- gimplify_asm_expr, gimplify_expr): Likewise.
- * tree-cfg.c (dump_tree_cfg, dump_cfg_stats, tree_cfg2vcg,
- dump_function_to_file): Likewise.
- * tree-dfa.c (dump_immediate_uses, dump_dfa_stats): Likewise.
- * tree-inline.c (remap_block, save_body, walk_tree): Likewise.
- * tree-into-ssa.c (dump_tree_ssa): Likewise.
- * tree-mudflap.c (mf_varname_tree, mf_file_function_line_tree):
- Likewise.
- * tree-optimize.c (execute_one_pass): Likewise.
- * tree-pretty-print.c (dump_generic_bb_buff): Likewise.
- * tree-ssa-alias.c (dump_alias_stats, dump_alias_info): Likewise.
-
- * objc/objc-act.c (objc_build_try_enter_fragment,
- objc_build_try_epilogue, objc_build_catch_stmt,
- objc_build_finally_prologue): Replace calls via (*lang_hooks.foo)
- with lang_hooks.foo ().
-
-2004-05-15 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (simplify_builtin_strcpy): Avoid use of chainon, so
- that simplify_builtin doesn't destructively modify its argument.
-
-2004-05-15 Richard Earnshaw <reanrsha@arm.com>
-
- * arm/lib1funcs.asm (_lshrdi3, _ashrdi3, _ashldi3): Add ASM
- implementations for ARM and Thumb.
- * arm/t-arm-elf (LIB1ASMFUNCS): Use them.
-
-2004-05-15 Thomas Quinot <quinot@act-europe.fr>
-
- * prefix.c (update_path): Replace PREFIX with KEY only
- when it matches a full directory name in PATH.
-
-2004-05-15 Richard Earnshaw <reanrsha@arm.com>
-
- * arm.h (TARGET_APCS_32): Delete.
- (TARGET_MMU_TRAPS): Delete.
- (TARGET_CPU_CPP_BUILTINS): Unconditionally define __APCS_32__. Never
- define __APCS_26__.
- (CPP_SPEC): Remove checking of -mapcs-{26,32}.
- (ARM_FLAG_APCS_32, ARM_FLAG_MMU_TRAPS): Delete.
- (TARGET_SWITCHES): Remove alignment_traps and apcs-{26,32} switches.
- (prog_mode_type): Delete.
- (PROMOTE_MODE): Always promote unsigned for HImode.
- (SECONDARY_INPUT_RELOAD_CLASS): Simplify.
- (MASK_RETURN_ADDR): Simplify.
- * arm.c (arm_prgmode): Delete.
- (arm_override_options, arm_gen_rotated_half_load): Simplify.
- (print_multi_reg, output_return_instruction): Simplify.
- (arm_output_epilogue, arm_final_prescan_insn): Simplify.
- (arm_return_addr): Simplify.
- * arm.md (prog_mode): Delete.
- (conds): Simplify.
- (zero_extendhisi2, extendhisi2, movhi, movhi_bytes): Simplify.
- (rotated_loadsi, movhi_insn_littleend, movhi_insn_bigend): Delete.
- (loadhi_si_bigend, loadhi_preinc, loadhi_shiftpreinc): Delete.
- (loadhi_shiftpredec): Delete.
- (peephole for post-increment on HImode load): Delete.
- * arm/crtn.asm: (FUNC_END): Simplify.
- * arm/lib1funcs.asm: Remove APCS-26 return macros.
- * arm/aof.h, arm/coff.h arm/elf.h arm/linux-elf.h arm/netbsd-elf.h
- * arm/netbsd.h arm/pe.h arm/semi.h arm/semiaof.h arm/unknown-elf.h
- * arm/vxworks.h arm/wince-pe.h: Tidy TARGET_DEFAULTS and
- MULTILIB_DEFAULTS as required.
- * arm/t-arm-elf arm/t-linux arm/t-pe arm/t-semi arm/t-wince-pe
- * arm/t-xscale-coff arm/t-xscale-elf arm/uclinux-elf: Tidy MULTILIB
- variables as required.
- * doc/invoke.texi (ARM Options): Remove obsolete flags.
-
-2004-05-15 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_va_arg <ABI_V4>): Don't use
- UNITS_PER_WORD to calculate gpr size. Re-instate code to set reg
- count to 8 to handle n_reg > 2.
-
-2004-05-15 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/extend.texi: Update WG14 URL.
-
-2004-05-15 Steven Bosscher <stevenb@suse.de>
-
- * basic-block.h (life_analysis, delete_noop_moves):
- Update prototypes.
- * bt-load.c (branch_target_load_optimize): Don't take the
- insns stream as an argument. Update the life_analysis calls.
- * combine.c (combine_instructions): Update delete_noop_moves
- calls.
- * flow.c (notice_stack_pointer_modification): Don't take the
- insns stream as an argument. Work on the flow graph.
- (life_analysis): Likewise.
- (delete_noop_moves): Likewise.
- * passes.c (rest_of_handle_stack_regs): Update reg_to_stack call.
- (rest_of_handle_life): Update life_analysis call.
- (rest_of_compilation): Likewise, and also update
- branch_target_load_optimize call.
- * ra.c (reg_alloc): Update life_analysis call.
- * reg-stack.c (reg_to_stack): Likewise. Also, don't take
- the insns stream as an argument.
- * regrename.c (copyprop_hardreg_forward): Update delete_noop_moves
- call.
- * rtl.c (branch_target_load_optimize, reg_to_stack): Update
- prototypes.
- * value-profile.c (branch_prob): Update life_analysis call.
- * web.c (web_main): Work on the CFG, not on the insns stream.
-
- * config/ip2k/ip2k.c (ip2k_reorg): Update life_analysis calls.
- * config/m68hc11/m68hc11.c (m68hc11_reorg): Likewise.
- * config/sh/sh.c (sh_output_mi_thunk): Likewise.
-
-2004-05-15 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/15444
- * c-format.c (avoid_dollar_number): New function.
- (check_format_info_main): Call avoid_dollar_number when operand
- numbers might occur but has_operand_number == 0.
-
-2004-05-14 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (all peephole2 patterns): Use predicates that validate
- register classes as appropriate.
-
-2004-05-14 Steven Bosscher <stevenb@suse.de>
-
- PR opt/14472
- * tree-tailcall.c (process_assignment): Use STRIP_NOPS to
- ignore type conversions that do not inhibit tail calling.
- (find_tail_calls): Likewise.
-
-2004-05-14 Jeff Law <law@redhat.com>
-
- * tree-ssa-dom.c (redirect_edges_and_update_ssa_graph): Don't even
- bother marking bypassed virtuals for out-of-ssa. Instead merge
- bypassed virtuals into vars_to_rename just before into-ssa pass.
-
- * tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Reorganize
- so that it picks up more opportunities to eliminate ABS expressions
- or turn them into negations.
-
-2004-05-14 Steven Bosscher <stevenb@suse.de>
-
- * passes.c (rest_of_handle_null_pointer): Remove.
- (rest_of_handle_cse): Don't call rest_of_handle_null_pointer.
- (rest_of_compilation): Likewise.
- * rtl.h (delete_null_pointer_checks): Remove prototype.
- * gcse.c (rd_kill, rd_gen, reaching_defs, rd_out, ae_in, ae_out):
- Remove declarations.
- (get_bitmap_width, alloc_rd_mem, free_rd_mem, handle_rd_kill_set,
- compute_kill_rd, compute_rd, alloc_avail_expr_mem,
- free_avail_expr_mem, compute_ae_gen, expr_killed_p, compute_ae_kill,
- expr_reaches_here_p, computing_insn, def_reaches_here_p,
- can_disregard_other_sets, handle_avail_expr, classic_gcse,
- one_classic_gcse_pass, invalidate_nonnull_info,
- delete_null_pointer_checks_1, delete_null_pointer_checks,
- expr_reached_here_p_work): Remove.
- (gcse_main): Do not perform classic GCSE when optimizing for size.
- (alloc_pre_mem, free_pre_mem): Don't touch ae_in and ae_out, they
- are never used.
-
-2004-05-14 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR optimization/14466
- * tree-complex.c (make_temp): Remove.
- (gimplify_val): Replace make_temp with make_rename_temp
- and add NULL as the second argument.
- (expand_complex_div_wide): Likewise.
- * tree-dfa.c (make_rename_temp): New function.
- * tree-flow.h (make_rename_temp): Declare.
- * tree-sra.c (make_temp): Remove.
- (lookup_scalar): Replace make_temp with make_rename_temp.
- (create_scalar_copies): Likewise.
- * tree-ssa-phiopt.c (conditional_replacement): When we
- get non gimple create a temporary variable to hold the
- casted expression.
-
-2004-05-14 Paul Brook <paul@codesourcery.com>
-
- * stor-layout.c (update_alignment_for_field): Use
- targetm.align_anon_bitfield.
- * target-def.h (TARGET_ALIGN_ANON_BITFIELD): Define.
- (TARGET_INITIALIZER): Use it.
- * target.h (struct gcc_target): Add align_anon_bitfield.
- * config/arm/arm.c (arm_align_anon_bitfield): New function.
- (TARGET_ALIGN_ANON_BITFIELD): Define.
- * doc/tm.texi: Document TARGET_ALIGN_ANON_BITFIELD.
-
-2004-05-13 Zack Weinberg <zack@codesourcery.com>
-
- * tree.def (documentation): Remove mention of class 'b'.
- (BLOCK): Now in class 'x'.
- * c-common.c (verify_tree): Remove case 'b'.
- * c-typeck.c (same_translation_unit_p): Change 'b' to 'x'.
- * calls.c (calls_function_1): Control cannot get past the switch
- when exp is a BLOCK.
- * print-tree.c (print_node): Move code for class 'b' to the class
- 'c'/'x' switch, as case BLOCK.
- * tree.c (tree_size, make_node_stat, tree_node_structure): Likewise.
- (unsafe_for_reeval, substitute_placeholder_in_expr)
- (stabilize_reference_1): Remove case 'b'.
- * tree-browser.c (browse_tree): Change all tests for TREE_CODE_CLASS
- of something being 'b' to tests for TREE_CODE of something being
- BLOCK.
- * tree-ssa-operands.c (get_expr_operands): Likewise.
-
-2004-05-13 Diego Novillo <dnovillo@redhat.com>
-
- * tree-gimple.c: Rename from tree-simple.c.
- * tree-gimple.h: Rename from tree-simple.h.
- * c-gimplify.c: Rename from c-simplify.c
- * Makefile.in, c-decl.c, gimple-low.c, gimplify.c,
- langhooks.c, tree-alias-ander.c, tree-alias-common.c,
- tree-complex.c, tree-dfa.c, tree-flow.h, tree-inline.c,
- tree-into-ssa.c, tree-iterator.c, tree-mudflap.c,
- tree-nested.c, tree-nomudflap.c, tree-outof-ssa.c, tree-sra.c,
- tree-ssa-alias.c, tree-ssa-ccp.c, tree-ssa-copyrename.c,
- tree-ssa-dce.c, tree-ssa-live.c, tree-ssa-pre.c, tree-ssa.c:
- Update.
-
-2004-05-14 Ranjit Mathew <rmathew@hotmail.com>
-
- * doc/sourcebuild.texi: Mention libbanshee and libmudflap.
-
-2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
-
- * tree-ssa.c (delete_tree_ssa): XFREE
- bitmaps allocated with BITMAP_XMALLOC.
-
- * tree-ssa-pre.c (execute_pre): Free ephi_use_pool and
- idfs_cache at the end of the function.
-
- * tree-ssa-live.c (calculate_live_on_entry): Free saw_def
- at the end of the function.
-
- * tree-ssa-dce.c (perform_tree_ssa_dce): Free
- el at the end of the function.
-
- * tree-into-ssa.c (insert_phi_nodes_for): XFREE
- bitmaps allocated with BITMAP_XMALLOC.
-
- * loop-unswitch.c (unswitch_single_loop): Free bbs at
- the end.
-
- * final.c (shorten_branches): Free uid_shuid before
- reallocating it.
-
- * bb-reoder.c (connect_traces): Free cold_traces at the end.
-
-2004-05-13 Jeff Law <law@redhat.com>
-
- * tree-ssa-live.c (calculate_live_on_entry): Ignore virtual
- variables. Simplify slightly by using USE_OP/DEF_OP instead
- of USE_OP_PTR/DEF_OP_PTR and dereferencing the result.
-
- * tree-into-ssa.c (compute_global_livein): Use EXECUTE_IF_SET_IN_BITMAP
- rather than iterating through the blocks testing each bit in
- livein to initialize the worklist.
- (mark_def_sites): Remove useless checks of KILLS for virtual
- operands.
-
- * tree-ssa-forwprop.c (record_single_argument_cond_exprs): Accept
- new parameters for the statement and variable worklist as well
- as a bitmap of interesting SSA_NAMEs. Walk over the statement
- worklist recording interesting variables in the variable worklist
- and bitmap. Handle casts between integral and boolean types.
- (substitute_single_use_vars): Accept new parameters for the statement
- and variable worklist. When a substitution is made add a new
- entry to the statement worklist. Handle casts between integral
- and boolean types.
- (tree_ssa_forward_propagate_single_use_vars): Rework to pass
- worklists to children. Iterate until the statement worklist
- is empty.
-
-2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
-
- * tree-outof-ssa.c (rewrite_vars_out_of_ssa): Free map at
- the end of the block.
-
- * tree-into-ssa.c (def_blocks_free): XFREE bitmaps allocated
- with BITMAP_XMALLOC.
-
- * tree-ssa-alias.c (delete_alias_info): XFREE bitmaps allocated
- with BITMAP_XMALLOC.
-
- * tree-ssa-dom.c (tree_ssa_dominator_optimize):
- Free nonzero_vars at the end of the function.
-
- * convert.c (convert_to_integer): Make a CONVERT_EXPR when there is a
- need to generate code instead of a NOP_EXPR.
-
-2004-05-13 Ian Lance Taylor <ian@wasabisystems.com>
-
- * gcc.c (default_compilers): Fill out initializers for new Fortran
- entries.
-
-2004-05-13 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.h (PCC_BITFIELD_TYPE_MATTERS): Define.
-
-2004-05-13 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_default_short_enums): New function.
- (TARGET_DEFAULT_SHORT_ENUMS): Define.
-
-2004-05-13 Diego Novillo <dnovillo@redhat.com>
-
- Merge from tree-ssa-20020619-branch.
-
- * Makefile.in (reload1.o-warn): Add.
- (tree-alias-ander.o-warn): Add.
- (GMPLIBS): Define.
- (GMPINC): Define.
- (BANSHEELIB): Define.
- (BANSHEEINC): Define.
- (TREE_DUMP_H): Define.
- (TREE_SIMPLE_H): Define.
- (TREE_FLOW_H): Define.
- (LIBDEPS): Add BANSHEELIB.
- (INCLUDES): Add BANSHEEINC and GMPINC.
- (C_AND_OBJC_OBJS): Add c-simplify.o, tree-mudflap.o,
- c-mudflap.o and c-pretty-print.o.
- (C_OBJS): Remove c-pretty-print.o.
- (OBJS-common): Remove sibcall.o.
- Add tree-cfg.o, tree-dfa.o, tree-eh.o,
- tree-ssa.o, tree-optimize.o, tree-simple.o,
- tree-alias-type.o, gimplify.o, tree-pretty-print.o,
- tree-into-ssa.o, tree-outof-ssa.o, tree-alias-common.o,
- tree-ssa-ccp.o, @ANDER@, tree-ssa-dce.o, tree-ssa-copy.o,
- tree-nrv.o, tree-ssa-copyrename.o, tree-ssa-pre.o,
- tree-ssa-live.o, tree-ssa-operands.o, tree-ssa-alias.o,
- tree-ssa-phiopt.o, tree-ssa-forwprop.o, tree-nested.o,
- tree-ssa-dse.o, tree-ssa-dom.o, domwalk.o,
- tree-tailcall.o, gimple-low.o, tree-iterator.o,
- tree-phinodes.o, tree-ssanames.o, tree-sra.o,
- tree-complex.o, tree-ssa-loop.o, rtl-profile.o and
- tree-profile.o.
- (OBJC-archive): Add tree-nomudflap.o.
- (cc1): Add dependency on @TREEBROWSER@.
- (c-decl.o): Add dependency on TREE_DUMP_H.
- (c-dump.o): Likewise.
- (c-common.o): Add dependency on tree-iterator.h
- (c-pretty-print.o): Add dependency on DIAGNOSTIC_H.
- (gtype-desc.o): Add dependency on TREE_FLOW_H.
- (tree.o): Add dependency on tree-iterator.h,
- BASIC_BLOCK_H and TREE_FLOW_H.
- (tree-dump.o): Depend on TREE_DUMP_H instead of tree-dump.h.
- (langhooks.o): Add dependency on TREE_SIMPLE_H.
- (tree-alias-type.o, tree-alias-ander.o,
- tree-alias-common.o, tree-ssa.o, tree-into-ssa.o,
- tree-outof-ssa.o, tree-ssa-dse.o, tree-ssa-forwprop.o,
- tree-ssa-phiopt.o, tree-nrv.o, tree-ssa-copy.o,
- tree-ssa-dom.o, tree-ssanames.o, tree-phinodes.o,
- domwalk.o, tree-ssa-live.o, tree-ssa-copyrename.o,
- tree-ssa-pre.o, tree-cfg.o, tree-tailcall.o,
- tree-nested.o, tree-iterator.o, tree-dfa.o,
- tree-ssa-operands.o, tree-eh.o, tree-ssa-loop.o,
- tree-ssa-alias.o, tree-optimize.o, c-simplify.o,
- gimplify.o, gimple-low.o, tree-browser.o, tree-simple.o,
- tree-mudflap.o, c-mudflap.o, tree-nomudflap.o,
- tree-pretty-print.o, tree-ssa-dce.o, tree-ssa-ccp.o,
- tree-sra.o, tree-complex.o, tree-profile.o,
- rtl-profile.o): New rules.
- (function.o): Add dependency on basic-block.h
- (expr.o): Add dependency on tree-iterator.h.
- (sibcall.o): Remove.
- (profile.o): Depend on TREE_FLOW_H instead of TREE_H.
- (cfg.o): Add dependency on TIMEVAR_H.
- (cfghooks.o): Add dependency on TREE_FLOW_H.
- (reg-stack.o): Add dependency on basic-block.h.
- (GTFILES): Add hwint.h, tree-mudflaph.c, tree-flow.h,
- c-objc-common.c, c-common.c, c-parse.in, tree-ssanames.c,
- tree-eh.c, tree-phinodes.c, tree-cfg.c, tree-dfa.c,
- tree-ssa-ccp.c, tree-iterator.c, gimplify.c,
- tree-alias-type.h, tree-alias-common.h,
- tree-alias-type.c, tree-alias-common.c,
- tree-ssa-operands.h, tree-ssa-operands.c, tree-profile.c,
- rtl-profile.c and tree-nested.c.
- (gt-tree-alias-common.h, gt-tree-mudflap.h,
- gt-tree-ssa-ccp.h, gt-tree-eh.h, gt-tree-ssanames.h,
- gt-tree-iterator.h, gt-gimplify.h, gt-tree-phinodes.h,
- gt-tree-cfg.h, gt-tree-nested.h): New rules.
- (TEXI_GCCINT_FILES): Add cfg.texi and tree-ssa.texi.
- * basic-block.h: Include predict.h
- (struct edge_def): Add GTY marker.
- Change field 'insns' to be a union of tree and rtx.
- (EDGE_TRUE_VALUE): Define.
- (EDGE_FALSE_VALUE): Define.
- (EDGE_EXECUTABLE): Define.
- (struct bb_ann_d): Forward declare.
- (struct basic_block_def): Add GTY marker.
- Remove fields head_tree and end_tree.
- Add fields stmt_list, rbi and tree_annotations.
- (struct reorder_block_def): Define.
- (basic_block_info): Add GTY marker.
- (ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): Change to global
- variables instead of macros.
- (flow_call_edges_add): Remove declaration.
- (make_eh_edge): Remove declaration.
- (brief_dump_cfg, find_edge, tree_predicted_by_p,
- rtl_predicted_by_p, tree_predict_edge, rtl_predict_edge,
- predict_edge_def, rtl_make_eh_edge, find_basic_blocks,
- cleanup_cfg, delete_unreachable_blocks, merge_seq_blocks,
- alloc_rbi_pool, initialize_bb_rbi, free_rbi_pool): Declare.
- (try_redirect_by_replacing_jump): Modfiy return type to
- edge instead of bool.
- * bb-reorder.c (copy_bb): Call duplicate_block
- instead of cfg_layout_duplicate_bb.
- (copy_bb_p): Call can_duplicate_block_p instead of
- cfg_layout_can_duplicate_bb_p.
- * bitmap.c (bitmap_first_set_bit): Abort if word
- wasn't found.
- (bitmap_last_set_bit): Likewise.
- * builtin-types.def (DEF_FUNCTION_TYPE_2): Add
- (DEF_FUNCTION_TYPE_3): Add.
- * builtins.c (c_strlen): Make extern.
- (builtin_save_expr): New.
- (expand_builtin_nonlocal_goto): New.
- (expand_builtin_constant_p): Remove.
- (expand_builtin_mathfn): Call builtin_save_expr instead
- of save_expr.
- (expand_builtin_mathfn_2): Likewise.
- (expand_builtin_strcmp): Likewise.
- (expand_builtin_strncmp): Likewise.
- (expand_builtin_strcat): Likewise.
- (fold_builtin_cabs): Likewise.
- (expand_builtin_alloca): Don't trigger if -fmudflap is
- given.
- (build_string_literal): Set TREE_INVARIANT on new node.
- (expand_builtin_profile_fun): New.
- (round_trampoline_addr): New.
- (expand_builtin_init_trampoline): New.
- (expand_builtin_adjust_trampoline): New.
- (expand_builtin) <BUILT_IN_NEXT_ARG>: Call simplify_builtin_next_arg.
- <BUILT_IN_CONSTANT_P>: Return const0_rtx;
- <BUILT_IN_STACK_ALLOC, BUILT_IN_STACK_SAVE,
- BUILT_IN_STACK_RESTORE, BUILT_IN_NONLOCAL_GOTO,
- BUILT_IN_PROFILE_FUNC_ENTER, BUILT_IN_PROFILE_FUNC_EXIT,
- BUILT_IN_INIT_TRAMPOLINE, BUILT_IN_ADJUST_TRAMPOLINE>:
- Handle.
- (fold_builtin_expect): New.
- (fold_builtin_isascii): Don't return non-constant results
- in GIMPLE form.
- (fold_builtin_isdigit): Likewise.
- (fold_builtin_1): New.
- (fold_builtin): Call it.
- (build_function_call_expr): Update call to build a new
- CALL_EXPR.
- (purge_builtin_constant_p): Remove.
- (simplify_builtin, simplify_builtin_memcmp,
- simplify_builtin_strcmp, simplify_builtin_strncmp,
- simplify_builtin_strpbrk, simplify_builtin_strstr,
- simplify_builtin_strchr, simplify_builtin_strrchr,
- simplify_builtin_strcat, simplify_builtin_strncat,
- simplify_builtin_strspn, simplify_builtin_strcspn,
- simplify_builtin_next_arg, simplify_builtin_va_start,
- simplify_builtin_sprintf): New.
- * builtins.def (BUILT_IN_STACK_ALLOC,
- BUILT_IN_STACK_SAVE, BUILT_IN_STACK_RESTORE,
- BUILT_IN_INIT_TRAMPOLINE, BUILT_IN_ADJUST_TRAMPOLINE,
- BUILT_IN_NONLOCAL_GOTO, BUILT_IN_PROFILE_FUNC_ENTER,
- BUILT_IN_PROFILE_FUNC_EXIT): Define.
- * c-common.c: Include tree-iterator.h and hashtab.h.
- (lang_statement_code_p): Declare.
- (lang_gimplify_stmt): Declare.
- (fix_string_type): Set TREE_INVARIANT for value.
- (pointer_int_sum): Rely on build to set TREE_CONSTANT.
- (c_type_hash): New.
- (c_common_get_alias_set): Handle multiple type nodes
- referring to "the same" type, currently for C90 only.
- (c_add_case_label): Use create_artificial_label.
- (finish_label_address_expr): Don't set TREE_CONSTANT on
- result.
- (c_expand_expr): Don't handle STMT_EXPR.
- (handle_alias_attribute): Marke aliased variables to be
- TREE_STATIC.
- (handle_nonnull_attribute): Initialize arg_num.
- (check_function_nonnull): Likewise.
- (c_walk_subtrees): New.
- (c_estimate_num_insns_1): Don't handle
- EXPR_WITH_FILE_LOCATION nor FILE_STMT.
- (c_decl_uninit_1): Remove.
- (c_decl_uninit): Remove.
- (c_warn_unused_result): New.
- * c-common.def (ASM_STMT): Change number of operands
- to 4.
- (FILE_STMT): Remove.
- * c-common.h (lang_expand_stmt, lang_expand_decl_stmt):
- Remove.
- (lang_gimplify_stmt): Add.
- (expand_stmt): Remove.
- (ASM_CV_QUAL, ASM_STRING, ASM_OUTPUTS, ASM_INPUTS,
- ASM_CLOBBERS, STMT_EXPR_WARN_UNUSED_RESULT,
- ASM_VOLATILE_P, FILE_STMT_FILENAME_NODE,
- FILE_STMT_FILENAME, STMT_LINENO, STMT_LINENO_FOR_FN_P,
- ASM_INPUT_P, DECL_C_HARD_REGISTER): Remove.
- (genrtl_do_pushlevel, genrtl_goto_stmt, genrtl_expr_stmt,
- genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
- genrtl_while_stmt, genrtl_do_stmt, genrtl_return_stmt,
- genrtl_for_stmt, genrtl_break_stmt, genrtl_continue_stmt,
- genrtl_scope_stmt, genrtl_switch_stmt, genrtl_case_label,
- genrtl_compound_stmt, genrtl_asm_stmt,
- genrtl_cleanup_stmt, c_decl_uninit): Remove.
- (c_do_switch_warnings, c_gimplify_expr, c_walk_subtrees,
- c_tree_chain_matters_p, c_warn_unused_result,
- c_genericize, c_gimplify_stmt, stmt_expr_last_stmt):
- Declare.
- * c-convert.c (convert): Make convert work when
- converting to compatible types across translation unit.
- * c-decl.c: Include langhooks.h, tree-mudflap.h,
- tree-simple.h, diagnostic.h and tree-dump.h
- (merge_decls): Initialize oldtype to NULL.
- (finish_decl): Use DECL_HARD_REGISTER instead of
- DECL_C_HARD_REGISTER.
- (check_bitfield_type_and_width): Check for null
- lang_type_specific when check the precision of an enum.
- (grokdeclarator): Immediately layout an ARRAY_TYPE used
- in a pointer-to-array declarator.
- (finish_struct): Clear allocated struct lang_type.
- (finish_enum): Set enum_min and enum_max. Set
- TYPE_MIN/MAX_VALUE to the limits of the compatible type,
- not to the enumerators.
- (set_decl_nonlocal): New.
- (store_parm_decls): Use it via walk_tree.
- (c_finalize): New.
- (finish_function): When !targetm.have_ctors_dtors,
- record static constructors and destructors here...
- (c_expand_body_1): ... not here.
- (c_expand_decl): Rename from c_expand_decl_stmt.
- Handle all C-specific expansion semantics.
- * c-dump.c (dump_stmt): Use EXPR_LOCUS instead of
- STMT_LINENO.
- * c-format.c (handle_format_arg_attribute): Initialize
- format_num.
- * c-lang.c: Include tree-inline.h
- (LANG_HOOKS_EXPAND_DECL,
- LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P,
- LANG_HOOKS_TREE_INLINING_WALK_SUBTREES,
- LANG_HOOKS_TREE_INLINING_TREE_CHAIN_MATTERS_P,
- LANG_HOOKS_GIMPLIFY_EXPR, LANG_HOOKS_TYPES_COMPATIBLE_P): Define.
- (LANG_HOOKS_DECL_UNINIT, LANG_HOOKS_RTL_EXPAND_STMT,
- LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS): Remove.
- (c_types_compatible_p): New.
- * c-mudflap.c: New file.
- * c-objc-common.c: Include tree-mudflap.h
- (start_cdtor, finish_cdtor): Collapse
- together into
- (build_cdtor): ...here. Update to construct a complete tree
- for the function. No need to call push_scope, pop_scope, or
- clear_last_expr, or set current_function_cannot_inline.
- (c_missing_noreturn_ok_p): Change prototype to return
- bool.
- (c_objc_common_init): Don't set lang_missing_noreturn_ok_p.
- * c-opts.c (c_common_handle_option): Move handling of -fdump- to
- opts.c.
- (c_common_post_options): Don't ever use rtl inlining.
- * c-parse.in: Use EXPR_LOCUS instead of STMT_LINENO.
- * c-pragma.c (handle_pragma_redefine_extname): Define
- always.
- (init_pragma): Activate #pragma redefine_extname for mudflap.
- * c-pretty-print.c (pp_c_statement): Remove FILE_STMT.
- (pp_c_initializer): Accept any type CONSTRUCTOR.
- (pp_c_initializer_list): Fix code expectations for VECTOR_TYPE and
- COMPLEX_TYPE.
- (decl_name_str): New local function.
- (pp_c_direct_declarator): Call it.
- (pp_c_primary_expression): Call it.
- (pp_c_id_expression): Call it.
- (pp_c_statement): Call it.
- (print_c_tree): Create new pp object.
- * c-pretty-print.h (pp_c_tree_decl_identifier,
- print_c_tree): Declare.
- * c-semantics.c: Include langhooks.h
- (lang_expand_stmt, lang_expand_decl_stmt,
- find_reachable_label_1, find_reachable_label,
- expand_unreachable_if_stmt, expand_unreachable_stmt,
- genrtl_do_stmt_1): Remove.
- (begin_stmt_tree): Don't check for changed filename.
- Call annotate_with_locus.
- (finish_stmt_tree): Don't set line for end of function.
- (build_stmt): Don't check type nodes for
- side effects.
- (build_stmt): Set TREE_SIDE_EFFECTS.
- Set EXPR_LOCUS instead of STMT_LINENO.
- (lang_expand_stmt, lang_expand_decl_stmt,
- expand_cond, genrtl_do_pushlevel, genrtl_goto_stmt, genrtl_expr_stmt,
- genrtl_expr_stmt_value, genrtl_decl_stmt, genrtl_if_stmt,
- genrtl_while_stmt, genrtl_do_stmt_1, genrtl_do_stmt,
- genrtl_return_stmt, genrtl_for_stmt, genrtl_break_stmt,
- genrtl_continue_stmt, genrtl_scope_stmt, genrtl_switch_stmt,
- genrtl_case_label, genrtl_compound_stmt, genrtl_asm_stmt,
- genrtl_cleanup_stmt, expand_stmt, find_reachable_label,
- find_reachable_label_1, expand_unreachable_if_stmt,
- expand_unreachable_stmt): Remove.
- (prep_stmt): Use EXPR_LOCUS instead of STMT_LINENO.
- * c-simplify.c: New file.
- * c-tree.h (C_LANG_TREE_NODE_CHAIN_NEXT): Define.
- (struct lang_type): Add fields enum_min and enum_max.
- (c_expand_decl_stmt, c_missing_noreturn_ok_p): Remove.
- (c_expand_decl, c_missing_noreturn_ok_p,
- c_types_compatible_p): Declare.
- * c-typeck.c (tagged_types_tu_compatible_p): Allow for
- compiler-generated TYPE_DECLs without a DECL_ORIGINAL_TYPE.
- (default_function_array_conversion): Rely on build to
- set TREE_CONSTANT.
- (parser_build_binary_op, pointer_diff): Likewise.
- (build_unary_op, build_binary_op): Likewise.
- (build_array_ref):
- (build_external_ref): Set TREE_INVARIANT.
- (build_c_cast, pop_init_level): Likewise.
- (process_init_element): Use ASM_VOLATILE_P.
- (build_asm_expr): Adapt to GENERIC/GIMPLE syntax.
- (c_finish_case): Call c_do_switch_warnings.
- * c.opt (fdump-): Remove.
- * calls.c (try_to_integrate): Remove.
- (prepare_call_address): Replace fndecl arg with a
- precomputed static chain value.
- (emit_call_1): New argument for full call expr.
- (flags_from_decl_or_type): Call special_function_p.
- (initialize_argument_information): Add argument
- may_tailcall.
- (purge_reg_equiv_notes): New.
- (expand_call): Do not try to expand calls inline.
- (fixup_tail_calls): New.
- * cfg.c: Include timevar.h and ggc.h.
- (bb_pool, edge_pool): Remove.
- (ENTRY_BLOCK_PTR, EXIT_BLOCK_PTR): Declare.
- (entry_exit_blocks): Remove.
- (rbi_pool): Declare.
- (init_flow): Do not create pools.
- Allocate entry/exit block.
- (free_edge, alloc_block, expunge_block, unchecked_make_edge): Use GGC.
- (alloc_rbi_pool, free_rbi_pool, initialize_bb_rbi): New.
- (unlink_block): Clear b->prev_bb and b->next_bb.
- (compact_blocks): Clear all slots of BASIC_BLOCK array.
- (dump_flow_info): Work on trees too.
- (dump_cfg_bb_info): New.
- (brief_dump_cfg): New.
- * cfganal.c (need_fake_edge_p, flow_call_edges_add): Remove.
- (find_edge): New.
- * cfgbuild.c (rtl_make_eh_edge): Rename from
- make_eh_edge. Update all users.
- (find_basic_blocks): Don't call VARRAY_FREE on
- basic_block_info.
- * cfgcleanup.c (outgoing_edges_match): Initialize newpos1
- and newpos2.
- (delete_unreachable_blocks): Return changed status.
- (merge_seq_blocks): New.
- * cfghooks.c: Include tree-flow.h
- (tree_register_cfg_hooks, ir_type): New.
- (redirect_edge_and_branch): Change return type to edge.
- (predict_edge, predicted_by_p, can_duplicate_block_p,
- duplicate_block, block_ends_with_call_p,
- block_ends_with_condjump_p, flow_call_edges_add): New.
- * cfghooks.h (redirect_edge_and_branch): Change return
- type to edge.
- (predict_edge, predicted_by_p, can_duplicate_block_p,
- duplicate_block, block_ends_with_call_p,
- block_ends_with_condjump_p, flow_call_edges_add): Declare.
- (redirect_edge_and_branch): Change return type to edge.
- (struct cfg_hooks): Add fields block_ends_with_call_p,
- block_ends_with_condjump_p, flow_call_edges_add,
- predict_edge, predicted_by_p, can_duplicate_block_p and
- duplicate_block.
- (tree_cfg_hooks, ir_type, tree_register_cfg_hooks): Declare.
- * cfglayout.c (cfg_layout_pool, cfg_layout_initialize_rbi): Removed.
- (fixup_reorder_chain): Use initialize_bb_rbi.
- (cfg_layout_can_duplicate_bb_p, cfg_layout_duplicate_bb): Hookized.
- (cfg_layout_initialize): Use cfg.c rbi pool manipulation functions.
- (can_copy_bbs_p, copy_bbs): Use cfghooks for bb duplication.
- (insn_locators_initialize): Use new info about blocks.
- * cfglayout.h (typedef struct reorder_block_def): Moved to
- basic_block.h.
- (cfg_layout_can_duplicate_bb_p, cfg_layout_duplicate_bb): Declaration
- removed.
- * cfgloop.c: Include tree.h and tree-flow.h.
- * cfgloop.h (create_loop_notes): Declare.
- * cfgloopmanip.c (create_loop_notes): New.
- * cfgrtl.c (cfg_layout_create_basic_block): Use initialize_bb_rbi.
- (rtl_cfg_hooks, cfg_layout_rtl_cfg_hook): Fill in can_duplicate_block_p
- and duplicate_block fields.
- (create_basic_block_structure): Don't look at
- RTX_INTEGRATED_P.
- (rtl_block_ends_with_call_p): New.
- (rtl_block_ends_with_condjump_p): New.
- (need_fake_edge_p): Moved from cfganal.c.
- (rtl_flow_call_edges_add): Moved from cfganal.c (flow_call_edges_add).
- (rtl_cfg_hooks): Add rtl_block_ends_with_call_p,
- rtl_block_ends_with_condjump_p, rtl_flow_call_edges_add.
- (cfg_layout_rtl_cfg_hooks): Ditto.
- * cgraph.c (cgraph_mark_reachable_node): Don't force nested
- functions to be reachable.
- * cgraphunit.c (decide_is_function_needed):
- * cgraphunit.c (decide_is_function_needed): Nested functions of extern
- inline functions don't need to be output.
- (cgraph_assemble_pending_functions): Don't do anything
- special for nested functions.
- (cgraph_mark_functions_to_output): Likewise.
- (cgraph_finalize_function): Don't zap DECL_STRUCT_FUNCTION.
- (cgraph_analyze_function): Use estimate_num_insns.
- (cgraph_mark_functions_to_output): Likewise.
- (cgraph_estimate_growth, cgraph_clone_inlined_nodes): Likewise.
- (cgraph_expand_function): Allow functions to not be
- emitted.
- (cgraph_remove_unreachable_nodes):
- (cgraph_recursive_inlining_p): Simplify.
- (lookup_recursive_calls,
- cgraph_decide_recursive_inlining): New.
- (cgraph_decide_inlining_*): Update calls of
- cgraph_mark_inline.
- * combine.c (get_pos_from_mask): Always set *plen.
- * common.opt (fdump-, fmudflap, fmudflapth, fmudflapir,
- ftree-based-profiling, ftree-ccp, ftree-ch,
- ftree-combine-temps, ftree-copyrename, ftree-dce,
- ftree-dominator-opts, ftree-dse, ftree-loop-optimize,
- ftree-points-to, ftree-pre, ftree-sra, ftree-ter,
- ftree-lrs): Add.
- * config.in (HAVE_LD_PIE, HAVE_BANSHEE, PREFIX_INCLUDE_DIR):
- Undefine.
- * configure.ac: Add --enable-tree-browser option.
- Add --with-libbanshee option.
- Add GMPLIBS and GMPINC.
- * configure: Regenerate.
- * coverage.c (tree_ctr_tables): New.
- (coverage_counter_alloc): Use it.
- (build_ctr_info_value): Ditto.
- (coverage_counter_ref): Ditto. Rename to rtl_coverage_counter_ref.
- (tree_coverage_counter_ref): New.
- * coverage.h (coverage_counter_ref): Remove declaration.
- (rtl_coverage_counter_ref): Declare.
- (tree_coverage_counter_ref): Declare.
- * cppexp.c (append_digit): Rearrange unsignedp/overflow setting.
- (eval_token, num_binary_op, num_part_mul, num_div_op): Likewise.
- * cse.c (fold_rtx): Do not handle CONSTANT_P_RTX.
- (struct cse_basic_block_data): Rename enum values to not
- conflict with profile.h; update all uses.
- * dbxout.c (dbxout_symbol_location): Don't mention integrate.c
- in comments.
- * defaults.h (TRAMPOLINE_ALIGNMENT): Move from function.c.
- * diagnostic.h (debug_output_buffer, dump_generic_node,
- print_generic_stmt, print_generic_stmt_indented,
- print_generic_expr, print_generic_decl,
- debug_generic_expr, debug_generic_stmt, debug_c_tree):
- Declare.
- * dominance.c: Cache immediate dominators.
- * domwalk.c: New file.
- * domwalk.h: New file.
- * dwarf2out.c (is_fortran): Support DW_LANG_Fortran95.
- (gen_subprogram_die): Generate a DIE for a named
- return value.
- (loc_descriptor_from_tree): Treat RESULT_DECL like VAR_DECL.
- (add_location_or_const_value_attribute): Likewise.
- (add_bound_info): Likewise.
- (gen_decl_die): Likewise.
- * emit-rtl.c (maybe_set_first_label_num): New.
- (copy_most_rtx): Don't copy the integrated flag.
- Copy the new return_val flag.
- * et-forest.c (MAX_NODES): Define.
- (record_path_before_1): Abort if len is greater than
- MAX_NODES.
- * except.c (gen_eh_region, gen_eh_region_cleanup, gen_eh_region_try,
- gen_eh_region_catch, gen_eh_region_allowed,
- gen_eh_region_must_not_throw, get_eh_region_number,
- get_eh_region_may_contain_throw, get_eh_region_tree_label,
- set_eh_region_tree_label, expand_resx_expr): New.
- (expand_eh_region_start, expand_start_catch): Use them.
- (expand_end_catch): Tidy.
- (note_eh_region_may_contain_throw): Take region argument.
- (note_current_region_may_contain_throw): New.
- (get_exception_filter): Export.
- (collect_eh_region_array): Export.
- (remove_unreachable_regions): Check ERT_TRY based on reachability
- of catches, not reachability of continue_label. Never remove
- ERT_MUST_NOT_THROW regions.
- (collect_rtl_labels_from_trees): New.
- (convert_from_eh_region_ranges): Use it.
- (connect_post_landing_pads): Handle dying cleanups.
- (struct reachable_info): Add callback data.
- (add_reachable_handler): Invoke the callback.
- (foreach_reachable_handler): New.
- (reachable_handlers): Use it.
- (arh_to_landing_pad, arh_to_label): New.
- (can_throw_internal_1): Split out from can_throw_internal.
- (can_throw_external_1): Similarly.
- * except.h: Update.
- * explow.c (emit_stack_save): Remove savearea mode check.
- (update_nonlocal_goto_save_area): New.
- (allocate_dynamic_stack_space): Use it.
- (probe_stack_range): Never emit loop notes.
- * expmed.c (extract_fixed_bit_field): Always propagate the
- target for the shift if it is a REG.
- * expr.c: Include tree-iterator.h
- (is_zeros_p): Remove.
- (categorize_ctor_elements_1, categorize_ctor_elements): New.
- (count_type_elements): New.
- (mostly_zeros_p): Use them.
- (expr_wfl_stack): Remove.
- (convert_move): Do nothing if to and from are the same.
- (emit_block_move_via_loop): Don't emit LOOP notes.
- (emit_move_insn): Don't handle CONSTANT_P_RTX.
- (emit_move_insn_1): Don't generate inline warnings.
- (expand_vars, expand_var): Split from ...
- (expand_expr_1): ... here.
- (expand_expr_real, expand_expr_real_1): Use new macros
- EXPR_LOCATION and EXPR_HAS_LOCATION.
- * expr.h (simplify_builtin_fputs,
- simplify_builtin_strcpy, simplify_builtin_strncpy,
- expand_var, fixup_tail_calls,
- update_nonlocal_goto_save_area): Declare.
- (lookup_static_chain, expand_inline_function,
- mark_seen_cases): Remove.
- (prepare_call_address): Change type of 2nd argument to
- rtx.
- * final.c (profile_function): Update static chain test.
- (final): Don't look at RTX_INTEGRATED_P.
- * flags.h (flag_mudflap, flag_mudflap_threads,
- flag_mudflap_ignore_reads, flag_tree_pre, flag_tree_ccp,
- flag_tree_dce, flag_tree_combine_temps,
- flag_tree_live_range_split, flag_tree_dom, flag_tree_ch,
- flag_tree_dse, flag_tree_sra, flag_tree_copyrename,
- flag_tree_points_to): Declare.
- (enum pta_type): Declare.
- * flow.c (lang_missing_noreturn_ok_p): Remove.
- (check_function_return_warnings): Remove.
- (update_life_info): Update comments.
- (free_basic_block_vars): Don't call VARRAY_FREE for
- basic_block_info.
- (regno_uninitialized): Remove.
- * fold-const.c (int_const_binop): Make extern.
- (non_lvalue): Rely on build to set TREE_CONSTANT.
- (operand_equal_p): Replace only_const argument with
- flags. Allow pure functions if OEP_PURE_SAME.
- (fold): Use OEP_ONLY_CONST.
- (invert_truthvalue) <NOP_EXPR> Break if argument is of
- boolean type.
- (fold_relational_hi_lo,
- nondestructive_fold_binary_to_constant,
- nondestructive_fold_unary_to_constant,
- fold_read_from_constant_string): New.
- * function.c (struct function): Remove calls_constant_p.
- (current_function_calls_constant_p): Remove.
- (inline_function_decl): Remove.
- (put_var_into_stack): Don't use it.
- (fix_lexical_addr): Likewise.
- (inline_function_decl): Remove extern declaration.
- (TRAMPOLINE_ALIGNMENT): Move to defaults.h.
- (trampolines_created): Move to varasm.c.
- (free_after_compilation): Update for removed fields.
- (allocate_struct_function): Likewise.
- (delete_handlers, lookup_static_chain): Remove.
- (fix_lexical_addr): Don't consider non-local variable refs.
- (trampoline_address): Remove.
- (round_trampoline_addr): Move to builtins.c.
- (adjust_trampoline_addr): Remove.
- (expand_function_start): Update for changes to static chain
- and nonlocal goto handling.
- (initial_trampoline): Move to varasm.c.
- (expand_function_end): Don't build trampolines or kill
- unreferenced nonlocal goto labels.
- (free_after_compilation): Don't set it.
- (expand_function_end): Likewise.
- (setjmp_vars_warning): Rename from
- uninitialized_vars_warning, remove uninitialized vars warning.
- (uninitialized_vars_warning): Remove old comment
- and check for DECL_INITIAL, replace with a check of TREE_NO_WARNING
- and do not call the langhook.
- (expand_function_start, expand_function_end): Don't do
- function instrumentation here.
- (clear_block_marks): Rename from reorder_blocks_0, export.
- (blocks_nreverse): Export.
- (uninitialized_vars_warning): Use DECL_RTL_SET_P to test for presence
- of rtl.
- (reset_block_changes, record_block_change, finalize_block_changes,
- check_block_change, free_block_changes): New functions.
- (assign_parms): Setting of current_function_stdarg
- moved ...
- (allocate_struct_function): ... here.
- * function.h (struct function): Remove x_nonlocal_labels,
- x_nonlocal_goto_handler_slots, x_nonlocal_goto_stack_level,
- x_context_display, x_trampoline_list, needs_context.
- Add static_chain_decl, nonlocal_goto_save_area.
- (struct function): Remove x_clobber_return_insn.
- Add tail_call_emit field, last_label_uid,
- unexpanded_var_list, dont_emit_block_notes,
- ib_boundaries_block, function_end_locus and saved_tree/saved_args.
- (clear_block_marks): Declare.
- * gcc.c (MFWRAP_SPEC, MFLIB_SPEC): Add -fmudflapth support.
- (mfwrap_spec, mflib_spec): Declare.
- (cpp_unique_options, cc1_options): Ditto.
- (default_compilers): Add .F and .f90.
- (static_specs): Add mfwrap and mflib.
- * gcse.c (want_to_gcse_p, gcse_constant_p): Don't handle
- CONSTANT_RTX_P.
- (reg_used_on_edge, reg_killed_on_edge, bypass_block):
- Update to match insns field in struct edge_def.
- * gdbinit.in (pgs, pge): Define.
- * genattrtab.c (ATTR_PERMANENT_P): Use the return_val flag
- instead of the integrated flag.
- * gengtype-lex.l (IWOrD): Add HOST_WIDEST_INT
- * gengtype-yacc.y (bitfieldlen): Add empty action.
- (struct_fields): Accept unnamed bitfields.
- (bitfieldlen): Split from ...
- (bitfieldopt): ... here.
- * gengtype.c (ifiles): Add tree-alias-type.h and
- tree-flow.h.
- * genrecog.c (validate_pattern): Do not handle
- CONSTANT_P_RTX.
- * gimple-low.c: New file.
- * gimplify.c: New file.
- * haifa-sched.c (priority): Do not handle CONSTANT_P_RTX.
- (restore_line_notes): Do not set RTX_INTEGRATED_P.
- * ifcvt.c (dead_or_predicable): Initialize local variable
- 'earliest'.
- * input.h (expr_wfl_stack): Remove.
- * integrate.c (INTEGRATE_THRESHOLD): Remove.
- (setup_initial_hard_reg_value_integration): Likewise.
- (initialize_for_inline): Likewise.
- (note_modified_parmregs): Likewise.
- (integrate_parm_decls): Likewise.
- (process_reg_param): Likewise.
- (save_parm_insns): Likewise.
- (copy_insn_list): Likewise.
- (copy_insn_notes): Likewise.
- (compare_blocks): Likewise.
- (find_block): Likewise.
- (inlining): Likewise.
- (function_cannot_inline_p): Likewise.
- (parmdecl_map): Likewise.
- (in_nonparam_insns): Likewise.
- (save_for_inline): Likewise.
- (FIXED_BASE_PLUS): Likewise.
- (expand_inline_function): Likewise.
- (copy_rtx_and_substitute): Don't look at map->integrating,
- map->inline_target, and inlining, since we are never copying
- for integrating.
- Don't abort on RTX_INTEGRATED_P.
- (old_fun): Remove.
- (output_inline_function): Remove.
- * integrate.h (struct inline_map): Remove fields integrating,
- block_map, leaf_reg_map, inline_target, and local_return_label.
- * jump.c (next_nonnote_insn_in_loop, duplicate_loop_exit_test,
- copy_loop_headers, never_reached_warning): Removed.
- (any_uncondjump_p): Reject nonlocal goto.
- * langhooks-def.h (lhd_types_compatible_p,
- lhd_expand_decl, lhd_gimplify_expr): Declare.
- (LANG_HOOKS_EXPAND_DECL, LANG_HOOKS_TYPES_COMPATIBLE_P,
- LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P,
- LANG_HOOKS_FUNCTION_LEAVE_NESTED,
- LANG_HOOKS_FUNCTION_MISSING_NORETURN_OK_P,
- LANG_HOOKS_GIMPLIFY_EXPR,
- LANG_HOOKS_GIMPLE_BEFORE_INLINING,
- LANG_HOOKS_EXPAND_DECL, LANG_HOOKS_TYPES_COMPATIBLE_P,
- LANG_HOOKS_GIMPLIFY_EXPR,
- LANG_HOOKS_GIMPLE_BEFORE_INLINING): Define.
- (LANG_HOOKS_DECL_UNINIT, LANG_HOOKS_RTL_EXPAND_START,
- LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_RTL_EXPAND_END,
- LANG_HOOKS_FUNCTION_LEAVE_NESTED,
- LANG_HOOKS_RTL_EXPAND_INITIALIZER,
- LANG_HOOKS_DECL_UNINIT,
- LANG_HOOKS_RTL_EXPAND_INITIALIZER): Remove.
- * langhooks.c: Include tree-simple.h.
- (lhd_expand_decl): New.
- (lhd_types_compatible_p): New.
- (lhd_decl_uninit): Remove.
- (lhd_gimplify_expr): New.
- * langhooks.h (struct lang_hooks_for_rtl_expansion):
- Remove.
- (struct lang_hooks_for_functions): Add field
- missing_noreturn_ok_p.
- (struct lang_hooks): Add field expand_decl,
- types_compatible_p, gimplify_expr and
- gimple_before_inlining.
- Remove fields decl_uninit and rtl_expand
- * opts.c (decode_options): Set flag_tree_ccp,
- flag_tree_dce, flag_tree_dom, flag_tree_dse,
- flag_tree_pre, flag_tree_ter,
- flag_tree_live_range_split, flag_tree_sra,
- flag_tree_copyrename and flag_tree_ch at -O1 and higher.
- (common_handle_option): Handle OPT_fdump_, OPT_fmudflap,
- OPT_fmudflapth, OPT_fmudflapir,
- OPT_ftree_based_profiling, OPT_ftree_ccp, OPT_ftree_dce,
- OPT_ftree_combine_temps, OPT_ftree_ter, OPT_ftree_lrs,
- OPT_ftree_dominator_opts, OPT_ftree_copyrename,
- OPT_ftree_ch, OPT_ftree_dse, OPT_ftree_sra,
- OPT_ftree_points_to_ and OPT_ftree_pre.
- * output.h (regno_uninitialized, find_basic_blocks,
- cleanup_cfg, delete_unreachable_blocks,
- check_function_return_warnings): Remove.
- * params.def (PARAM_MAX_INLINE_INSNS_RECURSIVE,
- PARAM_MAX_INLINE_INSNS_RECURSIVE_AUTO,
- PARAM_MAX_INLINE_RECURSIVE_DEPTH,
- PARAM_MAX_INLINE_RECURSIVE_DEPTH_AUTO,
- PARAM_GLOBAL_VAR_THRESHOLD, PARAM_MAX_ALIASED_VOPS):
- * params.h (GLOBAL_VAR_THRESHOLD, MAX_ALIASED_VOPS):
- Define.
- * passes.c (rest_of_decl_compilation):
- (rest_of_handle_sibling_calls): Remove.
- (rest_of_handle_inlining): Remove.
- (rest_of_handle_gcse): Do not run
- purge_builtin_constant_p.
- (rest_of_compilation): Update.
- Do not call copy_loop_headers.
- Do rtl-based profiling only when
- !flag_tree_based_profiling. Register rtl-based profiling
- hooks.
- * predict.c: Include tree-flow.h, ggc.h, tree-dump.h
- (predicted_by_p): Rename to ...
- (rtl_predicted_by_p): .. this one; make global
- (tree_predicted_by_p): New.
- (dump_prediction): Add FILE argument.
- (predict_edge): Rename to ...
- (rtl_predict_edge): .. this one.
- (tree_predict_edge): New.
- (combine_predictions_for_insn): Update calls of predict_edge.
- (predict_loops): Break out from ...
- (estimate_probability): ... here; update comments; move updating
- of unknown probabilities from ...
- (estimate_bb_frequencies): ... here.
- (combine_predictions_for_bb): New.
- (tree_predict_by_opcode): New.
- (tree_estimate_probability): New.
- * predict.def (PRED_TREE_POINTER, PRED_TREE_OPCODE_POSITIVE,
- PRED_TREE_OPCODE_NONEQUAL, PRED_TREE_FPOPCODE): New predictors.
- * predict.h: Add include guard.
- (predict_edge, predict_edge_def): Move prototypes to basic_block.h
- * pretty-print.c (pp_write_text_to_stream): Make extern.
- * pretty-print.h (pp_write_text_to_stream): Declare.
- * print-rtl.c (print_rtx): Don't print the integrated flag.
- Print the return_val flag.
- * print-tree.c: Use TREE_FILENAME and TREE_LINENO instead
- of DECL_SOURCE_FILE and DECL_SOURCE_LINE respectively.
- Remove support for EXPR_WITH_FILE_LOCATION nodes.
- (print_node): Print TREE_INVARIANT and TREE_VISITED.
- * profile.c: Include cfghooks.h, tree-flow.h.
- (profile_hooks): New.
- (profile_dump_file): New.
- (instrument_edges): Use hooks instead of RTL-specific code.
- (instrument_values): Ditto.
- (get_exec_counts): Ditto.
- (compute_branch_probabilities): Ditto.
- (compute_value_histograms): Ditto.
- (branch_prob): Ditto.
- (find_spanning_tree): Ditto.
- (end_branch_prob): Ditto.
- (gen_edge_profiler): Move to rtl-profile.c (rtl_gen_edge_profiler).
- (gen_interval_profiler): Ditto (rtl_gen_interval_profiler).
- (gen_pow2_profiler): Ditto (rtl_gen_pow2_profiler).
- (gen_one_value_profiler): Ditto (rtl_gen_one_value_profiler).
- (tree_register_profile_hooks): New.
- (rtl_register_profile_hooks): New.
- * ra-rewrite.c (rewrite_program): Clear variable info.
- * recog.c (immediate_operand): Do not handle CONSTANT_P_RTX.
- * regs.h: Add include guards.
- * reload.c (decompose): Clear val using memset.
- * rtl.def (CONSTANT_P_RTX): Remove.
- * rtl.h (CONSTANT_P): Do not handle CONSTANT_P_RTX.
- (copy_loop_headers): Remove.
- (struct rtx_def): Replace the integrated flag with the
- return_val flag.
- (maybe_set_first_label_num): Declare.
- (init_branch_prob): Move declaration to value-prof.h.
- (end_branch_prob): Ditto.
- (branch_prob): Ditto.
- (never_reached_warning): Don't declare it.
- * rtlanal.c (get_related_value): Initialize get_jump_table_offset
- (hoist_insn_to_edge): Update to match field insns in
- struct edge_def.
- * sbitmap.c (sbitmap_realloc): New.
- * sbitmap.h (sbitmap_realloc): Declare.
- * sibcall.c: Remove file.
- * simplify-rtx.c (simplify_rtx): Do not handle
- CONSTANT_P_RTX.
- * stmt.c (parse_output_constraint): Don't warn for read-write
- memory operand.
- (tail_recursion_args): Use types_compatible_p langhook.
- (force_label_rtx): Don't look at inline_function_decl.
- (label_rtx): Set LABEL_PRESERVE_P appropriately.
- (expand_label): Handle DECL_NONLOCAL and FORCED_LABEL.
- (declare_nonlocal_label): Remove.
- (expand_goto): Don't handle nonlocal gotos.
- (expand_nl_handler_label): Remove.
- (expand_nl_goto_receivers): Remove.
- (expand_end_bindings): Don't expand_nl_goto_receivers. Use
- update_nonlocal_goto_save_area.
- (expand_expr_stmt_value): Check TREE_NO_WARNING.
- (warn_if_unused_value): Likewise.
- (expand_start_loop, expand_loop_continue_here,
- expand_end_loop): Don't create loop notes.
- (all_cases_count, BITARRAY_TEST, BITARRAY_SET,
- mark_seen_cases, check_for_full_enumeration_handling): Remove.
- (expand_end_case_type): Don't do warn_switch handling.
- (pushcase, pushcase_range) Update add_case_node calls.
- (add_case_node): Add dont_expand_label argument.
- (same_case_target_p): Don't search rtl.
- (expand_start_bindings_and_block, expand_end_bindings):
- Don't emit block notes when dont_emit_block_notes.
- (using_eh_for_cleanups_p): Export.
- (expand_return): Allow any typed rhs.
- (expand_stack_alloc): New.
- (expand_stack_save, expand_stack_restore): New.
- (containing_blocks_have_cleanups_or_stack_level): New
- function.
- (asm_op_is_mem_input): New fn.
- (expand_asm_expr): New fn.
- (warn_if_unused_value): Check operand 0 of SAVE_EXPR
- nodes.
- * stor-layout.c (layout_type): Just return if type is
- error_mark_node.
- (update_alignment_for_field): Export.
- (variable_size): We don't care about global_bindings_p if
- the frontend doesn't want a list of the expressions.
- * system.h: Poison INTEGRATE_THRESHOLD.
- * timevar.def (TV_TREE_GIMPLIFY, TV_TREE_EH, TV_TREE_CFG,
- TV_TREE_CLEANUP_CFG, TV_TREE_PTA, TV_TREE_MAY_ALIAS,
- TV_TREE_INSERT_PHI_NODES, TV_TREE_SSA_REWRITE_BLOCKS,
- TV_TREE_SSA_OTHER, TV_TREE_OPS,
- TV_TREE_SSA_DOMINATOR_OPTS, TV_TREE_SRA, TV_TREE_CCP,
- TV_TREE_SPLIT_EDGES, TV_TREE_PRE, TV_TREE_PHIOPT,
- TV_TREE_FORWPROP, TV_TREE_DCE, TV_TREE_CD_DCE,
- TV_TREE_DSE, TV_TREE_LOOP, TV_TREE_CH,
- TV_TREE_SSA_TO_NORMAL, TV_TREE_SSA_TO_NORMAL,
- TV_TREE_NRV, TV_TREE_COPY_RENAME, TV_TREE_SSA_VERIFY,
- TV_TREE_STMT_VERIFY, TV_DOM_FRONTIERS,
- TV_CONTROL_DEPENDENCES): Define.
- * toplev.c: Include tree-alias-common.h
- (current_file_decl, flag_mudflap, flag_mudflap_threads,
- flag_mudflap_ignore_reads, flag_tree_based_profiling,
- flag_tree_gvn, flag_tree_points_to, flag_tree_ccp,
- flag_tree_dce, flag_tree_ch, flag_tree_sra,
- flag_tree_combine_temps, flag_tree_ter,
- flag_tree_live_range_split, flag_tree_dom,
- flag_tree_copyrename, flag_tree_dse): Declare.
- (f_options): Add tree-based-profiling, tree-gvn,
- tree-pre, tree-ccp, tree-dce,
- tree-dominator-opts, tree-copyrename, tree-dse,
- tree-combine-temps, tree-ter, tree-lrs and tree-ch.
- (wrapup_global_declarations): Don't output nested inlined functions.
- (general_init): Call init_tree_optimization_passes.
- (process_options): Sorry for -ftree-based-profiling plus
- -ftest-coverage or -fprofile-values.
- * toplev.h (init_tree_optimization_passes,
- flag_tree_based_profiling): Declare.
- * tracer.c (tail_duplicate): Use cfghooks for bb duplication.
- * tree-alias-ander.c: New file.
- * tree-alias-ander.h: New file.
- * tree-alias-common.c: New file.
- * tree-alias-common.h: New file.
- * tree-alias-type.c: New file.
- * tree-alias-type.h: New file.
- * tree-browser.c: New file.
- * tree-browser.def: New file.
- * tree-cfg.c: New file.
- * tree-complex.c: New file.
- * tree-dfa.c: New file.
- * tree-dump.c (dump_enable_all): New.
- (dequeue_and_dump): Do not handle EXPR_WITH_FILE_LOCATION.
- (dump_node): Remove const from field suffix and swtch.
- (dump_files): Add null entry, .generic, .nested, .vcg,
- .xml and a match-all entry.
- (extra_dump_files, extra_dump_files_in_use,
- extra_dump_files_alloced): Declare
- (dump_option_value_info): Add raw, details, stats,
- blocks, vops, lineno, uid and all.
- (dump_register): New.
- (get_dump_file_info): New.
- (dump_begin): Call it.
- Do nothing for TDI_none.
- (dump_begin): Include phase number in dump filename.
- (dump_enable_all): New.
- (dump_switch_p_1): Split out from dump_switch_p.
- (dump_switch_p): Handle extra_dump_files.
- Start our scan at TDI_none + 1.
- If -fdump-tree-all was given, call dump_enable_all.
- * tree-dump.h: Include splay-tree.h.
- (dump_function, dump_function_to_file, dump_register):
- Declare.
- * tree-eh.c: New file.
- * tree-flow-inline.h: New file.
- * tree-flow.h: New file.
- * tree-inline.c: Re-write to handle inlining on GIMPLE.
- * tree-inline.h (walk_tree,
- walk_tree_without_duplicates): Move to tree.h.
- (estimate_num_insns): Declare.
- * tree-into-ssa.c: New file.
- * tree-iterator.c: New file.
- * tree-iterator.h: New file.
- * tree-mudflap.c: New file.
- * tree-mudflap.h: New file.
- * tree-nested.c: New file.
- * tree-nomudflap.c: New file.
- * tree-nrv.c: New file.
- * tree-optimize.c (dump_flags, vars_to_rename,
- in_gimple_form, all_passes, pass_gimple,
- pass_rebuild_bind, pass_all_optimizations, pass_del_cfg): Declare.
- (execute_gimple, execute_rebuild_bind,
- gate_all_optimizations, execute_del_cfg,
- register_one_dump_file, register_dump_files, dup_pass_1,
- init_tree_optimization_passes, execute_todo,
- execute_one_pass, execute_pass_list): New.
- (clear_decl_rtl): Remove.
- (tree_rest_of_compilation): Update to use tree
- optimizers.
- * tree-outof-ssa.c: New file.
- * tree-pass.h: New file.
- * tree-phinodes.c: New file.
- * tree-pretty-print.c: New file.
- * tree-profile.c: New file.
- * tree-simple.c: New file.
- * tree-simple.h: New file.
- * tree-sra.c: New file.
- * tree-ssa-alias.c: New file.
- * tree-ssa-ccp.c: New file.
- * tree-ssa-copy.c: New file.
- * tree-ssa-copyrename.c: New file.
- * tree-ssa-dce.c: New file.
- * tree-ssa-dom.c: New file.
- * tree-ssa-dse.c: New file.
- * tree-ssa-forwprop.c: New file.
- * tree-ssa-live.c: New file.
- * tree-ssa-live.h: New file.
- * tree-ssa-loop.c: New file.
- * tree-ssa-operands.c: New file.
- * tree-ssa-operands.h: New file.
- * tree-ssa-phiopt.c: New file.
- * tree-ssa-pre.c: New file.
- * tree-ssa.c: New file.
- * tree-ssanames.c: New file.
- * tree-tailcall.c: New file.
- * tree.c: Include tree-iterator.h, basic-block.h and
- tree-flow.h.
- (tree_node_kind): Add phi_nodes and ssa names.
- (tree_size): Handle PHI_NODE, EPHI_NODE, SSA_NAME,
- EUSE_NODE, EKILL_NODE, EEXIT_NODE and STATEMENT_LIST.
- (make_node_stat): Handle PHI_NODE and SSA_NAME.
- <'c'> Set TREE_INVARIANT.
- (copy_node_stat): Abort if trying to copy a
- STATEMENT_LIST.
- Clear TREE_VISITED.
- Clear annotation field.
- (build_constructor): Copy TREE_INVARIANT from vals.
- Don't clear TREE_CONSTANT.
- (expr_first, expr_last, expr_length): Remove.
- (staticp): Pass unknown component references to the language.
- (save_expr): Check TREE_INVARIANT instead of TREE_CONSTANT.
- (skip_simple_arithmetic): Likewise.
- (stabilize_reference_1): Likewise.
- (tree_node_structure): Handle PHI_NODE, EPHI_NODE,
- EUSE_NODE, EKILL_NODE, EEXIT_NODE, SSA_NAME and
- STATEMENT_LIST.
- (lhd_unsave_expr_now): Remove.
- (unsafe_for_reeval): Handle LABEL_EXPR and BIND_EXPR.
- (recompute_tree_invarant_for_addr_expr): New.
- (build1_stat): Clear EXPR_LOCUS and TREE_BLOCK.
- Call recompute_tree_invarant_for_addr_expr.
- Set TREE_INVARIANT accordingly.
- (build2_stat): Don't handle CALL_EXPR.
- (build3_stat): Don't call build2_stat for CALL_EXPRs.
- (build_expr_wfl): Remove.
- (annotate_with_file_line, annotate_with_locus): New.
- (simple_cst_equal): Call simple_cst_list_equal to compare
- CONSTRUCTOR_ELTS pointers.
- (iterative_hash_expr): Don't hash types associated
- with conversions. Instead hash on the signedness of the
- toplevel object and the operand of the conversion.
- (dump_tree_statistics): Call ssanames_print_statistics
- and phinodes_print_statistics.
- (ephi_node_elt_check_failed, phi_node_elt_check_failed,
- add_var_to_bind_expr, build_empty_stmt, is_essa_node,
- needs_to_live_in_memory): New.
- (initializer_zerop): Handle VECTOR_CST. Don't check
- AGGREGATE_TYPE_P for CONSTRUCTOR.
- * tree.def (FILTER_EXPR, CASE_LABEL_EXPR, RESX_EXPR,
- SSA_NAME, EUSE_NODE, EKILL_NODE, EPHI_NODE, EEXIT_NODE,
- PHI_NODE, CATCH_EXPR, EH_FILTER_EXPR, STATEMENT_LIST): Define.
- (GOTO_SUBROUTINE_EXPR): Change type to 's'.
- (CALL_EXPR): Add another operand.
- (EXPR_WITH_FILE_LOCATION): Remove.
- (SWITCH_EXPR): Add another operand.
- * tree.h: Update various comments.
- (union tree_ann_d): Forward declare.
- (struct tree_common): Add fields nowarning_flag,
- invariant_flag and visited.
- (EREF_NODE_CHECK, EPHI_NODE_ELT_CHECK,
- PHI_NODE_ELT_CHECK, EREF_NODE_CHECK, PHI_NODE_ELT_CHECK,
- EPHI_NODE_ELT_CHECK, TREE_BLOCK,
- STRIP_USELESS_TYPE_CONVERSION, CALL_EXPR_TAILCALL,
- TREE_NO_WARNING, FORCED_LABEL, TREE_INVARIANT,
- IS_EMPTY_STMT, EXPR_LOCUS, SET_EXPR_LOCUS, EXPR_FILENAME,
- EXPR_LINENO, EXPR_LOCATION, EXPR_HAS_LOCATION,
- EXIT_EXPR_COND, SWITCH_COND, SWITCH_BODY, SWITCH_LABELS,
- CASE_LOW, CASE_HIGH, CASE_LABEL, BIND_EXPR_VARS,
- BIND_EXPR_BODY, BIND_EXPR_BLOCK, GOTO_DESTINATION,
- ASM_STRING, ASM_OUTPUTS, ASM_INPUTS, ASM_CLOBBERS,
- ASM_INPUT_P, ASM_VOLATILE_P, COND_EXPR_COND,
- COND_EXPR_THEN, COND_EXPR_ELSE, LABEL_EXPR_LABEL,
- CATCH_TYPES, CATCH_BODY, EH_FILTER_TYPES,
- EH_FILTER_FAILURE, EH_FILTER_MUST_NOT_THROW,
- SSA_NAME_VAR, SSA_NAME_DEF_STMT, SSA_NAME_VERSION,
- SSA_NAME_OCCURS_IN_ABNORMAL_PHI, SSA_NAME_IN_FREE_LIST,
- PHI_RESULT, PHI_REWRITTEN, PHI_NUM_ARGS,
- PHI_ARG_CAPACITY, PHI_ARG_ELT, PHI_ARG_EDGE, PHI_ARG_DEF,
- EREF_PROCESSED, EREF_ID, EREF_NAME, EREF_STMT,
- EREF_RELOAD, EREF_SAVE, EREF_CLASS, EREF_INJURED,
- EREF_TEMP, EUSE_DEF, EUSE_PHIOP, EUSE_INSERTED,
- EUSE_LVAL, EPHI_NUM_ARGS, EPHI_ARG_CAPACITY,
- EPHI_ARG_ELT, EPHI_ARG_EDGE, EPHI_ARG_PRED, EPHI_ARG_DEF,
- EPHI_ARG_INJURED, EPHI_ARG_DELAYED_RENAME,
- EPHI_ARG_HAS_REAL_USE, EPHI_ARG_STOPS,
- EPHI_ARG_PROCESSED2, EPHI_IDENTITY, EPHI_IDENT_INJURED,
- EPHI_REP_OCCUR_KNOWN, EPHI_IDENTICAL_TO, EPHI_DOWNSAFE,
- EPHI_CANT_BE_AVAIL, EPHI_DEAD, EPHI_USES, EPHI_STOPS,
- TREE_VISITED, SSA_VAR_P, DECL_NUM_STMTS,
- DECL_HARD_REGISTER, DECL_PTA_ALIASVAR, LABEL_DECL_UID,
- DECL_NEEDS_TO_LIVE_IN_MEMORY_INTERNAL,
- STATEMENT_LIST_HEAD, STATEMENT_LIST_TAIL, TDF_RAW,
- TDF_DETAILS, TDF_STATS, TDF_BLOCKS, TDF_VOPS, TDF_LINENO,
- TDF_UID,): Define.
- (TREE_NO_UNUSED_WARNING, EXPR_WFL_EMIT_LINE_NOTE,
- EXPR_WFL_NODE, EXPR_WFL_FILENAME_NODE, EXPR_WFL_FILENAME,
- EXPR_WFL_LINECOL, EXPR_WFL_LINENO, EXPR_WFL_COLNO,
- EXPR_WFL_SET_LINECOL): Remove.
- (phi_node_elt_check_failed, ephi_node_elt_check_failed,
- make_phi_node, init_phinodes, fini_phinodes,
- release_phi_node, phinodes_print_statistics,
- init_ssanames, fini_ssanames, make_ssa_name,
- release_ssa_name, ssanames_print_statistics,
- annotate_with_file_line, build_empty_stmt,
- annotate_with_locus, expr_only, categorize_ctor_elements,
- count_type_elements, add_var_to_bind_expr, is_essa_node,
- expand_stack_alloc, expand_stack_save,
- expand_stack_restore, add_case_node, operand_equal_p,
- nondestructive_fold_unary_to_constant,
- nondestructive_fold_binary_to_constant,
- fold_read_from_constant_string, int_const_binop,
- strip_float_extensions, simplify_builtin, c_strlen,
- recompute_tree_invarant_for_addr_expr,
- needs_to_live_in_memory, make_vector,
- setjmp_vars_warning, update_alignment_for_field,
- expand_asm_expr, asm_op_is_mem_input,
- containing_blocks_have_cleanups_or_stack_level,
- create_artificial_label, gimplify_function_tree,
- get_name, unshare_expr, walk_tree,
- walk_tree_without_duplicates, in_gimple_form): Declare.
- (struct tree_exp): Add fields locus and block.
- (struct tree_ssa_name, struct edge_def, struct
- tree_phi_node, struct tree_eref_common, struct
- tree_euse_node, struct ephi_arg_d, struct tree_ephi_node,
- union alias_var_def, struct tree_statement_list_node,
- struct tree_statement_list, enum operand_equal_flag): Declare.
- (enum tree_node_structure_enum): Add TS_SSA_NAME,
- TS_PHI_NODE, TS_EPHI_NODE, TS_EUSE_NODE, TS_EREF_NODE,
- TS_STATEMENT_LIST.
- (union tree_node): Add fields ssa_name, phi, eref, ephi,
- euse and stmt_list.
- (function_cannot_inline_p, uninitialized_vars_warning,
- save_for_inline, output_inline_function, all_cases_count,
- check_for_full_enumeration_handling,
- declare_nonlocal_label): Remove.
- (enum tree_dump_index): Add TDI_none, TDI_tu,
- TDI_generic, TDI_nested, TDI_vcg, TDI_xml.
- * unroll.c (unroll_loop): Don't clear map->inline_target.
- * unwind-sjlj.c (uw_install_context): Make a proper static inline
- function.
- * value-prof.c (value_prof_hooks): New.
- (find_values_to_profile): Rename to rtl_find_values_to_profile.
- Move rtl-specific bits in from branch_prob.
- (value_profile_transformations): Rename to
- rtl_value_profile_transformations.
- (struct value_prof_hooks): New.
- (rtl_value_prof_hooks): New.
- (rtl_register_value_prof_hooks): New.
- (tree_find_values_to_profile): New stub.
- (tree_value_profile_transformations): New stub.
- (tree_value_prof_hooks): New stub.
- (tree_register_value_prof_hooks): New stub.
- (find_values_to_profile): New.
- (value_profile_transformations): New.
- * value-prof.h: Add multiple inclusion guard.
- (struct histogram_value): Change rtx fields to void *.
- (rtl_register_value_prof_hooks): New declaration.
- (tree_register_value_prof_hooks): New declaration.
- (find_values_to_profile): New declaration.
- (free_profiled_values): New declaration.
- (value_profile_transformations): New declaration.
- (struct profile_hooks): New declaration.
- (init_branch_prob): Declaration moved from rtl.h.
- (branch_prob): Declaration moved from rtl.h.
- (end_branch_prob): Declaration mooved from rtl.h.
- (tree_register_profile_hooks): New declaration.
- (rtl_register_profile_hooks): New declaration.
- (tree_profile_hooks): New declaration.
- (rtl_profile_hooks): New declaration.
- * varasm.c: Include tree-mudflap.h.
- (TRAMPOLINE_ALIGNMENT): Remove.
- (make_decl_rtl): Call mudflap_enqueue_decl.
- (assemble_static_space):
- (assemble_trampoline_template): Set and return
- TRAMPOLINE_ALIGNMENT.
- * varray.c (element): Add GENERIC_PTR_NOGC entry.
- Add entry for 'tree *'.
- Add entry for struct edge_def *.
- (varray_copy): New.
- * varray.h (enum varray_data_enum): Add
- VARRAY_DATA_GENERIC_NOGC, VARRAY_DATA_EDGE and
- VARRAY_DATA_TREE_PTR.
- (union varray_data_tag): Corresponding changes.
- (VARRAY_GENERIC_PTR_NOGC_INIT, VARRAY_EDGE_INIT,
- VARRAY_TREE_PTR_INIT, VARRAY_GENERIC_PTR_NOGC,
- VARRAY_EDGE, VARRAY_TREE_PTR,
- VARRAY_PUSH_GENERIC_PTR_NOGC, VARRAY_PUSH_EDGE,
- VARRAY_PUSH_TREE_PTR, VARRAY_TOP_GENERIC_PTR_NOGC,
- VARRAY_TOP_EDGE, VARRAY_TOP_TREE_PTR): Define.
-
- * config/*/*: Various updates for changed macros, tree
- codes, etc. Check ChangeLog.tree-ssa.
-
- * doc/cfg.texi: New file.
- * doc/tree-ssa.texi: New file.
- * doc/c-tree.texi: Document new codes.
- * doc/gccint.texi: Include new files.
- * doc/install.texi: Document new features.
- * doc/invoke.texi: Document new switches.
- * doc/passes.texi: Document new passes.
- * doc/rtl.texi: Update changed RTL codes.
- * doc/sourcebuild.texi: Update build instructions.
- * doc/standards.texi: Document Fortran changes.
- * doc/tm.texi: Update.
-
-2004-05-12 Paolo Bonzini <bonzini@gnu.org>
-
- Replace several arrays with a struct of arrays.
- * combine.c (struct reg_stat): New.
- (init_reg_last_arrays): Renamed to...
- (init_reg_last): ...this. Callers adjusted.
- (reg_stat): New.
- (combine_instructions): Allocate it and use it.
- (reg_last_death, reg_last_set, reg_last_set_value,
- reg_last_set_label, reg_last_set_table_tick,
- reg_last_set_invalid, reg_nonzero_bits, reg_sign_bit_copies,
- reg_last_set_mode, reg_last_set_nonzero_bits,
- reg_last_set_sign_bit_copies): Replace throughout
- with items of reg_stat.
-
-2004-05-11 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR optimization/15100
- * combine.c (distribute_notes): Don't create a dangling
- REG_LIBCALL/REG_RETVAL note.
-
-2004-05-11 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md (spe_evneg): Rename to negv2si2.
-
- * config/rs6000/rs6000.c (bdesc_1arg): Change spe_evneg to
- negv2si2.
-
-2004-05-11 Aldy Hernandez <aldyh@redhat.com>
-
- * doc/md.texi (Standard Names): Fix typo in vec_init description.
-
-2004-05-11 Geoffrey Keating <geoffk@apple.com>
-
- * doc/gty.texi (GTY Options): Clarify example.
-
-2004-05-11 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_handle_altivec_attribute):
- Add const qualifier to altivec vector type if one is needed.
-
-2004-05-11 Paul Brook <paul@codesourcery.com>
-
- * flags.h (flag_short_enums): Update comment.
- * opts.c (decode_options): Set flag_short_enums to 2.
- * toplev.c (flag_short_enums): Update comment.
- (process_options): Call default_short_enums target hook.
-
-2004-05-11 Andrew Pinski <pinskia@gcc.gnu.org>
-
- PR target/14063
- * config/rs6000/altivec.md (altivec_dssall):
- Change to unspec_volatile.
- (altivec_dss): Likewise.
-
-2004-05-10 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/altivec.md ("one_cmplv16qi2"): Change vnot to
- vnor.
- ("one_cmplv8hi2"): Same.
- ("one_cmplv4si2"): Same.
-
-2004-05-10 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR target/15130
- * config/sh/sh-protos.h (sh_expand_epilogue): Change prototype.
- * config/sh/sh.c (output_stack_adjust): Take the sibcall epilogue
- into account. Compute the correct number of general registers
- for the return value. Generate a special push/pop sequence when
- failing to get a temporary register for non SHmedia epilogue.
- (sh_expand_epilogue): Add an argument to show whether it's for
- sibcall or not. Set the 3rd argument of output_stack_adjust to
- -1 if needed.
- (sh_need_epilogue): Call sh_expand_epilogue with 0.
- * config/sh/sh.md (sibcall_epilogue): Call sh_expand_epilogue
- with 1.
- (epilogue): Call sh_expand_epilogue with 0.
-
-2004-05-10 Andrew Pinski <pinskia@physics.uc.edu>
-
- * gcse.c (eliminate_partially_redundant_loads): Instead of returning early,
- goto a cleanup label. After the cleanup, free the allocated memory.
-
-2004-05-10 Ziemowit Laski <zlaski@apple.com>
-
- * config/rs6000/altivec.h (vec_sld): Add overloads for
- argument/return types of 'vector bool int', 'vector bool short'
- and 'vector bool char'.
-
-2004-05-10 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (store_parm_decls_newstyle): Correct test for a
- nested function.
-
-2004-05-10 Richard Sandiford <rsandifo@redhat.com>
-
- * read-rtl.c (read_rtx): Allow 's' and 'T' strings to be omitted,
- treating missing ones as "".
- * config/mips/mips.md: Remove constraints from match_operands and
- match_scratches if they appear in define_expands (except reload*),
- define_peephole2s, define_splits or attribute specifications.
- * config/mips/7000.md, config/mips/sb1.md: Remove match_operand
- constraint strings.
-
-2004-05-10 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (function_arg_boundary): Always align
- AltiVec vectors.
- (function_arg_advance): Pass TARGET_32BIT -mabi=no-altivec AltiVec
- vectors by refererence. Align the same for TARGET_64BIT to a 16
- byte boundary. Remove useless code. Add function comment.
- (function_arg): Similarly. Move gpr rs6000_mixed_function_arg
- call to where it belongs.
- (function_arg_partial_nregs): Return true for all TARGET_32BIT
- -mabi=no-altivec AltiVec vectors. Fix debug output.
- (rs6000_va_arg): Adjust for AltiVec change.
-
-2004-05-10 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_promote_prototypes): Use TARGET_AAPCS_BASED.
- * config/arm/arm.h (TARGET_AAPCS_BASED): Define.
- (TARGET_DOUBLEWORD_ALIGN): Use it.
- (WCHAR_TYPE): Define.
- (WCHAR_SIZE_TYPE): Define.
- (SIZE_TYPE): Define.
-
-2004-05-10 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (function_arg_boundary): Align for ABI_V4
- when size is 8 bytes.
- (function_arg_advance): Account for stack space used by AltiVec
- args when -mabi=altivec. Simplify alignment calculations. For
- ABI_V4, pass AltiVec vectors by reference when -mabi=no-altivec.
- (function_arg): Similarly.
- (function_arg_pass_by_reference): True for ABI_V4 AltiVec when
- not AltiVec ABI.
- (rs6000_va_arg): Correct fp arg test. Adjust for AltiVec change.
- Correct alignment, and align before testing reg count. Remove
- TREE_THIS_VOLATILE from reg. Don't emit unused labels.
- (rs6000_complex_function_value): Check TARGET_HARD_FLOAT and
- TARGET_FPRS here..
- (rs6000_function_value): .. not here before call.
-
-2004-05-09 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md ("tstsflt_gpr"): Fix typo in unspec.
-
-2004-05-09 Zack Weinberg <zack@codesourcery.com>
-
- PR 15007
- * c-decl.c (current_file_decl): Rename to all_translation_units,
- adjust comment.
- (pop_scope): If popping file_scope, construct a
- TRANSLATION_UNIT_DECL and make it the context of all the
- symbols in the scope.
- (push_file_scope): Don't construct a TRANSLATION_UNIT_DECL here.
- (pushdecl): Clarify comment. Do not set DECL_CONTEXT of
- anything to current_file_decl.
- (pushdecl_top_level): Likewise.
- (store_parm_decls_newstyle): Adjust check for nested function.
- (c_write_global_declarations): Update for renamed variable.
-
-2004-05-09 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000-protos.h
- (rs6000_conditional_register_usage): Protoize.
-
- * config/rs6000/rs6000.c (rs6000_conditional_register_usage): New.
-
- * config/rs6000/rs6000.h (CONDITIONAL_REGISTER_USAGE): Call
- function.
-
-2004-05-08 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_div_compare): New function to optimize X/C1 op C2
- where op is a comparison operator and C1 and C2 are integer constants
- into a range check.
- (fold): Call fold_div_compare.
-
-2004-05-08 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/install.texi (sparc-sun-solaris2*): Document bootstrap
- problems with earlier versions of the GNU compiler.
-
-2004-05-07 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000-protos.h (rs6000_hard_regno_mode_ok_p):
- Declare.
-
- * config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok_p): New.
- (rs6000_hard_regno_mode_ok): New.
- (rs6000_init_hard_regno_mode_ok): New.
- (rs6000_override_options): Call rs6000_init_hard_regno_mode_ok.
-
- * config/rs6000/rs6000.h (HARD_REGNO_NREGS): Use precomputed
- result.
-
-2004-05-07 Ziemowit Laski <zlaski@apple.com>
-
- * config/rs6000/altivec.h (vector, pixel, bool): Do not
- define as macros #ifdef __APPLE_ALTIVEC__.
-
-2004-05-07 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_mixed_function_arg):
- Generate appropriate parallels for vector arguments
- passed to vararg functions. (function_arg): make the call
- to rs6000_mixed_function_arg for vector args as needed.
-
-2004-05-07 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_va_arg): Fix calculation of osize for
- EABI_FLOAT_VARARGS_P.
-
-2004-05-07 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (ISA_HAS_BRANCHLIKELY): Remove TARGET_MIPS5500.
- * config/mips/mips.c (override_options): Disable branch likely
- instructions if TUNE_MIPS5500.
-
-2004-05-07 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (override_options): Allow the hi and lo registers
- to store any integral mode, not just MODE_INTs.
-
-2004-05-07 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_promote_prototypes): Use TARGET_AAPCS_BASED.
- * config/arm/arm.h (TARGET_AAPCS_BASED): Define.
- (TARGET_DOUBLEWORD_ALIGN): Use it.
- (WCHAR_TYPE): Define.
- (WCHAR_SIZE_TYPE): Define.
- (SIZE_TYPE): Define.
-
-2004-05-07 Uros Bizjak <uros@kss-loka.si>
-
- * config/i386/i386.c (ix86_emit_fp_unordered_jump): Use
- testb $4, %ah insn instead of sahf insn if !TARGET_USE_SAHF.
-
-2004-05-07 Andrew Pinski <pinskia@physics.uc.edu>
-
- * loop-doloop.c (doloop_valid_p): Make sure that body
- gets freed.
-
-2004-05-07 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * config/sparc/sparc-protos.h (sparc_skip_caller_unimp): New
- declaration.
- * config/sparc/sparc.c (SKIP_CALLERS_UNIMP_P): Delete.
- (sparc_skip_caller_unimp): New global variable.
- (sparc_function_epilogue): Set 'sparc_skip_caller_unimp'.
- Use it instead of SKIP_CALLERS_UNIMP_P.
- * config/sparc/sparc.md (call expander): Add sanity check.
- (call_address_struct_value_sp32): Re-sync with expander.
- (call_symbolic_struct_value_sp32): Likewise.
- (return peepholes): Use 'sparc_skip_caller_unimp' instead
- of custom predicate.
-
-2004-05-07 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c++/14962
- * c-pragma.c (handle_pragma_redefine_extname): Only change
- the assembler name of FUNCTION_DECLs and VAR_DECLs.
-
-2004-05-07 Uros Bizjak <uros@kss-loka.si>
-
- * optabs.h (enum optab_index): Add new OTI_log1p.
- (log1p_optab): Define corresponding macro.
- * optabs.c (init_optabs): Initialize log1p_optab.
- * genopinit.c (optabs): Implement log1p_optab using log1p?f2
- patterns.
- * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LOG1P{,F,L}
- using log1p_optab.
- (expand_builtin): Expand BUILT_IN_LOG1P{,F,L} using
- expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
-
- * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_FYL2XP1.
-
- * config/i386/i386.c (ix86_emit_i387_log1p): New function.
- * config/i386/i386-protos.h (ix86_emit_i387_log1p):
- Prototype here.
- * config/i386/i386.md (UNSPEC_FYL2XP1): New unspec to represent
- x87's fyl2xp1 instruction.
- (*fyl2x_xf3): Rename insn definition to fyl2x_xf3.
- (fyl2xp1_xf3): New pattern to implement fyl2xp1 x87 instruction.
- (log1psf2, log1pdf2, log1pxf2): New expanders to implement log1pf,
- log1p and log1pl built-ins as inline x87 intrinsics.
-
-2004-05-07 Loren James Rittle <ljrittle@acm.org>
-
- * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Proper redefinition.
- * config/arm/freebsd.h: Likewise.
- * config/ia64/freebsd.h: Likewise.
- * config/sparc/freebsd.h: Likewise.
-
-2004-05-07 Hans-Peter Nilsson <hp@axis.com>
-
- PR optimization/15296
- * reorg.c (fill_simple_delay_slots): Use next_real_insn when
- getting last consecutive label at a branch.
- (relax_delay_slots): Similar, near top of loop.
-
-2004-05-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/15202
- * pa.md (movdi, movsi, movhi, movqi): Support move from shift amount
- register to general register.
-
-2004-05-07 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.h (STACK_BOUNDARY): Use 128 bit for either
- TARGET_ALTIVEC or TARGET_ALTIVEC_ABI.
- * config/rs6000/sysv4.h (ABI_STACK_BOUNDARY): Likewise.
- (STACK_BOUNDARY): Delete.
-
-2004-05-06 Stuart Hastings <stuart@apple.com>
-
- * gcc/doc/invoke.texi: Restore -fgcse-after-reload doc from 1.421,
- mistakenly clobbered by 1.423.
-
-2004-05-06 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Document -mvr4130-align.
- * config/mips/mips.h (MASK_VR4130_ALIGN, TARGET_VR4130_ALIGN)
- (TUNE_MIPS4120, TUNE_MIPS4130): New macros.
- (TUNE_MACC_CHAINS): Include TUNE_MIPS4120 and TUNE_MIPS4130.
- (TARGET_SWITCHES): Add -mvr4130-align and -mno-vr4130-align.
- * config/mips/mips.md: Include sched-int.h.
- (USEFUL_INSN_P, SEQ_BEGIN, SEQ_END, FOR_EACH_SUBINSN): New macros.
- (mips_rtx_costs): Set integer multiplication costs for TUNE_MIPS4130.
- (override_options): Enable -mvr4130-align at -O3 and above.
- (mips_sim_insn): New variable.
- (mips_sim): New structure.
- (mips_sim_reset, mips_sim_init, mips_sim_next_cycle, mips_sim_wait_reg)
- (mips_sim_wait_regs_2, mips_sim_wait_regs_1, mips_sim_wait_regs)
- (mips_sim_wait_units, mips_sim_wait_insn, mips_sim_record_set)
- (mips_sim_issue_insn, mips_sim_issue_nop, mips_sim_finish_insn)
- (vr4130_avoid_branch_rt_conflict, vr4130_align_insns): New functions.
- (mips_reorg): Call vr4130_align_insns.
- (vr4130_last_insn): New variable.
- (vr4130_true_reg_dependence_p_1, vr4130_true_reg_dependence_p)
- (vr4130_swap_insns_p, vr4130_reorder): New functions.
- (mips_sched_reorder, mips_variable_issue): Hook in vr4130 code.
- (mips_issue_rate): Return 2 for PROCESSOR_R4130.
- (mips_use_dfa_pipeline_interface): Return true for the same.
- * config/mips/4130.md: New file.
- * config/mips/mips.md: Include it. Add a peephole2 to convert
- "mult;mflo" into "mtlo;macc".
- (*macc, *umul_acc_di, *smul_acc_di): Use $1 rather than $0 as the
- target of maccs.
- (*msac_using_macc): New pattern.
-
-2004-05-06 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/5500.md (ir_vr55_store): Set latency to 0.
- (ir_vr55_hilo): Split into...
- (ir_vr55_mfhilo, ir_vr55_mthilo): ...these new reservations.
- (ir_vr55_imul_si, ir_vr55_imadd): Change latency to 5.
- (ir_vr55_imul_di): Change latency to 9. Reserve vr55_mac for 4 cycles.
- Add various multiplication bypasses.
- * config/mips/mips.c (mips_rtx_costs): Adjust VR5500 costs for integer
- multiplication.
-
-2004-05-06 Uros Bizjak <uros@kss-loka.si>
-
- * config/i386/i386.md (*fscalexf4): Correct insn "mode"
- attribute to "XF".
-
-2004-05-05 Uros Bizjak <uros@kss-loka.si>
-
- * optabs.h (enum optab_index): Add new OTI_fmod and OTI_drem.
- (fmod_optab, drem_optab): Define corresponding macros.
- * optabs.c (init_optabs): Initialize fmod_optab and drem_optab.
- * genopinit.c (optabs): Implement fmod_optab and drem_optab
- using fmod?f3 and drem?f3 patterns.
- * builtins.c (expand_builtin_mathfn_2): Handle BUILT_IN_FMOD{,F,L}
- using fmod_optab and BUILT_IN_DREM{,F,L} using drem_optab.
- (expand_builtin): Expand BUILT_IN_FMOD{,F,L} and
- BUILT_IN_DREM{,F,L} using expand_builtin_mathfn_2 if
- flag_unsafe_math_optimizations is set.
-
- * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_FPREM_F,
- UNSPEC_FPREM_U, UNSPEC_FPREM1_F and UNSPEC_FPREM1_U.
-
- * config/i386/i386.c (ix86_emit_fp_unordered_jump): New function.
- * config/i386/i386-protos.h (ix86_emit_fp_unordered_jump):
- Prototype here.
- * config/i386/i386.md (UNSPEC_FPREM_F, UNSPEC_FPREM_U,
- UNSPEC_FPREM1_F, UNSPEC_FPREM1_U): New unspecs to represent x87's
- fprem and fprem1 instructions.
- (*x86_fnstsw_1): Change input parameter to (reg:CCFP 18).
- Rename insn definition to x86_fnstsw_1.
- (fpremxf4, fprem1xf4): New patterns to implement fprem and fprem1
- x87 instructions.
- (fmodsf3, fmoddf3, fmodxf3): New expanders to implement fmodf, fmod
- and fmodl built-ins as inline x87 intrinsics.
- (dremsf3, dremdf3, dremxf3): New expanders to implement dremf, drem
- and dreml built-ins as inline x87 intrinsics.
-
-2004-05-05 Roger Sayle <roger@eyesopen.com>
-
- * reload1.c (inherit_piecemeal_p): Mark parameters potentially unused.
-
-2004-05-05 Ian Lance Taylor <ian@wasabisystems.com>
-
- PR driver/9822
- * doc/invoke.texi (Spec Files): Remove documentation of %c.
-
-2004-05-05 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md: Update the msub define_split for new mflo/mfhi
- representation.
-
-2004-05-06 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm-protots.h (vfp_mem_operand): Rename ...
- (arm_coproc_mem_operand): ... To this.
- * config/arm/arm.c (arm_legitimate_address_p): Allow ldrd modes.
- (arm_legitimate_index_p): Ditto.
- (vfp_mem_operand): Rename ...
- (arm_coproc_mem_operand): ... To this. Handle writeback modes.
- (vfp_secondary_reload_class): Use it.
- (output_move_double): Use doubleword load/store instructions.
- (arm_hard_regno_mode_ok): Only allow even reg pairs for ldrd.
- * config/arm/arm.h (TARGET_LDRD): Define.
- (EXTRA_CONSTRAINT_STR_ARM): Add 'Uy'.
- * config/gcc/arm/arm.md (arm_movdi): Allow all valid memory operands.
- New splitter for invalid doubleword loads.
- * config/arm/iwmmxt.md (iwmmxt_arm_movdi): Use Uy constraint.
- * config/arm/vfp.md (arm_movdi_vfp): Allow all valid memory operands.
- * doc/md.texi: Document Uy constraint.
-
-2004-05-05 Jan Hubicka <jh@suse.cz>
-
- PR opt/14980
- * cgraphunit.c (cgraph_remove_unreachable_nodes): Deal properly with
- inline clones.
-
-2004-05-05 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/15290
- * config/i386/i386.c (ix86_split_to_parts): Use real_to_target
- instead of REAL_VALUE_TO_TARGET_LONG_DOUBLE.
-
-2004-05-05 Mike Stump <mrs@apple.com>
-
- * config/darwin-c.c (add_framework): Copy the directory name as it
- can be freed later. Also, ensure we always allocate enough room
- for the cached framework information.
- (find_subframework_header): Keep track of the directory where the
- subframework header was found.
- (framework_construct_pathname): Speed up by not trying to re-add a
- framework.
- * cppfiles.c (search_path_exhausted): Arrange for the missing
- header callback to be able to set the directory where the header
- was found.
- (cpp_get_dir): Add.
- * cpplib.h (missing_header_cb): Add a parameter.
- (cpp_get_dir): Add.
-
-2004-05-03 Mike Stump <mrs@apple.com>
-
- * doc/invoke.texi (Directory Options): Document -iquote.
- * doc/cpp.texi: Likewise.
- * doc/cppopts.texi: Likewise.
- * c-opts.c (c_common_missing_argument): Add -iquote processing.
- (c_common_handle_option): Likewise.
- * c.opt (iquote): Add.
- * gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -iquote.
- * c-incpath.c (merge_include_chains): Update comment to use -iquote.
-
- * c-opts.c (case OPT_I): Deprecate -I- support.
- * doc/invoke.texi: Likewise.
- * doc/cpp.texi: Likewise.
- * doc/cppopts.texi: Likewise.
-
-2004-05-05 Steven Bosscher <stevenb@suse.de>
-
- * basic-block.h (free_basic_block_vars): Update prototype.
- * flow.c (free_basic_block_vars): Remove the keep_head_end_p
- argument.
- (life_analysis): Update call.
- * ifcvt.c (if_convert): Likewise.
- * sibcall.c (optimize_sibling_and_tail_recursive_call): Likewise.
- * passes.c (rest_of_handle_final): Likewise.
- (rest_of_compilation): Likewise.
- * config/sh/sh.c (sh_output_mi_thunk): Likewise.
-
- * emit-rtl.c (next_real_insn): Use INSN_P.
- (prev_real_insn): Likewise.
-
-2004-05-05 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.md: Update the madd define_split for new mflo/mfhi
- representation.
-
-2004-05-05 Paolo Bonzini <bonzini@gnu.org>
-
- * config/rs6000/rs6000.c (build_opaque_vector_type):
- New function.
- (rs6000_init_builtins): Use it.
-
-2004-05-04 Bernard Giroud <bgiroud2@free.fr>
-
- * gcc/gcc/vmsdbgout.c (vms_func_node, vms_func_ref): New.
- (func_table): Change type from char ** to vms_func_ref.
- (write_rtnbeg): Update to reflect func_table change. Use
- fde->funcdef_number instead of rtnnum in output.
- (write_rtnend, vmxdbgout_begin_function, vmsdbgout_init): Likewise.
-
-2004-05-04 Paolo Bonzini <bonzini@gnu.org>
- Richard Henderson <rth@redhat.com>
-
- PR target/14899
-
- * c-common.c (vector_types_convertible_p): New function.
- * c-typeck.c (comptypes): Recurse on vector types.
- (convert_for_assignment): Use vector_types_convertible_p.
- (digest_init): Use vector_types_convertible_p to check
- validness of constant vector initializers; otherwise treat
- them as scalars.
- * tree.c (make_or_reuse_type): New.
- (build_common_tree_nodes): Use it.
- * cp/call.c (standard_conversion): Likewise.
- * cp/typeck.c (comptypes): Recurse on vector types.
- (convert_for_assignment): Use vector_types_convertible_p.
-
-2004-05-04 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.c (override_options): Default to no
- generation of branch-likely operations when tuning for
- CPUs where they tend to have a negative performance impact
- (e.g., SB-1).
-
-2004-05-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (store_constructor_field): Don't call store_constructor
- if bitsize is not a multiple of a byte.
-
-2004-05-04 Richard Sandiford <rsandifo@redhat.com>
-
- * reload1.c (inherit_piecemeal_p): New function.
- (emit_reload_insns): When reloading a group of hard registers, use
- inherit_piecemeal_p to decide whether the values of individual hard
- registers can be inherited.
-
-2004-05-04 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/ia64/t-ia64 (LIB2ADDEH): Remove gthr-gnat.c.
- * config/s390/t-tpf (LIB2ADDEHDEP): Likewise.
- * config/t-linux (LIB2ADDEHDEP): Likewise.
-
-2004-05-04 Paul Brook <paul@codesourcery.com>
-
- * config/arm/crti.asm: Push an even number of registers.
- * config/arm/crtn.asm: And restore them. Load via sp.
-
-2004-05-04 Paolo Bonzini <bonzini@gnu.org>
-
- * ggc-zone.c (ggc_alloc_zone_1): Add MEM_STAT_DECL parameter.
- Collect overhead information.
- (ggc_alloc_stat): New name of ggc_alloc. Add MEM_STAT_DECL
- parameter and pass it through.
- (ggc_alloc_typed_stat): New name of ggc_alloc_typed. Add
- MEM_STAT_DECL parameter and pass it through.
- (ggc_alloc_zone_stat): New name of ggc_alloc_zone. Add
- MEM_STAT_DECL parameter and pass it through.
-
-2004-05-03 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000-protos.h: Protoize rs6000_hard_regno_nregs.
-
- * config/rs6000/rs6000.c (rs6000_hard_regno_nregs): New.
-
- * config/rs6000/rs6000.h (HARD_REGNO_NREGS): Call
- rs6000_hard_regno_nregs.
-
-2004-05-03 Eric Christopher <echristo@redhat.com>
-
- * config/s390/s390.c (s390_emit_prologue): Call unspec tpf
- prologue insn instead of setting up call.
- (s390_emit_epilogue): Ditto.
- * config/s390/s390.md (prologue_tpf, epilogue_tpf): New patterns.
- (define_constants): Add numbers for above patterns.
-
-2004-05-03 Eric Christopher <echristo@redhat.com>
-
- * config/s390/s390.h (CONDITIONAL_REGISTER_USAGE): Move body...
- * config/s390/s390.c (s390_conditional_register_usage): ...here.
- * config/s390/s390-protos.h: Prototype.
-
-2004-05-03 Joe Buck <jbuck@welsh-buck.org>
-
- * cppfiles.c (pchf_adder): Eliminate use of |= in d->have_once_only
- assignment.
-
-2004-05-03 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.md: Fix branch length attribute definition.
-
-2004-05-03 Aldy Hernandez <aldyh@redhat.com>
-
- * config.gcc: Remove --enable-altivec support.
-
- * config/rs6000/altivec-defs.h: Remove.
-
-2004-05-03 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (svr4_profil): Don't apply on IRIX 5/6.
- * fixinc/fixincl.x: Regenerate.
-
-2004-05-03 Uros Bizjak <uros@kss-loka.si>
-
- * config/i386/i386.md (*fyl2x_sfxf3, *fyl2x_dfxf3): Remove insn
- definition.
- (log?f2, log10?f2, log2?f2): Reimplement expanders with
- float_truncate insn.
- (*fxtractsf3, *fxtractdf3): Remove insn definition.
- (logb?f2): Reimplement expanders with float_truncate insn.
-
-2004-05-03 Graham Stott <graham.stott@btinternet.com>
-
- PR 14718
- * dwarf2out.c (dwarf2out_imported_module_or_decl): Use
- force_type_die for CONST_DECL.
-
-2004-05-03 Eric Botcazou <ebotcazou@libertysurf.fr>
- Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.gcc (sparc64-*-solaris2*, sparcv9-*-solaris2*): Add
- tm-dwarf2.h to tm_file.
- (sparc-*-solaris2*): Add tm-dwarf2.h to tm_file for Solaris 7+.
- * config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Delete.
- (ASM_DEBUG_SPEC): Delete.
-
-2004-05-03 Uros Bizjak <uros@kss-loka.si>
-
- * optabs.h (enum optab_index): Add new OTI_expm1.
- (expm1_optab): Define corresponding macro.
- * optabs.c (init_optabs): Initialize expm1_optab.
- * genopinit.c (optabs): Implement expm1_optab using expm1?f2
- patterns.
- * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXPM1{,F,L}
- using expm1_optab.
- (expand_builtin): Expand BUILT_IN_EXPM1{,F,L} using
- expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
-
- * config/i386/i386.md (expm1df2, expm1sf2, expm1xf2): New expanders
- to implement expm1, expm1f and expm1l built-ins as inline x87
- intrinsics.
-
-2004-05-02 Alexandre Oliva <aoliva@redhat.com>
-
- 2003-11-19 Richard Sandiford <rsandifo@redhat.com>
- * config/frv/frv.md (*return_true, *return_false): New patterns.
-
-2004-05-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * rtl.h (PHI_NODE_P): Remove.
-
-2004-05-02 Eric Botcazou <ebotcazou@act-europe.fr>
-
- PR middle-end/14988
- * function.c (assign_stack_local_1): Use BITS_PER_UNIT alignment
- when passed -2 as 'align'.
- (put_var_into_stack): Use 'bool' as the type for the three local
- predicates. Adjust calls to put_reg_into_stack.
- When passed a CONCAT, instruct put_reg_into_stack to use
- a consecutive stack slot for the second part.
- (put_reg_into_stack): Remove 'promoted_mode' parameter, add
- 'consecutive_p' parameter. Turn the three predicates into 'bool'
- parameters. Retrieve the register mode from 'reg'.
- When consecutive_p is true, instruct assign_stack_local_1 to use
- BITS_PER_UNIT alignment.
- (put_addressof_into_stack): Use 'bool' as the type for the two
- local predicates. Adjust call to put_reg_into_stack.
-
-2004-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c (fold_convert_const, fold): Add missing
- FIX_ROUND_EXPR case.
-
-2004-05-02 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.ac (FLEX, BISON): Only use tools from the build tree
- if build equals host.
- * configure: Rebuilt.
-
- * config/frv/frv-protos.h (frv_expand_epilogue,
- frv_expand_fdpic_call): Add bool argument.
- * config/frv/frv.c (frv_function_ok_for_sibcall): New.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Define to it.
- (frv_expand_epilogue): Use new argument to decide whether to emit
- return instruction or copy the return address to LR.
- (frv_expand_fdpic_call): Inline PLT entry when emitting direct
- sibcalls.
- (sibcall_operand): New.
- * config/frv/frv.h (PREDICATE_CODES): call_operand doesn't match
- PLUS nor LABEL_REF. Add sibcall_operand.
- * config/frv/frv.md (call, call_value): Pass false to
- frv_expand_fdpic_call.
- (call_fdpicdi, call_value_fdpicdi): Insert %i0 in calll.
- (sibcall, sibcall_internal, sibcall_fdpicdi, sibcall_value,
- sibcall_value_internal, sibcall_value_fdpicdi): New.
- (return_unsigned_true, return_unsigned_false): New.
- (epilogue): Adjust call to frv_expand_epilogue.
- (sibcall_epilogue): New.
-
- * config/frv/frv.h (ASM_SPEC): Pass -mno-fdpic as -mnopic.
- (CPP_SPEC, CPP_SIMPLE_SPEC): Undefine __FRV_ACC__ and __FRV_FPR__
- before redefining them.
-
-2004-05-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_fixed_mathfn): New function.
- (fold_builtin_lround, fold_builtin): Use it.
-
-2004-05-01 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/linux64.h (TARGET_DEFAULT): Make 64-bit by default
- also for TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3.
-
-2004-05-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/cris/cris.h: Revert my "fix comment typos" patch.
-
-2004-05-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (TUNE_MACC_CHAINS): Fix comment.
-
-2004-05-01 Falk Hueffner <falk@debian.org>
-
- * config/alpha/alpha.md (builtin_insbl, builtin_inswl,
- builtin_insll): Disallow 0 as first input operand.
-
-2004-05-01 Falk Hueffner <falk@debian.org>
-
- * config/alpha/alpha.c (alpha_rtx_costs): Fix shiftadd costs.
-
-2004-05-01 Ulrich Weigand <uweigand@de.ibm.com>
-
- PR middle-end/15054
- * expr.c (expand_expr_real): Do not call preserve_temp_slots
- on a TARGET_EXPR temp.
- * function.c (assign_stack_temp_for_type): Set 'keep' flag for
- TARGET_EXPR temp slots.
-
-2004-05-01 Paolo Bonzini <bonzini@gnu.org>
-
- * simplify-rtx.c (simplify_ternary_operation): When
- converting an IF_THEN_ELSE to a relational op, return
- correct mode.
-
-2004-04-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin_round): Fix comment typo.
- (fold_builtin_lround): New function.
- (fold_builtin): Use it.
-
-2004-04-20 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/11608
- * config/sh/elf.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Update and make it
- more like the one in config/dbxelf.h.
-
-2004-04-30 Zack Weinberg <zack@codesourcery.com>
-
- * tree.h (SET_ARRAY_OR_VECTOR_CHECK): Rename to SET_OR_ARRAY_CHECK
- and adjust definition accordingly.
- (TYPE_DOMAIN): Allow only SET_TYPE and ARRAY_TYPE.
- (TYPE_DEBUG_REPRESENTATION_TYPE): Allow only VECTOR_TYPE.
- * expr.c (store_constructor): Do not access TYPE_DOMAIN of a
- VECTOR_TYPE.
-
-2004-04-30 Jason Merrill <jason@redhat.com>
-
- PR c++/14587
- * config/i386/winnt.c (associated_type): Look for attributes on
- the TYPE_MAIN_VARIANT of *this.
- * attribs.c (decl_attributes): If ATTR_FLAG_TYPE_IN_PLACE, also
- apply the attributes to the variants.
-
-2004-04-30 Paul Brook <paul@codesourcery.com>
-
- * config.gcc: Simplify arm --with-{cpu,tune} test.
- * config/arm/arm-cores.def: Document whitespace restrictions.
-
-2004-04-30 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- PR other/1963
- * config/alpha/osf.h (SWITCHES_NEED_SPACES): Define.
-
-2004-04-30 Brian Ford <ford@vss.fsi.com>
- DJ Delorie <dj@redhat.com>
-
- * config/i386/cygming.h [HAVE_GAS_PE_SECREL32_RELOC]
- (DWARF2_DEBUGGING_INFO): Define to enable.
- (DBX_REGISTER_NUMBER): Define to use the svr4 register map for
- DWARF2.
- * configure.ac (Target-specific assembler checks)
- <i[34567]86-*-[cygwin*|pe|mingw32*]>: New test for .secrel32
- relocs.
- * configure: Regenerate.
- * config.in: Likewise.
-
- * config/i386/cygming.h [HAVE_GAS_PE_SECREL32_RELOC]
- (ASM_OUPUT_DWARF_OFFSET): Define.
-
-2004-04-29 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_emit_epilogue): Parameter added.
- (s390_emit_call): New function prototype added.
- (s390_tls_get_offset): Function removed.
- * config/s390/s390.c (s390_function_ok_for_sibcall,
- s390_call_saved_register_used_p): New functions.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Definition of target macro added.
- (s390_tls_get_offset): Function merged into s390_emit_tls_call_insn.
- (s390_emit_tls_call_insn): New function.
- (legitimize_tls_address): Call s390_emit_tls_call_insn instead of
- emit_call_insn.
- (s390_emit_prologue): Use s390_emit_call instead of emit_call_insn.
- (s390_emit_epilogue): Like s390_emit_prologue. Parameter for sibcalls
- added.
- * config/s390/s390.h (SIBCALL_REGNUM): New macro representing the
- register number used to hold the target address for sibcalls.
- * config/s390/s390.md ("sibcall", "sibcall_value", "sibcall_epilogue"):
- New expanders.
- ("*sibcall_br", "*sibcall_brc", "*sibcall_brcl", "*sibcall_value_br",
- "*sibcall_value_brc", "*sibcall_value_brcl"): New insns.
- ("call_exp", "call_value_exp", "call_value_tls", "call_value_tls_exp"):
- Expanders removed.
- ("call", "call_value"): Call s390_emit_call to emit the call patterns.
- ("*bras", "*brasl", "*bras_r", "*brasl_r", "*bras_tls", "*brasl_tls",
- "*basr", "*basr_r", "*basr_tls"): Added constraint: !SIBLING_CALL_P.
- ("epilogue"): Changed the call to s390_emit_epilogue to use the
- new parameter.
-
-2004-04-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * bb-reorder.c, c-opts.c, cfglayout.c, cgraph.c, cgraphunit.c,
- cppfiles.c, fold-const.c, ggc-zone.c, loop-doloop.c, optabs.c,
- reg-stack.c, varasm.c, config/alpha/ev4.md,
- config/alpha/ev5.md, config/alpha/ev6.md, config/arm/arm.c,
- config/c4x/c4x.c, config/c4x/c4x.md, config/cris/cris.c,
- config/cris/cris.h, config/fr30/fr30.h, config/frv/frv.c,
- config/frv/frv.h, config/frv/frv.md, config/h8300/h8300.c,
- config/i386/i386.c, config/i386/i386.md, config/i386/winnt.c,
- config/ia64/itanium2.md, config/ip2k/ip2k.c,
- config/mips/mips.c, config/mips/mips.h, config/mips/sr71k.md,
- config/pa/pa.c, config/s390/s390.c, config/sh/sh.c: Fix
- comment typos.
-
-2004-04-30 Paul Brook <paul@codesourcery.com>
-
- * config.gcc: Default ep9312 to hard-float.
- * config/arm/arm-cores.def: Add ARCH field.
- * config/arm/arm.c (FL_FOR_ARCH*): Define.
- (arm_arch_cirrus): New variable.
- (all_cores): Set and use arch.
- (all_architectures): Ditto.
- (arm_arch_name): New variable.
- (arm_override_options): Set it. Use [SUB]TARGET_CPU_DEFAULT.
- Set and use arm_arch_cirrus.
- * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Set arch defines.
- (enum processor_type): Update ARM_CORE define.
- (enum target_cpus): Add. Replaces TARGET_CPU_* defines.
- (CPP_SPEC): Remove %(cpp_cpu_arch).
- (CPP_ARCH_DEFAULT_SPEC): Remove.
- (CPP_CPU_ARCH_SPEC): Remove.
- (EXTRA_SPECS): Don't use CPP_*ARCH*_SPEC.
- (FPUTYPE_DEFAULT): Don't define here.
-
-2004-04-30 J"orn Rennecke <joern.rennecke@superh.com>
-
- * flow.c (propagate_one_insn): Call mark_set_regs for stack pointer
- updates too.
-
-2004-04-30 Paul Brook <paul@codesourcery.com>
-
- * arm.c (arm_needs_doubleword_align): Use mode alignment.
-
-2004-04-30 Paolo Bonzini <bonzini@gnu.org>
-
- * config/altivec/altivec.h [__cplusplus] (vec_subsubs): Rename to
- vec_sububs.
- [__cplusplus] (vec_subsuhs): Rename to vec_subuhs, without
- duplicates.
-
-2004-04-30 Uros Bizjak <uros@kss-loka.si>
-
- * config/i386/i386.md (atansf2, atandf2, atanxf2): Move near
- atan2?f3 expanders.
-
-2004-04-29 Nick Clifton <nickc@redhat.com>
-
- Bug 14093
- * config/sh/sh-protos.h (sh_promote_prototypes): Declare.
- * config/sh/sh.c (sh_promote_prototypes): Remove declaration.
- Delete static from definition.
- * config/sh/sh.h (FUNCTION_VALUE): Add sh_promote_prototypes call.
-
-2004-04-30 Uros Bizjak <uros@kss-loka.si>
-
- * reg-stack.c (subst_stack_regs_pat): <UNSPEC_SIN, UNSPEC_COS,
- UNSPEC_FRNDINT, UNSPEC_F2XM1>: abort() if src1 dies.
- <UNSPEC_SINCOS_COS, UNSPEC_TAN_ONE, UNSPEC_XTRACT_FRACT>: Same.
- <UNSPEC_SINCOS_SIN, UNSPEC_TAN_TAN, UNSPEC_XTRACT_EXP>: Same.
-
-2004-04-29 Richard Guenther <richard.guenther@uni-tuebingen.de>
-
- * commom.opt (Wfatal-errors): Add it.
- * diagnostic.c (flag_fatal_errors): Define it.
- (diagnostic_action_after_output): Check for flag_fatal_errors.
- * flags.h (flag_fatal_errors): Declare it.
- * opts.c (common_handle_option): Add OPT_Wfatal_errors.
- * doc/invoke.texi (Warning Options): Document -Wfatal-errors.
-
-2004-04-30 Josef Zlomek <zlomekj@suse.cz>
-
- * gcse.c (remove_reachable_equiv_notes): Delete notes also in
- blocks which have kill flag set.
-
-2004-04-29 Ben Elliston <bje@au.ibm.com>
-
- * configure.ac (--with-as): Abort if user-supplied assembler
- cannot be executed.
- (--with-ld): Likewise for the linker.
- * configure: Regenerate.
-
-2004-04-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * convert.c (convert_to_integer): Ensure `long_integer_type_node'
- isn't NULL before using it.
-
-2004-04-29 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/15189
- * config/mips/mips.md (load_df_low): Use default length.
- (load_df_high, store_df_high): Likewise.
-
-2004-04-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mips/mips.md, config/mips/sb1.md,
- config/rs6000/rs6000.c: Fix comment typos.
-
-2004-04-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.c, cgraph.c, cgraphunit.c, final.c, fold-const.c:
- Fix comment typos.
-
-2004-04-29 Douglas B Rupp <rupp@gnat.com>
-
- * gcc.c (DELETE_IF_ORDINARY): New macro default definition.
- (delete_if_ordinary): Use above macro.
- * config/alpha/xm-vms.h (DELETE_IF_ORDINARY): New macro VMS definition.
- Update copyright.
- * doc/hostconfig.texi (DELETE_IF_ORDINARY): Document new macro.
-
-2004-04-29 Richard Earnshaw <rearnsha@arm.com>
-
- * c-decl.c (get_parm_info): Use the correct tag keywords when
- warning about type declarations in prototypes.
-
-2004-04-29 Paul Brook <paul@codesourcery.com>
-
- * config.gcc: Pull list of cores from arm-cores.def.
-
-2004-04-29 Paolo Bonzini <bonzini@gnu.org>
-
- * combine.c (combine_simplify_rtx): Adjust call to use
- simplify_relational_operation. Do not use SELECT_CC_MODE
- when a comparison already has a MODE_CC mode.
-
-2004-04-29 Paolo Bonzini <bonzini@gnu.org>
-
- (simplify_set): simplify_relational_operation may now
- return another relational expression.
- * cse.c (fold_rtx): simplify_relational_operation now
- takes of computing the comparison mode.
- * dojump.c (compare_from_rtx): Use simplify_relational_operation,
- remove dead code.
- (do_compare_rtx_and_jump): Likewise.
- * integrate.c (subst_constants): simplify_relational_operation
- may now return another relational expression.
- * simplify-rtx.c (simplify_gen_relational): Move most code to
- the new simplify_relational_operation and
- simplify_relational_operation_1 functions.
- (simplify_relational_operation): Rewritten.
- (simplify_relational_operation_1): New function.
- (simplify_ternary_operation): simplify_relational_operation
- may now return another relational expression.
- (simplify_rtx): Remove unnecessary temp variable.
-
-2004-04-29 Uros Bizjak <uros@kss-loka.si>
-
- * reg-stack.c (swap_to_top): New function.
- (subst_stack_regs_pat): UNSPEC_FPATAN, UNSPEC_FYL2X: Use
- swap_to_top().
- (subst_stack_regs_pat): UNSPEC_FSCALE: Remove.
- (subst_stack_regs_pat): Handle UNSPEC_FSCALE_FRACT and
- UNSPEC_FSCALE_EXP.
-
- * config/i386/i386.md (UNSPEC_FSCALE): Remove.
- (*fscale_sfxf3, *fscale_dfxf3, *fscale_xf3): Remove insn pattern.
- (UNSPEC_FSCALE_FRACT, UNSPEC_FSCALE_EXP): New unspecs to represent
- x87's fscale insn.
- (*fscalexf4: Define new insn pattern to implement x87 fscale insn.
- (exp?f2, exp10?f2, exp2?f2): Use *fscalexf4 and float_truncate
- patterns.
-
-2004-04-28 Serge Belyshev <1319@bot.ru>
-
- PR 14944
- * coverage.c (read_counts_file): Fix usage of warning () call.
- * pretty-print.c (pp_base_format_text): Fix typo in the comment.
-
-2004-04-28 Ben Elliston <bje@au.ibm.com>
-
- * doc/invoke.texi (Objective-C Dialect Options): Don't prefix
- options with "-" in the option index.
- (SPARC Options): Likewise.
- (M32R/D Options): Likewise.
-
-2004-04-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * convert.c (convert_to_integer): Convert (long)round -> lround,
- etc.
-
-2004-04-28 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000.c (registers_ok_for_quad_peep):
- Return false if we do not have fp register.
- (addrs_ok_for_quad_peep): Rename to ...
- (mems_ok_for_quad_peep): this.
- Add check for volatile memory.
- * config/rs6000/rs6000-protos.h (addrs_ok_for_quad_peep):
- Rename to ...
- (mems_ok_for_quad_peep): this.
- * config/rs6000/rs6000.md: Change peephole's for lfq/stq
- to peephole2's.
- (lfq_power2): New instruction.
- (stfq_power2): Likewise.
-
-2004-04-28 Jan Hubicka <jh@suse.cz>
-
- PR c/15004
- * function.c (do_warn_unused_parameter): Break out form ...
- (expand_function_end): ... here; warn only when not using cgraphunit.
- * function.h (do_warn_unused_parameter): Declare.
- * cgraphunit.c: Include function.h.
- (cgraph_finalize_function): Do unused parameter warning.
- * Makefile.in (cgraphunit.o): Depend on function.h
-
-2004-04-28 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * Makefile.in ($(DESTDIR)$(infodir)/%.info): Don't condition
- calling install-info on $(DESTDIR)$(infodir)/dir already being
- present.
-
-2004-04-28 Paul Brook <paul@codesourcery.com>
-
- * dwarf2out.c (mem_loc_descriptor): Handle shifts.
-
-2004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * gcse.c (find_moveable_store): Do not accept store insns with
- REG_EH_REGION note.
-
-2004-04-28 Paul Brook <paul@codesourcery.com>
-
- * calls.c (precompute_arguments): Remove PROMOTE_FOR_CALL_ONLY.
- * function.c (assign_temp): Ditto.
- * system.h (PROMOTE_FOR_CALL_ONLY): Poison.
-
-2004-04-28 Paul Brook <paul@codesourcery.com>
-
- * config/arm/lib1funcs.asm: Recognize armv5tej and armv6.
-
-2004-04-28 Josef Zlomek <zlomekj@suse.cz>
-
- * var-tracking.c (variable_different_p): Add a parameter
- compare_current_location, compare current location of variable parts
- if it is true.
- (dataflow_set_different_1): Pass compare_current_location == false.
- (dataflow_set_different_2): Pass compare_current_location == false.
- (emit_notes_for_differences_1): Pass compare_current_location == true.
-
-2004-04-28 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("casesi"): Mark jump table access as
- non-trapping and unchanging.
-
-2004-04-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR debug/14829
- * dwarf2out.c (reg_number): Rename to dbx_reg_number. Adjust all
- callers.
- (multiple_reg_loc_descriptor, reg_loc_descriptor): Use gcc register
- number for indexing hard_regno_nregs array.
-
-2004-04-27 Geoffrey Keating <geoffk@apple.com>
-
- * config/darwin.h (STARTFILE_SPEC): Use %s to find crt2.o.
- * config/darwin-crt2.c: Only have contents on __ppc__.
-
-2004-04-27 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (call_insn_operand): Check
- SYMBOL_REF_EXTERNAL_P in addition to SYMBOL_REF_LOCAL_P.
- * config/xtensa/xtensa.h (LEGITIMATE_PIC_OPERAND): Likewise.
- * config/xtensa/xtensa.md (call, call_value): Likewise.
-
-2004-04-27 Wu Yongwei <adah@sh163.net>
-
- * gthr-win32.h (__gthread_mutex_t): Change typedef to new structure.
- (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
- (__gthread_mutex_init_function): Replace CreateMutex with
- initialization of custom mutex using CreateSemaphore.
- (__gthread_mutex_lock): Use InterlockedIncrement.
- (__gthread_mutex_trylock): Use InterlockedCompareExchange.
- (__gthread_mutex_unlock): Use InterlockedDecrement and
- ReleaseSemaphore to unlock
- * config/i386/gthr-win32.c (__gthread_mutex_init_function,
- __gthread_mutex_lock, __gthread_mutex_trylock,
- __gthread_mutex_unlock): Adjust to match inline versions in
- gthr-win32.h.
-
-2004-04-27 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_promote_prototypes): New function.
- (TARGET_PROMOTE_PROTOTYPES): Use it.
-
-2004-04-27 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_expand_epilogue): Count blocks of 4 regs.
-
-2004-04-26 Bernard Giroud <bgiroud@free.fr>
-
- * config/alpha.c (alpha_end_function): For OpenVMS gas,
- correctly output .pdesc directive before .end.
-
-2004-04-26 James E Wilson <wilson@specifixinc.com>
-
- Bug 14927
- * config/ia64/ia64.md (movxf): New local op0. Handle case where
- operands[0] is a SUBREG. Handle case where operands[1] is a GR reg.
-
-2004-04-26 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/hpux.h: Predefine __STDCPP__ when compiling C++.
- * config/pa/pa-hpux10.h: Likewise.
- * config/pa/pa-hpux11.h: Likewise.
-
-2004-04-26 Geoffrey Keating <geoffk@apple.com>
-
- * doc/invoke.texi (Overall Options): Document default for -o
- for PCH files.
-
-2004-04-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * builtins.c (expand_builtin_update_setjmp_buf): New function.
- (expand_builtin, case BUILT_IN_UPDATE_SETJMP_BUF): New case.
- * builtins.def (BUILT_IN_UPDATE_SETJMP_BUF): New code.
-
-2004-04-26 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_legitimate_index_p): Correct iwmmxt offsets.
-
-2004-04-26 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_legitimate_index_p): Correct maverick offsets.
-
-2004-04-25 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold): Prefer fold_convert (negate_expr (...)) to
- fold (build1 (NEGATE_EXPR, ...)). Optimize X / -1 as -X and
- X % -1 as 0.
-
-2004-04-26 Hans-Peter Nilsson <hp@bitrange.com>
-
- PR bootstrap/15141
- * except.c (connect_post_landing_pads): Delete insns after the
- barrier when generating a unwind_resume_libfunc call.
-
-2004-04-25 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- PR/c++ 15119
- * tree.c (substitute_placeholder_in_expr, case 4): New case,
- for TARGET_EXPR.
-
-2004-04-25 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * gcov-io.h (__gcov_fork, __gcov_execl, __gcov_execlp, __gcov_execle,
- __gcov_execv, __gcov_execvp, __gcov_execve): Do not declare when
- inhibit_libc is defined.
-
-2004-04-25 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_linked_macc_p): Declare.
- * config/mips/mips.h (TUNE_MACC_CHAINS): New macro.
- * config/mips/mips.c (TARGET_SCHED_REORDER): Define.
- (TARGET_SCHED_VARIABLE_ISSUE): Define.
- (mips_adjust_cost): Move later in file, next to other sched hooks.
- (mips_macc_chains_last_hilo): New variable.
- (mips_linked_madd_p, mips_macc_chains_record, mips_macc_chains_reorder)
- (mips_promote_ready, mips_sched_reorder, mips_variable_issue): New.
- * config/mips/mips.md (may_clobber_hilo): New attribute.
-
-2004-04-24 Roger Sayle <roger@eyesopen.com>
- Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def (aix_syswait_2): New fix.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/sys/wait.h: Update for new test.
-
-2004-04-24 Alan Modra <amodra@bigpond.net.au>
-
- PR target/14960
- * config/rs6000/rs6000.c (rs6000_stack_info): Rename total_raw_size
- to non_fixed_size, and leave out fixed_size from the sum.
- (generate_set_vrsave): Correct clobbers.
- (rs6000_emit_epilogue): Test TARGET_ALTIVEC with TARGET_ALTIVEC_SAVE.
- (rs6000_function_value): Test TARGET_ALTIVEC and TARGET_ALTIVEC_ABI.
- (rs6000_libcall_value): Likewise.
- * config/rs6000/rs6000.h (FUNCTION_VALUE_REGNO_P): Likewise.
- (FUNCTION_ARG_REGNO_P): Likewise.
-
-2004-04-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- * expmed.c (expand_mult_highpart_adjust): Do not assume OP1
- is a CONST_INT.
- (expand_mult_highpart_optab): Call expand_mult_highpart_adjust
- with NARROW_OP1 instead of OP1.
-
-2004-04-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/host-linux.c (TRY_EMPTY_VM_SPACE): Define for __s390__
- and __s390x__ hosts.
-
-2004-03-23 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (LIBGCOV): Add _gcov_fork, _gcov_execl, _gcov_execlp,
- _gcov_execle, _gcov_execv, _gcov_execvp, _gcov_execve.
- * builtin-types.def (BT_PID, BT_PTR_CONST_STRING, BT_FN_PID,
- BT_FN_INT_CONST_STRING_PTR_CONST_STRING,
- BT_FN_INT_CONST_STRING_PTR_CONST_STRING_PTR_CONST_STRING): New.
- * builtins.c (expand_builtin_fork_or_exec): New.
- (expand_builtin): Call it.
- * builtins.def (BUILT_IN_EXECL, BUILT_IN_EXECLP,BUILT_IN_EXECLE,
- BUILT_IN_EXECV, BUILT_IN_EXECVP, BUILT_IN_EXECVE, BUILT_IN_FORK): New.
- * c-common.c (PID_TYPE): New macro.
- (c_common_nodes_and_builtins): Initialize pid_type_node.
- * calls.c (special_function_p): Do not handle fork and exec.
- (expand_call): Do not handle ECF_FORK_OR_EXEC.
- * gcov-io.h (__gcov_fork, __gcov_execl, __gcov_execlp, __gcov_execle,
- __gcov_execv, __gcov_execvp, __gcov_execve): Declare.
- * libgcov.c (__gcov_fork, __gcov_execl, __gcov_execlp, __gcov_execle,
- __gcov_execv, __gcov_execvp, __gcov_execve): New.
- * tree.h (enum tree_index): Add TI_PID_TYPE.
- (pid_type_node): New macro.
- (ECF_FORK_OR_EXEC): Removed.
-
-2004-04-23 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/13985
- * cfgloopmanip.c (fix_loop_placements): New prototype.
- Call fix_bb_placements on the preheader of loops that have
- been reparented.
- (remove_path): Adjust call to fix_loop_placements.
-
-2004-04-23 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/darwin7.h: New file.
- * config.gcc (*-*-darwin*): Add darwin7.h if the
- version is greater than 6.
- * config/darwin.h (TARGET_C99_FUNCTIONS): Define.
- (MATH_LIBRARY): Wrap in ifdefs.
-
-2004-04-23 Daniel Jacobowitz <drow@mvista.com>
-
- * config/arm/arm.c (arm_output_epilogue): Reverse the order of
- loading iWMMXt registers with a frame pointer. Use post-increment
- without a frame pointer.
- (arm_expand_prologue): Reverse the order of saving iWMMXt registers.
-
-2004-04-23 Paolo Bonzini <bonzini@gnu.org>
-
- * doc/invoke.texi (Optimize Options): Refer to "unit-at-a-time
- mode" rather than "-funit-at-a-time" since -O2 enables it
- without requiring -f* options. Refer to -fprofile-generate and
- -fprofile-use correctly. Move -funit-at-a-time among options
- enabled by -O. Add information about unit-at-a-time caveats.
-
-2004-04-22 Per Bothner <per@bothner.com>
-
- * line-map.h (struct line_maps): New field highest_line.
- (linemap_position_for_column): Make non-inline function.
- (LINEMAP_POSITION_FOR_COLUMN): New macro.
- * line-map.c (linemap_init): Clear highest_line field.
- (linemap_add): Set highest_line field.
- (linemap_line_start): Minor optimization - use highest_line field.
- Reduce maximum column hint to 10000. Update highest_line field.
- (linemap_position_for_column): Moved from line-map.h. Optimize a bit.
- * cpphash.h (struct cpp_reader): Remove line field - instead use
- line_table->highest_line.
- (saved_line): Remove unused field.
- (CPP_INCREMENT_FILE): Don't do linemap_lookup - just use newest map.
- Use line_table's highest_line field instead of cpp_reader's line.
- * cpplib.c (start_directive): Likewise use highest_line field.
- (do_line, do_linemarker): Likewise just use newest map.
- (_cpp_do_file_change): Don't need to set cpp_reader's line field.
- * cpperror.c (cpp_error): Likewise use highest_line field.
- * cppfiles.c (open_file_failed: Likewise.
- (cpp_make_system_header): Likewise use newest map and highest_line.
- * cppinit.c (cpp_create_reader): Don't initialize removed field.
- * cpplex.c (_cpp_process_line_notes, _cpp_skip_block_comment,
- skip_line_comment, skip_whitespace, _cpp_get_fresh_line,
- _cpp_lex_direct): Likewise use highest_line.
- (_cpp_lex_direct): Use new LINEMAP_POSITION_FOR_COLUMN macro.
- * cppmacro.c (_cpp_builtin_macro_text): Likewise use highest_line,
- and use newest map.
- * cpppch.c (cpp_read_state): Don't save+restore cpp_reader's line.
- * cpptrad.c (_cpp_overlay_buffer): Don't save cpp_reader's line.
- (copy_comment, _cpp_scan_out_logical_line): Likewise use highest_line.
-
-2004-04-23 Alan Modra <amodra@bigpond.net.au>
-
- PR bootstrap/14992
- * gcc.c (init_gcc_specs): Test USE_LD_AS_NEEDED, not HAVE_LD_AS_NEEDED.
- * config/linux.h (USE_LD_AS_NEEDED): Define.
- * gcc/config/alpha/linux.h (USE_LD_AS_NEEDED): Define.
- * gcc/config/arm/linux-elf.h (USE_LD_AS_NEEDED): Define.
- * gcc/config/rs6000/linux.h (USE_LD_AS_NEEDED): Define.
- * gcc/config/rs6000/linux64.h (USE_LD_AS_NEEDED): Define.
- * gcc/config/sh/linux.h (USE_LD_AS_NEEDED): Define.
- * gcc/config/sparc/linux.h (USE_LD_AS_NEEDED): Define.
- * gcc/config/sparc/linux64.h (USE_LD_AS_NEEDED): Define.
-
-2004-04-22 Per Bothner <per@bothner.com>
-
- * cppinit.c (cpp_read_main_file): Return NULL rather than false.
- Fixes PR preprocessor/15067.
-
-2004-04-23 Andreas Schwab <schwab@suse.de>
-
- * config/ia64/ia64intrin.h: Add intermediate cast to void * to
- avoid aliasing warning.
-
-2004-04-22 Jan Hubicka <jh@suse.cz>
- Mostafa Hagog <mustafa@il.ibm.com>
-
- * cfgloopmanip.c (scale_bbs_frequencies): Use RDIV macro
- * cfgloopanal.c (expected_loop_iterations): Change the return value
-
-2004-04-22 Jakub Jelinek <jakub@redhat.com>
-
- * cselib.h (struct elt_loc_list): Remove canon_loc field.
- * cselib.c (new_elt_loc_list): Remove canon_loc initialization.
- (cselib_invalidate_mem): Remove all canon_loc and canon_x
- traces.
-
-2004-04-22 Josef Zlomek <zlomekj@suse.cz>
-
- Revert
- 2004-04-20 Josef Zlomek <zlomekj@suse.cz>
-
- * var-tracking.c (variable_part_different_p): Variable parts
- differ when the most recent locations differ.
-
-2004-04-22 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Remove the MIPS -membedded-pic option.
- * config/mips/mips-protos.h (embedded_pic_fnaddr_reg): Delete.
- (embedded_pic_offset): Delete.
- * config/mips/mips.h (MASK_EMBEDDED_PIC): Delete. Shuffle other
- MASK_* constants.
- (TARGET_EMBEDDED_PIC): Delete.
- (TARGET_SWITCHES): Remove -m{no-,}embedded-pic.
- (ASM_SPEC): Remove -membedded-pic.
- (ASM_OUTPUT_ADDR_DIFF_ELT): Remove embedded-pic handling.
- (ASM_OUTPUT_CASE_LABEL): Likewise.
- * config/mips/vxworks.h (ASM_SPEC): Remove -membedded-pic.
- * config/mips/windiss.h (ASM_SPEC): Likewise.
- * config/mips/mips.c (struct machine_function): Remove
- embedded_pic_fnaddr_rtx.
- (TARGET_ENCODE_SECTION_INFO): Remove override.
- (embedded_pic_fnaddr_reg, embedded_pic_offset): Delete.
- (override_options): Remove -membedded-pic handling.
- (print_operand): Remove handling of '%S'.
- (mips_select_section: Remove -membedded-pic handling.
- (mips_encode_section_info): Delete.
- (mips_output_conditional_branch): Remove mention of -membedded-pic.
- * config/mips/mips.md (define_attr length, movsi, movdi, jump): Remove
- -membedded-pic handling.
- (casesi, casesi_internal, casesi_internal_di, get_fnaddr): Delete.
-
-2004-04-22 Alan Modra <amodra@bigpond.net.au>
-
- * var-tracking.c (frame_base_decl): Remove useless GTY.
-
-2004-04-21 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Error when
- user wants altivec and e500 instructions.
-
-2004-04-21 H.J. Lu <hongjiu.lu@intel.com>
-
- PR target/14813
- * config/ia64/crtend.asm: Move pointer to __do_global_ctors_aux
- in .init_array section to ...
- * config/ia64/crtbegin.asm: Here.
-
- * config/ia64/crtend.asm: Mark __do_global_ctors_aux global
- and hidden if HAVE_INITFINI_ARRAY is defined.
-
-2004-04-21 James E Wilson <wilson@specifixinc.com>
-
- * config/mips/mips-protos.h (fp_register_operand, lo_operand): Declare.
- * config/mips/mips.c (mips_multipass_dfa_lookahead): Declare.
- (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): New.
- (fp_register_operand, lo_operand): New.
- (mips_rtx_costs): Add TUNE_SB1 support.
- (mips_issue_rate): Add comment. Add PROCESSOR_SB1 support.
- (mips_use_dfa_pipeline_interface): Add PROCESSOR_SB1 support.
- (mips_multipass_dfa_lookahead): New.
- * config/mips/mips.h (MASK_FP_EXCEPTIONS, TARGET_FP_EXCEPTIONS,
- TUNE_SB1): New.
- (TARGET_SWITCHES): Add -mfp-exceptions support.
- (TARGET_FP_EXCEPTIONS_DEFAULT): New.
- (BRANCH_COST): Fix whitespace.
- * config/mips/mips.md: Include sb1.md.
- * config/mips/sb1.md: New file.
- * doc/invoke.texi: Document -mfp-exceptions.
-
- * Makefile.in (fixinc.sh): Don't set or export WARN_CFLAGS. Fix
- comment.
- * fixinc/Makefile.in (FL_LIST): Don't mention WARN_CFLAGS.
- (fixincl.o-warn): Delete.
-
-2004-04-21 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000 (print_operand) ['z']:
- Change ifdef of TARGET_MACHO to if TARGET_MACHO.
-
-2004-04-21 Daniel Jacobowitz <drow@mvista.com>
-
- * config.gcc: Support --with-arch=iwmmxt for ARM.
-
-2004-04-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expmed.c (expand_mult_highpart_optab): Use narrower version of OP1
- in two more places; remove unneeded force_reg
-
-2004-04-21 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000.c (symbol_ref_operand): Remove hack
- for TARGET_MACHO.
- (print_operand): For TARGET_MACHO check to see if we need a stub
- and output one if we need it.
-
- PR debug/15033
- * dwarf2out.c (rtl_for_decl_location): Check for NULL
- rtl.
-
-2004-04-20 James E Wilson <wilson@specifixinc.com>
-
- * config/ia64/ia64.md (call_value_nogp): Add constraints for op0.
- (vall_value_gp): Likewise.
-
-2004-04-20 DJ Delorie <dj@redhat.com>
-
- * dwarf2out.c (rtl_for_decl_location): Adjust rtl for byte
- variables stored in word registers, then in memory.
-
-2004-04-20 Eric Christopher <echristo@redhat.com>
-
- * cp/parser.c (cp_parser_declaration): Move translate
- up before tokens are lexed.
-
-2004-04-20 Uros Bizjak <uros@kss-loka.si>
-
- * optabs.h (enum optab_index): Add new OTI_asin and OTI_acos.
- (asin_optab, acos_optab): Define corresponding macros.
- * optabs.c (init_optabs): Initialize asin_optab and acos_optab.
- * genopinit.c (optabs): Implement asin_optab and acos_optab
- using asin?f2 and acos?f2 patterns.
- * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_ASIN{,F,L}
- using asin_optab, and BUILT_IN_ACOS{,F,L} using acos_optab.
- (expand_builtin): Expand BUILT_IN_ASIN{,F,L} and BUILT_IN_ACOS{,F,L}
- using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
-
- * config/i386/i386.md (asindf2, asinsf2, asinxf2, acosdf2,
- acossf2, acosxf2): New expanders to implement asin, asinf, asinl,
- acos, acosf and acosl built-ins as inline x87 intrinsics.
-
-2004-04-20 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_legitimate_address_p): Use rtx_equal_p.
-
-2004-04-20 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_expand_prologue): Fix size calculation.
-
-2004-04-20 Paolo Bonzini <bonzini@gnu.org>
-
- Revert part of 2004-04-17 change that moved -frename-registers
- to -O1. -frename-registers is buggy.
-
- * toplev.c (flag_rename_registers): Initialize to 0.
- * doc/invoke.texi (Optimize options): Move -frename-registers
- to "Not triggered by any -O level" section. Adjust commentary
- accordingly.
-
-2004-04-20 Anil Paranjpe <anilp1@kpitcummins.com>
-
- * toplev.c (compile_file): Move targetm.asm_out.file_end call to end.
-
-2004-04-20 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_legitimize_move): Generate special patterns
- for mflo and mfhi instructions.
- (mips_output_move): Remove mflo and mfhi handling.
- * config/mips/mips.md (UNSPEC_MFHILO): New unspec.
- (*mulsidi3_64bit): Update for new mfhi/mflo representation.
- Likewise various define_peephole2s.
- (*movdi_32bit, *movdi_64bit, *movsi_internal): Merge x<-J and x<-d
- alternatives.
- (*movdi_64bit, *movdi_64bit_mips16, *mov[shq]i_internal)
- (*mov[shq]i_mips16): Remove mflo and mfhi alternatives.
- (mfhilo_di, mfhilo_si): New patterns.
-
-2004-04-20 Josef Zlomek <zlomekj@suse.cz>
-
- * function.c (assign_parms): Force
- MEM_EXPR (DECL_INCOMING_RTL (parm)) == parm.
-
-2004-04-20 Josef Zlomek <zlomekj@suse.cz>
-
- * var-tracking.c (variable_part_different_p): Variable parts differ
- when the most recent locations differ.
-
-2004-04-19 James E Wilson <wilson@specifixinc.com>
-
- * rtl.h (reg_set_last): Delete declaration.
- * rtlanal.c (reg_set_last): Delete.
-
-2004-04-19 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_convert): Make function extern/public.
- * tree.h (fold_convert): Prototype here.
- * builtins.c (expand_builtin_strstr, expand_builtin_strchr,
- expand_builtin_strrchr, expand_builtin_strpbrk,
- expand_builtin_mempcpy, expand_builtin_bcopy,
- expand_builtin_bzero, expand_builtin_memcmp,
- expand_builtin_strcmp, expand_builtin_strncmp,
- stabilize_va_list, expand_builtin_sprintf,
- fold_trunc_transparent_mathfn, fold_builtin_logarithm,
- fold_builtin_exponent, fold_builtin_mempcpy,
- fold_builtin_strcpy, fold_builtin_strcmp, fold_builtin_strncmp,
- fold_builtin_signbit, fold_builtin_isdigit, fold_builtin): Prefer
- fold_convert to "convert" or "fold (build1 (NOP_EXPR, ...))".
-
-2004-04-19 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): New constant.
- (move_from_CR_gt_bit): New.
- (cceq_ior_compare): Name previously unnamed pattern. Disable for
- E500.
- (cceq_rev_compare): Name previously unnamed pattern. Allow for
- E500.
-
- * config/rs6000/spe.md (cmpsfeq_gpr): Rewrite as unspec.
- (tstsfeq_gpr): Same.
- (cmpsfgt_gpr): Same.
- (tstsfgt_gpr): Same.
- (cmpsflt_gpr): Same.
- (tstsflt_gpr): Same.
- (e500_cceq_ior_compare): New.
- (e500_flip_gt_bit): New.
-
- * config/rs6000/rs6000.c (ccr_bit): Remove E500 specific code.
- (print_operand): Add 'c' and 'D'.
- (rs6000_generate_compare): Rewrite to generate correct rtl.
- (rs6000_emit_sCOND): Handle E500.
- (output_cbranch): Adjust for changes in rs6000_generate_compare.
- (output_e500_flip_gt_bit): New.
-
- * config/rs6000/rs6000-protos.h (output_e500_flip_gt_bit):
- Protoize.
-
-2004-04-19 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.h (DWARF2_ADDR_SIZE): New.
-
-2004-04-19 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi (*-ibm-aix*): Add AIX 5.1 assembler and archiver
- fix information.
-
-2004-04-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * doc/install.texi (Specific, mips-sgi-irix5): Fix IRIX 5.3 IDO
- download URL.
-
-2004-04-19 Daniel Jacobowitz <drow@mvista.com>
-
- * stor-layout.c (layout_decl): Check DECL_PACKED before calling
- ADJUST_FIELD_ALIGN. Check maximum_field_alignment after.
-
-2004-04-19 Andrew PInski <pinskia@physics.uc.edu>
-
- * builtins.c (fold_builtin_cabs): Remove fndecl parameter.
- (fold_builtin): Update caller to match.
-
- PR bootstrap/15009
- * bb-reorder.c (fix_up_fall_thru_edges): Init cond_jump.
-
- PR bootstrap/14999
- * builtins.c (fold_builtin_cabs): Mark fndecl as unused.
-
-2004-04-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * varasm.c (compare_constant, case VIEW_CONVERT_EXPR): Add case.
-
- * expmed.c (expand_mult_highpart_adjust): Make OP1 valid for MODE.
- (expand_mult_highpart_optab): Likewise.
- (expand_mult_highpart): Make OP1 valid for WIDER_MODE, not MODE.
-
-2004-04-19 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.md (fixuns_truncsfsi2, fixuns_truncdfsi2,
- floatunssisf2, floatunssidf2): New patterns.
-
-2004-04-18 Mark Mitchell <mark@codesourcery.com>
-
- PR other/14918
- * doc/invoke.texi (-fprofile-generate): Document requirement to
- use -fprofile-generate when linking.
-
- * doc/extend.texi (Strong Using): Warn users against using this
- feature.
-
-2004-04-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (m16_usym8_4, m16_usym5_4): Delete.
- * config/mips/mips.h (mips_entry, mips_string_length): Delete.
- (CONSTANT_POOL_BEFORE_FUNCTION, ASM_OUTPUT_POOL_EPILOGUE): Undefine.
- * config/mips/mips.c (struct mips16_constant): Renamed from struct
- constant. Propogate change throughout file.
- (struct machine_function): Remove insns_len.
- (mips_string_length, mips16_strings, string_constants): Delete.
- (mips_classify_symbol): Return SYMBOL_CONSTANT_POOL for LABEL_REFs
- when generating mips16 code. Remove special mips16 treatment of
- string constants.
- (mips_symbolic_constant_p): Allow mips16 constant pool accesses
- to have the form LABEL+CONSTANT.
- (mips_symbolic_address_p): Fix comment.
- (m16_usym8_4, m16_usym5_4): Delete.
- (mips_output_function_epilogue): Remove mips16 string handling.
- (mips_output_mi_thunk): Call mips16_lay_out_constants.
- (mips_select_section, mips_encode_section_info): Remove mips16
- string handling.
- (struct mips16_constant_pool): New.
- (add_constant): Take a mips16_constant_pool structure. Keep pool
- sorted into order of ascending mode size. Keep track of the highest
- possible start address, taking padding and the masking of the base PC
- value into account.
- (dump_constants_1): New function, split out from dump_constants.
- Handle vector constants. Use gen_consttable_{int,float} rather than
- separate functions for each mode.
- (dump_constants): Simplify. Use GET_MODE_ALIGNMENT. Use gen_align
- rather than separate functions for each alignment.
- (mips_find_symbol): Delete.
- (mips16_insn_length): New function, split out from
- mips16_lay_out_constants.
- (mips16_rewrite_pool_refs): New function.
- (mips16_lay_out_constants): Rework. Remove string handling.
- Always create an inline constant pool.
- * config/mips/mips.md (UNSPEC_CONSTTABLE_INT, UNSPEC_CONSTTABLE_FLOAT)
- (UNSPEC_ALIGN): New constants.
- (UNSPEC_CONSTTABLE_[QHSD]I, UNSPEC_CONSTTABLE_[SD]F): Delete.
- (UNSPEC_ALIGN_[248]): Delete.
- (consttable_int, consttable_float, align): New patterns.
- (consttable_[qhsd]i, consttable_[sd]f, align_[248]): Delete.
-
-2004-04-17 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/altivec.h (vec_any_numeric): Correct typo in
- __unn_args_eq.
-
-2004-04-17 Alan Modra <amodra@bigpond.net.au>
-
- PR target/14715
- * config/rs6000/rs6000.c (rs6000_stack_info): Make parm_size agree
- with STARTING_FRAME_OFFSET.
-
-2004-04-17 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (PREDICATE_CODES): Add macc_msac_operand.
- * config/mips/mips.c (macc_msac_operand): New function.
- * config/mips/mips.md (*msac): Move after *macc.
- (*msac2): New. Generalize macc-related peepholes so that they apply
- to msac too.
-
-2004-04-17 Paolo Bonzini <bonzini@gnu.org>
-
- * opts.c (decode_options): Do not enable flag_rename_registers
- and flag_web at -O3.
- * toplev.c (flag_rename_registers): Initialize
- flag_rename_registers and flag_web to
- AUTODETECT_FLAG_VAR_TRACKING.
- (default_debug_hooks): New global.
- (process_options): Initialize default_debug_hooks. Warn if
- -fvar-tracking specified but not supported by the current
- debug format. Do not run var tracking at -O0 or if not
- supported by the current debug format, even if
- -fvar-tracking was given. If -fno-rename-registers
- is not specified, always run register renaming if var
- tracking is supported by the default debugging information
- format for the target, and we are at -O1 or higher; similarly
- for -fweb, but only at -O2 or higher.
- * doc/invoke.texi (Optimize Options): Document this.
-
-2004-04-17 Richard Sandiford <rsandifo@redhat.com>
-
- * configure.ac (gcc_cv_ld_as_needed): Use AC_CACHE_CHECK.
- * configure: Regenerate.
-
-2004-04-17 Richard Sandiford <rsandifo@redhat.com>
-
- * gcc.c (used_arg): Check whether an option has been removed.
-
-2004-04-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.gcc (i[34567]86-*-solaris2*): Default to DWARF-2
- debugging on Solaris 7 and up.
-
-2004-04-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * doc/install.texi (Specific, mips-sgi-irix5): Reflect working
- IRIX 5 port.
- Remove -save-temps workaround, handled automatically.
- Require GNU binutils 2.15 for debugging.
- Remove SGI make warnings since GNU make is now required.
- (Specific, mips-sgi-irix6): Some markup fixes.
- Describe MIPSpro C problems and workarounds.
- Mention working O32 ABI support.
- Recommend GNU as 2.15 for O32 with debugging.
- Remove description of fixed structure pass/return bug.
-
-2004-04-16 DJ Delorie <dj@redhat.com>
-
- * sdbout.c (sdbout_one_type): Use TYPE_VALUES for enums, not
- TYPE_FIELDS.
- (sdbout_finish): Don't free deferred_global_decls; it's GC'd.
-
-2004-04-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md: Remove unnecessary declarations for asm_out_file.
-
- * pa64-regs.h (DBX_REGISTER_NUMBER): Simplify and correct mapping of
- SAR register. Fix comment.
- (ADDITIONAL_REGISTER_NAMES): Correct register number of SAR register
- (%cr11).
-
- * pa64-hpux.h (LIB_SPEC): Fix library specification used with GNU ld.
-
-2004-04-16 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (arm_override_options): Revert previous patch.
- * config/arm/t-xscale-elf: Disable iwmmxt multilibs until they can
- be safely built.
-
-2004-04-16 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h (BIG_ENDIAN_BIT): Deleted to fix endian
- bug.
- (TARGET_LITTLE_ENDIAN, TARGET_BIG_ENDIAN,
- TARGET_DEFAULT): Changed. Ditto.
- (LITTLE_ENDIAN_BIT, TARGET_CPU_DEFAULT,
- TARGET_ENDIAN_DEFAULT): Added. Ditto.
- * config/m32r/little.h (TARGET_LITTLE_ENDIAN): Deleted.
- (TARGET_ENDIAN_DEFAULT): Added.
-
-2004-04-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def (BUILT_IN_ISDIGIT, BUILT_IN_ISXDIGIT): Mark with
- ATTR_CONST_NOTHROW_LIST.
-
-2004-04-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- PR/middle-end 14915
- * builtins.c (expand_builtin_signbit): Test BYTES_BIG_ENDIAN, not
- BITS_BIG_ENDIAN.
-
-2004-04-15 Pat Haugen <pthaugen@us.ibm.com>
-
- * ra-debug.c (ra_print_rtx): Add break's to case legs.
-
-2004-04-14 James E Wilson <wilson@specifixinc.com>
-
- * Makefile.in (fixinc.sh): Set WARN_CFLAGS to empty string.
-
-2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * libada-mk.in: New file.
- * configure.ac: Create libada-mk from libada-mk.in.
- * configure: Regenerate.
-
-2004-04-14 Uros Bizjak <uros@kss-loka.si>
-
- * optabs.h (enum optab_index): Add new OTI_logb and OTI_ilogb.
- (logb_optab, ilogb_optab): Define corresponding macros.
- * optabs.c (init_optabs): Initialize logb_optab and ilogb_optab.
- * genopinit.c (optabs): Implement logb_optab and ilogb_optab
- using logb?f2 and ilogb?i2 patterns.
- * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LOGB{,F,L}
- using logb_optab, and BUILT_IN_ILOGB{,F,L} using ilogb_optab.
- (expand_builtin): Expand BUILT_IN_LOGB{,F,L} and BUILT_IN_ILOGB{,F,L}
- using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
-
- * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_XTRACT_FRACT
- and UNSPEC_XTRACT_EXP.
-
- * config/i386/i386.md (*fxtractdf3, *fxtractsf3, *fxtractxf3): New
- patterns to implement fxtract x87 instruction.
- (logbdf2, logbsf2, logbxf2, ilogbsi2): New expanders to implement
- logb, logbf, logbl, ilogb, ilogbf and ilogbl built-ins as inline x87
- intrinsics.
- (UNSPEC_XTRACT_FRACT, UNSPEC_XTRACT_EXP): New unspecs to represent
- x87's fxtract insn.
-
-2004-04-14 Eric Christopher <echristo@redhat.com>
-
- * config/mips/t-elf: Enable multilibs by default.
-
-2004-04-14 Andreas Tobler <a.tobler@schweiz.ch>
-
- * bb-reorder.c (fix_crossing_conditional_branches): Adjust the
- previous fix to check HAVE_return at runtime too.
-
-2004-04-14 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (arm_override_options): If the user has not
- specified an ABI, then default to AAPCS for the iWMMXt processor.
- * config/arm/t-xscale-elf: Remove redundant multilib specifications.
- * config/arm/t-xscale-coff: Likewise.
-
-2004-04-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin_isdigit): New.
- (fold_builtin): Handle BUILT_IN_ISDIGIT.
- * defaults.h: Add TARGET_DIGIT0 and sort.
- * doc/tm.texi: Add TARGET_BS and TARGET_DIGIT0.
-
-2004-04-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin_cabs, fold_builtin): Use
- `mathfn_built_in' to determine the new builtin.
- * fold-const.c (fold): Likewise.
-
-2004-04-14 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Rename MIPS's -mfix-vr4122-bugs to -mfix-vr4120.
- * config/mips/mips.h (MASK_FIX_VR4120): Renamed from MASK_FIX_VR4122.
- (TARGET_FIX_VR4120): Likewise TARGET_FIX_VR4122.
- (TARGET_SWITCHES): Replace -mfix-vr4122-bugs with -mfix-vr4120.
- (ASM_SPEC): Update accordingly.
- * config/mips/mips.c: Update after above renaming.
- * config/mips/mips.md, config/mips/t-vr, config/mips/vr.h: Likewise.
- * config/mips/vr4120-div.S: Renamed from vr4122-div.S.
-
-2004-04-13 James E Wilson <wilson@specifixinc.com>
-
- * c-opt.c (c_common_post_options): If this_input_filename is NULL,
- increment errorcount and return false instead of true.
-
-2004-04-13 Uros Bizjak <uros@kss-loka.si>:
-
- * optabs.c (expand_twoval_unop): Reorder function arguments.
- * builtins.c (expand_builtin_mathfn_3): Update calls to
- expand_twoval_unop.
-
- * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_TAN_ONE
- and UNSPEC_TAN_TAN. Add missing comment.
-
- * config/i386/i386.md (*tandf3_1, *tansf3_1, *tanxf3_1): New
- patterns to implement fptan x87 instruction.
- (tandf2, tansf2, tanxf2): New expanders to implement tan, tanf
- and tanl built-ins as inline x87 intrinsics. Define corresponding
- peephole2 optimizers for 'fptan; fstp %st(0); fld1' sequence.
- (UNSPEC_TAN_ONE, UNSPEC_TAN_TAN): New unspecs to represent
- x87's fptan insn.
-
-2004-03-13 Richard Henderson <rth@redhat.com>
-
- * bb-reorder.c (fix_crossing_unconditional_branches): Use Pmode
- for LABEL_REFs.
-
- * defaults.h (HOT_TEXT_SECTION_NAME): Add leading dot.
- (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Likewise.
- * doc/invoke.texi: Update to match.
-
- * varasm.c (unlikely_text_section): Use assemble_align instead of
- ASM_OUTPUT_ALIGN. Use it in the correct place with an approximately
- correct alignment argument.
-
-2004-04-13 Ulrich Weigand <uweigand@de.ibm.com>
-
- * reload1.c (emit_reload_insns): Set reg_has_output_reload to one
- after setting reg_last_reload_reg for optional output reloads.
-
-2004-04-12 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/altivec.h (vec_mergeh, vec_mergel):
- Definition of these two macros are corrected by adding
- matchine right paren.
-
-2004-04-12 Jonathan Larmour <jifl@eCosCentric.com>
-
- * fix-header.c: kill(), putenv() and tzset() are POSIX not ANSI.
-
-2004-04-12 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.c (output_387_reg_move): New function.
- * config/i386/i386-protos.h (output_387_reg_move): Prototype here.
- * config/i386/i386.md (*movsf_1, *movsf1_nointerunit,
- *movdf_nointeger, *movdf_integer, *movxf_nointeger, *movxf_integer,
- *extendsfdf2_1, *extendsfxf2_1, *extenddfxf2_1, truncdfsf2_noop,
- truncxfsf2_noop, truncxfdf2_noop): Call output_387_reg_move.
-
-2004-04-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * c-decl.c (finish_decl): Make a decl_stmt for a variable-sized
- TYPE_DECL.
- * c-semantics.c (genrtl_decl_stmt): Handle TYPE_DECL.
- * stmt.c (expand_decl): Remove redundant expansion of TYPE_DOMAIN.
- * stor-layout.c (variable_size): Don't check for MINUS_EXPR.
- Use skip_simple_arithmetic to find SAVE_EXPR.
- (force_type_save_exprs, force_type_save_exprs_1): New functions.
- * tree-inline.c (remap_type, case POINTER_TYPE, case REFERENCE_TYPE):
- Properly chain multiple pointers.
- (copy_tree_r): Copy a TYPE_DECL.
- * tree.c (variably_modified_type_p): Add some missing tests and
- make some other minor changes.
- * tree.h (force_type_save_exprs): New declaration.
-
-2004-04-12 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_binary_operation) <UDIV, DIV, UMOD, MOD>:
- Remove fall throughs. Convert 0/x and 0%x into x&0 when x has
- side-effects. Don't convert x/1.0 into x if we honor signaling NaNs.
- Convert x/-1.0 into -x if we don't honor signaling NaNs. Convert
- x/-1 into -x. Optimize x%1 into x&0 if x has side-effects. Optimize
- x%-1 into 0 (or x&0 if x has side-effects).
-
-2004-04-11 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.md: Document why a pattern is not
- available.
-
- * config/rs6000/rs6000.c (rs6000_emit_cmove): Disable comparisons
- of floats on the E500.
- (branch_positive_comparison_operator): Do not allow NE even on the
- E500.
-
-2004-04-11 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_assemble_integer): Change
- in_text_unlikely_section to in_unlikely_text_section.
-
-2004-04-11 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_binary_op_with_conditional_arg): Tweak
- calling convention to allow a NULL_TREE to be returned. Factor
- sanity checks from callers, return NULL_TREE when appropriate.
- (fold): Handle COMPOUND_EXPR operands of binary expressions
- before COND_EXPR operands. Use reorder_operands_p(a,b) to check
- whether a op (b,c) can be rewritten as (b, a op c). Simplify
- calls to fold_binary_op_with_conditional_arg.
-
-2004-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/mips/iris5.h (current_section_flags): Add
- in_unlikely_executed_text and default case.
-
-2004-04-11 Andreas Tobler <a.tobler@schweiz.ch>
-
- * bb-reorder.c (fix_crossing_conditional_branches): Fix bootstrap
- failure on solaris. Place ifdef HAVE_return around gen_ret call.
- * cfgrtl.c (force_nonfallthru_and_redirect): Remove ifdef
- HAVE_return and place it around the place where it is needed.
-
-2004-04-11 Andrew Pinski <pinskia@physics.uc.edu>
-
- * varasm.c (text_section): Use TEXT_SECTION_ASM_OP and
- ASM_OUTPUT_ALIGN instead of SECTION_FORMAT_STRING
- and NORMAL_TEXT_SECTION_NAME.
- (unlikely_text_section): Check targetm.have_named_sections
- instead of TARGET_ASM_NAMED_SECTION and use TEXT_SECTION_ASM_OP
- instead of SECTION_FORMAT_STRING.
- * config/mips/iris5.h (current_section_name): Add
- in_unlikely_executed_text case and move the abort into the switch.
- * config/rs6000/sysv4.h (HOT_TEXT_SECTION_NAME): Remove.
- (NORMAL_TEXT_SECTION_NAME): Remove.
- (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Remove.
- (SECTION_FORMAT_STRING): Remove.
- * defaults.h (SECTION_FORMAT_STRING): Remove.
- * tm.texi (NORMAL_TEXT_SECTION_NAME): Remove.
- (SECTION_FORMAT_STRING): Remove.
-
-2004-04-10 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-typeck.c (common_type): Prefer long long to long when same
- precision.
-
-2004-04-09 Zack Weinberg <zack@codesourcery.com>
-
- PR 14887
- * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Look only at
- mode argument.
- * config/ia64/ia64.c (ia64_hpux_file_end): Check
- TREE_SYMBOL_REFERENCED on DECL_ASSEMBLER_NAME, not DECL_NAME.
-
-2004-04-09 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (mode_signbit_p): New function to check whether
- an RTX is an immediate constant that represents the most significant
- bit of a given machine mode.
- (simplify_unary_operation) <NOT>: Optimize ~(X+C) as X ^ ~C, where
- C is the sign bit.
- (simplify_binary_operation) <PLUS>: Optimize (X^C1) + C2 as X^(C1^C2)
- when C2 is the sign bit.
- (simplify_binary_operation) <XOR>: Canonicalize X^C as X+C when C
- is the sign bit. Optimize (X+C1) ^ C2 as X^(C1^C2) when C1 is the
- sign bit.
-
-2004-04-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (mathfn_built_in): Check TYPE_MAIN_VARIANT, not
- TYPE_MODE.
-
-2004-04-09 Andrew Pinski <pinskia@physics.uc.edu>
-
- * c-common.c (handle_noreturn_attribute): Use TYPE_READONLY instead
- of TREE_READONLY for types.
-
-2004-04-09 Caroline Tice <ctice@apple.com>
-
- * basic-block.h (struct edge_def): Add new field, crossing_edge.
- (struct basic_block_def): Add new field, partition.
- (UNPARTITIONED, HOT_PARTITION, COLD_PARTITION): New constant macro
- definitions.
- (partition_hot_cold_basic_blocks): Add extern function
- declaration.
- * bb-reorder.c (function.h, obstack.h, expr.h, regs.h): Add four new
- include statements.
- (N_ROUNDS): Increase the maximum number of rounds by 1.
- (branch_threshold): Add array value for new round.
- (exec_threshold): Add array value for new round.
- (push_to_next_round_p): New function.
- (add_unlikely_executed_notes): New function.
- (find_rarely_executed_basic_blocks_and_crossing_edges): New function.
- (mark_bb_for_unlikely_executed_section): New function.
- (add_labels_and_missing_jumps): New function.
- (add_reg_crossing_jump_notes): New function.
- (fix_up_fall_thru_edges): New function.
- (find_jump_block): New function.
- (fix_crossing_conditional_branches): New function.
- (fix_crossing_unconditional_branches): New function.
- (fix_edges_for_rarely_executed_code): New function.
- (partition_hot_cold_basic_blocks): New function.
- (find_traces): Add an extra round for partitioning hot/cold
- basic blocks.
- (find_traces_1_round): Add a parameter. Modify to push all cold blocks,
- and only cold blocks, into the last (extra) round of collecting traces.
- (better_edge_p): Add a parameter. Modify to favor non-crossing edges
- over crossing edges.
- (bb_to_key): Add code to correctly identify cold blocks when
- doing partitioning.
- (connect_traces): Modify to connect all the non-cold traces first, then
- go back and connect up all the cold traces.
- (reorder_basic_blocks): Add call to add_unlikely_executed_notes.
- * cfg.c (entry_exit_blocks): Add initialization for partition field in
- entry and exit blocks.
- * cfgbuild.c (make_edges): Update current_function_has_computed_jump
- if we are doing hot/cold partitioning.
- * cfgcleanup.c (cfglayout.h): Add new include statement.
- (try_simplify_condjump): Modify to not attempt on blocks with jumps
- that cross section boundaries.
- (try_forward_edges): Likewise.
- (merge_blocks_move_predecessor_nojumps): Likewise.
- (merge_blocks_move_successor_nojumps): Likewise.
- (merge_blocks_move): Likewise.
- (try_crossjump_to_edge): Modify to not attempt after we have done
- the block partitioning.
- (try_crossjump_bb): Modify to not attempt on blocks with jumps that
- cross section boundaries.
- (try_optimize_cfg): Likewise.
- * cfghooks.c (tidy_fallthru_edges): Modify to not remove indirect
- jumps that cross section boundaries.
- * cfglayout.c (flags.h): Add new include statement.
- (update_unlikely_executed_notes): New function.
- (fixup_reorder_chain): Add code so when a new jumping basic block is
- added, it's UNLIKELY_EXECUTED_CODE and REG_CROSSING_JUMP notes are
- updated appropriately.
- (duplicate_insn_chain): Add code to duplicate the new NOTE insn
- introduced by this optimization.
- * cfglayout.h (scan_ahead_for_unlikely_executed_note): Add new
- extern function declaration.
- * cfgrtl.c (can_delete_note_p): Add NOTE_INSN_UNLIKELY_EXECUTED_CODE to
- list of notes that can be deleted.
- (create_basic_block_structure): Add initialization for partition field.
- (rtl_can_merge_blocks): Modify to test blocks for jumps that cross
- section boundaries.
- (try_redirect_by_replacing_jump): Modify to not attempt on jumps that
- cross section boundaries.
- (commit_one_edge_insertion): Add code so newly created basic block
- ends up in correct (hot or cold) section. Modify to disallow
- insertions before NOTE_INSN_UNLIKELY_EXECUTED_CODE notes.
- (rtl_verify_flow_info_1): Add code to verify that no fall_thru edge
- crosses section boundaries.
- (cfg_layout_can_merge_blocks_p): Modify to test blocks for jumps that
- cross section boundaries.
- (force_nonfallthru_and_redirect): Modify to make sure new basic block
- ends up in correct section, with correct notes attached.
- * common.opt (freorder-blocks-and-partition): Add new flag for this
- optimization.
- * dbxout.c (dbx_function_end): Add code to make sure scope labels at
- the end of functions are written into the correct (hot or cold)
- section.
- (dbx_source_file): Add code so writing debug file information
- doesn't incorrectly change sections.
- * defaults.h (NORMAL_TEXT_SECTION_NAME): New constant macro, for use
- in partitioning hot/cold basic blocks into separate sections.
- (SECTION_FORMAT_STRING): New constant macro, for linux/i386 hot/cold
- section partitioning.
- (HAS_LONG_COND_BRANCH): New constant macro, indicating whether or not
- conditional branches can span all of memory.
- (HAS_LONG_UNCOND_BRANCH): New constant macro, indicationg whether or not
- unconditional branches can span all of memory.
- * final.c (scan_ahead_for_unlikely_executed_note): New function.
- (final_scan_insn): Add code to check for NOTE instruction indicating
- whether basic block belongs in hot or cold section, and to make sure
- the current basic block is being written to the appropriate section.
- Also added code to ensure that jump table basic blocks end up in the
- correct section.
- * flags.h (flag_reorder_blocks_and_partition): New flag.
- * ifcvt.c (find_if_case_1): Modify to not attempt if conversion if
- one of the branches has a jump that crosses between sections.
- (find_if_case_2): Likewise.
- (ifcvt): Modify to not attempt to mark loop exit edges after
- hot/cold partitioning has occurred.
- * opts.c (decode_options): Code to handle new flag,
- flag_reorder_blocks_and_partition; also to turn it off if
- flag_exceptions is on.
- (common_handle_option): Code to handle new flag,
- flag_reorder_blocks_and_partition.
- * output.h (unlikely_text_section): New extern function declaration.
- (in_unlikely_text_section): New extern function declaration.
- * passes.c (rest_of_handle_stack_regs): Add
- flag_reorder_blocks_and_partition as an 'or' condition for calling
- reorder_basic_blocks.
- (rest_of_handle_reorder_blocks): Add flag_reorder_blocks_and_partition
- as an 'or' condition for calling reorder_basic_blocks.
- (rest_of_compilation): Add call to partition_hot_cold_basic_blocks.
- * print-rtl.c (print_rtx): Add code for handling new note,
- NOTE_INSN_UNLIKELY_EXECUTED_CODE
- * rtl.c (NOTE_INSN_UNLIKELY_EXECUTED_CODE): New note insn (see below).
- (REG_CROSSING_JUMP): New kind of reg_note, to mark jumps that
- cross between section boundaries.
- * rtl.h (NOTE_INSN_UNLIKELY_EXECUTED_CODE): New note instruction,
- indicating the basic block containing it belongs in the cold section.
- (REG_CROSSING_JUMP): New type of reg_note, to mark jumps that cross
- between hot and cold sections.
- * toplev.c (flag_reorder_blocks_and_partition): Add code to
- initialize this flag, and to tie it to the command-line option
- freorder-blocks-and-partition.
- * varasm.c (cfglayout.h): Add new include statement.
- (unlikely_section_label_printed): New global variable, used for
- determining when to output section name labels for cold sections.
- (in_section): Add in_unlikely_executed_text to enum data structure.
- (text_section): Modify code to use SECTION_FORMAT_STRING and
- NORMAL_TEXT_SECTION_NAME macros.
- (unlikely_text_section): New function.
- (in_unlikely_text_section): New function.
- (function_section): Add code to make sure beginning of function is
- written into correct section (hot or cold).
- (assemble_start_function): Add code to make sure stuff is written to
- the correct section.
- (assemble_zeros): Add in_unlikely_text_section as an 'or' condition
- to an if statement that was checking 'in_text_section'.
- (assemble_variable): Add 'in_unlikely_text_section' as an 'or'
- condition to an if statement that was checking 'in_text_section'.
- (default_section_type_flags_1): Add check: if in cold section
- flags = SECTION_CODE.
- * config/darwin.c (darwin_asm_named_section): Modify to use
- SECTION_FORMAT_STRING if we are partitioning hot/cold blocks.
- * config/i386/i386.h (HAS_LONG_COND_BRANCH): Defined this macro
- specifically for the i386.
- (HAS_LONG_UNCOND_BRANCH): Defined this macro specifically for the i386.
- * config/rs6000/darwin.h (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Change
- text string to something more informative.
- (NORMAL_TEXT_SECTION_NAME): Add new definition.
- (SECTION_FORMAT_STRING): Add new definition.
- * config/rs6000/rs6000.c (rs6000_assemble_integer): Add
- '!in_unlikely_text_section' as an 'and' condition to an if statement
- that was already checking '!in_text_section'.
- * config/rs6000/sysv4.h (HOT_TEXT_SECTION_NAME,NORMAL_TEXT_SECTION_NAME,
- UNLIKELY_EXECUTED_TEXT_SECTION_NAME,SECTION_FORMAT_STRING): Make
- sure these are properly defined for linux on ppc.
- * doc/invoke.texi (freorder-blocks-and-partition): Add documentation
- for this new flag.
- * doc/rtl.texi (REG_CROSSING_JUMP): Add documentation for new
- reg_note.
- * doc/tm.texi (NORMAL_TEXT_SECTION_NAME, SECTION_FORMAT_STRING,
- HAS_LONG_COND_BRANCH, HAS_LONG_UNCOND_BRANCH): Add documentation for
- these new macros.
-
-2004-04-08 Roger Sayle <roger@eyesopen.com>
-
- * function.c (gen_mem_addressof): When changing the RTX from a REG
- to a MEM, clear MEM_VOLATILE_P which was formerly REG_USERVAR_P.
-
-2004-04-08 Roger Sayle <roger@eyesopen.com>
-
- PR target/14888
- * config/i386/i386.md (truncdfsf2_noop, truncxfsf2_noop,
- truncxfdf2_noop): Provide dummy "fmov" implementations.
-
-2004-04-08 Ian Lance Taylor <ian@wasabisystems.com>
-
- * gcc.c (default_compilers): Add missing initializers.
-
- * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_use_address):
- Return 1 if file was successfully mapped.
-
-2004-04-08 Geoffrey Keating <geoffk@apple.com>
-
- PR pch/13419
- PR pch/14137
- Radar #: 3315288
- * doc/invoke.texi (Precompiled Headers): Suggest -o
- to put an output file in a particular place. Be more detailed
- about which options affect PCH validity and which options
- might not work.
- * c-pch.c (pch_matching): New.
- (MATCH_SIZE): New.
- (struct c_pch_validity): New field 'match'.
- (pch_init): Handle pch_matching.
- (c_common_valid_pch): Check pch_matching.
-
- * explow.c: Fix typo defining default of PROMOTE_FUNCTION_MODE.
-
-2004-04-08 Mark Mitchell <mark@codesourcery.com>
-
- * doc/invoke.texi (Precompiled Headers): Warn about known
- problems.
-
-2004-04-08 Danny Smith <dannysmith@users.sourceforge.net>
-
- PR c++/14808
- * defaults.h (TARGET_USE_LOCAL_THUNK_ALIAS_P): New macro. Default
- to 1 if ASM_OUTPUT_DEF is defined.
- * doc/tm.texi (TARGET_USE_LOCAL_THUNK_ALIAS_P): Document.
- * config/i386/cygming.h (TARGET_USE_LOCAL_THUNK_ALIAS_P): Define.
- Set to non-zero iff not a one_only decl.
-
-2004-04-08 Paul Brook <paul@codesourcery.com>
-
- * arm.h (CLASS_LIKELY_SPILLED_P): Define.
-
-2004-04-08 Paul Brook <paul@codesourcery.com>
-
- * explow.c (promote_mode): Use PROMOTE_FUNCTION_MODE instead of
- PROMOTE_FOR_CALL_ONLY.
- * config/arm/arm-protos.h (arm_function_value): Declare.
- * config/arm/arm.h (TARGET_PROMOTE_FUNCTION_ARGS): Define.
- (TARGET_PROMOTE_PROTOTYPES): Return false.
- (arm_function_value): New function.
- * config/arm/arm.h (PROMOTE_FUNCTION_MODE): Define.
- (FUNCTION_VALUE): Call arm_function_value.
- * config/cris/cris.h (PROMOTE_MODE): Rename ...
- (PROMOTE_FUNCTION_MODE): ... to this.
- (PROMOTE_FOR_CALL_ONLY): Remove.
- * config/mmix/mmix.h: Likewise.
- * config/s390/s390.h: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/sparc/sparc.c: Update comments about PROMOTE_MODE.
- * doc/tm.texi (PROMOTE_FUNCTION_MODE): Document.
- (TARGET_PROMOTE_FUNCTION_MODE, TARGET_PROMOTE_FUNCTION_RETURN): Update.
- (PROMOTE_FOR_CALL_ONLY): Remove.
-
-2004-04-08 Joel Sherrill <joel@oarcorp.com>
-
- PR ada/14538
- * ada/5rosinte.adb: Remove fake mprotect() body.
- * ada/5rosinte.ads: Add SA_SIGINFO.
- * ada/5rtpopsp.adb: Rewrite to use new interface.
- * ada/init.c: Reorder so the simple single OS conditional __rtems__
- is tested before more complex ones which mix UNIX and embedded
- systems in the conditional.
-
-2004-04-08 Joel Sherrill <joel@oarcorp.com>
-
- PR ada/14665
- * ada/osint.adb (Find_Program_Name): Rework to properly handle
- filenames which end in .exe or have versioning suffixes like VMS.
-
-2004-04-08 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/10129
- * config/darwin.c (darwin_encode_section_info): When the decl has
- a DECL_INITIAL, it is only defined also when it is not a common.
-
-2004-04-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin_isascii, fold_builtin_toascii): New.
- (fold_builtin): Handle BUILT_IN_ISASCII and BUILT_IN_TOASCII.
-
-2004-04-07 H.J. Lu <hongjiu.lu@intel.com>
-
- * config/ia64/ia64.c (ia64_encode_section_info): Don't prod
- global register variables.
-
-2004-04-07 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * fixinc/inclhack.def (rpc_xdr_lvalue_cast_a,
- rpc_xdr_lvalue_cast_b): New fixes.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/rpc/xdr.h: Add new tests.
-
-2004-04-07 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (processor_target_table): Add MASK_MFCRF
- to power4 and power5 entries.
-
-2004-04-06 Geoffrey Keating <geoffk@apple.com>
-
- * c-common.h (pending_lang_change): Mark for PCH.
-
-2004-04-07 Caroline Tice <ctice@apple.com>
-
- * gcc.c (main): Move 'break' in main loops (on an error)
- to wait until error processing has occurred.
-
-2004-04-06 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Stop changing enable_threads midstream.
- Replace uses of enable_threads_flag with enable_threads.
- * configure.ac: Replace uses of enable_threads_flag with
- enable_threads. Improve autoconf quotation in one place.
- * configure: Regenerate.
-
-2004-04-06 Uros Bizjak <uros@kss-loka.si>
-
- * builtins.c: Implement support for sincos function.
- (expand_builtin_mathfn): Remove BUILT_IN_SIN{,F,L} and
- BUILT_IN_COS{,F,L}.
- (expand_builtin_mathfn_3): New function.
- (expand_builtin): Expand BUILT_IN_SIN{,F,L} and
- BUILT_IN_COS{,F,L} using expand_builtin_mathfn_3 if
- flag_unsafe_math_optimization is set.
-
- * optabs.h (enum optab_index): Add new OTI_sincos.
- (sincos_optab): Define corresponding macro.
-
- * optabs.c (init_optabs): Initialize sincos_optab.
- (expand_twoval_unop): New function.
-
- * genopinit.c (optabs): Implement sincos_optab using sincos?f3
- patterns.
-
- * reg-stack.c (subst_stack_regs_pat): Handle UNSPEC_SINCOS_COS
- and UNSPEC_SINCOS_SIN.
-
- * config/i386/i386.md (sincosdf3, sincossf3, *sincosextendsfdf3,
- sincosxf3): New patterns to implement sincos, sincosf and sincosl
- built-ins as inline x87 intrinsics. Define splits for
- sindf2, sinsf2, *sinextendsfdf2, sinxf2, cosdf2,
- cossf2, *cosextendsfdf2 and cosxf2 patterns from corresponding
- sincos patterns.
- (sindf2, sinsf2, sinxf2): Rename to *sindf2, *sinsf2, *sinxf2.
- (cosdf2, cossf2, cosxf2): Rename to *cosdf2, *cossf2, *cosxf2.
-
- (UNSPEC_SINCOS_SIN, UNSPEC_SINCOS_COS): New unspecs to represent
- x87's fsincos insn.
-
-2004-04-06 Devang Patel <dpatel@apple.com>
-
- PR 14467
- * config/darwin.h (LINK_COMMAND_SPEC): Use c++filt instead of c++filt3.
-
-2004-04-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * doc/install.texi: Update HP-UX 11 installation procedure.
-
-2004-04-06 Paul Brook <paul@codesourcery.com>
-
- * doc/sourcebuild.texi: Remove obsolete contraint on testcases.
-
-2004-04-05 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/sh.c (prepare_move_operands): Use emit_call_insn
- when the TLS address is generated by a function call.
- * config/sh/sh.md (tls_global_dynamic): Use a call expression.
- (tls_local_dynamic): Likewise.
-
-2004-04-05 Andrew Pinski <pinskia@physics.uc.edu>
-
- * tree.c (reconstruct_complex_type): Use TYPE_READONLY
- and TYPE_VOLATILE.
-
-2004-04-05 Caroline Tice <ctice@apple.com>
-
- * gcc.c (combine_flag): New global variable, for new driver option.
- (struct compiler): Add two new fields, to be used when
- combining multiple input files in a single pass (IMA).
- (default_compilers): Add values for the new fields to all
- compiler entries. Modify the "@c" compiler entry for doing IMA
- properly with "-save-temps" and the "combine" flag.
- (option_map): Add new driver option, "--combine", to tell driver
- to pass multiple input files to compiler at one time.
- (have_o_argbuf_index): New global variable.
- (store_arg): Modify to assign value to have_o_argbuf_index.
- (struct infile): Add three new fields, to help with IMA.
- (display_help): Add help for new "combine" option.
- (process_command): Remove local variable have_o; add code to check
- for new "combine" option; remove assignment to combine_inputs.
- (do_spec_1): Modify to deal with IMA better.
- (main): Make variable 'lang_n_infiles' local to entire function
- rather than to a single block. Use flag combine_flag to
- determine whether to do IMA or not; Modify loop initializing
- infiles to deal properly with linker files.
- Add code for doing preprocessing in presence of
- IMA with "-save-temps" flag. Modify "main" loop to handle
- multiple input files, in multiple languages, with or without
- preprocessing, gracefully.
- * toplev.c (set_src_pwd): Modify to not complain if attempting to
- re-set it to same directory it's previously been set to (avoid
- irritating, meaningless warning messages when doing IMA with
- save-temps).
- * doc/invoke.texi: Add "-combine" to list of Overall Options;
- remove documentation about IMA that is no longer accurate; Add
- documentation explaining what "-combine" does.
- * ada/lang-specs.h: Add initialization values for new fields in
- "struct compiler".
- * cp/lang-specs.h: Likewise.
- * f/lang-specs.h: Likewise.
- * java/lang-specs.h: Likewise.
- * objc/lang-specs.h: Likewise.
- * treelang/lang-specs.h: Likewise.
-
-2004-04-05 David Edelsohn
-
- * config/rs6000/rs6000.c (VTABLE_NAME_P): Add _ZTI to special
- symbol handling.
-
-2004-04-05 Jakub Jelinek <jakub@redhat.com>
- John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR optimization/13424 (hppa), bootstrap/14462, c/14828
- * pa.md: Use replace_equiv_address to retain the attributes of the
- memory operands used in the split and peephole2 patterns for optimizing
- the pre-reload movstrsi, movstrdi, clrstrsi and clrstrdi patterns.
-
-2004-04-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * c-decl.c (build_compound_literal): Use TYPE_READONLY.
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
- * objc/objc-act.c (adorn_decl, gen_declspecs): Likewise.
- * c-typeck.c (decl_constant_value): Don't access DECL_INITIAL of a
- PARM_DECL.
- * calls.c (flags_from_decl_or_type): Use TYPE_READONLY and do so only
- for a type.
- * print-tree.c (print_node): Properly handle side-effects, readonly,
- and constant flags.
- * tree.c (build1_stat, build_expr_wfl): Only look at TREE_SIDE_EFFECTS
- and TREE_CONSTANT if not a type.
- * tree.h (IS_NON_TYPE_CODE_CLASS): New macro.
- (IS_EXPR_CODE_CLASS): Write 'E', not 'e'.
- (NON_TYPE_CHECK): New macro.
- (TREE_SIDE_EFFECT, TREE_READONLY, TREE_CONSTANT: Add check.
-
-2004-04-05 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sol2-bi.h (PREFERRED_DEBUGGING_TYPE): Set
- to DWARF2_DEBUG unconditionally.
- (ASM_DEBUG_SPEC): Set the default to --gdwarf2 unconditionally.
-
-2004-04-04 Ian Lance Taylor <ian@wasabisystems.com>
- Nathanael Nerode <neroden@gcc.gnu.org>
-
- PR target/14548
- * config.host: Set the shell variable host_can_use_collect2.
- Set it to yes by default, and to no for alpha*-dec-*vms*,
- i[34567]86-*-mingw32*, and powerpc-*-beos*.
- * configure.ac: Set and substitute the shell variable collect2.
- Give an error if use_collect2 is yes and host_can_use_collect2 is
- no.
- * Makefile.in (COLLECT2): Rename from USE_COLLECT2. Change all
- uses. Initialize to @collect2@.
- (STAGESTUFF): Remove $(USE_COLLECT2).
- * config/alpha/x-vms (USE_COLLECT2): Don't set.
- * config/i386/t-mingw32 (USE_COLLECT2): Likewise.
- * config/rs6000/t-beos (USE_COLLECT2): Likewise.
- * config/pa/t-pa64: Remove commented out USE_COLLECT2.
- * configure: Regenerate.
-
-2004-04-04 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_binary_operation): Constant fold
- DIV, MOD, UDIV and UMOD using div_and_round_double.
-
-2004-04-04 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/14804
- * varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to
- RECORD_TYPEs.
-
-2004-04-04 Mark Mitchell <mark@codesourcery.com>
-
- * doc/invoke.texi (-mabi=o64): Create link to O64 ABI
- documentation.
-
-2004-04-04 Roger Sayle <roger@eyesopen.com>
-
- * cse.c (cse_insn): Correct usage of simplify_replace_rtx when
- updating the REG_EQUAL note on an insn's libcall_insn.
-
-2004-04-04 Roger Sayle <roger@eyesopen.com>
-
- * df.h: Tidy up whitespace in the definitions of the DF_ flags.
-
-2004-04-03 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) <PLUS_EXPR>: Guard (-A)+B -> B-A transformation
- with reorder_operands_p.
-
-2004-04-03 Jan Hubicka <jh@suse.cz>
-
- * md.texi (vec_set, vec_extract, vec_init): Document.
-
-2004-04-02 Gabor Loki <loki@inf.u-szeged.hu>
-
- * opts.c (decode_options): Do function inlining with very small
- max-inline-insns-* parameters when optimizing for size.
-
-2004-04-02 Vladimir Makarov <vmakarov@redhat.com>
-
- * config/i386/i386.h (TARGET_NOCONA): New macro.
- (TARGET_CPU_CPP_BUILTINS): Add code for Nocona.
- (processor_type): Add PROCESSOR_NOCONA.
-
- * config/i386/i386.md (cpu): Add nocona to the attribute values.
-
- * config/i386/i386.c (nocona_cost): New variable.
- (m_NOCONA): New macro.
- (x86_push_memory, x86_movx, x86_cmove, x86_deep_branch,
- x86_branch_hints, x86_use_sahf, x86_single_stringop,
- x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8,
- x86_integer_DFmode_moves, x86_partial_reg_dependency,
- x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
- x86_decompose_lea, x86_arch_always_fancy_math_387,
- x86_sse_partial_reg_dependency, x86_sse_load0_by_pxor,
- x86_ext_80387_constants, x86_four_jump_limit):
- (override_options): Add nocona_cost to processor_target_table.
- Set up PROCESSOR_NOCONA for Nocona entry in processor_alias_table.
- (incdec_operand): Prevent inc/dec generation for Nocona too.
- (ix86_issue_rate): Add PROCESSOR_NOCONA.
-
-2004-04-01 Andrew Pinski <pinskia@physics.uc.edu>
-
- * rtlanal.c (find_reg_note): Manually
- unswitch the loop.
-
-2004-04-01 Mark Mitchell <mark@codesourcery.com>
-
- * genemit.c (gen_split): Change prototype of generated code.
- * genrecog.c (write_action): Adjust prototype for and calls to
- gen_split_*.
- * gensupport.c (struct queue_elem): Add split field.
- (queue_pattern): Return a value. Clear the split field.
- (process_rtx): Maintain an association between an insn and the
- split generated from it for a define_insn_and_split.
- (process_one_cond_exec): Generate a new split for a
- define_insn_and_split.
- * config/arm/arm-protos.h (arm_split_constant): Add insn
- parameter.
- (emit_constant_insn): New function.
- (arm_gen_constant): Use it.
- * config/arm/arm.md: Adjust calls to arm_split_constant.
-
-2004-04-02 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c: Add overall comment.
- (cgraph_inline_hash): New global variable.
- (cgraph_create_node): Break out from ...
- (cgraph_node): ... here.
- (cgraph_edge): New function.
- (cgraph_create_edge): New CALL_EXPR argument; some sanity checking.
- (cgraph_remove_edge): Accept edge, intead of source and destination.
- (cgraph_redirect_edge_callee): New.
- (cgraph_remove_node): Update all new datastructures.
- (cgraph_record_call, cgraph_remove_call): Kill.
- (dump_cgraph_node): Break out from ... ; dump new datastructures.
- (dump_cgraph): ... here.
- (cgraph_function_possibly_inlined_p): Use new hashtable.
- (cgraph_clone_edge, cgraph_clone_node): New.
- * cgraph.h: Include hashtab.h
- (struct cgraph_global_info): Kill cloned_times, inline_once, will_be_output
- fields, add inlined_to pointer.
- (cgraph_node): Add pointer to next_clone.
- (cgraph_remove_edge, cgraph_create_edge): Update prototype.
- (cgraph_remove_call, cgraph_record_call): Kill.
- (cgraph_inline_hash): Declare.
- (dump_cgraph_node, cgraph_edge, cg4raph_clone_edge, cgraph_clone_node,
- cgraph_redirect_edge_callee): Declare.
- (cgraph_create_edges, cgraph_inline_p): Update prorotype.
- (cgraph_preserve_function_body_p, verify_cgraph, verify_cgraph_node,
- cgraph_mark_inline_edge, cgraph_clone_inlined_nodes): Declare.
- * cgraphunit.c: Add overall comment.
- (cgraph_optimize_function): Kill.
- (cgraph_assemble_pending_functions): Do not assemble inline clones.
- (cgraph_finalize_function): Update call of cgraph_remove_node
- (record_call_1): Record call sites.
- (cgraph_create_edges): Accept node instead of decl argument.
- (error_found): New static variable.
- (verify_cgraph_node_1, verify_cgraph_node, verify_cgraph): New functions.
- (cgraph_analyze_function): Update for new datastructures.
- (cgraph_finalize_compilation_unit): Plug memory leak.
- (cgraph_optimize_function): Kill.
- (cgraph_expand_function): Do not use cgraph_optimize_function.
- (INLINED_TIMES, SET_INLINED_TIMES, cgraph_inlined_into,
- cgraph_inlined_callees): Kill.
- (cgraph_remove_unreachable_nodes): Verify cgraph; update handling of
- clones.
- (estimate_growth): Simplify.
- (cgraph_clone_inlined_nodes): New function.
- (cgraph_mark_inline_edge): Re-implement.
- (cgraph_mark_inline): Likewise.
- (cgraph_check_inline_limits): Simplify.
- (cgraph_recursive_inlining_p): New.
- (update_callee_keys): Break out from ...
- (cgraph_decide_inlining_of_small_functions): ... here; simplify.
- (cgraph_decide_inlining, cgraph_decide_inlining_incrementally):
- Likewise.
- (cgraph_expand_all_functions): Remove inline clones from the ordered
- list.
- (cgraph_preserve_function_body_p): New predicate.
- (cgraph_optimize): Verify cgraph.
- * function.h (struct function): Add fields saved_tree/saved_args.
- * timevar.def (TV_CGRAPH_VERIFY): Use verifier.
- * toplev.c (rest_of_compilation): Do not free cfun.
- * tree-inline.c: Include function.h
- (struct inline_data): Add saving_p field; replace decl/current_decl by
- node/current_node.
- (insert_decl_map): New function.
- (copy_body_r): Handle saving; update cgraph datastructure.
- (copy_body): Handle recursive inlining.
- (initialize_inlined_parameters): Likewise.
- (expand_call_inline): Propagate node attributes; update cgraph.
- (optimize_inline_calls): Verify that datastructure still match.
- (save_body): New function.
- * tree-inline.h (save_body): New.
- * tree-optimize.c (tree_rest_of_compilation): preserve function body; do inlining.
- * langhooks-def.c (LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): New.
- * langhooks.c (lang_hooks): Add update_decl_after_saving.
-
-2004-04-01 Serge Belyshev <1319@bot.ru>
-
- PR target/14702
- * config/i386/i386.md: fix source operand constraints in
- mmx_pshufw, sse2_pshufd, sse2_pshuflw, sse2_pshufhw
-
-2004-04-01 Waldek Hebisch <hebisch@math.uni.wroc.pl>
-
- * fold-const.c (folda): Preserve types of comparisons.
-
-2004-04-01 Richard Henderson <rth@redhat.com>
-
- * toplev.c (backend_init): Move init_optimization_passes call ...
- (lang_dependent_init): ... here.
-
-2004-04-01 Alan Modra <amodra@bigpond.net.au>
- Jakub Jelinek <jakub@redhat.com>
-
- * gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with
- -lgcc --as-needed -lgcc_s --no-as-needed by default.
- * configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed.
- * configure: Rebuilt.
- * config.in: Rebuilt.
- * Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT).
- (stage2-start, stage3-start, stage4-start): Likewise.
- (stageprofile-start, stagefeedback-start): Likewise.
-
-2004-04-01 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
- * config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
- * config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
- * config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
- (SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
- * config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
- with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
- * config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
- * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
- * config/sparc/t-linux: Removed.
-
-2004-04-01 Jakub Jelinek <jakub@redhat.com>
-
- PR c++/14755
- * fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
- "bitfld++ == const" to "++bitfld == const + incr" transformations.
-
-2004-04-01 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.
- * stor-layout.c (layout_decl): Likewise.
- * tree.c (get_narrower): Likewise and also use BIT_FIELD_REF_UNSIGNED.
- * fold-const.c (make_bit_field_ref): Use BIT_FIELD_REF_UNSIGNED.
- * print-tree.c (print_node): Handle various used of unsigned_flag.
- * tree.def (BIT_FIELD_REF): Update comment.
- * tree.h (TREE_UNSIGNED): Deleted.
- (DECL_UNSIGNED, BIT_FIELD_REF_UNSIGNED): New macros.
-
-2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * builtins.c, c-aux-info.c, c-common.c, c-cppbuiltin.c, c-decl.c:
- Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.
- * c-format.c, c-opts.c, c-pretty-print.c, c-typeck.c: Likewise.
- * calls.c, convert.c, dbxout.c, dojump.c, dwarf2out.c: Likewise.
- * expmed.c, expr.c, fold-const.c, function.c, integrate.c: Likewise.
- * optabs.c, sdbout.c, stmt.c, stor-layout.c, tree-dump.c: Likewise.
- * tree.c, config/iq2000/iq2000.c, config/m32r/m32r.c: Likewise.
- * config/mips/mips.c, config/rs6000/rs6000.c: Likewise.
- * config/s390/s390.c, config/sparc/sparc.c, objc/objc-act.c: Likewise.
- * stor-layout.c (layout_type, case COMPLEX_TYPE): Test for
- REAL_TYPE, not INTEGER_TYPE.
- (layout_type, case VECTOR_TYPE): Simplify code.
- * tree.c (build_vector_type_for_mode): Remove dup unsigned setting.
- * tree.h: Update comments.
- (STRIP_NOPS): Use TYPE_UNSIGNED.
- (TYPE_UNSIGNED): New macro.
- (TYPE_TRAP_SIGNED): Remove now redundant check.
- (SAVE_EXPR_NOPLACEHOLDER): Don't use TREE_UNSIGNED.
-
-2004-03-31 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * function.c (put_var_into_stack): Properly set orig_reg for indirect.
-
-2004-03-31 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/t-darwin (LIB2FUNCS_STATIC_EXTRA):
- Add darwin-fpsave.asm, darwin-vecsave.asm,
- and darwin-world.asm.
- (TARGET_LIBGCC2_CFLAGS): Add -Wa,-force_cpusubtype_ALL
- as the asm files contain altivec instructions.
- * config/rs6000/darwin-fpsave.asm: New file.
- * config/rs6000/darwin-vecsave.asm: New file.
- * config/rs6000/darwin-world.asm: New file.
-
-2004-03-31 Zack Weinberg <zack@codesourcery.com>
-
- * gengtype-yacc.y (option, stringseq): Add missing
- terminating semicolon.
-
-2004-03-30 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (tls_gd_32, tls_gd_64,
- tls_ld_32, tls_ld_64, tls_dtprel_32, tls_dtprel_64,
- tls_dtprel_ha_32, tls_dtprel_ha_64,
- tls_dtprel_lo_32, tls_dtprel_lo_64,
- tls_got_dtprel_64, tls_tprel_32, tls_tprel_64,
- tls_tprel_ha_32, tls_tprel_ha_64,
- tls_tprel_lo_32, tls_tprel_lo_64,
- tls_got_tprel_32, tls_got_tprel_64,
- tls_tls_32, tls_tls_64): Replace register_operand with
- gpc_reg_operand.
-
-2004-03-30 Mostafa Hagog <mustafa@il.ibm.com>
-
- * config/rs6000/rs6000.md (*ctrsi_internal1, *ctrsi_internal2,
- *ctrdi_internal1, *ctrdi_internal2, *ctrsi_internal3,
- *ctrsi_internal4, *ctrdi_internal3, *ctrdi_internal4,
- *ctrsi_internal5, *ctrsi_internal6, *ctrdi_internal5,
- *ctrdi_internal6): Replace register_operand with
- nonimmediate_operand.
-
-2004-03-29 Fariborz Jahanian <fjahanian@apple.com>
-
- * fold-const.c (fold): Reassociate multiply expression
- with an adjacent non-multiply expression to use
- architecture's multiply-add instruction.
-
-2004-03-30 Zack Weinberg <zack@codesourcery.com>
-
- * gengtype.c (create_option): New function.
- * gengtype.h: Prototype it.
- * gengtype-yacc.y (stringseq): New rule.
- (option): Use create_option. Add new bare ID production. Use
- stringseq, not STRING directly.
-
- * alias.c, bitmap.c, c-decl.c, cgraph.h, cpplib.h, cselib.h
- * dwarf2out.c, emit-rtl.c, function.h, lists.c, tree.h
- * varray.h, config/alpha/alpha.c:
- Use new shorter form of GTY markers.
-
- * doc/gty.texi: Rewrite.
-
-2004-03-30 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/darwin.c (machopic_function_base_name):
- Remove current_name and getting the name of the
- current function.
-
-2004-03-30 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.md (thumb_jump): Reduce the backward branch
- range, and increase the forward branch range, to allow for
- the fact that the PC will be off by 4.
-
-2004-03-30 Alan Modra <amodra@bigpond.net.au>
-
- * .cvsignore: Add GPATH, GRTAGS, GSYMS and GTAGS (GNU GLOBAL)
-
-2004-03-30 Hartmut Penner <hpenner@de.ibm.com>
-
- * config/rs6000/rs6000.c (output_vec_const_move):
- Find all cases of EASY_VECTOR_15_ADD_SELF.
- (easy_vector_constant_add_self): Accept
- all vector constant loadable by vsplt* and vadd*.
- (easy_vector_same): Use easy_vector_splat_const.
- (easy_vector_const): Use easy_vector_splat_const.
- (easy_vector_splat_const): New function.
- (gen_easy_vector_constant_add_self): New function.
-
- * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self):
- New prototype.
-
- * config/rs6000/altivec.md (movv4si splitter): Change to
- emit move insn with halfed vector constant.
- (*movv8hi splitter): Likewise.
- (*movv16qi splitter): Likewise.
-
-2004-03-30 Hartmut Penner <hpenner@de.ibm.com>
-
- PR 11591
- * config/rs6000/rs6000.c (rs6000_legitimate_address):
- Allow any offset to argument pointer in no-strict case.
-
-2004-03-30 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (backend_init): Add missing call to inint_optimization_passes.
- * passes.c (init_optimization_passes, finish_optimization_passes): Output cgraph
- dump file in non-unit-at-a-time mode.
-
-2004-03-29 Hans-Peter Nilsson <hp@axis.com>
-
- * config/cris/cris.h: Correct #ifdef to test for
- HAVE_AS_NO_MUL_BUG_ABORT_OPTION, not
- HAVE_AS_MUL_BUG_ABORT_OPTION.
-
-2004-03-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * function.c (put_var_into_stack): If old RTL was ADDRESSOF, update
- the address inside the old RTL.
-
-2004-03-28 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c: Verify that C_SIZEOF_STRUCT_LANG_IDENTIFIER is correct.
- (struct c_binding, struct c_scope): Add chain_next
- attributes to GTY markers.
- (struct lang_identifier, struct lang_tree_node): Define
- here...
- * c-tree.h: ... not here. No longer need to declare struct
- c_binding either. Do define C_SIZEOF_STRUCT_LANG_IDENTIFIER.
- * c-lang.c, objc/objc-lang.c: Set LANG_HOOKS_IDENTIFIER_SIZE
- to C_SIZEOF_STRUCT_LANG_IDENTIFIER.
-
- PR 14734, 11944
- * c-decl.c (get_parm_info): If error_mark_node is encountered
- in the bindings chain, unbind and discard it; don't abort.
-
-2004-03-28 Olga Golovonevsky <olga@il.ibm.com>
- Dorit Naishlos <dorit@il.ibm.com>
-
- * config/rs6000/altivec.md: (andvv16qi3, andv8hi3, one_cmplv16qi2,
- one_cmplv8hi2, one_cmplv4si2, iorv16qi3, iorv8hi3,): New modelling.
-
-2004-03-28 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11-protos.h (m68hc11_page0_symbol_p): Declare.
-
- * config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute): New.
- (m68hc11_attribute_table): New attribute "page0" to mark a global
- variable as being allocated from within page0 section.
- (m68hc11_encode_label): New function.
- (m68hc11_strip_name_encoding): New function.
- (m68hc11_page0_symbol_p): New function.
- (m68hc11_indirect_p): Accept global variables marked in page0.
- (m68hc11_encode_section_info): Lookup "page0" attribute.
-
- * config/m68hc11/m68hc11.h (EXTRA_CONSTRAINT): 'R' constraint also
- represents access to page0 variables.
-
- * config/m68hc11/m68hc11.md ("*logicalsi3_zexthi"): Use gen_rtx_REG.
- ("*logicalsi3_silshl16_zext"): Likewise.
- ("*ashldi3_const32"): Likewise.
- (peephole2 ashift): Likewise.
-
-2004-03-28 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-tree.h (C_DECL_REGISTER): New.
- * c-aux-info.c (gen_decl), c-decl.c (objc_mark_locals_volatile,
- finish_decl, grokdeclarator, get_parm_info), c-typeck.c
- (build_array_ref, c_mark_addressable): Set and use it.
- * c-decl.c (grokdeclarator), c-typeck.c (c_mark_addressable):
- Allow structures with volatile fields to be declared register.
- Don't check TREE_ADDRESSABLE before warning about taking address
- of register.
- * c-decl.c (finish_decl): Don't allow structures with volatile
- fields to be placed in named register.
- * doc/trouble.texi: Remove reference to structures with volatile
- fields in registers.
-
-2004-03-27 Ulrich Weigand <uweigand@de.ibm.com>
-
- * function.c (thread_prologue_and_epilogue): Move
- NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes
- before the epilogue.
-
-2004-03-27 Ulrich Weigand <uweigand@de.ibm.com>
-
- * expr.c (store_constructor): Use gen_int_mode to correctly
- sign-extend CONST_INT value.
-
-2004-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtin-types.def (BT_WINT, BT_FN_INT_WINT, BT_FN_WINT_WINT): New.
- * builtins.def (DEF_C94_BUILTIN): New. Add wctype builtins.
- * doc/extend.texi: Likewise.
-
-2004-03-26 Diego Novillo <dnovillo@redhat.com>
-
- * c-typeck.c (comptypes): Replace calls to TYPE_DOMAIN
- with TYPE_ORIG_SIZE_TYPE.
-
-2004-03-25 Aldy Hernandez <aldyh@redhat.com>
-
- PR 14219
- * c-typeck.c (build_binary_op): Do not allow comparisons of
- vectors.
-
-2004-03-26 James A. Morrison <ja2morri@uwaterloo.ca>
-
- * config.gcc: Remove sparc-tti-*.
- * config/sparc/pbd.h: Delete.
-
- * config/sparc/sol2.h: Remove note about Sun OS 4.x.
- * config/sparc/aout.h: Likewise.
-
- * config/sparc/sparc.h: Remove if 0'd code.
- * config/sparc/sparc.md (call): Remove if 0'd code.
- (call_value): Likewise.
- (nonlocal_goto): Likewise.
- (unimp_insn): Delete.
-
-2004-03-25 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like
- BIT_IOR_EXPR; A^B is nonnegative when A and B are nonnegative.
-
-2004-03-25 Richard Henderson <rth@redhat.com>
-
- PR 11527
- * c-typeck.c (pop_init_level): Emit pending init elements earlier
- rather than later.
-
-2004-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin): Fix error in last change.
-
-2004-03-25 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h: Formatting fix.
-
-2004-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def: Add ctype builtins.
- * doc/extend.texi: Likewise.
-
-2004-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (fold_builtin): Add new builtin optimizations for
- sqrt and/or cbrt.
- * fold-const.c (fold): Likewise.
-
-2004-03-25 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_always_hint): New variable.
- (rs6000_sched_groups): New variable.
- (processor_target_table): Add power5.
- (rs6000_override_options): Set rs6000_sched_insert_nops,
- rs6000_sched_costly_dep and rs6000_sched_restricted_insns_priority
- from rs6000_sched_groups.
- (output_cbranch): Use rs6000_always_hint.
- (rs6000_variable_issue): Use rs6000_sched_groups.
- (rs6000_adjust_cost): Add CPU_POWER5.
- (is_microcoded_insn): Use rs6000_sched_groups.
- (is_dispatch_slot_restricted): Use rs6000_sched_groups.
- Return 2 for POWER5 cracked instructions.
- (is_cracked_insn): Use rs6000_sched_groups.
- (is_branch_slot_insn): Use rs6000_sched_groups.
- (rs6000_issue_rate): Add CPU_POWER5.
- (rs6000_sched_finish): Use rs6000_sched_groups.
- (rs6000_rtx_costs): Add PROCESSOR_POWER5.
- * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER5.
- (DEFAULT_SCHED_COSTLY_DEP): Delete.
- (DEFAULT_RESTRICTED_INSNS_PRIORITY): Delete.
- (DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Delete.
- * config/rs6000/rs6000.md (define_attr "cpu"): Add power5.
- * config/rs6000/power5.md: New file.
- * doc/invoke.texi: Add power5 option.
-
-2004-03-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * cfgrtl.c, dbxout.c, tree.def, config/darwin.h,
- config/arm/arm.c, objc/objc-act.c: Fix comment typos.
- * doc/invoke.texi: Fix a typo.
-
-2004-03-25 Kazu Hirata <kazu@cs.umass.edu>
-
- PR optimization/9707.
- * stmt.c (emit_case_nodes): Emit equality comparisons instead
- of recursing if both children are single-valued cases with no
- children.
-
-2004-03-25 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (vfp_print_multi): Remove.
- (arm_output_fldmx): New function.
- (vfp_emit_fstmx): Return block size, not insn. Add ARM10 VFPr1 bugfix.
- (arm_expand_prologue): Update to match.
- (arm_get_vfp_saved_size): New Function.
- (arm_get_frame_offsets): Use it.
- (arm_output_epilogue): Use new functions.
-
-2004-03-24 Richard Henderson <rth@redhat.com>
-
- * alias.c (alias_invariant, alias_invariant_size): Mark GTY.
- (reg_known_value, reg_known_value_size): Likewise; make static.
- (reg_known_equiv_p): Make static.
- (clear_reg_alias_info): Update for new indexing.
- (get_reg_known_value, set_reg_known_value): New.
- (get_reg_known_equiv_p, set_reg_known_equiv_p): New.
- (canon_rtx): Use them.
- (init_alias_analysis): Likewise. Allocate reg_known_value with gc.
- Don't play queer offsetting games with reg_known_value and
- reg_known_equiv_p.
- (end_alias_analysis): Free reg_known_value with gc.
- * rtl.h (get_reg_known_value, get_reg_known_equiv_p): Declare.
- * sched-deps.c (reg_known_equiv_p, reg_known_value): Remove.
- (deps_may_trap_p, sched_analyze_1, sched_analyze_2): Use the new
- functions instead.
-
-2004-03-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * dwarf2asm.c, loop.h, pretty-print.c, pretty-print.h,
- config/i386/mmintrin.h: Update copyright.
-
-2004-03-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.ac: Add --enable-werror-always (for top level bootstrap
- support).
- * configure: Regenerate.
-
-2004-03-24 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (objc_comptypes): Treat comparisons
- between 'Class' and '<class> *' as explicitly invalid.
-
-2004-03-24 David Edelsohn <edelsohn@gnu.org>
-
- * doc/invoke.texi (-frename-registers): Add enabled at -O3.
- (-fprofile-values): Add enabled with profile-{generate,use}.
- (-fvpt): Same.
- (-ftracer): Add enabled with profile-use.
- (-funit-at-a-time): Add enabled at -O2,-O3.
- (-funroll-loops): Add enabled with profile-use.
- (-funswitch-loops): Add enabled with profile-use. Remove duplicates.
- (max-gcse-passes): Mention default.
- (max-cse-path-length): Mention default.
-
-2004-03-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in (STRICT2_WARN): Reorder.
- * configure.ac: Check for -Wold-style-definition, and use it
- in strict1_warn if it's available.
- * configure: Regnerate.
-
-2004-03-24 Paul Brook <paul@nowt.org>
-
- * config.gcc <arm>: Add --with-abi=
- * config/arm/arm-protos.h (arm_get_frame_size, thumb_get_frame_size,
- thumb_far_jump_used): Remove prototypes.
- (arm_needs_doubleword_align): Add prototype.
- (thumb_compute_initial_elimination_offset): Ditto.
- * config/arm/arm.c (arm_get_frame_offsets): New function.
- (use_return_insn, output_return_instruction, arm_output_epilogue,
- arm_output_function_epilogue, arm_compute_initial_elimination_offset,
- arm_expand_prologue, thumb_expand_epilogue): Use it.
- (arm_abi, target_abi_name, all_arm_abis): New variables.
- (arm_override_options): Set them. Set structure padding for AAPCS.
- (arm_return_in_memory): Update ABI check.
- (arm_init_cumulative_args): Initialize can_split.
- (arm_needs_doubleword_align): New function.
- (arm_function_arg): Don't split args after pushing to stack. Handle
- doubleword/even reg alignment.
- (arm_va_arg): Handle all doubleword aligned args.
- (add_minpoolforward ref, dump_minpool, push_minpool_fix): Align based
- on ABI, not CPU.
- (arm_compute_save_reg0_reg12_mask): Fix comment.
- (thumb_get_frame_size, thumb_get_frame_size): Remove.
- (thumb_jump_far_used_p): Remove superfluous argument. Return save
- value for alignment.
- (thumb_unexpanded_epilogue, thumb_output_function_prologue): Change
- to match.
- (thumb_compute_initial_elimination_offset): New function.
- (thumb_expand_prologue): Use arm_get_frame_offsets. Remove
- unneccessary rounding.
- * config/arm/arm.h (target_abi_name): Declare.
- (ARM_DOUBLEWORD_ALIGN, DOUBLEWORD_ALIGNMENT, TARGET_IWMMXT_ABI,
- arm_abi_type, ARM_DEFAULT_ABI): Define.
- (ARM_FLAG_ATPCS): Remove.
- (TARGET_OPTIONS, OPTION_DEFAULT_SPECS): Add -mabi=.
- (BIGGEST_ALIGNMENT, PREFERRED_STACK_BOUNDARY, STACK_BOUNDARY): Use it.
- (ADJUST_FIELD_ALIGN, DATA_ALIGNMENT, LOCAL_ALIGNMENT,
- TYPE_NEEDS_IWMMXT_ALIGNMENT): Remove.
- (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P):
- Contitionalize on ABI, not CPU.
- (struct arm_stack_offsets): Define.
- (struct machine_function): Add stack_offsets. Remove frame_size.
- (FUNCTION_ARG_PARTIAL_NREGS): Don't split if previous args have been
- pushed.
- (FUNCTION_ARG_ADVANCE, FUNCTION_ARG_BOUNDARY): Handle general
- doubleword alignment.
- (THUMB_INITIAL_ELIMINATION_OFFSET,
- ARM_INITIAL_ELIMINATION_OFFSET): Remove.
- (INITIAL_ELIMINATION_OFFSET): Call functions directly.
- * config/arm/arm.md (align_8): Enable for all targets.
- * config/arm/netbsd-elf.h (TARGET_DEFAULT): Remove TARGET_ATPCS.
- (ARM_DEFAULT_ABI): Define.
- * doc/invoke.texi <ARM>: Document -mabi=. Update documentation for
- -mstructure-size-boundary.
-
-2004-03-24 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.ac: Check for -Wno-variadic-macros; don't use
- -pedantic (in stage 1 or a simple 'make all') unless it's available,
- and if it's available, use it. Also, clean up check for
- -Wno-long-long.
- * configure: Regenerate.
-
-2004-03-24 Richard Sandiford <rsandifo@redhat.com>
-
- * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Remove tm_defines.
- * config/mips/vr.h (DEFAULT_VR_ARCH): New macro, defined to vr4130.
- (MULTILIB_DEFAULTS): Use it.
- (MIPS_CPU_STRING_DEFAULT): Remove.
- (MIPS_ABI_DEFAULT, MIPS_MARCH_CONTROLS_SOFT_FLOAT): Define.
- (DRIVER_SELF_SPECS): Make -mfix-vr4122-bugs imply -march=vr4120. Make
- EABI64 -mlong32 the default ABI. Enforce the default architecture.
- * config/mips/t-vr (MULTILIB_OPTIONS): Add mfix-vr4122-bugs,
- march=vr4130, march=vr4300, march=vr5000 and march=vr5500.
- (MULTILIB_MATCHES): Use -mfix-vr4122-bugs multilibs for -march=vr4120.
- (MULTILIB_EXCEPTIONS): Change choice of multilibs. Update comments
- accordingly.
-
-2004-03-24 DJ Delorie <dj@redhat.com>
- Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (MASK_FIX_VR4122, TARGET_FIX_VR4122): New macros.
- (TARGET_SWITCHES): Add -mfix-vr4122-bugs and -mno-fix-vr4122-bugs.
- (ASM_SPEC): Pass down -mfix-vr4122-bugs.
- * config/mips/mips.c (mips_avoid_hazards): Don't emit whole functions
- in .set noreorder and .set nomacro if TARGET_FIX_VR4122.
- (mips_init_libfuncs): Use special functions for divsi3 and modsi3
- if TARGET_FIX_VR4122.
- * config/mips/mips.md (define_attr length): Account for nops inserted
- after macc and dmult when using -mfix-vr4122-bugs.
- (umuldi3_highpart, divmodsi4, divmoddi4): Disable if TARGET_FIX_VR4122.
- * config/mips/t-vr (LIB2FUNCS_STATIC_EXTRA): Define instead of
- LIB2FUNCS_EXTRA. Add config/mips/vr4122-div.S.
- * config/mips/vr4122-div.S: New file.
- * doc/invoke.texi: Document -mfix-vr4122-bugs.
-
-2004-03-24 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (PROCESSOR_R4130): New processor_type.
- (TARGET_MIPS4130): New macro.
- (ISA_HAS_MACC): Return true if TARGET_MIPS4130 && !TARGET_MIPS16.
- * config/mips/mips.c (mips_cpu_info_table): Add a vr4130 entry.
- (override_options): Extend MIPS_MARCH_CONTROLS_SOFT_FLOAT to deal
- with PROCESSOR_R4130.
- * config/mips/mips.md (define_attr cpu): Add r4130.
- * doc/invoke.texi: Document vr4130 as a supported MIPS architecture.
-
-2004-03-24 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
- Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Apply missed hunk from 2004-03-03 change.
-
-2004-03-24 Alexandre Oliva <aoliva@redhat.com>
-
- PR preprocessor/14438
- * cpplib.c (do_pragma): Remove line_change call after pragma
- handler.
-
-2004-03-23 Ian Lance Taylor <ian@wasabisystems.com>
-
- * doc/extend.texi (ARM Built-in Functions): Replace with correct
- declarations.
-
-2004-03-23 Roger Sayle <roger@eyesopen.com>
-
- * reg-stack.c (get_true_reg): Handle FLOAT_TRUNCATE like FLOAT_EXTEND
- if flag_unsafe_math_optimizations.
- * config/i386/i386.md (truncdfsf2): If flag_unsafe_math_optimizations
- and TARGET_80387 expand using truncdfsf2_noop pattern.
- (truncxfsf2): Likewise using truncxfsf2_noop.
- (truncxfdf2): Likewise using truncxfdf2_noop.
- (truncdfsf2_noop, truncxfsf2_noop, truncxfdf2_noop): New patterns.
-
-2004-03-23 Ziemowit Laski <zlaski@apple.com>
-
- * hooks.c (hook_constcharptr_tree_null): New hook.
- * hooks.h (hook_constcharptr_tree_null): New prototype.
- * target-def.h (TARGET_MANGLE_FUNDAMENTAL_TYPE): New target hook.
- * target.h (mangle_fundamental_type): New target hook.
- * config/rs6000/rs6000.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Point
- target hook at rs6000_mangle_fundamental_type.
- (rs6000_mangle_fundamental_type): New function.
- * doc/tm.texi (TARGET_MANGLE_FUNDAMENTAL_TYPE): Document.
-
-2004-03-23 Zack Weinberg <zack@codesourcery.com>
-
- PR 12267, 12391, 12560, 13129, 14114, 14133
- * c-tree.h: Forward declare struct c_binding. Declare
- c_override_bindings_to_false. Update prototypes.
- (struct lang_identifier): Update comments. Change fields to be
- struct c_binding *.
- (IDENTIFIER_SYMBOL_VALUE, IDENTIFIER_TAG_VALUE)
- (IDENTIFIER_LABEL_VALUE, C_DECL_INVISIBLE)
- (KEEP_NO, KEEP_YES, KEEP_MAYBE): Delete.
- (C_DECL_IN_EXTERNAL_SCOPE, C_DECL_DECLARED_BUILTIN): New.
- * c-common.h: Update prototypes.
- * c-decl.c (struct c_scope): Update commentary. Remove names,
- names_last, parms, parms_last, tags, and shadowed fields. Add
- bindings and depth fields.
- (scope_freelist): Move to more appropriate location.
- (c_print_identifier): Update for changes to struct lang_identifier.
- (objc_mark_locals_volatile): Update for new bindings structures.
- (global_bindings_p): Honor c_override_global_bindings_to_false.
- (pushlevel): Rename to push_scope; take no arguments; use the
- scope_freelist; initialize scope->depth and check for overflow.
- (poplevel): Rename to pop_scope; totally rewritten for new bindings
- structures.
- (diagnose_mismatched_decls): Use C_DECL_DECLARED_BUILTIN, not
- C_DECL_INVISIBLE, for certain decisions. Adjust some diagnostics.
- Improve some commentary. Adjust handling of forward parm decls.
- (merge_decls): Set C_DECL_DECLARED_BUILTIN when appropriate.
- Preserve C_DECL_IN_EXTERNAL_SCOPE.
- (warn_if_shadowing): Correct indentation. Improve diagnostics.
- (pushdecl): Remove unnecessary assertion. Short-circuit anonymous
- decls. Rewrite for new bindings structures. Improve commentary.
- Eliminate the copy_node call.
- (implicit_decl_warning): Use the "diag" idiom (as seen in
- locate_old_decl) to reduce code duplication; call locate_old_decl
- if appropriate. Relocate to remove need for forward declaration.
- (implicitly_declare): Adjust for new bindings structures. Kludge
- around Objective-C not-really-builtin functions.
- (undeclared_variable): Improve diagnostics. If current_function_decl
- is nonnull but current_function_scope is null, use current_scope.
- Use bind.
- (lookup_tag): Adjust for new bindings structures. Kludge around
- Objective-C's tag declarations that wind up in the external scope.
- (lookup_name): Adjust for new bindings structures. Kludge around
- c-common.c's pseudo-typedefs that wind up in the external scope.
- (lookup_name_current_level): Rename lookup_name_in_scope; take a
- second argument indicating the scope to examine; rewrite for
- new bindings structures.
- (c_init_decl_processing): Adjust for renamed functions. Do not
- initialize current_file_decl, first_builtin_decl, last_builtin_decl.
- First scope pushed is the external scope, not the global scope.
- (builtin_function): Use bind, not pushdecl. Adjust other bits
- for new data structures. Keep track of builtins that should be
- made visible automatically.
- (start_decl): Adjust diagnostics. Remove unnecessary call to
- expand_decl.
- (grokparms): Return 0 if arg_types is error_mark_node.
- (get_parm_info): Rename "void_at_end" argument to "ellipsis", with
- reversed sense. Rewrite for new bindings structures. Do not
- leave any decls in the scope, to prevent pop_scope from doing
- contradictory things with them.
- (finish_struct, finish_enum): Remove redundant diagnostics.
- (build_enumerator): Don't cascade diagnostics for error_mark_node.
- Mark location where -pedantic changes the meaning of the program.
- (store_parm_decls_newstyle, store_parm_decls_oldstyle): Load the
- parameter decls into the function's scope structure using bind.
- Warn here about function definitions in the wrong style.
- Adjust diagnostics.
- (store_parm_decls): Correct the determination of whether a
- function was defined with a prototype.
- (c_write_global_declarations): Operate on all file decls and on
- the external scope. Split body of the loop to...
- (c_write_global_declarations_1): ... this new function, to avoid
- code duplication.
- (truly_local_externals, first_builtin_decl, last_builtin_decl)
- (make_scope, pop_scope, in_parm_level_p, set_block)
- (any_external_decl, record_external_decl, bind_label, getdecls)
- (link_hash_hash, link_hash_eq, merge_translation_unit_decls)
- (c_reset_state): Delete.
- (visible_builtins, c_override_global_bindings_to_false)
- (c_binding, I_SYMBOL_BINDING, I_SYMBOL_DECL, I_TAG_BINDING)
- (I_TAG_DECL, I_LABEL_BINDING, I_LABEL_DECL, file_scope)
- (external_scope, binding_freelist, bind, free_binding_and_advance)
- (push_file_scope, pop_file_scope): New.
- (pushtag, pushdecl_top_level, lookup_label, declare_label)
- (define_label, c_make_fname_decl, finish_decl)
- (mark_forward_parm_decls, build_compound_literal)
- (grokdeclarator, start_function, check_for_loop_decls)
- (identifier_global_value, record_builtin_type): Minor adjustments
- for new bindings structures. Improve diagnostics and commentary.
- * c-objc-common.c (start_cdtor, finish_cdtor): Adjust calls to
- pushlevel/poplevel respectively.
- (c_objc_common_finish_file): Don't call merge_translation_unit_decls.
- * c-opts.c (c_common_parse_file): Remove spurious ATTRIBUTE_UNUSED.
- Warn about YYDEBUG not being defined only if -dy. Remove no-longer-
- correct loop over multiple translation units; call fatal_error if
- requested to compile more than one file at once. (This disables
- IMA temporarily - an up-front error being preferable to a crash.)
- * c-parse.in (pushlevel, poplevel rules): Rename push_scope, pop_scope.
- (all actions): Adjust calls to pushlevel/poplevel.
- (parsing_iso_function_signature): Delete.
- (extdef_1): Fold into extdef.
- (old_style_parm_decls_1): Fold into old_style_parm_decls. Don't
- warn here about function definitions in the wrong style.
- (after_tyle_declarator, parm_declarator_starttypename)
- (parm_declarator_nostarttypename, notype_declarator): Remove
- commented-out productions.
- (parmlist_1, parmlist_2): Use make_node, not tree_cons, to create
- an empty TREE_LIST node. Adjust calls to get_parm_info.
- (parmlist_2 : ELLIPSIS): Tag the arg-info block with error_mark_node
- to suppress -Wold-style-definition after this error.
- (c_parse_file): Don't clear the binding stack or call
- finish_fname_decls here. Correct comment.
- * c-typeck.c (same_translation_unit_p): Export.
- (common_type): Use c_override_global_bindings_to_false, not
- pushlevel/poplevel/declare_parm_level.
- * c-lang.c: Override LANG_HOOKS_CLEAR_BINDING_STACK,
- LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK,
- and LANG_HOOKS_GETDECLS with do-nothing stubs.
- * objc/objc-lang.c: Likewise.
- * objc/objc-act.c: Adjust all calls to pushlevel, poplevel,
- get_parm_info.
- (OBJC_VOID_AT_END): Delete; replace all uses
- with void_list_node.
- (generate_forward_declaration_to_string_table): Delete.
- * objc/objc-act.h (OCTI_STRG_DECL, UOBJC_STRINGS_decl): Delete.
-
- * coverage.c (create_coverage): Don't pushdecl anything.
- * langhooks.c (lhd_clear_binding_stack): Call
- lang_hooks.decls.poplevel, not poplevel.
- * tree.c (list_length): If ENABLE_TREE_CHECKING, abort on a
- circular list rather than going into an infinite loop.
-
-2004-03-23 Olivier Hainque <hainque@act-europe.fr>
-
- * optabs.c (expand_binop): When synthesizing double word rotates
- from single word shifts, use a new register target if the provided
- target is not a REG already.
-
-2004-03-23 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * alias.c (get_alias_set): Add support for TYPE_REF_CAN_ALIAS_ALL.
- * c-common.c (handle_mode_attribute): Add extra arg to
- build_pointer_type_for_mode and build_reference_type_for_mode.
- * c-typeck.c (build_c_cast): Only look at TREE_CONSTANT_OVERFLOW
- for INTEGER_CST.
- * tree.c (build_pointer_type_for_mode): Add arg CAN_ALIAS_ALL.
- Chain pointers via TYPE_NEXT_PTR_TO.
- (build_reference_type_for_mode): Similarly.
- (build_type_no_quals): Add extra arg to build_pointer_type_for_mode
- and build_reference_type_for_mode.
- (tree_check4_failed): New function.
- * tree.h (TREE_CHECK4, PTR_OR_REF_CHECK): New macros.
- (TYPE_REF_CAN_ALIAS_ALL, TYPE_NEXT_PTR_TO, TYPE_NEXT_REF_TO): Likewise.
- (TREE_NO_UNSUED_WARNING, TREE_VIA_VIRTUAL, TREE_CONSTANT_OVERFLOW):
- Add check.
-
-2004-03-23 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (tree_expr_nonnegative_p): A&B is nonnegative when
- A is nonnegative or B is nonnegative. Similarly A|B is nonnegative
- when both A and B are nonnegative.
- (tree_expr_nonzero_p): A|B is nonzero when A is nonzero or B is
- nonzero.
-
-2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Remove cases for INTEGER_CST, REAL_CST,
- VECTOR_CST, STRING_CST, COMPLEX_CST, and CONSTRUCTOR.
-
-2004-03-23 Kazu Hirata <kazu@cs.umass.edu>
-
- PR optimization/14669
- * fold-const.c (fold): Only unwiden integer comparisons for equality
- and inequality operators, or when the signedness doesn't change.
-
-2004-03-23 Jakub Jelinek <jakub@redhat.com>
-
- * config.gcc (sparc-*-linux*): Add sparc/t-linux to tmake_file.
- * config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Set.
- * config/sparc/t-linux: New file.
-
-2004-03-23 Richard Sandiford <rsandifo@redhat.com>
-
- * gcse.c (can_assign_to_reg_p): New function, split out from...
- (want_to_gcse_p): ...here.
- (compute_ld_motion_mems): Use can_assign_to_reg_p to validate
- the rhs of a store.
-
-2004-03-22 Diego Novillo <dnovillo@redhat.com>
-
- * c-typeck.c (same_translation_unit_p): Fix pasto.
-
-2004-03-22 David Edelsohn <edelsohn@gnu.org>
-
- * params.def (PARAM_MAX_SCHED_REGION_BLOCKS): New.
- (PARAM_MAX_SCHED_REGION_INSNS): New.
- * sched-rgn.c: Include params.h
- (MAX_RGN_BLOCKS): Delete.
- (MAX_RGN_INSNS): Delete.
- (too_large): Return bool. Convert to PARAM_VALUE.
- * Makefile.in (sched-rgn.o): Depend on $(PARAMS_H).
- * doc/invoke.texi (param): Document max-sched-region-blocks and
- max-sched-region-insns.
-
-2004-03-22 Joel Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (is_subrange_type): Do not emit a subrange_type DIE
- for base types.
-
-2004-03-22 Joel Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (is_subrange_type): Minor code rework. No behavior
- change.
-
-2004-03-22 Jakub Jelinek <jakub@redhat.com>
-
- PR c/14069
- * c-decl.c (finish_struct): Change type of incorrect flexible array
- field into error_mark_node.
-
-2004-03-22 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/14580
- * config/rs6000/rs6000.c (symbol_ref_operand): Reject symbols
- who are not local for Darwin PIC.
-
-2004-03-22 Ulrich Weigand <uweigand@de.ibm.com>
-
- * regrename.c (regrename_optimize): Set regs_ever_live for all
- registers introduced as replacement.
-
-2004-03-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR middle-end/14470
- * expr.c (mark_queue): New function.
- (emit_insns_enqueued_after_mark): New function replacing
- emit_queue. Clear the body of emitted queued insns.
- (emit_queue): Call emit_insns_enqueued_after_mark.
- (store_expr): Mark the increment queue on entry. Emit
- only the incrementations queued when expanding the source.
-
-2004-03-22 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.ac: Allow --disable-coverage-flags (for the future benefit
- of top level bootstrap, and consistency). Reindent.
- * configure: Regenerate.
-
-2004-03-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * bt-load.c, builtins.c, cfghooks.c, cfgrtl.c, gcse.c,
- ggc-page.c, integrate.c, var-tracking.c, web.c: Remove
- unnecessary casts.
-
-2004-03-22 Danny Smith <dannysmith@users.sourceforge.net>
-
- PR target/14291
- * gcov-io.h (gcov_truncate): Define ftruncate as _chsize for
- __MINGW32__.
-
-2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*doloop_si"): Change predicate for operand 2
- to nonimmediate_operand.
- ("*doloop_di"): Likewise.
-
-2004-03-21 Alexandre Oliva <aoliva@redhat.com>
-
- * real.h (struct real_value): Use the same type for all
- bitfields. Rename exp to uexp.
- (REAL_EXP, SET_REAL_EXP): New accessor macros for uexp.
- Adjust all uses of exp...
- * builtins.c: ... here, ...
- * emit-rtl.c: ... here, and ...
- * real.c: ... and here.
-
-2004-03-21 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * pretty-print.c (pp_base_maybe_space): New function.
- * pretty-print.h (pp_base_maybe_space): Declare.
- (pp_maybe_space): New macro.
-
-2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("addti3", "subti3"): New insns and splitters.
-
-2004-03-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * expmed.c (choose_mult_variant): Pass MULT_COST as argument instead
- of using register multiplication cost.
- (expand_mult): Adapt choose_mult_variant call.
- (expand_mult_highpart): Call choose_mult_variant with WIDER_MODE
- of MODE; pass appropriate cost bound. Adjust result when
- performing signed multiplication by a negative constant.
- Don't use intermediate modes larger than word_mode.
-
-2004-03-21 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * alias.c (get_alias_set): Remove handling of PLACEHOLDER_EXPR.
- * emit-rtl.c (component_ref_for_mem_expr): Likewise.
- (set_mem_attributes_minus_bitpos): Call SUBSTITUTE_PLACEHOLDER_IN_EXPR.
- * explow.c (expr_size): Likewise.
- * expr.h (placeholder_list, find_placeholder): Deleted.
- * expr.c (store_constructor): Likewise.
- (get_inner_reference): Likewise. Also don't call find_placeholder.
- (placeholder_list, find_placeholder): Deleted.
- (is_aligning_offset): Don't handle WITH_RECORD_EXPR, PLACEHOLDER_EXPR.
- (expand_expr_real, cases PLACEHOLDER_EXPR, WITH_RECORD_EXPR): Likewise.
- (highest_pow2_factor, case WITH_RECORD_EXPR): Remove.
- * dojump.c (do_jump, case WITH_RECORD_EXPR): Likewise.
- * dwarf2out.c (loc_descriptor_from_tree, case WITH_RECORD_EXPR):
- Likewise.
- * fold-const.c (invert_truthvalue, case WITH_RECORD_EXPR): Likewise.
- (extract_muldiv, case WITH_RECORD_EXPR): Likewise.
- * tree.c (expr_align, case WITH_RECORD_EXPR): Likewise.
- (contains_placeholder_p): Don't handle WITH_RECORD_EXPR.
- Clean up by using first_rtl_op.
- (substitute_in_expr): Use SUBSTITUTE_IN_EXPR for recursive call.
- (substitute_placeholder_in_expr): New function.
- * tree.def (WITH_RECORD_EXPR): Deleted.
- * tree.h (SUBSTITUTE_IN_EXPR, SUBSTITUTE_PLACEHOLDER_IN_EXPR): New.
- (substitute_placeholder_in_expr): New.
-
-2004-03-21 Andrew Pinski <pinskia@gcc.gnu.org>
-
- * dojump.c (prefer_and_bit_test): Fix which part of
- the and_test is replaced.
-
-2004-03-21 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * frontends.texi: Add missing line.
-
-2004-03-21 Zack Weinberg <zack@codesourcery.com>
- Chris Devers <cdevers@pobox.com>
- Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/frontends.texi: Rewrite.
- * doc/gcc.texi: Update last modification date.
-
-2004-03-21 Josef Zlomek <zlomekj@suse.cz>
-
- * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Print the debug
- message before redirecting the edge.
-
-2004-03-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Set MEM_POINTER
- flag.
- * explow.c (force_not_mem): Set REG_POINTER flag according to
- MEM_POINTER one.
- * rtl.h (MEM_POINTER): New macro.
- (struct rtx_def): Use integrated for MEM_SCALAR_P and frame_related
- for MEM_POINTER.
-
-2004-03-20 Roger Sayle <roger@eyesopen.com>
-
- PR target/13889
- * cse.c (fold_rtx): Avoid substituting constants into unary
- conversion operations.
-
-2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Replace "expr" with "t".
-
-2004-03-20 Ian Lance Taylor <ian@wasabisystems.com>
-
- PR c/12373
- * c-typeck.c (tagged_types_tu_compatible_p): Don't use
- DECL_ORIGINAL_TYPE if there isn't one.
-
-2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Replace "final_type" with "type".
- Remove variable "final_type".
-
-2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Constify "type".
- Replace "TREE_TYPE (t)" with "type".
-
-2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * bb-reorder.c, bt-load.c, c-decl.c, cfgcleanup.c, coverage.c,
- dwarf2asm.c, ifcvt.c, stor-layout.c, varasm.c: Replace calls
- via (*targetm.foo) () with targetm.foo ().
-
-2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR other/14630
- * doc/install.texi: Add info directory category and entry.
-
-2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Replace "t" with "tem" where it is used
- as a temporary variable. Remove "orig_t" and all of its uses.
-
-2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold): Remove variable "invert".
- Move the handling of relational expressions that can be folded
- to a constant ...
- (fold_relational_const): ... here.
- (tree_expr_nonzero_p): New.
-
-2004-03-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/14635
- * builtins.def (nan, nanf, nanl, nans, nansf, nansl): Change to
- DEF_GCC_BUILTIN.
-
-2004-03-20 Richard Sandiford <rsandifo@redhat.com>
-
- * Makefile.in (dojump.o): Depend on $(GGC_H) and dojump.h.
- (GTFILES): Add $(srcdir)/dojump.h.
- (gt-dojump.h): New dependency.
- * dojump.c (and_reg, and_test, shift_test): New static variables.
- (prefer_and_bit_test): New function.
- (do_jump): Use it to choose between (X & (1 << C)) and (X >> C) & 1.
-
-2004-03-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-common.c, cfgcleanup.c, cgraphunit.c, c-pretty-print.c,
- expmed.c, ggc-common.c, jump.c, passes.c, recog.c, regmove.c,
- reorg.c, tree.h: Fix comment typos.
-
-2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * alias.c, attribs.c, bt-load.c, builtins.c, c-common.c,
- c-decl.c, c-objc-common.c, c-typeck.c, calls.c, cfglayout.c,
- cse.c, dbxout.c, dwarf2out.c, except.c, final.c,
- haifa-sched.c, integrate.c, passes.c, rtlanal.c, sched-rgn.c,
- sched-vis.c, simplify-rtx.c, stor-layout.c, tree.c, varasm.c,
- vmsdbgout.c: Replace calls via (*targetm.foo) () with
- targetm.foo ().
-
-2004-03-19 Ziemowit Laski <zlaski@apple.com>
-
- * config/rs6000/altivec.h (vec_dst, vec_dstst, vec_dststt,
- vec_dstt, vec_sld, vec_splat): Add prototypes, marked with
- always_inline attribute.
- * config/rs6000/rs6000.c (altivec_expand_dst_builtin):
- Treat expansion as completed even if literal argument is
- invalid (so that other expansions are not tried in vain).
-
-2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * loop-doloop.c (add_test): Replace GEN_INT (0) with
- const0_rtx.
-
-2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (fold) <ABS_EXPR>: Move the handling of constants
- ...
- (fold_abs_const): ... here.
-
-2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.h (TYPE_ARRAY_MAX_SIZE): Use type.maxval directly.
-
-2004-03-19 Denis Chertykov <denisc@overta.ru>
-
- PR target/11520
- * config/avr/avr.md ("call_insn"): Handle explicit integer
- specially.
- (call_value_insn): Likewise.
-
-2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.c (substitute_in_expr): Rewrite to simplify and be more generic.
-
-2004-03-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c (negate_expr): Move the handling of constants
- ...
- (fold_negate_const): ... here.
-
-2004-03-19 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * langhooks-def.h (LANG_HOOKS_HASH_TYPES): New macro and hook.
- * langhooks.h (struct lang_hooks_for_types): New field hash_types.
- * tree.c (debug_no_type_hash): Deleted.
- (type_hash_canon): Abort if passed a variant.
- Check lang_hooks.types.hash_types.
- (build_type_no_quals): Copy mode of POINTER_TYPE and REFERENCE_TYPE.
- (build_array_type): Remove unnecessary allocation of pointer type.
- (build_complex_type): Properly qualify resulting type.
-
-2004-03-19 Paolo Bonzini <bonzini@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_init_builtins): Fix typo.
-
-2004-03-19 Richard Sandiford <rsandifo@redhat.com>
-
- * expmed.c (choose_mult_variant, expand_mult_const): New, split from...
- (expand_mult): ...here.
- (extract_high_half): New, split out from expand_mult_highpart.
- (expand_highpart_optab): Likewise. Don't clobber target prematurely.
- (expand_highpart): Evaluate the cost of a shift/add sequence,
- then see if any of the specialized optabs are cheaper.
-
-2004-03-18 Ian Lance Taylor <ian@wasabisystems.com>
-
- * mklibgcc.in: Remove obsolete MAYBE_USE_COLLECT2.
-
-2004-03-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * convert.c (convert_to_real): Add more math builtins.
-
-2004-03-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * convert.c (convert_to_real): Reformat using switch stmt.
-
-2004-03-18 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.c (pointer_int_sum): Do not complain about using
- pointers to pointers-to-members.
-
-2004-03-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (MD_ASM_CLOBBERS): Move to "Old target macros that
- have moved to the target hooks structure".
-
-2004-03-18 James E Wilson <wilson@specifixinc.com>
-
- * config/mips/mips.md (type): Split move into arith and fmove. Split
- hilo into mthilo and mfhilo. Add trap. Delete icmp. Fix all uses.
- * config/mips/5400.md (ir_vr54_hilo, ir_vr54_arith, ir_vr54_fabs):
- Likewise.
- * config/mips/5500.md (ir_vr55_hilo, ir_vr55_arith, ir_vr55_fabs):
- Likewise.
- * config/mips/7000.md (rm7_int_other, rm7_mthilo, rm7_mfhilo,
- rm7_fp_quick): Likewise.
- * config/mips/9000.md (rm9k_int, rm9k_mfhilo, rm9k_mthilo,
- rm9k_fquick): Likewise.
- * config/mips/sr71k.md (ir_sr70_hilo, ir_sr70_arith, ir_sr70_fabs):
- Likewise.
- (ir_sr70_icmp): Delete.
-
-2004-03-18 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.h (TREE_CHECK2, TREE_CHECK3, TREE_CHECK5): New macros.
- (tree_check2_failed, tree_check3_failed, tree_check5_failed): New decl.
- (FUNC_OR_METHOD_CHECK, SET_ARRAY_OR_VECTOR_CHECK): New macros.
- (REC_OR_UNION_CHECK, NUMERICAL_TYPE_CHECK): Likewise.
- (TYPE_VALUES, TYPE_DOMAIN, TYPE_FIELDS, TYPE_METHODS, TYPE_VFIELD):
- Protect with proper check.
- (TYPE_ARG_TYPES, TYPE_METHOD_BASETYPE, TYPE_OFFSET_BASETYPE): Likewise.
- (TYPE_MIN_VALUE, TYPE_MAX_VALUE): Likewise.
- * tree.c (type_hash_eq): Rewrite to access proper fields for each type.
- (tree_check2_failed, tree_check3_failed, tree_check5_failed): New.
- * c-typeck.c (build_array_ref): Use TYPE_DOMAIN, not TYPE_VALUES.
- * dwarf2out.c (gen_enumeration_type_die): Use TYPE_VALUES,
- not TYPE_FIELDS.
- * stor-layout.c (set_sizetype): Use TYPE_ORIG_SIZE_TYPE.
-
-2004-03-18 Mostafa Hagog <mustafa@il.ibm.com>
-
- * gcse.c (eliminate_partially_redundant_loads): Reject change if
- dest is set between beginning and current insn.
-
-2004-03-18 Mark Mitchell <mark@codesourcery.com>
-
- * c-decl.c (grokdeclarator): Do not complain about redeclaring
- visible "static" identifiers "extern" in a local scope.
- * dwarf2out.c (loc_descriptor_from_tree): Handle pre- and
- post-increments/decrements.
-
-2004-03-18 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (current_function_arg_words): Delete.
- (xtensa_builtin_saveregs): Use current_function_args_info.arg_words.
- (xtensa_va_start): Remove assignment to current_function_arg_words.
-
-2004-03-18 Richard Sandiford <rsandifo@redhat.com>
-
- * alias.c (record_set): Detect the case where a register is assigned
- a new value that has the same base term as the old one.
-
-2004-03-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * doloop.c: Removed.
- * loop-doloop.c: New file.
- * Makefile.in (doloop.o): Remove.
- (loop-doloop.o): New.
- * cfgloop.h (get_loop_level, doloop_optimize_loops): Declare.
- * cfgloopanal.c (get_loop_level): New function.
- * loop-iv.c (iv_number_of_iterations): Handle case when loop
- is leaved immediatelly.
- * loop.c (strength_reduce): Do not call doloop optimization.
- * loop.h (LOOP_BCT): Removed.
- * passes.c (rest_of_handle_loop_optimize): Do not use LOOP_BCT.
- (rest_of_handle_loop2): Call doloop_optimize_loops.
- (rest_of_compilation): Test for optimizations moved to
- rest_of_handle_loop2.
-
-2004-03-17 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_stack_info): correct reg_size
- for mixed mode.
- (rs6000_emit_prologue): Ditto.
- (rs6000_emit_epilogue): Ditto.
- * config/rs6000/rs6000.h: Definition of DWARF_CIE_DATA_ALIGNMENT
- macro for mixed mode.
-
-2004-03-18 Jan Hubicka <jh@suse.cz>
-
- * predict.c (propagate_freq): Compute correctly frequency of
- EXIT_BLOCK.
-
-2004-03-17 Eric Christopher <echristo@redhat.com>
-
- * builtins.c (apply_args_size): Use reg_raw_mode.
- (apply_result_size): Ditto.
-
-2004-03-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- PR target/14620
- * config/rtems.h: Add STD_LIB_SPEC and LIB_SPEC.
-
-2004-03-17 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/t-linux64 (bispecs): Don't add -mlong-double-128 for
- 32-bit builds when defaulting to 32-bit.
-
-2004-03-17 Jan Hubicka <jh@suse.cz>
-
- * cfgrtl.c (rtl_create_basic_block): Pre-allocate basic_block_info
- array.
-
-2004-03-17 James E Wilson <wilson@specifixinc.com>
-
- * config/mips/mips.md (zero_extendsidi2): Add length attribute.
- (hazard_nop): Change type to nop.
- (type): Split arith into arith, shift, slt, clz. Delete darith.
- Fix all uses. Change arith to multi if more than one insn emitted.
- * config/mips/5400.md (ir_vr54_arith): Likewise.
- * config/mips/5500.md (ir_vr55_arith): Likewise.
- * config/mips/7000.md (rm7_int_other): Likewise.
- * config/mips/9000.md (rm9k_int): Likewise.
- * config/mips/sr71k.md (ir_sr70_arith): Likewise.
-
-2004-03-17 Joel Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (subrange_type_die): Define new variable "subtype"
- to hold the subtype tree instead of recomputing it several times.
-
-2004-03-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mn10300/mn10300.c (notice_update_cc): Don't handle
- CC_INVERT.
- * config/mn10300/mn10300.md (cc): Remove "invert".
-
-2004-03-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (integer_valued_real_p): Add builtin rint.
- (fold_builtin): Likewise.
- * convert.c (convert_to_real): Likewise.
-
- * convert.c (convert_to_real): Fix typos in `long double'
- builtins.
-
-2004-03-16 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/14481
- * fold-const.c (fold): Set TREE_NO_UNUSED_WARNING on implicitly
- generated COMPOUND_EXPRs.
-
-2004-03-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- * config/h8300/t-rtems (h8300-*-rtems*): New.
-
-2004-03-16 Eric Christopher <echristo@redhat.com>
-
- * doc/cppopts.texi(fwide-exec-charset): Fix typo.
-
-2004-03-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386-protos.h: Add a prototype for
- ix86_reverse_condition.
- * config/i386/i386.c (ix86_reverse_condition): New.
- * config/i386/i386.h (REVERSE_CONDITION): Use
- ix86_reverse_condition.
- * config/i386/i386.md: Use ix86_reverse_condition instead of
- REVERSE_CONDITION.
-
-2004-03-16 J. Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (loc_descriptor_from_tree): Add handling for MIN_EXPR.
-
-2004-03-16 Nathanael Nerode <neroden@gcc.gnu.org>
-
- PR bootstrap/12974
- * Makefile.in: Pass $(INCLUDES) down to libgcc.mk explicitly.
-
-2004-03-16 Paolo Bonzini <bonzini@gnu.org>
-
- * c-common.c (c_common_type_for_mode): Build vector types on
- demand.
- (handle_mode_attribute): Deprecate using the mode attribute
- to create vector types. Fix indentation.
- (vector_type_node_list): Remove.
- (handle_vector_size_attribute): Create vector types on demand.
- Strip a NON_LVALUE_EXPR from the attribute if there is one.
- * c-typeck.c (comptypes): Make vector types compatible if they
- have the same underlying mode.
- (convert_for_assignment): Use comptypes to convert between
- vector types.
- * tree.c (build_common_tree_nodes_2): Do not create vector types.
- * config/arm/arm.c (arm_init_iwmmxt_builtins): Create necessary
- vector types.
- * tree.h: Remove vector types.
- * config/i386/i386.c (i386_init_mmx_sse_builtins): Likewise.
- * config/rs6000/rs6000.c (rs6000_init_builtins): Likewise.
- (V16QI_type_node, V2SI_type_node, V2SF_type_node, V4HI_type_node,
- V4SI_type_node, V4SF_type_node, V8HI_type_node): New globals.
- * doc/extend.texi (Vector Types): Document how to use the
- vector_size attribute to create vectors, rather than mode.
-
- * config/arm/mmintrin.h: Use vector_size attribute, not mode.
- * config/i386/emmintrin.h: Likewise.
- * config/i386/mmintrin.h: Likewise.
- * config/i386/xmmintrin.h: Likewise.
- * config/sh/ushmedia.h: Likewise.
-
-2004-03-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/freebsd-spec.h, config/arc/arc-protos.h,
- config/arm/aout.h, config/arm/elf.h, config/arm/freebsd.h,
- config/arm/linux-gas.h, config/arm/semi.h,
- config/cris/cris-protos.h, config/i386/xm-djgpp.h,
- config/ia64/freebsd.h, config/mips/7000.md,
- config/mips/9000.md, config/ns32k/ns32k-protos.h,
- config/sparc/pbd.h: Update copyright.
-
-2004-03-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
-
- PR target/14577
- * config.gcc: Switch sh-*-rtems* to ELF. Add sh-*-rtemscoff.
-
-2004-03-16 Paolo Bonzini <bonzini@gnu.org>
-
- * combine.c (combine_simplify_rtx): Remove the "last"
- parameter and its documentation. Adjust recursive calls.
- (simplify_logical): Always perform the only simplification
- controlled by "last", if the simplified expression is
- actually different.
- (try_combine): Do not pass the "last" parameter to
- combine_simplify_rtx.
-
-2004-03-16 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/14599
- * config/mips/mips.md (UNSPEC_GP): New constant.
- * config/mips/mips.c (CONST_GP_P): Expect the CONST to contain
- an UNSPEC instead of (reg $gp).
- (mips16_gp_pseudo_reg): Change accordingly.
- (print_operand): Print $gp directly when handling CONST_GP_P.
-
-2004-03-16 Richard Zidlicky <rz@linux-m68k.org>
-
- * config.gcc, config/m68k/linux.h: Implement with-cpu for m68k-linux.
- * longlong.h: Make code 68060 clean when compiling for m68060.
-
-2004-03-16 Richard Zidlicky <rz@linux-m68k.org>
-
- * config/m68k/m68k.md: Fix constraints for bitfield instructions.
- * doc/md.texi: Clarify description of "i" constraint.
-
-2004-03-15 James E Wilson <wilson@specifixinc.com>
-
- * config/mips/mips.md (type): Split load into load, fpload, fpidxload.
- Split store into store, fpstore, fpidxstore. Fix all uses.
- * config/mips/5400.md (ir_vr54_load, ir_vr54_store, ir_vr54_fstore):
- Likewise.
- * config/mips/5500.md (ir_vr55_load, i5_vr55_store): Likewise.
- * config/mips/7000.md (rm7_ld, rm7_st): Likewise.
- * config/mips/9000.md (rm9k_load, rm9k_store): Likewise.
- * config/mips/sr71k.md (ir_sr70_load, ir_sr70_store, ir_sr70_fload,
- ir_sr70_fstore): Likewise.
-
-2004-03-15 Richard Henderson <rth@redhat.com>
-
- PR middle-end/14535
- * except.c (collect_one_action_chain): Record action for cleanup
- outer of exception spec.
-
-2004-03-15 Ian Lance Taylor <ian@wasabisystems.com>
-
- * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_use_address):
- Fix the check for abort and only do the mmap if we can.
-
-2004-03-15 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * config/sparc/sparc.h: Rework comments about the code model
- in 64-bit environment and the mode 'Pmode'.
- * doc/invoke.texi (SPARC options): Rework description of the
- different code models supported in 64-bit environment.
-
-2004-03-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * defaults.h (REVERSIBLE_CC_MODE): Define.
- * jump.c (reversed_comparison_code_parts): Don't check if
- REVERSIBLE_CC_MODE is defined.
-
-2004-03-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-incpath.c, c-incpath.h, c-pch.c, c.opt, cppexp.c,
- et-forest.h, genattr.c, ggc-none.c, hosthooks-def.h,
- hosthooks.h, params.h, ra-colorize.c, web.c,
- config/darwin-c.c, config/alpha/freebsd.h, config/arm/pe.c,
- config/avr/avr-protos.h, config/avr/avr.md,
- config/fr30/fr30-protos.h, config/fr30/fr30.md,
- config/h8300/fixunssfsi.c, config/i386/darwin.h,
- config/i386/freebsd.h, config/i386/freebsd64.h,
- config/ia64/hpux.h, config/ia64/unwind-ia64.c,
- config/ip2k/libgcc.S, config/m32r/xm-m32r.h,
- config/mmix/mmix-modes.def, config/ns32k/netbsd.h,
- config/ns32k/ns32k.md, config/pa/pa64-hpux.h,
- config/pa/pa64-regs.h, config/rs6000/aix41.h,
- config/rs6000/aix43.h, config/rs6000/host-darwin.c,
- config/sparc/aout.h, config/sparc/freebsd.h,
- config/sparc/litecoff.h, config/vax/vax-protos.h,
- doc/hostconfig.texi, doc/include/gcc-common.texi: Update
- copyright.
-
-2004-03-15 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (thumb_expand_prologue): Tie prologue insns to fp.
-
-2004-03-15 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-pretty-print.c (pp_c_semicolon): Fix formatting.
- (pp_c_cv_qualifier): Document.
- (pp_c_space_for_pointer_operator): Likewise.
- (pp_c_integer_constant): Likewise.
- (pp_c_identifier): Likewise.
- (pp_c_init_declarator): Don't print function body.
-
-2004-03-14 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/contrib.texi, doc/extend.texi, doc/gcov.texi,
- doc/install.texi, doc/invoke.texi, doc/makefile.texi,
- doc/sourcebuild.texi, doc/tm.texi, doc/trouble.texi: Capitalize
- "gcc", "g++" and "g77" or mark up with appropriate markup. Adjust
- wording and grammar.
-
-2004-03-14 Roger Sayle <roger@eyesopen.com>
-
- * alias.c (get_alias_set): Replace calls via (*lang_hooks.foo) ()
- with lang_hooks.foo ().
- * builtins.c (expand_builtin_va_arg): Likewise.
- * c-common.c (fname_as_string, c_common_truthvalue_conversion,
- c_common_type_for_mode, c_common_nodes_and_builtins,
- handle_mode_attribute, handle_vector_size_attribute): Likewise.
- * c-convert.c (convert): Likewise.
- * c-format.c (check_format_types): Likewise.
- * c-objc-common.c (c_tree_printer): Likewise.
- * c-typeck.c (build_unary_op, build_conditional_expr,
- build_binary_op): Likewise.
- * calls.c (try_to_integrate, expand_call,
- emit_library_call_value_1): Likewise.
- * cgraph.c (cgraph_node_name, cgraph_function_possibly_inlined_p):
- Likewise.
- * cgraphunit.c (record_call_1, cgraph_analyze_function,
- cgraph_expand_function): Likewise.
- * convert.c (convert_to_pointer, convert_to_integer): Likewise.
- * coverage.c (build_fn_info_type, build_ctr_info_type,
- build_gcov_info, create_coverage): Likewise.
- * dbxout.c (dbxout_init): Likewise.
- * diagnostic.c (diagnostic_report_current_function): Likewise.
- * dojump.c (do_jump): Likewise.
- * dwarf2out.c (dwarf2_name): Likewise.
- * except.c (init_eh): Likewise.
- * explow.c (expr_size, int_expr_size): Likewise.
- * expmed.c (make_tree, const_mult_add_overflow_p, expand_mult_add):
- Likewise.
- * expr.c (store_expr, store_constructor, safe_from_p,
- expand_expr_real, do_store_flag, try_casesi): Likewise.
- * function.c (push_function_context_to, pop_function_context_from,
- free_after_parsing, assign_stack_local_1, assign_stack_temp_for_type,
- put_var_into_stack, allocate_struct_function, current_function_name):
- Likewise.
- * integrate.c (copy_decl_for_inlining, expand_inline_function):
- Likewise.
- * langhooks.c (lhd_clear_binding_stack, write_global_declarations,
- lhd_print_error_function): Likewise.
- * opts.c (handle_option, decode_options): Likewise.
- * passes.c (open_dump_file): Likewise.
- * print-tree.c (print_node): Likewise.
- * stmt.c (expand_fixup, fixup_gotos, expand_asm_operands,
- expand_decl_cleanup, emit_case_nodes): Likewise.
- * stor-layout.c (variable_size): Likewise.
- * toplev.c (announce_function, wrapup_global_declarations,
- check_global_declarations, compile_file, default_tree_printer,
- process_options, lang_dependent_init, finalize): Likewise.
- * tree-dump.c (dequeue_and_dump): Likewise.
- * tree-inline.c (remap_decl, remap_block, copy_body_r,
- initialize_inlined_parameters, declare_return_variable,
- inlinable_function_p, expand_call_inline, optimize_inline_calls,
- walk_tree, copy_tree_r): Likewise.
- * tree-optimize.c (tree_rest_of_compilation): Likewise.
- * tree.c (decl_assembler_name, tree_size, size_in_bytes, staticp,
- unsafe_for_reeval, get_unwidened, get_narrower, get_callee_fndecl,
- variably_modified_type_p, dump_tree_statistics): Likewise.
- * varasm.c (assemble_variable, compare_constant, copy_constant,
- force_const_mem, compute_reloc_for_constant, output_constant,
- output_addressed_constants, initializer_constant_valid_p): Likewise.
-
-2004-03-14 Kelley Cook <kcook@gcc.gnu.org>
-
- * doc/install.texi: Make autoconf 2.13 the exception, not the rule.
-
-2004-03-14 Andreas Tobler <a.tobler@schweiz.ch>
-
- * doc/install.texi: Reflect autoconf and automake version for
- libffi. Update autoconf version to 2.59.
-
-2004-03-13 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (negate_expr, operand_equal_for_comparison_p,
- optimize_bit_field_compare, decode_field_reference, all_ones_mask_p,
- make_range, build_range_check, fold_range_test, unextend,
- constant_boolean_node, fold_binary_op_with_conditional_arg,
- fold_truthop, fold_mathfn_compare, fold_inf_compare,
- fold_single_bit_test, fold): Replace calls via (*lang_hooks.foo) ()
- with lang_hooks.foo ().
-
-2004-03-14 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.h (EXTRA_CONSTRAINT_STR_ARM): Update comment.
-
-2004-03-13 Dara Hazeghi <dhazeghi@yahoo.com>
-
- * doc/install.texi: Note status of -fnew-ra.
-
-2004-03-13 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR middle-end/14470
- * expr.c (store_expr): Call emit_queue before generating the move
- from the temporary to the original target. Protect the temporary
- from emit_queue.
-
-2004-03-13 Jakub Jelinek <jakub@redhat.com>
-
- PR target/14533
- * config/s390/s390.c (legitimize_pic_address): Don't abort on UNSPEC
- other than UNSPEC_GOTOFF.
-
-2004-03-13 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_legitimate_address_p): New argument, OUTER. Pass through
- to arm_legitimate_index_p. Update all callers with SET as default
- value.
- (arm_legitimate_index_p): New argument, OUTER. Restrict the index
- range if OUTER is a sign-extend operation on QImode. Correctly
- reject shift operations on sign-extended QImode addresses.
- (bad_signed_byte_operand): Delete.
- (arm_extendqisi_mem_op): New function.
- * arm.h (EXTRA_CONSTRAINT_ARM): Delete. Replace with...
- (EXTRA_CONSTRAINT_STR_ARM): ... this. Handle extended address
- constraints.
- (CONSTRAINT_LEN): New.
- (EXTRA_CONSTRAINT): Delete. Replace with...
- (EXTRA_CONSTRAINT_STR): ... this.
- (PREDICATE_CODES): Remove bad_signed_byte_operand.
- * arm.md (extendqihi_insn): Use new constraint Uq. Rework. Length
- is now always default.
- (define_splits for bad sign-extend loads): Delete.
- (arm_extendqisi, arm_extendqisi_v5): Likewise.
- * arm/vfp.md (arm_movsi_vfp, arm_movdi_vfp, movsf_vfp, movdf_vfp):
- Rework 'U' constraint to 'Uv'.
- * arm-protos.h: Remove bad_signed_byte_operand. Add
- arm_extendqisi_mem_op.
- * doc/md.texi (ARM constraints): Rename VFP constraint (now Uv).
- Add Uq constraint.
-
-2004-03-13 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_va_arg): Replace SPLIT_COMPLEX_ARGS
- with targetm version.
-
- PR target/14567
- * config/rs6000/rs6000.h (UNITS_PER_ARG, RS6000_ARG_SIZE): Delete.
- (HARD_REGNO_MODE_OK): Disallow TFmode for fp31.
- * config/rs6000/rs6000.c (rs6000_arg_size): New function.
- Update all users of RS6000_ARG_SIZE.
- (function_arg_advance): Count fregno using mode size.
- (function_arg): Handle long double split over regs and memory.
- (function_arg_partial_nregs): Likewise.
- (rs6000_va_arg): Repackage complex args.
-
-2004-03-13 Dean Ferreyra <dferreyra@igc.org>
-
- PR target/14047
- * config/avr/avr.c (avr_progmem_p): Add "attributes" parameter.
- (avr_insert_attributes): Pass "attributes" to avr_progmem_p.
- * config/avr/avr-protos.h (avr_progmem_p): Change prototype.
-
-2004-03-12 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/rs6000-protos.h (rs6000_output_dwarf_dtprel): Add
- prototype.
- * config/rs6000/rs6000.c (rs6000_output_dwarf_dtprel): New.
- * config/rs6000/rs6000.h (ASM_OUTPUT_DWARF_DTPREL): Define.
-
-2004-03-12 Andrew Pinski <apinski@apple.com>
-
- * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_use_address):
- Use ret instead of result. Use addr instead of base.
-
-2004-03-12 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi (*-ibm-aix*): Document assembler and achiver
- fixes required by libstdc++ and update installation instructions
- for libstdc++.a.
-
-2004-03-12 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/winnt.c (i386_pe_strip_name_encoding_full): Strip
- leading '@' on fastcall symbols before stripping suffix.
-
-2004-03-12 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (unmentioned_reg_p): New function to check whether an
- expression is a "specialization" of another, i.e. that there are
- no registers or memory references mentioned in the first that don't
- appear in the second.
- (unmentioned_reg_p_1): New helper subroutine of unmentioned_reg_p.
- (combine_instructions): Also try combining instructions using the
- REG_EQUAL note from a preceding log-linked instruction.
-
-2004-03-12 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.c (ix86_split_ashrdi): Optimize shift by 63.
-
-2004-03-12 Matt Austern <austern@apple.com>
-
- * target.h (struct gcc_target): New target hook, unwind_label.
- * target-def.h (TARGET_ASM_EMIT_UNWIND_LABEL): New hook.
- * output.h (default_emit_unwind_label): New function.
- * default.h (TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): New macro.
- (TARGET_USES_WEAK_UNWIND_INFO): New target macro.
- (TARGET_SUPPORTS_HIDDEN): New target macro.
- * dwarf2out.c (struct dw_fde_struct): Add field for function decl
- that corresponds to this FDE.
- (FRAME_BEGIN_LABEL): Allow target to override default label.
- (output_call_frame_info): If FDEs are linknonce, then use extra
- indirection for FDE encoding, output a label for each FDE, and
- output an empty label for each function without an FDE.
- (dwarf2out_begin_prologue): Set up decl field when creating an FDE.
- * varasm.c (globalize_decl): Call ASM_MAKE_LABEL_LINKONCE for
- decls with DECL_ONE_ONLY set, if that macro is defined.
- (make_decl_one_only): Don't use DECL_COMMON if we're compiling
- for a SUPPORTS_ONE_ONLY target.
- * config/darwin-protos.h (darwin_unique_section): Declare.
- (darwin_asm_named_section): Likewise.
- (darwin_section_type_flags): Likewise.
- (darwin_non_lazy_pcrel): Likewise.
- (darwin_emit_unwind_label): Likewise.
- (darwin_make_decl_one_only): Likewise.
- * config/darwin.c (machopic_finish): Get rid of tweak that
- eliminate stubs for symbols that are defined.
- (darwin_encode_section_info): Don't treat weak functions as defined.
- (darwin_make_decl_one_only): Define.
- (darwin_asm_named_section): Likewise.
- (darwin_section_type_flags): Likewise.
- (darwin_unique_section): Likewise.
- (darwin_emit_unwind_label): Likewise.
- (darwin_non_lazy_pcrel): Likewise.
- (darwin_asm_output_dwarf_delta): Difference between two labels is
- local only if both labels are local.
- * config/darwin.h (MAKE_DECL_ONE_ONLY): Define.
- (ASM_MAKE_LABEL_LINKONCE): Likewise.
- (TARGET_SUPPORTS_HIDDEN): Likewise.
- (TARGET_USES_WEAK_UNWIND_INFO): Likewise.
- (TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY): Likewise.
- (FRAME_BEGIN_LABEL): Likewise.
- (ASM_DECLARE_OBJECT_NAME): Make references to weak symbols indirect.
- (ASM_DECLARE_FUNCTION_NAME): Likewise.
- (darwin_eh_frame_section): Give __eh_frame section the coalesced flag.
- (TARGET_ASM_UNIQUE_SECTION): Define.
- (EH_FRAME_SECTION_NAME): Define.
- (EH_FRAME_SECTION_ATTR): Likewise.
- (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Likewise.
- (TARGET_ASM_NAMED_SECTION): Likewise.
- (TARGET_SECTION_TYPE_FLAGS): Likewise.
- * doc/tm.texi: Document TARGET_USES_WEAK_UNWIND_INFO,
- TARGET_EXPLICIT_INSTANTIATIONS_ONE_ONLY, TARGET_SUPPORTS_HIDDEN,
- TARGET_ASM_EMIT_UNWIND_LABEL.
-
-2004-03-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_mathfn): Add pow10* to the
- existing exp10* case.
- (expand_builtin): Likewise.
-
-2004-03-12 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/tm.texi (registers) <Values in Registers>: Add
- entry for REGMODE_NATURAL_SIZE.
-
-2004-03-12 Richard Henderson <rth@redhat.com>
-
- PR target/14547
- * target.h (struct gcc_target): Move calls substructure before
- booleans. Add split_complex_arg.
- * function.c (assign_parms, split_complex_args): Use it.
- * calls.c (expand_call): Likewise.
- (split_complex_values): Likewise. Check for splittable types
- before allocating memory.
- (split_complex_types): Likewise.
- * system.h (SPLIT_COMPLEX_ARGS): Poison.
- * expr.h (SPLIT_COMPLEX_ARGS): Remove.
- * target-def.h (TARGET_SPLIT_COMPLEX_ARG): New.
- * config/alpha/alpha.c (alpha_split_complex_arg): New.
- (TARGET_SPLIT_COMPLEX_ARG): New.
- * config/alpha/alpha.h (SPLIT_COMPLEX_ARGS): Remove.
- * config/rs6000/rs6000.c (TARGET_SPLIT_COMPLEX_ARG): New.
- (rs6000_override_options): Zap it for non-AIX.
- (rs6000_function_value): Use targetm.calls.split_complex_arg.
- * config/rs6000/rs6000.h (SPLIT_COMPLEX_ARGS): Remove.
- * config/xtensa/xtensa.c (TARGET_SPLIT_COMPLEX_ARG): New.
- * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Remove.
- * doc/tm.texi (TARGET_SPLIT_COMPLEX_ARG): Modify from old
- SPLIT_COMPLEX_ARGS entry.
-
-2004-03-11 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (xfloating_ops, vax_cvt_ops): New.
- (alpha_lookup_xfloating_lib_func): Use them, return rtx.
- (alpha_emit_xfloating_arith): Update to match.
- (alpha_emit_xfloating_compare): Likewise.
- (alpha_emit_xfloating_cvt): Likewise.
- (alpha_emit_xfloating_libcall): Take already built symbol,
- mark call const.
- * config/alpha/alpha.md (extendsftf2, extenddftf2): Take
- op1 in a register.
-
-2004-03-11 Richard Henderson <rth@redhat.com>
-
- PR target/14539
- * config/alpha/alpha.h (STACK_BOUNDARY): Set to 128.
-
- * simplify-rtx.c (simplify_relational_operation): Fix typo.
-
-2004-03-11 Richard Henderson <rth@redhat.com>
-
- PR middle-end/14477
- * except.c (remove_unreachable_regions): Look thru CALL_PLACEHOLDER.
-
-2004-03-11 Ulrich Weigand <uweigand@de.ibm.com>
-
- PR target/14262
- * calls.c (load_register_parameters): If BLOCK_REG_PADDING is not
- defined, pass small BLKmode values in registers in the low-order part.
-
-2004-03-11 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (if_then_else_cond): Check for NULL return value of
- simplify_gen_subreg.
-
-2004-03-11 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/14496
- * config/mips/mips.h (UNITS_PER_FPVALUE): Fix value for
- TARGET_SINGLE_FLOAT.
-
-2004-03-11 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (TARGET_INIT_LIBFUNCS): Add undef.
- * config/ia64/ia64.h (TARGET_INIT_LIBFUNCS): Add define.
- * config/ia64/ia64.c (ia64_init_libfuncs): New.
- (ia64_hpux_init_libfuncs): Add call to ia64_init_libfuncs.
-
-2004-03-11 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (negate_expr_p) <RSHIFT_EXPR>: We can optimize
- -((int)X>>C) where C is an integer constant one bit less than the
- size of X into (unsigned)X>>C. Similarly for unsigned->signed.
- (negate_expr) <RSHIFT_EXPR>: Implement the above transformations.
-
- * simplify-rtx.c (simplify_unary_operation): Also implement the
- above transformations at the RTL level.
-
-2004-03-11 Alan Modra <amodra@bigpond.net.au>
-
- * real.c (encode_ibm_extended): Do round low word.
-
-2004-03-11 Ben Elliston <bje@wasabisystems.com>
-
- * config/arm/arm.md (is_xscale): Comment this attribute and move
- it a bit further up in the file, closer to related attributes.
-
-2004-03-11 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/host-solaris.c (sol_gt_pch_use_address): Add
- missing terminating marker to comment.
-
-2004-03-11 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md: Use move_operand in splitters for 64-bit moves.
- (movdi, movsi, movhi, movqi, movsf, movdf): Remove predicates.
- (*movdi_32bit_mips16, *movsi_mips16, *movhi_mips16, *movqi_mips16)
- (*movsf_mips16, *movdf_mips16): Name unnamed patterns. Use
- move_operand as source predicate in all cases.
- (*movdi_32bit): Renamed from movdi_internal. Remove 'F' constraint.
- Test reg_or_0_operand. Use move_operand as source predicate.
- (*movdi_64bit): Renamed from movdi_internal2. Test reg_or_0_operand.
- (*movdi_64bit_mips16): Renamed from movdi_internal2_mips16.
- (*movsi_internal): Renamed from movsi_internal. Test reg_or_0_operand.
- (movhi, movqi, movsf, movdf): Use mips_legitimize_move.
- (*movhi_internal): Renamed from movhi_internal. Test reg_or_0_operand.
- Use move_operand as source predicate. Remove 'K' constraint.
- (*movqi_internal): Likewise movqi_internal.
- (*movsf_hardfloat): Renamed from movsf_internal1. Test
- reg_or_0_operand. Use move_operand as source predicate.
- (*movsf_softfloat): Likewise movsf_internal2.
- (*movdf_hardfloat_64bit): Likewise movsf_internal1a.
- (*movdf_hardfloat_32bit): Likewise movsf_internal1b.
- (*movdf_softfloat): Likewise movdf_internal2.
- * config/mips/mips.c (move_operand): Match arbitrary CONST_INTs
- for DImode if !TARGET_64BIT.
- (mips_legitimize_move): Simplify accordingly.
-
-2004-03-11 Josef Zlomek <zlomekj@suse.cz>
-
- PR/14362
- * var-tracking.c (struct variable_def): Added field refcount.
- (variable_htab_free): Decrease the refcount and delete variable
- only if there are no more references.
- (unshare_variable): New function.
- (vars_copy_1): Increase refcount instead of copying the variable.
- (variable_union): Share the variables where possible, unshare
- the variables if needed.
- (variable_different_p): Return false if var1 and var2 are
- the same structure.
- (variable_was_changed): Init the refcount of new variable.
- (set_frame_base_location): Unshare variable if needed.
- (set_variable_part): Init the refcount of new variable.
- Unshare the variables if needed.
- (delete_variable_part): Unshare the variables if needed.
- (emit_notes_for_differences_1): Init the refcount of new variable.
- (vt_add_function_parameters): Do not add function parameters to
- IN set of ENTRY_BLOCK_PTR because it is unused anyway.
- (vt_initialize): Do not add frame_base_decl to IN set of
- ENTRY_BLOCK_PTR because it is unused anyway.
-
-2004-03-11 Josef Zlomek <zlomekj@suse.cz>
-
- * var-tracking.c (vars_copy_1): Cleanup and speedup chain operations.
- (vars_copy): Likewise.
- (variable_union): Likewise.
- (set_variable_part): Likewise.
- (delete_variable_part): Likewise.
-
-2004-03-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-typeck.c, combine.c, cse.c, dominance.c, et-forest.h,
- ggc-page.c, var-tracking.c, config/fp-bit.c, config/c4x/c4x.c,
- config/cris/cris.c, config/i386/ppro.md, config/i860/i860.c,
- config/i860/i860.h, config/m32r/m32r.h, config/m32r/xm-m32r.h,
- config/m68hc11/m68hc11.h, config/m68hc11/m68hc11.md,
- config/mips/mips.c, config/mmix/mmix.c, config/ns32k/ns32k.h,
- config/pa/pa.c, config/pa/pa32-regs.h, config/pa/pa64-regs.h,
- config/pdp11/pdp11.h, config/rs6000/rs6000.c,
- config/stormy16/stormy16.c: Fix comment typos and formatting.
-
-2004-03-11 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure: Regenerate, since I forgot to while committing Paolo's
- changes.
-
-2004-03-08 Paolo Bonzini <bonzini@gnu.org>
-
- PR ada/14131
- Move language detection to the top level.
- * configure.ac: Remove code to detect languages,
- it now lives exclusively in the top level.
- * aclocal.m4 (gcc_AC_PROG_GNAT): Moved to the
- top level, renamed to ACX_PROG_GNAT.
-
-2004-03-10 Richard Henderson <rth@redhat.com>
-
- * c-pch.c (c_common_no_more_pch): Update for gt_pch_use_address
- extra arguments.
- * config.host (*-*-solaris2*, *-*-linux*): Add out_host_hook_obj
- and host_xmake_file fragments.
- * ggc-common.c (gt_pch_save): Update for gt_pch_get_address change.
- (gt_pch_restore): Similarly for gt_pch_use_address.
- (default_gt_pch_get_address): New.
- (mmap_gt_pch_get_address): Split out of gt_pch_save.
- (default_gt_pch_use_address): Split out of gt_pch_restore.
- (mmap_gt_pch_use_address): Likewise.
- * hooks.c (hook_voidp_size_t_null): Remove.
- (hook_bool_voidp_size_t_false): Remove.
- * hooks.h: Likewise.
- * hosthooks-def.h (HOST_HOOKS_GT_PCH_GET_ADDRESS): Use one of the
- default_ or mmap_ definitions.
- (HOST_HOOKS_GT_PCH_USE_ADDRESS): Likewise.
- * hosthooks.h (struct host_hooks): Update gt_pch_get_address
- and gt_pch_use_address.
- * config/host-linux.c, config/host-solaris.c: New files.
- * config/x-linux, config/x-solaris: New files.
- * config/rs6000/host-darwin.c (darwin_rs6000_gt_pch_get_address):
- Update for changed definition.
- (darwin_rs6000_gt_pch_use_address): Likewise.
- * doc/hostconfig.texi: Update docs.
-
-2004-03-10 Richard Henderson <rth@redhat.com>
-
- PR c/14517
- * c-decl.c (grokdeclarator): Don't warn for duplicate qualifiers
- except for pedantic c90 mode.
-
-2004-03-10 Kelley Cook <kcook@gcc.gnu.org>
-
- * configure.ac: Bump AC_PREREQ to 2.59.
- * configure: Regenerate.
-
-2004-03-10 Uros Bizjak <uros@kss-loka.si>
-
- * optabs.h (enum optab_index): Add new OTI_exp10 and OTI_exp2.
- (exp10_optab, exp2_optab): Define corresponding macros.
- * optabs.c (init_optabs): Initialize exp10_optab and exp2_optab.
- * genopinit.c (optabs): Implement exp10_optab and exp2_optab
- using exp10?f2 and exp2?f2 patterns.
- * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP10{,F,L}
- using exp10_optab, and BUILT_IN_EXP2{,F,L} using exp2_optab.
- (expand_builtin): Expand BUILT_IN_EXP10{,F,L} and BUILT_IN_EXP2{,F,L}
- using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
-
- * config/i386/i386.md (exp10sf2, exp10df2, exp10xf2, exp2sf2,
- exp2df2, exp2xf2): New patterns to implement exp10, exp10f, exp10l,
- exp2, exp2f and exp2l built-ins as inline x87 intrinsics.
-
-2004-03-10 Anthony Green <green@redhat.com>
-
- * doc/invoke.texi (ARM Options): Fix -mpfu typo.
-
-2004-03-10 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/aix.h (TARGET_OS_CPP_BUILTINS): Rename to ...
- (TARGET_OS_AIX_CPP_BUILTINS): this. Conditionally define
- __LONGDOUBLE128.
- * config/rs6000/aix41.h (TARGET_OS_CPP_BUILTINS): Use
- TARGET_OS_AIX_CPP_BUILTINS.
- * config/rs6000/aix43.h (TARGET_OS_CPP_BUILTINS): Same.
- * config/rs6000/aix51.h (TARGET_OS_CPP_BUILTINS): Same.
- * config/rs6000/aix52.h (TARGET_OS_CPP_BUILTINS): Same.
- * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Revert
- previous change.
-
-2004-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c (tree_expr_nonnegative_p): Add more builtin cases.
-
-2004-03-10 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
- __LONGDOUBLE128 on AIX.
-
-2004-03-10 Andrew Haley <aph@redhat.com>
-
- PR optimization/14381
- * function.c (expand_function_end): Emit a blockage insn before
- the epilogue when -fnon-call-exceptions is used.
-
- * except.c (expand_start_all_catch): Make comment more accurate.
-
-2004-03-08 Joel Sherrill <joel@oarcorp.com>
-
- PR target/14480
- * config/rs6000/t-rtems: Add missing file on branch.
-
-2004-03-10 Ulrich Weigand <uweigand@de.ibm.com>
-
- * dbxout.c (dbxout_symbol_location): Do not output references
- to optimized-out constant pool symbols.
-
-2004-03-10 Andreas Schwab <schwab@suse.de>
-
- * config/ia64/ia64.md (divsi3, udivsi3): Remove unused variable
- twon34_r.
-
-2004-03-09 James E Wilson <wilson@specifixinc.com>
-
- * alias.c (alias_sets_might_conflict_p): New.
- * c-typeck.c (build_c_cast): Call it if warn_strict_aliasing > 1.
- * common.opt (Wstrict-aliasing=): New.
- * flags.h (warn_strict_aliasing): Change type to int.
- * opts.c (warn_strict_aliasing): Change type to int.
- (common_handle_option): Handle OPT_Wstrict_aliasing_.
- * tree.h (alias_sets_might_conflict_p): Declare it.
- * doc/invoke.tex (-Wstrict-aliasing=2): Document it.
-
-2004-03-10 Roman Zippel <zippel@linux-m68k.org>
-
- PR bootstrap/12371
- * config/m68k/m68k.h (FIXED_REGISTERS): Add arg pointer.
- (CALL_USED_REGISTERS): Likewise.
- (REG_CLASS_CONTENTS): Likewise.
- (REG_ALLOC_ORDER): New.
- (REGNO_REG_CLASS): Use regno_reg_class.
- * config/m68k/m68k.c: Add regno_reg_class array.
-
-2004-03-09 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.md (divsi3): Fix algorithm.
- (udivsi3): Ditto.
- (setf_exp_xf): Remove '*' from name.
- * testsuite/gcc.dg/20040309-1.c: New test.
-
-2004-03-09 Ian Lance Taylor <ian@wasabisystems.com>
-
- * system.h (SUNOS4_SHARED_LIBRARIES): Poison.
- * collect2.c: Remove SUNOS4_SHARED_LIBRARIES code.
- * config/sparc/aout.h (TARGET_ASM_SELECT_SECTION): Don't define.
- * config/sparc/sparc.c (sparc_aout_select_section): Remove.
- (sparc_aout_select_rtx_section): Don't check
- SUNOS4_SHARED_LIBRARIES.
- * config/sparc/sparc.h (SUNOS4_SHARED_LIBRARIES): Don't define.
-
-2004-03-10 Hans-Peter Nilsson <hp@axis.com>
-
- PR other/14474
- * doc/md.texi (Pattern Ordering, Dependent Patterns)
- (Jump Patterns, Looping Patterns): Wrap in separate "@ifset
- INTERNALS".
-
-2004-03-09 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/hpux.h (MULTILIB_DEFAULTS): Define.
- (LIBGCC_SPEC): Update to match.
-
-2004-03-09 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (last_function_parms, last_function_parm_tags)
- (last_function_parm_others, current_function_parms)
- (current_function_parm_tags, current_function_parm_others):
- Delete.
- (ARG_INFO_PARMS, ARG_INFO_TAGS, ARG_INFO_TYPES, ARG_INFO_OTHERS):
- New macros.
- (grokdeclarator): For function definitions, save the arg-info
- block from the declarator in DECL_ARGUMENTS.
- (grokparms): Do not write to last_function_parm*. Use ARG_INFO_*
- macros to operate on arg-info block. Can assume ARG_INFO_PARMS
- contains only PARM_DECLs. Improve diagnostics.
- (get_parm_info): Use ARG_INFO_* macros. Improve comments and
- diagnostics. Disable some expensive checks if not ENABLE_CHECKING.
- (store_parm_decls_newstyle): Take the function to operate on,
- and an arg-info block, as arguments; don't get anything from
- current_function_* globals.
- (store_parm_decls_oldstyle): Likewise.
- (store_parm_decls): Pass fndecl and its arg-info block down to
- store_parm_decls_newstyle/oldstyle. Send functions with empty
- argument lists through store_parm_decls_newstyle to reduce
- overhead.
- (pushdecl): Comment on the problems with the call to copy_node.
- Clear DECL_ARGUMENTS of the old node after copying it, if it
- is an arg-info block instead of a chain of decls.
- (start_function): Do not manipulate current_function_parm* or
- last_function_parm*.
-
-2004-03-09 Roger Sayle <roger@eyesopen.com>
- Andrew Pinski <pinskia@physics.uc.edu>
-
- * ifcvt.c (noce_try_sign_mask): New function to transform
- "x = (y < 0) ? z : 0" into the equivalent "x = (y >> C) & z".
- (noce_process_if_block): Call noce_try_sign_mask.
-
-2004-03-09 Andrew Pinski <apinski@apple.com>
-
- * c-typeck.c (tagged_types_tu_compatible_p):
- Fix typo.
-
-2004-03-09 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_const_relational_operation): New function
- renamed from simplify_relational_operation.
- (simplify_relational_operation): Change prototype to accept an
- additional mode argument. Call simplify_const_relational_operation.
- (simplify_gen_relational): Update simplify_relational_operation call.
- (simplify_ternary_operation): Update simplify_relational_operation
- subroutine call to use simplify_const_relational_operation instead.
-
- * rtl.h (simplify_const_relational_operation): Prototype here.
- (simplify_relational_operation): Add addtional mode argument.
-
- * combine.c (combine_simplify_rtx): Update calls to
- simplify_relational_operation.
- (simplify_set): Likewise.
- (gen_binary): Likewise.
- * cse.c (fold_rtx): Likewise.
- * dojump.c (compare_from_rtx): Likewise.
- (do_compare_rtx_and_jump): Likewise.
- * integrate.c (subst_constants): Likewise.
- * unroll.c (simplify_cmp_and_jump_insns): Likewise.
-
-2004-03-09 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.md: Remove all define_peephole's.
-
-2004-03-09 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md: Remove trailing whitespace.
-
-2004-03-08 Eric Christopher <echristo@redhat.com>
-
- * Makefile.in (site.exp): Add libiconv variable definition.
-
-2004-03-09 Hans-Peter Nilsson <hp@axis.com>
-
- * configure: Regenerate for config/accross.m4 correction.
-
-2004-03-08 Joel Sherrill <joel@oarcorp.com>
-
- PR target/14480
- * config/rs6000/t-rtems: Add missing file on branch.
-
-2004-03-08 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/14289
- * c-typeck.c (c_mark_addressable): A register variable should
- be considered global if its not automatic, i.e. TREE_PUBLIC,
- TREE_STATIC or DECL_EXTERNAL.
- * function.c (put_var_into_stack): Call abort when placing a
- hard register into the stack, if x_parm_reg_stack_loc is NULL.
-
-2004-03-08 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*extendqidi2_short_displ"): Add CC clobber.
- ("*extendqisi2_short_displ"): Likewise.
-
-2004-03-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/pdp11/pdp11.c (comparison_operator_index): Remove.
- (comp_operator): Likewise.
- * config/pdp11/pdp11-protos.h: Remove corresponding
- prototypes.
-
-2004-03-08 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * expr.c (highest_pow2_factor_for_type): Rename into
- highest_pow2_factor_for_target. Use DECL_ALIGN instead of
- TYPE_ALIGN when the target is a COMPONENT_REF.
- (expand_assignment): Ajust call to highest_pow2_factor_for_type.
-
-2004-03-08 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c: Formatting fix.
- (legitimate_offset_address_p): Correct offset range check.
-
- * config/rs6000/rs6000.c (rs6000_override_options): Don't override
- -msoft-float by -mcpu. Consolidate similar code for MASK_MULTIPLE
- and MASK_STRING.
-
-2004-03-07 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.md (ashrdi3): Do not call ashrdi3_no_power
- for little endian.
- ("ashrdi3_no_power"): Disable for little endian.
- (ashrdi3): Same.
-
-2004-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c (tree_expr_nonnegative_p): Reformat checks for
- builtins.
-
-2004-03-08 Hans-Peter Nilsson <hp@axis.com>
-
- PR target/14471
- * configure.ac (Target-specific assembler checks) <cris-*-*>: New
- case, checking for -no-mul-bug-abort option.
- * configure, config.in: Regenerate.
- * doc/invoke.texi (CRIS Options): Document -mmul-bug-workaround
- and -mno-mul-bug-workaround.
- * config/cris/cris.md ("smulsi3_highpart", "umulsi3_highpart")
- ("mulsidi3", "umulsidi3"): Prefix output template with "%!".
- ("umulhisi3", "umulqihi3", "mulsi3", "mulqihi3", "mulhisi3"):
- Ditto. Make attribute "slottable" dependent on TARGET_MUL_BUG.
- * config/cris/mulsi3.asm (__Mul) [__CRIS_arch_version >= 10]: Make
- sure mulu.d is not last on cache-line.
- * config/cris/cris.h (ASM_SPEC): Translate -mno-mul-bug-workaround
- into -no-mul-bug-abort depending on HAVE_AS_MUL_BUG_ABORT_OPTION.
- (TARGET_MASK_MUL_BUG, TARGET_MUL_BUG): New macros.
- (TARGET_SWITCHES): New options -mmul-bug-workaround and
- -mno-mul-bug-workaround.
- (TARGET_DEFAULT): Include TARGET_MASK_MUL_BUG.
- (PRINT_OPERAND_PUNCT_VALID_P): Include '!'.
- * config/cris/cris.c (cris_operand_extend_operator): Clarify
- relation to MULT in head comment.
- (cris_op_str): Abort for MULT.
- (cris_print_operand) <case '!'>: New case.
-
-2004-03-08 Alan Modra <amodra@bigpond.net.au>
-
- PR debug/11983
- * dwarf2out.c (enum dw_val_class): Rename dw_val_class_float to
- dw_val_class_vec. Replace use throughout file.
- (dw_float_const): Delete.
- (dw_vec_const): New.
- (dw_val_struct_union): Rename val_float to val_vec. Replace use
- throughout file.
- (add_AT_vec): Rename from add_AT_float. Add elt_size param.
- (same_dw_val_p): Adjust vec comparison. Use memcmp.
- (size_of_die): Adjust dw_val_class_vec sizing.
- (output_die): Output dw_val_class_vec.
- (insert_int, extract_int, insert_float): New functions.
- (add_const_value_attribute): Use insert_float for CONST_DOUBLE.
- Handle CONST_VECTOR.
- (add_location_or_const_value_attribute): Handle CONST_VECTOR.
-
-2004-03-07 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_parse_abi_options): SPE and
- AltiVec abi cannot co-exist.
-
- * config/rs6000/eabispe.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Same.
-
-2004-03-07 Jan Hubicka <jh@suse.cz>
-
- * except.c (emit_to_new_bb_before): Break fallthru edges.
-
-2004-03-07 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("*lshrsi3_const"): Disable for 68HC12.
- ("*lshrsi3"): Also accept an immediate for 68HC12.
- ("*ashrsi3_const"): Likewise.
- ("*ashrsi3"): Likewise.
- ("*ashlsi3_const"): Likewise.
- ("*ashlsi3"): Likewise.
- ("cmphi_1_hc12"): Compare two hard register by pushing them and
- comparing with a pop; don't use a split for that.
- ("cmphi split"): Disable compare split for 68HC12.
-
- * config/m68hc11/m68hc11.c (m68hc11_notice_update_cc): Invalidate
- the status operands if they have side effects.
-
-2004-03-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * defaults.h (LEGITIMIZE_ADDRESS): Provide a default
- definition.
- * config/arc/arc.h, config/fr30/fr30.h, config/frv/frv.h,
- config/h8300/h8300.h, config/ia64/ia64.h,
- config/mcore/mcore.h, config/mmix/mmix.h,
- config/ns32k/ns32k.h, config/pdp11/pdp11.h,
- config/stormy16/stormy16.h, config/v850/v850.h,
- config/vax/vax.h (LEGITIMIZE_ADDRESS): Remove.
- * doc/tm.texi (LEGITIMIZE_ADDRESS): Mention the default
- definition.
-
-2004-03-07 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) <IOR_EXPR>: Fold x | x as x.
- <XOR_EXPR>: Fold x ^ x as zero.
- <AND_EXPR>: Fold x & x as x.
-
-2004-03-07 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) <EQ_EXPR>: Rewrite optimization to transform
- "foo++ == const" into "++foo == const+incr".
-
-2004-03-07 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_in_small_data_p): Return false if
- TARGET_ABICALLS.
-
-2004-03-06 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Use 2,-sp to push
- the stack register.
- (expand_prologue): Don't make an interrupt or a trap handler a far
- symbol.
- (m68hc11_initial_elimination_offset): Likewise.
-
-2004-03-06 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_in_small_data_p): False for functions.
-
-2004-03-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ns32k/ns32k-protos.h: Add a prototype for
- ns32k_notice_update_cc.
- * config/ns32k/ns32k.c (ns32k_notice_update_cc): New.
- * config/ns32k/ns32k.h (NOTICE_UPDATE_CC): Call
- ns32k_notice_update_cc.
-
-2004-03-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("load_multiple", "*load_multiple_di",
- "*load_multiple_si"): Allow only if reload_completed.
- ("store_multiple", "*store_multiple_di", "*store_multiple_si"):
- Likewise.
-
-2004-03-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/vax/vax-protos.h: Add a prototype for
- vax_notice_update_cc.
- * config/vax/vax.c (vax_notice_update_cc): New.
- * config/vax/vax.h (NOTICE_UPDATE_CC): Call
- vax_notice_update_cc.
-
-2004-03-06 David Edelsohn <edelsohn@gnu.org>
-
- * collect2.c (main): Only export initfunc and finifunc if
- LD_INIT_SWITCH not defined.
- (scan_prog_file): Only export constructors and destructors if
- LD_INIT_SWITCH not defined. Only export symbols not found in
- shared objects.
-
-2004-03-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md (icacheflush): Reorder operands to make match_scratch operand
- last.
- * pa.h (INITIALIZE_TRAMPOLINE): Remove unnecessary scratch argument
- from calls to gen_icacheflush.
-
-2004-03-06 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New.
- (TARGET_LONG_DOUBLE_128): New.
- (TARGET_SWITCHES): Add long-double-{128,64}.
- (TARGET_HAS_XFLOATING_LIBS): Default to TARGET_LONG_DOUBLE_128.
- (LONG_DOUBLE_TYPE_SIZE): Honor TARGET_LONG_DOUBLE_128.
- (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New.
- (WIDEST_HARDWARE_FP_SIZE): New.
- (TARGET_CPU_CPP_BUILTINS): Define __LONG_DOUBLE_128__.
- * config/alpha/alpha.c (override_options): Clear MASK_LONG_DOUBLE_128
- if TARGET_VAX_FLOAT.
- * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): Remove.
- (TARGET_DEFAULT): Set MASK_LONG_DOUBLE_128.
-
-2004-03-06 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_swapped_comparison_operator): Fix
- botched rtx class conversion.
-
-2004-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * tree.h (BUILTIN_EXP10_P, BUILTIN_EXPONENT_P, BUILTIN_SQRT_P,
- BUILTIN_CBRT_P, BUILTIN_ROOT_P): New macros.
-
- * builtins.c (fold_builtin_logarithm, fold_builtin): Use new
- macros.
- * fold-const.c (fold_mathfn_compare, fold): Likewise.
-
-2004-03-06 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/14343
- * config/i386/i386.md (movv2di_internal): Conditionalize on
- TARGET_SSE, not TARGET_SSE2.
-
-2004-03-05 Chris Demetriou <cgd@broadcom.com>
-
- * config.gcc (mips64orion-*-elf*, mips64orionel-*-elf*): Delete
- duplicated line.
-
-2004-03-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c: Consistently use logN not log* in comments.
-
-2004-03-05 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * rtl.h (mem_expr_equal_p): Function prototype added.
- * cfgcleanup.c (merge_memattrs): New function.
- (flow_find_cross_jump): Call merge_memattrs for matching insns.
- * emit-rtl.c (mem_expr_equal_p): New function.
-
-2004-03-05 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (synth_module_prologue): Const-qualify
- objc_selector type if using the GNU runtime; fix generated
- signatures for objc_msg_lookup and objc_msg_lookup_super
- to match what GNU ObjC headers provide; reformat and clean up.
- (synth_self_and_ucmd_args): Use previously constructed (and
- hence possibly const-qualified) objc_selector type.
-
-2004-03-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/tm.texi (HARD_REGNO_RENAME_OK): Document.
-
-2004-03-05 Jason Merrill <jason@redhat.com>
-
- * tree.h (TYPE_HASH): Use TYPE_UID.
- (TREE_HASH): New macro with old definition of TYPE_HASH.
- * tree.c (build_type_attribute_variant): Use iterative_hash_object.
- (build_array_type, build_function_type): Likewise.
- (build_method_type_directly): Likewise.
- (build_offset_type, build_complex_type): Likewise.
- (type_hash_list, attribute_hash_list): Likewise. Now static.
- * except.c: s/TYPE_HASH/TREE_HASH/.
-
-2004-03-05 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (function_arg): Handle 16-byte aligned args.
- (xtensa_va_start): Initialize __va_stk to ($arg_ptr - 32). Adjust
- __va_ndx by 2 words when referencing an argument on the stack.
- (xtensa_va_arg): Handle 16-byte aligned args. Adjust __va_ndx by 2
- words when an arg on the stack is first seen.
-
-2004-03-05 Paul Brook <paul@codesourcery.com>
-
- * arm.h (ARM_FLAG_VFP): Remove.
- (ARM_FLAG_ATPCS, CIRRUS_FIX_INVALID_INSNS): Renumber.
- * netbsd-elf.h (ARM_FLAG_VFP): Remove.
-
-2004-03-05 Paul Brook <paul@codesourcery.com>
-
- * function.c (assign_parms): Include pretend alignment offset.
-
-2004-03-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * stor-layout.c (layout_type, case FUNCTION_TYPE): Make size
- FUNCTION_BOUNDARY, not POINTER_SIZE * 2.
-
-2004-03-05 Ian Lance Taylor <ian@wasabisystems.com>
-
- * configure.ac: When passing --enable-languages to subdir
- configure when host != build, make sure we don't pass an empty
- value.
- * configure: Regenerate.
-
-2004-03-05 Nathan Sidwell <nathan@codesourcery.com>
-
- PR 13577
- * gcc.c (cc1_options): Robustify -auxbase-strip from multiple -o
- options.
-
-2004-03-05 Paolo Bonzini <bonzini@gnu.org>
-
- * simplify-rtx.c (simplify_relational_operation): If
- flag_wrapv is set, do not move terms between the two
- side of a relational operator.
-
-2004-03-05 Paolo Bonzini <bonzini@gnu.org>
-
- * rtlanal.c: Include target.h and output.h
- (rtx_cost, address_cost, default_address_cost): Move from...
- * cse.c (rtx_cost, address_cost, default_address_cost):
- ... this file.
- * rtl.h (rtx_cost, address_cost): Move under rtlanal.c.
- * Makefile.in: Adjust dependencies.
-
-2004-03-05 Paolo Bonzini <bonzini@gnu.org>
-
- * cse.c (cse_end_of_basic_block): Make static.
- * local-alloc.c (function_invariant_p): Move to
- reload1.c.
- * loop.c (libcall_other_reg, record_excess_regs):
- Make static.
- * reload1.c (function_invariant_p): Moved here
- from local-alloc.c, made static.
- * rtl.h (cse_end_of_basic_block, function_invariant_p,
- libcall_other_reg, record_excess_regs): Remove
- declarations.
-
-2004-03-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.c (signed_comparison_operator): Add a
- missing parenthesis.
-
-2004-03-04 Ian Lance Taylor <ian@wasabisystems.com>
-
- * ggc-common.c (gt_pch_restore): Don't unmap addr unless we are
- going to call mmap again. Read the file into the right place.
- Give a fatal error if we have to relocate.
-
-2004-03-04 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (xtensa_return_in_msb): New function.
- (TARGET_RETURN_IN_MSB): Define to xtensa_return_in_msb.
-
-2004-03-05 Hans-Peter Nilsson <hp@axis.com>
-
- PR other/14354
- * config/fp-bit.c (_fpdiv_parts): Do not round when pack_d would
- round the same. When rounding, clear bits that would cause a
- second rounding in pack_d.
- (_fpmul_parts): Ditto. Remove #if 0:d code.
-
-2004-03-04 Ziemowit Laski <zlaski@apple.com>
-
- PR c++/14425, c++/14426
- * config/rs6000/altivec.h (vec_splat_s8, vec_splat_s16,
- vec_splat_s32, vec_splat_u8, vec_splat_u16, vec_splat_u32):
- Change C++ definitions to accept a 'const int' argument;
- the prototypes already do.
- * config/rs6000/rs6000.c (rs6000_common_init_builtins):
- Rename v4si_ftype_char, v8hi_ftype_char, v16qi_ftype_char,
- v4sf_ftype_v4si_char, v4si_ftype_v4sf_char, v4si_ftype_v4si_char,
- v8hi_ftype_v8hi_char, v16qi_ftype_v16qi_char,
- v16qi_ftype_v16qi_v16qi_char, v8hi_ftype_v8hi_v8hi_char,
- v4si_ftype_v4si_v4si_char and v4sf_ftype_v4sf_v4sf_char to
- end in ..._int; change them to accept an int instead of a char
- as the last parameter.
-
-2004-03-04 Phil Edwards <phil@codesourcery.com>
-
- * genmultilib: Change '=' to '-' when translating option names
- to directory names.
-
-2004-03-04 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr_real, case COMPONENT_REF): Get proper type of
- stack slot for temp used for result of BLKmode but in integral mode.
-
-2004-03-04 Jan Hubicka <jh@suse.cz>
-
- * reload.c (find_reloads): Reorganize if seqeunce to switch.
-
- * cfgrtl.c (rtl_redirect_edge_and_branch): Set the source BB as dirty.
- (cfglayout_redirect_edge_and_branch): Set the source BB as dirty.
-
-2004-03-04 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.md (divdf3_internal_thr): Fix algorithm.
- * testsuite/gcc.dg/20040303-1.c: New test.
-
-2004-03-04 Steven Bosscher <stevenb@suse.de>
-
- * ppro.md: Rewrite as a DFA pipeline description.
- * i386.md: Remove all uses of the ppro_uops attribute.
- * i386.c: (ix86_safe_ppro_uops, ix86_dump_ppro_packet,
- ix86_reorder_insn, ix86_sched_reorder_ppro, ix86_sched_init,
- ix86_sched_reorder, ix86_variable_issue,
- struct ix86_sched_data, TARGET_SCHED_VARIABLE_ISSUE,
- TARGET_SCHED_INIT, TARGET_SCHED_REORDER): Remove.
- (ia32_use_dfa_pipeline_interface): Add TARGET_PENTIUMPRO.
- (ia32_multipass_dfa_lookahead): Add TARGET_PENTIUMPRO.
- * athlon.md (athlon_ssecmp_load): Fix comment
-
-2004-03-04 Stuart Hastings <stuart@apple.com>
-
- * gcc/doc/invoke.texi: Document -mlongcall for Darwin/PPC.
-
-2004-03-04 Stuart Hastings <stuart@apple.com>
-
- * gcc/config/i386/darwin.h: Darwin/x86 doesn't support CPUs before
- 686, tell Darwin assembler to allow prefetch insns, non-empty def
- of SUBTARGET_OPTION_TRANSLATE_TABLE.
-
-2004-03-04 DJ Delorie <dj@redhat.com>
-
- PR optimization/14282
- * sched-deps.c (sched_analyze_insn): Allow a stack adjustment
- between a call and the assignment of its return value.
-
-2004-03-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Put a comment for every function.
-
-2004-03-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Add comments about peephole2's.
-
-2004-03-04 Steven Bosscher <stevenb@suse.de>
-
- * i386.h (TARGET_CPU_DEFAULT_nocona): Fix value.
-
-2004-03-04 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (thread_jump): Update call of cselib_init.
- * cselib.c (cselib_record_memory): New static variable.
- (cselib_lookup_mem, cselib_record_set, cselib_record_sets):
- Give up on memories when asked for.
- (cselib_init): Accept new argument.
- * cselib.h (cselib_init): Update prototype.
- * gcse.c (local_cprop_pass): Update call of cselib_init.
- * loop.c (load_mems): Update call of cselib_init.
- * postreload.c (reload_cse_regs_1): Update call of cselib_init.
- * sched-deps.c (sched_analyze): Update call of cselib_init.
-
-2004-03-04 David Edelsohn <edelsohn@gnu.org>
- GP <gp@qnx.com>
-
- * config/rs6000/rs6000.c (output_function_profiler): Append @plt
- when compiling PIC.
-
-2004-03-04 Josef Zlomek <zlomekj@suse.cz>
-
- PR/14362
- * var-tracking.c (track_expr_p): Do not track variables which
- should be ignored for debugging purposes.
-
-2004-03-04 Alan Modra <amodra@bigpond.net.au>
-
- * real.c (encode_ibm_extended): Don't bother rounding low double.
- * c-cppbuiltin.c (builtin_define_float_constants): Tweak MAX
- when fmt->pnan < fmt->p.
-
-2004-03-04 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.h (FUNCTION_ARG_REGNO_P): Fix to check
- only range of valid arg registers and fixed_regs.
-
-2004-03-04 Alan Modra <amodra@bigpond.net.au>
-
- PR target/14406
- * config/rs6000/rs6000.md (abstf2, abstf2+1): Delete define_insn.
- (abstf2, abstf2_internal): New define_expand.
-
-2004-03-04 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/14235
- * expr.c (convert_move): Copy the source to a new pseudo
- when converting from a sub-word source to a larger-than-word
- register which conflicts with the source.
-
-2004-03-03 Zack Weinberg <zack@codesourcery.com>
-
- PR 13728
- * c-decl.c (diagnose_mismatched_decls): Issue an error for two
- parameters with the same name, unless one is a forward decl.
- Do not issue a redundant-redeclaration warning for forward
- decls of parameters.
-
-2004-03-04 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi (*-ibm-aix*): Document use of Bash to speed up
- configuration.
-
-2004-03-03 Ian Lance Taylor <ian@wasabisystems.com>
-
- * ggc-zone.c (ggc_pch_write_object): Don't align file pointer.
-
-2004-03-04 Alan Modra <amodra@bigpond.net.au>
-
- * target-def.h (TARGET_OPTF): Delete.
- * c-opts.c (TARGET_OPTF): Define.
-
-2004-03-04 Jan Hubicka <jh@suse.cz>
-
- * cselib.c (cselib_finish): Fix another miss-application of my previous
- patch.
-
-2004-03-03 Mike Stump <mrs@apple.com>
-
- Add framework support for darwin.
-
- * c-incpath.c: Include target.h and machmode.h.
- (add_path): Use a consistent style for cpp_dir. Initialize
- p->construct to 0.
- (add_cpp_dir_path): New.
- (register_include_chains): Add use of extra_includes callback.
- (hook_void_int): Add.
- (target_c_incpath): Add.
- * c-incpath.h (add_cpp_dir_path): New.
- (target_c_incpath_s): Add.
- (target_c_incpath): Add.
- (C_INCPATH_INIT): Add.
- * c-opts.c (c_common_missing_argument,
- c_common_handle_option): Add -F argument processing.
- * c.opt: Add -F argument processing.
- * gcc.c (trad_capable_cpp): Add -F argument processing.
- * cppfiles.c (find_file_in_dir): Update to use construct
- callback.
- (search_path_exhausted, cpp_get_path, cpp_get_buffer,
- cpp_get_prev): New.
- (_cpp_find_file): Use search_path_exhausted.
- (make_cpp_dir): Initialize construct to 0.
- * cpplib.h (missing_header_cb
- cpp_get_path, cpp_get_buffer, cpp_get_file, cpp_get_prev): New.
- (cpp_callbacks): Add missing_header
- (cpp_dir): Add construct.
- * target-def.h: (TARGET_OPTF): New.
- * hooks.c (hook_void_int, hook_void_charptr): Add.
- * hooks.h (hook_void_int, hook_void_charptr): Add.
- * Makefile.in (c-incpath.o) : Add $(TARGET_H) and
- $(MACHMODE_H) dependencies.
- * doc/invoke.texi (Darwin Options): Document -F.
- * doc/tm.texi (TARGET_EXTRA_INCLUDES): Add.
- (TARGET_OPTF): Add.
- * fix-header.c (target_c_incpath): Add.
-
- * config/darwin-c.c: Add c-incpath.h include.
- (using_frameworks, find_subframework_file,
- find_subframework_header, add_system_framework_path,
- frameworks_in_use, num_frameworks, max_frameworks,
- add_framework, find_framework, struct framework_header,
- framework_header_dirs, framework_construct_pathname,
- find_subframework_file, add_system_framework_path,
- add_framework_path, framework_defaults,
- darwin_register_frameworks, find_subframework_header): Add.
- * config/darwin.h (TARGET_EXTRA_INCLUDES, TARGET_OPTF): New.
- (TARGET_OPTION_TRANSLATE_TABLE): Add -framework support.
- (CPP_SPEC): Add __APPLE_CC__ support.
- * t-darwin (darwin-c.o): Add c-incpath.h dependency.
-
-2004-03-04 Jan Hubicka <jh@suse.cz>
-
- * cselib.c (cselib_finish): Fix miss-application of my previous
- patch.
-
-2004-03-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * hooks.c (hook_tree_tree_identity): New.
- * hooks.h: Add a prototype for hook_tree_tree_identity.
- * stmt.c (expand_asm_operands): Use targetm.md_asm_clobbers
- instead of MD_ASM_CLOBBERS.
- * system.h (MD_ASM_CLOBBERS): Poison.
- * target-def.h (TARGET_MD_ASM_CLOBBERS): New.
- (TARGET_INITIALIZER): Add TARGET_MD_ASM_CLOBBERS.
- * target.h (gcc_target): Add md_asm_clobbers.
- * config/i386/i386.c (TARGET_MD_ASM_CLOBBERS): New.
- (ix86_md_asm_clobbers): New.
- * config/i386/i386.h (MD_ASM_CLOBBERS): Remove.
- * doc/tm.texi (MD_ASM_CLOBBERS): Change to
- TARGET_MD_ASM_CLOBBERS.
-
-2004-03-03 Stuart Hastings <stuart@apple.com>
-
- * gcc/config.gcc: Arrange for Darwin/x86 to build libgcc_eh.a.
-
-2004-03-03 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (noov_compare64_op): Fix typo.
-
- * config/sparc/sparc.h (ASM_FLOAT): Delete.
- (ASM_DOUBLE): Likewise.
- (ASM_LONGDOUBLE): Likewise.
- * config/sparc/pbd.h (ASM_INT_OP): Delete.
-
-2004-03-03 Richard Henderson <rth@redhat.com>
-
- PR opt/13862
- * cselib.c (cselib_record_sets): Don't record multiple sets in
- asm insns.
-
-2004-03-03 Mostafa Hagog <mustafa@il.ibm.com>
-
- * common.opt: Add description of the new -fgcse-after-reload flag.
-
- * flags.h (flag_gcse_after_reload): Declaration of global variable.
-
- * gcse.c (reg_used_on_edge ,reg_set_between_after_reload_p,
- reg_used_between_after_reload_p, rtx get_avail_load_store_reg,
- is_jump_table_basic_block, bb_has_well_behaved_predecessors,
- get_bb_avail_insn, hash_scan_set_after_reload,
- compute_hash_table_after_reload, eliminate_partially_redundant_loads,
- gcse_after_reload, get_bb_avail_insn): New functions to implement
- gcse-after-reload.
- (gcse_after_reload_main): New function, the main entry point to
- gcse-after-reload.
-
- * rtl.h (gcse_after_reload_main): Declaration of the new function.
-
- * opts.c (common_handle_option): Handle the -fgcse-after-reload flag.
-
- * toplev.c (flag_gcse_after_reload): Initialization.
-
- * passes.c (rest_of_handl_gcse2): Call gcse_after_reload_main.
-
- * params.def (PARAM_GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
- PARAM_GCSE_AFTER_RELOAD_CRITICAL_FRACTION): New parameters for tuning
- the gcse after reload optimization.
-
- * params.h (GCSE_AFTER_RELOAD_PARTIAL_FRACTION,
- GCSE_AFTER_RELOAD_CRITICAL_FRACTION): Two macros to access the tuning
- parameters.
-
- * doc/invoke.texi: Documentation for the new flag gcse-after-reload.
-
-2004-03-03 Nicolas Pitre <nico@cam.org>
-
- * config/arm/ieee754-df.S (muldf3, divdf3): Fix denormalization of
- small negative values.
-
-2004-03-03 Jan Hubicka <jh@suse.cz>
-
- * cselib.c (hash_table): Remove GTY marker.
- (reg_values): Turn into array.
- (used_regs): Likewise.
- (n_used_regs): New static variable.
- (reg_values_old): Kill.
- (clear_table): Update uses of arrays.
- (cselib_lookup): Likewise.
- (cselib_record_set): Likewise.
- (cselib_init): Likewise.
- (cselib_finish): Likewise.
- (cselib_udpate_varray_sizes): Kill.
- * cselib.h (cselib_update_varray_sizes): Kill.
-
-2004-03-03 Paul Brook <paul@codesourcery.com>
-
- * flow.c (ior_reg_cond, and_reg_cond): Remove stray ")".
-
-2004-03-03 Jan Hubicka <jh@suse.cz>
-
- * ggc-common.c (ggc_alloc_cleared_stat, ggc_realloc_stat):
- Rename from ...; make statistics transparent.
- (ggc_alloc_cleared, ggc_realloc_stat): ... these.
- (loc_descriptor): New structure.
- (hash_descriptor, eq_descriptor, loc_descriptor, cmp_statistics,
- add_statistics):
- New static function.
- (ggc_record_overhead, dump_statistics): New global function.
- * ggc-none.c (ggc_alloc_types_stat, ggc_alloc_stat, ggc_alloc_zone_stat,
- ggc_alloc_cleared_stat, ggc_realloc_stat, ggc_alloc_typed_stat): Rename
- from ...; accept locations
- (ggc_alloc_types, ggc_alloc, ggc_alloc_zone, ggc_alloc_cleared,
- ggc_realloc, ggc_alloc_typed): ... this one.
- from ...; accept locations
- * ggc-page.c (ggc_alloc_typed_stat, ggc_alloc_zone_stat,
- ggc_alloc_stat): Rename from ... ; pass locations
- * ggc-page.c (ggc_alloc_typed, ggc_alloc_zone, ggc_alloc):
- ... this one.
- (ggc_alloc_stat): Record overehead.
- * ggc.h (ggc_alloc_types, ggc_alloc, ggc_alloc_zone, ggc_alloc_cleared,
- ggc_realloc, ggc_alloc_typed): Turn to macros
- (ggc_alloc_types_stat, ggc_alloc_stat, ggc_alloc_zone_stat,
- ggc_alloc_cleared_stat, ggc_realloc_stat, ggc_alloc_typed_stat): Declare.
- (dump_ggc_loc_satistics, ggc_record_overehead): Declare.
- * langhooks.h (lhd_make_node): Declare.
- (LANG_HOOKS_MAKE_TYPE): Default to new function,
- * langhooks.c (lhd_make_node): New.
- * rtl.c (rtx_alloc_stat, swallow_copy_rtx_stat): Rename from ... ; pass
- locations.
- (rtx_alloc, swallow_copy_rtx): ... this one.
- * rtl.h (rtx_alloc, swallow_copy_rtx): Turn to macros.
- * rtl.c (rtx_alloc_stat, swallow_copy_rtx_stat): Declare.
- * toplpev.c (finalize): Dump stats.
- * tree.c (make_node_stat, copy_node_stat, make_tree_vec_stat,
- build_tree_list_stat, tree_cons_stat, build?_stat, build_decl_stat):
- Rename from ... ; pass locators.
- (make_node, copy_node, make_tree_vec, build_tree_list, tree_cons,
- build?, build_decl): Declare.
- * tree.h (make_node_stat, copy_node_stat, make_tree_vec_stat,
- build_tree_list_stat, tree_cons_stat, build?_stat, build_decl_stat):
- Declare.
- (make_node, copy_node, make_tree_vec, build_tree_list, tree_cons,
- build?, build_decl): New macros.
- * Makefile.in (RTL_H, TREE_H): Add statistics.h dependency.
- * statistics.h: New file.
-
-2004-03-03 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
- Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (MASK_FIX_SB1): Bump.
- (MASK_FIX_R4400, TARGET_FIX_R4400): New macros.
- (TARGET_SWITCHES): Add -mfix-r4400 and -mno-fix-r4400.
- * config/mips/mips.c (mips_output_division): Fill the branch delay
- slot with a nop if TARGET_FIX_R4000. Extend R4000 workarounds to
- TARGET_FIX_R4400.
- (mips_output_division): Adjust accordingly.
- (override_options): Make -march=r4400 imply -mfix-r4400 by default.
- * doc/invoke.texi: Document -mfix-r4400 and new errata workarounds.
-
-2004-03-03 Paolo Bonzini <bonzini@gnu.org>
-
- * alias.c (rtx_equal_for_memref_p): Use predicates
- to test rtx classes and new rtx class codes, possibly
- splitting conditionals that tested against '<' and 'o'.
- * caller-save.c (save_call_clobbered_regs): Likewise.
- * combine.c (contains_muldiv, find_split_point, subst,
- combine_simplify_rtx, simplify_if_then_else,
- simplify_set, simplify_logical, expand_compound_operation,
- make_compound_operation, if_then_else_cond, known_cond,
- apply_distributive_law, cached_nonzero_bits,
- cached_num_sign_bit_copies, simplify_shift_const,
- gen_binary, simplify_comparison, update_table_tick,
- record_value_for_reg, get_lsat_value_validate): Likewise.
- * cse.c (mention_regs, find_best_addr, find_comparison_args,
- fold_rtx, cse_insn, invalidate_memory, cse_basic_block):
- Likewise.
- * emit-rtl.c (copy_insn_1): Likewise.
- * expr.c (force_operand): Likewise.
- * final.c (final_scan_insn, get_mem_expr_from_op): Likewise.
- * flow.c (notice_stack_pointer_modification_1,
- invalidate_mems_from_autoinc, ior_reg_cond, not_reg_cond,
- and_reg_cond, elim_reg_cond): Likewise.
- * function.c (update_epilogue_consts): Likewise.
- * genattrtab.c (attr_rtx_1): Likewise.
- * genopinit.c (gen_insn): Likewise.
- * integrate.c (subst_constants): Likewise.
- * jump.c (reversed_comparison_code_parts,
- reversed_comparison_code, delete_related_insns,
- rtx_renumbered_equal_p): Likewise.
- * local-alloc.c (block_alloc): Likewise.
- * loop.c (rtx_equal_for_prefetch_p, maybe_eliminate_biv,
- canonicalize_condition): Likewise.
- * loop-iv.c (simplify_using_conditions, iv_number_of_iterations):
- Likewise.
- * optabs.c (add_equal_node, expand_binop): Likewise.
- * predict.c (estimate_probability): Likewise.
- * ra-debug.c (ra_print_rtx_2op, ra_print_rtx): Likewise.
- * recog.c (validate_replace_rtx_1, comparison_operator,
- offsettable_address_p, constrain_operands): Likewise.
- * reg-stack.c (swap_rtx_condition_1, subst_stack_regs_pat):
- Likewise.
- * regclass.c (scan_one_insn): Likewise.
- * regmove.c (stable_and_no_regs_but_for_p): Likewise.
- * regrename.c (kill_autoinc_value): Likewise.
- * reload.c (find_reusable_reload, find_reloads,
- reg_overlap_mentioned_for_reload_p): Likewise.
- * reload1.c (gen_reload, delete_address_reloads_1): Likewise.
- * rtl.c (copy_rtx): Likewise.
- * rtl.h (CONSTANT_P, INSN_P): Likewise.
- * rtlanal.c (commutative_operand_precedence): Likewise.
- * sched-deps.c (conditions_mutex_p): Likewise.
- * sched-rgn.c (is_cfg_nonregular): Likewise.
- * simplify-rtx.c (simplify_gen_binary,
- simplify_gen_relational, simplify_replace_rtx,
- simplify_unary_operation, simplify_binary_operation,
- simplify_ternary_operation, simplify_rtx): Likewise.
- * unroll.c (reg_dead_after_loop): Likewise.
- * config/alpha/alpha.c (alpha_swapped_comparison_operator,
- print_operand): Likewise.
- * config/arc/arc.c (proper_comparison_operator): Likewise.
- * config/arm/arm.c (arm_arm_address_cost, arm_select_cc_mode):
- Likewise.
- * config/avr/avr.c (_reg_unused_after): Likewise.
- * config/frv/frv.c (frv_ifcvt_modify_tests,
- frv_ifcvt_modify_insn, frv_pack_insn): Likewise.
- * config/i386/i386.c (ix86_comparison_operator,
- ix86_carry_flag_operator, fcmov_comparison_operator,
- arith_or_logical_operator, print_operand,
- ix86_expand_binary_operator, ix86_binary_operator_ok):
- Likewise.
- * config/i386/i386.md: Likewise.
- * config/ia64/ia64.c (not_postinc_memory_operand,
- ia64_print_operand, update_set_flags, errata_emit_nops):
- Likewise.
- * config/ia64/ia64.h (PREFERRED_RELOAD_CLASS,
- CONSTRAINT_OK_FOR_S): Likewise.
- * config/ip2k/ip2k.c (mdr_resequence_xy_yx,
- mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
- ip2k_xexp_not_uses_reg_for_mem, ip2k_xexp_not_uses_reg_p,
- ip2k_composite_xexp_not_uses_reg_p, ip2k_unary_operator):
- Likewise.
- * config/iq2000/iq2000.c (cmp_op, symbolic_expression_p,
- eqne_comparison_operator, signed_comparison_operator):
- Likewise.
- * config/mips/mips.c (cmp_op, symbolic_expression_p):
- Likewise.
- * config/mmix/mmix (mmix_foldable_comparison_operator,
- mmix_comparison_operator): Likewise.
- * config/pa/pa.c (hppa_legitimize_address): Likewise.
- * config/rs6000/rs6000.c (stmw_operation,
- branch_comparison_operator, trap_comparison_operator,
- ccr_bit): Likewise.
- * config/rs6000/rs6000.h (SELECT_CC_MODE): Likewise.
- * config/s390/s390.c (s390_alc_comparison,
- s390_slb_comparison):L Likewise.
- * config/sh/sh.c (gen_block_redirect, reg_unused_after):
- Likewise.
- * config/sparc/sparc.c (eq_or_neq, normal_comp_operator,
- noov_compare_op, noov_compare64_op, v9_regcmp_op,
- emit_hard_tfmode_operation, reg_unused_after)
- * doc/md.texi, doc/rtl.texi: Likewise.
-
- * ra-debug.c: Add 2004 to list of copyright years.
- * unroll.c: Likewise.
-
- * combine.c (simplify_logical): Remove dummy test,
- (apply_distributive_law): Fix typo in comment.
- GET_CODE (x) == AND so x is a commutative binary op.
- * jump.c (delete_related_insns): simplify loop
- condition, move testing of RTX codes inside the loop.
- (rtx_renumbered_equal_p): do not use RTX_CODE.
- * rtl.c (rtx_class): Declare as enum rtx_class.
- * rtl.def (EQ, NE, UNEQ, LTGT, UNORDERED, ORDERED):
- Move to RTX_COMM_COMPARE class.
- (HIGH, SYMBOL_REF, LABEL_REF, CONST, CONST_INT, CONST_DOUBLE):
- Move to RTX_CONST_OBJ class.
- * rtl.h (enum rtx_class): New declaration,
- (RTX_OBJ_MASK, RTX_OBJ_RESULT, RTX_COMPARE_MASK,
- RTX_COMPARE_RESULT, RTX_ARITHMETIC_MASK, RTX_ARITHMETIC_RESULT,
- RTX_BINARY_MASK, RTX_BINARY_RESULT, RTX_COMMUTATIVE_MASK,
- RTX_COMMUTATIVE_RESULT, RTX_NON_COMMUTATIVE_RESULT,
- RTX_EXPR_FIRST, RTX_EXPR_LAST, UNARY_P, BINARY_P,
- ARITHMETIC_P, COMMUTATIVE_ARITHMETIC_P, COMPARISON_P,
- SWAPPABLE_OPERANDS_P, NON_COMMUTATIVE_P, COMMUTATIVE_P,
- OBJECT_P): New macros.
- * config/sparc/sparc.c (noov_compare_op): Remove register
- from parameter.
-
-2004-03-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * target.h: Remove texi jargons in comments.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (___fixunssfsi): Change the
- threshold to 0x4f.
-
- Revert:
- 2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
- * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
- as well.
- * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
- * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/md.texi (cbranchmode4): New.
-
-2004-03-02 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips16.S: Change fixsfsi and fixdfsi to
- fix_trunc.
- * config/mips/mips.c (mips_init_libfuncs): Change accordingly.
- * config/mips/t-elf (LIB1ASMFUNCS): Ditto.
- * config/mips/t-isa3264 (LIB1ASMFUNCS): Ditto.
- * config/mips/t-r3900 (LIB1ASMFUNCS): Ditto.
-
-2004-03-02 Richard Henderson <rth@redhat.com>
-
- PR middle-end/11767
- * coverage.c (coverage_counter_ref): Set MEM_NOTRAP_P.
- * optabs.c (prepare_cmp_insn): Force trapping memories to registers
- before the compare, if flag_non_call_exceptions.
-
-2004-03-02 Richard Henderson <rth@redhat.com>
-
- PR middle-end/14327
- * stmt.c (expand_computed_goto): Do do_pending_stack_adjust before
- emitting the label, not after.
-
-2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_addr_mode): New variable.
- (m68hc11_mov_addr_mode): Likewise.
- (m68hc11_override_options): Initialize them based on target.
- (register_indirect_p): Allow a MEM for indirect addressing modes and
- use flags to control what is allowed.
- (m68hc11_small_indexed_indirect_p): Use m68hc11_mov_addr_mode for
- supported addressing modes.
- (m68hc11_register_indirect_p): Use m68hc11_addr_mode.
- (go_if_legitimate_address_internal): Likewise.
- (m68hc11_indirect_p): Likewise and check the mode.
- (print_operand): Allow a (MEM (MEM)) and generate indirect addressing.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.c (BUILTIN_SETJMP_FRAME_VALUE): Remove.
- (expand_builtin_setjmp_setup): Use
- targetm.builtin_setjmp_frame_value instead of
- BUILTIN_SETJMP_FRAME_VALUE.
- * system.h (BUILTIN_SETJMP_FRAME_VALUE): Poison.
- * target-def.h (TARGET_BUILTIN_SETJMP_FRAME_VALUE): New.
- (TARGET_INITIALIZER): Add TARGET_BUILTIN_SETJMP_FRAME_VALUE.
- * target.h (gcc_target): Add builtin_setjmp_frame_value.
- * targhooks.c (default_builtin_setjmp_frame_value): New.
- * targhooks.h: Add a prototype for
- default_builtin_setjmp_frame_value.
- * doc/tm.texi (BUILTIN_SETJMP_FRAME_VALUE): Change to
- TARGET_BUILTIN_SETJMP_FRAME_VALUE.
-
-2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md (move peephole2): New peepholes to optimize
- sequences of moves.
- (add peepholes): New peepholes to optimize sequences adding small
- constants.
- (bset peepholes): New peepholes to transform an OR in a bset form
- (bclr peepholes): Likewise for bclr form.
- (cmp peepholes): New peepholes to avoid register copies when comparing.
-
-2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("*pushdi_internal"): New insn and split
- to separate push from moves.
- ("*pushdf_internal"): Likewise.
- ("*pushsf_internal"): Likewise.
- ("*pushsi_internal"): Likewise.
- ("movdi_internal"): Use define_insn_and_split; non push operand.
- ("movdf_internal"): Likewise.
- ("movsf_internal"): Likewise.
- ("movsi_internal"): Likewise.
- ("*movhi_68hc12", "*addhi3_68hc12"): Fix and tune constraints
- ("*addhi3", "*subhi3", "*andhi3_mem", "*iorhi3_mem"): Likewise.
- ("*ashlsi3_const1", "*lshrsi3_const1"): Likewise.
-
-2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("tstqi_z_used"): Use define_insn_and_split.
- ("cmphi_z_used", "cmpqi_z_used"): Likewise.
- ("movstrictsi", "movstricthi", "movstrictqi"): Likewise.
- ("anddi3", "andsi3", "iordi3", "iorsi3"): Likewise.
- ("xordi3", "xorsi3", "*logicalsi3_zexthi"): Likewise.
- ("*logicalsi3_zextqi", "*logicalhi3_zexthi_ashift8"): Likewise.
- ("logicalhi3_zexthi", "*logicalsi3_silshr16"): Likewise.
- ("*logicalsi3_silshl16", "*logicalsi3_silshl16_zext"): Likewise.
- ("*ashldi3_const32", "*ashldi3_const1", "addsi_silshr16"): Likewise.
- ("addsi_andshr16", "*ashlsi3_const16_zexthi"): Likewise.
- ("*lshrdi3_const32", "*lshrdi_const1"): Likewise.
-
-2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md (SOFT_TMP_REGNUM): Define.
- (SOFT_XY_REGNUM): Define.
- (cmp split): Use the above instead of hard coded numbers.
- (8-bit op split): No need to check the mode; allow Q_REG.
- (ashift split): Adjust the first operand if it uses the SP and we
- are pushing the shifted value.
- (plus shift split): Fix when a source is in register D+X.
- ("doloop_end"): Pass dummy arguments to gen_rtx_NE.
-
-2004-03-02 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Fix when
- comparing with Z register.
-
-2004-03-02 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfgloop.h (struct loop_desc): Removed.
- (struct loop): Fields simple, desc and has_desc removed.
- (simple_loop_p, count_loop_iterations): Declaration removed.
- * cfgloopanal.c (struct unmark_altered_insn_data): Removed.
- (unmark_altered, blocks_invariant_registers, unmark_altered_insn
- blocks_single_set_registers, invariant_rtx_wrto_regs_p_helper,
- invariant_rtx_wrto_regs_p, test_for_iteration, constant_iterations,
- simple_loop_exit_p, variable_initial_value, variable_initial_values,
- simple_condition_p, simple_increment, count_strange_loop_iterations,
- inverse, fits_in_mode_p, simple_loop_p, count_loop_iterations):
- Removed.
- * loop-iv.c (check_simple_exit, find_simple_exit): Update comments.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * genattrtab.c: Don't handle MATCH_INSN.
- * genrecog.c: Likewise.
- * gensupport.c: Likewise.
- * rtl.def (match_insn): Remove.
- * doc/md.texi (match_insn, match_insn2): Remove.
-
-2004-03-02 Mark Mitchell <mark@codesourcery.com>
-
- * doc/c-tree.texi (DECL_ASSEMBLER_NAME): Mention that using this
- macro results in memory allocation.
-
-2004-03-02 David O'Brien <obrien@FreeBSD.org>
-
- * config/freebsd-spec.h (FBSD_DYNAMIC_LINKER): Add.
- * config/alpha/freebsd.h (SUBTARGET_EXTRA_SPECS): Define
- %(fbsd_dynamic_linker),
- (LINK_SPEC): Use %(fbsd_dynamic_linker), and sync style with
- config/i386/freebsd.h
- * config/arm/freebsd.h: Ditto.
- * config/i386/freebsd.h: Ditto.
- * config/i386/freebsd64.h: Ditto.
- * config/ia64/freebsd.h: Ditto.
- * config/rs6000/sysv4.h: Ditto.
- * config/sparc/freebsd.h: Ditto.
-
-2004-03-02 Loren James Rittle <ljrittle@acm.org>
-
- * gcc/doc/install.texi (*-*-freebsd*): Update target information.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * rtl.def (define_combine): Remove.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Tweak formatting.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*cmphi_h8300): Rename to
- *cmphi_h8300_znvc.
- (*cmphi_h8300hs): Rename to *cmphi_h8300hs_znvc.
-
-2004-03-01 Mark Mitchell <mark@codesourcery.com>
-
- PR bootstrap/14356
- * gcc.c (process_command): Remove const-qualification from argv.
- (main): Likewise.
-
-2004-03-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (pushqi1_h8300hs): Rename to
- pushqi1_h8300hs_advanced. Adjust its caller.
- (pushhi1_h8300hs): Rename to pushhi1_h8300hs_advanced.
- Adjust its caller.
-
-2004-03-02 Nicolas Roche <roche@act-europe.fr>
-
- * Makefile.in (install-libgcc, install-multilib): Pass
- mkinstalldirs var to libgcc.mk.
-
-2004-03-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (DBX_OUTPUT_STANDARD_TYPES): Poison.
- * doc/tm.texi (DBX_OUTPUT_STANDARD_TYPES): Remove.
-
-2004-03-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (gtle_operator): Accept GT and LE.
- * config/h8300/h8300.md: Split several peephole2's, each into
- two.
-
-2004-03-02 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * dominance.c (recount_dominator): Handle postdominators.
-
-2004-03-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (enum mips_symbol_type): Move from mips.h.
- (NUM_SYMBOL_TYPES): Likewise.
- (SYMBOL_64_HIGH, SYMBOL_64_MID, SYMBOL_64_LOW): New symbol types.
- (mips_unspec_address): Declare.
- (mips_gotoff_page, mips_gotoff_global): Delete.
- * config/mips/mips.h (PREDICATE_CODES): Add general_symbolic_operand.
- * config/mips/mips.c (enum mips_symbol_type, NUM_SYMBOL_TYPES): Delete.
- (mips_symbolic_constant_p, mips_symbolic_address_p)
- (mips_symbol_insns): Handle new symbol types.
- (general_symbolic_operand): New predicate.
- (mips_unspec_address): Make extern.
- (mips_gotoff_page, mips_gotoff_global): Delete.
- (override_options): Allow -mabi=64 -mno-abicalls -mexplicit-relocs.
- Handle new symbol types.
- * config/mips/mips.md (*lea_high64, *lea64): New patterns.
- (*xgot_hi[sd]i, *xgot_lo[sd]i, *got_disp[sd]i, *got_disp[sd]i): Call
- mips_unspec_address directly.
- * doc/invoke.texi: Remove the -mabi=64 -mno-abicalls exception from
- the documentation of -mexplicit-relocs.
-
-2004-03-01 Jeff Law <law@redhat.com>
-
- * fold-const.c (fold): An equality comparison of a non-weak object
- against zero has a known result. Similarly an equality comparison
- of the address of two non-weak, unaliased symbols has a known result.
-
- * ggc-page.c (struct page_entry): New field PREV.
- (ggc_alloc): Update PREV field appropriately.
- (sweep_pages): Likewise.
- (ggc_free): Likewise. Use PREV field rather than loop to
- improve ggc_free performance.
-
-2004-03-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_output_division): Use the division
- instruction to fill the delay slot of a zero check.
- (mips_idiv_insns): Adjust accordingly.
-
-2004-03-01 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Create a default tmake_file for linux, and use
- it in all but two linux clauses. Comment those two.
-
-2004-03-01 Paolo Bonzini <bonzini@gnu.org>
-
- * combine.c (try_combine): Do not refer to is_replaced.
- (gen_lowpart_for_combine): Perverse subregs now have a
- more politically correct name.
- * cse.c (cse_insn): Likewise.
- * jump.c: Fix bogus reference to delete_insn.
-
-2004-02-29 Mark Mitchell <mark@codesourcery.com>
-
- PR debug/14328
- * dwarf2out.c (gen_enumeration_type_die): Output all enumeration
- constants as signed values.
-
- PR middle-end/13448
- * c-tree.h (readonly_warning): Rename to ...
- (readonly_error): ... this.
- * c-typeck.c (build_unary_op): Adjust accordingly.
- (readonly_warning): Rename to ...
- (readonly_error): ... this and issue errors, not warnings.
- (build_modify_expr): Call readonly_error, not readonly_warning.
- (c_expand_asm_operands): Likewise.
- * tree-inline.c (optimize_inline_calls): Do not inline functions
- after errors have occurred.
-
-2004-02-29 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.ac: Rearrange some threading code for clarity;
- add section comment.
- * configure: Regenerate.
-
-2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * passes.c, config/frv/frv.c, config/sh/sh.c: Fix comment
- typos.
- * doc/cppopts.texi: Fix a typo.
-
-2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386.md: Fix formatting.
-
-2004-02-29 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.ac: Add some comments delineating sections of code.
-
- * doc/install.texi: Note that libada uses autoconf 2.57 also.
-
- * doc/install.texi: Fix idiot typo in previous commit.
-
- * doc/install.texi: Update for conversion of intl to autoconf 2.57.
-
-2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Add comments about peephole2's.
-
-2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Tweak operand numbers of some
- peephole2's.
-
-2004-02-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Tweak comments about peephole2's.
-
-2004-02-29 Waldek Hebisch <hebisch@math.uni.wroc.pl>
-
- PR middle-end/14203
- * function.c (uninitialized_vars_warning): Use DECL_RTL_SET_P
- instead of testing whether DECL_RTL is not NULL.
-
-2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/sh/sh.c: Fix formatting.
-
-2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/sh/sh.c: Convert to ISO-C.
-
-2004-02-28 Andrew Pinski <pinskia@physics.uc.edu>
-
- * c-typeck.c (tagged_types_tu_compatible_p): Fix pasto in
- my previous patch.
-
- * config/darwin.h (machopic_finish): Output stub even if the
- symbol is already defined.
-
-2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
-
-2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * genattr.c (main): Don't define
- TRADITIONAL_PIPELINE_INTERFACE or DFA_PIPELINE_INTERFACE.
- * system.h (TRADITIONAL_PIPELINE_INTERFACE): Poison.
- (DFA_PIPELINE_INTERFACE): Likewise.
- * doc/tm.texi (TRADITIONAL_PIPELINE_INTERFACE): Remove.
- (DFA_PIPELINE_INTERFACE): Likewise.
-
-2004-02-28 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (tstsi, tstdi): Delete.
-
-2004-02-28 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * config/mips/mips.c (override_options): Remove an obsolete
- duplicate definition of the "e" constraint.
- * config/mips/mips.h: Update a comment accordingly.
-
-2004-02-28 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * config/mips/mips.md: Complete the unfinished R4000
- multiply/shift errata workaround. Improve documentation.
- (hazard): Use TARGET_FIX_R4000 to decide whether an "imul" instruction
- has a hilo hazard.
- (mulsi3, mulsi3_internal, mulsi3_r4000): Use TARGET_FIX_R4000.
- (muldi3, muldi3_internal): Likewise.
- (muldi3_internal2): Remove, replacing with...
- (muldi3_mult3, muldi3_r4000): ...these new patterns.
- (mulsidi3): Take the errata into account.
- (mulsidi3_32bit): Remove, replacing with...
- (mulsidi3_32bit_internal, mulsidi3_32bit_r4000): ...these new patterns.
- (mulsidi3_64bit, mulsidi3_64bit_parts): Disable if TARGET_FIX_R4000.
- (umulsidi3): Take the errata into account.
- (umulsidi3_32bit): Remove, replacing with..
- (umulsidi3_32bit_internal, umulsidi3_32bit_r4000): ...these patterns.
- (umulsi3_highpart, umulsi3_highpart_internal): Disable if
- TARGET_FIX_R4000.
- (smulsi3_highpart, smulsi3_highpart_internal): Likewise.
- (smuldi3_highpart, umuldi3_highpart): Likewise.
- * doc/invoke.texi: Document the errata workaround.
-
-2004-02-28 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * config/mips/mips-protos.h (mips_idiv_insns): Declare.
- * config/mips/mips.h (MASK_FIX_SB1): Bump.
- (MASK_FIX_R4000, TARGET_FIX_R4000): New macros.
- (TARGET_SWITCHES): Add -mfix-r4000 and -mno-fix-r4000.
- * config/mips/mips.c (mips_idiv_insns): New function.
- (override_options): Make -march=r4000 imply -mfix-r4000 by default.
- (mips_output_division): Add a workaround for the R4000 divide/shift
- errata.
- * config/mips/mips.md (length): Use mips_idiv_insns() to calculate
- the length of an "idiv" instruction.
- * doc/invoke.texi: Document the new switches.
-
-2004-02-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/tm.texi (IS_COSTLY_DEPENDENCE): Change to
- TARGET_SCHED_IS_COSTLY_DEPENDENCE.
-
-2004-02-28 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR optimization/14229
- * cfgrtl.c (rtl_tidy_fallthru_edge): Do not fail for !onlyjump jump.
-
-2004-02-28 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * fold-const.c (fold): Strip NOPs that change the signedness
- for RSHIFT too. Expand comment.
-
-2004-02-27 Ian Lance Taylor <ian@wasabisystems.com>
-
- PR optimization/7871
- * flow.c (mark_set_1): Don't add LOG_LINKS for global registers
- from or to call insns.
-
-2004-02-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/7871
- * flow.c (propagate_one_insn): Interpret calls as setting global
- registers, not merely clobbering them.
-
-2004-02-27 Dale Johannesen <dalej@apple.com>
-
- * config/darwin.c (machopic_output_possible_stub_label): Remove.
- config/darwin-protos.h: Ditto.
- config/darwin.h: Remove call to it.
- * combine.c (distribute_notes): Do not place a REG_DEAD note
- when value is both set and used.
-
-2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300
- as well.
- * config/h8300/lib1funcs.asm (___fixunssfsi): Remove.
- * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm.
-
-2004-02-27 Andrew Pinski <apinski@apple.com>
-
- * c-typeck.c (tagged_types_tu_compatible_p) <ENUMERAL_TYPE>:
- Speedup common case of the type values being in the same order.
-
-2004-02-27 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.h (no-inline-float-divide): New option.
- * config/ia64/ia64.h (no-inline-int-divide): New option.
- * config/ia64/ia64.h (no-inline-sqrt): New option.
- (TARGET_DEFAULT): Add MASK_INLINE_FLOAT_DIV_THR to define.
- * config/ia64/hpux.h (TARGET_DEFAULT): Ditto.
- * config/ia64/ia64.c (ia64_override_options): Modify error
- checking for inlined division/sqrt.
-
-2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * bb-reorder.c, cfgbuild.c, diagnostic.c, explow.c, profile.c,
- ra-build.c, read-rtl.c, tracer.c, unwind-dw2-fde-glibc.c,
- value-prof.c, config/darwin-protos.h, config/frv/frv-abi.h,
- config/i386/pmmintrin.h, config/pa/pa-hpux.h: Update
- copyright.
-
-2004-02-27 Paul Brook <paul@codesourcery.com>
-
- * function.c (assign_parms): Don't count pretend args for alignment.
-
-2004-02-27 Richard Henderson <rth@redhat.com>
-
- * passes.c: New file.
- * Makefile.in (OBJS-common): Add it.
- * diagnostic.c (rtl_dump_and_exit): Move decl ...
- * flags.h (rtl_dump_and_exit): ... here.
- * output.h (size_directive_output, last_assemble_variable_decl):
- Move from toplev.c.
- * rtl.h (reg_alloc): Move from toplev.c.
- * toplev.c (HAVE_conditional_execution, DUMPFILE_FORMAT,
- struct dump_file_info, enum dump_file_index, dump_file_tbl,
- open_dump_file, close_dump_file, rest_of_decl_compilation,
- rest_of_type_compilation, rest_of_handle_final,
- rest_of_handle_delay_slots, rest_of_handle_stack_regs,
- rest_of_handle_variable_tracking, rest_of_handle_machine_reorg,
- rest_of_handle_new_regalloc, rest_of_handle_old_regalloc,
- rest_of_handle_regrename, rest_of_handle_reorder_blocks,
- rest_of_handle_sched, rest_of_handle_sched2, rest_of_handle_regmove,
- rest_of_handle_tracer, rest_of_handle_if_conversion,
- rest_of_handle_if_after_combine, rest_of_handle_web,
- rest_of_handle_branch_prob,
- rest_of_handle_value_profile_transformations, rest_of_handle_cfg,
- rest_of_handle_addressof, rest_of_handle_sibling_calls,
- rest_of_handle_jump_bypass, rest_of_handle_inlining,
- rest_of_handle_null_pointer, rest_of_handle_combine,
- rest_of_handle_life, rest_of_handle_cse, rest_of_handle_cse2,
- rest_of_handle_gcse, rest_of_handle_loop_optimize,
- rest_of_handle_loop2, rest_of_compilation): Move to passes.c.
- (decode_d_option): Use enable_rtl_dump_file.
- (compile_file, finalize, do_compile): Move profile+combine+graph
- cleanup to finish_optimization_passes.
- * toplev.h (init_optimization_passes, finish_optimization_passes,
- enable_rtl_dump_file): Declare.
-
-2004-02-27 Eric Botcazou <ebotcazou@act-europe.fr>
- Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold): Revert 2004-02-25 change. Use the original
- operands to build a tree with swapped operands.
- * expr.c (expand_expr_real) <MAX_EXPR>: Consistently use the
- 'unsignedp' predicate to specify the signedness.
-
-2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-decl.c, c-ppoutput.c, combine.c, cppfiles.c, dwarf2out.c,
- expr.c, fold-const.c, gcc.c, haifa-sched.c, loop-iv.c,
- params.def, read-rtl.c, rtl.c, rtlanal.c, toplev.c: Fix
- comment typos and formatting. Follow spelling conventions.
-
-2004-02-26 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.md: Add fixuns_truncsfsi2 and
- fix_truncsfsi2.
-
- * config/rs6000/spe.md: Delete spe_efsctuiz.
- Add spe_fixuns_truncsfsi2.
- Add spe_fix_truncsfsi2.
-
-2004-02-26 Eric Christopher <echristo@redhat.com>
-
- * c-lex.c (c_lex_string_translate): New variable.
- (lex_string): Use to determine string translation.
- * c-pragma.h: Prototype.
- * c-parse.in (start_string_translation): New. Set above.
- (stop_string_translation): Ditto.
- (attribute, attribute_list, asm_def, asm_stmt,
- asm_operand): Use above functions.
- * cp/parser.c (cp_parser_declaration): Translate strings
- unless token is RID_EXTERN. Set c_lex_string_translate
- for recursive use.
- (cp_parser_asm_definition): Only translate argument strings
- to asms.
- (cp_parser_asm_operand_list): Ditto.
- (cp_parser_attribute_list): Do not translate attribute strings.
-
-2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * stmt.c (expand_start_case_dummy): Remove.
- * tree.h: Remove the corresponding prototype.
-
-2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.c (apply_args_register_offset): Remove.
- * tree.h: Remove the corresponding prototype.
-
-2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * stor-layout.c (is_pending_size): Remove.
- * tree.h: Remove the corresponding prototype.
-
-2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * recog.c (validate_replace_src): Remove.
- * recog.h: Remove the corresponding prototype.
-
-2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * calls.c: Don't reference FINAL_REG_PARM_STACK_SPACE or
- MAYBE_REG_PARM_STACK_SPACE.
- * function.c: Likewise.
- * system.h (FINAL_REG_PARM_STACK_SPACE): Poison.
- (MAYBE_REG_PARM_STACK_SPACE): Likewise.
- * doc/tm.texi (FINAL_REG_PARM_STACK_SPACE): Remove.
- (MAYBE_REG_PARM_STACK_SPACE): Likewise.
-
-2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-decl.c (c_expand_deferred_function): Remove.
- * c-tree.h: Remove the corresponding prototype.
-
-2004-02-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * postreload.c (reload_cse_move2add): Generate just a PLUS
- instead of an entire SET.
-
-2004-02-26 Jan Hubicka <jh@suse.cz>
-
- * config.gcc: Add support for nocoma/prescott/pentium-m/pentium3m
- /pentium4m.
- * i386.c (override_options): Add support for new CPUs.
- * i386.h (TARGET_CPU_DEFAULT_NAMES): New names.
- (TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_pentium4e): New
- constants.
- * invoke.texi: Extend documentation of -mtune/-march for new CPUs.
-
-2004-02-26 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define __xtensa__.
-
-2004-02-26 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * config/sparc/sparc-protos.h (sparc_emit_floatunsdi): Add 'mode'.
- (sparc_emit_fixunsdi): New prototype.
- * config/sparc/sparc.c (sparc_emit_floatunsdi): Use 'mode' argument.
- (sparc_emit_fixunsdi): New function.
- * config/sparc/sparc.md (floatunsdisf2): Use 'general_operand' for
- operand 1. Pass SFmode to sparc_emit_floatunsdi.
- (floatunsdidf2): Use 'general_operand' for operand 1. Pass DFmode
- to sparc_emit_floatunsdi.
- (fixuns_truncsfdi2): New expander.
- (fixuns_truncdfdi2): Likewise.
-
-2004-02-26 Alan Modra <amodra@bigpond.net.au>
-
- * gcse.c (delete_null_pointer_checks_1): Do not delete CC setter
- unless HAVE_cc0.
-
-2004-02-25 Richard Henderson <rth@redhat.com>
-
- * explow.c (force_reg): Call mark_reg_pointer as appropriate.
- * config/alpha/alpha.c (alpha_emit_conditional_branch): Don't
- use (op0-op1) == 0 if op0 is a pointer.
- * config/alpha/alpha.md (cmpdi): Use some_operand.
- (three comparison combine splits): Remove.
-
-2004-02-25 Richard Henderson <rth@redhat.com>
-
- PR c/12794
- * c-common.c (handle_alias_attribute): Reject the attribute if
- current_function_decl is set.
-
-2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
-
- * config.gcc: Add comment describing extra_gcc_objs.
- i[34567]86-*-cygwin*): Replace host_extra_gcc_objs with extra_gcc_objs.
- * configure.ac (extra_gcc_objs): New substitution variable.
- (host_extra_gcc_objs): Don't substitute.
- * configure: Regenerate.
- * Makefile.in: Use extra_gcc_objs.
-
-2004-02-25 Kelley Cook <kcook@gcc.gnu.org>
-
- * doc/contrib.texi: Add an entry for myself.
-
-2004-02-25 Jan Hubicka <jh@suse.cz>
-
- * basic-block.h (make_eh_edge, break_superblocks): Declare.
- * cfgbuild.c (make_eh_edge): Make global.
- * cfglayout.c (break_superblocks): Likewise; fix memory leak.
- * except.c (build_post_landing_pads, connect_post_landing_pads,
- dw2_build_landing_pads, sjlj_emit_function_enter,
- sjlj_emit_function_exit, sjlj_emit_dispatch_table,
- sjlj_build_landing_pads): Update CFG.
- (emit_to_new_bb_before): New function.
- (finish_eh_generation): Do not rebuild the CFG.
-
-2004-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * config.gcc (hppa*-*-*, parisc*-*-*): Add MASK_BIG_SWITCH to all
- target_cpu_default defines.
- * pa-hpux.h (TARGET_DEFAULT): Add MASK_BIG_SWITCH to define.
- * pa.h (TARGET_DEFAULT): Likewise.
-
-2004-02-25 Eric Botcazou <ebotcazou@act-europe.fr>
-
- * fold-const.c (fold): Treat MAX_EXPR and MIN_EXPR like
- comparisons with regard to signedness.
-
-2004-02-25 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (thumb_legitimize_address): New function.
- * arm-protos.h: Prototype it.
- * arm.h (THUMB_LEGITIMIZE_ADDRESS): Define.
- (LEGITIMIZE_ADDRESS): Use it.
-
-2004-02-25 J"orn Rennecke <joern.rennecke@superh.com>
-
- * reload1.c (reload): Only spill eliminable register with multiple
- adjacent elimination alternatives if all alternatives fail.
-
-2004-02-25 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_legitimate_index_p): For QImode the range of an offset
- is -4095...+4095 inclusive.
-
-2004-02-25 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/install.texi (sparc-sun-solaris2* specific notes): Document
- the bootstrap failure with Sun CC 5.4 and 5.5.
-
-2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * cse.c (cse_change_cc_mode_insns): Stop at any instruction
- which modifies NEWREG.
- (cse_condition_code_reg): Update the mode of CC_REG in
- CC_SRC_INSN on our own.
-
-2004-02-24 Michael Matz <matz@suse.de>
-
- * config/i386/i386.c (ix86_comp_type_attributes): Check for
- regparm attributes.
-
-2004-02-24 Richard Henderson <rth@redhat.com>
-
- * toplev.c (dump_file_tbl): Rename from dump_file.
- * bb-reorder.c, bt-load.c, cfgcleanup.c, cfglayout.c, cfgloopanal.c,
- cfgloopmanip.c, cfgrtl.c, config/arm/arm.c, config/frv/frv.c,
- config/i386/i386.c, config/ia64/ia64.c, config/mips/mips.c,
- config/sh/sh.c, cse.c, flow.c, ifcvt.c, loop-iv.c, loop-unroll.c,
- loop-unswitch.c, output.h, predict.c, profile.c, ra-build.c,
- ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, regrename.c, reload1.c,
- toplev.c, tracer.c, value-prof.c, var-tracking.c, web.c:
- s/rtl_dump_file/dump_file/g.
-
-2004-02-24 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md (spe_fix_truncsfsi2): Delete.
- (spe_fixuns_truncsfsi2): Delete.
-
- * config/rs6000/rs6000.md (fix_truncsfsi2): Delete.
- (fixuns_truncsfsi2): Delete.
-
-2004-02-24 Josef Zlomek <zlomekj@suse.cz>
-
- PR/14240
- * rtlanal.c (replace_label): Fix replacing labels in constant pool.
-
-2004-02-24 Geoffrey Keating <geoffk@apple.com>
-
- * config/darwin.h (TARGET_HAS_F_SETLKW): Define.
-
-2004-02-24 Jason Merrill <jason@redhat.com>
-
- * tree.c (check_qualified_type): New fn.
- (get_qualified_type): Use it. If type already has the desired
- quals, just return it.
- * tree.h: Declare it.
-
-2004-02-24 Sanjiv Kumar Gupta <sanjivg@noida.hcltech.com>
-
- * target-def.h (TARGET_SCHED_INIT_GLOBAL,
- TARGET_SCHED_FINISH_GLOBAL): New macros.
-
- * target.h (md_init_global, md_finish_global): Function
- declarations corresponding to new target macros.
-
- * haifa-sched.c (sched_init, sched_finish): Allow target to
- call the new schedular hooks.
-
- * flow.c (recompute_reg_usage): Add PROP_DEATH_NOTES flag in
- call to update_life_info.
-
- * config/sh/sh.h (OVERRIDE_OPTIONS): Re-enable
- flag_schedule_insns for SH4.
-
- * config/sh/sh.c (sh_md_init_global, sh_md_finish_global,
- find_set_regmode_weight, find_insn_regmode_weight,
- find_regmode_weight), sh_md_init, sh_dfa_new_cycle,
- sh_variable_issue, high_pressure, ready_reorder,
- rank_for_reorder, swap_reorder, sh_reorder, sh_reorder2): New
- functions used to throttle the insn movement in first
- scheduling pass for SH.
-
- * gcc/doc/tm.texi: Document TARGET_SCHED_INIT_GLOBAL and
- TARGET_SCHED_FINISH_GLOBAL.
-
-2004-02-24 Alexandre Oliva <aoliva@redhat.com>
-
- Implement FR-V FDPIC ABI support for frv-uclinux and frv-linux.
- 2004-02-05 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (frv_emit_movsi): Use GOT relocations for
- symbols in sections named by the user.
- 2004-01-30 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/linux.h (TARGET_OS_CPP_BUILTINS): New.
- 2004-01-27 Alexandre Oliva <aoliva@redhat.com>
- * config.gcc (frv-*-*linux*): Handle like *-*-linux*.
- * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Remove, obviated by
- the above.
- 2004-01-20 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.md (symGOT2reg_hilo, symGOTOFF2reg_hilo): Add
- one more pseudo to further improve code generation.
- 2004-01-19 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.md (movdi_ldd): Introduce explicit indirection
- inside UNSPEC.
- 2004-01-16 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (frv_legitimate_address_p): Added
- allow_double_reg_p argument. Adjust all callers. Use it to
- decide whether to enable double-register indirect addressing.
- (frv_funcdesc_alias_set): Remove.
- (frv_expand_fdpic_call): Force non-SYMBOL_REF operand into
- register. Emit movdi_ldd.
- (ldd_address_operand): New.
- * config/frv/frv-protos.h (frv_legitimate_address_p): Adjust.
- * config/frv/frv.h (GO_IF_LEGITIMATE_ADDRESS): Likewise.
- (PREDICATE_CODES): Add ldd_address_operand.
- * config/frv/frv.md (movdi_ldd): New.
- (symGOT2reg_hilo, symGOTOFF2reg_hilo): Use separate pseudo for
- intermediate computations if possible.
- (symGOTOFF2reg_i): Fix harmless typo.
- 2003-12-18 Alexandre Oliva <aoliva@redhat.com>
- * unwind-dw2-fde-glibc.c (_Unwind_IteratePhdrCallback): Cast
- relocated p_vaddr to vaddr type.
- * config/frv/frv-protos.h (frv_expand_fdpic_call): Return void.
- * config/frv/frv.c (frv_get_funcdesc_alias_set): New.
- (frv_expand_fdpic_call): Propagate incoming MEM's expr to funcdesc
- MEM, or use a funcdesc alias set. Use regular move instead of
- ldd.
- (dbl_memory_one_insn_operand): Recognize function descriptors by
- type or by alias set, and don't split them.
- * config/frv/frv.md (call, call_value): Never use call_internal
- for fdpic.
- (call_internal, call_value_internal): Never match for FDPIC.
- (call_fdpicdi, call_fdpicsi, call_value_fdpicdi,
- call_value_fdpicsi): Require FDPIC.
- (ldd): Removed.
- 2003-12-17 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.h (CRT_GET_RFIB_DATA): Define for __FRV_FDPIC__.
- * unwind-dw2-fde-glibc.c: Don't include elf-fdpic.h any more.
- (_Unwind_IteratePhdrCallback): Adjust type of load_base for FRV
- FDPIC. Compute data base address.
- * config/frv/linux.h (SUBTARGET_DRIVER_SELF_SPECS): Enable -mfdpic
- before the other self-specs are processed.
- * config/frv/t-linux (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS):
- Build with -fPIC.
- 2003-12-15 Alexandre Oliva <aoliva@redhat.com>
- * unwind-dw2-fde-glibc.c: Don't include bits/elf-fdpic.h if
- inhibit_libc is defined.
- 2003-12-12 Alexandre Oliva <aoliva@redhat.com>
- * unwind-dw2-fde-glibc.c: Include bits/elf-fdpic.h for
- __FRV_FDPIC__.
- (__RELOC_POINTER): Define.
- (_Unwind_IteratePhdrCallback): Use it.
- * config/frv/frv.h (Twrite): Define.
- (TRANSFER_FROM_TRAMPOLINE): Use it.
- * config/frv/linux.h (INVOKE__main): Undefine.
- (Twrite): Override.
- 2003-12-05 Richard Sandiford <rsandifo@redhat.com>
- * doc/invoke.texi (-mlong-calls, -mlinked-fp): Document FRV options.
- (-mlibrary-pic): Emphasize that this option generates EABI code.
- (-mcpu): Add fr550.
- (-mpack): Remove.
- 2003-11-30 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (int_2word_operand): Reject LABELs, SYMBOL_REFs
- and CONSTs in FDPIC mode.
- * gcc/config.gcc (with_cpu): Default to fr400 on frv-*-*linux*.
- 2003-11-29 Richard Sandiford <rsandifo@redhat.com>
- * config/frv/frv.c (move_source_operand): Don't accept symbolic
- constants.
- * config/frv/frv.md (*movhi_internal, *movsi_internal): Use an 'n'
- rather than 'i' constraint for the 2-instruction alternative.
- (*movsi_2word): New, incorporating existing int_2word_operand splitter.
- 2003-11-29 Richard Sandiford <rsandifo@redhat.com>
- * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Q): Renamed from
- EXTRA_CONSTRAINT_FOR_Y.
- (EXTRA_CONSTRAINT): Remove handling of 'Y'.
- * config/frv/frv.md (*movsi_internal): Remove 'Q' constraint.
- (addsi3): Change 'Y' constraint to 'Q'.
- 2003-11-27 Richard Sandiford <rsandifo@redhat.com>
- * reload.c (CONST_POOL_OK_P): New macro.
- (find_reloads): Use it to decide whether a constant can be forced
- into memory.
- * config/frv/frv.h (LEGITIMATE_PIC_OPERAND_P): Return true if the
- constant satisfies got12_operand.
- (frv_cannot_force_const_mem): Always return true for TARGET_FDPIC.
- (frv_legitimate_address_p): Check for valid unspec offsets using
- got12_operand rather than frv_legitimate_fdpic_operand_p.
- (frv_legitimate_fdpic_operand_p): Delete.
- (frv_emit_movsi): Abort if we try to use the FDPIC register during
- or after reload.
- (frv_legitimate_constant_p): Return LEGITIMATE_PIC_OPERAND_P if
- TARGET_FDPIC.
- * config/frv/frv.md (*movdf_double): Add alternatives for CONST_DOUBLE.
- 2003-11-19 Richard Sandiford <rsandifo@redhat.com>
- * config/frv/frv-protos.h (fdpic_operand, fdpic_got12_operand)
- (frv_fdpic_fptr_operand): Don't declare here.
- * config/frv/frv.h (EXTRA_CONSTRAINT_FOR_Y): Call got12_operand
- rather than fdpic_got12_operand.
- (PREDICATE_CODES): Remove symbolic_operand entry. Add entries for
- got12_operand and const_unspec_operand.
- * config/frv/frv.c (got12_operand): Renamed from fdpic_got12_operand.
- (gpr_or_int12_operand, dbl_memory_one_insn_operand): Update calls.
- (symbolic_operand): Remove.
- (const_unspec_operand): New predicate.
- * config/frv/frv.md (*movsi_got): Use got12_operand.
- (*movsi_high_got, *movsi_lo_sum_got): Use const_unspec_operand.
- 2003-11-18 Richard Sandiford <rsandifo@redhat.com>
- * config/frv/frv-protos.h (frv_output_addr_const_extra): Remove.
- * config/frv/frv.h (OUTPUT_ADDR_CONST_EXTRA): Remove definition.
- * config/frv/frv.c (frv_unspec): New structure.
- (frv_small_data_reloc_p, frv_const_unspec_p): New functions.
- (frv_print_operand_memory_reference): Use frv_const_unspec_p to
- validate CONST indices. Use frv_output_const_unspec to print them.
- (frv_print_operand): Update call to unspec_got_name. Use
- frv_output_const_unspec to print constant unspecs.
- (frv_legitimate_fdpic_operand_p): Return true if frv_const_unspec_p.
- Reject UNSPECs otherwise.
- (unspec_got_name): Take the relocation number as argument, not an
- rtx containing it.
- (frv_output_addr_const_extra): Remove, replacing with...
- (frv_output_const_unspec): ...this new function.
- (frv_find_base_term): Use frv_const_unspec_p & frv_small_data_reloc_p.
- (gpr_or_int12_operand): Use fdpic_got12_operand.
- (dbl_memory_one_insn_operand): Likewise.
- (fdpic_got12_operand): Use frv_const_unspec_p.
- (frv_emit_movsi): Use frv_const_unspec_p to check for CONSTs that
- are already legitimate. Use frv_small_data_reloc_p when deciding
- whether to use HIGH/LO_SUM for R_FRV_GOTOFF12 and R_FRV_GPREL12.
- 2003-11-18 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/t-linux (SHLIB_MAPFILES): Override so as to export...
- * config/frv/libgcc-frv.ver: ... frv-specific symbols. New file.
- * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local
- label, for real this time.
- * config/frv/frv.c (frv_local_funcdesc_p): Update to new
- representation of visibility.
- (fdpic_got12_operand, symbolic_operand): Mark unused arguments as
- such.
- 2003-11-17 Richard Sandiford <rsandifo@redhat.com>
- * config/frv/frv.h (MASK_LINKED_FP, TARGET_LINKED_FP): New macros.
- (TARGET_SWITCHES): Add -mlinked-fp and -mno-linked-fp.
- * config/frv/frv.c (frv_override_options): Set MASK_LINKED_FP unless
- it was explicitly disabled.
- (frv_stack_info): There is no need to save the link register in every
- frame unless TARGET_LINKED_FP is true.
- (frv_frame_pointer_required): If !TARGET_LINKED_FP, only require a
- frame pointer if the stack pointer might change value.
- (frv_return_addr_rtx): Check and process "count" argument.
- 2003-11-14 Richard Sandiford <rsandifo@redhat.com>
- * config/frv/frv-protos.h (frv_legitimize_address): Remove.
- (frv_find_base_term): Declare.
- * config/frv/frv.h (LEGITIMIZE_ADDRESS): Do nothing.
- (FIND_BASE_TERM): Define.
- (PREDICATE_CODES): Remove pic_register_operand, pic_symbolic_operand,
- small_data_register_operand, small_data_symbolic_operand. Add
- symbolic_operand.
- * config/frv/frv.c (const_small_data_p, plus_small_data_p): Delete.
- (frv_print_operand_memory_reference, output_move_single): Remove
- special handling for unlegitimized sdata addresses.
- (frv_legitimate_address_p): Don't allow sums of SDA_BASE_REG
- and symbolic addresses.
- (frv_legitimize_address, frv_legitimize_fdpic_address): Delete.
- (frv_find_base_term): New function.
- (int_2word_operand): Check specifically for symbolic address constants.
- (pic_register_operand, pic_symbolic_operand): Delete.
- (small_data_register_operand, small_data_symbolic_operand): Delete.
- (dbl_memory_one_insn_operand): Don't call plus_small_data_p.
- Allow UNSPEC_GOT constants if !TARGET_FDPIC.
- (move_source_operand): Only accept CONSTs if they're a two-insn
- symbolic constant.
- (fdpic_got12_operand): Don't require TARGET_FDPIC.
- (frv_emit_movsi): Legitimize sdata and -mlibrary-pic addresses
- using gen_symGOTOFF2reg*.
- (frv_ifcvt_rewrite_mem): Remove (plus gr16 ...) special cases.
- (frv_rtx_costs): Give all MEM addresses a cost of 0. Give MEMs
- themselves a cost of 3 insns.
- * config/mips/mips.md (*movsi_got): Allow for !TARGET_FDPIC too.
- Change predicate to symbolic_operand.
- (*movsi_high_got, *movsi_lo_sum_got): Likewise.
- (*movsi_lda_sdata): Delete.
- (*movsi_pic, movsi_high_pic, movsi_lo_sum_pic): Delete.
- 2003-11-05 Alexandre Oliva <aoliva@redhat.com>
- * config.gcc: Add t-slibgcc-elf-ver and support --with-cpu for
- frv-*-*linux*.
- * config/frv/frv-abi.h (CREATE_DOUBLE_SHIFT): Use branch to local
- label.
- * config/frv/frv.h (DRIVER_SELF_SPECS): Add blank before
- -multilib-library-pic.
- (LINK_SPEC): Add -z text for -mfdpic.
- * config/frv/frvbegin.c (__ROFIXUP_LIST__): Don't define on FDPIC.
- * config/frv/frvend.c (__ROFIXUP_END__): Likewise.
- * config/frv/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, LINK_SPEC):
- Override.
- (OPTION_DEFAULT_SPECS, HAS_INIT_SECTION, INIT_SECTION_ASM_OP,
- FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): Define.
- * config/frv/t-linux (EXTRA_MULTILIB_PARTS): Use
- crtstuff-generated files.
- 2003-10-31 Alexandre Oliva <aoliva@redhat.com>
- * config.gcc: Add frv-*-*linux*.
- * config/frv/linux.h, config/frv/t-linux: New.
- 2003-10-06 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.h (LINK_SPEC): Pass -melf32frvfd to the linker
- when -mfdpic even if a linker script is explicitly listed.
- 2003-10-02 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (frv_override_options): Clear asm_out
- unaligned_op for SImode on FDPIC.
- (frv_emit_movsi): Use compute_reloc_for_constant to compute the
- argument passed to decl_readonly_section.
- (frv_assemble_integer): Revert 2003-09-30's change, but make the
- whole block run with FDPIC even with -fno-PIC.
- 2003-10-02 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (frv_cannot_force_const_mem): Don't force
- symbol or label plus offset to memory.
- (frv_emit_movsi): Emit GPREL only if -mgprel-ro. Emit 32-bit
- GOTOFF and GPREL for LABEL_REF.
- * config/frv/frv.h (DRIVER_SELF_SPECS): Add -mgprel-ro with
- -mfdpic unless -mno-gprel-ro, -fpic or -fpie.
- (MASK_GPREL_RO, TARGET_GPREL_RO): New.
- (TARGET_SWITCHES): Added gprel-ro and no-gprel-ro.
- * doc/invoke.texi: Document them.
- 2003-09-30 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv-protos.h (frv_gen_GPsym2reg): Declare.
- (frv_splittable_got_operand): Removed.
- * config/frv/frv.c (frv_cannot_force_const_mem): Reject HIGH and
- LO_SUM. Add comments.
- (frv_override_options): Moved enabling of FDPIC to
- DRIVER_SELF_SPECS. Don't enable MASK_DWORD.
- (frv_local_funcdesc_p): Remove unnecessary heck for flag_pie.
- (frv_legitimize_fdpic_address): Don't duplicate logic in
- frv_emit_movsi.
- (frv_gen_GPsym2reg): New.
- (unspec_got_name): Added gprel.
- (frv_expand_fdpic_call): Add support for inlining PLTs.
- (fdpic_fptr_operand): Renamed from frv_fdpic_fptr_operand.
- (gpr_or_int12_operand): Added GPREL12.
- (pic_symbolic_operand): Match even if !flag_pic for FDPIC.
- (small_data_symbolic_operand): Fail if FDPIC.
- (fdpic_splittable_got_operand): Removed.
- (fdpic_got12_operand): Added GPREL12.
- (frv_emit_movsi): Reorganize to avoid duplication. Emit GPREL
- when appropriate. Fix sdata GOTOFF.
- (frv_legitimate_constant_p): Require legitimate PIC operand for
- FDPIC with pic, but only a legitimate fdpic operand for non-pic.
- (frv_assemble_integer): Move FDPIC funcdesc handling out of
- flag_pic case.
- (frv_asm_out_constructor, frv_asm_out_destructor): Abort if
- frv_assemble_integer fails.
- * config/frv/frv.h (DRIVER_SELF_SPECS): New.
- (SUBTARGET_DRIVER_SELF_SPECS): New.
- (ASM_SPEC): Don't pass -mno-fdpic.
- (LINK_SPEC): Pass -melf32frvfd for FDPIC.
- (MASK_INLINE_PLT, TARGET_INLINE_PLT): New.
- (TARGET_SWITCHES): Add -minline-plt, -mno-inline-plt and
- -multilib-library-pic.
- (PREDICATE_CODES): Added fdpic_operand, fdpic_fptr_operand,
- condexec_si_media_operator, condexec_sf_add_operator and
- condexec_sf_conv_operator. Removed condexec_sf_binary_operator
- and condexec_sf_unary_operator.
- * config/frv/frv.md (R_FRV_GPREL12, R_FRV_GPRELHI, R_FRV_GPRELLO):
- New.
- (movsi_got, movsi_high_got, movsi_lo_sum_got): Move before
- movsi_internal. Give them internal names. movsi_got has type
- int.
- (fdpic got splitters): Remove.
- (symGPREL2reg, symGPREL2reg_hilo): New.
- * config/frv/t-frv (MULTILIB_MATCHES): Don't map -fpic and -fPIC
- to -mlibrary-pic. Map -multilib-library-pic to it.
- * doc/invoke.texi: -mfdpic, -minline-plt, -multilib-library-pic:
- Document.
- 2003-09-28 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (frv_function_symbol_referenced_p): Declare.
- (TARGET_CANNOT_FORCE_CONST_MEM): Define to...
- (frv_cannot_force_const_mem): New function.
- (const_small_data_p, plus_small_data_p): Update comments on sdata
- on FDPIC.
- (frv_override_options): Set flag_pie for FDPIC too.
- (frv_conditional_register_usage): Mark gr16 and gr17 as non-fixed,
- call-saved registers on FDPIC.
- (frv_stack_info): Don't preserve the PIC register on FDPIC, and
- don't force LR to be preserved.
- (frv_expand_prologue): Likewise.
- (frv_asm_output_mi_thunk): Use 12-bit funcdesc gotoff for -fpic.
- (frv_frame_pointer_required): Don't force it just because the
- FDPIC register is used.
- (frv_legitimate_address_p) <CONST>: Accept a legitimate FDPIC
- operand only if !condexec_p.
- (frv_legitimize_address): Return the FDPIC-legitimized address.
- Don't match small data here on FDPIC.
- (frv_legitimate_fdpic_operand_p): Don't accept unadorned function
- symbols. Use TRUE/FALSE instead of 1/0.
- (frv_local_funcdesc_p): New.
- (frv_legitimize_fdpic_address): Rewrite to use GOTOFF and 12-bit
- immediates when possible.
- (pic_symbolic_operand): Accept SYMBOL_REFs and CONSTs in FDPIC.
- (dbl_memory_one_insn_operand): Accept addresses that add a REG and
- an UNSPEC_GOT.
- (frv_emit_movsi): Handle FDPIC before small data. Use GOTOFF and
- 12-bit immediates when possible.
- (frv_legitimate_constant_p): In FDPIC, reject SImode operands that
- are not legitimate pic operands.
- (frv_in_small_data_p): Re-enable for FDPIC.
- * config/frv/frv.h (SDA_BASE_REG): Remove comment about FDPIC.
- (FRV_GLOBAL_P): Removed.
- * config/frv/frv.md: Add modes to CONSTs.
- (movsi_got): New.
- (movsi_lo_sum_got): Use separate matches instead of match_dup.
- (movsi_high_pic, movsi_lo_sum_pic): Match on non-FDPIC only.
- (fdpic splittable operations): Match on flag_pic != 1.
- 2003-09-22 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (frv_asm_out_constructor,
- frv_asm_out_destructor): Pass to frv_assemble_integer the size in
- bytes, not bits.
- 2003-09-19 Alexandre Oliva <aoliva@redhat.com>
- * config/frv/frv.c (frv_assemble_integer): Reject complex
- expressions referencing function SYMBOL_REFs.
- * config/frv/frv.c (frv_function_symbol_referenced_p): New.
- (move_source_operand): Reject CONSTs that reference function
- SYMBOL_REFs on FDPIC.
- (frv_emit_movsi): If we get such a CONST, break it up.
- * config/frv/frv.h (CPP_SPEC): Define __FRV_FDPIC__ for -mfdpic.
- (TRANSFER_FROM_TRAMPOLINE): Use different definitions for FDPIC.
- * config/frv/frv.c (frv_print_operand) <I>: Recognize PLUS without
- MEM.
- (frv_assemble_integer): Don't use funcdesc for LABEL_REFs.
- (frv_trampoline_size): Increase for FDPIC.
- * config/frv/frv.h (TRAMPOLINE_ALIGNMENT): Bump to 64 for FDPIC.
- (TRANSFER_FROM_TRAMPOLINE): Handle FDPIC trampolines.
- * config/frv/frv.c (frv_legitimize_fdpic_address, frv_emit_movsi):
- Disable use of GOTOFF for now.
- (const_small_data_p, plus_small_data_p, frv_in_small_data_p):
- Disable use of small data in FDPIC for now.
- (frv_asm_output_mi_thunk): Implement for FDPIC.
- * config/frv/frv.h (SDA_BASE_REG): Set to -1 with FDPIC.
- * config/frv/frv.c (frv_asm_out_constructor): Use
- frv_assemble_integer for FDPIC pointers.
- (frv_asm_out_destructor): Likewise.
- * config/frv/frv.md (ldd): Fix order of operands. Use
- address_operand for input.
- 2003-09-18 DJ Delorie <dj@redhat.com>
- * config/frv/frv.c (frv_legitimate_fdpic_operand_p): Remove UNSPEC_PIC.
- (unspec_got_name): Correct typo.
- (frv_emit_movsi): Pre-expand splittable GOTs.
- (frv_expand_fdpic_call): Rename gen_lddi to gen_ldd.
- * config/frv/frv.md (lddi): Fix syntax error, rename to ldd.
- (symGOT2reg_hilo, symGOTOFF2reg_hilo): New.
- * config/frv/t-frv: Add -mfdpic multilibs.
- * config/frv/frv.h (ASM_SPEC): Pass -mfdpic/-mno-fdpic.
- (TARGET_SWITCHES): Add -mno-fdpic, fix documentation.
- * config/frv/frv.c (frv_override_options): -mfdpic assumes
- flag_pic, default to 32-bit pics, require DWORD ops.
- (frv_override_options): Add W and Z constraints.
- (frv_expand_prologue): No pic prologue for -mfdpic.
- (frv_asm_output_mi_thunk): Support -mfdpic (soon).
- (frv_print_operand_memory_reference): Handle GOT constants.
- (frv_legitimate_address_p): Allow GOT constants.
- (frv_legitimize_address): Handle GOT addresses too.
- (frv_legitimate_fdpic_operand_p): New.
- (frv_legitimize_fdpic_address): New.
- (unspec_got_name): New.
- (frv_output_addr_const_extra): New.
- (frv_expand_fdpic_call): New.
- (frv_fdpic_fptr_operand): New.
- (gpr_or_int12_operand): Handle GOT operands.
- (int_2word_operand): Handle GOT operands.
- (fdpic_operand): New.
- (fdpic_splittable_got_operand): New.
- (fdpic_got12_operand): New.
- (frv_emit_movsi): Handle GOT operands.
- (frv_assemble_integer): -mfdpic doesn't use rofixups.
- (frv_print_operand): Support 'g' code for GOT operands.
- * config/frv/frv-protos.h: Add prototypes as needed.
- * config/frv/frv.md (R_FRV_GOT12, R_FRV_GOTHI, R_FRV_GOTLO,
- R_FRV_FUNCDESC, R_FRV_FUNCDESC_GOT12, R_FRV_FUNCDESC_GOTHI,
- R_FRV_FUNCDESC_GOTLO, R_FRV_FUNCDESC_VALUE,
- R_FRV_FUNCDESC_GOTOFF12, R_FRV_FUNCDESC_GOTOFFHI,
- R_FRV_FUNCDESC_GOTOFFLO, R_FRV_GOTOFF12, R_FRV_GOTOFFHI,
- R_FRV_GOTOFFLO): New.
- (movsi_high_got, movsi_lo_sum_got): New.
- (*movsi_pic): Don't use this splitter for -mfdpic.
- (addsi3): Allow GOT references also.
- (call, call_value): Handle -mfdpic separately.
- (call_fdpicdi, call_fdpicsi, lddi, call_value_fdpicdi,
- call_value_fdpicsi): New.
- (symGOT2reg, symGOT2reg_i, got splitters, symGOTOFF2reg,
- symGOTOFF2reg_i): New.
- * config/frv/frv.h (MASK_FDPIC): New.
- (TARGET_FDPIC): New.
- (TARGET_SWITCHES): Add -mfdpic.
- (FDPIC_FPTR_REGNO): New.
- (FDPIC_REGNO): New.
- (OUR_FDPIC_REG): New.
- (enum reg_class): Add FDPIC_REGS, FDPIC_FPTR_REGS, and
- FDPIC_CALL_REGS.
- (REG_CLASS_NAMES): Likewise.
- (REG_CLASS_CONTENTS): Likewise.
- (EXTRA_CONSTRAINT_FOR_Y): New, for 12-bit GOTs.
- (EXTRA_CONSTRAINT): Add it here.
- (FRV_GLOBAL_P): New.
- (OUTPUT_ADDR_CONST_EXTRA): New.
-
-2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/sparc/sparc.h: Remove commented-out definitions of
- TARGET_EDOM and GEN_ERRNO_RTX.
-
-2004-02-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * df.c, df.h, ra-build.c, ra-rewrite.c, ra.c, web.c: Replace
- df_analyse with df_analyze.
-
-2004-02-24 Alan Modra <amodra@bigpond.net.au>
-
- * gcse.c (delete_null_pointer_checks_1): Set stop_insn to end, not
- beginning of block.
-
-2004-02-23 James E Wilson <wilson@specifixinc.com>
-
- * calls.c (precompute_arguments): Update comment.
-
-2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * et-forest.c: Replace et_occurences with et_occurrences.
-
-2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * cfgloop.h, loop-iv.c, loop-unswitch.c: Replace iv_analyse
- with iv_analyze.
-
-2004-02-23 Kelley Cook <kcook@gcc.gnu.org>
-
- * config/i386/i386.c: Rename pni to sse3.
- * config/i386/i386.h: Likewise.
- * config/i386/i386.md: Likewise.
- * config/i386/pmmintrin.h: Likewise.
- * doc/extend.texi: Likewise.
- * doc/invoke.texi: Likewise.
-
-2004-02-23 Zack Weinberg <zack@codesourcery.com>
- Kazu Hirata <kazu@cs.umass.edu>
-
- Remove -fwritable-strings.
- * c-common.c (fix_string_type): Don't check
- flag_writable_strings.
- (fix_string_type): Likewise.
- * c-opts.c (set_std_c89): Don't initialize
- flag_writable_strings.
- (set_std_c99): Likewise.
- * common.opt (fwritable-strings): Remove.
- * flags.h: Remove the external declaration of
- flag_writable_strings.
- * opts.c (common_handle_option) <OPT_fwritable_strings>:
- Remove.
- * toplev.c (flag_writable_strings): Remove.
- (f_options): Remove an entry for writable-strings.
- * varasm.c (const_hash_1) <STRING_CST>: Don't check
- flag_writable_strings.
- (compare_constant) <STRING_CST>: Likewise.
- (build_constant_desc): Likewise.
- * config/darwin.c (machopic_select_section): Likewise.
- * config/arm/arm.c (AOF_ASSEMBLER): Likewise.
- * config/arm/pe.c (arm_pe_encode_section_info): Likewise.
- * config/iq2000/iq2000.c (iq2000_select_section): Likewise.
- * config/mips/mips.c (mips_select_section): Likewise.
- (mips_encode_section_info): Likewise.
- * config/pa/pa.c (pa_select_section): Likewise.
- * config/pa/pa.h (TEXT_SPACE_P): Likewise.
- * config/v850/v850.c (v850_select_section): Likewise.
- * doc/invoke.texi (-fwritable-strings): Remove.
- (-fno-const-strings): Don't mention -fwritable-strings.
- * doc/trouble.texi: Don't mention -fwritable-strings.
-
-2004-02-23 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * doc/install.texi: Update for switch of boehm-gc to autoconf 2.57.
-
-2004-02-23 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000.md (movsf_hardfloat): Add POWER form of nop.
- (movdf_hardfloat64): Ditto.
- (movdf_softfloat64): Ditto.
-
-2004-02-23 Fariborz Jahanian <fjahanian@apple.com>
- * config/rs6000/rs6000.c (function_arg): call to
- rs6000_mixed_function_arg for DFmode moved to allow
- normal DFmode incoming register assignment.
-
-2004-02-23 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000.md (movsf_hardfloat): Accept CTR-to-CTR copy.
- (movdf_hardfloat64): Ditto.
-
-2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * convert.c, gcov-io.c, libgcov.c, sched-int.h, sibcall.c,
- config/rs6000/linux.h, config/rs6000/rs6000-c.c: Update
- copyright.
-
-2004-02-23 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c/14156
- * c-typeck.c (c_expand_return): Change check for VAR_DECL
- to use DECL_P instead.
-
- * config/rs6000/linux.h (OS_MISSING_POWERPC64): Define.
- * config/rs6000/linux64.h (OS_MISSING_POWERPC64): Define.
-
-2004-02-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * Makefile.in (opts.o): Depend on target.h.
- * opts.c (decode_options): Use targetm.default_short_enums
- instead of DEFAULT_SHORT_ENUMS.
- * system.h (DEFAULT_SHORT_ENUMS): Poison.
- * target-def.h (TARGET_DEFAULT_SHORT_ENUMS): New.
- (TARGET_INITIALIZER): Add TARGET_DEFAULT_SHORT_ENUMS.
- * target.h (gcc_target): Add default_short_enums.
- * config/cris/cris.h: Remove a comment about
- DEFAULT_SHORT_ENUMS.
- * config/ip2k/ip2k.h: Likewise.
- * doc/tm.texi (DEFAULT_SHORT_ENUMS): Change to
- TARGET_DEFAULT_SHORT_ENUMS. Update the description.
-
-2004-02-23 Eric Botcazou <ebotcazou@libertysurf.fr>
- Falk Hueffner <falk@debian.org>
-
- PR c/14188
- * builtins.c (expand_builtin_va_arg): Emit an informative message
- if a trap is generated.
- * c-typeck.c (build_function_call): Likewise.
-
-2004-02-22 Jakub Jelinek <jakub@redhat.com>
-
- * gcov-io.c (gcov_open) [GCOV_LOCKED]: Use open + fdopen instead of
- fopen.
- * libgcov.c: Include sys/stat.h.
- * config/rs6000/linux.h (TARGET_HAS_F_SETLKW): Define.
- * config/rs6000/linux64.h (TARGET_HAS_F_SETLKW): Define.
- * config/sparc/linux.h (TARGET_HAS_F_SETLKW): Define.
- * config/sparc/linux64.h (TARGET_HAS_F_SETLKW): Define.
-
-2004-02-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * reorg.c: Remove comments about dead ports.
-
-2004-02-22 Christopher Faylor <cgf@redhat.com>
-
- * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): *Really* specify
- extra host object file when targetting cygwin rather than generic
- object files.
-
-2004-02-22 Josef Zlomek <zlomekj@suse.cz>
-
- Merge from tree-ssa:
- 2003-11-20 Richard Henderson <rth@redhat.com>
-
- * tree-inline.c (insert_decl_map): New.
- (remap_decl, remap_type, remap_block, copy_body_r,
- initialize_inlined_parameters, declare_return_variable,
- remap_save_expr): Use it.
-
- * function.c (copy_body_r): Add mapping from id->ret_label to
- id->ret_label. Revert test for ret_label.
-
-2004-02-22 Jakub Jelinek <jakub@redhat.com>
-
- * genoutput.c (process_template): Strip trailing whitespace in @
- templates and issue a warning if there was any.
-
-2004-02-21 Christopher Faylor <cgf@redhat.com>
-
- * config.gcc (i[34567]86-*-pe|i[34567]86-*-cygwin*): Specify extra host
- object file when targetting cygwin.
- * config/i386/t-cygwin (EXTRA_GCC_OBJS): Remove definition since it is
- overridden by top-level Makefile.
-
-2004-02-21 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.c (standard_80387_constant_p): Also prefer
- the x87's load constant instructions when optimizing for size.
-
-2004-02-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c (SHIFT_COUNT_TRUNCATED): Remove.
- * defaults.h (SHIFT_COUNT_TRUNCATED): Provide the default.
- * expmed.c: Assume SHIFT_COUNT_TRUNCATED is always defined.
- * fold-const.c: Likewise.
- * simplify-rtx.c: Likewise.
-
-2004-02-21 Alan Modra <amodra@bigpond.net.au>
-
- * combine.c (can_combine_p): Don't ignore SETs marked with
- REG_EH_REGION notes.
- (try_combine): When attemting to fix unrecognized insns, don't
- split a PARALLEL that contains the original i2.
-
-2004-02-21 Ziemowit Laski <zlaski@apple.com>
-
- * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Refer to
- SUBTARGET_OPTION_TRANSLATE_TABLE for architecture-specific options.
- * config/i386/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): Define it.
- * config/rs6000/altivec.h: #error out if '-maltivec' not specified.
- (vector, pixel, bool): #define to __vector, __pixel and __bool.
- (__un_args_eq, __bin_args_eq, __tern_args_eq): Move to C-specific
- portion of header.
- (__altivec_link_error_invalid_argument): Remove prototype; will use
- __builtin_altivec_compiletime_error("vec_*") instead.
- (vec_*): Fix/complete set of available operation overloads given the
- existence of distinct 'vector bool ...' and 'vector pixel' types; tighten
- cv-correctness of pointer arguments; in C, always check for correct
- argument types before macro expansion.
- * config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): New macro
- defining Darwin/PowerPC-specific '-f[no-]altivec' and
- '-W[no-]altivec-long-deprecated' switches.
- * config/rs6000/rs6000-c (rs6000_cpu_cpp_builtins): Pre-define
- '__vector', '__pixel' and '__bool' macros using
- '__attribute__((altivec(...)))' types.
- * config/rs6000/rs6000.c (bool_char_type_node, bool_short_type_node,
- bool_int_type_node, pixel_type_node, bool_V16QI_type_node,
- bool_V8HI_type_node, bool_V4SI_type_node, pixel_V8HI_type_node):
- New type nodes.
- (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): New, for
- handling '-W[no-]altivec-long-deprecated'.
- (rs6000_override_options): Handle '-W[no-]altivec-long-deprecated'.
- (rs6000_expand_binop_builtin, rs6000_expand_ternop_builtin,
- altivec_expand_dst_builtin): Remove casts from integer literals.
- (altivec_expand_builtin): Likewise; handle expansion of new
- '__builtin_altivec_compiletime_error' function.
- (rs6000_init_builtins): Initialize 'vector bool ...' and 'vector pixel'
- types, and make them distinct from other vector types; register
- '__builtin_altivec_compiletime_error' function.
- (print_operand): For 'P', print a full target register name instead of
- merely its number.
- (rs6000_attribute_table): Add "altivec" attribute.
- (rs6000_handle_altivec_attribute): New function.
- * config/rs6000/rs6000.h (TARGET_OPTIONS): Describe
- '-m[no-]-warn-altivec-long' (which '-W[no-]altivec-long-deprecated'
- maps to).
- (rs6000_warn_altivec_long, rs6000_warn_altivec_long_switch): Forward
- declare.
- (ALTIVEC_BUILTIN_COMPILETIME_ERROR): New built-in enumeration.
-
-2004-02-20 James E Wilson <wilson@specifixinc.com>
-
- * config/ia64/ia64.md (shift_mix4left+1): Delete reload_completed
- check.
- (shift_mix4left+2): Delete redundant pattern.
-
-2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * alias.c (OUTGOING_REGNO): Don't define the default.
- * builtins.c (OUTGOING_REGNO): Likewise.
- (INCOMING_REGNO): Likewise.
- (apply_args_register_offset): Always use OUTGOING_REGNO.
- * combine.c (OUTGOING_REGNO): Likewise.
- * sibcall.c (OUTGOING_REGNO): Likewise.
- * defaults.h (INCOMING_REGNO): Provide the default.
- (OUTGOING_REGNO): Likewise.
-
-2004-02-21 Jan Hubicka <jh@suse.cz>
-
- * params.def (max-peeled-insns, max-completely-peeled-insns,
- max-once-peeled-insns): Set to 400.
-
-2004-02-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR c++/12007
- * dbxout.c (dbxout_parms): Check that DECL_RTL and DECL_INCOMING_RTL
- are set for parameters before outputing debugging information.
-
-2004-02-20 Falk Hueffner <falk@debian.org>
-
- PR target/14201
- * config/alpha/alpha.md (*fix_truncsfsi_ieee): Fix typoed operand
- numbers.
-
-2004-02-20 Per Bothner <per@bothner.com>
-
- * input.h: Don't #include line-map.h. It may cause link problems
- with undefined linemap_line_start when line-map.h is included but
- line-map.o is not linked, as currently happens with gengtype on
- compilers that don't support inline.
- * toplev.c: So we do have to explicitly #include line-map.h here.
-
-2004-02-20 Richard Henderson <rth@redhat.com>
-
- * doc/invoke.texi: Add -Wvariadic-macros.
-
-2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * haifa-sched.c (sched_emit_insn): Remove.
- * sched-int.h: Remove the corresponding prototype.
-
-2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
-
- Revert:
- 2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
- * opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
- * system.h (DEFAULT_SHORT_ENUMS): Poison.
- * config/cris/cris.h: Remove a comment about
- DEFAULT_SHORT_ENUMS.
- * config/ip2k/ip2k.h: Likewise.
- * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove.
-
-2004-02-20 Mohan Embar <gnustuff@thisiscool.com>
- Tom Tromey <tromey@redhat.com>
-
- * doc/install.texi: Moved --disable-libgcj and
- --with-system-zlib documentation to new section for
- Java-specific options.
- Added explicit Cross-Compiler-Specific Options subheading.
- Added section for Java-specific options.
-
-2004-02-20 Matt Kraai <kraai@alumni.cmu.edu>
-
- * doc/install.texi (Building the Ada compiler): Remove
- example.
-
-2004-02-20 James E Wilson <wilson@specifixinc.com>
-
- * toplev.c (dump_file_index, dump_file): Put ce3 before rnreg.
-
-2004-02-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * gcc.c (process_command): Allow translation of the copyright
- symbol but not the rest of the copyright message.
- * gcov.c (print_version): Likewise. Allow translation of the
- message about warranty.
-
-2004-02-20 Hans-Peter Nilsson <hp@axis.com>
-
- * config/cris/cris.md ("*andsi_movu"): Correct parentheses in
- predicate.
- ("*andsi_clear"): Tweak constraints to not match postincrement.
- Adjust the predicate to exclude a volatile memory reference.
- ("*andhi_clear"): Ditto. Rename from "*andhi_clear_signed".
- ("*andhi_clear_unsigned"): Remove, non-matching pattern.
-
-2004-02-19 Matt Kraai <kraai@alumni.cmu.edu>
-
- * move-if-change: Remove.
- * Makefile.in (s-mlib, c-parse.y, s-check, s-gencheck)
- (s-specs, s-options, s-config, s-conditions, s-flags, s-codes)
- (s-constants, s-emit, s-recog, s-opinit, s-extract, s-peep)
- (s-attr, s-attrtab, s-output, s-genrtl, s-modes, s-preds)
- (s-gtyp-gen, s-iov): Use the top level move-if-change.
- * objc/Make-lang.in (objc/objc-parse.y): Likewise.
-
-2004-02-19 James E Wilson <wilson@specifixinc.com>
-
- * config/i386/i386.md (doloop_end_internal): Use nonimmediate_operand
- for operand2. Add condition that requires register_operand operand2
- before reload.
-
-2004-02-19 Richard Sandiford <rsandifo@redhat.com>
- Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * config/mips/mips.c (mips_address_insns): Treat BLKmode specially.
- * config/mips/mips.md: Expand comment above unaligned loads and stores.
-
-2004-02-19 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (STRICT2_WARN): Add -Wno-variadic-macros.
- * tree.c (build0, build1, build2, build3, build4): Split out from...
- (build): ... here. Call them.
- * tree.h (build, _buildN1, _buildN2, _buildC1, _buildC2): New.
-
- * convert.c (convert_to_integer): Remove extra build argument.
- * tree-inline.c (expand_call_inline): Likewise.
-
-2004-02-19 Richard Henderson <rth@redhat.com>
-
- * c-opts.c (warn_variadic_macros): New.
- (c_common_handle_option): Set it.
- (sanitize_cpp_opts): Copy it to cpp_opts.
- * c.opt (Wvariadic-macros): New.
- * cpplib.h (struct cpp_options): Add warn_variadic_macros.
- * cppinit.c (cpp_create_reader): Initialize it.
- * cppmacro.c (parse_params): Check it.
-
-2004-02-19 David Daney <ddaney@avtrex.com>
-
- PR preprocessor/14198
- * config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Add
- builtin_assert ("machine=mips")
-
-2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * opts.c (decode_options): Don't use DEFAULT_SHORT_ENUMS.
- * system.h (DEFAULT_SHORT_ENUMS): Poison.
- * config/cris/cris.h: Remove a comment about
- DEFAULT_SHORT_ENUMS.
- * config/ip2k/ip2k.h: Likewise.
- * doc/tm.texi (DEFAULT_SHORT_ENUMS): Remove.
-
-2004-02-19 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/ia64.c (ia64_function_arg): In big-endian mode,
- when passing single SFmode quantities in general registers,
- put them in the high half.
-
-2004-02-19 Aldy Hernandez <aldyh@redhat.com>
-
- * doc/md.texi (Standard Names): Document additional dependency on
- fix pattern.
-
- * optabs.c (ftruncify): Remove.
- (expand_fix): Manually inline ftruncify above.
- (can_fix_p): Add FIXME note.
-
-2004-02-19 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md (spe_fixunssfsi2): Rename to
- spe_fixuns_truncsfsi2.
-
- * config/rs6000/rs6000.md (fixunssfsi2): Rename to
- fixuns_truncsfsi2.
-
-2004-02-19 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.
- * testsuite/gcc.dg/20040219-1.c: New test.
-
-2004-02-19 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*subdf3_cc", "*subdf3_cconly", "*subsf3_cc",
- "*subsf3_cconly"): Subtraction is not commutative.
-
-2004-02-19 Zack Weinberg <zack@codesourcery.com>
-
- * sdbout.c (preinit_symbols, sdbout_initialized): New statics.
- (sdbout_symbol): If called before sdbout_init, queue DECL for
- later and return.
- (sdbout_init): Set sdbout_initialized true, process decls
- queued earlier by sdbout_symbol.
- (sdbout_finish): Use size_t for index variable.
-
-2004-02-19 Jeff Law <law@redhat.com>
-
- * fold-const.c (invert_truthvalue): Do not call invert_tree_comparison
- for unordered comparison codes.
-
-2004-02-19 Ian Lance Taylor <ian@wasabisystems.com>
-
- * reload1.c (reload): Correct comment.
- (scan_paradoxical_subregs): Remove #if 0 and old comment.
- * doc/extend.texi (Local Reg Vars): Remove obsolete comment that
- register variables are not used by reload.
-
-2004-02-19 Hans-Peter Nilsson <hp@axis.com>
-
- PR target/14209
- * config/cris/cris.md ("*andsi_movu", "*andhi_movu"): Tweak
- constraints to not match postincrement. Adjust the predicate to
- exclude a volatile memory reference.
-
-2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mcore/mcore.h (ASM_OUTPUT_EXTERNAL): Remove.
-
-2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * hooks.c (hook_void_tree_int): Remove.
- (hook_void_constcharptr): Likewise.
- (hook_int_void_0): Likewise.
- * hooks.h: Remove the prototypes for the above three
- functions.
- * targhooks.c (hook_bool_machine_mode_true): Remove.
- * targhooks.h: Remove the prototype for
- hook_bool_machine_mode_true.
-
-2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * emit-rtl.c (subreg_realpart_p): Remove.
- (reorder_insns_with_line_notes): Likewise.
- (end_full_sequence): Likewise.
- * rtl.h: Remove the prototype for the above functions.
-
-2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arc/arc.h, config/arm/arm.h, config/frv/frv.h,
- config/h8300/h8300.h, config/i386/i386.h, config/i860/i860.h,
- config/iq2000/iq2000.h, config/m32r/m32r.h,
- config/pdp11/pdp11.h, config/sparc/sparc.h,
- config/xtensa/xtensa.h: Remove commented-out or useless
- definitions of CASE_VECTOR_PC_RELATIVE.
-
-2004-02-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * loop.c (all_sets_invariant_p): Remove.
-
-2004-02-19 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/12916
- * config/sparc/sparc.h (NPARM_REGS): Delete.
- (BASE_RETURN_VALUE_REG): Likewise.
- (BASE_OUTGOING_VALUE_REG): Likewise.
- (BASE_PASSING_ARG_REG): Likewise.
- (BASE_INCOMING_ARG_REG): Likewise.
- * config/sparc/sparc.c (sparc_strict_argument_naming): Test
- TARGET_ARCH64, not TARGET_V9.
- (function_arg_slotno): Dispatch based on the mode class.
- Handle vector modes like floating-point modes.
- (function_arg_record_value_1): Handle vector types like
- floating-point types.
- (function_arg_record_value_2): Likewise.
- Calculate regno after mode transformation.
- (function_arg): Handle vector modes like floating-point modes.
- (function_arg_partial_nregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX.
- If ARCH64, do not recheck alignment.
- (function_arg_pass_by_reference): Reorder the conditions.
- (sparc_return_in_memory): Move after function_arg_padding.
- Implement calling conventions for vector modes.
- (sparc_struct_value_rtx): Move after sparc_return_in_memory.
- (function_value): Move scope of 'regbase'.
- Implement calling conventions for vector modes.
- (sparc_builtin_saveregs): Replace NPARM_REGS by SPARC_INT_ARG_MAX
- and BASE_INCOMING_ARG_REG by SPARC_INCOMING_INT_ARG_FIRST.
- (sparc_va_arg): Use function_arg_pass_by_reference to test whether
- the argument is passed by reference.
- (sparc_type_code): Handle vector types.
-
-2004-02-19 Alan Modra <amodra@bigpond.net.au>
-
- * function.c (assign_parms): When building decl_rtl for
- SPLIT_COMPLEX_ARGS, ensure inner modes of concat match outer.
-
-2004-02-19 Olivier Hainque <hainque@act-europe.fr>
-
- * expr.c (is_aligning_offset): Check if we are aligning the
- expressions's address over BIGGEST_ALIGNMENT in bytes, not
- in bits.
-
-2004-02-18 Matt Austern <austern@apple.com>
-
- * gcc.c (LIBGCC_SPEC): If REAL_LIBGCC_SPEC is defined, and
- LIBGCC_SPEC isn't, set LIBGCC_SPEC to REAL_LIBGCC_SPEC.
- (init_gcc_spec): Don't define or call if REAL_LIBGCC_SPEC is
- defined. Instead use REAL_LIBGCC_SPEC, unmodifed, as the libgcc
- spec string.
- * doc/tm.texi (REAL_LIBGCC_SPEC): Document.
-
-2004-02-18 Zack Weinberg <zack@codesourcery.com>
-
- * dwarf2out.c (loclabel_num): Move outside #ifdef
- DWARF2_DEBUGGING_INFO and mark with GTY(()).
- * config/ia64/ia64.c (struct extern_func_list,extern_func_head):
- Mark with GTY(()).
- (ia64_hpux_add_extern_decl): Save the decl, not the name string.
- Allocate memory with ggc_alloc. No need to copy anything.
- (ia64_hpux_file_end): Update to match.
-
-2004-02-18 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (override_options): Don't imply 3DNow! for -m64
- by default.
-
-2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("divmodtidi3"): Use canonical RTL.
- ("divmodtisi3"): Likewise.
- ("udivmoddi4", "udivmodtidi3"): Likewise.
- ("divmodsi4", "divmoddisi3"): Likewise.
- ("udivmodsi4", "udivmoddisi3"): Likewise.
- ("udivsi3", "umodsi3"): Likewise.
-
-2004-02-18 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_mainpool_start): Delete the main pool
- placeholder insn when chunkifying the pool.
-
-2004-02-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.h (PIC_OFFSET_TABLE_REGNUM): Define to INVALID_REGNUM when not
- generating PIC code.
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Add a prototype for
- h8300_expand_branch.
- * config/h8300/h8300.c (h8300_expand_branch): New.
- * config/h8300/h8300.md (ble, bleu, bge, bgeu, blt, bltu, bgt,
- bgtu, beq, bne): Call h8300_expand_branch().
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Add prototypes for
- h8300_hard_regno_nregs and h8300_hard_regno_mode_ok.
- * config/h8300/h8300.c (h8300_hard_regno_nregs): New.
- (h8300_hard_regno_mode_ok): Likewise.
- * config/h8300/h8300.h (HARD_REGNO_NREGS): Call
- h8300_hard_regno_nregs().
- (HARD_REGNO_MODE_OK): Call h8300_hard_regno_mode_ok().
-
-2004-02-18 Per Bothner <per@bothner.com>
-
- * cpphash.h (struct cpp_buffer): Restore return_at_eof field. This
- partly reverts my 2003-10-01 change, because we're back to logically
- including <command line> inside the main line.
- * cpplex.c (_cpp_get_fresh_line): Check return_at_eof field.
- * cppmacro.c (cpp_scan_nooutput): Set return_at_eof of current buffer.
- Fixes PR preprocessor/14103.
-
- * cppfiles.c (_cpp_stack_include): When appropriate decrement
- line_table's highest_location, fixing LAST_SOURCE_LINE_LOCATION.
- (cpp_push_include): Don't need to increment pfile's line field.
- * line-map.h (LAST_SOURCE_LINE_LOCATION): Only decrement by 1.
-
- * c-ppoutput.c (print struct): New first_time field.
- (init_pp_output): Set print.first_time.
- (pp_file_change): Use print.first_time, rather than MAIN_FILE_P,
- which is set also for (say) <command line>. Clear print.first_time.
-
- * cppfiles.c (struct _cpp_file): Comment and type for pch field
- does not match the code, so fix both.
- (should_stack_file): Inline include_pch_p function.
- (include_pch_p): Remove pointless function.
-
- * cpphash.h (struct cpp_buffer): Remove unused search_cached field.
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (four define_peephole2's): Use
- h8300_regs_ok_for_stm().
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Update the prototype for
- expand_a_rotate().
- * config/h8300/h8300.c (expand_a_rotate): Remove the first
- argument.
- * config/h8300/h8300.md: Update all callers.
-
-2004-02-18 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_unary_operation): Deal with logicals on
- floats.
- (simplify_binary_operation): Deal with logicals on floats.
-
- * i386.md (SSE fabs splitters): Emit new patterns.
- (SSE cmov splitters): Likewise.
- (sse_andv4sf3, sse_nandv4sf3, sse_iorv4sf3, sse_xorv4sf3
- (sse_andv2df3, sse_nandv2df3, sse_iorv2df3, sse_xorv2df3): Do not use
- subregs.
- (sse_andsf3, sse_nandsf3, sse_xorsf3): Kill.
- (sse_anddf3, sse_nanddf3, sse_xordf3): Kill.
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (expand_a_rotate): Don't generate insns
- by hand.
- (output_a_rotate): Tweak a comment.
- * config/h8300/h8300.md (*rotlqi3_1): Change to rotlqi3_1.
- (*rotlhi3_1): Change to rotlhi3_1.
- (*rotlsi3_1): Change to rotlsi3_1.
-
-2004-02-18 Richard Earnshaw <rearnsha@arm.com>
-
- PR target/13866
- * arm.c (load_multiple_operation): Don't insist that the source reg
- of a post-increment component is the same as the destination.
- (store_multiple_operation): Likewise.
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Move movsf patterns into one section
- of the file.
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * cfgloop.h, cfgloopanal.c, cpplex.c, except.h, loop-init.c,
- loop-unroll.c, scan-decls.c, scan.h, stor-layout.c,
- xcoffout.c, xcoffout.h, config/arm/mmintrin.h,
- config/mips/linux64.h, config/pa/pa-64.h,
- config/rs6000/aix51.h, config/rs6000/aix52.h,
- config/rs6000/spe.md, config/sparc/linux.h,
- config/sparc/linux64.h: Update copyright.
-
-2004-02-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Move push patterns into one
- section of the file.
-
-2004-02-18 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/11326
- * config/ia64/ia64.c (ia64_struct_value_rtx): Cope with NULL
- fntype.
-
-2004-02-18 Paul Brook <paul@codesourcery.com>
-
- * rtlanal.c (rtx_varies_p): Return 0 for NULL_RTX
-
-2004-02-18 Paul Brook <paul@codesourcery.com>
-
- PR debug/12934
- * dwarf2out.c (loc_descriptor_from_tree): Handle
- EXPR_WITH_FILE_LOCATION.
-
-2004-02-18 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (zero_extendqidi2, zero_extendqidi2,
- testdi_1_rex64, anddi_2, xordi_1_rex64, xordi_2_rex64): Remove
- trailing whitespace from instructions.
-
-2004-02-17 Geoffrey Keating <geoffk@apple.com>
-
- * configure.ac: When generating auto-build.h, pass
- --enable-languages to the sub-configure.
- Put quotes around ${program_transform_name} when generating
- name of as, ld, nm, objdump.
- * configure: Regenerate.
-
-2004-02-17 Matt Kraai <kraai@alumni.cmu.edu>
-
- * Makefile.in (s-check, s-config, s-conditions, s-flags)
- (s-codes, s-constants, s-emit, s-recog, s-opinit, s-extract)
- (s-peep, s-attr, s-attrtab, s-output, s-genrtl, s-modes)
- (s-preds, s-iov): Do not depend on move-if-change.
-
-2004-02-17 James E Wilson <wilson@specifixinc.com>
-
- * caller-save.c (insert_restore): Pass mem through copy_rtx.
- (insert_save): Likewise.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_emit_stack_adjustment): Fix a
- warning.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*one_complsi2_h8300): Change to
- *one_cmplsi2_h8300.
- (*one_complsi2_h8300hs): Change to *one_cmplsi2_h8300hs.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Update the prototype of
- fix_bit_operand().
- * config/h8300/h8300.c (fix_bit_operand): Remove the second
- argument "what".
- * config/h8300/h8300.md: Update all callers.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (fix_bit_operand): Change the name of
- the last argument to "code" from "type".
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Remove an extern declaration of
- rtx_equal_function_value_matters.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (fix_bit_operand): Don't generate insns
- by hand.
- * config/h8300/h8300.md (*andqi3_1): Change to andqi3_1.
- (*iorqi3_1): Change to iorqi3_1.
- (*xorqi3_1): Change to xorqi3_1.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-common.c, cfghooks.c, rtlanal.c, varasm.c: Fix comment
- typos.
-
-2004-02-17 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_prologue_using_move, x86_epilogue_using_move): Disable for P4.
-
-2004-02-18 Alan Modra <amodra@bigpond.net.au>
-
- PR optimization/14119
- * combine.c (try_combine): When attemting to fix unrecognized insns,
- don't delete SETs marked with REG_EH_REGION notes.
-
-2004-02-17 Ulrich Weigand <uweigand@de.ibm.com>
-
- * combine.c (simplify_if_then_else): Do not replace
- (if_then_else (ne reg 0) (0) (const_int)) by (reg) if the
- modes differ.
-
-2004-02017 Steven Bosscher <stevenb@suse.de>
-
- * (c-decl.c, c-semantics.c, calls.c, cgraph.c, cgraphunit.c,
- function.c, integrate.c, print-tree.c, toplev.c, tree-optimize.c,
- tree.h): Replace DECL_SAVED_INSNS with DECL_STRUCT_FUNCTION.
- * ada/utils.c: Likewise.
- * cp/decl.c: Likewise.
- * f/com.c: Likewise.
- * java/class.c: Likewise.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Fix comment typos.
-
-2004-02-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/t-iris6gld: Renamed to ...
- * config/mips/t-irix-gld: ... this.
- * config.gcc (mips-sgi-irix6*): Reflect this
- (mips-sgi-irix5*): Use it with GNU ld.
-
- * config/mips/irix6-crti.asm, config/mips/irix6-crtn.asm: Renamed
- to ...
- * config/mips/irix-crti.asm, config/mips/irix-crtn.asm: ... this.
- * config/mips/t-irix-gld: Reflect this.
- * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
-
- * config/mips/iris5gld.h: New file.
- * config.gcc (mips-sgi-irix5*): Use it with GNU ld.
- Only use collect2 without gas.
-
- * config/mips/iris6.h (IRIX6_STARTFILE_SPEC, IRIX6_ENDFILE_SPEC):
- Renamed to IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
- (STARTFILE_SPEC, ENDFILE_SPEC, SUBTARGET_EXTRA_SPECS): Reflect this.
- * config/mips/iris6gld.h (STARTFILE_SPEC, ENDFILE_SPEC): Likewise.
-
- * config/mips/iris6.h (SUBTARGET_EXTRA_SPECS): Moved ...
- * config/mips/iris5.h: ... here.
-
- * config/mips/iris5.h (STARTFILE_SPEC, ENDFILE_SPEC): Renamed to
- IRIX_STARTFILE_SPEC, IRIX_ENDFILE_SPEC.
- (STARTFILE_SPEC, ENDFILE_SPEC): Define.
-
- * config/mips/iris5gas.h (STARTFILE_SPEC, ENDFILE_SPEC): Simplify
- using irix_startfile_spec, irix_endfile_spec.
-
-2004-02-16 Gunther Nikl <gni@gecko.de>
-
- * config/m68k/m68k.c: Remove obsolete support for HPUX_ASM.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_expand_prologue): Don't generate
- insns by hand.
-
-2004-02-17 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfghooks.c (split_edge): Speed up updating of dominators.
-
-2004-02-17 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/11326
- * c-common.c (flag_abi_version): Remove.
- * c-common.h (flag_abi_version): Likewise.
- * c-opts.c (c_common_handle_option): Remove OPT_fabi_version case.
- * c.opt (fabi-version): Remove.
- * calls.c (expand_call): Always pass a function type to
- struct_value_rtx. Use convert_memory_address.
- * common.opt (fabi-version): Add it.
- * flags.h (flag_abi_version): Likewise.
- (abi_version_at_least): New macro.
- * opts.c (common_handle_option): Add OPT_fabi_version.
- * toplev.c (flag_abi_version): Define it.
- * config/ia64/ia64.c (ia64_struct_retval_addr_is_first_parm_p):
- New function.
- (ia64_output_mi_thunk): Use it.
- (ia64_struct_value_rtx): Likewise.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_emit_stack_adjustment):
- Don't generate insns by hand.
-
-2004-02-17 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c++/14178
- * doc/invoke.texi (fabi-version): The default is 2 now.
-
-2004-02-17 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * loop-iv.c: New file.
- * Makefile.in (loop-iv.o): New.
- * basic_block.h (FOR_BB_INSNS, FOR_BB_INSNS_REVERSE): New macros.
- * cfgloop.c (fill_sons_in_loop, get_loop_body_in_dom_order,
- num_loop_branches): New functions.
- * cfgloop.h (get_loop_body_in_dom_order, num_loop_branches,
- iv_analysis_loop_init, iv_get_reaching_def, iv_analyse, get_iv_value,
- find_simple_exit, iv_number_of_iterations, iv_analysis_done,
- get_simple_loop_desc, free_simple_loop_desc): Declare.
- (simple_loop_desc): New inline function.
- (struct rtx_iv, struct niter_desc): New.
- * cfgloopmanip.c (loopify): Specify semantics more precisely.
- * expr.c (force_operand): Handle subregs of expressions created by
- loop unroller.
- * loop-init.c (loop_optimizer_init, loop_optimizer_finalize): Move
- parts of the initialization to toplev.c
- * loop-unroll.c (loop_exit_at_end_p): New.
- (unroll_and_peel_loops): Call iv_analysis_done.
- (decide_peel_once_rolling, decide_peel_completely,
- decide_unroll_stupid, decide_unroll_constant_iterations,
- decide_unroll_runtime_iterations, decide_peel_simple,
- peel_loop_simple, unroll_loop_stupid, unroll_loop_constant_iterations,
- unroll_loop_runtime_iterations): Use new simple loop analysis.
- * loop-unswitch.c (compare_and_jump_seq): New.
- (may_unswitch_on_p): Renamed to ...
- (may_unswitch_on): Use new iv analysis.
- (reversed_condition): Export.
- (unswitch_single_loop, unswitch_loop): Use new iv analysis.
- * predict.c (estimate_probability): Use new simple loop analysis.
- * rtl.h (get_mode_bounds, reversed_condition,compare_and_jump_seq,
- canon_condition, simplify_using_condition): Declare.
- * stor-layout.c (get_mode_bounds): New.
- * toplev.c (rest_of_handle_loop2): Some parts of
- initialization/finalization moved here from loop-init.c.
-
-2004-02-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (FIXED_REGISTERS): Add the soft frame
- pointer.
- (CALL_USED_REGISTERS): Likewise.
- (REG_ALLOC_ORDER): Likewise.
- (REG_CLASS) <GENERAL_REGS>: Likewise.
-
-2004-02-16 Geoffrey Keating <geoffk@apple.com>
-
- * doc/md.texi (Insn Canonicalizations): Document left-chaining
- in associative operators.
- * rtlanal.c (commutative_operand_precedence): Create some new
- variables. Prefer a commutative operand on the left, then
- binary expressions, then NEG and NOT.
-
-2004-02-16 Matthias Klose <doko@debian.org>
-
- * config/t-slibgcc-elf-ver: Define SHLIB_NAME and SHLIB_SONAME
- in terms of SHLIB_SOVERSION.
- * config/m68k/t-slibgcc-elf-ver: New file.
- * config/pa/t-slibgcc-elf-ver: New file.
- * config.gcc (m68k-linux, parisc-linux): Use them when not
- sjlj exceptions are not configured.
-
-2004-02-16 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (get_pc_symbol_name): Mark with GTY(()).
-
-2004-02-16 Zack Weinberg <zack@codesourcery.com>
-
- * sdbout.c (sdb_debug_hooks): Correct the type_decl entry.
-
-2004-02-16 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/sourcebuild.texi: Mention backends.html.
-
-2004-02-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-decl.c, c-ppoutput.c, cpphash.h, cpplib.h, dbxout.c,
- line-map.c, line-map.h, var-tracking.c: Fix comment
- formatting.
-
-2004-02-16 Richard Henderson <rth@redhat.com>
-
- * cse.c (cse_insn): Don't lose REG_NON_LOCAL_GOTO note.
-
- * fold-const.c (operand_equal_p): Fix VECTOR_CST comparison.
-
-2004-02-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Remove unnecessary parallels from
- all define_insn and define_split patterns.
-
-2004-02-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Remove explicit (set_attr "cc"
- "clobber").
-
-2004-02-15 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h (PRINT_OPERAND_PUNCT_VALID_P): Restore support for
- '%#'.
-
-2004-02-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ia64/ia64.c, config/mips/mips.c,
- config/mmix/mmix-modes.def: Fix comment typos.
-
-2004-02-15 Roger Sayle <roger@eyesopen.com>
-
- * c-common.h (GET_DIRECTIVE_LINE): Remove unused macro.
- (get_directive_line): Remove unused function prototype.
-
-2004-02-14 Josef Zlomek <zlomekj@suse.cz>
-
- * tree-inline.c (copy_body_r): Do not replace ret_label.
-
-2004-02-14 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_four_jump_limit): New variable.
- (k8_avoid_jump_misspredicts): Rename to ...
- (ix86_avoid_jump_misspredicts): .. this one.
- (ix86_pad_returns): Break out from ...
- (ix86_reorg): ... this one; do ix86_avoid_jump_misspredicts when asked
- to.
- * i386.h (TARGET_FOUR_JUMP_LIMIT): New macro.
-
-2004-02-14 Josef Zlomek <zlomekj@suse.cz>
-
- * emit-rtl.c (set_decl_incoming_rtl): Check whether the 0th element of
- PARALLEL is NULL.
-
-2004-02-14 Per Bothner <per@bothner.com>
-
- * fix-header.c (line_table): Move local variable in main to global.
- * scan.h (line_table): Use it.
- * scan-decls.c (scan_decls): Need to call linemap_lookup on token's
- line (recently renamed to src_loc) before calling recognized_function.
-
-2004-02-14 Matt Kraai <kraai@alumni.cmu.edu>
-
- * Makefile.in: Fix comment typos.
-
-2004-02-14 Olivier Hainque <hainque@act-europe.fr>
-
- * loop.c (check_dbra_loop): Use gen_int_mode instead of GEN_INT
- for start_value when it is directly moved into reg, and factorize
- the retrieval of GET_MODE (reg).
-
-2004-02-14 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_load_got_page): Delete.
- (mips_load_got_global): Delete.
- (mips_gotoff_page): Declare.
- * config/mips/mips.md (UNSPEC_LOAD_GOT): New constant.
- (*xgot_lo[sd]i, *got_disp[sd]i, *got_page[sd]i): Build an
- UNSPEC_LOAD_GOT pattern rather than a MEM.
- (*load_got[sd]i): New patterns.
- * config/mips/mips.c (mips_got_alias_set, mips_load_got): Delete.
- (mips_load_got_page, mips_load_got_global): Delete.
- (mips_gotoff_page): New function.
- (override_options): Don't initialize mips_got_alias_set.
-
-2004-02-14 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (MASK_DEBUG_[ABEFI], TARGET_DEBUG_[ABEFI]_MODE)
- (TARGET_MIPS4100, TARGET_MIPS4300, TARGET_MIPS4KC, TARGET_MIPS5KC)
- (TARGET_SB1, TUNE_SB1, TUNE_SR71K, BIGGEST_MAX_ARGS_IN_REGISTERS)
- (GO_PRINTF, GO_PRINTF2, GO_DEBUG_RTX, DFMODE_NAN, SFMODE_NAN): Delete.
- (TARGET_SWITCHES): Remove MASK_DEBUG_[ABEFI].
- * config/mips/mips.c: Fix some overly-long lines.
- (SINGLE_WORD_MODE_P, PIC_OFFSET_TABLE_MASK): Delete.
- (init_cumulative_args): Remove TARGET_DEBUG_E_MODE handling.
-
-2004-02-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.ac: Search for as, ld below libexec/gcc.
- * configure: Regenerate.
-
-2004-02-14 Ben Elliston <bje@wasabisystems.com>
-
- * config/arm/mmintrin.h (_mm_setwcx): Reverse arguments in call to
- __builtin_arm_setwcx ().
- * config/arm/arm.c (arm_expand_builtin): Generate operands
- correctly and reverse their order in call to gen_iwmmxt_tmcr ().
-
-2004-02-14 Ben Elliston <bje@wasabisystems.com>
-
- * config/arm/arm.c (bdesc_2arg): Correct builtin names "wmulsh"
- and "wmuluh" to "wmulsm" and "wmulum", respectively.
- * config/arm/arm.h (enum arm_builtins): Rename enumerators to
- ARM_BUILTIN_WMULSM and ARM_BUILTIN_WMULUM.
- * config/arm/mmintrin.h (_mm_mulhi_pi16): Update intrinsic call.
- (_mm_mulhi_pu16): Likewise.
-
-2004-02-13 Zack Weinberg <zack@codesourcery.com>
-
- * xcoffout.c (xcoff_assign_fundamental_type_number): Check
- DECL_NAME != 0 before dereferencing.
-
-2004-02-13 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_output_symbolic_const): Remove.
- (s390_output_addr_const_extra): Declare.
- (s390_output_pool_entry): Remove FILE * argument.
- * config/s390/s390.c (s390_output_symbolic_const): Remove.
- (s390_output_addr_const_extra): New function.
- (print_operand_address): Call output_addr_const instead of
- s390_output_symbolic_const.
- (print_operand): Likewise.
- (s390_output_pool_entry): Use assemble_integer for symbolic constants.
- Remove FILE * argument.
- * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Define.
- * config/s390/s390.md ("*pool_entry"): Adapt s390_output_pool_entry
- call.
-
-2004-02-13 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfgloopanal.c (mark_irreducible_loops): Rewriten.
- (struct edge, struct vertex, struct graph): New.
- (dump_graph, new_graph, add_edge, dfs, check_irred, for_each_edge,
- free_graph): New functions.
-
-2004-02-12 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (casesi_internal, casesi_internal_di):
- Use ".set macro" to avoid warnings about multi-instruction
- macros, since they're intentional.
-
-2004-02-12 Geoffrey Keating <geoffk@apple.com>
-
- * config/darwin.h: Add include guards. Remove old, now incorrect,
- comment about STANDARD_EXEC_PREFIX.
-
- * Makefile.in (install-man): Use $(CPP_INSTALL_NAME) and
- $(GCOV_INSTALL_NAME) to install manpages. Remove generic rule
- for installing .1 manpages. Add rules for installing cpp
- and gcov manpages under their installed names.
-
-2004-02-12 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.ac (gcc_cv_ld): Don't set to LD if target is not
- host, but try LD_FOR_TARGET first.
- * configure: Rebuilt.
-
-2004-02-12 Zack Weinberg <zack@codesourcery.com>
-
- * dbxout.c: Move declaration of dbxout_type_decl outside
- #ifdef DBX_DEBUGGING_INFO.
- * c-parse.in: Don't give the asmdef production a type.
-
-2004-02-12 Zack Weinberg <zack@codesourcery.com>
-
- * debug.h (struct gcc_debug_hooks): Add type_decl field.
- (debug_nothing_tree_int): Prototype.
- (dwarf_debug_hooks): Delete, unused.
- * debug.c (do_nothing_debug_hooks): Update.
- (debug_nothing_tree_int): New function.
- * langhooks.h (struct lang_hooks_for_decls):
- Remove builtin_type_decls field.
- * langhooks-def.h (LANG_HOOKS_BUILTIN_TYPE_DECLS): Delete.
- (LANG_HOOKS_DECLS): Update.
- * toplev.c (rest_of_decl_compilation, rest_of_type_compilation):
- Use debug_hooks->type_decl.
- * dbxout.c (preinit_symbols): New static.
- (dbx_debug_hooks, xcoff_debug_hooks): Update.
- (dbxout_init): Don't call DBX_OUTPUT_STANDARD_TYPES or
- lang_hooks.decls.builtin_type_decls. Do scan preinit_symbols
- for symbols to output.
- (dbxout_type_decl): New function.
- (dbxout_symbol): If called before dbxout_init has run, queue
- the symbol for later. Apply DBX_ASSIGN_FUNDAMENTAL_TYPE_NUMBER
- to TYPE_DECLs before emitting them.
- * xcoffout.c (assign_type_number): Delete.
- (xcoff_type_numbers): New static table.
- (xcoff_assign_fundamental_type_number): New function.
- * xcoffout.h: Define DBX_ASSIGN_FUNDAMENTAL_TYPE_NUMBER, not
- DBX_OUTPUT_STANDARD_TYPES. Remove unnecessary #ifdefs.
- * sdbout.c: Include varray.h.
- (deferred_global_decls): New static.
- (sdb_debug_hooks): Update.
- (sdbout_global_decl): If we can't emit something right now,
- remember it in deferred_global_decls.
- (sdbout_finish): Just scan deferred_global_decls; don't call getdecls.
- (sdbout_init): Initialize deferred_global_decls.
- * Makefile.in: Update dependencies of sdbout.o.
- * dwarf2out.c (dwarf2out_type_decl): New function.
- (dwarf2_debug_hooks): Update.
- * vmsdbgout.c (vmsdbg_debug_hooks): Update.
- * c-decl.c (getdecls): Just return 0.
- (check_for_loop_decls): Don't use getdecls.
- (record_builtin_type): Call debug_hooks->type_decl on the TYPE_DECL.
- * c-objc-common.c (c_objc_common_finish_file): Don't use getdecls.
-
-2004-02-12 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_sched_reorder2): Remove.
- (TARGET_SCHED_REORDER2): Do not redefine.
-
-2004-02-12 Zack Weinberg <zack@codesourcery.com>
-
- * c-parse.in (maybe_type_qual): Delete.
- (maybe_volatile, simple_asm_expr, asmdef, asm_stmt)
- (asm_argument): New grammar rules.
- (extdef_1): Use asmdef.
- (maybeasm): Move down with other asm rules; use simple_asm_expr.
- (xexpr): Move up with other expression rules.
- (stmt): Use asm_stmt.
-
- * c-typeck.c (build_asm_expr): New function - body mostly
- pulled from build_asm_stmt.
- (build_asm_stmt): Just handle tacking on the volatile qualifier.
- * c-tree.h (build_asm_expr, build_asm_stmt): Update prototypes.
-
-2004-02-12 Richard Sandiford <rsandifo@redhat.com>
-
- PR bootstrap/13617
- * config/mips/mips-protos.h (mips_output_aligned_decl_common): Declare.
- (mips_declare_object): Make variadic.
- * config/mips/mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use
- mips_output_aligned_decl_common.
- * config/mips/mips.c (mips_output_aligned_decl_common): New function.
- (mips_declare_object): Make variadic.
-
-2004-02-12 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * function.c (update_epilogue_consts): Teach about binary operations.
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Don't kill
- previous MEM_VOLATILE in REF.
- * function.c (fixup_var_refs): Save volatile_ok and set to 1.
- * expr.c (emit_block_move_via_movstr): Save and restore volatile_ok.
-
-2004-02-12 Gunther Nikl <gni@gecko.de>
-
- * config.gcc: Restore support for m68k-openbsd.
-
-2004-02-12 Jan Hubicka <jh@suse.cz>
-
- * tree-optimize.c (tree_rest_of_compilation): Do not release
- DECL_ARGUMENTS.
-
-2004-02-11 Matt Kraai <kraai@alumni.cmu.edu>
-
- * doc/install.texi: Fix the spelling of "explicitly".
-
-2004-02-11 Eric Christopher <echristo@redhat.com>
-
- * cppcharset.c (_cpp_interpret_string_notranslate): Rename and
- duplicate argument structure of cpp_interpret_string.
- * cpphash.h: Move prototype...
- * cpplib.h: Here.
- * cpplib.c: Fix calls to match new function signature.
-
-2004-02-11 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/456
- * cppexp.c (num_binary_op): Don't allow comma operators in #if
- constant expressions at all outside C99 mode if pedantic.
-
-2004-02-11 Uros Bizjak <uros@kss-loka.si>
-
- * optabs.h (enum optab_index): Add new OTI_log10 and OTI_log2.
- (log10_optab, log2_optab): Define corresponding macros.
- * optabs.c (init_optabs): Initialize log10_optab and log2_optab.
- * genopinit.c (optabs): Implement log10_optab and log2_optab
- using log10?f2 and log2?f2 patterns.
- * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_LOG10{,F,L}
- using log10_optab, and BUILT_IN_LOG2{,F,L} using log2_optab.
- (expand_builtin): Expand BUILT_IN_LOG10{,F,L} and BUILT_IN_LOG2{,F,L}
- using expand_builtin_mathfn if flag_unsafe_math_optimizations is set.
-
- * config/i386/i386.md (log10sf2, log10df2, log10xf2, log2sf2,
- log2df2, log2xf2): New patterns to implement log10, log10f, log10l,
- log2, log2f and log2l built-ins as inline x87 intrinsics.
-
-2004-02-11 Richard Henderson <rth@redhat.com>
-
- PR target/1532
- * flow.c (insn_dead_p): A clobber of a dead hard register is a
- dead insn after reload.
-
-2004-02-11 Ulrich Weigand <uweigand@de.ibm.com>
-
- * tree.h (frame_base_decl): Add GTY marker.
- * var-tracking.c (frame_base_decl): Likewise.
-
-2004-02-11 Daniel Berlin <dberlin@dberlin.org>
-
- * dwarf2out.c (output_loc_list): Remove no longer necessary, and now
- incorrect, hunk.
- (add_location_or_const_value_attribute): Use text_section_label,
- not TEXT_SECTION_NAME.
-
-2004-02-11 Per Bothner <per@bothner.com>
-
- Represent column numbers using line-map's source_location.
- The "next available source_location" is now managed internally by
- line-maps.c rather than by clients.
- * line-map.h (struct line_map): New field column_bits.
- <from_line>: Rename field to start_location.
- (struct line_maps): New fields highest_location and max_column_hint.
- (linemap_check_files_exited): New declaration.
- (linemap_line_start): New declaration.
- (linemap_add): Remove from_line parameter; use highest_location field.
- (SOURCE_LINE, LAST_SOURCE_LINE): Modify to use column_bits.
- (SOURCE_COLUMN, LAST_SOURCE_LINE_LOCATION): New macros.
- (CURRENT_LINE_MAP): Remove macro.
- (linemap_position_for_column): New inline function.
- * line-map.c (linemap_init): Clear new fields.
- (linemap_check_files_exited): New function, extracted from ...
- (linemap_free): Use linemap_check_files_exited.
- (linemap_add): Remove from_line parameter. Various updates.
- (linemap_line_start): New function.
- (linemap_lookeup): Update for new field names.
- * cpphash.h (struct cpp_reader) <map>: Field removed. Because
- linemap_position_for_column may unpredictably change the current map,
- it is cleaner and simpler for us to not cache it in cpp_reader.
- (struct cpp_buffer): New sysp field.
- Changed warned_cplusplus_comments and from_stage3 to bitfields.
- * cppinit.c (cpp_read_min_file): pfile->map no longer exists.
- * cpplib.c (do_line, do_linemarker, _cpp_do_file_change): Get
- current map using linemap_lookup.
- (do_linemarker): Also set buffer's sysp field.
- (destringize_and_run): No longer need to decrement current line.
- * cppfiles.c (_cpp_stack_file): Set sysp from and in buffer.
- (search_path_head, open_file_failed): Use buffer's sysp.
- (cpp_make_system_header): Get current map using linemap_lookup.
- Also set buffer's sysp flag.
- * cppmacro.c (_cpp_builtin_macro_text): Likewise use linemap_lookup.
- * cpphash.h (CPP_INCREMENT_LINE): New macro.
- (struct cpp_buffer): Moved fields saved_cur, saved_rlimit to ...
- (struct cpp_reader): ... and adding saved_line_base field.
- * cpptrad.c (_cpp_overlay_buffer, _cpp_remove_overlay):
- Update accordingly. Don't adjust line.
- (_cpp_scan_out_logical_line): Use CPP_INCREMENT_LINE.
- * cpphash.c (CPP_IN_SYSTEM_HEADER): Replaced macro by ...
- (cpp_in_system_header): ... new inline function, using buffer's sysp.
- * cpperror.c (_cpp_begin_message): Update to use cpp_in_system_header.
- * cpplex.c (_cpp_lex_direct): Likewise.
- * cppmacro.c (_cpp_builtin_macro_text): Likewise.
- * cppmacro.c (_cpp_create_definition): Use buffer's sysp field.
- * cpplib.h (struct cpp_token): Rename line field to src_loc.
- Remove col field as it is now subsumed by src_loc.
- * cpperror.c: Update various field, parameter, and macro names.
- (print_location): If col==0, try SOURCE_COLUMN of line.
- (cpp_error): Use cur_token's src_loc field, rather than line+col.
- * cpplib.c (do_diagnostic): Token's src_loc fields replaces line+col.
- * cpplex.c (_cpp_process_line_notes, _cpp_lex_direct,
- _cpp_skip_block_comment): Use CPP_INCREMENT_LINE.
- (_cpp_temp_token): Replace cpp_token's line+col fields by src_loc.
- (_cpp_get_fresh_line): Don't need to adjust line for missing newline.
- (_cpp_lex_direct): Use linemap_position_for_column.
- * c-ppoutput.c (maybe_print_line, print_line): Don't take map
- parameter. Instead get it from the line_table global. Adjust callers.
- (print): Remove map field. Replace line field to src_line.
- (init_pp_output, account_for_newlines, maybe_print_line): Adjust.
- (cb_line_change): Use SOURCE_COLUMN. Minor optimizations.
- (pp_file_change): Use MAIN_FILE_P since we cannot checked print.map.
- Use LAST_SOURCE_LINE_LOCATION to "catch up" after #include.
- * cpptrad.c (copy_comment): Rename variable.
- * c-lex.c (map): Remove static variable, for same reason we removed
- cpp_reader's map field.
- (cb_line_change, cb_def_pragma, cb_define, cb_undef): Hence we need
- to call linemap_lookup.
- (cb_line_change): Token's line field replaced by src_loc.
- (fe_file_change): Use MAINFILE_P and LAST_SOURCE_LINE macros.
- Don't save new_map.
-
- * cpphash.h, cpperror.c, cpplib.h: Some renames of fileline to
- source_location.
-
-2004-02-11 Hartmut Penner <hpenner@de.ibm.com>
-
- * config/rs6000/altivec.md (*movv4si_internal): At least one
- operand must be register_operand.
- (*movv8hi_internal1): Likewise.
- (*movv16qi_internal1): Likewise.
- (*movv4sf_internal1): Likewise.
-
-2004-02-10 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md ("*movv2si_internal"): Check for register
- operand.
- (movv4hi_internal): Same.
- (movv2sf_internal): Same.
- (movv1di_internal): Same.
-
-2004-02-11 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
-
- * config/mips/mips.h (TARGET_OLDABI): Define. Use TARGET_NEWABI and
- TARGET_OLDABI consistently.
- * config/mips/mips.c (function_arg,mips_setup_incoming_varargs,
- mips_va_arg,override_options,compute_frame_size,
- mips_initial_elimination_offset,mips16_fp_args,build_mips16_call_stub
- ,mips_return_in_memory,mips_strict_argument_naming): Use TARGET_NEWABI
- and TARGET_OLDABI consistently.
- * config/mips/mips.md (exception_receiver): Likewise.
- * config/mips/linux64.h: Likewise.
-
-2004-02-11 Hartmut Penner <hpenner@de.ibm.com>
-
- * gcc/config/rs6000/rs6000.c (rs6000_override_options)
- Set AltiVec ABI and vrsave as default for ppc64 linux.
- (init_cumulative_args): Post error, if try to return
- value in AltiVec register without enable AltiVec.
- (function_arg_advance): Ditto for passing arguments.
-
-2004-02-11 Richard Sandiford <rsandifo@redhat.com>
-
- * emit-rtl.c (mark_label_nuses): Check that a LABEL_REF refers to
- a label before updating its usage count.
-
-2004-02-10 Matt Kraai <kraai@alumni.cmu.edu>
-
- * doc/install.texi: Remove extra cd.
-
-2004-02-10 Ziemowit Laski <zlaski@apple.com>
-
- * c-common.c (vector_size_helper): Remove; call
- reconstruct_complex_type() instead.
- * tree.c (reconstruct_complex_type): New function
- (formerly vector_size_helper() in c-common.c).
- (make_vector): Make externally visible.
- * tree.h (reconstruct_complex_type, make_vector): Add prototypes.
-
-2004-02-10 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Add a prototype for
- h8300_regs_ok_for_stm.
- * config/h8300/h8300.c (h8300_regs_ok_for_stm): New.
- * config/h8300/h8300.md (stm_h8300s_2_advanced,
- stm_h8300s_2_normal, stm_h8300s_2, stm_h8300s_3_advanced,
- stm_h8300s_3_normal, stm_h8300s_3, stm_h8300s_4_advanced,
- stm_h8300s_4_normal, stm_h8300s_4, ldm_h8300s_2_advanced,
- ldm_h8300s_2_normal, ldm_h8300s_2, ldm_h8300s_3_advanced,
- ldm_h8300s_3_normal, ldm_h8300s_3, ldm_h8300s_4_advanced,
- ldm_h8300s_4_normal, ldm_h8300s_4): Use
- h8300_regs_ok_for_stm().
-
-2004-02-10 Danny Smith <dannysmith@users.sourceforge.net>
-
- PR c/14088
- * real.c (real_from_string): Look for 'X' as well as 'x' in
- hexfloat strings.
-
-2004-02-10 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Remove an incorrect comment about
- peephole2. Add comments.
-
-2004-02-10 Josef Zlomek <zlomekj@suse.cz>
-
- PR/14058
- * emit-rtl.c (set_decl_incoming_rtl): New.
- * tree.h (set_decl_incoming_rtl): New.
- * function.c (assign_parms): Use set_decl_incoming_rtl for setting
- DECL_INCOMING_RTL.
- * ada/misc.c (adjust_decl_rtl): Likewise.
-
-2004-02-10 Per Bothner <per@bothner.com>
-
- * c-opts.c (c_common_post_options): Don't emit working directory
- in cpp output if -P was specified.
-
-2004-02-10 Paolo Bonzini <bonzini@gnu.org>
-
- PR c/14092
- * fold-const.c (fold) <NEGATE_EXPR>: Convert result of
- negate_expr back to the original type.
-
-2004-02-10 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Don't
- bump retaddr here.
-
-2004-02-10 Paolo Bonzini <bonzini@gnu.org>
-
- * rtl.h (schedule_insns, schedule_ebbs, fix_sched_param,
- gen_lowpart_SUBREG): Move under the file in which they
- are actually declared.
-
-2004-02-10 Arnaud Charlet <charlet@act-europe.fr>
-
- * doc/sourcebuild.texi: Add libada documentation.
-
- * doc/install.texi: Update documentation on Ada build, now
- that the GNAT lib and tools are built automatically.
-
-2004-02-10 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (TARGET_GPWORD): Return false for TARGET_NEWABI
- && TARGET_IRIX.
-
-2004-02-09 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (get_super_receiver): Move '#ifdef OBJCPLUS'
- boundaries outside build_component_ref() call (a macro in ObjC++).
-
-2004-02-09 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Update.
- (init_cumulative_args): Likewise.
- (a7_overlap_mentioned_p): Delete prototype.
- * config/xtensa/xtensa.c (struct machine_function): Replace
- incoming_a7_copied field with need_a7_copy and vararg_a7 flags.
- Add set_frame_ptr_insn field.
- (xtensa_emit_move_sequence): Update call to xtensa_copy_incoming_a7.
- (xtensa_copy_incoming_a7): Rewrite to check need_a7_copy flag and check
- if the operand is an argument in a7. If so, copy a7 to a new pseudo
- at the function entry and replace the operand with the pseudo.
- (init_cumulative_args): Remove unused arguments. Add new "incoming"
- argument and record this flag in CUMULATIVE_ARGS.
- (function_arg): Remove result_mode and special-case code to handle
- arguments in a7. Instead, set need_a7_copy flag when there is an
- incoming argument in a7.
- (xtensa_expand_prologue): Remove code to search for set_frame_ptr insn
- and use the value recorded in cfun->machine->set_frame_ptr_insn.
- (xtensa_builtin_saveregs): Check for negative gp_left value. Set
- need_a7_copy and vararg_a7 flags. Use move_block_from_reg instead of
- special-case code.
- (a7_overlap_mentioned_p): Delete.
- * config/xtensa/xtensa.h (CUMULATIVE_ARGS): Add "incoming" flag.
- (INIT_CUMULATIVE_ARGS, INIT_CUMULATIVE_INCOMING_ARGS): Remove useless
- arguments to init_cumulative_args and pass "incoming" flag instead.
- (BLOCK_REG_PADDING): Delete.
- * config/xtensa/xtensa.md (movdi, movsf, movdf): Remove unnecessary
- checks for reload_in_progress and reload_completed. Update calls to
- xtensa_copy_incoming_a7.
- (ashlsi3): Rename existing insn to ashlsi3_internal. Add expander
- to call xtensa_copy_incoming_a7.
-
-2004-02-09 DJ Delorie <dj@redhat.com>
-
- * config/i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): No
- longer modify standard_exec_prefix, standard_bindir_prefix, or
- standard_startfile_prefix.
-
-2004-02-09 James E Wilson <wilson@specifixinc.com>
-
- PR c++/11295
- * c-common.c (c_expand_expr, case STMT_EXPR): Change expand_expr call
- to expand_expr_real call, and pass in alt_rtl as last argument.
-
- PR libstdc++/5625
- * builtin-types.def (BT_WORD, BT_FN_WORD_PTR): New.
- * builtins.c (expand_builtin): Handle BUILT_IN_EXTEND_POINTER.
- * builtins.def (BUILT_IN_EXTEND_POINTER): New.
- * except.c (expand_builtin_extend_pointer): New.
- * except.h (expand_builtin_extend_pointer): Declare.
-
-2004-02-09 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): Remove splitting slow
- unaligned loads and stores.
-
-2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris5.h (BSS_SECTION_ASM_OP): Define.
- * config/mips/iris6.h (BSS_SECTION_ASM_OP): Undef.
-
- * config/mips/iris6.h (TARGET_ASM_NAMED_SECTION): Moved ...
- * config/mips/iris5.h: ... here.
- * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Remove.
-
- * config/mips/iris6.h (EXTRA_SECTION_FUNCTIONS): Move ...
- * config/mips/iris5.h: ... here.
-
-2004-02-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.ac: Remove default executable files before AC_PROG_CC.
- * configure: Regenerate.
-
-2004-02-09 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/13721
- * config/h8300/h8300.c (byte_reg): Call abort() if asked to
- print a operand other than a register.
-
-2004-02-09 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) <NOP_EXPR>: Use the original type conversion
- tree code rather than call fold_convert, which doesn't specify a
- default floating point to integer conversion.
-
-2004-02-08 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c, config/m68k/m68k.md (SGS, SGS_CMP_ORDER): Remove
- code to support SGS assembler. Reformat adjacent code where possible.
- * config/m68k/m68k.c (switch_table_difference_label_flag): Remove
- definition.
- * config/m68k/m68k.h (PRINT_OPERAND_PUNCT_VALID_P): Remove support
- for '%#'.
- * config/m68k/linux.h, config/m68k/m68k.c,
- * config/m68k/math-68881.h: Replace `%#' with `#' in inline asm
- macros and asm_printf() format strings.
- * config/m68k/m68kelf.h (ASM_OUTPUT_CASE_END): Remove macro definition.
- * config/m68k/linux.h: Update copyright.
- * config/m68k/linux.h, config/m68k/m68k.c: Remove traling whitespace.
-
-2004-02-08 Andreas Schwab <schwab@suse.de>
- Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.h (REGISTER_NAMES): Prefix each name with
- REGISTER_PREFIX.
- * (M68K_FP_REG_NAME): New macro to specify an alternate name for the
- frame pointer register, overridable by OS targets.
- * (M68K_REGNAME): Macro to obtain register name for asm output,
- eventually replacing %a6 with M68K_FP_REG_NAME.
- * config/m68k/coff.h (REGISTER_NAMES): Don't redefine.
- * config/m68k/linux.h (REGISTER_NAMES): Likewise.
- * config/m68k/m68kelf.h (REGISTER_NAMES): Likewise.
- * config/m68k/netbsd-elf.h (REGISTER_NAMES): Likewise.
- * config/m68k/m68k.c: Use M68K_REGNAME(x) in place of reg_names[x].
-
-2004-02-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * target-def.h (TARGET_STRUCT_VALUE_RTX): Define as
- hook_rtx_tree_int_null.
- * targhooks.c (default_struct_value_rtx): Remove.
- * targhooks.h: Remove the prototype for
- default_struct_value_rtx.
- * config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c,
- config/fr30/fr30.c, config/h8300/h8300.c, config/i386/i386.c,
- config/ip2k/ip2k.c, config/iq2000/iq2000.c,
- config/m32r/m32r.c, config/mcore/mcore.c, config/mips/mips.c,
- config/mn10300/mn10300.c, config/pdp11/pdp11.c,
- config/rs6000/rs6000.c, config/s390/s390.c,
- config/stormy16/stormy16.c, config/v850/v850.c,
- config/xtensa/xtensa.c (TARGET_STRUCT_VALUE_RTX): Remove.
- * doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document the default.
-
-2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * README.Portability: Change "ISO C89" to "ISO C90".
- * c-parse.in (primary, initelt): Likewise.
-
-2004-02-08 Richard Sandiford <rsandifo@redhat.com>
-
- * real.c (encode_ibm_extended): Normalize the input value before
- converting it to a double. Handle the case where a normal value
- rounds to infinity.
-
-2004-02-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-objc-common.c (c_cannot_inline_tree_fn): Fix a typo in a
- warning.
- * cse.c (preferrable): Change to preferable. Update all of its
- callers.
- * genautomata.c (ainsn): Change
- first_ainsn_with_given_equialence_num to
- first_ainsn_with_given_equivalence_num. Update all of its
- references.
-
-2004-02-08 Jan Hubicka <jh@suse.cz>
-
- * schedule-ebb.c (schedule_ebbs): Do not allocate reg life data.
-
-2004-02-07 David Edelsohn <edelsohn@gnu.org>
-
- * function.c (assign_parms): Fix formatting.
-
-2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * default.h (PROMOTE_PROTOTYPES): Remove.
- * system.h (PROMOTE_FUNCTION_RETURN, PROMOTE_PROTOTYPES,
- STRUCT_VALUE_REGNUM, SETUP_INCOMING_VARARGS,
- EXPAND_BUILTIN_SAVEREGS): Poison.
- * target-def.h (TARGET_PROMOTE_FUNCTION_RETURN): Define as
- hook_bool_tree_false.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- * target.h: Replace SETUP_INCOMING_VARARGS with
- targetm.calls.setup_incoming_varargs().
- * targhooks.c (default_promote_function_return): Remove.
- (default_promote_prototypes): Likewise.
- (default_struct_value_rtx): Always abort().
- (default_expand_builtin_saveregs): Always print an error
- message.
- (default_setup_incoming_varargs): Do nothing.
- (default_pretend_outgoing_varargs_named): Don't depend on
- SETUP_INCOMING_VARARGS.
- * targhooks.h: Remove the prototype for
- default_promote_function_return and
- default_promote_prototypes.
-
-2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (SHARED_SECTION_ASM_OP): Poison.
- * varasm.c (data_section): Don't use SHARED_SECTION_ASM_OP.
- * doc/tm.texi (SHARED_SECTION_ASM_OP): Remove.
-
-2004-02-07 Zack Weinberg <zack@codesourcery.com>
-
- Bug 13856
- * c-decl.c (diagnose_mismatched_decls): Only give special
- treatment when olddecl is DECL_BUILT_IN, if C_DECL_INVISIBLE
- is also true.
- (merge_decls): Don't clear DECL_BUILT_IN_CLASS and
- DECL_FUNCTION_CODE when defining a built-in function.
- Don't update DECL_ESTIMATED_INSNS.
- * dwarf2out.c (dwarf2out_decl): Don't ignore built-in
- FUNCTION_DECLs.
- * tree.h: Delete DECL_ESTIMATED_INSNS.
- * tree-inline.c (struct inline_data): Delete inlined_insns field.
- (expand_call_inline, optimize_inline_calls): Don't update
- DECL_ESTIMATED_INSNS nor inlined_insns.
- * cgraphunit.c (cgraph_analyze_function): Don't update
- DECL_ESTIMATED_INSNS.
-
-2004-02-07 Zack Weinberg <zack@codesourcery.com>
-
- * c-common.c (shadow_warning): Delete.
- * c-common.h (free_parser_stacks, shadow_warning, sw_kind): Delete.
- * c-decl.c (warn_if_shadowing): Issue shadow warnings directly.
- * c-opts.c (c_common_parse_file): Don't call free_parser_stacks.
- * c-parse.in (free_parser_stacks): Delete.
-
-2004-02-07 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in, config/t-slibgcc-darwin, config/t-slibgcc-elf-ver,
- config/t-slibgcc-sld, config/mips/t-iris5-6, config/sh/t-linux:
- Use the top level mkinstalldirs, not the one in the gcc subdir.
- * mkinstalldirs: Remove (from the gcc subdir).
-
-2004-02-07 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/13696
- * fold-const.c (fold_convert): New function to provide type
- conversion to the middle-end without using convert.
- (negate_expr, associate_trees, size_diffop, omit_one_operand,
- operand_equal_for_comparison_p, pedantic_omit_one_operand,
- invert_truthvalue, optimize_bit_field_compare, range_binop,
- decode_field_reference, make_range, build_range_check, unextend,
- fold_truthop, extract_muldiv_1, fold_mathfn_compare,
- fold_binary_op_with_conditional_arg, fold_inf_compare,
- fold_single_bit_test, fold, multiple_of_p): Replace all calls to
- convert with calls to fold_convert.
-
-2004-02-07 Jan Hubicka <jh@suse.cz>
-
- * genrecog.c (find_operand): add extra argument stop.
- (validate_pattern): Verify that mach_dup is duplicating operand
- defined lexically earlier.
-
-2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config.gcc: Don't mention MAX_LONG_TYPE_SIZE.
- * system.h (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE,
- MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Poison.
- * config/avr/avr.h, config/h8300/h8300.h, config/i386/i386.h,
- config/ia64/ia64.h, config/ip2k/ip2k.h,
- config/iq2000/iq2000.h, config/mips/iris5.h,
- config/mips/mips.h, config/pa/pa-64.h, config/pa/pa.h,
- config/rs6000/aix51.h, config/rs6000/aix52.h,
- config/rs6000/darwin.h, config/rs6000/rs6000.h,
- config/s390/s390.h, config/sh/sh.h, config/sparc/freebsd.h,
- config/sparc/linux.h, config/sparc/linux64.h,
- config/sparc/netbsd-elf.h, config/sparc/sparc.h,
- config/xtensa/xtensa.h: Remove the definitions of
- MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE, and/or
- MAX_WCHAR_TYPE_SIZE.
- * doc/tm.texi (MAX_LONG_TYPE_SIZE, MAX_LONG_DOUBLE_TYPE_SIZE,
- MAX_WCHAR_TYPE_SIZE, GCOV_TYPE_SIZE): Remove.
-
-2004-02-07 Stephane Carrez <stcarrez@nerim.fr>
-
- PR bootstrap/13990
- * config/m68hc11/m68hc11.md ("doloop_end"): Pass dummy arguments to
- gen_rtx_NE.
-
-2004-02-07 Josef Zlomek <zlomekj@suse.cz>
-
- * var-tracking.c (vt_add_function_parameters): Surround checkings by
- #ifdef ENABLE_CHECKING and #endif.
-
-2004-02-07 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (negate_expr_p, negate_expr): Optimize -(A+B) into
- either (-A)-B or (-B)-A, if A or B is easily negated respectively.
- (fold) <MINUS_EXPR>: Optimize (A*C) - (B*C) -> (A-B)*C for both
- integer types and floating point with unsafe_math_optimizations.
- Add similar optimization for (A*C1) - (A*C2) -> A*(C1-C2).
- Optimize A - B as A + (-B), if B is easily negated.
-
-2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-ppoutput.c, cfganal.c, diagnostic.h, print-rtl.c,
- config/darwin.c, config/darwin.h, config/ia64/ia64-c.c,
- config/m32r/linux.h, config/rs6000/ppc64-fp.c,
- config/sparc/openbsd.h, doc/makefile.texi, doc/passes.texi:
- Update copyright.
-
-2004-02-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-ppoutput.c, var-tracking.c: Fix comment typos.
-
-2004-02-06 James E Wilson <wilson@specifixinc.com>
-
- * config/ia64/linux.h (MD_FALLBACK_FRAME_STATE_FOR): Only define for
- glibc 2.3 or better.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/tm.texi (TARGET_FLOAT_LIB_COMPARE_RETURNS_BOOL): Change
- to FLOAT_LIB_COMPARE_RETURNS_BOOL.
-
-2004-02-07 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/t-linux64 (LIB2FUNCS_EXTRA): Add darwin-ldouble.c.
- (SHLIB_MAPFILES): Add libgcc-ppc64.ver.
- (SHLIB_MKMAP_OPTS): Delete.
- (TARGET_LIBGCC2_CFLAGS): Add -specs.
- (bispecs): Add rule.
- * config/rs6000/libgcc-ppc64.ver: New file.
- * config/rs6000/ppc64-fp.c (__fixtfdi, __floatditf): New functions.
- (__floatdidf, __floatdisf): Optimize multiply.
- (__fixunstfdi): New function.
- * config/rs6000/rs6000.c (rs6000_complex_function_value): Allow for
- real and imag parts larger than one register.
- (function_arg): Correct type of reg used when fp arg split partially
- to stack.
- * config/rs6000/darwin-ldouble.c: Protect with #if !_SOFT_FLOAT
- and __MACH__ or __powerpc64__.
-
-2004-02-06 Roger Sayle <roger@eyesopen.com>
- Ulrich Weigand <uweigand@de.ibm.com>
-
- * builtins.c (expand_builtin_signbit): Use extract_bit_field instead
- of gen_highpart or gen_lowpart when the floating point format is
- wider than the result mode.
-
-2004-02-06 Andrew Pinski <pinskia@physics.uc.edu>
-
- * dwarf2out.c (loclabel_num): Move into #ifdef
- DWARF2_DEBUGGING_INFO.
-
-2004-02-06 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (build_super_template) the 'class' field of
- 'struct _objc_super' shall be named 'super_class' #ifdef OBJCPLUS.
- (get_super_receiver): Likewise.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * reload1.c (check_eliminable_occurrences): Optimize the reset
- of can_eliminate.
- (eliminate_regs_in_insn): Likewise.
-
-2004-02-06 Daniel Berlin <dberlin@dberlin.org>
- Josef Zlomek <zlomekj@suse.cz>
-
- * dwarf2out.c (struct gcc_debug_hooks): Call dwarf2out_begin_function
- at the beginning of function, call dwarf2out_var_location for
- NOTE_INSN_VAR_LOCATION note.
- (struct var_loc_node, struct var_loc_list_def, loclabel_num,
- decl_loc_table): New.
- (lookup_decl_loc): New function.
- (add_var_loc_to_decl): New function.
- (based_loc_descr): Added parameter can_use_fbreg, DW_OP_fbreg is used
- only if can_use_fbreg.
- (mem_loc_descriptor): Added parameter can_use_fbreg, pass it to other
- functions.
- (loc_descriptor): Likewise. Process VAR_LOCATION.
- (concat_loc_descriptor): Call loc_descriptor with can_use_fbreg == true.
- (loc_descriptor_from_tree): Call mem_loc_descriptor with
- can_use_fbreg == true.
- (add_location_or_const_value_attribute): Added parameter enum
- dwarf_attribute attr, generate attribute ATTR. Create the location list.
- (add_bound_info): Call loc_descriptor with can_use_fbreg == true.
- (gen_formal_parameter_die): Call add_location_or_const_value_attribute
- with attr == DW_AT_location.
- (gen_subprogram_die): Generate the location list for DW_AT_frame_base
- if frame_base_decl is defined and has a location list.
- (gen_variable_die): Call add_location_or_const_value_attribute with
- attr == DW_AT_location.
- (dwarf2out_var_location): New function.
- (dwarf2out_begin_function): New function.
- (dwarf2out_init): Create decl_loc_table.
-
-2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- * loop.c (force_movables): Transitively increase the priorities of
- all insns forces by an insn, not just the first one.
-
-2004-02-06 Josef Zlomek <zlomekj@suse.cz>
- Daniel Berlin <dberlin@dberlin.org>
-
- Josef Zlomek <zlomekj@suse.cz>
- * Makefile.in (var-tracking.o): New.
- * common.opt (fvar-tracking): New.
- * flags.h (flag_var_tracking): New.
- * gengtype.c (adjust_field_rtx_def): NOTE_INSN_VAR_LOCATION was added.
- * opts.c (common_handle_option): Add OPT_fvar_tracking.
- * print-rtl.c (print_rtx): NOTE_INSN_VAR_LOCATION was added.
- * rtl.c (note_insn_name): Likewise.
- * rtl.def (VAR_LOCATION): New.
- * rtl.h (NOTE_VAR_LOCATION): New.
- (NOTE_VAR_LOCATION_DECL): New.
- (NOTE_VAR_LOCATION_LOC): New.
- (enum insn_note): NOTE_INSN_VAR_LOCATION was added.
- (variable_tracking_main): New exported function.
- * timevar.def (TV_VAR_TRACKING): New.
- * toplev.c (enum dump_file_index): Added DFI_vartrack.
- (dump_file): "vartrack" was added (-dV).
- (flag_var_tracking): New.
- (f_options): "var-tracking" was added.
- (rest_of_handle_variable_tracking): New function.
- (rest_of_compilation): Run variable tracking.
- (process_options): If user has not specified flag_var_tracking set it
- according to optimize, debug_info_level and debug_hooks.
- * tree.h (frame_base_decl): New.
- * var-tracking.c: New file.
- * config/ia64/ia64.c (ia64_flag_var_tracking): New variable.
- (ia64_override_options): Set flags to run variable tracking in machine
- dependent reorg instead of toplev.c.
- (ia64_reorg): Run variable tracking if wanted.
- * doc/invoke.texi: Mention variable tracking in -dV,
- add and -fvar-tracking.
- * doc/passes.texi: Added variable tracking pass.
-
- Daniel Berlin <dberlin@dberlin.org>
- * debug.h (struct gcc_debug_hooks): Added var_location debug hook.
- * dbxout.c (dbx_debug_hooks): Likewise.
- (xcoff_debug): Likewise.
- * debug.c (do_nothing_debug_hooks): Likewise.
- * dwarf2out.c (dwarf2_debug_hooks): Likewise.
- * dwarfout.c (dwarf_debug_hooks): Likewise.
- * sdbout.c (sdb_debug_hooks): Likewise.
- * vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
- * final.c (final_scan_insn): Call var_location debug hook for each
- NOTE_INSN_VAR_LOCATION.
-
-2004-02-06 Jan Hubicka <jh@suse.cz>
-
- * flow.c (update_life_info): Allocate reg_deaths when called from
- scheudler.
- (attempt_auto_inc): Update life ranges accordingly.
-
-2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- PR debug/11816
- * dwarf2out.c (gen_decl_die): Handle anonymous struct members.
-
-2004-02-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- * cfganal.c (flow_call_edges_add): Never split a libcall block.
-
-2004-02-06 Daniel Berlin <dberlin@dberlin.org>
-
- * dwarf2out.c (output_loc_list): Don't use deltas if we have
- a separate line info table in use.
- Use the correct size for terminators.
- (output_die): Use offset, not delta.
-
-2004-02-06 H.J. Lu <hongjiu.lu@intel.com>
-
- * doc/invoke.texi: Remove the pni option from -mfpmath=.
-
-2004-02-06 Jan Hubicka <jh@suse.cz>
-
- * recog.c (split_all_insns): Do not update reg info.
- * regrename.c (regrename_optimize): Likewise.
- * toplev.c (rest_of_handle_reorder_blocks): Likewise.
- * flow.c (struct propagate_block_info): Add insn_num field.
- (reg_deaths): New array.
- (life_analysis): Free reg_deaths info.
- (allocate_reg_life_data): Allocate reg_deaths array.
- (propagate_one_insn): Use new array.
- (init_propagate_block): Initialize it.
- (free_propagate_block_info): Finish compuation of
- REG_LIVE_LENGTH
- (attempt_auto_inc): Sanity check that REG_INFO is not
- computed at same time.
- (mark_used_regs): Update new array.
-
- * reg-stack.c (subst_stack_regs): Unshare clobbers before
- substitution.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/s390/s390.md (*extendsiqi2_short_displ): Change to
- *extendqisi2_short_displ.
-
-2004-02-06 Alan Modra <amodra@bigpond.net.au>
-
- * doc/tm.texi (INIT_CUMULATIVE_ARGS): Update doco.
- * calls.c (expand_call): Pass n_named_args to INIT_CUMULATIVE_ARGS.
- (emit_library_call_value_1): Likewise pass nargs.
- * expr.c (block_move_libcall_safe_for_call_parm): Pass 3 here.
- * function.c (assign_parms): Pass -1 to INIT_CUMULATIVE_ARGS.
- * config/rs6000/rs6000.c (init_cumulative_args): Use n_named_args
- parameter instead of scanning TYPE_ARGS_TYPES to count args.
- * config/rs6000/rs6000-protos.h (init_cumulative_args): Update
- prototype.
- * config/rs6000/rs6000.h (INIT_CUMULATIVE_ARGS): Pass extra arg.
- (INIT_CUMULATIVE_INCOMING_ARGS): Set extra arg to 1000.
- (INIT_CUMULATIVE_LIBCALL_ARGS): Set extra arg to 0.
- * config/sh/sh.c (sh_output_mi_thunk): Pass 1 as n_named_args to
- INIT_CUMULATIVE_ARGS.
- * config/alpha/alpha.h (INIT_CUMULATIVE_ARGS): Update.
- * config/alpha/unicosmk.h, config/alpha/vms.h, config/arc/arc.h,
- config/arm/arm.h, config/avr/avr.h, config/c4x/c4x.h,
- config/cris/cris.h, config/fr30/fr30.h, config/frv/frv.h,
- config/h8300/h8300.h, config/i386/i386.h, config/i860/i860.h,
- config/ia64/ia64.h, config/ip2k/ip2k.h, config/iq2000/iq2000.h,
- config/iq2000/iq2000.c, config/m32r/m32r.h, config/m68hc11/m68hc11.h,
- config/m68k/m68k.h, config/mcore/mcore.h, config/mips/mips.h,
- config/mmix/mmix.h, config/mn10300/mn10300.h, config/ns32k/ns32k.h,
- config/pa/pa.h, config/pdp11/pdp11.h, config/s390/s390.h,
- config/sh/sh.h, config/sparc/sparc.h, config/stormy16/stormy16.h,
- config/v850/v850.h, config/vax/vax.h, config/xtensa/xtensa.h: Likewise.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * genemit.c (gen_exp) [CONST_INT]: Use const_int_rtx whenever
- possible.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * reload1.c (eliminate_regs_in_insn): If a set has a REG_EQUAL
- note containing (plus (reg) (const_int)), where reg is an
- eliminable reg, then perform the register elimination without
- depending on eliminate_regs().
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arc/arc.c (arc_return_in_memory): Check the return
- value of int_size_in_bytes against -1. Don't check
- TREE_ADDRESSABLE.
- * config/avr/avr.c (avr_return_in_memory): Check the return
- value of int_size_in_bytes against -1.
- * config/ip2k/ip2k.c (ip2k_return_in_memory): Likewise.
- * config/m68hc11/m68hc11.c (m68hc11_return_in_memory):
- Likewise.
- * config/mcore/mcore.c (mcore_return_in_memory): Likewise.
- * config/stormy16/stormy16.c (xstormy16_return_in_memory):
- Likewise.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/frv/frv-protos.h: Remove the prototype for
- frv_setup_incoming_varargs.
- * config/frv/frv.c (TARGET_SETUP_INCOMING_VARARGS): New.
- (frv_setup_incoming_varargs): Make it static.
- * config/frv/frv.h (SETUP_INCOMING_VARARGS): Remove.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/fr30/fr30-protos.h: Remove the prototype for
- fr30_setup_incoming_varargs.
- Update the prototypes for fr30_num_arg_regs and
- fr30_function_arg_partial_nregs.
- * config/fr30/fr30.c (TARGET_STRUCT_VALUE_RTX): New.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (fr30_setup_incoming_varargs): Make it static.
- Add argument second_time. Don't do anything when second_time
- is nonzero.
- (fr30_num_arg_regs): Change the type of the first argument to
- enum machine_mode.
- (fr30_function_arg_partial_nregs): Change the type of the
- second argument to enum machine_mode.
- * config/fr30/fr30.h (STRUCT_VALUE): Remove.
- (SETUP_INCOMING_VARARGS): Remove.
-
-2004-02-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arc/arc-protos.h: Remove the prototype for
- arc_setup_incoming_varargs.
- * config/arc/arc.c (TARGET_ASM_EXTERNAL_LIBCALL): New.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (arc_setup_incoming_varargs): Make it static.
- (arc_external_libcall): Likewise.
- * config/arc/arc.h (SETUP_INCOMING_VARARGS): Remove.
- Remove the commented-out definition of
- ASM_OUTPUT_EXTERNAL_LIBCALL.
-
-2004-02-05 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
-
- * config/sh/t-linux (SHLIB_INSTALL): Prepend $$(DESTDIR)
- to $$(slibdir) in the installation commands.
-
-2004-02-05 David Edelsohn <edelsohn@gnu.org>
-
- * reload.c (refers_to_regno_for_reload_p): Index hard_regno_nregs
- with inner_regno, not regno.
- * rtlanal.c (refers_to_regno_p): Same.
-
-2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config.gcc: Remove i370 support.
-
-2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
-
- * doc/install.texi: Update automake and autoconf version
- requirements. Note where to find gcj automake version.
-
-2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (generate-manpages): Move dependencies to ...
- (man): here.
- * doc/makefile.texi: Document new targets.
- * doc/sourcebuild.texi (Make-lang.in): Document new langhooks.
-
-2004-02-05 Kelley Cook <kcook@gcc.gnu.org>
-
- PR/13485
- Makefile.in (srcextra): Add a level of indirection to ...
- (gcc.srcextra): ... here.
- (po-generated): Delete.
- (po/$(PACKAGE).pot: Use srcextra instead of po-generated. Depend on
- options.c.
- (start.encap): Remove superfluous lang.srcextra dependency.
- objc/Make-lang.in (po-generated): Delete.
-
-2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ia64/ia64.c (REG_GP): Remove.
-
-2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris5gas.h (PREFERRED_DEBUGGING_TYPE): Define.
-
-2004-02-05 Devang Patel <dpatel@apple.com>
-
- * dwarf2out.c (force_type_die): Look up input type itself
- instead of root_type() of type.
-
-2004-02-05 Andreas Krebbel <krebbel1@de.ibm.com>
-
- * config/s390/s390.md ("*tmqidi_ext"): New insn.
- ("*extendqidi2_short_displ", "*extendsiqi2_short_displ"): Old
- pre-reload splitters are transformed to post-reload
- define_insn_and_split patterns.
- ("*tmqisi_ext"): Renamed old "*tmqi_ext".
-
-2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/cris/cris.h: Replace PROMOTE_PROTOTYPES with
- TARGET_PROMOTE_PROTOTYPES.
-
-2004-02-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- PR middle-end/13750
- Revert:
- 2004-01-15 Geoffrey Keating <geoffk@apple.com>
- PR pch/13361
- * c-typeck.c (constructor_asmspec): Delete.
- (struct initializer_stack): Delete field 'asmspec'.
- (start_init): Delete saving of asmspec.
- (finish_init): Don't update constructor_asmspec.
- * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
- * stmt.c (expand_asm): Duplicate strings from tree.
- (expand_asm_operands): Likewise.
- * tree.c (tree_size): Update computation of size of STRING_CST.
- (make_node): Don't make STRING_CST nodes.
- (build_string): Allocate string with tree node.
- * tree.def (STRING_CST): Update comment.
- * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
- (tree_string): Place contents of string in tree node.
- * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
- from tree.
-
-2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * diagnostic.h (DEFINE_DIAGNOSTIC_KIND): Change parameter M to
- msgid.
-
-2004-02-05 Dorit Naishlos <dorit@il.ibm.com>
-
- * config/rs6000/altivec.md (*movv4si_internal): At least one
- operand must be altivec_register_operand.
- (*movv8hi_internal1): Likewise.
- (*movv16qi_internal1): Likewise.
- (*movv4sf_internal1): Likewise.
-
-2004-02-05 David Edelsohn <edelsohn@gnu.org>
-
- * configure.ac (gcc_cv_as_powerpc_mfcrf): Correct test for mfcr.
- * configure: Regenerate.
-
-2004-02-05 Jonathan Wakely <redi@gcc.gnu.org>
-
- * doc/install.texi: Update description of --gxx-include-dir to
- give correct default value.
-
-2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (REG_OK_FOR_BASE_NONSTRICT_P): Replace
- 8 with MAC_REG.
-
-2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/pa/pa.c (emit_hpdiv_const): Replace gen_rtx with
- gen_rtx_PARALLEL.
-
-2004-02-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * emit-rtl.c: Update the comment about the file.
-
-2004-02-05 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * sourcebuild.texi (Test Idioms): Update testcase naming
- conventions.
-
-2004-02-04 Per Bothner <per@bothner.com>
-
- Partially revert/redo 2003-10-01 change; fix -fworking-directory.
- * c-ppoutput.c (pp_dir_change): New function.
- * c-common.h (pp_dir_change): New declaration.
- * cpplib.h (struct cpp_options): Remove working_directory field.
- * cppinit.c (cpp_find_main_file, cpp_push_main_file): Merge back to
- (cpp_read_main_file): as before 10-01. Call _cpp_stack_file.
- Don't handle -fworking_directory here, but in c_common_post_options.
- (read_original_directory): Don't back up when done.
- Don't clear no-longer used working_directory flag.
- * cpplib.h: Update declarations to match.
- * c-lex.c (cb_dir_change): Move to c-opts.c.
- (init_c_lex): Don't set dir_change callback here, since we want
- to set it even if flag_preprocess_only.
- * c-opts.c (cb_dir_change): Function moved from c-lex.c.
- (c_common_post_options): Set dir_change callback.
- Call pp_dir_change if approporiate.
- (finish_options): Don't call cpp_find_main_file here. Hence remove
- unneeded parameter and result. Do LC_RENAME for <built-in>.
- (c_common_post_options): Call cpp_read_main_file here instead.
- (c_common_init): Update accordingly.
- (push_command_line_include): Don't cpp_push_main_file.
- Do LC_RENAME rather than LC_LEASE to get back to main file.
- Compared to pre-10-01 version, inline cpp_rename_to_main_file.
- (c_common_parse_file): Call cpp_read_main_file for subsequent main
- files, but call finish_options for all files.
- * c-opts.c (sanitize_cpp_opts): Don't set cpp_opts->working_directory.
- * fix-header.c (read_scan_file): Call cpp_read_main_file instead of
- cpp_find_main_file + cpp_push_main_file.
- * c-lex.c (fe_file_change): Don't set main_input_filename here.
- * opts.c (handle_options): Only set main_input_filename first time.
-
-2004-02-05 Ian Lance Taylor <ian@wasabisystems.com>
-
- * config/arm/arm.h (REG_CLASS_NAMES): Add missing comma.
-
-2004-02-04 Geoffrey Keating <geoffk@apple.com>
-
- * reload.c (find_equiv_reg): When checking for register overlap,
- don't index hard_regno_nregs with a pseudo-reg.
-
-2004-02-04 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_trampoline_template): Remove gen_rtx().
-
-2004-02-04 David Edelsohn <edelsohn@gnu.org>
-
- * reload.c (refers_to_regno_for_reload_p): Test regno, not inner_regno,
- against FIRST_PSEUDO_REGISTER.
-
-2004-02-04 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * Makefile.in: Move target, host overrides after per-language
- fragments.
-
- * config/mips/t-iris5-as (FORCE_DEBUG_ADAFLAGS): Clear.
- (GNATLIBCFLAGS): Remove -g.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.c, config/arc/arc.c, config/avr/avr.c,
- config/i386/i386.c, config/i386/i386.h, config/i386/i386.md,
- config/ia64/ia64.c, config/ia64/unwind-ia64.c,
- config/m32r/m32r.c, config/ns32k/ns32k.c, config/pa/pa.c,
- config/pdp11/pdp11.c, config/rs6000/rs6000.c,
- config/sparc/sparc.c, config/vax/vax.c: Revert the
- replacements of "FALLTHRU" with "Fall through" done in the
- previous patch.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/darwin.c, config/darwin.h, config/freebsd-spec.h,
- config/arm/arm.c, config/arm/arm.md,
- config/cris/cris-protos.h, config/fr30/fr30.c,
- config/fr30/fr30.h, config/h8300/h8300.c, config/i386/i386.h,
- config/i860/i860.c, config/i860/i860.h, config/ia64/ia64-c.c,
- config/ia64/ia64.c, config/ia64/ia64.h, config/ip2k/ip2k.h,
- config/ip2k/ip2k.md, config/ip2k/libgcc.S,
- config/m32r/linux.h, config/m32r/m32r.c, config/m32r/m32r.h,
- config/m68k/m68k.c, config/m68k/netbsd-elf.h,
- config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.md,
- config/ns32k/netbsd.h, config/ns32k/ns32k.c,
- config/ns32k/ns32k.h, config/pdp11/pdp11.h,
- config/rs6000/darwin-ldouble.c, config/s390/s390.h,
- config/s390/s390.md, config/sparc/netbsd-elf.h,
- config/sparc/openbsd.h, config/sparc/sparc.c,
- config/xtensa/lib2funcs.S: Fix comment formatting.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.c, config/arc/arc.c,
- config/arm/arm-cores.def, config/arm/arm.c, config/arm/arm.h,
- config/arm/arm1026ejs.md, config/arm/arm1136jfs.md,
- config/arm/arm926ejs.md, config/arm/vfp.md, config/avr/avr.c,
- config/c4x/c4x.c, config/cris/cris.c, config/frv/frv.md,
- config/i386/i386.c, config/i386/i386.h, config/i386/i386.md,
- config/ia64/ia64.c, config/ia64/unwind-ia64.c,
- config/iq2000/iq2000.c, config/m32r/m32r.c,
- config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
- config/ns32k/ns32k.c, config/pa/pa.c, config/pdp11/pdp11.c,
- config/rs6000/darwin-ldouble.c, config/rs6000/rs6000.c,
- config/rs6000/rs6000.h, config/sparc/sparc.c,
- config/vax/vax.c: Fix comment typos. Follow spelling
- conventions.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * alloc-pool.h, c-convert.c, c-lang.c, c-tree.h,
- caller-save.c, df.h, genconfig.c, global.c, lcm.c,
- ra-rewrite.c, ra.c, regclass.c, regs.h, resource.c,
- sched-rgn.c, config/arm/aof.h, config/arm/cirrus.md,
- config/arm/fpa.md, config/arm/iwmmxt.md,
- config/arm/netbsd-elf.h, config/arm/netbsd.h,
- config/m68hc11/m68hc11.md, config/mips/iris5.h,
- config/mn10300/mn10300.md, config/rs6000/altivec.md,
- config/sparc/netbsd-elf.h: Update copyright.
-
-2004-02-04 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
- for all modes whose size is greater than 8 bytes if ARCH32.
- (sparc_va_arg): Handle all modes whose size is greater than 8 bytes
- by reference if ARCH32.
-
-2004-02-04 Aldy Hernandez <aldyh@redhat.com>
-
- * cgraphunit.c (cgraph_postorder): Fix typo in comment.
-
-2004-02-04 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*la_64" + peepholes, "reload_indi"): Move
- to before adddi3 insn patterns.
- ("*la_31" + peepholes, "*la_31_and", "*la_31_and_cc", "force_la_31",
- "reload_insi"): Move to before addsi3 insn patterns.
-
-2004-02-04 Mark Mitchell <mark@codesourcery.com>
-
- * calls.c (initialize_argument_information): Add CALL_FROM_THUNK_P
- parameter. Use it instead of current_function_is_thunk.
- * function.h (struct function): Update documentation for is_thunk.
- * tree.h (CALL_FROM_THUNK_P): New macro.
- * config/alpha/alpha.c (alpha_sa_mask): Do not check
- no_new_pseudos when testing current_function_is_thunk.
- * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Likeiwse.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/tm.texi: Replace SETUP_INCOMING_VARARGS with
- TARGET_SETUP_INCOMING_VARARGS.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * emit-rtl.c (gen_rtx): Remove.
- * genattrtab.c: Don't mention gen_rtx in a comment.
- * rtl.h: Remove the prototype for gen_rtx.
- * doc/md.texi: Replace gen_rtx with gen_rtx_REG.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arc/arc.h, config/fr30/fr30.h
- (SETUP_INCOMING_VARARGS): Remove the target-independent
- comments.
- * doc/tm.texi: Don't mention deprecated target macros.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/fr30/fr30.h (FUNCTION_VALUE): Remove the
- target-independent comment.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/interface.texi, doc/tm.texi, doc/trouble.texi: Don't
- mention deprecated target macros.
-
-2004-02-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config.gcc: Remove obsolete ports and configurations.
- * config/linux-aout.h, config/netware.h,
- config/t-linux-gnulibc1, config/d30v/abi,
- config/d30v/d30v-protos.h, config/d30v/d30v.c,
- config/d30v/d30v.h, config/d30v/d30v.md,
- config/d30v/libgcc1.asm, config/d30v/t-d30v,
- config/dsp16xx/dsp16xx-modes.def,
- config/dsp16xx/dsp16xx-protos.h, config/dsp16xx/dsp16xx.c,
- config/dsp16xx/dsp16xx.h, config/dsp16xx/dsp16xx.md,
- config/i370/README, config/i370/i370-c.c,
- config/i370/i370-protos.h, config/i370/i370.c,
- config/i370/i370.h, config/i370/i370.md, config/i370/linux.h,
- config/i370/mvs.h, config/i370/oe.h, config/i370/t-i370,
- config/i386/freebsd-aout.h, config/i386/linux-aout.h,
- config/i386/moss.h, config/i386/netware.h,
- config/i386/svr3.ifile, config/i386/svr3dbx.h,
- config/i386/svr3gas.h, config/i386/svr3z.ifile,
- config/i386/t-udk, config/i386/udk.h, config/i386/vsta.h,
- config/i960/i960-c.c, config/i960/i960-coff.h,
- config/i960/i960-modes.def, config/i960/i960-protos.h,
- config/i960/i960.c, config/i960/i960.h, config/i960/i960.md,
- config/i960/rtems.h, config/i960/t-960bare,
- config/m68k/hp310.h, config/m68k/hp320.h,
- config/m68k/hp320base.h, config/m68k/m68kv4.h,
- config/m68k/netbsd.h, config/m68k/sgs.h, config/m68k/t-hp320:
- Remove.
- * doc/extend.texi, doc/install.texi, doc/invoke.texi,
- doc/md.texi: Remove mentions of obsolete ports.
-
-2004-02-04 Jan Hubicka <jh@suse.cz>
-
- * alias.c (find_base_term, get_addr): Do not dereference NULL
- pointer when all VALUE's locations has been invalidated.
- (rtx_equal_for_memref_p): Simplify checking of VALUEs.
-
-2004-02-03 Wolfgang Bangerth <bangerth@dealii.org>
-
- * doc/invoke.texi (x86 options): Fix spelling/wording.
-
-2004-02-03 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/iris5.h (ASM_OUTPUT_ASCII): Use mips_output_ascii to
- put the original string in a comment.
- * config/mips/mips-protos.h (mips_output_ascii): Add prefix argument.
- * config/mips/mips.c (mips_output_ascii): Likewise.
- * config/mips/mips.h (ASM_OUTPUT_ASCII): Adjust accordingly.
-
-2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (GIV_SORT_CRITERION): Poison.
- * config/avr/avr.h (GIV_SORT_CRITERION): Remove.
- * config/ip2k/ip2k.h (GIV_SORT_CRITERION): Likewise.
-
-2004-02-03 Roger Sayle <roger@eyesopen.com>
-
- PR target/9348
- * expr.c (expand_expr_real) <MULT_EXPR>: When performing widening
- multiplies with a multiplication of the wrong signedness, its the
- signedness of the multiplication that we've performed that needs to
- be passed to expand_mult_highpart_adjust. Avoid emitting a nop-move
- if expand_mult_highpart_adjust places the result in target.
-
-2004-02-03 Richard Henderson <rth@redhat.com>
-
- * varasm.c (const_desc_rtx_sym_eq): Compare symbol strings.
-
-2004-02-03 J"orn Rennecke <joern.rennecke@superh.com>
-
- * config.gcc (sh[234]l): Use little endian fragments.
-
-2004-02-03 Paul Koning <pkoning@equallogic.com>
-
- * config/pdp11/pdp11-modes.def: Add RESET_FLOAT_FORMAT calls.
- * config/pdp11/pdp11-protos.h (legitimate_const_double_p): Add.
- * config/pdp11/pdp11.c (encode_pdp11_f, decode_pdp11_f,
- encode_pdp11_d, decode_pdp11_d): New functions to handle PDP11
- floating point format.
- (pdp11_f_format, pdp11_d_format): New real_format descriptors for
- the above functions.
- (output_move_quad): Output float values in correct target format.
- (legitimate_const_double_p): New function.
- * config/pdp11/pdp11.h: Fix typos.
- (FLOAT_WORDS_BIG_ENDIAN): Add definition.
- (TARGET_FLOAT_FORMAT): Ditto.
- (pdp11_f_format, pdp11_d_format): Add external declarations.
- (MAX_REGS_PER_ADDRESS): Corrected.
- (LEGITIMATE_CONSTANT_P): Use legitimate_const_double_p().
- (PRINT_OPERAND): Output float literals in target format.
-
-2004-02-03 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/13975
- * tree.h (enum tree_index): Add TI_PUBLIC, TI_PROTECTED, and
- TI_PRIVATE.
- (access_public_node): Redefine.
- (access_protected_node): Likewise.
- (access_private_node): Likewise.
- * tree.c (build_common_tree_nodes): Create access_public_node,
- access_protected_node, and access_private_node.
-
-2004-02-03 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.h (MASK_INLINE_INT_DIV_LAT): Change value.
- (MASK_INLINE_INT_DIV_THR): Ditto.
- (MASK_INLINE_SQRT_LAT): Ditto.
- (MASK_INLINE_SQRT_THR): Ditto.
- (MASK_DWARF2_ASM): Ditto.
- (MASK_EARLY_STOP_BITS): Ditto.
-
-2004-02-02 Paul Brook <paul@codesourcery.com>
-
- Merge from csl-arm-branch.
-
- 2004-01-30 Paul Brook <paul@codesourcery.com>
-
- * aof.h (REGISTER_NAMES): Add vfp reg names
- (ADDITIONAL_REGISTER_NAMES): Ditto.
- * aout.h (REGISTER_NAMES): Ditto.
- (ADDITIONAL_REGISTER_NAMES): Ditto.
- * arm-protos.h: Update/Add Prototypes.
- * arm.c (init_fp_table): Rename from init_fpa_table. Update users.
- Only allow 0.0 for VFP.
- (fp_consts_inited): Rename from fpa_consts_inited. Update users.
- (values_fp): Rename from values_fpa. Update Users.
- (arm_const_double_rtx): Rename from const_double_rtx_ok_for_fpa.
- Update users. Only check valid constants for this hardware.
- (arm_float_rhs_operand): Rename from fpa_rhs_operand. Update Users.
- Only allow consts for FPA.
- (arm_float_add_operand): Rename from fpa_add_operand. Update users.
- Only allow consts for FPA.
- (use_return_insn): Check for saved VFP regs.
- (arm_legitimate_address_p): Handle VFP DFmode addressing.
- (arm_legitimize_address): Ditto.
- (arm_general_register_operand): New function.
- (vfp_mem_operand): New function.
- (vfp_compare_operand): New function.
- (vfp_secondary_reload_class): New function.
- (arm_float_compare_operand): New function.
- (vfp_print_multi): New function.
- (vfp_output_fstmx): New function.
- (vfp_emit_fstm): New function.
- (arm_output_epilogue): Output VPF reg restore code.
- (arm_expand_prologue): Output VFP reg save code.
- (arm_print_operand): Add 'P'.
- (arm_hard_regno_mode_ok): Return modes for VFP regs.
- (arm_regno_class): Return classes for VFP regs.
- (arm_compute_initial_elimination_offset): Include space for VFP regs.
- (arm_get_frame_size): Ditto.
- * arm.h (FIXED_REGISTERS): Add VFP regs.
- (CALL_USED_REGISTERS): Ditto.
- (CONDITIONAL_REGISTER_USAGE): Enable VFP regs.
- (FIRST_VFP_REGNUM): Define.
- (LAST_VFP_REGNUM): Define.
- (IS_VFP_REGNUM): Define.
- (FIRST_PSEUDO_REGISTER): Include VFP regs.
- (HARD_REGNO_NREGS): Handle VFP regs.
- (REG_ALLOC_ORDER): Add VFP regs.
- (enum reg_class): Add VFP_REGS.
- (REG_CLASS_NAMES): Ditto.
- (REG_CLASS_CONTENTS): Ditto.
- (CANNOT_CHANGE_MODE_CLASS) Handle VFP Regs.
- (REG_CLASS_FROM_LETTER): Add 'w'.
- (EXTRA_CONSTRAINT_ARM): Add 'U'.
- (EXTRA_MEMORY_CONSTRAINT): Define.
- (SECONDARY_OUTPUT_RELOAD_CLASS): Handle VFP regs.
- (SECONDARY_INPUT_RELOAD_CLASS): Ditto.
- (REGISTER_MOVE_COST): Ditto.
- (PREDICATE_CODES): Add arm_general_register_operand,
- arm_float_compare_operand and vfp_compare_operand.
- * arm.md (various): Rename as above.
- (divsf3): Enable when TARGET_VFP.
- (divdf3): Ditto.
- (movdfcc): Ditto.
- (sqrtsf2): Ditto.
- (sqrtdf2): Ditto.
- (arm_movdi): Disable when TARGET_VFP.
- (arm_movsi_insn): Ditto.
- (movsi): Only split with general regs.
- (cmpsf): Use arm_float_compare_operand.
- (push_fp_multi): Restrict to TARGET_FPA.
- (vfp.md): Include.
- * vfp.md: New file.
- * fpa.md (various): Rename as above.
- * doc/md.texi: Document ARM w and U constraints.
-
- 2004-01-15 Paul Brook <paul@codesourcery.com>
-
- * config.gcc: Add with_fpu. Allow with-float=softfp.
- * config/arm/arm.c (arm_override_options): Rename *-s to *s.
- Break out of loop when we find a float-abi. Fix typo.
- * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "fpu".
- Set -mfloat-abi=.
- * doc/install.texi: Document --with-fpu.
-
- 2003-01-14 Paul Brook <paul@codesourcery.com>
-
- * config.gcc (with_arch): Add armv6.
- * config/arm/arm.h: Rename TARGET_CPU_*_s to TARGET_CPU_*s.
- * config/arm/arm.c (arm_overrride_options): Ditto.
-
- 2004-01-08 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (FL_ARCH3M): Renamed from FL_FAST_MULT.
- (FL_ARCH6): Renamed from FL_ARCH6J.
- (arm_arch3m): Renamed from arm_fast_multiply.
- (arm_arch6): Renamed from arm_arch6j.
- * arm.h: Update all uses of above.
- * arm-cores.def: Likewise.
- * arm.md: Likewise.
-
- * arm.h (CPP_CPU_ARCH_SPEC): Emit __ARM_ARCH_6J__ define for armV6j,
- not arm6j. Add entry for arch armv6.
-
- 2004-01-07 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_emit_extendsi): Delete.
- * arm-protos.h (arm_emit_extendsi): Delete.
- * arm.md (zero_extendhisi2): Also handle zero-extension of
- non-subregs.
- (zero_extendqisi2, extendhisi2, extendqisi2): Likewise.
- (thumb_zero_extendhisi2): Only match if not v6.
- (arm_zero_extendhisi2, thumb_zero_extendqisi2, arm_zero_extendqisi2)
- (thumb_extendhisi2, arm_extendhisi2, arm_extendqisi)
- (thumb_extendqisi2): Likewise.
- (thumb_zero_extendhisi2_v6, arm_zero_extendhisi2_v6): New patterns.
- (thumb_zero_extendqisi2_v6, arm_zero_extendqisi2_v6): New patterns.
- (thumb_extendhisi2_insn_v6, arm_extendhisi2_v6): New patterns.
- (thumb_extendqisi2_v6, arm_extendqisi_v6): New patterns.
- (arm_zero_extendhisi2_reg, arm_zero_extendqisi2_reg): Delete.
- (arm_extendhisi2_reg, arm_extendqisi2_reg): Delete.
- (arm_zero_extendhisi2addsi): Remove subreg. Add attributes.
- (arm_zero_extendqisi2addsi, arm_extendhisi2addsi): Likewise.
- (arm_extendqisi2addsi): Likewise.
-
- 2003-12-31 Mark Mitchell <mark@codesourcery.com>
-
- Revert this change:
- * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG
- + REG addressing modes.
-
- * config/arm/arm.h (THUMB_LEGTITIMIZE_RELOAD_ADDRESS): Reload REG
- + REG addressing modes.
-
- 2003-12-30 Mark Mitchell <mark@codesourcery.com>
-
- * config/arm/arm.h (THUMB_LEGITIMATE_CONSTANT_P): Accept
- CONSTANT_P_RTX.
-
- 2003-30-12 Paul Brook <paul@codesourcery.com>
-
- * longlong.h: protect arm inlines with !defined (__thumb__)
-
- 2003-30-12 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__.
-
- 2003-12-30 Nathan Sidwell <nathan@codesourcery.com>
-
- * builtins.c (expand_builtin_apply_args_1): Fix typo in previous
- change.
-
- 2003-12-29 Nathan Sidwell <nathan@codesourcery.com>
-
- * builtins.c (expand_builtin_apply_args_1): Add pretend args size
- to the virtual incoming args pointer for downward stacks.
-
- 2003-12-29 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm-cores.def: Add cost function.
- * config/arm/arm.c (arm_*_rtx_costs): New functions.
- (arm_rtx_costs): Remove
- (struct processors): Add rtx_costs field.
- (all_cores, all_architectures): Ditto.
- (arm_override_options): Set targetm.rtx_costs.
- (thumb_rtx_costs): New function.
- (arm_rtx_costs_1): Remove cases handled elsewhere.
- * config/arm/arm.h (processor_type): Add COSTS parameter.
-
- 2003-12-29 Nathan Sidwell <nathan@codesourcery.com>
-
- * config/arm/arm.md (generic_sched): arm926 has its own scheduler.
- (arm926ejs.md): Include it.
- * config/arm/arm926ejs.md: New pipeline description.
-
- 2003-12-24 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_arch6j): New variable.
- (arm_override_options): Set it.
- (arm_emit_extendsi): New function.
- * config/arm/arm-protos.h (arm_emit_extendsi): Add prototype.
- * config/arm/arm.h (arm_arch6j): Declare.
- * config/arm/arm.md: Add sign/zero extend insns.
-
- 2003-12-23 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (all_architectures): Add armv6.
- * doc/invoke.texi: Document it.
-
- 2003-12-19 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.md: Add load1 and load_byte "type" attrs. Modify
- insn patterns to match.
- * config/arm/arm-generic.md: Ditto.
- * config/arm/cirrus.md: Ditto.
- * config/arm/fpa.md: Ditto.
- * config/amm/iwmmxt.md: Ditto.
- * config/arm/arm1026ejs.md: Ditto.
- * config/arm/arm1135jfs.md: Ditto. Add insn_reservation and bypasses
- for 11_loadb.
-
- 2003-12-18 Nathan Sidwell <nathan@codesourcery.com>
-
- * config/arm/arm-protos.h (arm_no_early_alu_shift_value_dep): Declare.
- * config/arm/arm.c (arm_adjust_cost): Check shift cost for
- TYPE_ALU_SHIFT and TYPE_ALU_SHIFT_REG.
- (arm_no_early_store_addr_dep, arm_no_early_alu_shift_dep,
- arm_no_early_mul_dep): Correctly deal with conditional execution,
- parallels and single shift operations.
- (arm_no_early_alu_shift_value_dep): Define.
- * arm.md (attr type): Replace 'normal' with 'alu',
- 'alu_shift' and 'alu_shift_reg'.
- (attr core_cycles): Adjust.
- (*addsi3_carryin_shift, andsi_not_shiftsi_si, *arm_shiftsi3,
- *shiftsi3_compare0, *notsi_shiftsi, *notsi_shiftsi_compare0,
- *not_shiftsi_compare0_scratch, *cmpsi_shiftsi, *cmpsi_shiftsi_swp,
- *cmpsi_neg_shiftsi, *arith_shiftsi, *arith_shiftsi_compare0,
- *arith_shiftsi_compare0_scratch, *sub_shiftsi,
- *sub_shiftsi_compare0, *sub_shiftsi_compare0_scratch,
- *if_shift_move, *if_move_shift, *if_shift_shift): Set type
- attribute appropriately.
- * config/arm/arm1026ejs.md (alu_op): Adjust.
- (alu_shift_op, alu_shift_reg_op): New.
- * config/arm/arm1136.md: Add better bypasses for early
- registers. Remove load[234] and store[234] bypasses.
- (11_alu_op): Adjust.
- (11_alu_shift_op, 11_alu_shift_reg_op): New.
-
- 2003-12-15 Nathan Sidwell <nathan@codesourcery.com>
-
- * config/arm/arm-protos.h (arm_no_early_store_addr_dep,
- arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Declare.
- * config/arm/arm.c (arm_no_early_store_addr_dep,
- arm_no_early_alu_shift_dep, arm_no_early_mul_dep): Define.
- * config/arm/arm1026ejs.md: Add load-store bypass.
- * config/arm/arm1136jfs.md (11_alu_op): Take 2 cycles.
- Add bypasses between instructions.
-
- 2003-12-10 Paul Brook <paul@codesourcery.com>
-
- * config/arm/arm.c (arm_fpu_model): New variable.
- (arm_fload_abi): New variable.
- (target_fpe_name): Rename from target_fp_name.
- (target_fpu_name): New variable.
- (arm_is_cirrus): Remove.
- (fpu_desc): New struct.
- (all_fpus): Define.
- (pf_model_for_fpu): Define.
- (all_loat_abis): Define.
- (arm_override_options): Set fp arch flags based on -mfpu=
- and -float-abi=.
- (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM.
- (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM.
- (*): Use new TARGET_* flags.
- * config/arm/arm.h (TARGET_ANY_HARD_FLOAT): Remove.
- (TARGET_HARD_FLOAT): No longer implies TARGET_FPA.
- (TARGET_SOFT_FLOAT): Ditto.
- (TARGET_SOFT_FLOAT_ABI): New.
- (TARGET_MAVERICK): Rename from TARGET_CIRRUS. No longer implies
- TARGET_HARD_FLOAT.
- (TARGET_VFP): No longer implies TARGET_HARD_FLOAT.
- (TARGET_OPTIONS): Add -mfpu=.
- (FIRST_FPA_REGNUM): Rename from FIRST_ARM_FP_REGNUM.
- (LAST_FPA_REGNUM): Rename from LAST_ARM_FP_REGNUM.
- (arm_pf_model): Define.
- (arm_float_abi_type): Define.
- (fputype): Add FPUTYPE_VFP. Change SOFT_FPA->NONE
- * config/arm/arm.md: Use new TARGET_* flags.
- * config/arm/cirrus.md: Ditto.
- * config/arm/fpa.md: Ditto.
- * config/arm/elf.h (ASM_SPEC): Pass -mfloat-abi= and -mfpu=.
- * config/arm/semi.h (ASM_SPEC): Ditto.
- * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Specify vfp.
- (FPUTYPE_DEFAULT): Set to VFP.
- * doc/invoke.texi: Document -mfpu= and -mfloat-abi=.
-
- 2003-11-22 Phil Edwards <phil@codesourcery.com>
-
- PR target/12476
- * config/arm/arm.c (arm_output_mi_thunk): In Thumb mode, use
- 'bx' instead of 'b' to avoid branch range restrictions. Output
- the thunk immediately before the thunked-to function.
- * config/arm/arm.h (ARM_DECLARE_FUNCTION_NAME): Do not emit
- .thumb_func if a thunk is being generated. Emit .code 16 along
- with .thumb_func if a thunk is not being generated.
-
- 2003-11-15 Nicolas Pitre <nico@cam.org>
-
- * config/arm/arm.md (ashldi3, arm_ashldi3_1bit, ashrdi3,
- arm_ashrdi3_1bit, lshrdi3, arm_lshrdi3_1bit): New patterns.
- * config/arm/iwmmxt.md (ashrdi3_iwmmxt): Renamed from ashrdi3.
- (lshrdi3_iwmmxt): Renamed from lshrdi3.
- * config/arm/arm.c (IWMMXT_BUILTIN2): Renamed argument accordingly.
-
- 2003-11-12 Steve Woodford <scw@wasabisystems.com>
- Ian Lance Taylor <ian@wasabisystems.com>
-
- * config/arm/lib1funcs.asm (ARM_DIV_BODY, ARM_MOD_BODY): Add new
- code for __ARM_ARCH__ >= 5 && ! defined (__OPTIMIZE_SIZE__).
-
- 2003-11-05 Phil Edwards <phil@codesourcery.com>
-
- * config/arm/arm.md (insn): Add new V6 instruction names.
- (generic_sched): New attr.
- * config/arm/arm-generic.md: Use generic_sched here.
- * config/arm/arm1026ejs.md: Do not model fetch/issue/decode
- stages of pipeline. Adjust latency counts accordingly.
- * config/arm/arm1136jfs.md: New file.
-
- 2003-10-28 Mark Mitchell <mark@codesourcery.com>
-
- * config/arm/arm.h (processor_type): New enumeration type.
- (CPP_ARCH_DEFAULT_SPEC): Set appropriately for ARM 926EJ-S,
- ARM1026EJ-S, ARM1136J-S, and ARM1136JF-S processor cores.
- (CPP_CPU_ARCH_SPEC): Likewise.
- * config/arm/arm.c (arm_tune): New variable.
- (all_cores): Use cores.def.
- (all_architectures): Add representative processor.
- (arm_override_options): Restructure way in which tuning
- information is deduced.
- * arm.md: Update "insn" and "type" attributes throughout.
- (insn): New attribute.
- (type): Compute "mult" from "insn" attribute. Add load2,
- load3, load4 alternatives.
- (arm automaton): Move to arm-generic.md.
- * config/arm/arm-cores.def: New file.
- * config/arm/arm-generic.md: Likewise.
- * config/arm/arm1026ejs.md: Likewise.
-
-2004-02-03 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/invoke.texi (SPARC options): Remove -mflat and
- all -mxxx (xxx:chip) options.
- * config/sparc/aout.h (DBX_REGISTER_NUMBER): Delete.
- * config/sparc/litecoff.h (DBX_REGISTER_NUMBER): Likewise.
- * config/sparc/netbsd-elf.h (DBX_REGISTER_NUMBER): Likewise.
- * config/sparc/sol2.h (DBX_REGISTER_NUMBER): Likewise.
- * config/sparc/sparc-protos.h: Delete sparc_flat_* prototypes.
- * config/sparc/sparc.c: Likewise.
- (sparc_output_function_prologue): Remove TARGET_FLAT handling.
- (sparc_nonflat_function_prologue): Rename into sparc_function_prologue.
- (sparc_output_function_epilogue): Remove TARGET_FLAT handling.
- (sparc_nonflat_function_epilogue): Rename into sparc_function_epilogue.
- (struct sparc_frame_info, current_frame_info, zero_frame_info): Delete.
- (sparc_flat_must_save_register_p): Likewise.
- (sparc_flat_compute_frame_size): Likewise.
- (sparc_flat_save_restore): Likewise.
- (sparc_flat_function_prologue): Likewise.
- (sparc_flat_function_epilogue): Likewise.
- (sparc_flat_epilogue_delay_slots): Likewise.
- (sparc_flat_eligible_for_epilogue_delay): Likewise.
- (sparc_function_ok_for_sibcall): Remove TARGET_FLAT handling.
- * config/sparc/sparc.h (MASK_FLAT, TARGET_FLAT): Delete.
- (TARGET_SWITCHES): Remove -mflat and all -mxxx (xxx:chip) options.
- (SPARC_INCOMING_INT_ARG_FIRST): Remove TARGET_FLAT handling.
- (CONDITIONAL_REGISTER_USAGE): Likewise.
- (FRAME_POINTER_REQUIRED): Likewise.
- (INITIAL_ELIMINATION_OFFSET): Likewise.
- (BASE_RETURN_VALUE_REG): Likewise.
- (BASE_OUTGOING_VALUE_REG): Likewise.
- (BASE_PASSING_ARG_REG): Likewise.
- (BASE_INCOMING_ARG_REG): Likewise.
- (INCOMING_REGNO): Likewise.
- (OUTGOING_REGNO): Likewise.
- (LOCAL_REGNO): Likewise.
- (DELAY_SLOTS_FOR_EPILOGUE): Likewise.
- (ELIGIBLE_FOR_EPILOGUE_DELAY): Likewise.
- (EPILOGUE_USES): Likewise.
- * config/sparc/sparc.md ("isa" attribute): Change "v6" into "v7".
- ("flat" attribute): Delete.
- (do_builtin_setjmp_setup): Remove TARGET_FLAT and "flat" attribute
- handling.
- (call followed by jump define_peephole's): Delete.
- (exception_receiver): Likewise.
- (builtin_setjmp_receiver): Likewise.
- * config/sparc/t-sparclite (MULTILIB_OPTIONS): Remove -mflat.
-
-2004-02-03 Paolo Bonzini <bonzini@gnu.org>
-
- PR c/11658
- PR c/13994
- * Makefile.in (c-parse.o, c-convert.o, c-typeck.o): Depend
- on langhooks.h.
- * objc/Make-lang.in (objc-parse.o): Depend on langhooks.h.
- * c-parse.in, c-convert.c, c-typeck.c, objc/objc-act.c:
- Include langhooks.h. Replace c_common_truthvalue_conversion
- with the truthvalue_conversion language hook throughout.
- (expr_no_commas): Call default_conversion before save_expr
- for the first term of the production 'x ? : y'.
- * c-common.c (c_common_truthvalue_conversion): Remove
- obsolete block. Invoke recursively the hook instead
- of this function.
- * c-convert.c (convert): handle ERROR_MARK_NODE.
- * c-typeck.c (build_binary_op): handle ERROR_MARK_NODE
- returned by the truthvalue_conversion language hook.
- * c-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use
- c_objc_common_truthvalue_conversion.
- * c-objc-common.c (c_objc_common_truthvalue_conversion):
- New function.
- * c-tree.h (c_objc_common_truthvalue_conversion): Declare it.
- * objc/objc-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Use
- c_objc_common_truthvalue_conversion.
-
-2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/c4x/c4x.h (FUNCTION_VALUE): Use gen_rtx_REG instead
- of gen_rtx.
- (LIBCALL_VALUE): Likewise.
- * config/ip2k/ip2k.c (mdr_try_propagate_clr_sequence): Use
- gen_rtx_CC0 instead of gen_rtx.
- * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use
- gen_rtx_fmt_e and gen_rtx_fmt_ee instead of gen_rtx.
- (m68hc11_expand_compare): Use gen_rtx_fmt_ee instead of
- gen_rtx.
- (m68hc11_emit_logical): Likewise.
-
-2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.c, config/arm/arm.c, config/c4x/c4x.c,
- config/fr30/fr30.md, config/frv/frv.c, config/frv/frv.md,
- config/h8300/h8300.c, config/ia64/ia64.c, config/ip2k/ip2k.md,
- config/m32r/m32r.md, config/m68hc11/m68hc11.c,
- config/mips/mips.md, config/mmix/mmix.c,
- config/mn10300/mn10300.c, config/mn10300/mn10300.md,
- config/ns32k/ns32k.c, config/pa/pa.md, config/pdp11/pdp11.c,
- config/rs6000/altivec.md, config/s390/s390.c,
- config/s390/s390.h, config/s390/s390.md, config/sh/sh.c,
- config/sh/sh.h, config/sh/sh.md, config/stormy16/stormy16.c:
- Use const0_rtx instead of GEN_INT (0). Do the same for other
- constants that are readily available.
-
-2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * doloop.c, optabs.c, regmove.c, sched-deps.c,
- config/i386/i386.c, config/i386/i386.md: Use const0_rtx
- instead of GEN_INT (0). Do the same for other constants that
- are readily available.
-
-2004-02-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c (simplify_set): Use gen_rtx_fmt_e instead of
- gen_rtx.
- * emit-rtl.c (init_emit_once): Use gen_rtx_PC and gen_rtx_CC0
- instead of gen_rtx.
- * reload1.c (init_elim_table): Use gen_rtx_fmt_e instead of
- gen_rtx.
- * config/ns32k/ns32k.md (udivmodhi4): Use gen_rtx_IOR and
- gen_rtx_ASHIFT instead of gen_rtx.
- (udivmodqi4): Likewise.
-
-2004-02-02 Richard Henderson <rth@redhat.com>
-
- PR target/13789
- * expr.c (store_expr): Use force_operand before emit_move_insn.
-
-2004-02-02 Jeff Law <law@redhat.com>
- Roger Sayle <roger@eyesopen.com>
-
- * tree.c (commutative_tree_code, associative_tree_code): New
- functions.
- (iterative_hash_expr): Use commutative_tree_code.
- * tree.h (commutative_tree_code, associative_tree_code): Declare.
- * fold-const.c (operand_equal_p): Use commutative_tree_code
- rather than inlining the commutativity check.
- (fold): Likewise.
-
-2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Poison.
- * config/frv/frv-protos.h: Remove the prototype for
- frv_function_arg_keep_as_reference.
- * config/frv/frv.c (frv_function_arg_keep_as_reference):
- Remove.
- * config/frv/frv.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Likewise.
- * config/stormy16/stormy16.h: Remove the commented-out
- definition of FUNCTION_ARG_KEEP_AS_REFERENCE.
-
-2004-02-03 Alan Modra <amodra@bigpond.net.au>
-
- PR target/13914
- * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Use ap
- for retaddr_column.
-
-2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * genemit.c (gen_exp): Generate gen_rtx_fmt_e* instead of
- gen_rtx.
-
-2004-02-02 Eric Christopher <echristo@redhat.com>
- Zack Weinberg <zack@codesourcery.com>
-
- * c-opts.c (c_common_handle_option): Add -finput-charset.
- * c.opt: Ditto.
- * cppcharset.c (one_iso88591_to_utf8): Remove.
- (convert_iso88591_utf8): Ditto.
- (conversion_tab): Remove 8859-1 converter.
- (_cpp_input_to_utf8): Remove.
- (_cpp_init_iconv_buffer): Ditto.
- (_cpp_close_iconv_buffer): Ditto.
- (_cpp_convert_input): New function.
- (_cpp_default_encoding): Ditto.
- * cpphash.h: Add/remove prototypes for above.
- * cppfiles.c (read_file_guts): Use _cpp_convert_input.
- * cppinit.c (cpp_create_reader): Use _cpp_default_encoding
- for narrow execution and input character sets.
- * cpplib.c (cpp_push_buffer): Delete uses of removed functions.
- * doc/cppopts.texi: Document -finput-charset.
-
-2004-02-02 David Edelsohn <edelsohn@gnu.org>
-
- * rtlanal.c (refers_to_regno_p): Test regno, not inner_regno,
- against FIRST_PSEUDO_REGISTER.
-
-2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/invoke.texi (SPARC options): Further improve.
-
-2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arm/arm.md, config/c4x/c4x.md, config/cris/cris.md,
- config/h8300/h8300.c, config/ip2k/ip2k.md,
- config/iq2000/iq2000.c, config/mips/mips.c,
- config/rs6000/rs6000.c, config/rs6000/rs6000.md,
- config/sh/sh.c, config/sh/sh.md, config/stormy16/stormy16.c,
- config/v850/v850.md: Fix indentation.
-
-2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_slotno): Align TImode
- arguments on a 16-byte boundary in the parameter array if ARCH64.
- Split handling of TFmode.
-
-2004-02-02 Paolo Bonzini <bonzini@gnu.org>
-
- * rtlanal.c (reg_overlap_mentioned_p) [!ENABLE_CHECKING]:
- Don't test CONSTANT_P (x).
- (reg_overlap_mentioned_p): Merge check for STRICT_LOWPART,
- ZERO_EXTRACT, SIGN_EXTRACT with the switch statement.
- Fix misindentation.
-
-2004-02-02 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/invoke.texi (SPARC options): Document that -mflat is deprecated.
-
-2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arc/arc.md, config/arm/arm.c, config/arm/arm.md,
- config/c4x/c4x.c, config/c4x/c4x.md, config/cris/cris.md,
- config/frv/frv.c, config/h8300/h8300.c, config/ip2k/ip2k.md,
- config/iq2000/iq2000.c, config/m32r/m32r.c,
- config/mcore/mcore.c, config/mips/mips.c, config/mmix/mmix.md,
- config/mn10300/mn10300.c, config/rs6000/rs6000.c,
- config/rs6000/rs6000.md, config/sh/sh.c, config/sh/sh.md,
- config/stormy16/stormy16.c, config/v850/v850.md,
- config/xtensa/xtensa.c: Replace gen_rtx with gen_rtx_fmt_e*.
-
-2004-02-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mcore/mcore.c (block_move_sequence): Replace
- gen_rtx_CONST_INT with GEN_INT.
-
-2004-02-02 Jan Hubicka <jh@suse.cz>
-
- * alias.c (record_set): Use hard_regno_nregs.
- * bt-load.c (find_btr_reference, note_btr_set): Likewise.
- * builtins.c (apply_args_size): Likewise.
- * caller-save.c (setup_save_areas, save_call_clobbered_regs,
- mark_set_regs, add_stored_regs, mark_referenced_regs,
- insert_restore, insert_save, insert_one_insn): Likewise.
- * cfgcleanup.c: Include regs.h
- (mark_effect, mentions_nonequal_regs): Likewise.
- * cfgrtl.c (mark_killed_regs): Likewise
- * combine.c (update_table_tick, record_value_for_reg,
- record_dead_and_set_regs, get_last_value_validate, use_crosses_set_p,
- reg_dead_at_p_1, reg_dead_at_p, mark_used_regs_combine, move_deaths,
- reg_bitfield_target_p, distribute_notes): Likewise.
- * cse.c (mention_regs, insert, invalidate, invalidate_for_call,
- exp_equiv_p, cse_insn): Likewise.
- * cselib.c (cselib_lookup): Likewise.
- (cselib_invalidate_regno, cselib_record_set): Likewise.
- * df.c (df_ref_record): Likewise.
- * dwarf2out.c (reg_loc_descriptor, multiple_reg_loc_descriptor):
- Likewise.
- * flow.c (mark_reg, insn_dead_p, mark_set_1, mark_used_reg,
- count_or_remove_death_notes_bb): Likewise.
- * function.c (aggregate_value_p, keep_stack_depressed): Likewise.
- * gloval.c (global_alloc, find_reg, mark_reg_store, mark_reg_conflicts,
- mark_reg_death, set_preference, reg_becomes_live, reg_dies): Likewise.
- * integrate.c (mark_stores): Likewise.
- * jump.c (delete_prior_computation): Likewise.
- * lcm.c (reg_dies, reg_becomes_live): Likewise.
- * local-alloc.c (combine_regs, find_free_reg, post_mark_life): Likewise.
- * loop.c (LOOP_REGNO_NREGS): Likewise.
- * postreload.c (reload_combine, reload_combine_note_store,
- reload_combine_note_use, reload_cse_move2add, move2add_note_store): Likewise.
- * ra-colorize.c (combine, color_usable_p, get_free_reg,
- calculate_dont_begin, calculate_dont_begin, colorize_one_web,
- try_recolor_web, insert_coalesced_conflicts, check_colors,
- break_precolored_alias): Likewise.
- * ra-debug.c: Include regs.h
- (ra_print_rtx_object): Likewise.
- * ra-rewrite (choose_spill_colors): Likewise.
- (spill_same_color_p, update_spill_colors, spill_is_free): Likewise.
- * ra.c (init_ra): Likewise.
- * recog.c (reg_fits_class_p, peep2_reg_dead_p,
- peep2_find_free_register): Likewise.
- * reg-stack.c (subst_stack_regs_pat, convert_regs_exit): Likewise.
- * regclass.c (hard_regno_nregs): New array.
- (init_reg_modes_once): Initialize it.
- (choose_hard_reg_mode): Use it.
- (record_reg_classes): Likewise.
- * regmove.c (mark_flags_life_zones): Likewise.
- * regrename.c (note_sets, clear_dead_regs, regrename_optimize,
- scan_rtx_reg, dump_def_use_chain, kill_value, set_value_regno,
- copy_value, maybe_mode_change, find_oldest_value_reg,
- copyprop_hardreg_forward_1):
- * regs.h (hard_regno_nregs): Declare.
- * realod.c (reload_inner_reg_of_subreg): Use it.
- (push_reload, combine_reloads, find_dummy_reload,
- hard_reg_set_here_p, operands_match_p, decompose, find_reloads,
- refers_to_regno_for_reload_p, find_equiv_reg, regno_clobbered_p,
- reload_adjust_reg_for_mode): Likewise.
- * reload1.c (compute_use_by_pseudos, count_pseudo,
- count_spilled_pseudo, find_reg, find_reload_regs, mark_home_live,
- spill_hard_reg, forget_old_reloads_1, mark_reload_reg_in_use,
- clear_reload_reg_in_use, reload_reg_free_for_value_p, free_for_value_p
- allocate_reload_reg, choose_reload_regs, emit_reload_insns,
- delete_output_reload): Likewise.
- * resource.c (update_live_status, mark_referenced_resources,
- mark_set_resources, mark_target_live_regs): Likewise.
- * rtlanal.c: Include regs.h
- (refers_to_regno_p, reg_overlap_mentioned_p, dead_or_set_p,
- dead_or_set_regno_p, find_regno_note, find_reg_fusage,
- subreg_regno_offset, subreg_offset_representable_p,
- hoist_test_store): Likewise.
- * sched-deps.c (sched_analyze_1, sched_analyze_2): Likewise.
- * sched-rgn.c (check_live_1, update_live_1): Likewise.
- * stmt.c: Include regs.h
- (decl_conflicts_with_clobbers_p): Likewise.
- * varasm.c (make_decl_rtl): Likewise.
- * Makefile.in (cfgcleanup.o, rtlanal.o, ra-debug.o): Add regs.h dependnecy.
-
-2004-02-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arm/arm.c, config/arm/arm.h, config/arm/arm.md,
- config/arm/linux-gas.h, config/arm/netbsd-elf.h,
- config/arm/netbsd.h, config/arm/pe.c, config/avr/avr.c,
- config/avr/avr.h, config/avr/avr.md, config/c4x/c4x.h,
- config/cris/cris.h, config/fr30/fr30.h, config/frv/frv.c,
- config/frv/frv.h, config/ip2k/ip2k.c, config/iq2000/iq2000.c,
- config/iq2000/iq2000.h, config/m32r/m32r.c,
- config/m68hc11/m68hc11.c, config/m68hc11/m68hc11.h,
- config/m68hc11/m68hc11.md, config/m68k/m68k.md,
- config/mcore/mcore.c, config/mcore/mcore.h,
- config/mcore/mcore.md, config/mips/mips.c,
- config/ns32k/ns32k.h, config/ns32k/ns32k.md,
- config/rs6000/rs6000.c, config/s390/s390.c,
- config/s390/s390.md, config/sparc/sparc.c, config/v850/v850.c,
- config/xtensa/xtensa.h, config/xtensa/xtensa.md: Replace
- "gen_rtx (FOO, " with "gen_rtx_FOO (".
-
-2004-02-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (two peephole2's): New.
-
-2004-02-01 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sol2-bi.h: Handle TARGET_CPU_ultrasparc3.
- (CPP_CPU_SPEC): Handle -mcpu=ultrasparc3.
- (ASM_CPU_SPEC): Likewise
- * config/sparc/sol2.h: Handle TARGET_CPU_ultrasparc3.
- (ASM_CPU_SPEC): Remove -mcpu=v8plus. Handle -mcpu=ultrasparc3.
-
-2004-02-01 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_pow): If flag_unsafe_math_optimizations
- isn't set, don't call expand_builtin_mathfn_2 to use the pow optab.
- (expand_builtin): Always call expand_builtin_pow.
-
-2004-02-01 Roger Sayle <roger@eyesopen.com>
-
- * builtins.def (BUILT_IN_SIGNBIT, BUILT_IN_SIGNBITF,
- BUILT_IN_SIGNBITL): New GCC builtins.
- * builtins.c (expand_builtin_signbit): New function to RTL expand
- calls to signbit, signbitf and signbitl as inline intrinsics.
- (expand_builtin): Call expand_builtin_signbit for BUILT_IN_SIGNBIT*.
- (fold_builtin_signbit): New function to perform constant folding
- of signbit, signbitf and signbitl.
- (fold_builtin): Call fold_builtin_signbit for BUILT_IN_SIGNBIT*.
-
- * doc/extend.texi: Document new signbit{,f,l} builtins.
-
-2004-02-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (adddi3_internal_2): Remove superfluous %s.
-
-2004-02-01 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.h (PREDICATE_CODES): Remove entries for
- "mips_const_double_ok" and "simple_memory_operand", which were
- removed from the MIPS port with the mips-3_4-rewrite branch merge.
- * config/mips/mips.c (mips16_lay_out_constants): Update comment
- for removal of simple_memory_operand.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/c4x/c4x.md: Use GEN_INT instead of
- gen_rtx (CONST_INT, ...).
-
-2004-01-31 Richard Henderson <rth@redhat.com>
-
- * varasm.c (output_constant_pool): Don't zap the pool.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * genrecog.c (decision_type): Add DT_const_int.
- (write_cond) [DT_const_int]: Print a comparison against small
- constant.
- (write_node): Simplify comparisons against small constants
- before printing tests.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.c (m32r_load_pic_register): Use GEN_INT
- instead of gen_rtx_CONST_INT.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/xtensa/xtensa.h (DYNAMIC_CHAIN_ADDRESS): Use GEN_INT
- instead of gen_rtx_CONST_INT.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * target-def.h (TARGET_STRICT_ARGUMENT_NAMING): Define as
- hook_bool_CUMULATIVE_ARGS_false.
- * targhooks.c (default_strict_argument_naming): Rename to
- hook_bool_CUMULATIVE_ARGS_false.
- * targhooks.h: Update the prototype for
- default_strict_argument_naming.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/sh/sh.c: Replace "gen_rtx (FOO, " with "gen_rtx_FOO (".
- * config/sh/sh.h: Likewise.
- * config/sh/sh.md: Likewise.
-
-2004-01-31 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * doc/invoke.texi (SPARC options): Restructure and update.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (PROMOTE_FUNCTION_ARGS, STRUCT_VALUE_INCOMING, and
- STRICT_ARGUMENT_NAMING): Poison.
- * target-def.h (TARGET_PROMOTE_FUNCTION_ARGS): Define as
- hook_bool_tree_false.
- * targhooks.c (default_promote_function_args): Remove.
- (default_struct_value_rtx): Don't use STRUCT_VALUE_INCOMING.
- Don't check incoming.
- (default_strict_argument_naming): Don't use
- STRICT_ARGUMENT_NAMING.
- * targhooks.h: Remove the prototype for
- default_promote_function_args.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386-protos.h: Remove the prototype for
- ix86_setup_incoming_varargs.
- * config/i386/i386.c (TARGET_SETUP_INCOMING_VARARGS): New.
- (ix86_setup_incoming_varargs): Make it static.
- * config/i386/i386.h (SETUP_INCOMING_VARARGS): Remove.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * alloc-pool.c: Fix comment typos.
- * builtin-types.def: Likewise.
- * builtins.def: Likewise.
- * c-pretty-print.c: Likewise.
- * df.h: Likewise.
- * reload1.c: Likewise.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Follow spelling conventions.
- * doc/tm.texi: Likewise.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/install.texi: Fix typos.
- * doc/invoke.texi: Likewise.
-
-2004-01-31 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_decompose_address): Do not treat virtual
- registers as pointers.
- * config/s390/s390.md ("*la_31" second peephole2): Fix incorrect mode.
-
-2004-01-31 Paolo Bonzini <bonzini@gnu.org>
-
- * combine.c (cse_main): Set gen_lowpart to gen_lowpart_for_combine
- and restore it to gen_lowpart_general on exit.
- (gen_lowpart_for_combine): Adjust all callers to go through
- gen_lowpart.
- * cse.c (cse_main): Set gen_lowpart to gen_lowpart_if_possible
- and restore it to gen_lowpart_general on exit.
- (gen_lowpart_if_possible): Adjust all callers to go through
- gen_lowpart.
- * emit-rtl.c (gen_lowpart_general): New name of gen_lowpart.
- (gen_lowpart): Declare as pointer to function, initialized to
- gen_lowpart_general.
- * rtl.h (gen_lowpart): Declare as pointer to function.
-
-2004-01-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * bt-load.c: Replace "gen_rtx (FOO, " with "gen_rtx_FOO (".
- * calls.c: Likewise.
- * emit-rtl.c: Likewise.
- * function.c: Likewise.
- * reload1.c: Likewise.
- * config/i386/cygming.h: Likewise.
- * config/i386/i386.c: Likewise.
- * config/i386/winnt.c: Likewise.
-
-2004-01-30 Dara Hazeghi <dhazeghi@yahoo.com>
-
- PR bootstrap/9249
- * doc/install.texi: document --enable-__cxa_atexit option.
- * configure.ac: Disable __cxa_atexit if not supported.
- * configure: Regenerate.
-
-2004-01-30 Daniel Berlin <dberlin@dberlin.org>
-
- * ggc-zone.c (ggc_free): New function.
-
-2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
-
- alloc-pool.c, c-lex.c, c-pragma.h, c-semantics.c, cfghooks.c,
- cfghooks.h, cfglayout.c, cfgloopmanip.c, debug.c, debug.h,
- flow.c, genextract.c, ggc-common.c, ggc-page.c, ggc.h,
- ifcvt.c, jump.c, loop-unswitch.c, timevar.c, timevar.def,
- tree-optimize.c, vmsdbgout.c, config/fp-bit.c,
- config/alpha/alpha.c, config/alpha/alpha.h,
- config/alpha/alpha.md, config/alpha/unicosmk.h,
- config/alpha/vms.h, config/arm/linux-elf.h, config/avr/avr.c,
- config/c4x/c4x-protos.h, config/c4x/c4x.md,
- config/d30v/d30v.h, config/frv/frv.md, config/frv/frvbegin.c,
- config/frv/frvend.c, config/i386/cygming.h,
- config/i386/djgpp.h, config/i386/emmintrin.h,
- config/i386/gthr-win32.c, config/i386/i386-interix.h,
- config/i386/i386-protos.h, config/i386/openbsd.h,
- config/i386/winnt.c, config/i386/xm-mingw32.h,
- config/i386/xmmintrin.h, config/ia64/ia64.md,
- config/iq2000/iq2000.md, config/m32r/m32r.md,
- config/m68k/m68k.md, config/mcore/mcore-elf.h,
- config/mcore/mcore.md, config/mips/elf.h, config/mips/elf64.h,
- config/mips/iris5gas.h, config/mips/iris6.h,
- config/mips/iris6gas.h, config/mips/linux.h,
- config/mips/mips.md, config/mips/netbsd.h,
- config/mips/openbsd.h, config/mips/windiss.h,
- config/pa/fptr.c, config/rs6000/aix.h,
- config/rs6000/altivec.h, config/rs6000/darwin.h,
- config/rs6000/xcoff.h, config/s390/s390-protos.h,
- config/s390/s390.c, config/s390/s390.h, config/s390/s390.md,
- config/sh/netbsd-elf.h, config/sh/sh.h, config/sh/vxworks.h,
- config/sparc/sol2.h: Update copyright.
-
-2004-01-30 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (abs_docdir, abs_srcdir): Define.
- (doc/%.dvi, doc/gccinstall.dvi): Use $(abs_docdir).
-
-2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * genconfig.c (main): Have CC0_P check its operand even on a
- target without cc0.
-
-2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.c: Remove mentions of deprecates macros
- in comments, remove some target-independent comments about target
- macros, and/or add minimal function comments for target hook
- implementations.
- * config/avr/avr.c: Likewise.
- * config/ia64/ia64.h: Likewise.
- * config/ip2k/ip2k.c: Likewise.
- * config/iq2000/iq2000.c: Likewise.
- * config/m32r/m32r.h: Likewise.
- * config/m68hc11/m68hc11.c: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mmix/mmix.c: Likewise.
- * config/mn10300/mn10300.c: Likewise.
- * config/pa/pa.c: Likewise.
- * config/pdp11/pdp11.c: Likewise.
- * config/rs6000/rs6000.h: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sh/sh.h: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/xtensa/xtensa.c: Likewise.
-
-2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
-
- PR optimization/12147
- * reload1.c (reload_reg_free_p): RELOAD_OTHER conflicts with
- RELOAD_FOR_OPADDR_ADDR.
- (reload_reg_reaches_end_p): RELOAD_FOR_OTHER_ADDRESS register
- might be reused as RELOAD_FOR_OPADDR_ADDR register.
-
-2004-01-30 Jan Hubicka <jh@suse.cz>
-
- * reload.c (get_secondary_mem): Fix updating of
- secondary_memlocs_elim_used.
-
-2004-01-30 Richard Henderson <rth@redhat.com>
-
- * varasm.c (struct rtx_const, struct pool_constant): Remove.
- (MAX_RTX_HASH_TABLE): Remove.
- (const_rtx_hash_table, const_rtx_sym_hash_table): Remove.
- (first_pool, last_pool, pool_offset): Remove.
- (struct rtx_constant_pool): Split out from ...
- (struct varasm_status): ... here. Reference one via pointer.
- (struct constant_descriptor_rtx): Merge struct pool_constant.
- (SYMHASH): Remove.
- (decode_rtx_const): Remove.
- (const_hash_rtx, compare_constant_rtx): Remove.
- (record_constant_rtx): Remove.
- (const_desc_rtx_hash, const_desc_rtx_eq): New.
- (const_desc_rtx_sym_hash, const_desc_rtx_sym_eq): New.
- (const_rtx_hash_1, const_rtx_hash): New.
- (init_varasm_status): Allocate a rtx_constant_pool, and its hashes.
- (simplify_subtraction): Use simplify_rtx.
- (force_const_mem): Rewrite to use new data structures.
- (find_pool_constant): Likewise.
- (get_pool_constant, get_pool_constant_mark,
- get_pool_constant_for_function, get_pool_mode,
- get_pool_mode_for_function, get_pool_offset, get_pool_size): Likewise.
- (output_constant_pool_2): Split out from output_constant_pool.
- (output_constant_pool_1): Likewise. Use new pool datastructures.
- (output_constant_pool): Zap entire pool datastructure.
- (mark_constant): Use new pool datastructures.
- (mark_constants): Use for_each_rtx.
- (mark_constant_pool): Use new pool datastructures.
-
-2004-01-30 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): Remove #if 0.
- Copy operands[1] to pseudo for simplify_gen_subreg.
-
-2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * gcse.c (bypass_block): Fix a typo in the previous check-in
- to the file.
-
-2004-01-30 Andrew Pinski <pinskia@physics.uc.edu>
-
- * toplev.c: Include alloc-pool.h.
- * Makefile.in (toplev.c): Update dependencies.
-
-2004-01-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * combine.c (simplify_shift_const, case XOR): Be careful when
- commuting XOR with ASHIFTRT.
-
-2004-01-30 Kazu Hirata <kazu@cs.umass.edu>
- Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc-protos.h: Remove the prototype for
- sparc_builtin_saveregs.
- * config/sparc/sparc.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
- (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
- (sparc_builtin_saveregs): Make it static.
- (sparc_promote_prototypes): New.
- (sparc_struct_value_rtx): Likewise.
- (sparc_return_in_memory): Likewise.
- * config/sparc/sparc.h: (PROMOTE_FUNCTION_ARGS): Remove.
- (PROMOTE_FUNCTION_RETURN): Likewise.
- (RETURN_IN_MEMORY): Likewise.
- (STRUCT_VALUE): Likewise.
- (STRUCT_VALUE_INCOMING): Likewise.
- (EXPAND_BUILTIN_SAVEREGS): Likewise.
- (STRICT_ARGUMENT_NAMING): Likewise.
- (PROMOTE_PROTOTYPES): Likewise.
-
- * config/sparc/sparc.h (PROMOTE_MODE): Use word_mode.
-
-2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/12818
- * varasm.c (const_hash_1) <STRING_CST>: Use the
- address to compute the hash value if flag_writable_strings.
- (compare_constant) <STRING_CST>: Compare the addresses
- if flag_writable_strings.
- (build_constant_desc): Do not copy the expression for a
- STRING_CST if flag_writable_strings.
-
-2004-01-30 Jan Hubicka <jh@suse.cz>
-
- * alloc-pool.c: Include hashtab.h
- (alloc_pool_descriptor): New structure
- (alloc_pool_hash): New global variable.
- (hash_descriptor, eq_descriptor, alloc_pool_descriptor): New.
- (create_alloc_pool): Update statistics.
- (free_alloc_pool): Likewise.
- (pool_alloc): Likewise.
- (output_info): New structure
- (print_statistics, dump_alloc_pool_statistics): New function.
- * alloc-pool.h (alloc_pool_def): Turn name to be constant.
- (dump_alloc_pool_statistics): Declare.
- * toplev.c (finalize): Dump statistics.
-
- * reload.c (secondary_memlocs_elim_used): New static variable.
- (get_secondary_mem): Update it.
- (find_reloads): Use it.
-
-2004-01-30 Steven Bosscher <s.bosscher@student.tudelft.nl>
-
- * toplev.c: Fix broken checkin of 2003-12-30, again.
-
-2004-01-30 Ulrich Weigand <uweigand@de.ibm.com>
-
- * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for
- s390*-*-* targets by specifying a 'nop' insn.
- * configure: Regenerate.
-
-2004-01-30 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/11475
- * config/sparc/sparc.md (movhi_lo_sum): Tighten predicates.
-
-2004-01-29 Jakub Jelinek <jakub@redhat.com>
-
- * emit-rtl.c (change_address): Use XEXP (memref, 0) instead
- of addr when creating MEM copy.
-
-2004-01-29 Devang Patel <dpatel@apple.com>
-
- * dwarf2out.c (gen_field_die): Do not equate decl number to die.
-
-2004-01-28 Ian Lance Taylor <ian@wasabisystems.com>
-
- PR inline-asm/6162
- * reload.c (find_reloads): Only support one pair of commutative
- operands.
-
-2004-01-29 Roger Sayle <roger@eyesopen.com>
-
- PR java/13824
- * tree.c (unsafe_for_reeval): Handle EXIT_BLOCK_EXPR nodes specially
- as their EXIT_BLOCK_LABELED_BLOCK operands can lead to unbounded
- recursion.
-
-2004-01-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/frv/frv.c: Don't mention deprecated macros in
- comments. Remove some target-independent comments about
- target macros.
- * config/frv/frv.h: Likewise.
-
-2004-01-29 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfghooks.c (split_block): Set probability and count of the
- new edge.
-
-2004-01-29 Josef Zlomek <zlomekj@suse.cz>
-
- * dwarf2out.c (struct die_struct): Added field decl_id.
- (decl_die_table): Changed to hash table.
- (decl_die_table_allocated): Deleted.
- (decl_die_table_in_use): Deleted.
- (DECL_DIE_TABLE_INCREMENT): Deleted.
- (decl_die_table_hash): New function.
- (decl_die_table_eq): New function.
- (lookup_decl_die): Lookup in a hash table.
- (equate_decl_number_to_die): Insert into a hash table.
- (dwarf2out_init): Init hash table decl_die_table.
-
-2004-01-29 Jakub Jelinek <jakub@redhat.com>
-
- PR optimization/13424
- * expr.c (store_constructor): Revert 2003-12-03 change.
-
- * emit-rtl.c (change_address): Check also if MEM_ATTRS is set as
- expected before returning early. Avoid sharing RTL if they
- need to be changed.
-
- * config/i386/i386.c (ix86_expand_movstr): Rework rep_mov and strmov
- handling so that memory attributes are preserved. Don't call
- ix86_set_move_mem_attrs.
- (ix86_set_move_mem_attrs_1, ix86_set_move_mem_attrs): Removed.
- (ix86_expand_clrstr): Rename src argument to
- dst. Rework rep_stos and strset handling so that memory attributes
- are preserved.
- (ix86_expand_strlen): Pass src argument to
- ix86_expand_strlensi_unroll_1. Rework strlenqi_1 handling so that
- memory attributes are preserved.
- (ix86_expand_strlensi_unroll_1): Add src argument. Use
- change_address instead of gen_rtx_MEM.
- * config/i386/i386.md (strmov, strmov_singleop, rep_mov): New
- expanders.
- (strmovdi_rex64, strmovsi, strmovsi_rex64, strmovhi, strmovhi_rex64,
- strmovqi, strmovqi_rex64): Remove.
- (rep_mov*, strmov*): Prefix insn names with *.
- (strset, strset_singleop, rep_stos): New expanders.
- (strsetdi_rex64, strsetsi, strsetsi_rex64, strsethi, strsethi_rex64,
- strsetqi, strsetqi_rex64): Remove.
- (rep_stos*, strset*): Prefix insn names with *.
- (rep_stosqi_rex64): Likewise. Fix mode of dirflag reg from DImode
- to SImode.
- (cmpstrsi): Rework cmpstrqi_1 handling so that memory attributes
- are preserved.
- (cmpstrqi_nz_1, cmpstrqi_nz_rex_1, cmpstrqi_1, cmpstrqi_rex_1):
- Prefix insn names with *.
- (cmpstrqi_nz_1, cmpstrqi_1): New expanders.
- (strlenqi_1, strlenqi_rex_1): Prefix insn names with *.
- (strlenqi_1): New expander.
- * config/i386/i386.h (ix86_set_move_mem_attrs): Remove prototype.
-
-2004-01-29 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (cfghooks.o): Add TIMEVAR_H and toplev.h dependency.
- * basic-block.h (tidy_fallthru_edge, tidy_fallthru_edges, dump_bb,
- verify_flow_info): Declaration removed.
- * cfg.c (verify_flow_info, dump_bb): Moved to cfghooks.c.
- (debug_bb, debug_bb_n): Add argument to dump_bb call.
- * cfgcleanup.c (try_simplify_condjump, try_crossjump_to_edge,
- try_optimize_cfg, delete_unreachable_blocks): Use delete_basic_block
- instead of delete_block.
- * cfghooks.c: Include timevar.h and toplev.h.
- (cfg_hooks): Define here.
- (verify_flow_info, dump_bb): Moved from cfg.c.
- (redirect_edge_and_branch, redirect_edge_and_branch_force,
- split_block, split_block_after_labels, move_block_after,
- delete_basic_block, split_edge, create_basic_block,
- create_empty_bb, can_merge_blocks_p, merge_blocks,
- make_forwarder_block, tidy_fallthru_edge, tidy_fallthru_edges):
- New functions.
- * cfghooks.h (struct cfg_hooks): Added fields name,
- make_forwarder_block, tidy_fallthru_edge and
- move_block_after. Changed type of verify_flow_info, dump_bb,
- split_block fields. Renamed cfgh_split_edge and delete_block
- fields.
- (redirect_edge_and_branch, redirect_edge_and_branch_force,
- split_block, delete_block, split_edge, create_basic_block,
- can_merge_blocks_p, merge_blocks): Macros removed.
- (cfg_hooks): Do not export.
- (verify_flow_info, dump_bb, redirect_edge_and_branch,
- redirect_edge_and_branch_force, split_block, split_block_after_labels,
- move_block_after, delete_basic_block, split_edge, create_basic_block,
- create_empty_bb, can_merge_blocks_p, merge_blocks,
- make_forwarder_block, tidy_fallthru_edge, tidy_fallthru_edges):
- Declare.
- (cfg_layout_rtl_cfg_hooks): Declare.
- * cfgloop.c (update_latch_info, mfb_keep_just, mfb_keep_nonlatch):
- New functions.
- (canonicalize_loop_headers): Use new semantics of make_forwarder_block.
- (redirect_edge_with_latch_update): Removed.
- (make_forwarder_block): Moved to cfghooks.c, semantics changed.
- * cfgloopmanip.c (remove_bbs): Do not update dominators here.
- * cfgrtl.c (cfg_layout_split_block, rtl_split_block, rtl_dump_bb,
- rtl_delete_block, rtl_split_block, rtl_merge_blocks,
- tidy_fallthru_edge, rtl_split_edge, cfg_layout_delete_block,
- cfg_layout_merge_blocks, cfg_layout_split_edge): Partly moved to
- cfghooks.c.
- (rtl_create_basic_block): Coding style fix.
- (rtl_tidy_fallthru_edge, rtl_move_block_after,
- rtl_make_forwarder_block): New functions.
- (update_cfg_after_block_merging): Removed.
- (rtl_cfg_hooks, cfg_layout_rtl_cfg_hooks): Fill in new entries.
- * flow.c (verify_wide_reg, verify_local_live_at_start): Add argument
- to dump_bb.
- * ifcvt.c (merge_if_block, find_cond_trap, find_if_case_1,
- find_if_case_2): Don't update dominators.
- * timevar.def (TV_CFG_VERIFY): New.
- * loop-unswitch.c (unswitch_loop): Don't call add_to_dominance_info.
- * cfglayout.c (copy_bbs): Don't call add_to_dominance_info.
- * cfgloopmanip.c (split_loop_bb): Don't update dominators.
- (remove_bbs): Don't call remove_bbs.
- (create_preheader): Use make_forwarder_block.
- (mfb_keep_just, mfb_update_loops): New static functions.
-
-2004-01-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/avr/avr.h: Remove target-independent comments about
- target macros.
-
-2004-01-28 Daniel Berlin <dberlin@dberlin.org>
-
- * timevar.c (timevar_print): Mention when checking is enabled.
-
-2004-01-28 Giovanni Bajo <giovannibajo@gcc.gnu.org>
-
- * c-lex.c (c_lex): Rename to...
- (c_lex_with_flags): Add new parameter to get CPP flags.
- (c_lex): Thunk to c_lex_with_flags while keeping the old interface.
- * c-pragma.h (c_lex_with_flags): Declare.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mcore/mcore.c (mcore_external_libcall): Add a
- comment.
- (mcore_return_in_memory): Likewise.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mcore/mcore-protos.h: Remove the prototype for
- mcore_setup_incoming_varargs.
- * config/mcore/mcore.c (TARGET_ASM_EXTERNAL_LIBCALL): New.
- (TARGET_PROMOTE_FUNCTION_ARGS): Likewise.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (mcore_setup_incoming_varargs): Make it static. Receive the
- first argument by reference. Add argument second_time.
- (mcore_external_libcall): New.
- (mcore_return_in_memory): Likewise.
- * config/mcore/mcore.h (PROMOTE_FUNCTION_ARGS): New.
- (PROMOTE_FUNCTION_RETURN): Likewise.
- (STRUCT_VALUE): Likewise.
- (RETURN_IN_MEMORY): Likewise.
- (SETUP_INCOMING_VARARGS): Likewise.
- (PROMOTE_PROTOTYPES): Likewise.
- (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r-protos.h: Remove the prototype for
- m32r_setup_incoming_varargs.
- * config/m32r/m32r.c (TARGET_PROMOTE_PROTOTYPES): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (m32r_return_in_memory): New.
- (m32r_setup_incoming_varargs): Make it static.
- * config/m32r/m32r.h: Remove #undef of
- ASM_OUTPUT_EXTERNAL_LIBCALL. Remove the commented-out
- definitions of PROMOTE_FUNCTION_ARGS and
- PROMOTE_FUNCTION_RETURN.
- (PROMOTE_PROTOTYPES): Remove.
- (RETURN_IN_MEMORY): Likewise.
- (STRUCT_VALUE): Likewise.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m68k/m68k.c (TARGET_PROMOTE_PROTOTYPES): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (m68k_struct_value_rtx): Likewise.
- * config/m68k/m68k.h (STRUCT_VALUE_REGNUM): Rename to
- STRUCT_VALUE_REGNUM.
- (PROMOTE_PROTOTYPES): Remove.
- * config/m68k/m68kelf.h (STRUCT_VALUE_REGNUM): Rename to
- STRUCT_VALUE_REGNUM.
- * config/m68k/m68kv4.h (STRUCT_VALUE_REGNUM): Likewise.
- * config/m68k/netbsd-elf.h (STRUCT_VALUE_REGNUM): Likewise.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/stormy16/stormy16.c
- (TARGET_BUILD_BUILTIN_VA_LIST_TYPE): Rename to
- TARGET_BUILD_BUILTIN_VA_LIST.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/v850/v850.c (TARGET_PROMOTE_PROTOTYPES): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (v850_return_in_memory): Likewise.
- (v850_setup_incoming_varargs): Likewise.
- * config/v850/v850.h (PROMOTE_PROTOTYPES): Remove.
- (SETUP_INCOMING_VARARGS): Likewise.
- (RETURN_IN_MEMORY): Likewise.
- (STRUCT_VALUE): Likewise.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/fr30/fr30.c (TARGET_PROMOTE_PROTOTYPES): New.
- (fr30_setup_incoming_varargs): Don't use
- STRICT_ARGUMENT_NAMING.
- * config/fr30/fr30.h (PROMOTE_PROTOTYPES): Remove.
- (STRICT_ARGUMENT_NAMING): Likewise.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/frv/frv-protos.h: Remove the prototype for
- frv_expand_builtin_saveregs.
- * config/frv/frv.c (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
- (frv_stack_info): Use FRV_STRUCT_VALUE_REGNUM instead of
- STRUCT_VALUE_REGNUM.
- (frv_expand_builtin_saveregs): Make it static.
- (frv_struct_value_rtx): New.
- * config/frv/frv.h (EXPAND_BUILTIN_SAVEREGS): Remove.
-
-2004-01-29 Jan Hubicka <jh@suse.cz>
-
- PR c++/12850
- * cgraph.c (cgraph_remove_node): Clear out saved/insns/arguments and
- initial pointers.
- * cgraphunit.c (cgraph_finalize_function): Clear out DECL_SAVED_INSNS
- for functions that will be only inlined.
- (cgraph_mark_function_to_output): Likewise.
- (cgraph_expand_function): Sanity check that DECL_DEFER_OUTPUT is clear;
- do not clear function body.
- * tree-optimize.c (clear_decl_rtl): Use decl_function_context.
- (tree_rest_of_compilation): Reorganize the logic releasing function
- body to use callgraph datastructure.
-
-2004-01-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.md: Change predicate of a peephole2 pattern from reg_or_0_operand
- to register_operand.
-
-2004-01-28 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/ia64.md (fetchadd_acq_si, fetchadd_acq_di)
- (cmpxchg_acq_si, cmpxchg_acq_di): Exchange match_dup and
- match_operand expressions so that all match_dups appear
- lexically after their corresponding match_operands.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (WORD_REG_USED): Use
- HARD_FRAME_POINTER_REGNUM instead of FRAME_POINTER_REGNUM.
- (compute_saved_regs): Likewise.
- (h8300_expand_prologue): Likewise. Allocate locals after
- saving registers.
- (h8300_expand_epilogue): Use HARD_FRAME_POINTER_REGNUM instead
- of FRAME_POINTER_REGNUM. Deallocate locals before saving
- registers.
- (h8300_initial_elimination_offset): Adjust for the new frame
- layout, which swaps flips the order of locals and saved
- registers.
- * config/h8300/h8300.h (FIRST_PSEUDO_REGISTER): Change to 12.
- (HARD_FRAME_POINTER_REGNUM): New.
- (ELIMINABLE_REGS): Add an elimination rule from
- FRAME_POINTER_REGNUM to HARD_FRAME_POINTER_REGNUM.
- (REGISTER_NAMES): Add fp.
- * config/h8300/h8300.md (FP_REG): Change to 11.
- (HFP_REG): New.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * genrecog.c (write_node): Remove a useless local variable.
-
-2004-01-28 Ian Lance Taylor <ian@wasabisystems.com>
-
- * Makefile.in (options.c options.h): Use stamp file s-options to
- avoid unnecessary rebuilds.
- (options.o): New target listing dependencies.
- (gtyp-gen.h): Use stamp file s-gtyp-gen.
- (STAGESTUFF): Add s-gtyp-gen.
-
-2004-01-28 Richard Henderson <rth@redhat.com>
-
- * ggc.h (ggc_free): Declare.
- * ggc-common.c (ggc_realloc): Use it.
- * ggc-page.c: Remove lots of inline markers.
- (globals): Add free_object_list.
- (ggc_alloc): Tidy.
- (ggc_free, validate_free_objects): New.
- (poison_pages): Provide default.
- (ggc_collect): Call validate_free_objects; emit markers to
- the debug file.
-
-2004-01-28 Zack Weinberg <zack@codesourcery.com>
- Jim Wilson <wilson@specifixinc.com>
-
- * config/ia64/ia64.c (ia64_split_tmode, ia64_split_tmode_move):
- Rewrite to use POST_INC/POST_DEC/POST_MODIFY instead of a
- scratch pointer.
- (ia64_secondary_reload_class): Delete case GR_REGS.
- * config/ia64/ia64.md (movti, *movti_internal, movtf, *movtf_internal):
- Do not allocate a scratch register.
- (reload_inti, reload_outti, reload_intf, reload_outtf): Delete.
-
-2004-01-28 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (bypass_block): Prevent edges to be unified when we are
- about to emit compenstation code.
-
-2004-01-28 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (arm_expand_builtin): Force second argument of
- the setcwx insn into a register.
-
-2004-01-28 Richard Sandiford <rsandifo@redhat.com>
-
- * config/fp-bit.c (pack_d): When using paired doubles to implement
- a long double, round the high part separately.
- (unpack_d): Fix the case in which the high part is a power of two
- and the low part is a nonzero value of the opposite sign.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/c4x/c4x.c (TARGET_ASM_EXTERNAL_LIBCALL): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (c4x_external_libcall): Likewise.
- (c4x_struct_value_rtx): Likewise.
- * config/c4x/c4x.h: Remove.
- (STRUCT_VALUE_REGNUM): Likewise.
- (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
-
-2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386.c (TARGET_PROMOTE_PROTOTYPES): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- * config/i386/i386.h (STRUCT_VALUE_INCOMING): Remove.
- (STRUCT_VALUE): Likewise.
- (PROMOTE_PROTOTYPES): Likewise.
-
-2004-01-27 Roger Sayle <roger@eyesopen.com>
-
- * config/pa/pa.c (emit_move_sequence): Check that operand1 is a
- CONST_INT before using INTVAL.
-
-2004-01-27 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h (TARGET_DEFAULT): Default to !TARGET_BACKCHAIN.
- * config/s390/s390.c (s390_return_addr_rtx): Fail for all but current
- frame if !TARGET_BACKCHAIN.
- * config/s390/s390.md ("allocate_stack"): Use pattern only if
- TARGET_BACKCHAIN.
- * doc/invoke.texi (-mbackchain/-mno-backchain): Document new default.
-
-2004-01-27 Zack Weinberg <zack@codesourcery.com>
-
- * ia64.c (ia64_function_arg): When placing HFAs in integer
- registers, do not special case the mode used for complex
- types. Do not advance int_regs until the current register
- is full.
-
-2004-01-27 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/7297
- * except.c (init_eh): Use a 5-word __jbuf for __builtin_setjmp().
-
-2004-01-27 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): #if 0 splitting
- slow, unaligned loads and stores while debugging. Fix formatting.
-
-2004-01-27 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (save_stack_nonlocal): Use Pmode instead
- of computing wmode.
- (restore_stack_nonlocal): Same.
-
-2004-01-27 Devang Patel <dpatel@apple.com>
-
- * Makefile.in (dwarf2out.o): Depend on input.h
- * dbxout.c (dbx_debug_hooks): Add new empty hook for
- imported_module_or_decl.
- (xcoff_debug_hooks): Same.
- * sdbout.c (sdb_debug_hooks): Same.
- * vmsdbgout.c (vmsdbg_debug_hooks): Same.
- * debug.c (do_nothing_debug_hooks): Same.
- (debug_nothing_tree_tree): New function.
- * debug.h (gcc_debug_hooks): New hook, imported_module_or_decl.
- * dwarf2out.c: Include input.h.
- (dwarf2_debug_hooks): Add new hook for imported_module_or_decl.
- (remove_child_TAG): New function.
- (dwarf_tag_name): Handle DW_TAG_imported_module.
- (gen_subprogram_die): Equate decl number to declaration die. Do not
- remove all children dies while reusing declaration die for definition.
- Instead, selectively remove only formal parameters.
- (gen_variable_die): Equate variable decl to declaration die.
- (gen_field_die): Equate field decl to line number.
- (force_namespace_die): Replace it with ...
- (force_decl_die): ... this.
- (force_type_die): New function.
- (setup_namespace_context): Replace use of force_namespace_die() with
- force_decl_die().
- (gen_namespace_die): Same.
- (dwarf2out_imported_module_or_decl): New function.
-
-2004-01-27 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (xtensa_copy_incoming_a7): Remove SUBREG
- on CQImode and CHImode incoming arguments in register a7.
- (function_arg): Wrap BLKmode argument in register a7 in a PARALLEL.
- * config/xtensa/xtensa.h (BLOCK_REG_PADDING): Define.
- * config/xtensa/xtensa.md (movdi, movdf): Only call force_reg or
- xtensa_copy_incoming_a7 before reload.
-
-2004-01-27 J"orn Rennecke <joern.rennecke@superh.com>
-
- * coverage.c (get_coverage_counts): Give a different message
- if flag_guess_branch_prob is set.
- * predict.c (counts_to_freqs): Return an int.
- (estimate_bb_frequencies): If counts_to_freqs returns zero,
- calculate estimates.
-
-2004-01-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/iq2000/iq2000-protos.h: Remove the prototype for
- iq2000_setup_incoming_varargs.
- * config/iq2000/iq2000.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
- (iq2000_return_in_memory): Likewise.
- (iq2000_setup_incoming_varargs): Make it static. Receive the
- first argument by reference.
- * config/iq2000/iq2000.h (PROMOTE_FUNCTION_ARGS): Remove.
- (PROMOTE_FUNCTION_RETURN): Likewise.
- (PROMOTE_PROTOTYPES): Likewise.
- (RETURN_IN_MEMORY): Likewise.
- (STRUCT_VALUE): Likewise.
- (SETUP_INCOMING_VARARGS): Likewise.
- (STRICT_ARGUMENT_NAMING): Likewise.
-
-2004-01-24 James A. Morrison <ja2morri@uwaterloo.ca>
-
- * fixinc/fixinc.c (test_test): Initialize res.
- (start_flexer): Initialize pz_cmd_save.
-
-2004-01-27 Zack Weinberg <zack@codesourcery.com>
-
- * doc/rtl.texi (Arithmetic): Rewrite entries for PLUS,
- SS_PLUS, US_PLUS, LO_SUM, MINUS, SS_MINUS, US_MINUS.
-
-2004-01-27 Zack Weinberg <zack@codesourcery.com>
-
- PR 7198
- * config/ia64/ia64.md (*nmaddsf4, *nmadddf4, *nmadddf4_alts)
- (*nmadddf4_trunc, *nmaddxf4, *nmaddxf4_truncsf, *nmaddxf4_truncdf)
- (*nmaddxf4_alts, *nmaddxf4_truncdf_alts):
- Rewrite pattern as (minus (op 3) (mult (op 1) (op 2))).
- Possibly rename pattern for consistency.
- Remove ??? comments suggesting that this be done.
- (*nmaddsf4_alts, *nmadddf4_truncsf_alts, *nmaddxf4_truncsf_alts):
- New patterns.
- (divsi3_internal, divdi3_internal_lat, divdi3_internal_thr)
- (divsf3_internal_lat, divsf3_internal_thr, sqrtsf2_internal_thr)
- (divdf3_internal_lat, divdf3_internal_thr, sqrtdf2_internal_thr)
- (divxf3_internal_lat, divxf3_internal_thr, sqrtxf2_internal_thr):
- Update to match.
-
-2004-01-27 Ian Lance Taylor <ian@wasabisystems.com>
-
- * config/arm/arm.c (output_return_instruction): Only restore IP
- into SP if frame_pointer_needed.
-
-2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_pass_by_reference): Return 1
- for SCmode and DCmode if ARCH32.
- (sparc_va_arg): Handle SCmode and DCmode by reference if ARCH32.
- * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for TCmode
- if ARCH32.
- (BASE_RETURN_VALUE_REG): Return 32 for all FP modes except TFmode
- if ARCH32.
- (BASE_OUTGOING_VALUE_REG): Likewise.
-
-2004-01-27 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/10904
- PR target/13058
- * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): New.
- Forbid mode changes from SImode for lower FP regs if ARCH64.
-
-2004-01-27 J"orn Rennecke <joern.rennecke@superh.com>
-
- * Makefile.in (bt-load.o): Depend on except.h.
- * bt-load.c (except.h): #include.
- (compute_defs_uses_and_gen): If insn at end of BB can throw
- within this function, consider registers used by it unavailable for
- btr migration.
- (move_btr_def): If insn at end of BB can throw, insert before rather
- than after.
-
- * flags.h (flag_btr_bb_exclusive): Declare.
- * toplev.c (flag_btr_bb_exclusive): New variable.
- (f_options): Add btr-bb-exclusive.
- * bt-load.c (augment_live_range): Restore old behaviour if
- flag_btr_bb_exclusive is set.
- * common.opt: Add entry for -fbtr-bb-exclusive.
- * opts.c (common_handle_options): Same.
- * doc/invoke.texi: Document -fbtr-bb-exclusive.
-
- * bt-load.c (btrs_live_at_end): New variable.
- (compute_defs_uses_and_gen): Compute its pointed-to array.
- (clear_btr_from_live_range, add_btr_to_live_range): Update it.
- (augment_live_range): When augmenting with a new dominator,
- use only its btrs_live_at_end set, but also add in the full set
- of the old dominator.
- (btr_def_live_range): Use btrs_live_at_end.
- (move_btr_def): Set other_btr_uses_before_def, and move new set
- to the end of the basic block, if appropriate.
- (migrate_btr_defs): Allocate and free btrs_live_at_end.
-
- * bt-load.c (basic_block_freq): Remove outdated comment.
-
-2004-01-27 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.h: Correct target_flags free bits comment.
- (PREDICATE_CODES): Remove duplicate.
- * config/rs6000/linux64.h (CPP_SYSV_SPEC): Don't define.
- (SUBSUBTARGET_OVERRIDE_OPTIONS): Disallow 32 bit TARGET_PROFILE_KERNEL.
- (MASK_PROFILE_KERNEL): Adjust define.
-
-2004-01-27 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (ix86_constant_alignment): Decrease alignment
- of long string literals from 32 bytes to sizeof (void *) when !-Os
- and to 1 with -Os.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_tiny_constant_address_p): Accept
- constant addresses in the normal mode.
-
-2004-01-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h (CHAR_BITFIELD): Delete.
- (BOOL_BITFIELD): New.
- * c-decl.c (c_scope): Use BOOL_BITFIELD.
- * gengtype-lex.l: Recognize BOOL_BITFIELD instead of CHAR_BITFIELD.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arc/arc.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (arc_return_in_memory): Likewise.
- * config/arc/arc.h (PROMOTE_FUNCTION_ARGS): Remove.
- (PROMOTE_FUNCTION_RETURN): Likewise.
- (RETURN_IN_MEMORY): Likewise.
- (STRUCT_VALUE): Likewise.
-
-2004-01-26 Richard Henderson <rth@redhat.com>
-
- * c-parse.in (extension): Use itype.
- (SAVE_EXT_FLAGS): Don't allocate a tree.
- (RESTORE_EXT_FLAGS): Don't read a tree.
-
-2004-01-26 Jan Hubicka <jh@suse.cz>
-
- * cselib.c (discard_useless_values): Clear out value pointer pointing
- to datastructure to be recycled.
-
-2004-01-25 Jan Hubicka <jh@suse.cz>
-
- * genextract.c (main): Do not output the memset when not checking.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_tiny_constant_address_p): Use a
- switch statement instead of a chain of if statements.
-
-2004-01-26 Jeff Law <law@redhat.com>
-
- * doc/contrib.texi: Minor cleanup for Paolo Carlini's entry. Add
- acute accents for Petur Runolfsson's entry.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/pdp11/pdp11.c (TARGET_STRUCT_VALUE_RTX): New.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- * config/pdp11/pdp11.h (STRUCT_VALUE): Remove.
- (RETURN_IN_MEMORY): Likewise.
-
-2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): split slow
- unaligned load/store into smaller loads and stores.
-
-2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
-
- * function.c (assign_parms): Do not assign
- long long argument to memory in prologue if
- is it loaded into register.
-
-2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
-
- PR middle-end/13779
- * expr.c (emit_group_load): split constant
- correctly into register components of PARALLEL insn.
-
-2004-01-26 Fariborz Jahanian <fjahanian@apple.com>
-
- * gcc/config/rs6000/rs6000.md (save_stack_nonlocal):
- Use adjust_address_nv directly with appropriate mode.
- (restore_stack_nonlocal): Ditto.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/xtensa/xtensa-protos.h: Remove the prototype for
- xtensa_builtin_saveregs.
- * config/xtensa/xtensa.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
- (xtensa_builtin_saveregs): Make it static.
- (xtensa_return_in_memory): New.
- * config/xtensa/xtensa.h (PROMOTE_FUNCTION_ARGS: Remove.
- (PROMOTE_FUNCTION_RETURN): Likewise.
- (PROMOTE_PROTOTYPES): Likewise.
- (STRUCT_VALUE): Likewise.
- (RETURN_IN_MEMORY): Likewise.
- (EXPAND_BUILTIN_SAVEREGS): Likewise.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arm/arm.c (TARGET_SETUP_INCOMING_VARARGS): New.
- (arm_setup_incoming_varargs): Likewise.
- * config/arm/arm.h (SETUP_INCOMING_VARARGS): Remove.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/cris/cris.c (TARGET_SETUP_INCOMING_VARARGS): New.
- (cris_setup_incoming_varargs): Likewise.
- * config/cris/cris.h (SETUP_INCOMING_VARARGS): Remove.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ns32k/ns32k.c (TARGET_STRUCT_VALUE_RTX): New.
- (ns32k_struct_value_rtx): Likewise.
- * config/ns32k/ns32k.h (STRUCT_VALUE_REGNUM): Rename to
- NS32K_STRUCT_VALUE_REGNUM.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arm/arm.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (arm_struct_value_rtx): Likewise.
- * config/arm/arm.h (PROMOTE_FUNCTION_ARGS): Remove.
- (STRUCT_VALUE): Likewise.
- (STRUCT_VALUE_REGNUM): Likewise.
- (PROMOTE_PROTOTYPES): Likewise.
-
-2004-01-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ia64/ia64-protos.h: Remove the prototype for
- ia64_setup_incoming_varargs and ia64_return_in_memory.
- * config/ia64/ia64.c (TARGET_STRUCT_VALUE_RTX): New.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
- (ia64_setup_incoming_varargs): Adjust the arguments to meet
- the requirement of TARGET_SETUP_INCOMING_VARARGS.
- (ia64_return_in_memory): Make it static. Change the return
- type to bool from int. Add an argument.
- (ia64_struct_value_rtx): New.
- * config/ia64/ia64.h: Remove commented-out definitions of
- PROMOTE_FUNCTION_ARGS, PROMOTE_FUNCTION_RETURN, and
- PROMOTE_PROTOTYPES.
- (RETURN_IN_MEMORY): Remove.
- (STRUCT_VALUE_REGNUM): Likewise.
- (STRICT_ARGUMENT_NAMING): Likewise.
-
-2004-01-26 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/13666
- * config/sparc/sparc.c (function_arg_union_value): New function.
- (function_arg): Use it to deal with unions.
- (function_value): Likewise. Define 'regbase' only for ARCH64.
- Replace a conditional statement by a simpler one.
-
-2004-01-26 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips16_optimize_gp): Delete.
- (mips_reorg): Don't call it.
-
-2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (addqi3_noclobber): Move up pecking order.
- (floatunsqihf2): Remove operand 6.
- (fixhfqi_set, fix_trunchfqi2, fixuns_trunchfqi2): Group with other
- fix patterns.
- (ldi_conditional, ldf_conditional): Validate operands.
-
-2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (BCT_CHECK_LOOP_ITERATIONS): Remove.
- (HAVE_GAS_HIDDEN): Undefine as interim measure.
-
-2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_legitimate_address_p): Invalidate direct
- memory references if TARGET_EXPOSE_LDP nonzero.
-
-2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (legitimize_operands): Truncate invalid shift counts.
-
-2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_valid_operands): More aggressively reject
- invalid operand combinations.
-
-2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_check_legit_addr): Rename to
- c4x_legitimate_address_p. Fix post_modify check.
-
- * config/c4x/c4x-protos.h (c4x_check_legit_addr): Adjust.
- * config/c4x/c4x.h (c4x_check_legit_addr): Adjust.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/pa/pa-protos.h: Remove the prototype for
- hppa_builtin_saveregs. Add a prototype for
- pa_return_in_memory.
- * config/pa/pa.c (TARGET_PROMOTE_FUNCTION_RETURN): New.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
- (pa_struct_value_rtx): Likewise.
- (pa_return_in_memory): Likewise.
- * config/pa/pa.h (STRUCT_VALUE_REGNUM): Rename to
- PA_STRUCT_VALUE_REGNUM.
- (INIT_CUMULATIVE_ARGS): Use pa_return_in_memory.
- (EXPAND_BUILTIN_SAVEREGS): Remove.
- (PROMOTE_PROTOTYPES): Likewise.
- (PROMOTE_FUNCTION_RETURN): Likewise.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/vax/vax.c (TARGET_PROMOTE_PROTOTYPES): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (vax_struct_value_rtx): Likewise.
- * config/vax/vax.h (STRUCT_VALUE_REGNUM): Rename to
- VAX_STRUCT_VALUE_REGNUM.
- (PROMOTE_PROTOTYPES): Remove.
-
-2004-01-26 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Handle symref.
-
-2004-01-25 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.h (ISA_HAS_HILO_INTERLOCKS): MIPS32, MIPS32r2,
- and MIPS64 have HI/LO interlocks. Update comment.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/stormy16/stormy16-protos.h: Remove the prototype for
- xstormy16_setup_incoming_varargs.
- * config/stormy16/stormy16.c
- (xstormy16_setup_incoming_varargs): Remove.
- (xstormy16_return_in_memory): New.
- (TARGET_PROMOTE_FUNCTION_ARGS): Likewise.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- * config/stormy16/stormy16.h (PROMOTE_FUNCTION_ARGS): Remove.
- (PROMOTE_FUNCTION_RETURN): Likewise
- (PROMOTE_PROTOTYPES): Likewise
- (RETURN_IN_MEMORY): Likewise
- (STRUCT_VALUE): Likewise
- (SETUP_INCOMING_VARARGS): Likewise
-
-2004-01-25 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_offset_within_object_p): New function.
- (mips_symbolic_constant_p): Use it in the SYMBOL_SMALL_DATA and
- SYMBOL_CONSTANT_POOL cases. Also use it for SYMBOL_GENERAL if the
- ABI has 64-bit pointers and the object file only allows 32-bit symbols.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/sh/sh.h (PROMOTE_FUNCTION_ARGS): Remove.
- (PROMOTE_FUNCTION_RETURN): Likewise.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mn10300/mn10300-protos.h: Remove the prototype for
- mn10300_builtin_saveregs.
- * config/mn10300/mn10300.c (TARGET_PROMOTE_PROTOTYPES): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
- (mn10300_return_in_memory): Likewise.
- (mn10300_builtin_saveregs): Make it static.
- * config/mn10300/mn10300.h (PROMOTE_PROTOTYPES): Remove.
- (RETURN_IN_MEMORY): Likewise.
- (STRUCT_VALUE): Likewise.
- (EXPAND_BUILTIN_SAVEREGS): Likewise.
-
-2004-01-25 Eric Botcazou <ebotcazou@act-europe.fr>
-
- PR bootstrap/13853
- * cfgcleanup.c (try_optimize_cfg): Explicitly test against 0.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/lib1funcs.asm (divnorm, modnorm): Optimize by
- using ccr.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i860/i860-protos.h: Remove the prototype for
- i860_saveregs.
- * config/i860/i860.c (i860_saveregs): Make it static.
- (i860_struct_value_rtx): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_EXPAND_BUILTIN_SAVEREGS): Likewise.
- * config/i860/i860.h (STRUCT_VALUE_REGNUM): Rename to
- I860_STRUCT_VALUE_REGNUM.
- (EXPAND_BUILTIN_SAVEREGS): Remove.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m68hc11/m68hc11.c (TARGET_STRUCT_VALUE_RTX): New.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (m68hc11_struct_value_rtx): Likewise.
- (m68hc11_return_in_memory): Likewise.
- * config/m68hc11/m68hc11.h: Remove a commented-out definition
- of PROMOTE_PROTOTYPES.
- (RETURN_IN_MEMORY): Remove.
- (STRUCT_VALUE_REGNUM): Likewise.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mmix/mmix-protos.h: Remove the prototype for
- mmix_setup_incoming_varargs.
- * config/mmix/mmix.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (mmix_setup_incoming_varargs): Make it static.
- (mmix_struct_value_rtx): New.
- * config/mmix/mmix.h (PROMOTE_FUNCTION_ARGS): Remove.
- Remove a commented-out definition of PROMOTE_FUNCTION_RETURN.
- (STRUCT_VALUE_REGNUM): Remove.
- (SETUP_INCOMING_VARARGS): Likewise.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mips/mips-protos.h: Remove the prototypes for
- mips_setup_incoming_varargs and mips_return_in_memory.
- * config/mips/mips.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_PROMOTE_PROTOTYPES): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
- (mips_setup_incoming_varargs): Match the prototype for
- TARGET_SETUP_INCOMING_VARARGS.
- (mips_return_in_memory): Make it static. Add argument fntype.
- (mips_strict_argument_naming): New.
- * config/mips/mips.h (PROMOTE_PROTOTYPES): Remove.
- (PROMOTE_FUNCTION_ARGS): Likewise.
- (PROMOTE_FUNCTION_RETURN): Likewise.
- (STRUCT_VALUE): Likewise.
- (RETURN_IN_MEMORY): Likewise.
- (SETUP_INCOMING_VARARGS): Likewise.
- (STRICT_ARGUMENT_NAMING): Likewise.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/ip2k/ip2k.c (TARGET_STRUCT_VALUE_RTX): New.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_SETUP_INCOMING_VARARGS): Likewise.
- (ip2k_return_in_memory): Likewise.
- (ip2k_setup_incoming_varargs): Likewise.
- * config/ip2k/ip2k.h (RETURN_IN_MEMORY): Remove.
- (STRUCT_VALUE): Likewise.
- (STRUCT_VALUE_INCOMING): Likewise.
- (SETUP_INCOMING_VARARGS): Likewise.
-
-2004-01-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/avr/avr.c (TARGET_STRUCT_VALUE_RTX): New.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- (TARGET_STRICT_ARGUMENT_NAMING): Likewise.
- (avr_return_in_memory): Remove.
- * config/avr/avr.h (RETURN_IN_MEMORY): Remove.
- (STRUCT_VALUE): Likewise.
- (STRUCT_VALUE_INCOMING): Likewise.
- (STRICT_ARGUMENT_NAMING): Likewise.
-
-2004-01-25 Jan Hubicka <jh@suse.cz>
-
- * combine.c (recog_for_combine): Avoid allocating unnecesary RTX.
-
-2004-01-25 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_reg_mode_ok_for_base_p): Delete.
- (mips_regno_mode_ok_for_base_p): Declare.
- * config/mips/mips.h (ARG_POINTER_REGNUM): Renumber to 77.
- (FRAME_POINTER_REGNUM): Renumber to 78.
- (FIRST_PSEUDO_REGISTER): Update comment accordingly.
- (BASE_REG_P, GP_REG_OR_PSEUDO_STRICT_P): Delete.
- (GP_REG_OR_PSEUDO_NONSTRICT_P): Delete.
- (REGNO_MODE_OK_FOR_BASE_P): Use mips_regno_mode_ok_for_base_p.
- (REG_MODE_OK_FOR_BASE_P): Likewise.
- * config/mips/mips.c (mips_reg_names, mips_sw_reg_names): Change
- entry for 77 to "$arg" and entry for 78 to "$frame".
- (mips_regno_to_class): Map 77 and 78 to ALL_REGS.
- (mips_reg_mode_ok_for_base_p): Remove.
- (mips_regno_mode_ok_for_base_p): New function, derived from old
- BASE_REG_P macro. Don't enforce the mips16 stack pointer
- restrictions unless we're being strict.
- (mips_valid_base_register_p): Use mips_regno_mode_ok_for_base_p.
-
-2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-common.h: Fix comment typos.
- * c-decl.c: Likewise.
- * cgraphunit.c: Likewise.
- * combine.c: Likewise.
- * et-forest.c: Likewise.
- * flow.c: Likewise.
- * function.c: Likewise.
- * ifcvt.c: Likewise.
- * integrate.c: Likewise.
- * jump.c: Likewise.
- * postreload.c: Likewise.
- * varray.c: Likewise.
-
-2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/frontends.texi: Update copyright.
- * doc/gcov.texi: Likewise.
- * doc/gty.texi: Likewise.
- * doc/sourcebuild.texi: Likewise.
- * doc/standards.texi: Likewise.
-
-2004-01-24 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
-
- PR target/12978
- * c4x.md: (movstrqi*) Use match_scratch instead of match_dup.
- Remove movstrqi_small because it conflicts with movstrqi_large.
-
-2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/cris/cris.c (TARGET_PROMOTE_FUNCTION_ARGS): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (cris_struct_value_rtx): Likewise.
- * config/cris/cris.h (PROMOTE_FUNCTION_ARGS): Remove.
- (CRIS_STACKADJ_REG): Use CRIS_STRUCT_VALUE_REGNUM instead of
- STRUCT_VALUE_REGNUM.
- (STRUCT_VALUE_REGNUM): Rename to CRIS_STRUCT_VALUE_REGNUM.
-
-2004-01-24 Ian Lance Taylor <ian@wasabisystems.com>
-
- PR bootstrap/13848
- * cse.c (cse_cc_succs): Change the mode of the source expression
- as soon as decide we need a new mode. Don't permit changing modes
- if we found a match in a successor block.
- (cse_condition_code_reg): Save original mode of source expression
- so that we know whether we have to change the mode in other
- insns.
-
-2004-01-24 Jan Hubicka <jh@suse.cz>
-
- * emit-rtl.c (change_address, adjust_address_1, offset_address,
- widen_memory_access): Return early when there is nothing to change.
-
-2004-01-24 Jakub Jelinek <jakub@redhat.com>
-
- * simplify-rtx.c (simplify_relational_operation): Don't
- simplify address == constant into address + -constant == 0.
-
-2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * gcc.c (process_command): Don't internationalize the
- Copyright message.
- * mips-tfile.c (main): Likewise.
-
-2004-01-24 Andreas Tobler <a.tobler@schweiz.ch>
-
- * cse.c: (cse_cc_succs) Fix comparison warning.
-
-2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Remove extraneous USE in expanders.
-
-2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Provide prototypes for
- h8300_legitimate_constant_p and h8300_legitimate_address_p.
- * config/h8300/h8300.c (h8300_legitimate_constant_p): New.
- (h8300_rtx_ok_for_base_p): Likewise.
- (h8300_legitimate_address_p): Likewise.
- * config/h8300/h8300.h (LEGITIMATE_CONSTANT_P): Use
- h8300_legitimate_constant_p.
- (RTX_OK_FOR_BASE_P): Remove.
- (GO_IF_LEGITIMATE_ADDRESS): Use h8300_legitimate_address_p.
-
-2004-01-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (REG_OK_FOR_INDEX_NONSTRICT_P): New.
- (REG_OK_FOR_BASE_NONSTRICT_P): Likewise.
- (REG_OK_FOR_INDEX_STRICT_P): Likewise.
- (REG_OK_FOR_BASE_STRICT_P): Likewise.
- (REG_OK_FOR_INDEX_STRICT_P): Use REGNO_OK_FOR_INDEX_P.
- (REG_OK_FOR_BASE_STRICT_P): Use REGNO_OK_FOR_BASE_P.
- (REG_OK_FOR_INDEX_P): Use REG_OK_FOR_INDEX_STRICT_P.
- (REG_OK_FOR_BASE_P): Use REG_OK_FOR_BASE_STRICT_P.
-
-2004-01-24 Jan Hubicka <jh@suse.cz>
-
- * cselib.c (remove_useless_values): Do not access discarded values.
-
-2004-01-24 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-typeck.c (build_conditional_expr): Do not allow non-lvalue
- arrays.
-
-2004-01-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * recog.c: Fix a typo in copyright.
-
-2004-01-23 Andrew Pinski <apinski@apple.com>
-
- * config/rs6000/rs6000.md (call): Fix misappiled patch.
- (call_value): Likewise.
-
-2004-01-23 Richard Henderson <rth@redhat.com>
-
- PR opt/12941
- * combine.c (SHIFT_COUNT_TRUNCATED): Provide default value.
- (simplify_comparison): Don't simplify (eq (zero_extract c 1 r) 0)
- if SHIFT_COUNT_TRUNCATED is set.
-
-2004-01-23 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (xtensa_va_arg): Handle complex values as
- separate real and imaginary parts.
- * config/xtensa/xtensa.h (SPLIT_COMPLEX_ARGS): Define.
-
-2004-01-23 Hartmut Penner <hpenner@de.ibm.com>
-
- PR target/13674
- * config/rs6000/rs6000.md (movdf_hardfloat64): Do not disparage
- loading into GPR.
-
-2004-01-23 Jan Hubicka <jh@suse.cz>
-
- * emit-rtl.c (change_address_1): Do not re-generate the RTX if nothing
- change.
-
- * alloc-pool.c (align_four): Kill.
- (create_alloc_pool): Align size to eight.
- (free_alloc_pool, free_pool): Invalidate deallocated data.
-
-2004-01-23 Ian Lance Taylor <ian@wasabisystems.com>
-
- PR gcc/1532
- * cse.c (cse_change_cc_mode): New static function.
- (cse_change_cc_mode_insns, cse_cc_succs): Likewise.
- (cse_condition_code_reg): New function.
- * rtl.h (cse_condition_code_reg): Declare.
- * toplev.c (rest_of_handle_cse2): Call cse_condition_code_reg.
- * target.h (struct gcc_target): Add fixed_condition_code_regs and
- cc_modes_compatible.
- * target-def.h (TARGET_FIXED_CONDITION_CODE_REGS): Define.
- (TARGET_CC_MODES_COMPATIBLE): Define.
- (TARGET_INITIALIZER): Add new initializers.
- * targhooks.c (default_cc_modes_compatible): New function.
- * targhooks.c (default_cc_modes_compatible): Declare.
- * hooks.c (hook_bool_intp_intp_false): New function.
- * hooks.h (hook_bool_intp_intp_false): Declare.
- * config/i386/i386.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
- (TARGET_CC_MODES_COMPATIBLE): Define.
- (ix86_fixed_condition_code_regs): New static function.
- (ix86_cc_modes_compatible): Likewise.
- * doc/tm.texi (Condition Code): Document new hooks.
-
-2004-01-23 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (bad_lval): Renamed to ...
- (alpha_bad_lval): ... this.
- Removed file list.
- Restrict to alpha*-dec-osf*.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/dirent.h: Remove, moving test ...
- * fixinc/tests/base/testing.h: ... here, reflecting new name.
-
-2004-01-23 Zack Weinberg <zack@codesourcery.com>
-
- PR c/13814
- * c-decl.c (diagnose_mismatched_decls): Also discard a
- built-in if we encounter an old-style definition with the
- same name.
-
-2004-01-23 Jakub Jelinek <jakub@redhat.com>
-
- * config.gcc (powerpc*-*): Clear $with_cpu or $with_tune if it was
- set to default{32,64}.
-
-2004-01-21 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR)
- [!__powerpc64__]: Corrected to handle kernels with changed ucontext.
-
-2004-01-23 Eric Botcazou <ebotcazou@act-europe.fr>
- Olivier Hainque <hainque@act-europe.fr>
-
- * fold-const.c (fold_binary_op_with_conditional_arg): Only
- build a COMPOUND_EXPR if 'arg' is really a SAVE_EXPR.
-
-2004-01-23 Daniel Jacobowitz <drow@mvista.com>
-
- * config/arm/arm.c (arm_legitimate_address_p): Don't check the mode
- size for minipool references.
-
-2004-01-23 Roger Sayle <roger@eyesopen.com>
-
- * real.c (real_floor, real_ceil): Tweak to allow input and output
- arguments to overlap.
- (real_round): New function to implement round(3m) semantics.
- * real.h (real_round): Prototype here.
- * builtins.c (fold_builtin_round): New function to constant fold
- round, roundf and roundl.
- (fold_builtin): Call fold_builtin_round for BUILT_IN_ROUND{,F,L}.
-
-2004-01-23 Alexandre Oliva <aoliva@redhat.com>
-
- PR optimization/13819
- * config/sh/sh.c (sh_reorg): Compensate for sharing of CLOBBERs
- introduced by 2004-01-20's Jan Hubicka's copy_insn change.
- (sh_handle_sp_switch_attribute): Remove warning.
-
-2004-01-23 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_emit_restore_regs_using_mov): Deal with large offsets.
-
-2004-01-23 J"orn Rennecke <joern.rennecke@superh.com>
-
- * doc/tm.texi: Insert some weasel words when LOAD_EXTEND_OP
- may or may not return non-NIL.
- * postreload.c (reload_cse_simplify_operands): In LOAD_EXTEND_OP code,
- check CANNOT_CHANGE_MODE_CLASS
-
-2004-01-23 Jan Hubicka <jh@suse.cz>
-
- * basic-block.h (PROP_POSTRELOAD): New macro.
- (CLEANUP_LOG_LINKS): New.
- * cfgcleanup.c (cleanup_cfg): Only PROP_LOG_LINKS when asked to.
- * toplev.c (rest_of_handle_life): Preserve LOG_LINKS trought cleanup_cfg.
-
- * cselib.c (value_pool): New.
- (new_cselib_val): Use pool.
- (cselib_init): Initialize value_pool
- (cselib_finish): Free pool.
-
-2004-01-23 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (scan_record_type): New function.
- (function_arg_slotno): Use it to determine which kinds of
- registers the record can be passed in.
-
-2004-01-22 James A. Mmorrison <ja2morri@uwaterloo.ca>
-
- * config/pa/fptr.c: Fix old-style definition.
-
-2004-01-22 Paolo Bonzini <bonzini@gnu.org>
-
- PR optimization/13724
- * cse.c (fold_rtx) <SUBREG>: Fold a SUBREG to zero if it
- represents the zero bits produced by a ZERO_EXTEND operation.
-
-2004-01-22 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/13821
- * simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset to
- correctly calculate the lowpart offset of the contracted subreg.
-
-2004-01-22 Ian Lance Taylor <ian@wasabisystems.com>
-
- * doc/invoke.texi (Optimize Options): Note that --param arguments
- are subject to change without notice.
-
-2004-01-22 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.gcc (mips-sgi-irix6*o32): Removed.
- * config/mips/iris6-o32-as.h: Likewise.
- * config/mips/iris6-o32-gas.h: Likewise.
- * config/mips/iris6-o32.h: Likewise.
-
-2004-01-22 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (first_pass): New static variable.
- (try_forward_edges): Add work limiting check for threading.
- (try_crossjump_bb): Add work limiting check for crossjumping.
- (try_optimize_cfg): Maintain first pass variable.
-
-2004-01-22 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.c (function_arg): Generalize logic so that it
- handles complex and vector modes.
-
-2004-01-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (REG_OK_FOR_INDEX_P_STRICT): Remove.
- (REG_OK_FOR_BASE_P_STRICT): Likewise.
- (STRICT): Likewise.
-
-2004-01-22 Daniel Jacobowitz <drow@mvista.com>
-
- * c-semantics.c (genrtl_while_stmt, genrtl_do_stmt_1)
- (genrtl_for_stmt): Remove emit_nop calls.
-
-2004-01-22 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR target/13713
- PR target/13324
- * pa.md (movstrsi_prereload, movstrsi_postreload, movstrdi_prereload,
- movstrdi_postreload, clrstrsi_prereload, clrstrsi_postreload,
- clrstrdi_prereload, clrstrdi_postreload): Fix constraints.
-
-2004-01-22 Daniel Jacobowitz <drow@mvista.com>
-
- * config/arm/arm.c: Include "debug.h".
- (thumb_pushpop): Take two new arguments. Add some commentary.
- Output frame information when pushing.
- (thumb_exit, thumb_unexpanded_epilogue): Update calls to
- thumb_pushpop.
- (thumb_output_function_prologue): Likewise. Accumulate a CFA
- offset, and pass it to thumb_pushpop. Output CFI information.
- (thumb_expand_prologue): Add some frame-related markers and notes.
-
-2004-01-22 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_frame_info): Allow large frame sizes
- for TARGET_64BIT.
- (s390_arg_frame_offset): Change return type to HOST_WIDE_INT.
- * config/s390/s390-protos.h (s390_arg_frame_offset): Likewise.
-
-2004-01-22 Roger Sayle <roger@eyesopen.com>
- Paolo Bonzini <bonzini@gnu.org>
-
- * rtlanal.c (subreg_lsb_1): New function split out from subreg_lsb.
- (subreg_lsb): Change to call new subreg_lsb_1 helper function.
- * rtl.h (subreg_lsb_1): Prototype here.
- * simplify-rtx.c (simplify_subreg): Optimize subregs of zero and
- sign extensions.
-
-2004-01-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/tm.texi (CASE_VECTOR_PC_RELATIVE): Mention that the
- macro need not be defined if jump-tables should contain
- relative addresses only when -fPIC or -fPIC is in effect.
-
-2004-01-22 Jan Hubicka <jh@suse.cz>
-
- * alias.c (reg_base_value): Turn into varray.
- (reg_base_value_size): Kill.
- (old_reg_base_value): New deletable varray.
- (alias_invariant_size): New variable.
- (REG_BASE_VALUE): Update to use varray.
- (find_base_value): Likewise.
- (record_set): Likewise.
- (record_base_value): Likewise.
- (memrefs_conflict_p): Likewise.
- (record_set): Likewise
- (record_base_value): Likewise.
- (memrefs_conflict_p): Use alias_invariant_size.
- (init_alias_analysis): Use varray; set alias_invariant_size;
- rescale other arrays to be sized by maxreg.
- (end_alias_analysis): Save reg_base_value; clear alias_invariant_size.
-
-2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.c (function_arg_slotno): Use
- FLOAT_TYPE_P to detect FP fields in structures.
- (function_arg_record_value_1): Likewise.
- (function_arg_record_value_2): Likewise.
-
-2004-01-22 Jan Hubicka <jh@suse.cz>
-
- * function.c (allocate_struct_function): Do not initialize expr, emit
- and varasm.
- (prepare_function_start): Do it here.
- * c-parse.in (maybe_type_qual): Do not produce line number notes.
-
-2004-01-22 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/13559
- * config/sparc/sparc.c (function_arg_record_value_3): Revert
- to 'word_mode' once the first slot has been filled.
-
-2004-01-22 Olivier Hainque <hainque@act-europe.fr>
-
- * config/sparc/sparc.c (function_arg_record_value_1): Fix
- computation of the number of integer registers required.
-
-2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/i386.md: Simplify certain comparisons of
- const_int.
-
-2004-01-21 Andrew Pinski <apinski@apple.com>
-
- PR target/13785
- * config/rs6000/rs6000.md (call_value): Force operand
- 1 not operand 0 into a register.
-
-2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * cpperror.c, cpptrad.c, longlong.h, params.def, rtl.def,
- unwind-dw2-fde.h: Update copyright.
-
-2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa-protos.h: Update copyright.
- * pa.h: Likewise.
- * pa.md: Likewise.
-
-2004-01-21 Caroline Tice <ctice@apple.com>
-
- PR target/12308
- * config/i386/i386.md (fix_truncxfdi2): Add clause to clobber
- flags register.
- (fix_truncdfdi2): Likewise.
- (fix_truncsfdi2): Likewise.
- (*fix_truncdi_1): Likewise.
- (fix_truncxfsi2): Likewise.
- (fix_truncdfsi2): Likewise.
- (fix_truncsfsi2): Likewise.
- (*fix_truncsi_1): Likewise.
- (fix_truncxfhi2): Likewise.
- (fix_truncdfhi2): Likewise.
- (fix_truncsfhi2): Likewise.
- (*fix_trunchi_1): Likewise.
-
-2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * alias.c, basic-block.h, c-common.c, c-common.h,
- c-cppbuiltin.c, c-opts.c, c-pragma.c, c-pretty-print.c,
- calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c,
- combine.c, cppcharset.c, cpphash.h, cppinit.c, cpplib.c,
- cpplib.h, cppmacro.c, crtstuff.c, cselib.c, cselib.h,
- defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c,
- expr.h, fix-header.c, function.h, gcc.c, gcse.c, genattrtab.c,
- genautomata.c, genconditions.c, genemit.c, genflags.c,
- gengtype.c, gengtype.h, genopinit.c, genrecog.c, gensupport.c,
- ggc-zone.c, graph.c, haifa-sched.c, input.h, integrate.c,
- langhooks-def.h, langhooks.c, langhooks.h, line-map.c,
- line-map.h, local-alloc.c, optabs.c, optabs.h, postreload.c,
- ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c,
- rtl.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h,
- target.h, targhooks.c, toplev.h, tree-inline.c, unwind-pe.h,
- unwind.h, varray.c, varray.h: Update copyright.
-
-2004-01-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/coff.h: Update copyright.
- * config/h8300/elf.h: Likewise.
- * config/h8300/h8300-protos.h: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/h8300/h8300.h: Likewise.
- * config/h8300/h8300.md: Likewise.
-
-2004-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * fixinc/inclhack.def (hpux10_stdio_declarations, ultrix_const3,
- ultrix_locale, ultrix_stdlib, ultrix_strings, ultrix_sys_time,
- ultrix_unistd): New hacks.
- * fixinc/tests/base/stdio.h (HPUX10_STDIO_DECLARATIONS_CHECK,
- ULTRIX_CONST2_CHECK): Add checks.
- * fixinc/tests/base/stdlib.h (ULTRIX_STDLIB_CHECK): Likewise.
- * fixinc/tests/base/strings.h (ULTRIX_STRINGS2_CHECK): Likewise.
- * fixinc/tests/base/unistd.h (ULTRIX_UNISTD_CHECK): Likewise.
- * fixinc/tests/base/sys/time.h (ULTRIX_SYS_TIME_CHECK): Likewise.
- * fixinc/tests/base/locale.h: New file.
- * fixinc/fixincl.x: Rebuilt.
-
-2004-01-21 Andreas Jaeger <aj@suse.de>
- Michael Matz <matz@suse.de>
-
- * doc/extend.texi (Extended Asm): Clarify memory clobber.
-
-2004-01-21 Jakub Jelinek <jakub@redhat.com>
-
- * crtstuff.c (frame_dummy, __do_global_ctors_1): Call
- _Jv_RegisterClasses through a function pointer.
-
-2004-01-21 Falk Hueffner <falk@debian.org>
-
- PR target/12898
- * config/alpha/alpha.c (alpha_emit_set_const_1): If
- no_new_pseudos, use gen_rtx_SET directly for SImode constants
- which need multiple instructions to emit.
-
-2004-01-21 Inaoka Kazuhiro <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h (CPP_SPEC): Define.
-
-2004-01-21 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (merge_decls): Kill different_binding_level and
- different_tu arguments; simplify throughout.
- (duplicate_decls): Likewise.
- (pushdecl, merge_translation_unit_decls): Update calls to
- duplicate_decls.
-
-2004-01-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (pretty-print.o): Depend on $(CONFIG_H) and
- $(SYSTEM_H).
- (print-rtl1.o): Depend on $(SYSTEM_H).
-
-2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
-
- PR bootstrap/12730
- * configure.ac: Delete definition and subsitution of docdir.
- Add info, man, srcman and srcinfo to target hooks. Create doc/
- directory.
- * configure: Regenerate.
- * Makefile.in: Don't substitute docdir and delete all references
- throughout.
- (MAKEINFOFLAGS): Define.
- (stmp-docobjdir): Delete.
- (INFOFILES, MANFILES): Define.
- (info): Call lang.info, srcinfo and lang.srcinfo.
- (generated-manpages): Call lang.man, srcman and lang.srcman.
- (srcinfo, srcman): New rules to copy back files to source directory.
- (doc/%.info, doc/%.dvi, doc/%.1, doc/%.7): New implict rule.
- (install-man): Revamp rule.
- (clean): Update dvi directory.
- (distclean): Delete TAGS from front end directorys.
- (maintainer-clean): Delete all document files in source directory.
-
- objc/Make-lang.in (objc.man, objc.info): Dummy entries.
- (objc.srcman, objc.srcinfo): Likewise.
-
-2004-01-20 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def(math_exception): bypass only for glibc.
- (matherr_decl): rename & relocate as exception_structure.
- This fix must precede the math_exception fix.
-
-2004-01-20 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_convert): Rename to fold_convert_const.
- (fold_convert_const): Change arguments to take a tree_code,
- a type and the operand/expression to be converted. Return
- NULL_TREE if no simplification is possible. Add support for
- FIX_CEIL_EXPR and FIX_FLOOR_EXPR in addition to FIX_TRUNC_EXPR.
- (fold): Handle FIX_CEIL_EXPR and FIX_FLOOR_EXPR.
- Adjust call to fold_convert to match new fold_convert_const.
- Avoid modifying the tree passed to fold in-place.
-
-2004-01-21 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/sysv4.h (DWARF2_FRAME_REG_OUT): Define.
- * dwarf2out.c (output_cfi): Map regs using DWARF2_FRAME_REG_OUT.
- * doc/tm.texi (DWARF_FRAME_REGNUM, DWARF2_FRAME_REG_OUT): Document.
-
-2004-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa-protos.h (compute_frame_size): Use HOST_WIDE_INT for frame sizes.
- * pa.c (store_reg, store_reg_modify, load_reg, set_reg_plus_d):
- Likewise. Handle frames larger than 0x7fffffff on 64-bit ports.
- (emit_move_sequence): Check scratch_reg first in various if statements.
- Extend source simplification to handle all 64-bit CONST_INTs.
- (pa_output_function_prologue): Use HOST_WIDE_INT_PRINT_DEC for printing
- frame size.
- (hppa_expand_prologue, hppa_expand_epilogue): Use HOST_WIDE_INT for
- frame offset calculations.
- * pa.h (NEW_HP_ASSEMBLER): Add comment.
- (MAX_LEGIT_64BIT_CONST_INT, MIN_LEGIT_64BIT_CONST_INT,
- LEGITIMATE_64BIT_CONST_INT_P): Define.
- (LEGITIMATE_CONSTANT_P): Use LEGITIMATE_64BIT_CONST_INT_P. Treat
- any CONST_INT as legitimate during and after reload.
- (VAL_32_BITS_P, INT_32_BITS): Define.
- (LEGITIMIZE_RELOAD_ADDRESS): Handle large frame offsets.
-
-2004-01-20 Jan Hubicka <jh@suse.cz>
-
- * emit-rtl.c (verify_rtx_sharing, copy_insn_1,
- emit_copy_of_insn_after, emit_copy_of_insn_after): Clobbers
- containing hard regs are shared.
- (gen_hard_reg_clobber): New function.
- (hard_reg_clobbers): New array.
- * genemit.c (gen_exp): Use gen_hard_reg_clobber.
- (copy_rtx): Do not copy clobbers containing hard regs.
- * rtl.h (gen_hard_reg_clobber): Declare.
-
-2004-01-20 Jan Hubicka <jh@suse.cz>
-
- * varray.c: Include hashtab.h
- (varray_descriptor): New structure.
- (hash_descriptor, eq_descriptor, varray_descriptor,
- print_statistics): New static functions
- (varray_init, varray_grow): Update statistics
- (dump_varray_statistics): New function.
- * varray.h (dump_varray_statistics): Declare.
- * toplev.c (finalize): Call it.
- * Makefile.in (varray.o): Add dependency.
-
-2004-01-20 Jan Hubicka <jh@suse.cz>
-
- * cselib.c: Include alloc-pool.h
- (empty_vals, empty_elt_lists, empty_elt_loc_lists): Kill.
- (elt_loc_list_pool, elt_list_pool, cselib_val_pool): Declare.
- (new_elt_list, new_elt_loc_list, unchain_one_elt_list,
- unchain_one_elt_loc_list_pool, unchain_one_value,
- new_cselib_val): Simplify using allocpool.
- (cselib_init): Initialize allocpools.
- (cselib_finish): Finish allocpools.
- * Makefile.in (cselib.o): Depend on alloc-pool.h
-
-2004-01-20 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_load_call_address): Make the call insn
- use $gp if it could be calling a lazy binding stub.
-
-2004-01-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/s390/s390.c (TARGET_PROMOTE_FUNCTION_ARGS): Define.
- (TARGET_PROMOTE_FUNCTION_RETURN): Likewise.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- * config/s390/s390.h (PROMOTE_FUNCTION_ARGS): Remove.
- (PROMOTE_FUNCTION_RETURN): Remove.
- (STRUCT_VALUE): Remove.
-
-2004-01-20 Denis Chertykov <denisc@overta.ru>
-
- PR bootstrap/13735
- * config/avr/avr.h (BASE_REG_CLASS): Don't permit to use X
- register as pointer after reload.
-
-2004-01-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR optimization/12440
- * loop.c: Include ggc.h.
- (loop_optimize): Run garbage collector between optimization of loops.
- * Makefile.in (loop.o): Add GGC_H dependency.
-
-2004-01-20 Hartmut Penner <hpenner@de.ibm.com>
-
- * gcc/config/rs6000/rs6000.c (function_arg) Handle
- vector register special in function without prototype.
- (function_arg_advance): Vector parameters get always
- GPRs allocated for the linux64 target.
-
-2004-01-20 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h (TARGET_M32R2). Test for TARGET_M32R2_MASK
- not TARGET_M32RX_MASK.
-
-2004-01-20 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/13557
- * config/sparc/sparc.c (function_arg): Reorder the cases.
-
-2004-01-19 Per Bothner <per@bothner.com>
-
- Move cpp_reader's line_maps field to a shared global.
- * cpphash.h (cpp_reader): Rename line_maps field to line_table
- and change the type to a pointer rather than a struct.
- * cppinit.c (cpp_push_main_field): Adjust accordingly.
- * cpplib.c (do_include_common, _cpp_do_file_change, cpp_get_callbacks):
- Likewise.
- * cppfiles.c (validate_pch): Likewise.
- * cppmacro.c (_cpp_warn_if_unused_macro, _cpp_builtin_macro_text):
- Likewise.
- * cpperror.c (print_location): Likewise.
- * cpplib.h (cpp_create_reader): New line_maps pointer parameter.
- * cppinit.c (cpp_create_reader): Handle new parameter.
- (cpp_destroy): Don't free line_maps - that's no longer our job.
- * input.h (line_table): New variable.
- * toplev.c (line_table): Declare variable.
- (general_init): Initialize line_table.
- * c-opts.c (c_common_init_options): Pass line_table to
- cpp_create_reader.
- * fix-header.c (read_scan_file): New local variable line_table.
- Initialize, and pass it to cpp_create_reader.
- * Makefile.in (LIBS, LIBDEPS): Add libcpp.a.
- (C_AND_OBJC_OBJS, fix-header): Remove redundant libcpp.a.
-
-2004-01-19 Per Bothner <per@bothner.com>
-
- Implement a cache for linemap_lookup.
- * line-map.h (struct_line_maps): Add cache field.
- * line-map.c (linemap_init): Zero cache field.
- (linemap_add): Set cache field to offset of newly allocated map.
- (linemap_lookup): Use and set cache field.
-
-2004-01-20 Kaz Kojima <kkojima@gcc.gnu.org>
-
- PR optimization/13567
- * cse.c (cse_basic_block): Call cse_insn with a non-null
- libcall_insn for the last SET insn of a no-confilict block.
-
-2004-01-20 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (target_noncanonical, program_transform_name): Use
- immediate define instead of deferred.
- (GCC_INSTALL_NAME, GCC_TARGET_INSTALL_NAME, CPP_INSTALL_NAME,
- PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME,
- GCCBUG_INSTALL_NAME): Define via a immediate $(shell) instead of
- deferred backquote.
-
-2004-01-20 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-decl.c (c_init_decl_processing): Set pedantic_lvalues to
- true unconditionally.
- * c-typeck.c (unary_complex_lvalue, pedantic_lvalue_warning):
- Remove.
- (build_unary_op, build_modify_expr): Don't handle extended
- lvalues.
- (build_component_ref, build_conditional_expr): Call non_lvalue
- instead of pedantic_non_lvalue.
- (build_c_cast): Don't condition use of non_lvalue on pedantic.
- * fold-const.c (fold): Don't check pedantic directly for
- COMPOUND_EXPR. Ensure that results for COMPOUND_EXPR are
- passed to pedantic_non_lvalue.
- * doc/extend.texi: Remove documentation of extended lvalues.
-
-2004-01-19 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/5263
- * simplify-rtx.c (associative_constant_p): Delete.
- (simplify_associative_operation): Rewrite to linearize terms, and
- attempt to simplify new term against both left and right subterms.
- (simplify_binary_operation): Call swap_commutative_operands_p on
- op0 and op1, not trueop0 and trueop1. Move the initialization of
- trueop0 and trueop1 down to where first needed.
- (simplify_relational_operation): Likewise.
- * rtlanal.c (commutative_operand_precedence): Also order constant
- operands using avoid_constant_pool_reference.
-
-2004-01-19 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (aligned_memory_operand): Check MEM_ALIGN,
- don't check memory mode.
- (unaligned_memory_operand): Likewise.
- (reload_inqi, reload_inhi, reload_outqi, reload_outhi): Don't
- abort for op0 not MEM.
-
- * config/alpha/alpha.c (alpha_expand_mov_nobwx): If the destination
- is not a reg, copy to a scratch first.
- (aligned_loadqi, aligned_loadhi, unaligned_loadqi, unaligned_loadhi,
- unaligned_loadqi_le, unaligned_loadqi_be, unaligned_loadhi_le,
- unaligned_loadhi_be): Expect op0 in DImode; don't SUBREG.
- (reload_inqi, reload_inhi): Fix mode of op0.
- (reload_inqi_help, reload_inhi_help, reload_outqi_help,
- reload_outhi_help): Likewise. Use define_insn_and_split.
-
- * config/alpha/alpha.md (call peepholes): Check for REG_NORETURN
- as well as $29 dead.
-
-2004-01-19 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): New. Emit
- "tls_object" for thread-local objects.
- * config/sparc/sparc.c (sparc_elf_asm_named_section): Emit
- "#tls" for thread-local sections.
- * configure.ac (thread-local checks): Specify --fatal-warnings in
- every binutils-specific checks. For sparc*-*-*, test whether the
- OS is Solaris and the tools are native and act accordingly.
- * configure: Rebuild.
-
-2004-01-19 Jeff Law <law@redhat.com>
-
- * contrib.texi: Update Paolo Carlini's entry. New entries for
- Jerry Quinn and Petur Runolfsson.
-
-2004-01-19 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.md (*movhi_1, *movqi_1): When optimizing for
- size, don't use the larger zero-extending loads.
-
-2004-01-19 Richard Henderson <rth@redhat.com>
-
- * alpha.h (HARD_REGNO_MODE_OK): Disallow SImode in FP regs.
- * alpha.md (UNSPEC_NT_LDA): Remove.
- (UNSPEC_CVTLQ, cvtlq): New.
- (extendsidi2_1): Rename from extendsidi2_nofix; remove f/f.
- (extendsidi2_fix): Remove.
- (extendsidi2 splitter): Use cvtlq.
- (extendsidi2 fp peepholes): Remove.
- (cvtql): Use SFmode instead of SImode.
- (fix_trunc?fsi): Update to match.
- (floatsisf2_ieee, floatsisf2, floatsidf2_ieee, floatsidf2): New.
- (movsi): Rename from movsi_nofix, remove f alternatives.
- (movsi_nt_vms): Similarly.
- (movsi_fix, movsi_nt_vms_fix): Remove.
- (nt_lda): Remove.
- * alpha.c (alpha_expand_prologue): Use adddi3, not nt_lda.
-
-2004-01-19 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (cgraph_remove_node): Fix removal from linked list.
- * cgraphunit.c (cgraph_finalize_compilation_unit): Clear next_needed
- list.
- (cgraph_remove_unreachable_nodes): New function
- (cgraph_decide_inlining_of_small_function): Fix pasto.
- (cgraph_decide_inlining_incrementally): Fix pasto.
- (cgrpah_decide_inlining): Likewise; remove unreachable nodes.
-
-2004-01-19 Steven Bosscher <stevenb@suse.de>
-
- * gengtype.c (header_file): Make it static.
- (write_types_process_field, write_enum_defn): Minor whitespace fixes.
- * gengtype.h (header_file): No longer extern.
-
-2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * defaults.h (CASE_VECTOR_PC_RELATIVE): Provide the default.
- * expr.c (CASE_VECTOR_PC_RELATIVE): Remove.
- * stmt.c (CASE_VECTOR_PC_RELATIVE): Likewise.
-
-2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * stmt.c (HAVE_casesi): Define it not already defined.
- (HAVE_tablejump): Likewise.
- (expand_end_case_type): Resort to the binary tree method if
- neither casesi or tablejump is available.
-
-2004-01-18 Daniel Jacobowitz <drow@mvista.com>
-
- * final.c (final_scan_insn): Make non-static again.
- * output.h (final_scan_insn): Re-add prototype.
- * config/arc/arc.c (arc_output_function_epilogue): Add NULL
- to final_scan_insn call.
- * config/cris/cris.c (cris_target_asm_function_epilogue): Likewise.
- * config/mips/mips.c (mips_output_conditional_branch): Likewise.
- * config/pa/pa.c (output_lbranch, output_call): Likewise.
- * config/sh/sh.c (print_slot): Likewise.
- * config/sparc/sparc.c (sparc_nonflat_function_epilogue): Likewise.
- (output_sibcall, sparc_flat_function_epilogue): Likewise.
-
-2004-01-18 Jan Hubicka <jh@suse.cz>
-
- * basic-block.h (try_redirect_by_replacing_jump): Declare.
- * cfgcleanup.c (try_optimize_cfg): Use it.
- * cfgrtl.c (try_redirect_by_replacing_jump): Export.
- (rtl_redirect_edge_and_branch, cfg_layout_redirect_edge_and_branch):
- Kill hack.
- (cfg_layout_merge_blocks): Use try_redirect_by_replacing_jump.
-
- Revert:
- 2004-01-16 Geoffrey Keating <geoffk@apple.com>
-
- * cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps
- even after reload, just don't remove the actual jump tables.
-
-2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/rs6000/rs6000.h (STRICT_ARGUMENT_NAMING): Remove.
-
-2004-01-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * defaults.h (ASM_OUTPUT_ADDR_VEC_ELT): Fix the computation of
- the size of a pointer in bytes.
-
-2004-01-18 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_expect_jump): Fix thinko of reusing
- live "next" variable, which could lead to an infinite loop.
-
-2004-01-18 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/altivec.h: Wrap C++ functions in extern "C++"
- block.
-
- * config/rs6000/rs6000.c (rs6000_special_round_type_align):
- Check for NULL in the chain and remove repeated code.
-
-2004-01-18 Jan Hubicka <jh@suse.cz>
-
- * coverage.c (checksum_string): Rename to ...
- (coverage_checksum_string): ... this one, Use crc32_string; recognize
- names containing random number and zero the number out in order to get
- match.
-
-2004-01-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_got_alias_set): Mark for PCH.
-
-2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi,
- doc/frontends.texi, doc/gcov.texi, doc/gty.texi, doc/install.texi,
- doc/invoke.texi, doc/libgcc.texi, doc/md.texi, doc/rtl.texi,
- doc/sourcebuild.texi, doc/standards.texi, doc/tm.texi,
- doc/trouble.texi: Remove trailing whitespace.
-
-2004-01-18 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/7618
- * config/mips/mips.c: Include cfglayout.h.
- (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
- (mips_unspec_offset_high): Add temporary register argument.
- (mips_load_call_address): New function, split out from...
- (mips_expand_call): ...here.
- (mips_output_cplocal): New function.
- (mips_output_function_prologue, mips_output_function_epilogue): Use it.
- (mips_emit_loadgp): New function, split out from...
- (mips_expand_prologue): ...here.
- (mips_output_mi_thunk): New function.
-
-2004-01-17 Bernardo Innocenti <bernie@develer.com>
-
- * longlong.h (mc68020, __mc68030__, mc68030, __mc68040__, mc68040,
- mcpu32): Remove redundant checks for implied target predefines.
-
-2004-1-17 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000.c (rs6000_special_round_type_align):
- Return type is unsigned int not int.
- * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
- Likewise.
-
-2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/contrib.texi, doc/cppenv.texi, doc/extend.texi,
- doc/install.texi, doc/invoke.texi, doc/tm.texi: Consistently use
- "GNU/Linux" and "Microsoft Windows" terminology.
-
-2004-01-18 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/c-tree.texi, doc/compat.texi, doc/cpp.texi,
- doc/cppopts.texi, doc/extend.texi, doc/install.texi,
- doc/interface.texi, doc/invoke.texi, doc/libgcc.texi, doc/md.texi,
- doc/objc.texi, doc/rtl.texi, doc/tm.texi, doc/trouble.texi: Use
- @smallexample instead of @example.
-
-2004-01-17 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (build_objc_method_call): Use target
- hooks instead of macros to determine if ..._stret
- dispatchers should be used (NeXT runtime only).
-
-2004-01-17 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_expect_jump): Fix mistake in my
- last patch. Use XEXP (x, 0) to get a LABEL_REF's CODE_LABEL.
-
-2004-01-17 Daniel Jacobowitz <drow@mvista.com>
-
- * rtl.h (emit_insn_before_sameloc, emit_jump_insn_before_sameloc)
- (emit_call_insn_before_sameloc, emit_insn_after_sameloc)
- (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): New
- macros.
- * reload1.c (emit_reload_insns): Use them.
- * emit-rtl.c (emit_insn_before_sameloc, emit_insn_after_sameloc)
- (emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): Check
- for NULL PATTERN.
-
-2004-01-17 Daniel Jacobowitz <drow@mvista.com>
-
- * final.c (SEEN_BB, SEEN_NOTE, SEEN_EMITTED): Define.
- (final_scan_insn): Update to take an additional SEEN argument. Emit
- a line note after the prologue. Make static.
- (line_note_exists): Remove.
- (final): Don't initialize line_note_exists. Update call to
- final_scan_insn.
- * output.h (final_scan_insn): Remove prologue.
- * function.c (set_insn_locators): Update comment.
- (thread_prologue_and_epilogue_insns): Add a comment.
-
-2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR target/10781
- * config/rs6000/rs6000-protos.h (rs6000_special_round_type_align):
- Prototype.
- * config/rs6000/rs6000.c (rs6000_special_round_type_align):
- New function.
- * config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Use it.
- * config/rs6000/aix.h (ROUND_TYPE_ALIGN): Likewise.
- * config/rs6000/darwin.h (ROUND_TYPE_ALIGN): Likewise.
-
-2004-01-17 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_handle_reorder_blocks): Fix pasto in previous
- commit.
-
- * toplev.c (HAVE_conditional_execution): Provide default.
- (rest_of_handle_reorder_blocks): For conditional_execution target
- update liveness once after all transformations
- (rest_of_compilation): Do crossjumping before ce3.
-
-2004-01-17 Geoffrey Keating <geoffk@apple.com>
-
- * alias.c (new_alias_set): Mark last_alias_set for PCH.
- (get_varargs_alias_set): Rename 'set' to 'varargs_set' and mark it
- for PCH.
- (get_frame_alias_set): Likewise, except rename it to 'frame_set'.
- * config/rs6000/rs6000.c (rs6000_sr_alias_set): Mark for PCH.
- (get_TOC_alias_set): Mark 'set' for PCH.
-
-2004-01-16 Geoffrey Keating <geoffk@apple.com>
-
- * cfgrtl.c (try_redirect_by_replacing_jump): Optimize tablejumps
- even after reload, just don't remove the actual jump tables.
-
-2004-01-17 J. Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (is_subrange_type): Renamed from is_ada_subrange_type().
- Remove checks for is_ada() and TREE_UNSIGNED.
- (subrange_type_die): Emit a byte_size attribute if the subrange
- type size is different from the base type size.
- (modified_type_die): Replace call to is_ada_subrange_type() by
- call to is_subrange_type().
-
-2004-01-16 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/sh/sh.c: Include ggc.h.
-
-2004-01-16 Geoffrey Keating <geoffk@apple.com>
-
- * Makefile.in (MD5_H): New.
- (fold-const.o): Depend on md5.h.
- (dwarf2out.o): Likewise.
- (cppfiles.o): Likewise.
- * cppfiles.c: Include md5.h.
- (should_stack_file): Check against list read from PCH file.
- (struct pchf_data): New.
- (pchf): New variable.
- (struct pchf_adder_info): New.
- (pchf_adder): New.
- (pchf_save_compare): New.
- (_cpp_save_file_entries): New.
- (_cpp_read_file_entries): New.
- (struct pchf_compare_data): New.
- (pchf_compare): New.
- (check_file_against_entries): New.
- * cpphash.h (_cpp_save_file_entries): Prototype.
- (_cpp_read_file_entries): Prototype.
- * cpppch.c (cpp_write_pch_state): Write the list of headers.
- (cpp_read_state): Read the list of headers.
-
-2004-01-17 Jan Hubicka <jh@suse.cz>
-
- * c-common.c (c_estimate_num_insns_1): Handle builtin_constant_p and
- builtin_expect specially.
- * params.def (PARAM_MAX_INLINE_INSNS_AUTO): Set to 100.
- (PARAM_LARGE_FUNCTION_INSNS): Set to 3000.
- * invoke.texi (max-inline-insns-single): Set to 100.
- (large-function-insns): Set to 3000.
-
-2004-01-16 Eric Christopher <echristo@redhat.com>
- Chandrakala Chavva <cchavva@redhat.com>
-
- * cppcharset.c (one_iso88591_to_utf8): New function.
- (convert_iso88591_utf8): Ditto. Use.
- (conversion_tab): Use.
- (_cpp_input_to_utf8): New function.
- (_cpp_init_iconv_buffer): Ditto.
- (_cpp_close_iconv_buffer): Ditto.
- * cpphash.h: Prototype new functions.
- (cpp_buffer): Add input_cset_desc.
- * cppinit.c: Add input_charset default.
- * cpplib.c (cpp_push_buffer): Support init and
- close of iconv.
- * cpplib.h (cpp_options): Add input_charset.
-
-2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (ASM_OUTPUT_SECTION_NAME): Poison.
- * config/alpha/unicosmk.h: Remove a commented-out definition
- of ASM_OUTPUT_SECTION_NAME.
- * config/stormy16/stormy16.h: Likewise.
-
-2004-01-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (alpha___extern_prefix): Renamed to ...
- (alpha___extern_prefix_sys_stat): ... this.
- Apply to <sys/mount.h>, too.
- Tweak to match more variations.
- * fixinc/tests/base/sys/stat.h: Adapt for new hackname.
-
- * fixinc/inclhack.def (alpha___extern_prefix,
- alpha___extern_prefix_standards): New hacks to obey
- __PRAGMA_EXTERN_PREFIX.
- * fixinc/tests/base/testing.h [ALPHA___EXTERN_PREFIX_CHECK]: New
- test.
- * fixinc/tests/base/standards.h: Likewise.
-
- * fixincl/inclhack.def (alpha_pthread): Tweak to match more
- variations.
- New testcase.
- * fixinc/tests/base/pthread.h: Handle it.
-
- * fixincl/inclhack.def (bad_lval): Sort file list.
- Add many missing files up to Tru64 UNIX V5.1B.
- * gcc/fixinc/tests/base/libgen.h: Renamed to ...
- * gcc/fixinc/tests/base/dirent.h: ... this to match new file list
- order.
-
- * fixinc/fixincl.x: Regenerate.
-
-2004-01-16 Mark Mitchell <mark@codesourcery.com>
-
- * version.c (version_string): Change to 3.5.0.
- * doc/include/gcc-common.texi (version-GCC): Likewise.
-
-2004-01-16 Jan Hubicka <jh@suse.cz>
-
- * i386.md (load_tp_di): Fix pasto.
-
- PR opt/13608
- * i386.c (ix86_compute_frame_layout): Fix for alloca on leaf function.
-
- * c-pretty-print.c (pp_c_type_cast, pp_c_abstract_declarator,
- pp_c_character_constant, pp_c_floating_constant,
- pp_c_additive_expression, pp_c_shift_expression,
- pp_c_equality_expression, pp_c_and_expression,
- pp_c_exclusive_or_expression, pp_c_inclusive_or_expression,
- pp_c_logical_and_expression): Remove inline modifier.
- * dwarf2out.c (get_AT): Likewise.
- * et-forest.c (et_splay): Likewise.
- * ra.h (ra_alloc, ra_calloc): Likewise
-
-2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/frv/frv-protos.h: Fix comment formatting.
- * config/frv/frv.c: Likewise.
- * config/frv/frv.h: Likewise.
- * config/frv/frv.md: Likewise.
- * config/frv/frvbegin.c: Likewise.
- * config/frv/frvend.c: Likewise.
-
-2004-01-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (LINKER_DOES_NOT_WORK_WITH_DWARF2): Poison.
- * doc/tm.texi (PREFERRED_DEBUGGING_TYPE): Don't mention
- LINKER_DOES_NOT_WORK_WITH_DWARF2.
- (LINKER_DOES_NOT_WORK_WITH_DWARF2): Remove.
-
-2004-01-16 J"orn Rennecke <joern.rennecke@superh.com>
-
- PR 11864
- * postreload.c (reload_cse_simplify_operands): Don't remove
- implicit extension from LOAD_EXTEND_OP.
-
-2004-01-16 Jan Hubicka <jh@suse.cz>
-
- PR opt/11350
- * cfgcleanup.c (try_optimize_cfg): Suppress tablejump removal
- after reload.
- * cfgrtl.c (rtl_can_merge_blocks, cfglayout_can_merge_blocks,
- rtl_try_redirect_by_replacing_branch): Likewise.
-
-2004-01-15 Geoffrey Keating <geoffk@apple.com>
-
- PR pch/13689
- * alias.c (struct alias_set_entry): Mark for GC.
- (alias_sets): Make static, mark for GC.
- (record_alias_subset): Use GC to allocate alias structures.
- * varray.c (element): Make generic varrays GCed.
-
- PR pch/13361
- * c-typeck.c (constructor_asmspec): Delete.
- (struct initializer_stack): Delete field 'asmspec'.
- (start_init): Delete saving of asmspec.
- (finish_init): Don't update constructor_asmspec.
- * dwarf2out.c (rtl_for_decl_location): Duplicate string from tree.
- * stmt.c (expand_asm): Duplicate strings from tree.
- (expand_asm_operands): Likewise.
- * tree.c (tree_size): Update computation of size of STRING_CST.
- (make_node): Don't make STRING_CST nodes.
- (build_string): Allocate string with tree node.
- * tree.def (STRING_CST): Update comment.
- * tree.h (TREE_STRING_POINTER): Adjust for change to STRING_CST.
- (tree_string): Place contents of string in tree node.
- * config/sh/sh.c (sh_handle_sp_switch_attribute): Duplicate string
- from tree.
-
- * config/rs6000/rs6000.c (rs6000_va_arg): No need to special-case
- altivec operands.
-
-2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-common.h: Fix comment formatting.
- * c-cppbuiltin.c: Likewise.
- * c-pragma.c: Likewise.
- * calls.c: Likewise.
- * collect2.c: Likewise.
- * cppcharset.c: Likewise.
- * cpptrad.c: Likewise.
- * dbxout.c: Likewise.
- * defaults.h: Likewise.
- * dwarf2out.c: Likewise.
- * fold-const.c: Likewise.
- * genautomata.c: Likewise.
- * genconditions.c: Likewise.
- * genflags.c: Likewise.
- * gengtype.c: Likewise.
- * integrate.c: Likewise.
- * loop.c: Likewise.
- * predict.c: Likewise.
- * sdbout.c: Likewise.
-
-2004-01-15 Zack Weinberg <zack@codesourcery.com>
-
- * config/ia64/ia64.md (*movti_internal): C output template
- extracted to ia64.c.
- (*movti_internal_reg): Delete.
- (reload_inti, reload_outti): Use the correct mode on operand 2
- in the first place, don't fix it up in the output template.
- (movtf, reload_ointf, reload_outtf): New expanders.
- (*movtf_internal): New define_insn_and_split.
- * config/ia64/ia64.c (ia64_split_timode): Rename to ia64_split_tmode;
- make static; do not hand TFmode CONST_DOUBLEs to split_double.
- (ia64_split_tmode_move): New function, body mostly pulled
- from ia64.md:*movti_internal.
- (ia64_function_arg_words): New function, extracted common
- logic from ia64_function_arg et seq.
- (ia64_function_arg_offset): Likewise. Handle correctly the
- case of a scalar quantity 16 bytes wide with only 8-byte alignment.
- (ia64_function_arg, ia64_function_arg_partial_nregs)
- (ia64_function_arg_advance): Use ia64_function_arg_words and
- ia64_function_arg_offset.
- (ia64_function_value): TCmode does not go in float regs.
- (ia64_secondary_reload_class): Also handle TFmode.
- * config/ia64/ia64-protos.h: Remove prototype for
- ia64_split_timode; add prototype for ia64_split_tmode_move.
-
-2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in (MAINT): Make it an immediate assignment.
-
-2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.md: Remove useless calls to gen_lowpart.
-
-2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/coff.h: Replace Hitachi with Renesas.
- * config/h8300/elf.h: Likewise.
- * config/h8300/h8300-protos.h: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/h8300/h8300.h: Likewise.
- * config/h8300/h8300.md: Likewise.
- * config/h8300/lib1funcs.asm: Likewise.
-
-2004-01-15 Andrew Pinski <apinski@apple.com>
-
- * config/rs6000/rs6000.c (uses_TOC): Wrap #if TARGET_ELF
- around it.
-
-2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_return_in_memory): New.
- (TARGET_STRUCT_VALUE_RTX): Likewise.
- (TARGET_RETURN_IN_MEMORY): Likewise.
- * config/h8300/h8300.h (STRUCT_VALUE): Remove.
- (RETURN_IN_MEMORY): Likewise.
-
-2004-01-15 Richard Earnshaw <rearnsha@arm.com>
-
- PR optimization/13375
- * gcse.c (handle_avail_expr): Just return if the source is not a
- single set.
-
-2004-01-15 Richard Earnshaw <rearnsha@arm.com>
- Daniel Jacobowitz <drow@mvista.com>
-
- * arm/lib1funcs.asm (ARM_FUNC_START): Correct interworking case.
- (EQUIV): Define.
- (ARM_FUNC_ALIAS): New macro.
- * arm/ieee754-df.S (gedf2, ledf2, nedf2, eqdf2): Use it.
- * arm/ieee754-sf.S (gesf2, lesf2, nesf2, eqsf2): Use it.
-
-2004-01-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- PR optimization/12372
- * calls.c (expand_call): Add call_fusage data for stack arguments in
- constant calls.
-
-2004-01-15 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (uses_TOC): Correct comment. Make static.
- (rs6000_elf_declare_function_name): Formatting.
- * config/rs6000/rs6000-protos.h (uses_TOC): Remove declaration.
-
-2004-01-15 Jan Hubicka <jh@suse.cz>
-
- PR bootstrap/13692
- * sched-deps.c (sched_analyze_1, sched_analyze_2): Fix thinko in
- previous patch.
-
-2004-01-15 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.h (REG_ALLOC_ORDER): Reorder fp regs after
- integer regs of the same call-savedness.
-
-2004-01-15 Andreas Schwab <schwab@suse.de>
-
- PR bootstrap/13562
- * config/m68k/m68k.c (output_move_const_into_data_reg): Clear cc
- status for NOTB/NOTW/NEGW methods.
-
-2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Update dump file names. Fix a typo.
-
-2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.c (expand_builtin_va_end): Don't use
- EXPAND_BUILTIN_VA_END.
- * system.h (EXPAND_BUILTIN_VA_END): Poison.
- * config/d30v/d30v.h: Remove a commented-out definition of
- EXPAND_BUILTIN_VA_END.
- * config/stormy16/stormy16.h: Likewise.
-
-2004-01-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (STRUCT_VALUE_INCOMING_REGNUM): Poison.
- * targhooks.c (default_struct_value_rtx): Don't use
- STRUCT_VALUE_INCOMING_REGNUM.
-
-2004-01-15 Kelley Cook <kcook@gcc.gnu.org>
-
- PR bootstrap/12744
- * configure.in: Revamp enable-generated-files-in-srcdir rule to define
- GENINSRC and not parsedir. Define srcextra as a langhook.
- * configure: Regenerate.
- * Makefile.in: Suppress default .l.c rule. Don't substitute
- parsedir and delete all references throughout. Conditionally define
- rule for srcextra dependent on GENINSRC.
- (stmp-docobjdir): Delete.
- (c-parse.o, gengtype-lex.o, gengtype-yacc.o): Use implicit build rule.
- (srcextra): Copy c-parse.y, c-parse.c, gengtype-lex.c, gengtype-yacc.c,
- and gengtype-yacc.h back to source directory.
- (maintainer-clean): Delete all parse files in source directory.
- (distclean): Delete generated files.
-
- * objc/Make-lang.in (objc-parse.o): Use implicit build rule.
- (objc-parse.c, objc-parse.y): Don't use parsedir.
- (objc.srcextra): Copy objc-parse.y and objc-parse.c back to source
- directory if requested.
- (po-generated): Don't use parsedir.
- (objc.maintainer-clean): Delete above files from source directory.
-
-2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/tm.texi (FUNCTION_VALUE): Fix a typo.
-
-2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/tm.texi: Replace RETURN_IN_MEMORY with
- TARGET_RETURN_IN_MEMORY.
-
-2004-01-15 Jan Hubicka <jh@suse.cz>
-
- * builtins.c (std_expand_builtin_va_arg): Align operand when needed.
- * i386.c (init_cumulative_args): Set warn_sse; fix handling of variadic
- functions accepting SSE arguments
- (function_arg): Warn only when asked to warn.
- * i386.h (ix86_args): Add warn_sse/warn_mmx fiels.
-
-2004-01-14 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-parse.in (stmts_and_decls): Make label at end of compound
- statement a hard error.
-
-2004-01-14 Jan Hubicka <jh@suse.cz>
-
- * cgraph.c (create_edge): Use local.redefined_extern_inline.
- * cgraph.h (cgraph_local_info): Sort fields by size; add
- redefined_extern_inline
- (cgraph_global_info): Sort fields by size.
- (cgraph_node): Likewise.
- * cgraphunit.c (cgraph_finalize_function): Se
- local.redefined_extern_inline on redefinition.
- (cgraph_analyze_function): Use it; fix formating.
-
-2004-01-14 Jan Hubicka <jh@suse.cz>
-
- PR c++/10776
- * sched-deps.c (trye_dependency_cache, anti_dependency_cache,
- outptu_dependency_cache, forward_dependency_cahe): Trun to vectors of
- bitmaps
- (cache_size): New variable
- (add_dependence): Update use; canonize early memory locations
- (sched_analyze_1): Likewise.
- (sched_analyze_2): Likewise.
- (init_dependency_caches): Initialize bitmaps.
- (free_dependency_caches): Free bitmaps
-
-2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * calls.c: Replace STRICT_ARGUMENT_NAMING in comments with
- targetm.calls.strict_argument_naming().
- * target.h: Likewise.
-
-2004-01-14 Richard Henderson <rth@redhat.com>
-
- PR debug/13231
- * dwarf2out.c (dwarf2out_stack_adjust): Skip prologue and epilogue
- instructions.
-
-2004-01-14 Richard Henderson <rth@redhat.com>
-
- PR c++/12491
- * except.c (struct eh_region): Add u.fixup.resolved.
- (resolve_one_fixup_region): Split out from ...
- (resolve_fixup_regions): ... here.
-
-2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mn10300/mn10300.h (STRUCT_VALUE): Change to 0.
-
-2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.h (STRUCT_VALUE): Remove.
- * config/alpha/vms.h (STRUCT_VALUE_REGNUM): Remove #undef.
- (STRUCT_VALUE): Remove.
-
-2004-01-14 Steven Bosscher <stevenb@suse.de>
-
- * system.h: Poison PROMOTED_MODE
- * integrate.c (expand_inline_function): Don't mention the
- PROMOTED_MODE.
- * loop.c (update_giv_derive): Same.
- * tree.h (DECL_RTL): Same.
-
-2004-01-14 J"orn Rennecke <joern.rennecke@superh.com>
-
- PR target/9365
- * sh.c (gen_block_redirect): Add special handling of RETURN.
- (gen_far_branch) Don't call gen_stuff_delay_slot if there is no
- far branch target (i.e. it's a return).
-
-2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * regrename.c (find_oldest_value_reg): Fix a warning.
-
-2004-01-14 Richard Earnshaw <rearnsha@arm.com>
-
- PR bootstrap/12527
- * config.gcc (arm*-*-linux*): Don't include unknown-elf.h in tm_file.
- Move linux-gas.h and linux-elf.h before aout.h.
- * arm/arm.h (INITIALIZE_TRAMPOLINE): Only define if not already.
- * arm/linux-elf.h (SUBTARGET_CPU_DEFAULT): Define.
-
-2004-01-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.md: Use GEN_INT instead of gen_rtx
- (CONST_INT, VOIDmode, ...).
-
-2004-01-14 Richard Earnshaw <rearnsha@arm.com>
-
- * regrename.c (find_oldest_value_reg): If the replacement uses
- multiple hard registers, check that all of them are in CLASS.
-
-2004-01-14 Jan Hubicka <jh@suse.cz>
-
- * alias.c (get_alias_set): Initialize alias set to 0 when subset is
- impossible.
-
-2004-01-14 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in: Define MAINT from --enable-maintainer-mode.
-
-2004-01-14 Hartmut Penner <hpenner@de.ibm.com>
-
- * gcc/config/rs6000/rs6000.c (rs6000_stack_info)
- Calculate always vrsave_mask if TARGET_ALTIVEC.
- (rs6000_emit_prologue): Emit code for vrsave
- only if TARGET_ALTIVEC_VRSAVE.
- (rs6000_emit_epilogue): Likewise.
-
-2004-01-14 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * config/sparc/sparc.md (tie_add32): Fix pasto.
- (tie_add64): Likewise.
-
-2004-01-14 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * config/i386/i386.md (*addqi_1_slp): Do not access operands[2].
-
-2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/iq2000/iq2000-protos.h: Fix comment formatting.
- * config/iq2000/iq2000.c: Likewise.
- * config/iq2000/iq2000.md: Likewise.
-
-2004-01-14 J. Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (is_ada_subrange_type): No longer check the TYPE_NAME.
- (subrange_type_die): Add handle for nameless subrange types.
-
-2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Replace do_movsi with
- h8300_expand_movsi.
- * config/h8300/h8300.c (do_movsi): Change to
- h8300_expand_movsi.
- * config/h8300/h8300.md (movsi): Replace do_movsi with
- h8300_expand_movsi.
- (movsf): Likewise.
-
-2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (dosize): Change to
- h8300_emit_stack_adjustment. Update callers.
-
-2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (movstrictqi): Add an alternative with
- the source being post_inc. Tighten the predicate for the
- destination to register_operand.
- (movstricthi): Likewise.
-
-2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (SHARED_BSS_SECTION_ASM_OP): Poison.
- * varasm.c (bss_section): Don't use SHARED_BSS_SECTION_ASM_OP.
- * doc/tm.texi (SHARED_BSS_SECTION_ASM_OP): Remove.
-
-2004-01-14 Jan Hubicka <jh@suse.cz>
-
- Partial fix PR c++/12850
- * cgraphunit.c (cgraph_finalize_function): Always ggc_collect when
- at zero nest level.
-
-2004-01-13 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/netbsd-elf.h (REGISTER_NAMES): Add missing "argptr"
- pseudo-register.
-
-2004-01-13 Devang Patel <dpatel@apple.com
-
- PR debug/7078
- * dbxout.c (dbxout_symbol_name): Emit mangled names for
- NAMESPACE_DECL memebers.
-
-2004-01-13 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR c++/12709
- * c-common.c (finish_fname_decls): Use the chain only if the
- tree is an expr_stmt.
-
-2004-01-13 Vladimir Makarov <vmakarov@redhat.com>
-
- * rtl.def: Add comment about new option in automata_option.
-
- * genautomata.c (PROGRESS_OPTION): New macro.
- (progress_flag): New global variable.
- (gen_automata_option): Process `progress'.
- (transform_insn_regexps, check_unit_distributions_to_automata,
- make_automaton, NDFA_to_DFA, build_automaton, create_automata,
- expand_automata, write_automata): Print about the progress only if
- progress_flag. Remove fflush.
- (initiate_automaton_gen): Process command line flag `-progress'.
-
- * doc/md.texi: Describe the new option.
-
-2004-01-13 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfg.c (dump_bb): Dump entry edges.
-
-2004-01-13 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (thumb_legitimate_address_p): Only allow constant pool
- references from SImode.
- * arm.md (thumb_movhi_insn): Don't allow minipool references.
-
-2004-01-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (TEXT_SECTION): Poison.
- * varasm.c (text_section): Don't use TEXT_SECTION.
- * config/sh/sh.c (sh_file_start): Fix a comment typo.
- * doc/tm.texi (TEXT_SECTION): Remove.
-
-2004-01-13 Ben Elliston <bje@wasabisystems.com>
-
- * doc/rtl.texi (Vector Operations): Remove defunct vec_const item.
-
-2004-01-12 James E Wilson <wilson@specifixinc.com>
-
- * unwind-libunwind.c: Delete.
-
-2004-01-12 Zack Weinberg <zack@codesourcery.com>
-
- PR 13656
- * c-decl.c (diagnose_mismatched_decls): Whenever newtype or
- oldtype is set, set *newtypep or *oldtypep too. Do not set
- them at the very end.
- (validate_proto_after_old_defn): Restructure for comprehensibility;
- make error messages clearer.
-
-2004-01-12 Zack Weinberg <zack@codesourcery.com>
-
- * varray.h (VARRAY_POP): Add checking variant, aborts on underflow.
- (VARRAY_TOP): Use VARRAY_CHECK so the access is bounds-checked.
- * varray.c: No need to prototype error.
- (varray_check_failed): Wrap long string onto two lines.
- (varray_underflow): New function.
-
-2004-01-13 Steven Bosscher <stevenb@suse.de>
-
- PR c++/13376
- * function.h (struct function): Kill `name' field.
- (current_function_name): Make it an extern function.
- * function.c (current_function_name): New function.
- * graph.c: Update all uses of current_function_name.
- * gcse.c: Likewise.
- * config/alpha/alpha.c, config/avr/avr.c, config/c4x/c4x.c,
- config/mips/mips.c, config/pdp11/pdp11.c: Likewise.
- * config/ip2k/ip2k.c (function_prologue): Use MAIN_NAME_P
- instead of a strcmp with "main".
-
-2004-01-13 Jan Hubicka <jh@suse.cz>
-
- * c-decl.c (diagnose_mismatched_decls): Fix warning calls.
-
- * cgraphunit.c (cgraph_optimize_function): Always do
- optimize_inline_calls when there is always_inline callee.
- (cgraph_decide_inlining): Fix formating.
- * tree-inline.c (inlinable_function_p): Do sorry for alwaysinline
- functions.
- (expand_call_inline): Likewise.
- * toplev.h (sorry): Fix prototype.
-
-2004-01-12 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin_expect_jump): Simplify logic. Handle
- conditional jumps that drop through to unconditional jumps or the
- end of the sequence.
-
-2004-01-13 Jan Hubicka <jh@suse.cz>
-
- * alias.c (new_alias_set): Construct the alias_set varray.
- (init_alias_once): Don't do it here.
-
-2004-01-12 Marc Espie <espie@openbsd.org>
-
- * system.h: handle YYBYACC like YYBISON.
-
-2004-01-12 Jonathan Merriman <jonm@dualitymedia.com>
-
- PR target/10847
- * config.gcc: No longer includes conflicting header sparc/sol2.h when
- building on sparc64-*-openbsd*.
-
-2004-01-12 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR debug/13539
- * dbxout.c (dbxout_type): Protected inheritance is not
- private but protected.
-
-2004-01-12 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_symbolic_constant_p): Revert last patch.
-
-2004-01-12 Kazu Hirata <kazu@cs.umass.edu>
-
- PR optimization/12508.
- * combine.c (try_combine): Remove a dead set in a parallel
- even if its destination is a subreg.
-
- Revert:
- 2003-06-03 Kazu Hirata <kazu@cs.umass.edu>
- * combine.c (simplify_set): Don't move a subreg in SET_SRC to
- SET_DEST if WORD_REGISTER_OPERATIONS is not defined.
-
-2004-01-12 Geoffrey Keating <geoffk@apple.com>
-
- * real.c: Update copyright date.
- * emit-rtl.c: Likewise.
- * rtl.h: Likewise.
- * dwarf2out.c: Likewise.
- * config/rs6000/darwin-ldouble.c: Likewise.
- * config/rs6000/rs6000.md: Likewise.
-
-2004-01-12 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_init_libfuncs): Add AIX
- TFmode to SImode libfuncs.
-
-2004-01-12 Roger Sayle <roger@eyesopen.com>
-
- PR middle-end/11397
- * varasm.c (assemble_alias): Remove weak aliases from weak_decls.
-
-2004-01-12 Jan Hubicka <jh@suse.cz>
-
- PR opt/12826
- * loop.c (insert_loop_mem): Preffer VOLATILE memory references to be
- stored.
-
- PR opt/12863
- * cfgcleanup.c (label_is_jump_target_p): Move to...
- * rtlanal.c (label_is_jump_target_p): ... here.
- * cfgrtl.c (cfg_layout_redirect_edge_and_branch): Fix redirecting of fallthru
- edges unified with branch edges.
-
-2004-01-12 Richard Earnshaw <rearnsha@arm.com>
-
- * simplify-rtx.c (simplify_immed_subreg): Correctly extract the
- high word of an integral CONST_DOUBLE.
-
-2004-01-12 Paul Brook <paul@codesourcery.com>
-
- * simplify-rtx.c (simplify_plus_minus): Always generate canonical form.
-
-2004-01-12 J"orn Rennecke <joern.rennecke@superh.com>
-
- PR target/13585
- * sh-protos.h (check_use_sfunc_addr): Declare.
- * sh.c (extract_sfunc_addr, check_use_sfunc_addr): New functions.
- * sh.md (use_sfunc_addr): Use check_use_sfunc_addr in insn predicate.
-
-2004-01-12 Jan Hubicka <jh@suse.cz>
-
- * alias.c: Invlude varray.h
- (alias_sets): Turn into varray.
- (get_alias_set_entry): Use VARRAY; mark inline.
- (mems_in_disjoint_alias_sets_p): Mark inline.
- (record_alias_subset): Use varray.
- (init_alias_once): Initialize varray.
- (new_alias_set): Grow array.
- * varray.c: Make VARRAY_GENERIC_PTR non GTYized.
-
-2004-01-12 Jan Hubicka <jh@suse.cz>
-
- Partial fix for PR opt/10776 II
- * cselib.c: Include params.h
- (cselib_invalidate_mem): Limit amount of nonconflicting memory
- locations.
- * params.def (PARAM_MAX_CSELIB_MEMORY_LOCATIONS): New.
- * Makefile.in (cselib.o): Depend on params.h
-
-2004-01-12 Richard Sandiford <rsandifo@redhat.com>
-
- * combine.c (combine_simplify_rtx): Don't pass VOIDmode to
- simplify_unary_operation if the operand has a known mode.
-
-2004-01-12 Hartmut Penner <hpenner@de.ibm.com>
-
- PR target/13534
- * gcc/config/rs6000/rs6000.c (word_offset_memref_operand): New
- predicate to handle 'ld' conform addresses.
- * gcc/config/rs6000/rs6000.h (EXTRA_CONSTRAINT): New 'Y'
- contraint.
- (EXTRA_MEMORY_CONSTRAINT): Tell reload which constraint
- are memory contraints.
- * gcc/config/rs6000/rs6000-protos.h (word_offset_memref_operand):
- New prototype.
- * gcc/config/rs6000/rs6000.md (*movdf_hardfloat64):
- Change 'o' to 'Y' constraint.
- (*movdf_softfloat64): Ditto.
-
-2004-01-12 Bernardo Innocenti <bernie@develer.com>
-
- * gcc/config/m68k/m68k.md: Switch from the "*..." syntax to the
- brace-enclosed syntax in all C output statements.
-
-2004-01-12 David Edelsohn <edelsohn@gnu.org>
-
- PR target/13401
- * config/rs6000/rs6000.c (rs6000_output_function_epilogue):
- Objective-C language type value is 14.
-
-2004-01-12 Markus F.X.J. Oberhumer <markus@oberhumer.com>
-
- PR c/12148
- * config/m68k/fpgnulib.c: Fix `-mshort' bugs: Use `long' instead of
- `int' in a number of places to make sure we always have a SImode
- and not a HImode. Add a 'L' suffix to a number of constants.
-
-2004-01-11 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
-
- * pa.c: Don't include obstack.h.
-
- * pa.md: Correct constraint in pattern for loading PIC label address.
-
-2004-01-11 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/linux.h (ASM_PREFERRED_EH_DATA_FORMAT): Undefine
- before defining.
-
-2004-01-11 Steven Bosscher <stevenb@suse.de>
-
- PR fortran/9972
- * toplev.c (rest_of_handle_inline): Also consider functions
- for deferral if the language is GNU F77.
-
-2004-01-11 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (diagnose_arglist_conflict): Add missing space to
- diagnostic messages.
-
-2004-01-11 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/13392
- * builtins.c (expand_builtin_expect_jump): Handle conditional jumps
- to drop through label. Don't fall back to SCC even when conditional
- jump has not been found.
-
-2004-01-11 Jan Hubicka <jh@suse.cz>
-
- * invoke.texi: Fix syntax error in previous patch.
-
- Partial fix for PR opt/10776
- * Makefile.in (reload.o): Include param.h
- * params.def (PARAM_MAX_RELOAD_SEARCH_INSNS): New parameter.
- * reload.c: Include params.h.
- (find_equiv_reg): Work limiting check.
- * invoke.texi: Document.
-
-2004-01-11 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips_symbolic_constant_p): Don't allow
- out-of-bounds accesses to string constants. Simplify mips16
- case accordingly.
-
-2004-01-11 Richard Sandiford <rsandifo@redhat.com>
-
- PR optimization/13469
- * toplev.c (rest_of_compilation): Call purge_all_dead_edges after
- reload_cse_regs (-fnon-call-exceptions only).
-
-2004-01-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mcore/lib1.asm: Fix comment formatting.
- * config/mcore/mcore-elf.h: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mcore/mcore.h: Likewise.
- * config/mcore/mcore.md: Likewise.
-
-2004-01-10 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (duplicate_decls): Break apart into...
- (diagnose_arglist_conflict, validate_proto_after_old_defn)
- (locate_old_defn, diagnose_mismatched_decls, merge_decls):
- ... these new functions. Restructure for comprehensibility.
- Remove various archaic special cases. Always report the
- location of the previous declaration when a diagnostic is issued.
- (redeclaration_error_message): Fold into diagnose_mismatched_decls.
- (match_builtin_function_types): Delete unnecessary forward declaration.
-
-2004-01-10 Zack Weinberg <zack@codesourcery.com>
-
- * genautomata.c (make_automaton, NDFA_to_DFA):
- Print progress bars with '.' characters instead of '*'.
- (build_automaton): Change notes to match.
-
-2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.md: Use define_constants for unspec and
- unspec_volatile.
-
-2004-01-10 Jan Hubicka <jh@suse.cz>
-
- PR opt/11635
- * expr.c (expand_expr_real): More curefully expand union casts.
-
-2004-01-10 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.md (flush_icache): Use 1 for
- unspec_volatile.
-
-2004-01-10 David Edelsohn <edelsohn@gnu.org>
- James E Wilson <wilson@specifixinc.com>
-
- PR debug/12860
- * dbxout.c (dbxout_symbol): Remove initialization of
- current_sym_code, current_sym_value, and current_sym_addr.
- (dbxout_symbol_location): Same.
- (dbxout_prepare_symbol): Zero current_sym_code,
- current_sym_value, and current_sym_addr.
-
-2004-01-10 Richard Sandiford <rsandifo@redhat.com>
-
- * tree.c (get_unwidened): Reorder conditions so that the null pointer
- check is done first.
-
-2004-01-09 Eric Christopher <echristo@redhat.com>
-
- * toplev.c (rest_of_handle_cfg): Add reg_scan pass
- if we're running mark_constant_function.
-
-2004-01-09 Jeff Bailey <jbailey@nisa.net>
-
- PR target/12561
- * config/t-gnu: Rename SYSTEM_HEADER_DIR to NATIVE_SYSTEM_HEADER_DIR.
-
-2004-01-09 Andrew Pinski <pinskia@physics.uc.edu>
-
- PR debug/11231
- * dbxout.c (dbxout_type_fields): Return if any item is
- error_mark_node or the type is error_mark_node.
-
-2004-01-09 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/darwin-ldouble.c: Add big comment explaining
- exactly what is expected as a 'long double'.
- (_xlqadd): When a value to be returned is representable as a
- 'double', just return it directly, do not construct it using a union.
- Also, correct final fixup.
- (_xlqmul): Likewise.
- (_xlqdiv): Likewise.
- * real.c (encode_ibm_extended): Make consistent with darwin-ldouble.c.
-
- * config/rs6000/rs6000.md (fix_trunctfdi2): Delete.
-
-2004-01-09 Richard Henderson <rth@redhat.com>
-
- * recog.c (constrain_operands): Validate mem operands.
-
-2004-01-09 James E Wilson <wilson@specifixinc.com>
-
- * gcc.c (init_spec): Remove -lunwind from shared case.
- * conifg/ia64/t-hpux (SHLIB_LINK): Add -lunwind.
-
-2004-01-09 Steve Ellcey <sje@cup.hp.com>
-
- * configure.ac: (gcc_cv_ld_hidden) Set to true for ia64*-*-hpux*.
- * configure: Regenerate
-
-2004-01-09 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/11234
- * c-typeck.c (build_c_cast): If pedantic, warn for conversions
- between function and object pointers.
- (digest_init): When comparing a pointer to function type to the
- target type, only apply TREE_TYPE once to the pointer to function
- type.
- * except.c (for_each_eh_label_1): Treat data as a pointer to a
- function pointer rather than casting it to a function pointer.
- (for_each_eh_label): Update caller.
- * recog.h (struct insn_data): Use a struct or union for output.
- * genoutput.c (output_insn_data): Update.
- * final.c (get_insn_template): Update.
-
-2004-01-09 Mark Mitchell <mark@codesourcery.com>
-
- * expr.h (expand_expr): Make it a macro, not a function.
- (expand_expr_real): New function.
- * expr.c (store_expr): Adjust logic for deciding whether or not to
- copy the value returned by expand_expr.
- (expand_expr): Rename to ...
- (expand_expr_real): ... this. Add alt_rtl parameter. Adjust
- calls to language hooks.
- * c-common.h (c_expand_expr): Adjust prototype.
- * c-common.c (c_expand_expr): Add alt_rtl parameter.
- * langhooks-def.h (lhd_expand_expr): Change prototype.
- * langhooks.c (lhd_expand_expr): Add all_rtl parameter.
- * langhooks.h (lang_hooks): Change type of expand_expr.
- * stmt.c (stmt_status): Add x_last_expr_alt_rtl.
- (last_expr_alt_rtl): Likewise.
- (expand_expr_stmt_value): Set last_expr_alt_rtl.
- (clear_last_expr): Clear it.
- (expand_end_stmt_expr): Set RTL_EXPR_ATL_RTL.
- (expand_end_bindings): Save and restor last_expr_alt_rtl.
- * tree.def (RTL_EXPR): Give it an additional operand.
- * tree.h (RTL_EXPR_ALT_RTL): New macro.
-
-2004-01-09 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h (TARGET_CPU_CPP_BUILTINS): Add __m32r__.
- * config/m32r/m32r.c (call26_operand): Allow in PIC mode.
-
-2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
-
- PR target/13380.
- * config/m32r/m32r.md: Replace (reg:SI 17) with (reg:CC 17)
- or (ne:SI (reg:CC 17) (const_int 0)).
- Be specific about modes wherever possible.
-
-2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.c (m32r_expand_block_move): Call
- gen_movestrsi_internal with two more arguments.
- (m32r_output_block_move): Adjust operand numbers.
- Properly update the source and destination pointers.
- * config/m32r/m32r.md (movstrsi_internal): Use 'r' instead of
- 'r+'. Change the set detinations to match_operand.
-
-2004-01-09 Kazu Hirata <kazu@cs.umass.edu>
-
- * final.c (FIRST_INSN_ADDRESS): Remove.
- (shorten_branches): Don't use FIRST_INSN_ADDRESS.
- * system.h (FIRST_INSN_ADDRESS): Poison.
- * config/avr/avr.h: Remove a comment about FIRST_INSN_ADDRESS.
- * config/m32r/m32r-protos.h: Remove the prototype for
- m32r_first_insn_address.
- * config/m32r/m32r.c (m32r_first_insn_address): Remove.
- * config/m32r/m32r.h (FIRST_INSN_ADDRESS): Likewise.
- * doc/md.texi (FIRST_INSN_ADDRESS): Likewise.
-
-2004-01-09 J. Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (gen_enumeration_type_die): Return the DIE that
- we just created.
- (is_ada_subrange_type): DIEs for enumeration subtypes should be
- emitted as subrange types too.
- (subrange_type_die): Add handling of enumeration subtypes.
-
-2004-01-08 Richard Henderson <rth@redhat.com>
-
- PR opt/12441
- Revert: Sat Mar 30 14:08:55 CET 2002 Jan Hubicka <jh@suse.cz>
- * i386.c (aligned_operand): Be prepared for SUBREGed registers.
- (ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG.
- (ix86_address_cost): Be prepared for SUBREGed registers.
- (legitimate_address_p): Accept SUBREGed registers.
-
-2004-01-08 Kelley Cook <kcook@gcc.gnu.org>
-
- * Makefile.in: Rename configure.in to configure.ac
- * doc/sourcebuild.texi: Likewise.
- * configure: Regenerate.
- * config.in: Regenerate.
-
-2004-01-08 Stuart Hastings <stuart@apple.com>
-
- * config/i386/i386.md: Typos in MMX/SSE immediate shifts.
-
-2004-01-08 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_decide_inlining): Fix typo.
-
-2004-01-08 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.md (cmptf_internal1): Correct branch offset.
- (UNSPEC_FIX_TRUNC_TF): New constant.
- (movtf_internal): Make splitter active only when insn is active.
- (extenddftf2): Rewrite to properly load zero into low part.
- (extenddftf2_internal): New.
- (extendsftf2): Rewrite.
- (truncdftf2): Correct length.
- (floatditf2): Delete.
- (fix_trunc_helper): New.
- (fix_trunctfdi2): Use fix_trunc_helper.
- (fix_trunctfsi2): Likewise.fix_trunc
- (fix_trunctfsi2_internal): New.
-
- * config/rs6000/rs6000.c (legitimate_lo_sum_address_p): lo_sum
- addresses are legitimate on Darwin even when flag_pic.
- (rs6000_legitimize_reload_address) [TARGET_MACHO]: Don't create
- non-offsettable addresses for loads of TFmode constants.
-
-2004-01-08 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h (ASM_OUTPUT_ALIGNED_BSS): Actually emit
- variables in the appropriate bss section.
-
-2004-01-09 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Ensure
- target_flags has MASK_POWERPC64 when -m64.
- * config/rs6000/rs6000.c (processor_target_table): Add MASK_POWERPC64
- to 620, 630, power3, power4 and rs64a entries.
- * config/rs6000/rs6000.h (MASK_64BIT): Expand comment.
-
-2004-01-08 Richard Sandiford <rsandifo@redhat.com>
-
- * simplify-rtx.c (simplify_immed_subreg): Fix construction of
- floating-point constants.
-
-2004-01-08 J. Brobecker <brobecker@gnat.com>
-
- * dwarf2out.c (subrange_type_die): Add context_die parameter.
- Create the subrange_type DIE using the given context DIE.
- (modified_type_die): Update call to subrange_type_die.
-
-2004-01-08 Zack Weinberg <zack@codesourcery.com>
-
- * dwarf2.h, unwind-dw2-fde.h, unwind-pe.h, unwind.h:
- Add multiple-include guard.
-
-2004-01-08 Hartmut Penner <hpenner@de.ibm.com>
-
- * gcc/config/rs6000/rs6000.c (easy_vector_constant): Accept
- all vector constant loadable by vsplt*.
- (output_vec_const_move): Likewise.
-
-2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/6024
- * c-typeck.c (comptypes): Only treat enumerated types in the same
- translation unit as compatible with each other when they are the
- same type.
- * doc/extend.texi: Update.
-
-2004-01-07 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/12165
- * c-decl.c (grokdeclarator): Take type qualifiers of typedefed
- array type from the array element type.
-
-2004-01-07 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_dbx_register_number): New function.
- * config/rs6000/rs6000-protos.h (rs6000_dbx_register_number): Declare.
- * config/rs6000/rs6000.h (DWARF_FRAME_REGNUM): Define.
- (DWARF_REG_TO_UNWIND_COLUMN): Correct column adjustment and comment.
- * config/rs6000/sysv4.h (DBX_REGISTER_NUMBER): Define.
-
-2004-01-06 Eric Christopher <echristo@redhat.com>
-
- * config/mips/mips.h (MDEBUG_ASM_SPEC): Change for dwarf2 default.
- (DWARF2_DEBUGGING_INFO): Define.
- (PREFERRED_DEBUGGING_TYPE): Set to dwarf2.
- * config/mips/openbsd.h (PREFERRED_DEBUGGING_TYPE): Remove.
- * config/mips/iris6.h (SUBTARGET_ASM_DEBUGGING_SPEC): Only pass -g0
- for irix as.
- (SUBTARGET_ASM_OPTIMIZING_SPEC): Only pass O0 for irix as.
- * config/mips/iris6gas.h (MDEBUG_ASM_SPEC): Remove.
- * config/mips/iris5gas.h: Ditto.
- (DBX_DEBUGGING_INFO): Remove.
- (DWARF2_DEBUGGING_INFO): Ditto.
- (MIPS_DEBUGGING_INFO): Ditto.
- (PREFERRED_DEBUGGING_TYPE): Ditto.
- * config/mips/elf.h (DWARF2_DEBUGGING_INFO): Remove.
- (PREFERRED_DEBUGGING_TYPE): Ditto.
- (SUBTARGET_ASM_DEBUGGING_SPEC): Ditto.
- * config/mips/elf64.h: Ditto.
-
-2004-01-06 Jan Hubicka <jh@suse.cz>
-
- * Makefile.in (STAGEPROFILE_FLAGS_TO_PASS): Use -fprofile-generate.
- (STAGEFEEDBACK_FLAGS_TO_PASS): Use -fprofile-use.
-
-2004-01-06 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Compile darwin-ldouble.c.
- (TARGET_LIBGCC2_CFLAGS): Use -mlong-double-128.
- * config/rs6000/darwin-ldouble.c: New.
-
- * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
- for constants.
- (constant_subword): Delete.
- * rtl.h (constant_subword): Delete prototype.
- (immed_double_const): Is not in varasm.c.
- * simplify-rtx.c (simplify_immed_subreg): New.
- (simplify_subreg): Use simplify_immed_subreg.
-
- * config/rs6000/rs6000.md (floatsitf2): Use expand_float rather
- than trying to generate RTL directly.
- (fix_trunctfsi2): Use expand_fix rather than trying to generate
- RTL directly.
-
- * dwarf2out.c (add_const_value_attribute): Remove incorrect comment.
-
-2004-01-06 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/xcoff.h (EXTRA_SECTION_FUNCTIONS): Split each
- function into a separate macro.
- (read_only_data_section): Add void argument.
- (private_data_section): Same.
- (read_only_private_data_section): Same.
- (toc_section): Same.
-
-2004-01-06 Jan Hubicka <jh@suse.cz>
-
- * invoke.texi: Remove typo in last change.
-
- PR target/10301
- * config.gcc: Accept opteron and athlon-64 as variants
- of k8.
- * i386.c (override_options): Likewise.
- * invoke.texi (i386 -mtune): Expand documentation.
-
-2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * alias.c: Fix comment typos.
- * builtins.c: Likewise.
- * cfg.c: Likewise.
- * df.c: Likewise.
- * dominance.c: Likewise.
- * dwarf2out.c: Likewise.
- * emit-rtl.c: Likewise.
- * expr.c: Likewise.
- * final.c: Likewise.
- * fold-const.c: Likewise.
- * gcse.c: Likewise.
- * genattrtab.c: Likewise.
- * genrecog.c: Likewise.
- * gensupport.c: Likewise.
- * ggc-zone.c: Likewise.
- * integrate.c: Likewise.
- * local-alloc.c: Likewise.
- * loop.c: Likewise.
- * recog.c: Likewise.
- * regmove.c: Likewise.
- * reg-stack.c: Likewise.
- * reorg.c: Likewise.
- * rtlanal.c: Likewise.
- * rtl.h: Likewise.
- * sched-ebb.c: Likewise.
- * simplify-rtx.c: Likewise.
- * toplev.c: Likewise.
- * varasm.c: Likewise.
-
-2004-01-06 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/install.texi: Fix typos.
- * doc/invoke.texi: Likewise.
- * doc/md.texi: Likewise.
-
-2004-01-06 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com>
-
- * config/m32r/m32r.h (TRAMPOLINE_LINE_SIZE): Changed
-
-2004-01-06 Jan Hubicka <jh@suse.cz>
-
- * i386.c (init_cumulative_args): Add handling of MMX_REGPARM.
- (function_arg_advance): Do not pass aggregates in SSE; deal handling
- of MMX_REGPARM.
- (function_arg): Add new warnings about ABI changes; fix SSE_REGPARM;
- add MMX_REGPARM.
- * i386.h (ix86_args): Add mmx_words/mmx_regs/mmx_regno fields.
- (SSE_REGPARM_MAX): Default to 3 on i386 -msse ABI.
- (MMX_REGPARM_MAX): Similarly for -mmmx.
-
-2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/sh/linux.h: Fix comment formatting.
- * config/sh/netbsd-elf.h: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sh/sh.h: Likewise.
- * config/sh/vxworks.h: Likewise.
-
-2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * system.h (ASM_OUTPUT_MAIN_SOURCE_FILENAME): Poison.
- * toplev.c (output_file_directive): Don't use
- ASM_OUTPUT_MAIN_SOURCE_FILENAME.
-
-2004-01-05 Steven Bosscher <s.bosscher@student.tudelft.nl>
-
- * toplev.c: Fix broken checkin of 2003-12-30.
-
-2004-01-05 Daniel Berlin <dberlin@dberlin.org>
-
- * ggc-zone.c: Remove everything in #ifdef USING_MALLOC_PAGE_GROUPS
- (USING_MMAP): We don't support non-mmap.
- (struct alloc_chunk): Steal 1 bit from typecode, use it to mark
- large objects.
- (struct page_entry): Remove bytes_free.
- (struct page_table_chain): Remove.
- (struct globals): Remove page_table member.
- (loookup_page_table_entry): Function deleted.
- (set_page_table_entry): Ditto.
- (ggc_allocated_p): No longer need page table lookups.
- (ggc_marked_p): Ditto.
- (alloc_small_page): Don't care about bytes_free anymore.
- (alloc_large_page): Round up size.
- (ggc_alloc_zone_1): Mark large objects as such, and calculate
- their size the new way.
- Remove page table lookups and setting.
- (ggc_get_size): Calculate large object size the new way.
- (sweep_pages): Redo to account for fact that we no longer have
- bytes_free.
- (ggc_collect): No longer need to reincrement bytes_free.
- (ggc_pch_alloc_object): Handle new large objects properly.
- (ggc_pch_read): Put PCH stuff into it's own uncollected zone.
-
-2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Remove a page break.
-
-2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/avr/avr.c (avr_output_function_prologue): Remove an
- extra pair of curly braces.
-
-2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mn10300/mn10300.c: Fix comment formatting.
- * config/mn10300/mn10300.h: Likewise.
-
-2004-01-05 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.h: Update documentation on nothrow_flag.
- * print-tree.c (print_node): Print TREE_NOTHROW as "align-ok" for
- types.
-
-2004-01-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Remove traces of dead ports.
-
-2004-01-05 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Add documentation for the MIPS -mexplicit-relocs
- option.
-
-2004-01-05 Richard Sandiford <rsandifo@redhat.com>
-
- PR target/12945
- * coverage.c (coverage_counter_alloc): Set SYMBOL_FLAG_LOCAL for
- counter labels.
- * config/mips/mips.c (INTERNAL_SYMBOL_P): Delete.
- (mips_classify_symbol): Always treat SYMBOL_REF_FLAG as indicating
- string constants if TARGET_MIPS16. Use SYMBOL_REF_DECL to check
- the binding of decl symbols, otherwise check SYMBOL_REF_LOCAL_P.
- (mips_symbol_insns): Don't trust the local/global classification.
- (m16_usym8_4, m16_usym5_4): Same mips16 change as mips_classify_symbol.
- (override_options): Make -mabicalls -fno-unit-at-a-time imply
- -mno-explicit-relocs.
- (mips_encode_section_info): Don't use SYMBOL_REF_FLAG to distinguish
- between local and global symbols.
-
-2004-01-05 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_dangerous_for_la25_p): Declare.
- (mips_preferred_reload_class): Declare.
- * config/mips/mips.h (DANGEROUS_FOR_LA25_P): Replace with function.
- (EXTRA_CONSTRAINT): Update accordingly.
- (PREFERRED_RELOAD_CLASS): Use mips_preferred_reload_class.
- * config/mips/mips.c (mips_dangerous_for_la25_p): New function.
- (mips_preferred_reload_class): New function. Prefer LEA_REGS if
- mips_dangerous_for_la25_p.
- (mips_secondary_reload_class): Use LEA_REGS rather than GR_REGS
- if mips_dangerous_for_la25_p.
-
-2004-01-05 Bernardo Innocenti <bernie@develer.com>
-
- * config/m68k/m68k.c (output_andsi3): Fix signed/unsigned comparison
- warning.
-
-2004-01-04 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.ac: Use AC_PROG_CPP_WERROR.
- * configure: Regenerate.
-
-2004-01-04 Zack Weinberg <zack@codesourcery.com>
-
- * .cvsignore: Add autom4te.cache.
-
-2004-01-04 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Revamp documentation of MIPS options. Remove
- -mabi=meabi, -mabi-fake-default, -mmips-as, -mgas, -mmips-tfile,
- -m4650, -mfix7000 and -(m)no-crt0. Put endianness options first,
- then architecture options, then ABI options. General rewording.
-
-2004-01-04 Joseph S. Myers <jsm@polyomino.org.uk>
-
- PR c/3414
- * doc/extend.texi: Clarify definition of malloc attribute.
-
-2004-01-04 Jan Hubicka <jh@suse.cz>
-
- * Makefile.in (cgraph.o, cgraphunit.o): Add intl.h dependency.
- * cgraph.c (create_edge, dump_cgraph): Update to use inline_failed
- * cgraph.h (cgraph_edge): Replace inline_call by inline_failed
- (cgraph_inline_p): Add extra argument reason.
- * cgraphunit.c: Minor formating fixes.
- cgraph_first_inlined_callee): New functions.
- (record_call_1): Record builtins too.
- (cgraph_analyze_function): Update inline_failed messages.
- (cgraph_mark_functions_to_output, cgraph_expand_function, cgraph_inlined_into,
- cgraph_inlined_callees, cgraph_estimate_growth): Update to use inline_failed.
- (cgraph_check_inline_limits): Likewise; Add argument reason.
- (cgraph_set_inline_failed): New static function.
- (cgraph_decide_inlining_of_small_function, cgraph_decide_inlining): Set
- reasons.
- (cgraph_inline_p): Add new argument reason.
- * tree-inline.c (expand_call_inline): Update warning.
-
-2004-01-03 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.ac: Replace AC_INIT, AC_OUTPUT, AC_CANONICAL_SYSTEM
- with modern equivalents.
- * configure: Regenerate.
-
- * configure.ac: Replace gcc_AC_CHECK_TYPE with AC_CHECK_TYPE.
- * aclocal.m4 (gcc_AC_CHECK_TYPE): Remove.
- * configure: Regenerate.
-
- * doc/install.texi: Note that 'gcc' is now a 2.57 directory.
-
- * configure.in: Rename to configure.ac.
- * configure.ac: Renamed from configure.in; make minimum necessary
- changes for autoconf 2.5x.
- * aclocal.m4: Make minimum necessary changes for autoconf 2.5x.
- * configure: Regenerate with autoconf 2.57.
-
-2004-01-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mips/linux.h: Fix comment formatting.
- * config/mips/mips.c: Likewise.
- * config/mips/mips.h: Likewise.
- * config/mips/mips.md: Likewise.
- * config/mips/netbsd.h: Likewise.
- * config/mips/windiss.h: Likewise.
-
-2004-01-02 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.md (fp constant pool splitter): Reorg suppression
- for sse and 387; add suppression for mmx.
-
-2004-01-02 Andrew Pinski <pinskia@physics.uc.edu>
-
- * loop.c (loop_optimize): Free all loops_info's mems.
-
- * c-typeck.c (finish_init): Free spelling_base before
- setting it again.
-
- * cfgloop.c (flow_loops_find): Always free the sbitmap
- headers.
-
- * predict.c (estimate_probability): Free bbs after being
- done with it.
-
-2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/mn10300/mn10300.h (PREDICATE_CODES): Add
- const_8bit_operand and call_address_operand.
-
-2004-01-02 Jan Hubicka <jh@suse.cz>
-
- * cgraphunit.c (cgraph_optimize_function): Call optimize_inline_calls
- when there is nothing to inline but warnings are requested.
- (cgraph_decide_inlining): Fix memory leak.
-
-2004-01-02 Jan Hubicka <jh@suse.cz>
-
- * expr.c (store_constructor): Fix pasto in previous patch.
-
-2004-01-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/cygming.h: Fix comment formatting.
- * config/i386/djgpp.h: Likewise.
- * config/i386/gthr-win32.c: Likewise.
- * config/i386/i386-interix.h: Likewise.
- * config/i386/i386.c: Likewise.
- * config/i386/i386.h: Likewise.
- * config/i386/openbsd.h: Likewise.
- * config/i386/winnt.c: Likewise.
- * config/i386/xm-mingw32.h: Likewise.
-
-2004-01-02 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/gcc.texi, doc/invoke.texi, doc/install.texi: Update
- copyright and last modification dates.
-
-2004-01-02 Andreas Jaeger <aj@suse.de>, Gerald Pfeifer <gp@suse.de>
-
- * doc/install.texi (Specific): Mention x86_64.
-
-2004-01-01 Hans-Peter Nilsson <hp@bitrange.com>
-
- * builtins.c (expand_builtin_apply_args_1) [STACK_GROWS_DOWNWARD]:
- Call force_operand on plus_constant result.
-
-2004-01-01 Jan Hubicka <jh@suse.cz>
-
- * expmed.c (store_bit_field, extract_bit_field): Use new named patterns
- * expr.c (store_constructor): Use vec_init pattern.
- * genopinit.c (optabs): Initailize vec_set/vec_extract/vec_init.
- * optabs.h (optab_index): ADD OTI_vec_set/OTI_vec_extract/OTI_vec_init
- (vec_set_optab, vec_extract_optab, vec_init_optab): New.
- * i386.md (vec_setv2df, vec_extractv2df, vec_setv4sf, vec_extractv4sf):
- New patterns.
- (sse2_unpc?pd): Fix pattern.
- (sse2_movlpd): Kill.
- (sse2_movsd): Deal with movlpd too.
- * i386.c (ix86_expand_builtin): Use sse2_movsd instead of sse2_movlpd.
- (ix86_expand_vector_init): New.
- * emmintrin.h (__mm_set_pd, __mm_set_ps): Use vector extensions.
- * md.texi (vec_set, vec_extract): Document
-
-2003-12-31 Jan Hubicka <jh@suse.cz>
-
- PR opt/13473
- * recog.c (validate_replace_rtx_1): Take care for RTL sharing inside
- ASM input operands
-
- PR opt/12617
- * toplev.c (dump_file_index): Reorder ce3 and bbro.
- (dump_file): Likewise.
- (rest_of_compilation): Likewise.
-
- PR debug/13367
- * cgraph.c (cgraph_function_possibly_inlined): Even with
- flag_really_no_inline we inline always_inline functions.
- * cgraphunit.c (cgraph_analyze_function): Clear inlinable flag
- for non-always_inline functions when there is flag_really_no_inline.
- (cgraph_decide_inlining): Limit work done when not inlining.
- (cgraph_decide_inlining_incrementally): Likewise.
- (cgraph_optimize_function): Check whether something got inlined.
- * c-objc-common.c (c_disregard_inline_limits): Do not always inline
- extern inline functions when not inlining.
-
- * opts.c (decode_options): Disable crossjumping at -O1
- * invoke.texi (-O1): Document change.
-
-See ChangeLog.10 for earlier changes.
diff --git a/gcc/ChangeLog.4 b/gcc/ChangeLog.4
deleted file mode 100644
index 25546c471dc..00000000000
--- a/gcc/ChangeLog.4
+++ /dev/null
@@ -1,15261 +0,0 @@
-2000-12-31 Philip Blundell <philb@gnu.org>
-
- * config/arm/linux-gas.h (CLEAR_INSN_CACHE): Add missing asm
- operands.
-
-2000-12-30 Richard Henderson <rth@redhat.com>
-
- * dbxout.c (dbxout_block): Invert logic on eliding LBRAC/RBRAC.
- Initialize variables properly for DBX_LBRAC_FIRST.
-
-2000-12-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case COMPONENT_REF): Fix typo in last change.
-
-2000-12-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (validate_arglist): New function, use it.
-
-2000-12-30 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.c (arm_expand_prologue): Fix typos in error
- message and comment. Note location of testcase for an unhandled
- situation.
-
-2000-12-30 Jeffrey Oldham <oldham@codesourcery.com>
-
- * defaults.h (BUILD_VA_LIST_TYPE): New definition.
- * tree.c (build_common_tree_nodes_2): Ensure the va_list_type_node
- is a copy, not an alias.
-
-2000-12-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * calls.c (calls_function_1, case CONSTRUCTOR): New case.
-
- * alias.c (alias_sets_conflict_p): New function.
- (mems_in_disjoint_alias_sets_p): Use it.
- (readonly_fields_p): Moved from expr.c; check for record type.
- (objects_must_conflict_p): New function.
- * calls.c (expand_call): Use assign_temp as much as possible, use
- readonly variant if assigned once, and don't set memory attributes.
- (emit_library_call_value_1, store_one_arg): Likewise.
- * integrate.c (expand_inline_function): Likewise.
- * stmt.c (expand_asm_operands, expand_return): Likewise.
- * expr.c (copy_blkmode_from_reg, store_constructor): Likewise.
- (store_field, save_noncopied_parts, expand_expr): Likewise.
- (expand_expr_unaligned): Likewise.
- (readonly_fields_p): Moved to alias.c.
- (safe_from_p): Rework handling of SAVE_EXPR.
- MEMs ony conflict if alias sets conflict; likewise for INDIRECT_REF.
- * function.c (struct temp_slot): Delete field ALIAS_SET; add TYPE.
- (assign_stack_for_temp): Use objects_must_confict_p.
- Set all memory attributes from type, if specified.
- (mark_temp_slot): Mark TYPE field.
- * tree.h (alias_sets_conflict_p, readonly_fields_p): New decls.
- (objects_must_conflict_p): Likewise.
-
- * stmt.c (expand_decl): Don't use assign_stack_temp in error case.
- (add_case_node): No need to copy nodes anymore.
-
-2000-12-30 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (split_branches): Don't dereference re-computed
- `beyond' before checking it's non-NULL.
-
-2000-12-29 Robert Lipe <robertl@sco.com>
-
- Remove COFF support from i?86-pc-sco3.2v5.
- * i386/sco5.h (PREFERRED_DEBUGGING_TYPE): Change to Dwarf II.
- (TARGET_ELF): Now always true.
- (SUBTARGET_SWTICHES: )Remove -mcoff.
-
- * i386/t-sco5 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
- MULTILIB_EXCEPTION): Nuke coff.
- (CRTSTUFF_T_CFLAGS_S): Deleted.
- (TARGET_LIBGCC2_CFLAGS): Added.
-
-2000-12-29 Alexandre Oliva <aoliva@redhat.com>
-
- * varasm.c (output_constant_def): Don't ENCODE_SECTION_INFO
- twice. Update desc->rtl and ->label, in case ENCODE_SECTION_INFO
- modifies them.
-
-2000-12-29 Bernd Schmidt <bernds@redhat.com>
-
- * ia64.c (ia64_expand_load_address): Accept additional scratch
- register argument. All callers & prototype changed.
- Use scratch register when generating load_symptr insns.
- * ia64.md (movdi_symbolic): Clobber a scratch register. Use it
- when calling ia64_expand_load_address.
- (movdi): Generate movdi_symbolic with additional operand.
- (load_gprel64): Use pic_offset_table_rtx instead of (reg:DI 1).
- (load_symptr): Likewise. Use additional operand as a scratch
- register instead of generating it here.
-
- * basic-block.h: Add a comment.
- * flow.c (PROP_POSTRELOAD): New macro.
- (update_life_info): Add it to prop_flags.
- (mark_set_1): If it is set, compute REG_N_SETS for the original
- register number of a hard reg.
-
- * emit-rtl.c (gen_raw_REG): New function.
- (gen_rtx_REG, gen_reg_rtx, init_emit_once): Use it instead of
- gen_rtx_raw_REG.
- * print-rtl.c (print_rtx): Print ORIGINAL_REGNO.
- * final.c (alter_subreg): Update it.
- * regrename.c (do_replace): Likewise. Use gen_raw_REG.
- * rtl.def (REG): Update comment.
- * rtl.h (X0UINT, ORIGINAL_REGNO): New macros.
- (gen_raw_REG): Declare.
-
-2000-12-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.c (get_set_constructor_bits): Use host_integerp and
- tree_low_cst.
-
- * local-alloc.c (update_equiv_regs): Don't use copy_rtx on PATTERN.
-
- * toplev.c (main): Call xmalloc_set_program_name.
- * gcc.c (main): Likewise.
-
-2000-12-29 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.c (arm_override_options): Fix typo in warning
- message.
-
-2000-12-29 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_expand_block_move): Initialize
- src_align and dst_align in bits. Do unaligned quadword loads
- if possible for BWX too.
- (alpha_expand_block_clear): Initialize align in bits. Track
- small leading offsets into a larger alignment. Play games with
- stq_u for large 4-byte aligned blocks. Use load/mask/store
- for appropreately aligned heads and tails.
-
-2000-12-29 Alexandre Oliva <aoliva@redhat.com>
-
- * function.c (assign_parms): Convert arguments passed by
- reference to the right mode.
-
-2000-12-28 Geoffrey Keating <geoffk@redhat.com>
-
- * c-parse.in (select_or_iter_stmt): Use truthvalue_conversion
- on the condition of a FOR statement, so that it gets typechecked
- and optimized.
-
-2000-12-29 Alexandre Oliva <aoliva@redhat.com>
-
- * c-decl.c (grokdeclarator): Prevent crash in case of overflow in
- array size.
-
- * calls.c (emit_library_call_value_1): Add to call_fusage the
- stack slot assigned to argument passed by reference.
-
-2000-12-28 Jeffrey Oldham <oldham@codesourcery.com>
-
- * toplev.h (extern really_sorry): Remove extern declaration for
- nonexistent function.
-
-2000-12-28 Jeffrey Oldham <oldham@codesourcery.com>
-
- * varasm.c (initializer_constant_valid_p): Indicate subtraction of
- pointers to the same string constant is absolute.
-
-2000-12-28 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (enum format_type): Add strfmon_format_type.
- (decl_attributes): Handle format attributes strfmon and
- __strfmon__.
- (FMT_FLAG_USE_DOLLAR, FMT_FLAG_ZERO_WIDTH_BAD,
- FMT_FLAG_EMPTY_PREC_OK): Define.
- (format_char_info): Update comment for flag_chars.
- (format_flag_spec): Add skip_next_char.
- (format_kind_info): Add left_precision_char.
- (printf_flag_specs, scanf_flag_specs, strftime_flag_specs,
- format_types): Update for these new structure members and flags.
- (time_char_table): Make const.
- (strfmon_length_specs, strfmon_flag_specs, strfmon_flag_pairs,
- monetary_char_table): New.
- (format_types): Add details of strfmon formats.
- (init_function_format_info): Create default attribute for strfmon.
- (check_format_info_main): Check the new flags. Handle
- skip_next_char and left precision.
- * toplev.c (documented_lang_options): Update description of
- -Wformat.
- * extend.texi: Document strfmon format attributes. Document
- attribute forms such as __printf__. Clarify format_arg attribute
- documentation.
- * invoke.texi (-Wformat): Update for strfmon formats.
-
-2000-12-28 Andreas Jaeger <aj@suse.de>
-
- * expmed.c (store_bit_field): Fix last patch.
-
-2000-12-28 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/crt1.asm (start_l): `__SH4_SINGLE_ONLY__' was missing
- the trailing `__'.
-
-2000-12-28 Alan Lehotsky <lehotsky@tiac.net>
-
- * expmed.c (store_bit_field): Correctly compute smallest mode that
- is sufficient to contain all bits we are storing.
-
-2000-12-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (build_function_call_expr): New function. Use it
- everywhere in lieu of manually constructing a CALL_EXPR.
-
-2000-12-27 Chandrakala Chavva <cchavva@redhat.com>
-
- * calls.c (store_one_arg): If parm is passed both in stack and in
- register and offset is greater than reg_parm_stack_space, split
- the offset and call emit_push_insn().
-
-2000-12-27 Nick Clifton <nickc@redhat.com>
-
- * ifcvt.c (noce_emit_store_flag): Handle jump insns that are
- PARALLEL.
-
-2000-12-27 Alexandre Oliva <aoliva@redhat.com>
-
- * rtl.c (copy_most_rtx, shallow_copy_rtx): Copy frame_related
- flag.
-
-2000-12-27 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/Makefile.in: fix for ancient Bourne shell
- * fixinc/Makefile.BEOS: obsolete
- * fixinc/Makefile.DOS: obsolete
- * fixinc/fixincl.sh(LINKS): use `test -d' rather than `ls' for testing
-
-2000-12-27 Bernd Schmidt <bernds@redhat.com>
-
- * sched-deps.c (get_condition, conditions_mutex_p): New functions.
- (add_dependence): Use them to avoid adding unnecessary dependencies
- between conditionally executed insns.
- (sched_analyze_1, sched_analyze_2, sched_analyze_insn): Don't free
- dependency lists if current insn is a COND_EXEC.
-
-2000-12-27 Geoffrey Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.md (define_attr "length"): Correct
- calculation.
-
-2000-12-26 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.c: Fix a comment typo.
- (get_shift_alg): Fix a typo in the assembly code for 12-bit
- ASHIFTRT in HImode. Do not output extra whitespace after one line
- of assembly code. Output a tab after an opcode instead of a
- space.
- (emit_a_shift): Output a tab after an opcode instead of a space.
-
-2000-12-23 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (out_movqi_r_mr, out_movhi_r_mr, out_movsi_r_mr,
- out_movsi_mr_r, out_movqi_mr_r, out_movhi_mr_r): Use %o instead of
- %4 in output templates, do not modify operands passed by the caller.
-
-2000-12-23 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * builtins.def (BUILT_IN_LABS, BUILT_IN_LLABS, BUILT_IN_IMAXABS):
- Don't define.
- * builtins.c (expand_builtin): Don't handle BUILT_IN_LABS,
- BUILT_IN_LLABS and BUILT_IN_IMAXABS.
- * c-common.c (c_common_nodes_and_builtins): Use BUILT_IN_ABS for
- builtin labs, llabs and imaxabs.
- (expand_tree_builtin): Don't handle BUILT_IN_LABS, BUILT_IN_LLABS
- and BUILT_IN_IMAXABS.
-
-2000-12-23 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (builtin_function_2): New function.
- (c_common_nodes_and_builtins): Use it to define each pair (foo,
- __builtin_foo) of builtins in one place.
-
-2000-12-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gccbug.in: Add libgcj and preprocessor categories.
-
-2000-12-22 Bernd Schmidt <bernds@redhat.com>
-
- * config/ia64/ia64.c (itanium_reorder): Only schedule stops in
- the final scheduling pass.
-
-2000-12-22 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.h (struct machine_function): Add new field
- 'lr_save_eliminated'.
- * config/arm/arm.c (arm_compute_save_reg_mask): Do not include the
- link register if its save has been eliminated.
- (output_arm_prologue): Mention if the save of the link register
- has been eliminated.
- (output_arm_epilogue): Rename 'live_regs_mask' to
- 'saved_regs_mask'.
- Test 'saved_regs_mask' for the link register, not regs_ever_live.
- (arm_expand_prologue): If the link register has not been saved set
- lr_save_eliminated and emit a USE to prevent later passes from
- scavenging it.
-
- * dwarf2out_frame_debug_expr: Allow the (scratch) frame
- pointer to be initialized from the stack pointer plus a
- constant.
-
-2000-12-22 Bernd Schmidt <bernds@redhat.com>
-
- * regrename.c (struct du_chain): New field "earlyclobber".
- (enum scan_actions): Remove unused entry "note_reference".
- (enum scan_actions_name): Likewise.
- (note_sets, clear_dead_regs, merge_overlapping_regs): New static
- functions.
- (regrename_optimize): Use them to compute unavailable regs; get
- rid of the more simpleminded code we used to have here.
- Use a tick array to ensure registers are allocated in a more
- round-robin way. Disable code that only optimizes registers
- that were seen more than once.
- (referenced_regs): Remove variable.
- (scan_rtx_reg): New arg "earlyclobber". All callers changed.
- Store its value in newly generated du_chain structures.
- Add new du_chains at the end, not the start, of the list.
- Don't handle the "note_reference" action.
- (scan_rtx): New arg "earlyclobber". All callers changed.
- (build_def_use): Lose code to keep track of referenced regs.
-
-2000-12-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (sched-deps.o, sched-rgn.o): Fix dependency typo.
-
- * fp-bit.h (usi_to_float): Add prototype.
-
- * i386.c (ix86_expand_builtin): Delete unused label.
-
- * dwarf2out.c (file_info_cmp): Prototype.
- (dwarf2out_line): Hide variable `old_in_use'.
-
- * objc-act.c (objc_fatal): Delete.
-
- * sched-vis.c (visualize_stall_cycles): Remove unused variable.
-
- * system.h (getopt): Fix error in last change.
-
- * varasm.c (assemble_trampoline_template): Constify.
-
-2000-12-22 Jason Merrill <jason@redhat.com>
-
- * collect2.c (main): Use auto_demangling.
-
-2000-12-22 Alexandre Oliva <aoliva@redhat.com>
-
- * function.c (assign_parms): Update parm's DECL_INCOMING_RTL
- when optimizing PARALLEL to REG.
-
-2000-12-22 Graham Stott <grahams@redhat.com>
-
- * reload.c (update_auto_inc_notes): New, broken out from ...
- (find_reloads_address_1): ... use here, also correct possible
- use of uninitialized reloadnum.
-
-2000-12-21 David O'Brien <obrien@FreeBSD.org>
-
- * config/freebsd.h (LIB_SPEC): remove -kthread option.
-
-2000-12-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * resource.c (mark_set_resources): Use MARK_SRC_DEST for
- PRE_MODIFY and POST_MODIFY cases.
-
- * rtlanal.c (side_effects_p): Handle PRE_MODIFY and POST_MODIFY.
-
-2000-12-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * md.texi (Looping Patterns): New node.
-
-2000-12-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi, cpp.texi: Update last-updated dates.
-
-2000-12-21 Chandrakala Chavva <cchavva@redhat.com>
-
- * varasm.c (output_addressed_constants): Use language specific
- expander on unknown nodes.
-
-2000-12-21 Graham Stott <grahams@redhat.com>
-
- * combine.c (distribute_notes): Handle REG_NON_LOCAL_GOTO notes.
-
-2000-12-21 Bernd Schmidt <bernds@redhat.com>
-
- * Makefile.in (out_object_file): Depend on sched-int.h.
- * rtl.h (single_set_1): New macro.
- (single_set_2): Renamed from single_set_1 and extra argument added.
- * rtlanal.c (single_set_2): Likewise.
-
- * config/ia64/ia64-protos.h (get_bundle_name, ia64_issue_rate,
- ia64_adjust_cost, ia64_sched_init, ia64_sched_finish,
- ia64_sched_reorder, ia64_sched_reorder2, ia64_variable_issue):
- Declare.
- * config/ia64/ia64.c: Include "sched-int.h".
- (hard_regno_rename_ok): Also disallow renaming from the various
- reg_save_* regs.
- (ia64_safe_itanium_requiers_unit0, ia64_safe_itanium_class,
- ia64_safe_type, init_insn_group_barriers, group_barrier_needed_p,
- safe_group_barrier_needed_p, fixup_errata): New static functions.
- (rtx_needs_barrier): Handle bundle selector and cycle display
- insns.
- (emit_insn_group_barriers): Accept additional FILE * arg. All
- callers changed. Rework to only generate stop bits between
- basic blocks that haven't been inserted by scheduling.
- (struct bundle, struct ia64_packet): New structures.
- (NR_BUNDLES, NR_PACKETS): New macros.
- (bundle, packets, type_names): New static arrays.
- (ia64_final_schedule): New variable.
- (ia64_single_set, insn_matches_slot, ia64_emit_insn_before,
- gen_nop_type, finish_last_head, rotate_one_bundle, rotate_two_bundles,
- cycle_end_fill_slots, packet_matches_p, get_split, find_best_insn,
- find_best_packet, itanium_reorder, dump_current_packet, schedule_stop):
- New static functions.
- (ia64_issue_rate, ia64_sched_init, ia64_sched_reorder,
- ia64_sched_finish, ia64_sched_reorder2, ia64_variable_issue): New
- functions.
- (ia64_reorg): Perform a final scheduling pass.
- * config/ia64/ia64.h (CONST_COSTS): Slightly increase SYMBOL_REF costs.
- (MAX_CONDITIONAL_EXECUTE, ADJUST_COST, ISSUE_RATE, MD_SCHED_INIT,
- MD_SCHED_REORDER, MD_SCHED_REORDER2, MD_SCHED_FINISH,
- MD_SCHED_VARIABLE_ISSUE): Define macros.
- (ia64_final_schedule): Declare variable.
- * config/ia64/ia64.md (attr itanium_class): Add some more classes.
- (attr type): Account for them.
- (itanium_requires_unit0): New attribute.
- (function units): Rewrite.
- (some splitters): Don't create scheduling barriers here.
- (gr_spill_internal, gr_restore_internal): Don't predicate the
- pseudo-op.
- (nop_m, nop_i, nop_f, nop_b, nop_x, cycle_display, cycle_display_1,
- bundle_selector): New patterns.
- (insn_group_barrier): Now has an operand.
-
-2000-12-21 DJ Delorie <dj@redhat.com>
-
- * dwarf2out.c (simple_decl_align_in_bits): new
- (field_byte_offset): Try both the type align and the
- decl align, use whichever works, preferring the type align.
-
-2000-12-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gccbug.in: Fix typo.
-
-2000-12-20 Benjamin Kosnik <bkoz@redhat.com>
-
- * Makefile.in (gcc_gxx_target_include_dir): Use instead of
- build_tooldir and libstdcxx_incdir.
-
-2000-12-20 Robert Lipe <robertlipe@usa.net>
-
- * haifa-sched.c (schedule_block): Provide empty source statement
- if not MD_SCHED_REORDER2.
-
-2000-12-20 Richard Henderson <rth@redhat.com>
-
- * rtl.h (REG_NON_LOCAL_GOTO): New.
- * rtl.c (reg_note_name): Update.
- * stmt.c (expand_goto): Emit a REG_NON_LOCAL_GOTO note.
- * builtins.c (expand_builtin_longjmp): Likewise.
- * flow.c (make_edges): Check for REG_NON_LOCAL_GOTO and do
- not emit an edge.
-
-2000-12-20 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (out_movsi_r_mr, out_movsi_mr_r, out_movhi_mr_r):
- Do not output undefined opcodes where source or destination register
- overlaps with modified pointer register. Handle (X + d) addresses.
- * config/avr/avr.md (*movhi, *movsi, *movsf): Correct insn length
- in alternatives with memory operand.
-
-2000-12-20 Richard Henderson <rth@redhat.com>
-
- * c-typeck.c (build_asm_stmt): New, broken out from ...
- (c_expand_asm_operands): ... here. Just do rtl expansion.
- (c_expand_return): Return the new stmt node.
- (c_start_case, do_case): Likewise.
- * c-common.c (c_expand_expr_stmt): Likewise.
- * c-common.h: Update declarations.
- * c-tree.h: Likewise.
- * c-semantics.c (build_stmt): Use STMT_LINENO not TREE_COMPLEXITY.
- * c-parse.in (fndef): Set DECL_SOURCE_LINE to the open brace.
- (nested_function, notype_nested_function): Likewise.
- (compstmt): Return the compound statement not the binding level.
- (lineno_labeled_stmt): Simplify.
- (lineno_stmt, lineno_label): Set STMT_LINENO.
- (stmt, label): Return the new stmt node.
-
-2000-12-20 Bernd Schmidt <bernds@redhat.com>
-
- * Makefile.in (OBJS): Add sched-ebb.o.
- (sched-ebb.o): New rule.
- (sched-vis.o): Depend on hard-reg-set.h and $(BASIC_BLOCK_H).
- (haifa-sched.o): Depend on insn-flags.h.
- * haifa-sched.c: Include "insn-flags.h".
- (priority): Don't access BLOCK_NUM, use the new contributes_to_priority
- callback.
- * rtl.h (schedule_ebbs): Declare.
- * sched-int.h (struct sched_info): Add new members
- contributes_to_priority and compute_jump_reg_dependencies.
- * sched-rgn.c (contributes_to_priority, compute_jump_reg_dependencies):
- New functions.
- (region_sched_info): Add them.
- * sched-vis.c: Include "hard-reg-set.h" and "basic-block.h".
- * sched-ebb.c: New file.
- * sched-deps.c (sched_analyze_insn): Add code to handle JUMP_INSNs.
-
- * flow.c (ior_reg_cond, and_reg_cond, elim_reg_cond): Properly
- handle all relational operators.
-
-2000-12-20 Alexandre Oliva <aoliva@redhat.com>
-
- * final.c (output_addr_const): Use ASM_OUTPUT_SYMBOL_REF.
- * tm.texi: Document it.
-
-2000-12-19 Benjamin Kosnik <bkoz@redhat.com>
-
- * Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Use build_tooldir
- instead of gcc_tooldir.
-
-2000-12-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * system.h (getopt): Update prototype to match include/getopt.h.
-
-2000-12-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- From Jeff Law.
- * pa.c (basereg_operand): Simplify.
-
-2000-12-19 Bernd Schmidt <bernds@redhat.co.uk>
-
- * haifa-sched.c (rm_line_notes): Arguments are now head and tail,
- not block number. All callers and prototype changed.
- (set_priorities): Likewise.
- (save_line_notes): Add head and tail arguments; all callers and
- prototype changed.
- (restore_line_notes): Likewise. Don't crash on insns generated
- during scheduling.
- (schedule_block): Don't use BLOCK_HEAD/BLOCK_END macros.
- Call MD_SCHED_INIT with additional argument.
- When starting a new cycle, emit cycle_display insns if available.
- Don't stop scheduling when encountering a JUMP_INSN, but add another
- call to schedule_more_p in the inner loop.
- Call MD_SCHED_REORDER2 after scheduling an insn.
- Call MD_SCHED_FINISH once all insns are scheduled.
- (sched_init): Compensate for the fact that get_block_head_tail
- doesn't include leading notes.
- * sched-deps.c (free_deps): Free vectors here.
- * sched-rgn.c (compute_block_backward_dependencies): Not here.
- (last_was_jump): New static variable.
- (schedule_more_p): Test it.
- (init_ready_list): Initialize it.
- (can_schedule_ready_p): Set it if we have a JUMP_INSN.
-
- * config/i386/i386.h (MD_SCHED_INIT): Add new arg.
- * config/m32r/m32r.h (MD_SCHED_INIT): Add new arg.
- * config/sparc/sparc.h (MD_SCHED_INIT): Add new arg.
-
- * md.texi (cycle_display): Document.
- * tm.texi (MD_SCHED_INIT): Document new arg.
- (MD_SCHED_FINISH, MD_SCHED_REORDER2): Document.
-
- * flow.c (ior_reg_cond, nand_reg_cond, not_reg_cond): Rewrite
- to use different representation. All callers changed.
- (and_reg_cond): Renamed from nand_reg_cond; caller changed.
- (init_propagate_block_info): Don't test flags to determine
- whether to compute conditional lifetimes.
- Adjust code for new representation of conditional lifetimes.
- (mark_regno_cond_dead): Similar adjustment.
- (free_reg_cond_life_info): Similar adjustment.
- (elim_reg_cond): New function.
- (flush_reg_cond_1): Use it.
-
-2000-12-19 Catherine Moore <clm@redhat.com>
-
- * reload1.c (reload_combine): Take multi-hard-regs into account
- when processing CALL_INSN_FUNCTION_USAGE.
-
-2000-12-19 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi (-print-search-dirs): Make references to cpp refer
- to cpp0 instead.
-
-2000-12-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c (tree_expr_nonnegative_p): Treat truth values as
- non-negative.
-
-Tue Dec 19 00:37:08 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * reload.c (push_reload): When using a dying register for the reload
- register in an in-out reload, use outmode if wider than inmode.
-
-2000-12-19 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * config/d30v/d30v.h (EXIT_BODY): Update comment.
-
-2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * config.gcc (*-*-linux*): Don't define HAVE_ATEXIT or BSTRING.
- * tm.texi (EXIT_BODY): Update documentation.
- * config/freebsd.h, config/netware.h, config/arm/coff.h,
- config/arm/conix-elf.h, config/arm/unknown-elf.h,
- config/d30v/d30v.h, config/mcore/mcore.h, config/pj/pj.h,
- sparc/sp86x-aout.h: Remove definitions of HAVE_ATEXIT (some
- commented out) and associated comments.
-
-2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (STD_C9L, ADJ_STD): Define.
- (printf_length_specs, scanf_length_specs): Mark "ll" as standard
- STD_C9L.
- (T99_LL): Rename to T9L_LL.
- (T99_ULL): Rename to T9L_ULL.
- (print_char_table, scan_char_table): Use T9L_LL and T9L_ULL
- instead of T99_LL and T99_ULL.
- (check_format_info_main): Use ADJ_STD on all format standard
- versions being compared.
- * c-common.h: Declare warn_long_long.
- * c-tree.h: Don't declare warn_long_long.
-
-2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * COPYING: Update to current
- ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references
- to 19yy as example year in copyright notice).
-
-2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (cb_file_change): Treat in_system_header as strictly
- boolean (0 or 1).
-
-2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppmain.c: Update print.lineno with -P.
-
-2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c: s/change_file/file_change.
- * cpplib.h: Similarly.
- * cppmain.c: Similarly.
- * fix-header.c: Similarly.
- * cppfiles.c (stack_include_file): Pass the buffer location and
- size to cpp_push_buffer. Generate the file_change callback,
- so that sysp is already set.
- * cpphash.h: Add _cpp_do_file_change.
- * cpplib.c (do_line): Set buffer->sysp directly. Generate the
- file_change callback after setting sysp.
- (_cpp_do_file_change): Handle FC_ENTER and the FC_RENAME exception
- here.
- (cpp_push_buffer): Don't generate a callback. Clear sysp.
- (cpp_pop_buffer): Clean up logic.
-
-2000-12-18 Benjamin Kosnik <bkoz@redhat.com>
-
- * configure.in (gcc_gxx_include_dir): Simplify.
- (libstdcxx_incdir): Export.
- * configure: Regenerate.
- * Makefile.in (PREPROCESSOR_DEFINES): Add in
- GPLUSPLUS_TOOL_INCLUDE_DIR bits here..
- (libstdcxx_incdir): Add.
- * cppdefault.c (GPLUSPLUS_TOOL_INCLUDE_DIR): Add search path.
-
-2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (lex_lineno): Remove.
- (init_c_lex, c_lex): Remove lex_lineno.
- (cb_change_file): Update lineno correctly, both before calling
- push_srcloc and before leaving the function.
- (cb_def_pragma): Set lineno before outputting diagnostics.
-
-Sun Dec 17 18:45:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * print-tree.c (print_node): Print DECL_USER_ALIGN and TYPE_USER_ALIGN.
- Print TYPE_MIN_VALUE and TYPE_MAX_VALUE for REAL_TYPE.
- Use print_node_brief to print bounds.
-
-2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.h (struct cpp_reader): Remove references to string_pool
- and temp_string_pool.
- * cppinit.c (cpp_create_reader, cpp_cleanup): Similarly; using
- ident_pool in place.
- * cpplex.c (parse_number, unescaped_terminator_p, parse_string,
- save_comment, cpp_token_as_text): Similarly.
- * cpplib.c (do_define, glue_header_name, parse_assertion): Similarly.
- * cppmacro.c (make_number_token, builtin_macro, lock_pools,
- unlock_pools, stringify_arg, paste_tokens): Similarly.
-
-Sun Dec 17 12:41:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * dwarf2out.c (loc_descriptor_from_tree, case NOP_EXPR): New case.
- (loc_descriptor_from_tree, case CONVERT_EXPR): Likewise.
- (loc_descriptor_from_tree, case NON_LVALUE_EXPR): Likewise.
-
-2000-12-17 Richard Earnshaw <rearnsha@arm.com>
-
- * Makefile.in (check-po): Use $(MAKE).
- (risky-stage1, risky-stage2, risky-stage3, risky-stage4): Likewise.
-
-2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppmain.c (check_multiline_token): New function.
- (scan_buffer): Use it.
- (cb_change_file): Restructure to avoid warning.
- * cpperror.c (print_location): Initialize col.
-
-2000-12-14 Philipp Thomas <pthomas@suse.de>
-
- * protoize.c (main): Correctly set locale categories.
- * gcc.c (main): Likewise.
- * cppmain.c (general_init): Likewise.
- * toplev.c (main): Likewise.
- * gcov.c (main): Likewise.
- * collect2.c (main): Likewise.
-
-2000-12-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c (c_common_nodes_and_builtins): Create a
- cstring_endlink, use it. Rename int_ftype_string_string to
- int_ftype_cstring_cstring, string_ftype_string_int to
- string_ftype_cstring_int, and string_ftype_string_string to
- string_ftype_cstring_cstring. Prefer sizetype_endlink and
- int_endlink to manually recreating them. Fix the prototype
- set for __builtin_strspn/__builtin_strcspn.
-
-2000-12-12 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (out_set_stack_ptr): Update comment.
- (print_operand): Add support for %~ and %o.
-
-2000-12-17 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x.h: Add ASM_OUTPUT_DEF definition for bounded pointer code.
-
-2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c: Move main_input_filename handling to FC_ENTER. Clean up.
- * cpperror.c (print_containing_files): Get right line number.
- (print_location): Output column of 1 if 0.
- * cppfiles.c (stack_include_file): cpp_push_buffer handles
- the callback.
- * cpphash.h (_cpp_do_file_change): No longer external.
- * cpplib.c (do_file_change): Now local to cpplib.c.
- (do_line): Fake a buffer stack for preprocessed files.
- (cpp_push_buffer): Create a file_change callback. Handle faked
- buffers.
- (cpp_pop_buffer): Similarly.
- * cpplib.h: BUF_FAKE: New buffer type.
- * cppmain.c: Update to handle correct file renaming where a
- #line is the first line of the main file, and produce only
- the renamed file, not the original file, as output.
-
-2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md: Remove redundant @s from output patterns.
-
-2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
- Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Call c4x_init_pragma.
-
- * config/c4x/c4x-protos.h (c4x_init_pragma): New prototype.
-
- * config/c4x/c4x.c (c4x_init_pragma): New function.
- (c_lex_func): New variable.
- (c4x_parse_pragma): Use c_lex_func.
-
-2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
- Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * config/c4x/c4x.h (MD_INIT_BUILTINS): Add void_list_node argument
- to c4x_init_builtins.
-
- * config/c4x/c4x-protos.h (c4x_init_builtins): Add tree argument.
-
- * config/c4x/c4x.c (c4x_init_builtins): Add tree argument.
- (c4x_output_ascii): Fix.
-
-2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
- Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * config/c4x/c4x.h (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Define.
-
- * config/c4x/c4x-protos.h (c4x_init_builtins): New prototype.
- (c4x_expand_builtin): Likewise.
-
- * config/c4x/c4x.c (c4x_init_builtins): New function.
- (c4x_expand_builtin): Likewise.
-
- * config/c4x/c4x.md (floatunsqihf2): New pattern.
- (*floatqihf2_set, *fixhfqi_set, fix_trunchfqi2): Likewise.
- (fixuns_trunchfqi2, toieee, frieee, *ldhf_conditional): Likewise.
- (*ldhf_conditional_noov, movhfcc, trap, cond_trap_cc): Likewise.
- (*toieee_movqf_clobber, *frieee_movqf_clobber): Likewise.
-
-2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * libgcc2.h: Use Wtype for SItype and DWtype for DItype in prototypes.
- * libgcc2.c (__absvsi2): Use Wtype and DWtype.
- (__absvdi2, __addvsi3, __addvdi3, __subvsi3): Likewise.
- (__subvdi3, __mulvsi3, __mulvdi3, __negvsi2, __negvdi2): Likewise.
-
-2000-12-16 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (INITIALIZE_TRAMPOLINE): Enclose the block
- statement in do/while(0).
-
-Sat Dec 16 19:56:24 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.md (ashrsi3_cmpno, ashrhi3_cmpno, ashrqi3_cmpno, lshrsi3_cmpno,
- lshrhi3_cmpno): Remove redundant '@' from the template.
-
- * i386.md (cmpstrsi_1): Fix type of the compare.
-
- * genattrtab.c (attr_rtx_cost): New function.
- (simplify_test_exp): Avoid overactive inlining; use temporary
- obstacks for tests.
-
-Sat Dec 16 10:41:11 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * diagnostic.c (finish_abort): Deleted.
- (fatal): Add code from finish_abort.
- (error_recursion, fancy_abort): Call fatal, not finish_abort.
- (trim_filename): Remove leading "../".
- * diagnostic.h (finish_abort): Deleted.
- * toplev.c (crash_signal): Call fatal, not finish_abort.
-
- * stor-layout.c (place_field): Treat overflowing DECL_SIZE_UNIT
- as if size were variable.
-
- * expmed.c (expand_mult): Write REG_EQUAL note with proper mode.
-
-2000-12-16 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * tradcpp.c: T_WARNING: New.
- (do_warning): New function.
- (finclude): Skip past the newline and increase the line number
- before calling output_line_command.
- (do_line): Skip the new line after output_line_command. Don't
- pre-decrement the line number.
-
-2000-12-15 Diego Novillo <dnovillo@redhat.com>
-
- * i386/unix.h (ASM_OUTPUT_MI_THUNK): Fix references to
- _GLOBAL_OFFSET_TABLE_ when using Intel syntax.
-
-2000-12-15 Jakub Jelinek <jakub@redhat.com>
-
- * gcc.c (cpp_options): Pass -fno-operator-names.
- * cpplib.h (struct cpp_options): Add operator_names.
- * cppinit.c (cpp_create_reader): Initialize it.
- (initialize_builtins): If -fno-operator-names, don't add
- C++ alternate operator names.
- (COMMAND_LINE_OPTIONS): Add -fno-operator-names.
- (cpp_handle_option): Clear operator_names.
-
-2000-12-15 Jason Merrill <jason@redhat.com>
-
- * jump.c (jump_optimize_1): Don't delete the line note after the
- prologue even if it seems redundant.
-
- * config/arm/arm.c (arm_expand_prologue): Set RTX_FRAME_RELATED_P
- on all insns used to adjust the stack.
-
-Fri Dec 15 15:32:16 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * combine.c (cant_combine_insn_p): Get around SUBREGs when determining
- hardreg<->reg moves.
-
-Fri Dec 15 14:48:37 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * genrecog.c (add_to_sequence): Remove special case for
- const_int_operand.
- (maybe_both_true): Return 1 when falling out of sequence when
- trying to find common position in the pattern.
-
-Fri Dec 15 14:44:51 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * integrate.c (copy_rtx_and_substitute): Copy mode too.
-
-Fri Dec 15 14:11:57 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * flow.c (notice_stack_pointer_modification_1): Cleanup.
-
-2000-12-15 Alexandre Oliva <aoliva@redhat.com>
-
- * function.c (adjust_trampoline_addr): New function.
- (trampoline_address): Call it instead of round_trampoline_addr().
- * tm.texi (TRAMPOLINE_ADJUST_ADDRESS): Document it.
-
-2000-12-14 Zack Weinberg <zack@wolery.stanford.edu>
-
- * cppfiles.c (hack_vms_include_specification): Delete function
- (not used since 1998).
-
-Fri Dec 15 03:37:51 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * haifa-sched.c (sched_init): Don't put a note in front of any BARRIER.
-
-2000-12-14 Jim Wilson <wilson@redhat.com>
-
- * alias.c (get_alias_set): Call record_component_aliases for
- COMPLEX_TYPE.
- (record_component_aliases): Handle COMPLEX_TYPE.
-
-2000-12-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fixinc/gnu-regex.c: Disable NLS.
-
-2000-12-14 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_emit_conditional_move): Do not swap
- comparison operands when that would create non-canonical rtl.
-
- * config/i386/i386.md (umulsi3_highpart): Remove * from name.
- (smulsi3_highpart): Likewise.
-
-2000-12-14 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * gcc.c (cpp_options): Add -remap.
-
-2000-12-14 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * gcc.c (cpp_options): Update to use '&'.
- (struct switchstr): Change type of validated to save space.
- New member 'ordering'.
- (handle_braces, validate_switches): Update to handle '&'.
-
-2000-12-13 Laurynas Biveinis <lauras@softhome.net>
-
- * fixinc/inclhack.def: skip stdio_va_list fix if __DJ_va_list
- found in a header.
- * fixinc/fixincl.x: regenerated.
-
-2000-12-13 DJ Delorie <dj@redhat.com>
-
- * config.gcc (cygwin, win32, mingw32): Use float-i386.h.
-
-2000-12-13 Tom Tromey <tromey@redhat.com>
-
- * gcc.c (handle_braces): Handle %{<S*} spec correctly.
-
-2000-12-13 Alexandre Oliva <aoliva@redhat.com>
-
- * function.c (assign_parms): Optimize incoming PARALLELs into
- REGs if possible.
-
-2000-12-13 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/Makefile.in(*): substantial rewrite to accommodate systems
- that cannot handle bi-directional pipes, viz. BeOS and DOS.
- * fixinc/fixlib.h(IGNORE_ARG): new macro
- (STATIC): define for all of fixinc to use
- * fixinc/fixfixes.c(*): eliminate unused arg warnings
- * fixinc/fixtests.c(*): ditto
- * fixinc/fixincl.c(start_fixer): chain_open now uses const arg list
- * fixinc/gnu-regex.c: reorder some includes to avoid _GNU_SOURCE
- warning. Also, eliminate the ``#ifdef emacs'' stuff.
- (re_syntax_options): make global as it is declared so.
- * fixinc/mkfixinc.sh: process the argument list more consistently
- (beos/msdosdjgpp): set TARGETS to twoprocess vs. oneprocess
- * fixinc/procopen.c(globals): include "fixlib.h" for std defs
- * fixinc/server.c(globals): ditto
- * fixinc/server.h(defines): ditto
-
-2000-12-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * tradcpp.c (special_symbol): Improve test for definedness,
- though it is still not perfect.
- (do_define): Don't define illegal macro names.
-
-2000-12-07 Aldy Hernandez <aldyh@redhat.com>
-
- * config/mips/elf.h (ASM_OUTPUT_SECTION_NAME): emit @nobits
- if changing into .bss section.
- * config/mips/elf64.h: same.
- * config/mips/iris6.h: same.
- * config/mips/netbsd.h: same.
- * config/mips/openbsd.h: same.
-
-2000-12-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (read_name_map): Return null if open () fails.
- (remap_filename): Simplify logic. Add ICE if it doesn't work
- as expected. Perform secondary lookup attempt on base filename
- only.
-
-Wed Dec 13 19:48:04 MET 2000 Jan hubicka <jh@suse.cz>
-
- * flow.c (notice_stack_pointer_modification_1): Notice midifications
- using PRE_MODIFY and POST_MODIFY.
-
-Wed Dec 13 17:25:32 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * genoutput.c (process_template): Add sanity checking for '@' templates.
-
-2000-12-13 Bernd Schmidt <bernds@redhat.co.uk>
-
- * simplify-rtx.c (cselib_finish): Free reg_values and used_regs
- varrays.
-
-2000-12-12 Mike Stump <mrs@wrs.com>
-
- * Makefile.in (distclean): Remove safe-ctype.c as well.
-
-2000-12-12 Brad Lucier <lucier@math.purdue.edu>
-
- * tradcpp.c (do_error): Cast difference of pointers to int
- for error message.
-
-2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * config/rs6000/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Move from here...
- * config/rs6000/sysv4.h (HANDLE_PRAGMA_PACK_PUSH_POP): ...to here.
-
-2000-12-12 Jim Wilson <wilson@redhat.com>
-
- * rtlanal.c (may_trap_p): Check operand modes of LE, LT, GE, and GT.
-
-2000-12-12 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in: Simplify language enabling/disabling code.
- * configure: Rebuilt.
- * ch/config-lang.in (target_libs): Set.
- (build_by_default): Set to no.
- * cp/config-lang.in (target_libs): Set.
- * f/config-lang.in (target_libs): Set.
- * java/config-lang.in (target_libs): Set.
- * objc/config-lang.in (target_libs): Set.
-
-2000-12-12 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * tradcpp.c (enum node_type): Add T_ERROR.
- (do_error): New function.
- (directive_table): Add #error handler.
-
-2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Enable .file/.loc check
- for powerpc*-*-*.
- * configure: Regenerated.
- * config/rs6000/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
- * config/rs6000/rs6000.c (rs6000_unique_section): Use
- STRIP_NAME_ENCODING.
-
-Mon Dec 11 13:51:09 2000 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (cmpib_comparison_operator): Remove GEU and LTU.
- * pa.h (PREDICATE_CODES, cmpib_comparison_operator): Corresponding
- changes.
-
-2000-12-11 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixincl.tpl: initialize all fields for warnings
- * fixinc/fixincl.x: regenerate
-
-2000-12-11 Neil Booth <neilb@earthling.net>
-
- * tradcpp.h: For tradcpp, NUL is not whitespace.
-
-2000-12-11 Neil Booth <neilb@earthling.net>
-
- * fix-header.c (read_scan_file): Macro expansion is not a file buffer.
-
-2000-12-05 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (compare_condition, compare_sign_p): New functions.
- (compare_diff_p, compare_eq_p): Call compare_condition.
- (out_tsthi, out_tstsi): Call compare_sign_p.
- (avr_progmem_p): Check for error_mark_node.
-
-2000-12-11 Neil Booth <neilb@earthling.net>
-
- * cpperror.c (print_location): New function.
- (print_containing_files): Simplify.
- (_cpp_begin_message): Simplify and use print_location.
- * cppfiles.c (stack_include_file): Update.
- (_cpp_pop_file_buffer): Update.
- * cpphash.h (struct cpp_buffer): New members
- include_stack_listed and type.
- * cpplib.c (_cpp_handle_directive): Buffer->inc is not null.
- (run_directive): Take buffer type. cpp_push_buffer cannot fail.
- (_cpp_do__Pragma, cpp_define, _cpp_define_builtin, cpp_undef,
- handle_assertion): Update.
- (cpp_push_buffer): Take a buffer type and file name.
- (cpp_pop_buffer): Update. Clear include_stack_listed.
- * cpplib.h (input_stack_listing_current): Remove.
- (enum cpp_buffer_type): New.
- (cpp_push_buffer): New prototype.
- * cppmacro.c (builtin_macro): Simplify; buffer cannot be null.
- * fix-header.c (read_scan_file): Update.
-
-2000-12-10 Robert Lipe <robertlipe@usa.net>
-
- * install.texi (i*86-*-sco3.2v5*): Remove information duplicated
- in html version.
-
-2000-12-10 Richard Henderson <rth@redhat.com>
-
- * genrecog.c (find_operand): Handle 'V' format code.
- (find_matching_operand): New.
- (validate_pattern): Accept '=' for an in-out operand if there
- is another operand with a matching constraint.
-
- * config/i386/i386.md (andqi_ext_0_cc): Use matching constraint
- for op1 to op0.
-
-2000-12-10 Richard Henderson <rth@redhat.com>
-
- * genrecog.c (validate_pattern) [STRICT_LOW_PART]: Fix thinko.
-
-2000-12-09 Richard Henderson <rth@redhat.com>
-
- * genrecog.c (validate_pattern): Verify that ZERO_EXTRACT and
- STRICT_LOW_PART as SET_DEST have in-out constraints.
-
-2000-12-09 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_function_format): Don't suggest adding format
- attributes to functions with no parameter to which to add them.
-
-2000-12-09 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (arm_expand_prologue): Mark the generated
- insn not the set as being DWARF2_FRAME_RELATED_P.
-
-2000-12-09 Laurynas Biveinis <lauras@softhome.net>
-
- * Makefile.in: use $(build_exeext) for all build
- system executable targets.
-
-2000-12-09 Laurynas Biveinis <lauras@softhome.net>
-
- * install.texi: remove i[345]86-*-winnt3.5 section.
- * configur.bat: removed.
- * config/msdos: directory removed.
-
-2000-12-09 Neil Booth <neilb@earthling.net>
-
- * cppfiles.c (NEVER_REREAD, DO_NOT_REREAD): Move from cpphash.h.
- * cpphash.h (NEVER_REREAD, DO_NOT_REREAD, ABSOLUTE_PATH): Delete.
- * cpplex.c (parse_identifier): Improve diagnostic.
- (_cpp_lex_token): Return unconditionally at the end of a directive.
- * cpplib.c (read_flag): Verify legality of each flag.
- (end_directive): Resotre pfile->skipping before skip_rest_of_line.
- (do_line): Use the new read_flag.
- * cppmacro.c (struct cpp_macro, parse_arg, replace_args,
- check_macro_redefinition, parse_params): Rename var_args to
- variadic.
-
-2000-12-09 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * .cvsignore: Add info files.
-
-2000-12-08 Laurynas Biveinis <lauras@softhome.net>
-
- * config/winnt: Remove obsolete directory.
- * install.texi (Configurations): Remove obsolete documentation for
- Windows NT.
-
-2000-12-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * configure.in: Don't define INSTALL_INFO.
- * configure: Regenerate.
- * Makefile.in (INSTALL_INFO): Remove.
- (info): Depend on info files in source directory.
- (cpp.info, gcc.info, c-tree.info): Build info files in source
- directory.
- (distclean): Don't remove info files.
- (maintainer-clean): Remove info files from source directory.
- (install-normal): Depend on install-info.
- (install-info): Install info files from source directory, if they
- exist.
- * texinfo.tex: Update to version 2000-11-09.08 from ftp.gnu.org.
-
-2000-12-08 Alexandre Oliva <aoliva@redhat.com>
-
- * lcm.c (optimize_mode_switching): Check whether an insn is a NOTE
- before taking its NOTE_LINE_NUMBER.
-
-2000-12-08 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.md (load_indirect_jump): Add pool ranges.
-
- * extend.texi: Document ARM "interrupt" function attribute.
- Mention that the ARM also support the "naked" function
- attribute.
-
- * config/arm/arm-protos.h (arm_current_func_type): Add
- prototype.
-
- * config/arm/arm.h (EXCEPTION_LR_REGNUM): Define.
- (struct machine_function): Add 'func_type' field.
- Define bit values for 'func_type' field.
- (ARM_FUNC_TYPE): New macro.
- (IS_INTERRUPT): New macro.
- (IS_VOLATILE): New macro.
- (IS_NAKED): New macro.
- (IS_NESTED): New macro.
- (ARM_INITIAL_ELIMINATION_OFFSET): Use IS_VOLATILE.
-
- * config/arm/arm.c (isr_attribute_args): New Structure. A
- list of "interrupt" function attribute modifiers.
- (arm_isr_value): New Function: Returns the type of the current
- interrupt function.
- (arm_compute_func_type): New Function: Computes the type of
- the current function.
- (arm_current_func_type): New Function: Returns the type of the
- current function.
- (use_return_insn): Use arm_current_func_type.
- (arm_valid_type_attribute_p): Accept "interrupt" function
- attribute.
- (arm_comp_type_attributes): Check "interrupt" attributes.
- (arm_valid_machine_decl): Accept "interrupt" function
- attribute.
- (arm_function_ok_for_sibcall): Do not allow interrupt
- functions to use sibcalls.
- (arm_naked_function_p): Delete.
- (print_multi_reg): Remove redundant parameter 'hat'.
- (arm_compute_save_reg_mask): New Function: Compute a bit mask
- of registers saved during the current function's prologue.
- (output_arm_return_instruction): Use arm_current_func_type.
- Generate return instruction when LR is not poppsed off the
- stack.
- (arm_volatile_func): Delete.
- (output_arm_prologue): Use arm_current_func_type and
- arm_compute_save_reg_mask.
- Note presernce of interrupt functions.
- (arm_output_epilogue): Use arm_current_func_type and
- arm_compute_save_reg_mask.
- (arm_expand_prologue): Use arm_current_func_type and
- arm_compute_save_reg_mask.
- (arm_init_machine_status): Initialize func_type field, if
- necessary.
- (thumb_expand_prologue): Use arm_current_func_type.
- (output_thumb_prologue): Use arm_current_func_type.
-
-2000-12-08 Brad Lucier <lucier@math.purdue.edu>
-
- * tradcpp.c (do_include): Make pointer differences 64-bit clean.
-
-Fri Dec 8 08:23:29 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * fp-bit.c (_fpmul_parts): Use USItype variables as inputs
- for multiplies.
-
-2000-12-07 Mike Stump <mrs@wrs.com>
-
- * Makefile.in (distclean): Remove alloca.c hashtab.c.
-
-2000-12-07 Zack Weinberg <zack@wolery.stanford.edu>
-
- * Makefile.in (HOST_RTL): Add safe-ctype.o.
- (safe-ctype.o): New rule.
- * system.h: Include safe-ctype.h, not ctype.h. No need to
- wrap ctype macros.
-
- * cpphash.h: Zap IStable and related macros. Define is_* in
- terms of safe-ctype.h macros.
- * cppinit.c: Delete the IStable and all related code.
-
- * tradcpp.c: Delete is_idchar, is_idstart, is_hor_space, and
- is_space arrays. Delete initialize_char_syntax. Change all
- references to the above arrays to use macros instead.
- * tradcpp.h: Define is_idchar, is_idstart, is_space, and
- is_nvspace in terms of safe_ctype.h's macros.
- * tradcif.y: is_idchar, is_idstart are macros not arrays.
-
- * config/i370/i370.c, config/winnt/dirent.c,
- config/winnt/fixinc-nt.c, config/winnt/ld.c:
- Use uppercase ctype macros. If we included ctype.h,
- include safe-ctype.h instead.
-
- * fixinc/fixfixes.c: Use uppercase ctype macros. Don't test
- ISLOWER(c) before calling TOUPPER(c).
- * fixinc/fixincl.c (extract_quoted_files): Simplify out some gunk.
- * fixinc/gnu-regex.c: Include safe-ctype.h, not ctype.h. No need to
- wrap ctype macros. Don't test ISUPPER(x) before calling TOLOWER(x).
-
-2000-12-07 DJ Delorie <dj@redhat.com>
-
- * c-decl.c (grokdeclarator): preserve previous alignments when
- rebuilding array types.
-
-2000-12-07 Neil Booth <neilb@earthling.net>
-
- * cppfiles.c (struct include_file): Move from cpphash.h.
- (_cpp_never_reread): New function.
- (open_file, read_include_file): Use it.
- (stack_include_file): Set the buffer's sysp according to the
- path in which the file was found.
- (find_include_file): Don't set sysp.
- (cpp_make_system_header, actual_directory): Update.
- (_cpp_execute_include): Do #include_next lookup handling here,
- not in cpplib.c. Use _cpp_never_reread.
- * cpphash.h (struct_include_file): Remove.
- (struct cpp_buffer): New member sysp.
- (CPP_IN_SYSTEM_HEADER, _cpp_execute_include): Update.
- (_cpp_never_reread): New.
- * cpplib.c (read_line_number): Rename read_flag. Rework slightly.
- (end_directive): Clear line_extension flag.
- (_cpp_handle_directive): Set line_extension flag for #number.
- (do_include_next): Handle path lookup in _cpp_execute_include.
- (do_line): Cleanup to use read_flag. Don't allow flags in #line.
- (_cpp_do_file_change): Update.
- (do_pragma_once): Use cpp_never_reread. Clean up.
- * cpplib.h (struct lexer_state): New member line_extension.
-
-2000-12-07 Richard Henderson <rth@redhat.com>
-
- * flow.c (calculate_global_regs_live): Force the stack pointer live
- after reload as well.
-
-2000-12-07 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/Makefile.*(exeext): the variables are exeext, the
- substitution expression is build_exeext.
-
-2000-12-07 Neil Booth <neilb@earthling.net>
-
- * c-common.c (parse_in): Make a cpp_reader *.
- * cppfiles.c (_cpp_fake_include): Remove.
- * cpphash.h: Similarly.
- * cpplib.c (do_line): Don't call _cpp_fake_include. A valid
- #line always creates a callback; FC_RENAME if there are no
- #line flags.
- * fix-header.c (read_scan_file): cpp_push_buffer cannot fail.
- The first EOF must be our get_char buffer.
-
-2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (warn_format_security): New variable.
- (check_format_info): Warn about non-literal formats with no format
- arguments if either -Wformat-nonliteral or -Wformat-security is
- specified.
- (set_Wformat): Set warn_format_security for settings other than 1.
- * c-common.h (warn_format_security): Declare.
- * c-decl.c (c_decode_option): Decode -Wformat-security and
- -Wno-format-security.
- * invoke.texi: Document -Wformat-security.
- * toplev.c (documented_lang_options): Include -Wformat-security
- and -Wno-format-security.
-
-2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_info): Warn for non-constant format
- strings with strftime formats if -Wformat-nonliteral. Where the
- format can convert arguments, if the format is not a string
- literal and there are no arguments to the format, give a different
- warning message from the general non-string-literal case.
-
-2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (format_wanted_type): Add reading_from_flag.
- (print_char_table): Mark %s and %S formats with flag "R".
- (check_format_info_main): Set up reading_from_flag appropriately.
- If aflag, always set writing_in_flag rather than relying on the
- format used being a scanf format and so having it set.
- (check_format_types): Check for formats reading through null
- pointers.
-
-2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi (-Wformat): Document what format features are
- checked.
-
-2000-12-06 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.h: Fix formatting.
-
-2000-12-06 Joel Sherrill <joel@OARcorp.com>
-
- * config.gcc (a29k*-*-rtems*, arm*-*-rtems*, c4x-*-rtems*,
- h8300-*-rtems*, hppa1.1-*-rtems, *mips*-*-rtems*): New targets.
- * config.gcc (*-rtems*): Add support for gthr-rtems.h.
- * gthr-rtems.h, config/a29k/rtems.h, config/arm/rtems-elf.h,
- config/h8300/rtems.h, config/mips/rtems.h: New files.
-
-2000-12-06 Mark Kettenis <kettenis@gnu.org>
-
- * config.gcc: Reorganize handling of *-*-gnu*, to share target
- specific make details with Linux. Update comments to clarify
- the distinction between GNU/Linux and GNU/Hurd.
-
-Wed Dec 6 19:22:02 2000 Jeffrey A Law (law@cygnus.com)
-
- * contrib.texi: Fix my email address. Update Per's
- list of contributions.
-
-2000-12-06 Rodney Brown <RodneyBrown@mynd.com>
-
- * c-lex.c (cb_indent): Decorate `str' argument, unused on HP-UX.
- * collect2.c (scan_libraries): Remove unused `ch'.
- (COFF specific stuff): Prototype ldgetname. Declare and prototype
- ldbtread and ldclose.
-
- * config/alpha/osf.h: Standarize copyright statement.
- * config/arc/arc.h: Likewise.
- * config/arm/elf.h config/arm/coff.h config/arm/aout.h: Likewise.
- * config/arm/arm.c config/arm/arm.h: Likewise.
- * config/elxsi/elxsi.h: Likewise.
- * config/i386/sco.h: Likewise.
- * config/m68k/crds.h config/m68k/hp320.h config/m68k/lynx.h: Likewise.
- * config/m68k/m68kv4.h config/m68k/next21.h: Likewise.
- * config/m68k/sun3.h: Likewise.
- * config/m88k/dgux.h config/m88k/dguxbcs.h: Likewise.
- * config/pdp11/2bsd.h config/pdp11/pdp11.h: Likewise.
- * config/romp/romp.h: Likewise.
- * config/rs6000/aix41.h: Likewise.
- * config/sparc/sysv4.h: Likewise.
- * config/we32k/we32k.c config/we32k/we32k.h: Likewise.
- * fixinc/gnu-regex.c fixinc/gnu-regex.h: Likewise.
- * cpplib.h cppexp.c cselib.h profile.c: Likewise.
- * longlong.h: Likewise.
- * libgcc2.c: Likewise.
-
-2000-12-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * machmode.def: Use correct definition for BITSIZE on targets where
- BITS_PER_UNIT != 8.
-
-2000-12-06 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/Makefile.*: Reduce differences to (ultimately) reduce
- the number of them.
-
-2000-12-06 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c: Include expr.h before c-tree.h.
- (remove_useless_addtr_insns): Use reverse_condition_maybe_unordered
- instead of reverse_condition.
- (print_operand): Correct predicates for GT, GE, LT and LE. Add
- predicates for LTGT, UNLE, UNLT, UNGE, UNGT, UNEQ, UNORDERED and
- ORDERED.
- (cmpib_comparison_operator): Add GEU and LTU codes.
- * pa.h (PREDICATE_CODES): Add codes for cmpib_comparison_operator.
- * pa.md (bltgt, bunle, bunlt, bunge, bungt, buneq, bunordered,
- bordered): New float conditional branch patterns.
-
-Wed Dec 6 21:03:41 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * final.c (final_addr_vec_align): Fix clipping to BIGGEST_ALIGNMENT.
-
-2000-12-06 Sylvain Pion <Sylvain.Pion@sophia.inria.fr>
-
- * cpplex.c (skip_escaped_newlines): Don't warn for spaces between
- backslash and newline, when inside a comment.
-
-2000-12-06 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Use @table @samp instead of @itemize @minus for
- table of language standards. Fix use of @pxref. From Zack
- Weinberg. Also exclude specs documentation from generated
- manpage, and create separate ENVIRONMENT section.
-
-2000-12-06 Michael Matz <matzmich@cs.tu-berlin.de>
-
- * gcse.c (compute_pre_data): Kill trapping expressions in
- destination blocks of abnormal edges.
-
-2000-12-05 Richard Sandiford <r.sandiford@redhat.com>
-
- * config/mn10300/mn10300.c (mn10300_print_reg_list): Added.
- (mn10300_get_live_callee_saved_regs): Likewise.
- (mn10300_gen_multiple_store): Likewise.
- (store_multiple_operation): Likewise.
- (expand_prologue): Use mn10300_gen_multiple_store().
- * config/mn10300/mn10300-protos.h (mn10300_print_reg_list): Added.
- (mn10300_get_live_callee_saved_regs): Likewise.
- (mn10300_gen_multiple_store): Likewise.
- (store_multiple_operation): Likewise.
- * config/mn10300/mn10300.md (store_movm): Use a MATCH_PARALLEL
- tied to store_multiple_operation().
-
-Tue Dec 5 20:09:14 2000 Jeffrey A Law (law@cygnus.com)
-
- * builtins.c (expand_builtin_setjmp_setup): Set
- current_function_has_nonlocal_label.
-
-2000-12-05 Neil Booth <neilb@earthling.net>
-
- * cppfiles.c (stack_include_file): Push zero-length buffers
- in case of failure. Return void, as we don't fail any more.
- (read_include_file): Check for files we shouldn't re-read.
- Don't return an error code; errors are implied by marking the
- file NEVER_REREAD.
- (_cpp_execute_include): Move the recursion and in-macro checks
- here. Update for stack_include_file not failing.
- * cpplib.c (cpp_push_buffer): Always succeed, since
- _cpp_execute_include performs the recursion check. Tidy up.
- * cpplib.h (cpp_push_buffer): Update prototype.
-
-2000-12-05 Alexandre Oliva <aoliva@redhat.com>
-
- * sched-vis.c (visual_tbl_line_length): New variable.
- (get_visual_tbl_length): Set it.
- (visualize_stall_cycles): Don't let stalls overrun
- visual_tbl_line_length.
-
-2000-12-05 Geoffrey Keating <geoffk@redhat.com>
-
- * global.c (global_conflicts): Allow for a REG_UNUSED note
- with a different mode to the REG set in the insn.
-
-2000-12-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (fixinc.sh): Pass $WARN_CFLAGS into fixinc dir.
-
- * fixinc/Makefile.in (FIXINC_DEFS): Add $(WARN_CFLAGS).
-
-2000-12-05 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/mkfixinc.sh(*-gnu*): activate fixinc for GNU/Hurd and
- GNU/Linux.
-
-2000-12-05 Richard Earnshaw <rearnsha@arm.com>
-
- * fixinc/mkfixinc.sh: Run fixinc on netbsd.
- * fixinc/inclhack.def (machine/ansi.h): Run this rule on all files,
- to cope with aliased copies.
- * fixinc/fixincl.x: Regenerate.
-
-2000-12-05 Bernd Schmidt <bernds@redhat.co.uk>
-
- * sched-vis.c: Guard with #ifdef INSN_SCHEDULING.
- * sched-rgn.c: Likewise.
- (rgn_print_insn): Fix output.
-
-2000-12-05 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/Makefile.*: make these more consistent
- * fixinc/mkfixincl.sh: enable BeOS fixincludes
-
-2000-12-05 Richard Henderson <rth@redhat.com>
-
- * stmt.c (warn_if_unused_value): Move side effects test earlier.
-
-2000-12-05 Alan Modra <alan@linuxcare.com.au>
-
- * bb-reorder.c (reorder_basic_blocks): Do check for EH edges even
- when using sjlj.
-
-2000-12-05 Richard Henderson <rth@redhat.com>
-
- * flow.c (calculate_global_regs_live): Only force stack pointer
- live before reload. Force pic register live before reload.
- (insn_dead_p): Don't protect pic references from deletion.
-
-2000-12-05 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Add support for using texi2pod.pl. Don't use
- @multitable.
-
-2000-12-04 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (arm_override_options): Test 'insn_flags' not
- 'tune_flags' for XScale nature.
- Remove spurious test of HARD_FLOAT and XScale flags.
-
- * config/arm/arm.md (umulsidi3adddi): Restore "=&r" register
- contraint, accidentally changed during XScale contribution.
-
- * config/arm/lib1funcs.asm (interwork_call_via_, call_via_): Do
- not create these functions if the target architecture does not
- support Thumb instructions.
-
-2000-12-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * ONEWS: New file with the current contents of NEWS up to EGCS
- 1.1.
- * NEWS: Generate automatically from online release notes from EGCS
- 1.0 to GCC 2.95.2, using ../contrib/gennews.
-
-2000-12-04 Neil Booth <neilb@earthling.net>
-
- * tradcif.y: Move lexptr to top of file. Add rule to handle
- assertions in conditional expressions.
- * tradcpp.c (parse_answer): Assertions do not need to go to
- end of line in conditional directives.
- (parse_assertion): Get first character of identifiers correct.
- (test_assertion): New function.
- * tradcpp.h (test_assertion): New prototype.
-
-2000-12-01 Rodney Brown <RodneyBrown@mynd.com>
-
- * config.gcc: Fix typo for UnixWare 7.
-
-2000-12-03 Phil Edwards <pme@sources.redhat.com>
-
- * invoke.texi: Replace `pedwarns' with clearer text.
-
-2000-12-04 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/Makefile.*(clean): don't clean autogenerated files.
- (mainainer-clean): clean autogenerated files
-
-2000-12-04 DJ Delorie <dj@redhat.com>
-
- * md.texi: Add overview, clarify match_dup and define_expand.
-
-2000-12-04 DJ Delorie <dj@redhat.com>
-
- * print-tree.c (print_node): Target-specific builtins print
- numbers, not names.
-
-2000-12-04 Jason Merrill <jason@redhat.com>
-
- * stor-layout.c (int_mode_for_mode): Handle MODE_VECTOR_INT,
- MODE_VECTOR_FLOAT.
-
- * diagnostic.c (report_problematic_module): s/function/module/.
-
- * c-lex.h: Remove decl for check_newline.
-
-2000-12-04 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README.APOLLO: Remove obsolete file.
-
-2000-12-04 Neil Booth <neilb@earthling.net>
-
- * cppinternals.texi: New file.
-
-2000-12-04 Neil Booth <neilb@earthling.net>
-
- * cppfiles.c (cpp_make_system_header): Take 2 booleans,
- and operate on current buffer.
- (cpp_read_file): Rename _cpp_read_file.
- * cpplib.c (do_line, do_pragma_system_header): Update calls to
- cpp_make_system_header.
- * fix-header.c: Similarly.
- * cpphash.h (_cpp_read_file): Move from...
- * cpplib.h: ... here.
- * cppinit.c (do_includes, cpp_start_read): Update appropriately.
-
-2000-12-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strspn, expand_builtin_strcspn):
- Handle another transformation.
-
-2000-12-03 Nick Clifton <nickc@redhat.com>
-
- * config.gcc: Add support for StrongARM targets.
- * config/arm/t-strongarm-elf: New file.
- * config/arm/t-strongarm-coff: New file.
- * config/arm/t-strongarm-pe: New file.
- * config/arm/strongarm-pe.h: New file.
-
-2000-12-03 Nick Clifton <nickc@redhat.com>
-
- * NEWS: Mention XScale has been added.
- * config.gcc: Add support for XScale targets.
- * config/arm/arm.h: Add support for XScale processor.
- * config/arm/arm.c: Add support for XScale processor.
- * config/arm/arm.md: Add support for XScale processor.
- * config/arm/t-xscale-elf: New file.
- * config/arm/t-xscale-coff: New file.
- * config/arm/xscale-elf.h: New file.
- * config/arm/xscale-coff.h: New file.
-
-2000-12-03 Richard Henderson <rth@redhat.com>
-
- * bb-reorder.c (reorder_basic_blocks): Don't check for EH edges
- unless exception handling is enabled, and if not using sjlj.
-
- * builtins.c (expand_builtin_setjmp_setup): New.
- (expand_builtin_setjmp_receiver): New.
- (expand_builtin_setjmp): Split out _setup and _receiver functions.
- Move argument parsing in from ...
- (expand_builtin): ... here.
- * except.c (receive_exception_label): Branch around receiver
- unless new-style exceptions. Call expand_builtin_setjmp_receiver.
- (start_dynamic_handler): Call expand_builtin_setjmp_setup.
- * expr.h: Update builtin setjmp decls.
-
-2000-12-03 Bruce Korb <bkorb@gcc.org>
-
- * fixinc/mkfixinc.sh(build machine): Sometimes, there is no canonical
- build machine name. Default to the target.
-
-2000-12-03 Laurynas Biveinis <lauras@softhome.net>
-
- * Makefile.in: use $(build_canonical), not $(canonical_build).
-
-2000-12-03 Bernd Schmidt <bernds@redhat.co.uk>
-
- * Makefile.in (OBJS): Add sched-rgn.o.
- (sched-rgn.o): New rule. * haifa-sched.c (sched_verbose): No
- longer static.
- (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT,
- INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE,
- UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST,
- MAX_BLOCKAGE_COST): Move to sched-int.h.
- (MAX_RGN_BLOCKS, MAX_RGN_INSNS, INSN_REF_COUNT, FED_BY_SPEC_LOAD,
- IS_LOAD_INSN, struct haifa_edge, edge_table, NEXT_IN, NEXT_OUT,
- FROM_BLOCK, TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES,
- OUT_EDGES, edgelst, struct region, nr_regions, rgn_table,
- rgn_bb_table, block_to_bb, containing_rgn, RGN_NR_BLOCKS,
- RGN_BLOCKS, BLOCK_TO_BB, BB_TO_BLOCK, CONTAINING_RGN,
- debug_regions, find_single_block_region, find_rgns, too_large,
- init_regions, current_nr_blocks, current_blocks, bitset, bitlst,
- bitlst_table_last, bitlst_table_size, bitlst_table, bitset_member,
- extract_bitlst, bblst, struct candidate, candidate_table,
- bblst_table, bblst_size, bblst_last, IS_VALID, IS_SPECULATIVE,
- SRC_PROB, target_bb, split_edges, compute_trg_info,
- debug_candidate, debug_candidates, bbset, bbset_size, dom,
- IS_RGN_ENTRY, IS_DOMINATED, prob, GET_SRC_PROB, edgeset,
- rgn_nr_edges, rgn_edges, edgeset_size, edgeset_bitsize,
- EDGE_TO_BIT, edge_to_bit, pot_split, ancestor_edges,
- compute_dom_prob_ps, ABS_VALUE, INSN_PROBABILITY,
- IS_SPECULATIVE_INSN, INSN_BB, MIN_DIFF_PRIORITY, MIN_PROBABILITY,
- MIN_PROB_DIFF, check_live_1, update_live_1, check_live,
- update_live, set_spec_fed, is_pfree, find_conditional_protection,
- is_conditionally_protected, may_trap_exp, haifa_classify_insn,
- is_prisky, is_exception_free, add_branch_dependences,
- propagate_deps, compute_block_backward_dependences,
- debug_dependencies, is_cfg_nonregular, build_control_flow,
- new_edge, bb_deps, BITSET_UNION, BITSET_INTER, BITSET_DIFFER,
- BITSET_INVERT, BITSET_ADD, BITSET_REMOVE, debug_regions,
- UPDATE_LOOP_RELATIONS, INSN_TRAP_CLASS, WORST_CLASS, IS_REACHABLE,
- CONST_BASED_ADDRESS_P, free_pending_lists, sched_target_n_insns,
- target_n_insns, sched_n_insns, init_ready_list, deaths_in_region,
- can_schedule_ready_p, new_ready, schedule_more_p, rgn_print_insn,
- rgn_rank, region_sched_info): Move to sched-rgn.c.
- (debug_reg_vector): Delete useless function.
- (get_bb_head_tail): Likewise.
- (insn_issue_delay, insn_cost, ready_add, get_block_head_tail,
- no_real_insns_p, rm_line_notes, save_line_notes,
- restore_line_notes, rm_redundant_line_notes, sched_init): No
- longer static.
- (rm_line_notes, save_line_notes, restore_line_notes,
- schedule_block, set_priorities): Change argument to be a real
- basic block, not one of haifa's "bb"s. All callers changed
- (rm_other_notes): Initialize note_list here, not in
- schedule_region.
- (sched_finish): New function, called from schedule_insn. * *
- sched-int.h (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT,
- INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE,
- UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST,
- MAX_BLOCKAGE_COST): Moved here from haifa-sched.c.
- (get_block_head_tail, no_real_insns_p, rm_line_notes,
- save_line_notes, restore_line_notes, rm_redundant_line_notes,
- rm_other_notes, insn_issue_delay, set_priorities, schedule_block,
- sched_init, sched_finish, ready_add, insn_cost): Declare.
-
-2000-12-03 Laurynas Biveinis <lauras@softhome.net>
- Bruce Korb <bkorb@gnu.org>
-
- * Makefile.in: pass $(build_canonical) to mkfixinc.sh.
- * fixinc/mkfixinc.sh: accept build system name as an argument.
- Use it for choosing the fix build method. Use the target for
- selecting special fix rules.
-
-2000-12-03 Bernd Schmidt <bernds@redhat.co.uk>
-
- * Makefile.in (OBJS): Add sched-deps.o.
- (sched-deps.o): New rule.
- * haifa-sched.c (struct deps, struct haifa_insn_data): Moved to
- sched-int.h.
- (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved to
- sched-int.h.
- (SIZE_FOR_MODE): Delete unused macro.
- (reg_known_equiv_p, reg_known_value, reg_pending_clobbers,
- reg_pending_sets, reg_pending_sets_all, true_dependency_cache,
- anti_dependency_cache, output_dependency_cache,
- forward_dependency_cache): Variables moved to sched-deps.c.
- (add_dependence, remove_dependence, find_insn_list,
- find_insn_mem_list, add_insn_mem_dependence, flush_pending_lists,
- sched_analyze_insn, sched_analyze_1, sched_analyze_2,
- sched_analyze, group_leader, compute_forward_dependences,
- init_deps, free_deps, init_dependency_caches, free_dependency_caches):
- Functions moved to sched-deps.c.
- (schedule_region): Call init_deps_global and finish_deps_global
- instead of directly manipulating dependency data structures.
- * sched-deps.c: New file.
- (init_deps_global, finish_deps_global): New functions.
- * sched-int.h (struct haifa_insn_data, struct deps): Moved here from
- haifa-sched.c.
- (h_i_d): Declare.
- (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved here
- from haifa-sched.c.
-
- * Makefile.in (OBJS): Add sched-vis.o.
- (sched-vis.o): New rule.
- * haifa-sched.c (get_unit_last_insn): New function.
- (sched_dump, insn_unit, actual_hazard_this_instance): No longer
- static.
- (schedule_block): Call visualize_alloc and visualize_free. Delete
- spurious return statement.
- (init_target_units, insn_print_units, get_visual_tbl_length,
- init_block_visualization, print_block_visualization, safe_concat,
- visualize_scheduled_inns, visualize_no_unit, visualize_stall_cycles,
- print_exp, print_value, print_pattern, print_insn, target_units,
- MAX_VISUAL_LINES, INSN_LEN, n_visual_lines, visual_tbl,
- n_vis_no_unit, vis_no_unit): Move scheduling visualization
- functions/variables...
- * sched-vis.c: ...here. New file.
- (visualize_alloc, visualize_free): New functions.
- (visualize_scheduled_insns, visualize_stall_cycles,
- print_block_visualization): Lose basic block argument. All callers
- changed.
- (visualize_scheduled_insns): Use new function get_unit_last_insn.
- * sched-int.h (current_sched_info, sched_dump): Declare.
- (init_target_units, insn_print_units, init_block_visualization,
- print_block_visualization, visualize_scheduled_inns,
- visualize_no_unit, visualize_stall_cycles, visualize_alloc,
- visualize_free): Declare functions.
-
- * sched-int.h: New file.
- * Makefile.in (haifa-sched.o): Depend on it.
- * haifa-sched.c: Include it.
- (no_real_insns_p): New function.
- (current_sched_info): New static variable.
- (__inline, HAIFA_INLINE): Moved to sched-int.h.
- (get_block_head_tail): Minor cleanup.
- (init_ready_list, can_schedule_ready_p, new_ready, schedule_more_p,
- rgn_print_insn, rgn_rank): New functions, broken out of
- rank_for_schedule, schedule_insn and schedule_block, where they
- are now called through function pointers in current_sched_info.
- (queue_insn, schedule_insn, queue_to_ready, debug_ready_list,
- print_insn): To display uid and block number, call the print_insn
- function pointer in current_schedule_info.
- (region_sched_info): New static variable.
- (sched_target_n_insns, sched_n_insns, target_n_insns): New global
- variables, moved out of schedule_block.
- (schedule_block): Return void. All callers changed.
- Move some of the setup code into schedule_region. Get head/tail
- from current_sched_info, and update it when done.
- (schedule_region): Slightly rearranged, some code moved here from
- schedule_block. Call no_real_insns_p to avoid doing work for a
- block that consists only of notes and labels.
- (schedule_insns): Initialize current_sched_info.
-
-2000-12-03 Neil Booth <neilb@earthling.net>
-
- * cppmacro.c (funlike_invocation_p): Re-disable macros enabled
- by contexts drops AFTER argument pre-expansion, so that they
- remain enabled during argument pre-expansion.
- (_cpp_pop_context): Unconditionally re-enable a macro when
- dropping a context level.
-
-2000-12-03 Manfred Hollstein <manfredh@redhat.com>
-
- * arm/t-linux (MULTILIB_OPTIONS): Comment.
- (MULTILIB_DIRNAMES): Likewise.
- (EXTRA_MULTILIB_PARTS): Likewise.
- (LIBGCC): Likewise.
- (INSTALL_LIBGCC): Likewise.
-
-2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strcat, expand_builtin_strncat,
- expand_builtin_strspn, expand_builtin_strcspn): New functions.
- (expand_builtin): Handle BUILT_IN_STRCAT, BUILT_IN_STRNCAT,
- BUILT_IN_STRSPN and BUILT_IN_STRCSPN.
-
- * builtins.def (BUILT_IN_STRCAT, BUILT_IN_STRNCAT,
- BUILT_IN_STRSPN, BUILT_IN_STRCSPN): New entries.
-
- * c-common.c (c_common_nodes_and_builtins): Declare builtin
- strcat, strncat, strspn and strcspn.
- (string_ftype_string_cstring): Renamed from `string_ftype_ptr_ptr'.
-
- * extend.texi (strcat, strcspn, strncat, strspn): Document new
- builtins.
-
-2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strcmp): Use const*_rtx when
- expanding strcmp at compile-time. Add another transformation.
- (expand_builtin_strncmp): Add more transformations. Call
- expand_builtin_memcmp, not expand_builtin_strcmp, under
- appropriate conditions if HAVE_cmpstrsi.
-
-2000-12-02 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (anddi3_internal[23]): Prefer rldic? over andis
- instruction.
- (cr logic): Really make operands sequential.
-
-2000-12-02 Geoffrey Keating <geoffk@redhat.com>
-
- * c-common.c (combine_strings): When the ISO C standard specifies
- the maximum length of a string, it doesn't include the trailing
- zero byte.
-
- * cpplib.c (do_ifdef): Add check_eol() call.
- (do_ifndef): Likewise.
-
-2000-12-02 Daniel Berlin <dberlin@redhat.com>
- Bruce Korb <bkorb@gnu.org>
-
- * fixinc/*: global substitute /__MSDOS__/SEPARATE_FIX_PROC/
- * fixinc/mkfixinc.sh: prepare to use Makefile.BEOS for *-*-beos*
- * fixinc/Makefile.DOS: define SEPARATE_FIX_PROC for build
- * fixinc/fixfix.c(wrap_fix): avoid wrapping files that
- use the "__need_" hackery. It breaks them.
- * fixinc/fixincl.c(process - SEPARATE_FIX_PROC):
- Sometimes on DOS and BeOS the temp output file cannot be opened.
- Skip the file noisily. Ought to be fixed instead.
-
-2000-12-02 Bruce Korb <bkorb@gnu.org>
-
- From: 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fixfixes.c (emit_gnu_type, format_write): Prototype.
- (format_write, char_macro_use_fix, char_macro_def_fix): Use gcc's
- custom uppercase ctype macros.
- * fixincl.c (do_version): Make static and add ATTRIBUTE_NORETURN.
- Use gcc's custom uppercase ctype macros.
- (main): Prototype.
- (machine_matches): Add static prototype and constify variable.
- (create_file, test_test, egrep_test): Add static prototype.
- (quoted_file_exists): Likewise, and constify parameters.
- (extract_quoted_files, internal_fix, start_fixer, fix_applies,
- write_replacement, test_for_changes): Add static prototype.
- (write_replacement, test_for_changes): Delete excess argument to
- `create_file'.
- * fixtests.c (test): Make static.
- * server.c (load_data, sig_handler, server_setup, find_shell): Add
- static prototype.
- (sig_handler): Mark parameter with ATTRIBUTE_UNUSED.
-
-2000-12-02 Bruce Korb <bkorb@gnu.org>
-
- * fixnc/mkfixinc.sh(msdosdjgpp): remove from fixincludes exception list
- (per Laurynas Biveinis <lauras@softhome.net>)
-
-2000-12-02 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.h (ARM_REGNO_OK_FOR_BASE_P, THUMB_REGNO_MODE_OK_FOR_BASE_P): New
- macros.
- (REGNO_MODE_OK_FOR_BASE_P): Define in terms of above.
- (REGNO_OK_FOR_FOR_BASE_P): Delete.
- (ARM_REG_OK_FOR_BASE_P, THUMB_REG_MODE_OK_FOR_BASE_P): New macros for
- both strict and non-strict uses.
- (REG_MODE_OK_FOR_BASE_P): Define in terms of above.
- (ARM_REG_OK_FOR_INDEX_P, THUMB_REG_OK_FOR_INDEX_P): New macros.
- (REG_OK_FOR_INDEX_P): Define in terms of above.
- (REG_OK_FOR_BASE_P): Delete.
- (REG_OK_FOR_PRE_POST_P): Delete.
- (ARM_BASE_REGISTER_RTX_P): Renamed from BASE_REGISTER_RTX_P.
- (ARM_INDEX_REGISTER_RTX_P): Renamed from INDEX_REGISTER_RTX_P.
- (ARM_GO_IF_LEGITIMATE_INDEX): Renamed from GO_IF_LEGITIMATE_INDEX.
- (THUMB_LEGITIMATE_OFFSET): Renamed from LEGITIMATE_OFFSET.
- (ARM_GO_IF_LEGITIMATE_ADDRESS): Adjust for name changes. Use ARM
- specific variants rather than general ones. Use ARM_REG_OK_FOR_BASE_P
- in pre/post increment cases.
- (THUMB_GO_IF_LEGITIMATE_ADDRESS): Similarly for Thumb.
- (ARM_LEGITIMIZE_ADDRESS): Similarly.
- (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Similarly.
- * arm.c (legitimate_pic_address): Similarly.
-
-2000-12-02 Neil Booth <neilb@earthling.net>
-
- * tradcpp.c (struct answer, parse_assertion, parse_answer,
- canonicalize_text, find_answer): New.
- (do_assert, do_unassert): Provide appropriate function bodies.
- (union hashval): New member answers.
-
-2000-11-23 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.md: Document UNSPEC usage.
- (*tablejump_rjmp, *tablejump_lib, *tablejump_enh, *tablejump):
- Make operand 0 input only, clobber it. Use UNSPEC, not a bogus
- MEM for program memory word reference. Do not add the label to
- the table index in each of the asm output templates, instead ...
- (casesi): ... do it in RTL. Adjust to match the above change.
-
-2000-12-02 Bernd Schmidt <bernds@redhat.co.uk>
-
- * c-common.c (PTRDIFF_TYPE): Provide default here, ...
- * c-decl.c: ... not here.
-
- * haifa-sched.c (sched_dump): Renamed from dump. All users changed.
- (old_max_uid): New variable.
- (compute_forward_dependences): Renamed from
- compute_block_forward_dependences; changed to accept block head and
- tail instead of block number. Caller changed.
- (free_deps, init_dependency_caches, free_dependency_caches,
- init_regions, sched_init): New functions, split out from
- schedule_insns and compute_block_backward_dependences.
-
-2000-12-02 Neil Booth <neilb@earthling.net>
-
- * cppexp.c (parse_number): Update diagnostic test.
-
-2000-12-02 Bernd Schmidt <bernds@redhat.co.uk>
-
- * reload1.c (free_for_value_p): New function, frontend to
- reload_reg_free_for_value_p. All callers of the latter now call
- this function with an additional mode argument.
-
-2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * install.texi (Configurations): Remove obsolete documentation for
- hppa*-*-*.
-
-2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * install.texi (Installation): Remove obsolete description for
- libstdc++ which is now an integral part of GCC.
-
-2000-12-01 Jim Blandy <jimb@redhat.com>
-
- * dbxout.c (dbxout_parms): Correctly describe parameters passed by
- invisible reference in registers, but then spilled to the stack.
- Remove code to emit a second stab for such parameters; it attempts
- to describe the value's location by introducing a synthetic C++
- `reference' type, and then saying the stack slot has that
- reference type. This loses type information (breaking GDB's
- `ptype' command, among other things) just to describe a location
- which stabs can represent correctly in other ways.
-
-2000-12-01 Alexandre Oliva <aoliva@redhat.com>
-
- * final.c (output_addr_const) <PLUS>: Don't assume at least one
- operand is a CONST_INT.
-
- * config/sh/sh.c (reg_class_from_letter): Assign `k' to SIBCALL_REGS.
- (machine_dependent_reorg): Split all insns.
- * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Compute
- reg_class_contents[SIBCALL_REGS].
- (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add SIBCALL_REGS.
- * config/sh/sh.md (calli_pcrel, call_pcrel, call_valuei_pcrel,
- call_value_pcrel, call, call_value, sibcall): Match even when
- not optimizing.
- (sibcalli_pcrel, sibcall_pcrel): Likewise. Use constraint `k'
- for call address.
- (sibcalli): Likewise.
-
-2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (warn_format, warn_format_y2k,
- warn_format_extra_args, warn_format_nonliteral): Define.
- (check_format_info): Check warn_format_nonliteral and
- warn_format_extra_args.
- (check_format_info_main): Check warn_format_y2k.
- (set_Wformat): New function.
- * c-common.h (warn_format_y2k, warn_format_extra_args,
- warn_format_nonliteral, set_Wformat): Declare.
- * c-decl.c (warn_format): Remove definition.
- (c_decode_option): Handle -Wformat-nonliteral,
- -Wno-format-extra-args and -Wno-format-y2k, and negated versions.
- Use set_Wformat.
- * invoke.texi: Document these new options and -Wformat=2.
- * toplev.c (documented_lang_options): Add these new options.
-
-2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * builtins.def (BUILT_IN_IMAXABS): Add.
- * builtins.c (expand_builtin): Also abort on BUILT_IN_IMAXABS.
- * c-common.c (c_common_nodes_and_builtins): Create builtin
- functions __builtin_imaxabs, and plain imaxabs unless
- flag_no_nonansi_builtin outside C99 mode.
- (expand_tree_builtin): Handle BUILT_IN_IMAXABS.
- * extend.texi: Document builtin imaxabs.
-
-2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c: Include "defaults.h".
- (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Define.
- (c_common_nodes_and_builtins): Create string_type_node,
- const_string_type_node, wint_type_node, intmax_type_node,
- uintmax_type_node, default_function_type, ptrdiff_type_node and
- unsigned_ptrdiff_type_node.
- * c-common.h (identifier_global_value): Declare.
- * c-decl.c (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Don't define.
- (init_decl_processing): Don't create string_type_node,
- const_string_type_node, wint_type_node, intmax_type_node,
- uintmax_type_node, default_function_type, ptrdiff_type_node and
- unsigned_ptrdiff_type_node.
- (identifier_global_value): New function.
-
-2000-12-01 Neil Booth <neilb@earthling.net>
-
- * cppinit.c (initialize): Forgotten prototype.
- * cpplex.c (_cpp_lex_token): Loop until not skipping.
- Always clear PREV_WHITE upon meeting a new line.
- * cpplib.c (end_directive): Set pfile->skipping after
- skip_rest_of_line.
- * cpplib.h (cpp_reader): Remove macro_pos.
- * cppmacro.c (cpp_get_line): Don't do anything special inside
- macros.
- (parse_arg): Add PREV_WHITE if a token appears after new lines.
- (funlike_invocation_p): Save and restore the output position
- over a successful check for a '('.
- (enter_macro_context): Delete uses of macro_pos.
- (cpp_get_token): Don't use pfile->skipping.
-
-2000-12-01 Phil Edwards <pme@sources.redhat.com>
-
- * diagnostic.c: Fix typos in comments.
- * diagnostic.h: Likewise.
-
-2000-11-30 Phil Edwards <pme@sources.redhat.com>
-
- * rtl.texi (Machine Modes): Document BImode and OImode.
-
-2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.c (default_compilers): Add suffixes .mi, .cp, .ii, .FOR and
- .FPP.
-
-2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (grokdeclarator): If pedantic, warn about arrays with
- incomplete element type.
- (grokparms): Before checking for incomplete parameter type, check
- the type isn't error_mark_node.
-
-2000-12-01 Jakub Jelinek <jakub@redhat.com>
-
- * builtins.c (target_char_cast): New function.
- (expand_builtin_strchr): Use it.
- (expand_builtin_strrchr): Use it.
- (builtin_memset_read_str): New function.
- (expand_builtin_memset): Use target_char_cast.
- Try to optimize memset with second argument nonzero using
- store_by_pieces.
-
-2000-11-30 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * install.texi (avr): Replace incomplete list of supported MCU
- types with a link to the current one ...
- * invoke.texi (AVR Options): ... here. Update -mmcu= to list
- all supported MCU types. Document -minit-stack= default.
- Document new options -mno-tablejump, -mtiny-stack.
- * md.texi (AVR family): Fix typo in 'w' constraint letter
- description. Document 'q'. Update 'O'.
-
-2000-12-01 Bernd Schmidt <bernds@redhat.co.uk>
-
- * combine.c (cant_combine_insn_p): Only disallow insns involving
- hard regs if they are reg-reg moves.
- (try_combine, can_combine_p, combinable_i3pat): Delete old
- SMALL_REGISTER_CLASSES tests.
-
-2000-12-01 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (shiftcosts): Don't get INTVAL before testing
- whether X is a CONST_INT.
- (addsubcosts): Likewise.
-
- * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Use INTVAL instead of
- mis-used XINT.
- (ARG_POINTER_REGNUM): Set to AP_REG.
-
-2000-11-30 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (fpu_switch0, fpu_switch1, movpsi, fpu_switch,
- splits): Only match on TARGET_SH4.
-
- * combine.c (try_combine): Disregard USEs when updating LOG_LINKS
- of subsequent insns.
-
-2000-11-30 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Disable.
- * config/alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise.
-
-2000-11-30 Richard Henderson <rth@redhat.com>
-
- * config/alpha/elf.h (ASM_OUTPUT_SECTION_NAME): Copy elfos.h defn.
- (DO_SELECT_SECTION): New.
- (SELECT_SECTION): Use it.
- (UNIQUE_SECTION_P): New.
- (UNIQUE_SECTION): New.
-
-2000-11-30 Alexandre Oliva <aoliva@redhat.com>
-
- * c-common.c (status_warning) [! ANSI_PROTOTYPES]: Load status
- from va_list before using it.
-
-2000-11-30 Michael Matz <matzmich@cs.tu-berlin.de>
-
- * flow.c (make_edge): Early out, if no flags to set.
- (calculate_global_regs_live): Clear out garbage only when necessary.
-
- * simplify-rtx.c (varray_type used_regs): New.
- (clear_table): Use it to only clear necessary items.
- (cselib_lookup, cselib_record_set): Remember newly set items.
- (cselib_update_varray_sizes, cselib_init): Initialize and grow
- used_regs.
-
- * local-alloc.c (update_equiv_regs): New local `cleared_regs'.
- Move clearing of dead regs out of insn-loop.
-
-2000-11-30 Richard Henderson <rth@redhat.com>
-
- * calls.c (expand_call): Emit queued insns before creating
- the tail recursion sequence.
-
-2000-11-30 J. David Anglin <dave.anglin@nrc.ca>
- Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def(): prevent dual double definition protection
- * fixinc/fixincl.x: regenerate
-
-2000-11-29 Loren J. Rittle <ljrittle@acm.org>
-
- * fixinc/Makefile.in (fixincl.x): Explicitly state the
- location of the generated file.
-
-2000-11-30 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README.FRESCO: Remove obsolete file.
-
-2000-11-30 Mark Kettenis <kettenis@gnu.org>
-
- * config/t-gnu (LIBGCC1, CROSS_LIBGCC1, CRTSTUFF_T_CFLAGS,
- TARGET_LIBGCC2_CFLAGS): Remove. We now use the settings from
- config/t-linux for the Hurd.
-
-2000-11-30 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/mn10200/udivmod.c, config/mn10200/divmod.c,
- config/mn10200/udivmodsi4.c: Moved from here.
- * config/udivmod.c, config/divmod.c, config/udivmodsi4.c: To here.
- * config/mn10200/t-mn10200 (LIB2FUNCS_EXTRA): Use the generic
- C division functions.
- * config/m68hc11/t-m68hc11-gas (LIB2FUNCS_EXTRA): Likewise.
-
-Thu Nov 30 01:12:52 2000 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (conditional moves): Avoid holes in operand list.
- (mod, umod patterns): Similarly.
- (variable extract/shift patterns): Similarly.
-
-2000-11-30 Neil Booth <neilb@earthling.net>
-
- * objc/objc-act.c (lang_init, finish_file, maybe_objc_comptypes,
- maybe_objc_check_decl, build_objc_string_object,
- objc_declare_alias, objc_declare_class, build_message_expr,
- build_protocol_expr, build_selector_expr, build_encode_expr,
- get_class_ivars, start_class, start_protocol): Remove
- redundant code, assuming doing_objc_thang is true.
-
-2000-11-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (restore_unscaled_index_insn_codes): Delete procedure.
- (record_unscaled_index_insn_codes): Likewise.
- (unscaled_index_insn_codes): Delete.
- (max_unscaled_index_insn_codes_uid): Delete.
- (output_function_prologue, output_function_epilogue, pa_reorg):
- Don't use the unscaled index insn hack.
-
- * pa.md: Remove hack from all index insns to reverse the operand
- order of frame and stack pointer references incorrectly created
- in the reload pass.
-
- * function.h (emit_status): Delete member regno_pointer_flag and
- rename regno_pointer_flag_length to regno_pointer_align_length.
- Delete define for REGNO_POINTER_FLAG.
- * integrate.h (inline_remap): Delete member regno_pointer_flag.
- Add member x_regno_reg_rtx.
- * rtl.h (rtx_def): Use frame_related bit to indicate register is
- a pointer in REG expressions. Define REG_POINTER macro.
- * alias.c (find_base_value, find_base_term): Use REG_POINTER
- instead of REGNO_POINTER_FLAG.
- * combine.c (nonzero_bits, num_sign_bit_copies): Likewise.
- * emit-rtl.c (gen_reg_rtx): Use regno_pointer_align_length instead
- of regno_pointer_flag_length. Remove code which refers to
- regno_pointer_flag.
- (mark_reg_pointer): Use REG_POINTER.
- (free_emit_status): Remove code which refers to regno_pointer_flag.
- (init_emit, mark_emit_status): Likewise.
- * flow.c (dump_flow_info): Likewise.
- * function.c (preserve_temp_slots): Likewise.
- * integrate.c (expand_inline_function, copy_rtx_and_substitute):
- Use x_regno_reg_rtx instead of regno_pointer_flag for function
- pointer determination in map.
- * loop.c (strength_reduce, maybe_eliminate_biv_1): Use REG_POINTER.
- * predict.c (estimate_probability): Likewise.
- * regclass.c (record_address_regs, reg_scan_mark_refs): Likewise.
- * unroll.c (unroll_loop): Use x_regno_reg_rtx instead of
- regno_pointer_flag for function pointer determination in map.
- * convex.h (RTX_COSTS): Don't test regno_pointer_flag and use
- REG_POINTER.
- * pa.c (hppa_legitimize_address, emit_move_sequence, basereg_operand):
- Use REG_POINTER.
- (restore_unscaled_index_insn_codes): Revise comment.
-
- * expr.c (do_compare_and_jump): Add missing TYPE_MODE in statement.
-
-2000-11-30 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi: Update documentation for attributes.
-
-2000-11-29 David O'Brien <obrien@FreeBSD.org>
-
- * config/alpha/elf.h (IDENT_ASM_OP): Protect the #define.
- (ASM_DECLARE_OBJECT_NAME): Same.
- (ASM_FILE_END): Same.
- (ASM_FINISH_DECLARE_OBJECT): Same.
- (ASM_IDENTIFY_GCC): Same.
- (ASM_IDENTIFY_LANGUAGE): Same.
- (ASM_OUTPUT_CONSTRUCTOR): Same.
- (ASM_OUTPUT_DEF): Same.
- (ASM_OUTPUT_DESTRUCTOR): Same.
- (ASM_OUTPUT_EXTERNAL_LIBCALL): Same.
- (ASM_OUTPUT_SECTION_NAME): Same.
- (ASM_WEAKEN_LABEL): Same.
- (BSS_SECTION_ASM_OP): Same.
- (COMMON_ASM_OP): Same.
- (CONST_SECTION_ASM_OP): Same.
- (CONST_SECTION_FUNCTION): Same.
- (CTORS_SECTION_ASM_OP): Same.
- (DTORS_SECTION_ASM_OP): Same.
- (ESCAPES): Same.
- (FINI_SECTION_ASM_OP): Same.
- (IDENT_ASM_OP): Same.
- (IDENT_ASM_OP): Same.
- (INIT_SECTION_ASM_OP): Same.
- (INT_ASM_OP): Same.
- (MAX_OFILE_ALIGNMENT): Same.
- (SBSS_SECTION_ASM_OP): Same.
- (SDATA_SECTION_ASM_OP): Same.
- (SECTION_FUNCTION_TEMPLATE): Same.
- (SELECT_SECTION): Same.
- (SE_CONST_SECTION): Same.
- (SIZE_ASM_OP): Same.
- (SKIP_ASM_OP): Same.
- (STRING_ASM_OP): Same.
- (STRING_LIMIT): Same.
- (TYPE_ASM_OP): Same.
- (TYPE_OPERAND_FMT): Same.
-
-2000-11-29 Neil Booth <neilb@earthling.net>
-
- * c-decl.c (c_decode_option): Don't handle -lang-objc.
- * objc/lang-options.h: Remove -lang-objc.
- * objc/lang-specs.h: Don't pass -lang-objc to cc1obj.
- * objc/objc-act.c (lang_init_options): Set c_language.
-
-2000-11-29 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (can_store_by_pieces): Reinitialize max_size for reverse
- tests.
-
-2000-11-29 Neil Booth <neilb@earthling.net>
-
- * c-pragma.c (init_pragma): Update for parse_in type change.
-
-2000-11-29 Laurynas Biveinis <lauras@softhome.net>
-
- * configure.in: recognize DOS-style absolute paths.
-
-2000-11-29 Jakub Jelinek <jakub@redhat.com>
-
- * expr.h (store_by_pieces): Add prototype.
- (can_store_by_pieces): Likewise.
- * expr.c (struct store_by_pieces): Renamed from clear_by_pieces.
- (can_store_by_pieces): New.
- (store_by_pieces): New.
- (clear_by_pieces): New.
- (clear_by_pieces_1): New.
- (store_by_pieces_1): Renamed from clear_by_pieces, handle storing
- arbitrary compiler generated constants into memory block.
- (store_by_pieces_2): Renamed from clear_by_pieces_1, likewise.
- * builtins.c (c_readstr): New.
- (builtin_memcpy_read_str): New.
- (expand_builtin_memcpy): If src is string constant and
- emit_block_move would move it by pieces, compute integer constants
- from the string and store it into memory block instead.
- (builtin_strncpy_read_str): New.
- (expand_builtin_strncpy): If N is not constant zero and c_strlen does
- not return INTEGER_CST, don't optimize.
- If N is larger than strlen(src) + 1, try to copy the string
- including padding with store_by_pieces.
- (expand_builtin_strcmp): If both arguments have side effects, don't
- optimize.
- (expand_builtin_fputs): If STR has side effects, don't optimize.
-
-2000-11-29 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (sibcall, sibcall_value, sibcall_insn, sibcall_value_insn):
- Add use of link register.
-
-2000-11-29 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi: Update documentation for default format attributes.
-
-Tue Nov 28 21:56:45 2000 Jeffrey A Law (law@cygnus.com)
-
- * pa/pa-64.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not
- a list, to keep track of the sections.
-
-2000-11-28 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.md (pic_load_addr): Split into
- pic_load_addr_arm and pic_load_addr_thumb.
-
- * config/arm/arm.c (legitimize_pic_address): Generate either
- ARM or Thumb versions of pic_load_addr.
- (arm_finalize_pic): Generate either ARM or Thumb versions of
- pic_load_addr.
-
-2000-11-28 Richard Henderson <rth@redhat.com>
-
- * calls.c (expand_call): Defer const/pure NO_DEFER_POP until
- after sibcall do_pending_stack_adjust.
-
-Wed Nov 29 00:08:23 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * jump.c (delete_insn): Check that REG_LABEL note actually contains
- a CODE_LABEL.
-
-2000-11-28 Neil Booth <neilb@earthling.net>
-
- * c-common.h: Remove flag_digraphs.
- * c-decl.c: Remove flag_digraphs.
- (c_decode_option): Don't set it.
- * c-lex.c (init_c_lex): Don't do anything for digraphs.
-
-2000-11-28 Richard Henderson <rth@redhat.com>
-
- * c-parse.in (finish_parse): Update for parse_in type change.
- (_yylex): Likewise.
-
-2000-11-28 Neil Booth <neilb@earthling.net>
-
- * cppmacro.c (cpp_scan_buffer_nooutput): Take a boolean
- indicating whether to scan all buffers on the stack or
- just one.
- * cppinit.c (do_includes): Update.
- * cppmain.c (main): Update.
- * cpplib.h: Update prototype.
-
-2000-11-28 Richard Henderson <rth@redhat.com>
-
- * genoutput.c (validate_insn_operands): New.
- (gen_insn): Call it.
-
- * config/alpha/alpha.md (divmodsi_internal): Renumber operands.
- (divmoddi_internal): Likewise.
- * config/arm/arm.md (andsi3_compare0_scratch): Likewise.
- * config/i960/i960.md (branch patterns): Likewise.
- * config/ia64/ia64.md (tbit_and_0): Likewise.
- (tbit_and_1, tbit_or_0, tbit_or_1): Likewise.
- * config/m68k/m68k.md (zero_extract memory patterns): Likewise.
- * config/mips/mips.md (divmodsi4_internal): Likewise.
- (divmoddi4_internal): Likewise.
- * config/rs6000/rs6000.md (call patterns): Likewise.
- * config/sh/sh.md (movsi_y): Likewise.
- * config/sparc/sparc.md: Comment out if 0 v8p shift pattern.
-
-2000-11-28 Richard Henderson <rth@redhat.com>
-
- * config.gcc: Kill residual pyramid support.
-
-2000-11-28 Neil Booth <neilb@earthling.net>
-
- * c-lex.h (parse_in): Change parse_in to a cpp_reader *.
- * c-decl.c (c_decode_option): Update to match.
- * c-lex.c (init_c_lex, yyparse): Update to match.
- * c-lang.c (lang_init_options): Use cpp_create_reader.
- * cppinit.c (cpp_init): Rename initialize.
- (cpp_reader_init): Rename cpp_create_reader. Create the
- reader. Initialize cpplib if appropriate.
- * cpplib.h (cpp_create_reader) New prototype.
- (cpp_init, cpp_reader_init): Delete prototypes.
- * cppmain.c (general_init, setup_callbacks): New functions.
- (main): Use them.
- * fix-header.c (scan_in): Change type to cpp_reader *.
- (read_scan_file): Update for new cpplib interface and scan_in type.
-
- * cp/decl.c (parse_in): Change to cpp_reader *.
- (lang_decode_option): Update.
- * cp/lex.c (lang_init_options): Use new cpplib interface.
- (init_cp_pragma, finish_parse, handle_pragma_implementation): Update.
- * cp/spew.c (read_token): Update.
- * objc/objc-act.c (lang_init_options): Update new cpplib interface.
-
-2000-11-28 Jakub Jelinek <jakub@redhat.com>
-
- * loop.c (load_mems): Avoid using next_label to find end_label. If
- jumping outside of the loop (other than loop end), don't hoist MEMs
- out of loop.
-
-2000-11-28 Jan Hubicka <jh@suse.cz>
-
- * calls.c (expand_call): Don't disable tail recursion based
- on the loop nest.
-
-2000-11-28 Neil Booth <neilb@earthling.net>
-
- * tradcpp.c (enum node_type): New hash types T_ASSERT, T_UNASSERT.
- (struct directive): Drop 4th argument from handlers.
- (do_define, do_line, do_include, do_undef, do_else, do_elif,
- do_endif): Similarly.
- (do_assert, do_unassert, do_ifdef, do_ifndef): New handlers.
- (do_ifxdef): Update as common handler of do_ifdef and do_ifndef.
- (make_definition, make_undef): Take a const char*.
- (make_assertion): New function.
- (struct directive_table): Update.
- (main): Handle -A command line argument.
- (handle_directive): Drop fourth handler argument.
-
-2000-11-28 Bernd Schmidt <bernds@redhat.co.uk>
-
- * simplify-rtx.c (cselib_record_sets): Ignore sets whose destination
- is anything but REG or MEM, but look inside STRICT_LOW_PART.
-
-Tue Nov 28 09:53:50 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * system.h (IS_DIR_SEPARATOR): Use uppercase macro name.
- (IS_ABSOLUTE_PATHNAME): New macro.
- * gcc.c (find_a_file, process_command, do_spec_1, main): Use it.
-
-2000-11-28 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (truncxfsf2_2): Fix predicate.
-
-2000-11-27 Jim Wilson <wilson@redhat.com>
-
- * reload1.c (reload): Use HOST_WIDE_INT for old_frame_size.
-
-2000-11-27 Matthias Klose <doko@cs.tu-berlin.de>
-
- * extend.texi (Nested Functions): Update URL of Usenix paper.
-
-2000-11-27 Mark Mitchell <mark@codesourcery.com>
-
- * function.c (free_after_compilation): Clear x_clobber_return_insn.
-
-2000-11-27 Neil Booth <neilb@earthling.net>
-
- * cppinit.c (cpp_reader_init): Remove handling of warn_paste
- command line options.
- (cpp_handle_option): Similarly.
- * cpplib.h (struct cpp_options): Remove warn_paste.
- * cppmacro.c (paste_tokens): Apart from assembler, make
- unpasteable token warning mandatory.
-
-2000-11-27 Neil Booth <neilb@earthling.net>
-
- * tradcpp.c (enum pending_dir_t, struct pending_dir): New.
- (main): Allocate a pending directive set of these. Use it.
- Merge handling of -D and -U. Update handling of pending
- directives. Free the memory after use.
-
-2000-11-27 Bernd Schmidt <bernds@redhat.co.uk>
-
- * flow.c (entry_exit_blocks): Add entry for cond_local_set.
- (struct propagate_block_info): Add new member cond_local_set.
- (propagate_block): Accept new arg cond_local_set. All callers
- changed.
- (init_propagate_block_info): Likewise.
- (calculate_global_regs_live): Allocate & free cond_local_set. Always
- rescan if there's overlap between cond_local_set and new_live_at_end.
- (mark_set_1): Set bits either in cond_local_set or local_set, as
- appropriate.
- * basic-block.h (struct basic_block_def): New field cond_local_set.
- (propagate_block, init_propagate_block_info): Update prototypes.
-
-Mon Nov 27 17:29:44 2000 kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * gcc/config/sh/sh.md (udivsi3_i4, udivsi3_i4_single): Clobber
- T register.
-
-2000-11-27 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (select_dominance_cc_mode): Handle new way that combine
- canonicalizes conditional compares.
- (arm_select_cc_mode): Likewise.
- * arm.md: Garbage collect some dead code.
- (cmp_and, cmp_ior): New patterns.
- (splitter for conditional move with inverted false): Use cond_exec
- and handle unordered comparisons.
-
-Mon Nov 27 17:22:56 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_force_to_memory, ix86_free_from_memory): New.
- * i386-protos.h (ix86_force_to_memory, ix86_free_from_memory): Declare
- * i386.md (float?i?f, int/fp operations): Rewrite spliters to use
- ix86_force_to_memory and ix86_free_from_memory.
-
-2000-11-27 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (arm_adddi3, adddi_sesidi_di, adddi_zesidi_di, arm_addsi3,
- arm_subsi3_insn, anddi_zesidi_di, arm_andsi3_insn, anddi_notdi_di,
- anddi_notzesidi_di, anddi_notsesidi_di, arm_iorsi3,
- one_cmpldi2): Merge with splitters to create define_insn_and_split
- patterns. Remove redundant splits.
- (peephole2 for add:SI of invalid immediate): New.
- (peephole2 for minus:SI of invalid immediate): New.
- (peephole2 for ior:SI of invalid immediate): New.
- (peephole for merge of move and compare): Convert ot peephole2.
- (addsf3, adddf3): Mark as commutative.
-
- * arm.md (thumb peephole for merging stack adjustments): Convert to
- peephole2.
-
-2000-11-27 Bernd Schmidt <bernds@redhat.co.uk>
-
- * haifa-sched.c (print_pattern): Prettier output for COND_EXEC.
-
- * reload1.c (reload_cse_simplify_set): Pass down mode to cselib_lookup.
- (reload_cse_simplify_operands): Do nothing about operands where both
- the operand and the match_operand fail to give us a mode.
- * simplify-rtx.c (wrap_constant): New function.
- (entry_and_rtx_equal_p): Except integer constants to come wrapped in a
- CONST describing the proper mode.
- (rtx_equal_for_cselib_p): Pass down modes to recursive calls of
- cselib_lookup.
- (cselib_lookup_mem): Call wrap_constant on the rtx that is passed to
- htab_find_slot_with_hash.
- (cselib_lookup): Likewise.
-
- Based on a patch from Geoff Keating <geoffk@redhat.com>:
- * loop.c (basic_induction_var): If a REG is set from something
- that is not a biv, then the REG is not a biv. Even if it is
- earlier set from something that is a biv.
-
-2000-11-27 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in (extra_objs): Enclose extra_headers in quotes.
- * configure: Rebuilt.
-
-2000-11-27 Neil Booth <neilb@earthling.net>
-
- * c-lex.c (cb_enter_file, cb_leave_file, cb_rename_file):
- Combine into the new function cb_change_file.
- (init_c_lex): Update.
- * cppfiles.c (stack_include_file): Use _cpp_do_file_change.
- (cpp_syshdr_flags): Delete.
- * cpphash.h (_cpp_do_file_change): New prototype.
- Move struct cpp_buffer here from...
- * cpplib.h (struct cpp_buffer): ... here.
- (enum cpp_fc_reason, struct cpp_file_loc,
- struct_cpp_file_change, change_file): New.
- (enter_file, leave_file, rename_file, cpp_syshdr_flags): Delete.
- * cpplib.c (do_line): Update for new cb_change_file callback.
- (_cpp_do_file_change): New function.
- (_cpp_pop_buffer): Update to use it.
- * cppmain.c (move_printer): Delete.
- (main): Set up single callback cb_change_file.
- (cb_enter_file, cb_leave_file, cb_rename_file): Delete.
- (cb_change_file): New.
- * fix-header.c (cur_file, cb_change_file): New.
- (recognized_function, read_scan_file): Update.
- * scan-decls.c (scan_decls): Update.
- * scan.h (recognized_function): Update prototype.
-
-2000-11-26 Mark Mitchell <mark@codesourcery.com>
-
- * tree.h (mark_tree_hashtable): New function.
- * tree.c (mark_tree_hashtable_entry): New function.
- (mark_tree_hashtable): Likewise.
-
-2000-11-27 Michael Meissner <meissner@redhat.com>
-
- * d30v-protos.h (srelational_si_operator): Correctly spell
- function.
- (urelational_si_operator): Ditto.
- (relational_si_operator): Ditto.
- (d30v_expand_prologue): Add prototype.
- (d30v_expand_epilogue): Ditto.
-
- * d30v.h (OPTIMIZATION_OPTIONS): Undo November 22nd change.
-
- * d30v.md (movcccc_*): Delete now unused patterns.
- (64 bit comparison splitters): Rewrite to use COND_EXEC instead of
- IF_THEN_ELSE.
- (define_cond_exec): Use 'b' to select branch flags.
-
-2000-11-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strncmp, expand_builtin_strncpy): New
- functions.
- (expand_builtin): Handle BUILT_IN_STRNCPY and BUILT_IN_STRNCMP.
-
- * builtins.def (BUILT_IN_STRNCPY, BUILT_IN_STRNCMP): New entries.
-
- * c-common.c (c_common_nodes_and_builtins): Declare builtin
- strncpy and strncmp.
-
- * extend.texi (strncmp, strncpy): Document new builtins.
-
-2000-11-26 Mark Mitchell <mark@codesourcery.com>
-
- * config/elfos.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not
- a list, to keep track of the sections.
- * tm.texi (ASM_OUTPUT_SECTION_NAME): Document the fact that the
- parameter provided will always be a canonical string.
-
-2000-11-26 Neil Booth <neilb@earthling.net>
-
- * cppmacro.c (cpp_scan_buffer_nooutput): Only scan the
- current buffer.
-
-2000-11-26 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * makefile.vms: Remove EGCS references.
-
-2000-11-26 Ulrich Drepper <drepper@redhat.com>
-
- * dwarf2out.c (output_file_names): New function. Compute minimal
- combination of directory and file name table and emit them.
- (output_line_info): Remove code to emit directory and file name
- table and call output_file_names instead.
- (file_info_cmp): Helper function to sort directory names.
-
-2000-11-26 Neil Booth <neilb@earthling.net>
-
- * cpplib.h (struct cpp_reader): Remove lang_asm.
- (struct cpp_options): Remove c89. New members lang,
- extended_numbers.
- * cppexp.c (parse_number): Use them.
- * cpphash.h (VALID_SIGN): Use them.
- * cppinit.c (set_lang, cpp_start_read): Update.
- * cpplex.c (parse_string, _cpp_lex_token): Update.
- * cpplib.c (_cpp_handle_directive): Update.
- * cppmacro.c (parse_args): Update.
- * cppmain.c (scan_buffer): Update.
-
-Sun Nov 26 10:02:37 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * fold-const.c (fold, case CONVERT_EXPR): Always return tree of
- proper type.
-
-2000-11-26 Neil Booth <neilb@earthling.net>
-
- * Makefile.in: Remove MAYBE_CPPLIB and maybe_cpplib.
- * c-decl.c: Remove parse_in declaration.
- * c-lang.c: Similarly.
- * c-lex.c: Similarly.
- * c-parse.in: Similarly.
- * c-pragma.c: Similarly.
- * configure.in: Similarly.
- * cp/Make-lang.in: Similarly.
- * cp/spew.c: Similarly.
- * cp/decl2.c: Remove check for lang-c++ option.
- * cp/lang-specs.h: Remove -lang-c++ from cc1plus command line.
- * cp/lex.c (lang_init_options): With cpp_reader_init, default to C++.
- * c-lex.h: Add declaration of parse_in.
- * cppinit.c: Call set_lang after allocating pfile->pending.
- * configure: Regenerate.
-
-2000-11-25 Zack Weinberg <zack@wolery.stanford.edu>
-
- * combine.c (try_combine): Remove redundant test.
-
-2000-11-25 Richard Henderson <rth@redhat.com>
-
- * c-common.h (DECL_C_HARD_REGISTER): New.
- * c-decl.c (finish_decl): Set it for asm register variables.
- * c-semantics.c (emit_local_var): Test it when instantiating one.
-
-2000-11-25 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (c_expand_body): Use DECL_SOURCE_LINE rather than
- lineno for the start of the function.
-
-2000-11-25 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (file_table, file_table_allocated): Remove.
- (file_table_allocated): Remove.
- (struct file_table): New.
- (decl_file_table, line_file_table): New.
- (print_dwarf_line_table): Use them.
- (size_of_line_prolog): Likewise.
- (output_line_info): Likewise.
- (add_src_coords_attributes): Likewise.
- (gen_subprogram_die): Likewise.
- (gen_variable_die): Likewise.
- (dwarf2out_add_library_unit_info): Likewise.
- (dwarf2out_line): Likewise.
- (lookup_filename): Take a struct file_table argument.
- (init_file_table): New.
- (dwarf2out_init): Use it.
-
-2000-11-25 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Update sequence points references.
-
-2000-11-25 Neil Booth <neilb@earthling.net>
-
- * c-common.c: Remove USE_CPPLIB conditional inclusions.
- * c-common.h: Similarly.
- * c-decl.c: Similarly.
- * c-lang.c: Similarly.
- * c-lex.c: Similarly.
- * c-parse.in: Similarly.
- * c-pragma.c: Similarly.
- * c-pragma.h: Similarly.
- * gcc.c: Similarly.
- * toplev.c: Similarly.
- * cp/cp-tree.h: Similarly.
- * cp/decl2.c: Similarly.
- * cp/lang-specs.h: Similarly.
- * cp/lex.c: Similarly.
- * cp/lex.h: Similarly.
- * cp/spew.c: Similarly.
- * java/lang-options.h: Similarly.
- * objc/lang-specs.h: Similarly.
- * objc/objc-act.c: Similarly.
-
- * configure.in: Remove configure option.
- * config.in: Regenerate.
- * configure: Regenerate.
-
-2000-11-25 Richard Henderson <rth@redhat.com>
-
- * haifa-sched.c (sched_analyze_1, sched_analyze_2, sched_analyze):
- Revert 2000-11-22 change.
-
-2000-11-25 Bernd Schmidt <bernds@redhat.co.uk>
-
- * config/i386/i386.h (FIXED_REGS): Make the three flags registers
- fixed.
-
-2000-11-25 Philipp Thomas <pthomas@suse.de>
- * configure.in (ALL_LINGUAS): Remove en_GB and add sv.
- * configure: Rebuilt.
-
-2000-11-25 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.md (muldi3_v8plus): Remove H constraint.
- Handle CONST_INT as second argument.
- * config/sparc/sparc.c (set_extends): Remove first argument.
- Properly handle AND, CONST_INT and CONST_DOUBLE, handle IOR, XOR and
- MOV.
- (sparc_check_64): Abort if first argument is not REG.
- If it is DImode REG, look at the lower register of the register
- pair.
-
- * config/sparc/sparc.c (load_pic_register, restore_regs,
- output_return, sparc_v8plus_shift, sparc_function_profiler,
- sparc_function_block_profiler, sparc_block_profiler): Fix output
- formatting.
-
-2000-11-25 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (TARGET_NONE): New.
- (TARGET_SWITCHES): For all variant-selecting switch, use
- TARGET_NONE to reset all other variant-selecting switch. Added
- empty strings to avoid warnings.
- (TARGET_DEFAULT): Set to SH1_BIT.
-
- * Makefile.in ($(INTL_TARGETS)): Added $(CONFIG_H) for
- insn-codes.h.
-
- * gcc/config/sh/sh.md (sibcalli, sibcalli_pcrel): New insns.
- (sibcall_pcrel): New insn_and_split.
- (sibcall, sibcall_value, sibcall_epilogue): New expands.
-
- * config/sh/sh.md (GOTaddr2picreg, symGOT2reg, symGOTOFF2reg,
- symPLT_label2reg, call, call_value): Don't set
- current_function_uses_pic_offset_table.
- * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Don't mark
- PIC_OFFSET_TABLE_REGNUM as call_used, so that calc_live_regs
- takes it into account.
- (FINALIZE_PIC): Delete, useless.
- (LEGITIMATE_CONSTANT_P): Delete, unused.
- * config/sh/sh.c (sh_expand_prologue): Don't use
- current_function_uses_pic_offset_table. Don't special-case
- PIC_OFFSET_TABLE_REGNUM. Initialize it if it's ever live and
- PIC is enabled.
- (sh_expand_epilogue, initial_elimination_offset): Don't
- special case PIC_OFFSET_TABLE_REGNUM.
-
-2000-11-25 Alexandre Oliva <aoliva@redhat.com>, NIIBE Yutaka <gniibe@m17n.org>
-
- * config/sh/sh-protos.h (symbol_ref_operand): Declare.
- * config/sh/sh.md (UNSPEC_CALLER): New constant.
- (calli_pcrel, call_valuei_pcrel): Use PIC_REG.
- (call_pcrel, call_value_pcrel): New insn_and_splits.
- (call, call_value): Use them.
- (call_site): New expand.
- (sym_label2reg, symPLT_label2reg): Adjust to hold call_sites.
- * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA) [UNSPEC_CALLER]:
- Output call_site label.
- (PREDICATE_CODES): Added symbol_ref_operand.
- * config/sh/sh.c (symbol_ref_operand): Define.
- * emit-rtl.c (try_split): Propagate CALL_INSN_FUNCTION_USAGE
- to CALL_INSNs in the split sequence.
-
-2000-11-24 Nick Clifton <nickc@redhat.com>
-
- * config.gcc (v850-*-*): Define c_target_objs and
- cxx_target_objs.
-
- * config/v850/t-v850: Define how to build v850-c.o
-
- * config/v850/v850.h (struct data_area_stack_element): Move
- definition here from v850.c.
-
- * config/v850v850.c: Include gcc.h to avoid compile time
- warning.
- (push_data_area): Move to v850-c.c.
- (pop_data_area): Move to v850-c.c.
- (mark_current_function_as_interrupt): Move to v850-c.c.
- (GHS_default_section_names): Allow to be exported.
- (GHS_current_section_names): Allow to be exported.
- (data_area_stack_elements): Allow to be exported.
- (ghs_pragma_section): Move to v850-c.c.
- (ghs_pragma_interrupt): Move to v850-c.c.
- (ghs_pragma_starttda): Move to v850-c.c.
- (ghs_pragma_startsda): Move to v850-c.c.
- (ghs_pragma_startzda): Move to v850-c.c.
- (ghs_pragma_endtda): Move to v850-c.c.
- (ghs_pragma_endsda): Move to v850-c.c.
- (ghs_pragma_endzda): Move to v850-c.c.
-
- * config/v850/v850-c.c: New file: Contains v850 specific
- pragma parsing functions.
-
-2000-11-24 Nick Clifton <nickc@redhat.com>
-
- * config.gcc (extra_objs): Remove duplicate description.
- (c_target_objs): New variable. Contains target specific
- object files for the gcc C compiler only.
- (cxx_target_objs): New variable. Contains target specific
- object files for the gxx C++ compiler only.
-
- * configure.in (c_target_objs): Substitute in the makefile.
- (cxx_target_objs): Substitute in the makefile.
- * configure: Regenerate.
-
- * Makefile.in (C_TARGET_OBJS): Define and initialize from
- c_target_objs.
- (CXX_TARGET_OBJS): Define and initialize from
- cxx_target_objs.
- (C_AND_OBJC_OBJS): Include C_TARGET_OBJS.
-
- * cp/Make-lang.in (CXX_C_OBJS): Include CXX_TARGET_OBJS).
-
- * tm.texi (REGISTER_TARGET_PRAGMAS): Add paragraph explaining
- about how the use of the 'c_lex' function requires the use of
- the target specific, language specific object files feature of
- the configuration mechanism.
-
-Fri Nov 24 18:50:58 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * gcc.c (process_command): Use F_OK, not R_OK.
-
-2000-11-24 Arno J. Klaassen <arno@heho.snv.jussieu.fr>
-
- * flow.c (print_rtl_and_abort): Remove ANSIism.
-
-Fri Nov 24 19:54:36 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (GENERAL_REGISTER_P,
- GENERAL_OR_AP_REGISTER_P, FP_REGISTER_P, XD_REGISTER_P,
- FP_OR_XD_REGISTER_P, FP_ANY_REGISTER_P): New macros. Use them
- all over.
- (SPECIAL_REG): Renamed to SPECIAL_REGISTER_P.
- * config/sh/sh.c: Use new macros.
- * config/sh/sh.md: Likewise.
-
-Fri Nov 24 19:46:16 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md: Clobber MACH_REG and MACL_REG in SImode,
- instead of just MACH_REG in DImode. Always refer to FPSCR_REG
- in PSImode.
-
-Fri Nov 24 22:37:41 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.c (out_tsthi,out_tstsi): Test simplification bug
- fixed.
- (machine_dependent_reorg): Wrong optimization based on
- NOTICE_UPDATE_CC removed.
-
-Fri Nov 24 19:48:09 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * jump.c (delete_computation): Re-instate deletion of feeding insn.
- (delete_insn): Look for REG_LABEL notes.
- (redirect_tablejump): Delete feeding insns.
-
-2000-11-24 Bernd Schmidt <bernds@redhat.co.uk>
-
- * config/i386/i386.md (call_pop_0, call_pop_1, call_value_pop_0,
- call_value_pop_1): Make sure operand numbers are contiguous.
-
- * fold-const.c (fold_range_test): Avoid crash if LHS or RHS is null.
-
- * reload1.c (conflicts_with_override): New function.
- (emit_input_reload_insns): Use it to tighten test for validity
- of substituting into output of previous insn.
-
- * haifa-sched.c (struct ready_list): New.
- (ready_lastpos, ready_add, ready_remove_first, ready_sort): New static
- functions.
- (schedule_insn): Replace args READY and N_READY with a pointer to a
- ready_list; return void. Use the new functions to access the ready
- list. All callers changed.
- (queue_to_ready, debug_ready_list): Likewise.
- (schedule_block): Initialize a ready_list structure. Use new
- functions to access it.
- (max_priority): Remove unused variable.
- (schedule_insn): Don't set it.
-
- * c-common.c (verify_tree): Don't recurse into CONSTRUCTORs.
-
- * combine.c (cant_combine_insn_p): New function.
- (try_combine): Use it.
-
- * Makefile.in (c-common.o): Depend on $(OBSTACK_H).
- * c-common.c (c-obstack.c): Include "obstack.h".
- (struct reverse_tree): Delete.
- (reverse_list, reverse_max_depth): Delete.
- (build_reverse_tree, common_ancestor, modify_ok): Delete functions.
- (struct tlist, struct tlist_cache): New.
- (tlist_obstack, tlist_firstobj, warned_ids, save_expr_cache): New.
- (add_tlist, merge_tlist, verify_tree, warning_candidate_p,
- warn_for_collisions, warn_for_collisions_1, new_tlist): New
- static functions.
- (verify_sequence_points): Rewritten.
- * fold-const.c (fold): Don't lose possibly important sequence
- points when removing one arm of TRUTH_ORIF_EXPRs or TRUTH_ANDIF_EXPRs.
-
-2000-11-24 Richard Sandiford <rsandifo@redhat.com>
-
- * gcc/cse.c (cse_insn): Removed conversion of REG_EQUIV to REG_EQUAL
- when reversing a register-to-register copy. Reversal now disabled
- when the previous instruction has a REG_EQUIV.
-
-2000-11-24 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-parse.in (unary_expr): Move VA_ARG from here ...
- (primary): ... to here.
-
-2000-11-23 Graham Stott <grahams@redhat.com>
-
- * expr.c (store_constructor): If a field is non addressable and
- the target is a MEM use MEM_ALIAS_SET otherwise use get_alias_set.
-
-2000-11-23 Bernd Schmidt <bernds@redhat.co.uk>
-
- * flow.c (print_rtl_and_abort): New function.
- (verify_wide_reg, verify_local_live_at_start): Try to dump more
- information before aborting.
-
-2000-11-23 Alexandre Oliva <aoliva@redhat.com>
-
- * emit-rtl.c (gen_lowpart_common): Use word 0 if register mode
- is narrower than requested mode.
- (gen_highpart): Abort if register mode is narrower than
- requested mode.
-
-2000-11-23 Graham Stott <grahams@redhat.com>
-
- * cse.c (cse_insn): Initialize all regcost variables.
- Fix a typo add missing '='.
- Only compare costs if there is a replacement insn.
-
-Thu Nov 23 04:33:33 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * final.c (output_addr_const) [LABEL_REF]: Simplify.
- [MINUS]: Enclose non-CONST_INTs in parentheses.
- [default]: Try OUTPUT_ADDR_CONST_EXTRA.
- * tm.texi (OUTPUT_ADDR_CONST_EXTRA): Document it.
- * varasm.c (decode_rtx_const) [CONST]: If it's not something
- PLUS or MINUS a CONST_INT, use the whole CONST with offset 0
- instead of abort()ing.
- * sh.c (output_pic_addr_const): Removed. Fixed all callers.
- * sh.h (OUTPUT_ADDR_CONST_EXTRA): New. Handle the UNSPECs
- formerly handled in output_pic_addr_const.
- * sh.md (sym_label2reg, symPLT_label2reg): Enclose UNSPEC
- operands of MINUS in CONSTs so that decode_rtx_const() will
- accept them.
-
-Thu Nov 23 04:10:30 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (mova_const): New pattern.
- (GOTaddr2picreg): Use it.
- * config/sh/sh.c (broken_move): Match it.
- (mova_p): Don't match it.
- (machine_dependent_reorg): Adjust it.
-
-Thu Nov 23 02:09:09 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (FIRST_GENERAL_REG, LAST_GENERAL_REG): New.
- Moved most register-number #defines...
- * config/sh/sh.md (define_constants): ... here. Use macros to
- refer to registers and unspecs.
- * config/sh/sh.c: Likewise.
-
-Thu Nov 23 01:01:32 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * Makefile.in (HOST_CFLAGS): Add -DGENERATOR_FILE.
- (rtl.o, print-rtl.o, bitmap.o, obstack.o): Build with -DGENERATOR_FILE.
- (alloca.o, vfprintf.o, ggc-none.o, errors.o): Likewise.
- (splay-tree.o, hash.o): Likewise.
- GCONFIG_H: New.
- (rtl.o, print-rtl.o): Depend on $(GCONFIG_H) instead of $(CONFIG_H).
- (bitmap.o, obstack.o, vfprintf.o, ggc-none.o, errors.o): Likewise.
- (hashtab.o): Likewise.
- (gcov.o): Depend on $(CONFIG_H).
- * configure.in: #include insn-codes.h in tm.h.
-
-2000-11-22 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (arm_encode_call_attribute): Make 'newstr' a
- const char * to avoid a compile time warning.
-
- * config/arm/arm.md (define_constants): Define symbolic names for
- the link register, last integer register and the fake CC register.
- Update patterns to use these symbolic names.
-
-2000-11-22 Neil Booth <neilb@earthling.net>
-
- * cpplex.c (trigraph_ok): Ensure we don't warn twice.
- * cpplib.h (struct cpp_buffer): New member last_Wtrigraphs.
-
-2000-11-22 Richard Henderson <rth@redhat.com>
-
- * haifa-sched.c (sched_analyze_1): Don't special-case calls
- for clobbering registers.
- (sched_analyze_2): Likewise.
- (sched_analyze): Zap reg_last_uses and reg_last_sets after calls.
-
-2000-11-22 Chris Demetriou <cgd@sibyte.com>
- Neil Booth <neilb@earthling.net>
-
- * gcc.c (validate_switches): Validate multiple switches named
- in '|' (or) expressions in specs.
- (handle_braces): If more than 1 alternative in a '|' spec
- matches, call do_spec1 just once.
-
-2000-11-22 Michael Meissner <meissner@redhat.com>
-
- * d30v.h (TARGET_SWITCHES): Add documentation strings.
- (TARGET_OPTIONS): Ditto.
- (OPTIMIZATION_OPTIONS): Temporarily turn off -frename-registers if
- -O3.
-
-Wed Nov 22 06:40:56 2000 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (hppa_encode_label): Account for addition of encoding
- character when allocating persistent space for the new label
- name.
-
-2000-11-22 Zack Weinberg <zack@wolery.stanford.edu>
-
- * Makefile.in, config.gcc, configure.in: Expunge remaining
- traces of facility for running MD files through C preprocessor.
-
-2000-11-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcov.texi: Add magic comments for texi2pod.pl.
- * Makefile.in: Add rules to generate and install gcov.1.
- * gcov.1: New (generated) file.
-
-2000-11-21 Richard Henderson <rth@redhat.com>
-
- * regrename.c (scan_rtx_reg): Terminate the chain rather than
- abort on mark_read with NO_REGS.
-
-2000-11-21 Mike Stump <mrs@wrs.com>
-
- * fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow
- compilation with older compilers, such as /bin/cc on SunOS.
- * fixinc/fixfixes.c (FIX_PROC_HEAD): Ditto.
-
-2000-11-21 Richard Henderson <rth@redhat.com>
-
- * varasm.c (record_constant): Pad the constructed
- constant_descriptor appropriately.
-
-Wed Nov 22 00:52:55 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * rtl.h (traverse_md_constants): Declare.
- (struct md_constant): Define.
- * Makefile.in (HOST_RTL): Add hashtab.o .
- (OBJS): Add hashtab.o .
- (hashtab.o): New rule.
- (rtl.o): Depends on HASHTAB_H.
- * rtl.c (hashtab.h): #include.
- (md_constants): New static variable.
- (def_hash, def_name_eq_p, read_constants): New static functions.
- (traverse_md_constants): New function.
- (read_name): Do constant expansion.
- (read_rtx): Recognize define_constants.
- * gencodes.c (print_md_constant): New function.
- (main): Emit #defines for all constant definitions encountered.
- * md.texi (Constant Definitions): New node.
- * gensupport.c (xcalloc): New function.
-
-2000-11-21 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_split_tfmode_frobsign): New.
- * config/alpha/alpha-protos.h: Declare it.
- * config/alpha/alpha.md (abstf_internal): Use it.
- (negtf_internal): Likewise.
- (andnotdi3): Unstar the name.
- (movtf_internal): Add o/G alternative.
-
-2000-11-21 Zack Weinberg <zack@wolery.stanford.edu>
-
- * stringpool.c (stringpool_statistics): Also report number and
- percentage of entries which are identifiers.
-
-2000-11-21 Diego Novillo <dnovillo@redhat.com>
-
- * gcse.c (hoist_expr_reaches_here_p): Do not mark expr_bb as
- visited before visiting it.
-
-2000-11-21 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.h: Accept TARGET_CPU_arm9tdmi,
- TARGET_CPU_strongarm110 and TARGET_SPU_strongarm1100.
-
- * config.gcc: Accept --with-cpu=arm9 and --with-cpu=arm9tdmi.
-
-2000-11-21 Richard Henderson <rth@redhat.com>
-
- * c-common.c (c_unsafe_for_reeval): New function.
- (add_c_tree_codes): Register it.
- * c-common.h: Declare it.
- * tree.c (lang_unsafe_for_reeval): New hook.
- (unsafe_for_reeval): Call it.
- * tree.h: Declare it.
-
-2000-11-21 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (i386_simplify_dwarf_addr): Simplify @GOT
- references as well.
-
-2000-11-21 Neil Booth <neilb@earthling.net>
-
- * do_includes: Revert to using cpp_read_file.
-
-2000-11-21 Bernd Schmidt <bernds@redhat.co.uk>
-
- * loop.c (consec_sets_giv): If the reg we're examining is anything
- but UNKNOWN_INDUCT, do nothing.
- Reset the reg's type to UNKNOWN_INDUCT before returning.
-
- Mostly from Vladimir Makarov (vmakarov@redhat.com)
- * ia64.md (attr itanium_class): Define insn types as described in
- Itanium docs.
- (all insn patterns): Use itanium_class, not type attributes.
- Occasionally split alternatives as necessary.
- (attr type): Compute from new attr itanium_class.
-
-2000-11-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * tradcpp.c (output_line_command): Mark system headers as such in
- `line' commands.
-
-2000-11-21 Jakub Jelinek <jakub@redhat.com>
-
- * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): SPARC has .file/.loc
- support in as as well.
- * configure: Regenerate.
-
-2000-11-20 Richard Henderson <rth@redhat.com>
-
- * c-lex.c (orig_filename): New variable.
- (init_c_lex): Set it. Move call to cpp_start_read ...
- (yyparse): ... here. New function.
- * c-parse.in (yyparse_1): Rename the parser entry point.
- * c-tree.h: Declare it.
-
-2000-11-21 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (do_compare_and_jump): If op0 was replaced by promoted
- integer constant, use type of op1 for comparison.
-
-2000-11-20 Stan Shebs <shebs@apple.com>
-
- * config/rs6000/xm-darwin.h: New file, Darwin host definitions.
- * config/rs6000/x-darwin: New file, Darwin host fragment.
- * config.gcc (powerpc-*-darwin*): New host.
- * system.h (HAVE_DESIGNATED_INITIALIZERS): Allow this to be
- overridden by a config file.
-
-2000-11-20 Neil Booth <neilb@earthling.net>
-
- * cppmacro.c (paste_tokens): Rename from paste_payloads.
- Change token type after pasting spellings.
- (paste_all_tokens): Use it.
- * gcc.dg/cpp/paste2.c: Update test.
- * objc/execute/paste.m: New test.
-
-2000-11-20 Richard Henderson <rth@redhat.com>
-
- * dwarf.h (FMT_CODE): Adjust argument order; fix mapping to
- dwarf_subscr_data_formats bits.
- * dwarfout.c (simple_type_size_in_bits): Handle a type with
- no computed size as size zero.
- (field_byte_offset): Likewise.
- (subscript_data_attribute): Handle a range with no upper bound.
-
-2000-11-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gansidecl.h (const): Check __STDC__ before undef'ing `const'.
-
-2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-typeck.c (build_conditional_expr): When merging type
- qualifiers for conditional expressions between a pointer and a
- pointer to a void type, merge the qualifiers on the target types
- rather than the pointer type. Remove obsolete conditioned out
- code.
-
-2000-11-20 Neil Booth <neilb@earthling.net>
-
- * c-lang.c (lang_init_options): Update call to
- cpp_reader_init.
- * cppmain.c (main): Similarly.
- * fix-header.c (read_scan_file): Similarly.
- * cp/lex.c (lang_init_options): Similarly.
- * objc/objc-act.c (lang_init_options): Similarly.
- * cppexp.c (parse_number): Only warn for unextended C89.
- * cppinit.c (set_lang): New function.
- (cpp_reader_init): Take a LANG argument and pass it to set_lang.
- (COMMAND_LINE_OPTIONS): New option std=c++98.
- (cpp_handle_option): Use set_lang.
- * cpplex.c (_cpp_lex_token): Warn pedantically if not C99.
- * cppib.h (enum_c_lang): New enumeration. Update comments.
-
-2000-11-20 Will Cohen <wcohen@redhat.com>
-
- * calls.c (expand_call): Clear target only when target is in
- hard register and current_function_check_memory_usage is set.
-
-2000-11-20 Bernd Schmidt <bernds@redhat.co.uk>
-
- * toplev.c (rest_of_compilation): Run optimize_mode_switching even
- if not optimizing.
- * sh.c (emit_sf_insn, emit_df_insn): Just call emit_insn.
-
-2000-11-19 Richard Henderson <rth@redhat.com>
-
- * crtstuff.c (force_to_data): Use array size 1 not 0.
-
- * dwarf2out.c (simple_type_size_in_bits): Handle a type with
- no computed size as size zero.
- (field_byte_offset): Likewise.
-
-2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * config.gcc: Fix another typo.
-
-2000-11-19 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (grokdeclarator): Support flexible array members.
- Use open-ended ranges for these and zero-length arrays.
- * c-typeck.c (push_init_level): Validate the context of
- initialization of a zero-length array.
- * tree.c (int_fits_type_p): Be prepared for missing bounds.
- * varasm.c (array_size_for_constructor): New.
- (output_constructor): Use it for arrays of unspecified length.
- * extend.texi (Zero Length): Mention C99 flexible array members.
- Document initialization in a top-level struct as valid.
-
-2000-11-19 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * config.gcc, invoke.texi: Fix errors in spelling of "deprecated".
-
- * alias.c (mems_in_disjoint_alias_sets_p): Do use alias sets in
- stdarg and varargs functions.
-
-2000-11-19 Zack Weinberg <zack@wolery.stanford.edu>
-
- * gcc.c (process_command): Define 'j' variable when
- MODIFY_TARGET_NAME is defined.
-
-2000-11-19 Richard Henderson <rth@redhat.com>
-
- * stor-layout.c (variable_size): Only put SAVE_EXPRs on pending_sizes.
-
-2000-11-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000/rs6000.c (rs6000_encode_section_info): Fix string length
- calculation and allocation.
-
-2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (c_getstr): Constify variable.
- * gmon-sol2.c (_mcleanup): Comment out #endif labels.
- * conflict.c (const_conflict_graph_arc): New typedef.
- (arc_hash, arc_eq): Avoid needlessly casting away const-ness.
- * cppmacro.c (builtin_macro): Likewise.
- * dwarf2out.c (output_comp_unit): Constify variable.
- * fix-header.c (v_fatal): Add ATTRIBUTE_PRINTF.
- * protoize.c (IS_SAME_PATH_CHAR): Use TOUPPER, not toupper.
- * ssa.c (ssa_rename_from_hash_function): Avoid needlessly casting
- away const-ness.
- * tradcpp.c (rescan, do_line, macroexpand, macarg): Use
- ISALNUM/ISDIGIT/ISPRINT, not isalnum/isdigit/isprint.
- * varasm.c (const_str_htab_hash, const_str_htab_eq,
- compare_constant_1, record_constant_1): Constify.
-
-2000-11-18 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (grokdeclarator): Special case the creation of an
- index for a zero-length array.
- * tree.c (build_index_type): Revert Oct 20 change.
-
-2000-11-18 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr-protos.h (avr_output_addr_vec_elt): Prototype.
- * config/avr/avr.c (jump_tables_size): New variable.
- (function_prologue): Initialize it as 0.
- (function_epilogue): Add it to function_size.
- (avr_output_addr_vec_elt): New function. Count words in jump
- tables in jump_tables_size. Move code ...
- * config/avr/avr.h (ASM_OUTPUT_ADDR_VEC_ELT): ... from here.
- Call avr_output_addr_vec_elt instead.
- * config/avr/avr.md (tablejump): Remove disabled define_expand.
-
-2000-11-18 Mark Mitchell <mark@codesourcery.com>
-
- * configure.in: Make --enable-new-gxx-abi the default.
- * configure: Likewise.
-
-2000-11-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (tradcpp.o, tradcif.o): Depend on tradcpp.h.
-
- * tradcif.y: Include tradcpp.h. Constify. Make functions static.
- Move extern function declarations to tradcpp.h.
-
- * tradcpp.c: Likewise.
-
- * tradcpp.h: New file.
-
-2000-11-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (check_for_loop_decls): New function.
- * c-parse.in (for_init_stmt): New.
- (select_or_iter_stmt): Use for_init_stmt.
- * c-tree.h (check_for_loop_decls): New declaration.
-
-2000-11-18 Neil Booth <neilb@earthling.net>
-
- * cppinit.c: Update comments.
- (cpp_reader_init): Make -imacro and -include use the standard
- #include "" search path.
- (do_includes): New function.
-
-2000-11-18 Ben Elliston <bje@redhat.com>
-
- * config/sh/crt1.asm (start_l): Move PC-relative move instruction
- out of a branch delay slot.
-
-2000-11-17 Richard Henderson <rth@redhat.com>
-
- * config/alpha/elf.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
- (ASM_SPEC): Disable and enable .mdebug based on -gstabs.
- (ASM_FILE_START): Only write out ecoff .file directive if
- emitting mdebug debugging.
-
-2000-11-17 Richard Henderson <rth@redhat.com>
-
- * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): New. Detect
- whether as accepts .file/.loc and produces dwarf2 line info.
- * dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Default on if
- the assembler supports it.
- * config.in, configure: Regenerate.
-
-2000-11-17 Richard Henderson <rth@redhat.com>
-
- * fixinc/mkfixinc.sh: Don't disable fixincludes for any linux*.
-
-2000-11-17 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.c (emit_insn_group_barriers, case CALL_INSN):
- Don't clear need_barrier is next_insn is a CALL_INSN, or has
- instruction type B or UNKNOWN.
-
-2000-11-17 Neil Booth <neilb@earthling.net>
-
- * cpperror.c (print_file_and_line): Don't display line number if 0.
-
-2000-11-17 Zack Weinberg <zack@wolery.stanford.edu>
-
- * ggc.h: Delete ggc_add_string_root and ggc_mark_string. Add
- digit_vector and digit_string.
- * stringpool.c (digit_vector): New.
- (ggc_alloc_string): Use digit_string.
-
- * stmt.c (digit_strings): Delete.
- (init_stmt): Do not initialize digit_strings.
- (expand_asm_operands): Use ggc.h's digit_string macro.
- * toplev.c (mark_file_stack): Delete.
- (compile_file): Don't call init_tree_codes.
- (main): No need to make the file stack a GC root.
- * tree.c (init_tree_codes): Delete.
- * tree.h (init_tree_codes): Delete.
-
- * c-lex.c: Don't include ggc.h.
- (mark_splay_tree_node, mark_splay_tree): Delete.
- (init_c_lex): No need to ggc_strdup string constant. Don't add
- file_info_tree to GGC roots.
- (cb_enter_file, cb_rename_file): No need to ggc_strdup
- ip->nominal_fname.
-
- * Makefile.in (c-lex.o): No longer depends on $(GGC_H).
-
- * dbxout.c (dbxout_init),
- dwarf2out.c (dwarf2out_line),
- ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees),
- varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once),
- xcoffout.c (xcoffout_source_file),
- i386.c (load_pic_register):
- Delete call(s) to ggc_add_string_root and/or ggc_mark_string.
-
- * except.c (create_rethrow_ref),
- profile.c (init_edge_profiler),
- toplev.c (compile_file),
- varasm.c (named_section, assemble_static_space,
- assemble_trampoline_template, output_constant_def, force_const_mem),
- i386.c (load_pic_register),
- ia64.c (ia64_encode_section_info),
- rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference,
- rs6000_emit_prologue, rs6000_emit_epilogue),
- rs6000.md (load_toc_aix_si, load_toc_aix_di):
- Change ggc_alloc_string (var, -1) to ggc_strdup (var).
-
- * profile.c (output_func_start_profiler),
- tree.c (make_node),
- i386.c (load_pic_register): No need to ggc_strdup string constant.
-
-2000-11-17 Hans-Peter Nilsson <hp@axis.com>
-
- * Makefile.in (config.status): Depend on config.gcc.
- * configure.in <for machine in $build $host $target>: Move
- contents of loop into config.gcc, removing autoconf quoting.
- Fix changequote bug for alpha*-*-vxworks*.
- * configure: Regenerate.
- * config.gcc: New.
-
-2000-11-16 Zack Weinberg <zack@wolery.stanford.edu>
-
- * c-parse.in (if_prefix): Find the filename and line number at
- $-2 and $-1 respectively.
- * diagnostic.c (error_recursion): Add missing newline, use
- fputs, translate string.
-
-2000-11-16 Zack Weinberg <zack@wolery.stanford.edu>
-
- * stringpool.c: New file.
- * ggc-common.c (ggc_mark_string_ptr, ggc_add_string_root): Delete.
- (ggc_alloc_string): Now in stringpool.o.
- * ggc-page.c, ggc-simple.c: Do not define or allocate empty_string.
- * ggc.h: Delete prototype of ggc_add_string_root. #define
- ggc_add_string_root and ggc_mark_string to nothing. Prototype
- init_stringpool and stringpool_statistics.
- (ggc_alloc_string): Returns a const char *.
- * tree.c (hash_table, do_identifier_warnings): Delete.
- (init_obstacks): Don't initialize the identifier hash table.
- (get_identifier, maybe_get_identifier, start_identifier_warnings,
- set_identifier_size): Now in stringpool.c.
- * tree.h (struct tree_string): Constify pointer field.
- (approx_sqrt): Prototype.
-
- * Makefile.in (stringpool.o): Add rule, mention in OBJS.
-
- * toplev.c (approx_sqrt): New function.
- (compile_file): Call stringpool_statistics if mem_report is on.
- (main): Call init_stringpool.
-
- * builtins.c (c_strlen), c-decl.c (finish_decl), c-lex.c
- (process_directive), c-typeck.c (constructor_asmspec, struct
- initializer_stack, start_init), except.c (create_rethrow_ref),
- stmt.c (digit_strings), toplev.c (decode_f_option), tree.c
- (built_in_filename), varasm,c (in_named_name,
- assemble_static_space, struct constant_descriptor, struct
- deferred_string, struct pool_constant, force_const_mem),
- i386.c (pic_label_name, global_offset_table_name), rs6000.c
- (rs6000_emit_prologue, rs6000_emit_epilogue) : Constify a char *.
-
- * c-common.c (combine_strings): Combine strings in scratch
- buffer, then pass to build_string.
- * optabs.c (init_libfuncs), profile.c (init_edge_profiler,
- output_func_start_profiler), stmt.c (init_stmt), alpha.c
- (alpha_need_linkage), arm.c (arm_encode_call_attribute),
- i386.c (load_pic_register), ia64.c (ia64_encode_section_info),
- rs6000.c (rs6000_encode_section_info): Create string in
- scratch buffer, then pass to ggc_alloc_string.
-
- * stmt.c (expand_asm_operands): If we must adjust the
- constraint strings, do so by creating a new one, not by
- modifying the old one in place. Constify some char *s.
- * config/pa/pa.c (hppa_encode_label): Drop unnecessary second
- argument. Create string in scratch buffer, then pass to
- ggc_alloc_string.
- * config/pa/pa-protos.h: Update prototype.
- * config/pa/elf.h, config/pa/pa.h, config/pa/som.h:
- hppa_encode_label takes only one argument.
-
-2000-11-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mcore.c (mcore_expand_prolog): Call xmalloc/xrealloc, not
- malloc/realloc.
-
- * cpplib.c (glue_header_name): Likewise.
-
- * fixincl.c (run_compiles, start_fixer): Likewise.
-
- * fixlib.c (load_file_data): Likewise.
-
- * mkdeps.c (munge): Likewise.
-
-2000-11-17 Hans-Peter Nilsson <hp@axis.com>
-
- * defaults.h [EH_FRAME_SECTION_ASM_OP] (EH_FRAME_SECTION): Remove
- trailing ';'. Fix formatting.
-
-2000-11-16 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.h (MASK_INLINE_DIV_LAT, MASK_INLINE_DIV_THR):
- Shift masks left by one to avoid conflict.
-
- * config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with
- DECL_EXTERNAL set.
-
-2000-11-16 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (output_arm_prologue): Note nested functions.
- (arm_expand_prologue): For nested functions preserve the
- static chain register during stack frame creation.
-
- * config/arm/arm.h (STATIC_CHAIN_REGNUM): Change to 12.
- (ARM_INITIAL_FRAME_ELIMINATION_OFFSET): For a nested function
- with a stack frame there is a 4 byte gap between the arg
- pointer and the hard frame pointer (used to preserve the
- static chain register during stack frame creation).
-
-2000-11-16 DJ Delorie <dj@redhat.com>
-
- * rtl.c (read_rtx): Provide suitable names for unnamed
- define_insn and define_insn_and_split patterns, based on file
- and line numbers.
-
-2000-11-15 Neil Booth <neilb@earthling.net>
-
- * cpplib.c (start_directive, end_directive): New functions.
- (_cpp_handle_directive, run_directive): Use them.
- (_cpp_handle_directive): Don't -Wtraditional on indented
- null directives.
- (_cpp_push_buffer): Don't re-clear was_skipping.
- * cpplib.h (struct cpp_reader): New member la_saved.
- * cppmacro.c (cpp_get_token): Don't interpret _Pragma in
- directives.
-
- gcc.dg/cpp/_Pragma1.c: Update.
- gcc.dg/cpp/_Pragma2.c: New test.
-
-2000-11-15 Mark Mitchell <mark@codesourcery.com>
-
- * toplev.c (wrapup_global_declarations): Don't write out
- artificial static variables that aren't needed.
-
-2000-11-15 Bernd Schmidt <bernds@redhat.co.uk>
-
- * ia64.c (struct group): New structure.
- (last_group): New static array.
- (group_idx): New static variable.
- (emit_group_barrier_after, errata_find_address_regs, errata_emit_nops):
- New static functions.
- (emit_insn_group_barriers): Initialize and keep track of group_idx
- and last_group.
- Call errata_emit_nops if TARGET_B_STEP or TARGET_A_STEP.
- Replace all calls to emit_insn_after that emit a group barrier to use
- emit_group_barrier_after.
- * ia64.h (MASK_B_STEP): New.
- (other MASK_XXX macros): Renumbered.
- (TARGET_B_STEP): New.
- (TARGET_SWITCHES): Add -mb-step.
-
-2000-11-15 Fred Fish <fnf@be.com>
-
- * fixinc/mkfixinc.sh (fixincludes): Add *-*-beos* to list of
- machines for which fixincludes is not needed.
- * config/i386/x-beos (STMP_FIXPROTO): Don't run fixproto.
-
-2000-11-15 Jason Merrill <jason@redhat.com>
-
- * diagnostic.c (finish_abort): New fn.
- (fancy_abort, error_recursion): Use it.
- * toplev.c (crash_signal): Likewise.
- * diagnostic.h: Declare it.
-
-2000-11-13 Andrew Haley <aph@redhat.com>
-
- * tree.c (build_type_no_quals): New function.
- * tree.h (build_type_no_quals): Declare.
- * c-common.c (c_get_alias_set): When considering type
- compatibility for pointer types, ignore cv-qualifiers anywhere in
- a pointer chain.
-
-2000-11-15 Graham Stott <grahams@redhat.com>
-
- * regrename.c (scan_rtx_rtx): Skip to the next chain on
- encountering a terminated chain.
-
-2000-11-14 Mark Mitchell <mark@codesourcery.com>
-
- * configure.in: Move check for V3 above check for C++ header-file
- directory.
- * configure: Regenerated.
-
-2000-11-14 DJ Delorie <dj@redhat.com>
-
- * config/v850/v850.c: Remove obstacks.
-
-Tue Nov 14 21:54:31 2000 Marek Michalkiewicz <marekm@linux.org.pl> & Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.c (avr_case_values_threshold): New.
- (avr_override_options): Set it depending on options, make it large
- when not optimizing to work around "unable to generate reloads".
-
- * config/avr/avr.h (TARGET_SWITCHES): Add -mno-tablejump option.
- (EXTRA_SECTION_FUNCTIONS): Make the .progmem.gcc_sw_table section
- executable if not AVR_MEGA. Make sure jump tables are word-aligned.
- (JUMP_TABLES_IN_TEXT_SECTION): Define as 0, not 1.
- (ASM_OUTPUT_ADDR_VEC_ELT): Optimize, use "rjmp" if not AVR_MEGA.
- (avr_case_values_threshold): Declare as extern int.
- (CASE_VALUES_THRESHOLD): Define as avr_case_values_threshold.
-
- * config/avr/avr.md (tablejump): Removed.
- (*tablejump_rjmp): New for jump tables made from "rjmp" instructions.
- (*tablejump_lib, *tablejump_enh, *tablejump): Change to expect the
- index in the table, not multiplied by 2.
- (casesi): Change to match the above insns. Always enable.
-
- * config/avr/libgcc.S (__tablejump__): Rename to __tablejump2__.
- Change to expect the word address of the table, multiply it by 2
- here and not in the caller. Change "adiw" to faster "inc".
-
-2000-11-14 Neil Booth <neilb@earthling.net>
-
- * cppexp.c (parse_defined): Call cpp_get_token not
- _cpp_get_token.
- (lex): Similarly.
- * cpplex.c (cpp_output_line): Similarly.
- * cpplib.c (glue_header_name, do_line, do_ident,
- parse_answer, parse_assertion): Similarly.
- (_cpp_handle_diretive): Don't save to lookaheads
- when processing directives.
- * cppmacro.c (parse_arg, expand_arg): Call cpp_get_token not
- _cpp_get_token.
- (funlike_invocation_p): Don't save to lookaheads
- when pre-expanding arguments.
- (_cpp_get_token): Delete.
- (cpp_get_token): Merge contents of _cpp_get_token.
-
-2000-11-14 Jakub Jelinek <jakub@redhat.com>
-
- * builtins.c (expand_builtin_setjmp): Set
- current_function_calls_setjmp.
- (expand_builtin_longjmp): Set current_function_calls_longjmp.
-
- * config/sparc/sparc.md (builtin_setjmp_setup): New expand.
- (do_builtin_setjmp_setup): New insn.
-
-Tue Nov 14 12:34:56 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.c (get_unwidened): Use host_integerp and tree_low_cst.
- (int_fits_type_p): For variable bounds, call force_fit_type.
-
-2000-11-14 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (struct deferred_string): New structure.
- (const_str_htab): New variable.
- (STRHASH): New macro.
- (mark_const_str_htab_1, mark_const_str_htab, const_str_htab_hash,
- constr_str_htab_eq, const_str_htab_del): New functions.
- (output_constant_def): Add DEFER argument, defer string
- constants until mark_constant_pool time if requested.
- (mark_constant_pool): Walk the insn chain even if const_str_htab is
- not empty.
- (mark_constants): If a SYMBOL_REF for deferred string is found,
- output it and remove from hash table.
- (output_addressed_constants): Set DEFER to 0 in call to
- output_constant_def.
- * rtl.h (STRING_POOL_ADDRESS_P): Define.
- (output_constant_def): Adjust prototype.
- * expr.c (expand_expr): Set DEFER to 1 in call to output_constant_def.
-
-2000-11-14 Chandrakala Chavva <cchavva@redhat.com>
-
- * optabs.c (expand_complex_ab):: Use overflow-trapping optabs for
- signed types if flag_trapv.
-
-2000-11-14 Zack Weinberg <zack@wolery.stanford.edu>
-
- * tradcpp.c, tradcif.y: Update FSF mailing address, delete
- reference to GPLv1.
-
-2000-11-14 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.h (CTI_C_SIZE_TYPE): Update comment.
-
-2000-11-14 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table
- to array of pool_constnat pointers.
- (struct pool_constant): Add next_sym and label members.
- (struct pool_sym): Remove.
- (init_varasm_status): Change pool_sym into pool_constant.
- (mark_pool_constant): Mark pc->label string as well.
- (mark_pool_sym_hash_table): Remove.
- (mark_varasm_status): Remove it from caller as well.
- (free_varasm_status): Don't free pool_sym structures.
- (force_const_mem): Don't allocate pool_sym structure, instead
- fill pool->label and chain it into rtx_sym hash table.
- (find_pool_constant, mark_constant_pool): Use pool_constant instead
- of pool_sym.
-
-2000-11-14 Jakub Jelinek <jakub@redhat.com>
-
- * reload1.c (emit_input_reload_insns): Honor forcing of constants
- into memory by PREFERRED_RELOAD_CLASS NO_REGS.
-
-2000-11-14 Michael Matz <matzmich@cs.tu-berlin.de>
-
- * dominance.c: New file.
- * Makefile.in (OBJS): Add dominance.o.
-
- * flow.c (compute_flow_dominators): Remove.
- (compute_immediate_dominators): Remove.
- (compute_immediate_postdominators): Remove.
- * basic-block.h: Remove their prototypes.
- (calculate_dominance_info): Add prototype.
-
- * dce.c (eliminate_dead_code): Change calls to above functions.
- Don't compute dominators but only immediate dominators.
- * flow.c (flow_loops_find): Change callers.
- * gcse.c (compute_code_hoist_data): Likewise.
- * haifa-sched.c (schedule_insns): Likewise.
- * ifcvt.c (if_convert): Likewise.
- * ssa.c (convert_to_ssa): Likewise, and only compute immediate
- dominators.
-
-2000-11-14 Richard Henderson <rth@redhat.com>
-
- * stmt.c (warn_if_unused_value): Don't warn if the expression
- has side effects.
-
- * c-typeck.c (c_sizeof): Fold result to c_size_type_node.
- (c_sizeof_nowarn, c_alignof, c_alignof_expr): Likewise.
-
-2000-11-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * loop.c (basic_induction_var): Revert accidental checkin.
-
-2000-11-13 Hans-Peter Nilsson <hp@axis.com>
-
- * c-lex.c (cb_leave_file): Harmonize conditions and order of
- statements to those of process_directive for (action == act_pop).
-
- * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS.
-
- * local-alloc.c (equiv_init_movable_p): References to CC0 are not
- movable.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (stmts_and_decls): Deprecate use of label at end of
- compound statement.
-
-2000-11-13 Neil Booth <neilb@earthling.net>
-
- * cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF
- cases return without MI check.
- * cpplib.c (do_diagnostic): Take boolean of whether to
- print the directive name.
- (do_error, do_warning): Update.
- (do_pragma_dependency): Use it.
- * cpplib.h (VARARGS_FIRST): Delete.
- (struct cpp_token): Delete integer.
- * cppmacro.c (enter_macro_context): Move disabled check
- to _cpp_get_token.
- (_cpp_get_token): Simplify into a single loop.
-
-2000-11-13 Richard Earnshaw <rearnsha@arm.com>
-
- * configure.in: Use 'test -f' not '[ -e'.
- * configure: Regenerated.
-
-2000-11-13 DJ Delorie <dj@redhat.com>
-
- * config/mn10300/mn10300.md (store_movm): Note which registers are
- really used or clobbered.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (ends_in_label): Remove from %union and %type.
- (decls, stmts, lineno_stmt_or_labels, xstmts,
- lineno_stmt_or_label, stmt_or_label): Remove.
- (stmts_and_decls, lineno_stmt_decl_or_labels_ending_stmt,
- lineno_stmt_decl_or_labels_ending_decl,
- lineno_stmt_decl_or_labels_ending_label,
- lineno_stmt_decl_or_labels_ending_error,
- lineno_stmt_decl_or_labels, compstmt_contents_nonempty,
- lineno_stmt, lineno_label): New.
- (compstmt_nostart): Use compstmt_contents_nonempty.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (boolean_increment): New function.
- * c-common.h (enum c_tree_index): Add CTI_C_BOOL_TYPE,
- CTI_C_BOOL_TRUE and CTI_C_BOOL_FALSE.
- (c_bool_type_node, c_bool_true_node, c_bool_false_node): Define.
- (boolean_increment): Declare.
- * c-convert.c (convert): Allow for BOOLEAN_TYPE.
- * c-decl.c (init_decl_processing): Create boolean nodes.
- (finish_struct): Allow for _Bool bitfields.
- * c-parse.in (reswords): Add _Bool.
- (rid_to_yy): Allow for RID_BOOL.
- * c-typeck.c (default_conversion): Make booleans promote to int.
- (convert_arguments, build_unary_op, build_modify_expr,
- convert_for_assignment): Allow for booleans.
- * ginclude/stdbool.h: Make conforming to C99.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (c99_block_start, c99_block_end,
- c99_block_lineno_labeled_stmt): New.
- (simple_if, do_stmt_start): Use c99_block_lineno_labeled_stmt.
- (stmt): Split off selection and iteration statements into...
- (select_or_iter_stmt): New. Use c99_block_lineno_labeled_stmt.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi (-Wtrigraphs, -fdump-translation-unit, -save-temps,
- -time): Update.
-
-2000-11-13 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (mulsidi3adddi, umulsidi3adddi): Revert previous change.
- Rewrite to avoid use of match_dup. Don't try to tie registers that
- are not in the same mode.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Update lists of languages and suffixes supported.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * configure.in: Take toplevel configure arguments from the
- environment to create configargs.h and substitute
- gcc_config_arguments, taking account of any existing configargs.h
- if reconfiguring.
- * configure: Regenerate.
- * gccbug.in: Include toplevel configure arguments in gccbug.
-
-2000-11-13 Richard Earnshaw <rearnsha@arm.com>
-
- * varasm.c (struct constant_descriptor): Put CONTENTS inside a
- union to make it well-aligned. Update all uses.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (initelt): Give appropriate pedantic warnings,
- depending on flag_isoc99, for non-ISO syntax and for C99 syntax
- outside C99 mode.
- (designator): If pedantic, pedwarn for a designator specifying a
- range of elements.
- * c-typeck.c (set_init_index, set_init_label): Don't pedwarn for
- these cases.
- * extend.texi: Document the C99 syntax as the preferred syntax,
- and the pre-2.5 syntax as obsolete. Mention use of designator
- lists for nested subobjects.
-
-2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * diagnostic.c (vbuild_message_string, output_do_printf, vnotice):
- Add ATTRIBUTE_PRINTF.
- * tradcpp.c (v_message, warning, error, fatal, error_with_line):
- Add ATTRIBUTE_PRINTF*.
-
-2000-11-12 Mark Mitchell <mark@codesourcery.com>
-
- * function.c (assign_parms): When calling put_var_into_stack, make
- sure that there are no hidden pending sequences.
-
-2000-11-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin): Handle BUILT_IN_INDEX and
- BUILT_IN_RINDEX. Add missing checks for BUILT_IN_STRCHR and
- BUILT_IN_STRRCHR.
-
- * builtins.def (BUILT_IN_INDEX, BUILT_IN_RINDEX): New entries.
-
- * c-common.c (c_common_nodes_and_builtins): Declare index and
- rindex when nonansi builtins are allowed.
-
- * extend.texi (index, rindex): Document new builtins.
-
-2000-11-12 Mark Mitchell <mark@codesourcery.com>
-
- * configure.in: Turn on libstdc++ V3 by default.
- * configure: Regenerated.
-
- * fixinc/mkfixinc.sh: Use the ordinary fixincludes on Solaris.
-
-2000-11-12 Jakub Jelinek <jakub@redhat.com>
-
- * reload1.c (set_label_offsets): Go inside of PARALLELs.
-
-2000-11-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Clean up option summary.
-
-2000-11-12 Nick Clifton <nickc@redhat.com>
-
- * config/mcore/mcore.c: Fix comment formating, and adjust sequence
- of #include headers.
-
-2000-11-12 Marc Espie <espie@openbsd.org>
-
- * configure.in: Fix filds test.
- * configure: Regen.
-
-2000-11-12 Mark Mitchell <mark@codesourcery.com>
-
- * jump.c (delete_computation): Don't assume that just because an
- instruction sets a register, that register is dead.
-
-2000-11-12 Neil Booth <neilb@earthling.net>
-
- * cppexp.c: Don't worry about pfile->skipping.
- * cpplib.c (struct if_stack): Make was_skipping unsigned char.
- (cpp_handle_directive): Save pfile->skipping in struct cpp_buffer
- for handled directives.
- (skip_rest_of_line): Use _cpp_lex_token after popping contexts
- and releasing lookaheads.
- (do_ifdef, do_ifndef, do_if): Use buffer->was_skipping.
- (do_else, do_elif, push_conditional): Update logic.
- (do_endif): Set buffer->was_skipping rather than pfile->skipping.
- (unwind_if_stack): Inline into cpp_pop_buffer.
- (cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive.
- * cpplex.c (_cpp_lex_token): Clear skipping on EOF. Handle
- multiple-include optimisation.
- * cpplib.h (struct cpp_buffer): New member was_skipping.
- * cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping. This
- works because skipping == 0 in directives.
- (_cpp_release_lookahead): Renamed from release_lookahead.
- (cpp_get_token): No need to check skipping as _cpp_get_token does
- this for us. No need to handle MI optimisation.
-
-Sat Nov 11 21:14:02 2000 Mark P Mitchell <mark@codesourcery.com>
-
- * fixinc/inclhack.def (sunos_matherr_decl): Bypass matherr
- declarations that use `__MATH_EXCEPTION' in their prototypes, too.
- * fixinc/fixincl.x: Regenerated.
-
-2000-11-11 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def (avoid_bool_type): avoid commenting out #endif
- (avoid_wchar_t_type): ditto
- * fixinc/fixinc.irix: obsoleted
-
-2000-11-11 Zack Weinberg <zack@wolery.stanford.edu>
-
- * configure.in: Don't add $outputs to all_lang_makefiles. Add
- $srcdir/$s/Makefile.in if it exists.
- * configure: Regenerate.
-
-Sat Nov 11 18:41:20 2000 Mark P Mitchell <mark@codesourcery.com>
-
- * fixinc/mkfixinc.sh: Use the ordinary fixincludes on IRIX.
-
-2000-11-11 Jason Merrill <jason@redhat.com>
-
- * function.c (assign_parms): If TREE_ADDRESSABLE is set, try to
- give the parm a register and then call put_var_into_stack.
- * stmt.c (expand_decl): Likewise.
-
-2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi: Adjust wording.
-
-2000-11-11 Mark Mitchell <mark@codesourcery.com>
-
- * fixinc/inclhack.def (avoid_wchar_t_type): New fix.
- * fininc/fixincl.x: Regenerated.
-
-2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Correct spelling of -foptimize-register-move.
-
-2000-11-11 Neil Booth <neilb@earthling.net>
-
- Remove CPP_PLACEMARKERs.
-
- * cppexp.c (lex): Don't handle CPP_PLACEMARKER.
- * cpplex.c (_cpp_lex_token): Rename skip_newlines to next_bol
- * cpplib.c (skip_rest_of_line, check_eol, cpp_push_buffer):
- Similarly.
- * cpplib.h: Remove CPP_PLACEMARKER.
- (struct lexer_state): Rename skip_newlines to next_bol.
- * cppmacro.c (stringify_arg): Don't handle CPP_PLACEMARKER.
- Simplify prev_white handling as a result.
- (paste_all_tokens): Don't worry about CPP_PLACEMARKERs.
- (parse_arg): Empty arguments are now empty, not CPP_PLACEMARKERs.
- (parse_args): Similarly. Update argument count tests.
- (enter_macro_context): Return 2 to indicate an empty macro.
- (replace_args): Don't bother pre-expanding an empty argument.
- Handle placemarkers and ## extension during pre-expansion.
- (cpp_get_token): Handle empty macro expansions. Don't worry
- about CPP_PLACEMARKERs.
- (_cpp_create_definition): Empty macros are now empty.
- (cpp_macro_definition): Don't special case empty macros.
- * scan-decls.c: Don't bother with CPP_PLACEMARKERs.
- * c-lex.c: Similarly.
-
-2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi, invoke.texi: Add new section discussing language
- standards; link to it where appropriate; refer to ISO C instead of
- ANSI C.
-
-2000-11-11 Alexandre Oliva <aoliva@redhat.com>
-
- * builtins.c (std_expand_builtin_va_start): Take PARM_BOUNDARY
- into account.
-
- * config/sh/sh.h (MODES_TIEABLE_P): Don't tie SFmode to other FP
- modes.
-
-2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi, gcov.texi: Update dates and version numbers.
-
-2000-11-10 Zack Weinberg <zack@wolery.stanford.edu>
-
- * configure.in: Remove AC_PROG_LEX and AC_PROG_YACC. Look for
- flex and bison, specifically, first in a unified build and
- then installed on the system.
- * Makefile.in: Set BISON to @BISON@, FLEX to @FLEX@. Rename
- LEXFLAGS to FLEXFLAGS. Adjust ORDINARY_FLAGS_TO_PASS to
- match.
-
- (collect2.o, gcc.o, prefix.o, toplev.o, alloca.o, intl.o,
- cppdefault.o): Remove pointless sed munging of source file
- name.
-
-2000-11-10 Bernd Schmidt <bernds@redhat.co.uk>
-
- * reload.c (find_reloads_address_1, case POST_MODIFY): Use RELOAD_OTHER
- for address reloads. Push replacements for REG_INC notes.
- (regno_clobbered_p): New arg SETS. Examine SETs if it's nonzero. All
- callers changed.
- * reload1.c (choose_reload_regs): Registers set in the insn can't be
- used for RELOAD_OTHER reloads.
-
-2000-11-10 Mark Mitchell <mark@codesourcery.com>
-
- * c-dump.h: New file.
-
-2000-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.c (check_float_value): Use memcpy, not bcopy.
- * arm.c (output_move_double): Likewise.
- * arm.md: Likewise.
- * m88k.c (legitimize_operand): Likewise.
- * m88k.h (ORDER_REGS_FOR_LOCAL_ALLOC): Likewise.
- * m88k.md: Likewise.
- * mips.c (override_options): Likewise.
- * mips.md: Likewise.
- * romp.c (output_fpops): Likewise.
- * rs6000.c (rs6000_override_options): Likewise.
- * sh.md: Likewise.
- * vax.c (check_float_value): Likewise.
-
- * emit-rtl.c (copy_rtx_if_shared, init_emit_once): Likewise.
- * expmed.c (synth_mult): Likewise.
- * final.c (add_bb_string): Likewise.
- * genattr.c (main): Likewise.
- * genattrtab.c (attr_string, simplify_cond, copy_rtx_unchanging):
- Likewise.
- * jump.c (thread_jumps): Likewise.
- * prefix.c (save_string): Likewise.
- * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Likewise.
- * regclass.c (init_reg_sets, init_reg_sets_1): Likewise.
- * reload1.c (reload, eliminate_regs): Likewise.
-
-2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi (Service): Update to reflect current practice and
- location of the GNU service directory.
-
-2000-11-09 Bernd Schmidt <bernds@redhat.co.uk>
-
- * regrename.c (build_def_use): Mark contents of REG_INC notes as
- needing replacement.
-
- * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Emit
- a no-op move if regs are equal.
- * toplev.c (rest_of_compilation): Do the noop moves elimination pass
- when calling jump after post-reload splitting.
-
-2000-11-09 Jan van Male <jan.vanmale@fenk.wau.nl>
-
- * c-tree.texi: Fix typos.
- * extend.texi: Likewise
- * gcov.texi: Likewise
- * rtl.texi: Likewise
- * tm.texi: Likewise
-
-2000-11-09 Hans-Peter Nilsson <hp@axis.com>
-
- * c-lex.c [! NO_IMPLICIT_EXTERN_C] (cb_enter_file): Check
- in_system_header and flags[1] before dereferencing flags[2].
-
-2000-11-09 Matthew Hiller <hiller@redhat.com>
-
- * reload1.c (reload_combine): Fixed calculation of
- first_index_reg, last_index_reg.
-
-2000-11-09 Mark Mitchell <mark@codesourcery.com>
-
- * c-dump.c (dequeue_and_dump): Dump function bodies.
-
- * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
- (c-dump.o): New target.
- * c-common.h (flag_dump_translation_unit): New variable.
- (C_TYPE_QUALS): New macro.
- (strip_array_types): New function.
- (DECL_C_BIT_FIELD): New macro.
- (SET_DECL_C_BIT_FIELD): Likewise.
- (CLEAR_DECL_C_BIT_FIELD): Likewise.
- (dump_info_p): New typedef.
- (dump_tree_fn): Likewise.
- (lang_dump_tree): New variable.
- (dump_node_to_file): New function.
- * c-common.c (flag_dump_translation_unit): Define it.
- (strip_array_types): New function.
- * c-decl.c (c_decode_option): Handle -fdump-translation-unit.
- * c-lang.c (finish_file): Call dump_node_to_file if
- flag_dump_translation_unit.
- * c-semantics.c (mark_rtl_for_local_static): Fix typo in comment.
- * c-tree.h (DECL_C_BIT_FIELD): Remove declaration.
- * c-dump.c: New file.
-
-2000-11-09 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h: Add mingw startfile prefix.
-
-2000-11-09 Richard Henderson <rth@redhat.com>
-
- * flow.c (invalidate_mems_from_set): Split out from ...
- (mark_set_1): ... here.
- (try_pre_increment_1): Use it. Use propagate_block_delete_insn
- instead of turning insn into a NOTE_INSN_DELETED.
-
-2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi, invoke.texi: Move documentation of builtin versions
- of C library functions to one place and update.
-
-2000-11-09 Richard Henderson <rth@redhat.com>
-
- * fold-const.c (fold): Compare TYPE_MAIN_VARIANT rather than
- the types themselves to discover type equivalence.
-
-2000-11-09 Mike Stump <mrs@wrs.com>
-
- * Makefile.in (distclean): Remove a few extra leftovers.
-
-2000-11-09 Richard Henderson <rth@redhat.com>
-
- * recog.c (validate_replace_rtx_1): Consider subregs when
- replacing a register with a constant inside a sign/zero_extend.
-
- * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define.
-
-2000-11-09 Geoffrey Keating <geoffk@redhat.com>
-
- * c-decl.c (finish_struct): When a structure is completed,
- check all its variant types for completeness.
-
-2000-11-09 Neil Booth <neilb@earthling.net>
-
- * cpphash.c: Move cpp_defined here from cpplib.c.
- * cpplib.c: Update comments, move cpp_defined to cpphash.c.
- * cpplex.c (_cpp_lex_token): Don't leave the lexer at EOL.
- * cppmacro.c (cpp_get_token): Update comments, no need now
- to catch the CPP_EOF meaning EOL case.
-
-2000-11-08 Geoffrey Keating <geoffk@redhat.com>
-
- * config/sparc/sparc.c (sparc_va_arg): When the required alignment
- is more than that provided, copy to a temporary.
-
-2000-11-09 Alexandre Oliva <aoliva@redhat.com>
-
- * mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from
- interpreting $out as a macro assignment.
- * Makefile.in (T_TARGET): New auxiliary macro and target.
- (all): Add a target right in the beginning, so that we don't build
- T_TARGET by default.
-
-2000-11-09 Graham Stott <grahams@redhat.com>
-
- * config/i386/i386.md (mmx_pinsrw): Output operands in correct
- order for -mintel-syntax. Remove comment now that the operand
- order has been checked.
- (mmx_pextrw): Likewise.
- (mmx_pshufw): Likewise.
-
-2000-11-09 Jakub Jelinek <jakub@redhat.com>
-
- * builtins.c (c_strlen): Use TREE_STRING_LENGTH - 1 for max.
- (c_getstr): New function.
- (expand_builtin_strstr): Do nothing if -fcheck-memory-usage.
- If both arguments are constant string, optimize out.
- (expand_builtin_strchr, expand_builtin_strrchr): New functions.
- (expand_builtin_strpbrk): Use c_getstr, do nothing if
- -fcheck-memory-usage.
- (expand_builtin_fputs): Likewise.
- (expand_builtin_strcmp): Add MODE argument.
- Use even if !HAVE_cmpstrsi.
- Optimize the case when both arguments are constant strings.
- (expand_builtin): Adjust expand_builtin_strcmp caller.
- Call expand_builtin_strchr and expand_builtin_strrchr.
- * c-common.c (c_common_nodes_and_builtins): Add strchr and strrchr
- builtins.
- * builtins.def (BUILT_IN_STRRCHR): Add.
-
-2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * fixinc/gnu-regex.c: Rename EGCS LOCAL markers to GCC LOCAL.
-
-2000-11-09 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * calls.c (expand_call, emit_library_call_value_1), collect2.c
- (scan_prog_file), config/a29k/a29k.c (print_operand),
- config/sparc/sparc.c (order_regs_for_local_alloc): Use memcpy ()
- instead of bcopy ().
- * real.h: Use memcmp () instead of bcmp ().
- * config/m88k/m88k.c (m88k_layout_frame), config/sh/sh.c
- (split_branches), config/sparc/sparc.c (ultra_flush_pipeline,
- ultrasparc_sched_init, ultrasparc_sched_reorder),
- config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Use memset ()
- instead of bzero ().
- * config/vax/xm-xms.h (FILE_NAME_NONDIRECTORY): Use strrchr ()
- instead of rindex ().
- * configure.in: Don't check for bzero, bcmp, index or rindex.
- * configure, config.in: Regenerate.
- * system.h: Don't include declarations for bzero, bcmp, index or
- rindex.
- * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Don't define
- bzero, bcmp, index or rindex.
-
-Wed Nov 8 21:58:20 2000 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h: Add -no-win32 switch. Separate -mno-cygwin
- include and library paths from -mcygwin case. Parameterize some
- declarations to avoid warnings. Use standard locations for include and
- lib dirs.
-
-2000-11-08 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.md (mulsidi3adddi): Change output operand
- constraint from "=&" to "+&".
- (umulsidi3adddi): Change output operand constraint from "=&" to
- "+&".
-
-2000-11-08 Richard Henderson <rth@redhat.com>
-
- * flow.c (init_propagate_block_info): Protect the rtx stored in
- mem_set_list from modification by find_auto_inc.
- (mark_set_1): Likewise.
-
-2000-11-08 Neil Booth <neilb@earthling.net>
-
- Move directive handling into the lexer itself.
-
- * cpplex.c (_cpp_lex_token): Handle directives directly.
- In the case of a directive interrupting a function-like
- macro invocation, use extra_char since read_ahead is
- used to store the '#'. Return a CPP_EOF in this case.
- * cppmacro.c (parse_arg): No need to handle CPP_DHASH any more.
- (cpp_get_token): Don't handle directives here.
- * cpplib.h: Remove CPP_DHASH token type.
-
-Wed Nov 8 21:53:41 MET 2000 Jan Hubicka <jh@suse.cz>
-
- * regmove.c (combine_stack_adjustments_for_blocks): Recognize pushes
- formed using PRE_MODIFY too.
-
-2000-11-08 Mark Mitchell <mark@codesourcery.com>
-
- * c-tree.texi (VAR_DECL): Describe representation of GCC's
- extension for placing variables in particular registers.
-
- * c-tree.texi (FUNCTION_TYPE): Clarify TYPE_ARG_TYPES for
- unprototyped C functions with no parameters.
-
-2000-11-08 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Cast DELTA to int
- before passing to fprintf.
-
-2000-11-08 Jakub Jelinek <jakub@redhat.com>
-
- * function.c (expand_function_start): Cast GET_MODE_SIZE to
- HOST_WIDE_INT before negating it.
-
-2000-11-08 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (expand_expr) [ADDR_EXPR]: Handle when op0 is RETURN_DECL
- passed in multiple non-contiguous locations.
-
-2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README.gnat: Remove file.
-
-2000-11-08 Alexandre Oliva <aoliva@redhat.com>
-
- * mklibgcc.in (EXTRA_MULTILIB_PARTS): Generate multilib parts
- in-place.
-
-2000-11-07 Richard Henderson <rth@redhat.com>
-
- * dwarfout.c (INSN_LABEL_FMT): Remove.
- (output_label_die): Use ASM_GENERATE_INTERNAL_LABEL.
- (dwarfout_label): Remove.
- * dwarfout.h: Remove it's prototype.
- * dwarf2out.c (INSN_LABEL_FMT): Remove.
- (gen_label_die): Use ASM_GENERATE_INTERNAL_LABEL.
- (dwarf2out_label): Remove.
- * dwarf2out.h: Remove it's prototype.
- * final.c (final_scan_insn): Don't call dwarf[2]out_label.
-
-2000-11-07 Richard Henderson <rth@redhat.com>
-
- * config/ia64/fde-glibc.c (find_fde_for_dso): Do a binary
- search on the unwind region section.
-
- * config/ia64/ia64.md (movbi): Add r/r alternative.
- (cmovdi_internal_astep): Describe all combinations of register
- classes for sources & destinations; remove matching constraints.
- (cmovdi_internal): Likewise.
-
- * gcc.c (default_compilers) [@cpp-output]: Add -fpreprocessed.
-
-2000-11-07 Richard Henderson <rth@redhat.com>
-
- * c-lang.c (start_cdtor, finish_cdtor): New functions.
- (finish_file): Use them in building constructor/destructor functions.
-
- * config/alpha/alpha.h (HAS_INIT_SECTION, LD_INIT_SWITCH,
- LD_FINI_SWITCH): Move ...
- * config/alpha/osf.h: ... here.
- * config/alpha/alpha-interix.h: Don't undef them.
-
-2000-11-07 Jeffrey Oldham <oldham@oz.codesourcery.com>
-
- * config/mips/t-iris6 (FPBIT): New. Added so that __unorddf2 is
- included in libgcc.a.
- (DPBIT): Likewise.
- (dp-bit.c): Likewise.
- (fp-bit.c): Likewise.
-
-2000-11-07 Nick Clifton <nickc@redhat.com>
-
- * config/m88k/m88k.h (GLOBAL_ASM_OP): Add missing tab.
- (INTERNAL_ASM_OP): Add missing tab.
-
-2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * alias.c (init_alias_analysis), calls.c (expand_call,
- emit_library_call_value_1), combine.c (init_reg_last_arrays),
- cse.c (new_basic_block), dbxout.c (dbxout_type), diagnostic.c
- (init_output_buffer, set_diagnostic_context), dwarf2out.c
- (equate_decl_number_to_die, build_abbrev_table), emit-rtl.c
- (init_emit_once), fold-const.c (mul_double, div_and_round_double),
- function.c (assign_parms), gcse.c (compute_can_copy,
- alloc_gcse_mem, alloc_reg_set_mem, record_one_set,
- compute_hash_table, compute_set_hash_table,
- compute_expr_hash_table), genattrtab.c (optimize_attrs), global.c
- (global_alloc, global_conflicts), haifa-sched.c (compute_trg_info,
- clear_units, schedule_block), integrate.c (initialize_for_inline,
- expand_inline_function), jump.c (thread_jumps), local-alloc.c
- (local_alloc), loop.c (combine_movables, count_loop_regs_set,
- load_mems_and_recount_loop_regs_set), print-tree.c (debug_tree),
- regclass.c (init_reg_sets, init_reg_sets_1, regclass,
- record_reg_classes, allocate_reg_info), reload.c
- (get_secondary_mem, remove_address_replacements, find_reloads),
- reload1.c (reload, set_initial_label_offsets, finish_spills,
- reload_as_needed, choose_reload_regs_init,
- reload_cse_simplify_operands), reorg.c (dbr_schedule), sbitmap.c
- (sbitmap_zero), simplify-rtx.c (simplify_plus_minus), ssa.c
- (rename_registers), stmt.c (expand_end_case), unroll.c
- (unroll_loop), varray.c (varray_grow), objc/objc-act.c: Use memset
- () instead of bzero ().
-
-2000-11-07 Neil Booth <neilb@earthling.net>
-
- * cp/lang-specs.h: Fix -save-temps specs under USE_CPPLIB.
-
-2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c (combine_strings): Only warn about long strings for C.
-
-Tue Nov 7 19:44:30 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * combine.c (distribute_notes): Fix typo in last change.
-
-2000-11-07 Geoff Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.md (movdi_internal32+1): Use
- operand_subreg_force rather than gen_rtx_SUBREG.
- (movdi_internal32+2): Likewise.
-
-2000-11-07 Philip Blundell <philb@gnu.org>
-
- * configure.in (arm*-*-linuxaout*): Obsolete, deleted.
- * config/arm/linux-aout.h: Likewise.
- * configure: Regenerate.
-
-2000-11-07 Philipp Thomas <pthomas@suse.de>
-
- * ABOUT-GCC-NLS: Remove the patch for gettext as it has been
- accepted my the gettext maintainer.
-
-2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strpbrk): New function.
- (expand_builtin): Handle BUILT_IN_STRPBRK.
-
- * builtins.def (BUILT_IN_STRPBRK): New entry.
-
- * c-common.c (c_common_nodes_and_builtins): Declare builtin
- strpbrk.
-
-2000-11-07 David O'Brien <obrien@dragon.nuxi.com>
-
- * config/alpha/freebsd.h: New file -- FreeBSD/alpha architecture file.
- * POTFILES.in: Add config/alpha/freebsd.h
- * configure.in: Add alpha*-freebsd support.
- * configure: Regenerate.
-
-2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * tree.c (build_common_tree_nodes_2): Make va_list_type_node be a
- copy of ptr_type_node rather than ptr_type_node itself.
-
-Tue Nov 7 06:29:24 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * combine.c (recog_for_combine): Allocate uninitialized vector with
- rtvec_alloc.
- * recog.c (apply_change_group): Likewise.
-
-Tue Nov 7 06:24:02 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * flow.c (verify_local_live_at_start): Back out last change.
- * combine.c (distribute_notes): When parts of a hard reg are
- neither set nor referenced in PLACE, search backwards for a
- place to put a REG_UNUSED note; if none found, ask for flow
- info refresh.
-
-Mon Nov 6 20:08:13 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * reload1.c (eliminate_regs_in_insn): Allow a set to be a PARALLEL
- with (clobber (match_scratch...)).
-
-2000-11-06 Neil Booth <neilb@earthling.net>
-
- * c-lex.c (init_c_lex): If cpp_start_read fails, exit with
- error status.
-
-2000-11-06 Neil Booth <neilb@earthling.net>
-
- * tradcpp.c (special_symbol): Assign an null string rather
- than writing to an unallocated buffer.
-
-2000-11-06 Neil Booth <neilb@earthling.net>
-
- * cpplex.c (_cpp_equiv_tokens): Check arg_no in the
- CPP_MACRO_ARG case.
-
-2000-11-06 Neil Booth <neilb@earthling.net>
-
- * c-lex.c (c_lex): Replace tok.val.aux with tok.val.c or
- tok.val.arg_no as appropriate.
- * cppexp.c (lex): Similarly.
- * cpplex.c (_cpp_lex_token, cpp_spell_token, cpp_output_token,
- cpp_equiv_tokens, cpp_can_paste, cpp_avoid_paste): Similarly.
- * cppmacro.c (stringify_arg, replace_args, lex_expansion_token,
- cpp_macro_definition): Similarly.
- * cpplib.h (struct cpp_token): Replace aux with c and arg_no.
-
-2000-11-06 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.md (adddi3): If operands[2] is 4096 and
- operands[1] is constant, calculate the sum and generate movdi.
- (addsi3): Similarly. Use SImode in call to arith_4096_operand.
- (subsi3): Use SImode in call to arith_4096_operand.
-
-2000-11-06 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): On sparc64 we need to
- adjust %o1, not %o0 if the return type is large structure.
-
-2000-11-06 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.md (smulsi3_highpart_v8plus, ashldi3_v8plus+1,
- update_return, flush, flushdi, ffssi2, ffsdi2): Fix output formatting.
-
-Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl>
-
- * expmed.c (expand_divmod): For signed divide by 2, prefer
- a branch and fewer shifts if branches are very cheap.
-
-2000-11-05 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * Makefile.in: Remove all targets related to building
- distributions and diffs, or INSTALL.
- * INSTALL, install1.texi: Remove.
- * configure.in: Remove mention of distdir.
- * configure: Regenerate.
- * objc/Make-lang.in: Remove mention of distdir.
-
-2000-11-04 Neil Booth <neilb@earthling.net>
-
- * cpp.texi: Update for _Pragma.
-
-2000-11-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi (Contributing): Update URL for projects web page.
-
-2000-11-04 Neil Booth <neilb@earthling.net>
-
- * cpplex.c (parse_string): Don't allow multiline strings in
- #include family directives.
-
-2000-11-04 Neil Booth <neilb@earthling.net>
-
- * cpplib.c (do_line): Only warn pedantically if not reading
- preprocessed input.
-
-2000-11-04 Alexandre Oliva <aoliva@redhat.com>
-
- * calls.c (emit_call_1) [sibcall_pop]: Use n_popped instead of
- RETURN_POPS_ARGS().
-
-2000-11-03 Zack Weinberg <zack@wolery.stanford.edu>
-
- * builtins.c (expand_builtin_strlen): Remove unused mode
- argument.
- * gcc.c (process_command): Remove unused variable.
- * fold-const.c: Include expr.h.
- * recog.c: Include reload.h.
- * Makefile.in (recog.o, fold-const.o): Update deps.
-
-2000-11-02 Geoffrey Keating <geoffk@cygnus.com>
-
- * fixinc/gnu-regex.c: Change 'CYGNUS LOCAL' to 'EGCS LOCAL'.
-
-Fri Nov 3 13:41:04 2000 Mark P Mitchell <mark@codesourcery.com>
-
- * config/mips/iris6.h (SUBTARGET_CC1_SPEC): Remove -static
- handling.
- (STARTFILE_SPEC): Likewise.
- (LINK_SPEC): Likewise.
-
-2000-11-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (fold-const.o): Depend on $(GGC_H), not ggc.h.
- (toplev.o): Likewise for $(LOOP_H)/loop.h and $(REGS_H)/regs.h.
- (simplify-rtx.o): Likewise for $(GGC_H)/ggc.h.
-
-2000-11-03 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (duplicate_decls, copy_lang_decl), dwarfout.c
- (dwarfout_line), gcc.c (main, save_string), tree.c (init_obstacks,
- perm_calloc, get_identifier, maybe_get_identifier,
- real_value_from_int_cst, simple_cst_equal), varasm.c
- (assemble_name, assemble_real, immed_real_const_1,
- compare_constant_1, decode_rtx_const, output_constant_pool): Use
- strrchr () instead of rindex (). Use memcmp () instead of bcmp
- (). Use memcpy () instead of bcopy (). Use memset () instead of
- bzero ().
-
-2000-11-03 Nathan Sidwell <nathan@codesourcery.com>
-
- * cppfiles.c (open_file): If already read, then don't reopen.
- Immediately close an empty file.
-
-2000-11-01 Bernd Schmidt <bernds@redhat.co.uk>
-
- * expr.h (fold_builtin): Move declaration...
- * tree.h (fold_builtin): ... here.
-
-Fri Nov 3 05:41:07 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * flow.c (verify_local_live_at_start): Allow hard regs to die.
-
-2000-11-02 Neil Booth <neilb@earthling.net>
-
-config:
- * a29k/a29k.h, a29k/unix.h, a29k/vx29k.h,
- alpha/alpha-interix.h, alpha/alpha.h, alpha/linux.h,
- alpha/openbsd.h, alpha/osf.h, alpha/vms.h, alpha/vxworks.h,
- alpha/win-nt.h, arc/arc.h, arm/arm.h, arm/conix-elf.h,
- arm/linux-aout.h, arm/linux-elf.h, arm/netbsd.h, arm/riscix.h,
- arm/riscix1-1.h, arm/semiaof.h, arm/unknown-elf-oabi.h, arm/vxarm.h,
- c4x/rtems.h, clipper/clix.h, convex/convex.h, d30v/d30v.h,
- elxsi/elxsi.h, fr30/fr30.h, h8300/h8300.h, i370/linux.h, i370/mvs.h,
- i370/oe.h, i386/386bsd.h, i386/aix386ng.h, i386/beos-elf.h,
- i386/bsd386.h, i386/crtdll.h, i386/cygwin.h, i386/dgux.h,
- i386/djgpp-rtems.h, i386/djgpp.h, i386/freebsd-aout.h, i386/freebsd.h,
- i386/gnu.h, i386/i386-interix.h, i386/i386.h, i386/linux-aout.h,
- i386/linux-oldld.h, i386/linux.h, i386/lynx-ng.h, i386/lynx.h,
- i386/mach.h, i386/mingw32.h, i386/moss.h, i386/netbsd.h,
- i386/netware.h, i386/next.h, i386/openbsd.h, i386/osf1elf.h,
- i386/osfelf.h, i386/osfrose.h, i386/ptx4-i.h, i386/rtems.h,
- i386/rtemself.h, i386/sco.h, i386/sco4.h, i386/sco4dbx.h, i386/sco5.h,
- i386/scodbx.h, i386/sequent.h, i386/sol2.h, i386/sun.h, i386/sysv3.h,
- i386/sysv4.h, i386/uwin.h, i386/vsta.h, i386/vxi386.h, i386/win-nt.h,
- i386/win32.h, i860/fx2800.h, i860/i860.h, i860/mach.h, i860/sysv3.h,
- i860/sysv4.h, i960/i960.h, i960/rtems.h, i960/vx960-coff.h,
- ia64/ia64.h, ia64/linux.h, m32r/m32r.h, m68k/3b1.h, m68k/3b1g.h,
- m68k/a-ux.h, m68k/altos3068.h, m68k/amix.h, m68k/apollo68.h,
- m68k/crds.h, m68k/ctix.h, m68k/dpx2.h, m68k/hp2bsd.h, m68k/hp320.h,
- m68k/hp3bsd.h, m68k/hp3bsd44.h, m68k/isi.h, m68k/linux-aout.h,
- m68k/linux.h, m68k/lynx-ng.h, m68k/lynx.h, m68k/m68kemb.h,
- m68k/m68kv4.h, m68k/mot3300.h, m68k/netbsd.h, m68k/news.h,
- m68k/next.h, m68k/openbsd.h, m68k/pbb.h, m68k/plexus.h, m68k/rtems.h,
- m68k/rtemself.h, m68k/sun2.h, m68k/sun3.h, m68k/sun3mach.h,
- m68k/tower-as.h, m68k/tower.h, m68k/vxm68k.h, m88k/dgux.h,
- m88k/dolph.h, m88k/luna.h, m88k/m88k-aout.h, m88k/m88k-coff.h,
- m88k/openbsd.h, m88k/sysv3.h, m88k/sysv4.h, mips/bsd-4.h,
- mips/bsd-5.h, mips/dec-bsd.h, mips/dec-osf1.h, mips/gnu.h,
- mips/iris3.h, mips/iris5.h, mips/iris6.h, mips/linux.h, mips/mips.h,
- mips/netbsd.h, mips/news4.h, mips/news5.h, mips/nws3250v4.h,
- mips/openbsd.h, mips/osfrose.h, mips/rtems64.h, mips/sni-svr4.h,
- mips/svr3-4.h, mips/svr3-5.h, mips/svr4-4.h, mips/svr4-5.h,
- mips/ultrix.h, ns32k/encore.h, ns32k/merlin.h, ns32k/netbsd.h,
- ns32k/ns32k.h, ns32k/pc532-mach.h, ns32k/pc532.h, ns32k/sequent.h,
- ns32k/tek6000.h, ns32k/tek6100.h, ns32k/tek6200.h, pa/pa-hiux.h,
- pa/pa-hpux.h, pa/pa-hpux7.h, pa/pa-linux.h, pa/pa-osf.h,
- pa/pa-pro-end.h, pa/pa.h, pa/rtems.h, pj/linux.h, pj/pj.h,
- romp/romp.h, rs6000/aix.h, rs6000/aix31.h, rs6000/aix41.h,
- rs6000/aix43.h, rs6000/beos.h, rs6000/eabi.h, rs6000/eabisim.h,
- rs6000/linux.h, rs6000/lynx.h, rs6000/mach.h, rs6000/rtems.h,
- rs6000/sysv4.h, rs6000/vxppc.h, sh/elf.h, sh/linux.h, sh/rtems.h,
- sh/rtemself.h, sh/sh.h, sparc/aout.h, sparc/elf.h, sparc/linux-aout.h,
- sparc/linux.h, sparc/linux64.h, sparc/lite.h, sparc/litecoff.h,
- sparc/liteelf.h, sparc/lynx-ng.h, sparc/lynx.h, sparc/netbsd.h,
- sparc/openbsd.h, sparc/pbd.h, sparc/rtems.h, sparc/rtemself.h,
- sparc/sol2-sld-64.h, sparc/sol2.h, sparc/sp64-aout.h,
- sparc/sp64-elf.h, sparc/sp86x-aout.h, sparc/sp86x-elf.h,
- sparc/sparc.h, sparc/sysv4.h, sparc/vxsim.h, sparc/vxsparc.h,
- v850/rtems.h, vax/netbsd.h, vax/openbsd.h, vax/ultrix.h, vax/vax.h,
- vax/vaxv.h, vax/vms.h, we32k/we32k.h
-
- Replace -A() with -A=, the new assertion syntax.
-
-Thu Nov 2 21:52:35 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * combine.c (distribute_notes): Use rtx_equal_p to check elim_i2 /
- elim_i1.
- In REG_DEAD handling: When handling parts of multi-hard-reg hard
- registers, increment the loop counter by the size of the parts;
- use recursion to handle individual parts.
-
-2000-11-02 Neil Booth <neilb@earthling.net>
-
- * configure.in: Make integrated CPP the default.
- * configure: Regenerate.
-
-Thu Nov 2 19:20:12 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * reload.c (find_equiv_reg): Test all hard registers for membership
- in the requested class.
-
-2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * collect2.c (main, write_c_file_stat), gcc.c (translate_options,
- process_command, main), gcov.c (open_files, output_data), tlink.c
- (frob_extension, scan_linker_output), toplev.c
- (file_name_nondirectory): Use strchr () and strrchr () instead of
- index () and rindex ().
-
-2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (get_flag_spec, check_format_info_main,
- check_format_types): Use strchr () instead of index (). Compare
- against error_mark_node instead of comparing the TREE_CODE against
- ERROR_MARK.
-
-2000-11-02 Zack Weinberg <zackw@Stanford.EDU>
-
- Integrated CPP.
-
- * c-lex.c (init_c_lex): Update cpp_start_read call.
- (cb_ident): Update for new callback prototype.
- (cb_def_pragma): Update for new cpp_get_token prototype.
- (c_lex): Similarly. Use cpp_get_line.
-
- * c-parse.in (finish_parse): Update for new cpp_finish
- prototype.
-
- * cp/lex.c (finish_parse): Similarly.
-
-2000-11-01 Geoff Keating <geoffk@cygnus.com>
-
- * machmode.def: Add V16QImode.
-
-2000-11-01 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (loc_descriptor_from_tree): Check for null result
- from rtl_for_decl_location.
- (add_location_or_const_value_attribute): Likewise.
-
-2000-11-01 Neil Booth <neilb@earthling.net>
-
- * cpplib.c (run_directive): Use correct line number for output
- of _Pragma. Remember any in-progress directive.
-
- * gcc.dg/cpp/vararg2.c, gcc.dg/cpp/_Pragm1.c: New tests.
-
-2000-11-01 Richard Henderson <rth@redhat.com>
-
- * stmt.c (expand_start_null_loop): Set continue_label.
-
-2000-11-01 Bernd Schmidt <bernds@redhat.co.uk>
-
- * builtins.c (fold_builtin_constant_p, fold_builtin): New functions.
- (expand_builtin_constant_p): Move parts of the code into
- fold_builtin_constant_p.
- (expand_builtin_strlen): Move parts of the code into fold_builtin.
- * expr.h (fold_builtin): Declare.
- * fold-const.c (fold): Handle builtin calls.
-
- * c-typeck.c (build_function_call): Call fold on the CALL_EXPR.
-
-2000-11-01 Richard Henderson <rth@redhat.com>
-
- * stmt.c (expand_start_null_loop): New.
- (expand_end_null_loop): New.
- * c-semantics.c (genrtl_do_stmt): Use them.
- * tree.h: Declare them.
-
-2000-11-01 Richard Henderson <rth@redhat.com>
-
- * cppmain.c (scan_buffer): Don't avoid paste for assembly.
-
-2000-11-01 Neil Booth <neilb@earthling.net>
-
- * c-parse.in (_yylex): Remove CPP_BACKSLASH case.
- * cp/spew.c: Similarly.
- * cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER.
- * cppmacro.c (stringify_arg): Similarly.
- * cpplib.h (CPP_BACKSLASH): Delete.
-
-2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strstr): New function.
- (expand_builtin): Handle BUILT_IN_STRSTR and BUILT_IN_STRCHR.
-
- * builtins.def (BUILT_IN_STRSTR, BUILT_IN_STRCHR): New entries.
-
- * c-common.c (c_common_nodes_and_builtins): Declare builtin strstr
- and builtin strchr.
-
-2000-10-31 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (fcmov_comparison_operator): Check for
- CCFPmode or CCFPUmode instead of CCmode.
- (ix86_expand_fp_movcc): Call ix86_expand_setcc for most
- unordered operations as well.
-
-2000-10-31 Richard Henderson <rth@redhat.com>
-
- * c-semantics.c (genrtl_do_stmt): Use integer_zerop instead
- of integer_zero_node.
-
-2000-10-31 Richard Henderson <rth@redhat.com>
-
- * c-semantics.c (genrtl_do_stmt): Special case do/while(0).
-
-2000-10-31 Nick Clifton <nickc@redhat.com>
-
- * config/arm/unknown-elf.h (UNIQUE_SECTION_P): Do not allow
- -fdata-sections to override the section attribute of a DECL.
-
-2000-10-31 Chris Demetriou <cgd@sibyte.com>
-
- * libgcc2.c (__shtab): Remove __shtab variable.
- * libgcc-std.ver (GCC_3.0): Remove __shtab from symbol list.
- * Makefile.in (LIB2FUNCS): Remove _shtab from list of library
- members.
-
-2000-10-31 Jim Wilson <wilson@redhat.com>
-
- * defaults.h (ASM_OUTPUT_DEBUG_LABEL): New.
- * tm.texi (ASM_OUTPUT_DEBUG_LABEL): Document.
- * dwarf2out.c (dwarf2out_begin_block): Use ASM_OUTPUT_DEBUG_LABEL
- instead of ASM_OUTPUT_INTERNAL_LABEL.
- (dwarf2out_end_block, dwarf2out_label): Likewise.
- * final.c (final_scan_insn, case NOTE_INSN_DELETED_LABEL): Likewise
- * config/ia64/ia64.h (ASM_OUTPUT_DEBUG_LABEL): Define.
-
-2000-10-31 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr.
- (size_of_locs): Set it.
- (output_loc_operands): Use it to compute branch displacement.
- (int_loc_descriptor): New.
- (mem_loc_descriptor): Dereference memory in the proper size.
- Use DW_OP_plus_uconst when possible. Use int_loc_descriptor.
- (loc_descriptor_from_tree): New.
- (rtl_for_decl_location): Break out from ...
- (add_location_or_const_value_attribute): ... here.
- (add_bound_info): Use loc_descriptor_from_tree.
-
-2000-10-31 Neil Booth <neilb@earthling.net>
-
- * cpp.texi: Update for new command line assertion syntax.
- * cpplib.c (cpp_define): Simplify a bit.
- (cpp_assert, cpp_unassert): Use handle_assertion.
- (handle_assertion): New function; accept new command line
- syntax with '='.
- * testsuite/gcc.dg/cpp/assert3.c: New tests.
-
-2000-10-31 Neil Booth <neilb@earthling.net>
-
- * cppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if
- undefined. Remove #ifdef check.
- * config/i386/sol2.h, config/rs6000/sol2.h, config/sparc/sol2.h:
- Define STDC_0_IN_SYSTEM_HEADERS to 1.
-
-2000-10-31 Jan Hubicka <jh@suse.cz>
- Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.h: Clarify CCNOmode description in comment.
- (EXTRA_CC_MODES): Remove CCRCmode.
- * config/i386/i386.c (ix86_comparison_operator): Remove CCRCmode.
- (put_condition_code, ix86_match_ccmode): Likewise.
- (ix86_cc_mode): Likewise. Fix comment.
- (ix86_expand_strlensi_unroll_1): *rc patterns are gone.
- * config/i386/i386.md: Add unspec 12 description.
- (adddi3 split): Use unspec 12 instead of CCRCmode.
- (addsi3_carry_rc): Remove.
- (addsi3_cc, addqi3_cc): New patterns.
- (addsi_3): Swap operands, match CCZmode.
- (addsi_4): Rewritten.
- (addsi_5): Renamed from addsi_6.
- (addsi_6): Removed.
- (addhi_3): Swap operands, match CCZmode.
- (addhi_4): Rewritten.
- (addhi_5): Renamed from addhi_6.
- (addhi_6): Removed.
- (addqi_3): Swap operands, match CCZmode.
- (addqi_4): Rewritten.
- (addqi_5): Renamed from addqi_6. Use =q constraint for clobber.
- (subsi3_carry_rc): Removed.
- (iorqi_3): Use =q constraint for clobber.
- (xorqi_cc_2): Likewise.
- (negdi2_1 split): Don't use CCRCmode, use ltu instead of gtu.
- (x86_movsicc_0_m1_rc): Removed.
- (cmp?i peepholes): Remove neg. Use CCGCmode instead of CCRCmode.
-
-2000-10-31 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-typeck.c (build_unary_op): If pedantic, pedwarn for increment
- and decrement of complex types.
-
-2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_fputs): When deleting NOP calls to
- builtin fputs, ensure we still evaluate the stream in case it
- has side-effects.
-
-2000-10-31 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0)
- to expand_shift.
-
-Tue Oct 31 15:33:27 2000 J"orn Rennecke <amylaar@redhat.com>
-
- * sh-protos.h (reg_no_subreg_operand, emit_fpscr_use): Don't declare.
- (fp_extended_operand, emit_fpscr_use): Likewise.
- * sh.c (reg_no_subreg_operand, fp_extended_operand): Delete functions.
- (fpul_operand): New function.
- * sh.h (PREDICATE_CODES): Remove reg_no_subreg_operand and
- fp_extended_operand. Add fpul_operand.
- * sh.md (mulsf3, mulsf3_i4): Use fp_arith_reg_operand for "f" operands.
- (mulsf3_ie, macsf3, cmpgtsf_t, cmpeqsf_t, ieee_ccmpeqsf_t): Likewise.
- (cmpgtsf_t_i4, cmpeqsf_t_i4, ieee_ccmpeqsf_t_4, negsf2): Likewise.
- (negsf2_i, sqrtsf2, sqrtsf2_i, abssf2, abssf2_i, adddf3): Likewise.
- (adddf3_i, subdf3, subdf3_i, muldf3, muldf3_i, divdf3): Likewise.
- (divdf3_i): Likewise.
- (floatsisf2): Likewise. Use fpul_operand for 'y' operand.
- (floatsisf2_i4, floatsisf2_ie, fix_truncsfsi2): Likewise.
- (fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i): Likewise.
- (fix_truncdfsi2, fix_truncdfsi2_i, extendsfdf2): Likewise.
- (extendsfdf2_i4, truncdfsf2, truncdfsf2_i4): Likewise.
-
-2000-10-31 Bernd Schmidt <bernds@redhat.co.uk>
-
- * config/i386/i386.c (ix86_init_builtins): Correct return type
- building v4hi_ftype_v4hi_int_int tree node.
- (ix86_expand_builtin): Use correct operand numbers 0 and 1.
- Copy operand 0 into a Pmode register, don't generate a MEM rtx.
-
- * config/i386/i386.md (sse_movntdi): Use mmx register constraint
- for operand 1.
- (mmx__uavgv8qi3): Correct insn mnemonic.
- (mmx_psadbw): Correct insn mnemonic. Use V8QI mode for operands 1 and 2.
- (mmx_punpckhwd): Correct insn mnemonic.
- (mmx_punpckhdq): Likewise.
- (mmx_punpcklwd): Likewise.
- (mmx_punpckldq): Likewise.
- (prefetch): Use immediare_operand and 'n' constraint for operand 1.
- Renumber case labels to match the _mm_prefetch constants defined in
- xmmintrin.h.
-
- * recog.c (split_all_insns): Don't try to call cleanup_subreg_operands
- if the splitter didn't emit new insns.
- Make sure we call cleanup_subreg_operands even when splitting the last
- insn in a basic block.
-
- * invoke.texi (Debugging Options): Describe -do.
- * toplev.c (enum_dump_file_index): New entry DFI_postreload.
- (dump_file): Likewise.
- (rest_of_compilation): Split .greg dump into .greg and .postreload.
-
-2000-10-30 Neil Booth <neilb@earthling.net>
-
- * cppfiles.c (stack_include_file): Check for stacked contexts
- here.
- * cpphash.h (_cpp_do__Pragma): New prototype.
- * cppinit.c (cpp_reader_init): Add _Pragma keyword to hash table.
-
- * cpplex.c (skip_escaped_newlines): Only process trigraphs and
- escaped newlines if !(buffer->from_stage3).
- (_cpp_lex_token): Warn about missing newlines iff
- !buffer->from_stage3.
-
- * cpplib.c (get__Pragma_string, destringize,
- _cpp_do__Pragma): New functions.
- (run_directive): Set output_line for _Pragma to avoid line
- markers in output. Set from_stage3 and prevent macro expansion
- for _Pragma and command-line options. Check buffer exhaustion.
- (cpp_push_buffer): Don't check for stacked macro contexts, as
- this is perfectly legitimate for _Pragma. Move the check to
- stack_include_file instead. Set from_stage3 iff buffer is
- preprocessed input.
-
- * cpplib.h (struct cpp_buffer): Make warned_cplusplus_comments
- unsigned. New boolean from_stage3.
- (struct spec_nodes): Add n__Pragma.
-
- * cppmacro.c (enter_macro_context): Flip sense of return value.
- (_cpp_get_token): Handle _Pragma operator.
-
-2000-10-30 Phil Edwards <pme@sources.redhat.com>
-
- * gcc.texi: The C++ standard isn't "draft" anymore.
-
-2000-10-30 Mark Mitchell <mark@codesourcery.com>
-
- * cppmacro.c (builtin_macro): Use NT_VOID, not T_VOID.
-
-2000-10-29 Neil Booth <neilb@earthling.net>
-
- * cpplib.c (skip_rest_of_line): Use _cpp_get_token.
-
-2000-10-29 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * toplev.c, flags.h, fold-const.c, real.c, rtl.c,
- fixinc/inclhack.def: Change comments mentioning C9X to refer to
- C99 instead.
-
- * invoke.texi: Document that -V will only work for very similar
- versions of driver and compiler.
-
-2000-10-29 Neil Booth <neilb@earthling.net>
-
- * cppmacro.c (_cpp_create_definition): Optimize the case of
- a macro defined to itself.
-
-2000-10-29 Neil Booth <neilb@earthling.net>
-
- * cpplex.c (save_comment): Don't store new lines in C++ comments.
-
-2000-10-29 Michael Hayes <mhayes@redhat.com>
-
- * integrate.c (copy_insn_list): Copy the unchanging flag for calls.
-
-2000-10-28 Geoffrey Keating <geoffk@cygnus.com>
-
- * cpphash.c (cpp_forall_identifiers): Add context variable
- for callback routine.
- * cppmain.c (dump_macro): Update to match cpp_forall_identifiers
- change.
- (main): Call cpp_forall_identifiers with null context.
- * cpplib.h (cpp_forall_identifiers): Update prototype.
-
- * cppmain.c: Make `parse_in' and `print' static.
-
-2000-10-28 Alan Modra <alan@linuxcare.com.au>
-
- * c-decl.c (finish_function): Clear c_function_name_declared_p.
-
-2000-10-28 Richard Henderson <rth@redhat.com>
-
- * regrename.c (scan_rtx_address): Frob action, not class,
- when trying to disable optimization.
-
-2000-10-28 Mark Mitchell <mark@codesourcery.com>
-
- * c-semantics.c (make_rtl_for_local_static): Don't clobber
- DECL_ASSEMBLER_NAME.
-
-2000-10-28 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * configure.in: Determine and substitute gcc_version_full.
- * configure: Regenerate.
- * gccbug.in: Use it to give full version. Don't allow
- confidential PRs.
-
-2000-10-28 Richard Henderson <rth@redhat.com>
-
- * recog.c (split_all_insns): Run cleanup_subreg_operands
- after reload.
-
- * regrename.c (regrename_optimize): Verify that all registers of
- a multiple register mode are available.
- (scan_rtx_address): Accept the mode of the address; all callers
- changed.
-
- * cpplib.c (run_directive): Fix prototype.
-
-2000-10-28 Bernd Schmidt <bernds@redhat.co.uk>
-
- * reload.c (find_reloads): Distinguish "wins" so that we know whether
- a given operand won because of a matching constraint or not; then use
- that information to compute goal_alternative_matched properly.
- * reload1.c (choose_reload_regs): Never set reload_override_in for an
- optional reload.
-
- * config/ia64/ia64.h (RTX_COSTS): A few more entries, and a more
- accurate value for MULT.
- * config/ia64/ia64.c (ia64_print_operand): Require probability to be
- 2% or > 98% before using static branch prediction bits.
-
-2000-10-28 Neil Booth <neilb@earthling.net>
-
- New macro expander.
-
- * cpplib.c (struct answer): New.
- (struct if_stack): Use cpp_lexer_pos rather than line and col.
- Rename cmacro mi_cmacro.
- (struct directive, KANDR, STDC89, EXTENSION, COND, IF_COND, INCL,
- IN_I): New directive and flags.
- (skip_rest_of_line, check_eol, run_directive, glue_header_name,
- parse_answer, parse_assertion, find_answer): New functions.
- (parse_ifdef, detect_if_not_defined, validate_else): Remove.
- (lex_macro_node): New function to replace parse_ifdef and
- get_define_node.
-
- (_cpp_handle_directive): New function, combines _cpp_check_directive
- and _cpp_check_linemarker.
-
- (do_define, do_undef, parse_include, do_include, do_import,
- do_include_next, read_line_number, do_line, do_ident, do_pragma,
- do_pragma_once, do_pragma_poison, do_pragma_dependency):
- Update for new token getting interface.
-
- (do_ifdef, do_ifndef, do_if, do_else, do_endif, push_conditional)
- : Update for new multiple-include optimisation technique.
- (do_elif): Don't forget to invalidate controlling macros.
-
- (unwind_if_stack, cpp_defined, cpp_push_buffer, cpp_pop_buffer): Update.
- (parse_assertion, parse_answer, find_answer, _cpp_test_assertion):
- Functions to handle assertions with the new token interface.
- (do_assert, do_unassert): Use them.
-
- (cpp_define, _cpp_define_builtin, cpp_undef, cpp_assert, cpp_unassert):
- Use run_directive.
-
- (_cpp_init_stacks): Register directive names. Don't register special
- nodes.
-
- * cpperror.c (print_containing_files, _cpp_begin_message): Update to
- new position recording regime.
- (cpp_ice, cpp_fatal, cpp_error, cpp_error_with_line, cpp_warning,
- cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line,
- cpp_pedwarn_with_file_and_line): Update for _cpp_begin_message changes.
- (cpp_type2name): Move to cpplex.c.
-
- * cppexp.c (parse_charconst): spec_nodes is no longer a pointer.
- (parse_defined): Update to handle new multiple include optimisation
- method. Remove poisoned identifier warning.
- (parse_assertion, TYPE_NAME): Delete.
- (lex): Update for multiple include optimisation, removal of
- CPP_DEFINED, to use _cpp_test_assertion for assertions and
- cpp_token_as_text.
- (_cpp_parse_expr): Update for MI optimisation, and to use op_as_text.
- (op_as_text): New function, to wrap cpp_token_as_text.
-
- * cppfiles.c (stack_include_file, _cpp_pop_file_buffer):
- Update for MI optimisation.
- (_cpp_execute_include): Take a token rather than 3 arguments. Fix
- segfault on diagnostic.
- (_cpp_compare_file_date): Take a token rather than 3 args.
- (cpp_read_file): Work correctly for zero-length files.
-
- * cpphash.c (_cpp_init_macros, _cpp_cleanup_macros): Rename
- _cpp_init_hashtable and _cpp_cleanup_hashtable.
- (cpp_lookup): Place identifiers at front of identifier pool
- for _cpp_lookup_with_hash.
- (_cpp_lookup_with_hash): Require identifiers to be at the front of
- the identifier pool. Commit the memory if not already in the
- hash table.
-
- * cppinit.c (cpp_reader_init): Move cpp_init_completed test to top.
- Initialize various members of cpp_reader, memory pools, and the
- special nodes.
- (cpp_printer_init): Delete.
- (cpp_cleanup): Update.
- (struct builtin, builtin_array, initialize_builtins): Update for new
- hashnode definition and builtin handling.
- (cpp_start_read, cpp_finish): Don't take or initialize a
- printer. Update.
-
- * cpplib.h (cpp_printer, cpp_toklist, CPP_DEFINED, BOL,
- PASTED, VAR_ARGS, BEG_OF_FILE, IN_DIRECTIVE, KNOWN_DIRECTIVE,
- T_VOID, T_SPECLINE, T_DATE, T_FILE, T_BASE_FILE, T_INCLUDE_LEVEL,
- T_TIME, T_STDC, T_OPERATOR, T_POISON, T_MACRO, T_ASSERTION): Delete.
- (struct cpp_pool, struct cpp_macro, struct cpp_lexer_pos,
- struct cpp_lookahead, CPP_DHASH, enum mi_state, enum mi_ind,
- NO_EXPAND, VARARGS_FIRST, struct cpp_token_with_pos,
- struct toklist, struct cpp_context, struct specnodes,
- TOKEN_LOOKAHEAD, TOKEN_BUFFSIZE, NODE_OPERATOR, NODE_POISONED,
- NODE_BUILTIN, NODE_DIAGNOSTIC, NT_VOID, NT_MACRO, NT_ASSERTION,
- enum builtin_type, cpp_can_paste): New.
- (struct cpp_token): Delete line and col members.
- (struct cpp_buffer): New member output_lineno.
- (struct lexer_state): Delete indented, in_lex_line, seen_dot.
- Add va_args_ok, poisoned_ok, prevent_expansion, parsing_args.
- (struct cpp_reader): New members lexer_pos, macro_pos, directive_pos,
- ident_pool, temp_string_pool, macro_pool, argument_pool, string_pool,
- base_context, context, directive, mi_state, mi_if_not_defined,
- mi_lexed, mi_cmacro, mi_ind_cmacro, la_read, la_write, la_unused,
- mlstring_pos, macro_buffer, macro_buffer_len.
- Delete members mls_line, mls_column, token_list, potential_control_macro,
- temp_tokens, temp_cap, temp_alloced, temp_used, first_directive_token,
- context_cap, cur_context, no_expand_level, paste_level, contexts, args,
- save_parameter_spellings, need_newline, .
- Change type of date, time and spec_nodes members.
- Change prototypes for include and ident callbacks.
- (struct cpp_hashnode): Change type of name. Remove union members
- expansion and code. Add members macro, operator and builtin.
-
- (cpp_token_len, cpp_token_as_text, cpp_spell_token, cpp_start_read,
- cpp_finish, cpp_avoid_paste, cpp_get_token, cpp_get_line,
- cpp_get_output_line, cpp_macro_definition, cpp_start_lookahead,
- cpp_stop_lookahead): New prototypes.
- (cpp_printer_init, cpp_dump_definition): Delete prototypes.
-
- (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, ufputs):
- Move from cpphash.h.
-
- * cpphash.h (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr,
- ufputs): Move to cpplib.h.
- (enum spell_type, struct token_spelling, _cpp_token_spellings, TOKEN_SPELL,
- TOKEN_NAME, struct answer, FREE_ANSWER, KANDR, STDC89, EXTENSION,
- COND, EXPAND, INCL, COMMENTS, IN_I, struct directive, directive_handler,
- struct spec_nodes, _cpp_digraph_spellings, _cpp_free_temp_tokens,
- _cpp_init_input_buffer, _cpp_grow_token_buffer, _cpp_init_toklist,
- _cpp_clear_toklist, _cpp_expand_token_space, _cpp_expand_name_space,
- _cpp_equiv_tokens, _cpp_equiv_toklists, _cpp_process_directive,
- _cpp_run_directive, _cpp_get_line, _cpp_get_raw_token, _cpp_glue_header_name,
- _cpp_can_paste, _cpp_check_directive, _cpp_check_linemarker,
- _cpp_parse_assertion, _cpp_find_answer): Delete.
- (VALID_SIGN, ALIGN, POOL_FRONT, POOL_LIMIT, POOL_BASE, POOL_SIZE,
- POOL_USED, POOL_COMMIT, struct cpp_chunk, _cpp_lex_token, _cpp_init_pool,
- _cpp_free_pool, _cpp_pool_reserve, _cpp_pool_alloc, _cpp_next_chunk,
- _cpp_lock_pool, _cpp_unlock_pool, _cpp_test_assertion,
- _cpp_handle_directive, DSC): New.
- (struct include_file): New member defined.
-
- (DO_NOT_REREAD, _cpp_begin_message, _cpp_execute_include,
- _cpp_compare_file_date): Update.
- (_cpp_pop_context, _cpp_get_token, _cpp_free_lookaheads, _cpp_push_token): New.
- (_cpp_init_macros, _cpp_cleanup_macros): Rename to _cpp_init_hashtable,
- _cpp_cleanup_hashtable.
-
- * Makefile.in: Remove cppoutput.c.
-
- * cppoutput.c: Delete
-
- * fixheader.c (read_scan_file): Update for new cpp_get_token
- prototype.
- (recognized_function): New argument LINE.
-
- * scan-decls.c (skip_to_closing_brace, scan_decls): Update for
- new cpp_get_token prototype.
-
- * scan.h (recognized_function): Update prototype.
-
- * po/POTFILES.in: Remove cppoutput.c.
-
-2000-10-27 Mark Mitchell <mark@codesourcery.com>
-
- * c-typeck.c (check_init_type_bitfields): Remove.
- (constructor_incremental): Likewise.
- (struct constructor_stack): Remove incremental bit.
- (struct initializer_stack): Likewise.
- (start_init): Don't play with constructor_incremental.
- (finish_init): Likewise.
- (really_start_incremental_init): Likewise.
- (push_init_level): Likewise.
- (pop_init_level): Likewise.
- (output_init_level): Likewise.
- (output_pending_init_elements): Likewise.
-
-2000-10-21 Mike Coleman <mcoleman2@kc.rr.com>
-
- * c-pragma.c (handle_pragma_pack): Initialize align to -1.
- Improve error messages. Correct parsing of
- #pragma pack(pop [,id]). Do not check the user-supplied
- alignment if we're popping.
-
- * gcc.dg/pack-test-1.c: New test case.
- * gcc.dg/pack-test-2.c: New test case.
- * gcc.dg/pack-test-1.h: New file.
-
-2000-10-27 Neil Booth <neilb@earthling.net>
-
- * cpp.texi: Update.
-
-2000-10-27 Kelley Cook <kelley.cook@home.com>
-
- * invoke.texi: Document -mintel-syntax
-
-2000-10-27 Richard Henderson <rth@redhat.com>
-
- * invoke.texi: Document -frename-registers. Add it to -O3.
- * toplev.c (rest_of_compilation): Run regrename before ifcvt2.
- (enum dump_file_index, dump_file): Update order.
- (main): Set flag_rename_registers at -O3.
-
-2000-10-27 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.h (enum reg_class): Add PV_REG.
- (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update.
- (REG_CLASS_FROM_LETTER): Assign it to 'c'.
- * config/alpha/alpha.md (call_osf_1): Use it.
- (call_value_osf_1): Likewise.
-
- * config/ia64/ia64.c: Revert 10-23 patch.
- (ia64_hard_regno_rename_ok): New.
- * config/ia64/ia64-protos.h: Declare it.
- * config/ia64/ia64.h (HARD_REGNO_RENAME_OK): Use it.
-
-2000-10-27 Bernd Schmidt <bernds@redhat.co.uk>
- Richard Henderson <rth@redhat.com>
-
- * regrename.c: Rewrite to handle multi-register modes and
- cond_exec instructions.
- * Makefile.in (regrename.o): Update dependencies.
- * recog.h (struct operand_alternative): Add is_address.
- * recog.c (preprocess_constraints) [case 'p']: Set it.
-
-2000-10-27 Zack Weinberg <zack@wolery.stanford.edu>
-
- * configure.in: If not NO_MINUS_C_MINUS_O, substitute
- OUTPUT_OPTION with '-o $@'. Make zlibdir, zlibinc relative to
- top level. Kill oldstyle_subdirs. Do not include
- $srcdir/$s/Makefile.in in all_lang_makefiles, but do include
- $outputs. Do not run configure.lang from config.status.
- Rearrange warning-flag logic to correspond to what the
- makefile wants. Put special vax stage1 options in
- @stage1_flags@ not @stage1_warn_cflags@. Don't do anything
- with extra_c_objs, extra_cxx_objs, or extra_cpp_objs.
- (--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if
- switch is given, nothing otherwise.
- * configure.lang: Delete.
-
- * Makefile.in: Expunge all traces of extra_c_objs,
- extra_cxx_objs, and extra_cpp_objs. Set MAYBE_CPPLIB from
- @maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS. Set
- warning options via a three level scheme so that -pedantic and
- -Wtraditional are not used for non-C front ends: LOOSE_WARN,
- STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS ->
- WARN_CFLAGS. Distinguish STAGE1_CFLAGS from BOOT_CFLAGS.
- Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES.
- Set OUTPUT_OPTION, ZLIB, ZLIBINC. Do not set P,
- LANG_FLAGS_TO_PASS. Add OUTPUT_OPTION to all object-file
- generation rules. Wrap all rules that change the current
- directory in parentheses; pmake doesn't spawn a new shell for
- each command. Expunge all references to $(P). When one
- command depends on another and they're run all at once, use &&
- to separate them, not ;. Add libgcc_s$(SHLIB_EXT) to files
- deleted on make clean. Force OUTPUT_OPTION='-o $@' in stage2
- and beyond.
-
- * objc/Make-lang.in: Wrap all rules that change the current
- directory in parentheses. Expunge all references to $(P).
- When one command depends on another and they're run all at
- once, use && to separate them, not ;. Add OUTPUT_OPTION to
- all object-file generation rules. Delete obsolete variables.
- * objc/Makefile.in: Delete.
-
-2000-10-27 Jakub Jelinek <jakub@redhat.com>
-
- * calls.c (expand_call): If sibcall_failure is set during pass 1,
- clear tail_call_insns as well.
-
-2000-10-27 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm-protos.h (arm_function_ok_for_sibcall): Add
- prototype.
-
-2000-10-26 Richard Henderson <rth@redhat.com>
-
- * calls.c (expand_call): Supress sibcall if we have a
- BLKmode return in registers.
-
-2000-10-26 Bernd Schmidt <bernds@redhat.co.uk>
-
- * ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants
- into memory.
-
-2000-10-26 Nathan Sidwell <nathan@codesourcery.com>
-
- * tree.c (make_node, case 't'): Set alignment to that of
- char_type_node.
- * expr.c (move_by_pieces_ninsns): Abort if some length remains.
-
-2000-10-25 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (site.exp): Define HAVE_LIBSTDCXX_V3.
- * configure.in (enable-libstdcxx-v3): Arrange to have
- HAVE_LIBSTDCXX_V3 substituted into the output files.
-
-2000-10-25 Richard Henderson <rth@redhat.com>
-
- * recog.c (constrain_operands): Initialize which_alternative
- before no alternatives early exit.
-
- * cse.c (find_comparison_args): Check that we can reverse a
- comparison if needed before accepting the substitution.
-
- * reload.c (find_reloads_address_part): Kill rtx obstack hackery.
-
- * simplify-rtx.c (simplify_relational_operation): Sign extend
- low words before sign extending to high words.
-
-2000-10-25 Nick Clifton <nickc@redhat.com>
-
- * config/mcore/mcore.c: Include config.h before system.h.
-
-2000-10-25 Ray Essick <essick@ddna.labs.mot.com>
-
- * config/mcore/mcore.md (return): Force function epilogue to
- always be generated to work around epilogue suppression bug in
- M*Core backend.
-
-2000-10-25 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (grokdeclarator): Move warning for qualified void
- return types with -pedantic to when the function type is
- constructed. At -W, warn in general for qualified function return
- types, except for volatile void.
- * invoke.texi: Document this new warning at -W.
-
-2000-10-25 Neil Booth <neilb@earthling.net>
-
- * cpp.texi: Update with implementation-defined behavior and
- internal limits.
-
-2000-10-25 Jakub Jelinek <jakub@redhat.com>
-
- * stor-layout.c (layout_type): If TYPE_ALIAS_SET was already set on the
- incomplete type force it into alias set 0.
-
-Wed Oct 25 01:02:44 EDT 2000 John Wehle (john@feith.com)
-
- * alias.c: Include basic-block.h.
- (loop_p): New function.
- (mark_constant_function): Use it.
- * Makefile.in (alias.o): Update dependencies.
-
-2000-10-24 Aldy Hernandez <aldyh@redhat.com>
-
- * config/mn10300/mn10300.c (secondary_reload_class): Treat pseudos
- like memory.
-
-2000-10-24 Jim Wilson <wilson@cygnus.com>
-
- * expmed.c (store_bit_field): Move integer pun code down after
- code that calls emit_move_insn for entire register move.
- * stor-layout.c (compute_record_mode): Revert Mar 25, Aug 18, and
- Oct 20 changes. Only store mode in TYPE_MODE if RECORD_TYPE.
-
-2000-10-24 Richard Henderson <rth@cygnus.com>
-
- * rtlanal.c (rtx_unstable_p, rtx_varies_p): Don't consider pic
- register stable if PIC_OFFSET_TABLE_REG_CALL_CLOBBERED.
-
-2000-10-24 Aldy Hernandez <aldyh@redhat.com>
-
- * gcse.c (cprop_insn): do not propagate constants into jump_insn
- for machines with CC0 more than once.
-
-2000-10-24 Richard Henderson <rth@cygnus.com>, Aldy <aldyh@cygnus.com>
-
- * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS): Treat
- pseudos just like memory.
-
-2000-10-24 Alexandre Oliva <aoliva@redhat.com>
-
- * combine.c (distribute_notes): Discard REG_LIBCALL and REG_RETVAL
- when deleting libcall sequence collapsed to a single instruction.
-
-2000-10-24 Andrew Haley <aph@cygnus.co.uk>
-
- * expr.c (do_store_flag): Don't crash if either side of a
- comparison is error_mark_node.
-
-2000-10-24 Jakub Jelinek <jakub@redhat.com>
-
- * sibcall.c (purge_mem_unchanging_flag): New function.
- (optimize_sibling_and_tail_recursive_calls): Call it.
-
-2000-10-24 Philipp Thomas <pthomas@suse.de>
-
- * Makefile.in (check-po): New target for doing checks in the po
- subdir if all languages configured.
- (CHECK_TARGETS): Add @CHECK_PO@, replaced with check-po via
- configure if NLS is enabled.
- * configure.in: If NLS is enabled, substitute CHECK_PO by check-po,
- otherwise leave empty.
- * configure: Regenerate.
-
-2000-10-23 Diego Novillo <dnovillo@cygnus.com>
-
- * i386.c (print_operand): Handle new 'A' formatting code.
- 387 opcodes need suffixes even with -mintel-syntax.
- Check for explicit size override (codes 'b', 'w' and 'k').
- (print_operand_address): Check if register prefix is needed when
- emitting `ds' segment override.
- * i386.h: Add comment about new 'A' formatting code.
- * i386.md (jump and call patterns): Emit absolute references using %A.
-
-2000-10-23 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (ia64_expand_prologue): Mark extra
- output registers as fixed.
- (ia64_function_epilogue): Undo output fixation.
-
-2000-10-23 Richard Henderson <rth@cygnus.com>
-
- * config/alpha/alpha.md: Add names for all unnamed insns; use
- define_insn_and_split in some obvious places.
- (lda): Remove.
- (zero_extendqihi2): Use an expander w/ nonimmediate_operand for BWX.
- (zero_extendqisi2, zero_extendqidi2): Likewise.
- (zero_extendhisi2, zero_extendhidi2): Likewise.
- (abs splitters): Fix match_scratch operand number.
- (bcc_reverse): Swap pc & label instead of non-canonical compare.
-
-2000-10-23 Jim Wilson <wilson@cygnus.com>
-
- * ia64.c (ia64_print_operand, case 'r'): Correct comment. Handle
- CONST_INT.
- * ia64.md (cmpsi_adjusted): Use %r3.
- (cmpdi_adjusted): Likewise.
-
-2000-10-23 Diego Novillo <dnovillo@cygnus.com>
-
- * config/i386/att.h (ASM_FILE_START): Define.
-
-2000-10-23 Diego Novillo <dnovillo@cygnus.com>
-
- * config/i386/linux.h (ASM_FILE_START): Define.
-
-Wed Oct 18 11:16:40 2000 Donald Lindsay <dlindsay@cygnus.com>
-
- * gcc/configure.in: m68k-coff tm_file should not have libgloss.h,
- since this (only) drags in a crt0.o reference that the .ld files
- also introduce.
-
-2000-10-23 Geoff Keating <geoffk@cygnus.com>
-
- * reload1.c (reload_reg_reaches_end_p): A RELOAD_OTHER can
- overwrite the value in a RELOAD_FOR_INPUT and other kinds of
- reloads just like an RELOAD_FOR_OUTPUT would.
-
- * local-alloc.c (update_equiv_regs): Add an abort(). When
- deleting or moving insns, update reg_equiv[regno].init_insns.
-
-2000-10-23 Mark Mitchell <mark@codesourcery.com>
-
- * c-tree.texi: Improve documentation for IF_STMTs and related
- conditional statements.
-
-2000-10-22 Mark Mitchell <mark@codesourcery.com>
-
- * expr.c (do_preexpand_calls): Remove.
- (same_from_p): Don't use CALL_EXPR_RTL.
- (expand_expr): Don't call preexpand_calls, or use CALL_EXPR_RTL.
- (preexpand_calls): Remove.
- * tree.c (first_rtl_op): Remove CALL_EXPR case.
- (unsave_expr_1): Likewise.
- * tree.def (CALL_EXPR): Give it only two slots.
- * tree.h (CALL_EXPR_RTL): Remove.
-
-2000-10-21 Chandrakala Chavva <cchavva@redhat.com>
-
- * libgcc-std.ver (__addvsi3, __addvdi3, __subvsi3, __subvdi3,
- __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3):
- New functions.
-
-2000-10-22 Alexandre Oliva <aoliva@redhat.com>
-
- * calls.c (combine_pending_stack_adjustment_and_call): Don't
- adjust stack when unadjusted_alignment ends up as zero.
-
-2000-10-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * fixinc/genfixes: Remove EGCS reference.
- * install.texi: Remove EGCS reference.
- * INSTALL: Regenerate.
-
-2000-10-22 Mark Mitchell <mark@codesourcery.com>
-
- * tree.h (TYPE_IS_SIZETYPE): Add more documentation.
-
-2000-10-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * diagnostic.c: Remove EGCS reference in comment.
-
-Sat Oct 21 08:24:25 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * loop.c (strength_reduce): Fix error in last change.
-
-2000-10-20 David Edelsohn <edelsohn@gnu.org>
-
- * Makefile.in (SHLIB_NM_FLAGS): New.
- (libgcc.mk): Pass it.
- * mklibgcc.in (libgcc.map): Use it.
-
- * rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_LIBS,
- SHLIB_MKMAP, SHLIB_MAPFILES, SHLIB_NM_FLAGS): New.
-
-2000-10-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.h (REG_CLASS_FROM_LETTER): Cast array arg to unsigned char.
-
- * sparc.c (load_pic_register): Delete unused varaible.
-
- * libgcc2.c (__addvsi3): Delete unused variable.
-
- * libgcc2.h (__absvsi2, __absvdi2, __addvsi3, __addvdi3,
- __subvsi3, __subvdi3, __mulvsi3, __mulvdi3, __negvsi2,
- __negvdi2): Prototype.
-
- * ssa.c (apply_delayed_renames): Avoid undefined operation.
-
- * toplev.c (display_target_options): Make static to match
- prototype. Delete empty declaration.
-
-2000-10-20 Tom Tromey <tromey@cygnus.com>
-
- * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT.
- * gcc.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT.
-
-Fri Oct 20 17:05:49 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case SAVE_EXPR): Set RTX_UNCHANGING_P on
- returned MEM.
- (expand_expr_unaligned, case ARRAY_REF): Check that index is
- a constant before comparing it; use tree_low_cst.
- * tree.c (save_expr): Set TREE_READONLY.
- (substitute_expr): Return inside of NON_LVALUE_EXPR.
- (build, build1): Set TREE_READONLY if all operands are.
- (build_index_type): If upper bound is a negative number, lower
- bound is zero and sizetype is unsigned, use upper bound of one and
- lower of zero.
-
-2000-10-20 David Edelsohn <edelsohn@gnu.org>
-
- * gcc.c (process_command, main): Use "because" instead of
- "since" in error messages.
-
-Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * stor-layout.c (compute_record_mode): Use tree_low_cst.
- Don't use mode of field for record unless sizes are the same.
- (layout_type, case ARRAY_TYPE): Remove special bounds handling
- previously added for Ada; also change to using host_integerp
- and tree_low_cst.
-
- * loop.c (strength_reduce): Show when new register made for
- giv is known to be a pointer and its aligment if so and known.
- (loop_dump_aux): Show VERBOSE parameter unused.
-
- * gcse.c (set_hash_table_size): Now unsigned.
- * sdbout.c (template_name_p): Add "const" to avoid warnings.
- (sdbout_record_type_name, plain_type_1, sdbout_symbol): Likewise.
- (sdbout_one_type, sdbout_parms, sdbout_reg_parms): Likewise.
- (sdbout_end_epilogue): Remove variable NAME.
- * system.h (getopt): Add default definition.
- * config/alpha/alpha.c (print_operand): Don't continue processing
- after issuing error.
- (summarize_insn): Avoid use of UL in constant.
-
- * function.c (locate_and_pad_parm): Use host_integerp and tree_low_cst.
-
- * fold-const.c (force_fit_type): Unsigned values can overflow
- if they are sizetype.
- (int_const_binop): Don't use cache if overflows.
-
-2000-10-20 Richard Henderson <rth@cygnus.com>
-
- * function.c (locate_and_pad_parm): Zero alignment_pad.
-
- * regrename.c (rr_replace_reg): Rewrite to use recog_data to
- perform substitutions, and apply_change_group to see if it worked.
-
-Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * dwarf2out.c (add_bound_info): Also ignore COND_EXPR.
-
- * combine.c (struct undo): Change int to unsigned int.
- (do_SUBST_INT): Args are unsigned int.
- (make_extraction, force_to_mode): Use proper type when forming mask.
- (make_field_assignment): Likewise.
-
-2000-10-20 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_info_recurse): Extract string constant
- initializers from non-volatile constant arrays and check them as
- formats.
- * c-typeck.c (decl_constant_value): Don't check pedantic or check
- for DECL_MODE (decl) != BLKmode.
- (decl_constant_value_for_broken_optimization): New function which
- includes these checks.
- (default_conversion, convert_for_assignment, digest_init): Use
- decl_constant_value_for_broken_optimization instead of
- decl_constant_value.
-
-2000-10-20 Mark Mitchell <mark@codesourcery.com>
-
- * tree.h (DECL_ALIGN_UNIT): New macro.
-
-2000-10-14 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr-protos.h (avr_output_bld): New.
- (out_shift_with_cnt): Add t_len argument.
- * config/avr/avr.c (avr_num_arg_regs): Remove -mpack-args.
- (output_movqi, output_movhi, output_movsisf): Optimize loading
- any constant with exactly one bit set to NO_LD_REGS.
- (out_shift_with_cnt): Optimize output code for size or speed,
- depending on optimize_size. Handle small shift counts as well
- (if not hand-optimized in ?sh??i3_out). Shifts can be done
- with or without a scratch register, with help of __tmp_reg__
- or __zero_reg__ if necessary. Add T_LEN argument to pass the
- length of TEMPLATE in words, return total insn length in *LEN.
- (ashlqi3_out, ashrqi3_out, lshrqi3_out): Change all calls to
- out_shift_with_cnt to work with the above change.
- (ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, lshrhi3_out,
- lshrsi3_out): Likewise. Optimize more known shift count cases.
- Remove cases already well optimized in out_shift_with_cnt.
- (avr_output_bld): New function.
- * config/avr/avr.h (MASK_PACK_ARGS, TARGET_PACK_ARGS): Remove.
- (TARGET_SWITCHES): Remove -mpack-args backward compatibility.
- * config/avr/avr.md (*reload_inqi, *reload_inhi, *reload_insi):
- Add reload_completed to insn condition - only for peepholes.
- (ashlqi3, ashrqi3, lshrqi3): Correct insn length for shift counts
- in a register or memory.
- (ashlhi3, ashlsi3, ashrhi3, ashrsi3, lshrhi3, lshrsi3): Likewise.
- Do not require a scratch register.
- (*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const,
- *lshrhi3_const, *lshrsi3_const): New insns and matching peepholes.
- Optimize shifts by known count using a scratch register, but only
- if one is still available after register allocation.
-
-2000-10-20 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * t-vax: New file. Don't build modules from libgcc1.c.
-
-Fri Oct 20 00:57:00 EDT 2000 John Wehle (john@feith.com)
-
- * alias.c: (mark_constant_function): Don't check pure functions.
- Initialize and end alias analysis.
- (nonlocal_mentioned_p): Rename from nonlocal_reference_p.
- Don't make a special exception for recursion. Handle
- UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local
- unless it's volatile.
-
- * local-alloc.c (equivalence): New structure.
- (reg_equiv): Define.
- (contains_replace_regs): Remove array and use
- field in reg_equiv.
- (memref_referenced_p): Likewise.
- (no_equiv): Likewise.
- (update_equiv_regs): Likewise.
-
- (equiv_init_varies_p,
- equiv_init_movable_p): New functions.
- (update_equiv_regs): Use them. Use rtx_varies_p
- instead of function_invariant_p. Process insns
- from end to beginning. Allow a REG_EQUIV insn
- within the same loop as a use to be moved, also
- allow it to be moved out of a loop. Update
- REG_DEAD notes when substituting into an insn.
-
-2000-10-19 Jim Wilson <wilson@cygnus.com>
-
- * c-decl.c (start_decl): Check for error_mark_node type before using
- COMPLETE_TYPE_P.
- (finish_decl): Likewise. Don't give an error if decl type is
- already error_mark_node.
-
- * haifa-sched.c (compute_trg_info): Add explanatory comments.
- New local update_blocks. Use update_blocks to remove duplicates
- when computing update blocks. Check for bblst_table overflow.
- (schedule_block): Add explanatory comment. Reduce bblst_size by
- factor of 2.
- * config/ia64/ia64.md (movdi_symbolic): Document loss of REG_LABEL
- notes.
-
-2000-10-19 Chandrakala Chavva <cchavva@redhat.com>
-
- * libgcc2.c (_mulvsi3): Change variables u and v to a and b.
-
-2000-10-19 Chandrakala Chavva <cchavva@redhat.com>
-
- * expmed.c: Minor corrections in comments.
- * invoke.texi: Added desciption for the new option -ftrapv.
-
-2000-10-19 Chandrakala Chavva <cchavva@redhat.com>
-
- * libgcc2.c: Added the missing #endif.
-
-Thu Oct 19 14:25:11 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.h (CONST_OK_FOR_LETTER): Re-add 'N'; document.
-
-2000-10-18 Chandrakala Chavva <cchavva@redhat.com>
-
- * expmed.c (expand_mult): Don't do synth_mult optimization for -ftrapv.
- Use smulv_optab for -ftrapv.
- (expand_mult_highpart): Use unsigned multiply.
- (expand_divmod): Special-case division by -1.
- For EXACT_DIV_EXPR, do right shift first, then the multiply.
- For complex divide, use abs with unsigned result.
- * expr.c (force_operand): Use unsigned multiply.
- (expand_expr): Use overflow-trapping optabs for signed types if
- flag_trapv.
- If flag_trapv, don't generate a recursive call with EXPAND_SUM
- if the type is signed and the original call wasn't EXPAND_SUM or
- EXPAND_INITIALIZER.
- * expr.h (addv_optab, subv_optab, smulv_optab, sdivv_optab): Declare.
- (negv_optab, absv_optab): Declare.
- * flags.h (flag_trapv): Declare.
- * genopinit.c (optabs): Add entries for addv_optab, subv_optab,
- smulv_optab, sdivv_optab, negv_optab and absv_optab.
- (gen_insn): Interpret '$P' as requiring an integer mode,
- including partial integer modes.
- * loop.c (emit_iv_add_mult): Use unsigned expand_mult_add.
- (product_cheap_p): Use unsigned expand_mult.
- * optabs.c (addv_optab, subv_optab, smulv_optab, sdivv_optab): Define.
- (negv_optab, absv_optab): Define.
- (expand_binop): Use overflow-trapping optabs for signed types if
- flag_trapv.
- Handle negv_optab libe neg_optab.
- (expand_abs): Take result_unsignedp argument instead of unsignedp one.
- Use overflow-trapping optabs for signed result if flag_trapv.
- (expand_complex_abs): Use overflow-trapping optabs for signed types if
- flag_trapv.
- Don't open-code complex absolute-value operation for flag_trapv.
- (init_optabs): Initialize addv_optab, subv_optab, smulv_optab,
- sdivv_optab, negv_optab and absv_optab.
- * toplev.c (flag_trapv): Define.
- (lang_independent_options f_options): Include flag_trapv.
- * tree.h (TYPE_TRAP_SIGNED): Define.
- * libgcc2.c (__addvsi3, __addvdi3, __subvsi3,__subvsi3, __subvdi3,
- __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3):
- New functions.
- * Makefile.in: add _absvsi2 _absvdi2 _addvsi3 _addvdi3 _subvsi3
- _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2.
-
-2000-10-18 Geoffrey Keating <geoffk@cygnus.com>
- David V. Henkel-Wallace <gumby@cygnus.com>
-
- * config/i386/t-netware: Bring in from the Red Hat tree.
- * config/i386/netware.h: Likewise.
- * config/netware.h: Likewise.
- * config/rs6000/netware.h: Delete.
- * configure.in: Add i[34567]86-*-netware.
- * configure: Hand-edit to match configure.in change.
-
-2000-10-18 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (flag_no_builtin): Declare.
- (flag_no_nonansi_builtin): Likewise.
- (c_common_nodes_and_builtins): Change prototype.
- * c-common.c (flag_no_builtin): New variable.
- (flag_no_nonansi_builtin): Likewise.
- (c_common_nodes_and_builtins): Remove parameters. Adjust
- accordingly.
- * c-decl.c (flag_no_builtin): Remove.
- (flag_no_nonansi_builtin): Likewise.
- (init_decl_processing): Adjust call to
- c_common_nodes_and_builtins.
-
-2000-10-18 Marc Espie <espie@openbsd.org>
-
- * tm.texi (LIBGCC_SPEC): Synch with reality.
-
-2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_types): Check for writing through a
- NULL pointer argument.
-
-2000-10-18 Hans-Peter Nilsson <hp@axis.com>
-
- * tm.texi (Exception Region Output): Document
- DWARF_CIE_DATA_ALIGNMENT.
- * dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Wrap definition in
- #ifndef.
- [ENABLE_CHECKING] (reg_save): Abort if offset is not a multiple of
- DWARF_CIE_DATA_ALIGNMENT.
-
-2000-10-18 Michael Hayes <mhayes@cygnus.com>
-
- * basic-block.h (struct loop): Delete fields pre_header_root
- and pre_header_trace and replace with pre_header_edges
- and num_pre_header_edges.
- * flow.c (flow_loop_dump): Dump pre_header_edges.
- (flow_loops_free): Free pre_header_edges.
- (flow_loop_pre_header_scan): Calculate pre_header_edges.
-
-2000-10-18 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * contrib.texi: Update references to steering committee members
- and Jeff Law's entry.
-
-2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (CPLUSPLUS_STD_VER, C_STD_VER, C_STD_NAME): Define.
- (maybe_read_dollar_number, check_format_info_main): Use them for
- pedantic warning messages.
-
-2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_info_main): Minor cleanup: move
- variables into inner scopes; initialize declarations where
- appropriate; don't hardcode "scanf" name on warning for zero
- width.
-
-2000-10-17 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.c (back_end_hook): New variable.
- * c-common.h (back_end_hook): Declare it.
- * c-lang.c (finish_file): Use it.
-
- * emit-rtl.c (init_emit_once): Initialize the const_int_htab
- earlier.
-
-2000-10-18 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_comparison_operator, put_condition_code,
- ix86_match_ccmode, ix86_cc_mode): Handle CCRCmode.
- (ix86_expand_strlensi_unroll_1): Use CCRCmode.
- * i386.h (EXTRA_CC_MODES): Add CCRCmode.
- * i386.md (adddi and negdi splitter): Use CCRCmode.
- (add?i_3, add?i_4, add?i_5): Use CCRCmode; swap operands
- (subsi3_carry): add '*'
- (addsi3_carry_rc, subsi3_carry_rc, x86_movsicc_0_m1_rc): New.
- (cmp to add peep2): Use CCRCmode; swap operands.
-
-2000-10-18 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c: Fix a comment typo.
- (round_frame_size): New.
- (compute_saved_regs): Likewise.
- (push): Likewise.
- (pop): Likewise.
- (push_order): Remove.
- (pop_order): Likewise.
- (function_prologue): Rearrange code for readability.
- (function_epilogue): Likewise.
-
- * config/h8300/h8300.md: Remove an unnecessary sign_extend
- expander that is used when not optimizing. Output a tab after
- each assembly insns.
-
- * reorg.c: Fix formatting.
-
-2000-10-17 Joern Rennecke <amylaar@redhat.co.uk>
-
- * reload1.c (move2add_note_store): Check for simple
- auto-inc in destination.
-
-2000-10-17 Michael Chastain <chastain@redhat.com>
-
- * config/i386/i386-aout.h: define INT_ASM_OP.
-
-Tue Oct 17 20:11:08 2000 Alan Modra <alan@linuxcare.com.au>
-
- * pa.c (print_operand): Handle case 'c' for .vtable_inherit
-
-Tue Oct 17 20:05:51 2000 Martin Buchholz <martin@xemacs.org>
-
- * i370.md: Fix spelling typo.
-
-2000-10-17 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * function.c (locate_and_pad_parm): Don't align stack unconditionally.
- Fixes execute/20001017-1.c on powerpc-linux-gnu.
-
- * expr.c (store_constructor): Apply MEM_ALIAS_SET to MEMs only.
- * rs6000/rs6000.c (rs6000_hash_constant): Use X0INT to access a
- LABEL_REF.
-
- * rs6000/rs6000.h (NO_DOLLAR_IN_LABEL, DOLLARS_IN_IDENTIFIERS,
- ENCODE_SECTION_INFO, ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Move from
- here...
- * rs6000/aix.h: ...to here.
- * rs6000/linux.h (ASM_APP_ON, ASM_APP_OFF): Define to Linux-style.
-
-2000-10-17 Jakub Jelinek <jakub@redhat.com>
-
- * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Reload gp if needed.
-
- * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Always use call, make
- sure linker can relax even the delay slot mov %g1,%o7, fix output
- formating.
-
-2000-10-17 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.md: Remove an unnecessary zero_extend
- expander that is used when not optimizing. Output a tab after
- each assembly insns.
-
-2000-10-17 Chandrakala Chavva <cchavva@redhat.com>
-
- * gcc.c: New options --target-help.
- (process_command): Added code to parse this new option.
- * toplev.c (display_target_options): New function to support the
- above new option.
- * cppinit.c (new_pending_directive) : New option OPT_target__help.
- (cpp_handle_option): Support this new option.
- * invoke.texi: Added notes about --target-help option.
-
-2000-10-17 Graham Stott <grahams@redhat.com>
-
- * config/i386/i386.md (testqi_1): Add missing operand prefix
- for operand 0.
- * config/i386/i386-protos.h: Add missing prototype.
-
-2000-10-17 Diego Novillo <dnovillo@cygnus.com>
-
- * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Symbol
- _GLOBAL_OFFSET_TABLE should not have a $ prefix when
- using -mintel-syntax.
-
-2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (FMT_FLAG_DOLLAR_MULTIPLE): Define.
- (format_types): Use it for printf.
- (maybe_read_dollar_number): Add parameter for the kind of format
- involved. Warn for multiple use for arguments if this is
- inappropriate for the kind of format involved.
- (check_format_info_main): Update calls to maybe_read_dollar_number.
-
-2000-10-17 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * inclhack.def (hpux_maxint): Also apply fix to values.h.
- * fixincl.x: Rebuilt.
-
-2000-10-17 Alexandre Oliva <aoliva@redhat.com>
-
- * genrecog.c (write_switch): Return the first condition that needs a
- label.
-
-2000-10-17 Bernd Schmidt <bernds@redhat.co.uk>
-
- * c-tree.h (warn_sequence_point): Move declaration to...
- * c-common.h (warn_sequence_point): ... here.
- * c-decl.c (warn_sequence_point): Move definition to...
- * c-common.c (warn_sequence_point): ... here.
- (struct reverse_tree): New.
- (reverse_list, reverse_max_depth): New static variables.
- (build_reverse_tree, common_ancestor, modify_ok
- verify_sequence_points): New functions.
- (c_expand_expr_stmt): Call verify_sequence_points if -Wsequence-point.
- * c-typeck.c (check_modify_expr): Delete.
- (build_modify_expr): Don't call it.
-
-2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.h (warn_missing_format_attribute): New variable.
- * c-decl.c (warn_missing_format_attribute): New variable.
- (c_decode_option): Decode -Wmissing-format-attribute and
- -Wno-missing-format-attribute.
- * c-common.c (check_function_format): If
- -Wmissing-format-attribute, give a warning where a vprintf or
- vscanf function is called by a function without its own printf or
- scanf attribute.
- * toplev.c (documented_lang_options): Add
- -Wmissing-format-attribute.
- * invoke.texi: Document -Wmissing-format-attribute.
-
-2000-10-17 Marc Espie <espie@openbsd.org>
-
- * invoke.texi (-shared): Insist on requiring code generation flags
- to be used along with -shared, and document the subtle failure that
- may occur otherwise.
-
-2000-10-16 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (return_internal): Move `use' after `return'.
-
-2000-10-16 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
-
- * machmode.def: Correct comment.
-
-2000-10-16 Rodney Brown <RodneyBrown@mynd.com>
-
- * print-rtl.c (print_rtx_head): Constify.
- * rtl.h (print_rtx_head): Similarly.
-
- * config/pa/pa/pa-protos.h (output_64bit_and, output_64bit_ior):
- Constify char * return value.
- * config/pa/pa/pa.c
- (output_64bit_and, output_64bit_ior): Constify char * return value.
- (pa_can_combine_p): Make static.
- (function_arg): Decorate unused `named' argument. Fix comment typo.
- (function_arg_partial_nregs): Decorate unused `named' argument.
-
-2000-10-16 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (format_check_results): New structure.
- (finish_dollar_format_checking): Adjust to take a
- format_check_results * parameter.
- (check_format_info, check_format_info_recurse,
- check_format_info_main): Split check_format_info into three
- functions, the main checking going in check_format_info_main.
- Recurse when any reduction of the format string argument towards a
- string literal is done; go down both branches of a conditional
- expression. Don't warn for extra format arguments or empty format
- strings if they only occur in some branches of a conditional
- expression.
-
-2000-10-16 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.c: Remove obstack. Include ggc.h.
-
-2000-10-16 Jakub Jelinek <jakub@redhat.com>
-
- * rtlanal.c (may_trap_p): Check operand modes of COMPARE.
-
-2000-10-15 Diego Novillo <dnovillo@cygnus.com>
-
- * i386.md (*movsi_or): Switch operand order for intel syntax.
-
-2000-10-14 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * PROBLEMS: Remove.
-
- * gcc.texi (Contributing): Update.
-
-2000-10-13 Diego Novillo <dnovillo@cygnus.com>
-
- * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Output final jump using
- appropriate assembler dialect.
-
-2000-10-13 Alexandre Oliva <aoliva@redhat.com>
-
- * c-common.c (c_expand_builtin): PARAMS-ize prototype.
-
-2000-10-12 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (output_movhi, output_movsisf): Fix loading
- constants 1 and 2 to NO_LD_REGS.
-
-2000-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (c-parse.c, tradcif.c): Create atomically.
-
- * objc/Make-lang.in (objc-parse.c): Likewise.
-
-2000-10-13 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c: Include obstack.h
- (minipool_obstack, minipool_startobj): Define.
- (arm_add_gc_roots): Initialize them.
- (create_fix_barrier): Use our new obstack.
- (push_minipool_barrier, push_minipool_fix): Likewise.
- (arm_reorg): Release obstack memory.
-
-2000-10-13 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.md (nonlocal_goto_receiver): Remove.
- (prologue, exception_receiver, builtin_setjmp_receiver): New
- patterns.
- * config/sparc/sparc.h (FINALIZE_PIC): Remove.
- * config/sparc/sparc-protos.h (finalize_pic): Remove.
- (load_pic_register): New prototype.
- * config/sparc/sparc.c (pic_setup_code): Remove.
- (finalize_pic): Rename to...
- (load_pic_register): ...this function.
- Don't look for nonlocal_goto_receivers and emit pic setup code
- directly. Don't check current_function_uses_pic_offset_table.
-
-2000-10-13 Richard Earnshaw <rearnsha@arm.com>
-
- * tree.h (struct obstack): Declare.
-
-2000-10-12 Mark Mitchell <mark@codesourcery.com>
-
- Remove obstacks.
- * Makefile.in (ggc-callbacks.o): Remove target.
- (flow.o): Depend on GGC_H.
- * alias.c (init_alias_analysis):
- Remove ggc_p conditionals.
- (end_alias_analysis): Likewise.
- * basic-block.h (init_flow): New function.
- (allocate_reg_life_data): Declare.
- * bb-reorder.c (function_obstack): Replace with ...
- (flow_obstack): ... new variable.
- (fixup_reorder_chain): Use it.
- * c-decl.c (ggc_p): Remove.
- (caller-save.c): Don't call oballoc/obfree.
- * combine.c (struct
- undobuf): Remove storage.
- (try_combine): Don't call oballoc.
- (undo_all): Don't call obfree.
- * cse.c (insert): Use xmalloc, not
- oballoc.
- (cse_main): Adjust accordingly.
- * dwarf2out.c (save_rtx): Remove
- obstack code.
- (dwarf2out_init): Remove ggc_p conditionals.
- * emit-rtl.c (rtl_obstack): Remove.
- (gen_rtx_CONST_INT): Remove ggc_p conditionals.
- (make_insn_raw): Likewise.
- (emit_insn_before): Likewise.
- (emit_insn_after): Likewise.
- (emit_insn): Likewise.
- (gen_sequence): Likewise.
- (copy_insn_1): Remove handling of `b' RTL components.
- (init_emit_once): Remove ggc_p conditionals.
- * except.c (create_rethrow_ref): Don't fool with obstacks.
- (add_partial_entry): Likewise.
- (call_get_eh_context): Likewise.
- (begin_protect_partials): Likewise.
- (protect_with_terminate): Likewise.
- * explow.c
- (plus_constant_wide): Likewise.
- * expr.c (init_expr_once):
- Likewise.
- (emit_block_move): Likewise.
- (clear_storage): Likewise.
- (expand_expr): Likewise.
- * flow.c (function_obstack): Remove.
- (flow_obstack): New variable.
- (flow_firstobj): Likewise.
- (create_base_block): Use the flow_obstack.
- (split_block): Likewise.
- (split_edge): Likewise.
- (calculate_global_regs_live): Likewise.
- (allocate_bb_life_data): Make it static. Likewiwse.
- (init_flow): New function.
- (size_int_type_wide): Remove ggc_p conditionals.
- * function.c
- (push_function_context_to): Don't call save_tree_status.
- (pop_function_context_from): Or restore_tree_status.
- (assign_stack_local_1): Don't call push_obstacks.
- (find_fixup_replacement): Use xmalloc.
- (fixup_var_refs_insns): Free the storage.
- (insns_for_mem_walk): Don't mess with obstacks.
- (instantiate_decls): Likewise.
- (trampoline_address): Likewise.
- (expand_function_end): Likewise.
- * function.h (sturct function):
- Remove obstack-related variables.
- (save_tree_status): Don't declare.
- (restore_tree_status): Likewise.
- * gcse.c (compute_can_copy):
- Don't call oballoc/obfree.
- * genattrtab.c (operate_exp): Remove
- ggc_p conditionals.
- (simplify_cond): Likewise.
- (simplify_test_exp): Don't mess with obstacks.
- (optimize_attrs): Likewise.
- * gengenrtl.c (gendef): Don't include
- ggc_p conditionals.
- * ggc-callbacks.c (ggc_p): Remove.
- * ggc-none.c (ggc_p): Remove.
- * ggc.h (ggc_p): Don't declare.
- * integrate.c (save_for_inline): Don't mess with obstacks.
- (integrate_decl_tree): Likewise.
- (output_inline_function): Likewise.
- * lists.c
- (init_EXPR_INSN_LIST_cache): Likewise.
- * loop.c (temp_obstack):
- Remove.
- (rtl_obstack): Likewise.
- (init_loop): Don't mess with obstacks.
- (reg_address_cost): Free BIVs and GIVs.
- (check_insns_for_bivs): Use xmalloc, not oballoc.
- (find_mem_givs): Likewise.
- (record_biv): Likewise.
- (general_induction_var): Likewise.
- (product_cheap_p): Likewse.
- * optabs.c (init_one_libfunc): Remove
- ggc_p conditional.
- * print-tree.c (debug_tree): Don't use
- oballoc/obfree.
- (print_node): Likewise.
- * profile.c (output_func_start_profiler):
- Remove call to temporary_allocation.
- * reload1.c
- (eliminate_regs_in_insn): Don't mess with obstacks.
- * resource.c
- (mark_target_live_regs): Use xmalloc.
- (free_resource_info): Free the memory.
- * rtl.c (rtl_obstack):
- Remove.
- (rtvec_alloc): Don't mess with obstacks.
- (rtx_alloc): Likewise.
- (rtx_free): Remove.
- (copy_rtx): Don't handle `b' cases.
- (read_rtx): Use a local rtl_obstack.
- * rtl.h (oballoc): Remove.
- (obfree): Likewise.
- (pop_obstacks): Likewise.
- (push_obstacks): Likewise.
- (allocate_bb_life_data): Likewise.
- (allocate_reg_life_data): Likewise.
- (rtx_free): Likewise.
- * sdbout.c (sdbout_queue_anonymous_type):
- Use tree_cons, not saveable_tree_cons.
- * simplify-rtx.c
- (cselib_init): Don't mess with obstacks.
- * stmt.c
- (mark_block_nesting): Mark the label_chain.
- (epxand_label): Use ggc_alloc, not oballoc.
- (clear_last_expr): Don't mess with obstacks.
- (expand_decl_cleanup): Likewise.
- (expand_dcc_cleanup): Likewise.
- (expand_dhc_cleanup): Likewise.
- (expand_anon_union_decl): Likewise.
- (add_case_node): Use xmalloc, not oballoc.
- (free_case_nodes): New function.
- (expand_end_case): Call it.
- * stor-layout.c (layout_type): Don't
- mess with obstacks.
- (layout_type): Likewise.
- * toplev.c (wrapup_global_declarations):
- Likewise.
- (compile_file): Remove ggc_p conditionals.
- (rest_of_compilation): Call init_flow. Remove ggc_p conditionals.
- (decode_f_option): Remove ggc_p conditionals.
- * tree.c
- (function_maybepermanent_obstack): Remove.
- (maybepermanent_obstack): Likewise.
- (function_obstack): Likewise.
- (tmeporary_obstack): Likewise.
- (momentary_obstack): Likewise.
- (temp_decl_obstack): Likewise.
- (saveable_obstack): Likewise.
- (rtl_obstack): Likewise.
- (current_obstack): Likewise.
- (expression_obstack): Likewise.
- (struct obstack_stack): Likewise.
- (obstack_stack): Likewise.
- (obstack_stack_obstack): Likewise.
- (maybepermanent_firstobj): Likewise.
- (temporary_firstobj): Likewise.
- (momentary_firstobj): Likewise.
- (temp_decl_firstobj): Likewise.
- (momentary_function_firstobj): Likewise.
- (all_types_permanent): Likewise.
- (struct momentary_level): Likewise.
- (momentary_stack): Likewise.
- (init_obstacks): Remove initialization of removed obstacks.
- (save_tree_status): Remove.
- (restore_tree_status): Likewise.
- (temporary_allocation): Liekwise.
- (end_temporary_allocation): Liekwise.
- (resume_temporary_allocation): Likewise.
- (saveable_allocation): Likewise.
- (push_obstacks): Likewise.
- (push_obstacks_nochange): Likewise.
- (pop_obstacks): Likewise.
- (allocation_temporary_p): Likewise.
- (permanent_allocation): Likewise.
- (preserve_data): Likewise.
- (preserve_initializer): Likewise.
- (rtl_in_current_obstack): Likewise.
- (rtl_in_saveable_obstack): Likewise.
- (oballoc): Likewise.
- (obfree): Likewise.
- (savealloc): Likewise.
- (expralloc): Likewise.
- (print_obstack_name): Likewise.
- (debug_obstack): Likewise.
- (object_permanent_p): Likewise.
- (push_momentary): Likewise.
- (perserve_momentary): Likewise.
- (clear_momentary): Likewise.
- (pop_momentary): Likewise.
- (pop_momentary_nofree): Likewise.
- (suspend_momentary): Likewise.
- (resume_momentary): Likewise.
- (make_node): Don't set TREE_PERMANENT.
- (copy_node): Remove ggc_p conditionals. Don't set TYPE_OBSTACK.
- Don't set TREE_PERMANENT.
- (get_identifier): Remove ggc_p conditionals.
- (build_string): Likewise.
- (make_tree_vec): Likewise.
- (build_decl_list): Remove.
- (build_expr_list): Likewise.
- (tree_cons): Remove ggc_p conditionals.
- (decl_tree_cons): Remove.
- (expr_tree_cons): Likewise.
- (perm_tree_cons): Likewise.
- (temp_tree_cons): Likewise.
- (saveable_tree_cons): Likewise.
- (build1): Remove ggc_p conditionals.
- (build_parse_node): Likewise.
- (build_type_attribute_variant): Don't mess with obstacks.
- (build_type_copy): Likewise.
- (type_hash_canon): Likewise.
- (build_pointer_type): Likewise.
- (build_reference_type): Likewise.
- (build_index_type): Likewise.
- (build_range_type): Likewise.
- (dump_tree_statistics): Don't print obstack information.
- * tree.h
- (struct tree_common): Remove permanent_flag.
- (TREE_PERMANENT): Remove.
- (TREE_SET_PERMANENT): Likewise.
- (TYPE_OBSTACK): Likewise.
- (struct tree_type): Remove obstack.
- (oballoc): Remove.
- (savealloc): Likewise.
- (build_decl_list): Likewise.
- (build_expr_list): Likewise.
- (perm_tree_cons): Likewise.
- (temp_tree_cons): Likewise.
- (saveable_tree_cons): Likewise.
- (decl_tree_cons): Likewise.
- (expr_tree_cons): Likewise.
- (suspend_momentary): Likewise.
- (allocation_temporary_p): Likewise.
- (resume_momentary): Likewise.
- (push_obstacks_nochange): Likewise.
- (permanent_allocation): Likewise.
- (push_momentary): Likewise.
- (clear_momentary): Likewise.
- (pop_momentary): Likewise.
- (end_temporary_allocation): Likewise.
- (pop_obstacks): Likewise.
- (push_obstacks): Likewise.
- (pop_momentary_nofree): LIkewise.
- (preserve_momentary): Likewise.
- (saveable_allocation): Likewise.
- (temporary_allocation): Likewise.
- (resume_temporary_allocation): Likewise.
- (perserve_initializer): Likewise.
- (debug_obstack): Likewise.
- (rtl_in_current_obstack): Likewise.
- (rtl_in_saveable_obstack): Likewise.
- (obfree): Likewise.
- * varasm.c (current_obstack): Remove.
- (saveable_obstack): Remove.
- (rtl_obstack): Remove.
- (immed_double_const): Don't mess with obstacks.
- (immed_real_cons): Likewise.
- (output_constant_def): Likewise.
- (init_varasm_status): Use xcalloc.
- (mark_pool_constant): Mark the pool constant itself.
- (free_varasm_status): Free memory.
- (decode_rtx_const): Call bzero directly, rather than expanding it
- inline.
- (record_rtx_const): Don't mess with obstacks.
- (force_const_mem): Likewise.
- * config/arm/arm.c (arm_encode_call_attribute): Remove ggc_p
- conditionals.
- (aof_pic_entry): Likewise.
- * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
- * config/m32r/m32r.c (m32r_encode_section_info): Likewise.
- * config/pa/pa.c (saveable_obstack): Remove.
- (rtl_obstack): Likewise.
- (current_obstack): Likewise.
- (output_call): Don't mess with obstacks.
- (hppa_encode_label): Remove ggc_p conditionals.
- * config/romp/romp.c (get_symref): Don't mess with obstacks.
- * config/rs6000/rs6000.c (output_toc): Remove ggc_p conditional.
- (rs6000_encode_section_info): Likewise.
- * config/sh/sh.c (get_fpscr_rtx): Likewise.
-
-Thu Oct 12 16:02:31 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.md (adddi3, subdi3 splitters): Update for new pattern.
- (addsi3_cc, addqi3_cc, subsi3_cc): Remove
- (addsi3_carry): Canonicalize.
- (addqi_5): Remove '*'.
- (sbb pattern): Canonicalize.
-
- * i386.md (cmp to inc/add peep2): New.
-
-2000-10-12 Richard Earnshaw <rearnsha@arm.com>
-
- * bb-reorder.c (reorder_basic_blocks): Allocate an aux block for
- the exit block.
-
-2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi: Merge in contents of README.TRAD and TESTS.FLUNK.
- * README.TRAD, TESTS.FLUNK: Remove.
-
-2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (decl_attributes): Don't allow strftime formats with
- first_arg_num nonzero.
- (check_format_info): Set wanted_type and wanted_type_name to zero
- before they are possibly assigned and used.
-
-2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (scanf_flag_specs): Add flags ' and I.
- (strftime_flag_pairs): Disallow any pair of the _, - and 0 flags,
- or the ^ and # flags together.
- (scan_char_table): Handle the ' and I flags.
- (format_types): Add ' and I flags for scanf.
-
-2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (print_char_table): Use the unpromoted type for
- lengths "h" and "hh" with conversions dioxXu.
- (check_format_types): Apply the default argument promotions where
- the wanted type is not a pointer target.
-
-2000-10-11 Michael Meeks <mmeeks@gnu.org>
- Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-typeck.c (check_modify_expr): New function.
- (build_modify_expr): Call it if warn_sequence_point.
- * c-decl.c (warn_sequence_point): New variable.
- (c_decode_option): Handle -Wsequence-point and
- -Wno-sequence-point. Enable -Wsequence-point as part of -Wall.
- * c-tree.h (warn_sequence_point): Declare.
- * invoke.texi (-Wsequence-point): Document.
- * toplev.c (documented_lang_options): Add -Wsequence-point and
- -Wno-sequence-point.
- Original work by Michael Meeks, 16 Jun 1998.
-
-Wed Oct 11 06:15:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.c (get_narrower): Don't look at precision of field if
- not laid out yet.
-
-Tue Oct 10 23:14:33 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.c (valid_machine_decl_attribute): Allow `extern'
- declaration for data with "progmem" attribute.
-
-2000-10-09 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (out_shift_with_cnt): Use AS2 macro.
- Correct insn length if shift count is a memory operand.
- * config/avr/avr.md: New define_peephole2 to use *reload_inqi.
- (*iorhi3_clobber): Change lo8 to hi8.
- (zero_extendhisi2): Change %B0 to %A1.
- (ashlhi3, ashrhi3): Correct insn length.
- (andhi3, abssf2, extendqisi2, extendhisi2): Change "cc"
- from "clobber" to "set_n" in some alternatives.
-
-2000-10-10 Jakub Jelinek <jakub@redhat.com>
-
- * reload1.c (calculate_needs_all_insns): If deleting an instruction,
- remove its insn_chain structure as well.
-
-2000-10-09 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * dbxout.c (dbxout_source_line): Remove extra tab.
-
-2000-10-09 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/elfos.h (UNIQUE_SECTION): Apply STRIP_NAME_ENCODING on name.
-
-2000-10-09 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (LANG_LIB2FUNCS): Remove.
- (LIB2FUNCS): Remove _pure.
- (LIB2ADD): Remove LANG_LIB2FUNCS.
- (stage_a): Don't set LANG_LIB2FUNCS.
- * libgcc2.c (__terminate): Mark noreturn.
- (__pure_virtual): Remove.
- * mklibgcc.in: Remove LIB2ADD .txt processing.
-
-2000-10-09 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (push_multi): Revert unintended change.
-
-2000-10-09 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c: Miscellaneous white space and comment clean-ups. No
- functional change.
- * arm.md: Likewise.
-
-2000-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c (c_expand_builtin_printf): Set the TREE_TYPE of a new
- STRING_CST by calling combine_strings.
-
-2000-10-09 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (thumb_expand_movstrqi): Rewrite to support SSA form.
- (thumb_output_move_mem_multiple): Support new insn format.
- * arm.md (movmem12b): Use SSA compatible format.
- (movmem8b): Likewise.
-
-2000-10-09 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (predicable): New attribute, default to "no".
- (all patterns): Mark as predicable if appropriate.
- (conditional execution splits): Split using predication format.
- (define_cond_exec): Define.
- * arm.c (arm_print_operand): handle insn predicate.
-
-2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README.NS32K: Remove file.
-
-2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README-bugs: Remove file.
-
-2000-10-08 Philipp Thomas <pthomas@suse.de>
- * aclocal.m4 (AM_GNU_GETTEXT): Fix non portable use of == operator
- for test.
- * configure: Rebuilt.
-
-2000-10-08 Philipp Thomas <pthomas@suse.de>
- * aclocal.m4 (AM_WITH_NLS): When not using included gettext,
- disable catalog building if no suitable program was found.
- Move warning message from here
- (AM_GNU_GETTEXT): To here.
- * configure: Rebuilt.
-
-2000-10-08 Philipp Thomas <pthomas@suse.de>
- * aclocal.m4 (GCC_PATH_PROG): New. Like AC_PATH_PROG but uses
- different cache variables.
- (GCC_PATH_PROG_WITH_TEST): New. Like AM_PATH_PROG_WITH_TEST but
- uses different cache variables.
- (AM_WITH_NLS): Use GCC_PATH_PROG and GCC_PATH_PROG_WITH_TEST.
- * configure: Regenerated.
-
-2000-10-08 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (libgcc.mk): Pass SHLIB_EXT, not SHLIB_LIBS.
- * configure.in (sparc*-*-solaris*): Use t-slibgcc{,-sld}.
- * mklibgcc.in: Consider SHLIB_LINK the entire shlib build command.
- Use SHLIB_EXT.
-
- * config/t-linux (SHLIB_EXT): New.
- (SHLIB_LINK): Use the entire build command, with substitutions.
- (SHLIB_LIBS): Remove.
- * config/alpha/t-osf4: Likewise.
- * config/mips/t-iris6: Likewise.
- * config/sparc/t-sol2: Likewise, but move shlib stuff...
- * config/sparc/t-slibgcc-sld: ...here.
- * config/sparc/t-slibgcc: New file.
-
-2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * tm.texi (INTMAX_TYPE, UINTMAX_TYPE): Define.
- * c-common.h (enum c_tree_index): Add CTI_INTMAX_TYPE and
- CTI_UINTMAX_TYPE.
- (intmax_type_node, uintmax_type_node): Define.
- * c-common.c (decl_attributes): If pedantic, warn if `mode'
- attributes create a type wider than intmax_t.
- (T_IM, T_UIM): Define properly.
- * c-decl.c (INTMAX_TYPE, UINTMAX_TYPE): Define if not already
- defined.
- (init_decl_processing): Initialize intmax_type_node and
- uintmax_type_node.
- * c-lex.c (lex_number): When pedantic and warning for integer
- constants that are too large, in C99 mode warn for those that have
- a type wider than long long.
-
-2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (FMT_FLAG_ARG_CONVERT, FMT_FLAG_SCANF_A_KLUDGE,
- FMT_FLAG_FANCY_PERCENT_OK): Define.
- (format_char_info): Add flag "4" to comment.
- (format_flag_spec, format_flag_pair): New structures.
- (format_kind_info): Add additional fields to control format
- checking.
- (printf_flag_specs, printf_flag_pairs, scanf_flag_specs,
- scanf_flag_pairs, strftime_flag_specs, strftime_flag_pairs): New
- arrays.
- (time_char_table): Use "4" flag to handle %Ey.
- (format_types): Add entries for new fields.
- (get_flag_spec): New function.
- (check_format_info): Increase size of flag_chars[] to 256.
- Control format checking using the new fields of a format_kind_info
- and the new tables; remove all conditionals on printf_format_type,
- scanf_format_type or strftime_format_type. Handle all details of
- bad combinations of flags (including width, precision and strftime
- modifiers) through data rather than ad hoc code. Handle all
- details of standard versions in which flags appeared through
- data. Use the "4" flag.
-
-2000-10-07 Will Cohen <wcohen@redhat.com>, Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.md: Remove the memory alternative and correct
- the insn lengths in the templates for sign extension and zero
- extension.
-
-2000-10-07 Richard Henderson <rth@cygnus.com>
-
- * calls.c (expand_call): Disallow sibcalls to noreturn functions.
- * flow.c (make_edges): Revert last change.
-
- * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Don't test
- TREE_THIS_VOLATILE.
- * config/pa/pa.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
-
-2000-10-06 David O'Brien <obrien@dragon.nuxi.com>
-
- * config/alpha/elf.h: Standardize the formatting.
-
-2000-10-06 David O'Brien <obrien@FreeBSD.org>
-
- * config/alpha/elf.h: Protect the ASM_OUTPUT_IDENT definition with an
- #undef.
-
-2000-10-06 Richard Henderson <rth@cygnus.com>
-
- * function.c (diddle_return_value): Examine
- current_function_return_rtx instead of the DECL_RESULT.
- (expand_function_end): Handle reloading DECL_RESULT from memory
- into a hard register. Query promote_mode for sign of mismatched
- modes.
-
-2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com>
-
- * haifa-sched.c (schedule_insns): Fix typo in freeing
- forward_dependency_cache.
-
-2000-10-06 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): Add
- `TARGET_SH2' as a condition.
-
-2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com>
-
- * haifa-sched.c (anti_dependency_cache, output_dependency_cache,
- forward_dependency_cache): New variables.
- (add_dependence, remove_dependence): Use anti_dependency_cache and
- output_dependency_cache.
- (compute_block_forward_dependences): Use forward_dependency_cache.
- (schedule_insns): Allocate and free memory for anti/output/forward
- dependencies caches.
-
-2000-10-06 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of
- `! TARGET_SH1'. Reindent.
-
-2000-10-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (is_valid_printf_arglist, expand_builtin_printf):
- Move functions from here ...
-
- * c-common.c (is_valid_printf_arglist, c_expand_builtin_printf):
- ... to here.
- (c_expand_builtin): New function.
- (init_function_format_info): Don't set `check_function_format_ptr'.
- (c_common_nodes_and_builtins): Set built_in_class type for
- printf/__builtin_printf to BUILT_IN_FRONTEND.
- (c_expand_expr): Handle CALL_EXPRs that are front-end builtins.
-
- * c-common.h (build_function_call): Declare.
-
- * expr.c (expand_expr): Pass builtins with class BUILT_IN_FRONTEND
- to `lang_expand_expr' rather than `expand_builtin'.
-
- * tree.c (check_function_format_ptr): Delete.
-
- * tree.h (check_function_format_ptr): Likewise.
-
-2000-10-06 Hans-Peter Nilsson <hp@bitrange.com>
-
- * dwarf2out.c (build_cfa_loc): Correct to use DW_OP_regx or
- DW_OP_bregx when cfa->reg > 31.
-
- * frame-dwarf2.c (decode_stack_op) [case DW_OP_regx]: Add missing
- break.
-
-2000-10-05 Richard Henderson <rth@cygnus.com>
-
- * c-decl.c (warn_missing_noreturn): Remove.
- (c_expand_body): Don't set or check can_reach_end.
- * c-tree.h (warn_missing_noreturn): Move ...
- * flags.h: ... here.
- (can_reach_end): Remove.
- * flow.c (check_function_return_warnings): New.
- (make_edges): No edge to exit for noreturn sibcalls.
- * function.c (expand_function_end): Save the return value
- clobber instruction.
- (mark_function_status): Mark it.
- * function.h (struct function): Add x_clobber_return_insn.
- * jump.c (can_reach_end): Remove.
- (calculate_can_reach_end): Remove.
- (jump_optimize_1): Don't call it.
- * output.h (check_function_return_warnings): Declare.
- * toplev.c (warn_missing_noreturn): Move from c-decl.c
- (rest_of_compilation): Call check_function_return_warnings.
-
-2000-10-05 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (NM_FOR_TARGET): New.
- (libgcc.mk): Pass SHLIB_MKMAP, SHLIB_MAPFILES.
- (libgcc.a, stmp-multilib): Pass NM_FOR_TARGET.
- * mklibgcc.in: If SHLIB_MKMAP, build libgcc.map. Depend the
- shared library build on that and EXTRA_MULTILIB_PARTS.
- * mkmap-flat.awk: New file.
- * mkmap-symver.awk: New file.
- * libgcc-std.ver: New file.
- * config/libgcc-glibc.ver: New file.
- * config/ia64/libgcc-ia64.ver: New file.
- * config/t-linux (SHLIB_MKMAP, SHLIB_MAPFILES): New.
- (SHLIB_LINK): Add --version-script.
- * config/ia64/t-ia64 (SHLIB_MAPFILES): Add libgcc-ia64.ver.
- * config/mips/t-iris6 (SHLIB_MKMAP, SHLIB_MAPFILES): New.
- * config/sparc/t-sol2 (SHLIB_MKMAP, SHLIB_MAPFILES): New.
- (SHLIB_LINK): Add -M.
-
-2000-10-05 Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (LIB2FUNCS): Add _clz.
- * libgcc2.c (__ffsdi2): Use count_trailing_zeros.
- (__clz_tab): Put in its own unit, non-static.
- * libgcc2.h: Always include longlong.h.
-
- * longlong.h [alpha] (count_leading_zeros): Use cmpbge with
- a zero instead of -1.
- (count_trailing_zeros): Likewise.
-
-2000-10-05 Richard Henderson <rth@cygnus.com>
-
- * config/alpha/alpha.c (alpha_emit_setcc): Don't swap GT tests
- when second op1 is const0_rtx. Validate op0 as a register.
- * config/alpha/alpha.md (setcc_internal): Don't allow constants
- in the first argument of the compare.
- (setcc_swapped_internal): Likewise.
- (setne_internal): Likewise.
-
-2000-10-05 Geoff Keating <geoffk@cygnus.com>
-
- * tree.c (tree_size): New function split out of copy_node.
- (make_node): Remove obstack handling. Use tree_size.
- (copy_node): Use tree_size.
- * tree.h: Prototype tree_size.
-
-2000-10-05 Richard Henderson <rth@cygnus.com>
-
- * diagnostic.c (output_format): Add missing break.
-
-2000-10-05 Jim Wilson <wilson@cygnus.com>
-
- * function.c (fixup_var_refs_1, case SET): When gen_move_insn returns a
- SEQUENCE, call emit_insn_before, copy PATTERN and REG_NOTES of last
- sequence insn to INSN, and delete last sequence insn.
-
-2000-10-05 Phil Edwards <pme@gcc.gnu.org>
-
- * gcc.c (main): Include generated configargs.h header
- and use arguments in '-v' output.
-
-Thu Oct 5 16:16:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * gcc.c: Move data on prefixes forward in file and reorganize.
- (md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1):
- Always define, but make null if no value.
- (static_specs): Add "md_exec_prefix", "md_startfile_prefix",
- and "md_startfile_prefix_1".
- (main): Check whether md_exec_prefix and the others are the
- null string rather than whether the macro is defined.
-
-Thu Oct 5 19:04:18 2000 J"orn Rennecke <amylaar@redhat.co.uk>
-
- * (convert_move): Use zero_extendpsisi2 to do an unsigned extension
- from PSImode to SImode.
-
-2000-10-05 Jakub Jelinek <jakub@redhat.com>
-
- * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETICS]: Fix conversion
- from float to integral mode with HOST_BITS_PER_WIDE_INT 64.
- * dwarf2out.c (add_const_value_attribute): Divide by 4, not
- sizeof(long).
-
-Thu Oct 5 09:31:31 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * fold-const.c (fold, case MINUS_EXPR, case EQ_EXPR): Perform
- negation in proper type.a
-
-2000-10-04 Richard Henderson <rth@cygnus.com>
-
- * configure.in (enable-shared): New.
- * Makefile.in (LIBGCC_DEPS): Depend on EXTRA_PARTS as well.
- (libgcc.mk): Pass SHLIB_LINK, SHLIB_LIBS, SHLIB_MULTILIB to mklibgcc.
- * mklibgcc.in: Use them to link shared a libgcc.
- * config/t-linux (SHLIB_LINK, SHLIB_LIBS): New.
- * config/alpha/t-ieee (SHLIB_MULTILIB): New.
- * config/mips/t-iris6 (SHLIB_LINK, SHLIB_LIBS): New.
- * config/sparc/t-sol2 (SHLIB_LINK, SHLIB_LIBS): New.
-
- * configure.in (alpha-osf*): Use t-osf and x-osf.
- * config/alpha/t-osf: New file.
- * config/alpha/t-osf4: New file.
- * config/alpha/x-osf: New file.
- * config/alpha/x-alpha: Remove file.
-
-2000-10-04 Will Cohen <wcohen@redhat.com>
-
- * c-typeck.c (process_init_element): Added warning for zero-length
- array.
-
- * extend.texi (Zero Length): State that static initializers for
- zero-length arrays are not allowed.
-
-Mon Oct 2 14:50:14 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * rtlanal.c (single_set_1): Do not require USE and CLOBBERs
- to come last.
-
-2000-10-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/float-c4x.h: New.
- * configure.in (c4x-*): Set float_format to c4x.
- * configure: Regenerate.
-
-2000-10-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in (sparc-*-solaris2*): Disable 32-to-64 cross
- compilation for solaris versions 2.7 and greater.
-
-2000-10-02 Marc Espie <espie@openbsd.org>
-
- * config/alpha.h (WORD_SWITCH_TAKES_ARG): add -rpath to default,
- instead of redefining from scratch.
-
-2000-10-02 David O'Brien <obrien@dragon.nuxi.com>
-
- * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define.
-
-2000-10-01 Mark Mitchell <mark@codesourcery.com>
-
- * config/ns32k/genix.h: Remove.
- * config/ns32k/x-genix: Likewise.
- * config/ns32k/xm-genix.h: Likewise.
- * config/fx80: Remove all filee in directory.
- * config/pyr: Likewise.
- * config/tahoe: Likewise.
- * config/gmicro: Likewise.
- * config/spur: Likewise.
- * configure.in: Remove configury bits for above targets.
- * configure: Regenerated.
-
- * configure.in: Don't configure chill by default.
- * configure: Regenerated.
-
- * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only.
- (lang_mark_false_label_stack): Remove.
- * c-lex.c (init_c_lex): Add file_info_tree as GC root. Allocate
- <top level> string in GC area.
- (mark_splay_tree_node): New function.
- (mark_splay_tree): Likewise.
- * except.c (mark_eh_status): Only call lang_mark_false_label_stack
- if it exists.
- * ggc-callbacks.c (lang_mark_false_label_stack): Remove.
- * ggc-common.c (lang_mark_false_label_stack): Change type.
- * ggc.h (ggc_alloc_string): Add comment.
- (ggc_strdup): New function.
-
-Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.h (BRANCH_COST): Define as 0.
-
- * config/pdp11/pdp11.c: #include "tree.h" added.
-
-2000-09-30 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out,
- ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases
- with known shift count.
- * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3):
- New alternative for shift count 2 with no scratch register.
- (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to
- "set_n" for shift counts 1 and 2.
-
-2000-09-30 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE. Calculate
- the mask value from the individual SET operations.
- (return_internal_si): Move the USE after the RETURN.
- (return_internal_di): Likewise.
- (return_and_restore_fpregs_si): Likewise.
- (return_and_restore_fpregs_di): Likewise.
- (return_eh_si): Likewise.
- (return_eh_di): Likewise.
- * config/rs6000/rs6000.c (mtcrf_operation): Don't look for,
- or check, the USE.
- (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr.
- Don't generate a PARALLEL around a single operation movsi_to_cr.
- Generate the RETURN first in any PARALLELs.
-
- * rtlanal.c (single_set_1): Use fatal_insn to display the
- invalid insn. Check for more cases when a USE or CLOBBER occurs
- before a SET.
- * Makefile.in: Update dependencies for rtlanal.o.
-
-2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * i386.c: Move include of "config.h" to before that of <setjmp.h>.
-
-2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi:
- Consistently use @email for formatting email addresses.
-
-2000-09-29 Richard Henderson <rth@cygnus.com>
-
- * cse.c (notreg_cost): New argument outer.
- (COST): Pass in SET to notreg_cost
- (COST_IN): New.
- (fold_rtx): Use COST_IN. Prefer constants when costs
- are the same.
-
-2000-09-29 David Edelsohn <edelsohn@gnu.org>
-
- * fixinc/inclhack.def (broken_cabs): Generalize regex.
- * fixinc/fixincl.x: Regenerate.
-
-2000-09-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * loop.c (check_final_value): A GIV is not replaceable if used
- before set.
-
-Fri Sep 29 10:04:12 2000 Jeffrey A Law (law@cygnus.com)
-
- * version.c: Bump to gcc-2.97.
-
-Frs Sep 29 13:37:59 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * final.c (final_scan_insn): Remove extra extract_insn call;
- Use caching for constrain_operands.
- (cleanup_subreg_operands): Use caching for extract_insn.
- * recog.c (constrain_operands_cached): New.
- * recog.h (constrain_operands_cached): Declare.
- * i386.c (ix86_attr_length_immediate_default,
- ix86_attr_length_address_default, ix86_agi_dependant): Cache
- extract_insn call.
-
- * recog.c (asm_noperands): Tweak.
- (extract_insn): Do not call asm_noperads for non-asm instructions.
-
-Fri Sep 29 13:20:42 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * recog.c (recog_memoized): Rename to recog_memoized_1.
- * recog.h (recog_memoized): Rename to recog_memoized_1.
- (recog_memoized): New macro.
- * rtl.h (single_set): Rename to single_set_1
- (single_set): New macro.
- * rtlanal.c (single_set): Rename to single_set_1; expect clobbers
- to be last.
-
- * i386.md (strmovsi_1, strmovhi_1 strmovqi_1):
- Do not use match_dup of input operands at outputs.
- Use register_operand for memory expression.
- (rep_movsi): Put use last, canonicalize.
- Use register_operand for memory expression.
- (rep_movqi): Put use last.
- Use register_operand for memory expression.
- (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup
- of input operands at outputs. Use register_operand for memory
- expression.
- (rep_stossi): Put use last; canonicalize; fix match_dup in
- the address expression
- (rep_stosqi): Likewise.
- (memcmp expander): Update calls.
- (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in
- the clobbers.
-
- * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is
- VOIDmode.
- (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons.
-
-2000-09-28 David O'Brien <obrien@FreeBSD.org>
-
- * config/i386/freebsd-aout.h: New, FreeBSD a.out config file.
- Contains the old contents of config/i386/freebsd.h
- * config/i386/freebsd.h: Now the ELF rather than a.out config file.
- Contains the old contents of config/i386/freebsd-elf.h
- * config/i386/freebsd-elf.h: Retire this file -- contents moved to
- config/i386/freebsd.h.
- * configure.in: Adjust for above changes.
- * po/POTFILES.in: Likewise.
- * po/en_GB.po: Likewise.
- * po/gcc.pot: Likewise.
- * configure: Rebuilt.
-
-2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * doloop.c (doloop_modify): Prevent delete_insn() from
- deleting too much. Prefer loop->top over loop->start as
- target for the new JUMP insn.
- (doloop_valid_p): Ignore loop with exit_count != 0.
-
-2000-09-28 Philipp Thomas <pthomas@suse.de>
-
- * invoke.texi (i386 Options): Add athlon to table of possible
- choices for -mcpu=.
-
-2000-09-28 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h (output_clear_message_text): New function.
- (output_message_text): New macro.
-
- * diagnostic.c (clear_text_info): Rename to
- output_clear_message_text.
- (output_clear): Adjust.
- (output_finish): Rename to output_finalize_message. Tweek.
- (output_to_stream): Adjust.
-
-2000-09-28 Neil Booth <neilb@earthling.net>
-
- * cpperror.c (_cpp_begin_message): Do the test for suppression
- of warnings and pedantic warnings before the "is a warning an
- error" tests.
- * cppinit.c (cpp_handle_option): Remove surplus \n.
- * cpplex.c (ON_REST_ARG): Delete.
- (skip_block_comment): Initialize prevc.
- (parse_args): Improve error messages.
- (maybe_paste_with_next): Use CONTEXT_VARARGS rather
- than ON_REST_ARG.
- * cpplib.c (cpp_push_buffer): Fix grammar in message.
- * cppmain.c (main): Set callbacks for #ident and #pragma
- only if no_output option is false.
- (do_pragma_implementation): Only call the #pragma handler
- if it is set in the cpp_reader structure.
-
-Wed Sep 27 14:00:07 2000 Donald Lindsay <dlindsay@cygnus.com>
-
- * integrate.c (copy_insn_list): if an ignored return value
- is being clobbered, skip cloning that into the inline copy.
-
-2000-09-27 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently
- use @uref for formatting URLs.
-
-2000-09-27 Mark Elbrecht <snowball3@bigfoot.com>
-
- * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables
- name and prefix.
-
-Tue 26-Sep-2000 18:25:38 BST Neil Booth <neilb@earthling.net>
-
- * gcc.c (cpp_options): Add spec for -ftabstop=.
- (invoke_as): New spec that handles invoking as.
- Update specs to handle -save-temps and -traditional.
- * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h:
- Use invoke_as.
- * cp/lang-specs.h, objc/lang-specs.h: Update to use
- invoke_as, and handle -save-temps and -traditional (if
- appropriate).
-
-2000-09-26 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when
- op0 is a SUBREG.
- (function_arg_slotno): Accept TImode/CTImode.
- * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define
- to UNITS_PER_WORD.
-
-2000-09-26 Michael Hayes <mhayes@cygnus.com>
-
- * flow.c (flow_loop_pre_header_scan): Punt if loop enters
- from entry block.
-
-2000-09-25 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS.
- (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P.
- (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG.
- (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P.
-
-Tue 26-Sep-2000 00:16:22 BST Neil Booth <neilb@earthling.net>
-
- * cpplex.c (parse_args): Don't set VOID_REST flag.
- (CONTEXT_VARARGS): New flag.
- (maybe_paste_with_next): Set context earlier in loop. Use
- it. Do varargs test with CONTEXT_VARARGS flag.
- (push_arg_context): Set CONTEXT_VARARGS flag if we're
- pushing an argument context for a varargs argument.
- * cpplib.h (VOID_REST): Delete.
- * gcc.dg/cpp/vararg1.c: Add test case.
-
-2000-09-25 Branko Cibej <branko.cibej@hermes.si>
-
- * flags.h: Declare warning flag warn_system_headers.
- * toplev.c: Define it.
- (W_options): Add option -Wsystem-headers.
- * diagnostic.c (count_error): Test warn_system_headers.
- * invoke.texi: Add description for -Wsystem-headers.
- * cpplib.h (cpp_options): New member warn_system_headers.
- * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test
- CPP_IN_SYSTEM_HEADER.
- * cpplib.c (do_import, do_pragma_once): Likewise.
- * cpperror.c (_cpp_begin_message): Test warn_system_headers
- and CPP_IN_SYSTEM_HEADER.
- * cppinit.c (handle_option): Recognize -Wsystem_headers.
- (print_help): Describe -Wsystem_headers.
- * cpplex.c (lex_line): Reorganize condition so that warnings
- about C++ comments in system headers can be enabled. Remove
- label do_line_comment.
-
-Mon 25-Sep-2000 23:38:27 BST Neil Booth <neilb@earthling.net>
-
- * cpplex.c (save_comment): Only store the initial '/'
- now.
- (lex_token): Combine handling of the two comment types.
- Pass everything but the initial '/' to save_comment.
-
-Mon 25-Sep-2000 23:31:45 BST Neil Booth <neilb@earthling.net>
-
- * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive,
- _cpp_can_paste): New library-internal prototypes.
- * cpplex.c (dump_param_spelling, output_line_command,
- output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput,
- cpp_printf, cpp_output_list): Move to cppoutput.c.
- (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix.
- * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to
- cppoutput.c.
- * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token,
- dump_param_spelling, output_line_command, cpp_scan_buffer,
- cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved
- from elsewhere.
- * Makefile.in: Add cppoutput.c.
- * po/POTFILES.in: Add cppoutput.c.
-
-2000-09-25 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n.
- * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't
- split until after reload.
- (rotlsi3, rotldi3): New.
-
-2000-09-25 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (output_last_position): Define.
- (set_real_maximum_length): Tweek.
- * diagnostic.h (output_last_position): Declare.
-
-2000-09-25 Kazu Hirata <kazu@hxi.com>
-
- * config/i386/i386.c: Fix formatting.
-
-2000-09-24 Alan Lehotsky <alehotsky@cygnus.com>
-
- * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when
- UNITS_PER_WORD is small.
-
-2000-09-25 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (format_char_info): Add flags2; update comments.
- (print_char_table, scan_char_table, time_char_table): Split some
- flags out into flags2.
- (check_format_info): Use flags2 for those flags, for identifying
- the initial character of a scanf scanset, and for identifying
- printf formats where the '0' flag is ignored with precision.
-
-2000-09-25 Hans-Peter Nilsson <hp@axis.com>
-
- Changes below marked "here" add TABs on either or both sides,
- covering start of line, up to any operand for all noted .*ASM.*_OP
- definitions. All callers changed.
- * tm.texi: Make documented *_ASM.*_OP:s include spacing
- (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, SHARED_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP, SHARED_BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
- ASM_BYTE_OP, FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP,
- ASM_STABS_OP, ASM_STABD_OP, ASM_STABN_OP).
- Fix typos in description for LONG_LONG_TYPE_SIZE and
- FINI_SECTION_ASM_OP.
- * crtstuff.c (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Explain
- why these defaults don't have leading spacing.
- * dbxout.c (ASM_STABS_OP, ASM_STABN_OP): Here.
- * dwarf2out.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
- UNALIGNED_DOUBLE_INT_ASM_OP, SECTION_ASM_OP, ASM_BYTE_OP): Here.
- * dwarfout.c (FILE_ASM_OP, VERSION_ASM_OP,
- UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, ASM_BYTE_OP,
- PUSHSECTION_ASM_OP, POPSECTION_ASM_OP): Here.
- * defaults.h (ASM_STABD_OP, EH_FRAME_SECTION_ASM_OP): Here.
- * varasm.c (ASM_STABS_OP): Here.
- * xcoffout.h (ASM_STABS_OP): Here.
- * config/elfos.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP,
- SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP,
- INT_ASM_OP, ASCII_DATA_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP,
- STRING_ASM_OP): Here.
- * config/freebsd.h (IDENT_ASM_OP): Here.
- * config/linux-aout.h (SET_ASM_OP): Here.
- * config/linux.h (SET_ASM_OP): Here.
- * config/lynx.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
- INT_ASM_OP): Here.
- * config/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here.
- * config/nextstep.h (EH_FRAME_SECTION_ASM_OP, ALIGN_ASM_OP): Here.
- * config/openbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here.
- * config/psos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
- INT_ASM_OP): Here.
- * config/ptx4.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP,
- SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP,
- INT_ASM_OP, ASCII_DATA_ASM_OP, CONST_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
- FINI_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP STRING_ASM_OP): Here.
- * config/svr3.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
- CONST_SECTION_ASM_OP, ASM_BYTE_OP): Here.
- * config/a29k/udi.h (INT_ASM_OP): Here.
- * config/alpha/alpha-interix.h (CONST_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP,
- SET_ASM_OP): Here.
- * config/alpha/alpha.h (TEXT_SECTION_ASM_OP,
- READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
- UNALIGNED_DOUBLE_INT_ASM_OP, ASM_STABS_OP, ASM_STABN_OP,
- ASM_STABD_OP): Here.
- * config/alpha/elf.h (IDENT_ASM_OP, SKIP_ASM_OP, ALIGN_ASM_OP,
- COMMON_ASM_OP, INT_ASM_OP, ASCII_DATA_ASM_OP,
- CONST_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP,
- INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, TYPE_ASM_OP,
- SIZE_ASM_OP, STRING_ASM_OP): Here.
- * config/alpha/vms.h (LINK_SECTION_ASM_OP,
- READONLY_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, COMMON_ASM_OP): Here.
- * config/arc/arc.h (ASM_BYTE_OP, SET_ASM_OP): Here.
- (PUSHSECTION_ASM_OP): Define this, not PUSHSECTION_FORMAT.
- * config/arm/aof.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP):
- Here.
- * config/arm/aout.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP, SET_ASM_OP): Here.
- * config/arm/coff.h (INT_ASM_OP): Here.
- * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Here.
- * config/arm/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): Here.
- * config/arm/linux-elf.h (IDENT_ASM_OP, CONST_SECTION_ASM_OP,
- INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Here.
- * config/arm/unknown-elf.h (UNALIGNED_WORD_ASM_OP): Here.
- * config/avr/avr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- ASM_BYTE_OP, TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP,
- STRING_ASM_OP): Here. Update documentation copy in comments.
- * config/c4x/c4x.h (ASM_STABS_OP, BSS_SECTION_ASM_OP): Here.
- * config/clipper/clipper.h (TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP): Here.
- * config/clipper/clix.h (BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP):
- Here.
- * config/convex/convex.h (TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here.
- * config/d30v/d30v.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP): Here.
- * config/fr30/fr30.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP): Here.
- * config/fx80/fx80.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/gmicro/gmicro.h (TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here.
- * config/h8300/h8300.h (ASM_WORD_OP): Here.
- * config/i370/i370.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP): Here.
- * config/i386/aix386.h (INIT_SECTION_ASM_OP): Here.
- * config/i386/bsd.h (ASM_BYTE_OP): Here.
- * config/i386/cygwin.h (SET_ASM_OP, INT_ASM_OP): Here.
- * config/i386/dgux.h (CONST_SECTION_ASM_OP): Here.
- * config/i386/djgpp.h (IDENT_ASM_OP, INT_ASM_OP, SET_ASM_OP):
- Here.
- * config/i386/freebsd-elf.h (SET_ASM_OP): Here.
- * config/i386/freebsd.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP):
- Here.
- * config/i386/i386-coff.h (CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
- * config/i386/i386-interix.h (STRING_ASM_OP, CONST_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP,
- SET_ASM_OP): Here.
- * config/i386/i386elf.h (BSS_SECTION_ASM_OP): Here.
- * config/i386/netbsd.h (INT_ASM_OP): Here.
- * config/i386/openbsd.h (INT_ASM_OP): Here.
- * config/i386/osfrose.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP,
- IDENT_ASM_OP): Here.
- * config/i386/sco5.h (ALIGN_ASM_OP, ASCII_DATA_ASM_OP,
- ASM_BYTE_OP, IDENT_ASM_OP, COMMON_ASM_OP, SET_ASM_OP,
- LOCAL_ASM_OP, INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, STRING_ASM_OP,
- SKIP_ASM_OP, GLOBAL_ASM_OP): Here.
- * config/i386/seq-sysv3.h (SHARED_SECTION_ASM_OP,
- SHARED_BSS_SECTION_ASM_OP): Here.
- * config/i386/sequent.h (SHARED_SECTION_ASM_OP): Here.
- * config/i386/sun386.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP): Here.
- * config/i386/svr3gas.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
- CONST_SECTION_ASM_OP): Here.
- * config/i386/sysv3.h (INIT_SECTION_ASM_OP): Here.
- * config/i386/unix.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP): Here.
- * config/i860/bsd-gas.h (ASCII_DATA_ASM_OP): Here.
- * config/i860/bsd.h (ASCII_DATA_ASM_OP): Here.
- * config/i860/fx2800.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP,
- BSS_ASM_OP): Here, but use trailing spaces.
- * config/i860/i860.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP): Here.
- * config/i860/paragon.h (ASCII_DATA_ASM_OP, BSS_SECTION_ASM_OP):
- Here.
- * config/i860/sysv3.h (ASCII_DATA_ASM_OP, CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, TDESC_SECTION_ASM_OP): Here.
- * config/i860/sysv4.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
- TDESC_SECTION_ASM_OP): Here.
- * config/i960/i960-coff.h (CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
- * config/i960/i960.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/ia64/ia64.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP,
- UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
- UNALIGNED_DOUBLE_INT_ASM_OP): Here.
- * config/ia64/sysv4.h (ASM_BYTE_OP, STRING_ASM_OP, SKIP_ASM_OP,
- COMMON_ASM_OP, ASCII_DATA_ASM_OP, INIT_SECTION_ASM_OP,
- FINI_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
- SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Here.
- * config/m32r/m32r.h (SCOMMON_ASM_OP): Here.
- * config/m68hc11/m68hc11.h (GLOBAL_ASM_OP): Here.
- * config/m68k/auxas.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP,
- SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP,
- SET_ASM_OP): Here.
- * config/m68k/coff.h (BSS_SECTION_ASM_OP, CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
- * config/m68k/crds.h (BSS_SECTION_ASM_OP): Here.
- * config/m68k/dpx2.h (ASM_BYTE_OP, GLOBAL_ASM_OP): Here.
- * config/m68k/hp320.h (ASCII_DATA_ASM_OP, GLOBAL_ASM_OP): Here.
- * config/m68k/linux.h (BSS_SECTION_ASM_OP): Here.
- * config/m68k/lynx.h (BSS_SECTION_ASM_OP): Here.
- * config/m68k/m68k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- GLOBAL_ASM_OP): Here.
- * config/m68k/m68kelf.h (SWBEG_ASM_OP, BSS_ASM_OP,
- BSS_SECTION_ASM_OP): Here.
- * config/m68k/m68kv4.h (BSS_ASM_OP): Here.
- * config/m68k/mot3300.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- ASCII_DATA_ASM_OP, SET_ASM_OP, CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, GLOBAL_ASM_OP, ASM_BYTE_OP, ALIGN_ASM_OP,
- SKIP_ASM_OP): Here.
- * config/m68k/newsgas.h (SET_ASM_OP): Here.
- * config/m68k/rtemself.h (INIT_SECTION_ASM_OP,
- FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here.
- * config/m68k/sgs.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP,
- SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP,
- SET_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here,
- but use trailing spaces.
- * config/m68k/tower-as.h (TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP, GLOBAL_ASM_OP, INIT_SECTION_ASM_OP,
- FINI_SECTION_ASM_OP, CONST_SECTION_ASM_OP, BSS_SECTION_ASM_OP):
- Here.
- * config/m88k/dgux.h (FINI_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here.
- * config/m88k/m88k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- CONST_SECTION_ASM_OP, TDESC_SECTION_ASM_OP, CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
- IDENT_ASM_OP, FILE_ASM_OP, SECTION_ASM_OP, SET_ASM_OP,
- GLOBAL_ASM_OP, ALIGN_ASM_OP, SKIP_ASM_OP, COMMON_ASM_OP,
- BSS_ASM_OP, FLOAT_ASM_OP, DOUBLE_ASM_OP, INT_ASM_OP, SHORT_ASM_OP,
- CHAR_ASM_OP, ASCII_DATA_ASM_OP, SBSS_ASM_OP, SCOMM_ASM_OP,
- SDATA_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, INTERNAL_ASM_OP,
- VERSION_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP,
- PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, REQUIRES_88110_ASM_OP,
- ASM_BYTE_OP): Here.
- * config/m88k/openbsd.h (SET_ASM_OP): Here.
- * config/m88k/sysv4.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here.
- * config/mcore/mcore-elf.h (UNALIGNED_INT_ASM_OP,
- UNALIGNED_SHORT_ASM_OP, CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP): Here.
- * config/mcore/mcore-pe.h (CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
- * config/mips/elf.h (TYPE_ASM_OP, SIZE_ASM_OP,
- BSS_SECTION_ASM_OP): Here.
- * config/mips/elf64.h (TYPE_ASM_OP, SIZE_ASM_OP): Here.
- * config/mips/iris5.h (ABICALLS_ASM_OP): Here.
- * config/mips/iris6.h (TYPE_ASM_OP, SIZE_ASM_OP,
- POPSECTION_ASM_OP, BSS_SECTION_ASM_OP, CONST_SECTION_ASM_OP_32,
- CONST_SECTION_ASM_OP_64, CTORS_SECTION_ASM_OP,
- DTORS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here.
- * config/mips/mips.c (ABICALLS_ASM_OP): Here.
- * config/mips/mips.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP):
- Here.
- * config/mips/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP):
- Here.
- * config/mips/osfrose.h (SET_ASM_OP): Here.
- * config/mips/sni-svr4.h (ABICALLS_ASM_OP): Here.
- * config/ns32k/encore.h (SHARED_SECTION_ASM_OP): Here.
- * config/ns32k/merlin.h (SHARED_SECTION_ASM_OP): Here.
- * config/ns32k/ns32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/ns32k/sequent.h (SHARED_SECTION_ASM_OP): Here.
- * config/ns32k/tek6000.h (SHARED_SECTION_ASM_OP): Here.
- * config/pa/pa-64.h (INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP): Here.
- * config/pa/pa.h (ASM_STABS_OP, ASM_STABN_OP): Here.
- * config/pj/pj.h (SET_ASM_OP, BSS_SECTION_ASM_OP): Here.
- * config/pyr/pyr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/romp/romp.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/rs6000/rs6000.h (SET_ASM_OP): Here.
- * config/rs6000/sol2.h (ASM_STABN_OP): Here.
- * config/rs6000/sysv4.h (SKIP_ASM_OP, LOCAL_ASM_OP, LCOMM_ASM_OP):
- Here.
- * config/sh/sh.h (SET_ASM_OP, BSS_SECTION_ASM_OP,
- UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here.
- * config/sparc/linux.h (COMMON_ASM_OP): Here.
- * config/sparc/linux64.h (COMMON_ASM_OP,
- UNALIGNED_DOUBLE_INT_ASM_OP): Here.
- * config/sparc/litecoff.h (BSS_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP): Here.
- * config/sparc/lynx.h (BSS_SECTION_ASM_OP): Here.
- * config/sparc/pbd.h (ASM_INT_OP): Here.
- * config/sparc/sp64-elf.h (UNALIGNED_LONGLONG_ASM_OP): Here.
- * config/sparc/sparc.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP, IDENT_ASM_OP): Here.
- * config/sparc/sun4gas.h (UNALIGNED_DOUBLE_INT_ASM_OP,
- UNALIGNED_INT_ASM_OP, UNALIGNED_SHORT_ASM_OP): Here.
- * config/sparc/sysv4.h (STRING_ASM_OP, COMMON_ASM_OP, SKIP_ASM_OP,
- UNALIGNED_DOUBLE_INT_ASM_OP, UNALIGNED_INT_ASM_OP,
- UNALIGNED_SHORT_ASM_OP, PUSHSECTION_ASM_OP, POPSECTION_ASM_OP,
- TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
- CONST_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP,
- EH_FRAME_SECTION_ASM_OP): Here.
- * config/sparc/vxsim.h (COMMON_ASM_OP): Here.
- * config/spur/spur.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/tahoe/tahoe.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/v850/v850.h (SCOMMON_ASM_OP, ZCOMMON_ASM_OP,
- TCOMMON_ASM_OP): Here.
- * config/vax/vax.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP):
- Here.
- * config/we32k/we32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- ASM_BYTE_OP): Here.
-
-2000-09-25 Richard Henderson <rth@cygnus.com>
-
- * expmed.c (store_bit_field): Adjust last change to not consider
- any word-sized field naturally aligned.
-
-2000-09-24 Richard Henderson <rth@cygnus.com>
-
- * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle
- TFmode unordered compares properly. Revalidate integer compare
- operands.
- (alpha_emit_setcc): New.
- (alpha_emit_conditional_move): Revalidate integer compare operands.
- * config/alpha/alpha-protos.h: Update.
- * config/alpha/alpha.md (cmpdi): Allow general operands.
- (sne): Use alpha_emit_setcc.
- (seq, slt, sle, sgt, sge, sltu, sleu, sgtu, sgeu): Likewise.
- (sunordered, sordered): New.
-
-2000-09-24 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/ia64.c (call_multiple_values_operation): Remove.
- (ia64_expand_call): New.
- (ia64_expand_prologue): Emit an alloc if we need extra input
- registers.
- (ia64_expand_epilogue): New arg sibcall_p; don't emit the return
- instruction if true.
- (struct reg_flags): Add is_sibcall.
- (rtx_needs_barrier): A sibcall does not use CFM et al. Ignore USEs.
- (emit_insn_group_barriers): Set flags.is_sibcall. Remove hacks
- for CODE_FOR_gr_spill_internal/CODE_FOR_gr_restore_internal.
- * config/ia64/ia64.h (PREDICATE_CODES): Update.
- * config/ia64/ia64.md (call): Use ia64_expand_call.
- (call_value): Likewise.
- (sibcall, sibcall_value): New.
- (call patterns): Remove extra expanders; tidy.
- (sibcall_epilogue): New.
- (set_bsp): Remove the extra USE. Put the operand inside the UNSPEC.
-
-2000-09-24 Richard Henderson <rth@cygnus.com>
-
- * emit-rtl.c (gen_lowpart_common): Use trunc_int_for_mode.
-
- * sibcall.c (skip_pic_restore): New.
- (identify_call_return_value): Use it.
-
-2000-09-24 Mark Mitchell <mark@codesourcery.com>
-
- * c-tree.texi: Moved here from cp/ir.texi. Documented nested
- functions. Generalize to handle both C and C++.
- * Makefile.in (c-tree.info): New target.
- (info): Add c-tree.info.
-
-Sun Sep 24 09:15:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (store_field): If BITSIZE is negative, use size of type.
- (expand_expr, case COMPONENT_EXPR): Likewise.
-
-Sun 24-Sep-2000 11:40:23 BST Neil Booth <NeilB@earthling.net>
-
- * cpplex.c: Update TODO comment.
- * cpplib.c (do_error, do_warning): Merge common code of
- do_error and do_warning into do_diagnostic. Use it.
- (do_diagnostic): New function.
- * cpplib.h: Fix comment typo.
-
-2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_info): Warn for a wide character string
- used as a non-wide format argument.
-
-2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * builtins.def (BUILT_IN_LLABS): Add.
- * builtins.c (expand_builtin): Also abort on BUILT_IN_LLABS.
- * c-common.c (c_common_nodes_builtins): Create builtin functions
- __builtin_llabs, and plain llabs unless no_nonansi_builtins
- outside of C99 mode.
- (expand_tree_builtin): Handle BUILT_IN_LLABS.
-
-Sat 23-Sep-2000 22:39:18 BST Neil Booth <NeilB@earthling.net>
-
- * cpphash.h (CPP_RESERVE, CPP_PUTS_Q, CPP_PUTS, CPP_PUTC_Q,
- CPP_PUTC, DUMMY_TOKEN, NO_DUMMY_TOKEN): Delete.
- * cpplex.c (_cpp_expand_token_space, _cpp_init_toklist,
- _cpp_free_toklist): No need to worry about extra dummy token
- at the start of token lists any more.
- (trigraph_ok): Only warn outside comments.
- (skip_block_comment): Set and clear lexing_comment.
- (skip_line_comment): Take a cpp_reader not cpp_buffer.
- Set and clear lexing_comment.
- (parse_number): Handle leading '.' indicated by pfile->seen_dot.
- (check_long_token): Delete.
- (lex_percent, lex_dot): New subroutines of lex_token to
- handle lexing of '.' and '%' without lookback.
- (lex_token): Use lex_dot and lex_percent.
- (lex_line): Don't check for LIST_OFFSET.
- (_cpp_init_input_buffer): Update for new _cpp_init_toklist.
- * cpplib.c (_cpp_parse_assertion): Similarly.
- (cpp_push_buffer): Initialize extra_char.
- * cpplib.h (LIST_OFFSET): Delete.
- (struct cpp_buffer): New member extra_char.
- (struct lexer_state): New members lexing_comment and seen_dot.
-
-2000-09-23 Jason Merrill <jason@redhat.com>
-
- * config/rs6000/x-aix41 (CLIB): Define here.
- * config/rs6000/t-aix43: Not here.
- * config/rs6000/t-aix41: Or here. Remove.
- * configure.in: Don't use it.
-
-2000-09-22 Jason Merrill <jason@redhat.com>
-
- * configure.in: Add test for HAVE_LD_DWARF_LINKONCE.
- * toplev.c: Use it to initialize flag_eliminate_dwarf2dups.
- * config.in: Regenerate.
-
- * configure.in: Fix checks for assembler features when using a
- one-tree assembler that has not yet been built.
- Fix --disable-threads.
-
-2000-09-19 Geoff Keating <geoffk@cygnus.com>
-
- * stmt.c (expand_asm_operands): Allow # in constraints.
-
-2000-09-22 Jason Merrill <jason@redhat.com>
-
- * c-lex.c (skip_white_space): Just treat CRs as horizontal whitespace.
-
- * dbxout.c (dbxout_symbol_name): Just use DECL_NAME for
- function-local names.
-
-2000-09-22 Brad Lucier <lucier@math.purdue.edu>
- Mark Mitchell <mark@codesourcery.com>
-
- * toplev.c (warn_disabled_optimization): Declare new warning flag.
- * flags.h (warn_disabled_optimization): Add it here.
- * gcse.c (gcse_main): Add warning when disabled.
- * invoke.texi: Document -Wdisabled-optimization.
-
-2000-09-21 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (add_const_value_attribute): Multiply by length, not 4.
-
- * dwarf2out.c (tree_add_const_value_attribute): New fn.
- (gen_variable_die): Call it for non-definitions.
-
- * dwarf2out.c (die_struct): Add die_mark field.
- (mark_dies, unmark_dies): New fns.
- (clear_die_sizes): Remove.
- (print_die): Check die_symbol rather than die_offset.
- (build_abbrev_table, output_pubnames, output_aranges): Check
- die_mark rather than die_offset.
- (output_comp_unit): Move calc_die_sizes after build_abbrev_table.
- Call mark_dies.
-
-Thu 21-Sep-2000 18:19:05 BST Neil Booth <NeilB@earthling.net>
-
- * cppfiles.c (lookup_include_file): Rename to open_file.
- Always create a splay tree value, even on syscall failures.
- Negative entries indicated by fd == -2.
- Re-open files closed in the meantime.
- (_cpp_fake_include): Create a negative splay tree entry.
- (find_include_file, cpp_read_file): Update for function name
- change.
- * gcc.gd/cpp/mi4.c: Testcase.
-
-2000-09-21 Nick Clifton <nickc@redhat.com>
-
- * config/arm/t-arm-elf (MULTILIB_DIRNAMES): Enable multilibs for
- ARM and THUMB modes.
-
- * config/mcore/mcore.c: Fix compile time warnings.
- * config/mcore/mcore-protos.h: Fix compile time warnings.
-
-2000-09-20 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * configure.in: Correct test of gcc_cv_glibc.
- * configure: Rebuilt.
- * config.in: Rebuilt.
-
-2000-09-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_fputs): Also expand when length!=1.
- (expand_builtin): Handle BUILT_IN_FWRITE.
-
- * builtins.def (BUILT_IN_FWRITE): New entry.
-
- * c-common.c (c_common_nodes_and_builtins): Declare __builtin_fwrite.
-
-Wed Sep 20 15:39:14 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * gcc.c (modify_target): New variable and struct.
- (process_command): Handle MODIFY_TARGET_NAME.
- * tm.texi (MODIFY_TARGET_NAME): Add documentation for new macro.
- * config/pa/pa.h (MODIFY_TARGET_NAME): New macro.
-
- * c-decl.c (finish_decl): Add else's to avoid referencing
- TYPE_DOMAIN of an ERROR_MARK.
-
-Wed Sep 20 21:44:31 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.c (adjust_insn_length): Adjust lengths of
- `reload_in*' insns.
-
-2000-09-19 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.md (neghi2): Add alternative for input and output
- operands in different registers, as in negsi2.
- (*negsi2): Remove '*' from the name. Use "movw" if available.
-
-2000-09-19 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/crtbegin.asm (__dso_handle): Delete use of
- HAVE_GAS_HIDDEN macro.
-
-Tue 19-Sep-2000 22:38:57 BST Neil Booth <NeilB@earthling.net>
-
- * cpplex.c (lex_line): Drop the EOF token for unknown
- directives in assembler.
-
-2000-09-19 David Edelsohn <edelsohn@gnu.org>
-
- * configure.in: Allow enable_threads_flag value of "aix". Define
- thread_file as "aix" for AIX 4.3 and above.
- * configure: Regenerated.
-
- * gthr-aix.h: New file.
-
- * rs6000/t-aix43: Replace soft-float multilib with pthread.
- Remove 403 processor multilib match. Fix rios2 processor multilib
- match.
-
- * rs6000/aix.h (ASM_DECLARE_FUNCTION_NAME): Use function_section
- to return to appropriate csect.
-
-2000-09-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (is_valid_printf_arglist, expand_builtin_printf): New
- functions.
- (expand_builtin_fputs): Set `target' parameter for `expand_expr'.
- (expand_builtin): Handle BUILT_IN_PUTCHAR, BUILT_IN_PUTS and
- BUILT_IN_PRINTF.
-
- * builtins.def (BUILT_IN_PUTCHAR, BUILT_IN_PUTS, BUILT_IN_PRINTF):
- New entries.
-
- * c-common.c (init_function_format_info): Handle __builtin_printf.
- Set `check_function_format_ptr'.
- (c_common_nodes_and_builtins): Set `puts_ftype' and
- `printf_ftype'. Declare __builtin_putchar, __builtin_puts,
- __builtin_printf and printf.
-
- * tree.c, tree.h (check_function_format_ptr): Declare.
-
-Tue 19-Sep-2000 18:26:57 BST Neil Booth <NeilB@earthling.net>
-
- * cppfiles.c (read_include_file): Take no special action for
- zero-length files.
-
-2000-09-19 Bernd Schmidt <bernds@redhat.co.uk>
-
- * final.c (insn_current_reference_address): Use INSN_SHUID of seq
- rather than that of branch.
- (shorten_branches): Don't increment insn_current_address twice.
-
- Undo most of the Wed Jan 27 23:39:53 1999 patch:
- * loop.h (struct induction): Delete members derived, ix and last_use.
- (struct loop_ivs): Delete members first_increment_giv and
- last_increment_giv.
- * loop.c (verify_dominator, find_life_end, cmp_recombine_givs_stats,
- recombine_givs): Delete functions.
- (find_and_verify_loops): Don't initialize cont_dominator.
- (strength_reduce): Lose code to try to find bivs that can be
- expressed as givs of another biv, and to convert biv increments
- into givs.
- Lose loop_scan_start variable, always use loop->scan_start.
- Don't call recombine_givs. Don't handle derived givs.
- (record_giv): Don't initialize derived and last_use fields.
- (biv_eliminiation_giv_has_0_offset): Lose code to handle derived
- givs.
- * unroll.c (derived_regs): Delete static variable.
- (unroll_loop): Don't initialize it.
- (copy_loop_body): Lose code to handle derived givs.
- (find_splittable_givs): Don't check for givs made from biv
- increments.
- Don't set derived_regs.
-
- Fix misapplied earlier patch:
- * config/sh/sh.md (floatsisf_ie): Reenable. Remove explicit reference
- to fpul.
- (floatsisf2): Generate floatsisf_ie by default.
- (floatsisf_i4): Conditional on TARGET_SH4.
-
- (floatsisf2, floatsidf2, extendsfdf2): Also use reg_no_subreg_operand
- predicate for the expanders.
-
-2000-09-19 Richard Henderson <rth@cygnus.com>
-
- * config/i386/i386.h (CPP_CPU_SPEC): Define i586 and i686 symbols
- in addition to pentium and pentiumpro symbols.
- (CPP_CPU_DEFAULT_SPEC): Likewise.
-
- * c-typeck.c (c_expand_asm_operands): Restore the output tree
- after expanding.
-
- * stmt.c (expand_expr_stmt): Only call warn_if_unused_value
- if the tree has side effects.
- (warn_if_unused_value): Do not warn about void constructs.
-
- * c-decl.c (poplevel): Invoke warn_about_unused_variables.
-
- * unroll.c (copy_loop_body): Update LABEL_NUSES before
- calling invert_jump.
-
-2000-09-18 Geoff Keating <geoffk@cygnus.com>
-
- * combine.c (can_combine_p): Don't substitute an ASM_OPERANDS
- into anything.
-
-2000-09-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (c-common.o): Depend on diagnostic.h.
-
- * c-common.c: Include diagnostic.h.
- (tfaff): Delete.
- (status_warning): New function.
- (check_format_info, maybe_read_dollar_number, check_format_types,
- finish_dollar_format_checking, check_function_format): Accept a
- `status' parameter. All callers changed.
-
- * c-common.h (check_function_format): Accept a `status' parameter.
-
- * c-typeck.c: Update call to `check_function_format'.
-
-2000-09-18 Richard Henderson <rth@cygnus.com>
-
- * c-decl.c (c_expand_body): Call mark_varargs before
- expand_function_start.
-
-2000-09-18 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/eabi-cn.asm: Use /**/ to delimit comments, not #.
- * config/rs6000/eabi-ci.asm: Likewise.
-
-2000-09-18 Richard Henderson <rth@cygnus.com>
-
- * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx
- for BImode.
-
-2000-09-18 Jim Wilson <wilson@cygnus.com>
-
- * unroll.c (loop_iterations): Pass increment to extend_for_giv_value
- before passing it to fold_rtx_mult_add.
-
- * unroll.c (final_giv_value): Pass increment through
- extend_value_for_giv before passing it to emit_iv_add_mult.
-
- * function.c (fixup_var_refs_1, case ZERO_EXTRACT): If we have a
- paradoxical subreg, then directly substitute the replacement and
- return.
-
-Mon 18-Sep-2000 22:12:44 BST Neil Booth <NeilB@earthling.net>
-
- * cpp.texi: Update documentation, including some clarifications,
- the treatment of various newline combinations, and space between
- backslash and newline.
-
-Mon Sep 18 21:00:47 2000 J"orn Rennecke <amylaar@redhat.co.uk>
-
- * sdbout.c (PUT_SDB_DEF, PUT_SDB_TAG, PUT_SDB_EPILOGUE_END):
- Replace ASM_OUTPUT_LABELREF with assemble_name.
-
-Mon Sep 18 20:26:50 2000 J"orn Rennecke <amylaar@redhat.co.uk>
-
- * sh.c (addsubcosts): CONST is not cheap.
- (find_barrier): For Sh1, take alignment after jumps into account.
-
-2000-09-15 Andrew Haley <aph@redhat.com>
-
- * toplev.c (rest_of_compilation): Call purge_hard_subreg_sets to
- remove all SETs of SUBREGs of hard registers.
- * function.c (purge_hard_subreg_sets): New function.
- (purge_single_hard_subreg_set): New function.
- * rtl.h: (purge_hard_subreg_sets): New function.
-
-2000-09-18 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/ia64.c (signed_inequality_operator): New.
- (ia64_expand_compare): New.
- (ia64_register_move_cost): Handle PR_REGS moves.
- (ia64_secondary_reload_class): Require a GR when moving to a PR.
- (struct reg_write_state): Add written_by_and/or.
- (struct reg_flags): Add is_and/or.
- (rws_update): Set them.
- (rws_access_regno): Test them to allow parallel comparisons.
- (rtx_needs_barrier): Recognize parallel comparisons.
- (emit_insn_group_barriers): Set prev_insn after a call stop bit.
- Call recog_memoized; ignore pred_rel_mutex.
- (emit_predicate_relation_info): Don't call find_basic_blocks here.
- (ia64_reorg): Do it here instead.
- * config/ia64/ia64.h: s/CCmode/BImode/g
- (MODES_TIEABLE_P): Don't tie BImode.
- (PREFERRED_RELOAD_CLASS): Do not reload operations into AR regs.
- (CONST_COSTS): Pick sensible values for CONST_INT based on context.
- (RTX_COSTS): Make multiply 4 insns.
- (MEMORY_MOVE_COST): New.
- (PREDICATE_CODES): Update.
- * config/ia64/ia64.md: s/CCmode/BImode/g
- (movcci, movbi): New.
- (andbi3, andcmbi3, iorbi3, iorcmbi3, one_cmplbi2): New.
- (cmpsi_and_0, cmpsi_and_1, cmpsi_andnot_0, cmpsi_andnot_1): New.
- (cmpdi_and_0, cmpdi_and_1, cmpdi_andnot_0, cmpdi_andnot_1): New.
- (tbit_and_0, tbit_and_1, tbit_and_2, tbit_and_3): New.
- (cmpsi_or_0, cmpsi_or_1, cmpsi_orcm_0, cmpsi_orcm_1): New.
- (cmpdi_or_0, cmpdi_or_1, cmpdi_orcm_0, cmpdi_orcm_1): New.
- (tbit_or_0, tbit_or_1, tbit_or_2, tbit_or_3): New.
- (mulsi, muldi): Use xmpy not xma.
- (cmpbi): New.
- (movcc, movcc_internal): Remove.
- (branch expanders): Use ia64_expand_compare.
- (setcc expanders): Likewise.
- (cmov insns): Use move_operand and ia64_move_ok.
- (pred_rel_mutex): Use unspec not unspec_volatile. Prevent the
- scheduler from moving it past a use.
- * config/ia64/build.hacks: Remove.
-
-Mon 18-Sep-2000 19:21:35 BST Neil Booth <NeilB@earthling.net>
-
- * cpphash.h (HASHSTEP): Take character rather than pointer
- to character.
- (_cpp_check_directive, _cpp_check_linemarker): Update prototypes.
-
- * cpphash.c (cpp_loookup): Update for new HASHSTEP.
-
- * cpplex.c (auto_expand_name_space, trigraph_replace,
- backslash_start, handle_newline, parse_name, INIT_TOKEN_STR,
- IMMED_TOKEN, PREV_TOKEN_TYPE, PUSH_TOKEN, REVISE_TOKEN,
- BACKUP_TOKEN, BACKUP_TRIGRAPH, MIGHT_BE_DIRECTIVE,
- KNOWN_DIRECTIVE): Delete.
-
- (handle_newline, check_long_token, skip_escaped_newlines,
- unterminated): New functions.
- (ACCEPT_CHAR, SAVE_STATE, RESTORE_STATE): New macros.
-
- (parse_identifier): Was parse_name, new implementation.
- (skip_line_comment, skip_block_comment, skip_whitespace,
- parse_number, parse_string, trigraph_ok, save_comment,
- adjust_column, _cpp_get_line): New implementations.
-
- (lex_token): New function. Lexes a token at a time, looking
- forwards. Contains most of the guts of the old lex_line.
- (lex_line): New implementation, using lex_token to obtain
- individual tokens.
- (cpp_scan_buffer): Use the token's line, not the list's line.
-
- * cpplib.c (_cpp_check_directive, _cpp_check_linemarker):
- New implementations.
- (do_assert): Don't bother setting the answer's list's line.
- (cpp_push_buffer): Initialize new pfile and read_ahead members
- of struct cpp_buffer.
-
- * cpplib.h (cppchar_t): New typedef.
- (struct cpp_buffer): read_ahead, pfile and col_adjust are
- new members.
- (struct lexer_state): New structure that determines the state
- and behavior of the lexer.
- (IN_DIRECTIVE, KNOWN_DIRECTIVE): New macros.
- (struct cpp_reader): New member "state". Rename
- multiline_string_line and multiline_string_column. Delete
- col_adjust, in_lex_line members.
- (CPP_BUF_COLUMN): Update.
-
-2000-09-18 Richard Henderson <rth@cygnus.com>
-
- * combine.c (simplify_comparison): Shift a NOT out of a single
- bit test.
-
- * combine.c (if_then_else_cond): Canonicalize BImode true to
- STORE_FLAG_VALUE.
- * explow.c (trunc_int_for_mode): Likewise.
-
- * combine.c (combine_simplify_rtx): Use gen_unary to distribute
- the NOT for De Morgan's rule.
- * simplify-rtx.c (simplify_unary_operation): Simplify a BImode NOT
- of a comparison to the reverse comparison.
-
- * combine.c (try_combine): Allow split to create a single insn.
-
- * machmode.def: Add BImode. Add a column for bitsize.
- * machmode.h (DEF_MACHMODE): Adjust for extra column.
- (GET_MODE_BITSIZE): Use it.
- * rtl.c (DEF_MACHMODE): Adjust for extra column.
- (mode_bitsize): New.
- (mode_mask_array): Use bitsize.
- * combine.c (combine_simplify_rtx): Require inner and outer
- modes to match on nonzero_bits optimizations.
-
-2000-09-18 Bernd Schmidt <bernds@redhat.co.uk>
-
- * reload1.c (forget_old_reloads_1): If a hard reg is stored, clear
- its entry in spill_reg_store.
- * config/sh/lib1funcs.ams (movstr_i4 functions): Always compile in.
- * sh.c (reg_no_subreg_operand): New function.
- * sh-protos.h (reg_no_subreg_operand): Declare it.
- * sh.h (PREDICATE_CODES): Add it.
- * sh.md (floatsisf2_i4, floatsidf2_i, extendsfdf2_i4): Use it for
- input operand that needs to be in fpul.
- (fix_truncsfsi2, fix_truncsfsi2_i4): Use register_operand for output.
- * sh.c (find_barrier): Take into account that machine_dependent_reorg
- might add new insns.
-
-2000-09-18 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (sh_expand_prologue): Mark GOTaddr2picreg as
- MAYBE_DEAD.
- (sh_expand_epilogue): Take the PIC register into account when
- computing the frame size.
-
- * config/sh/sh.c (nonpic_symbol_mentioned_p): Check LABEL_REFs.
- * config/sh/sh.md (sym_label2reg, symPLT_label2reg): Protect
- LABEL_REFs with a PIC-safe unspec.
-
-2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_info): Properly save the argument
- number and parameter for $ operand number formats in case width
- and precision arguments are also used. Allow printf width and
- precision arguments to have operand numbers even if none was
- specified for the main format, since this is OK for %*.*m. Only
- object to missing $ operand number if the format used requires an
- argument.
-
-2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (format_char_info): Add 'W' flag to comment.
- (print_char_table, scan_char_table): Use it.
- (check_format_info): Use the 'W' flag to determine whether a
- format argument is written into.
-
-2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_types): Reorganize and clean up,
- checking earlier for ERROR_MARKs and making cur_type into its
- TYPE_MAIN_VARIANT where convenient.
-
-2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.c (cpp_options): Add specs for __STDC_HOSTED__.
-
-2000-09-18 Bernd Schmidt <bernds@redhat.co.uk>
-
- * optabs.c (emit_libcall_block): Set CONST_CALL_P for the call.
-
- * i386-protos.h (ix86_init_builtins, ix86_expand_builtin): Declare.
- * i386.c (struct builtin_description): New.
- (bdesc_comi, bdesc_2arg, bdesc_1arg): New arrays.
- (mmx_reg_operand): Declare MODE arg as unused.
- (ix86_expand_sse_comi, ix86_expand_sse_compare, safe_vector_operand,
- ix86_expand_unop1_builtin, ix86_expand_unop_builtin,
- ix86_expand_binop_builtin, ix86_expand_store_builtin,
- ix86_init_builtins, ix86_expand_builtin): New functions.
- * i386.h (ix86_builtins): New enumeration.
- (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): New macros.
- * i386.md (attr length_immediate): 0 for mmx/sse types.
- (attr prefix_0f): 1 for mmx/sse types.
- (setcc_2): Remove "*" so we get gen_setcc_2.
- (emms): Account for changed register numbering. Set "memory" attr
- to unknown.
- (sfence): Set "memory" attr to unknown.
-
-2000-09-18 Andreas Jaeger <aj@suse.de>
-
- * configure.in: Define _GNU_SOURCE only when using the GNU C
- Library.
- * configure: Regenerated.
- * config.in: Regenerated.
-
-2000-09-17 Mark Mitchell <mark@codesourcery.com>
-
- * cppinit.c (cpp_init): Don't use ANSI prototypes.
- * flow.c (flow_dump_loop): Likewise.
- (flow_loops_dump): Likewise.
-
- * c-typeck.c (c_start_case): Fix typo.
-
-2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (grokdeclarator): Don't give a warning about defaulting
- to int for plain complex which defaults to complex double. Do
- warn about defaulting to complex double if pedantic. Warn about
- complex integer types if pedantic. Warn about complex types if
- pedantic and not in C99 mode.
- * c-typeck.c (build_unary_op): If pedantic, warn about use of ~
- for complex conjugation.
-
-2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * contrib.texi: Update my entry.
-
-Sun Sep 17 18:48:32 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.md (mcu_enhanced): New attribute.
- (mcu_mega): Likewise.
- (extendhisi2): Use mcu_enhanced.
- (zero_extendhisi2): Likewise.
- (call_insn): Use mcu_enhanced and mcu_mega.
- (call_value_insn): Likewise.
- (*sbrx_branch): Use mcu_mega.
- (*sbrx_and_branchsi): Likewise.
- (*sbrx_and_branchhi): Likewise.
- (*tablejump_lib): Likewise.
-
-Sun Sep 17 10:46:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * alias.c (true_dependence): Allow non-unchanging read to conflict
- with unchanging write.
-
- * expr.c (store_constructor_field): Accept ALIAS_SET arg.
- (store_constructor): Pass alias_set to it.
-
- * c-decl.c (grokdeclarator): Reorder tests to avoid looking at
- TYPE_MAIN_VARIANT of ERROR_MARK.
- * c-lex.c (readescape): Avoid using printf syntax we don't recognize.
-
- * simplify-rtx.c (simplify_unary_operation): Add cases
- FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0.
-
-2000-09-17 Bernd Schmidt <bernds@redhat.co.uk>
-
- * expr.h (emit_library_call, emit_library_call_value): Delete
- declarations.
- * rtl.h (enum libcall_type): New.
- (emit_library_call, emit_library_call_value): Change fn_type arg to
- be of type enum libcall_type.
- * calls.c: Likewise for the function definitions. Several callers
- throughout changed to use the new enumeration appropriately.
- (emit_library_call_value_1): Likewise. Put back code to make libcall
- blocks of equal form, but only use it for the two new higher
- enumeration values.
-
-2000-09-16 Mark Mitchell <mark@codesourcery.com>
-
- Convert the C front-end to use function-at-a-time mode.
- * c-common.h: Include splay-tree.h.
- (C_DECLARED_LABEL_FLAG): New macro.
- (struct language_function): Add x_scope_stmt_stack and
- x_function_name_declared_p.
- (RECHAIN_STMTS): Move definition.
- (lang_statement_code_p): Likewise.
- (lang_expand_stmt): Likewise.
- (lang_expand_decl_stmt): New variable.
- (lang_expand_function_end): Likewise.
- (current_scope_stmt_stack): New function.
- (add_decl_stmt): Likewise.
- (add_scope_stmt): Likewise.
- (mark_stmt_tree): Likewise.
- (struct c_lang_decl): New structure.
- (DECL_SAVED_TREE): Define.
- (c_mark_lang_decl): New function.
- (c_expand_start_cond): Change prototype.
- (c_finish_then): New function.
- (c_finish_else): Likewise.
- (current_function_name_declared): Remove.
- (set_current_function_name_declared): Likewise.
- (mark_c_language_function): Declare.
- (case_compare): Likewise.
- (c_add_case_label): Likewise.
- (c_expand_expr): Likewise.
- (c_safe_from_p): Likewise.
- * c-common.c (lang_expand_function_end): New variable.
- (struct if_elt): Add if_stmt.
- (c_expand_start_cond): Add the if-statement to the statement-tree,
- rather than generating RTL.
- (c_finish_then): New function.
- (c_expand_start_else): Don't generate RTL.
- (c_finish_else): New function.
- (c_expand_expr_stmt): Don't generate RTL.
- (statement_code_p): Add SCOPE_STMT.
- (case_compare): New function.
- (c_add_case_label): Likewise.
- (mark_stmt_tree): Likewise.
- (c_mark_lang_decl): Likewise.
- (mark_c_language_function): Likewise.
- (c_expand_expr): Likewise.
- (c_safe_from_p): Likewise.
- * c-decl.c (c_stmt_tree): New variable
- (c_scope_stmt_stack): Likewise.
- (c_function_name_declared_p): Likewise.
- (lang_expand_expr_stmt): Remove.
- (poplevel): Don't call output_inline_function for nested
- functions.
- (pushdecl): Don't set DECL_CONTEXT for a local declaration of an
- `extern' function.
- (redeclaration_error_message): Change means of computing whether
- or not a function is nested.
- (lookup_label): Don't call label_rtx.
- (init_decl_processing): Add more GC roots.
- (start_decl): Add DECL_STMTs to the statement-tree, rather than
- calling rest_of_decl_compilation.
- (finish_decl): Don't call expand_decl.
- (store_parm_decls): Begin the statement-tree, but don't generate
- RTL.
- (finish_function): Tie off the statement-tree. Call c_expand_body
- if appropriate.
- (c_expand_body): New function.
- (push_c_function_context): Save more information.
- (pop_c_function_contxt): Likewise.
- (copy_lang_decl): Now that we use DECL_LANG_SPECIFIC, copy it.
- (lang_mark_tree): Mark it.
- (current_stmt_tree): Adjust.
- (current_scope_stmt_stack): New function.
- (do_case): Remove.
- (set_current_name_declared): Likewise.
- (c_begin_compound_stmt): Define.
- (c_expand_decl_stmt): Likewise.
- * c-lang.c: Include rtl.h and expr.h.
- (lang_init): Set more language-specific hooks.
- * c-lex.c: Include expr.h.
- * c-parse.in: Changes throughout to add statements to the
- statement-tree, rather than generating RTL after every statement.
- * c-semantics.c (lang_expand_decl_stmt): Define.
- (add_decl_stmt): New function.
- (add_scope_stmt): Likewise.
- (finish_stmt_tree): Tweak.
- (genrtl_expr_stmt): Likewise.
- (genrtl_decl_stmt): Handle local labels, and call
- lang_expand_decl_stmt if required.
- (genrtl_for_stmt): Fix line-number handling.
- (genrtl_case_label): Handle cleanups.
- (genrtl_asm_stmt): Don't call combine_strings.
- (genrtl_compound_stmt): Simplify.
- (expand_stmt): Handle SCOPE_STMTs.
- * c-tree.h (struct lang_decl): New structure.
- (C_DECLARED_LABEL_FLAG): Remove.
- (c_begin_compound_stmt): Declare.
- (c_expand_decl_stmt): Likewise.
- (c_expand_start_case): Rename to c_start_case.
- (c_finish_case): New function.
- * c-typeck.c (start_init): Tweak setting of
- constructor_incremental.
- (c_expand_asm_operands): Tweak error-handling. Add to the
- statement-tree.
- (c_expand_return): Add to the statement-tree.
- (c_expand_start_case): Rename to ...
- (c_start_case): ... this.
- (struct c_switch): New type.
- (switch_stack): New variable.
- (do_case): Simplify.
- (c_finish_case): New function.
- * dependence.c: Include expr.h.
- (enum dependence_type): Change spelling of enumerals.
- (check_node_dependence): Adjust.
- * expr.h (lang_safe_from_p): Declare.
- (safe_from_p): Likewise.
- * expr.c (lang_safe_from_p): New variable.
- (safe_from_p): Give it external linkage. Use lang_safe_from_p.
- * stmt.c (expand_expr_stmt): Avoid clobberring of last_expr_type.
- * toplev.c (rest_of_decl_compilation): Robustify.
- * tree.c (contains_placeholder_p): Likewise.
- * Makefile.in: Update dependencies.
- * objc/objc-act.h: Adjust calculation of value for dummy_tree_code.
- * objc/objc-act.c: Include rtl.h, expr.h, and c-common.h.
- (objc_expand_function_end): New function.
- (finish_method_def): Use it.
- (init_objc): Initialize more language-specific hooks.
- * objc/Make-lang.in: Update dependencies.
-
-2000-09-16 Geoffrey Keating <geoffk@cygnus.com>
-
- * configure.in: Define macros that affect features before
- testing for features. Don't define _XOPEN_SOURCE.
- * configure: Regenerated.
- * config.in: Regenerated.
-
-Sat Sep 16 19:42:50 EDT 2000 John Wehle (john@feith.com)
-
- * rtlanal.c (rtx_varies_p): Volatile asms vary.
- (rtx_unstable_p): Restructure code. Volatile asms
- are unstable.
-
-Sat Sep 16 14:35:55 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * function.h (no_debugging_symbols): New field.
- * integrate.c (save_for_inline): Renamed from save_for_inline_nocopy.
- Initialize no_debugging_symbols.
- (output_inline_function): Save and restore write_symbols and set from
- no_debugging_symbols.
- * toplev.c (rest_of_compilation): Call save_for_inline.
- * tree.h: Update comment.
-
- * stor-layout.c (place_field): Don't do anything if field or
- its type are ERROR_MARK.
-
-Sat Sep 16 19:14:00 2000 Laurynas Biveinis <lauras@softhome.net>
-
- * cppfiles.c (purge_cache): Use munmap only if MMAP_THRESHOLD defined.
- (read_include_file): Ensure inc->mmaped is initialized.
-
-2000-09-16 Richard Henderson <rth@cygnus.com>
-
- * cppiles.c (purge_cache): Use PTR not caddr_t.
-
-2000-09-16 Hans-Peter Nilsson <hp@axis.com>
-
- * gcc.c: In description for %{<S}, say the option removed is -S.
- * invoke.texi (Spec Files): Ditto.
-
-2000-09-16 Andreas Jaeger <aj@suse.de>
-
- * configure.in: Always define _GNU_SOURCE to make interfaces
- visible that were hidden by only defining _GNU_SOURCE.
- * configure: Regenerated.
-
-Sat 16-Sep-2000 08:13:45 BST Neil Booth <NeilB@earthling.net>
-
- * cpplex.c (push_macro_context): Set an argument's level after
- calling parse_args. We could loop infinitely otherwise.
-
-2000-09-15 Tom Tromey <tromey@cygnus.com>
-
- * configure, config.in: Rebuilt.
- * configure.in: Check for iconv.h. Define _XOPEN_SOURCE.
-
-2000-09-15 Greg McGary <greg@mcgary.org>
-
- * cppmacro.c (check_trad_stringification): Check token
- text pointers against limit before dereferencing.
-
-2000-09-15 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (format_wanted_type): New structure.
- (check_format_types): New function.
- (check_format_info): Pass all checking of types of format
- arguments, including width and precision arguments, to this new
- function.
-
-2000-09-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * BUGS: Remove file.
-
-2000-09-15 Jakub Jelinek <jakub@redhat.com>
-
- * config/alpha/alpha.c (override_options): ev6 cache latencies
- from Richard Henderson. Don't allow -mmemory-latency=L0.
-
- * config/alpha/alpha.h (TARGET_CPU_EV5, TARGET_CPU_EV6): Define.
- (TARGET_OPTIONS): Add tune=.
- (alpha_tune_string): Declare.
- * config/alpha/alpha.c (override_options): Add cpu_table.
- Use alpha_cpu_string first to set both alpha_cpu and target_flags
- and then alpha_tune_string to set alpha_cpu only.
- Replace tests for PROCESSOR_EV* with TARGET_CPU_EV* tests.
- * config/alpha/elf.h (ASM_FILE_START): Likewise.
- * config/alpha/osf.h (ASM_FILE_START): Likewise.
- * config/alpha/openbsd.h (ASM_FILE_START): Likewise.
-
-Fri Sep 15 19:45:55 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386-protos.h (no_comparison_operator, uno_comparison_operator):
- Remove.
- (ix86_comparison_operator, ix86_cc_mode): Declare
- * i386.h (CCGC, CCGCO): New modes.
- (SELECT_CC_MODE): Move offline to ....
- * i386.c (ix86_cc_mode): .... here; use new modes.
- (ix86_comparison_operator): New.
- (fcmov_comparison_operator): Ensure proper mode.
- (put_condition_mode): More sanity checking.
- (ix86_match_ccmode): Handle new modes.
- (ix86_expand_fp_compare): GEU requires CCmode.
- (ix86_expand_strlensi_unroll_1): Use emit_cmp_and_jump_insn instead of
- doing it by hand.
- * i386.md (cmp?i_ccz_1): Remove
- (cmp?i_ccno_1): Use ix86_match_ccmode.
- (cmp?i_minus_1): New.
- (cmpsi_1): New expander.
- (cmpqi_ext_1): Use match_ccmode
- (cmpqi_ext_3): New expander.
- (cmpqi_ext_3_insn): Rename from cmpqi_ext_3.
- (cmpqi_ext_4): Use match_ccmode.
- (add?i_?): Use match_ccmode.
- (add?i_6): New.
- (test?i_ccz_1): Remove
- (test?i_1): New.
- (testsi_ccno_1, testqi_ccz_1, testqi_ext_ccno_0): New expander.
- (testqi_ext_0): Use ix86_match_ccmode.
- (*xorqi_cc_ext_1): Use ix86_match_ccmode.
- (xorqi_cc_ext_1): New expander.
- (shift patterns): Use CCGOCmode for all shifts except for sar.
- (setcc_?, jcc_?, miv?icc_nic): Use ix86_comparison_operator.
- (setcc_3, jcc_3, miv?icc_c): Remove.
-
-2000-09-15 Will Cohen <wcohen@redhat.com>
-
- * dwarf2out.c (add_const_value_attribute): Changed array into a
- xmalloced object, so it exists after function exit.
- (free_AT): Added case for dw_val_class_float to free allocated
- memory.
-
-2000-09-15 Kazu Hirata <kazu@hxi.com>
-
- * config/i386/i386.md: Fix a comment typo.
- * gcc.c: Fix formatting.
-
-2000-09-15 Bernd Schmidt <bernds@redhat.co.uk>
-
- * optabs.c (emit_libcall_block): If target is a user variable,
- copy to a temporary first.
- * expr.c (convert_move): When generating a libcall, make a libcall
- block.
- * calls.c (emit_library_call_value_1): Don't create a libcall
- sequence here; our caller will in most cases do it.
-
- * sh.h (SECONDARY_INPUT_RELOAD_CLASS): Handle moving T, MACL or
- MACH into FPUL.
- (SECONDARY_OUTPUT_RELOAD_CLASS): Similar case.
- * sh.md (reload_outsf): Generate recognizable patterns for
- TARGET_SH3E.
- (floatsisf2, floatsisf2_ie, floatsisf2_i4, fix_truncsfsi2,
- fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i, fix_truncdfsi2,
- fix_truncdfsi2_i, extendsfdf2, extendsfdf2_i4, truncdfsf2,
- truncdfsf2_i4): Change not to use explicit references to fpul.
- (floatsisf2_ie): Remove USE of fpscr.
- (floatsisf2): Change default expansion to match this.
- (fix_truncsfsi2_i4_2, fix_truncdfsi2_i4 & splitters): Comment out
- unused patterns.
-
-2000-09-15 Richard Henderson <rth@cygnus.com>
-
- * expmed.c (store_bit_field): Consider naturally aligned
- memory for direct reference.
-
-2000-09-15 Richard Henderson <rth@cygnus.com>
-
- * config/alpha/alpha.c (alpha_expand_unaligned_load): Force all
- AND addresses into alias set 0.
- (alpha_expand_unaligned_store): Likewise.
- (alpha_expand_unaligned_load_words): Likewise.
- (alpha_expand_unaligned_store_words): Likewise.
-
-2000-09-15 Bernd Schmidt <bernds@redhat.co.uk>
-
- * config/sh/sh.h (CPP_SPEC): For -m4-nofpu, define __SH4_NOFPU__.
- * config/sh/lib1funcs.asm (movstr_i4): Also compile if __SH4_NOFPU__
- is defined.
- * config/mips/mips.c (mips_va_arg): Args passed by reference have a
- rsize of UNITS_PER_WORD.
-
-Fri 15-Sep-2000 06:49:07 BST Neil Booth <NeilB@earthling.net>
-
- * cpplex.c (ON_REST_ARG): Correct the test.
- (maybe_paste_with_next): Duplicate a token that fail pasting,
- and clear its PASTE_LEFT flag, so that nested pasting attempts
- do not occur.
-
-2000-09-14 Richard Henderson <rth@cygnus.com>
-
- * calls.c (precompute_register_parameters): Use COSTS_N_INSNS, not 2.
- * cse.c (rtx_cost): Likewise.
- * optabls.c (expand_binop): Likewise.
- (expand_twoval_binop, prepare_cmp_insn): Likewise.
- * regclass.c (copy_cost): Likewise.
- * reload1.c (reload_cse_move2add): Likewise.
-
-2000-09-14 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (reswords): Add _Complex.
-
-2000-09-14 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * gcc.1: Delete documentation for -undef preprocessor option.
-
-2000-09-14 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
- STARTFILE_SPEC, ENDFILE_SPEC): Remove define.
- * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
- Remove undefine before config/elfos.h.
- * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Comment out.
-
-2000-09-14 Kazu Hirata <kazu@hxi.com>
-
- * invoke.texi (H8/300 Options): Add -ms2600.
- * config/h8300.c (h8300_init_once): Output an error when -ms2600
- is used without -ms.
- * config/h8300.h (TARGET_MAC): New.
- (TARGET_SWITCHES): Add -ms2600 and -mno-s2600.
- (CONDITIONA_REGISTER_USAGE): Disable the mac register on any
- machine other than H8S/2600.
- * config/h8300.md: Accept mac instructions on the H8S/2600 instead
- of the H8S/2000.
-
-2000-09-14 Alexandre Oliva <aoliva@redhat.com>, Bernd Schmidt <bernds@redhat.co.uk>
-
- * reload.c (find_reloads_address_1): Generate reloads for auto_inc
- pseudos that refer to the original pseudos, not only to their
- equivalent memory locations.
-
-Thu Sep 14 12:10:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case COMPONENT_EXPR): Copy memory attributes
- when making new MEM.
-
- * Makefile.in (LN): Remove duplicate definition.
-
-2000-09-12 Bernd Schmidt <bernds@redhat.co.uk>
-
- From Joern Rennecke:
- * local-alloc.c (update_equiv_regs): If there is no REG_EQUAL note
- on an insn and function_invariant_p returns nonzero for the source,
- add a REG_EQUAL note.
-
-Thu Sep 14 00:51:57 EDT 2000 John Wehle (john@feith.com)
-
- * alias.c (memrefs_conflict_p): An ADDRESSOF doesn't
- conflict with frame_pointer_rtx.
-
-2000-09-13 Kazu Hirata <kazu@hxi.com>
-
- * loop.c: Fix formatting.
- * loop.h: Likewise.
-
-2000-09-13 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (divsf3): New.
- (divsf3_internal_lat, divsf3_internal_thr): New.
- (divdf3, divdf3_internal_lat, divdf3_internal_thr): New.
- (divtf3, divtf3_internal_lat, divtf3_internal_thr): New.
- (adddf3_trunc, subdf3_trunc, muldf3_trunc): New.
- (madddf4_trunc, msubdf4_trunc, nmuldf3_trunc): New.
- (nmadddf4_alts, nmadddf4_trunc): New.
- (addtf3_truncsf, addtf3_truncdf, subtf3_truncsf): New.
- (subtf3_truncdf, multf3_truncsf, multf3_truncdf): New.
- (multf3_truncsf_alts, multf3_truncdf_alts): New.
- (maddtf4_truncsf, maddtf4_truncdf, maddtf4_alts_truncdf): New.
- (msubtf4_truncsf, msubtf4_truncdf, nmultf3_truncsf): New.
- (nmultf3_truncdf, nmaddtf4_truncsf, nmaddtf4_truncdf): New.
- (nmaddtf4_truncdf_alts): New.
- (recip_approx): Don't predicate.
-
-2000-09-13 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/lib1funcs.asm (__divsf3): Protect fnorm.s with p6.
-
-2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * flags.h (flag_dump_rtl_in_asm): Declare.
- * toplev.c (flag_dump_rtl_in_asm): Define.
- (decode_d_option): Set flag_dump_rtl_in_asm and flag_print_asm_name
- if -dP is specified.
- * rtl.h (print_rtx_head): Declare.
- * print-rtl.c (print_rtx_head): Define.
- (print_rtx): Print the string pointed to by print_rtx_head
- at beginning of each dump line.
- (print_rtl): Likewise.
- (print_rtl_single): Likewise.
- * final.c (final_scan_insn): Dump the insn in the assembly
- file for debugging.
- * gcc.1: Document -dP option.
- * invoke.texi (Debugging Options): Likewise.
-
-2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * md.texi (Machine Constraints): Document the 68HC11 constraints.
- * install.texi (Configurations): Document the 68HC11&68HC12 port.
- * invoke.texi (Option Summary, M68hc1x Options): Document the options.
-
-Tue Sep 12 13:51:13 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.h (ASSEMBLER_DIALECT): New macro declared.
- * config/avr/avr.md (*movstrqi_insn): Cleanup output template.
- (*clrstrqi): Likewise.
- (xorhi3,xorsi3,absqi2): Likewise.
- (one_cmplhi2,one_cmplsi2): Likewise.
- (addsi3): Two stupid constraint alternatives removed.
- (extendhisi2): Use `movw' for enhanced avr cores.
- (zero_extendhisi2): Likewise.
-
-Wed Sep 13 02:31:23 EDT 2000 John Wehle (john@feith.com)
-
- * alias.c (find_base_term): Use frame_pointer_rtx
- when handling an ADDRESSOF.
-
- * cse.c (canon_hash): Handle USE of BLKmode memory.
- (cse_insn): Outgoing arguments for a libcall don't
- affect any recorded expressions.
-
-2000-09-12 Tom Tromey <tromey@cygnus.com>
-
- * configure, config.in: Rebuilt.
- * configure.in: Check for iconv, nl_langinfo, langinfo.h.
-
-2000-09-12 Jakub Jelinek <jakub@redhat.com>
-
- * c-lex.c (lex_string): Use charwidth to compute bytemask.
- * expr.c (expand_expr): Don't optimize constant array references
- initialized with wide string constants.
-
-2000-09-13 Michael Hayes <mhayes@cygnus.com>
-
- * loop.c (note_set_pseudo_multiple_uses): Correct.
-
-2000-09-12 Jim Wilson <wilson@cygnus.com>
-
- * ifcvt.c (noce_process_if_block): If A and B are the same, and no
- else block, and X has side-effects, then fail.
-
-2000-09-12 Greg McGary <greg@mcgary.org>
-
- * config/mips/mips-protos.h
- (trap_cmp_op, mips_gen_conditional_trap): New func decls.
- * config/mips/mips.h (ISA_HAS_COND_TRAP): New macro.
- (PREDICATE_CODES): Add "trap_cmp_op".
- * config/mips/mips.c
- (trap_cmp_op, mips_gen_conditional_trap): New functions.
- * config/mips/mips.md (trap, conditional_trap): New patterns.
-
-2000-09-12 Bernd Schmidt <bernds@redhat.co.uk>
-
- * flow.c (try_pre_increment_1): Don't do anything to sets of the stack
- pointer.
-
-2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (built_in_decls): New array.
- (expand_builtin_fputs): New function.
- (expand_builtin): Handle BUILT_IN_FPUTC and BUILT_IN_FPUTS.
-
- * builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTS): New members.
-
- * c-common.c (c_common_nodes_and_builtins): Handle fputc/fputs.
-
- * tree.h (built_in_decls): New array.
-
-Tue Sep 12 08:53:57 2000 Jeffrey A Law (law@cygnus.com)
-
- * convex.md: Use "+" instead of "=" for outputs wrapped in a
- STRICT_LOW_PART.
- * i370.md, i386.md, ns32k.md, sh.md, vax.md: Likewise.
-
-2000-09-12 Kazu Hirata <kazu@hxi.com>
-
- * haifa-sched.c: Fix formatting.
-
- * genattrtab.c: Fix formatting.
-
- * unroll.c: Fix formatting.
-
-2000-09-12 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixfixes.c: make a type for the fix procedure & use it,
- remove obsolete code
- * fixinc/fixincl.c: Use PARAMS, not _P_. Add no-op default to switch.
- * fixinc/fixincl.tpl: make non-exported arrays static scope
- * fixinc/fixincl.x: regenerate
- * fixinc/fixlib.h: Use PARAMS, not _P_
- * fixinc/fixtests.c: make a type for the test proc & use it
- * fixinc/server.h: Use PARAMS, not _P_
-
-2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-typeck.c (process_init_element): Avoid union init warnings on
- floating point zero. Don't crash on unions containing structs.
-
-2000-09-12 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (PREDICATE_CODES): Add CONST_DOUBLE to
- general_movsrc_operand, and remove CONST_INT from
- general_movdst_operand.
-
-2000-09-12 Bernd Schmidt <bernds@redhat.co.uk>
-
- * cse.c (approx_reg_cost): If SMALL_REGISTER_CLASSES, return INT_MAX
- if a reference to non-fixed hardreg is seen. Otherwise, count hard
- regs with a higher cost.
- (preferrable): Deal with cases where either cost or regcost is
- MAX_COST.
- (cse_insn): Use MAX_COST rather than 10000. Always initialize
- regcost values.
- (COSTS_N_INSNS): Move definition...
- * rtl.h: ...here.
- (MAX_COST): New macro.
- * loop.c (init_loop): Use COSTS_N_INSNS macro instead of hardcoded
- constant.
-
-2000-09-11 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (genrtl_clear_out_block): Remove.
- * c-semantics.c (genrtl_clear_out_block): Remove.
- (genrtl_while_stmt): Don't call it.
- (genrtl_for_stmt): Likewise.
-
-2000-09-11 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppfiles.c: Move all default-#defines to top of file.
- (open_include_file): Replace by lookup_include_file.
- (read_with_read, read_file): Merged into read_include_file.
- (stack_include_file, purge_cache): New functions.
- (close_cached_fd): Delete.
- (lookup_include_file, read_include_file, _cpp_pop_file_buffer):
- Cache the in-memory buffer, not the file descriptor.
-
- * cpphash.h (struct include_file): Add buffer, st, refcnt,
- mapped fields.
- (xcnew): New utility macro.
- (DO_NOT_REREAD, NEVER_REREAD): Move up by struct include_file.
- * cpplib.h (struct cpp_buffer): Remove mapped field.
-
-2000-09-11 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplex.c (parse_string): Accept backslash space newline as a
- line continuation.
- (lex_line): Likewise.
- (_cpp_get_token): Remove hard limit on macro nesting.
-
-2000-09-12 Philipp Thomas <pthomas@suse.de>
-
- * aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext.
- * configure: Rebuilt.
-
-2000-09-13 Michael Hayes <mhayes@cygnus.com>
-
- * flow.c (split_block): Fix update of registers live at
- end of split block.
-
-Tue Sep 12 01:51:38 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.md (add?i_3, add?i_5): New.
- (add?i_4): Rename from add?i_3; Fix compare pattern.
- (sub?i_3, xor?i_3, ior?i_3): New.
-
- * genrecog.c (write_tree): Output code to clear insn_extract cache.
- * genattrtab.c (write_attr_case): Gen call to extract_insn_cache
- instead of extract_insn and extract_constrain_insn_cache instead of
- extract_insn and constrain_operands.
- * recog.c (extract_insn_cached, extract_constrain_insn_cached):
- New functions.
- (extract_insn): Clear which_alternative.
- (constrain_operands): Set which_alternative to -1 when failed.
- * recog.h (extract_constrain_insn_cached, extract_insn_cached):
- Declare.
-
-2000-09-11 Matthew Hiller <hiller@redhat.com>
-
- * config/h8300/h8300.md (movstrictqi): Changed constraint modifier
- on operand 0 to '+'.
- (movstricthi): Likewise.
-
-2000-09-12 Michael Hayes <mhayes@cygnus.com>
-
- * loop.h (LOOP_IVS): New macro.
- (REG_IV_TYPE, REG_IV_INFO): Add ivs argument.
- (struct loop_ivs): New.
- (struct loop_info): Add ivs field.
- (reg_iv_type, reg_iv_info): Delete prototype.
- (reg_biv_class, loop_iv_list): Likewise.
- * loop.c (record_biv, find_life_end): Pass loop argument.
- (reg_iv_type): Remove global array and use
- field in loop_regs structure within loop_ivs structure.
- (reg_iv_info, reg_biv_class, loop_iv_list): Likewise.
- (first_increment_giv, last_increment_giv): Use entry in
- loop_ivs structure.
- (record_initial): Pass ivs pointer.
- * unroll.c (copy_loop_body, remap_split_bivs): Add loop argument.
-
-2000-09-12 Michael Hayes <mhayes@cygnus.com>
-
- * loop.h (LOOP_REGS): New macro.
- (struct loop_regs): New.
- (struct loop_info): Add regs field.
- * loop.c (set_in_loop): Remove global array and store
- in loop_regs structure as part of loop_info structure.
- (n_times_set, may_not_optimize): Likewise.
- (reg_single_usage, moved_once): Likewise.
- (count_one_set): Add regs argument.
- (combine_movables, rtx_equal_for_loop_p, combine_givs): Likewise.
- (set_pseudo_multiple_uses): Pass regs pointer.
-
-2000-09-12 Michael Hayes <mhayes@cygnus.com>
-
- * unroll.c (iteration_info): Subsume into loop_iterations.
- * loop.h (loop_info): New field iv.
-
-2000-09-12 Michael Hayes <mhayes@cygnus.com>
-
- * basic-block.h (LOOP_TREE, LOOP_PRE_HEADER, LOOP_EDGES): New.
- (LOOP_EXITS_DOMS, LOOP_ALL): Likewise.
- (flow_loops_update): New prototype.
- (flow_loops_find): Add flags to prototype.
- (struct loop): Add `pre_header_root' and `pre_header_trace' fields.
- * flow.c (flow_loop_pre_header_scan): New.
- (flow_loop_dump): Dump pre-header root and trace and exit dominators.
- (flow_loop_free): Free pre-header root and trace and exit dominators.
- (flow_loops_find): New argument flags.
- (flow_loops_update): New function.
- * toplev.c (rest_of_compilation): Add flag argument to flow_loops_find.
-
-2000-09-12 Michael Hayes <mhayes@cygnus.com>
-
- * basic-block.h (split_block, update_bb_for_insn): New prototypes.
- * flow.c (split_block, update_bb_for_insn): New functions.
-
-2000-09-11 Richard Henderson <rth@cygnus.com>
-
- * cse.c (fold_rtx): Honor NO_FUNCTION_CSE.
-
-2000-09-11 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare.
- * config/ia64/ia64.c (fr_nonimmediate_operand): New.
- (ia64_override_options): Prevent optimizing division for both
- latency and throughput.
- (rtx_needs_barrier): Handle frcpa.
- * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): New.
- (MASK_INLINE_DIV_THR, TARGET_INLINE_DIV_LAT): New.
- (TARGET_INLINE_DIV_THR, TARGET_INLINE_DIV): New.
- (TARGET_SWITCHES): Add -minline-divide-min-latency and
- -minline-divide-max-throughput.
- (PREDICATE_CODES): Update.
- * config/ia64/ia64.md (extendsidi2): Remove * from f case.
- (zero_extendsidi2): Likewise. Fix typo in f case insn.
- (extendsfdf2): Add cases for gr<->fr and fr<->mem.
- (extendsftf2): Likewise.
- (extenddftf2): Likewise.
- (fix_trunctfdi2_alts): New.
- (fixuns_trunctfdi2_alts): New.
- (madd*4): Rename from madd*3.
- (divsi3, modsi3, udivsi3, umodsi3): New.
- (divsi3_internal): New.
- (divdi3, moddi3, udivdi3, umoddi3): New.
- (divdi3_internal_lat, divdi3_internal_thr): New.
- (multf3_alts, maddtf4_alts, nmaddtf4_alts): New.
- (recip_approx): New.
-
-2000-09-11 Alexandre Oliva <aoliva@redhat.com>
-
- * print-rtl.c (debug_call_placeholder_verbose): New variable.
- (print_rtx) [CALL_PLACEHOLDER]: Dump all call sequences if it is
- set.
- * integrate.c (copy_rtx_and_substitute): Don't share
- LEAF_REG_REMAPpable registers with the inlined function. Don't
- share the function value with calling sequences.
-
-2000-09-11 Jakub Jelinek <jakub@redhat.com>
-
- * c-decl.c (do_case): Fix a typo.
-
- * combine.c (simplify_if_then_else): Don't convert a == b ? b : a
- to a if the comparison is floating mode and not -ffast-math.
- * simplify-rtx.c (simplify_ternary_operation): Likewise.
-
-Mon Sep 11 20:07:48 2000 J"orn Rennecke <amylaar@redhat.co.uk>
-
- * sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to
- gen_ic_invalidate_line.
-
-2000-09-11 Philip Blundell <pb@futuretv.com>
-
- * config/arm/elf.h (SUBTARGET_CPP_SPEC): Don't define `arm_elf'.
-
-Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com>
-
- * install.texi (LANGUAGES): Update to include new languages.
- * INSTALL: Rebuilt.
-
-2000-09-11 DJ Delorie <dj@redhat.com>
-
- * gcc.c (main): Don't warn about unused -B prefixes
- (unused_prefix_warnings): remove
-
-2000-09-11 Kazu Hirata <kazu@hxi.com>
-
- * final.c: Fix formatting.
-
- * integrate.c: Fix formatting.
-
-2000-09-11 Geoff Keating <geoffk@cygnus.com>
-
- * alias.c (memrefs_conflict_p): An ADDRESSOF does conflict, sorry.
-
-2000-09-11 Bernd Schmidt <bernds@redhat.co.uk>
-
- * reload.c (regno_clobbered_p): Fix thinko in previous change.
-
-2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * gcc.1: Document 68hc11 specific options.
-
-2000-09-10 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/sysv4.h (MASK_LONG_DOUBLE_128): Define.
- (TARGET_LONG_DOUBLE_128): Define.
- (SUBTARGET_SWITCHES): Add -mlong-double-64 and -mlong-double-128.
- (LONG_DOUBLE_TYPE_SIZE): Redefine.
- (MAX_LONG_DOUBLE_TYPE_SIZE): Define.
- (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define depending on definition
- of __LONG_DOUBLE_128__.
- (CPP_SYSV_SPEC): Define __LONG_DOUBLE_128__ if -mlong-double-128
- passed.
- (CPP_LONGDOUBLE_DEFAULT_SPEC): Define.
- (CPP_SYSV_DEFAULT_SPEC): Define.
- (SUBTARGET_EXTRA_SPECS): Add cpp_longdouble_default.
- (INIT_TARGET_OPTABS): Define.
-
- * config/rs6000/aix.h (RS6000_ITRUNC): Moved from rs6000.h.
- (RS6000_UITRUNC): Likewise.
- (INIT_TARGET_OPTABS): New macro.
- * config/rs6000/rs6000.c (rs6000_trunc_used): Delete.
- (trunc_defined): Delete.
- (output_prolog): Don't output .extern definitions for fp->int
- conversion routines, ASM_OUTPUT_EXTERNAL_LIBCALL will do it.
- * config/rs6000/rs6000.h (rs6000_trunc_used): Delete.
- (trunc_defined): Delete.
- (RS6000_ITRUNC): Moved to aix.h.
- (RS6000_UITRUNC): Likewise.
- * config/rs6000/rs6000.md (fix_truncdfsi2): Fail if it would
- only emit a libcall.
- (fixuns_truncdfsi2): Delete.
- (trunc_call): Delete.
- (trunc_call_rtl): Delete.
-
-2000-09-10 Zack Weinberg <zack@wolery.cumb.org>
-
- * varasm.c (make_decl_rtl): Restore leading star on
- DECL_ASSEMBLER_NAME set for decls with an asmspec.
-
-2000-09-10 Zack Weinberg <zack@wolery.cumb.org>
-
- * c-pragma.c (handle_pragma_pack): Correct parsing logic so it
- won't give a spurious error for '#pragma pack()'. Simplify
- control flow for readability. 'reset' action is not necessary.
-
-2000-09-10 Zack Weinberg <zack@wolery.cumb.org>
-
- * defaults.h: Provide default definitions for: CHAR_TYPE_SIZE,
- SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE,
- LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE,
- DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED.
-
- * cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c,
- profile.c, sdbout.c, tradcif.y, tree.c:
- Include defaults.h if not already included.
- Don't define the above macros.
-
- * Makefile.in: Update dependencies.
-
-2000-09-10 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (add_stmt): Change prototype.
- (RECHAIN_STMTS): New macro.
- (CASE_LABEL_DECL): Likewise.
- (genrtl_case_label): Change prototype.
- (c_expand_start_case): Remove prototype.
- (build_case_label): Change prototype.
- (decl_constant_value): Declare.
- * c-common.c (check_case_value): Handle C++'s extensions to C
- semantics.
- * c-commnon.def (CASE_LABEL): Add room for the CASE_LABEL_DECL
- field.
- * c-parse.in (stmt): Adjust handling of return statements and case
- laels.
- * c-semantics.c (add_stmt): Return the new statement.
- (genrtl_return_stmt): Take the RETURN_STMT as input, not the
- returned expression. Directly generate RTL, rather than calling
- c_expand_return.
- (genrtl_switch_stmt): Don't call c_expand_start_case.
- (build_case_label): Take the LABEL_DECL as input, too.
- (genrtl_case_label): Just call add_case_node.
- (expand_stmt): Adjust calls to genrtl_return_stmt and
- genrtl_case_label.
- * c-tree.h (c_expand_start_case): Declare.
- * c-typeck.c (decl_constant_value): Give it external linkage.
- (c_expand_return): Don't call expand_return or expand_null_return;
- use genrtl_return_stmt instead.
- * stmt.c (struct nesting): Remove num_ranges field.
- (add_case_node): Give it external linkage.
- (expand_start_case): Don't set num_ranges.
- (expand_start_case_dummy): Don't clear it.
- (pushcase): Rely on add_case_node to handle `default' labels.
- (add_case_node): Handle `default' labels.
- * tree.c (tree_int_cst_compare): New function.
- * tree.h (tree_int_cst_compare): Declare.
- (add_case_node): Likewise.
-
-2000-09-10 Richard Henderson <rth@cygnus.com>
-
- * c-parse.in: Revert last change.
- (init_reswords): Do not enter disabled keywords into the ridpointers
- table, modulo objc weirdness.
- (_yylex): Return the canonical spelling for a keyword.
-
-2000-09-10 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.h (CPP_ISA_SPEC): Don't define `arm' or `thumb'.
- * config/arm/linux-elf.h (CPP_PREDEFINES): Don't define `__arm__'.
-
-Sun Sep 10 14:30:28 EDT 2000 John Wehle (john@feith.com)
-
- * alias.c (find_base_term): Handle ADDRESSOF.
- (memrefs_conflict_p): An ADDRESSOF doesn't conflict.
-
-2000-09-10 Denis Chertykov <denisc@overta.ru>
-
- * genoutput.c (output_insn_data): Translate <NEWLINE> to \n\ while
- outputting templates with many lines.
-
-2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD
- to decide whether 64-bit support must be generated.
-
-2000-09-10 Richard Henderson <rth@cygnus.com>
-
- * c-parse.in (asm patterns): Fix volatile check.
-
-2000-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cppmacro.c (check_trad_stringification): New function.
- (save_expansion): If -Wtraditional, warn about stringification of
- macro arguments.
-
-2000-09-11 Michael Hayes <mhayes@cygnus.com>
-
- * loop.h (struct loop_mem_info): Move from loop.c
- (struct loop_info): Add fields store_mems, mems, mems_idx,
- mems_allocated, unknown_address_altered,
- unknown_constant_address_altered, num_mem_sets, and
- first_loop_store_insn.
-
- * loop.c (loop_store_mems): Replace with field in loop_info struct.
- (loop_mems, loop_mems_idx, loop_mems_allocated): Likewise.
- (unknown_address_altered, unknown_constant_address_altered): Likewise.
- (num_mem_sets): Likewise.
- (replace_loop_mems, replace_loop_regs): New.
- (struct loop_replace_args): New.
- (load_mems): Use replace_loop_mems.
- (try_copy_prop): Use replace_loop_regs.
- (replace_loop_reg, replace_loop_mem): Use loop_replace_args structure.
-
-2000-09-09 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * configure.in: Recognize m6811-elf and m6812-elf.
- * configure: Regenerate.
-
-2000-09-09 Geoff Keating <geoffk@cygnus.com>
-
- * recog.c (validate_replace_rtx_1): Correct MODE parameter in call
- to operand_subword.
-
-2000-09-10 Michael Hayes <mhayes@cygnus.com>
-
- * loop.c (struct movables): New.
- (num_movables): Move into struct movables.
- (the_movables): Change type to struct movables.
- (ignore_some_movables): Change struct movable arg to struct movables.
- (force_movables, combine_movables, regs_match_p): Likewise.
- (rtx_equal_for_loop_p, move_movables): Likewise.
- (scan_loop): Change movables to be of type struct movables.
- Replace last_movable with field in movables structure.
-
-2000-09-08 Zack Weinberg <zack@wolery.cumb.org>
-
- * c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS.
- (init_pragma): Avoid warning if pfile happens to be unused.
- * c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS. Never
- define init_pragma to nothing. Always prototype
- init_pragma. Prototype dispatch_pragma if !USE_CPPLIB.
-
- * c-lex.c (process_directive): Always call dispatch_pragma.
- Initialize entering_c_header to 0.
-
-2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md: New file, machine description for
- 68HC11 & 68HC12.
- * config/m68hc11/m68hc11.h: New file, definitions for 68HC11 & 68HC12.
- * config/m68hc11/m68hc11.c: New file, functions for 68HC11 & 68HC12.
- * config/m68hc11/m68hc12.h: New file, definitions for 68HC12.
- * config/m68hc11/m68hc11-protos.h: New file.
- * config/m68hc11/m68hc11-crt0.S: New file, startup code.
- * config/m68hc11/t-m68hc11-gas: New file, makefile fragment.
- * config/m68hc11/xm-m68hc11.h: New file, target defs.
- * config/m68hc11/larith.asm: New file, libgcc routines.
-
-2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * Makefile.in (DPBIT_FUNCS): Add _usi_to_df.
- (FPBIT_FUNCS): Add _usi_to_sf.
- * config/fp-bit.c (usi_to_float): New function.
- * config/fp-bit.h (L_usi_to_sf, L_usi_to_df): Define.
- (usi_to_float): Add appropriate #define.
-
-2000-09-08 Bernd Schmidt <bernds@redhat.co.uk>
-
- * i386-protos.h (sse_comparison_operator, mmx_reg_operand): Declare
- new functions.
- * i386.c (sse_comparison_operator, mmx_reg_operand): New functions.
- * i386.md (attr "type"): Add sse and mmx types.
- (attr "memory"): Handle them without a crash.
- (movsi_1, movdi_2): Allow MMX regs.
- (movdi splits): Don't split moves involving MMX regs.
- (setcc_4): Remove '*' from pattern name so we get a gen_setcc4.
- (movv4sf_internal, movv4si_internal, movv8qi_internal,
- movv4hi_internal, movv2si_internal, movv8qi, movv4hi, movv2si,
- movv4sf, movv4si, pushv4sf, pushv4si, pushv8qi, pushv4hi, pushv2si,
- sse_movaps, sse_movups, sse_movmskps, mmx_pmovmskb, mmx_maskmovq,
- sse_movntv4sf, sse_movntdi, sse_movhlps, sse_movlhps, sse_movhps,
- sse_movlps, sse_loadss, sse_movss, sse_storess, sse_shufps,
- addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, mulv4sf3, vmmulv4sf3,
- divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2, rsqrtv4sf2, vmrsqrtv4sf2,
- sqrtv4sf2, vmsqrtv4sf2, sse_andti3, sse_nandti3, sse_iorti3,
- sse_xorti3, maskcmpv4sf3, maskncmpv4sf3, vmmaskcmpv4sf3,
- vmmaskncmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps,
- smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi,
- cvttps2pi, cvtsi2ss, cvtss2si, cvttss2si, addv8qi3, addv4hi3,
- addv2si3, ssaddv8qi3, ssaddv4hi3, usaddv8qi3, usaddv4hi3, subv8qi3,
- subv4hi3, subv2si3, sssubv8qi3, sssubv4hi3, ussubv8qi3, ussubv4hi3,
- mulv4hi3, smulv4hi3_highpart, umulv4hi3_highpart, mmx_pmaddwd,
- mmx_iordi3, mmx_xordi3, mmx_anddi3, mmx_nanddi3, mmx_uavgv8qi3,
- mmx_uavgv4hi3, mmx_psadbw, mmx_pinsrw, mmx_pextrw, mmx_pshufw,
- eqv8qi3, eqv4hi3, eqv2si3, gtv8qi3, gtv4hi3, gtv2si3, umaxv8qi3,
- smaxv4hi3, uminv8qi3, sminv4hi3, ashrv4hi3, ashrv2si3, lshrv4hi3,
- lshrv2si3, mmx_lshrdi3, ashlv4hi3, ashlv2si3, mmx_ashldi3,
- mmx_packsswb, mmx_packssdw, mmx_packuswb, mmx_punpckhbw,
- mmx_punpckhwd, mmx_punpckhdq, mmx_punpcklbw, mmx_punpcklwd,
- mmx_punpckldq, emms, sfence, ldmxcsr, prefetch, stmxcsr, sse_clrti,
- mmx_clrdi): New patterns.
-
-2000-09-08 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c: Don't include tm.h directly.
-
-Fri Sep 8 14:34:56 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * recog.c (validate_replace_rtx_1): Fix confusion about equality
- testing; simplify subregs of constants and nested subregs.
-
-2000-09-08 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (symPLT_label2reg): Use operand3 for PIC reg.
-
-2000-09-08 Bernd Schmidt <bernds@redhat.co.uk>
-
- * combine.c (combine_simplify_rtx): Try to simplify VEC_SELECT of a
- VEC_CONCAT.
- * rtl.texi (description of USE): Add note about possible pitfalls
- with this rtx.
- From Richard Henderson:
- * reload1.c (choose_reload_regs): Compute need_mode properly.
-
-2000-09-07 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa.
- (__modsi3, __umodsi3): Likewise.
- (__udivsi3): Likewise. Normalize the TFmode values.
-
-2000-09-07 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter
- with a prototype.
- * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress
- warning.
-
-Fri Sep 8 03:26:38 2000 J"orn Rennecke <amylaar@redhat.co.uk>
-
- * sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove.
- (cmpeqdi_t): Add output pattern.
- (cmpeqdi_t+1): Don't split when not optimizing.
- Restore proper splitting operation.
-
-2000-09-07 Richard Henderson <rth@cygnus.com>
-
- * c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS,
- do not call dispatch_pragma.
-
-2000-09-07 Jim Wilson <wilson@cygnus.com>
-
- * reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition
- to CLASS_CANNOT_CHANGE_MODE.
- * config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the
- mode classes are different.
-
-2000-09-07 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplib.h (struct cpp_options): Add user_label_prefix member,
- left out of commit which removed cppulp.c.
-
-2000-09-07 Richard Henderson <rth@cygnus.com>
-
- * bb-reorder.c (fixup_reorder_chain): Add jump in new block
- after switch for CASE_DROPS_THROUGH.
-
-2000-09-07 Richard Henderson <rth@cygnus.com>
-
- * loop.c (strength_reduce): Call check_ext_dependant_givs.
- Properly extend the biv initial value for the giv.
- (record_biv): Zero ext_dependant.
- (record_giv): New argument ext_val. Update all callers.
- (general_induction_var): Likewise.
- (consec_sets_giv): Likewise.
- (simplify_giv_expr): Likewise. Fill in ext_val if we find
- a sign-extend, zero-extend, or truncate.
- (combine_givs_p): Make sure modes are compatible.
- (check_ext_dependant_givs): New.
- (extend_value_for_giv): New.
- * loop.h (struct induction): Add ext_dependant.
- * unroll.c (iteration_info): Extend the biv initial value for the giv.
- (find_splittable_givs): Likewise.
- (final_giv_value): Likewise.
-
-2000-09-07 Zack Weinberg <zack@wolery.cumb.org>
-
- * c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if
- REGISTER_TARGET_PRAGMAS is defined. Duplicate some
- definitions from cpplib.h.
- * cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has
- already done it.
- * tm.texi: Document HANDLE_PRAGMA as no longer supported. Add
- documentation for REGISTER_TARGET_PRAGMAS.
-
- * c-lex.c: Include cpplib.h before c-pragma.h. Define a
- default-pragma callback to implement -Wunknown-pragmas if
- USE_CPPLIB.
- * c-parse.in: Move all includes to top of file.
- * c-pragma.c: Include cpplib.h before c-pragma.h. Include
- tm_p.h.
- (dispatch_pragma): Put the namespace in the -Wunknown-pragmas
- warning.
- (init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it.
-
- * arm.h, arm-protos.h, arm.c,
- c4x.h, c4x-protos.h, c4x.c,
- h8300.h, h8300-protos.h, h8300.c,
- i370.h, i370-protos.h, i370.c,
- i960.h, i960-protos.h, i960.c,
- sh.h, sh-protos.h, sh.c,
- v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based
- pragmata scheme to use REGISTER_TARGET_PRAGMAS instead.
-
- * d30v.h: Don't mention HANDLE_PRAGMA in comment. Add
- multiple include guard.
- * i370.md (untyped_call): Use GEN_CALL.
- (umodsi3): Remove unused variable.
- * sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA.
- * v850.c (output_move_single, output_move_double): Constify
- return value.
- (print_operand): Constify a char *.
- * v850.h (struct small_memory_info): Constify name member.
-
-2000-09-07 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300.h: Fix comment typos.
- * config/h8300/h8300.md: Likewise.
- * config/h8300/lib1funcs.asm: Likewise.
-
-Thu 07-Sep-2000 21:29:00 BST Neil Booth <NeilB@earthling.net>
-
- * Makefile.in: Remove references to cppulp.{c,o}.
- * cppinit.c (initialize_builtins, cpp_start_read,
- cpp_handle_option): Update to use cpp_options structure.
- * cppulp.c: Remove.
-
-2000-09-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (time_char_table): Allow %#b and %#h.
-
-2000-09-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * reorg.c (find_end_label): If the basic block reorder pass moves the
- return insn to some other place try to locate it again and put our
- end_of_function_label there.
- * reorg.c (relax_delay_slots): Check if find_end_label created a
- new label that invalidates the current optimazation.
-
-2000-09-07 Catherine Moore <clm@redhat.com>
-
- * unroll.c (unroll_loop): Check for unconditional jumps
- to loop continuation. Delete if n_iterations is 1.
- (ujump_to_loop_cont): New routine.
-
-2000-09-07 Bernd Schmidt <bernds@redhat.co.uk>
-
- * rtl.c (class_narrowest_mode): Add entries for MODE_VECTOR_INT and
- MODE_VECTOR_FLOAT.
- * reload.c (regno_clobbered_p): Accept new arg, MODE, and use it
- to handle multiword modes correctly. All callers and the declaration
- changed.
-
-2000-09-06 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (prep_stmt): Declare.
- (lang_expand_stmt): Likewise.
- * c-decl.c (lang_expand_stmt): Remove.
- * c-semantics.c (lang_expand_stmt): Define.
- (prep_stmt): New function.
- (expand_stmt): Handle common statement types here.
-
-2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in (sh-*-linux*): Added.
- * configure: Rebuilt.
- * config/sh/t-linux: New file.
- * config/sh/sh.h (USERMODE_BIT): Define.
- (TARGET_USERMODE): Likewise.
- (TARGET_SWITCHES): New switches for the bits above.
- (INITIALIZE_TRAMPOLINE): Call __ic_invalidate in USERMODE.
- * config/sh/linux.h: New file.
- * config/sh/lib1funcs.asm (GLOBAL): Don't prefix symbols with
- underscore on linux.
- (L_sdivsi3, L_udivsi3): Define for linux.
- (L_ic_invalidate): Define.
- * invoke.texi (SH Options): Document -musermode.
-
-2000-09-07 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (OVERRIDE_OPTIONS): Don't disable function
- CSE unless generating PIC.
-
- * config/sh/sh.md (symPLT_label2reg): Force the initialization of
- the PIC register.
-
-2000-09-06 H.J. Lu (hjl@gnu.org)
-
- * Makefile.in (clean_s1): Depend on stage_b.
- (clean_s2): Depend on stage_d. Don't remove $(VOL_FILES) in
- stage2. They are used for "make compare".
-
-2000-09-06 Mark Mitchell <mark@codesourcery.com>
-
- Move statement-tree facilities from C++ to C front-end.
- * c-common.h (c_tree_index): Add CTI_VOID_ZERO.
- (void_zero_node): New macro.
- (struct stmt_tree_s): New type.
- (stmt_tree): New typedef.
- (struct language_function): New type.
- (last_tree): New macro.
- (last_expr_type): Likewise.
- (walk_tree_fn): New typedef.
- (current_stmt_tree): New function.
- (begin_stmt_tree): Likewise.
- (add_stmt): Likewise.
- (finish_stmt_tree): Likewise.
- (statement_code_p): Likewise.
- (lang_statement_code_p): New variable.
- (walk_stmt_tree): New function.
- (STMT_IS_FULL_EXPR_P): New macro.
- * c-common.c (lang_statement_code_p): New variable.
- (c_common_nodes_and_builtins): Initialize void_zero_node.
- (statement_code_p): New function.
- (walk_stmt_tree): Likewise.
- * c-decl.c (language_function): Rename to ...
- (c_language_function): ... this. Include language_function.
- (push_c_function_context): Adjust accordingly.
- (pop_c_function_context): Likewise.
- (mark_c_function_context): Likewise.
- (current_stmt_tree): Define.
- * c-semantics.c (begin_stmt_tree): New function.
- (add_stmt): Likewise.
- (prune_unused_decls): Likewise.
- (finish_stmt_tree): Likewise.
-
-2000-09-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * flow.c (insn_dead_p): Detect dead memory stores with auto increments.
-
-2000-09-06 Kazu Hirata <kazu@hxi.com>
-
- * calls.c: Fix formatting.
-
-2000-09-06 Graham Stott <grahams@cygnus.co.uk>
-
- * config/i386/i386.h (ADDRESS_COST): Fix typo.
-
-2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
-
- Integrated preprocessor.
-
- * Makefile.in: Remove all references to c-parse.gperf,
- c-gperf.h, and c-parse.h. Remove -d from yacc command line
- generating c-parse.c. Update dependencies.
- * c-parse.gperf, c-gperf.h: Delete.
-
- * c-common.c: Don't define parse_options, cpp_token, yy_cur,
- yy_lim, or yy_get_token. Don't define get_directive_line if
- USE_CPPLIB.
- * c-common.h: Add multiple include guard. Define RID values
- for every keyword in C, C++, and Objective-C. Put all the
- modifiers first.
- (struct c_fileinfo, get_fileinfo, dump_time_statistics): New.
- * c-decl.c (c_decode_option): Handle -lang-objc here.
- (print_lang_identifier): Handle C_IS_RESERVED_WORD case.
- (grokdeclarator): Adjust for new RID scheme.
- (extract_interface_info): New stub.
- * c-lang.c: Don't declare yy_cur or parse_options.
- (lang_init_options): Call cpp_init. Don't call
- cpp_options_init.
- (lang_init): Don't call check_newline if USE_CPPLIB.
-
- * c-lex.c: Don't include c-parse.h. Do include timevar.h.
- Elide lots of unnecessary code if USE_CPPLIB. Delete code
- rendered unnecessary by new architecture. Move routines not
- shared with C++ to c-parse.in. Maintain a local idea of the
- line number. Handle C++ as well as C.
- [USE_CPPLIB]: Declare and register callbacks for #ident and
- for entering/leaving files.
- (init_c_lex, c_lex): Are now the entry points to this file.
- (check_newline): Break out directive handling to
- process_directive.
- (read_ucs, is_extended_char, utf8_extend_token): Moved here
- from C++ front end.
- (readescape, parse_float): Overhaul.
- (lex_number, lex_string, lex_charconst): Break out of c_lex
- (n'ee yylex).
- (get_fileinfo, update_header_times, dump_one_header,
- dump_time_statistics): New and/or moved here from C++.
- Support per-file data needed by C++ and per-header timing
- statistics (C++ only, at the moment).
- * c-lex.h: Update prototypes. Add multiple include guard.
- * c-tree.h (struct lang_identifier): Add rid_code field.
- (C_IS_RESERVED_WORD, C_RID_CODE): New.
-
- * c-parse.in: Include c-pragma.h. Remove unnecesary calls to
- reinit_parse_for_function and/or position_after_white_space.
- (save_filename, save_lineno): Look ahead before saving.
- (label -> identifier ':'): Save file and line before shifting ':'.
- (reservedwords): No need to call get_identifier.
- (init_parse, finish_parse, yyerror, yylex, yyprint,
- make_pointer_declarator): Are now here for C/ObjC.
- (rid_to_yy): Conversion table from RID constants to Yacc codes.
-
- * c-pragma.c: Rewrite parsing logic to fit with cpplib's
- #pragma registry. Provide dummy implementation of that
- interface if !USE_CPPLIB.
- * c-pragma.h: Update to match.
-
- * flags.h: Add multiple include guard.
- (flag_detailed_statistics): Moved here from C++.
- * toplev.c: Define flag_detailed_statistics.
-
- * gcc.c (C specs): Use %(trad_capable_cpp) for -E|-M|-MM case
- #if USE_CPPLIB.
- * timevar.def (TV_CPP, TV_LEX): New.
- * timevar.h: Add multiple include guard.
-
- * objc/lang-specs.h: Use %(trad_capable_cpp) for -E|-M|-MM case
- #if USE_CPPLIB.
- * objc/objc-act.c: Don't mention yy_cur or parse_options.
- Initialize cpplib properly. Force lineno to 0 after first
- call to check_newline. Don't handle -lang-objc here.
- Move forget_protocol_qualifiers and remember_protocol_qualifiers here.
-
-2000-09-06 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md: Correct function unit definitions for cr_logical and
- mtjmpr.
- (sCOND): Additionally fail for sgt, slt, sge, sle if !TARGET_POWER
- and use portable method for >=0 and floating point >=. Remove
- associated matchers.
-
-2000-09-06 Mark Mitchell <mark@codesourcery.com>
-
- * extend.texi: Mark named return value extension as deprecated.
-
-2000-09-06 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/rs6000.c (rs6000_reverse_condition): Return
- the result.
-
-2000-09-06 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * toplev.c (display_help): Fix thinko in documentation.
-
- * diagnostic.h (output_buffer::indent_skip): New fields.
- (output_indentation): New macro.
-
- * diagnostic.c (output_indent): New function.
- (output_set_prefix, clear_diagnostic_info): Use.
- (output_emit_prefix): Predict future indentation.
-
-2000-09-06 DJ Delorie <dj@redhat.com>
-
- * Makefile.in (stage_*): add more dependencies to ensure parallel
- builds build correctly
-
-2000-09-06 Manfred Hollstein <manfredh@redhat.com>
-
- * Makefile.in (bootstrap-lean): Depend on bootstrap-lean_g,
- not bootstrap-lean_f.
-
-2000-09-06 Andreas Schwab <schwab@suse.de>
-
- * mklibgcc.in: Emit rule for libgcc-stage-start.
- * Makefile.in (stage1-start, stage2-start, stage3-start,
- stage4-start): Don't handle libgcc here, use libgcc.mk instead.
-
-2000-09-06 Bernd Schmidt <bernds@redhat.co.uk>
-
- * local-alloc.c (local_alloc): Ignore CLASS_LIKELY_SPILLED.
- (update_equiv_regs): Likewise, except for the mn10200 kludge.
- (combine_regs): Likewise.
-
- * Makefile.in (cse.o): Depend on $(BASIC_BLOCK_H).
- * cse.c: Include "basic-block.h".
- (struct table_elt): New field REGCOST.
- (CHEAP_REG): Delete macro.
- (COST): Return 0 for REGs.
- (approx_reg_cost_1, approx_reg_cost, preferrable): New functions.
- (notreg_cost): Return 0 for appropriate SUBREGs.
- (COSTS_N_INSNS): Return N * 2.
- (rtx_cost): Return 0 for REGs, and use cost of nested rtx for cheap
- SUBREGs.
- (CHEAPER): Use new function preferrable.
- (insert): Initialize REGCOST member.
- (find_best_addr): Use approx_reg_cost for estimation of register
- usage.
- (cse_insn): Likewise.
- * loop.c (iv_add_mult_cost): New function.
- (add_cost, shift_cost, mult_cost): Delete variables.
- (init_loop): Don't initialize add_cost; reduce copy_cost by half.
- (strength_reduce): Use iv_add_mult_cost instead of fixed add_cost.
- Make code that detects autoinc opportunities slightly less optimistic.
- (simplify_giv_expr): If expression contains other reg that is also a
- giv, only increment benefit if this is the only use of that reg.
- (consec_sets_giv): Take that change into account.
- (combine_givs): Slightly more verbose output.
-
- * i386.h (RTX_COSTS): For MULT, return true cost of multiplication,
- not the cost of an equivalent shift.
- * sh-protos.h (addsubcosts): Declare.
- * sh.c (addsubcosts): New function.
- * sh.h (CONST_COSTS): If CONST_OK_FOR_I, then return 0.
- (RTX_COSTS): Tweak. Use addsubcosts.
- (ADDRESS_COST): Return higher cost for reg+reg addressing.
-
-2000-09-06 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/rs6000.c (validate_condition_mode): New function.
- (branch_comparison_operator): Call validate_condition_mode to
- abort rather than returning 0.
- (branch_positive_comparison_operator): New function.
- (scc_comparison_operator): Call validate_condition_mode to abort
- rather than returning 0.
- (ccr_bit): Call validate_condition_mode. Update for
- new branch scheme.
- (print_operand): Delete %C modifier. Update %E case
- to use EQ bit not SO bit.
- (rs6000_reverse_condition): New function.
- (rs6000_generate_compare): New function.
- (rs6000_emit_sCOND): New function.
- (rs6000_emit_cbranch): New function.
- (output_cbranch): The length of a long branch insn is
- now only 8 bytes. Add validate_condition_mode. Use
- rs6000_reverse_condition. Remove cror generation.
-
- * config/rs6000/rs6000.h: Update comments.
- (PREDICATE_CODES): Add new predicate. Update codes used
- by branch_comparison_operator and scc_comparison_operator.
- * config/rs6000/rs6000-protos.h: Add prototypes for
- new external functions.
- * config/rs6000/rs6000.md: Add new scheduling parameters
- for cr_logical instructions. Change length of branch
- instructions.
- (bCOND patterns): Call rs6000_emit_cbranch.
- (sCOND patterns): Call rs6000_emit_sCOND.
- (branch patterns): Change lengths to 4.
- (cr logical patterns): New.
-
-2000-09-06 Richard Henderson <rth@cygnus.com>
-
- * config/i386/i386.md (call_pop): Fix test for setting
- current_function_uses_pic_offset_table.
- (call, call_value_pop, call_value): Likewise.
-
-2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
-
- * timevar.c (timevar_add): Delete.
- (timevar_get): Also count time since the selected timer was
- last updated. Do not examine the timevar stack if the
- selected timer is standalone.
-
-2000-09-05 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * gthr-dce.h (__gthread_objc_mutex_deallocate): Free mutex->backend.
-
-2000-09-05 Jason Merrill <jason@redhat.com>
-
- * c-decl.c (finish_incomplete_decl): Don't call complete_array_type
- for 'extern' arrays.
-
-2000-09-05 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/lib1func.asm (__divtf3): Rebundle for Itanium.
- Eliminate final copy from non-trapping case.
- (__divdf3, __divsf3): Likewise.
-
-2000-09-05 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (mulhi3): Fix typo last change.
- * config/ia64/lib1func.asm (__divdi3, __udivdi3, __umodsi3): Likewise.
-
-2000-09-03 Donn Terry <donn@interix.com>, Laurynas Biveinis <lauras@softhome.net>
-
- * Makefile.in: Restructure bootstrap stages to allow clean
- restart after failure.
-
-2000-09-05 Richard Henderson <rth@cygnus.com>
-
- * config/ia64.md (movsi and movdi patterns): Allow moves from
- 8-bit constants to AR registers.
-
-2000-09-05 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (mulhi3): New.
-
-2000-09-05 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.h (INIT_TARGET_OPTABS): Remove.
- * config/ia64/lib1funcs.asm (__divdi3): Update from Intel IA-64
- Optimization Guide, minimum latency alternative.
- (__moddi3, __udivdi3, __umoddi3): Likewise.
- (__divsi3, __modsi3, __udivsi3, __umodsi3): Likewise.
-
-2000-09-05 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixincl.c (load_file): always read header files
- with sizes that are a multiple of the page size.
- & use libiberty's getpagesize for determining that.
-
-2000-09-05 Alexandre Oliva <aoliva@redhat.com>
-
- * gcse.c (hash_string_1): Add prototype.
- * cse.c (canon_hash_string): Likewise.
-
-2000-09-04 Craig Newell <CraigN@ieee.org>
-
- * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it.
-
-2000-09-04 Andreas Schwab <schwab@suse.de>
-
- * Makefile.in (STAGESTUFF): Remove libgcc.
- (stage1-start, stage2-start, stage3-start): Copy the contents of
- the libgcc directory explicitly.
- (mostlyclean): Clean libgcc.
-
-2000-09-04 Andrew Haley <aph@redhat.com>
-
- * dwarf2out.c: (stack_adjust_offset): New prototype.
-
-Wed Jan 1 00:23:59 MET 1997 Jan Hubicka <jh@suse.cz>
-
- * combine.c (make_extraction): Fix rtx_cost comparison to
- match the comment.
-
-Wed Jan 1 00:17:32 MET 1997 Jan Hubicka <jh@suse.cz>
-
- * i386.md (pushsi2, pushhi2, pophi2, swapsf, swapdf,
- umulsi3_highpart, smulsi3_highpart, testqi_ccno_1, xorqi_ext_1):
- Add '*' to insn pattern name.
-
-2000-09-04 Jakub Jelinek <jakub@redhat.com>
-
- * cpplex.c (ON_REST_ARG): Check VAR_ARGS flag of current context,
- use posn - 1 to index into tokens array.
- (maybe_paste_with_next): Adjust caller.
-
-2000-09-03 Geoff Keating <geoffk@cygnus.com>
-
- * invoke.texi: Document the -mvxworks option for rs6000 ELF.
-
- * config/rs6000/rs6000.h: Update various comments about XER_REGNO.
- (REGNO_REG_CLASS): Use symbolic register
- names.
-
-2000-09-03 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (final_prescan_insn): If the form of a jump insn isn't
- recognized, don't try to conditionally execute it.
-
-Sun Sep 3 13:10:56 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.md ("*tablejump_lib"): New pattern.
- (call_value_insn): Right length claculation.
- (call_insn): Likewise.
-
-2000-09-02 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr-protos.h, config/avr/avr.c (unique_section,
- gas_output_limited_string, gas_output_ascii, output_movqi,
- output_movhi, out_movqi_r_mr, out_movqi_mr_r, out_movhi_r_mr,
- out_movhi_mr_r, out_movsi_r_mr, out_movsi_mr_r, output_movsisf,
- out_tstsi, out_tsthi, ret_cond_branch, ashlqi3_out, ashlhi3_out,
- ashlsi3_out, ashrqi3_out, ashrhi3_out, ashrsi3_out, lshrqi3_out,
- lshrhi3_out, lshrsi3_out, output_reload_inhi, output_reload_insisf,
- out_shift_with_cnt, ptrreg_to_str, cond_string, encode_section_info):
- Add "const" as needed to remove warnings.
-
- * config/avr/avr.c (avr_override_options, avr_init_once,
- function_prologue, function_epilogue, frame_pointer_required_p,
- class_likely_spilled_p, order_regs_for_local_alloc,
- avr_address_cost, avr_ret_register): Use K&R style arguments.
- (initial_elimination_offset, gas_output_limited_string):
- Remove ATTRIBUTE_UNUSED from the used arguments.
- (output_mov*, out_mov*_r_mr, out_mov*_mr_r, output_reload_insisf):
- Use local variables src, dest, base to access operands[].
- Rename reg_dest to reg_src if that's what it is.
- (output_movhi, output_movsisf): Optimize loading 8-bit immediate
- constants to LD_REGS if reg_was_0.
- (output_reload_insisf): Change arg 3 to insn length and set it.
- (out_movhi_r_mr, out_movhi_mr_r): Use in/out for more efficient
- access to 16-bit I/O register pairs.
- (avr_address_cost): Lower cost for the above case.
- (out_tsthi): Use "or" (faster) instead of "sbiw" if the operand
- may be clobbered, also for LD_REGS.
- (adjust_insn_length): Correct insn length for iorhi3 and iorsi3
- with a CONST_INT.
-
- * config/avr/avr.h (PTRDIFF_TYPE): Make signed.
-
- * config/avr/avr.md: Change all uses of the TEST_HARD_REG_CLASS
- macro to test_hard_reg_class function.
- (*movsi, *movsf): Change "cc" attribute from "clobber" to "none"
- for loading immediate constants to LD_REGS.
- (andsi3, cmphi, cmpsi): Add return statements to avoid warnings.
-
-
-Sat Sep 2 13:58:23 2000 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__
- * config/avr/libgcc.S: Lost part of the previous patch.
-
-2000-08-31 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t
- object before calling pthread_mutex_init.
-
-2000-09-02 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm,
- config/sh/crtn.asm: New files.
- * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set.
- (crt1.o, crti.o, crtn.o): New targets.
- * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added
- sh/t-elf.
- * configure: Rebuilt.
- * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP,
- STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define.
- * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP):
- Undefine for config/elfos.h to redefine.
- (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h.
-
-2000-09-02 Alexandre Oliva <aoliva@redhat.com>, Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * config/sh/sh-protos.h (nonpic_symbol_mentioned_p,
- legitimize_pic_address, output_pic_addr_const): Declare.
- * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register.
- (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise.
- (TARGET_SWITCHES): New switch -mprefergot.
- (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot.
- (PIC_OFFSET_TABLE_REGNUM): Define.
- (GOT_SYMBOL_TABLE): Likewise.
- (LEGITIMIZE_ADDRESS): Use legitimize_pic_address.
- (ENCODE_SECTION_INFO): Define.
- (FINALIZE_PIC): New macros.
- (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro.
- (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const.
- * config/sh/sh.c (print_operand_address): Use output_pic_addr_const.
- (prepare_move_operands): Call emit_pic_move or
- emit_pic_const_move if appropriate.
- (output_far_jump): For PIC, use braf and output long offset.
- (machine_dependent_reorg):
- (sh_expand_prologue): Save and initialize the PIC register.
- (sh_expand_epilogue): Restore it.
- (initial_elimination_offset): Account for it.
- (nonpic_symbol_mentioned_p): New function.
- (legitimize_pic_address): Likewise.
- (output_pic_addr_const): Likewise.
- * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns.
- (call, call_value): Use them.
- (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg,
- symPLT_label2reg): New expands.
- * invoke.texi (SH Options): Document -mprefergot.
-
-2000-09-01 Alexandre Oliva <aoliva@redhat.com>
-
- * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro.
- * gcse.c (hash_string_1): New function.
- (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number.
- (expr_equiv_p) <ASM_OPERANDS>: Likewise.
- * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS.
- (canon_hash_string): New function.
- (canon_hash) <ASM_OPERANDS>: Disregard filename and line number.
- (exp_equiv_p) <ASM_OPERANDS>: Likewise.
- (fold_rtx): Use ASM_OPERANDS accessor macros.
- * emit-rtl.c (copy_insn_1): Likewise.
- * integrate.c (copy_rtx_and_substitute): Likewise.
- * stmt.c (expand_asm_operands): Likewise. Give an
- ASM_OPERANDS rtx the mode of the output reg being set from it.
-
-2000-09-01 Fred Fish <fnf@be.com>
-
- * fix-header.c (write_rbrac): Add putc and getc to list of
- functions to protect against prior definition as a macro.
-
-2000-09-01 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE.
- (c_size_type_node): Define.
- * c-decl.c (init_decl_processing): Initialize c_size_type_node.
- * c-common.c (enum format_lengths, enum format_std_version,
- format_length_info, format_type_detail, BADLEN, NOLENGTHS,
- format_kind_info, printf_length_specs, scanf_length_specs, T89_I,
- T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL,
- T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD,
- T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI,
- TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM,
- format_types): Define.
- (format_char_info, print_char_table, scan_char_table,
- time_char_table): Rearrange for new organization of information
- about format length modifiers and standard versions.
- (T_ST): Redefine to use c_size_type_node.
- (check_format_info): Obtain information about length modifiers and
- standard versions from tables. Adjust warning message wordings.
- Use the name from the user's program for `ll' and `hh' length
- modifiers in warning messages. Use more informative names for
- wanted types where available (for wchar_t, wint_t, size_t, signed
- size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t).
-
-2000-09-01 Jim Wilson <wilson@cygnus.com>
-
- * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN.
- * combine.c (distribute_notes): Handle REG_NORETURN.
- * rtl.c (reg_note_name): Add REG_NORETURN.
- * rtl.h (enum reg_note): Likewise.
-
- * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from
- ia64_file_start.
- * config/ia64/ia64.c (emit_safe_across_calls): Likewise.
- (rtx_needs_barrier): Handle unspec_volatile 8 and 9.
- (emit_predicate_relation_info): Handle conditional calls with
- REG_NORETURN.
- * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls
- instead of ia64_file_start.
- * config/ia64/sysv4.h (ASM_FILE_START): Likewise.
- * config/ia64/ia64.md (safe_across_calls_all,
- save_across_calls_normal): New patterns.
-
- * loop.c (check_final_value): Check for biv use before checking for
- giv use. Check for both biv and giv uses. Always set last_giv_use
- if there is a giv use.
-
-2000-09-01 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (mulsi3): Use grfr_register_operand.
- (madddi3): Likewise.
- (maddsi3): New.
-
-Fri Sep 1 10:59:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (clear_storage): Don't use emit_move_insn unless
- either BLKmode or proper size.
- (store_constructor): Don't call clear_storage if REG of wrong size.
-
- * flow.c (init_propagate_block_info): Don't mark frame dead at end
- of function if returns wiht stack pointer depressed.
-
-2000-09-01 Andrew Haley <aph@redhat.com>
-
- * dwarf2out.c (stack_adjust_offset): New function.
- (dwarf2out_stack_adjust): Break out stack adjust logic into
- new stack_adjust_offset function. Look inside parallels and
- sequences for stack adjustments.
-
-2000-08-31 Jeff Law <law@cygnus.com>
-
- * arm.md: Use no_new_pseudos to determine when it is safe
- to create new pseudo registers.
-
- * arm.c (legitimize_pic_address): Use no_new_pseudos to determine
- when we can safely allocate new registers.
-
-2000-08-31 Geoffrey Keating <geoffk@cygnus.com>
-
- * stmt.c (expand_asm_operands): Twiddle generating_concat_p
- so that CONCATs are not generated for ASMs.
- * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when
- not generating_concat_p.
- * function.c (pop_function_context_from): Reset
- generating_concat_p.
- (prepare_function_start): Likewise.
- * rtl.c (generating_concat_p): Define.
- * rtl.h (generating_concat_p): Declare.
- * toplev.c (rest_of_compilation): No CONCATs after RTL generation.
-
-2000-08-22 Philipp Thomas <pthomas@suse.de>
- Masanobu Yuhara <yuhara@flab.fujitsu.co.jp>
-
- * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them
- for translation.
-
-2000-08-30 Greg McGary <greg@mcgary.org>
-
- * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh
- * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC).
- * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE.
-
-2000-08-30 Greg McGary <greg@mcgary.org>
-
- * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct.
- (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct.
- (TREE_INT_CST): New macro.
- * varasm.c (const_hash, compare_constant_1, record_constant_1):
- Use new macro TREE_INT_CST.
-
-Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net>
-
- * contrib.texi: Add self.
-
-2000-08-30 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns.
- (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps
- and labels.
-
-2000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * fixinc/gnu-regex.c: Don't define `const'.
-
-Tue Aug 29 22:09:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (store_constructor): Allow variable bounds of array type.
- (expand_expr): Don't blow up if type is ERROR_MARK.
- * varasm.c (output_constructor): Don't access lower bound of array
- type unless need it if index is supplied (so it can be a variable
- if no index is supplied).
- Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS.
- Other minor cleanups.
-
-2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS
- for compilations in stage 1 and subsequent stages, respectively.
- * configure.in (vax): Add compiler-dependent CFLAGS for stage 1.
- * configure: Rebuilt.
- * x-vax, x-vax-gcc: Deleted.
-
-2000-08-29 Zack Weinberg <zack@wolery.cumb.org>
-
- * c-common.c (declare_function_name): Use func_id_node,
- function_id_node, and pretty_function_id_node. Do not make
- __func__ visible at file scope.
- * c-common.h (c_tree_index): Add CTI_FUNCTION_ID,
- CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID.
- (function_id_node, pretty_function_id_node, func_id_node): New
- macros.
- * c-decl.c (init_decl_processing): Initialize function_id_node,
- pretty_function_id_node, and func_id_node.
- (c_make_fname_decl): Correct comment.
-
- * tree.h (struct tree_identifier): Constify pointer member.
-
- * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *.
- * c-pragma.h (struct weak_syms): Constify name and value members.
- (add_weak): Constify arguments.
-
- * calls.c (special_function_p): Constify a char *.
- (expand_call): Remove variable which is initialized and then
- never used.
- * dependence.c (struct def_use, struct induction, struct subscript):
- Constify 'variable' member.
- (get_low_bound, have_induction_variable): Constify char * argument.
- (find_induction_variable): Add braces to avoid dangling else.
- (classify_dependence): Constify char * arrays.
- * profile.c (output_func_start_profiler): Constify a char *.
- * stor-layout.c (finalize_record_size): Constify a char *.
- * tree.c (is_attribute_p): Constify a char *.
- * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument.
-
- * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code
- for comprehensibility. Do not call get_identifier if we did
- not change the DECL_ASSEMBLER_NAME of the decl. Use alloca to
- create temporary string constants, not ggc_alloc_string. No
- need to copy result of ASM_FORMAT_PRIVATE_NAME. Use const
- char * to hold IDENTIFIER_POINTERs.
-
-2000-08-29 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (muldi3): Use grfr_register_operand
- for the inputs.
-
-2000-08-29 Richard Henderson <rth@cygnus.com>
-
- * reload.c (push_secondary_reload): Allow class == reload_class
- if we're using a reload_in/out pattern.
-
- * config/ia64/ia64.md (reload_inti): Use a TImode scratch. Use
- the half that does not conflict with the reload register.
- (reload_outti): Likewise.
-
-2000-08-29 Kazu Hirata <kazu@hxi.com>
-
- * reload.c: Fix formatting.
-
- * stmt.c: Fix formatting.
-
- * gcc.c: Fix formatting.
-
-2000-08-29 Zack Weinberg <zack@wolery.cumb.org>
-
- * flags.h (time_report, mem_report): New global flags.
- * toplev.c: Define time_report and mem_report.
- (f_options): Add -ftime-report and -fmem-report.
- (compile_file): Turn on time_report if quiet_flag is off.
- Call ggc_print_statistics at very end if mem_report is on.
- * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag.
-
- * ggc-common.c (ggc_print_statistics): Rename to
- ggc_print_common_statistics; all callers changed. Scale
- quantities above 10K to kilobytes and above 10M to megabytes.
- * ggc-page.c (ggc_page_print_statistics): Rename to
- ggc_print_statistics. Report memory consumed by internal data
- structures for each allocation bucket. Scale quantities above
- 10K to kilobytes and above 10M to megabytes.
- * ggc-simple.c: Prototype debug_ggc_tree to avoid warning.
- Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning.
- Define tally_leaves always.
- (ggc_print_statistics): New function.
- * ggc.h: Adjust for renamed functions.
-
-Wed Aug 30 00:11:42 2000 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to
- output_movsisf instead of which_alternative.
-
- * config/avr/avr.c (output_reload_inhi): Check for NULL ponter.
-
-Tue Aug 29 22:29:58 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr-protos.h: (avr_output_ascii) Removed.
- (avr_progmem_p): New prototype.
- (output_movsisf): Prototype declaration changed.
- (output_movqi): New prototype.
- (output_movhi): New prototype.
- (call_insn_operand): Likewise.
- (final_prescan_insn): Likewise.
- (avr_simplify_comparision_p): Likewise.
- (avr_normalize_condition): Likewise.
- (compare_eq_p): Likewise.
- (out_shift_with_cnt): Likewise.
- (const_int_pow2_p): Likewise.
- (output_reload_inhi): Prototype declaration changed.
-
- * config/avr/avr.c: (debug_hard_reg_set): Prototype declared.
- (ldi_reg_rtx): New. rtx for r31.
- (avr_init_stack): Initialize as "__stack".
- (function_prologue): Use it.
- Replace all TARGET_ENHANCED with AVR_ENHANCED.
- (avr_mcu_name): Initialize as "avr2".
- (avr_enhanced_p, avr_mega_p): New variables.
- (mcu_types, avr_override_options): Handle all known MCU types.
- Also handle avr1 (only preprocess, assemble and link).
- (print_operand): Using of `%K' in output template removed.
- (out_movqi_r_mr): Optimized.
- (out_movhi_r_mr): Likewise.
- (output_movqi): New function.
- (output_movhi): Likewise.
- (out_movsi_r_mr): Optimized.
- (output_movsisf): Compute insn length for `adjust_insn_length'
- (out_movqi_mr_r): Optimized.
- (out_movhi_mr_r): Optimized.
- (adjust_insn_length): Use output_movsisf, output_movqi,
- output_movhi for insn length adjusting.
- (reg_unused_after): Use dead_or_set_p.
- (preferred_reload_class): Now haven't any restriction.
- (reg_was_0): New function.
- (io_address_p): Likewise.
- (const_int_pow2_p): Likewise.
- (output_reload_inhi): Likewise.
- (output_reload_insisf): Likewise.
-
- * config/avr/avr.h (MULTILIB_DEFAULTS): Define.
- (LIB_SPEC): Use -lc for all supported devices.
- (LIBGCC_SPEC): Use -lgcc for all supported devices.
- (AVR_MEGA): Define as avr_mega_p.
- (AVR_ENHANCED): New, define as avr_enhanced_p.
- (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=...
- (CPP_SPEC, LINK_SPEC): Handle all known MCU types.
- (CRT_BINUTILS_SPECS): Handle all known MCU types.
- Rename gcrt1-*.o to make file names unique on 8.3 filesystems.
- (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC.
- (ASM_SPEC): Pass -mmcu=... to the assembler.
- Change all -DAVR_* to -D__AVR_*__.
- (INIT_TARGET_OPTABS), config/avr/libgcc.S:
- Rename library functions to start with two underscores.
- (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid
- alignment.
- (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)).
- (SUPPORTS_WEAK): Likewise.
- (LDI_REG_REGNO): New. Register r31 will be used as temporary
- register for loading constants to r0-r14.
-
- * config/avr/avr.md: Replace all TARGET_ENHANCED with
- AVR_ENHANCED.
- (*mov_r_sp): Removed. Handled by output_movhi.
- (*mov_sp_r): Likewise.
- (*mov_sp_r_no_interrupts): Likewise
- (*mov_sp_r_tiny): Likewise.
- (*movqi): Use output_movqi.
- (*reload_inqi): New.
- (*movhi): Use output_movhi.
- (*reload_inhi): New.
- (*negsi2): Optimized.
- (*negsf2): Likewise.
- Added peepholes (define_peephole2) for loading constants to r0-r14
- and for using `cpse' command.
-
- * config/avr/libgcc.S: Rename library functions to start with two
- underscores.
- Add support for enhanced core.
- (_moqhi3): Fix typo, now _modqi3.
- (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word.
- (__prologue_saves__): Remove test for stack adjust by 0.
- (__tablejump__): New.
-
- * config/avr/t-avr: Build libgcc2 with -mcall-prologues.
- Add multilib support.
-
-Tue Aug 29 15:17:54 EDT 2000 John Wehle (john@feith.com)
-
- * loop.c (prescan_loop): Don't check unknown_address_altered
- when deciding if insert_loop_mem is safe. Add BLKmode MEMs
- to loop_store_mems as necessary.
- (loop_invariant_p): Don't check unknown_address_altered
- or unknown_constant_address_altered.
-
-2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns.
-
-2000-08-29 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpperror.c (print_file_and_line): If line is (unsigned int)-1,
- print just the filename.
- * cpplex.c (_cpp_run_directive): Add additional argument, the
- name to give the synthetic buffer. This defaults to
- translated "<command line>".
- * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert):
- Adjust to match.
- (_cpp_define_builtin): New function.
- * cppinit.c (initialize_builtins): Use _cpp_define_builtin.
- * cpphash.h: Update prototypes.
-
- * tradcpp.c (main): Process -D and -U simultaneously, in the
- order they appeared on the command line.
-
-2000-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-decl.c (define_label): Call warning_with_file_and_line and
- error_with_file_and_line instead of plain warning or error.
-
- * c-parse.in (label): Use save_filename/save_lineno to ensure
- correct values for calls to define_label.
-
-2000-08-29 Mark Mitchell <mark@codesourcery.com>
-
- * calls.c (expand_call): Don't create a VAR_DECL just to throw it
- away.
- * expr.c (expand_expr, case TARGET_EXPR): Don't call
- mark_addressable.
- * tree.h (get_file_function_name): Remove two duplicate
- declarations.
-
-2000-08-28 Kazu Hirata <kazu@hxi.com>
-
- * tree.c: Fix formatting.
-
- * xcoffout.c: Fix formatting.
-
-2000-08-28 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer.
-
-2000-08-28 Daniel Berlin <dberlin@redhat.com>
-
- * dwarf2out.c (dwarf2out_finish): Don't bother calling
- break_out_includes if it won't do anything.
-
-2000-08-28 Richard Henderson <rth@cygnus.com>
-
- * reload.c (push_secondary_reload): Revert 2000-08-16 change.
- (find_reloads): Likewise.
- * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change.
- (reload_inhi): Likewise.
-
-2000-08-28 Richard Henderson <rth@cygnus.com>
-
- * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined.
- (call_insn_operand): Don't expect a surrounding mem.
- (constant_call_address_operand): Likewise.
- * config/i386/i386.h (PREDICATE_CODES): Update.
- * config/i386/i386.md (call patterns): Move the match_operand
- for the call destination inside the mem.
-
-2000-08-28 Richard Henderson <rth@cygnus.com>
-
- * local-alloc.c (requires_inout): Don't use reserved range for
- EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER.
- * recog.c (asm_operand_ok): Likewise.
- (preprocess_constraints, constrain_operands): Likewise.
- * regclass.c (record_reg_classes): Likewise.
- * reload.c (find_reloads): Likewise.
- * reload1.c (maybe_fix_stack_asms): Likewise.
- (reload_cse_simplify_operands): Likewise.
- * stmt.c (expand_asm_operands): Likewise.
-
- * md.texi: Update constraints documentation.
- * tm.texi (EXTRA_CONSTRAINT): Update.
-
-2000-08-28 Daniel Berlin <dberlin@redhat.com>
-
- * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__".
- (print_die): If we don't know the offset of the
- target die, try the symbol. Add a trailing newline.
- (reverse_all_dies): New fn.
- (dwarf2out_finish): Call it.
- (break_out_includes): Reorganize for clarity.
- (add_sibling_attributes): Don't call reverse_die_lists.
- (output_comp_unit): Rename from output_comdat_comp_unit. Use for
- primary CU, too.
- * flags.h: Add flag_eliminate_dwarf2_dups.
- * toplev.c (f_options): Support -feliminate-dwarf2-dups.
-
-2000-08-28 Jason Merrill <jason@redhat.com>
-
- * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags.
- * dwarf2out.c: #include "md5.h".
- (DIE_LABEL_PREFIX): New macro.
- (dw_val_struct): Add 'external' flag to val_die_ref.
- (add_AT_die_ref, AT_ref): Adjust.
- (AT_ref_external, set_AT_ref_external): New fns.
- (build_abbrev_table): Call set_AT_ref_external.
- (value_format): Call AT_ref_external.
- (die_struct): Add die_symbol field.
- (new_die): Clear it.
- (dwarf_tag_name): Handle BINCL/EINCL.
- (dwarf2out_start_source_file): Add BINCL DIE.
- (dwarf2out_end_source_file): Add EINCL DIE.
- (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns.
- (loc_checksum, attr_checksum, die_checksum): New fns.
- (is_type_die, is_comdat_die, is_symbol_die): New fns.
- (compute_section_prefix, assign_symbol_names): New fns.
- (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns.
- (output_die): Call output_die_symbol and AT_ref_external.
- (output_comdat_comp_unit): New fn, split out from...
- (dwarf2out_finish): ...here. Also call add_sibling_attributes for
- secondary CUs.
- (output_pubnames, output_aranges): Abort if we see entries from
- secondary CUs.
- * toplev.h: Declare file_name_nondirectory.
- * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend.
- (rest_of_type_compilation): Call dwarf2out_decl if at toplevel.
- (debug_start_source_file): Call dwarf2out_start_source_file
- regardless of debug verbosity.
- (debug_end_source_file): Similarly.
- * tree.h: Declare clean_symbol_name.
- * tree.c (clean_symbol_name): Split out from...
- (get_file_function_name_long): ...here.
-
- * dwarf2out.c (new_loc_descr): Use calloc.
- (splice_child_die): Remove the die from the right parent.
- (gen_struct_or_union_die): Don't add AT_name to a specification DIE.
-
-Mon Aug 28 19:02:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * toplev.c (decode_g_option): Don't give warning for unknown -g
- option; return 0 instead.
- (main): If -g option is not recognized by front end or
- language-independent code, give warning.
-
-2000-08-28 Greg McGary <greg@mcgary.org>
-
- * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl.
- * config/i386/i386.c (ix86_expand_compare): Remove `static'.
- * config/i386/i386.md (trap, conditional_trap): New insn & expand.
-
-2000-08-27 Greg McGary <greg@mcgary.org>
-
- * cpplex.c (parse_string): Don't look for backslash
- before first char in `namebuf'.
- * loop.c (strength_reduce): Skip NOTEs.
-
-2000-08-27 Jason Merrill <jason@redhat.com>
-
- * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear
- DECL_EXTERNAL on a local extern. Don't set DECL_IGNORED_P or
- TREE_ASM_WRITTEN, either.
- (finish_decl): Adjust.
-
-2000-08-28 Philipp Thomas <pthomas@suse.de>
-
- * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as
- they have been incorporated into the gettext CVS. Change the text to
- reflect the current status of NLS. Add instructions for accessing
- the gettext CVS and add the patch from Martin v. Loewis.
-
-2000-08-27 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe
- by using gen_lowpart_common.
- (movdi_internal64+6): Likewise.
-
-2000-08-26 Alexandre Oliva <aoliva@redhat.com>
-
- * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION):
- Document.
-
- * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register
- numbers to the ranges used by GDB.
-
-2000-08-25 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.h (struct machine_function): Add n_varargs.
- * config/ia64/ia64.c (ia64_compute_frame_size): Use it.
- (ia64_expand_prologue): Likewise.
- (ia64_setup_incoming_varargs): Set it. Properly skip the current
- argument for stdargs.
-
-2000-08-25 Jason Merrill <jason@redhat.com>
-
- * integrate.c (expand_inline_function): Pull out the original decl.
-
-2000-08-25 Jim Wilson <wilson@cygnus.com>
-
- * cse.c (cse_insn): Don't pass label subtraction to force_const_mem.
-
- * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl.
-
-2000-08-25 Greg McGary <greg@mcgary.org>
-
- * flow.c (dump_edge_info): Use ARRAY_SIZE.
- * config/alpha/alpha.c (alpha_expand_block_move): Likewise.
-
-2000-08-25 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.h (STRUCT_VALUE): Define to 0, not NULL.
-
-Fri Aug 25 12:52:49 EDT 2000 John Wehle (john@feith.com)
-
- * i386.c (ix86_find_base_term): New.
- * i386-protos.h (ix86_find_base_term): Prototype.
- * i386.h (FIND_BASE_TERM): Define.
- * alias.c (find_base_term): Use it.
- * tm.texi (FIND_BASE_TERM): Document it.
-
- * alias.c (true_dependence, write_dependence_p): Unchanging
- memory can't conflict with non-unchanging memory.
-
- * alias.c (memrefs_conflict_p): A BLKmode reference
- to a symbol (or CONST_INT address) always conflicts
- with a reference to another symbol.
-
-2000-08-25 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (time_char_table): Don't allow width and flags with
- "z" format.
-
-2000-08-25 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same
- way as LT and LTU when the second operand has 0 in low word.
-
-2000-08-26 Michael Hayes <mhayes@cygnus.com>
-
- * basic-block.h (struct loop): Rename `exits' field to
- `exit_edges'. Add `entry_edges' and `num_entries' fields.
-
- * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find.
- (flow_loop_entry_edges_find): Add.
- (flow_edge_list_print): Rename from flow_exits_print.
- (flow_loops_find): Call flow_loop_entry_edges_find.
- (flow_loop_dump): Dump entry_edges list.
- (flow_loops_free): Free entry_edges.
-
-2000-08-26 Michael Hayes <mhayes@cygnus.com>
-
- * loop.c (loop_dump_aux, debug_loop): New functions.
- (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros.
-
- * flow.c (flow_loops_dump): Add callback parameter.
- (flow_loop_dump): Add callback parameter and call it. Move
- loop note debugging code to loop_dump_aux.
-
- * basic-block.h (flow_loop_dump): Add callback parameter
- (flow_loops_dump): Likewise.
-
- * toplev.c (rest_of_compilation): Add NULL callback function pointer
- to call to flow_loops_dump.
-
-2000-08-26 Michael Hayes <mhayes@cygnus.com>
-
- * loop.c (count_loop_regs_set): Replace start and end arguments
- with loop argument. All callers udated.
-
-2000-08-26 Michael Hayes <mhayes@cygnus.com>
-
- * loop.c (constant_high_bytes): Delete.
-
-2000-08-26 Michael Hayes <mhayes@cygnus.com>
-
- * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT
- and NOTE_INSN_LOOP_VTOP to...
- (find_and_verify_loops) ...here.
-
-Fri Aug 25 04:21:13 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default.
- (fini_dummy, init_dummy): Use it.
-
-Fri 25-Aug-2000 08:03:27 BST Neil Booth <NeilB@earthling.net>
-
- * cpplex.c (is_macro_disabled): Caller has already checked
- that we're not a preprocessed file.
-
-2000-08-24 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o.
- (c-iterate.o): Remove target.
- * gcc/c-common.h (enum rid): Remove RID_ITERATOR.
- * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators.
- (finish_decl): Don't handle iterators.
- (grokdeclarator): Likewise.
- * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords.
- * gcc/c-gperf.h: Regenerated.
- * gcc/c-iterate.c: Removed.
- * gcc/c-lex.c (init_lex): Don't handle iterators.
- * gcc/c-parse.in (primary): Remove pop_iterator_stack call.
- (compstmt_primary_start): Remove push_iterator_stack call.
- (stmt): Don't allow iterator statements. Replace iterator_expand
- with expand_expr_stmt.
- (all_iter_stmt): Remove.
- (all_iter_stmt_simple): Likewise.
- (all_iter_stmt_with_decl): Likewise.
- * gcc/c-tree.h (ITERATOR_P): Remove.
- (ITERATOR_BOUND_P): Likewise.
- (init_iterators): Remove declaration.
- (iterator_expand): Likewise.
- (iterator_for_loop_start): Likewise.
- (iterator_for_loop_end): Likewise.
- (iterator_for_loop_record): Likewise.
- (push_iterator_stack): Likewise.
- (pop_iterator_stack): Likewise.
- * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P.
- (readonly_warning): Likewise.
- * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it.
-
-2000-08-24 Jim Wilson <wilson@cygnus.com>
-
- * c-common.c (decl_attributes, case A_ALIGN): Revert last change.
- Copy type in a TYPE_DECL, just like pushdecl does.
-
-2000-08-24 Richard Henderson <rth@cygnus.com>
-
- * toplev.c (main): Enable flag_reorder_blocks at -O2.
-
-2000-08-24 Zack Weinberg <zack@wolery.cumb.org>
-
- * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're
- asked for one page, allocate GGC_QUIRE_SIZE of them and put
- the extras on the free list.
- (release_pages): Clean up.
- (ggc_set_mark): Don't adjust G.allocated here...
- (sweep_pages): ... do it here.
-
-2000-08-24 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppfiles.c (read_include_file): Rearrange initializations.
-
-2000-08-24 Richard Henderson <rth@cygnus.com>
-
- * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X.
-
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/ia64.c (gr_register_operand): New.
- (fr_register_operand, grfr_register_operand): New.
- (gr_nonimmediate_operand, grfr_nonimmediate_operand): New.
- (grfr_reg_or_8bit_operand): New.
- (gr_reg_or_0_operand): Rename from reg_or_0_operand and
- use gr_register_operand.
- (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise.
- (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise.
- (gr_reg_or_8bit_and_adjusted_operand): Likewise.
- (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise.
- (fr_reg_or_fp01_operand): Likewise.
- (not_postinc_memory_operand): New.
- (ia64_split_timode): Remove unused variables.
- (rtx_needs_barrier): Check arguments to cmpxchg.
- (builtin_description): Remove.
- (bdesc_2argsi, bdesc_2argdi): Remove.
- (ia64_init_builtins): Declare all builtins directly.
- (ia64_expand_fetch_and_op): Rewrite to be called from
- ia64_expand_builtin directly. Use expand_binop and co.
- (ia64_expand_op_and_fetch): Likewise.
- (ia64_expand_compare_and_swap): Likewise.
- (ia64_expand_binop_builtin): Remove.
- (ia64_expand_lock_test_and_set): New.
- (ia64_expand_lock_release): New.
- (ia64_expand_builtin): Use them.
- * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New.
- (EXTRA_CONSTRAINT): Use it.
- (PREDICATE_CODES): Update.
- * config/ia64/ia64.md (*): Use gr_register_operand and co.
- (mf): Indicate that we set memory as well as use it.
- (fetchadd_acq_si): Show memory being modified as well.
- (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise.
- (val_compare_and_swap_si, val_compare_and_swap_di): Remove.
- (lock_test_and_set_si, lock_test_and_set_di): Remove.
- (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove.
- (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove.
- (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove.
- (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove.
- (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove.
- (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove.
- (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove.
- (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove.
- * config/ia64/ia64intrin.h (*): Cast result to the appropriate
- return type. Pretty print definitions.
-
-2000-08-24 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if
- we have a SYMBOL_REF with SYMBOL_REF_FLAG set.
-
-2000-08-24 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref,
- AT_loc, AT_addr, AT_lbl): Abort on unsuitable input.
- (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag,
- get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails.
-
-2000-08-24 Greg McGary <greg@mcgary.org>
-
- * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab,
- and extendtab within their proper array boundaries.
- * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds
- for the entire array.
-
- * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE.
- * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise.
- * config/avr/avr.c (order_regs_for_local_alloc): Likewise.
- * config/fr30/fr30.c (fr30_print_operand): Likewise.
- * config/i386/dgux.c (output_options): Likewise.
- * config/i386/dgux.h (ASM_FILE_START): Likewise.
- * config/m88k/m88k.c (output_options): Likewise.
- * config/m88k/m88k.h (ASM_FILE_START): Likewise.
- * config/mcore/mcore.c (mcore_output_inline_const_forced,
- layout_mcore_frame, handle_structs_in_regs): Likewise.
- * config/mips/mips.c (output_block_move): Likewise.
- * config/rs6000/rs6000.c (rs6000_override_options,
- rs6000_file_start): Likewise.
- * config/sparc/sparc.c (sparc_add_gc_roots): Likewise.
- * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise.
- * fixinc/fixtests.c (TEST_TABLE_CT): Likewise.
- * builtins.c (expand_builtin_setjmp): Likewise.
- * expr.c (safe_from_p): Likewise.
- * flow.c (life_analysis): Likewise.
- * fold-const.c (size_int_type_wide): Likewise.
- * gcc.c (translate_options, init_spec, set_spec, main): Likewise.
- * genattrtab.c (make_length_attrs): Likewise.
- * genopinit.c (gen_insn): Likewise.
- * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise.
- * global.c (global_alloc): Likewise.
- * local-alloc.c (find_free_reg): Likewise.
- * mips-tdump.c (print_symbol): Likewise.
- * mips-tfile.c (parse_def, parse_input): Likewise.
- * reload1.c (NUM_ELIMINABLE_REGS): Likewise.
- * stmt.c (expand_nl_goto_receiver): Likewise.
- * stor-layout.c (set_sizetype): Likewise.
- * varasm.c (decode_reg_name): Likewise.
- * toplev.c (decode_f_option, decode_W_option,
- set_target_switch, print_switch_values): Likewise.
- (NUM_ELEM): Remove macro.
- (display_help, main): s/NUM_ELEM/ARRAY_SIZE/
-
-2000-08-24 Greg McGary <greg@mcgary.org>
-
- * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'.
- (MAIN_NAME_P, main_identifier_node): New macros.
- * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node.
- * c-decl.c (start_decl, grokdeclarator, start_function,
- store_parm_decls, finish_function): Use MAIN_NAME_P.
- * config/avr/avr.c (function_prologue, function_epilogue): Likewise.
- * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
- * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
- * config/pdp11/pdp11.c (output_function_prologue): Likewise.
-
-2000-08-24 Greg McGary <greg@mcgary.org>
-
- * cppfiles.c (actual_directory): Don't write beyond `dir'
- when it contains "".
- * real.c (asctoeg): Stay within bounds of etens[][].
-
-2000-08-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * dependence.c (dependence_string, direction_string,
- dump_one_node, dump_node_dependence): Hide unused identifiers.
- (get_low_bound, normalize_coefficients): Match definition to
- static prototype.
- (get_one_coefficient): Initialize variables `value0_is_idx' and
- `value1_is_idx'.
- (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED.
- (ziv_test): Delete variable `idx', use parameter `sub' instead.
- (direction_merge): Avoid automatic aggregate initialization.
- (have_dependence_p): Use `src' not `dest' to set `src_idx'.
- Initialize variables `dest_idx' and `src_idx'.
- (end_dependence_analysis): Avoid C89 style function definition.
-
-2000-08-24 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (time_char_table): Don't allow width with %F.
- (check_format_info): Don't allow "Z" length with scanf.
-
-2000-08-24 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (finish_diagnostic): Define.
- (output_do_printf): Use wrap_text instead of output_add_string.
- (default_print_error_function): Avoid embedded '\n'.
-
- * diagnostic.h (flush_diagnostic_buffer): Declare.
-
-2000-08-23 Alexandre Oliva <aoliva@redhat.com>
-
- * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'.
-
-2000-08-23 Hans-Peter Nilsson <hp@axis.com>
-
- * Makefile.in (GCC_PASSES): Add specs.
-
-2000-08-23 Jim Wilson <wilson@cygnus.com>
-
- * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New.
- * config/ia64/frame-ia64.c (__get_personality): Return zero if neither
- EHANDLER nor UHANDLER bit is set.
- (__get_except_table): Likewise.
-
-2000-08-23 Nick Clifton <nickc@redhat.com>
-
- * config/arm/lib1funcs.asm: Replace upper case condition codes
- with lower case versions.
-
- * config/arm/arm.h (STRUCT_VALUE): Define.
- (STRUCT_VALUE_REGNUM): Delete.
-
-2000-08-23 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpphash.h (IN_I): New flag for directive table.
- * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and
- #pragma with IN_I.
- (_cpp_check_directive): If -fpreprocessed, execute directives
- marked with IN_I. Issue no warnings in this case.
- * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed.
-
-2000-08-23 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (print_char_table): Allow 'I' flag with %d, %i and
- %u.
- (check_format_info): Support printf 'I' flag; warn about it with
- -pedantic.
-
-2000-08-23 Richard Earnshaw (rearnsha@arm.com)
-
- * arm.c (arm_expand_prologue): Ensure that the stack-adjustment
- barrier can't be ignored by the alias analysis code.
-
-2000-08-12 Eli Zaretskii <eliz@is.elta.co.il>
-
- * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it
- works inside fixincl.
-
-Wed Aug 23 04:55:48 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to
- simplify_relational_operation() unless both operands are of
- VOIDmode.
- * cse.c (fold_rtx): Likewise.
-
-Tue Aug 22 23:53:27 EDT 2000 John Wehle (john@feith.com)
-
- * rtlanal.c (rtx_unstable_p): The pic register is stable
- (within one function) and the actual rtx should be used
- when checking the registers.
- (rtx_addr_can_trap_p): Pic memory addresses can't trap.
-
- * alias.c (true_dependence, write_dependence_p): Fix
- bug in previous patch.
-
- * i386.c (ix86_GOT_alias_set): New.
- (legitimize_pic_address): Use it.
-
- * rtlanal.c (rtx_unstable_p): An unchanging MEM is
- only stable if its address is stable.
- (rtx_varies_p): An unchanging MEM can't vary if
- its address doesn't vary.
-
-2000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-parse.in (unop +): Restrict -Wtraditional warnings to user code.
-
-2000-08-22 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * vax.h (ASM_SPEC): Pass `-J' to assembler.
- * x-vax-gcc: New file for bootstrapping with gcc.
- * x-vax: Use X_CFLAGS rather than X_CPPFLAGS to pass `-J'.
- * configure.in: Use x-vax-gcc with gcc.
- * configure: Rebuilt.
-
-Tue Aug 22 21:21:05 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * toplev.c (rest_of_compilation): Rebuild label notes after
- post-reload splitting pass if new labels have been created.
-
-2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h (output_buffer_state): New macro.
- * diagnostic.c (diagnostic_for_decl, sorry,
- default_print_error_function, output_do_verbatim,
- report_diagnostic, report_problematic_module): Use it.
- (wrap_text): Tweak.
- (output_format): Use wrap_text instead of maybe_wrap_text.
-
-2000-08-22 Nick Clifton <nickc@redhat.com>
-
- * config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro.
- Common code for ARM divide and modulus functions.
- (THUMB_DIV_MOD_BODY): New macro. Thumb equivalent of
- ARM_DIV_MOD_BODY.
- (FUNC_END): New macro: Common code at the end of the division and
- modulo functions.
- (THUMB_FUNCTION_START): New macro: Common code at the start of
- Thumb functions.
- (__divsi3, __udivsi3, __modsi3, __umodsi3): Use new macros.
-
-Tue Aug 22 20:34:52 2000 Kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * config/sh/sh.md (cmpeqdi_t splitter): Fix a reverse testing.
-
- * config/sh/sh.c (prepare_scc_operands): Apply force_reg to
- sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't
- const0_rtx.
-
-2000-08-22 Nick Clifton <nickc@redhat.com>
-
- * config/arm/lib1funcs.asm (__umodsi3): Before performing any
- restorative additions, test for bottom bits of IP being set,
- rather than relying upon the RORs not matching.
- (__modsi3): Ditto.
-
-2000-08-22 David Edelsohn <edelsohn@gnu.org>
-
- * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or
- text_section() as appropriate instead of emitting text csect
- pseudo-op directly.
- (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment.
- (UNIQUE_SECTION): Define macro.
- (ASM_OUTPUT_SECTION_NAME): Define macro.
- * rs6000.c (rs6000_override_options): Disable -ffunction-sections
- on AIX if debugging and -fdata-sections always.
-
-2000-08-22 Steven King <sxking@uswest.net>
-
- * config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double
- machinery.
- (LDBL_MAX): Same here.
-
-2000-08-22 Richard Henderson <rth@cygnus.com>
-
- * flow.c (tidy_fallthru_edge): Update b->end properly.
-
-2000-08-22 Stan Cox <scox@redhat.com>
-
- * Makefile.in (OBJS): Add dependence.o.
- * dependence.c: New file.
-
-2000-08-22 Alexandre Oliva <aoliva@redhat.com>, John David Anglin <dave.anglin@nrc.ca>
-
- * calls.c (check_sibcall_argument_overlap_1): Adjust for
- ARGS_GROW_DOWNWARD.
- (check_sibcall_argument_overlap): Likewise.
-
-2000-08-22 Alexandre Oliva <aoliva@redhat.com>
-
- * invoke.texi (SH Options): Document -m4-nofpu,
- -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd,
- -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace.
-
-2000-08-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (check_format_info): Give the 'some locales' warning
- for strftime %Ey rather than the unconditional 'only last 2 digits
- of year' one.
-
-2000-08-22 Richard Henderson <rth@cygnus.com>
-
- * alias.c (init_alias_analysis): Do not register
- struct_value_incoming_rtx or static_chain_rtx as pointing
- to stack memory.
-
-Tue Aug 22 01:44:43 2000 Jeffrey A Law (law@cygnus.com)
-
- * protoize.c (munge_compile_params): Fix typo and formatting buglets.
-
-2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h (report_problematic_module): Declare.
- * diagnostic.c (report_problematic_module): New function.
- (report_error_function): Tweak.
-
-Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * stmt.c (expand_goto_internal, fixup_gotos): Only check
- TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
-
-2000-08-21 Richard Henderson <rth@cygnus.com>
-
- * flow.c (calculate_global_regs_live): Mark frame pointer live
- everywhere before reload.
-
-2000-08-21 Jim Wilson <wilson@cygnus.com>
-
- * real.c (ereal_from_int, ereal_from_uint, significand_size): Handle
- INTEL_EXTENDED_IEEE_FORMAT.
- (toe64): Delete INTEL_EXTENDED_IEEE_FORMAT support. Unconditionally
- clear last two bytes of output FP value.
-
-2000-08-21 Graham Stott <grahams@cygnus.co.uk>
-
- * config/ia64/ia64.h (REDO_SECTION_INFO_P): Change decl to DECL.
-
-2000-08-21 Jakub Jelinek <jakub@redhat.com>
-
- * unroll.c (loop_find_equiv_value): If ret is modified between
- insn and loop_start, ret might not be equivalent to reg.
-
-2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (init_dollar_format_checking,
- maybe_read_dollar_number, finish_dollar_format_checking): New
- functions.
- (dollar_arguments_used, dollar_arguments_count,
- dollar_first_arg_num, dollar_max_arg_used, dollar_format_warned):
- New variables.
- (check_format_info): Support $ formats for scanf and printf width
- and precision. Always increment format_chars to advance past the
- '*' of precision, not just when the format parameters are
- available to check.
-
-2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.c (block_move_loop, expand_block_move,
- function_arg_partial_nregs, save_restore_insns, function_prologue,
- mips_expand_prologue, RA_MASK): Avoid using the `U' integer
- constant suffix.
- (function_arg_advance, function_arg): Match argument to format
- specifier `%p'.
-
-2000-08-21 Nix <nix@esperi.demon.co.uk>
-
- * gcc.c (do_spec_1): Implement %j spec flag.
- Remove dead comment.
-
- * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET.
- * system.h (HOST_BIT_BUCKET): Default to "/dev/null".
- * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL".
- * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise.
-
- * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if
- writable) instead of hardcoded value.
-
- * toplev.c (compile_file): Output to a file even if -fsyntax-only.
-
- * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill
- MKTEMP_EACH_FILE.
-
- * gcc.c (cc1_options): Do not process -o or run the assembler if
- -fsyntax-only.
- * objc/lang-spec.h: Likewise.
-
-2000-08-21 Eli Zaretskii <eliz@is.elta.co.il>
-
- * fixinc/fixincl.c (fix_with_system): Pipe the output of
- "external" fixes through `cat', to avoid truncating the input
- file by redirection.
-
-2000-08-21 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (lea_general_1): Copy insn condition to split
- condition.
- (lea_general_2, lea_general_3): Likewise.
-
-2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-decl.c (duplicate_decls, define_label): Restrict -Wtraditional
- warnings to user code.
-
- * c-lex.c (readescape, yylex): Likewise.
-
- * c-typeck.c (store_init_value, process_init_element): Likewise
- (c_expand_start_case): Format.
-
-2000-08-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
-
- * mips/linux.h (LINK_SPEC): Use %(endian_spec).
-
- * mips/mips.h: Change LINKER_ENDIAN_SPEC to ENDIAN_SPEC
- and linker_endian_spec to endian_spec.
- (ENDIAN_SPEC): Add %{EB} and %{EL}.
- (LINK_SPEC): Remove %{EB} and %{EL}.
- (ASM_SPEC): Likewise. Use %(endian_spec).
-
-2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-tree.h (flag_hosted): Move declaration from here...
- * c-common.h (flag_hosted): ... to here.
- (flag_noniso_default_format_attributes): New declaration.
- * c-decl.c (flag_noniso_default_format_attributes): New variable.
- (c_decode_option): Set it appropriately for options choosing
- language standard variant.
- * c-common.c (init_function_format_info): Only provide default
- format attributes if flag_hosted. Only provide the gettext
- formats if flag_noniso_default_format_attributes. Update
- comments.
- (check_format_info): Disable treatment of %a as a scanf flag in
- C99 mode.
-
-2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (scan_char_table): Add 'w' to flags for all formats
- except 'n'.
- (check_format_info): Set 'wide' for scanf format widths. Warn for
- a zero scanf width. Make the check for writing into a constant
- object at the first level of indirection; at later levels, warn if
- any type qualifiers are encountered.
-
-Mon Aug 21 07:41:12 2000 Jeffrey A Law (law@cygnus.com)
-
- * reload.c (reload_inner_reg_of_subreg): New function broken out of
- push_reload.
- (push_reload): Use reload_inner_reg_of_subreg.
- (combine_reloads): Do not combine reloads if the input reload
- is a SUBREG in which the inner part will need reloading.
-
- * global.c (global_alloc): Avoid passing dumpfile argument to
- reload routines.
- * toplev.c (rest_of_compilation): Likewise.
- * reload.h (reload): Remove dumpfile argument. Callers changed.
- (debug_reload, debug_reload_to_stream): Move prototypes here.
- * rtl.h (reload): Remove dumpfile argument.
- * reload.c (debug_reload): Remove prototype.
- (debug_reload_to_stream): Likewise.
- * reload1.c: Avoid passing dumpfile around, rely on rtl_dump_file
- instead.
-
-2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
-
- * diagnostic.c (context_as_prefix): Export.
- (need_error_newline): Remove.
- (lang_diagnostic_starter, lang_diagnostic_finalizer): New objects.
- (error_module_changed, record_last_error_module,
- error_function_changed, record_last_error_function): New functions.
- (initialize_diagnostics): Default initialize
- lang_diagnostic_starter, lang_diagnostic_finalizer.
- (init_output_buffer): Tweak.
- (file_name_as_prefix): New function.
- (announce_function, default_print_error_function,
- report_error_function, set_diagnostic_context): Tweak.
-
-2000-08-21 Richard Earnshaw <rearnsha@arm.com>
-
- * flow.c (init_propagate_block_info): Handle SUBREG in a jump
- condition expression.
-
-2000-08-20 Richard Henderson <rth@cygnus.com>
-
- * flow.c (merge_blocks_nomove): Don't seek back past the bb note.
-
-2000-08-20 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppinit.c (cpp_init): Set global flag when called.
- (cpp_reader_init): Bomb out if cpp_init hasn't been called.
-
-Sun Aug 20 01:41:35 2000 Dennis Chernoivanov <cdi@sparc.spb.su>
-
- * cpplex.c (cpp_scan_buffer): Move `output_line_command' just
- before `process_directive' so that newlines won't be missed
- for directives.
- (cpp_printf): Increment `print->lineno' when newline is emitted.
-
- * cppmain.c (cb_ident): Likewise.
- (cb_define): Likewise.
- (cb_undef): Likewise.
- (cb_include): Likewise.
- (cb_def_pragma): Likewise.
- (dump_macros_helper): Likewise.
-
-2000-08-20 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (emit_insn_group_barriers): Stop if ar.lc
- assigned before a loop.
-
- * config/ia64/ia64.md (ashlsi3): Zero extend the shift count.
- (ashrsi3, lshrsi3): Likewise.
-
-2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * c-lang.c: #include diagnostic.h
- (c_tree_printer): New function.
- (lang_init): Initialize lang_printer.
-
- * Makefile.in (c-lang.o): Depends on diagnostic.h
-
-2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic.
-
- * diagnostic.c (default_diagnostic_starter,
- default_diagnostic_finalizer): New functions.
- (diagnostic_for_asm, diagnostic_for_decl): Tweak.
- (pedwarn, pedwarn_with_file_and_line, error,
- error_with_file_and_line, fatal, warning,
- warning_with_file_and_line): Adjust call to report_diagnostic.
- (report_diagnostic): Rework.
- (set_diagnostic_context): New function.
-
- * diagnostic.h (struct diagnostic_context): New data structure.
- (diagnostic_message, diagnostic_argument_list,
- diagnostic_file_location, diagnostic_line_location,
- diagnostic_is_warning, diagnostic_starter, diagnostic_finalizer,
- diagnostic_finalizer, diagnostic_auxiliary_data): New macros.
- (set_diagnostic_context): Declare.
- (report_diagnostic): Change prototype.
-
-Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net>
-
- * fix-header.c (main): Initialize cpplib.
-
-2000-08-19 Michael Meissner <meissner@redhat.com>
-
- * ifcvt.c (find_if_block): Do not assume that a THEN block has any
- instructions in it before checking for indirect jumps.
-
- * ifcvt.c (find_if_block): Do not consider a THEN block that ends
- in an indirect jump as a potential for conditional execution.
-
- * d30v.h (d30v_init_expanders): Don't declare here.
- * d30v-protos.h (d30v_init_expanders): Declare here with a valid
- prototype.
-
-Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net>
-
- * cpp.texi: Add @section for assertions.
-
-Sat Aug 19 12:37:08 EDT 2000 John Wehle (john@feith.com)
-
- * loop.c (scan_loop): Use CONST_CALL_P instead of
- checking for REG_LIBCALL / REG_RETVAL.
-
-Sat Aug 19 09:18:47 2000 Jeffrey A Law (law@cygnus.com)
-
- * reload1.c (reload_as_needed): Accept dumpfile argument,
- pass it to emit_reload_insns.
- (emit_reload_insns): Add new dumpfile argument. If non-null
- then dump the reloads for each insn into the dumpfile.
- (reload): Pass dumpfile to reload_as_needed.
-
- * invoke.texi: Clean up linux-gnu vs linux comments.
-
-2000-08-19 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (reg_or_5bit_operand): New.
- (ia64_depz_field_mask): New.
- * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New.
- (PREDICATE_CODES): Update.
- * config/ia64/ia64.md: Update commentary.
- (depz_internal): New.
- (ashlsi3): Implement directly.
- (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants.
- (ashldi3): Use shladd.
- * config/ia64/ia64-protos.h: Update.
-
-2000-08-18 Zack Weinberg <zack@wolery.cumb.org>
-
- * toplev.c (independent_decode_option): Always process -g.
- Remove third argument, now unused. Adjust caller to match.
-
-2000-08-18 Richard Henderson <rth@cygnus.com>
-
- * combine.c (make_compound_operation): Break after creating
- the extraction.
-
-2000-08-18 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplib.c (cpp_register_pragma_space): Just return if the
- namespace is already registered.
-
-2000-08-18 Ray Essick <essick@ddna.labs.mot.com> & Nick Clifton <nickc@redhat.com>
-
- * config/mcore/mcore.md (rotlsi3): Allow allow rotations by a
- constant amount. Do not generate ROTL instruction.
-
-Fri Aug 18 16:22:20 2000 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/elf.h: Do not include sh/sh.h.
- * config/sh/rtems.h: Likewise.
- * config/sh/rtemself.h: Do not include sh/elf.h.
- * configure.in: Get them included with `tm_file's.
- * configure: Rebuilt.
-
- * config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify.
- * config/sh/sh.c (fpscr_set_from_mem): Use them.
-
-Fri Aug 18 14:23:18 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * stor-layout.c (compute_record_type): Don't use mode of single
- field as mode of record if not integer mode of same type.
-
- * regmove.c (perhaps_ends_bb_p): New function.
- (optimize_reg_copy_1, optimize_reg_copy_2): Call it.
- (optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise.
- (fixup_match_1): Likewise.
- (fixup_match_1, combine_stack_adjustments_for_block): Add casts to
- avoid signed/unsigned warnings.
-
- * function.c (fixup_var_refs_1, case MEM): Update CODE after
- updating X.
-
-Fri 18-Aug-2000 18:33:45 BST Neil Booth <NeilB@earthling.net>
-
- * cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS.
- (_cpp_trigraph_map): Declaration moved from cpplex.c
-
- * cppinit.c: Define _cpp_trigraph_map. Use UCHAR_MAX + 1
- instead of 256. Use consistent test for designated initializers.
- (cpp_init): Initialize trigraph_map.
- (initialize_standard_includes, parse_option): Use memcmp
- instead of strncmp.
-
- * cpplex.c (init_trigraph_map): Remove.
- (trigraph_ok, trigraph_replace, lex_line): Refer to
- _cpp_trigraph_map.
-
- * cpplib.c (str_match, WARNING, ERROR, ICE): Delete.
- (do_unassert): Remove unused "next" local.
-
- * system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype.
-
-2000-08-18 Emmanuel Marty <emarty@suntech.fr>
-
- * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return
- insn.
-
-2000-08-17 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (spill_restore_mem): Handle emitting
- the first insn in a sequence.
-
-Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com)
-
- * alias.c (true_dependence, write_dependence_p): A read
- involving a label_ref or the constant pool doesn't create
- a dependency.
-
- * rtl.h (unchanging): Improve documentation.
-
-2000-08-17 Rodney Brown <RodneyBrown@mynd.com>
-
- * cse.c (insert_regs): Remove unused `regno'.
-
-2000-08-17 Neil Booth <NeilB@earthling.net>
-
- * (cppinit.c) merge_include_chains: Use remove_dup_dir,
- remove_dup_dirs. If qtail == brack, remove brack not
- qtail.
- (remove_dup_dir, remove_dup_dirs): New functions.
-
-2000-08-17 Neil Booth <NeilB@earthling.net>
-
- * cppinit.c (cpp_cleanup): Free include dir chains.
- * cpplib.c (do_undef): Let _cpp_free_definition make the node void.
- (do_unassert): Free the assert with _cpp_free_definition.
- * cppmacro.c (_cpp_free_definition): Free memory allocated for
- assertions. Make the node a T_VOID node.
-
-2000-08-17 Neil Booth <NeilB@earthling.net>
-
- * cppinit.c (path_include, append_include_chain):
- Remove 2nd parameter (struct cpp_pending *).
- (path_include, initialize_standard_includes, cpp_handle_option):
- Update callers appropriately.
- (cpp_handle_option): Use pend.
-
-2000-08-17 Neil Booth <NeilB@earthling.net>
-
- * cppinit.c (sort_options): Remove, put functionality in
- cpp_init.
- (cpp_init): New.
- (initialize_builtins): Free memory.
- (cpp_start_read): Move init_IStable to cpp_init.
-
- * cpplib.h (cpp_init): New prototype.
- * cppmain.c (main): Call cpp_init.
-
-Thu Aug 17 13:20:32 EDT 2000 John Wehle (john@feith.com)
-
- * rtlanal.c (rtx_unstable_p): Use CONSTANT_P.
- (rtx_unstable_p, rtx_varies_p): Process vectors.
-
-2000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * config/sh/lib1funcs.asm (GLOBAL): Define. Use for all
- references to GLOBAL symbols. Use LOCAL where appropriate.
-
-2000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always
- use t-aix41 when host == target.
-
-2000-08-16 Richard Henderson <rth@cygnus.com>
-
- * reload.c (push_secondary_reload): Revert last change.
- If we use a reload_in/out pattern, make the when the same
- as the primary reload.
- (find_reloads): Likewise.
-
-2000-08-16 Manfred Hollstein <manfredh@redhat.com>
-
- * configure.in (libstdcxx-v3): Fix test.
- * configure: Regenerate.
-
-Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * calls.c (calls_function_1, expand_call): Only test
- TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE.
- * function.c (thread_prologue_and_epilogue_insns): Likewise.
-
-2000-08-16 Richard Henderson <rth@cygnus.com>
-
- * combine.c (simplify_shift_const): Revert previous two
- changes. If SHIFT_COUNT_TRUNCATED, crop the shift count
- before the main loop.
-
-2000-08-15 Richard Henderson <rth@cygnus.com>
-
- * combine.c (simplify_shift_const): Bound shift count when
- combining shifts.
-
-Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * calls.c (ECF_SP_DEPRESSED): New macro.
- (calls_function_1): Treat calling sp-depressed function as alloca.
- (emit_call_1): Don't adjust SP if calling sp-depressed function.
- (expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED.
- If sp-depressed, ensure block saves and restores SP.
- * fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE
- for INTEGER_TYPE.
- * function.c (keep_stack_depressed): New function.
- (thread_prologue_and_epilogue_insns): Call it.
- * print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED
- to print DECL_OFFSET_ALIGN.
- Print no-force-blk and transparent-union flags properly.
- * stmt.c (expand_goto_internal): Don't restore stack if last block
- and function returns with sp depressed.
- (fixup_gotos): Likewise.
- (save_stack_pointer): New function, from code in expand_decl.
- (expand_decl): Call new function.
- * tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK.
- (TYPE_RETURNS_STACK_DEPRESSED): New macro.
- (save_stack_pointer): New declaration.
-
- * diagnostic.c (fatal_function): New variable.
- (set_fatal_function): New function.
- (fatal): Call it.
- * diagnostic.h (set_fatal_function): New declaration.
-
-2000-08-15 William Cohen <wcohen@redhat.com>
-
- * config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined.
- (PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info.
- (DWARF2_ASM_LINE_DEBUG_INFO): Defined.
-
-2000-08-15 Richard Henderson <rth@cygnus.com>
-
- * flow.c (mark_used_reg): Set reg_cond_reg appropriately.
-
-2000-08-15 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_function_ok_for_sibcall): New function.
- * arm.h (FUNCTION_OK_FOR_SIBCALL): Define.
- * arm.md (call expanders): Don't check here for calls that can't
- be sibling calls.
-
-2000-08-15 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (splits generating cond_exec): Disable.
-
-2000-08-15 Richard Earnshaw <rearnsha@arm.com>
-
- * arm/linux-elf.h (text_section): Delete declaration.
-
-2000-08-15 Richard Earnshaw <rearnsha@arm.com>
-
- ARM support for unordered FP operations.
- * arm-protos.h (arm_comparison_operator): Declare.
- * arm.c (arm_comparison_operator): New function.
- (arm_select_cc_mode): Add unordered comparison codes.
- (get_arm_condition_code): Likewise.
- (arm_final_prescan_insn): Can't handle unordered jumps that can't
- be done in one insn.
- * arm.h (PREDICATE_CODES): Add arm_comparison_operator.
- * arm.md (all uses of comparison_operator): Replace with
- arm_comparison_operator.
- (bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New
- expands.
- (arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New
- patterns.
-
-Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * gthr-posix.h: Conditionally include <sched.h>; include
- <config.h> from libobjc/.
-
-2000-08-14 Richard Henderson <rth@cygnus.com>
-
- * config/i386/i386.c (legitimize_pic_address): Use Pmode
- for all CONSTs.
-
-2000-08-14 Richard Henderson <rth@cygnus.com>
-
- * configure.in (ia64-*): Set float_format for i386 long double.
-
- * real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT
- as we would for i386 XFmode.
- (PUT_REAL): Likewise.
- (endian, ereal_atof, real_value_truncate): Likewise.
- (ereal_isneg, toe64, etens, make_nan): Likewise.
- * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise.
-
- * config/ia64/ia64-protos.h: Update.
- * config/ia64/ia64.c (general_tfmode_operand): New.
- (destination_tfmode_operand): New.
- (tfreg_or_fp01_operand): New.
- (ia64_split_timode): New.
- (spill_tfmode_operand): New.
- (ia64_expand_prologue): Use TFmode not XFmode.
- (ia64_expand_epilogue): Likewise.
- (ia64_function_arg): Likewise.
- (ia64_function_arg_advance): Likewise.
- (ia64_return_in_memory): Likewise.
- (ia64_function_value): Likewise.
- (ia64_print_operand): Likewise.
- (ia64_register_move_cost): Set GR<->FR to 5.
- (ia64_secondary_reload_class): Get GR for TImode memory op.
- * config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove.
- (ROUND_TYPE_ALIGN): Remove.
- (LONG_DOUBLE_TYPE_SIZE): Set to 128.
- (INTEL_EXTENDED_IEEE_FORMAT): Define.
- (HARD_REGNO_NREGS): Use TFmode, not XFmode.
- (HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs.
- (MODES_TIEABLE_P): Use TFmode, not XFmode.
- (CLASS_MAX_NREGS): Likewise.
- (ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks.
- (PREDICATE_CODES): Update.
- * config/ia64/ia64.md (movti): New.
- (movti_internal): Use a clobber for memory alternatives.
- (reload_inti, reload_outti): New.
- (movsfcc_astep): Predicate properly.
- (movdfcc_astep): Likewise.
- (movxf): Remove.
- (movtf): New.
- (extendsftf2, extenddftf2): New.
- (trunctfsf2, trunctfdf2): New.
- (floatditf2, fix_trunctfdi2): New.
- (floatunsditf2, fixuns_trunctfdi2): New.
- (addtf3, subtf3, multf3, abstf2): New.
- (negtf2, nabstf2, mintf3, maxtf3): New.
- (maddtf3, msubtf3, nmultf3, nmaddtf3): New.
- (cmptf): New.
- (fr_spill): Use TFmode, not XFmode.
- (fr_restore): Likewise.
- * config/ia64/lib1funcs.asm (__divtf3): New.
- * config/ia64/t-ia64 (LIB1ASMFUNCS): Add it.
-
-2000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cse.c (fold_rtx): Avoid empty body in an if-statement.
-
- * doloop.c (doloop_iterations_max, doloop_modify): Avoid using the
- `U' integer constant suffix.
-
- * dwarf2out.c (add_subscript_info): Avoid empty body in an
- else-statement.
-
- * sparc/sol2.h (__enable_execute_stack): Prototype.
-
-2000-08-14 David Edelsohn <edelsohn@gnu.org>
-
- * collect2.c: Remove use of AIX import file.
-
- * longlong.h: Test ARCH_PWR not ARCH_POWER.
-
- * rs6000.c (print_operand, case 'E'): Add else.
-
-2000-08-14 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address.
- (movdi_symbolic): New.
-
-2000-08-14 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
- to GNU as. For Intel as, pass -M const_gp and -M no_plabel.
- * config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic
- to GNU as.
-
-2000-08-14 Richard Henderson <rth@cygnus.com>
-
- * expr.c (emit_group_load): Don't force constants into registers.
- Special case source already in the correct mode.
-
-2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
-
- * configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
- * fixinc/inclhack.def: Likewise.
- * fixinc/mkfixinc.sh: Likewise.
- * configure: Regenerate.
- * fixinc/fixincl.x: Regenerate.
- * install.texi: Document equivalence of linux and linux-gnu.
-
-Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * cse.c (insert_regs): Also in REG case: When finding an invalid
- value, and we make a new quantity, make sure that it won't be
- mistaken by for a valid one by mention_regs.
-
-2000-08-13 Ralf Gütlein <ralf.guetlein@aranea.de>
-
- * h8300.md: Remove obsolete peepholes.
-
-2000-08-13 Kazu Hirata <kazu@hxi.com>
-
- * invoke.texi (H8/300 Options): Fix typos.
- * config/h8300.c: Fix formatting.
- * config/h8300.h: Fix comment typos.
- (OVERRIDE_OPTIONS): Fix formatting.
-
- * function.c: Fix formatting.
-
- * cse.c: Fix formatting.
-
-2000-08-13 Geoff Keating <geoffk@cygnus.com>
-
- * flow.c (attempt_auto_inc): Remove unused variable `bb'.
- (attempt_auto_inc): Suppress parentheses warning.
- * function.c (put_reg_into_stack): Remove unused variable `unsigned_p'.
- * loop.c (load_mems): Remove `u' suffix in two places.
- * config/rs6000/rs6000.c: Remove unnecessary `u' suffixes from
- hex constants.
- * config/rs6000/rs6000.h: Likewise.
- * config/rs6000/sol-c0.c: Prototype some functions. Remove the
- __eabi dummy routine.
- * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Remove unused
- variable `buf_ptr'.
-
- * config/rs6000/rs6000.c (rs6000_select_section): Rewrite to
- not put stuff in .sdata unnecessarily.
- (rs6000_unique_section): New function.
- * config/rs6000/rs6000-protos.h: Add rs6000_unique_section.
- * config/rs6000/sysv4.h (UNIQUE_SECTION): Define.
-
- * c-typeck.c (build_array_ref): Don't complain about non-lvalue
- arrays in C99. Don't try to look at DECL_REGISTER of a
- COMPONENT_REF. Don't complain twice about the same error.
-
- * fixinc/inclhack.def (aix_pthread): New fix.
- (aix_sysmachine): New fix.
- * fixinc/fixincl.x: Regenerate.
-
- * expr.c (expand_expr): Call convert_modes when turning a large
- multiply into a small one.
-
-2000-08-12 Geoff Keating <geoffk@cygnus.com>
-
- * tree.h (DECL_OFFSET_ALIGN): Make the off_align field of
- the tree structure an exponent rather than an explicit alignment
- so it doesn't overflow.
- (SET_DECL_OFFSET_ALIGN): New macro.
- * stor-layout.c (place_union_field): Use SET_DECL_OFFSET_ALIGN
- rather than DECL_OFFSET_ALIGN.
- (place_field): Likewise.
- * expmed.c (store_bit_field): Abort on align==0 to avoid
- antisocial machine behavior.
-
-2000-08-12 Richard Henderson <rth@cygnus.com>
-
- * sibcall.c (uses_addressof): Accept both addressof and
- current_function_internal_arg_pointer inside a mem.
- (optimize_sibling_and_tail_recursive_call): Fail tail recursion
- if current_function_uses_addressof.
- * stmt.c (expand_return): Kill tail recursion and HAVE_return
- optimizations.
-
-2000-08-11 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (addsi3): Remove expander.
- (subsi3, mulsi3, negsi2, one_cmplsi2): Likewise.
- (*addsi3_shladd): New.
-
-2000-08-11 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (do_spill): Pass cfa offset to move expander.
- (do_restore): Likewise.
- (gen_movdi_x, gen_fr_spill_x, gen_fr_restore_x): New.
- (ia64_expand_prologue, ia64_expand_epilogue): Use them.
- (rtx_needs_barrier): Track actual bit manipulation for
- ar.unat moves, gr_spill, and gr_restore.
- (emit_insn_group_barriers): Special case gr_spill/gr_restore.
- (process_set): Don't handle varargs spills.
- * config/ia64/ia64.md (gr_spill): Accept cfa offset. Emit
- .mem.offset here instead of in process_set.
- (gr_restore): Likewise.
-
-2000-08-11 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.h (PROMOTE_MODE): Only extend to SImode.
-
-2000-08-11 Mark Elbrecht <snowball3@bigfoot.com>
-
- * gcc.texi (The Configuration File): Document
- COLLECT2_HOST_INITIALIZATION, GCC_DRIVER_HOST_INITIALIZATION, and
- UPDATE_PATH_HOST_CANONICALIZATION.
-
-2000-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-parse.in (cast_expr): Avoid -Wstrict-prototype warnings for
- unprototyped function pointer casts on integer constants.
-
-2000-08-11 Laurynas Biveinis <lauras@softhome.net>
-
- * fixproto: Recognize DOS paths with drive letters as absolute paths.
-
-2000-08-11 Nathan Sidwell <nathan@codesourcery.com>
-
- * extend.texi (Volatiles): Fix typos.
-
-2000-08-11 Kazu Hirata <kazu@hxi.com>
-
- * flow.c: Fix formatting.
-
-2000-08-11 Richard Henderson <rth@cygnus.com>
-
- * reload.c (push_secondary_reload): When invoking a reload_{in,out}
- pattern, always allocate a tertiary scratch register.
-
- * config/alpha/alpha.md (reload_inqi): Use a DImode scratch.
- (reload_inhi): Likewise.
-
-2000-08-11 Richard Henderson <rth@cygnus.com>
-
- * function.c (put_reg_into_stack): Allow type to be NULL.
- (schedule_fixup_var_refs): Likewise.
- (gen_mem_addressof): Allow decl to be NULL.
- (put_addressof_into_stack): Likewise.
-
- * flow.c (merge_blocks_nomove): Be more careful about
- locating the beginning of block A.
-
- * combine.c (simplify_shift_const): Obey SHIFT_COUNT_TRUNCATED.
-
-Thu Aug 10 22:47:09 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * configure.in:
- * configure:
- * gthr-posix.h:
- * config.in: Reverted the check for <sched.h>.
-
-2000-08-10 Chris Demetriou <cgd@sibyte.com>
-
- * mips/elf.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME): New
- macros define the name of CTOR and DTOR sections.
- (CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
- DTOR_LIST_END): Change to use attributes to specify
- sections.
- * mips/elf64.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME,
- (CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN,
- DTOR_LIST_END): Same as in mips/elf.h.
-
-2000-08-10 Drew Moseley <dmoseley@redhat.com>
-
- * config/mn10300/mn10300.h: Added no-crt0 option for explicitly
- disabling just crt0.o.
-
-2000-08-10 Richard Earnshaw <rearnshaw@arm.com> & Nick Clifton <nickc@cygnus.com>
-
- * arm.h (CPP_SPEC): Use sub-spec cpp_interwork.
- (CPP_INTERWORK_SPEC, CPP_INTERWORK_DEFAULT_SPEC): New sub-specs.
- (EXTRA_SPECS): Add them.
- * arm/lib1funcs.asm: Support builds for interworking.
- Use macros to eliminate duplicated pieces of code.
-
-2000-08-10 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c (expand_a_rotate): New.
- (emit_a_rotate): Likewise.
- (h8300_adjust_insn_length): Add support for the rotate insns.
- * h8300.md (rotlqi3): New.
- (*rotlqi3_1): Likewise.
- (rotlhi3): Likewise.
- (*rotlhi3_1): Likewise.
- (rotlhi3): Likewise.
- (*rotlhi3_1): Likewise.
- * h8300-proto.h: Add prototypes for expand_a_rotate and
- emit_a_rotate.
-
- * h8300.c: Fix comment typos.
- (dosize): Declare the variable amount as unsigned.
- (get_shift_alg): Fix a comparison between signed and unsigned.
- (emit_a_shift): Likewise.
- (h8300_adjust_insn_length): Simplify the code.
-
- * c-decl.c: Fix formatting.
-
-2000-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-lex.c (parse_float, yylex): For -Wtraditional, issue a
- warning about non-traditional numeric constant suffixes.
-
- * cppexp.c (parse_number): Likewise.
-
- * invoke.texi: (-Wtraditional): Document new behavior.
-
-Thu Aug 10 00:11:04 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * gthr-posix.h: Include auto-host.h. Conditionally include
- <sched.h>.
- * configure.in: Check for the <sched.h> header file.
- * config.in: Added define for HAVE_SCHED_H.
-
-2000-08-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-typeck.c (process_init_element): For -Wtraditional, warn about
- initialization of unions.
-
- * invoke.texi (-Wtraditional): Document new behavior.
-
-2000-08-09 Zack Weinberg <zack@wolery.cumb.org>
-
- * configure.in (--enable-c-cpplib): Uncomment. Use AC_DEFINE
- instead of extra_c_flags.
- (--enable-c-mbchar): Use AC_DEFINE instead of extra_c_flags.
- * configure: Regenerate.
- * config.in: Regenerate.
-
- * cpperror.c (cpp_type2name): New function.
- * cpplex.c (lex_line): If we issued an error for an invalid
- preprocessing directive, discard that logical line.
- * cpplib.c (do_line): Call a hook function if the current file
- is renamed by #line.
- (do_ident): Pass the contents of the string, not the entire
- token, to the callback function.
- * cpplib.h (CPP_LAST_PUNCTUATOR): New #define.
- (cb.rename_file): New hook function.
- (cb.ident): Adjust prototype.
- (cpp_type2name): Prototype.
- * cppmacro.c (dump_macro_args): Correct precedence lossage.
-
- * cppmain.c (cb_ident): Update for changed interface.
- (cb_rename_file): New function.
- (main): Set rename callback.
-
-2000-08-09 Alexandre Oliva <aoliva@redhat.com>
-
- * caller-save.c (mark_referenced_regs): Mark partially-overwritten
- multi-word registers.
-
-2000-08-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (combine_strings, check_format_info): Refer to ISO C
- or ISO C89 instead of ANSI C.
- * c-decl.c (grokdeclarator, xref_tag, finish_struct,
- build_enumerator, do_case): Likewise.
- * c-lex.c (parse_float, yylex): Likewise.
- * c-parse.in: Likewise.
- * c-typeck.c (common_type, build_array_ref, build_binary_op,
- build_unary_op, pedantic_lvalue_warning, build_conditional_expr,
- build_c_cast, convert_for_assignment, set_init_index,
- set_init_label, c_expand_start_case): Likewise.
- * toplev.c (documented_lang_options, display_help): Likewise.
-
-2000-08-08 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c: Fix formatting.
- * h8300.h: Likewise.
- * h8300.md: Likewise.
- (movsi_h8300hs): Fix formatting of the resulting assembly code.
-
- * reload1.c: Fix formatting.
-
-2000-08-08 Rodney Brown <RodneyBrown@mynd.com>
-
- * alpha/alpha.c (alpha_emit_xfloating_libcall):
- Use GEN_CALL_VALUE define.
- * alpha/alpha.md (untyped_call): Use GEN_CALL define.
- * clipper/clipper.md (untyped_call): Likewise.
- * dsp16xx/dsp16xx.md (untyped_call): Likewise.
- * fx80/fx80.md (untyped_call): Likewise.
- * mips/mips.md (untyped_call): Likewise.
- * ns32k/ns32k.md (untyped_call): Likewise.
- * pa/pa.md (untyped_call): Likewise.
- * romp/romp.md (untyped_call): Likewise.
- * sparc/sparc.md (untyped_call): Likewise.
-
-2000-08-08 Jason Eckhardt <jle@cygnus.com>
-
- * config/i860/i860.c (singlemove_string): Do not generate assembler
- pseudo instructions that must be expanded (that is, with signed
- constants larger than 16 bits).
-
-2000-08-08 Richard Henderson <rth@cygnus.com>
-
- * flow.c (life_analysis): Only turn off PROP_LOG_LINKS and
- PROP_AUTOINC at -O0. Don't collect alias info at -O0.
- (init_propagate_block_info): Don't kill memory stores at -O0.
- (mark_set_1, mark_used_regs): Likewise.
-
-2000-08-08 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (optimization_options): Decorate 'level' as
- ATTRIBUTE_UNUSED.
- (mask64_operand): Remove sign-extend thinko.
- (rldic_operand): New function.
- (load_multiple_operation): regno's are unsigned ints.
- (store_multiple_operation): Likewise.
- (lmw_operation): Likewise.
- (stmw_operation): Likewise.
- (includes_lshift_p): shift_mask is unsigned int.
- (includes_lshift64_p): New function.
- (addrs_ok_for_quad_peep): unsigned int reg1.
- (print_operand): Consistently add "else" after
- output_operand_lossage().
- (print_operand, case 'b'): Fold in case 'W'.
- (print_operand, case 'W'): Print rldic MB value.
- (output_epilogue): Update Objective-C language string.
- (output_toc): unsigned HOST_WIDE_INT low, compare unsigned.
- * rs6000.h (PREDICATE_CODES): Add rldic_operand.
- * rs6000.md (ashldi3): Add rldic instruction.
- (iordi3, xordi3): Remove redundant "else if CONST_DOUBLE".
- (cmpsi_internal2, cmpdi_interal2): Use 'b' output template
- modifier.
-
-2000-08-08 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64-protos.h: Remove duplicates. Update
- for massive code rearrangements.
- * config/ia64/ia64.c (ia64_arpfs_regno): Remove.
- (ia64_rp_regno, ia64_fp_regno, ia64_input_regs): Remove.
- (ia64_local_regs, ia64_need_regstk): Remove.
- (ar_ccv_reg_operand): New.
- (ia64_gp_save_reg): New.
- (struct ia64_frame_info): Combine most of the size elements;
- add new gr save elements.
- (find_gr_spill): New.
- (next_scratch_gr_reg): New.
- (mark_reg_gr_used_mask): New.
- (ia64_compute_frame_size): Rewrite. Allocate special AR regs
- to GR backing store regs when possible.
- (ia64_initial_elimination_offset): New.
- (ia64_rap_fp_offset): Remove.
- (save_restore_insns): Remove.
- (setup_spill_pointers): New.
- (finish_spill_pointers): New.
- (spill_restore_mem): New.
- (do_spill, do_restore): New.
- (ia64_expand_prologue): Rewrite to use them.
- (ia64_expand_epilogue): Likewise.
- (ia64_direct_return): Update for current_frame_info changes.
- (ia64_function_prologue): Simplify .prologue emission. Emit
- .spill when needed.
- (ia64_setup_incoming_varargs): Don't ever emit rtl.
- (ia64_dbx_register_number): New.
- (ia64_initialize_trampoline): New.
- (ia64_secondary_reload_class): Request GR_REGS for integer
- arithmetic destined for FR_REGS.
- (ia64_init_machine_status): Don't reset return_address_pointer_rtx.
- (ia64_mark_machine_status): Mark ia64_gp_save.
- (rws_access_regno): Rename from rws_access_reg; don't treat
- predicates specially.
- (rws_access_reg): New. Update all callers.
- (rtx_needs_barrier): Remove dead unspecs.
- (ia64_epilogue_uses): Mark ar.pfs and ar.unat live on exit.
- (ia64_encode_section_info): Silence signed/unsigned warnings.
- (spill_offset, sp_offset, spill_offset_emitted): Remove.
- (tmp_reg, tmp_saved): Remove.
- (process_set): Rewrite to expect complicated bits via
- REG_FRAME_RELATED_EXPR.
- (ia64_expand_fetch_and_op): Use emit_move_insn; be explicit
- in the use of ar.ccv; never set RTX_UNCHANGING_P.
- (ia64_expand_op_and_fetch): Likewise.
- (ia64_expand_compare_and_swap): Likewise.
- (ia64_expand_builtin): Likewise.
- * config/ia64/ia64.h (AR_UNAT_REGNUM): New.
- (FIRST_PSEUDO_REGISTER): Update.
- (AR_M_REGNO_P): Update.
- (FIXED_REGS): Don't mark three local registers as used.
- (EXTRA_CC_MODES): New.
- (SELECT_CC_MODE): New.
- (HARD_REGNO_NREGS): Allow DImode in p0; handle CCImode.
- (HARD_REGNO_MODE_OK): Disallow CCImode from non-predicates.
- (FRAME_GROWS_DOWNWARD): Unset.
- (STARTING_FRAME_OFFSET): Zero.
- (ELIMINABLE_REGS): Eliminate from the soft to hard frame pointer.
- (INITIAL_ELIMINATION_OFFSET): Defer to out of line function.
- (HARD_FRAME_POINTER_REGNUM): New.
- (CAN_DEBUG_WITHOUT_FP): Define.
- (TRAMPOLINE_TEMPLATE): Remove.
- (TRAMPOLINE_SIZE): Lower to 32.
- (TRAMPOLINE_ALIGNMENT): Lower to 64.
- (INITIALIZE_TRAMPOLINE): Defer to out of line function.
- (PREDICATE_CODES): Update.
- (struct machine_function): Add ia64_gp_save.
- * config/ia64/ia64.md: Purge unused unspecs.
- (movsi patterns): Allow moves to/from AR_M_REGS.
- (movdi patterns): Allow moves to/from p0.
- (call patterns): Move most setjmp hackery to ia64_gp_save_reg.
- (gr_spill, gr_restore): Indicate ar.unat read/written.
- (nonlocal_goto): Don't pass old frame_pointer.
- (nonlocal_goto_receiver): Remove.
- (exception_receiver): New.
- (builtin_setjmp_setup): New.
- (builtin_setjmp_receiver): New.
- * config/ia64/lib1funcs.asm (__ia64_save_stack_nonlocal): Bundle.
- (__ia64_nonlocal_goto): Bundle. Don't kill r7.
- (__ia64_restore_stack_nonlocal): Likewise.
- (__ia64_trampoline): New.
- * config/ia64/sysv4.h (DBX_REGISTER_NUMBER): Defer to out of line
- function.
- * config/ia64/t-ia64 (LIB1ASMFUNCS): Add __trampoline.
-
-2000-08-08 Richard Henderson <rth@cygnus.com>
-
- * frame.h (ia64_frame_state): Add my_psp.
- * libgcc2.c (ia64_throw_helper): Add throw_sp argument.
- (__throw): Pass it in. Don't clobber r7.
- * config/ia64/frame-ia64.c (init_ia64_reg_loc): Mark inline.
- (execute_one_ia64_descriptor) [mem_stack_v]: Sets psp.when
- and nothing to do with sp.
- (normalize_reg_loc): Use frame->my_psp.
- (frame_translate): Handle frame-pointer-less functions. Set
- spill_base correctly, in absence of being told.
- (__build_ia64_frame_state): New sp argument. Fill in frame->my_sp.
- (__ia64_backtrace_helper): New sp argument. Use
- builtin_return_address instead of label addresses.
- (print_record) [mem_stack_v]: No size member.
-
-2000-08-08 Richard Henderson <rth@cygnus.com>
-
- * regclass.c (choose_hard_reg_mode): Iterate over all CC modes.
-
-2000-08-08 Richard Henderson <rth@cygnus.com>
-
- * tm.texi (LOCAL_REGNO): Document.
- * flow.c (LOCAL_REGNO, EPILOGUE_USES): Provide default.
- (mark_regs_live_at_end): Don't mark LOCAL_REGNO registers.
- * reload1.c (reload): Likewise when considering nonlocal labels.
-
- * config/ia64/ia64.h (LOCAL_REGNO): New.
- * config/sparc/sparc.h (LOCAL_REGNO): New.
-
-2000-08-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-lex.c (yylex): Don't allow integer suffixes 'LUL', 'Ll', 'lL'.
-
-2000-08-07 Nick Clifton <nickc@redhat.com>
-
- * config/mips/mips.c: Fix compile time warning messages.
- * config/mips/mips-protos.h: Add prototype for equality_op.
-
- * mn10300.h (TARGET_SWITCHES): Document `-mam33'.
-
-2000-08-07 Graham Stott <grahams@cygnus.co.uk>
-
- * mn10300.md: Use nonimmediate_operand instead of general_operand
- on output operands.
-
- * mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads.
-
-2000-08-07 Alexandre Oliva <aoliva@redhat.com>
-
- * sh.h (EXTRA_CONSTRAINT_Q): Adjust to GNU Coding Standards.
- * sh.c (expand_block_move): Break long lines.
- (expand_ashiftrt, fpscr_set_from_mem): Likewise.
- * sh.md (mulsi3): Likewise.
- (movdi): Adjust spacing.
-
-2000-08-07 Richard Henderson <rth@cygnus.com>
-
- * expmed.c (store_bit_field): Don't require MEM_IN_STRUCT_P.
- * expr.c (emit_group_store): Don't set it.
-
-2000-08-07 Kazu Hirata <kazu@hxi.com>
-
- * invoke.texi (Options for Debugging Your Program or GCC): Remove
- duplicate entries for 'w' and 'z'.
-
- * flow.c: Fix a comment typo.
-
-Sun Aug 6 23:47:35 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * c-parse.in: Changed the language string for Objective-C to "GNU
- Objective-C".
-
-Sun Aug 6 11:54:03 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * gthr-posix.h: Integrated Chris Ball's <cball@fmco.com> changes
- to improve the Posix thread support for Objective-C.
-
-2000-08-06 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.h (enum c_tree_index): Add CTI_SIGNED_SIZE_TYPE and
- CTI_UNSIGNED_PTRDIFF_TYPE.
- (signed_size_type_node): Define.
- (unsigned_ptrdiff_type_node): Define.
- * c-decl.c (init_decl_processing): Create the
- signed_size_type_node and unsigned_ptrdiff_type_node types.
- * c-common.c (T_SC): Define.
- (T_SST): Define.
- (T_UPD): Define.
- (print_char_table): Use T_SST for %zd, %zi, %zn. Use T_UPD for
- %to, %tu, %tx, %tX. Allow %hhn (T_SC). Add "c" to the flags for
- %s and %p.
- (scan_char_table): Use T_SC for %hhd, %hhi, %hhn. Use T_SST for
- %zd, %zi, %zn. Use T_UPD for %to, %tu, %tx, %tX. Add "c" to the
- flags for %c, %s and %[.
- (check_format_info): Only allow leniency for signedness of targets
- of character pointers (when pedantic) for formats flagged with
- "c", so for strings but not for %hh formats. When pedantic, don't
- allow character pointers to substitute for void pointers if a
- second level of indirection is present.
-
-2000-08-06 Kazu Hirata <kazu@hxi.com>
-
- * invoke.texi (Options for Debugging Your Program or GCC): Update
- the names of dump files.
-
- * h8300.c (dosize): Rearrange code for conciseness.
- (split_adds_subs): Likewise.
-
- * loop.c: Fix formatting.
-
- * dwarf2out.c: Fix formatting.
-
- * tm.texi (FUNCTION_ARG_PARTIAL_NREGS): Fix a typo.
-
- * expr.c: Fix formatting.
-
-2000-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * rs6000.c (rs6000_maybe_dead): Prototype.
-
-2000-08-06 Richard Henderson <rth@cygnus.com>
-
- * stmt.c (expand_goto): Do virtual_stack_vars_rtx replacement for
- HAVE_nonlocal_goto as well.
- * config/i960/i960.md (nonlocal_goto): Don't do it here.
- * config/pj/pj.md (nonlocal_goto): Likewise.
-
-2000-08-07 Michael Hayes <mhayes@cygnus.com>
-
- * loop.c (try_swap_copy_prop): New function.
- (load_mems): Rename copies to load_copies and add new regset
- store_copies. Check for sets of shadow registers and mark
- in store_copies. Call try_swap_copy_prop for registers
- marked in store_copies.
-
-Sun Aug 6 00:54:42 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
-
- * objc/objc-act.c: New command line option -fconstant-string-class
- to allow specifying a user defined constant string class,
- different from NXConstantString.
-
- * toplev.c: Moved the Objective-C specific options to
- objc/lang-options.h.
-
- * objc/lang-options.h: Moved the Objective-C specific options from
- toplev.c. Added -fconstant-string-class.
-
-2000-08-05 Chris Demetriou <cgd@sibyte.com>
-
- * mips/elf.h (CTOR_LIST_BEGIN, CTOR_LIST_END,
- DTOR_LIST_BEGIN, DTOR_LIST_END): change type of
- __CTOR_LIST__ from func_ptr array to just func_ptr, to
- avoid extra alignment imposed on arrays.
- * mips/elf64.h (CTOR_LIST_BEGIN, CTOR_LIST_END,
- DTOR_LIST_BEGIN, DTOR_LIST_END): Likewise.
-
- * mips.h: Clean up comments and spacing near MASKs.
- (TARGET_UNIX_ASM): Delete.
- (MASK_MIPS16, MASK_NO_CHECK_ZERO_DIV, MASK_CHECK_RANGE_DIV,
- MASK_UNINIT_CONST_IN_RODATA): Change values to make mask
- values contiguous.
-
-2000-08-05 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (print_char_table): Add entries for the X/Open '
- format flag (print decimals with locale's thousands grouping
- character). Make %C expect wint_t.
- (check_format_info): If pedantic, warn when the %n$ operand
- number form is used. Allow for the ' flag; warn about it if
- pedantic.
-
-2000-08-05 Zack Weinberg <zack@wolery.cumb.org>
-
- * i386.h (FUNCTION_OK_FOR_SIBCALL): Not OK if DECL's return
- type is a float mode, cfun->decl's return type is not, and
- TARGET_FLOAT_RETURNS_IN_80387.
-
-2000-08-04 Andreas Schwab <schwab@suse.de>
-
- * cppmain.c (cb_def_pragma): Skip the first two tokens from the
- token list, which are always `#' and `pragma'.
-
-2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
-
- * tree.c (tree_expr_nonnegative_p): Move to...
- * fold-const.c: ... here. Also handle BIND_EXPR and RTL_EXPR.
- (rtl_expr_nonnegative_p): New.
- * tree.h: Add prototype for rtl_expr_nonnegative_p.
-
- * real.h (CONST_DOUBLE_LOW, CONST_DOUBLE_HIGH, CONST_DOUBLE_MEM,
- CONST_DOUBLE_CHAIN: Move to...
- * rtl.h: ...here. Use XCINT/XCEXP.
-
- * Makefile.in: Remove toplev.o from OBJS. Add rule to make
- libbackend.a; add libbackend.a to STAGESTUFF. Add BACKEND
- variable. Use BACKEND when linking cc1, not OBJS. Add BACKEND
- to VOL_FILES.
-
- * objc/Make-lang.in (cc1obj): Link with $(BACKEND).
-
-2000-08-05 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * config/c4x/c4x.md (return_indirect_internal): New.
- * config/c4x/c4x.c (c4x_expand_epilogue): Use it.
-
-2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (time_char_table): Mark up formats added in C99 and
- make other corrections. %D and %g were added in C99. %Og is an
- extension. %EX is permitted. %R, %T, %n, %r, %t were added in
- C99. %e was added in C99. %Oj is an extension. %G and %z are in
- C99 rather than GNU extensions, but %OG and %Oz are extensions.
- %h was added in C99. %C was added in C99. %OY and %OC are
- extensions. Add the C99 format %F.
- (check_format_info): If pedantic and not in C99 mode, warn for C99
- formats, %E and %O.
-
-Fri Aug 4 23:01:58 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * function.c (schedule_fixup_var_refs): New function, broken out
- of put_reg_into_stack.
- (put_reg_into_stack): Use it.
- (put_var_into_stack): In CONCAT case, fixup up references for
- components only after fixing up references to the whole concat.
-
-2000-08-04 Rodney Brown <RodneyBrown@pmsc.com>
-
- * alias.c (mark_constant_function): Use INSN_P.
- (init_alias_analysis): Likewise.
- * combine.c (combine_instructions): Use INSN_P.
- (can_combine_p): Likewise.
- (try_combine): Likewise.
- (distribute_notes): Likewise.
- (distribute_links): Likewise.
- * cse.c (cse_around_loop): Use INSN_P.
- (invalidate_skipped_block): Likewise.
- (cse_set_around_loop): Likewise.
- (cse_end_of_basic_block): Likewise.
- (delete_trivially_dead_insns): Likewise.
- * emit-rtl.c (unshare_all_rtl_again): Use INSN_P.
- (unshare_all_rtl_1): Likewise.
- (next_cc0_user): Likewise.
- (try_split make_insn_raw): Likewise.
- (remove_unnecessary_notes): Likewise.
- * final.c (shorten_branches): Use INSN_P.
- (leaf_renumber_regs): Likewise.
- (leaf_renumber_regs_insn): Likewise.
- * flow.c (find_label_refs): Use INSN_P.
- (verify_wide_reg): Likewise.
- (notice_stack_pointer_modification): Likewise.
- (count_or_remove_death_notes): Likewise.
- (verify_flow_info): Likewise.
- (clear_log_links): Likewise.
- * function.c (fixup_var_refs_insns): Use INSN_P.
- (compute_insns_for_mem): Likewise.
- * gcse.c (alloc_gcse_mem): Use INSN_P.
- (compute_sets): Likewise.
- (compute_hash_table): Likewise.
- (classic_gcse): Likewise.
- (cprop): Likewise.
- (insert_insn_end_bb): Likewise.
- (delete_null_pointer_checks_1): Likewise.
- * global.c (expand_preferences): Use INSN_P.
- (build_insn_chain): Likewise.
- * graph.c (node_data): Use INSN_P.
- * haifa-sched.c (priority): Use INSN_P.
- (rm_line_notes): Likewise.
- (rm_other_notes): Likewise.
- (find_insn_reg_weight): Likewise.
- (init_target_units): Likewise.
- (schedule_block): Likewise.
- (compute_block_forward_dependences): Likewise.
- (debug_dependencies): Likewise.
- (set_priorities): Likewise.
- * integrate.c (function_cannot_inline_p): Use INSN_P.
- (save_parm_insns): Likewise.
- (copy_insn_list): Likewise.
- * jump.c (mark_all_labels): Use INSN_P.
- (never_reached_warning): Likewise.
- * lcm.c (optimize_mode_switching): Use INSN_P.
- * local-alloc.c (validate_equiv_mem): Use INSN_P.
- (memref_used_between_p): Likewise.
- (update_equiv_regs): Likewise.
- (block_alloc): Likewise.
- (no_conflict_p): Likewise.
- * loop.c (scan_loop): Use INSN_P.
- (find_and_verify_loops): Likewise.
- (count_loop_regs_set): Likewise.
- (loop_reg_used_before_p): Likewise.
- (strength_reduce): Likewise.
- (recombine_givs): Likewise.
- (check_dbra_loop): Likewise.
- (load_mems): Likewise.
- (try_copy_prop): Likewise.
- * print-rtl.c (print_rtx): Use INSN_P.
- * recog.c (find_single_use): Use INSN_P.
- * reg-stack.c (stack_regs_mentioned): Use INSN_P.
- (next_flags_user): Likewise.
- (swap_rtx_condition): Likewise.
- * regmove.c (mark_flags_life_zones): Use INSN_P.
- (optimize_reg_copy_1): Likewise.
- (optimize_reg_copy_2): Likewise.
- (optimize_reg_copy_3): Likewise.
- (reg_is_remote_constant_p): Likewise.
- (fixup_match_2): Likewise.
- (regmove_optimize): Likewise.
- (fixup_match_1): Likewise.
- * regrename.c (build_def_use): Use INSN_P.
- (replace_reg_in_block): Likewise.
- (consider_use): Likewise.
- * reload.c (find_equiv_reg): Use INSN_P.
- * reload1.c (reload): Use INSN_P.
- (maybe_fix_stack_asms): Likewise.
- (calculate_needs_all_insns): Likewise.
- (reload_as_needed): Likewise.
- (emit_output_reload_insns): Likewise.
- (delete_address_reloads_1): Likewise.
- (reload_cse_regs_1): Likewise.
- (reload_combine): Likewise.
- (reload_cse_move2add): Likewise.
- * reorg.c (redundant_insn): Use INSN_P.
- (dbr_schedule): Likewise.
- * resource.c (find_dead_or_set_registers): Use INSN_P.
- (mark_target_live_regs): Likewise.
- * rtlanal.c (reg_used_between_p): Use INSN_P.
- (reg_referenced_between_p): Likewise.
- (reg_set_between_p): Likewise.
- (reg_set_p): Likewise.
- (single_set): Likewise.
- (multiple_sets): Likewise.
- (find_last_value): Likewise.
- (reg_set_last): Likewise.
- (find_reg_note): Likewise.
- (find_regno_note): Likewise.
- * sibcall.c (sequence_uses_addressof): Use INSN_P.
- * simplify-rtx.c (cselib_process_insn): Use INSN_P.
- * ssa.c (find_evaluations): Use INSN_P.
- (rename_block): Likewise.
- (rename_equivalent_regs): Likewise.
- * unroll.c (loop_find_equiv_value): Use INSN_P.
- (set_dominates_use): Likewise.
- * varasm.c (mark_constant_pool): Use INSN_P.
- (mark_constants): Likewise.
- * config/alpha/alpha.c (alpha_does_function_need_gp): Use INSN_P.
- (alphaev4_next_group): Likewise.
- (alphaev5_next_group): Likewise.
- * config/c4x/c4x.c (c4x_process_after_reload): Use INSN_P.
- (c4x_rptb_rpts_p): Likewise.
- * config/mips/mips.c (mips16_optimize_gp): Use INSN_P.
- * config/rs6000/rs6000.c (uses_TOC): Use INSN_P.
- (rs6000_adjust_priority): Likewise.
- * config/sh/sh.c (sh_loop_align): Use INSN_P.
- (machine_dependent_reorg): Likewise.
- (split_branches): Likewise.
- * config/tahoe/tahoe.c (tahoe_cmp_check): Use INSN_P.
-
-Fri Aug 4 11:43:49 2000 John Wehle (john@feith.com)
-
- * combine.c (recog_for_combine): Remove the old notes
- prior to attempting to recognize the new pattern.
- (distribute_notes): Ignore REG_NONNEG notes.
-
-2000-08-04 Chandrakala Chavva <cchavva@redhat.com>
-
- * varasm.c (output_constructor): Add .align 0 for packed vars.
-
-2000-08-04 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * configure.in: Use default thread_file even when enable_threads is
- yes or dce because hpux10.20 pa port uses MULTILIB implementation.
- * configure: Rebuilt.
-
- * gthr-dce.h (__gthread_objc_condition_allocate): Fix typo.
-
-2000-08-04 Donn Terry (donnte@microsoft.com)
-
- * prefix.c (translate_name): Don't strip trailing DIR_SEPARATOR.
-
-2000-08-04 Mark Elbrecht <snowball3@bigfoot.com>
-
- * i386/x-djgpp: Delete code that conditionally modifies target_alias.
- Delete code that conditionally modifies 'version'.
- Delete X_CPPFLAGS. Add comment for SYSTEM_HEADER_DIR.
- * i386/xm-djgpp.h (GCC_DRIVER_HOST_INITIALIZATION): New macro.
- * gcc.c (main): Use it.
- * config/i386/xm-djgpp.h (UPDATE_PATH_HOST_CANONICALIZE): New macro.
- * prefix.c (update_path): Use it.
- * i386/djgpp.h (STANDARD_INCLUDE_DIR): Define.
- (MD_EXEC_PREFIX): Set to '/dev/env/DJDIR/bin/'.
- (ASM_OUTPUT_SECTION_NAME): Add code attribute to sections containing
- code.
- (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Default to true.
- (SUBTARGET_SWITCHES): Adjust.
- (WCHAR_UNSIGNED, WCHAR_TYPE_SIZE, WCHAR_TYPE): Undefine before
- defining.
- (WINT_TYPE, SIZE_TYPE, PTRDIFF_TYPE): Define.
-
-2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.h (flag_isoc94): Declare.
- * c-decl.c (flag_isoc94): Define.
- (c_decode_option): Set flag_isoc94 as appropriate.
- * c-common.c (T_PD, T_IM, T_UIM): Define.
- (format_char_info): Add tlen and jlen.
- (print_char_table): Add entries for %t and %j. Allow %zn. Allow
- %F. Allow %lf.
- (scan_char_table): Add entries for %t and %j. Allow %F. Allow
- %l[.
- (time_char_table): Add NULL entries for %t and %j.
- (check_format_info): Allow for %t and %j. Warn for %F if pedantic
- and not C99. Warn for %lc, %ls and %l[ if pedantic and not C94.
- Warn for printf %lf if pedantic and not C99. Don't warn for empty
- precision. Allow precision argument to be unsigned int. If
- pedantic, warn for %p passed an argument not a pointer to possibly
- qualified void or a possibly qualified character type, and for
- pointer targets of the wrong sign, except for character pointers.
-
-2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * ginclude/stddef.h: Don't declare wint_t unless __need_wint_t.
- * c-common.h (enum c_tree_index): Add CTI_WINT_TYPE.
- (wint_type_node): Define.
- * c-decl.c (WINT_TYPE): Define.
- (init_decl_processing): Create the wint_type_node type.
- * c-common.c (T_WI): Define.
- (print_char_table): Use T_WI for %lc format.
-
-2000-08-04 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/: Verified that the MSDOS patch does not break
- the UNIX functionality and applied the next three patches
- from July:
-
-2000-07-28 Eli Zaretskii <eliz@is.elta.co.il>
-
- * fixinc/fixfixes.c (main) [__MSDOS__]: Avoid overwriting the
- output file with the temporary one by appending ".X" to generate
- the temporary fuile's name. If the output file already has an
- extension, replace it with ".X".
-
- * fixinc/fixincl.c (fix_with_system) [__MSDOS__]: Use $ORIGDIR,
- not $DESTDIR, to find applyfix. Use sprintf instead of snprintf;
- reallocate the command buffer while copying the command-line
- argument. Redirect the output directly to the temporary file,
- instead of going through another temporary file.
- (process): Close the temporary file before unlinking it.
- (machine_matches) [__MSDOS__]: If the machine doesn't match, set
- the FD_SKIP_TEST flag. Pay attention to the FD_MACH_IFNOT flag.
- (run_compiles): Pass p_fixd argument to machine_matches, as it
- expects.
-
- * fixinc/fixincl.sh: Export ORIGDIR. If $DJDIR is set in the
- environment, assume there are no symlinks in the include
- directory. When cleaning up the DONE files, look for them
- case-insensitively. Don't try to remove symlinks if they aren't
- there.
-
- * fixinc/fixlib.c (make_raw_shell_str): Accept new argument smax;
- all callers changed. Declare pz "const char *", to avoid compiler
- warnings.
-
- * fixinc/fixlib.h (ENV_TABLE): Get ORIGDIR from the environment.
- Change prototype of make_raw_shell_str.
-
-2000-07-27 Eli Zaretskii <eliz@is.elta.co.il>
-
- * fixinc/fixincl.c [__MSDOS__]: Don't include "server.h".
- (initialize) [__MSDOS__]: Use tempnam.
- (initialize): Don't use SIGPIPE if it is not defined.
-
- * fixinc/fixfixes.c (main) [__MSDOS__]: freopen for stdout should
- return stdout.
-
-2000-07-25 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fix*.[ch]: substantially reworked to make it possible
- to run this program without using fork(2) or pipe(2) (i.e. in
- a DOS environment).
-
-2000-08-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * cppdefault.h (WINT_TYPE): Define.
- * cppinit.c (builtin_array): Define __WINT_TYPE__.
- * tradcpp.c (initialize_builtins): Define __WINT_TYPE__.
- * tm.texi (NO_BUILTIN_WINT_TYPE, WINT_TYPE): Document.
-
-Fri Aug 4 06:53:46 2000 Clinton Popetz <cpopetz@cygnus.com>
-
- * (mips_legitimate_address_p): Don't allow register+offset
- if the offset is large and negative, and we are compiling
- for 64 bit registers.
-
-2000-08-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * gencodes.c (main): Define CODE_FOR_nothing as the last possible
- insn_code_number + 1.
-
-2000-08-04 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c (function_prologue): Rearrange code for conciseness.
- (function_epilogue): Likewise.
- * h8300.h (OK_FOR_U): Fix formatting.
-
- * cse.c: Fix a comment typo. Fix formatting.
-
-2000-08-03 Richard Henderson <rth@cygnus.com>
-
- * config/i386/i386.md (return_indirect_internal): New.
- * config/i386/i386.c (ix86_expand_epilogue): Use it.
-
-2000-08-03 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplex.c (parse_name): Might have to glue a CPP_OTHER token
- before the name.
- (lex_line): Glue @ onto the beginning of identifiers and
- string constants, in Objective-C mode.
- (output_token, spell_token): Handle CPP_OSTRING.
- (can_paste, maybe_paste_with_next): Handle pasting @ onto the
- beginning of a NAME or a STRING, in objc mode.
-
- * cpplib.c (get_define_node): Do not permit identifiers that
- begin with @ to be #defined.
- * cppmacro.c (CAN_PASTE_AFTER): Add CPP_OTHER.
- * cpplib.h (TTYPE_TABLE): Add CPP_OSTRING.
-
- * c-lang.c, objc/objc-act.c (build_objc_string): Delete.
- * c-tree.h (build_objc_string): Delete prototype.
- * objc/objc-tree.def: Delete OBJC_STRING_CST.
- * c-lex.c (yylex): Use build_string for all three kinds of strings.
-
- * c-parse.in, objc/objc-act.c: Update commentary.
-
-2000-08-03 Mark Mitchell <mark@codesourcery.com>
-
- * extend.texi: Fix typo in last change.
-
- * extend.texi: Add commentary on statement-expressions and their
- interactions with C++.
-
-2000-08-03 Nick Clifton <nickc@cygnus.com>
-
- * dwarf2.h (DW_LANG_Java): Change value to 0x000b.
- * dwarf.h (LANG_JAVA): Change value to 0x000b.
-
-2000-08-03 Anthony Green <green@cygnus.com>
-
- * dwarf2out.c (gen_compile_unit_die): Add java language support.
- (add_bound_info): Check for java language.
- (is_java): New function.
- * dwarfout.c (output_compile_unit_die): Ditto.
- * dwarf.h (dwarf_source_language): Add java source language type.
- * dwarf2.h (dwarf_source_language): Ditto.
-
-Thu Aug 3 20:32:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * reg-stack.c (subst_stack_regs_pat): Use replace_reg to swap
- operands.
-
- * i386.c (ix86_expand_branch): Mode of comparison in
- IF_THEN_ELSE is VOIDmode.
-
-Thu Aug 3 10:05:53 2000 Akiko Matsushita <matusita@sra.co.jp>
-
- * gengenrtl.c, rtl.c: Avoid #elif.
-
-2000-08-03 Michael Poole <poole@troilus.org>
-
- * tm.texi (Register Classes): Clarify order of sub-initializers
- in REG_CLASS_CONTENTS.
-
-Thu Aug 3 15:53:03 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- From SAITOH Masanobu:
- * sh.h (ASM_OUTPUT_REG_PUSH): Fix syntax.
-
-2000-08-03 David Billinghurst <David.Billinghurst@riotinto.com.au>
-
- * config/i386/cygwin.h: Remove -remap from CPP_SPEC since this option
- is not supported by tradcpp and isn't actually needed for cygwin.
-
-2000-08-03 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c: Fix a comment typo.
- * h8300.h (OK_FOR_U): Accept a 32-bit constant address on H8S.
-
- * jump.c: Fix formatting.
-
- * toplev.c: Fix formatting.
-
-Thu Aug 3 01:05:32 2000 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (find_auto_inc): Verify that we've got a REG before
- peeking at its regno. Fail, don't abort if we can't find
- the increment of the desired register.
-
- * pa.md (shadd height reduction patterns/splitters): Remove.
-
-2000-08-02 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64-protos.h (flag_ssa): Declare.
- * config/ia64/ia64.md (movti_internal, movti_internal+1): New.
-
-2000-08-02 Mark Mitchell <mark@codesourcery.com>
-
- * dce.c: Remove all uses of assert.
- * dwarf2out.c: Likewise.
- * dwarfout.c: Likewise.
- * ssa.c: Likewise.
-
-2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
-
- * gcc.h (lang_specific_driver): Constify second argument.
- * gcc.c (translate_options, process_command, main): Likewise.
- Constify variables to match. Cast second argument to
- pexecute.
-
- * cppspec.c, gccspec.c: Adjust type of second argument to
- lang_specific_driver, and update code as necessary.
-
-2000-08-02 Jakub Jelinek <jakub@redhat.com>
-
- * loop.c (scan_loop): Ensure update_end label does not
- go away until reg_scan_update is run.
-
-2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
-
- * c-common.h: Prototype min_precision and c_build_qualified_type here...
- * c-tree.h: ... not here.
- * errors.h: Prototype fancy_abort.
-
- * emit-rtl.c (gen_lowpart_common): Move variable 'c' into
- HOST_BITS_PER_WIDE_INT == 64 ifdef block.
- * regrename.c (regrename_optimize): Make control flow explicit.
- (replace_reg_in_block): Initialize reg_use to 0.
-
- * i386.c (legitimate_address_p): Rename error label to
- report_error to avoid namespace clash.
-
-2000-08-02 Kazu Hirata <kazu@hxi.com>
-
- * fold-const.c: Fix formatting.
-
-Wed Aug 2 16:26:15 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.c (legitimate_address_p): Accept other bases than
- pic_offset_table_rtx for GOTOFF constructs.
-
-Wed Aug 2 15:59:34 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.md (shift to lea splitter): Use const_int_operand.
-
-2000-08-02 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppexp.c, cppinit.c, cpplex.c, cpplib.c, cppmacro.c,
- cppspec.c: Do not use 'legal' or 'illegal' in error messages
- and comments.
-
- * cppmain.c (cb_define, cb_undef): Don't generate any output
- if not done_initializing.
- * cpplex.c (maybe_paste_with_next): When the token after a ##
- is an omitted rest argument, only delete the token before it
- if that token is a comma. Do not warn about bogus token
- pastes for , ## rest_arg.
-
- * cpp.texi: Update.
- * cpp.1: Regenerate.
-
-2000-08-02 Fred Fish <fnf@be.com>
-
- * config/i386/beos-elf.h (STARTFILE_SPEC): Add i386-mcount.o
- when user gives -p option. Add init_term_dyn.o for BeOS 5.0
- and later.
-
- * config/i386/beos-elf.h (INCLUDE_DEFAULTS): Add additional
- Be directories to search path.
-
- Remove support for __declspec(dllimport) and __declspec(dllexport).
- This is leftover cruft from the earlier BeOS gcc port when BeOS
- used Microsoft's PE object file format.
- * configure.in (i*86-*-beoself): Remove extra_objs=winnt.o.
- * config/i386/t-beos (winnt.o): Remove Makefile frag.
- * config/i386/beos-elf.h (TARGET_NOP_FUN_DLLIMPORT): Remove.
- (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- (MERGE_MACHINE_DECL_ATTRIBUTES): Remove.
- (REDO_SECTION_INFO_P): Remove.
- (ASM_EXPORT_DECL): Remove.
- (ASM_DECLARE_FUNCTION_NAME): Remove.
- (ASM_DECLARE_OBJECT_NAME): Remove.
- (ASM_OUTPUT_ALIGNED_COMMON): Remove.
- (ASM_OUTPUT_ALIGNED_DECL_COMMON): Remove.
- (ASM_OUTPUT_ALIGNED_LOCAL): Remove.
- (STRIP_NAME_ENCODING): Remove.
-
- Remove support for obsolete version of BeOS that is no longer
- supported by Be.
- * configure.in (i*86-*-beospe*): Remove.
- * config/i386/beos-pe.h: Remove.
-
-2000-08-01 Jeffrey Oldham <oldham@codesourcery.com>
- Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (OBJS): Added dce.o.
- (ssa.o): Updated target to include ssa.h.
- (flow.o): Likewise.
- (toplev.o): Likewise.
- (dce.o): Created target.
- * basic-block.h: Added comments.
- (INVALID_BLOCK): Added definition.
- (connect_infinite_loops_to_exit): Added declaration.
- Moved SSA declarations to ssa.h.
- * flow.c: Added inclusion of ssa.h.
- (struct depth_first_search_dsS, depth_first_search_ds):
- Added definitions.
- (compute_immediate_postdominators): Added definition.
- (connect_infinite_loops_to_exit): Likewise.
- (flow_dfs_compute_reverse_init): Likewise.
- (flow_dfs_compute_reverse_add_bb): Likewise.
- (flow_dfs_compute_reverse_execute): Likewise.
- (flow_dfs_compute_reverse_finish): Likewise.
- * rtl.h (rtx/in_struct): Added use to determine insn necessity.
- (LABEL_P): Added definition.
- (JUMP_P): Likewise.
- (NOTE_P): Likewise.
- (BARRIER_P): Likewise.
- (JUMP_TABLE_DATA_P): Likewise.
- (INSN_DEAD_CODE_P): Likewise.
- * ssa.c: Replaced inclusions with ssa.h inclusion.
- (CONVERT_HARD_REGISTER_TO_SSA_P): Moved to ssa.h.
- (rename_registers): Removed unnecessary variables.
- * ssa.h: Created by moving declarations from ssa.c and
- basic-block.h.
- * timevar.def: Defined TV_DEAD_CODE_ELIM.
- * toplev.c: Added ssa.h inclusion.
- (dump_file_index): Added DFI_dce.
- (dump_file): Added "dce" entry.
- Defined flag_ssa.
- (f_options): Added dce entry.
- * invoke.texi: Document -fdce. Emphasize experimental status of
- -fssa.
- * dce.c: New file.
-
-2000-08-01 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpperror.c (v_message): Split into _cpp_begin_message and
- v_message macro. All callers updated.
- (_cpp_begin_message): Do inhibit_errors/inhibit_warnings
- checks here.
-
- * cppfiles.c (cpp_syshdr_flags): New function.
- (read_include_file): Don't call cpp_output_tokens. Call
- enter_file hook.
- * cppinit.c (dump_macros_helper): Moved to cppmain.c.
- (cpp_reader_init): Don't initialize token_buffer. Call
- _cpp_init_internal_pragmas.
- (cpp_cleanup): Don't clear token_buffer.
- (cpp_start_read): Don't worry about output from -D processing.
- Don't call cpp_output_tokens.
- (cpp_finish): Don't dump macros here. Don't call
- cpp_output_tokens.
- * cppmacro.c (_cpp_dump_definition): Rename
- cpp_dump_definition. Write directly to a FILE *.
- (dump_funlike_macro): Delete.
- (dump_macro_args): New.
-
- * cpplex.c (TOKEN_LEN): Convert to inline function.
- (_cpp_grow_token_buffer, safe_fwrite, cpp_output_tokens,
- cpp_scan_line, _cpp_dump_list): Delete.
- (cpp_printf, cpp_output_list): New.
- (output_line_command): Don't worry about entering or leaving files.
- (cpp_scan_buffer): Just output each token as we hit it.
- (process_directive): Don't call cpp_output_tokens.
- (_cpp_glue_header_name): Don't use token_buffer.
- (output_token, dump_param_spelling): Write directly to a FILE *.
-
- * cpplib.c (pass_thru_directive, dump_macro_name,
- pragma_dispatch, do_pragma_gcc): Delete.
- (do_define, do_undef, parse_include, do_line, do_ident, do_pragma,
- do_pragma_poison, cpp_pop_buffer): Call the appropriate hook
- functions.
- (do_error, do_warning, pragma_dependency): Call
- _cpp_begin_message, then cpp_output_list.
- (cpp_register_pragma, cpp_register_pragma_space,
- _cpp_init_internal_pragmas): New.
- (do_pragma): Walk the pragmas table here.
- (do_pragma_once, do_pragma_poison, do_pragma_system_header,
- do_pragma_dependency): Return void.
- (do_pragma_implementation): Moved to cppmain.c.
-
- * cpplib.h: Update prototypes.
- (struct cpp_reader): Remove printer, token_buffer,
- token_buffer_size, and limit. Add struct cb, and pragmas.
- (struct cpp_printer): Remove last_id and written.
- (CPP_WRITTEN, CPP_PWRITTEN, CPP_SET_WRITTEN,
- CPP_ADJUST_WRITTEN): Delete.
- * cpphash.h: Update prototypes.
- (ufputs): New wrapper.
-
- * cppmain.c (cb_define, cb_undef, cb_include, cb_ident,
- cb_enter_file, cb_leave_file, cb_def_pragma): New functions.
- (main): Set up callbacks. Register #pragma implementation.
- Dump macros from here.
-
-2000-08-01 Geoff Keating <geoffk@cygnus.com>
-
- * rtl.h (enum reg_note): Add REG_MAYBE_DEAD.
- * rtl.c (reg_note_name): Add REG_MAYBE_DEAD.
- * flow.c (propagate_one_insn): Allow deletion of prologue/epilogue
- insns if they have a REG_MAYBE_DEAD note attached.
- * config/rs6000/rs6000.c (rs6000_maybe_dead): New function.
- (rs6000_emit_load_toc_table): TOC loads may go dead.
-
-2000-08-01 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.c (ia64_function_arg): Fix last change. Verify
- type exists before using it. Use number of words as alignment
- otherwise.
- (ia64_function_arg_partial_nregs, ia64_function_arg_advance,
- ia64_va_arg): Propagate ia64_function_args changes here.
-
-2000-08-01 Richard Henderson <rth@cygnus.com>
-
- * config/elfos.h (ASM_DECLARE_OBJECT_NAME): Care for null DECL.
- * config/ia64/sysv4.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise.
-
-2000-08-01 Bernd Schmidt <bernds@cygnus.co.uk>
-
- From Joern Rennecke:
- * sh.h (CPP_SPEC, TARGET_SWITCHES): Add m4-nofpu.
- * sh.md (udivsi3, divsi3): Don't use libcalls that use the FPU
- unless TARGET_SH3E is set.
- * t-sh (MULTILIB_MATCHES): Add m2=m4-nofpu.
-
- * sh.md (ashlsi3_d, ashlsi3_k): Remove, replace with
- (ashlsi3_std): New pattern.
- (ashlsi3 expander): Use it for TARGET_SH3.
- * sh.c (gen_ashift): Use it instead of ashlsi3_k.
-
-Tue Aug 1 12:34:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * loop.c (canonicalize_condition): Use destination, not source to
- determine SET's mode.
-
-2000-07-31 Mark Mitchell <mark@codesourcery.com>
-
- * flow.c (clear_log_links): Fix typo.
-
-Mon Jul 31 22:19:24 2000 Jeffrey A Law (law@cygnus.com)
-
- * loop.c (check_dbra_loop): Make change from July 17, 2000 work
- on targets which need more than one insn for a compare/cbranch
- operation.
-
-2000-07-31 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.c (ia64_function_arg): Use alignment not size
- when computing offset.
-
-Mon Jul 31 20:35:50 2000 Denis Chertykov <denisc@overta.ru>
-
- * genpeep.c (main): Handle DEFINE_PEEPHOLE2.
-
-2000-07-31 Geoff Keating <geoffk@cygnus.com>
-
- * flow.c (clear_log_links): Nuke global_live_at_start and
- global_live_at_end data, since if the log_links stuff is invalid
- so is global_live_at_*.
-
-2000-07-31 Richard Henderson <rth@cygnus.com>
-
- * tm.texi (Addressing Modes): Clarify PRE/POST_MODIFY descriptions.
-
-2000-07-31 Jakub Jelinek <jakub@redhat.com>
-
- * cpplex.c (_cpp_get_line): If index is 0, return line 0 col 0.
- (_cpp_get_token): Don't macro expand a just pasted token if it
- was pasted at no_expand_level.
-
-2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppmacro.c (find_param, count_params, save_expansion):
- Permit 'defined' as a macro parameter name.
-
-2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
-
- * Makefile.in: Rename cpp to cpp0, tradcpp to tradcpp0, and
- xcpp to cpp throughout.
- (native): Remove unnecessary dependency on cpp.
-
- * gcc.c (trad_capable_cpp, C specs): Rename cpp to cpp,
- tradcpp to tradcpp0.
- (.i spec): Add missing output-file spec to cc1 command line.
- * objc/lang-specs.h: Rename cpp to cpp0 and/or tradcpp to tradcpp0.
-
-2000-07-31 Zack Weinberg <zack@wolery.cumb.org>
-
- * c-decl.c (mesg_implicit_function_declaration): Init to -1.
- (implicit_decl_warning): New function.
- (implicitly_declare): Use it.
- * c-typeck.c (build_external_ref): Use implicit_decl_warning
- to complain about implicit decls of builtins.
-
- * c-lang.c (lang_init): Set mesg_implicit_function_declaration
- based on pedantic && flag_isoc99, if not already set.
- * c-tree.h: Declare mesg_implicit_function_declaration.
- Prototype implicit_decl_warning.
-
-2000-07-30 Jeffrey D. Oldham <oldham@codesourcery.com>
-
- * Makefile.in (ssa.o): Updated header files in dependences.
- * basic-block.h: Added compute_immediate_postdominators declaration.
- * config/i386/i386.h (CONVERT_HARD_REGISTER_TO_SSA_P): Added
- definition.
- * flow.c (compute_immediate_dominators): Updated comment.
- (compute_immediate_postdominators): Added definition.
- * rtl.h (HARD_REGISTER_P): Added definition.
- * ssa.c: Include additional header files.
- (assert): Added definition.
- (ssa_rename_to_lookup): Added to reimplement ssa_rename_to to
- include select hard registers.
- (ssa_rename_to_insert): Likewise.
- (ssa_rename_from_initialize): Likewise.
- (ssa_rename_from_lookup): Likewise.
- (original_register): Likewise.
- (ssa_rename_from_insert): Added to reimplement ssa_rename_from to
- include select hard reigsters.
- (ssa_rename_from_traverse): Likewise.
- (ssa_rename_from_free): Likewise.
- (ssa_rename_from_print): Likewise.
- (ssa_rename_from_print_1): Likewise.
- (ssa_rename_from_hash_function): Likewise.
- (ssa_rename_from_equal): Likewise.
- (ssa_rename_from_delete): Likewise.
- (simplify_to_immediate_dominators): Removed in favor of
- flow.c:compute_immediate_dominators.
- (find_evaluations_1): Modified to work with hard registers.
- (insert_phi_node): Likewise.
- (insert_phi_nodes): Likewise.
- (struct rename_set_data): Updated prev_reg comment.
- (create_delayed_rename): Modified to work with hard registers.
- (RENAME_NO_RTX): Updated comment.
- (apply_delayed_renames): Modified to work with hard registers.
- (rename_insn_1): Likewise and added handling of CLOBBER rtls.
- (rename_block): Updated to use revised ssa_rename_to interface.
- (rename_registers): Updated to use revised ssa_rename_to and
- ssa_rename_from interface.
- (convert_to_ssa): Revised to use compute_immediate_dominators and
- deal with hard registers.
- (make_regs_equivalent_over_bad_edges): Modified to work with hard
- registers. Added check for illegal unification of hard register.
- (make_equivalent_phi_alternatives_equivalent): Modified to work
- with hard registers.
- (compute_conservative_reg_partition): Likewise.
- (coalesce_if_unconflicting): Modified to work with hard registers
- and check for conflicting hard registers.
- (mark_phi_and_copy_regs): Revised loop to work only on pseudo
- registers.
- (rename_equivalent_regs_in_insn): Modified to work with hard
- registers.
- (record_canonical_element_1): Added definition.
- (check_hard_regs_in_partition): Added definition.
- (convert_from_ssa): Added data structure deallocation and check
- for illegal hard register unification.
- (conflict_hard_regs_p): Added definition.
- * toplev.c (rest_of_compilation): Added comment.
-
-2000-07-31 Anthony Green <green@redhat.com>
-
- * config/ia64/crtbegin.asm (__EH_FRAME_BEGIN__): Align correctly.
-
-2000-07-31 Jason McMullan <jmcmullan@linuxcare.com>
-
- * builtins.c (expand_builtin_apply): Don't defer pop during
- argument setup.
-
-2000-07-31 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * calls.c (combine_pending_stack_adjustment_and_call): Only use
- preferred_unit_stack_boundary when it is > 1.
-
-2000-07-31 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (init_function_format_info): Add C99 format functions
- in C99 mode.
-
- * c-decl.c (get_parm_info): Don't treat 'const void', 'volatile
- void' or 'register void' as being the special case of 'void' alone
- in a parameter list.
-
- * c-typeck.c (build_c_cast): Change -Wcast-qual pedwarn for
- discarding qualifiers into a plain warning.
-
-2000-07-31 Kazu Hirata <kazu@hxi.com>
-
- * combine.c: Fix formatting.
-
- * h8300.md: Fix formatting.
-
- * local-alloc.c: Fix formatting.
-
- * h8300.c (get_shift_alg): Remove the variable alg.
- (emit_a_shift): Rearrange code to improve readability.
-
- * h8300.md (movsi_h8300hs): Rearrange code to improve readability.
-
- * h8300.h (MODES_TIEABLE_P): Accept a combination of QImode and
- HImode on all architectures and a combination of HImode and SImode
- on H8/300H and H8S.
-
- * h8300.c (split_adds_subs): Rearrange code for conciseness.
-
-Mon Jul 31 12:27:55 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.md (addsi to lea splitter, ashlqi3_1_lea): Fix bugs
- in my last checkin.
-
-Mon Jul 31 10:41:01 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * recog.c (extract_insn): Set operand_mode according to
- operand if match_operand is VOIDmode.
-
-Mon Jul 31 10:36:38 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * recog.c (validate_replace_rtx_1): Do not abort for (nil) expression.
-
-2000-07-31 Geoff Keating <geoffk@cygnus.com>
-
- * c-parse.in (extdefs): Call ggc_collect between external
- definitions.
-
-2000-07-30 Michael Hayes <mhayes@cygnus.com>
- Richard Henderson <rth@cygnus.com>
-
- * Makefile.in (OBJS): Add doloop.o.
- * doloop.c: New file.
-
- * final.c (insn_current_reference_address): Return 0 before final.
- * flags.h (flag_branch_on_count_reg): Fix typos in commentary.
- * jump.c (any_uncondjump_p): Likewise.
- * loop.c (indirect_jump_in_function): Make static.
- (strength_reduce): Call doloop_optimize.
- (insert_bct, instrument_loop_bct): Remove.
- * loop.h (doloop_optimize): Prototype.
- * recog.c (split_all_insns): Split all INSN_P.
- * toplev.c (flag_branch_on_count_reg): Default on.
-
- * config/c4x/c4x.c (c4x_optimization_options): Don't set
- flag_branch_on_count_reg.
- * config/i386/i386.c (override_options): Likewise.
- * config/rs6000/rs6000.c (optimization_options): Likewise.
-
- * config/i386/i386.md (decrement_and_branch_on_count): Remove.
- (doloop_end): New.
- (dbra_ge): Remove, as well as all it's splitters.
-
- * config/rs6000/rs6000.md (decrement_and_branch_on_count): Remove.
- (doloop_end): New.
-
- * config/ia64/ia64-protos.h (ar_lc_reg_operand): Declare.
- (ia64_register_move_cost): Declare.
- * config/ia64/ia64.c (ar_lc_reg_operand): New.
- (struct ia64_frame_info): Add ar_size.
- (ia64_compute_frame_size): Set it.
- (save_restore_insns): Save and restore ar.lc.
- (ia64_register_move_cost): New, moved from header file. Handle
- application registers.
- (REG_AR_PFS, REG_AR_EC): Remove. Replace with AR_*_REGNUM numbers.
- (emit_insn_group_barriers): Special case doloop_end_internal.
- (ia64_epilogue_uses): Mark ar.lc live at end.
- * config/ia64/ia64.h (AR_CCV_REGNUM, AR_LC_REGNUM): New registers.
- (AR_EC_REGNUM, AR_PFS_REGNUM): New registers.
- (FIRST_PSEUDO_REGISTER): Make room.
- (AR_M_REGNO_P, AR_I_REGNO_P, AR_REGNO_P): New.
- (FIXED_REGISTERS, CALL_USED_REGISTERS): Update.
- (REG_ALLOC_ORDER): Update.
- (HARD_REGNO_MODE_OK): Update.
- (REGISTER_NAMES): Update.
- (enum reg_class): Add AR_M_REGS and AR_I_REGS.
- (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update.
- (REGNO_REG_CLASS): Update.
- (LEGITIMATE_ADDRESS_DISP): Displacement range is 9 bits, not 10.
- (REGISTER_MOVE_COST): Move out of line.
- (PREDICATE_CODES): Update.
- * config/ia64/ia64.md (movdi patterns): Handle ar register classes.
- (addsi3_plus1_alt, adddi3_plus1_alt): New.
- (shladd_elim splitter): Allow constants in the predicate.
- (doloop_end, doloop_end_internal): New.
-
-2000-07-30 Richard Henderson <rth@cygnus.com>
-
- * genattrtab.c (struct insn_def): Add lineno member.
- (struct insn_ent): Likewise.
- (struct attr_desc): Likewise.
- (struct delay_desc): Likewise.
- (struct function_unit_op): Likewise.
- (struct function_unit): Likewise.
- (check_attr_value): Use message_with_line.
- (check_defs): Likewise.
- (expand_units): Likewise.
- (check_attr_test): Take a lineno argument.
- (gen_attr): Likewise.
- (gen_insn): Likewise.
- (gen_delay): Likewise.
- (gen_unit): Likewise.
- (main): Give it to them.
- (convert_set_attr_alternative): Take an insn_def argument
- instead of num_alt and insn_index.
- (convert_set_attr): Likewise.
- (write_test_expr): Protect INSN_ADDRESSES load
- with INSN_ADDRESSES_SET_P.
-
-2000-07-30 Richard Henderson <rth@cygnus.com>
-
- * flow.c (init_propagate_block_info): Use pc_set.
-
-Sun Jul 30 20:58:34 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.md (*lea_general_[123]) New insns and splits.
- (addsi3 to lea splitter): Handle other modes too.
- (shlsi3 to lea splitter): Likewise.
- (addhi_1_lea, shlhi_1_lea): New patterns.
- (addhi_1, shlhi_1): Conditionize by PARTIAL_REG_STALL.
-
-Sun Jul 30 20:51:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * recog.c (general_operand, nonimmediate_operand): Accept
- any mode for VOIDmode CONSTANT_P operands.
-
-Sun Jul 30 20:42:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (try_replace_reg): Use validate_replace_rtx_subexp
- instead of replace_rtx.
- * recog.c (validate_replace_rtx_subexp): New function.
- * recog.h (validate_replace_rtx_subexp): Declare.
-
-Sun Jul 30 20:38:26 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * combine.c (simplify_set, make_extraction, make_compound_operation
- make_field_assignment): Use full mask instead of GET_MODE_MASK (mode)
- as force_to_mode argument.
-
-Sun Jul 30 20:30:41 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * combine.c (if_then_else_cond): Be sure that mode fits in
- HOST_WIDE_INT.
-
-Sun Jul 30 20:27:36 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * combine.c (record_promoted_value): Allow bitsize of mode
- to be equivalent to HOST_BITS_PER_WISE_INT.
-
-Sun Jul 30 20:25:21 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * function.c (assign_stack_local_1, assign_stack_temp_for_type):
- Do not call gen_mode_alignment when mode is BLKmode.
-
-Sun Jul 30 20:21:54 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * loop.c (express_from_1): Fix call of simplify_gen_binary.
-
-Sun Jul 30 20:08:37 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_relational_operation): Verify that mode ==
- VOIDmode implies both operands to be VOIDmode.
- (simplify_ternary_operation): Compute properly the mode of comparison.
- * combine.c (combine_simplify_rtx): Likewise.
-
-2000-07-25 Michael Hayes <mph@paradise.net.nz>
-
- * basic-block.h (struct loops): New field rc_order.
- * flow.c (flow_loops_cfg_dump): Dump rc_order if computed.
- (flow_loops_free): Free rc_order.
- (flow_depth_first_order_compute): New parameter rc_order.
- (flow_loops_find): Allocate rc_order and swap usage with
- dfs_order.
-
-2000-07-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
- Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.md (set_ldp_prologue): Add for RTL prologue/epilogue.
- (push_st, push_dp, pop_st, pop_dp, popqi_unspec): Likewise.
- (nodb_call, return_from_epilogue): Likewise.
- (return_from_interrupt_epilogue, prologue, epilogue): Likewise.
- * config/c4x/c4x.c (c4x_expand_prologue, c4x_expand_eplilogue): Add.
- * config/c4x/c4x-protos.h (c4x_interrupt_function_p): Add.
- (c4x_expand_prologue, c4x_expand_epilogue): Likewise.
- (c4x_valid_type_attribute_p): Likewise.
- * config/c4x/c4x.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Delete.
- (FUNCTION_BLOCK_PROFILER_EXIT): Convert to emit RTL.
-
-2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_emit_move_sequence): Use loadqi_big_constant
- and loadhi_big_constant if applicable.
- * config/c4x/c4x.md (loadqi_big_constant, loadhi_big_constant): Tweak
- and add new splitter.s
-
-2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_rptb_insert): Make more robust.
-
-2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (ASM_FORMAT_PRIVATE_NAME): Output $ in label.
-
-2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.h (IS_XXX_REGNO): Rewrite to avoid unsigned warnings.
-
-2000-07-30 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/libgcc.S (divqf3): Improve accuracy.
-
-2000-07-27 Mark Mitchell <mark@codesourcery.com>
-
- Put phi nodes after NOTE_INSN_BASIC_BLOCK.
- * rtl.h (NOTE_INSN_BASIC_BLOCK_P): New macro.
- * bb-reorder.c (get_next_bb_note): Use NOTE_INSN_BASIC_BLOCK_P.
- (get_prev_bb_note): Likewise.
- (remove_scope_notes): Likewise.
- * flow.c (commit_one_edge_insertion): Likewise.
- (merge_blocks_nomove): Likewise.
- (verify_flow_info): Likewise.
- * gcse.c (insert_insn_end_bb): Likewise.
- * reg-stack.c (emit_swap_insn): Likewise.
- * ssa.c (first_insn_after_basic_block_note): New function.
- (insert_phi_node): Use it.
- (rename_block): Likewise.
- (eliminate_phi): Likewise.
- (make_regs_equivalent_over_bad_edges): Likewise.
- (make_equivalent_phi_alternatives_equivalent): Likewise.
- (for_each_successor_phi): Likewise.
- (convert_from_ssa): Modify phi-node deletion algorithm.
-
-2000-07-29 Andreas Jaeger <aj@suse.de>
-
- * configure.in (mips*-*-linux*): Use mips*el to check for little
- endian MIPS, add tmake_file.
-
- * config/mips/linux.h (TARGET_VERSION): Use GNU/Linux.
- (SUBTARGET_CPP_SPEC): Default MIPS_ISA is 1.
- Patches by Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
-
-2000-07-28 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (ia64_print_operand): Fix typos.
- Sign extend mode size before negating.
-
-2000-07-28 Richard Henderson <rth@cygnus.com>
-
- * emit-rtl.c (gen_lowpart_common): Add missing 'c' variable.
-
-2000-07-28 Bernd Schmidt <bernds@cygnus.co.uk>
-
- * cse.c (canon_hash): Handle PRE_MODIFY/POST_MODIFY.
- (cse_insn): Likewise.
- (addr_affects_sp_p): Likewise.
- * expr.c (move_by_pieces): Likewise.
- (clear_by_pieces): Likewise.
- * gcse.c (oprs_unchanged_p): Likewise.
- * haifa-sched.c (sched_analyze_2): Likewise.
- * recog.c (offsettable_address_p): Likewise.
- * regclass.c (record_address_regs): Likewise.
- * reload.c (find_reusable_reload): Likewise.
- (push_reload): Likewise.
- (operands_match_p): Likewise.
- (decompose): Likewise.
- (find_reloads_address_1): Likewise.
- (find_inc_amount): Likewise.
- * reload1.c (elimination_effects): Likewise.
- * resource.c (mark_set_resources): Likewise.
- * flow.c (attempt_auto_inc): New function; mostly broken out
- of find_auto_inc.
- (find_auto_inc): Split into two functions and enhanced to
- generate POST_MODIFY.
- * rtl.def (PRE_MODIFY, POST_MODIFY): Adjust comment.
- * rtl.h (count_all_occurrences): Declare.
- (HAVE_{PRE,POST}_MODIFY_{DISP,REG}): Provide default of 0 if not
- defined.
- * rtlanal.c (count_all_occurrences): New function.
- * tm.texi (HAVE_POST_MODIFY_DISP, HAVE_PRE_MODIFY_DISP,
- HAVE_POST_MODIFY_REG, HAVE_PRE_MODIFY_REG): Document.
-
- * config/ia64/ia64-protos.h (destination_operand): Declare.
- * config/ia64/ia64.c (destination_operand): New function.
- (ia64_print_operand): Handle POST_MODIFY.
- (rtx_needs_barrier): Likewise.
- * config/ia64/ia64.h (HAVE_POST_MODIFY_DISP): Define to 1.
- (HAVE_POST_MODIFY_REG): Define to 1.
- (MAX_REGS_PER_ADDRESS): Change to 2.
- (GO_IF_LEGITIMATE_ADDRESS): Accept POST_MODIFY too.
- (LEGITIMATE_ADDRESS_REG): New helper macro.
- (LEGITIMATE_ADDRESS_DISP): Likewise.
- (PREDICATE_CODES): Add entry for destination_operand.
- * config/ia64/ia64.md (all mov patterns): Use destination_operand
- predicate for operand 0.
-
-2000-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * dwarf2out.c: Indent #error directive.
-
- * gbl-ctors.h: Fix typo in comment.
- (__do_global_ctors): Prototype.
-
- * gcse.c (record_one_set, pre_delete): Remove unused variables.
-
- * rs6000.c (rs6000_maybe_dead): Delete unused prototype.
- (print_operand): Initialize variable `t'.
-
-2000-07-27 Aldy Hernandez <aldyh@redhat.com>
-
- * config/arm/arm.md ("call_value"): removed constraints.
- Constraints are ignored in expanders.
- (*call_value_reg): split =rf into various constraints.
- (*call_value_mem): same
- (*call_value_symbol): same
- (*sibcall_value_insn): same
-
-2000-07-28 Philipp Thomas <pthomas@suse.de>
-
- * install.texi (--enable-nls): Change the description of the NLS
- related configure options to match the current state.
- (--with-included-gettext): Likewise.
- (--enable-maintainer-mode): New description added.
- * extend.texi (-fstrict-prototype): Add missing '.'.
-
-2000-07-27 Jim Wilson <wilson@cygnus.com>
-
- * dwarf2out.c (gen_decl_die): Don't call gen_abstract_function if
- DECL_INITIAL (decl) == NULL_TREE.
-
-2000-07-27 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.in (INSN_ATTR_H): New macro. Replace all dependencies
- on insn-attr.h with it.
- * genattr.c: Generate `#include "insn-addr.h"' if HAVE_ATTR_length.
- * insn-addr.h: New header.
- (insn_addresses_): Renamed from insn_addresses.
- (INSN_ADDRESSES_DEFN, INSN_ADDRESSES, INSN_ADDRESSES_ALLOC,
- INSN_ADDRESSES_FREE, INSN_ADDRESSES_SET_P, INSN_ADDRESSES_SIZE,
- INSN_ADDRESSES_NEW): New macros.
- * genattrtab.c (write_test_expr): Use new macros.
- * final.c (insn_addresses, init_insn_lengths): Likewise.
- (align_fuzz, shorten_branches): Likewise.
- (final): Likewise. Do not reject new insns if their addresses
- have been added to INSN_ADDRESSES.
- * config/arm/arm.c, config/avr/avr.c: Use new macros.
- * config/h8300/h8300.c, config/i370/i370.c: Likewise.
- * config/m88k/m88k.c, config/pa/pa.c, config/pa/pa.md: Likewise.
- * config/sparc/sparc.c, config/sparc/sparc.md: Likewise.
- * config/sh/sh.c: Likewise.
- (output_branchy_insn): Use INSN_ADDRESSES_NEW.
-
- * Makefile.in (bootstrap): Move -BstageN/ back to the beginning.
-
-2000-07-27 Andrew Cagney <cagney@b1.cygnus.com>
-
- * gcc.c (struct prefix_list): Add member priority.
- (enum path_prefix_priority): Declare.
- (add_prefix): Replace ``first'' with ``priority''. Append new
- entry but keep list in priority order.
- (process_command): Update. Pass PREFIX_PRIORITY_B_OPT or
- PREFIX_PRIORITY_LAST to add_prefix.
- (process_command): Move include kludge - foo/stageN - to before
- foo/include.
-
-2000-07-27 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (gen_typedef_die): Abort if we get identical
- TREE_TYPE and DECL_ORIGINAL_TYPE on a typedef.
-
-2000-07-27 RodneyBrown <RodneyBrown@pmsc.com>
-
- * expr.h (get_alias_set, lang_get_alias_set): Delete prototypes.
- * tree.h (get_alias_set, lang_get_alias_set): Prototype.
-
-2000-07-27 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (finish_function): Don't treat 'main' specially unless
- flag_hosted. In C99 mode, return 0 from 'main' unless
- DEFAULT_MAIN_RETURN is otherwise defined.
-
- * c-decl.c (store_parm_decls): In C99 mode, pedwarn for function
- parameters defaulting to int in an old-style function definition.
-
-2000-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-parse.in (string): For -Wtraditional, warn about string
- concatenation only once per line.
-
-Thu Jul 27 09:25:17 2000 Akiko Matsushita <matusita@sra.co.jp>
-
- * pa/x-pa-hpux: Add -D_HIUX_SOURCE to FIXPROTO_DEFINES
- for HI-UX/WE2 systems.
-
-2000-07-24 Bruce Korb <bkorb@gnu.org>
-
- * fixincl/fixfixes.c(emit_gnu_type): rewrote to *rely* on GCC
- defining the __xxx_TYPE__ macros.
- * fixincl/fixincl.tpl(gnu_type_map): now obsolete
- * fixincl/fixlib.h: don't need to include "tm.h" anymore
- * fixincl/inclhack.def(type_map): now obsolete
-
-Thu Jul 27 11:54:17 2000 Andrew Cagney <cagney@b1.cygnus.com>
-
- * cpp.texi: Append a trailing full-stop to xrefs where needed.
-
-2000-07-26 Dave Pitts <dpitts@cozx.com>
-
- * i370.c: Remove LONGEXTERNAL ifdef from alias_number. Added hash
- routine constants.
- (mvs_hash_alias): New function.
- (mvs_add_alias): Change argument spacing.
- (mvs_need_alias): Change aliasing criteria. Added documentation.
- (mvs_get_alias): Change to use hashed name. The hashed name prevents
- CSECT name collisions.
- (mvs_check_alias): Likewise.
- (handle_pragma): Change documentation.
- * i370.md (mulsi3, divsi3, udivsi3, modsi3, umodsi3): Changed gen_rtx
- mode from SImode to DImode.
- (iorhi3): Changed LTORG size for insn.
-
-Wed Jul 26 19:44:05 2000 Hans-Peter Nilsson <hp@axis.com>
-
- * reload.c (find_reloads_toplev): Reload a paradoxical subreg of a
- mem if the address is a mode_dependent_address_p.
-
-2000-07-26 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c (print_operand): Print ":8" when the 'R' operand is
- suitable for 8-bit absolute.
- * h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): New.
- (OK_FOR_U): Add a case for the 8-bit constant address on the
- H8/300H.
-
-Wed Jul 26 19:26:21 2000 Hans-Peter Nilsson <hp@axis.com>
-
- * varasm.c (assemble_variable) [! defined(ASM_OUTPUT_ALIGNED_COMMON)
- && ! defined (ASM_OUTPUT_ALIGNED_BSS]): Also test
- ! defined(ASM_OUTPUT_ALIGNED_DECL_COMMON) before complaining about
- lack of implemented alignment.
-
-2000-07-26 Geoffrey Keating <geoffk@cygnus.com>
-
- * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETIC]: Handle
- cross-compiling between 64-bit and 32-bit machines.
-
-2000-07-27 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (movqicc_astep, movqi_internal_astep): New.
- (movhicc_astep, movhi_internal_astep): New.
- (movsicc_astep, movsi_internal_astep): New.
- (movdicc_astep, movdi_internal_astep): New.
- (movsfcc_astep, movsf_internal_astep): New.
- (movdfcc_astep, movdf_internal_astep): New.
- (movxfcc_astep, movxf_internal_astep): New.
- (cmovdi_internal_astep, cmovsi_internal_astep): New.
- Unify the cmov[ds]i splitters.
-
-2000-07-27 Rodney Brown <RodneyBrown@pmsc.com>
-
- * real.c (asctoeg): Rename `error' label to unexpected_char_error
-
-2000-07-26 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/vxarm.h (CPP_PREDEFINES): Remove definition of
- __arm__. Allow it to be defined by CPP_ISA_SPEC in arm.h
-
- * dwarf2out.c (dwarf2out_frame_debug_expr): Accept SEQUENCE as
- well as PARALLEL blocks in FRAME_RELATED_EXPR notes.
-
-2000-07-26 Alexandre Oliva <aoliva@redhat.com>
-
- * c-decl.c (finish_enum): Convert enumerations that fit in an
- `int' to `int'.
- (build_enumerator): In pedantic mode, cast to `int' those that
- don't.
-
-2000-07-25 Rodney Brown <RodneyBrown@pmsc.com>
-
- * config/alpha/osf.h (SIZE_TYPE, PTRDIFF_TYPE): New.
-
-Tue Jul 25 23:08:33 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
-
- * sh.md (cmpgtdi_t): Must be split.
- (cmpgtdi_t+1): New splitter.
-
-2000-07-25 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplib.c (_cpp_check_directive): Issue -Wtraditional
- warnings for indented directives even if we are skipping.
-
-2000-07-25 Nathan Sidwell <nathan@codesourcery.com>
-
- * invoke.texi (strict-prototypes): Remove.
- * extend.texi (Deprecated Features): Add strict-prototypes.
- (Backwards Compatibility): New node.
-
-2000-07-25 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (andsi_1+1): Allow HImode.
- (andsi_1+2): Require q_regs_operand.
-
-2000-07-25 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (call_pop): Check operands[0],
- not operands[1]. Only check SYMBOL_REF_FLAG for a SYMBOL_REF.
- (call): Likewise.
- (call_value_pop): Only check SYMBOL_REF_FLAG for a SYMBOL_REF.
- (call_value): Likewise.
-
-2000-07-25 Zack Weinberg <zack@wolery.cumb.org>
-
- * toplev.c (pipe_closed): Delete.
- (crash_signal): New. Generate ICE for a fatal signal.
- (float_signal): Call crash_signal outside a float-handler
- block, not abort.
- (main): Install crash_signal as handler for core-dumping signals.
-
-2000-07-25 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (print_operand, case 'T'): New case.
-
- * rs6000.md (call_indirect_aix32): Convert to expander of
- scheduled instructions.
- (call_indirect_aix64): Likewise.
- (call_value_indirect_aix{32,64}): Likewise.
- (call, call_value): Invoke expanders for AIX. Fall through to
- matchers for SysV.
- (call_indirect_nonlocal_aix{32,64}): New patterns (ctr and lr).
- (call_value_indirect_nonlocal_aix{32,64}): New patterns.
- (call_nonlocal_aix32): Remove CALL_LONG alternative. Operand 1
- only "g" constraint.
- (call_nonlocal_aix64): Likewise.
- (call_value_nonlocal_aix{32,64}): Likewise.
- (call_nonlocal_sysv): New pattern for ctr, lr, and symbolic
- operands.
- (call_value_nonlocal_sysv): New pattern.
- (indirect_jump{si,di}): Use new 'T' modifier.
- (tablejump{si,di} matchers): Likewise.
- (return_internal_{si,di}): Likewise.
- (return_eh_{si,di}): Likewise.
-
-2000-07-24 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (ia64_print_operand): Handle "%,".
- * config/ia64/ia64.h (PRINT_OPERAND_PUNCT_VALID_P): Likewise.
- * config/ia64/ia64.md (movdi_internal): Use it.
-
-2000-07-24 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppexp.c: Warn about unary + if -Wtraditional.
- * cpplex.c (lex_line): Always set BOL on the first token of a line.
-
-2000-07-24 Michael Meissner <meissner@redhat.com>
-
- * d30v.h (FUNCTION_ARG_KEEP_AS_REFERENCE): Delete references to
- unsupported macro.
-
-2000-07-24 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.c (emit_multi_reg_push): Generate a
- REG_FRAME_RELEATED_NOTE that is compatible with the code in
- dwarf2out_debug_frame_expr.
-
-2000-07-24 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c: Complain if DWARF2_DEBUGGING_INFO is defined without
- UNALIGNED_INT_ASM_OP.
- (def_cfa_1): Don't emit def_cfa_register or def_cfa_offset to adjust
- a location expression.
- (dwarf2out_frame_debug_expr): Lose cfa_old_reg stuff. Don't
- assume indirect access if we're saving the CFA address exactly.
-
- * Makefile.in (bootstrap): Move -BstageN/ to the end.
-
-2000-07-24 Jakub Jelinek <jakub@redhat.com>
-
- * tradcpp.c (main): Update max_include_len for cpp_include_defaults
- as well.
-
-2000-07-24 Michael Meissner <meissner@redhat.com>
-
- * invoke.texi (D30V Options): Add d30v options.
-
-Mon Jul 24 02:04:52 2000 Jeffrey A Law (law@cygnus.com)
-
- * gcse.c (alloc_pre_mem): Do not alloc TRANSPOUT, it is not
- needed by our gcse pass anymore.
- (free_pre_mem): Corresponding changes.
- (compute_pre_data): Do not call compute_transpout anymore.
-
- * gcse.c (alloc_avail_expr_mem): Kill unused 'u_bitmap'.
- (free_avail_expr_mem, alloc_pre_mem, free_pre_mem): Corresponding
- changes.
-
- * gcse.c (free_pre_mem): Do not free ANTLOC and AE_KILL here.
- (compute_pre_data): Do it here instead.
-
- * gcse.c (alloc_pre_mem, free_pre_mem): Delete unused bitmap
- 'temp_bitmap'.
- (pre_delete): Corresponding changes.
-
-2000-07-23 Mark Mitchell <mark@codesourcery.com>
-
- * c-semantics.c (make_rtl_for_local_static): Use TREE_ASM_WRITTEN
- to figure out whether or not a variable has already been emitted.
-
-Sun Jul 23 14:49:12 2000 Jason Eckhardt <jle@cygnus.com>
-
- * config/i860/i860.md (untyped_call expander): Use GEN_CALL
- instead of gen_call.
-
-Sun Jul 23 11:52:03 2000 George Helffrich (george@gly.bris.ac.uk)
-
- * dbxout.c (dbxout_type, case COMPLEX_TYPE): Fix length field in stab.
-
-2000-07-23 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c: Fix formatting.
-
-2000-07-23 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-typeck.c (c_expand_start_case): Change -Wtraditional pedwarn
- for `long' switch expression into a plain warning.
-
- * c-lex.c (init_lex): Keep the "inline" keyword in C99 mode.
- (yylex): Don't pedwarn for "inline" in C99 mode.
-
- * bitmap.c (debug_bitmap_file): Cast pointers to PTR for printing
- with %p.
- * ggc-page.c (debug_print_page_list, alloc_page, free_page,
- ggc_alloc): Likewise.
- * bb-reorder.c (dump_scope_forest_1): Likewise.
-
-2000-07-22 Aldy Hernandez <aldyh@redhat.com>
-
- * reload.c (find_reloads_toplev): Add new parameter
- "address_reloaded".
- (find_reloads): Add new parameter to find_reloads_toplev calls.
-
-2000-07-22 Jeffrey Oldham <oldham@codesourcery.com>
-
- * collect2.c (main): Typo fixed.
- * diagnostic.c: Typo fixed.
- * dwarf2out.c (dwarf2out_frame_debug_expr): Typo fixed.
- * eh-common.h: Typo fixed.
- * emit-rtl.c (start_sequence): Typo fixed.
- * flow.c (find_label_refs): Typo fixed.
- (calculate_global_regs_live): Typo fixed.
- (mark_regno_cond_dead): Typo fixed.
- (create_edge_list): Typos fixed.
- (verify_edge_list): Typo fixed.
- * ggc-common.c (ggc_mark_rtx_children): Typo fixed.
- * loop.c (strength_reduce): Typo in function name fixed.
- * rtl.h: Added comments. Typo in function name fixed.
- * rtlanal.c: Typo in function name fixed.
- (insn_dependant_p): Rename to ...
- (insn_dependent_p): ... this.
- (computed_jumo_p): Typo fixed.
-
-2000-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h (__FUNCTION__): Wrap definition in #ifndef.
-
-2000-07-21 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.h (SIZE_TYPE): Define.
-
-2000-07-21 Mark Mitchell <mark@codesourcery.com>
-
- * ssa.c (rename_insn_1): Don't rename registers that are
- CLOBBERed.
-
-2000-07-21 Zack Weinberg <zack@wolery.cumb.org>
-
- * diagnostic.c (trim_filename, fancy_abort): Moved here from
- rtl.c.
- (fatal_function, set_fatal_function): Removed.
- (fatal): Don't prepare for or call the fatal_function.
- (diagnostic_lock, error_recursion): New.
- (diagnostic_for_decl, report_diagnostic): Guard against
- re-entering the error reporting routines.
- (fancy_abort): Assume function is not NULL.
-
- * errors.c (fancy_abort): New. Assume function is not NULL.
- * tradcpp.c (fancy_abort): Assume function is not NULL.
-
- * system.h: Provide default definition of __FUNCTION__.
- * rtl.h: Use __FUNCTION__ not __PRETTY_FUNCTION__ throughout.
- Always use __FUNCTION__ in definition of abort.
- * tree.h: Likewise.
- * varray.h: Likewise.
- * toplev.h: Likewise. Don't prototype set_fatal_function.
-
-2000-07-20 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/aix43.h (CPP_SPEC): Define __LONG_MAX__ correctly
- in 64-bit mode.
- * glimits.h: Don't do #if defined for ARCH_PPC.
-
- * config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): All
- constants of size no larger than a pointer should go in the TOC.
- Add 'MODE' parameter.
- (LEGITIMIZE_RELOAD_ADDRESS): Add MODE parameter to
- ASM_OUTPUT_SPECIAL_POOL_ENTRY_P.
- (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Likewise.
- * config/rs6000/aix.h (SELECT_RTX_SECTION): Likewise.
- * config/rs6000/netware.h (SELECT_RTX_SECTION): Likewise.
- * config/rs6000/rs6000.c (constant_pool_expr_1): Likewise.
- (rs6000_legitimize_address): Likewise.
- (rs6000_emit_move): Likewise.
- (rs6000_select_rtx_section): Likewise.
- (output_toc): Deal properly with outputting small constants like
- HImode, and SFmode in 32-bit mode, and DFmode in 64-bit mode.
- * config/rs6000/sysv4.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Add
- MODE parameter. Put small constants in the TOC.
-
- * config/rs6000/rs6000.c (easy_fp_constant_p): All constants are
- easy in SImode.
- (rs6000_emit_move): When reload calls us with an illegitimate
- address, exit early. Move the change_address calls to one place
- at the end of the routine. Merge the SImode and DImode expanders.
- When called by reload to put an integer into a FP register, force
- it to memory.
-
- * config/rs6000/rs6000.c (struct toc_hash_struct): Add 'key_mode'
- field.
- (rs6000_hash_constant): Hash mode too.
- (toc_hash_function): Allow for key_mode.
- (toc_hash_eq): Structures are different if key_mode differs.
- (output_toc): Add 'mode' parameter. Save key_mode.
- * config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY):
- Pass 'mode' parameter.
- * config/rs6000/rs6000-protos.h (output_toc): Add 'mode' param.
-
- * config/rs6000/rs6000.c (output_toc): Use RS6000_OUTPUT_BASENAME
- for vtable references.
-
- * config/rs6000/rs6000.h (PREFERRED_RELOAD_CLASS): If we have a
- choice, don't put integer values in FP regs.
-
-Thu Jul 20 18:13:52 2000 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (verify_flow_info): Revamp code to verify that the
- head and end of each basic block are in the insn chain.
-
-Thu Jul 20 18:02:35 2000 Michael Matz <matzmich@cs.tu-berlin.de>
-
- * gcse.c (record_one_set): Prepend instead of append onto
- reg_set_table, making it O(n) instead O(n^2).
- * lcm.c (compute_antinout_edge,compute_laterin,compute_available):
- Use a queue instead of a stack as worklist.
-
-2000-07-20 Kazu Hirata <kazu@hxi.com>
-
- * h8300.c (two_insn_adds_subs_operand): Fix a typo.
- * h8300.h (OK_FOR_T): New.
- (EXTRA_CONSTRAINT): Support OK_FOR_T.
- * h8300.md: Use inc/dec.[wl] for increment/decrement
- by 1 and 2 in HI and SI modes.
-
-2000-07-20 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Handle DELTA values
- larger than 14 bits.
-
-2000-07-20 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppmacro.c (CAN_PASTE_AFTER): New macro.
- (count_params): Don't set GNU_REST_ARGS on anything.
- (save_expansion): Set PASTE_LEFT only on tokens for which
- CAN_PASTE_AFTER is true, or which are named operators.
-
- * cpplex.c (parse_args): Distinguish between a rest argument
- given one empty argument, and a rest argument given zero arguments.
- (maybe_paste_with_next): Look for VOID_REST tag, and trigger
- deletion of previous token based on that.
- (get_raw_token): Flatten some control structure.
-
- * cpplib.h (CPP_LAST_EQ): Correct.
- (VOID_REST): New token flag.
- (GNU_REST_ARGS): Delete.
-
- * tradcpp.c (main): Don't munge -D options.
- (make_definition): Bring -D handling in line with cpplib.
- (do_define): Strip all leading whitespace from macro definitions.
-
-2000-07-20 David Billinghurst <David.Billinghurst@riotinto.com.au>
-
- * Makefile.in (tradcpp): Depend on intl.o and version.o.
-
-2000-07-20 Bruce Korb <bkorb@gnu.org>
-
- * fixincl/check.tpl: strip the platform specific types before testing
- * fixincl/fixfixes.c(gnu_type_fix): use platform specific types
- * fixincl/fixincl.tpl: use platform specific types
- * fixincl/fixlib.h: include the platform specific types
- * fixincl/inclhack.def(gnu_types): don't supply the types
- * fixincl/fixincl.x: regen
-
-2000-07-19 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.h (HARD_REGNO_MODE_OK): Don't allow XFmode in
- GR_REGS.
-
-2000-07-19 Zack Weinberg <zack@wolery.cumb.org>
-
- * tradcpp.c (rescan): Do not recognize directives when the #
- is indented.
-
-2000-07-19 Zack Weinberg <zack@wolery.cumb.org>
-
- Implement C++ named operators.
-
- * cpplib.h (TTYPE_TABLE): Move CPP_MIN and CPP_MAX into block
- of operators allowed in #if and having an _EQ variant. Add
- CPP_MIN_EQ, CPP_MAX_EQ, and CPP_DEFINED.
- (cpp_token flags): Add NAMED_OP.
- (enum node_type): Add T_OPERATOR.
- (struct cpp_hashnode): Add code slot to value union.
- * cpphash.h (spec_nodes): Remove n_defined.
-
- * cpplex.c (lex_line): Convert T_OPERATOR nodes to their proper types.
- (spell_token, can_paste, maybe_paste_with_next): Handle named operators.
- (is_macro_disabled): Tweak error messages.
-
- * cpplib.c (get_define_node): Disallow all named operators as
- macro names. Tweak error messages.
- (_cpp_init_stacks): Don't set up spec_nodes->n_defined.
-
- * cppinit.c (builtin_array): Add entries for the named operators.
- * cppexp.c (lex): Check for CPP_DEFINED token.
- (priority table): Add entries for CPP_MIN and CPP_MAX.
- (_cpp_parse_expr): Handle CPP_MIN and CPP_MAX.
-
-2000-07-19 Bernd Schmidt <bernds@cygnus.co.uk>
-
- * gcse.c (INSN_CUID): If ENABLE_CHECKING, abort if the uid is
- larger than the array of cuids.
- (alloc_gcse_mem): Use uid_cuid rather than INSN_CUID when computing
- cuids.
-
-2000-07-19 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixincl.c: Convert to using a table of environment variables
- and activate the auto-edit marker on the fixed output files.
- * fixinc/fixlib.h: Define the environment table
- * fixinc/fixincl.sh: export the ${INPUT} dir
- * fixinc/check.tpl: likewise
-
-2000-07-18 Zack Weinberg <zack@wolery.cumb.org>
-
- * gcc.c (.h spec): Fix typo.
-
-Wed Jul 19 01:22:15 CEST 2000 Marc Espie <espie@cvs.openbsd.org>
-
- * Makefile.in: Fix tradcif.c path.
-
-2000-07-18 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplib.h (TTYPE_TABLE): Rearrange to use only two per-entry
- macros, not five.
-
- * cpphash.h (TOKEN_NAME): New macro.
- (_cpp_spell_operator): Deleted.
- (token_spellings): Now _cpp_token_spellings.
-
- * cppexp.c: Use TOKEN_NAME or TYPE_NAME, not _cpp_spell_operator.
- * cpplex.c: Use OP and TK macros when expanding the
- TTYPE_TABLE. Eliminate token_names. For non-OPERATOR tokens,
- store the stringification of the enumeration name (CPP_CHAR,
- etc.) in the name slot of token_spellings.
- Use TOKEN_NAME and/or TOKEN_SPELL, do not reference
- token_spellings directly.
- * cpplib.c: Use TOKEN_SPELL.
-
- * cpplex.c (_cpp_push_token): If the token being pushed back
- is the previous token in this context, just subtract one from
- context->posn.
- * cppmacro.c (save_expansion): Clear aux field when storing a
- placemarker.
-
-2000-07-18 Jakub Jelinek <jakub@redhat.com>
-
- * cpplex.c (cpp_scan_buffer): Output line command even at the stop
- buffer, provided it is not NULL.
-
-2000-07-18 Alexandre Oliva <aoliva@redhat.com>
-
- * c-decl.c (duplicate_decls): Do not call make_var_volatile() in
- case of invalid volatile re-declaration.
-
-2000-07-18 Jakub Jelinek <jakub@redhat.com>
-
- * calls.c (store_arg): Return nonzero if sibcall_failure is desired.
- (expand_call): Adjust caller.
-
-2000-07-17 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h (report_diagnostic): Change prototype.
-
- * diagnostic.c (output_do_verbatim, diagnostic_for_asm,
- diagnostic_for_decl): Change prototype.
- (error_with_decl, warning_with_decl, pedwarn_with_decl, warning,
- error, warning, error_with_file_and_line,
- warning_with_file_and_line, pedwarn_with_file_and_line, fatal):
- Adjust call to report_diagnostic, diagnostic_for_decl.
- (error_for_asm, warning_for_asm): Adjust call to diagnostic_for_asm.
- (output_verbatim, verbatim): Adjust call to output_do_verbatim.
-
- * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. End
- varaible argument list.
-
-2000-07-17 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpphash.c: Don't include hashtab.h. Most macro-handling code
- moved to cppmacro.c.
- (hash_HASHNODE, eq_HASHNODE, _cpp_dump_macro_hash,
- dump_hash_helper): Delete.
- (expand_hash, higher_prime_number, _cpp_lookup_with_hash,
- cpp_forall_identifiers): New. Implement specialized version of
- Vlad's expandable hash table.
- (cpp_lookup): Use new functions.
- (_cpp_init_macros, _cpp_cleanup_macros): Adjust for new
- implementation.
- * cppmacro.c: New file.
- * cppinit.c (dump_macros_helper): New.
- (cpp_finish): Iterate over the identifier table directly.
- * cpplex.c (parse_name): Calculate the hash of the identifier
- while we scan it. Use _cpp_lookup_with_hash when we can.
-
- * cpphash.h: Update prototypes.
- (xcnewvec, HASHSTEP): New helper macros.
- * cpplib.h: Update prototypes.
- * Makefile.in (LIBCPP_OBJS): Add cppmacro.o.
- (cppmacro.o): New rule.
- (cpphash.o): Update deps.
-
- * cppmain.c: Do not set pfile->printer if no_output is on.
-
-2000-07-15 Neil Booth <neilb@earthling.net>
-
- * cpplib.c: Change all directive-handler functions to return
- void, not int.
- * cpphash.h: Update typedefs.
-
-2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
-
- * configure: Regenerate.
-
- * extend.texi (Extended Asm): Mention that a memory clobber
- does not count as a side-effect.
-
- * unroll.c (copy_loop_body): Fix one instance of using host
- arithmetic on the target; fixes loop-4 on a 32-bit -> 64-bit
- cross-compile.
-
- * tlink.c (scan_linker_output): Tweak for output of AIX ld.
-
-2000-07-17 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.md (movdi): Split out load address code.
- New post-reload splitter for symbolic operands.
- (movdi_internal): Abort if we didn't split symbolic operands
- when we should have.
- * config/ia64/ia64.c (ia64_expand_load_address): New, from movdi bits.
- (ia64_reorg): Split insns when not optimizing.
- * config/ia64/ia64-protos.h (ia64_expand_load_address): Declare.
-
-Mon Jul 17 23:43:26 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Use LONG_DOUBLE_TYPE_SIZE
- instead of MAX_LONG_DOUBLE_TYPE_SIZE to decide output format.
-
-2000-07-17 Chandrakala Chavva <cchavva@cygnus.com>
-
- * loop.c (check_dbra_loop) : Changed loop_continue to loop->cont.
-
-2000-07-17 Jason Merrill <jason@redhat.com>
-
- * Makefile.in (clean): Remove libgcc directory.
-
- * configure.in (-Wno-long-long check): Use higher-level macros.
-
-2000-07-17 Zack Weinberg <zack@wolery.cumb.org>
-
- * simplify-rtx.c (simplify_binary_operation): Recognize
- (compare (gt[u] (cc) 0) (lt[u] (cc) 0)).
- (simplify_ternary_operation): Do not examine MODE_BITSIZE of
- a CONST_INT, it will always be zero.
-
-2000-07-17 Chandrakala Chavva <cchavva@cygnus.com>
-
- * loop.c (check_dbra_loop) : Return if more than one condition is
- present to control the loop.
-
-Mon Jul 17 08:26:35 2000 Clinton Popetz <cpopetz@cygnus.com>
-
- * mips.c (mips_expand_prologue): Don't calculate the last argument
- register unless we need it. When we are calculating this, make
- sure FUNCTION_ARG is giving us a REG.
-
-2000-07-17 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * flow.c (libcall_dead_p): Use single_set to verify the insn
- has only one set and get for analysis.
- (propagate_one_insn): Don't pass the PATTERN of the insn.
-
-2000-07-17 Mark Klein <mklein@dis.com>
-
- * pa.c (emit_hpdiv_const): Update to match new pattern for udivsi3.
-
-2000-07-17 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * Makefile.in (TARGET_GETGROUPS_T): New configuration variable.
- * configure.in (TARGET_GETGROUPS_T): Evaluate.
- * sys-protos.h (getgroups): Use TARGET_GETGROUPS_T for array type
- of second argument of getgroups.
- * configure, config.in: Rebuilt.
-
-2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
-
- * simplify-rtx.c (simplify_relational_operation): Two signed
- values with equal high words are less/greater than each other if
- their low words are less/greater when considered as unsigned.
-
-Mon Jul 17 02:37:06 2000 Marc Espie <espie@openbsd.org>
-
- * configure.in (vax-*-openbsd): Change to new style configuration,
- add collect2/float_format information.
- * configure: Rebuilt.
- * config/vax/openbsd1.h: New.
- * config/vax/openbsd.h: New.
- * config/vax/t-openbsd: New.
-
-2000-07-17 Chip Salzenberg <chip@valinux.com>
-
- * c-common.c (shorten_compare): Quiet warnings about unsigned
- comparisons with zero when they occur in a system header.
-
-2000-07-17 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi (-pedantic): Refer to ISO C instead of ANSI C, and
- update to describe current practice.
-
- * glimits.h (LLONG_MIN, LLONG_MAX, ULLONG_MAX): Define for C99.
-
- * contrib.texi, cpp.texi, extend.texi, invoke.texi: Update
- references to C9X. Change references to -fstd and -flang-isoc9x
- to refer to -std.
-
- * c-common.c (scan_char_table): Allow "z" length modifiers on
- diouxXn formats.
- (check_format_info): Use TYPE_DOMAIN on the type matched against
- for "z" formats, to retrieve the language size_t rather than the
- internal one.
-
- * c-common.c (check_format_info): Do not make a pedantic objection
- to the 'L' length modifier if used with a floating point type
- character.
-
- * c-lex.c (yylex): Don't pedwarn for hexadecimal floating point
- constants in C99 mode.
-
-2000-07-17 Kazu Hirata <kazu@hxi.com>
-
- * h8300.md: Fix the format of mac.
- (movsi_h8300hs): Output a tab after stmac instead of a space.
-
- * h8300.c (two_insn_adds_subs_operand): Improve code for detecting
- profitable adds/subs sequences.
-
- * fold-const.c: Fix comment typos.
-
-2000-07-16 Laurynas Biveinis <lauras@softhome.net>
-
- * cppfiles.c (read_name_map): Set map_list_ptr->map_list_map to NULL.
-
-2000-07-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fixinc/fixfixes.c (emit_gnu_type): Avoid string concatenation.
-
-2000-07-16 Neil Booth <NeilB@earthling.net>
-
- * cpplex.c: Update comments.
- * README.Portability: Small update.
-
-2000-07-16 Neil Booth <NeilB@earthling.net>
-
- * README.Portability: Small update.
-
-2000-07-15 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64-protos.h (ia64_move_ok): Prototype.
- * config/ia64/ia64.c (ia64_move_ok): New function.
- * config/ia64/ia64.md (movqi, movqi_internal): Use it.
- (movhi, movsi, movdi, movsf, movdf, movxf): Likewise.
-
-2000-07-15 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpphash.c (save_expansion): Clear PREV_WHITE on tokens
- immediately following a paste operator.
- * cppinit.c (sort_options): New function (only for HOST_EBCDIC).
- (cpp_reader_init): Call it, if HOST_EBCDIC.
- (cpp_handle_options): Do not sort option list here.
- (handle_option): Rename to cpp_handle_option and export.
- * cpplex.c (cpp_scan_buffer_nooutput, cpp_scan_buffer): Use
- _cpp_get_token directly.
- (cpp_scan_line): Return 0 at EOF, 1 otherwise.
- * cpplib.c (cpp_push_buffer): Don't set new->lineno to 1.
- * cpplib.h: Prototype cpp_handle_option. Update prototype of
- cpp_scan_line.
-
-2000-07-15 Richard Henderson <rth@cygnus.com>
-
- * fold-const.c (extract_muldiv): Don't optimize past an unsigned
- cast around an expression. Tidy other unsigned tests.
-
-2000-07-15 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (doing_line_wrapping, line_wrapper_printf, notice,
- v_error_with_decl, v_warning_with_decl, v_pedwarn_with_decl): Remove.
- (v_message_with_decl): Rename to ...
- (format_with_decl): ... this. Tweak
- (diagnostic_for_decl): New function.
- (fatal_io_error): Use verbatim in lieu of notice.
- (announce_function): Use verbatim.
- (default_print_error_function): Likewise.
- (error_with_decl, warning_with_decl, pedwarn_with_decl): Use new
- infratructure.
-
-2000-07-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.c (function_arg_pass_by_reference): Don't do automatic
- aggregate initialization.
- (machine_dependent_reorg): Initialize variable `mode'.
-
- * mips.md (absdi2): Change variable `regno1' to unsigned int.
- (reload_indi): Rename loword/hiword to lo_word/hi_word to avoid
- conflicts with sys/param.h macro of the same name.
- (reload_outdi): Likewise.
-
-2000-07-15 Michael Meissner <meissner@redhat.com>
-
- * fold-const.c (fold): When optimizing FOO++ == CONST into ++FOO
- == CONST + INCREMENT, don't overwrite the tree node for FOO++,
- create a new node instead.
-
-2000-07-15 Neil Booth <NeilB@earthling.net>
-
- * README.Portability: Correct example about calling a function
- through a pointer to function. Format wide paragraphs.
-
-2000-07-15 Michael Meissner <meissner@redhat.com>
-
- * README.Portability: Update integer suffixes and function
- prototype sections.
-
-2000-07-15 Neil Booth <NeilB@earthling.net>
-
- * README.Portability: Small update.
-
-2000-07-15 Neil Booth <NeilB@earthling.net>
-
- * README.Portability: New file.
-
-Fri Jul 14 18:13:53 2000 Mark P Mitchell <mark@codesourcery.com>
-
- * INSTALL: Give special instructions for building GCC on Irix 6.
- * config/mips/x-iris6 (CC): Don't set it.
- (OLDCC): Likewise.
-
-2000-07-14 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (dwarf2out_frame_debug_expr): If we store the CFA
- register in the stack and later in another register, use the new
- register.
-
-Fri Jul 14 10:25:53 2000 Clinton Popetz <cpopetz@cygnus.com>
-
- * config/mips/mips.md: (absdi2): Handle sign_extend for
- second operand.
-
-2000-07-14 Nathan Sidwell <nathan@codesourcery.com>
-
- * cpplib.c (do_pragma_dependency): Tidy warning messages.
-
-2000-07-14 Zack Weinberg <zack@wolery.cumb.org>
-
- * .cvsignore: Correct typo.
-
-2000-07-13 Mark Mitchell <mark@codesourcery.com>
-
- * .cvsignore: Add generated YACC files.
- * objc/.cvsignore: New file.
-
-2000-07-14 Neil Booth <NeilB@earthling.net>
-
- * cpplex.c (adjust_column): New function.
- (skip_whitespace): Use it.
- (skip_block_comment): Use it, and warn about /*/* with
- -Wcomments.
-
-2000-07-14 Neil Booth <NeilB@earthling.net>
-
- * cpphash.c (struct macro_info): Add new members.
- (_cpp_free_definition): Delete the macro directly.
- (count_params): Return void, with first token of
- expansion in struct macro_info on success.
- (parse_define): Return int. Hoist syntax checking from
- save_macro_expansion. Leave call to save_expansion to
- _cpp_create_definition.
- (alloc_macro): Needs just 2 arguments.
- (free_macro): Delete.
- (save_expansion): Don't perform syntax check.
- (_cpp_create_definition): Call save_expansion.
-
-2000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * genrecog.c (write_header): Split long string.
-
- * cpphash.c (macro_info): Don't use the `signed' keyword.
-
- * system.h (alloca): Prototype if __GNUC__ && __SIZE_TYPE__.
-
-2000-07-13 Jakub Jelinek <jakub@redhat.com>
-
- * calls.c (stored_args_map): New variable.
- (check_sibcall_argument_overlap_1): New.
- (check_sibcall_argument_overlap): New.
- (expand_call): Initialize stored_args_map.
- Call check_sibcall_argument_overlap.
-
-2000-07-13 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixfixes.c: move EXIT_BROKEN to header, add sub-expr max count
- (emit_gnu_type): utility procedure for gnu_type_fix
- (gnu_type_fix): implement various pre-processor guards around
- standard types so these types can be defined over and over
- * fixinc/fixincl.tpl: add a "gnu_type_map" that forces the standard
- types alluded to above will have GNU-compliant base types
- * fixinc/fixlib.h: add EXIT_BROKEN define and the gnu_type_map struct
- * fixinc/inclhack.def: add test_text entries and utilize the new
- "gnu_types" fix for the ptrdiff_t, size_t and wchar_t types.
- * fixinc/fixincl.x: regenerate
-
-2000-07-12 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
-
- * diagnostic.c (vline_wrapper_message_with_location,
- v_message_with_file_and_line, v_error_with_file_and_file,
- v_error_for_asm, v_warning_for_asm, vfatal,
- v_warning_with_file_and_line, v_pedwarn_with_file_and_line,
- vsorry, verror, vwarning, vpedwarn): Remove.
- (diagnostic_for_asm): New function.
- (pedwarn, error, warning, pedwarn_with_file_and_line,
- error_with_file_and_line, warning_with_file_and_line, sorry,
- error_for_asm, warning_for_asm, fatal): Reimplement.
- (finish_diagnostic): Clear diagnostic info as well.
-
-2000-07-13 Neil Booth <NeilB@earthling.net>
-
- * c-common.h (flag_digraphs): New.
- * c-decl.c (c_decode_option): Set flag_digraphs as appropriate.
- * c-lex.c (yylex): Use flag_digraphs to decide whether to
- honor digraphs.
-
-2000-07-13 Zack Weinberg <zack@wolery.cumb.org>
-
- * gcc.c (do_spec_1): Add new %B operator.
- (set_input): Prepare for %B.
-
- (link_command_spec): Move up with the other tm.h-
- overrideable specs. Factor out the portion conditional on
- LINK_LIBGCC_SPECIAL into a new spec, %(link_libgcc).
- (struct compiler): Just have a single spec string. All users
- updated.
- (default_compilers): Remove unnecessary braces.
- (static_specs): Update.
-
- (trad_capable_cpp, cpp_options, cc1_options, asm_options): New
- named specs.
- (C and assembly specs): Use the new named specs, as appropriate.
-
- * objc/lang-specs.h: Use the new named specs.
- Remove unnecessary braces.
-
-2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
-
- * gcc.c (execute): If a subprocess gets a fatal signal, report
- strsignal() of the signal number, and ask for a bug report.
- Do not do this for SIGPIPE if there's already been an error.
-
- * tradcpp.c: Don't include signal.h. Don't catch SIGPIPE.
- Delete pipe_closed.
-
- * tradcif.c: Remove.
-
-2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
-
- * final.c (profile_function): Do not emit profile counters in
- the data section, if NO_PROFILE_COUNTERS is defined.
- * tm.texi: Document NO_PROFILE_COUNTERS. Update doc for
- FUNCTION_PROFILER.
-
- * config/i386/linux.h (NO_PROFILE_COUNTERS): Define.
- (FUNCTION_PROFILER): Just emit a call to mcount.
-
-2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
-
- * tradcpp.c (main): Rename 'perror' label to 'sys_error'.
-
- * cppexp.c, cpphash.c, cpphash.h, cppinit.c, cpplex.c,
- cpplib.c, cpplib.h: Eradicate all traces of code dependent on
- traditional, lang_chill, or lang_fortran.
-
- * cppfiles.c: #undef strcmp to suppress warning about macros
- used without arguments.
- (_cpp_execute_include): Use f, not fname, in "No include path"
- error.
- (_cpp_pop_file_buffer): New function.
- * cpplib.c: Don't include <sys/mman.h>.
- (cpp_push_buffer): Set line_base and lineno in new buffer.
- (cpp_pop_buffer): Use _cpp_pop_file_buffer.
-
- * cpplex.c: Move all prototypes and structure declarations to the
- top of the file. Properly parenthesize some macro arguments.
- (cpp_scan_line): New function.
- (special_symbol [case T_INCLUDE_DEPTH]): Use pfile->include_depth,
- don't need to walk up the stack counting.
-
-2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c (combine_strings): Emit a pedantic warning when a
- string length is greater than the minimum ANSI C is required
- to support.
-
-Wed Jul 12 13:24:30 2000 Jeffrey A Law (law@cygnus.com)
-
- * pa/xm-pa64.h (NO_SYS_SIGLIST): Kill.
- * d30v/xm-d30v.h (NO_SYS_SIGLIST): Kill.
-
-2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-decl.c (define_label): Warn about identifier conflicts with
- labels in traditional C.
-
- * c-parse.in (unop +): Warn about the unary plus operator for
- traditional C.
-
- * c-typeck.c (store_init_value): Warn about automatic aggregate
- initialization for traditional C.
-
- * invoke.texi (-Wtraditional): Document new warnings.
-
-2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * Makefile.in (c-errors.o): Fix thinko in dependency.
-
-2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
-
- * gcc.c (C specs [!USE_CPPLIB]): Invoke tradcpp if any of
- -traditional, -ftraditional, or -traditional-cpp was given.
- Do not pass -traditional to the preprocessor.
- (.S spec): Likewise. Don't bother defining __ASSEMBLER__, the
- preprocessor does it automatically.
- * objc/lang-specs.h: Likewise. Don't bother defining __OBJC__.
-
- * ch/lang-specs.h: Always use tradcpp. Do not pass
- -traditional, -trigraphs, or -pedantic to the preprocessor.
- * f/lang-specs.h (.F spec): Likewise. Don't bother defining
- _LANGUAGE_FORTRAN.
-
-2000-07-12 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppexp.c (LOGICAL): Delete macro.
- (_cpp_parse_expr): Do not use UNARY for unary +. Implement ||
- and && directly.
-
- * cpphash.c (HASHSIZE): Increase to 4096.
- (struct hashdummy): Add hash field.
- (eq_HASHNODE): Compare unreduced hashes, then lengths, then
- the string values using memcmp.
- (cpp_lookup): Set dummy.hash.
-
-Wed Jul 12 13:15:16 2000 Marc Espie <espie@openbsd.org>
-
- * configure.in (m88k-openbsd): Express configuration using new fragment
- style.
- * configure: Rebuilt.
- * m88k/aout-dbx.h: New.
- * m88k/openbsd.h: New.
- * m88k/xm-openbsd.h: New.
-
-2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * expr.c (expand_expr): Return const0_rtx, not error_mark_node.
-
-2000-07-12 Richard Henderson <rth@cygnus.com>
-
- * reload.c (push_secondary_reload): Make sure to add the new
- reload at the end, after acquiring secondary memory.
-
-2000-07-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cpplex.c (is_macro_disabled): Use CPP_WTRADITIONAL.
-
- * c-decl.c (set_current_function_name_declared, anon_aggr_type_p,
- lang_expand_stmt): Mark parameters with ATTRIBUTE_UNUSED.
-
- * c-parse.in (stmt): Delete unused variables.
-
- * convert.c (convert_to_vector): Likewise.
-
- * gensupport.c (process_rtx): Declare attr as `rtvec' not `rtx'.
-
- * tree.c (finish_vector_type): Prototype.
-
-2000-07-12 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixfixes.c: use xmalloc
- * fixinc/fixincl.c(initialize): set program name for xmalloc
- * fixinc/fixlib.c(must_malloc): obsolete
- (is_cxx_header): no longer used - disabled
- (skip_quote): inserted and disabled for future use
- * fixinc/fixlib.h: reflects above
- * fixinc/fixtests.c: removed dinkleberries
-
-2000-07-12 Neil Booth <NeilB@earthling.net>
-
- * cpphash.h: (TOKEN_SPELL) Pulled from cpplex.c.
- * cpplex.c (TOKEN_SPELL) Move to cpphash.h.
-
- * cpphash.c: (struct macro_info, alloc_macro, free_macro,
- struct toklist_dummy): New.
- (cpp_free_definition): Free macros with free_macro.
- (count_params): Don't save parameter spellings. Save macro
- information in a struct macro_info.
- (parse_define): Don't allocate a token list.
- (save_expansion): Allocate the macro's token list, and
- save parameter spellings if necessary. Use TOKEN_SPELL.
- (cpp_create_definition): Make list const.
-
-2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * c-typeck.c (pedwarn_c99): Move to
- * c-errors.c: ... Here.
- * toplev.h (verror, vwarning, vpedwarn): Remove prototypes.
- * diagnostic.c (verror, vwarning, vpedwarn): Make static.
- * Makefile.in (C_AND_OBJC_OBJS): Include c-errors.o
- (c-errors.o): List dependency.
-
-2000-07-12 Mark Mitchell <mark@codesourcery.com>
-
- * c-parse.c: Remove.
- * c-parse.h: Likewise.
- * c-parse.y: Likewise.
- * objc/objc-parse.c: Likewise.
- * objc/objc-pasre.y: Likewise.
-
-2000-07-11 Rodney Brown <RodneyBrown@pmsc.com>
-
- * gcc.texi: Fix minor typos
- * extend.texi: Fix minor typos
-
-2000-07-11 Marc Espie <espie@openbsd.org>
-
- * collect2.c (main): Recognize .lo as object files.
-
-2000-07-11 J. David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (hppa_encode_label): Store labels in gc memory when ggc_p is
- true.
-
- * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Extend test to detect systems
- with MAP_ANONYMOUS and MAP_ANON.
- * configure, config.in: Rebuilt.
-
-2000-07-12 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (save_output_state): Remove.
- (restore_output_state): Likewise.
- (clear_text_info): New function.
- (clear_diagnostic_info): Likewise.
- (output_text_length, is_starting_newline, output_prefix,
- line_wrap_cutoff, ideal_line_wrap_cutoff, prefix_was_emitted_for,
- prefixing_policy, output_buffer_ptr_to_format_args): New macros
- (set_real_maximum_length, output_set_maximum_length,
- output_set_prefix, output_get_prefix, output_set_maximum_length,
- output_destroy_prefix, init_output_buffer,
- reshape_diagnostic_buffer, output_space_left, output_emit_prefix,
- output_add_newline, output_add_character, output_add_space,
- output_append_r, output_append, wrap_text, output_format,
- output_do_printf, output_printf, output_do_verbatim,
- output_verbatim, verbatim): Use them.
- (output_clear): Split into cleat_text_info and
- clear_diagnostic_info.
- (struct output_state): Move to...
-
- * diagnostic.h: ...Here
- (struct output_buffer): Adjust.
-
-2000-07-11 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplex.c (parse_name): No longer inline (premature optimization).
- (do_pop_context): Fold into pop_context.
- (pop_context): Returns int.
- (lex_next): Hoist test for end of directive into pop_context.
- (push_macro_context): Returns int; takes just reader and token.
- Hoist test for excessive nesting to caller.
- (push_arg_context): Returns void; takes just reader and token.
- Do not call stringify_arg or get_raw_token.
- (get_raw_token): Convert tail recursion through push_arg_context
- to a loop at this level. Call stringify_arg here if appropriate.
- (maybe_paste_with_next): Convert tail recursion to a while loop.
- Hoist test of paste_level to caller.
-
- (stringify_arg): Push arg context at beginning.
- (cpp_get_token): Split out core into _cpp_get_token. Call
- process_directive here. Throw away CPP_PLACEMARKER tokens.
- (_cpp_get_token): Convert tail recursion through
- push_macro_context to a loop at this level.
- (_cpp_glue_header_name, is_macro_disabled, stringify_arg,
- _cpp_get_raw_token): Use _cpp_get_token.
- (_cpp_skip_rest_of_line): Drop the context stack directly; do
- not call pop_context.
- (_cpp_run_directive): Call lex_next directly.
-
- * cpphash.h: Prototype _cpp_get_token.
- * cppexp.c (lex): Use it.
- * cpphash.c (parse_define): Use it.
- * cpplib.c (get_define_node, do_undef, parse_include,
- read_line_number, do_line, do_ident, do_pragma, do_pragma_gcc,
- do_pragma_implementation, do_pragma_poison, do_pragma_dependency,
- parse_ifdef, validate_else): Use it.
- (cpp_push_buffer): Tweak error message; abort if anyone tries
- to push a buffer while macro expansions are stacked.
-
-2000-07-11 Donn Terry <donnte@microsoft.com>
-
- * cpplex.c (free_macro_args, save_token): Cast arg of free
- and/or xrealloc to PTR.
- (_cpp_init_input_buffer): Clear all fields of the base context.
-
-Tue Jul 11 15:28:21 CDT 2000 Clinton Popetz <cpopetz@cygnus.com>
-
- * gensupport.c (process_rtx): Make rtl checking stop
- complaining about the define_insn while it is being
- converted from a define_insn_and_split.
-
-Tue Jul 11 16:26:17 2000 Clinton Popetz <cpopetz@cygnus.com>
-
- * config/mips/mips.c (simple_memory_operand): Access the
- INTVAL of the address, not it's containing MEM.
-
-2000-07-11 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixtests.c(double_slash): obsolete
- (else_endif_label): likewise
- * fixinc/inclhack.def(irix_multiline_cmnt): obsolete
- (libc1_ifdefd_memx): correct initial comment
- and omit the #if/#endif pair from the memxxx declarations
- * fixinc/fixincl.x: regen
-
-2000-07-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cpplex.c (T, I, S, C, N): Avoid non-constant initializers.
-
-2000-07-11 Neil Booth <NeilB@earthling.net>
-
- * cpp.texi: Update.
-
-2000-07-11 Neil Booth <NeilB@earthling.net>
-
- * cppinit.c: (cpp_reader_init): Allow digraphs by default.
- (handle_option): Set digraphs according to standard.
- Merge OPT_lang_c89 handler with OPT_std_c89.
-
- * cpplex.c: (lex_line, can_paste): Honor digraphs in
- accordance with the digraphs flag.
-
- * cpplib.h: (struct cpp_options): New option digraphs.
-
-2000-07-10 Hans-Peter Nilsson <hp@axis.com>
- Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def (libc1_ifdefd_memx): New fix.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/tests/base/testing.h: Add testcase.
-
-2000-07-10 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (got_symbolic_operand): New.
- (symbolic_operand, move_operand): Revert 0701 change.
- * config/ia64/ia64.h (PREDICATE_CODES): Update.
- * config/ia64/ia64-protos.h (got_symbolic_operand): Declare.
- * config/ia64/ia64.md (movdi): Revert 0701 wrt symbolic_operand;
- split the offset into a 14-bit low part instead of a 13-bit low part.
- (load_fptr): Mark the mem as unchanging.
- (load_symptr): Use got_symbolic_operand.
-
-2000-07-10 Nick Clifton <nickc@cygnus.com>
-
- * libgcc2.c (next_stack_level): Cast result of computation to
- (void **) so that the assignment does not generate a warning.
-
-2000-07-10 Chandrakala Chavva <cchavva@redhat.com>
-
- * flags.h : Add new variable flag_single_precision_constant.
- * toplev.c (display_help) : Add -fsingle-precision-constant option.
- (flag_single_precision_constant): New.
- * c-lex.c (yylex): Convert floating point constant to single
- precision constant.
- * invoke.texi : Add documentation for this new option.
-
-2000-07-10 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (output_octal): Second parameter is unsigned.
- (output_long_octal): Likewise.
- (output_hexadecimal): Likewise.
- (output_long_hexadecimal): Likewise.
- (output_format): Adjust arguments extraction. Tweak.
- (output_verbatim, verbatim): End variable argument list.
- (report_diagnostic): Improve documentation.
-
-2000-07-10 Benjamin Chelf <chelf@codesourcery.com>
-
- * c-common.h (build_stmt): Declare.
- (build_continue_stmt): Likewise.
- (build_break_stmt): Likewise.
- (build_return_stmt): Likewise.
-
- * c-decl.c (do_case): Rewrite to do what previously done in
- c-parse.in.
-
- * c-semantics.c (build_stmt): Define.
- (build_return_stmt): Likewise.
- (build_break_stmt): Likewise.
- (build_continue_stmt): Likewise.
- (build_case_label): Likewise.
-
- * c-parse.in (BREAK): Change to build tree, then generate RTL.
- (CONTINUE): Likewise.
- (RETURN): Likewise.
- (CASE): Likewise.
- (DEFAULT): Likewise.
-
- * c-parse.y: Regenerate.
- * c-pasre.c: Likewise.
-
-2000-07-09 Jason Merrill <jason@redhat.com>
-
- * expr.c (expand_expr): Bail earlier if we get an error_mark_node.
-
- * tree.h (STRIP_NOPS): Check for error_mark_node.
- (STRIP_SIGN_NOPS, STRIP_TYPE_NOPS): Likewise.
- (dwarf2out_*): Remove duplicate declarations.
-
- * c-decl.c (duplicate_decls): Copy DECL_ABSTRACT_ORIGIN from
- DECL_ABSTRACT_ORIGIN, not DECL_ORIGIN.
-
-2000-07-10 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (wrap_text): New function.
- (maybe_wrap_text): Likewise.
- (output_add_string): Use it.
- (output_format): Likewise.
- (count_error): Use verbatim instead of notice.
- (report_error_function): Likewise. Don't use plain fprintf.
- (finish_diagnostic): New function.
- (output_do_verbatim): Tweak. Commonalize functionalities in
- output_verbatim and verbatim.
- (output_verbatim): Adjust.
- (verbatim): Likewise.
- (report_diagnostic): Define.
-
- * diagnostic.h (report_diagnostic): Prototype.
-
-2000-07-09 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppexp.c (_cpp_parse_expr): Don't use unary plus.
-
-2000-07-09 Neil Booth <NeilB@earthling.net>
-
- * cpphash.h: ISvspace, is_vspace, is_nvspace: New.
- IShspace, ISspace: Update.
-
- * cppinit.c: ISTABLE: Update.
- V: New.
-
- * cpplex.c (IS_HSPACE, S_NEWLINE): Remove.
- (IS_DIRECTIVE): Rename KNOWN_DIRECTIVE.
- (skip_block_comment, skip_line_comment, parse_string,
- lex_line): Use is_vspace rather than IS_NEWLINE.
- (skip_whitespace, lex_line): Clean up to use is_nvspace.
- (lex_line): Use KNOWN_DIRECTIVE. Any kind of directive
- gets a BOL flag.
- (lex_next): Unconditionally stop if within a directive.
- Treat directives within macro invocations as directives
- (after parse_args emits error), not as the argument.
-
-2000-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (diagnostic_args): New macro.
- (diagnostic_msg): Likewise.
- (output_formatted_integer): Likewise.
- (output_state): New data type.
- (digit_buffer): Make global.
- (output_add_integer): Rename to output_decimal. Squeeze
- digit_buffer.
- (output_long_decimal, output_unsigned_decimal,
- output_long_unsigned_decimal, output_octal, output_long_octal,
- output_hexadecimal, output_long_hexadecimal): New functions.
- (output_append_r): New function.
- (output_append): Tweak.
- (output_flush_on): Rename to output_to_stream.
- (output_format): Change prototype. Improve documentation. Handle
- more format specifiers.
- (build_location_prefix): Rename to context_as_prefix.
- (output_notice): Rename to output_do_printf.
- (output_printf): Tweak.
- (line_wrapper_printf): Likewise.
- (vline_wrapper_message_with_location): Adjust call to renamed
- functions.
- (v_message_with_decl): Likewise.
- (default_print_error_function): Likewise.
- (save_output_state): New function.
- (restore_output_state): Likewise.
- (output_do_verbatim): Likewise.
- (output_verbatim): Define.
- (verbatim): Likewise.
-
- * diagnostic.h (printer_fn): Change return type from void to int.
- Improve documentation.
- (output_add_integer): Rename to output_decimal.
- (output_flush_on, output_format): Don't export.
- (output_verbatim, verbatim): Declare.
-
-2000-07-08 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * fold-const.c (extract_muldiv) case PLUS_EXPR, MINUS_EXPR:
- Check whether c divides op1 exactly if operation is not
- multiplication.
-
-2000-07-08 Richard Henderson <rth@cygnus.com>
-
- * final.c (final): Do not abort when reg-stack introduces
- a new insn.
-
-2000-07-08 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplib.h (struct cpp_name): Now struct cpp_string.
- (CPP_INT, CPP_FLOAT, CPP_NUMBER, CPP_COMMENT,
- CPP_HEADER_NAME): Change to type S.
- (struct cpp_token): Rename 'name' field to 'str'. Add 'node'
- field, a cpp_hashnode *. All references to val.name updated
- to use val.str or val.node as appropriate.
- (struct cpp_reader): Add spec_nodes field.
- (cpp_idcmp): Now cpp_ideq; takes a token * and a char *.
-
- * cpphash.h (struct spec_nodes): New.
- (enum spell_type): Reorder. Only SPELL_STRING tokens use
- val.str. All references to 'spelling > SPELL_NONE' updated to
- match.
-
- (CPP_IN_SYSTEM_HEADER): Check pfile->buffer and
- pfile->buffer->inc are not NULL before dereferencing them.
-
- * cpplex.c (parse_name): Take a pointer to the current token,
- plus current position and limit as args; return the new
- position; don't copy the text of a name into the string
- buffer, instead call cpp_lookup and store the node pointer.
- If extending a token, copy out the text of the old into a
- scratch buffer, append the new, look that up and store the new
- node pointer. Inline.
- (maybe_paste_with_next): If the result of paste is a NAME,
- then look up the pasted text and store its node pointer.
- (lex_line): Adjust for new parse_name interface.
- Check for L"str", L'str' using spec_nodes->n_L.
- (spell_token): SPELL_IDENT tokens have their spelling in
- val.node->name. Handle SPELL_STRING tokens that don't have
- string delimiters.
- (_cpp_expand_name_space,
- (can_paste): Check for L ## "str" using spec_nodes->n_L.
- (cpp_get_token, special_symbol): No need to call cpp_lookup.
- (cpp_idcmp): Now cpp_ideq; take a token * and a const char *;
- return 1=equal 0=not, not a tristate.
-
- * cpphash.c (var_args_str): Delete.
- (find_param): Compare node fields directly.
- (is__va_args__): Use CPP_PEDANTIC. Just compare
- token->val.node with spec_nodes->n__VA_ARGS__.
- (dump_funlike_macro): Don't use var_args_str.
-
- * cpplib.c (_cpp_check_directive): Just walk through
- spec_nodes->dirs comparing pointers.
- (get_define_node, do_pragma_poison, detect_if_not_defined,
- parse_ifdef): The identifier has already been looked up.
- (do_ifdef, do_ifndef): parse_ifdef won't return a poisoned
- node.
- (do_if): Only call detect_if_not_defined at beginning of file.
- (_cpp_parse_assertion): Only copy string pointers for
- SPELL_STRING tokens.
- (pragma_dispatch): Take a node pointer and examine its name
- field.
- (_cpp_init_stacks): Also initialize the spec_nodes structure.
-
- * cppinit.c (cpp_reader_init): Call _cpp_init_stacks after
- _cpp_init_macros.
- (cpp_cleanup): Free pfile->spec_nodes. Call _cpp_cleanup_* in
- reverse order from the corresponding _cpp_init_* routines.
-
- * cppexp.c (parse_number, parse_charconst, parse_defined,
- lex): Check val.node->type instead of calling cpp_defined.
- Use spec_nodes entries where appropriate.
-
- * fix-header.c, scan-decls.c: Update for interface changes.
-
-2000-07-08 Geoffrey Keating <geoffk@cygnus.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): Fix conditions for
- emitting aux_truncdfsf2.
-
-2000-07-03 Donn Terry (donnte@microsoft.com)
-
- * cppinit.c (print_help): split overlong line into ISO C89
- maximum chunks.
-
-2000-07-07 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppexp.c: Update all code for new lexer interface.
- (op_t, operator codes, struct token, tokentab2, op_to_str): Remove.
- (struct suffix, vsuf_1, vsuf_2, vsuf_3, op_to_prio): New.
- * cpplex.c (token_names): Trim leading CPP_ from names; make
- the strings unsigned.
- (_cpp_spell_operator): New.
- (is_macro_disabled): Disable all macros if rescanning
- preprocessed text.
- (_cpp_get_directive_token): Remove.
-
- * cppinit.c: Don't set no_macro_expand.
- * cpplib.c (read_line_number, do_line): Check only for EOF,
- not VSPACE.
- * cpphash.h: Update prototypes.
- * cpplib.h (CPP_VSPACE): Remove.
- (struct cpp_reader): Remove no_macro_expand.
-
-2000-07-08 Neil Booth <NeilB@earthling.net>
-
- * cpphash.c (is__va_args__): New function.
- (count_params): Fix line reported in error messages. Use
- is__va_args__. Don't return ')' on error. Flag GNU style
- rest args macro definitions.
- (parse_define): Check macro name is not __VA_ARGS__.
- (save_expansion): Check identifier in non-varargs-macro is
- not __VA_ARGS__. Don't flag GNU_VARARGS.
- * cpplex.c (parse_args): Accept no argument iff GNU_REST_ARGS.
- (maybe_paste_with_next): Use per-macro GNU_REST_ARGS rather
- than per-token GNU_VARARGS.
- * cpplib.h (GNU_VARARGS): Remove.
- (GNU_REST_ARGS): New.
-
-Sat Jul 8 01:38:25 MET DST 2000 Jan Hubicka <jh@suse.cz>
-
- * i386.md (call_pop, call, call_value_pop): Do not set
- current_function_uses_pic_offset_table for calls to static
- functions or indirect calls.
-
-2000-07-07 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.c (rws_access_reg): New local write_count. If
- is_predicate_reg, then take max write_count of register pair.
-
-2000-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * tradcpp.c (main): Rename label `include' to `add_include' to
- avoid conflicts with variable `include' in traditional C.
-
-2000-07-07 Jakub Jelinek <jakub@redhat.com>
-
- * integrate.c (copy_insn_list): Remove REG_LABEL notes.
-
-2000-07-07 Jakub Jelinek <jakub@redhat.com>
-
- * sibcall.c (uses_addressof): Add INMEM argument, check for
- current_function_internal_arg_pointer outside of MEM rtxs in addition
- to ADDRESSOFs.
- (sequence_uses_addressof): Update caller.
-
-2000-07-07 Zack Weinberg <zack@wolery.cumb.org>
-
- * tradcpp.c (initialize_builtins): Honor NO_BUILTIN_SIZE_TYPE
- and friends.
-
-2000-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h (UNION_INIT_ZERO): New macro for initializing union
- members in structs.
-
- * cpplex.c (placemarker_token, eof_token): Use UNION_INIT_ZERO.
-
-2000-07-07 Neil Booth <NeilB@earthling.net>
-
- * cpp.texi: Update.
-
-Fri Jul 7 07:47:35 2000 Jeffrey A Law (law@cygnus.com)
-
- * final.c (final): Detect out of bounds array access to
- the insn_lengths array.
-
-2000-07-07 Kazu Hirata <kazu@hxi.com>
-
- * fold-const.c (fold): Fix a comment typo.
-
-2000-07-07 Neil Booth <NeilB@earthling.net>
-
- * cpp.texi: Update to new lexer.
-
-2000-07-06 Zack Weinberg <zack@wolery.cumb.org>
-
- * tradcpp.c: New file.
- * tradcif.y: New file.
- * tradcif.c: New generated file.
-
- * Makefile.in: Add rules to build tradcpp.o, tradcif.o,
- $(srcdir)/tradcif.c. Add tradcpp to STAGESTUFF and
- dependencies of C. Install tradcpp from install-common, in
- $(libsubdir).
-
-2000-07-06 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppinit.c: Include cppdefault.h. Refer to
- cpp_GCC_INCLUDE_DIR and cpp_GCC_INCLUDE_DIR_len, not directly
- to GCC_INCLUDE_DIR and its length.
- (SIZE_TYPE, PTRDIFF_TYPE, WCHAR_TYPE,
- USER_LABEL_PREFIX, REGISTER_PREFIX, struct default_include,
- STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT): Move to
- cppdefault.h.
- (include_defaults_array): Move to cppdefault.c.
-
- * cppdefault.h: New file.
- * cppdefault.c: New file.
-
- * Makefile.in (LIBCPP_OBJS): Add cppdefault.o.
- (cppinit.o): Don't apply $(PREPROCESSOR_DEFINES) to this file.
- (cppdefault.o): New rule; apply $(PREPROCESSOR_DEFINES) to
- this file.
-
-Thu Jul 6 18:30:36 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * reload.c (push_reload): When seeing if can reuse a register,
- check extra registers against widest of INMODE and OUTMODE.
-
-2000-07-06 Neil Booth <NeilB@earthling.net>
-
- * cpplib.c: (_cpp_parse_assertion): Perform hash lookups
- based on full length of predicate.
-
-2000-07-06 Hans-Peter Nilsson <hp@axis.com>
-
- * timevar.c: [HAVE_SYS_RESOURCE_H]: Include <sys/resource.h>.
- [NEED_DECLARATION_GETRUSAGE]: Declare getrusage.
-
-2000-07-05 Kazu Hirata <kazu@hxi.com>
-
- * h8300-proto.h: Fix formatting.
- * h8300.c: Likewise.
- * h8300.h: Likewise.
-
-2000-07-05 Jim Wilson <wilson@cygnus.com>
-
- * config/ia64/ia64.h (HARD_REGNO_MODE_OK): If FR_REGNO_P, disallow
- CCmode.
-
-2000-07-05 Rodney Brown <RodneyBrown@pmsc.com>
-
- * invoke.texi: Fix minor typos
- * md.texi: Fix minor typos
-
-2000-07-05 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplib.c (_cpp_parse_assertion): Fix buffer overrun.
-
-2000-07-04 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplex.c: Don't include sys/mman.h.
- (cpp_push_buffer, cpp_pop_buffer): Moved to cpplib.c.
-
- * cpplib.c: Include sys/mman.h and obstack.h.
- (cpp_push_buffer): Moved from cpplex.c; allocate buffers on an
- obstack.
- (cpp_pop_buffer): Moved from cpplex.c; free buffers from an obstack.
- (_cpp_unwind_if_stack): Now static, unwind_if_stack. Don't
- bother freeing if stack entries (they will be freed with their buffer).
- (do_endif): Free if stack entries from the buffer obstack.
- (push_conditional): Allocate if stack entries from the buffer obstack.
-
- (find_answer): Rename to _cpp_find_answer.
- (do_assert, do_unassert): Update.
-
- * cpphash.h: Update prototypes.
- (xobnew): New convenience macro.
- * cpplib.h (struct cpp_reader): Add hash_ob and buffer_ob fields.
- Update comments.
- (struct cpp_hashnode): Remove disabled field.
-
- * cppinit.c: Don't include hashtab.h or splay-tree.h.
- (report_missing_guard): Moved to cppfiles.c.
- (cpp_reader_init): Call cpp_init_stacks, cpp_init_macros,
- cpp_init_includes.
- (cpp_cleanup): Call cpp_cleanup_stacks, cpp_cleanup_macros,
- cpp_cleanup_includes. Don't destroy hashtab or
- all_include_files here.
- (cpp_finish): Use _cpp_report_missing_guards.
-
- * cppfiles.c (report_missing_guard): Moved from cppinit.c.
- (_cpp_init_include_table): Rename _cpp_init_includes.
- (_cpp_cleanup_includes, _cpp_report_missing_guards): New.
-
- * cppexp.c (parse_assertion): Update for new name of
- find_answer.
-
- * Makefile.in (cpplib.o, cpphash.o, cppinit.o): Update deps.
-
-2000-07-04 Zack Weinberg <zack@wolery.cumb.org>
-
- * cpplib.c (do_ident): s/VSPACE/EOF/
-
-2000-07-05 Neil Booth <NeilB@earthling.net>
-
- * cpplex.c: Fix trigraph replacement within strings.
-
-2000-07-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * rs6000/aix.h (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier.
-
- * xcoffout.c (assign_type_number): Constify.
- (xcoffout_source_file): Add static prototype. Don't needlessly
- cast away const-ness.
-
-2000-07-04 Jason Merrill <jason@redhat.com>
-
- * frame.h (frame_state): Move base_offset to end.
-
-Mon Jul 3 21:31:43 2000 Clinton Popetz <cpopetz@cygnus.com>
-
- * calls.c (emit_library_call_value_1): Revert previous change.
-
-2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
-
- * fix-header.c (struct partial_proto): Remove unnecessary fields.
- (recognized_extern, recognized_function, read_scan_file):
- Update for new scheme.
- (check_protection): It's still a multiple include guard even
- if it doesn't always trigger.
- * scan-decls.c (skip_to_closing_brace, scan_decls): Update for
- new scheme.
- * scan.h: Declare struct cpp_token. Update prototypes.
-
-2000-07-03 Neil Booth <neilb@earthling.net>
- Zack Weinberg <zack@wolery.cumb.org>
-
- Complete overhaul of the lexer and macro expander.
-
- * cpphash.c (object_defn, funct_defn, push_macro_expansion,
- arg, arglist, argdata, reflist, collect_objlike_expansion,
- collect_funlike_expansion, collect_params,
- warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
- unsafe_chars, macarg, compare_defs, special_symbol,
- scan_arguments, stringify, funlike_macroexpand,
- _cpp_quote_string, monthnames): Delete.
- (cpp_lookup, _cpp_free_definition, dump_funlike_macro,
- _cpp_create_definition, _cpp_dump_definition,
- dump_hash_helper): Adjust.
- (find_param, count_params, parse_define, var_args_str,
- check_macro_redefinition, save_expansion): New.
-
- * cpplex.c (skip_block_comment, skip_line_comment, parse_name,
- parse_string, output_line_command, trigraph_replace,
- lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
- cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
- cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
- _cpp_skip_rest_of_line): Modify.
-
- (maybe_macroexpand, skip_comment, copy_comment, skip_string,
- find_position, null_warning, bump_column, expand_name_space,
- pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
- _cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
- _cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
- _cpp_prescan): Delete.
-
- (dump_param_spelling, process_directive, lex_next,
- is_macro_disabled, stringify_arg, expand_context_stack,
- output_token, make_string_token, alloc_number_token,
- special_symbol, duplicate_token, maybe_paste_with_next,
- can_paste, prevent_macro_expansion, restore_macro_expansion,
- get_temp_token, release_temp_tokens, quote_string,
- token_names, token_spellings, _cpp_expand_name_space,
- _cpp_glue_header_name, _cpp_reserve_name_space,
- digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
- placemarker_token, eof_token, cpp_context, macro_args,
- get_raw_token, parse_arg, parse_args, save_token,
- push_arg_context, push_macro_context, pop_context,
- do_pop_context, free_macro_args, _cpp_get_line,
- _cpp_run_directive): New.
-
- * cpplib.c (validate_else, parse_include, push_conditional,
- pass_thru_directive, read_line_number, parse_ifdef,
- detect_if_not_defined, _cpp_check_directive, do_define,
- do_undef, do_include, do_import, do_include_next, do_error,
- do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
- top_pragmas, do_pragma_gcc, do_pragma_implementation,
- do_pragma_poison, do_pragma_system_header,
- do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
- dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
- do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
- cpp_defined): Update for new scheme.
- (strtoul_for_line, get_define_node, dump_macro_name,
- _cpp_check_linemarker, _cpp_parse_assertion): New.
- (_cpp_handle_directive, do_pragma_default): Delete.
-
- * cpphash.h (struct predicate): Now struct answer.
- (enum spell_type, struct token_spelling, struct directive,
- directive_handler): New.
- Update prototypes. Remove unused macros.
- * cpplib.h: Update prototypes. Remove unused macros,
- structure definitions, and fields.
-
- * cpperror.c (print_containing_files, v_message): Adjust.
- * cppexp.c (parse_assertion, lex, parse_escape,
- _cpp_parse_expr): Adjust.
- * cppfiles.c (open_include_file, _cpp_execute_include,
- _cpp_compare_file_date, cpp_read_file, read_include_file):
- Adjust.
- * cppinit.c (dump_special_to_buffer): Delete.
- (append_include_chain, merge_include_chains, cpp_reader_init,
- cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
- cpp_finish, handle_option, print_help): Adjust.
- * cppmain.c (main): Adjust.
-
-2000-07-03 Zack Weinberg <zack@wolery.cumb.org>
-
- * cppspec.c (lang_specific_driver): Use double quotes in error
- message.
-
-Mon Jul 3 16:53:43 2000 Clinton Popetz <cpopetz@cygnus.com>
-
- * calls.c (emit_library_call_value_1): Use valreg instead
- of hard_libcall_value.
-
-2000-07-03 Geoff Keating <geoffk@cygnus.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): New function.
- * config/rs6000/rs6000-proto.h: Prototype rs6000_emit_move.
- * config/rs6000/rs6000.md (movsi): Use rs6000_emit_move.
- (movhi): Likewise.
- (movqi): Likewise.
- (movdf): Likewise.
- (movsf): Likewise.
- (movdi): Likewise.
- (movti): Likewise.
-
- * expmed.c (expand_mult_highpart): Use op1 instead of wide_op1 when
- mode instead of wider_mode is being used.
-
-2000-07-03 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (movstrictqi_xor): Use 'q' constraint instead
- of 'r'. Use q_regs_operand.
- (andsi_1+2): Use q_regs_operand.
-
-2000-07-03 Jakub Jelinek <jakub@redhat.com>
-
- * builtins.c (get_memory_rtx): Always put into alias set 0.
-
-2000-07-03 Nick Clifton <nickc@cygnus.com>
-
- * config/arm/arm.md: Fix post increment and pre increment
- peepholes so that they do not generate UNPREDICATBLE opcodes.
- (ie ones where the increment clobbers the source/destination).
-
-2000-07-01 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.c (out_adj_frame_ptr): Make "frame pointer
- change too big for -mtiny-stack" a warning, if larger than 63.
- (out_set_stack_ptr): Change the logic so -mno-interrupts is
- always safe to use on possible future devices.
- (function_prologue): Write SPH before SPL, for consistency.
- If interrupt_func_p true, we know we have enabled interrupts.
- (avr_num_arg_regs): New function. Round up to even number of
- bytes if no -mpack-args or if calling a libgcc function.
- (function_arg, function_arg_advance): Use it.
- (output_movsisf, ashlsi3_out, ashrsi3_out, lshrsi3_out):
- Output "movw" if available.
- (out_tsthi, out_tstsi, ashlqi3_out, lshrqi3_out): Change uses
- of TEST_HARD_REG_CLASS macro to test_hard_reg_class function.
- (asm_output_section_name): Add blanks for consistent output.
- (encode_section_info): Set TREE_READONLY for progmem data to
- avoid gas warnings about changed section attributes.
- (avr_hard_regno_mode_ok): Force non-QImode data to start in
- even numbered registers on devices with "movw".
- * config/avr/avr.h (MASK_*): Define bits for target_flags.
- (TARGET_SWITCHES): Mark help strings for translation.
- Add new -mpack-args and -menhanced switches.
- (TARGET_OPTIONS): Mark help strings for translation.
- (progmem_section): Add section attributes.
- * config/avr/avr.md (*movhi, call_insn, call_value_insn):
- Output "movw" if available.
- (mulqi3, mulqihi3, umulqihi3, mulhi3, *tablejump_enh):
- New patterns.
- * config/avr/libgcc.S (_mulqi3, _divqi3): Update to the new
- call convention (arguments aligned on even registers).
- (_cleanup, _exit): Make weak symbols libc can override.
-
-2000-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fp-bit.h: New file.
-
- * fp-bit.c: Move common code, prototypes, etc into fp-bit.h.
- Comment #endif statements.
- (__thenan_sf, __thenan_df): Add missing braces around initializer.
-
-Mon Jul 3 00:32:47 2000 Jeffrey A Law (law@cygnus.com)
-
- * gcse.c (compute_pre_data): Compute ae_kill using other local
- properties instead of calling compute_ae_kill.
-
- * alias.c (init_alias_analysis): Do not call
- prologue_epilogue_contains until after reload has completed.
-
-2000-07-02 Benjamin Chelf <chelf@codesourcery.com>
-
- * c-common.h (genrtl_begin_compound_stmt): Remove declaration.
- (genrtl_finish_compound_stmt): Likewise.
- (genrtl_compound_stmt): Change to return void.
-
- * c-semantics.c (genrtl_begin_compound_stmt): Remove function and
- move code from here to ...
- (genrtl_compound_stmt): ... here.
- (genrtl_finish_compound_stmt): Remove.
- (expand_stmt): Add comment.
-
-2000-07-02 Zack Weinberg <zack@wolery.cumb.org>
-
- * c-typeck.c (build_indirect_ref): Use COMPLETE_OR_VOID_TYPE_P
- and VOID_TYPE_P.
-
-2000-07-02 Jakub Jelinek <jakub@redhat.com>
-
- * cpplib.h (struct cpp_reader): New field include_depth.
- (struct cpp_printer): Rename last_bsd to last_id.
- * cppfiles.c (read_include_file): Bump include_depth.
- * cpplex.c (cpp_pop_buffer): Decrement include_depth.
- (output_line_command): Output correct #line if a header
- is including itself and is not protected against multiple inclusion.
- Use include_depth instead of buffer_stack_depth, last_id instead of
- last_bsd.
- * cppinit.c (cpp_start_read): Initialize last_id instead of
- last_bsd.
-
-2000-07-01 Benjamin Chelf <chelf@codesourcery.com>
-
- * Makefile.in (C_AND_OBJC_OBJS): Added c-semantics.o.
- (c-semantics.o): New target.
-
- * c-common.h (TREE_LANG_FLAG_?): Added documentation.
- (genrtl_do_pushlevel): Moved from cp/cp-tree.h.
- (genrtl_clear_out_block): Likewise.
- (genrtl_goto_stmt): Likewise.
- (genrtl_expr_stmt): Likewise.
- (genrtl_decl_stmt): Likewise.
- (genrtl_if_stmt): Likewise.
- (genrtl_while_stmt): Likewise.
- (genrtl_do_stmt): Likewise.
- (genrtl_return_stmt): Likewise.
- (genrtl_for_stmt): Likewise.
- (genrtl_break_stmt): Likewise.
- (genrtl_continue_stmt): Likewise.
- (genrtl_scope_stmt): Likewise.
- (genrtl_switch_stmt): Likewise.
- (genrtl_case_label): Likewise.
- (genrtl_begin_compound_stmt): Likewise.
- (gerntl_finish_compound_stmt): Likewise.
- (genrtl_compound_stmt): Likewise.
- (genrtl_asm_stmt): Likewise.
- (genrtl_decl_cleanup): Likewise.
- (DECL_ANON_UNION_ELEMS): Likewise.
- (emit_local_var): Likewise.
- (make_rtl_for_local_static): Likewise.
- (expand_cond): Likewise.
- (expand_stmt): Likewise.
- (c_expand_return): Likewise.
- (c_expand_start_case): Likewise.
- (do_case): Likewise.
- (COMPOUND_STMT_NO_SCOPE): Likewise.
- (c_expand_asm_operands): Likewise.
- (NEW_FOR_SCOPE_P): New macro.
- (expand_expr_stmt_fn): New type.
-
- (set_current_function_name_declared): Likewise.
- (current_function_name_declared): Likewise.
- (lang_expand_stmt): Likewise.
- (stmts_are_full_exprs_p): Likewise.
- (anon_aggr_type_p): Likewise.
- (lang_expand_expr_stmt): Likewise.
- (build_case_label): Likewise.
-
- * c-decl.c (lang_expand_expr_stmt): Initialize.
- (stmts_are_full_exprs_p): Define.
- (current_function_name_declared): Likewise.
- (do_case): Likewise.
- (lang_expand_stmt): Likewise.
- (set_current_function_name_declared): Likewise.
- (anon_aggr_type_p): Likewise.
-
- * c-semantics.c: New file.
- (expand_cond): Moved from cp/semantics.c.
- (genrtl_do_pushlevel): Likewise.
- (genrtl_clear_out_block): Likewise.
- (genrtl_goto_stmt): Likewise.
- (genrtl_expr_stmt): Likewise.
- (genrtl_decl_stmt): Likewise.
- (genrtl_if_stmt): Likewise.
- (genrtl_while_stmt): Likewise.
- (genrtl_do_stmt): Likewise.
- (genrtl_return_stmt): Likewise.
- (genrtl_for_stmt): Likewise.
- (genrtl_break_stmt): Likewise.
- (genrtl_continue_stmt): Likewise.
- (genrtl_scope_stmt): Likewise.
- (genrtl_switch_stmt): Likewise.
- (genrtl_case_label): Likewise.
- (genrtl_begin_compound_stmt): Likewise.
- (genrtl_finish_compound_stmt): Likewise.
- (genrtl_compound_stmt): Likewise.
- (genrtl_asm_stmt): Likewise.
- (genrtl_decl_cleanup): Likewise.
- (make_rtl_for_local_static): Moved from cp/decl.c.
- (emit_local_var): Likewise.
- (expand_stmt): Define.
-
- * c-tree.h: (c_expand_asm_operands): Moved to c-common.h.
- (c_expand_return): Likewise.
- (c_expand_start_case): Likewise.
-
-2000-07-01 Richard Henderson <rth@cygnus.com>
-
- * config/ia64/ia64.c (symbolic_operand): Reject CONST expressions
- with the low 13 bits set.
- (move_operand): Check for CONST|SYMBOL_REF|LABEL_REF directly.
- * config/ia64/ia64.md (movdi): Likewise. Expand a CONST with one
- of the low 13 bits into a CONST plus an adddi3.
- (load_symptr): Set RTX_UNCHANGING_P.
-
-See ChangeLog.3 for earlier changes.
diff --git a/gcc/ChangeLog.5 b/gcc/ChangeLog.5
deleted file mode 100644
index c5f3b54200f..00000000000
--- a/gcc/ChangeLog.5
+++ /dev/null
@@ -1,14446 +0,0 @@
-2001-06-30 Zack Weinberg <zackw@stanford.edu>
-
- * rtl.def (DEFINE_INSN, DEFINE_INSN_AND_SPLIT, DEFINE_PEEPHOLE):
- Change output-template slot to format 'T'.
- * rtl.h (XTMPL): New.
- * read-rtl.c (read_escape): New function.
- (read_quoted_string, read_braced_string): Use it.
- (read_rtx): Set star_if_braced from the format string.
- Use XTMPL where appropriate.
- * genoutput.c (gen_insn, gen_peephole): Use XTMPL to get the
- template string.
-
- * rtl.c: Include errors.h for sake of rtl_check_failed* routines.
- Document 'T' in rtx format strings.
- * Makefile.in (rtl.o, $(HOST_PREFIX_1)rtl.o): Depend on errors.h.
- * errors.c (internal_error): Add missing ": " at end of string.
-
- * i860.md: Change triple backslashes to double backslashes at
- ends of lines in output templates.
- * ns32k.md: Remove stray backslash-newline in output template.
-
-2001-06-29 Nick Clifton <nickc@cambridge.redhat.com>
-
- * gcc.c (process_command): Append a DIR_SEPARATOR to a path
- specified by the -B switch, if doing so would create a valid
- directory name.
- * doc/invoke.texi: Document changed behavior of -B.
-
-2001-06-29 DJ Delorie <dj@redhat.com>
-
- * simplify-rtx.c (simplify_subreg): When simplifying a CONCAT, at
- least get rid of the CONCAT if we can't simplify further.
-
-Fri Jun 29 12:27:24 2001 Jeffrey A Law (law@cygnus.com)
-
- * simplify-rtx.c (simplify_rtx): Use swap_commutative_operands_p.
-
- * doc/gcc.texi (Passes): Update due to recent -fdce -> -fssa-dce
- changes. Fix documentation for SSA DCE pass.
-
- * ssa-dce.c (ssa_eliminate_dead_code): Renamed from
- eliminate_date_code.
- * ssa.h (ssa_eliminate_dead_code): Corresponding changes.
- * timevar.def (TV_SSA_DCE): Renamed from TV_DEAD_CODE_ELIM.
- * toplev.c (DFI_ssa_dce): Renamed from DFI_dce.
- (dump_file_info): Similar changes.
- (flag_ssa_dce): Similarly
- (f_options): Similar changes.
- (rest_of_compilation): Corresponding changes.
- * doc/invoke.texi: Update as option is now -fssa-dce instead
- of -fdce. Update dump file name.
-
- * ssa-dce.c (note_inherently_necessary_set): New function.
- (find_inherently_necessary): Use it. Do not consider
- NOTEs, CODE_LABELs or BARRIERS are necessary. Improve
- handling of asms and unspecs.
- (delete_insn_bb): Only delete INSNs, CALL_INSNs or JUMP_INSNs.
-
-2001-06-29 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * target.h (struct gcc_target): Add comp_type_attributes and
- set_default_type_attributes.
- * target-def.h (TARGET_COMP_TYPE_ATTRIBUTES,
- TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Define.
- (TARGET_INITIALIZER): Update.
- * doc/tm.texi (COMP_TYPE_ATTRIBUTES, TARGET_COMP_TYPE_ATTRIBUTES,
- SET_DEFAULT_TYPE_ATTRIBUTES, TARGET_SET_DEFAULT_TYPE_ATTRIBUTES):
- Update documentation of old target macros to describe new target
- hooks.
- * tree.c (make_node): Use target.set_default_type_attributes.
- (default_comp_type_attributes,
- default_set_default_type_attributes): New functions.
- * tree.h (default_comp_type_attributes,
- default_set_default_type_attributes): Declare.
- * c-typeck.c (COMP_TYPE_ATTRIBUTES): Don't define.
- (comptypes): Use target.comp_type_attributes.
- * config/arc/arc-protos.h, config/arc/arc.c, config/arc/arc.h
- (arc_comp_type_attributes, arc_set_default_type_attributes,
- COMP_TYPE_ATTRIBUTES, SET_DEFAULT_TYPE_ATTRIBUTES): Remove
- functions and macros with default behavior.
- * config/m32r/m32r-protos.h, config/m32r/m32r.c,
- config/m32r/m32r.h (m32r_comp_type_attributes,
- m32r_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
- SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
- * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c,
- config/m68hc11/m68hc11.h (m68hc11_comp_type_attributes,
- m68hc11_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
- SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
- * config/ns32k/ns32k-protos.h, config/ns32k/ns32k.c,
- config/ns32k/ns32k.h (ns32k_comp_type_attributes,
- COMP_TYPE_ATTRIBUTES): Likewise.
- * config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c,
- config/rs6000/rs6000.h (rs6000_comp_type_attributes,
- rs6000_set_default_type_attributes, COMP_TYPE_ATTRIBUTES,
- SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
- * config/d30v/d30v.h (COMP_TYPE_ATTRIBUTES,
- SET_DEFAULT_TYPE_ATTRIBUTES): Remove commented out macro
- definitions.
- * config/i386/i386.h (SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
- * config/ns32k/ns32k.h (SET_DEFAULT_TYPE_ATTRIBUTES): Likewise.
- * config/arm/arm.c (arm_comp_type_attributes,
- arm_set_default_type_attributes): Make static.
- (TARGET_COMP_TYPE_ATTRIBUTES, TARGET_SET_DEFAULT_TYPE_ATTRIBUTES):
- Define.
- * config/arm/arm.h (COMP_TYPE_ATTRIBUTES,
- SET_DEFAULT_TYPE_ATTRIBUTES): Don't define.
- * config/arm/arm-protos.h (arm_comp_type_attributes,
- arm_set_default_type_attributes): Don't declare.
- * config/i386/i386.c (ix86_comp_type_attributes): Make static.
- (TARGET_COMP_TYPE_ATTRIBUTES): Define.
- * config/i386/i386.h (COMP_TYPE_ATTRIBUTES): Don't define.
- * config/i386/i386-protos.h (ix86_comp_type_attributes): Don't
- declare.
-
-2001-06-28 Jan van Male <jan.vanmale@fenk.wau.nl>
-
- * predict.c (dump_prediction): Eliminate fprintf warning.
-
-2001-06-28 Diego Novillo <dnovillo@redhat.com>
-
- * flow.c (dump_bb): Remove unused third argument to call
- to fprintf when displaying the basic block header.
-
-2001-06-28 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
- Jeff Law <law@redhat.com>
-
- * Makefile.in (OBJS): Add df.o
- (df.o): Add dependencies.
- * basic-block.h (flow_depth_first_order_compute): Declare.
- * flow.c (flow_depth_first_order_compute): No longer declare.
- Make external.
- * df.c, df.h: New files.
-
-2001-06-28 Zack Weinberg <zackw@stanford.edu>
-
- * config/i386/i386.md: Global update to use new string syntax
- where it will improve readability. Warning fixes:
- (*truncdfsf2_2): Abort if which_alternative is not 0 or 1.
- (*adddi_1_rex64, *adddi_2_rex64, *adddi_3_rex64,
- *adddi_4_rex64, *adddi_5_rex64): Cast 1 to unsigned int.
-
- * read-rtl.c: Syntactic sugar for C embedded in strings in
- machine descriptions.
- (read_string): Break inner loop into separate function. Takes
- an int. Dispatch to read_quoted_string or read_braced_string
- as appropriate. Automatically insert a leading star on braced
- strings if STAR_IF_BRACED is true.
- (read_quoted_string, read_braced_string): New functions.
- * doc/rtl.texi, doc/md.texi: Document new syntax. Update
- examples to match.
-
- * rtl.c: Split RTL reader (read_rtx, read_skip_spaces,
- traverse_md_constants, fatal_with_file_and_line,
- fatal_expected_char, read_name, read_string, def_hash,
- def_name_eq_p, read_constants, and related data) to its own
- file. Weed out now-unnecessary #includes.
- * read-rtl.c: New file.
- * Makefile.in (HOST_RTL): Add read-rtl.o.
- (read-rtl.o): New rule.
- (rtl.o, $(HOST_PREFIX_1)rtl.o): Update dependencies.
- * doc/gcc.texi (Passes): Talk briefly about the support
- library used by genfoo.
- * doc/rtl.texi (Reading RTL): read_rtx is not available in the
- compiler itself.
-
-2001-06-28 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (REGISTER_TARGET_PRAGMAS): Define.
- * config/darwin-c.c: New file.
- * config/darwin-protos.h: Declare new functions.
- * config/rs6000/t-darwin (darwin-c.o): New rule.
- * config.gcc (powerpc-*-darwin*): Define c_target_objs and
- cxx_target_objs.
- * doc/extend.texi (Pragmas): New section.
-
-Thu Jun 28 20:13:11 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * flow.c (try_merge_block): Rename to try_optimize_cfg;
- do basic simplifications on the CFG.
- (is_forwarder_block_p, can_fallthru, try_redirect_by_replacing_jump,
- try_simplify_condjump): New.
- (redirect_edge_and_branch): Try replace jump insn.
- (flow_delete_insn): Handle deleting of ADDR_VEC insns.
-
- * basic-block.h (FALLTHRU_EDGE, BRANCH_EDGE): New macros.
-
-Thu Jun 28 11:19:42 2001 Jeffrey A Law (law@cygnus.com)
-
- * ssa-dce.c (eliminate_dead_code): Properly handle control
- dependencies implied by PHI nodes.
-
- * ssa-dce.c (eliminate_dead_code): Remove fake edges from the
- CFG after dead code elimination is complete.
-
-2001-06-28 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * gthr-posix.h [LIBOBJC]: Add weak definitions of
- sched_get_priority_max, sched_get_priority_min.
-
-2001-06-28 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.c (default_print_error_function): Tweak.
- (report_error_function): Likewise.
- * toplev.h (default_print_error_function): Move to...
- * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
- * tree.h (print_error_function): Move to...
- * diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
-
-Thu Jun 28 06:16:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_assignment): When have varying-length object,
- make MEM a BLKmode.
- (expand_expr, case ADDR_EXPR): Use SAVE_EXPR_RTL after putting
- SAVE_EXPR stack in case we had a SUBREG.
-
-Thu Jun 28 10:31:06 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (cmp?i): Simplify; refuse immediate operand
- in alternative 0
- * i386.c (cmpsi_operand): Refuse constants.
-
- * i386.md (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
-
- * flow.c (block_label, redirect_edge_and_branch): Split out from ....
- (split_edge) .... here;
-
-2001-06-28 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * i386/i386.c (ix86_valid_type_attribute_p): Give external
- linkage, move declaration to...
- * i386/i386-protos.h: ...here.
-
-2001-06-27 H.J. Lu (hjl@gnu.org)
-
- * build-make (CC): Removed.
- (HOST_CC): Set to $(CC_FOR_BUILD).
- (HOST_CFLAGS): Replace $(CFLAGS) with $(CFLAGS_FOR_BUILD).
- Fix a typo in comments.
-
- * configure.in: Set CFLAGS to $(CFLAGS_FOR_BUILD) when
- generating auto-build.h for canadian cross compile. Set CC
- to `"${CC_FOR_BUILD}"' instead of just `${CC_FOR_BUILD}'.
- Save/restore CFLAGS.
- * configure: Regenerated.
-
-2001-06-27 Jim Wilson <wilson@redhat.com>
-
- * emit-rtl.c (gen_highpart): Call validize_mem.
-
-2001-06-27 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def(hpux11_cpp_pow_inline): new, but real similar to
- hpux10_cpp_pow_inline. Not similar enough.
- (solaris_mutex_init): renamed. PTHREAD_*_INITIALIZER is a problem for
- all Solaris versions. This fix patches MUTEX and COND initializers,
- the RWLOCK one will wait for someone to complain. For now, anyway.
- (uw7_byteorder_fix): It was looking for the byteorder.h file in the
- wrong directory.
-
-2001-06-27 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (handle_impent): Rewrite to be more portable
- and to use ASM_DECLARE_CLASS_REFERENCE.
- * config/darwin.h (ASM_DECLARE_CLASS_REFERENCE): Rename from
- undocumented DECLARE_CLASS_REFERENCE, add file argument.
- * doc/tm.texi (ASM_DECLARE_CLASS_REFERENCE): Document.
-
-Wed Jun 27 18:01:09 2001 Jeffrey A Law (law@cygnus.com)
-
- * simplify-rtx.c (simplify_rtx): Canonicalize commutative expressions
- by putting complex operands first and constants second.
-
-2001-06-27 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h: Add documentation. Make macros polymorphic.
- * diagnostic.c (ideal_line_wrap_cutoff): Remove
- definition. Replace with diagnostic_line_cutoff.
- (prefixing_policy): Remove. Replace with diagnostic_prefixing_rule.
-
-2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi, doc/contrib.texi, doc/cpp.texi,
- doc/cppinternals.texi, doc/extend.texi, doc/gcc.texi,
- doc/gcov.texi, doc/install-old.texi, doc/install.texi,
- doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Replace
- . at end of sentences preceded by a capital letter with @..
-
-2001-06-26 Daniel Berlin <dan@cgsoftware.com>
-
- * doc/invoke.texi: Add description of max-gcse-passes param.
-
- * gcse.c (gcse_main): Use MAX_GCSE_PASSES instead of MAX_PASSES.
- (MAX_PASSES): Remove now unneeded macro.
-
- * params.h (MAX_GCSE_PASSES): New macro, to get parameter value of
- max-gcse-passes param.
-
- * params.def (PARAM_MAX_GCSE_PASSES): New parameter, controlling
- maximum number of GCSE passes to run. Defaults to 1 (which is what
- MAX_PASSES in gcse.c used to be).
-
-2001-06-27 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * system.h (TARGET_ESC): Move to ...
- * defaults.h (TARGET_ESC): ... here.
- * target-def.h (TARGET_VALID_DECL_ATTRIBUTE,
- TARGET_VALID_TYPE_ATTRIBUTE): Default to a no-op handler.
- * tree.c (default_valid_attribute_p): New.
- (valid_machine_attribute): Handlers can not be NULL.
- * tree.h (default_valid_attribute_p): New.
- * doc/tm.texi: Document TARGET_ESC.
- * cp/decl2.c (import_export_class): Update.
-
-2001-06-26 Bruce Korb <bkorb@gnu.org>
-
- * gcc/fixinc/fixincl.c(initialize): In very strict ANSI, you cannot
- use preprocessing directives inside a string literal. Fixed.
-
-2001-06-26 Jim Wilson <wilson@redhat.com>
-
- * doc/tm.texi (MAX_LONG_DOUBLE_TYPE_SIZE, INTEL_EXTENDED_IEEE_FORMAT):
- Document.
-
-2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/cpp.texi, doc/cppinternals.texi, doc/extend.texi,
- doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
- doc/tm.texi: Use @: where necessary when a full stop does not end
- a sentence.
-
-2001-06-27 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcc.texi, doc/install.texi, doc/invoke.texi: Remove trailing
- whitespace.
-
-2001-06-26 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi, doc/cpp.texi, doc/extend.texi, doc/gcc.texi,
- doc/install.texi, doc/invoke.texi, doc/objc.texi, doc/rtl.texi,
- doc/tm.texi: Use two spaces after ends of sentences.
-
-2001-06-26 Daniel Berlin <dan@cgsoftware.com>
-
- * toplev.c (display_help): Fix param thinko.
- * Makefile.in: Fix params.h dependencies.
-
-2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * toplev.c (decode_f_option): Adjust setting.
- (toplev_main): Call diagnostic_initialize. Remove call to
- reshape_diagnostic_buffer._
-
- * diagnostic.h (struct output_buffer): Add new field format_decoder.
- (diagnostic_format_decoder): New macro.
- (diagnostic_prefixing_rule): Likewise.
- (diagnostic_line_cutoff): Likewise.
- (set_message_prefixing_rule): Remove.
-
- * diagnostic.c (lang_printer): Remove.
- (diagnostic_message_length_per_line): Likewise.
- (current_prefixing_rule): Likewise.
- (initialize_diagnostics): Rename to...
- (diagnostic_initialize): ...this. Tweak.
- (default_initialize_buffer): Remove.
- (reshape_diagnostic_buffer): Likewise.
- (init_output_buffer): Adjust prefixing rule setting.
- (output_format): Use format_decoder from the output_buffer.
-
- * c-lang.c (c_init): Adjust tree formatter setting.
-
-2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/i386/sol2.h (CPP_SPEC): Pass -P for .S files.
-
-2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * Makefile.in (TARGET_H, TARGET_DEF_H): New.
- (c-decl.o, tree.o, c-typeck.o, $(out_object_file)): Update.
- * c-decl.c (duplicate_decls): Use function pointer.
- * c-typeck.c (common_type): Similarly.
- * tree.c (valid_machine_attribute): Similarly.
- (merge_machine_type_attributes): Rename merge_type_attributes.
- (merge_machine_decl_attributes): Rename merge_decl_attributes.
- (merge_dllimport_decl_attributes): New function.
- * tree.h (merge_machine_type_attributes): Rename merge_type_attributes.
- (merge_machine_decl_attributes): Rename merge_decl_attributes.
- (merge_dllimport_decl_attributes): New prototype.
- * target.h: New.
- * target-def.h: New.
-
-doc: (Joseph Myers)
- * doc/gcc.texi, doc/tm.texi: Update documentation.
-
-cp: Make-lang.in: Update dependencies.
- * spew.c: Include target.h.
- (duplicate_decls): Call target function.
- * decl2.c: include target.h
- (import_export_class): Use existence of target function pointer.
- * typeck.c: Include target.h.
- (qualify_type_recursive): Rename variable. Call target function.
- (type_after_usual_arithmetic_conversions): Similarly.
- (common_type): Similarly.
-
-config: * 1750a/1750a.c, a29k/29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
- avr/avr.c, c4x/c4x.c, clipper/clipper.c, convex/convex.c,
- d30v/d30v.c, dsp16xx/dsp16xx.c, elxsi/elxsi.c, fr30/fr30.c,
- i370/i370.c, i386/i386.c, i860/i860.c, i960/i960.c, ia64/ia64.c,
- m32r/m32r.c, m68hc11/m68hc11.c, m68k/m68k.c, m88k/m88k.c,
- mips/mips.c, mn10200/mn10200.c, mn10300/mn10300.c, ns32k/ns32k.c,
- pa/pa.c, pdp11/pdp11.c, pj/pj.c, romp/romp.c, rs6000/rs6000.c,
- sh/sh.c, sparc/sparc.c, v850/v850.c, vax/vax.c, we32k/we32k.c)
- : Include target.h and target-def.h. Define target.
-
- * arc/arc-protos.h (arc_valid_machine_decl_attribute): Remove.
- * arc/arc.c (arc_valid_machine_decl_attribute): Rename
- arc_valid_decl_attribute, make static.
- * arc/arc.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * arm/arm-protos.h (arm_valid_machine_decl_attribute,
- arm_valid_type_attribute_p, arm_pe_valid_machine_decl_attribute,
- arm_pe_merge_machine_decl_attributes): Remove.
- * arm/arm.c (arm_valid_machine_decl_attribute_p): Rename
- arm_valid_decl_attribute_p, make static.
- (arm_pe_valid_decl_attribute_p): Move from pe.c.
- * arm/pe.c (arm_pe_valid_machine_decl_attribute_p): Move to arm.c.
- (arm_pe_merge_machine_decl_attributes): Move to tree.c.
- * arm/arm.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * arm/coff.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- * arm/elf.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- * arm/pe.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): New.
- (VALID_MACHINE_TYPE_ATTRIBUTE, VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- * avr/avr-protos.h (valid_machine_type_attribute,
- valid_machine_decl_attribute): Remove.
- * avr/avr.c (valid_machine_type_attribute,
- valid_machine_decl_attribute): Rename and make static.
- * avr/avr.h (VALID_MACHINE_TYPE_ATTRIBUTE,
- VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- * c4x/c4x-protos.h (c4x_valid_type_attribute_p): Remove.
- * c4x/c4x.c (c4x_valid_type_attribute_p): Make static.
- * c4x/c4x.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * d30v/d30v.h: Remove obsolete comments.
- * h8300/h8300-protos.h (h8300_valid_machine_decl_attribute): Remove.
- * h8300/h8300.c (h8300_valid_machine_decl_attribute): Rename, make
- static.
- * h8300/h8300.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- * i386/cygwin.h (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
- (i386_pe_merge_decl_attributes, MERGE_MACHINE_DECL_ATTRIBUTES,
- i386_pe_valid_type_attributes_p): Remove.
- * i386/i386-protos.h (ix86_valid_decl_attribute_p,
- ix86_valid_type_attribute_p): Remove.
- * i386/i386.c (ix86_valid_decl_attribute_p): Remove.
- (ix86_valid_type_attribute_p): Make static.
- * i386/i386.h (VALID_MACHINE_DECL_ATTRIBUTE,
- VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * i386/winnt.c (i386_pe_merge_decl_attributes): Move to tree.c.
- * ia64/ia64-protos.h (ia64_valid_type_attribute): Remove.
- * ia64/ia64.c (ia64_valid_type_attribute): Make static.
- * ia64/ia64.h (VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * m32r/m32r-protos.h (m32r_valid_machine_decl_attribute): Remove.
- * m32r/m32r.c (m32r_valid_decl_attribute): Make static.
- * m32r/m32r.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- * m68hc11/m68hc11-protos.h (m68hc11_valid_decl_attribute_p,
- m68hc11_valid_type_attribute_p): Remove.
- * m68hc11/m68hc11.c (m68hc11_valid_decl_attribute_p): Remove.
- (m68hc11_valid_type_attribute_p): Make static.
- * m68hc11/m68hc11.h (VALID_MACHINE_DECL_ATTRIBUTE,
- VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * mcore/mcore-protos.h (mcore_valid_machine_decl_attribute,
- mcore_merge_machine_decl_attribute): Remove.
- * mcore/mcore.c (mcore_valid_machine_decl_attribute): Rename,
- make static.
- (mcore_merge_machine_decl_attributes): Move to tree.c.
- * mcore/mcore.h (VALID_MACHINE_DECL_ATTRIBUTE,
- VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- (TARGET_DLLIMPORT_DECL_ATTRIBUTES): Define.
- * ns32k/ns32k-protos.h (ns32k_valid_decl_attribute_p,
- ns32k_valid_type_attribute_p): Remove.
- * ns32k/ns32k.c (ns32k_valid_decl_attribute_p): Remove.
- (ns32k_valid_type_attribute_p): Make static.
- * ns32k/ns32k.h (VALID_MACHINE_DECL_ATTRIBUTE,
- VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * rs6000/rs6000-protos.h (rs6000_valid_decl_attribute_p,
- rs6000_valid_type_attribute_p): Remove.
- * rs6000/rs6000.c (rs6000_valid_decl_attribute_p): Remove.
- (rs6000_valid_type_attribute_p): Make static.
- * rs6000/rs6000.h (VALID_MACHINE_DECL_ATTRIBUTE,
- VALID_MACHINE_TYPE_ATTRIBUTE): Remove.
- * sh/sh-protos.h (sh_valid_machine_decl_attribute): Remove.
- * sh/sh.c (sh_valid_machine_decl_attribute): Rename, make static.
- * sh/sh.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
- * v850/v850-protos.h (v850_valid_machine_decl_attribute): Remove.
- * v850/v850.c (v850_valid_machine_decl_attribute): Rename, make static.
- * v850/v850.h (VALID_MACHINE_DECL_ATTRIBUTE): Remove.
-
-2001-06-26 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
-
- * glimits.h (USHRT_MAX): Use unsigned suffix if int can not hold
- it.
-
-2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h (struct diagnostic_context): Add new field.
- (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
- declaratons.
- (global_dc): Declare.
- * diagnostic.c (global_diagnostic_context): New variable.
- (global_output_buffer): Remove.
- (global_dc): Define.
- (lang_diagnostic_starter, lang_diagnostic_finalizer): Remove
- definitions.
- (initialize_diagnostics): Adjust initialization.
- (set_diagnostic_context): Adjust setting.
-
-2001-06-26 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris5.h (UNALIGNED_INT_ASM_OP,
- UNALIGNED_SHORT_ASM_OP): Define.
- * config/mips/iris6.h (UNALIGNED_INT_ASM_OP,
- UNALIGNED_SHORT_ASM_OP): Undef.
-
-Tue Jun 26 12:40:12 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (float_truncate splitter, and to mov splitters): Add
- reload_completed; fix operand predicate.
-
- * haifa-sched.c (sched_init): Do not split insns.
- * toplev.c (rest_of_compilation): Call split_all_insns before
- sched1 pass; simplify condition of post-reload splitter;
- call split_all_insn before sched2 pass.
-
-2001-06-26 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h (diagnostic_prefixing_rule_t): New enum type.
- (set_message_prefixing_rule): Adjust prototype.
- * diagnostic.c (current_prefixing_rule): Adjust type.
-
-2001-06-26 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * defaults.h: Default escape sequences to ASCII.
- * config/i370/i370.h: Adjust for ASCII default.
- * config/1750a/1750a.h: Remove escape sequence definitions.
- * config/a29k/a29k.h: Similarly.
- * config/alpha/alpha.h: Similarly.
- * config/arc/arc.h: Similarly.
- * config/arm/arm.h: Similarly.
- * config/avr/avr.h: Similarly.
- * config/c4x/c4x.h: Similarly.
- * config/clipper/clipper.h: Similarly.
- * config/convex/convex.h: Similarly.
- * config/d30v/d30v.h: Similarly.
- * config/dsp16xx/dsp16xx.h: Similarly.
- * config/elxsi/elxsi.h: Similarly.
- * config/fr30/fr30.h: Similarly.
- * config/h8300/h8300.h: Similarly.
- * config/i386/i386.h: Similarly.
- * config/i860/i860.h: Similarly.
- * config/i960/i960.h: Similarly.
- * config/ia64/ia64.h: Similarly.
- * config/m32r/m32r.h: Similarly.
- * config/m68hc11/m68hc11.h: Similarly.
- * config/m68k/m68k.h: Similarly.
- * config/m88k/m88k.h: Similarly.
- * config/mcore/mcore.h: Similarly.
- * config/mips/mips.h: Similarly.
- * config/mn10200/mn10200.h: Similarly.
- * config/mn10300/mn10300.h: Similarly.
- * config/ns32k/ns32k.h: Similarly.
- * config/pa/pa.h: Similarly.
- * config/pdp11/pdp11.h: Similarly.
- * config/pj/pj.h: Similarly.
- * config/romp/romp.h: Similarly.
- * config/rs6000/rs6000.h: Similarly.
- * config/sh/sh.h: Similarly.
- * config/sparc/sparc.h: Similarly.
- * config/v850/v850.h: Similarly.
- * config/vax/vax.h: Similarly.
- * config/we32k/we32k.h: Similarly.
- * doc/tm.texi: Update documentation.
-
-2001-06-26 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
-
- * diagnostic.c (digit_buffer): Remove as global. Move to...
- * diagnostic.h (struct output_buffer): ... here.
- * diagnostic.c (output_formatted_integer): Adjust use of digit_buffer.
-
-2001-06-25 Steve Ellcey <sje@cup.hp.com>
-
- * config.gcc (ia64*-*-hpux*): Add ia64/hpux_longdouble.h to tm_file.
- Define tmake_file to include ia64/t-hpux.
- * real.c (INTEL_EXTENDED_IEEE_FORMAT): Test for value instead of
- testing to see if it is defined.
- * real.h (INTEL_EXTENDED_IEEE_FORMAT): Likewise. Default to 0 if
- undefined.
- * config/ia64/hpux_longdouble.h: New.
- * config/ia64/ia64.c (hfa_element_mode): Add comment about incorrect
- handling of long doubles.
- (ia64_function_arg, ia64_function_value): Add checks for TFmode
- and INTEL_EXTENDED_IEEE_FORMAT.
- * config/ia64/ia64.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
- (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, LIBCALL_VALUE): Add checks for
- TFmode and INTEL_EXTENDED_IEEE_FORMAT.
- * config/ia64/ia64.md (all TFmode patterns): Test
- INTEL_EXTENDED_IEEE_FORMAT in condition.
- (floatdidf2, floatdisf2): New, for !INTEL_EXTENDED_IEEE_FORMAT.
- * config/ia64/quadlib.c: New.
- * config/ia64/t-hpux: New.
- * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Define to one.
-
-2001-06-25 Jim Wilson <wilson@redhat.com>
-
- * config/i960/t-960bare (i960-c.o): Add missing header dependencies.
- * config/i960/t-vxworks960: Likewise.
-
-2001-06-25 Dale Johannesen <dalej@apple.com>
-
- * bitmap.c (bitmap_last_bit_set): Fix a non-c89 usage (null actual
- argument to macro).
-
-Mon Jun 25 11:10:51 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movsi_insv_1, movsi_insv_1_rex64): Fix constraints.
-
-2001-06-25 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
- doc/gcc.texi, doc/gcov.texi, doc/install.texi, doc/invoke.texi,
- doc/md.texi, doc/rtl.texi, doc/tm.texi: Be more consistent about
- the use of "GCC" and related terms.
- * doc/gcc.1, doc/gcov.1: Regenerate.
-
-2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/extend.texi, doc/gcc.texi, doc/install-old.texi,
- doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Remove
- uses of @refill.
-
-Sun Jun 24 21:21:49 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * (movsi_insv_1, movsi_insv_1_rex64): Allow immediate operand.
-
-2001-06-24 Richard Henderson <rth@redhat.com>
-
- * builtins.c (expand_builtin_expect_jump): Disable if the
- expression can't be re-evaluated.
-
-2001-06-24 Nick Clifton <nickc@cambridge.redhat.com>
-
- * config/arm/arm.c (arm_compute_save_reg_mask): For FIQ interrupt
- handlers examine register r0-r7, for other interrupt handlers
- examine r0-r12. If the interrupt handler is not a leaf function
- save all call clobbered registers.
- (arm_output_epilogue): If the prologue has pushed the IP register,
- restore it here.
- (Arm_expand_prologue): For interrupt functions that need the frame
- pointer, push the IP register before it is corrupted.
-
- * config/arm/arm.h (ARM_SIGN_EXTEND): Fix compile time warnings
- about the use of signed and unsigned quantities in a conditional.
-
-2001-06-23 Richard Henderson <rth@redhat.com>
-
- * config/alpha/crtfastmath.c: New file.
- * config/alpha/t-crtfm: New file.
- * config/alpha/elf.h (ENDFILE_SPEC): Use crtfastmath.o.
- * config/alpha/osf.h (ENDFILE_SPEC): Likewise.
- * config/alpha/t-crtbe (EXTRA_PARTS): Add pieces defined here.
- * config.gcc (alpha-{linux,freebsd,netbsd,osf}): Use alpha/t-crtfm;
- do not set extra_parts here.
-
-2001-06-24 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install-old.texi: Remove more documentation of configure
- options.
- * doc/install.texi: Add it here.
-
-Sat Jun 23 19:40:05 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386-protos.h (emit_i387_cw_initialization): Declare.
- * i386.md (movsi_insv_1): Remove '*'.
- (fix_trunc?f?i2): Revamp to use control word parameters.
- (fix_trunc?i_1): Likewise; update splitters.
- (fix splitter): Remove.
- * i386.c (MAX_386_STACK_LOCALS): set to 3.
- (emit_i387_cw_initialization): New function.
- (output_fix_trunc): Do not initialize control word;
- kill dead code; simplify.
-
-2001-06-23 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * cppmacro.c (make_string_token): Avoid warning.
- (cpp_macro_definition): Prepend the macro name. Update
- comments.
- * cppmain.c (cb_define, dump_macro): Update for changes
- to cpp_macro_definition.
-
-Sat Jun 23 10:20:03 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * flow.c (attempt_auto_inc, try_pre_increment_1): Fix typo.
-
-Sat Jun 23 01:23:59 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * flow.c (mark_set_1, attempt_auto_inc, mark_used_reg,
- try_pre_increment_1): compute REG_FREQ using bb->frequency.
-
- * regclass.c (loop_cost): Kill.
- (frequency): New global variable.
- (record_operand_costs): Replace loop_cost by frequency.
- (scan_one_insn): Likewise.
- (regclass): Likewise; set frequency according to bb->frequency.
-
- * flow.c (split_edge): Set frequency.
-
-Sat Jun 23 01:16:42 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.c (block_info_def): Add nvisited.
- (propagate_freq): Count nvisited; re-queue delayed blocks; handle
- irreducible regions.
-
- * flow.c (dump_edge_info): Dump the probability of edge.
- (combine_predictions_for_insn): Dump the basic block.
-
-2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcc.texi: Update documentation of source files of C
- compiler.
-
-2001-06-22 Richard Henderson <rth@redhat.com>
-
- * doc/invoke.texi (-funsafe-math-optimizations): Document its
- possible effects at link time.
-
-2001-06-22 Diego Novillo <dnovillo@redhat.com>
-
- * basic-block.h (dump_edge_info): Declare.
- (clear_edges): Declare.
- (mark_critical_edges): Declare.
- * flow.c (dump_edge_info): Remove static declaration.
- (clear_edges): Ditto.
- (mark_critical_edges): Ditto.
- (free_basic_block_vars): Only clear edges and free basic block
- array if basic_block_info is not NULL.
- * ssa.c (compute_dominance_frontiers): Remove static declaration.
- * ssa.h (compute_dominance_frontiers): Declare.
-
-2001-06-22 Toshiyasu Morita (toshiyasu.morita@hsa.hitachi.com)
-
- * predict.c: (expected_value_to_br_prob): Check for const_true_rtx
- instead of const1_rtx for true case.
-
-2001-06-22 David Mosberger <davidm@hpl.hp.com>
-
- * config/ia64/crtfastmath.c: New file.
- * config/ia64/t-ia64 (EXTRA_PARTS): Include it.
- * config/ia64/linux.h (ENDFILE_SPEC): New.
-
-2001-06-22 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
-
- * config/h8300/h8300.c (asm_file_start): Remove reference to
- "release F-1".
-
-2001-06-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (verify_tree): Check for x being NULL.
- * doc/c-tree.texi: Document COMPOUND_BODY of an empty
- COMPOUND_STMT.
- Fixes PR c/3259.
-
-2001-06-22 DJ Delorie <dj@redhat.com>
-
- * config/arm/arm.h (struct machine_function): Remove ra_rtx.
- * config/arm/arm.c (arm_mark_machine_status): Remove ra_rtx.
- (arm_return_addr): Use get_hard_reg_initial_val et al.
- * config/d30v/d30v.h (struct machine_function): Remove ra_rtx.
- * config/d30v/d30v.c (d30v_mark_machine_status): Remove ra_rtx.
- (d30v_return_addr): Use get_hard_reg_initial_val et al.
- * config/rs6000/rs6000.h (struct machine_function): Remove ra_rtx.
- * config/rs6000/rs6000.c (rs6000_override_options): Don't set
- mark_machine_status.
- (rs6000_mark_machine_status): Remove.
- (rs6000_return_addr): Use get_hard_reg_initial_val.
- (rs6000_ra_ever_killed): Use has_hard_reg_initial_val.
- * config/v850/v850.h (INIT_EXPANDERS): Delete.
- * config/v850/v850.c (struct machine_function): Delete.
- (v850_init_machine_status): Delete.
- (v850_mark_machine_status): Delete.
- (v850_free_machine_status): Delete.
- (v850_return_addr): Use get_hard_reg_initial_val.
- (v850_init_expanders): Delete.
-
-Fri Jun 22 19:20:59 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.c (estimate_bb_frequencies): Do not handle conditional
- jumps jumping to fallthru basic block as conditional jumps.
-
-Fri Jun 22 19:11:28 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * regs.h (struct reg_info_def): Add freq field.
- (REG_N_REFS): Update comment.
- (REG_FREQ): New.
- * regclass.c (scan_one_insn): Update REG_FREQ.
- * flow.c (mark_set_1): Update REG_FREQ, make REG_N_SETS unweighted.
- (attempt_auto_inc): Likewise.
- (mark_used_reg): Likewise.
- (try_pre_increment_1): Likewise.
- * local-alloc.c (struct qty): Add freq field.
- (alloc_qty): Set freq.
- (update_equiv_regs): Set REG_FREQ.
- (QTY_CMP_PRI): Use freq.
- (combine_regs): Update qty->freq.
- * global.c (struct allocno): Update comment for n_refs;
- add freq field.
- (local_reg_freq): New array.
- (global_alloc): Update freq field;
- allocate and initialize local_reg_freq.
- (allocno_compare): Use freq field.
- (find_reg): Likewise.
- * reload1.c (count_pseudo): Use freq isntead of n_refs.
- (count_spilled_pseudo): Likewise.
-
- * tm.texi (GCOV_TYPE_SIZE): Document.
- * basic-block.h (gcov_type): Define.
- (struct edge_def): Use gcov_type for count field.
- (struct basic_block_def): Likewise.
- * defaults.h (GCOV_TYPE_SIZE): Define.
- * final.c (end_final): Use GCOV_TYPE_SIZE.
- * flow.c (dump_edge_info, dump_flow_info, dump_bb): Print count fields
- using HOST_WIDEST_INT_PRINT_DEC.
- * gcov-io.h (__fetch_gcov_type, __store_gcov_type, __read_gcov_type,
- __write_gcov_type): New.
- (store_long): Remove.
- * gcov.c (gcov_type): Set default.
- (struct adj_list): Use gcov_type for arc_count.
- (bb_info): Use gcov_type for succ_count, pred_count and exec_count.
- (create_program_flow_graph): Read arc_count properly.
- (solve_program_flow_graph): 'total' is gcov_type.
- (output_data): Line_counts is gcov_type, print it properly.
- * libgcc2.c (struct bb): Counts is gcov_type.
- (__bb_exit_func): Use __read_gcov_type and __write_gcov_type.
- * profile.c (LONG_TYPE_SIZE, LONG_LONG_TYPE_SIZE): Set default.
- (GCOV_TYPE_SIZE): Define.
- (struct bb_info): succ_count and pred_count is gcov_type.
- (compute_branch_probabilities): Use __read_gcov_type,
- print read edges to the dump file.
- (total): Is gcov_type.
- (gen_edge_profiler): Use GCOV_TYPE_SIZE.
-
-2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
-
- * optabs.c (emit_libcall_block): When using non-call exceptions,
- don't mark libcalls never throwing.
-
-2001-06-21 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (hash_init): Use xcalloc.
-
-2001-06-21 Richard Henderson <rth@redhat.com>
-
- * flow.c (entry_exit_blocks): Initialize frequency.
- (split_block): Copy it.
- (dump_flow_info): Dump it.
-
-Thu Jun 21 22:15:10 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * sh.c (barrier_align): Also recognize branch-around-a-jump-sequence
- from machine-depedent_reorg for purposes of alignment supression
- when no delay slot insn has been added.
-
-2001-06-21 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * cppmacro.c (make_string_token): Null terminate.
-
-2001-06-21 DJ Delorie <dj@redhat.com>
-
- * config/alpha/alpha.h (struct machine_function): Remove.
- * config/alpha/alpha.c (integrate.h): Include.
- (override_options): Don't set up machine_status hooks.
- (alpha_init_machine_status): Remove.
- (alpha_mark_machine_status): Remove.
- (alpha_free_machine_status): Remove.
- (alpha_return_addr): Use get_hard_reg_initial_val.
- (alpha_gp_save_rtx): Likewise.
- (alpha_ra_ever_killed): Use has_hard_reg_initial_val.
-
-2001-06-20 Aldy Hernandez <aldyh@redhat.com>
-
- * config/sh/sh.md (interrupt_function): Use
- current_function_interrupt.
- (define_delay): Schedule in delay slot if TARGET_SH3, even if it is
- an interrupt function.
-
- * config/sh/sh.h (current_function_interrupt): Define extern.
-
- * config/sh/sh.c (current_function_interrupt): New global.
- (sh_expand_prologue): Set current_function_interrupt.
-
-2001-06-21 Phil Edwards <pme@sources.redhat.com>
-
- * doc/install.texi: Add 'c' to list of --enable-languages choices.
-
-2001-06-21 DJ Delorie <dj@redhat.com>
-
- * integrate.c (mark_hard_reg_initial_vals): Check for NULL.
-
- * integrate.c (ggc.h): Include.
- (initial_value_pair, initial_value_struct,
- setup_initial_hard_reg_value_integration): Add prototypes.
- (expand_inline_function): Call
- setup_initial_hard_reg_value_integration.
- (has_func_hard_reg_initial_val, get_func_hard_reg_initial_val,
- get_hard_reg_initial_val, has_hard_reg_initial_val): New functions
- to keep track of values present at the start of a function.
- (mark_hard_reg_initial_vals): New, for gc.
- (setup_initial_hard_reg_value_integration): New. Sets up pseudo
- mappings for initial values.
- (emit_initial_value_sets): New. Emits code to set initial value
- pseudos.
- * integrate.h: Add prototypes for new functions.
- * function.h (struct function): Add hard_reg_initial_vals field.
- * function.c (integrate.h): Include.
- (mark_function_status): Call
- mark_hard_reg_initial_vals.
- * toplev.c (integrate.h): Include.
- (rest_of_compilation): Call emit_initial_value_sets.
-
-2001-06-21 Stan Shebs <shebs@apple.com>
-
- * doc/contrib.texi, doc/cpp.texi, doc/cppinternals.texi,
- doc/extend.texi, doc/gcc.texi, doc/install.texi, doc/invoke.texi,
- doc/objc.texi, doc/tm.texi: Use the correct name "Objective-C"
- everywhere instead of "Objective C".
-
-2001-06-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
- doc/gcc.texi, doc/install-old.texi, doc/install.texi,
- doc/invoke.texi, doc/rtl.texi: Consistently use "front end" and
- "back end" as nouns and "front-end" and "back-end" as adjectives.
-
-Wed Jun 20 21:53:35 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.c (estimate_probability): Fix loop bounds.
-
-Wed Jun 20 19:10:48 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Run mark_constant_function
- before profile-arcs.
-
-Wed Jun 20 19:08:18 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.c (estimate_loops_at_level, propagate_freq
- estimate_bb_frequencies, count_to_freqs): New functions.
- (estimate_probability): Call estimate_bb_frequencies.
- * basic-block.h (basic_block_def): Add field "freq".
- (BB_FREQ_MAX): New constant.
-
-Wed Jun 20 17:02:50 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * sh.c (barrier_align): Don't ask for alignment when seeing a
- branch-around-a-jump from machine_dependent_reorg.
-
-Wed Jun 20 08:35:02 2001 Jeffrey A Law (law@cygnus.com)
-
- * ssa.c (rename_block): Update parameter to remove_phi_alternative
- (convert_from_ssa): Do create REG_DEAD and REG_UNUSED notes when
- re-running life analysis.
-
-2001-06-20 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (hash_init): Assume xmalloc always succeeds,
- also use memset to clear the hash tables.
- (hash_enter): Assume xmalloc always succeeds.
- (hash_add_attr): Ditto.
- (continue_class): Ditto.
-
-2001-06-20 Michael Meissner <meissner@redhat.com>
-
- * builtins.c (predict.h): Include.
- (expand_builtin_expect): Update comment.
- (expand_builtin_expect_jump): New function to expand
- __builtin_expect inside of a conditional jump expansion.
-
- * expr.c (do_jump): Special case __builtin_expect (<test>, 0) and
- __builtin_expect (<test>, 1).
-
- * Makefile.in (builtins.o): Depend on $(PREDICT_H).
-
- * rtl.h (expand_builtin_expect_jump): Add prototype.
-
-2001-06-19 Geoffrey Keating <geoffk@redhat.com>
-
- * doc/rtl.texi (Machine Modes): Correct description of
- floating-point modes on machines with non-8-bit bytes.
-
-2001-06-19 Bernd Schmidt <bernds@redhat.com>
-
- * regmove.c (optimize_reg_copy_3): Do nothing if previous insn
- carries a REG_EQUIV note. If it carries REG_EQUAL, delete the
- note.
-
-Tue Jun 19 07:53:52 2001 Jeffrey A Law (law@cygnus.com)
-
- * ssa.c (remove_phi_alternative): Remove declaration. No longer
- static. Second argument is a pointer to a basic block structure,
- not a basic block index.
- (convert_to_ssa): Do not remove dead code.
- (convert_from_ssa): Do not remove dead code to create death notes.
- * ssa.h (remove_phi_alternative): Declare.
-
- * flow.c (delete_unreachable_blocks): Fix patch error in
- previous change (call to find_unreachable_blocks was lost).
-
- * ssa.c (ssa_uses): Remove definition.
- (apply_delayed_renames): Don't grow ssa_uses.
- (rename_block): Remove comment related to ssa_uses.
- (rename_registers): Do not initialize ssa_uses.
- (convert_from_ssa): Do not free ssa_uses.
-
- * ssa-dce.c: Renamed from dce.c.
- * Makefile.in (OBJS): Replace dce.o with ssa-dce.o
- (dependencies): Replace dce.c with ssa-dce.c and dce.o with
- ssa-dce.o.
-
-2001-06-19 Eric Christopher <echristo@redhat.com>
-
- * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode
- and DFmode are UNITS_PER_WORD and 2*UNITS_PER_WORD. Use
- GET_MODE_BITSIZE instead of GET_MODE_SIZE/UNITS_PER_WORD.
-
-Tue Jun 19 01:52:27 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * sh.c (output_branch): Delete bogus code.
-
- * sh.c (initial_elimination_offset):
- Fix FROM == RETURN_ADDRESS_POINTER_REGNUM case.
-
-Mon Jun 18 12:50:49 2001 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (find_unreachable_blocks): New function.
- (delete_unreachable_blocks): Use find_unreachable_blocks.
- * basic-block.h (find_unreachable_blocks): Declare.
-
- * dce.c (eliminate_dead_code): Fix formatting glitch.
-
-2001-06-18 Jason Merrill <jason_merrill@redhat.com>
-
- * c-common.h (RETURN_NULLIFIED_P): New macro.
- * c-semantics.c (genrtl_return_stmt): Check it.
-
- * expr.c (clear_storage): Set TREE_NOTHROW on the decl for memset.
- (emit_block_move): Likewise.
-
-Mon Jun 18 17:27:24 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * unroll.c: Include predict.h.
- (unroll_loop): Drop prediction notes on preconditioning.
- * predict.def (PRED_LOOP_PRECONDITIONG, PRED_LOOP_CONDITION):
- New; add comments on the others.
- * Makefile.in: (unroll.o): Add dependency on predict.h.
- * loop.c (strength_reduce): Fix branch prediction.
-
-Mon Jun 18 17:26:56 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * stmt.c (emit_case_nodes): Optimize test whether index is in given
- interval.
-
-Mon Jun 18 15:43:10 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.c (estimate_probability): Do not bail out early
- when note is present.
- (combine_predictions_for_insn): Fix note removal code.
-
-2001-06-18 Ben Elliston <bje@redhat.com>
-
- * except.c (resolve_fixup_regions): Initialize "cleanup".
-
-2001-06-17 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * tm.texi: Document STDC_0_IN_SYSTEM_HEADERS.
-
-Sat Jun 16 20:20:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case ADDR_EXPR): If taking address of SAVE_EXPR,
- use put_var_into_stack.
-
-2001-06-16 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * gccspec.c (lang_specific_driver): If compiling ObjC, add
- -shared-libgcc when necessary.
- * Makefile.in (gccspec.o): Compile with DRIVER_DEFINES.
-
-2001-06-16 Daniel Berlin <dan@cgsoftware.com>
-
- * bitmap.h: Add dump_bitmap, bitmap_zero, bitmap_union_of_diffs,
- bitmap_a_or_b, bitmap_a_and_b, bitmap_first_set_bit,
- bitmap_last_set_bit. All for compatibility with sbitmap's.
-
- *bitmap.c (bitmap_zero): New function.
- (bitmap_union_of_diffs): New function.
- (bitmap_first_set_bit): New function.
- (bitmap_last_set_bit): New function.
-
-2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi, invoke.texi: Update.
- * cpp.1, gcc.1: Regenerate.
-
-Sat Jun 16 12:45:20 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (minsf): Fix splitter. (PR fortran/3191)
-
-2001-06-16 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * doc/cpp.texi: Update.
- * doc/cpp.1: Regenerate.
-
-2001-06-15 Loren J. Rittle <ljrittle@acm.org>
-
- * doc/install.texi: Use correct markup hints.
-
-Fri Jun 15 18:05:22 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * function.c (gen_mem_addressof): Handle case where DECL is SAVE_EXPR.
-
- * explow.c (expr_size): If DECL and size specified, use it.
-
-2001-06-15 Zack Weinberg <zackw@stanford.edu>
-
- * doc/cpp.texi: Formatting corrections.
- Correct buggy example of use of __GNUC__ etc.
- Clarify $ in identifiers.
- * doc/cpp.1: Regenerate.
-
-Fri Jun 15 19:35:38 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * optabs.c (expand_twoval_binop): Avoid undefined behavior.
-
-2001-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * doc/install.texi (Specific, alpha*-*-*): Fixed Tru64 UNIX
- etc. spelling.
- (Specific, alpha-*-osf1): Renamed to alpha*-*-osf*.
- Added Tru64 UNIX V5.1 bootstrap hints.
- (Specific, alpha*-*-osf*): Removed old section, obsolete.
-
-2001-06-15 Andreas Jaeger <aj@suse.de>
-
- * doc/install.texi (Specific): Mention that glibc cannot be
- compiled with GCC 3.0.
-
-2001-06-14 Andrew Haley <aph@cambridge.redhat.com>
-
- * combine.c (nonzero_bits): Don't optimize away division by
- zero.
-
-2001-06-15 Zack Weinberg <zackw@stanford.edu>
-
- * doc/cpp.texi: Revised and brought up to date.
- * doc/cpp.1: Regenerate.
-
-2001-06-15 Loren J. Rittle <ljrittle@acm.org>
-
- * doc/install.texi: Update --enable-threads to match reality.
-
-2001-06-15 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * doc/install.texi: Update for C4x.
- * README.C4X: Remove.
-
-2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
- doc/gcc.texi, doc/install.texi, doc/invoke.texi, doc/md.texi,
- doc/objc.texi, doc/rtl.texi, doc/tm.texi: Fix spelling and typos.
- Consistently use "built-in" and "bit-field". Minor logical markup
- improvements.
- * doc/gcc.1: Regenerate.
-
-2001-06-14 Richard Henderson <rth@redhat.com>
-
- * config/mips/mips.md (exception_receiver): New.
-
-2001-06-14 Daniel J. Berlin <dan@cgsoftware.com>
-
- * doc/gcc.texi: Update passes documentation to be more in tune
- with reality.
-
-Thu Jun 14 15:38:28 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_prologue): Fix merging conflict.
-
-2001-06-14 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi, doc/contrib.texi, doc/extend.texi,
- doc/gcc.texi, doc/gcov.texi, doc/install-old.texi,
- doc/invoke.texi, doc/md.texi, doc/rtl.texi, doc/tm.texi: Use more
- logical markup. Use TeX quotes and dashes. Use @dots{} and
- @minus{}. Avoid spaces inside @var. Update last modification
- date in gcc.texi.
- * doc/gcc.1, doc/gcov.1: Regenerate.
-
-Thu Jun 14 12:44:15 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_accumulate_outgoing_args, x86_prologue_using_move,
- x86_epilogue_using_move): New global variables.
- (override_options): Enable ACCUMULATE_OUTGOING_ARGS if preferred.
- (ix86_emit_save_regs_using_mov): New static function.
- (ix86_expand_prologue, ix86_expand_epilogue): Use moves if preferred.
- * i386.h (MASK_MMX, MASK_SSE, MASK_SSE2, MASK_128BIT_LONG_DOUBLE,
- MASK_MIX_SSE_I387): Renumber.
- (MASK_NO_ACCUMULATE_OUTGOING_ARGS): New.
- (x86_accumulate_outgoing_args, x86_prologue_using_move,
- x86_epilogue_using_move): Declare.
- (TARGET_PROLOGUE_USING_MOVE, TARGET_EPILOGUE_USING_MOVE): New.
-
-2001-06-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * inclhack.def (hpux10_cpp_pow_inline): New hack.
-
-2001-06-13 Richard Henderson <rth@redhat.com>
-
- * ifcvt.c (dead_or_predicable): Fix return value last patch.
-
-2001-06-13 Mark Mitchell <mark@codesourcery.com>
-
- * NEWS: Remove.
-
-2001-06-13 Richard Henderson <rth@redhat.com>
-
- * ifcvt.c (cond_exec_get_condition): Use reversed_comparison_code.
- (cond_exec_process_if_block, dead_or_predicable): Likewise.
-
-2001-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * mips-tfile.c (copy_object): Always pass indexNil for symbol
- table index.
-
-2001-06-13 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.h (OK_FOR_T): Remove.
- (EXTRA_CONSTRAINT): Do not use OK_FOR_T.
- * config/h8300/h8300.md: Remove alternatives involving inc and dec
- in the helper patterns for addhi3 and addsi3.
-
-2001-06-13 Phil Edwards <pme@sources.redhat.com>
-
- * doc/contrib.texi: Link to libstdc++'s thanks.html for now.
-
-2001-06-13 Zack Weinberg <zackw@stanford.edu>
-
- * Makefile.in: Move _bb and __gcc_bcmp to LIB2FUNCS_ST.
- * libgcc-std.ver: Take out __bb* and __gcc_bcmp.
-
- * config/t-slibgcc-elf-ver, config/t-slibgcc-sld,
- config/alpha/t-osf4, config/mips/t-iris6: Extract all
- references to @shlib_map_file@, @shlib_objs@, or
- @shlib_base_name@ to Makefile variables.
- Bump soname version of libgcc to 1.
-
-2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install.texi: Use more logical markup. Include @node
- commands in the source when generating any non-HTML.
-
-2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * README: Remove. Some of the contents moved to ../README.
-
-2001-06-13 Alexandre Oliva <aoliva@redhat.com>
-
- * doc/install.texi (--enable-shared): List package names
- recognized by GCC.
-
-2001-06-13 Alexandre Oliva <aoliva@redhat.com>
-
- * doc/install.texi (ix86-*-solaris*): Removed, outdated.
- (*-*-solaris*): Document problem in /bin/sh that affects
- configuring libraries.
- (sparc-*-solaris*): Recommend GNU binutils 2.11.1 or vendor tools.
- (*-sun-solaris2.8): Document linker problem that explains why
- libjava is disabled by default.
-
-2001-06-09 Mark Mitchell <mark@codesourcery.com>
-
- Revert this patch:
- * toplev.c (rest_of_compilation): Remove dead code before
- purge_addressof.
-
-2001-06-12 Alexandre Oliva <aoliva@redhat.com>
-
- Reverted:
- 2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
- * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
- * configure: Rebuilt.
-
-2001-06-12 Jim Wilson <wilson@redhat.com>
-
- * loop.c (strength_reduce): Move bl->all_reduced set before
- check_ext_dependant_givs call.
- (check_ext_dependant_givs): Clear bl->all_reduced when ignoring givs.
-
-2001-06-12 Alexandre Oliva <aoliva@redhat.com>
-
- * doc/extend.texi (Function Attributes): Document SH's sp_switch
- and trap_exit.
-
-2001-06-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/invoke.texi: Use more logical markup. Use TeX quotes,
- dashes and @dots{}.
-
-2001-06-12 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_expand_prologue): Always use
- gen_pro_epilogue_adjust_stack; update arguments.
- (ix86_expand_epilogue): Likewise.
- (ix86_emit_epilogue_esp_adjustment): Remove.
- (ix86_adjust_cost): Remove pro_epilogue_adjust_stack hack.
- * config/i386/i386.md (pro_epilogue_adjust_stack): Use a BLKmode
- clobber of scratch memory instead of a modification of EBP as the
- barrier. Update all peepholes to match.
-
-2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcc.texi: Change the font used for @def... commands to a
- fixed width font.
- * doc/extend.texi: Use more logical markup. Use "built-in"
- instead of "builtin". Use @deftypefn to mark up built-in
- functions; specify their types in the @deftypefn and not in the
- descriptive text. Use TeX quotes and dashes. Add more index
- entries.
-
-2001-06-12 lars brinkhoff <lars@nocrew.org>
-
- * gcc.texi (HOST_BITS_PER_LONGLONG): Document.
- (DIR_SEPARATOR_2): Likewise.
-
-2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install.texi (--exec-prefix, --bindir, --libdir,
- --with-slibdir, --infodir, --mandir, --with-cpp-install-dir):
- Document.
- (--enable-cpp): Change to document --disable-cpp instead; update
- to reflect current default.
- (--without-fast-fixincludes): Remove documentation.
- (Final install): Document installation directories in more
- detail. Document use of make dvi.
-
-Tue Jun 12 19:01:43 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * recog.c (validate_replace_rtx_1): Fix previous patch.
-
-Tue Jun 12 17:25:39 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * recog.c (validate_replace_rtx_1): Do plus_constant call always.
-
-Tue Jun 12 17:24:07 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_subreg): Allow volatile memory
- to be subregged in case we don't have move instruction.
-
-Tue Jun 12 12:20:12 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * loop.c: Include predict.h
- (strength_reduce): Drop branch prediction note in case
- number of iterations is known.
- * predict.def (PRED_LOOP_ITERATIONS): new.
- * Makefile.in (loop.o): Add dependency on predict.h
-
-2001-06-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-decl.c (grokdeclarator): Use INTEGRAL_TYPE_P.
-
- * c-typeck.c (c_start_case): Likewise.
-
-2001-06-12 Mark Mitchell <mark@codesourcery.com>
-
- * expr.c (store_field): Don't set MEM_ALIAS_SET for a field
- in a structure at a variable address.
-
-2001-06-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcov.texi: Use more logical markup.
-
-2001-06-11 Mark Mitchell <mark@codesourcery.com>
-
- * unroll.c (initial_reg_note_copy): Use PUT_REG_NOTE_KIND and
- REG_NOTE_KIND, not PUT_MODE and GET_MODE.
- (final_reg_note_copy): Remove REG_WAS_0 notes that are no longer
- valid.
-
-2001-06-11 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (ASM_FILE_END): Remove decl of language_string.
-
-2001-06-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md ("*lshrdi3_const32"): Mark the clobber
- as an early clobber to make sure it is not used by reload in
- one of the operands.
-
-2001-06-11 Mark Mitchell <mark@codesourcery.com>
-
- * doc/c-tree.texi: Update information about flag_honor_std.
- * doc/install.texi: Note that binutils is required on HPUX 11.
- * doc/invoke.texi (-fhonor-std): Note that -fno-honor-std is
- now the default.
-
- * config/mips/abi64.h (RETURN_IN_MEMORY): Fix handling of
- variable-sized types.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/md.texi: Use TeX dashes and quotes.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/rtl.texi: Reference manual chapter about trees.
-
-2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris6.h (NO_BUILTIN_WINT_TYPE): Define.
- (WINT_TYPE): Override.
- (WINT_TYPE_SIZE): Likewise.
- (SUBTARGET_CPP_SIZE_SPEC): Define __WINT_TYPE__ as appropriate.
-
- * config/sparc/sol2.h (WINT_TYPE): Define.
- (WINT_TYPE_SIZE): Likewise.
-
- * config/sparc/sol2-sld-64.h (NO_BUILTIN_WINT_TYPE): Define.
- (WINT_TYPE): Override.
- (WINT_TYPE_SIZE): Likewise.
- (CPP_ARCH32_SPEC): Add __WINT_TYPE__ definition.
- (CPP_ARCH64_SPEC): Likewise.
-
-2001-06-11 Richard Henderson <rth@redhat.com>
-
- * unwind-dw2-fde.c (__deregister_frame_info): Don't play games
- with alias attribute.
-
- * config/linux.h (CPLUSPLUS_CPP_SPEC): Use %(cpp) not $(cpp_cpu).
- * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): Likewise.
-
-2001-06-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * config/rs6000/linux.h (CPLUSPLUS_CPP_SPEC): New.
-
-2001-06-11 Stan Shebs <shebs@apple.com>
-
- * config/darwin.c (darwin_encode_section_info): Rewrite to simplify
- and fix coding mistakes.
-
-2001-06-11 Nick Clifton <nickc@cambridge.redhat.com>
-
- * config/m32r/m32r.md (movstrsi_internal): Do not expect a
- return string from m32r_output_block_move.
- * config/m32r/m32r-protos.h: Make m32r_output_block_move a
- void function.
- * config/m32r/m32r.h (INT32_P): Rename to UNIT32_P and remove
- integer overflow.
- (ROUND_ADVANCE): Remove signed/unsigned conflict.
- * config/m32r/m32r.c: Declare prototypes for static functions.
- (move_src_operand): Replace INT32_P with UINT32_P.
- (function_arg_partial_nregs): Fixed signed/unsigned conflict
- in initialisation of 'size'.
- (m32r_sched_reord): Remove redundant declarations of 'code'.
- (m32r_output_block_move): Change to a void function.
- (m32r_encode_section_info): Cast return of
- TREE_STRING_POINTER to avoid compile time warning.
-
-2001-06-11 Richard Henderson <rth@redhat.com>
-
- * config/alpha/osf5.h (TARGET_LD_BUGGY_LDGP): New.
- * config/alpha/alpha.h (TARGET_LD_BUGGY_LDGP): Default.
- (struct machine_function): Add gp_save_rtx.
- * config/alpha/alpha.c (alpha_mark_machine_status): Mark it.
- (alpha_gp_save_rtx): New.
- * config/alpha/alpha-protos.h: Declare it.
- * config/alpha/alpha.md (exception_receiver): Make an expander.
- Use alpha_gp_save_rtx if TARGET_LD_BUGGY_LDGP.
-
-2001-06-11 Richard Henderson <rth@redhat.com>
-
- * config/alpha/osf.h (LINK_SPEC): Hide _GLOBAL_* symbols.
-
-2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * configure.in: Align --help messages.
- Remove trailing full stops.
- Consistently use lower case.
- Fix DWARF 2 spelling.
- * configure: Rebuilt.
-
-2001-06-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/alpha/alpha.h (CPP_SPEC): Don't define __LANGUAGE_C and
- variants for .cpp/.cp/.c++ files.
- Move definition of __LANGUAGE_C_PLUS_PLUS ...
- (CPLUSPLUS_CPP_SPEC): ... here.
-
-Mon Jun 11 15:47:45 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * jump.c (duplicate_loop_exit_test): Fix loop header heuristics.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (store_parm_decls): When comparing types in an
- old-style function declaration with those from a previous
- prototype, compare the unqualified versions of parameter types.
- Fixes PR c/3116.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/objc.texi: Use more logical markup. Use TeX dashes.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi: Use more logical markup.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (xref_tag): Don't return previous tags of wrong type.
-
-2001-06-11 Aldy Hernandez <aldyh@redhat.com>
-
- * loop.c (scan_loop): Do not combine asm statements.
-
-2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * simplify-rtx.c (simplify_subreg): Fix offset calculation
- for complex values within a CONCAT.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install.texi: Update details of what components are included
- in the GCC distribution. Update default directory for g++
- includes. Update documentation relating to old libio. Adjust
- documentation on DejaGnu environment variables. Remove
- documentation of --enable-cpplib.
-
-2001-06-11 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/contrib.texi: Fix alphabetical order. Fix typos. Improve
- markup.
-
-2001-06-10 Richard Henderson <rth@redhat.com>
-
- * ifcvt.c (life_data_ok): New.
- (merge_if_block): Use it to determine whether to update
- global_live_at_end.
- (if_convert): Set it.
-
-2001-06-10 Richard Henderson <rth@redhat.com>
-
- * config/alpha/osf5.h (ASM_OLDAS_SPEC): Add -c.
-
-2001-06-10 Alexandre Oliva <aoliva@redhat.com>
-
- * doc/invoke.texi (MN10300 Options): Document -mno-crt0.
- (SH Options): Document -mieee.
- * doc/install.texi (Final install): Remove obsolete information
- about installing cross compilers.
- * doc/gcc.1: Rebuilt.
-
-2001-06-10 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (override_options): Set align_loops,
- align_jumps, and align_functions.
- * config/alpha/alpha.h (FUNCTION_BOUNDARY): Set to 32 bits.
- (LOOP_ALIGN, LABEL_ALIGN_AFTER_BARRIER): Remove.
-
-2001-06-11 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * emit-rtl.c (gen_lowpart_common): Do not assume that SFmode and DFmode
- are one and two words in size.
-
-2001-06-10 Richard Henderson <rth@redhat.com>
-
- * doc/invoke.texi (Optimization Options): Document -fpeephole2.
- (Code Generation Options): Document -fnon-call-exceptions.
-
-2001-06-10 Mark Kettenis <kettenis@gnu.org>
-
- * config/i386/gnu.h (MD_FALLBACK_FRAME_STATE_FOR): Undefine.
-
-2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * m68hc11.md (peepholes): Remove unused and wrong peepholes.
-
-2001-06-10 Mark Mitchell <mark@codesourcery.com>
- Gabriel Dos Reis <gdr@codesourcery.com>
-
- * Makefile.in (c-parse.o): Depend on diagnostic.h
- (dwarf2out.o): Likewise.
-
- * dwarf2out.c: #include diagnostic.h
-
- * toplev.h (warningcount, errorcount, sorrycount): Remove
- declarations.
-
- * toplev.c (warningcount, errorcount, sorrycount): Remove
- definitions.
-
- * diagnostic.h (struct output_buffer): Reorder fields.
- (diagnostic_kind_count): New macro.
- (errorcount, warningcount, sorrycount): Define as macros.
- (diagnostic_report_warnings_p): New macro.
- (output_state): Add diagnostic_count field.
-
- * diagnostic.c (warningcount, errorcount, inhibit_warnings):
- Remove tentative declaration.
- (count_error): Use diagnostic_report_warnings_p.
-
- * c-parse.in: #include diagnostic.h
-
-2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md ("extendhisi2"): Fix constraints to
- prefer a memory for operand 1.
- ("*addsi3"): Fix constraints, the '!' was too strong.
- ("*addsi3_split"): Accept soft register and split accordingly.
-
-2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
- Move definition in the RTX_CODE section.
-
-2001-06-10 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Define the return
- address as relative to the argument pointer.
-
-Sun Jun 10 10:58:53 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.def (PRED_OPCODE): Place before call and error_return.
-
-Sun Jun 10 10:00:17 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.def (PRED_CALL, PRED_ERROR_RETURN): New.
- * predict.c (estimate_probability): Calculate dominance
- information; improve detection of NORETURN heuristics;
- add call/error_return heuiristics; tweak comparison heuristics
- to recognize -1.
-
-2001-06-09 Alexandre Oliva <aoliva@redhat.com>
-
- * doc/invoke.texi (C Dialect Options): Document -aux-info.
- (Debugging Options): Document -print-multi-directory and
- -print-multi-lib.
- * doc/gcc.1: Rebuilt.
-
- * toplev.c (independent_decode_option): Require `=' between
- `-aux-info' and filename in the same argument.
- * gcc.c: Don't pass -aux-info=filename twice.
-
-2001-06-09 Mark Mitchell <mark@codesourcery.com>
-
- * expr.c (expand_expr, case ARRAY_REF): Do not replace
- an array element with the known initializing value if it has
- side-effects.
-
- * toplev.c (rest_of_compilation): Remove dead code before
- purge_addressof.
-
-2001-06-09 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (print_help): Document -fpreprocessed.
- * invoke.texi: Similarly.
-
-Sun Jun 10 00:35:37 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.def: New file.
- * predict.h: New file.
- * predict.c: Include predict.h.
- (predictor_info): New structure and array.
- (predict_edge, predict_insn): Rewrite; make global.
- (predict_edge_def, predict_insn_def): New global functions.
- (dump_prediction, combine_predictions_for_insns): New
- static functions.
- (estimate_probability): Change calls to predict_edge
- to predict_edge_def and calls to predict_insn to predict_insn_def;
- combine probabilities.
- (expected_value_to_br_prob): Behave as predictor.
- * rtl.h (REG_BR_PRED): Update coment.
- (invert_br_probabilities): New.
- * jump.c: Include predict.h
- (duplicate_loop_exit_test): Drop branch prediction notes.
- (invert_jump): Use invert_br_probabilities.
- * Makefile.in: Add dependency on predict.h for jump and predict pass.
- * ifcvt.c (dead_or_predicable): Use invert_br_probabilities.
- * combine.c (distribute_notes): Handle BR_PRED.
-
-Sat Jun 9 23:29:41 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * predict.c (predict_insn, predict_edge): New static functions.
- (estimate_probability): Revamp to use new functions;
- fix loop header heruistics; add loop exist heruistics
-
-2001-06-09 Alexandre Oliva <aoliva@redhat.com>
-
- * config.gcc: Re-enable bi-arch sparc on Solaris 7 and above.
-
-2001-06-09 Peter Jakubek <pjak@snafu.de>
-
- * config/m68k/m68k.md (ashrdi_const): Fix right shift by 16.
-
-2001-06-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * vax.h (NOTICE_UPDATE_CC): Set CC_NO_OVERFLOW in cc_status.flags
- for integer operations that don't update C bit.
-
-2001-06-09 Nicola Pero <nicola@brainstorm.co.uk>
-
- * gthr-posix.h (__gthread_objc_init_thread_system): If
- pthread_key_create fails, it's not clear what the return value is.
- This obvious fix makes sure it always returns -1 if a problem
- occurs.
-
-2001-06-09 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcc.texi: Use @defcodeindex for the index of options. Add
- more index entries. Use more logical markup where appropriate.
- Use TeX quotes and dashes.
-
-2001-06-09 Benjamin Kosnik <bkoz@redhat.com>
-
- * unwind-pe.h: Conditionally qualify references to abort with
- std::.
-
-2001-06-09 Julian Foad <julian_foad@hotmail.com>
-
- * doc/invoke.texi: Remove superfluous text.
-
-2001-06-08 Richard Henderson <rth@redhat.com>
-
- * config/alpha/linux.h (CPLUSPLUS_CPP_SPEC): New.
- (LIB_SPEC): Mirror config/linux.h version.
-
-2001-06-08 Richard Henderson <rth@redhat.com>
-
- * except.c (get_exception_pointer, get_exception_filter): Take a
- struct function. Update all callers.
- * except.h (get_exception_pointer): Update declaration.
- * expr.c (expand_expr): Update get_exception_pointer call.
- * integrate.c (expand_inline_function): Remap the exception pointer
- from callee to caller.
-
-2001-06-08 Mark Mitchell <mark@codesourcery.com>
-
- * c-decl.c (grokdeclarator): Make the TREE_TYPE for declarations
- accurately reflect its cv-qualification.
- * c-typeck.c (type_lists_compatible_p): Ignore the top-levl
- cv-qualifiers on function types.
-
-2001-06-08 Mark Mitchell <mark@codesourcery.com>
-
- * basic-block.h: Improve comments.
- * except.c (expand_eh_region_end_allowed): Remove redundant call
- to do_pending_stack_adjust.
- * flow.c (life_analysis): Fix typo in comment.
- (calculate_global_regs_live): Add documentation.
- (mark_set_1): Likewise.
- (debug_regset): Likewise.
- * doc/rtl.texi (cond_exec): Document it.
-
-Fri Jun 8 21:52:51 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (CONST_COSTS): set cost of constants representable in
- immediate fields to 0.
-
-Fri Jun 8 21:34:54 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * function.c (diddle_return_value): Kill code to determine
- return value before expand_function_end.
- (expand_function_end): Delay call to clobber_return_register
- after fucntion return value is computed.
-
- Re-install temporary reverted patch:
- * toplev.c (rest_of_compilation): Call split_all_insns
- before reg-stack and shorten-branches. Do shorten-branches
- after reg-stack.
- * final.c (shorten_branches): Remove insn splitting code.
-
-2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcc.texi, doc/invoke.texi: Add index of command line
- options. Use @opindex to index them rather than other indexing
- commands. Use @var{...} instead of <...>. Avoid spaces in names
- inside @var. Don't use @kindex to index escape sequences in
- source code.
-
-2001-06-08 Jason Merrill <jason_merrill@redhat.com>
-
- * stmt.c (current_nesting_level): New fn.
- * tree.h: Declare it.
- * c-semantics.c (genrtl_compound_stmt): Use it.
-
- * dbxout.c (dbxout_symbol): Use DECL_RTL_SET_P.
-
-2001-06-08 Jakub Jelinek <jakub@redhat.com>
-
- * jump.c (mark_modified_reg): Allow jump threading if condition
- codes are represented by a hard register.
-
-2001-06-08 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/ia64.c (ia64_function_arg): Use [SDT]Fmode as gr_mode
- for complex floats passed to unprototyped functions.
-
-2001-06-08 Mark Mitchell <mark@codesourcery.com>
-
- * except.c (expand_eh_region_end_allowed): Call
- do_pending_stack_adjust as necessary.
-
-Fri Jun 8 14:16:33 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * function.c (clobber_return_register): Clobber the pseudo return
- register too.
-
- * sibcall.c (skip_unreturned_value): New function.
- (call_ends_block_p): Use it.
-
- * recog.c (split_insn): Break out from ...
- (split_all_insns): ... here; do not use basic block information
- when it is broken.
-
-Thu Jun 7 18:27:53 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_subreg): Fix verification of
- combined subreg.
-
-2001-06-08 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/mips.h (CPP_SPEC): Simplify .s/.S handling.
- Don't define _LANGUAGE_C and variants for .cpp/.cp/.c++ files.
- Move definition of _LANGUAGE_C_PLUS_PLUS ...
- (CPLUSPLUS_CPP_SPEC): ... here.
- Fixes PRs c++/3047, target/441.
-
-2001-06-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi2html (MAKEINFO): Keep value if set already.
-
-2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcc.texi: Add trailing slash to URL.
-
-2001-06-07 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (ENCODE_SECTION_INFO): Define.
- (REDO_SECTION_INFO_P): Ditto.
- (STRIP_NAME_ENCODING): Ditto.
- (ASM_DECLARE_OBJECT_NAME): Use ENCODE_SECTION_INFO.
- (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Ditto.
- (ASM_OUTPUT_LABELREF): Use STRIP_NAME_ENCODING.
- (GEN_LAZY_PTR_NAME_FOR_SYMBOL): Ditto.
- * config/darwin.c: No longer include c-tree.h.
- (machopic_classify_ident): Rewrite to use symbol encoding.
- (lookup_name_darwin): Remove.
- (machopic_non_lazy_ptr_name): Handle encoded symbols.
- (machopic_stub_name): Use STRIP_NAME_ENCODING.
- (machopic_validate_stub_or_non_lazy_ptr): Ditto.
- (machopic_finish): Ditto, remove test of decl.
- (update_non_lazy_ptrs): New function.
- (darwin_encode_section_info): New function.
- * config/darwin-protos.h: Declare it.
- * config/rs6000/rs6000.c (machopic_output_stub): Use
- STRIP_NAME_ENCODING.
-
-2001-06-07 Mark Mitchell <mark@codesourcery.com>
-
- * tree.h (DECL_SOURCE_FILE): Improve documentation.
- (DECL_SOURCE_LINE): Likewise.
-
-2001-06-07 Loren J. Rittle <ljrittle@acm.org>
-
- * config/alpha/elf.h (MAKE_DECL_ONE_ONLY): Copy definition
- from config/elfos.h.
-
-2001-06-07 Phil Edwards <pme@sources.redhat.com>
-
- * linux.h (CPLUSPLUS_CPP_SPEC): Move -D_GNU_SOURCE to here.
- * pa/pa-linux.h: Allow CPLUSPLUS_CPP_SPEC to remain.
-
-2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/contrib.texi: Add copyright notice.
-
-2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/md.texi: Use four digit years in copyright notice.
-
-2001-06-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * config.gcc: For $target_alias of athlon-*, set
- target_cpu_default2=5.
-
-Thu Jun 7 16:17:40 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * global.c (build_insn_chain): Allow ADDR_VEC or ADDR_DIF_VEC after
- end of last block if last real insn is a JUMP_INSN.
-
-2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * NEWS: Regenerate.
-
-2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * gthr-posix.h (__gthread_objc_thread_detach): Simply cast
- pthread_t to objc_thread_t.
- (__gthread_objc_thread_id): Likewise.
-
-2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * alpha/osf5.h (CPP_XFLOAT_SPEC): Override default definition.
- (ASM_OLDAS_SPEC): Likewise.
-
- * alpha/osf.h (CPP_XFLOAT_SPEC): Define.
- (CPP_SUBTARGET_SPEC): Use it.
- (ASM_OLDAS_SPEC): Define.
- (ASM_SPEC): Use it.
- (SUBTARGET_EXTRA_SPECS): Define, declare the new specs above.
-
-2001-06-07 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/alpha/alpha.c (alpha_va_arg): Handle TFmode, TCmode args,
- passed by reference.
-
-2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/tm.texi (TARGET_SWITCHES, TARGET_OPTIONS): Adjust markup.
- Document use of N_(...), and show it in examples. Note that
- documentation should be added to invoke.texi. Avoid an overfull
- hbox.
-
-Thu Jun 7 17:09:50 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Revert previous patch.
- * final.c (shorten_branches): Likewise.
-
-2001-06-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * pself.c, pself1.c, pself2.c, pself3.c, pself4.c, pself5.c:
- Remove.
-
-2001-06-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install-old.texi: Remove more obsolete documentation.
-
-Thu Jun 7 13:20:14 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * expr.c (copy_blkmode_from_reg): Fix operand_subword_force call.
-
-Thu Jun 7 12:12:58 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Call split_all_insns
- before reg-stack and shorten-branches. Do shorten-branches
- after reg-stack.
- * final.c (shorten_branches): Remove insn splitting code.
-
-2001-06-07 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.in (sparc*-*-*): Check assembler R_SPARC_UA32 support.
- * configure: Rebuilt.
-
-2001-06-07 Andreas Jaeger <aj@suse.de>
-
- * emit-rtl.c (operand_subword): Remove unused variable.
-
-Wed Jun 6 14:51:05 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (floatdi?f): Avoid usinf of SSE instructions
- if TARGET_64BIT is false.
- (floatdi?f_i386_only): New insn.
- (floatdi?f_i386): Disable for !TARGET_64BIT.
-
- * (min?f, max?f splitters): Handle case where
- operands are cross-matched.
-
- * i386.h (HI_REGISTER_NAMES): Remove redundant definition
- (MMX_REGISTER_NAMES): Kill.
- (PRINT_OPERAND): Fix comment.
- (PRINT_REG): Likewise.
- * i386.c (print_reg): Kill support for 'm' CODE; simplify.
- (print_operand): Update comment; kill 'm'.
-
- * i386.c (x86_branch_hints): New global variable
- (print_operand): Support outputting of branch prediction hints.
- * i386.md (conditional jump patterns): Add branch prediction hints
- to the template.
- * i386.h (x86_branch_hints): Declare
- (TARGET_BRANCH_PREDICTION_HINTS): New macro.
- (PRINT_OPERAND_FUNCT_VALID_P): New.
- * final.c (final_forward_branch_p): New function.
-
-2001-06-06 Richard Henderson <rth@redhat.com>
-
- * flow.c (mark_used_reg): Clean up looping over multiple hard
- registers. Do conditional life bits across multiple hard regs.
-
-2001-06-05 Jeffrey D. Oldham <oldham@codesourcery.com>
-
- * reload1.c (reload): Revert Schmidt's change so all USEs are not
- deleted during reload.
-
-2001-06-05 Mark Mitchell <mark@codesourcery.com>
-
- * c-semantics.c (genrtl_scope_stmt): Write out nested inline
- functions here, instead of ...
- * c-decl.c (c_expand_body): ... here.
-
-2001-06-05 David O'Brien <obrien@FreeBSD.org>
-
- * config.gcc, config/sparc/bsd.h: Do not directly include
- sparc/sparc.h. Instead do it via tm_file.
-
-2001-06-05 Richard Henderson <rth@redhat.com>
-
- * dwarf2.h (DW_EH_PE_aligned): New.
- * dwarf2asm.c (eh_data_format_name): Name it.
- (dw2_asm_output_encoded_addr_rtx): Align for it.
- * dwarf2out.c (output_call_frame_info): Handle it for personality
- routine and LSDA pointers.
-
- * unwind-pe.h (DW_EH_PE_aligned): New.
- (base_of_encoded_value): Handle it.
- (read_encoded_value_with_base): Likewise.
- * unwind-dw2-fde.c (base_from_object): Likewise.
- (get_cie_encoding): Likewise.
-
- * config/alpha/elf.h: Remove ecoff commentary.
- * config/alpha/osf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
-
-2001-06-05 David O'Brien <obrien@FreeBSD.org>
-
- * config.gcc, config/i386/bsd386.h: Do not directly include
- i386/386bsd.h. Instead do it via tm_file.
-
-2001-06-05 David O'Brien <obrien@FreeBSD.org>
-
- * elfos.h (USING_ELFOS_H): Identify the use of elfos.h in the same
- way svr4.h does.
-
-2001-06-05 Pascal Obry <obry@act-europe.fr>
-
- * configure.in: Quote $enable_win32_registry in case the value has
- spaces in it.
- * configure: Ditto.
-
-2001-06-05 Mark Mitchell <mark@codesourcery.com>
-
- * print-rtl.c (xspaces): Remove.
- (print_rtx): Use printf field-width, rather than xpsaces, to
- indent.
- * toplev.c (main): Disable sibling-call optimization if we are
- handling exceptions.
-
-2001-06-05 Bernd Schmidt <bernds@redhat.com>
-
- * reload1.c (reload): Delete all USEs generated during reload.
-
-2001-06-05 scott snyder <snyder@fnal.gov>
-
- * gccbug.in: Fix typo.
-
-2001-06-05 Andreas Jaeger <aj@suse.de>
-
- * builtins.def: Fix definition of __builtin_cosf, it uses float as
- parameter and return value.
-
-2001-06-04 Anthony Green <green@redhat.com>
-
- * config/sparc/elf.h (CPP_PREDEFINES): Don't assert cpu or
- machine. This is now done in sparc.h.
-
-2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
-
- Correct CVS resurrection of invoke.texi.
- * doc/invoke.texi: Document new tree dump flags.
-
-2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-typeck.c (build_c_cast): Use TYPE_MAIN_VARIANT when checking
- for casting an aggregate to its own type. Fixes PR c/2735.
-
-2001-06-05 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/texinfo.tex: Update to version 2001-05-24.08.
-
-2001-06-05 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-common.h (flag_dump_translation_unit): Remove.
- (enum tree_dump_index): Define.
- (TDF_ADDRESS, TDF_SLIM): New #defines.
- (dump_node_to_file): Remove.
- (dump_node): Make extern. Add flags.
- (dump_flag, dump_enabled_p, dump_begin, dump_end,
- dump_switch_p): Prototype.
- * c-common.c (flag_dump_translation_unit): Remove.
- * c-decl.c (c_decode_option): Remove -fdump-translation-unit
- logic. Use dump_switch_p.
- * c-dump.h (struct dump_info): Add node and user fields.
- (dump_pointer): Declare.
- * c-dump.c (dump_node): Make extern. Add flags.
- (SOL_COLUMN, EOL_COLUMN, COLUMN_ALIGNMENT): New #defines.
- (dump_new_line, dump_maybe_newline): Use them.
- (dump_pointer): New function.
- (dequeue_and_dump): Check TDF_SLIM before dumping a _DECL's
- chain or function's body. Dump address, if TDF_ADDRESS set.
- (dump_flag): Define.
- (dump_node_to_file): Remove.
- (struct dump_file_info): New struct.
- (dump_files): New array.
- (dump_begin, dump_end, dump_enabled_p, dump_switch_p): Define.
- * c-lang.c (finish_file): Adjust dumping.
- * toplev.h (dump_base_name): Make extern.
- * invoke.texi: Document new flags.
-
-2001-06-04 Mark Mitchell <mark@codesourcery.com>
-
- * c-tree.h (lang_decl): Add pending_sizes fields.
- * c-decl.c (store_parm_decls): Save pending_sizes away for nested
- functions.
- (c_expand_body): Expand them.
- (lang_mark_tree): Mark lang_decl:pending_sizes.
- * function.c (expand_pending_sizes): New function, broken out
- from ...
- (expand_function_start): ... here.
- * tree.h (expand_pending_sizes): Declare it.
-
-2001-06-04 Loren J. Rittle <ljrittle@acm.org>
-
- * doc/install.texi: Update FreeBSD information. Generalize
- and update information for alpha-based platforms using ELF.
-
-2001-06-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * c-decl.c (get_parm_info): Use INTEGRAL_TYPE_P.
- (store_parm_decls): Likewise.
- * c-typeck.c (convert_arguments): Likewise.
-
-2001-06-04 Richard Henderson <rth@redhat.com>
-
- * sibcall.c (optimize_sibling_and_tail_recursive_call): Suppress
- optimization if current_function_calls_setjmp.
-
-2001-06-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/c-tree.texi: Fix documentation of TREE_STRING_LENGTH for
- wide strings.
-
-Mon Jun 4 20:44:25 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_subreg): Fix combining of
- paradoxical subregs.
-
-Mon Jun 4 20:15:25 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * rtlanal.c (rtx_unsable_p): ADDRESSOF is stable.
- (no_labels_between_p): Short circuit case beg==end.
-
-Mon Jun 4 20:03:05 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * rtlanal.c (operand_preference): Fix preference for objects.
-
-Mon Jun 4 20:00:40 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (handle_avail_expr): Be prepared to handle single_set
- parallels.
-
-Mon Jun 4 19:59:46 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * combine.c (if_then_else_cond): Use simplify_subreg instead
- of operand_subword.
- * integreate.c (sub_constants): Likewise.
-
-Mon Jun 4 19:59:12 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * emit-rtl.c (constant_subword): Deprecate; remove most of code
- and use simplify_gen_subreg.
-
-Mon Jun 4 19:55:23 CEST 2001 Lars Brinkhoff <lars@nocrew.org>
-
- * sibcall.c (skip_copy_to_return_value): recognize the situation
- when the called function's return value is copied into an
- intermediate pseudo, and then into the calling functions return
- value register.
-
-Mon Jun 4 16:50:33 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify_rtx.c (simplify_subreg): Keep subregs on return values,
- check CLASS_CANNOT_CHANGE_MODE before avoiding subreg on hard reg,
- in case register wasn't OK previously, accept it now; allow
- subregs of frame pointer if reload completed and frame pointer
- is not needed.
-
- * combine.c (sombine_simplify_rtx): Fix comment;
- use subreg_lowpart_offset instead of subreg_lowpart_p
- (gen_lowpart_for_combine): Use subreg_lowpart_offset.
- * rtl.h (subreg_lowpart_parts_p): Kill.
- (subreg_lowpart_offset, subreg_highpart_offset): Declare.
- * simplify-rtx.c (simplify_subreg): Use subreg_lowpart_offset.
- * emit-rtl.c (gen_lowpart_SUBREG): Use subreg_lowpart_offset;
- (gen_lowpart_common): Likewise.
- (subreg_lowpart_p): Likewise.
- (subreg_lowpart_parts_p): Kill.
- (subreg_lowpart_offset, subreg_highpart_offset): New function.
-
- * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg
- to simplify SUBREG and REG.
- (gen_highpart): Use simplify_gen_subreg for all simplifications.
-
- * emit-rtl.c (gen_realpart, gen_imagpart): Do not handle
- CONCAT specially.
-
- * rtlanal.c (replace_regs): Use simplify_gen_subreg
-
-Mon Jun 4 09:21:19 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * doc/c-tree.texi (ARRAY_REF): Say what type of expression must be.
- (ARRAY_RANGE_REF): Added description.
-
- * tree.def (ARRAY_RANGE_REF): New code.
- * alias.c (handled_component_p, can_address_p): Handle it.
- * dwarf2out.c (loc_descriptor_from_tree): Likewise.
- * explow.c (set_mem_attributes): Likewise.
- * expr.c (expand_assignment, get_inner_reference): Likewise.
- (expand_expr, expand_expr_unaligned, do_jump): Likewise.
- * fold-const.c (operand_equal_p): Likewise.
- * tree.c (staticp, stabilize_reference): Likewise.
- * varasm.c (decode_addr_const): Likewise.
-
-Sun Jun 3 21:59:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * reload.c (reload_inner_reg_of_subreg): Return 1 for PLUS.
- (push_reload): Handle non-REG in reload_inner_reg_of_subreg case.
-
-2001-06-03 kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * gcc/config/sh/sh.c (print_operand_address, print_operand): Call
- mark_constant_pool_use before output_addr_const.
- (struct pool_node): New field wend.
- (add_constant): Note a sequence of constants that are referenced
- by a given label.
- (pool_window_label, pool_window_last): New variables.
- (dump_table): Emit a unspec_volatile representing the end of a
- sequence of constants.
- (mark_constant_pool_use): New function.
- * gcc/config/sh/sh.md (UNSPECV_WINDOW_END): New constant.
- (consttable_2): Add the second operand which flags whether
- this consttable entry was used or not.
- (consttable_4, consttable_8, consttable_sf, consttable_df):
- Likewise.
- (consttable_window_end): New insn.
-
-2001-06-03 Alexandre Oliva <aoliva@redhat.com>
-
- * insn-addr.h (INSN_ADDRESSES_NEW): Make insn_uid__ unsigned.
- Reformat according to coding standards.
-
- Warning removal.
- * config/sh/sh.c (print_operand_address): Cast INTVAL to int.
- (shl_and_kind): Cast wide constant.
- (gen_far_branch): Define as static, as in declaration.
- (barrier_align): Compute cache-line length as unsigned. Add
- parentheses in initial credit computation.
- (rounded_frame_size): Add parentheses.
- (permanent_obstack): Remove declaration. Include ggc.h for
- declaration of ggc_add_root_rtx().
- (get_free_reg): Removed declaration of unused variable reg.
- (legitimize_pic_address): Mark mode argument as unused.
-
-2001-06-03 Igor Shevlyakov <igor@windriver.com>
-
- * config/sh/sh.c (output_branch): Support for insn with lenght
- attr 12 & 16 which represents cond branches outside +-4096 range.
-
-2001-06-03 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/lib1funcs.asm (ic_invalidate): Align the
- cache-mirroring sequence. Add nops.
-
-2001-06-03 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install-old.texi: Remove more old installation
- documentation.
- * doc/install.texi: Add relevant parts here.
-
-2001-06-03 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi2html: New script.
-
-2001-06-03 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi: Update AIX information again.
-
-2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/gcc.texi, doc/install-old.texi: Remove old system-specific
- installation documentation.
- * doc/install.texi: Move it to here.
-
-2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install.texi: Clean up Texinfo markup.
-
-2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi: Move contents
- to just after title page.
-
-2001-06-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * doc/install-old.texi: Remove documentation of some configuration
- options.
- * doc/install.texi: Add relevant parts of this documentation here.
-
-2001-06-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * contrib.texi: Updated entries for Mark Mitchell, Joseph S. Myers,
- Gerald Pfeifer, Bernd Schmidt, and Dean Wakerley.
-
-Sat Jun 2 12:23:51 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (all uses of ext_register_operand): Make sure they are
- VOIDmode; replace all uses outside zero_extend.
- (and?i splitters): Use ext_register_operands.
- (test?i peep2): Remove ignored constraints.
- * i386.c (ext_register_operand): Check that operand is
- either pseudo or hard or 'Q' register.
-
-Sat Jun 2 06:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.h (struct record_layout_info_s): New field unpadded_align.
- (set_lang_adjust_rli): New declaration.
- * stor-layout.c (layout_decl): If DECL is packed, but at alignment
- it would have if not packed, do not downgrade DECL_ALIGN.
- (lang_adjust_rli, set_lang_adjust_rli): New.
- (start_record_layout): Initialize new field unpadded_align.
- (debug_rli): Display it.
- (place_union_field, place_field): Set it.
- (layout_type, case RECORD_TYPE): Call via lang_adjust_rli if set.
-
- * print-tree.c (print_node): Don't print "regdecl" when bit doesn't
- mean that; use proper names instead.
- Print DECL_NO_STATIC_CHAIN.
-
- * except.c (expand_builtin_frob_return_addr): Add missing call
- to convert_memory_address #ifdef POINTERS_EXTEND_UNSIGNED.
- (expand_builtin_eh_return): Likewise.
- (expand_eh_return): Clean up ptr_mode != Pmode cases.
-
-2001-06-01 Jan van Male <jan.vanmale@fenk.wau.nl>
-
- * doc/invoke.texi: Remove references to papers about sequence points
- to readings.html, refer to that page.
-
-2001-06-01 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README: Update references to installation instructions.
-
-2001-06-01 Laurent Guerby <guerby@acm.org>
- Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi: Define srcdir when sources come from CVS.
- Significantly improve markup. Wrap overly long lines
-
-2001-06-01 DJ Delorie <dj@redhat.com>
-
- * c-tree.texi, contrib.texi, cpp.texi, cppinternals.texi,
- extend.texi, fdl.texi, gcov.texi, invoke.texi, md.texi,
- objc.texi, rtl.texi, tm.texi, texinfo.tex, gcc.1, cpp.1,
- gcov.1: Move to doc subdirectory.
- * install.texi: Move to doc/install-old.texi.
- * gcc.texi: Move to doc, refer to install-old.texi.
- * Makefile.in: Reflect move of docs to doc/.
- * f/Make-lang.in: Ditto.
- * java/Make-lang.in: Ditto.
- * doc/.cvsignore: New.
-
-2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
-
- * invoke.texi: use two spaces between command options, eliminate
- some 'overfull hboxes'
-
-2001-06-01 Hans-Peter Nilsson <hp@axis.com>
-
- * Makefile.in (s-mlib): Make backtick-commands always succeed.
- (DRIVER_DEFINES): Ditto.
-
-2001-05-31 Richard Henderson <rth@redhat.com>
-
- * gcc.c (init_gcc_specs): When linking against libgcc_s.so,
- also link against libgcc.a.
-
-2001-05-31 Geoff Keating <geoffk@cygnus.com>
-
- * config/mips/mips.h (ASM_OUTPUT_ASCII): Convert to function.
- * config/mips/mips.c (mips_output_ascii): New function.
- * config/mips/mips-protos.h (mips_output_ascii): Prototype.
-
- * config/mips/mips.h (DWARF_CIE_DATA_ALIGNMENT): Force to 4.
-
-Thu May 31 19:09:53 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * flow.c (set_block_for_new_insns): Remove bogus shortcut.
- * i386.c (ix86_expand_int_movcc): Force one of operands to be register.
-
-2001-05-31 Rodney Brown <rbrown64@csc.com.au>
-
- * install.texi (Configuration): Add html links for --with-gnu-as &
- --with-gnu-ld and refer to them from hppa & SCO triplets.
- (Specific): Link back to with-gnu-ld for all ELF platfoms.
- (Specific): Reword AVR binutils recommendation.
-
-2001-05-30 Zack Weinberg <zackw@stanford.edu>
-
- * ggc-page.c (size_lookup): Increase minimum allocation size
- to eight bytes.
- (ggc_print_statistics): Report size of each bin in bytes, not
- as its order; there is no longer a direct relationship.
-
-2001-05-31 Jan van Male <jan.vanmale@fenk.wau.nl>
-
- * extend.texi: Fix formating of examples, eliminate some
- 'overfull hboxes'.
- * gcc.texi: Eliminate some 'overfull hboxes'.
- * invoke.texi: Use two spaces between command options, eliminate
- some 'overfull hboxes'.
-
-2001-05-30 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (dwarf2out_finish): Don't emit DW_AT_stmt_list at -g1.
-
-2001-05-30 Tom Tromey <tromey@redhat.com>
-
- * gcc.c (do_spec_1): In `%O' case, if we computed saved_suffix,
- use it in the new association.
-
-2001-05-30 Loren J. Rittle <ljrittle@acm.org>
- John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * gthr-posix.h (__gthread_active_ptr): Cast function pointer
- to target type to allow ISO C++ compiler to accept it.
- * gthr-dce.h (__gthread_active_ptr): Likewise.
- * gthr-solaris.h (__gthread_active_ptr): Likewise.
-
-2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplex.c (_cpp_lex_token): Revert patch of 16 May 2001
- so that we do accept comments in preprocessed input.
-
-2001-05-30 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpphash.c (alloc_node): Cast allocated pointer.
-
-2001-05-30 Gordon Sadler <gbsadler1@lcisp.com>
-
- * invoke.texi (Option Summary): Remove -isystem-c++ from options.
-
-2001-05-29 Stan Shebs <shebs@apple.com>
-
- * gcc.texi: Add links for information about Objective-C.
-
-2001-05-29 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.in (gcc_version): Remove unrequired \ on ". (Solaris
- /bin/sed fails on [^\"]).
- (configargs.h): Likewise.
-
-2001-05-29 Hartmut Schirmer <SchirmerH@Innovative-Systems.de>
-
- * config/sh/sh.h (IDENT_ASM_OP): End with TAB, not LF.
-
-2001-05-28 Stan Shebs <shebs@apple.com>
-
- * objc/objc.gperf: Remove, no longer used.
-
-2001-05-28 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-tree.texi, contrib.texi, cpp.texi, extend.texi, gcc.texi,
- gcov.texi, install.texi, md.texi, objc.texi, rtl.texi, tm.texi:
- Remove trailing whitespace.
-
-2001-05-28 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Specific): http://reality.sgi.com/ariel/freeware/
- became http://freeware.sgi.com/.
-
-2001-05-27 Geoffrey Keating <geoffk@redhat.com>
-
- * local-alloc.c (update_equiv_regs): Don't eliminate constant
- expressions at -O0.
-
-2001-05-27 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c: Add/fix various comments.
- (init_selector): Remove, no longer used.
- (build_msg_pool_reference): Ditto.
- (objc_debug): Ditto.
-
-2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-decl.c (init_decl_processing):
- Don't call start_identifier_warnings.
- * flags.h (warn_id_clash, id_clash_len): Remove.
- * stringpool.c: Don't include flags.h.
- (scan_for_clashes, do_identifier_warnings,
- start_identifier_warnings): Remove.
- * toplev.c (warn_id_clash, id_clash_len): Remove.
- (display_help): Don't document -Wid-clash.
- (decode_W_option): Print warning on -Wid-clash.
- * tree.h (start_identifier_warnings): Remove.
- * invoke.texi: Remove documentation of -Wid-clash.
-
-2001-05-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fixinc/fixtests.c: Declare entries in ENV_TABLE.
-
-2001-05-27 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/check.tpl(HACK) add and use a Scheme variable
- (has no test text): error out if no "test_text" is defined
- * fixinc/fixincl.tpl: likewise
- (FIXIDX): make it an enumeration so we minimize diffs
- * fixinc/inclhack.def: re-alphabetize and add sort instructions
- * fixinc/fixincl.x: regenerate
- * fixinc/tests/base/stdio.h: test output got moved due to
- the alphabetizing
- * README-fixinc: rewrite (mostly)
-
-2001-05-27 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.c (run_directive): Set pfile->directive.
-
-2001-05-23 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
-
- * c-tree.texi: Reformat the manual as a single chapter now
- included by gcc.texi.
- * gcc.texi: Include c-tree.texi. Merge all indexes.
- * Makefile.in (dvi): Add generation for the cppinternals
- documentation. Added dependencies on fdl.texi and c-tree.texi
- where appropriate. Use TEXI2DVI instead of custom tex calls.
- (info): Added dependencies on fdl.texi and c-tree.texi where
- appropriate. Remove the target c-tree.info.
-
-2001-05-27 Lars Brinkhoff <lars@nocrew.org>
-
- * combine.c (try_combine): Fix typo in comment.
- * expr.c (expand_expr): Likewise.
- * config/i370/i370.md (untyped_call): Likewise.
-
-2001-05-26 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
- when fixincl is operating in test mode
- * fixinc/inclhack.def(AAB_dgux_int_varargs) : aesthetics
- (AAB_ultrix_limits): remove redundant text
- (AAB_ultrix_memory): ditto
- (AAB_ultrix_string): ditto
- (djgpp_wchar_h): fix the test text
- (irix_stdio_va_list): add test text
- (irix_limits_const): add a testing output file (limits.h is overwritten)
- (strict_ansi_not_ctd): put limits.h second in list for same reason
- (solaris27_mutex_init): test text needed selection text, too
-
- * fixinc/fixtests.c(stdc_0_in_system_headers_test): Must return "FIX"
- when fixincl is operating in test mode
-
-2001-05-26 Philip Blundell <philb@gnu.org>
-
- * config/c4x/c4x-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
- * config/i960/i960-protos.h: Likewise.
- * config/i370/i370-protos.h: Likewise.
- * config/h8300/h8300-protos.h: Likewise,
- * config/sh/sh-protos.h: Likewise.
- * config/v850/v850-protos.h: Likewise.
-
-2001-05-26 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm-protos.h: Use GCC_C_PRAGMA_H in place of _C_PRAGMA_H.
-
-2001-05-25 Zack Weinberg <zackw@stanford.edu>
-
- * toplev.c (debug_args, f_options, W_options): Mark
- descriptions for translation.
- (display_help): Translate descriptions on output.
-
- * cp/lang-options.h, f/lang-options.h, java/lang-options.h,
- objc/lang-options.h: Mark descriptions for translation.
-
- * aclocal.m4: Quote final argument of patsubst. Use
- 3-argument form of AC_DEFINE. Restore quotes to [] while
- using AC_FD_CC.
- * configure.in: Remove unnecessary changequote calls.
- * configure, config.in: Regenerate.
-
-2001-05-25 Sam TH <sam@uchicago.edu>
-
- * basic-block.h: Fix header include guards.
- * bitmap.h c-dump.h c-lex.h c-pragma.h c-tree.h collect2.h
- cppdefault.h cpphash.h cpplib.h defaults.h diagnostic.h errors.h
- except.h flags.h gcc.h gcov-io.h graph.h gstab.h gthr-aix.h
- gthr-dce.h gthr-posix.h gthr-rtems.h gthr-single.h gthr-solaris.h
- gthr-vxworks.h gthr-win32.h gthr.h hard-reg-set.h hwint.h
- insn-addr.h libgcc2.h mbchar.h mkdeps.h params.h prefix.h real.h
- rtl.h sbitmap.h system.h timevar.h toplev.h tradcpp.h tsystem.h
- varray.h version.h: Likewise.
- * config/dbxelf.h config/fp-bit.h config/arm/arm-protos.h
- config/arm/arm.h config/c4x/c4x-protos.h
- config/h8300/h8300-protos.h config/h8300/h8300.h
- config/i370/i370-protos.h config/i370/i370.h
- config/i960/i960-protos.h config/mcore/mcore.h
- config/mips/mips-protos.h config/sh/sh-protos.h config/sh/sh.h
- config/v850/v850-protos.h config/v850/v850.h: Likewise.
- * fixinc/fixlib.h fixinc/server.h: Likewise.
-
-2001-05-25 Stacey Sheldon <ssheldon@Catena.com>
-
- * config/arc/initfini.c (.init): Fix typo.
-
-2001-05-25 Geoffrey Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.md (fseldfsf4): Correct mode of operand 4.
-
-2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * i386/i386.h (CC1_CPU_SPEC): Clarify -m486 etc deprecation messages.
-
-2001-05-25 Richard Henderson <rth@redhat.com>
-
- * libgcc-std.ver: Export XFmode and TFmode versions of symbols.
-
-2001-05-25 Richard Henderson <rth@redhat.com>
-
- * config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
- (i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld.
- (sparc*-*-solaris2): Likewise.
- * config/t-linux: Remove shared libgcc macros.
- * config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc.
- * config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld.
-
-2001-05-25 Loren J. Rittle <ljrittle@acm.org>
-
- * config.gcc (*-*-freebsd*): Report bad configuration.
-
-2001-05-25 David Edelsohn <edelsohn@gnu.org>
-
- * xcoffout.h (DBX_OUTPUT_GCC_MARKER): Do not emit any marker.
-
- * config/rs6000/aix.h (USER_LABEL_PREFIX): AIX symbols do not have
- any prefix.
- (ASM_OUTPUT_LABELREF): Delete.
-
-2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (strict_ansi_not, strict_ansi_not_ctd,
- strict_ansi_only): Don't run if stdc_0_in_system_headers.
- * fixinc/fixincl.x: Regenerate.
- * fixinc/fixtests.c (stdc_0_in_system_headers_test): New function.
- (FIX_TEST_TABLE): Declare it.
- * fixinc/fixlib.h: Include config.h.
-
-2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (alpha___assert): Change char * args to
- const char * on Tru64 UNIX to avoid excessive warnings from
- assert.h.
- * fixinc/fixincl.x: Regenerate.
-
-2001-05-25 Geoff Keating <geoffk@redhat.com>
-
- * dbxout.c (dbxout_symbol): Invert previous patch, which was
- outputting a tag only for variable-size records.
-
-2001-05-25 Jeff Knaggs <jknaggs@redhat.com>
-
- * config/alpha/alpha.md (movtf_internal): Use reg_overlap_mentioned_p
- instead of rtx_equal_p for early clobber test.
-
-2001-05-26 Mark Mitchell <mark@codesourcery.com>
-
- * builtins.def: Encode additional information, such as names and
- types, here.
- * builtin-types.def: New file.
- * builtins.c (built_in_names): Adjust use of DEF_BUILTIN.
- (built_in_decls): Likewise. Don't explicitly initialize global
- data to NULL.
- (expand_builtin_mathfn): Handle float and long double variants of
- math builtins.
- (expand_builtin): Likewise.
- * c-common.c (c_common_nodes_and_builtins): Make it table-driven.
- (expand_tree_builtin): Handle long, long long, float, and long
- double variants of math functions.
- * c-common.h (c_tree_index): Remove some unused nodes.
- (void_ftype): Remove.
- (void_type_ptr): Likewise.
- (int_ftype_int): Likewise.
- (ptr_ftype_sizetype): Likewise.
- * c-decl.c (init_decl_processing): Remove creation of DWARF
- builtins.
- * defaults.h (MD_INIT_BUILTINS): Provide default definition.
- * tree.h (built_in_function): Adjust definition of DEF_BUILTIN.
- * Makefile.in (c-common.o): Depend on builtin-types.def.
-
-2001-05-25 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/t-darwin: Fix dependencies for darwin.o.
-
-2001-05-25 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-parse.in (notype_initdcl): Remove redundant line.
-
-2001-05-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * aclocal.m4: Fixed typo.
- (gcc_AC_HEADER_STDBOOL): Define.
- (gcc_AC_C__BOOL): Define.
- * configure.in: Use them.
- (AC_CHECK_HEADERS): Remove stdbool.h
- * configure, config.in: Regenerate.
-
-2001-05-25 Richard Henderson <rth@redhat.com>
-
- * function.c (expand_function_start): Don't abort on PARALLEL
- returns from hard_function_value.
-
-2001-05-25 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.md: Revert previous change. Do not apply
- the peephole if the components do not die after the sequence.
-
-2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (array_declarator): New. Handle C99 constructs.
- Don't restrict [*] declarators to C only.
- (after_type_declarator, parm_declarator_starttypename,
- parm_declarator_nostarttypename, notype_declarator,
- direct_absdcl1): Use it.
- * c-decl.c (build_array_declarator, set_array_declarator_type):
- New functions. Warn that [*] isn't properly implemented; pedwarn
- for [*] outside C99 mode if pedantic rather than giving a hard
- error.
- (grokdeclarator): Handle static and type qualifiers in parameter
- array declarators.
- * c-tree.h (build_array_declarator, set_array_declarator_type):
- Declare.
- * extend.texi (Attribute Syntax): Document attributes in parameter
- array declarators.
-
-2001-05-25 Mark Mitchell <mark@codesourcery.com>
-
- * config/i386/i386.md: Make sure cmpstr peepholes do not
- affect liveness information.
-
-2001-05-24 Mark Mitchell <mark@codesourcery.com>
-
- * c-typeck.c (digest_init): Issue error messages about
- invalid constants, not warnings.
-
-2001-05-24 Mark Mitchell <mark@codesourcery.com>
-
- * invoke.texi (-fno-builtin): Document that this is always on
- in C++.
-
-2001-05-24 Philip Blundell <philb@gnu.org>
-
- * doc/install.texi (arm*-*-linux-gnu): Say that binutils 2.10 is
- required.
-
-2001-05-24 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.c (output_return_instruction): Correctly handle
- interworking and interrupt functions.
-
-2001-05-24 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.h (TARGET_SWITCHES): Correct misleading help for
- -m{no-}sched-prolog. Fix typos and improve formatting.
-
-2001-05-24 Philip Blundell <philb@gnu.org>
-
- * invoke.texi (ARM Options): Improve wording slightly. Add
- documentation for more options, including those for Thumb mode.
- Don't mention options that don't exist or are unimplemented.
- (Thumb Options): Delete; merged into above section.
-
-2001-05-24 Geoff Keating <geoffk@redhat.com>
-
- * config/rs6000/linux.h (SIGNAL_FRAMESIZE): Define.
- (MD_FALLBACK_FRAME_STATE_FOR): Use it.
-
-Thu May 24 19:47:19 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_subreg): Fix CONCAT simplification;
- fix hard register simplification.
-
-Thu May 24 00:15:17 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Add all of CPP_SPEC instead
- of just copying CPP_CPU_SPEC.
-
-Thu May 24 15:56:48 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (incdec_operand): Accept only 1 and -1.
-
-2001-05-23 Kelley Cook <kelley.cook@home.com>
-
- * Makefile.in: Move many of the *_H definitions eariler in the
- file, so that rules in t-* files that use them for
- dependencies will work in a parallel build.
- * config/i386/t-cygwin (winnt.o): Depend on $(CONFIG_H).
-
-2001-05-23 Richard Henderson <rth@redhat.com>
-
- * integrate.c (expand_inline_function): Handle CONCAT DECL_RESULT.
-
-2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi: Update for handling of charconsts.
- * cpplex.c (maybe_read_ucs): Don't accept D800-DFFF. Update
- diagnostics. Skip to the end if the UCS is too short.
- (cpp_interpret_charconst): Long charconsts issue a warning
- not an error.
-
-2001-05-23 Richard Henderson <rth@redhat.com>
-
- * doc/install.texi (alpha-linux): Require binutils 2.11.
-
-2001-05-23 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (read_escape, read_ucs): Delete.
- (lex_string): Use cpp_parse_escape.
- * cpplex.c (read_ucs): Rename maybe_read_ucs. Do nothing
- if not C++ or not C99. Warn if traditional.
- (parse_escape): Rename cpp_parse_escape. Make the bitmask
- unsigned. Warn for out-of-range escape sequences here.
- Update to use maybe_read_ucs.
- (cpp_interpret_charconst): Don't warn here.
- * cpplib.h (cpp_parse_escape): New exported function.
-
-2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi (Attribute Syntax): Clarify application of
- attributes to parameters declared as functions or arrays.
-
-2001-05-23 Jason Merrill <jason_merrill@redhat.com>
-
- * dbxout.c (dbxout_type_methods): Do still group methods by name.
-
-2001-05-23 Zack Weinberg <zackw@stanford.edu>
-
- * diagnostic.c (vnotice): Kill.
- (fnotice): Call vfprintf directly.
- (diagnostic_for_decl, output_do_verbatim, output_verbatim,
- verbatim, set_diagnostic_context): Rename string argument to
- indicate that it is run through gettext.
- (vbuild_message_string, build_message_string, output_do_printf):
- Rename string argument to indicate that it is NOT run through
- gettext.
- (output_printf, diagnostic_for_decl, fatal_io_error, sorry,
- output_do_verbatim, set_diagnostic_context, fnotice, _fatal_insn):
- Run msgid argument through gettext.
- (default_print_error_function): Run constant strings through
- gettext when nothing else will.
- (fatal_error, internal_error, error_recursion): Use fnotice.
- Present complete sentences to gettext.
-
-2001-05-23 Mark Mitchell <mark@codesourcery.com>
-
- * jump.c (mark_jump_label): Fix thinko in 2001-05-19 change.
-
-2001-05-23 Richard Henderson <rth@redhat.com>
-
- * function.c (expand_function_start): Always use a pseudo
- for the function result value.
-
-2001-05-22 Richard Henderson <rth@redhat.com>
-
- * config/mips/iris6.h (EH_FRAME_SECTION_ASM_OP): Give the
- section pointer alignment.
-
- * doc/install.texi (alpha-linux): Require binutils >= 2.10.
-
- * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
- of __USER_LABEL_PREFIX__.
-
-2001-05-22 Richard Henderson <rth@redhat.com>
-
- * unwind-dw2-fde.c (__deregister_frame_info): Stubbify in favor of...
- (__deregister_frame_info_bases): New.
- * unwind-dw2-fde.h: Declare it.
- * libgcc-std.ver: Export it.
- * crtstuff.c (__do_global_dtors_aux): Call it if we would have
- called __register_frame_info_bases.
-
-2001-05-22 Loren J. Rittle <ljrittle@acm.org>
-
- * config/freebsd.h (FBSD_CPP_PREDEFINES): Use #endif/#if pair
- instead of #elif (which is OK for this case but not in general).
-
-2001-05-22 Andrew MacLeod <amacleod@redhat.com>
-
- * builtins.c (expand_builtin_longjmp): A longjmp can be a call too.
- * config/ia64/ia64.md (nonlocal_goto): Reverse label and frame pointer
- parameters to __ia64_nonlocal_goto. Flag as NO_RETURN.
- * config/ia64/ia64.c (ia64_expand_epilogue): Make sure we are issuing
- "r2" to the assembly file. Only issue allocs with nonzero parameters.
-
-2001-05-22 Loren J. Rittle <ljrittle@acm.org>
- David O'Brien <obrien@freebsd.org>
-
- * config/freebsd.h (LIB_SPEC): Key the exact setting to
- configure-time options and target version of FreeBSD. Set-up
- to match architectural change in threading support. Correctly
- report when -pthread option is not supported by configure-time
- options.
- (FBSD_CPP_PREDEFINES): Move from architecture-specific files
- and extend to encode target version number in run-time setting
- of __FreeBSD__ macro to match the system compiler.
- (CPP_PREDEFINES): Likewise.
- (PREFERRED_DEBUGGING_TYPE): Change to DWARF2_DEBUG.
-
- * config/alpha/freebsd.h (CPP_PREDEFINES): Moved to common freebsd.h.
- * config/i386/freebsd.h (CPP_PREDEFINES): Likewise.
-
-2001-05-22 Loren J. Rittle <ljrittle@acm.org>
- David O'Brien <obrien@freebsd.org>
-
- * config.gcc (the unlabeled system switch statement): Add
- generic configuration section to handle *-*-freebsd*. Also,
- to match the system compiler, default to threading support (it
- may be disabled with the standard --disable-threads
- configuration-time switch).
- (i[34567]86-*-freebsd* in machine-specific section): Use it.
- (alpha*-*-freebsd* in machine-specific section): Likewise.
-
- * config/freebsd3.h: New file to expose FBSD_MAJOR macro (3).
- * config/freebsd4.h: New file to expose FBSD_MAJOR macro (4).
- * config/freebsd5.h: New file to expose FBSD_MAJOR macro (5).
- * config/freebsd6.h: New file to expose FBSD_MAJOR macro (6).
- * config/freebsd-nthr.h: New file to expose FBSD_NO_THREADS macro.
-
-2001-05-22 Loren J. Rittle <ljrittle@acm.org>
- David O'Brien <obrien@freebsd.org>
-
- * config/t-freebsd (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
- * config/t-freebsd-thread (TARGET_LIBGCC2_CFLAGS): Add
- -pthread instead setting macro.
-
-2001-05-22 Richard Henderson <rth@redhat.com>
-
- * crtstuff.c (__register_frame_info_bases): Declare.
- (frame_dummy): Use it, if CRT_GET_RFIB_TEXT or CRT_GET_RFIB_DATA.
- (__do_global_dtors_aux, __do_global_dtors): Streamline.
-
- * config/i386/linux.h (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
- (CRT_GET_RFIB_DATA): New.
- * config/i386/sysv4.h: Likewise.
- * config/i386/sco5.h: Likewise.
- (ASM_PREFERRED_EH_DATA_FORMAT): New.
-
-2001-05-22 Richard Henderson <rth@redhat.com>
-
- * rtl.c (read_string): Break out from ...
- (read_rtx): ... here.
-
-2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Specific): Remove a bogus and duplicate part
- copied from the end of the document.
-
-2001-05-22 Bernd Schmidt <bernds@redhat.com>
-
- * Makefile.in (LIBGCC_DEPS): Correct LIB1ASMSRC dependency.
-
-2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * install.texi: Remove obsolete information on SunOS as well as
- i386-sun-sunos4, i860-intel-osf1, and powerpcle-*-solaris2*.
- (Installing GNU CC on the Sun): Remove section.
-
-2001-05-22 Alexandre Oliva <aoliva@redhat.com>
-
- * cppfiles.c (remove_component_p): Don't assume lstat/stat will
- keep errno unchanged on success.
-
-2001-05-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-lex.c (lex_number): If pedantic and not C99, pedwarn exactly
- once for hexadecimal floats, whether or not they contain a decimal
- point. Don't let the setting of pedantic otherwise affect the
- parsing of hexadecimal floats.
-
-2001-05-22 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README.ACORN: Remove obsolete file.
-
-2001-05-22 Jan Hubicka <jh@suse.cz>
-
- * combine.c (gen_binary): Use swap_commutative_operands_p
- (simplify_comparison): Likewise.
- * expmed.c (emit_store_flag): Likewise.
- * expr.c (compare_from_rtx): Likewise.
- (do_compare_rtx_and_jump): Likewise.
- * optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort
- if not emitting a branch and operands want swapping.
-
-2001-05-22 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (c_lex): Just cast cpp's hashnode to gcc's one.
- * stringpool.c: (IS_FE_IDENT, make_identifier): Delete.
- (maybe_get_identifier): Update.
- * tree.h (make_identifier): Delete.
-
-2001-05-21 Richard Henderson <rth@redhat.com>
-
- * combine.c (subst): Do not substitute for a register as
- a destination subreg/strict_low_part/zero_extract.
-
- * combine.c (simplify_comparison): Update op1 after constant
- extension.
- * recog.c (const_int_operand): Accept only constants valid
- for the given mode.
- * genrecog.c: Update comments wrt const_int_operand.
-
- * emit-rtl.c (init_emit_once): Zero unused memory in a
- CONST_DOUBLE.
-
-2001-05-21 Mark Mitchell <mark@codesourcery.com>
-
- * tree.h (type_num_arguments): Declare it.
- * tree.c (type_num_arguments): New function.
-
-2001-05-21 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (current_funcdef_number): Move outside dwarf2
- conditional ifdef.
-
-2001-05-21 Geoff Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.md (maxsf3): Use rs6000_emit_minmax.
- (maxsf3+1): Delete.
- (minsf3): Use rs6000_emit_minmax.
- (minsf3+1): Generalize to handle both SMIN and SMAX. Use
- rs6000_emit_minmax.
- (movsfcc): Use rs6000_emit_cmove.
- (fselsfsf4): Don't compare a CONST_INT with a floating-point value.
- Don't generate emit_fselsfsf4.
- (fseldfsf4): Likewise.
- (maxdf3): Use rs6000_emit_minmax.
- (maxdf3+1): Delete.
- (mindf3): Use rs6000_emit_minmax.
- (mindf3+1): Generalize to handle both SMIN and SMAX. Use
- rs6000_emit_minmax.
- (movdfcc): Use rs6000_emit_cmove.
- (fseldfdf4): Don't compare a CONST_INT with a floating-point value.
- Don't generate emit_fselsfsf4.
- (fselsfdf4): Likewise.
- * config/rs6000/rs6000.c (zero_fp_constant): New predicate.
- (min_max_operator): New predicate.
- (rs6000_emit_cmove): New function.
- (rs6000_emit_minmax): New function.
- * config/rs6000/rs6000-protos.h: Prototype new functions.
- * config/rs6000/rs6000.h (PREDICATE_CODES): Add zero_fp_constant
- and min_max_operator.
-
- * config/rs6000/rs6000.c (output_cbranch): Handle all
- conditional types in the switch statement.
-
-2001-05-21 Mark Mitchell <mark@codesourcery.com>
-
- * c-decl.c (finish_decl): Don't set DECL_C_HARD_REGISTER for
- non-register variables.
- * extend.texi: Document that asm-specifications do not make sense
- for non-static local variables.
-
-2001-05-21 Jason Merrill <jason_merrill@redhat.com>
-
- * dbxout.c (MINIMAL_DEBUG, flag_minimal_debug): Lose.
- (dbxout_type_fields): Lose minimal_debug support.
- (dbxout_type_methods, dbxout_type): Likewise.
-
-2001-05-17 Andrew Haley <aph@redhat.com>
-
- * config/rs6000/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
-
-2001-05-21 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (DEBUG_FRAME_SECTION): Rename from FRAME_SECTION.
- Update all users.
-
-2001-05-20 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
- DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_PUBNAMES_SECTION,
- DEBUG_STR_SECTION): Rename from s/DEBUG_//. Update all users.
- * dwarfout.c (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
- DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION):
- Likewise.
- * config/mips/iris6.h (DEBUG_SFNAMES_SECTION, DEBUG_SRCINFO_SECTION,
- DEBUG_MACINFO_SECTION, DEBUG_PUBNAMES_SECTION, DEBUG_ARANGES_SECTION,
- DEBUG_FRAME_SECTION, DEBUG_ABBREV_SECTION): Rename as above.
- (DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
- * config/ia64/ia64.h (DEBUG_ABBREV_SECTION, DEBUG_ARANGES_SECTION,
- DEBUG_PUBNAMES_SECTION): Rename as above.
- (DEBUG_MACINFO_SECTION, DEBUG_LOC_SECTION, DEBUG_STR_SECTION): New.
-
-2001-05-20 Richard Henderson <rth@redhat.com>
-
- * optabs.c (emit_cmp_and_jump_insns): Don't swap commutative
- operands unless the operation is commutative.
-
-2001-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c (tree_expr_nonnegative_p): Detect more non-negative
- cases.
-
-2001-05-21 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi: Clarify documentation of extensions included in ISO
- C99. Prefer C99 terminology and syntax to old GNU terminology and
- syntax. Add more index entries. Document mixed declarations and
- code as an extension in C89 mode. Warn about future changes to
- semantics of inline functions. Fixes PR other/930.
-
-Sun May 20 16:39:24 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * expr.c (expand_expr, case ARRAY_REF): Don't fold constant
- access if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
- (expand_expr, case COMPONENT_REF): Do copy if misaligned even
- if EXPAND_CONST_ADDRESS or EXPAND_INITIALIZER.
-
- * stmt.c (expand_decl): Set mode, alignment, and sizes for CONST_DECL.
-
-2001-05-20 Richard Henderson <rth@redhat.com>
-
- * sched-deps.c (sched_analyze_insn): Force volatile memory reads
- to be output before a branch.
-
-2001-05-20 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (dwarf2asm.o): Depend on $(TREE_H).
-
-2001-05-20 Richard Henderson <rth@redhat.com>
-
- * config/i386/att.h (ASM_SHORT, ASM_LONG): Add trailing \t.
- (ASM_DOUBLE): Remove.
- * config/i386/bsd.h, config/i386/sco5.h: Likewise.
- * config/i386/sun386.h: Likewise.
-
- * config/i386/i386.h (UNALIGNED_SHORT_ASM_OP): New.
- (UNALIGNED_INT_ASM_OP, INT_ASM_OP): New.
-
- * config/i386/cygwin.h (INT_ASM_OP): Remove.
- * config/i386/freebsd-aout.h, config/i386/i386-aout.h: Likewise.
- * config/i386/i386-coff.h, config/i386/i386-interix.h: Likewise.
- * config/i386/netbsd.h, config/i386/openbsd.h: Likewise.
-
- * config/i386/cygwin.h: Adjust uses of ASM_LONG for trailing \t.
- * config/i386/djgpp.h, config/i386/i386.h: Likewise.
- * config/i386/i386elf.h, config/i386/ptx4-i.h: Likewise.
- * config/i386/sco5.h, config/i386/svr3gas.h: Likewise.
- * config/i386/sysv4.h, config/i386/vsta.h: Likewise.
- * config/i386/win32.h: Likewise.
-
-2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Add more options to summary list.
-
-2001-05-20 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Document meaning of -pedantic when -std=gnu* is
- used. Fixes PR c/2291.
- * gcc.1: Regenerate.
-
-2001-05-20 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_override_options): Ignore
- the -fpic and -fPIC options, clear flag_pic.
-
-2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * hashtable.c (calc_hash): Fix HASHSTEP definition.
- * stringpool.c (make_identifier): No statistics here anymore.
- * objc-act.c (steup_string_decl): Remove redundant check.
-
-2001-05-20 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * Makefile.in (OBJS, LIBCPP_OBJS, LIBCPP_DEPS,
- cpplib.o, cpphash.o, fix-header): Update.
- (hashtable.o): New target.
- * c-common.h: Include cpplib.h. Define C_RID_CODE and
- struct c_common_identifier here.
- * c-lang.c (c_init_options): Update. Call set_identifier_size.
- * c-lex.c (c_lex): Update.
- * c-pragma.h: Update.
- * c-tree.h (struct lang_identifier): Contain c_common_identifier.
- Delete rid_code.
- (C_RID_CODE): Delete.
- * cpphash.c: Rewrite to use hashtable.c.
- * cpphash.h: Update include guards.
- (struct cpp_reader): Remove hashtab.
- hash_ob and buffer_ob are no longer pointers. Add hash_table
- and our_hashtable.
- (HASHSTEP, _cpp_init_hashtable, _cpp_lookup_with_hash): Delete.
- (_cpp_cleanup_hashtable): Rename _cpp_destroy_hashtable.
- (_cpp_cleanup_stacks): Rename _cpp_init_directives.
- * cppinit.c (cpp_create_reader): Update.
- * cpplex.c (cpp_ideq, parse_identifier, cpp_output_token): Update.
- (cpp_interpret_charconst): Eliminate warning.
- * cpplib.c (do_pragma, do_endif, push_conditional,
- cpp_push_buffer, cpp_pop_buffer): Update.
- (_cpp_init_stacks): Rename cpp_init_directives.
- (_cpp_cleanup_stacks): Remove.
- * cpplib.h: Update include guards. Include tree-core.h and c-rid.h.
- (cpp_hashnode, cpp_token, NODE_LEN, NODE_NAME,
- cpp_forall_identifiers, cpp_create_reader): Update.
- (C_RID_CODE, cpp_make_node): New.
- (c_common_identifier): New identifier node for C front ends.
- * cppmain.c (main): Update.
- * fix-header.c (read_scan_file): Update.
- * flags.h (id_clash_len): Make unsigned.
- * ggc.h (ggc_mark_nonnull_tree): New.
- * hashtable.c: New.
- * hashtable.h: New.
- * stringpool.c: Update comments and copyright. Update to use
- hashtable.c.
- * toplev.c (approx_sqrt): Move to hashtable.c.
- (id_clash_len): Make unsigned.
- * toplev.h (ident_hash): New.
- * tree.c (gcc_obstack_init): Move to hashtable.c.
- * tree.h: Include hashtable.h.
- (IDENTIFIER_POINTER, IDENTIFIER_LENGTH): Update.
- (GCC_IDENT_TO_HT_IDENT, HT_IDENT_TO_GCC_IDENT): New.
- (struct tree_identifier): Update.
- (make_identifier): New.
-cp:
- * cp-tree.h (struct lang_identifier, C_RID_YYCODE): Update.
- (C_RID_CODE): Remove.
- * lex.c (cxx_init_options): Call set_identifier_size. Update.
- (init_parse): Don't do it here.
-objc:
- * objc-act.c (objc_init_options): Call set_identifier_size. Update.
-
-Sat May 19 18:23:04 2001 Richard Henderson <rth@redhat.com>
-
- * except.c (dw2_build_landing_pads): Use word_mode, not Pmode,
- as ncessary.
- (expand_eh_return): Convert between word_mode and Pmode.
- * unwind-dw2.c (extract_cie_info): Do not assume words and pointers
- are the same size.
- (execute_stack_op): Likewise.
- (execute_cfa_program): Likewise.
- (uw_frame_state_for): Likewise.
- (uw_update_context_1): Likewise.
- * unwind.inc (_Unwind_Reason_Code): Likewise.
- * config/mips/mips.h (EH_RETURN_DATA_REGNO): Define.
- (EH_RETURN_STACKADJ_RTX): Likewise.
- * config/mips/mips.c (compute_frame_size): Make space for saving
- EH return registers.
- (mips_expand_epilogue): Handle EH stack adjustments.
- * config/mips/mips.md (eh_return): New pattern.
- (eh_set_lr_si): Likewise.
- (eh_set_lr_di): Likewise.
- Add splitter to perform EH return after reload.
-
-2001-05-19 Mark Mitchell <mark@codesourcery.com>
-
- * jump.c (mark_jump_label): Tidy previous change.
-
-2001-05-19 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/genfixes: no need for two warnings
- * fixinc/Makefile.in: open stdin for those building with a closed one.
-
-2001-05-19 Mark Mitchell <mark@codesourcery.com>
-
- * jump.c (jump_optimize_1): Tidy.
- (mark_jump_label): When changing the label in a LABEL_REF, change
- update any REG_EQUAL notes as well.
-
-2001-05-19 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (parm_declarator): Split into
- parm_declarator_starttypename and parm_declarator_nostarttypename.
- (parm_declarator_starttypename, parm_declarator_nostarttypename):
- New. Allow parenthesized sub-declarators which don't begin with a
- TYPENAME. Fixes PR c/166.
-
-2001-05-19 Mark Mitchell <mark@codesourcery.com>
-
- * defaults.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER): New
- macro.
- * tm.texi (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
- Document it.
- * toplev.c (main): If the target does not allow profiling without
- a frame pointer, issue an error message.
- * config/i386/linux.h (TARGET_ALLOWS_PROFILING_WITHOUT_FRAME_POINTER):
- Define it to false.
-
-Sat May 19 07:53:42 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * recog.c (general_operand): Modify last change to allow it if reload
- has completed.
-
-Sat May 19 10:23:54 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * recog.c (general_operand): Prohibit nonzero subreg bytes on
- subregs containing mem.
-
-Sat May 19 09:40:45 2001 Denis Chertykov <denisc@overta.ru>
-
- * regrename.c (regrename_optimize): frame pointer register can
- use a few hardregs.
-
-2001-05-18 Jason Merrill <jason_merrill@redhat.com>
-
- * README.DWARF: Move into dwarfout.c.
-
-2001-05-18 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.c (secondary_reload_class): Fix Darwin
- specific misuse of r0 as a reload address.
-
-Fri May 18 22:42:04 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * combine.c (combine_simplify_rtx): Clear op0_mode if simplification
- succeeded.
-
-Fri May 18 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * genrecog.c (enum decision_type): Add DT_elt_zero-wide_safe.
- (add_to_sequence): Make that decision type.
- (maybe_both_true_2, nodes_identical_1, factor_tests): Use it.
- (write_switch, write_cond, debug_decision_2): Likewise.
-
- * dbxout.c (dbxout_type): Use host_integerp and fix typo in testing
- for INTEGER_TYPE.
- (dbxout_symbol, case TYPE_DECL): Don't generate tag for records of
- variable size.
-
-2001-05-18 Stan Shebs <shebs@apple.com>
-
- * configure.in (gcc_cv_as_eh_frame): Cope with old assemblers.
- * configure: Regenerate.
-
-2001-05-18 Per Bothner <per@bothner.com>
-
- Changes needed for java/jvspec.c
- * gcc.h (n_infiles, outfiles): Add declarations.
- * gcc.c (n_infiles, outfiles): Mske no longer static.
-
-Fri May 18 10:14:42 2001 Jeffrey A Law (law@cygnus.com)
-
- * config/pa/som.h (EXCEPTION_SECTION): Define.
-
-2001-05-18 Daniel Berlin <dan@cgsoftware.com>
-
- * dwarf2out.c: Add dw_loc_list_ref, a reference to a location
- list.
- Add have_location_lists, a variable to determine whether we need a
- .debug_loc section or not.
- (enum dw_val_class): Add dw_val_class_loc_list.
- (dw_val_struct): Add val_loc_list.
- (dw_loc_list_struct): New structure, represents location lists.
- (new_loc_list): New function, return a new location list, given
- the range and location expression.
- (add_loc_descr_to_loc_list): New function, add a location
- expression to a location list, given the expression and range.
- (output_loc_list): New function, output a location list.
- (gen_internal_sym): Modified to take symbol prefix, so we can
- reuse it for location list symbols.
- (add_AT_loc_list): New function, add a location list to a DIE at
- the named attribute.
- (AT_loc_list): New function, return the location list reference
- for a given attribute, if it's a location list.
- (print_die): Handle dw_val_class_loc_list.
- (size_of_die): Ditto.
- (value_format): Ditto.
- (output_die): Ditto.
- (output_location_lists): New function, output all of the location
- lists for a DIE and it's children.
- (dwarf2out_finish): Call output_location_lists if we have location
- lists.
-
-
-Fri May 18 15:39:16 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (try_replace_reg): First try global replace, later try to
- simplify the expression.
-
- * gcse.c (find_used_regs): Change calling convention; work via
- note_uses.
- (cprop_insn): Update call of find_used_regs; work for CALL_INSNs too.
-
-2001-05-18 Bernd Schmidt <bernds@redhat.com>
-
- Revert
- 2001-02-09 Nick Clifton <nickc@redhat.com>
- * config/arm/arm.md: Change output constraint on post inc
- load/store multiple patterns to be a read/write constraint.
-
-2001-05-18 Mark Mitchell <mark@codesourcery.com>
-
- * basic-block.h (struct basic_block_def): Add documentation about
- what a basic block is, and what the various fields are used for.
- * flow.c (calculate_globlal_regs_live): Add documentation about
- how the algorithm works, and how we know that it will terminate.
- Check that the inductive assumption that guarantees termination
- actually holds.
- (mark_used_regs): Treat conditionally set registers as used.
- (debug_regset): Add comment.
- * rtl.texi (cond_exec): Add documentation.
-
- * function.c (expand_function_start): Avoid creating BLKmode
- pseudos.
-
-2001-05-17 Mark Mitchell <mark@codesourcery.com>
-
- * dwarf2out.c (output_comp_unit): Always output a compilation-unit
- DIE, even if it has no children.
- (dwarf2out_finish): Always output the line-number table, even if
- it has no content.
-
-2001-05-18 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (movsfcc,movdfcc): Remove NE case.
-
-2001-05-17 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixincl.tpl: rewritten as an AutoGen version 5 template
- * fixinc/genfixes: emit a warning if AutoGen is out of date
-
-2001-05-17 Brendan Conoboy <blc@cygnus.com>
- Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixincl.sh(FIXINC): accept local directory if fixincl not
- found in fixinc directory. Facilitates binary distributions.
-
-2001-05-17 Jeffrey Oldham <oldham@codesourcery.com>
-
- * dbxout.c (dbxout_symbol_location): For CONCAT, skip types not
- COMPLEX_TYPE.
-
-Thu May 17 19:42:39 2001 Mark Kettenis <kettenis@wins.uva.nl>
-
- * dwarf2out.c (modified_type_die): Equate qualified type to die.
-
-Thu May 17 23:19:46 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * integrate.c (copy_rtx_and_substitute): Use simplify_gen_subreg.
- (simplify_subreg): Handle complex types represented as CONCAT.
-
- * recog.c (validate_replace_rtx_1): Properly canonicalize expression
- * rtl.h (swap_commutative_operands_p): Declare.
- * rtlanal.c (swap_commutative_operands_p): New.
- (operand_preference): New static function.
-
- * combine.c (combine_simplify_rtx): Use swap_commutative_operands_p.
- (gen_binary): Likewise.
- * optabs.c (emit_cmp_and_jump_insns, emit_conditional_move): Likewise.
- * simplify-rtx.c (simplify_gen_binary,
- simplify_gen_relational): Likewise.
-
-Thu May 17 20:43:36 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * cse.c (fold_rtx): Use simplify_subreg.
-
- * simplify-rtx.c (simplify_replace_rtx): Use simplify_gen_subreg.
- (simplify_gen_subreg): New.
- (simplify_rtx): Use simplify_subreg.
- * rtl.h (simplify_gen_subreg): Declare.
-
-2001-05-17 Mark Mitchell <mark@codesourcery.com>
-
- * doc/install.texi: Update Solaris information.
-
- * except.h (protect_cleanup_actions): Remove it.
- (lang_protect_cleanup_actions): Declare it.
- * except.c (protect_cleanup_actions): Remove it.
- (lang_protect_cleanup_actions): New variable.
- (init_eh): Don't make protect_cleanup_actions a GC root.
- (expand_eh_region_and_cleanup): Call
- lang_protect_cleanup_actions.
- (output_function_exception_table): Remove unused `align'
- variable.
- * varasm.c (assemble_external): Abort if we have not yet
- opened the assembly output file.
-
-Thu May 17 11:54:50 2001 Jeffrey A Law (law@cygnus.com)
-
- * except.c (sjlj_emit_function_enter): Call assemble_external_libcall
- for eh_personality_libfunc.
-
-Thu May 17 19:48:00 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * recog.c (validate_replace_rtx_1): Use "TO" mode if not VOIDmode
- when calling simplify_subreg. This is needed to allow replacing
- of expression of one mode by expression of different mode.
-
-Thu May 17 19:40:03 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_subreg): Avoid creating of incorrect subregs.
-
-2001-05-17 Bernd Schmidt <bernds@redhat.com>
-
- * expr.c (protect_from_queue): Protect against subsequent calls to
- emit_queue.
- (expand_expr, case ADDR_EXPR): Prevent protect_from_queue from being
- too clever.
-
-Thu May 17 18:17:34 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify_rtx.c (simplify_subreg): Fix simplification of nested subregs.
-
-2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * gccbug.in (CATEGORIES): Add "bootstrap".
-
-Thu May 17 16:59:41 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_subreg): Break out from ...
- * combine.c (combine_splify_rtx) ... here and ...
- * recog.c (validate_replace_rtx_1): ... here;
- * rtl.h (subreg_lowpart_parts_p, simplify_subreg): Declare.
- * emit-rtl.c (subreg_lowpart_parts_p): Break out from ...
- (subreg_lowpart_p): ... here.
-
-2001-05-17 Bernd Schmidt <bernds@redhat.com>
-
- * stmt.c (expand_asm_operands): For inout operands, make sure
- the substitution of '=' for '+' makes it into the rtl.
-
- * reload1.c (delete_output_reload): Call eliminate_regs on substed.
- (reload_as_needed): Call update_eliminable_offsets a bit later.
-
-2001-05-17 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * gcc.texi (gccbug): Refer to the web pages for detailed information
- on GNATS.
-
-2001-05-16 Zack Weinberg <zackw@stanford.edu>
-
- * libgcc1-test.c, libgcc1.c, config/i386/perform.h: Delete file.
-
- * Makefile.in: Delete variables: OLDCC, CCLIBFLAGS, OLDAR,
- OLDAR_FLAGS, LIBGCC1, LIBGCC1_TEST, CROSS_LIBGCC1,
- LIB1FUNCS, and LIB1FUNCS_EXTRA. Delete rules: libgcc1-test,
- libgcc1-test.o. Clarify commentary now that libgcc1 no longer exists.
- * cross-make: Don't set LIBGCC1.
- * mklibgcc.in: Delete all code for building from libgcc1.c.
- Always honor LIB1ASMFUNCS if set.
-
- * crtstuff.c, floatlib.c, longlong.h, config/fp-bit.c,
- config/arc/lib1funcs.asm, config/arm/lib1funcs.asm,
- config/d30v/libgcc1.asm, config/fr30/lib1funcs.asm,
- config/h8300/lib1funcs.asm, config/i386/cygwin.asm,
- config/i386/uwin.asm, config/m68hc11/larith.asm,
- config/m68k/lb1sf68.asm, config/mcore/lib1.asm,
- config/mn10200/lib1funcs.asm, config/sh/lib1funcs.asm,
- config/sparc/lb1spc.asm, config/sparc/lb1spl.asm,
- config/v850/lib1funcs.asm, config/c4x/libgcc.S:
- Delete or update references to libgcc1 in commentary.
-
- * config/t-libc-ok, config/t-linux, config/t-linux-aout,
- config/t-netbsd, config/a29k/t-a29kbare, config/a29k/t-vx29k,
- config/alpha/t-interix, config/alpha/t-osf, config/alpha/t-vms,
- config/arc/t-arc, config/arm/t-arm-aout, config/arm/t-arm-coff,
- config/arm/t-arm-elf, config/arm/t-linux, config/arm/t-pe,
- config/arm/t-semi, config/arm/t-strongarm-coff,
- config/arm/t-strongarm-elf, config/arm/t-strongarm-pe,
- config/arm/t-xscale-coff, config/arm/t-xscale-elf, config/avr/t-avr,
- config/c4x/t-c4x, config/d30v/t-d30v, config/fr30/t-fr30,
- config/h8300/t-h8300, config/i386/t-beos, config/i386/t-cygwin,
- config/i386/t-i386elf, config/i386/t-interix, config/i386/t-netware,
- config/i386/t-next, config/i386/t-rtems-i386, config/i386/t-sol2,
- config/i960/t-960bare, config/i960/t-vxworks960, config/ia64/t-ia64,
- config/m32r/t-m32r, config/m68hc11/t-m68hc11-gas, config/m68k/t-lynx,
- config/m68k/t-m68kbare, config/m68k/t-m68kelf,
- config/m68k/t-mot3300-gald, config/m68k/t-mot3300-gas,
- config/m68k/t-next, config/m68k/t-vxworks68, config/m88k/t-bug,
- config/m88k/t-dgux, config/m88k/t-dgux-gas, config/m88k/t-dguxbcs,
- config/m88k/t-luna, config/m88k/t-luna-gas, config/m88k/t-m88k,
- config/m88k/t-m88k-gas, config/m88k/t-sysv4, config/mcore/t-mcore,
- config/mcore/t-mcore-pe, config/mips/t-bsd, config/mips/t-bsd-gas,
- config/mips/t-cross64, config/mips/t-ecoff, config/mips/t-elf,
- config/mips/t-iris6, config/mips/t-r3900, config/mips/t-svr3,
- config/mips/t-svr3-gas, config/mips/t-svr4, config/mips/t-svr4-gas,
- config/mips/t-ultrix, config/mn10200/t-mn10200,
- config/mn10300/t-mn10300, config/pa/t-linux, config/pa/t-linux64,
- config/pa/t-pa, config/pa/t-pa64, config/pa/t-pro,
- config/pdp11/t-pdp11, config/pj/t-pj, config/rs6000/t-aix43,
- config/rs6000/t-beos, config/rs6000/t-darwin, config/rs6000/t-newas,
- config/rs6000/t-ppccomm, config/rs6000/t-rs6000, config/sh/t-linux,
- config/sh/t-sh, config/sparc/t-chorus-elf, config/sparc/t-elf,
- config/sparc/t-sol2, config/sparc/t-sp86x, config/sparc/t-sparcbare,
- config/sparc/t-sparclite, config/sparc/t-splet,
- config/sparc/t-sunos41, config/sparc/t-vxsparc,
- config/sparc/t-vxsparc64, config/v850/t-v850:
- Don't set any of LIBGCC1, CROSS_LIBGCC1, or LIBGCC1_TEST.
-
- * config/alpha/alpha.h, config/i386/i386.h, config/i860/i860.h:
- Don't set FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, INTIFY, or FLOATIFY.
- * config/d30v/d30v.h: Don't mention LIBGCC_NEEDS_DOUBLE,
- FLOAT_VALUE_TYPE, FLOAT_ARG_TYPE, FLOATIFY, INTIFY,
- nongcc_SI_type, nongcc_word_type, or perform_*
- * config/i860/fx2800: Don't define perform_umodsi3 or perform_modsi3.
-
- * config/i386/386bsd.h, config/i386/beos-elf.h,
- config/i386/linux-aout.h, config/i386/linux-oldld.h,
- config/i386/linux.h, config/i386/mach.h, config/i386/netbsd.h,
- config/i386/openbsd.h, config/i386/osfrose.h, config/i386/rtemself.h:
- Don't include i386/perform.h.
-
- * config/a29k/t-a29k, config/arm/t-semiaof, config/i370/t-i370,
- config/i370/t-linux, config/i370/t-mvs, config/i370/t-oe,
- config/i386/t-djgpp, config/i386/t-i386bare, config/i386/t-vsta,
- config/ia64/t-hpux, config/mips/t-mips, config/mips/t-mips-gas,
- config/mips/t-osfrose, config/sparc/t-sp64, config/sparc/t-sunos40,
- config/vax/t-openbsd, config/vax/t-vax: Delete.
-
- * config.gcc: Remove references to deleted files.
- (arm-semi-aof): Use arm/t-semi for tmake_file.
-
- * gcc.texi, install.texi, invoke.texi, tm.texi:
- Delete or rewrite text which is no longer relevant now that
- libgcc1 no longer exists.
-
- * config/t-openbsd, config/alpha/t-interix, config/i386/t-interix:
- No need to set INSTALL_ASSERT_H. (Missed in previous sweep.)
-
-2001-05-16 Wolfgang Bangerth <wolfgang.bangerth@iwr.uni-heidelberg.de>
- Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def(solaris27_mutex_init): Fix broken mutex
- initializer
-
-2001-05-16 Zack Weinberg <zackw@stanford.edu>
-
- * i386.md: Add two peepholes to clean up code generated by
- cmpstr* expanders.
-
-2001-05-16 Richard Henderson <rth@redhat.com>
-
- * dwarf2asm.c (eh_data_format_name): Add names for "pointer size"
- variants of non-absolute encodings.
-
- * config/i386/i386.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
-
- * libgcc-std.ver (_Unwind_Find_FDE, __register_frame_info_bases,
- __register_frame_info_table_bases): Export.
-
-2001-05-16 Richard Henderson <rth@redhat.com>
-
- * except.c (eh_data_format_name): Move to ...
- * dwarf2asm.c: ... here. Use designated initializers if available.
- (dw2_asm_output_encoded_addr_rtx): Accept varargs commentary.
- * dwarf2asm.h: Update declarations.
- * dwarf2out.c (output_cfi) [DW_CFA_set_loc]: If for_eh, mind
- ASM_PREFERRED_EH_DATA_FORMAT.
- (output_call_frame_info): Likewise. Use 'L' augmentation for
- the LSDA encoding.
-
- * unwind-dw2-fde.h (struct fde_vector): New.
- (struct old_object): Rename from struct object.
- (struct object): New.
- (__register_frame_info_bases): Declare.
- (__register_frame_info_table_bases): Declare.
- (struct dwarf_fde): Remove explicit pc_begin/pc_range members.
- * unwind-dw2-fde.c (objects): Remove.
- (unseen_objects, seen_objects): New.
- (__register_frame_info_bases): New.
- (__register_frame_info): Use it.
- (__register_frame_info_table_bases): New.
- (__register_frame_info_table): Use it.
- (__deregister_frame_info): Rewrite for changed object struct.
- (base_from_object, get_cie_encoding, get_fde_encoding): New.
- (fde_unencoded_compare): Rename from fde_compare; uninline.
- (fde_single_encoding_compare, fde_mixed_encoding_compare): New.
- (start_fde_sort): Adjust for new definition of fde_vector.
- (fde_insert): Likewise.
- (end_fde_sort): Likewise. Select comparison function based
- on properties of the object.
- (fde_split): Take object and fde_compare_t arguments.
- (frame_heapsort, fde_merge): Likewise.
- (classify_object_over_fdes): Rename from count_fdes. Handle
- encoded pointers. Collect encoding, mixed_encoding, and pc_begin
- for the object.
- (add_fdes): Handle encoded pointers.
- (init_object): Rename from frame_init. Update for new struct object.
- (linear_search_fdes): Rename from search_fdes. Handle encoded
- pointers.
- (binary_search_unencoded_fdes): Broken out from _Unwind_Find_FDE.
- (binary_search_single_encoding_fdes): New.
- (binary_search_mixed_encoding_fdes): New.
- (search_object): New.
- (_Unwind_Find_FDE): Update for new struct object. Fill in
- the dwarf_eh_bases.
- * unwind-dw2.c: Include unwind-pe.h. Constify all pointers
- iterating over EH data.
- (_Unwind_FrameState): Remove saw_lsda, addr_encoding. Add
- fde_encoding, lsda_encoding.
- (read_uleb128, read_sleb128): Remove.
- (read_encoded_pointer): Remove. All callers use read_encoded_value.
- (extract_cie_info): Set lsda_encoding from 'L' augmentation.
- (uw_frame_state_for): Don't set bases.func. Handle encoded fde
- pointers.
- * unwind-pe.h: Add "struct" to _Unwind_Context references.
-
-2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * cppexp.c (lex): Use NODE_NAME and NODE_LEN.
- * cpphash.c (_cpp_lookup_with_hash): Similarly.
- * cpplex.c (cpp_ideq, parse_identifier, cpp_token_len,
- cpp_spell_token, cpp_output_token): Similarly.
- * cpplib.c (lex_macro_node, do_undef, do_pragma,
- do_pragma_poison, parse_assertion, do_assert): Similarly.
- * cppmacro.c (builtin_macro, parse_args, funlike_invocation_p,
- save_parameter, _cpp_create_definition, check_trad_stringification,
- cpp_macro_definition): Similarly.
- * cppmain.c (cb_define, cb_undef, dump_macro): Similarly.
- * c-lex.c (cb_undef, c_lex): Similarly.
- * fix-header.c (recognized_function): Similarly.
- * cpplib.h (NODE_LEN, NODE_NAME): New.
- (cpp_hashnode): Rename length len.
-
-Wed May 16 13:41:10 2001 Jeffrey A Law (law@cygnus.com)
-
- * pa32-regs.h (HARD_REGNO_MODE_OK): Allow TI/TFmode values in
- GPRs.
-
-2001-05-16 Andreas Jaeger <aj@suse.de>
-
- * Makefile.in (toplev.o): Add dependency on dwarf2asm.h.
-
- * toplev.c: Include dwarf2asm.h for prototype of
- dw2_output_indirect_constants.
-
-Wed May 16 19:53:53 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * stmt.c (expand_asm_operands): Be able to offload addressof
- expression to memory. (PR optimization/185)
-
-Wed May 16 18:53:23 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * combine.c (combine_simplify_rtx): Set op0_mode to VOIDmode after
- applying distributive law.
-
-2001-05-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa-hpux10.h (THREAD_MODEL_SPEC): Define.
-
- * gthr-dce.h (UNUSED): Attribute unused macro.
- (__gthread_key_dtor): Make arguments UNUSED.
- (__gthread_key_delete): Revise for compatibility with DRAFT4
- implementation.
-
-2001-05-16 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi: Update AIX information.
- * README.RS6000: Remove obsolete file.
-
-2001-05-16 Jakub Jelinek <jakub@redhat.com>
- Nathan Sidwell <nathan@codesourcery.com>
-
- * gcc.c (give_switch): Don't write before start of string.
- Always append suffix.
-
-2001-05-16 Nathan Sidwell <nathan@codesourcery.com>
-
- * cpplex.c (_cpp_lex_token, '/' case): Comments can't appear
- after stage3.
-
-2001-05-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README.ALTOS: Remove obsolete file.
-
-2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.h (save_and_forget_protocol_qualifiers,
- forget_protocol_qualifiers, remember_protocol_qualifiers):
- Remove deleted functions' prototypes.
-
-2001-05-16 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-parse.in (methodtype): New production.
- (methoddef, methodproto): Collapse separate '-' and '+'
- handlers into 1.
-
-2001-05-16 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * c-common.h (RID_FIRST_PQ): New.
- * c-parse.in (objc_pq_context): New.
- (objc parser): Set objc_pq_context rather than calling
- remember_protocol_qualifiers and forget_protocol_qualifiers.
- Don't call save_and_forget_protocol_qualifiers.
- (yylexname): Handle objc protocol qualifiers here.
- * stringpool.c (struct str_header): Replace with sp_hashnode.
- (SP_EMPTY, SP_LEN, SP_TREE, SP_STR, SP_VALID): New.
- (alloc_string): Rename alloc_ident. Use the SP_ accessors.
- Allocate an IDENTIFIER_NODE for each identifier.
- (FORALL_STRINGS, set_identifier): Delete.
- (FORALL_IDS, expand_string_table, stringpool_statistics): Update.
- (ggc_alloc_string): Use an obstack.
- (get_identifier, maybe_get_identifier, mark_string_hash): Update.
- * tree.h: Update comments.
- (set_identifier): Delete.
- * objc/objc-act.c (N_PQ, saved_pq, saved_not_pq,
- save_and_forget_protocol_qualifiers, forget_protocol_qualifiers,
- remember_protocol_qualifiers): Delete.
-
-Tue May 15 22:14:09 2001 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (life_analysis): After life analysis is complete, do
- an optional scan over insns looking for REG_LABEL notes that
- reference a deleted label.
- (propagate_block_delete_insn): Verify INOTE is a CODE_LABEL
- before peeking at LABEL_NUSES.
-
-2001-05-15 Richard Henderson <rth@redhat.com>
-
- * unwind-sjlj.c (_Unwind_GetDataRelBase): New.
- (_Unwind_GetTextRelBase): New.
-
-2001-05-15 Mark Mitchell <mark@codesourcery.com>
-
- * config/sparc/sol2.h (CPLUSPLUS_CPP_SPEC): Define.
-
-2001-05-15 Geoffrey Keating <geoffk@redhat.com>
-
- * objc/objc-act.c (handle_class_ref): Use rest_of_decl_compilation
- so that CHOOSE_SECTION gets used.
-
- * config/rs6000/sysv4.h (ASM_PREFERRED_EH_DATA_FORMAT): Treat
- TARGET_RELOCATABLE like flag_pic for now.
-
-2001-05-15 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (movdi splitter): Sign extend more efficiently.
- * rs6000.c (reg_or_arith_cint_operand): Redefine 64-bit constant
- to "long long" valid on 32-bit and 64-bit hosts.
- (logical_operand): Cast trunc_int_for_mode return value.
- (rs6000_emit_move): Shift macro to encapsulate variable.
- (rs6000_va_start): Use HOST_WIDE_INT_PRINT_DEC.
- (rs6000_emit_{prologue,epilogue}): EH regno is unsigned but
- plus_constant requires signed argument.
-
-2001-05-15 Loren J. Rittle <ljrittle@acm.org>
-
- * gthr-posix.h: Make additional pthread-* functions weak.
-
-Tue May 15 13:51:32 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * recog.c (apply_change_group): Avoid unneeded validating.
-
-2001-05-14 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (num_insns_constant_wide): Constants are sign-extended.
- (num_insns_constant): CONST_INT can be 64-bits.
-
-2001-05-14 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (LIB_SPEC): Just use -lSystem.
- (LIBGCC_SPEC): Don't define.
-
-2001-05-14 Richard Henderson <rth@redhat.com>
-
- * configure.in (gcc_cv_as_eh_frame): New test.
- * config.in, configure: Rebuild.
- * gcc.c (init_spec): Honor USE_AS_TRADITIONAL_FORMAT.
-
-2001-05-14 Andrew MacLeod <amacleod@redhat.com>
-
- * config/ia64/lib1funcs.asm (__divtf3): Fix incorrect bits in
- extended precision divide.
-
-2001-05-14 Andrew MacLeod <amacleod@redhat.com>
-
- * config/ia64/ia64.c (rtx_needs_barrier): Call rtx_needs_barrier
- for RETURNS as well.
-
-Mon May 14 17:34:48 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (TARGET_64BIT): Define to constant if !TARGET_BI_ARCH
- (CPP_CPU??_SIZE_TYPE): New.
- (CPP_CPU??_SPEC, CPP_CPUCOMMON_SPEC): Break out from...
- (CPP_CPU_SPEC): ... here; support choosing of CPU.
- (EXTRA_SPECS): Add cpp_cpu??, cpp_cpu??sizet, cpp_cpucommon.
- (MAX_LONG_TYPE_SIZE, MAX_BITS_PER_WORD): Define to 32 for 32bit-only
- compiler.
- * i386.c (override_options): Add sorry about not suported modes.
-
-Mon May 14 08:56:47 2001 Jeffrey A Law (law@cygnus.com)
-
- * config/pa/som.h (NM_FLAGS): Remove.
- (ASM_OUTPUT_FUNCTION_PREFIX): No longer truncate subspace names.
- (ASM_OUTPUT_SECTION_NAME): Remove.
- (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Likewise.
-
-2001-05-14 Mark Mitchell <mark@codesourcery.com>
-
- * regrename.c (regrename_optimize): Do not rename registers to
- leaf registers.
-
-2001-05-14 Alexandre Oliva <aoliva@redhat.com>
-
- * rtl.texi (CALL_INSN_FUNCTION_USAGE): Note that (and when) it may
- contain MEMs. Remove useless distinction about clobbering
- registers.
-
-2001-05-13 Geoff Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.h (EXCEPTION_SECTION): Move to...
- * config/rs6000/aix.h (EXCEPTION_SECTION): ... here.
- * config/rs6000/sysv4.h (CONST_SECTION_ASM_OP): Delete.
- (ASM_PREFERRED_EH_DATA_FORMAT): Define.
- (EXCEPTION_SECTION): Define.
-
-2001-05-13 Zack Weinberg <zackw@stanford.edu>
-
- * libgcc2.c, libgcc2.h: Restore __eprintf. Label as used for
- binary backward compat only.
- * Makefile.in (LIB2FUNCS_ST): New. Put _eprintf here, not
- in LIB2FUNCS. Pass it to mklibgcc.
- * mklibgcc.in: Handle LIB2FUNCS_ST.
-
- * Makefile.in (installdirs): Don't create $(gcc_tooldir).
-
-2001-05-13 Alexandre Oliva <aoliva@redhat.com>
-
- * tm.texi (THREAD_MODEL_SPEC): Document it.
- * gcc.c (main): Use it.
- * config/rs6000/aix43.h (THREAD_MODEL_SPEC): Define it.
- * config/rs6000/aix51.h (THREAD_MODEL_SPEC): Likewise.
-
-2001-05-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rtl.h (SYMBOL_REF_WEAK): New macro.
- * rtlanal.h (rtx_addr_can_trap): Use it, a weak SYMBOL_REF can trap.
- * varasm.c (make_decl_rtl): Mark SYMBOL_REF weak if necessary.
- * rtl.texi (SYMBOL_REF_WEAK): Document it.
- * gcc.texi: Remove wrong description.
-
-2001-05-13 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (STAMP): New macro.
- Replace all uses of `touch' with $(STAMP).
- * fixinc/Makefile.in: Likewise.
-
-Sun May 13 07:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * configure.in: ldopen is never in -lexc, so don't test for it.
- Add test for exc_resume in -lexc for Ada.
- * configure: Regenerated.
-
-2001-05-12 Richard Henderson <rth@redhat.com>
-
- * dwarf2asm.c (size_of_encoded_value): New function.
- * dwarf2asm.h: Declare it.
- * except.c (output_function_exception_table): Align the TType
- array only as wide as the encoding.
-
-2001-05-12 Zack Weinberg <zackw@stanford.edu>
-
- * extend.texi: Document #pragma GCC java_exceptions.
-
-2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * c-parse.in (bison parser, init_reswords): Remove uses of
- doing_objc_thang.
- * c-tree.h (doing_objc_thang): Remove.
-
-2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplex.c (_cpp_lex_token): Ensure we warn at most once
- about files not ending in newlines.
-
-2001-05-12 Neil Booth <neil@cat.daikokuya.demon.co.uk>
-
- * dwarfout.c (dwarfout_init): Add cast.
- * sched-deps.c (sched_analyze_insn): Remove unused vars.
- * unwind-dw2-fde.c (_Unwind_Find_FDE): Flag unused parameter so.
-cp:
- * method.c (build_mangled_C99_name): Remove unused prototype.
-
-2001-05-12 Alexandre Oliva <aoliva@redhat.com>
-
- * config/arm/arm.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Use delta.
-
-2001-05-12 Alexandre Oliva <aoliva@redhat.com>
-
- * defaults.h (TARGET_PTRMEMFUNC_VBIT_LOCATION): Define.
- * tm.texi (TARGET_PRTMEMFUNC_VBIT_LOCATION): Document.
-
-2001-05-11 Richard Henderson <rth@redhat.com>
-
- * defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
- * dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1,
- dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New.
- * dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype.
- (dw2_output_indirect_constants): Prototype.
- * dwarf2out.c (dwarf2out_begin_prologue): Generate
- current_function_func_begin_label if we'll need it for EH. Exit
- early for IA64_UNWIND_INFO.
- * except.c: Get DW_EH_PE_* defines from dwarf2.h.
- (eh_data_format_name): Update for indirect references.
- (output_function_exception_table): Care for IA64_UNWIND_INFO.
- Handle ASM_PREFERRED_EH_DATA_FORMAT.
- * except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't
- define HAVE_eh_return etc.
- * final.c (final_start_function): Always call dwarf2out_begin_prologue.
- (final_end_function): Don't call output_function_exception_table.
- * toplev.c (compile_file): Call dw2_output_indirect_constants.
- (rest_of_compilation): Invoke output_function_exception_table
- for ia64 before assemble_end_function.
- * tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document.
- (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document.
-
- * unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New.
- * unwind.h: Declare them.
- * libgcc-std.ver: Export them.
- * unwind-pe.h: New file.
-
- * config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New.
-
- * config/ia64/fde-glibc.c: Use "struct unw_table_entry"
- instead of "fde".
- (find_fde_for_dso): Extract DT_PLTGOT.
- (_Unwind_FindTableEntry): Rename from __ia64_find_fde; return
- the segment and gp as well.
- * config/ia64/frame-ia64.c: Remove file.
- * config/ia64/frame-ia64.h: Remove file.
- * config/ia64/unwind-ia64.c: New file.
- * config/ia64/unwind-ia64.h: New file.
- * config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove.
- (ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove.
- (ASM_OUTPUT_EH_DOUBLE_INT): Remove.
- (ASM_PREFERRED_EH_DATA_FORMAT): New.
- (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New.
- (IA64_UNWIND_INFO): Re-enable.
- (HANDLER_SECTION): Remove.
- (EH_RETURN_DATA_REGNO): New.
- * config/ia64/ia64.md (exception_receiver): Remove.
- * config/ia64/t-glibc (LIB2ADDEH): Re-enable.
- * config/ia64/t-ia64 (LIB2ADDEH): Re-enable.
-
-2001-05-11 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.c (group_barrier_needed_p): Don't allow
- calls and jumps to be bundled together.
- (ia64_reorg): Emit a break after a noreturn call that ends
- a function.
- * config/ia64/ia64.md (break_f): New.
-
-2001-05-12 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (lex_charconst): Convert into a simple wrapper
- around cpp_interpret_charconst, to which most of the code
- body is moved.
- * cppexp.c (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE,
- MAX_LONG_TYPE_SIZE, MAX_INT_TYPE_SIZE, MAX_CHAR_TYPE_MASK,
- MAX_WCHAR_TYPE_MASK, parse_escape, parse_charconst): Remove.
- (lex): Use cpp_interpret_charconst.
- * cpplex.c (parse_escape, read_ucs, cpp_interpret_charconst,
- hex_digit_value): New functions.
- (MAX_CHAR_TYPE_SIZE, MAX_WCHAR_TYPE_SIZE): New macros.
- * cpplib.h (cpp_interpret_charconst): New prototype.
- * Makefile.in: Update.
-
-2001-05-12 Dean Wakerley <dean@wakerley.com>
-
- * doc/install.texi: New file. Converted to texinfo from the HTML
- documentation in wwwdocs/htdocs/install.
-
-Fri May 11 15:50:13 2001 Jeffrey A Law (law@cygnus.com)
-
- * gcse.c (insert_insn_end_bb): Do not search for assignments to
- non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
-
- * toplev.c (compile_file): Move comment for opening output
- file to just before the code that opens the output file.
-
-2001-05-11 Jakub Jelinek <jakub@redhat.com>
-
- * regmove.c (regmove_optimize): Suppress the optimization for
- unchanging destination register. Add comment above function.
-
-2001-05-11 Zack Weinberg <zackw@stanford.edu>
-
- * Makefile.in: Exterminate all references to assert.h.
- * cross-make: Likewise.
- * assert.h: Delete.
- * configure.in: Correct commentary.
- * configure: Regenerate.
-
- * libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
- Remove __eprintf.
-
- * config/t-freebsd, config/t-linux, config/t-linux-aout,
- config/t-netbsd, config/t-rtems, config/x-linux,
- config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
- No need to override INSTALL_ASSERT_H.
-
- * fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
- fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
- fixinc/fixincl.sh: Don't install assert.h into objdir/include.
-
-2001-05-11 Graham Stott <grahams@redhat.com>
-
- * combine.c (simplify_comparison): Fix typo.
-
-2001-05-11 Mark Mitchell <mark@codesourcery.com>
-
- * loop.h (struct movables): Remove `num'.
- * loop.c (scan_loop): Don't set it. Use count_insns_in_loop.
- Adjust call to strength_reduce.
- (num_unmoved_movables): New function.
- (move_movables): Don't set movables->num.
- (strength_reduce): Compute the number of instructions in the loop
- here, rather than in the caller.
- (check_dbra_loop): Always clear reversible_mem_store if there
- are any memory sets.
- (loop_regs_scan): Don't count instructions here.
- (count_insn_in_loop): New function.
-
-2001-05-11 Mark Mitchell <mark@codesourcery.com>
-
- * optabs.c (emit_libcall_block): Don't mark calls as CONST_CALL_P.
-
-2001-05-11 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-common.c (finish_label_expr): New function, lifted from
- from cp/semantics.c.
- * c-common.h (finish_label_expr, lookup_label): New prototypes.
- * c-parse.in: Move 3 blocks of parser code into new functions.
- * c-typeck.c (simple_asm_stmt, c_cast_expr): New functions.
- * c-tree.h (simple_asm_stmt, c_cast_expr): New prototypes.
- (lookup_label): Remove.
-
-2001-05-11 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/t-mn10300 (dp-bit.c, fp-bit.c): Don't define
- FLOAT_BIT_ORDER_MISMATCH.
-
-2001-05-10 David Edelsohn <edelsohn@gnu.org>
-
- * expr.c (emit_push_insn): Convert PUSH_ROUNDING argument to
- bytes. Reported by Kazu Hirata <kazu@hxi.com>.
-
-2001-05-10 David Edelsohn <edelsohn@gnu.org>
-
- * expr.c (emit_group_load): extract_bit_field requires a REG or
- MEM as an argument.
-
-Thu May 10 14:45:44 2001 Jeffrey A Law (law@cygnus.com)
-
- * cse.c (cse_insn): Mostly remove first hunk of code which collapsed
- a computed jump into an unconditional jump.
- In second hunk of code for collapsing computed and conditional jumps
- into unconditional jumps, reemit the jump in additional cases.
-
- * jump.c (jump_optimize_1): Do not wrap the new jump target
- inside a LABEL_REF; gen_jump will do that automatically.
-
-2001-05-10 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * dwarf2out.c (mem_loc_descriptor): Do not pass constant pool
- contents for a SYMBOL_REF in case of floating point constants.
-
-2001-05-10 DJ Delorie <dj@redhat.com>
-
- * c-common.c (combine_strings): Widen strings in a
- host-endian-independent way.
-
-2001-05-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in: Remove many shift/reduce conflicts. Update
- %expect values.
- (declspecs_nosc_nots_nosa_noea, declspecs_nosc_nots_nosa_ea,
- declspecs_nosc_nots_sa_noea, declspecs_nosc_nots_sa_ea,
- declspecs_nosc_ts_nosa_noea, declspecs_nosc_ts_nosa_ea,
- declspecs_nosc_ts_sa_noea, declspecs_nosc_ts_sa_ea,
- declspecs_sc_nots_nosa_noea, declspecs_sc_nots_nosa_ea,
- declspecs_sc_nots_sa_noea, declspecs_sc_nots_sa_ea,
- declspecs_sc_ts_nosa_noea, declspecs_sc_ts_nosa_ea,
- declspecs_sc_ts_sa_noea, declspecs_sc_ts_sa_ea, declspecs_ts,
- declspecs_nots, declspecs_ts_nosa, declspecs_nots_nosa,
- declspecs_nosc_ts, declspecs_nosc_nots, declspecs_nosc, declspecs,
- maybe_type_quals_setattrs, typespec_nonattr, typespec_attr,
- typespec_reserved_nonattr, typespec_reserved_attr,
- typespec_nonreserved_nonattr, maybe_setattrs, structsp_attr,
- structsp_nonattr, components_notype, component_notype_declarator,
- absdcl1_ea, absdcl1_noea, direct_absdcl1, absdcl_maybe_attribute,
- firstparm, setspecs_fp): New
- (typed_declspecs, reserved_declspecs, typed_typespecs,
- reserved_typespecquals, declmods, typespec, typespecqual_reserved,
- typed_declspecs_no_prefix_attr reserved_declspecs_no_prefix_attr
- declmods_no_prefix_attr, nonempty_type_quals, structsp,
- type_quals): Remove. Users updated.
- (initdecls, notype_initdecls, after_type_declarator,
- parm_declarator, notype_declarator, absdcl1, components, ivars):
- Don't allow attributes at the start of a declarator; include them
- in the production containing the declarator instead. Always
- require type specifiers before trying to redeclare a typedef name.
- (typename): Allow for attributes but warn that they are ignored.
- (parmlist, firstparm, setspecs_fp): Include attributes in
- parmlist; suck them off the parser stack in firstparm using
- setspecs_fp.
-
-Thu May 10 09:17:42 2001 Jeffrey A Law (law@cygnus.com)
-
- * ifcvt.c (merge_if_block): Use any_uncondjump_p, not simplejump_p
- to determine if a block has an unconditional jump at its end.
-
- * jump.c (jump_optimize_1): When converting a conditional jump
- to an unconditional jump, build the jump using gen_jump instead
- of just modify operands in-place.
-
-2001-05-09 Zack Weinberg <zackw@stanford.edu>
-
- * cppinit.c (cpp_post_options): Shut off macro expansion if
- -fpreprocessed.
- * cpplib.c (_cpp_handle_directive): If -fpreprocessed, accept
- IN_I directives only if the # is in column 1 and the directive
- name begins in column 2.
- * cppmain.c (scan_buffer): Insert a space between # and an
- identifier, when that identifier is a directive name.
-
- * tradcpp.c (struct file_buf): Add a pointer to the next entry
- in the header search path.
- (enum node_type): Add T_INCLUDE_NEXT.
- (directive_table): Add entry for include_next.
- (do_include_next): New function.
- (process_include): New routine, broken out of do_include.
- (finclude): Insert 'nhd' argument, to be copied into
- next_header_dir of the new buffer.
- (main): Adjust to match.
- * gsyslimits.h, limity.h: Un-indent #include_next.
-
-2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * objc.texi: Move from ../libobjc/objc-features.texi. Adjust for
- inclusion as a chapter of the GCC manual.
- * gcc.texi: Include objc.texi.
- * fdl.texi: Use @unnumberedsec for the addendum.
- * Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.
-
-Wed May 9 16:01:41 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (DImode move splitters): Use !MMX and !SSE for the condition.
-
-Wed May 9 10:40:25 2001 Alexandre Oliva <aoliva@redhat.com>
-
- * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing
- handling of two-address insns.
-
-Wed May 9 10:36:18 2001 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.in (NM_FOR_TARGET): Look for ./nm, then
- ../binutils/nm-new instead of ../binutils/nm.
-
-Wed May 9 12:15:46 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movdi splitter): Fix the splitting condition
- (float_extenddftf splitter): Fix mode.
-
-Wed May 9 12:05:39 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * genrecog.c (write_switch): Avoid outputting of switch for
- types wider than int.
-
-2001-05-03 Andrew Haley <aph@cambridge.redhat.com>
-
- * reload1.c (copy_eh_notes): New function.
- (emit_input_reload_insns): Call it.
- (emit_output_reload_insns): Call it.
-
-2001-05-07 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc (i[34567]86-*-sco3.2v4*, i[34567]86-*-sco*):
- Delete stanzas.
- * config/i386/sco.h, config/i386/sco4.h, config/i386/scodbx.h,
- config/i386/sco4dbx.h, config/i386/x-sco4: Delete file.
-
- * optabs.c: Delete #ifdef BROKEN_LDEXP block.
-
-2001-05-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (interspace_jump): Revise comment.
- (builtin_longjmp): Block initial setup insns from delay slot of
- interspace branch.
- (builtin_setjmp_receiver): New expander to save and restore PIC
- register.
-
- * som.h (NM_FLAGS): Remove `-n' sort option. Revise comment.
-
-Mon May 7 09:30:14 2001 Jeffrey A Law (law@cygnus.com)
-
- * toplev.c (compile_file): Set up the output file before we call
- the various initializers for the compiler.
-
- * except.c (sjlj_mark_call_sites): Do not search for assignments to
- non-argumment registers that are mentioned in CALL_INSN_FUNCTION_USAGE.
-
- * pa.h (MAX_LONG_TYPE_SIZE): Should be 32, not 64.
- * pa-64.h (*_TYPE_SIZE): Undefine before redefining.
-
-2001-05-06 Zack Weinberg <zackw@stanford.edu>
-
- * Makefile.in (tradcpp0): Correct typo in dependency list.
-
-2001-05-06 Geoff Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_prologue): Don't save
- the link register if we're not going to use it.
-
- * config/rs6000/rs6000.c (output_profile_hook): Fix a warning.
- (output_function_profiler): Likewise.
-
-2001-05-07 Alan Modra <amodra@one.net.au>
-
- * pa.c (compute_frame_size): 64-bit frame marker is 16 bytes.
-
-2001-05-06 Alexandre Oliva <aoliva@redhat.com>
-
- * unroll.c (loop_iterations): Don't sign-extend abs_diff;
- zero-extend it. Make abs_inc unsigned.
-
- * optabs.c (expand_binop): Sign-extend xop0 and xop1 from the
- widest mode in narrowing and widening operations.
-
- * config/mips/mips.md: Sign extend CONST_INTs.
-
-2001-05-06 Andreas Jaeger <aj@suse.de>
-
- * invoke.texi (Option Summary): Add -momit-leaf-frame-pointer
- (i386 Options): Document -momit-leaf-frame-pointer.
-
-2001-05-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-typeck.c (internal_build_compound_expr): Check for
- array to pointer conversion just once.
-
-2001-05-05 Richard Henderson <rth@redhat.com>
-
- * integrate.c (copy_insn_list): Substitute NOTE_EXPECTED_VALUE.
-
-2001-05-05 Richard Henderson <rth@redhat.com>
-
- * except.c (remove_fixup_regions): Adjust REG_EH_REGION notes
- to the parent of the fixup region.
-
-2001-05-05 Jakub Jelinek <jakub@redhat.com>
-
- * gcc.c (cpp_options): Define __NO_INLINE__ unless we are honoring
- "inline" keyword.
- * cpp.texi (__NO_INLINE): Document it.
-
-2001-05-05 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (struct include_file): New member err_no.
- (find_or_create_entry): Set it.
- (open_file): Don't set fds to -2. Instead, use err_no to
- remember previous errors, if any.
-
-2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_gen_movhi): Optimize moves
- between X and Y by using sequences of xgdx and xgdy.
-
-2001-05-05 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md ("*logicalsi3_silshr16"): Use '?' instead
- of '!' for the 'D' alternative ('!' is too strong).
- ("*logicalsi3_silshl16"): Likewise.
- ("movstricthi"): Accept 'A' when 'd' constraint, remove spurious '+'.
- ("movstrictsi"): Remove spurious '+'.
- ("movstrictqi"): Don't accept 'A' and remove spurious '+'.
- ("tstqi_1", "*lshrqi3_const1"): Put 'm' constraint before 'd'.
- ("subqi3"): Disparage with '!' the 'x' and 'y' registers to avoid
- a reload to them.
-
-2001-05-04 David Edelsohn <edelsohn@gnu.org>
-
- * calls.c (store_one_arg): Don't divide align by BITS_PER_UNIT.
-
-2001-05-04 Lars Brinkhoff <lars@nocrew.org>
-
- * simplify-rtx.c (simplify_binary_operation): Simplify ~a + 1
- into -a.
-
-2001-05-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * config/rs6000/rs6000.md (ashldi3 splits): Guard with
- TARGET_POWERPC64.
-
-2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md (lshrhi3_const1): Fix shift of
- soft register, use ror instead of rol.
-
-2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_check_z_replacement): Take
- into account pre/post increment decrement for 68HC12.
- Fix other problems in replacement and fix call to reg_mentioned_p.
-
-2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/larith.asm (L_regs_frame): New for _.frame.
- Put the soft registers in bss for 68HC12.
- (L_regs_d3_4): New for _.d3 and _.d4.
- (L_regs_d5_6): Likewise.
- (L_regs_d1_2): Likewise.
- * config/m68hc11/t-m68hc11-gas (T_CPPFLAGS): Compile new parts.
-
-2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__HAVE_SHORT_DOUBLE__
- to the pre-processor when -fshort-double is specified.
- * config/m68hc11/m68hc11.2 (CPP_SPEC): Likewise.
-
-2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/larith.asm (divmodhi4): Empty for 68HC12.
- (__mulsi3): Rewrite for 68HC12.
- * config/m68hc11/m68hc11.md (divmodhi4): Use idivs for 68HC12.
- Mark 'x' constraint with earlyclobber to prevent a
- RELOAD_FOR_OTHER_ADDRESS to go in it.
- (mulhi3_m68hc12): New pattern.
- (mulhi3_m68hc11): Rename of mulhi3.
- (mulhi3): New expand for 68HC12 optimisation.
- (umulhisi3, mulhisi3): New patterns for 68HC12.
-
-2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md (*tbne, *tbeq): New patterns for 68HC12.
- (extendqisi2, extendqihi2, extendhisi2): Use sex for 68HC12.
- (uminqi3, umaxqi3, uminhi3, umaxhi3): New pattern for 68HC12.
-
-2001-05-04 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.h (CONST_COSTS): Make the cost of
- constants cheap after reload.
- * config/m68hc11/m68hc11.c (m68hc11_shift_cost): Shift by 16 and 32
- are cheap.
- (m68hc11_rtx_costs): Cost of multiplication by 65536 is expensive
- so that gcc prefers a shift by 16.
- (m6811_cost, m6812_cost): Make the shift cheap compared to an add.
-
-2001-05-04 Nick Clifton <nickc@cambridge.redhat.com>
-
- * config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Define.
-
-2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.h: NULL_PTR -> NULL.
- * arm.c: Likewise.
- * arm.h: Likewise.
- * avr.h: Likewise.
- * c4x.c: Likewise.
- * c4x.h: Likewise.
- * i386.c: Likewise.
- * i386.md: Likewise.
- * i860.c: Likewise.
- * ia64.c: Likewise.
- * m68hc11.h: Likewise.
- * rs6000.h: Likewise.
- * sh.c: Likewise.
- * sh.h: Likewise.
- * sparc.h: Likewise.
- * v850.c: Likewise.
-
- * expr.c: Likewise.
- * final.c: Likewise.
- * gcc.c: Likewise.
- * recog.c: Likewise.
-
-2001-05-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * i386.c (ix86_emit_restore_regs_using_mov, ix86_save_reg): Change
- `bool' parameter to `int'.
-
- * hash.c (hash_lookup): Likewise.
-
- * hash.h (hash_lookup): Likewise.
-
- * tlink.c (symbol_hash_lookup, demangled_hash_lookup): Likewise.
-
-Fri May 4 13:10:03 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_initialize_trampoline): Fix mode of constant.
-
-2001-05-03 Geoff Keating <geoffk@redhat.com>
-
- * invoke.texi (i386 Options): Delete references to -malign-jumps,
- -malign-loops, -malign-functions.
- * i386.c (ix86_align_funcs): Delete.
- (ix86_align_loops): Delete.
- (ix86_align_jumps): Delete.
- (override_options): Mark -malign-* as obsolete. Emulate their
- behavior with the -falign-* options. Default -falign-* from
- the processor table.
- * i386.h (FUNCTION_BOUNDARY): Define to 16; revert Richard Kenner's
- patch of Wed May 2 13:09:36 2001.
- (LOOP_ALIGN): Delete.
- (LOOP_ALIGN_MAX_SKIP): Delete.
- (LABEL_ALIGN_AFTER_BARRIER): Delete.
- (LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP): Delete.
-
-2001-05-04 Andreas Jaeger <aj@suse.de>
-
- * except.h: Add prototype declaration for
- expand_builtin_init_dwarf_reg_sizes.
-
-2001-05-03 Geoffrey Keating <geoffk@redhat.com>
-
- * Makefile.in (site.exp): Set TESTING_IN_BUILD_TREE.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md ("bitcmpqi"): New pattern for bitb
- instruction.
- ("bitcmpqi2"): New pattern for bit-extract and test.
- ("bitcmphi"): New pattern for bitb/bita instructions.
-
-2001-05-03 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gccbug.in: Use a temporary directory when the mktemp command is
- not available.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.h (STATIC_CHAIN_REGNUM): Use soft z register
- instead of _.d1.
- (INITIALIZE_TRAMPOLINE): Call it.
- (TRAMPOLINE_SIZE): Define according to 68HC11/68HC12.
- (TRAMPOLINE_TEMPLATE): Remove.
- * config/m68hc11/m68hc11.c (m68hc11_initialize_trampoline): New.
- * config/m68hc11/m68hc11-protos.h (m68hc11_initialize_trampoline):
- Declare.
-
-2001-05-03 David O'Brien <obrien@FreeBSD.org>
-
- * config/t-freebsd: Don't install "assert.h" in gcc. Compile crtbeginS.o
- and crtendS.o with PIC.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/larith.asm (__mulqi3): Fix multiplication of two
- negative numbers.
- (___subdi3, ___adddi3): Use x instead of y as index register.
- (__init_bss_section, __map_data_section): Optimize for 68HC12.
- (__memset, __memcpy): Likewise.
- (regs): Put the soft registers in bss for 68HC12.
- (abort): Use trap to abort for 68hc12.
- (__mulhi3, __mulhi32): Use emul for 68hc12.
- (__mulsi3): Avoid to use the tmp soft register for 68hc12.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.h (LIMIT_RELOAD_CLASS): Don't define.
- * config/m68hc11/m68hc11-protos.h (limit_reload_class): Remove.
- * config/m68hc11/m68hc11.c (limit_reload_class): Remove.
- (m68hc11_override_options): Remove setting of flag_no_nonansi_builtin.
- Set 68HC12 min offset to -65536.
- (print_operand): Put parenthesis arround the operand if it refers
- to a symbol having the same name as a register.
- (m68hc11_z_replacement): When z register is replaced by its
- equivalent soft register, force the insn to be re-recognized.
- (m68hc11_check_z_replacement): Fix the test when destination is
- the index register and z dies in the insn.
- (m68hc11_reorg): Remove the REG_DEAD notes beforce recomputing them.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_override_options): Initialize
- costs according to processor variant.
- (m68hc11_shift_cost): New function to compute shift costs.
- (m68hc11_rtx_costs): Define costs according to processor variant.
- (m6811_cost): Costs for 68HC11.
- (m6812_cost): Costs for 68HC12.
- (COSTS_N_INSNS): Remove.
-
- * config/m68hc11/m68hc11.h (RTX_COSTS): New.
- (DEFAULT_RTX_COSTS): Remove.
- (CONST_COSTS): Define costs according to OUTER_CODE.
- (processor_costs): New struct to define costs.
- (m68hc11_cost): Pointer to current costs.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md (*addhi3_68hc12): Fix generation
- and use m68hc11_notice_keep_cc when using leax/leay.
- (addhi3 split): Reject split if the insn is handled by
- leax/leay above.
- * config/m68hc11/m68hc11.c (m68hc11_split_move): For 68HC12 the
- push must be handled in a special way if the source operand uses
- sp as index register.
- (m68hc11_notice_keep_cc): New function.
- (m68hc11_gen_movhi): Use it when an insn changes a register but
- not the flags.
- (m68hc11_gen_movqi): Fix move for 68HC12.
- * config/m68hc11/m68hc11-protos.h (m68hc11_notice_keep_cc): Declare.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Use LCT_CONST
- and don't pass operands[0] to emit_library_call_value.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md (tsthi_1): Use cpd for 68HC12.
- (zero_extendsi split): Simplify and use (zero_extendhi).
- (*addhi3): Remove 'w' constraint since stack pointer is handled
- by (addhi3_sp).
- (*ashlhi3_2): Operand 2 is clobbered use '+' for its constraint.
- (*ashlhi3, *ashrhi3, *lshrhi3): Likewise.
- (*ashrhi3_const): Fix shift by 7.
- (*lshrsi3_const16): Fix template.
- (call, call_value): Fix constraint and predicate.
-
-2001-05-03 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md (X_REGNUM, D_REGNUM): New constant.
- (Y_REGNUM, SP_REGNUM, PC_REGNUM, A_REGNUM, B_REGNUM): Likewise.
- (CC_REGNUM): Likewise.
- (*unnamed splits): Use above constants instead of hard coded numbers.
- (*adcq, *subcq, *addsi_carry, *rotlqi3_with_carry): Likewise.
- (*rotlhi3_with_carry, *rotrhi3_with_carry): Likewise.
- (*return_16bit, *unnamed peepholes): Likewise.
-
-2001-05-03 David O'Brien <obrien@FreeBSD.org>
-
- * config.gcc(rs6000-ibm-aix|powerpc-ibm-aix): Do not include
- rs6000/rs6000.h twice.
-
-2001-05-03 Mark Elbrecht <snowball3@bigfoot.com>
-
- * config/i386/djgpp.h (CPP_PREDEFINES): Define __GO32__.
- (CPP_SPEC): Conditionally define MSDOS and GO32.
- (SUBTARGET_SWITCHES): Ignore -mbnu210 and -mno-bnu210.
- (SUBTARGET_OVERRIDE_OPTIONS): Warn that -mbnu210 and -mno-bnu210 are
- ignored.
- (SUPPORTS_WEAK, SUPPORTS_ONE_ONLY): Remove.
-
-2001-05-03 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.md: Sign-extend GEN_INT operands.
-
-2001-05-03 Mark Mitchell <mark@codesourcery.com>
-
- * integrate.h (struct inline_remap): Add leaf_reg_map table.
- * integrate.c (expand_inline_function): Use xcalloc to allocate
- memory.
- (copy_rtx_and_substitute): Use the leaf_reg_map for leaf
- registers.
-
-2001-05-03 Mark Mitchell <mark@codesourcery.com>
-
- * c-dump.c (dequeue_and_dump): Don't look at DECL_ASSEMBLER_NAME
- if it is not set.
-
-2001-05-03 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.h (LINK_SPEC): Pass --relax to the
- linker if -mrelax is given.
- (TARGET_SWITCHES): Document -mrelax.
-
- Re-installed 2001-01-09's patch:
- * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
- if it's wider than long and the target's long is wider than the
- host's.
-
-2001-05-02 David O'Brien <obrien@FreeBSD.org>
-
- * config.gcc, config/rs6000/aix51.h, config/rs6000/mach.h: Do not
- directly include rs6000/rs6000.h. Instead do it in tm.h.
-
-2001-05-02 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (STRING_OBJECT_CLASS_NAME): Default to
- NSConstantString for NeXT-style runtimes.
- (STRING_OBJECT_GLOBAL_NAME): New macro.
- (enum objc_tree_index): Add values OCTI_CNST_STR_GLOB_ID and
- OCTI_STRING_CLASS_DECL.
- (constant_string_global_id): New macro.
- (string_class_decl): Ditto.
- (setup_string_decl): New function.
- (build_objc_string_object): Use it to build a NeXT runtime
- compatible string initializer.
-
-2001-05-02 Jakub Jelinek <jakub@redhat.com>
-
- * tradcpp.c (do_define): Make sure we don't walk past limit.
-
-2000-05-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * config/rs6000/rs6000.c (rs6000_legitimate_address): Allow any stack
- offsets if not REG_OK_STRICT.
-
- * config/rs6000/rs6000.h (REG_OK_STRICT_FLAG): New macro.
- (INT_REG_OK_FOR_INDEX_P): Likewise.
- (INT_REG_OK_FOR_BASE_P): Likewise.
- (REG_OK_FOR_INDEX_P): Use INT_REG_OK_FOR_INDEX_P.
- (REG_OK_FOR_BASE_P): Use INT_REG_OK_FOR_BASE_P.
- (LEGITIMATE_OFFSET_ADDRESS_P): Use INT_REG_OK_FOR_INDEX_P and
- INT_REG_OK_FOR_BASE_P instead of REG_OK_FOR_INDEX_P and
- REG_OK_FOR_BASE_P. Take an additional parameter.
- (LEGITIMATE_INDEXED_ADDRESS_P): Likeewise.
- (LEGITIMATE_INDIRECT_ADDRESS_P): Likewise.
- (LEGITIMATE_LO_SUM_ADDRESS_P): Likewise.
- (GO_IF_LEGITIMATE_ADDRESS): Move code into new function
- rs6000_legitimate_address() and use it.
- * config/rs6000/rs6000.c: Update all callers.
- (rs6000_legitimate_address): New function.
-
-2001-05-02 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): Merge
- special_constant conditional blocks together.
-
-2001-05-02 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Remove unused NAMED
- parameter.
- (STRICT_ARGUMENT_NAMING): Define.
- * config/rs6000/rs6000.c (function_arg_advance, function_arg,
- function_arg_partial_nregs, setup_incoming_varargs): Remove
- args logic which depends on "named" now that STRICT_ARGUMENT_NAMING
- is defined.
-
-Wed May 2 13:09:36 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/i386/i386.h (FUNCTION_BOUNDARY): Result is unsigned.
-
- * function.c (fixup_var_regs_1, case SUBREG): Use promoted mode
- for replacement.
-
- * expr.c (store_field): Do nothing except elaborate side-effects if
- zero-bit field.
-
-2001-05-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-lex.c: NULL_PTR -> NULL.
- * cse.c: Likewise.
- * emit-rtl.c: Likewise.
- * gcse.c: Likewise.
- * genpeep.c: Likewise.
- * jump.c: Likewise.
- * mips-tdump.c: Likewise.
- * reload1.c: Likewise.
- * rtlanal.c: Likewise.
- * stmt.c: Likewise.
- * stor-layout.c: Likewise.
- * toplev.c: Likewise.
-
-2001-05-01 Per Bothner <per@bothner.com>
-
- * expr.c (expand_expr): When compiling LABELED_BLOCK_EXPR,
- call do_pending_stack_adjust before emiting label.
-
-2001-05-01 Mark Mitchell <mark@codesourcery.com>
-
- * extend.texi: Fix typo.
-
-2001-05-01 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (build_module_descriptor): Clear DECL_CONTEXT
- of UOBJC_MODULES_decl.
- (generate_strings): Clear DECL_CONTEXT of new decl nodes.
- (generate_descriptor_table): Ditto.
- (generate_protocols): Ditto.
- (generate_protocol_list): Ditto.
- (generate_classref_translation_entry): Ditto.
-
-2001-05-01 Jeffrey Oldham <oldham@codesourcery.com>
-
- * invoke.texi (Optimize Options): Add documentation for `--param
- max-delay-slot-insn-search' and `--param
- max-delay-slot-live-search' and reorder --param section.
- * params.def: Modify initial comment.
- * params.h (param_info): Add `help' member.
- * toplev.c (lang_independent_params): Include `help' description.
- (display_help): Print --param parameters.
-
-2001-05-01 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc: Don't default xmake_file to ${cpu_type}/x-${cpu_type}.
- Remove references to deleted files.
- (*-*-openbsd): No need to override xmake_file.
- (*-*-sysv4): Treat like *-*-sysv.
-
- * configure.in: Probe for ldopen in various places, and set up
- collect2 to be linked with them if found.
- Don't dink with Windows registry stuff unless $host_os is a
- Win32 os name. Check to see if we need -ladvapi32.
- * configure: Regenerate.
-
- * Makefile: Get rid of CLIB and HOST_CLIB.
- Substitute in COLLECT2_LIBS and link collect2 against its contents.
- * build-make: Get rid of HOST_CLIB.
-
- * config/a29k/x-unix, config/alpha/x-osf, config/i386/x-aix,
- config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
- config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
- config/mips/x-sysv, config/rs6000/x-aix31, config/rs6000/x-aix41,
- config/rs6000/x-rs6000: Delete.
-
- * config/i386/x-cygwin, config/m68k/t-aux, config/mips/x-iris:
- Don't set CLIB.
-
- 24 x-host fragments remain, 0 x-cpu, 3 top level.
-
-2001-05-01 Zack Weinberg <zackw@stanford.edu>
-
- * aclocal.m4 (gcc_AC_C_CHAR_BIT): Correct test program.
- * configure: Regenerate.
-
-2001-05-01 Angela Marie Thomas <angela@cygnus.com>
-
- * Makefile.in (install-headers): Remove redundant dependency.
-
-2001-05-01 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-tree.texi (USING_STMT): Document.
-
-2001-05-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * bitmap.c: Change NULL_PTR to NULL or "(rtx*)0".
- * c-common.c: Likewise.
- * c-decl.c: Likewise.
- * combine.c: Likewise.
- * rs6000.c: Likewise.
- * except.c: Likewise.
- * explow.c: Likewise.
- * expr.c: Likewise.
- * fold-const.c: Likewise.
- * function.c: Likewise.
- * gcc.c: Likewise.
- * gcse.c: Likewise.
- * integrate.c: Likewise.
- * loop.c: Likewise.
- * objc/objc-act.c: Likewise.
- * recog.c: Likewise.
- * reg-stack.c: Likewise.
- * reload.c: Likewise.
- * reload1.c: Likewise.
- * simplify-rtx.c: Likewise.
- * stmt.c: Likewise.
- * varasm.c: Likewise.
-
-2001-05-01 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.def: New file.
- * diagnostic.h (diagnostic_t): New enum.
- * Makefile.in (diagnostic.o): Depend on diagnostic.def
-
-2001-04-30 Zack Weinberg <zackw@stanford.edu>
-
- * tsystem.h: Test only POSIX for availability of string.h
- and time.h.
- * config.gcc (all systems): If USG appeared in xm_defines,
- change it to POSIX. If both USG and POSIX appeared, just
- delete USG. Remove unnecessary quotes around xm_defines
- settings.
- (m68k-crds-unos*): Don't #define unos - tested nowhere.
- (m68k-apple-aux*): Don't #define AUX - tested nowhere.
- (alpha*-*-linux*ecoff*, powerpc-*-linux*libc1,
- powerpc-*-linux*): No need to set xm_defines - handled by
- global settings for *-*-linux*.
-
-2001-04-30 Zack Weinberg <zackw@stanford.edu>
-
- * dbxout.c, mips-tfile.c, config/mips/mips.c, xcoffout.c:
- Always include gstab.h, not system stab.h. Don't provide
- default definitions of N_CATCH or N_OPT. Always use the
- gstab.h variant of STAB_CODE_TYPE.
- * final.c: Don't include stab.h/gstab.h at all, or provide
- defaults for N_SLINE and N_SOL.
-
- * xcoffout.c: Can assume N_MAIN, N_DSLINE, N_BSLINE, N_BINCL,
- N_EINCL, N_EXCL, N_M2C, N_SCOPE, N_CATCH, and N_OPT are
- available.
- * sdbout.c: Always include gsyms.h instead of system syms.h.
-
- * configure.in: No need to check for stab.h.
- * configure, config.in: Regenerate.
- * Makefile.in (final.o): Don't depend on gstab.h.
-
-2001-04-30 Mark Mitchell <mark@codesourcery.com>
- Richard Henderson <rth@redhat.com>
-
- * extend.texi: Improve documentation of volatile asms.
-
-2001-04-30 Mark Mitchell <mark@codesourcery.com>
-
- * c-tree.texi: Fix thinko.
- * gcc.texi: Likewise.
-
-2001-04-30 Richard Henderson <rth@redhat.com>
-
- * c-common.c (c_promoting_integer_type_p): New function, from the
- corpse of old macro. Properly promote too-small enumerations and
- booleans. Adjust all callers.
- * c-common.h (C_PROMOTING_INTEGER_TYPE_P): Remove.
- (c_promoting_integer_type_p): Declare.
- * c-decl.c: Adjust C_PROMOTING_INTEGER_TYPE_P invocations.
- * c-typeck.c: Likewise.
- (default_conversion): Remove now redundant boolean check.
-
-2001-04-30 Jan Hubicka <jh@suse.cz>
- Richard Henderson <rth@redhat.com>
-
- * regmove.c (try_apply_stack_adjustment): Remove now redundant
- sanity checks.
- (combine_stack_adjustments_for_block): Don't combine stack
- allocation followed by deallocations. Handle grow-up stacks.
-
-2001-04-30 Mark Mitchell <mark@codesourcery.com>
-
- * fdl.texi: New file.
- * c-tree.texi: Use the GFDL.
- * gcc.texi: Likewise.
-
-2001-04-30 Stan Shebs <shebs@apple.com>
-
- * invoke.texi: Add a section documenting Objective-C options.
-
-2001-04-27 Andrew Haley <aph@cambridge.redhat.com>
-
- * emit-rtl.c (try_split): Copy EH notes to sequence.
-
-2001-04-30 Mark Mitchell <mark@codesourcery.com>
-
- * regmove.c (record_stack_memrefs): Catch all references to the
- stack pointer.
-
-2001-04-29 Toomas Rosin <toomas at ns dot tklabor dot ee>
-
- * Makefile.in (stmp-fixinc): quote shell assignment values
-
-2001-04-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-aux-info.c: NULL_PTR->NULL in calls to `concat'.
-
- * gcc.c: Likewise.
-
- * prefix.c: Likewise.
-
-2001-04-28 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (handle_class_ref): Rewrite to flush target
- specific code and use new macro ASM_DECLARE_UNRESOLVED_REFERENCE.
- * config/darwin.h (ASM_DECLARE_UNRESOLVED_REFERENCE): Define.
- * tm.texi (ASM_DECLARE_UNRESOLVED_REFERENCE): Document.
-
- * config/darwin.h (STANDARD_EXEC_PREFIX): Don't define.
- (NEXT_OBJC_RUNTIME): Define.
-
-Sat Apr 28 21:02:58 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * rtl.h (simplify_gen_relational): Add cmp_mode parameter.
- * simplify-rtx.c (simplify_gen_relational): Likewise.
-
- * simplify-rtx.c (simplify_replace_rtx): Handle relationals and MEMs.
-
- * i386.h (VALID_SSE_REG_MODE): Accept MMX modes if SSE2
- * i386.md (movsi_1, movdi2, movdi_1_rex64): Handle SSE2 moves.
-
- * i386.md (negsf2, negdf2, abssf2, absdf2): Force operands to
- registers in SSE case; fix handling of the immediates.
- (negsf2_ifs, abssf2_ifs): Tweak constraints; require
- operands to be in regsiters before reload.
- (negdf2_ifs, absdf2_ifs): Likewise; disable for 64bit
- (negdf2_ifs_rex64, absdf2_ifs_rtx64): New.
- (abstf,absxf,negtf,negxf splitters): Compute
- properly the regnum for x86_64.
- (avsdf2_if_rex64): New.
-
-Sat Apr 28 10:36:23 2001 Jeffrey A Law (law@cygnus.com)
-
- * flow.c (propagate_block_delete_insn): Handle deletion of ADDR_VEC
- and ADDR_DIFF_VEC insns when the proceeding CODE_LABEL was put
- into the constant pool.
- * jump.c (jump_optimize_1): Remove barrier successors after all
- the LABEL_NUSES counds have been computed.
- (delete_barrier_successors): When deleting a tablejump insn, also
- delete the jump table it uses.
- * varasm.c (force_const_mem): Set LABEL_PRESERVE_P when forcing a
- label into memory.
-
-2001-04-28 Martin Kalen <martin.kalen@todaysystems.com.au>
-
- * pa.c (FRP): Remove erroneous white space in macro definition.
-
-2001-04-28 Andreas Jaeger <aj@suse.de>
-
- * invoke.texi: Use XX-bit instead of XXbit or XX bit where
- appropriate.
- * extend.texi: Likewise.
- * tm.texi: Likewise.
-
-2001-04-28 Andreas Jaeger <aj@suse.de>
-
- * md.texi: Use XX-bit instead of XXbit or XX bit where
- appropriate.
-
-2001-04-28 Jens Schweikhardt <schweikh@schweikhardt.net>
-
- * gcc.c (process_command): Allow -l lib in addition to -llib
- for POSIX compliance. This fixes PR c/2347.
-
- * invoke.texi: Update section on Link Options accordingly.
-
-2001-04-27 Zack Weinberg <zackw@stanford.edu>
-
- * function.c (purge_addressof_1): Remove the duplicate
- if (code == SET) block. Fold the two if (code == ADDRESSOF)
- blocks together.
-
-2001-04-28 Jason Merrill <jason_merrill@redhat.com>
-
- * except.c (expand_eh_region_start): Don't start a new block.
- (expand_eh_region_end): Don't end a block.
- * stmt.c (expand_end_bindings): Don't end EH blocks.
- (expand_decl_cleanup): Starting an EH region won't change the block.
- (mark_block_as_eh_region, mark_block_as_not_eh_region): Lose.
- (is_eh_region): Lose.
- * tree.h: Adjust.
-
-2001-04-27 Jeffrey Oldham <oldham@codesourcery.com>
-
- * except.c (expand_eh_region_end_cleanup): word_mode, not Pmode.
-
- * collect2.c (main): Add `-L' case to remove duplicate entries.
- (is_in_args): New function to check for a duplicate argument.
- * defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New macro.
- * tm.texi (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): New documentation.
- * config/mips/iris6.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
- Define to be nonzero.
-
-2001-04-27 Andreas Jaeger <aj@suse.de>
- Richard Henderson <rth@redhat.com>
-
- * md.texi (Machine Constraints): Document additional i386
- constraints and fix description of "A".
-
-Fri Apr 27 10:43:49 2001 Jeffrey A Law (law@cygnus.com)
-
- * tm.texi (TARGET_MEM_FUNCTIONS): Update text.
-
-2001-04-27 Jason Merrill <jason_merrill@redhat.com>
-
- * except.c (get_exception_filter): word_mode, not Pmode.
-
-2001-04-26 Geoffrey Keating <geoffk@redhat.com>
-
- * config/sparc/sparc.md (movsf_no_f_insn): Add more alternatives
- common to other movsf patterns. Move up so that in future
- people who change the other patterns will change it too.
- (movsf_lo_sum): Allow even for soft-float; add appropriate
- constraints.
- (movsf_high): Likewise.
- (movsf_high+1): Allow even for soft-float.
-
- * function.c (expand_function_end): Always clobber the
- return registers, even if there is no return label.
-
-Thu Apr 26 20:28:21 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * (ix86_expand_fp_movcc): Re-enable SSE conditional move generation.
-
-Thu Apr 26 19:20:28 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (abs/neg splitter): Fix calculation of sign bit for TFmodes
- (pushqi2_rex64, pushhi2_rex64): Add.
-
-2001-04-26 Andrew Haley <aph@cambridge.redhat.com>
-
- * except.c (expand_eh_region_end_cleanup): Force pending stack
- adjust before emitting label that branches around cleanup code.
-
-2001-04-26 H.J. Lu (hjl@gnu.org)
-
- * config.gcc (mips*-*-linux*): Add elfos.h to tm_file.
-
- * config/mips/ecoff.h (STARTFILE_SPEC): Undefine before
- define.
- * config/mips/elf64.h (MAX_OFILE_ALIGNMENT): Likewise.
- (ASM_OUTPUT_SECTION_NAME): Likewise.
- (ASM_WEAKEN_LABEL): Likewise.
- (UNIQUE_SECTION): Likewise.
- (ASM_OUTPUT_CONSTRUCTOR): Likewise.
- (ASM_OUTPUT_DESTRUCTOR): Likewise.
- * config/mips/elf.h (MAX_OFILE_ALIGNMENT): Likewise.
- (ASM_OUTPUT_SECTION_NAME): Likewise.
- (ASM_WEAKEN_LABEL): Likewise.
- (UNIQUE_SECTION): Likewise.
- (ASM_OUTPUT_CONSTRUCTOR): Likewise.
- (ASM_OUTPUT_DESTRUCTOR): Likewise.
- * config/mips/linux.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/mips/mips.h (DBX_CONTIN_LENGTH): Likewise.
- (ASM_FILE_START): Likewise.
- (ASM_OUTPUT_SOURCE_LINE): Likewise.
- (ASM_DECLARE_OBJECT_NAME): Likewise.
- (ASM_FILE_END): Likewise.
- (ASM_DECLARE_FUNCTION_NAME): Likewise.
- (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- (ASM_GENERATE_INTERNAL_LABEL): Likewise.
- (ASM_OUTPUT_CASE_LABEL): Likewise.
- (ASM_OUTPUT_SKIP): Likewise.
- (ASM_OUTPUT_ASCII): Likewise.
- (ASM_OUTPUT_IDENT): Likewise.
- (READONLY_DATA_SECTION): Likewise.
- (EXTRA_SECTIONS): Likewise.
- (EXTRA_SECTION_FUNCTIONS): Likewise.
- (SELECT_RTX_SECTION): Likewise.
- (SELECT_SECTION): Likewise.
-
- * config/mips/linux.h (INVOKE__main): Undefine.
- (CTOR_LIST_BEGIN): Likewise.
- (CTOR_LIST_END): Likewise.
- (DTOR_LIST_BEGIN): Likewise.
- (DTOR_LIST_END): Likewise.
- (SET_ASM_OP): Defined it to ".dummy".
- (ASM_OUTPUT_DEF): Defined.
- (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Defined.
-
-2001-04-26 Nick Clifton <nickc@cambridge.redhat.com>
-
- * config/arm/arm.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Define, if the
- assembler supports .p2align.
-
-2001-04-26 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-lex.c (c_lex): Remove # from %o diagnostic formatting.
-
-2001-04-26 Jakub Jelinek <jakub@redhat.com>
-
- * integrate.c (expand_inline_function): Check for error_mark_node
- in actual argument.
-
-2001-04-26 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.h (CC1_CPU_SPEC): Fix deprecation warnings for
- -m386 and -m486.
-
-2001-04-26 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in (configargs.h): Define thread_model.
- * configure: Rebuilt.
- * gcc.c (main): Print it with -v.
-
-2001-04-25 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Document -Wmissing-braces, -dumpspecs,
- -dumpmachine, -dumpversion, -fmem-report and -ftime-report.
- * gcc.1: Regenerate.
-
-2001-04-25 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * dwarfout.c (is_pseudo_reg, type_main_variant, is_tagged_type,
- is_redundant_typedef): Use static inline instead of inline static.
-
-Wed Apr 25 18:21:01 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h: Move W32API search to LINK_SPEC to ensure that
- this directory is always searched.
-
-2001-04-25 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_expand_epilogue): Properly compute size
- of registers to restore along non eh_return path.
-
-2001-04-25 Jakub Jelinek <jakub@redhat.com>
-
- * c-format.c (check_format_info_recurse): Handle
- PLUS_EXPR for format string.
-
-2001-04-25 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/ia64.h (CC1_SPEC): Define.
- * config/ia64/linux.h (CC1_SPEC): Define.
-
-Wed Apr 25 17:09:50 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * emit-rtl.c (constant_subword): Also do sign extension in
- BITS_PER_WORD == 16 case.
-
-2001-04-25 Jason Merrill <jason_merrill@redhat.com>
-
- * loop.c (try_swap_copy_prop): Go back to checking insn.
-
-2001-04-25 Jakub Jelinek <jakub@redhat.com>
-
- * emit-rtl.c (subreg_hard_regno): Only do HARD_REGNO_MODE_OK check
- if check_mode is nonzero.
-
-2001-04-25 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (ix86_expand_int_movcc): If overlap between
- out and comparison sequence has been detected, put result into
- proper temporary pseudo.
-
-2001-04-24 Zack Weinberg <zackw@stanford.edu>
-
- * Makefile.in (LIB2FUNCS): Remove _varargs and __dummy.
- * libgcc-std.ver: Remove __builtin_saveregs, __dummy, and __empty.
- * libgcc2.c: Remove __dummy and __builtin_saveregs.
- * libgcc2.h: Don't prototype __builtin_saveregs or __dummy.
- * config/i860/varargs.asm: New file - preserve i860 __builtin_saveregs
- for future reference.
-
-2001-04-24 Jason Merrill <jason_merrill@redhat.com>
-
- * except.c (reachable_handlers): Step out one level from a RESX.
-
- * except.c (struct eh_region): Rename 'last' to 'resume'.
- (mark_eh_region, duplicate_eh_region_1): Adjust.
- (expand_eh_region_end_cleanup): Remember the jump, not the barrier.
- (build_post_landing_pads): Likewise.
- (expand_end_catch, expand_eh_region_end_allowed): Don't set it.
- (expand_eh_region_end_must_not_throw): Likewise.
- (connect_post_landing_pads): Thread (only) regions with non-deleted
- resume insns.
-
- * except.c (expand_eh_region_end_cleanup): Save the EH return data
- registers around the cleanup.
- (get_exception_filter): New fn.
- (finish_eh_generation): Use it.
-
-2001-04-24 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-semantics.c (add_scope_stmt): Don't call
- current_scope_stmt_stack multiple times.
-
-2001-04-24 Zack Weinberg <zackw@stanford.edu>
- Nathan Sidwell <nathan@codesourcery.com>
-
- Lazy __FUNCTION__ generation.
- * c-common.h (RID_FUNCTION_NAME, RID_PRETTY_FUNCTION_NAME,
- RID_C99_FUNCTION_NAME): New _RIDs.
- (CTI_FUNCTION_ID, CTI_PRETTY_FUNCTION_ID, CTI_FUNC_ID): Remove.
- (CTI_FUNCTION_NAME_DECL, CTI_PRETTY_FUNCTION_NAME_DECL,
- CTI_C99_FUNCTION_NAME_DECL, CTI_SAVED_FUNCTION_NAME_DECLS): New
- global tree slots.
- (function_id_node, pretty_function_id_node, func_id_node): Remove.
- (c99_function_name_decl_node, function_name_decl_node,
- pretty_function_name_decl_node, saved_function_name_decls):
- Declare.
- (struct language_function): Remove x_function_name_declared_p.
- (make_fname_decl): Remove a parameter.
- (declare_function_names): Remove prototype.
- (start_fname_decls, finish_fname_decls): Prototype.
- (fname_as_string): Likewise.
- (fname_string, fname_decl): Likewise.
- * c-common.c (make_fname_decl): Adjust.
- (struct fname_var_t): New struct.
- (fname_vars): New static array.
- (declare_function_name): Remove.
- (start_fname_decls, finish_fname_decls): New functions.
- (fname_as_string): New function from remnants of
- declare_function_name.
- (fname_string, fname_decl): New functions.
-
- * c-decl.c (c_function_name_declared_p): Remove.
- (init_decl_processing): Don't generate __FUNCTION__ et al ids,
- don't call declare_function_name. Call start_fname_decls.
- (c_make_fname_decl): Adjust parameters. Generate the name. Don't
- clobber the line number. Call finish_decl.
- (start_function): Call start_fname_decls.
- (finish_function): Call finish_fname_decls.
- Remove c_function_name_declared_p.
- (push_c_function_context): Don't push c_function_name_declared_p.
- (pop_c_function_context): Don't pop c_function_name_declared_p.
- (c_begin_compound_stmt): Don't check c_function_name_declared_p.
- * c-parse.in (STRING_FUNC_NAME, VAR_FUNC_NAME): New tokens.
- (program): Call finish_fname_decls for C.
- (primary): Add VAR_FUNC_NAME.
- (reswords): Add slots for __FUNCTION__ et al.
- (rid_to_yy): Add mappings for __FUNCTION__ et al.
- (yylexname): If it's a STRING_FUNC_NAME generate the function name
- now. Don't look for VAR_DECLs containing __FUNCTION__ et al.
- * c-semantics.c (prune_unused_decls): Remove.
- (finish_stmt_tree): Don't call prune_unused_decls.
- (genrtl_decl_stmt): Don't prune unused decls here.
-
-2001-04-24 Nick Clifton <nickc@cambridge.redhat.com>
-
- * dwarf2out.c (mem_loc_descriptor): If a SYMBOL_REF is in the
- constant pool, use the pool's SYMBOL_REF instead.
-
- * config/v850/v850.h (STRICT_ALIGNMENT): Always set, even for the
- v850e.
-
-2001-04-23 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-convert.c (convert): When converting to a BOOLEAN_TYPE, avoid
- passing nested NOP_EXPRs to fold.
-
-Mon Apr 23 14:32:12 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * reg-stack.c (emit_swap_insn): Do not get pass CALL_INSNs.
-
-2001-04-22 Mark Mitchell <mark@codesourcery.com>
-
- * loop.c (loop_delete_insns): Add prototype.
-
-2001-04-23 Phil Edwards <pme@sources.redhat.com>
-
- * configure.in: Remove ENABLE_STD_NAMESPACE.
- * config.in: Regenerated.
- * configure: Regenerated.
-
-2001-04-22 Stan Shebs <shebs@apple.com>
-
- * config.gcc (powerpc-*-darwin*): Move the flag in xm-darwin.h
- into xm_defines.
- * config/rs6000/xm-darwin.h: Remove file.
-
-2001-04-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * collect2.c (main): Use concat in lieu of xmalloc/sprintf.
- (write_c_file_stat): Likewise.
-
- * dbxout.c (dbxout_init): Likewise.
-
- * profile.c (output_func_start_profiler): Likewise.
-
-2001-04-22 Philipp Thomas <pthomas@suse.de>
-
- * ABOUT-GCC-NLS: Now that gettext 0.10.37 is out,
- require it instead of the CVS version.
- * cpperror.c (v_message): Put a blank before the macro
- body to not confuse exgettext.
-
-2001-04-21 Mark Mitchell <mark@codesourcery.com>
-
- * flow.c (proagate_one_insn): Remove useless assignment.
- * jump.c (delete_insn): Tidy.
- * loop.c (try_copy_prop): When deleting an instruction with a
- REG_RETVAL note, delete the entire libcall sequence.
- (loop_delete_insns): New function.
- * unroll.c (initial_reg_note_copy): Copy INSN_LIST notes, even if
- we're not substituting into them yet.
-
-2001-04-21 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.c (general_operand_src): Fix a comment typo.
-
- * config/sparc/sparc.c (sparc_flat_eligible_for_epilogue_delay):
- Fix a comment typo.
- * config/i960/i960.c (signed_arith_operand): Likewise.
-
- * calls.c (expand_call): Fix a comment typo.
-
-2001-04-20 Zack Weinberg <zackw@stanford.edu>
-
- * configure.in: Probe for times, clock, struct tms, and clock_t.
- * configure, config.in: Regenerate.
- * timevar.c: Replace ifdef forest in get_time with (relatively)
- straightforward series of checks based on autoconf's probes.
-
-Fri Apr 20 12:24:50 2001 Jeffrey A Law (law@cygnus.com)
-
- * config/pa/som.h (NM_FLAGS): Define.
-
-2001-04-20 Bernd Schmidt <bernds@redhat.com>
-
- * ia64.h (MD_SCHED_REORDER, MD_SCHED_REORDER2): Pass CLOCK to called
- function.
- * ia64-protos.h (ia64_sched_reorder): Additional arg for clock.
- * ia64.c (nop_cycles_until): New function.
- (prev_cycle, prev_first, last_issued): New static variables.
- (ia64_sched_reorder): Additional arg for clock.
- On final scheduling pass, emit extra NOPs as needed.
- Set prev_first and prev_cycle.
- (ia64_sched_reorder2): Pass clock arg down to ia64_sched_reorder.
- (ia64_variable_issue): Set last_issued.
-
-2001-04-20 Alexandre Oliva <aoliva@redhat.com>
-
- * config/i386/i386.c (ix86_expand_int_movcc,
- ix86_expand_strlensi_unroll_1): Sign-extend CONST_INTs.
-
-2001-04-20 Geoff Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.md (ctrsi_internal1, ctrsi_internal2,
- ctrsi_internal3, ctrsi_internal4, ctrsi_internal5,
- ctrsi_internal6, ctrdi_internal1, ctrdi_internal2,
- ctrdi_internal3, ctrdi_internal4, ctrdi_internal5,
- ctrdi_internal6): In the short-branch case, this insn is only 4
- bytes long. Reported by Reza Yazdani <reza@apple.com>.
-
-2001-04-20 Jakub Jelinek <jakub@redhat.com>
-
- * reg-stack.c (check_asm_stack_operands): Issue error if "=t" resp.
- "=u" is used together with "st" resp. "st(1)" clobber.
-
-2001-04-20 Jakub Jelinek <jakub@redhat.com>
-
- * gcse.c (gcse_main): Fix comment typo.
- (delete_null_pointer_check): Likewise.
- (hash_scan_set): Don't consider sets with REG_EQUIV MEM notes.
- * cse.c (cse_insn): Likewise.
- * function.c (fixup_var_refs_insns_with_hash): The sequence is
- toplevel.
-
-2001-04-19 Zack Weinberg <zackw@stanford.edu>
-
- * toplev.c: Excise all code for the undocumented -dm option.
- (float_signal): Call signal just once, unconditionally.
-
-2001-04-19 Geoff Keating <geoffk@redhat.com>
-
- * fold-const.c (fold): Use first_rtl_op rather than
- TREE_CODE_LENGTH when looping over parameters of a tree.
- Correct strange grouping in test for evaluated SAVE_EXPR.
-
-Thu Apr 19 19:15:26 2001 Jeffrey A Law (law@cygnus.com)
-
- * config/pa/pa-linux.h (CPLUSPLUS_CPP_SPEC): Undefine.
- * config/pa/pa.h (CPLUSPLuS_CPP_SPEC): Define.
-
- * config/pa/som.h (ASM_OUTPUT_FUNCTION_PREFIX): Truncate subspace
- name at 32 total characters.
- (ASM_OUTPUT_SECTION_NAME): Similarly. Also, only support placing
- functions in named sections -- data items can still go into unique
- sections, but they have normal names (ie $LIT$ and $DATA$).
-
- * config/pa/som.h (SUPPORTS_INIT_PRIORITY): SOM does not support
- INIT_PRIORITY.
-
-2001-04-19 DJ Delorie <dj@redhat.com>
-
- * config/alpha/vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
- to TARGET_OBJECT_SUFFIX and TARGET_EXECUTABLE_SUFFIX.
- * config/i386/cygwin.h: Likewise.
- * config/i386/mingw32.h: Likewise.
- * config/vax/vms.h: Likewise.
- * config/i386/djgpp.h: Remove NO_AUTO_EXE_SUFFIX.
-
- * config/alpha/xm-vms.h: Change OBJECT_SUFFIX and EXECUTABLE_SUFFIX
- to HOST_OBJECT_SUFFIX and HOST_EXECUTABLE_SUFFIX.
- * config/i386/xm-cygwin.h: Likewise.
- * config/i386/xm-djgpp.h: Likewise.
- * config/i386/xm-mingw32.h: Likewise.
- * config/vax/xm-vms.h: Likewise.
-
- * mkdeps.c (deps_add_default_target): Use TARGET_OBJECT_SUFFIX
- instead of OBJECT_SUFFIX.
- * collect2.c (find_a_file): Look for files matching the extension
- HOST_EXECUTABLE_SUFFIX instead of EXECUTABLE_SUFFIX.
- * gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION): Depend on
- TARGET_EXECUTABLE_SUFFIX.
- (find_a_file): Use HOST_EXECUTABLE_SUFFIX.
- (make_relative_prefix): Likewise.
- (convert_filename): Use TARGET_ suffixes throughout. Remove
- NO_AUTO_EXE_SUFFIX.
- (process_command): Likewise.
- (do_spec_1): Likewise.
- * java/lang.c (init_parse): Likewise.
-
- * gcc.texi : Document four new options matching the pattern
- (HOST|TARGET)_(OBJECT|EXECUTABLE)_SUFFIX. Remove documentation
- for deleted macros OBJECT_SUFFIX and EXECUTABLE_SUFFIX. Remove
- documentation for NO_AUTO_EXE_SUFFIX.
-
-2001-04-19 Mark Mitchell <mark@codesourcery.com>
-
- * toplev.h (struct lang_hooks): Allow decode_option to indicate
- that language-independent processing should not be done.
- * toplev.c (main): Adjust accordingly.
-
- * rtl.texi (jump_insn): Expand on JUMP_LABEL documentation.
- * loop.c (load_mems): Handle a NULL JUMP_LABEL for a JUMP_INSN.
-
- * mips.md (reload_outputdi): Require that operand0 be a
- general_operand.
-
-2001-04-19 Jakub Jelinek <jakub@redhat.com>
-
- * invoke.texi (-Wshadow): Clarify.
-
-2001-04-18 Mark Mitchell <mark@codesourcery.com>
-
- * loop.c (load_mems): Examine all the instructions in the loop
- before concluding that all jumps branch to the first instruction
- after the loop.
-
-Wed Apr 18 20:32:03 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/xm-cygwin.h (CPP_SPEC): Fix typo.
-
-2001-04-18 Jakub Jelinek <jakub@redhat.com>
-
- * cpp.texi (-Wwhite-space): Remove.
- (-Wall): -Wall does not imply -Wwhite-space.
-
-2001-04-17 Zack Weinberg <zackw@stanford.edu>
-
- * dbxout.c (dbxout_init): If DBX_OUTPUT_GCC_MARKER is defined,
- use it instead of blindly generating a .stabs.
- * xcoffout.h: Define DBX_OUTPUT_GCC_MARKER so we put the type
- in the right place.
- * xcoffout.c: Don't bother defining default for N_CATCH.
- (UNKNOWN_STAB): Use internal_error.
- (stab_to_sclass): Remove now-unnecessary aborts.
- Remove #if 0'ed case N_BROWS. Add #ifdef N_OPT block.
-
-Tue Apr 17 21:41:11 2001 Jeffrey A Law (law@cygnus.com)
-
- * jump.c (mark_all_labels): Canonicalize the tail recursion
- label attached to CALL_PLACEHOLDER insns.
-
-2001-04-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * output.h (dump_flow_info, free_basic_block_vars,
- which_alternative): Delete redundant prototypes.
-
- * rtl.h (bss_section): Likewise.
-
-2001-04-17 Loren J. Rittle <ljrittle@acm.org>
-
- * dbxout.c (N_OPT): Define if not available from <stab.h>
-
-2001-04-17 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * vax.h (PROMOTE_PROTOTYPES): Define for compatibility with system
- libraries and native K&R compilers.
-
-2001-04-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-typeck.c (convert_arguments): Don't check for width changes
- with -Wtraditional.
-
- * invoke.texi (-Wtraditional): Update documentation.
-
-2001-04-16 Zack Weinberg <zackw@stanford.edu>
-
- * toplev.c (output_lang_identify): Delete.
- (compile_file): Don't call ASM_IDENTIFY_GCC or ASM_IDENTIFY_LANGUAGE.
- Don't generate gcc2_compiled. label. Don't emit a nop if profiling.
- If IDENT_ASM_OP is defined, emit an .ident "GCC (GNU) <version>"
- after calling ASM_FILE_END.
-
- * dbxout.c (dbxout_init): Don't call ASM_IDENTIFY_GCC_AFTER_SOURCE.
- Instead, unconditionally emit an N_OPT stab with string equal
- to STABS_GCC_MARKER, which defaults to "gcc2_compiled."
-
- * defaults.h: Don't provide default for ASM_IDENTIFY_LANGUAGE.
-
- * config/dbxelf.h, config/freebsd.h, config/nextstep.h,
- config/psos.h, config/ptx4.h, config/1750a/1750a.h,
- config/alpha/alpha.h, config/alpha/elf.h, config/arc/arc.h,
- config/arm/aof.h, config/arm/coff.h, config/arm/elf.h,
- config/arm/linux-elf.h, config/avr/avr.h, config/d30v/d30v.h,
- config/dsp16xx/dsp16xx.h, config/h8300/h8300.h,
- config/i370/i370.h, config/i386/beos-elf.h,
- config/i386/osf1elf.h, config/i386/osfrose.h,
- config/ia64/sysv4.h, config/m68k/3b1.h, config/m68k/auxgas.h,
- config/m68k/crds.h, config/m68k/hp320.h, config/m68k/m68kv4.h,
- config/m68k/mot3300.h, config/m68k/news.h, config/m68k/sgs.h,
- config/m68k/tower-as.h, config/mcore/mcore-elf.h,
- config/mips/iris6.h, config/mips/osfrose.h,
- config/mips/sni-svr4.h, config/pa/som.h, config/pdp11/pdp11.h,
- config/sparc/sp64-elf.h:
- Delete definitions of any or all of: ASM_IDENTIFY_GCC,
- ASM_IDENTIFY_GCC_AFTER_SOURCE, and ASM_IDENTIFY_LANGUAGE.
-
- * config/elfos.h, config/freebsd.h, config/linux.h,
- config/alpha/elf.h, config/arm/linux-elf.h, config/i386/i386elf.h,
- config/i386/ptx4-i.h, config/mips/gnu.h, config/mips/linux.h,
- config/sparc/linux.h, config/sparc/linux64.h: Delete definitions
- of ASM_FILE_START which merely emit a .version directive. Delete
- definitions of ASM_FILE_END which merely emit an .ident directive.
-
- * config/avr/avr.h, config/vax/vax.h: Delete definition of
- ASM_IDENTIFY_GCC and move part of its logic into
- ASM_FILE_START.
-
- * config/i386/att.h, config/i386/gas.h, config/i386/linux.h,
- config/sparc/linux-aout.h: Don't emit .version directive in
- ASM_FILE_START.
-
- * config/i386/dgux.c, config/m88k/m88k.c, config/sh/sh.c
- (output_file_start): Correct comment.
-
- * config/i386/osfrose.h: Don't emit trailing .ident directive.
- * config/m68k/mot3300.h: Override STABS_GCC_MARKER to "gcc2_compiled%"
- to match gdb.
- * config/pa/lib2funcs.asm: Delete gcc_compiled. label.
- * config/rs6000/aix.h: Correct comment.
-
- * config/i386/i386afe.h: Delete.
- * config.gcc: Remove references to i386afe.h.
-
- * tm.texi: Delete documentation of ASM_IDENTIFY_GCC. The
- other macros deleted by this patch were undocumented.
-
-Mon Apr 16 08:03:48 2001 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (reload_outdi): Operand 0 must be a non hard register.
-
- * pa.c (secondary_reload_class): SAR<->FP copies require a
- secondary register.
-
- * install.texi (mips-mips-bsd): Update list of functions
- required to include memmove.
- * tm.texi (TARGET_MEM_FUNCTIONS): Update list of implicitly
- used functions to include memmove.
-
-2001-04-15 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * i386.md (sqrtdf2): SFmode should be DFmode.
-
-2001-04-15 Alexandre Oliva <aoliva@redhat.com>
-
- * gcse.c (compute_ld_motion_mems): ASM outputs aren't moveable.
- (find_moveable_store): Likewise.
-
-2001-04-15 Jim Wilson <wilson@redhat.com>
-
- * function.c (expand_function_end): Handle PARALLEL real_decl_rtl.
-
-Sat Apr 14 16:24:19 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (ashldi3_1_rex64): Add 'J' to the constraints
- (ashrdi3_1_rex64): Change 'n' constraint to 'J'.
-
-2001-04-14 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.md (cmpsi): Tell reload to disregard the
- first alternative.
-
-2001-04-14 Alan Modra <amodra@one.net.au>
-
- * pa.c (force_mode): New function.
- (emit_move_sequence): Use it instead of generating new rtx_REGs.
-
-2001-04-13 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.c (ia64_expand_epilogue): Emit alloc if sibcall_p.
- (first_instruction): New static variable.
- (rtx_needs_barrier): Return 1 for alloc.
- (init_insn_group_barriers): Set first_instruction.
- (rws_sum): Delete duplicate definition.
- (group_barrier_needed_p): Return 0 when first_instruction true.
- (safe_group_barrier_needed_p): Save and restore first_instruction
- around group_barrier_needed_p call.
-
-Fri Apr 13 21:40:28 2001 Loren J. Rittle <ljrittle@acm.org>
-
- * expr.h (enum libfunc_index): Add LTI_memmove.
- (memmove_libfunc): Define macro.
- * optabs.c (init_optabs): Initialize memmove_libfunc.
- * expr.c (expand_assignment): Use memmove_libfunc instead of
- memcpy_libfunc.
-
-2001-04-13 Alan Modra <alan@linuxcare.com.au>
-
- * pa.h (GO_IF_LEGITIMATE_ADDRESS): Disallow PIC LO_SUM
- fp mode addresses.
-
-2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (reg-stack.o): Depend on reload.h.
- (insn-attrtab.o): Depend on flags.h.
-
- * genattrtab (main): Include flags.h in insn-attrtab.c.
-
- * reg-stack.c: Include reload.h.
-
- * sparc.h (flag_pic): Delete redundant declaration.
-
- * output.h (flag_pic): Likewise.
-
- * tree.h (pedantic): Likewise.
-
-2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (toplev.o, jump.o, regmove.o): Depend on reload.h
-
- * jump.c, regmove.c, toplev.c: Include reload.h.
-
- * reload.h (reload_cse_regs): Declare.
-
- * rtl.h (find_equiv_reg, operands_match_p, safe_from_earlyclobber,
- reload_cse_regs, init_reload, mark_home_live, reload,
- init_caller_save): Delete redundant prototypes.
-
-2001-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (ssa.o, regclass.o): Depend on $(EXPR_H).
-
- * regclass.c, ssa.c: Include expr.h.
-
- * rtl.h (memory_address, force_reg, emit_queue, emit_move_insn,
- gen_move_insn): Delete redundant declarations.
-
-2001-04-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * Makefile.in (CFLAGS, BOOT_CFLAGS): Partly revert 2000-10-27 patch.
- (stage1_build): Instead pass down STAGE1_CFLAGS here. Pass down
- MAKEINFO and MAKEINFOFLAGS too.
- (stage4_build): Correctly order -B flags.
-
-2001-04-13 Alan Modra <amodra@one.net.au>
-
- * pa.c (hppa_init_pic_save): Set rtx_unchanging for
- PIC_OFFSET_TABLE_SAVE_RTX.
- (zdepi_cint_p): Describe zdepi insn.
- Formatting and white space fixes throughout file.
-
- * pa.c (uint32_operand): Don't use long constant >= 2^32.
- (emit_move_sequence): Use HOST_WIDE_INT constants. Don't worry
- about 32->64 bit sign extension if 32 bit HOST_WIDE_INTs.
- (compute_movstrsi_length): Make `align' unsigned to avoid warning.
- (output_64bit_and): Use plain `int's for shift counts.
- (output_64bit_ior): Likewise.
- (function_arg_partial_nregs): Use unsigned vars to avoid warnings.
- * pa.h (CONST_OK_FOR_LETTER_P): Use HOST_WIDE_INT constants for case
- `N', and simplify.
-
- * pa-hpux10.h (NEW_HP_ASSEMBLER): Define to 1.
- * pa-hpux11.h (NEW_HP_ASSEMBLER): Likewise.
- * pa.h (LEGITIMATE_CONSTANT_P) Collapse two defines depending on
- NEW_HP_ASSEMBLER into one. Kill warnings.
-
- * pa-gas.h: Delete file.
- * config.gcc: Match `parisc' as well as `hppa' for cpu_type=pa.
- Add new targets hppa*64*-*-linux* and parisc*64*-*-linux*. Update
- hppa*-*-linux*. For all pa targets, remove pa/gas.h from tm_file,
- instead setting MASK_GAS | MASK_JUMP_IN_DELAY in target_cpu_default2.
-
- * config/pa/mill32.S: New file.
- * config/pa/mill64.S: New file.
- * config/pa/t-linux (LIBGCC1, CROSS_LIBGCC1, LIB1ASMFUNCS,
- LIB1ASMSRC, CRTSTUFF_T_CFLAGS_S, TARGET_LIBGCC2_CFLAGS): Define.
- * config/pa/t-linux64: New file.
- * config/pa/t-pa64 (CROSS_LIBGCC1): Change to libgcc1-asm.a
- (LIB1ASMFUNCS, LIB1ASMSRC): Define.
- (TARGET_LIBGCC2_CFLAGS): Add -Dpa64=1 -DELF=1.
-
- * elfos.h (SELECT_SECTION): Undef before defining.
- * pa-linux.h (LINUX_DEFAULT_ELF, PTRDIFF_TYPE, CPP_SPEC): Remove.
- (LIB_SPEC): Remove -lmilli.
- (DBX_REGISTER_NUMBER): Remove.
- (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
- (DWARF2_UNWIND_INFO, ASM_SPEC, LINK_SPEC, FUNCTION_OK_FOR_SIBCALL,
- NO_PROFILE_COUNTERS, SELECT_RTX_SECTION, INCOMING_RETURN_ADDR_RTX,
- DWARF_FRAME_RETURN_COLUMN, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_FILE_START,
- ASM_OUTPUT_DEF, ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
- ASM_OUTPUT_LABEL, ASM_GLOBALIZE_LABEL, ASM_DECLARE_FUNCTION_NAME,
- TARGET_GAS): Define.
- * pa.c (output_arg_descriptor): Disable for TARGET_ELF32.
- (function_arg): If TARGET_ELF32, pass fp args in both general and fp
- regs if we don't have a prototype.
- * pa.md (canonicalize_funcptr_for_compare): Not for TARGET_ELF32.
- * pa.h (TARGET_ELF32): Default to 0 if undefined.
- (EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX,
- EH_RETURN_HANDLER_RTX): Define.
- * pa32-regs.h (DBX_REGISTER_NUMBER): Remove unnecessary test.
- (DWARF_FRAME_REGNUM): Define.
- * pa64-regs.h (DWARF_FRAME_REGNUM): Define.
- * pa32-linux.h: New file.
- * pa64-linux.h: New file.
-
- * pa-64.h (WCHAR_TYPE, WCHAR_TYPE_SIZE): Define.
- (ASM_OUTPUT_DOUBLE_INT): Format, protect macro with do..while.
- (LINK_SPEC, LIB_SPEC, MD_EXEC_PREFIX, MD_STARTFILE_PREFIX,
- NEW_HP_ASSEMBLER, ASM_FILE_START, OBJECT_FORMAT_ELF,
- DWARF2_DEBUGGING_INFO, PREFERRED_DEBUGGING_FORMAT,
- DWARF2_ASM_LINE_DEBUG_INFO, USE_CONST_SECTION, CONST_SECTION_ASM_OP,
- CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP,
- FINI_SECTION_ASM_OP, EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS,
- READONLY_DATA_SECTION, CONST_SECTION_FUNCTION, CTORS_SECTION_FUNCTION,
- DTORS_SECTION_FUNCTION, ASM_OUTPUT_SECTION_NAME, MAKE_DECL_ONE_ONLY,
- UNIQUE_SECTION_P, UNIQUE_SECTION, INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
- ASM_OUTPUT_DESTRUCTOR, TYPE_ASM_OP, SIZE_ASM_OP, ASM_WEAKEN_LABEL,
- TYPE_OPERAND_FMT, ASM_DECLARE_RESULT): Move to..
- * pa64-hpux.h: New file.
- (ASM_FILE_START): Correct typo.
- (PREFERRED_DEBUGGING_FORMAT): Rename to PREFERRED_DEBUGGING_TYPE.
- * config.gcc: Modify for above.
-
-Fri Apr 13 00:09:22 EDT 2001 John Wehle (john@feith.com)
-
- * jump.c (jump_optimize_1): Don't delete dead stores here.
- * toplev.c (rest_of_compilation): Call delete_trivially_dead_insns
- prior to running jump optimize before cse2.
-
-2001-04-12 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (regmove.o): Depend on except.h.
- * regmove.c: Include it.
-
-2001-04-12 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c: Remove all code ifdefed with the never-used
- macro OBJC_INT_SELECTORS.
- * config/d30v/d30v.h: Remove commented-out ref to OBJC_INT_SELECTORS.
- * tm.texi: Remove doc for OBJC_INT_SELECTORS.
-
-Thu Apr 12 18:13:37 2001 Rodney Brown <RodneyBrown@mynd.com>
-
- * config/pa/quadlib.c: Add prototypes.
-
-2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * bitmap.h (debug_bitmap): Delete redundant prototype.
-
- * rtl.h (get_frame_size): Likewise.
-
-2001-04-12 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Simplify
- to just emit an fnorm.
-
-2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.h (truthvalue_conversion, type_for_mode,
- type_for_size): Delete redundant declarations.
-
- * c-lex.h (is_class_name): Likewise.
-
- * c-tree.h (pedantic, convert, getdecls, gettags,
- global_bindings_p, init_decl_processing, insert_block,
- maybe_build_cleanup, poplevel, print_lang_decl,
- print_lang_identifier, print_lang_type, pushdecl, pushlevel,
- set_block, incomplete_type_error, build_function_call,
- lvalue_or_else, mark_addressable): Likewise.
-
- * expr.h (expand_tree_builtin): Likewise.
-
-2001-04-12 Mark Mitchell <mark@codesourcery.com>
-
- * invoke.texi: Document --param max-gcse-memory.
-
-2001-04-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in (errno): Check for declaration.
- * configure, config.in: Regenerated.
-
- * system.h (errno): Only declare if not already done.
-
-2001-04-12 Alexandre Oliva <aoliva@redhat.com>
-
- * recog.c (general_operand, immediate_operand,
- nonmemory_operand): Require CONST_INTs to be sign-extended
- values for their modes.
-
-2001-04-12 Alexandre Oliva <aoliva@redhat.com>
-
- * expmed.c (store_bit_field): Truncate CONST_INTs.
- (expand_mult_highpart, expand_divmod): Likewise.
- * expr.c (convert_modes, store_field): Likewise.
- * integrate.c (expand_inline_function): Use promote_mode() to
- determine whether to convert_modes() an argument as signed
- or unsigned.
- * optabs.c (expand_binop): Get CONST_INT operands
- sign-extended for their appropriate modes.
- * stmt.c (emit_case_nodes): Convert node values to the
- appropriate mode.
- (expand_end_case): Convert minval and range to the appropriate
- mode.
- * unroll.c (loop_iterations): Truncate abs_diff to the mode of
- the iteration variable.
- * varasm.c (immed_double_const): Don't require words to be
- narrower than host wide ints to properly sign-extend
- CONST_INTs.
-
-2001-04-12 kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * sh.md (builtin_setjmp_receiver): New expander.
-
-2001-04-12 David Edelsohn <dje@watson.ibm.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): Do not
- special-case HOST_BITS_PER_WIDE_INT != 32. Use same criteria
- for generating CONST_INT and CONST_DOUBLE.
-
-2001-04-12 Alexandre Oliva <aoliva@redhat.com>
-
- * config/rs6000/rs6000.c (logical_operand): CONST_INTs are
- already sign-extended.
- (rs6000_emit_prologue): Make register iterator signed.
- (rs6000_emit_epilogue): Likewise.
- * config/rs6000/rs6000.md (addsi3, adddi3): Sign-extend high
- and low.
- (movsf split, movdf split): Sign-extend CONST_INTs.
- (movdi splits): Likewise.
-
-2001-04-12 Kelley Cook <kelley.cook@home.com>
-
- * config-lang.in (lang_dirs): Add in zlib.
-
-2001-04-11 Alexandre Oliva <aoliva@redhat.com>
-
- * config/i386/i386.md: Apply trunc_int_for_mode() to GEN_INT
- operands that make it to RTL.
-
-2001-04-11 Stan Shebs <shebs@apple.com>
-
- Add Darwin (Mac OS X kernel) native support.
- * config.gcc (powerpc-*-darwin*): Add native bits.
- * config/darwin.c: New file, generic Darwin support functions.
- * config/darwin.h: New file, generic Darwin definitions.
- * config/darwin-protos.h: New file, generic Darwin prototypes.
- * rs6000/darwin.h: New file, Darwin for PowerPC.
- * rs6000/t-darwin: New file, Darwin makefile fragment.
- * rs6000/rs6000.h (OBJECT_MACHO): New macro.
- (TARGET_MACHO): Ditto.
- (rs6000_abi): Add ABI_DARWIN.
- (RS6000_REG_SAVE): Add ABI_DARWIN case.
- (RS6000_SAVE_AREA): Ditto.
- (FP_ARG_MAX_REG): Ditto.
- (RETURN_ADDRESS_OFFSET): Ditto.
- * rs6000/rs6000.c (rs6000_legitimize_address): Add TARGET_MACHO
- cases.
- (rs6000_emit_move): Add ABI_DARWIN cases.
- (print_operand): Ditto.
- (first_reg_to_save): Ditto.
- (rs6000_stack_info): Ditto, also align stack by 16 instead of 8.
- (debug_stack_info): Ditto.
- (rs6000_emit_prologue): Ditto.
- (rs6000_emit_epilogue): Ditto.
- (output_profiler_hook): Ditto.
- (output_function_profiler): Ditto.
- (rs6000_add_gc_roots): Call machopic_add_gc_roots if TARGET_MACHO.
- (output_mi_thunk): Add TARGET_MACHO case.
- (add_compiler_stub): Ditto.
- (output_compiler_stub): Ditto.
- (no_previous_def): Ditto.
- (output_call): Ditto.
- (machopic_output_stub): Ditto.
- (rs6000_machopic_legitimize_pic_address): Ditto.
- (toc_section): Ditto.
- * rs6000/rs6000.md (addsi3_high): New TARGET_MACHO pattern.
- (macho_high): Ditto.
- (macho_low): Ditto.
- (movsi_low): Ditto.
- (load_macho_picbase): Ditto.
- (call): Add TARGET_MACHO case to modify function.
- (call_value): Ditto.
- (call_nonlocal_sysv): Add ABI_DARWIN case.
- (call_value_nonlocal_sysv): Ditto.
- * rs6000/rs6000-protos.h (rs6000_machopic_legitimize_pic_address):
- Add prototype.
- (machopic_output_stub): Ditto.
- * ginclude/stddef.h: Test _BSD_WCHAR_T_DEFINED_.
-
-2001-04-11 Mark Mitchell <mark@codesourcery.com>
-
- * dwarf2out.c (modified_type_die): Don't create new types here.
- * tree.h (get_qualified_type): New function.
- (build_qualified_type): Adjust comment.
- * tree.c (get_qualified_type): New function.
- (build_qualified_type): Use it.
-
-2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cpp.texi (-Wtraditional): Update description.
-
- * invoke.texi (-Wtraditional): Likewise.
-
-2001-04-11 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Return 128 if argument
- requires more than 64 bits of alignment.
-
-2001-04-11 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.c (do_line): Sanity check iff enable checking.
-
-2001-04-11 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (insn-recog.o): Depend on toplev.h.
- (insn-emit.o, doloop.o): Likewise.
- * genrecog.c, genemit.c: Include toplev.h in generated file.
- * doloop.c: Include toplev.h.
-
-2001-04-11 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (gcse.o): Depend on params.h.
- * gcse.c: Include params.h.
- (gcse_main): Don't do GCSE if doing so will take inordinate
- amounts of memory.
- * params.def (PARAM_MAX_GCSE_MEMORY): New parameter.
- * params.h (MAX_GCSE_MEMORY): New macro.
-
-2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (insn-output.o): Depend on $(EXPR_H).
-
- * genoutput.c (output_prologue): Include expr.h in insn-output.c.
-
-2001-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * output.h (assemble_real): Declare if REAL_VALUE_TYPE is defined.
-
- * real.h (ereal_atof, real_value_truncate, target_isnan,
- target_isinf, target_negative, assemble_real, debug_real): Delete
- redundant prototypes.
-
- * Makefile.in (ifcvt.o): Depend on toplev.h.
-
- * c-semantics.c: Include expr.h.
-
- * ifcvt.c: Include toplev.h.
-
- * expr.h (rtx_equal_p): Delete prototype.
-
- * rtl.h (exact_log2_wide, floor_log2_wide, permalloc,
- protect_from_queue, gen_jump, gen_beq, gen_bge, gen_ble,
- eliminate_constant_term, expand_complex_abs, find_single_use,
- make_tree, init_expr_once, init_optabs, supports_one_only):
- Likewise.
-
- * tree.h (exact_log2_wide, floor_log2_wide, expand_null_return,
- rest_of_type_compilation, emit_queue, do_pending_stack_adjust,
- expand_assignment, store_expr, emit_line_note_after,
- emit_line_note_force, split_specs_attrs, label_rtx): Likewise.
-
- * toplev.h (exact_log2_wide, floor_log2_wide): Add prototype.
-
- * sparc-protos.h: Delete redundant prototypes.
-
-2001-04-11 Vladimir Makarov <vmakarov@toke.toronto.redhat.com>
-
- * reload.c (push_reload): Add condition missed in SUBREG byte
- offset patch.
-
-Wed Apr 4 00:28:23 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * sparc/sol2-sld-64.h (STARTFILE_SPEC): Added missing blank.
-
-Wed Apr 11 14:06:10 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (floatsisf_sse): Fix output template
- * i386.c (ix86_expand_fp_movcc)
-
- * reg-stack.c (emit_pop_insn): Handle complex modes.
- (move_for_stack_reg): Emit proper move mode.
- (subst_stack_regs_pat): Handle complex modes.
-
-2001-04-11 Jakub Jelinek <jakub@redhat.com>
-
- * cpplex.c (_cpp_lex_token): Only warn if -Wcomment.
-
-2001-04-10 Richard Henderson <rth@redhat.com>
-
- * libgcc2.h (__terminate_func_ptr): Remove typedef.
- (__pure_virtual, __terminate, __terminate_set_func,
- __default_terminate, __throw_type_match, __empty,
- __get_eh_context, __get_eh_info, __get_dynamic_handler_chain,
- __eh_rtime_match, __unwinding_cleanup, __rethrow,
- __sjthrow, __sjpopnthrow, __eh_alloc, __eh_free):
- Remove prototypes of deleted functions.
-
-2001-04-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-typeck.c (convert_arguments): -Wtraditional now activates
- -Wconversion warnings, except for changes in signed-ness.
- Detect complex<->int & int<->complex conversions as well.
-
- * invoke.texi (-Wtraditional): Document it.
-
-Tue Apr 10 17:45:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * gcse.c (update_ld_motion_stores): Don't use variable I for an insn.
- * flow.c (set_block_for_new_insns): Remove needless cast and
- properly check for unset block number.
-
-2001-04-10 Andrew MacLeod <amacleod@redhat.com>
-
- * function.c (purge_single_hard_subreg_set): Only check REGNO if
- the subreg was a hard register. Pseudos are left as subregs.
-
-2001-04-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * Makefile.in (LIB2FUNCS_STATIC_EXTRA): New macro.
- (LIB2ADD_ST): New macro, pass it to mklibgcc.
- * mklibgcc.in (libgcc2_st_objs): New variable, set it from LIB2ADD_ST.
- (libgcc_st_objs): New, set from libgcc2_st_objs. Use it for libgcc.a.
- * config/rs6000/t-ppccomm (LIB2FUNCS_STATIC_EXTRA): New macro.
-
-2001-04-09 Bo Thorsen <bo@suse.co.uk>
-
- * config/i386/i386.md: "TARGET_64BIT && TARGET_64BIT": Removed one.
-
-2001-04-09 Andrew MacLeod <amacleod@redhat.com>
-
- * output.h (set_block_num): Missed it earlier, remove deprecated
- prototype.
-
-2001-04-09 Andrew MacLeod <amacleod@redhat.com>
-
- * gcse.c (oprs_unchanged_p): Pass basic_block to load_killed_in_block_p.
- (load_killed_in_block_p): Change bb parameter from int to basic_block.
- (oprs_not_set_p): Pass basic_blocks instead of ints as parameters.
- (handle_rd_kill_set): Change bb parameter from int to basic_block.
- (compute_kill_rd): Pass basic_blocks instead of ints as parameters.
- (expr_killed_p): Change bb parameter from int to basic_block, pass
- basic_blocks instead of ints as parameters.
- (compute_ae_kill): Pass basic_blocks instead of ints as parameters.
- (expr_reaches_here_p_work, expr_reaches_here_p): Change bb parameter
- from int to basic_block, pass basic_blocks instead of ints as parms.
- (pre_expr_reaches_here_p_work, pre_expr_reaches_here_p): Change bb
- parameter from int to basic_block, pass basic_blocks instead of ints.
- (process_insert_insn): Pass basic_blocks instead of ints as parameters.
- (insert_insn_end_bb): Change bb parameter from int to basic_block,
- pass basic_blocks instead of ints.
- (pre_edge_insert, pre_insert_copy_insn, pre_insert_copies): Pass
- basic_blocks instead of ints as parameters.
- (pre_delete): Pass basic_blocks instead of ints as parameters.
- (hoist_expr_reaches_here_p): Change bb parameter from int to
- basic_block, pass basic_blocks instead of ints.
- (hoist_code): Pass basic_blocks instead of ints as parameters.
- (reg_set_info, store_ops_ok, store_killed_after, store_killed_before):
- Change bb parameter from int to basic_block.
- (build_store_vectors): Pass basic_blocks instead of ints as parameters.
- (insert_insn_start_bb): Change bb parameter from int to basic_block,
- pass basic_blocks instead of ints.
- (insert_store): Pass basic_blocks instead of ints as parameters.
- (replace_store_insn, delete_store): Change bb parameter from int to
- basic_block, pass basic_blocks instead of ints.
- (store_motion): Pass basic_blocks instead of ints as parameters.
-
-2001-04-09 Andrew MacLeod <amacleod@redhat.com>
-
- * basic-block.h (set_new_block_for_insns): New Prototype.
- (set_block_num): Delete prototype.
- * flow.c (set_block_num): Remove obsolete function.
- (set_block_for_new_insns): Set BB for single or multiple insns.
- * gcse.c (handle_avail_expr): Use set_block_for_new_insns.
- (process_insn_end_bb): Use set_block_for_new_insns or
- set_block_for_insn instead of set_block_num.
- (pre_insert_copy_insn): Use set_block_for_new_insns.
- (update_ld_motion_stores): Use set_block_for_new_insns.
- (insert_insn_start_bb): Use set_block_for_new_insns.
- (replace_store_insn): Use set_block_for_new_insns.
-
-2001-04-09 Andrew MacLeod <amacleod@redhat.com>
- Jeff Law <law@redhat.com>
-
- * alias.c (get_addr): Externalize.
- (canon_true_dependence): New function. Behaves like true_dependance
- except it already assumes a MEM has been canonicalized.
- * flags.h (flag_gcse_lm, flag_gcse_sm): New optimization flags.
- * gcse.c (struct ls_expr): Add load/store expressions structure.
- (modify_mem_list, canon_modify_mem_list): New variable.
- (gcse_main): Initialize & finalize alias analysis. Use enhanced
- load motion and store motion if requested.
- (alloc_gcse_mem): Allocate space for modify_mem_list array.
- (free_gcse_mem): Free the modify_mem_list array.
- (oprs_unchanged_p): Use load_killed_in_block_p.
- (gcse_mems_conflict_p, gcse_mem_operand): New variables.
- (mems_conflict_for_gcse_p): New function. Don't kill loads
- with stores to themselves if its in the load/store expression list.
- (load_killed_in_block_p): New function.
- (canon_list_insert): New Function.
- (record_last_mem_set_info): Keep a list of all instructions which
- can modify memory for each basic block.
- (compute_hash_table, reset_opr_set_tables): Clear modify_mem_list.
- (oprs_not_set_p): Use load_killed_in_block_p.
- (mark_call, mark_set, mark_clobber): Use record_last_mem_set_info.
- (expr_killed_p): Use load_killed_in_block_p.
- (compute_transp): Do not pessimize memory references.
- (pre_edge_insert): Update stores for a load motion expression.
- (one_pre_gcse_pass): Check loads/stores for extra load motion.
- (ldst_entry): Find or create a ldst_expr structure.
- (free_ldst_entry): Free memory for an individual item.
- (free_ldst_mems): Free entire load/store expression list.
- (print_ldst_list): Print debug info.
- (find_rtx_in_ldst): Try to find an rtx expression in the ldst list.
- (enumerate_ldsts): Assign integer values to each entry in list.
- (first_ls_expr): First expression in the list.
- (next_ls_expr): Next expression in the list.
- (simple_mem): Check if expression qualifies for ld/st expression list.
- (invalidate_any_buried_refs): Remove from expression list if its
- used in some other way we don't understand.
- (compute_ld_motion_mems): Find all potential enhanced load motion
- expression.
- (trim_ld_motion_mems): Remove any expressions which are invalid.
- (update_ld_motion_stores): Copy store values to registers for loads
- which have been moved.
- (regvec, st_antloc, num_store): New global statics.
- (reg_set_info): Marks registers as set.
- (store_ops_ok): Verfies registers expressions are valid in a block.
- (find_moveable_store): Look for moveable stores in a pattern.
- (compute_store_table): Find stores in a function worth moving, maybe.
- (load_kills_store): Check dependence of a load and store.
- (find_loads): Find any loads in a pattern.
- (store_killed_in_insn): Check if a store is killed in an insn.
- (store_killed_after): Check is store killed after an insn in a block.
- (store_killed_before): Check is store killed before an insn in a block.
- (build_store_vectors): Generate the antic and avail vectors.
- (insert_insn_start_bb): Insert at the start of a BB, update BLOCK_HEAD.
- (insert_store): Add a store to an edge.
- (replace_store_insn): Replace a store with a SET insn.
- (delete_store): Delete a store insn.
- (free_store_memory): Free memory.
- (store_motion): Perform store motion.
- * invoke.texi: Add documentation for -fcse-lm and -fgcse-sm.
- * rtl.h (get_addr, canon_true_dependence): Add prototypes.
- * toplev.c (flag_gcse_lm, flag_gcse_sm): New Variables.
- (f_options): Add gcse-lm and gcse-sm.
-
-Mon Apr 9 16:18:03 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (expand_fp_movcc): Fix condition reversal code.
-
- * i386.c (ix86_register_move_cost): Fix handling of reformating penalty
- * i386.h (INTEGER_CLASS_P, MAYBE_INTEGER_CLASS_P): New.
- (CLASS_MAX_NREGS): Use it.
-
- * i386.h (HARD_REGNO_NREGS): Handle properly TF and TCmodes on 64bit;
- handle properly complex values.
- (CLASS_MAX_NREGS): Likewise; update comment.
-
-2001-04-05 Bernd Schmidt <bernds@redhat.com>
-
- * ia64.c (ia64_flag_schedule_insns2): New variable.
- (ia64_override_options): Initialize it. Clear
- flag_schedule_insns_after_reload.
- (ia64_reorg): Only do scheduling if ia64_flag_schedule_insns2.
-
-Mon Apr 9 15:09:13 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (truncdfsf2_*): Add i387->int/sse reg alternatives;
- Do not require source to match destination anymore;
- Add abort to the nontrivial cases that should be handled by split.
- (fix_trunc?fdi): Add SSE case for x86_64.
- (floatdi?f): Likewise.
- (floatdi?f_sse): New.
- (fix_trunc?fdi_sse): New.
-
-2001-04-09 Richard Sandiford <rsandifo@redhat.com>
-
- * dwarfout.c (DEBUG_ARANGES_BEGIN_LABEL): New label.
- (DEBUG_ARANGES_END_LABEL): Ditto.
- (dwarfout_init): Generate length and version fields at the start
- of the .debug_aranges info. Insert DEBUG_ARANGES_BEGIN_LABEL
- after the length field.
- (dwarfout_finish): Insert DEBUG_ARANGED_END_LABEL at the end of
- the .debug_aranges info.
-
-Sun Apr 8 00:43:27 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (call, call_value): Make sure that resulting call_insn
- does have proper second operand.
-
-Sun Apr 8 22:50:49 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/xm-cygwin.h (GET_ENV_PATH_LIST): Eliminate obsolete
- function. Remove include of sys/cygwin.h.
-
-Sun Apr 8 22:20:27 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h (STARTFILE_SPEC): search */lib/w32api by default.
- (CPP_SPEC): Always search */include/w32api for header files.
- (ASM_OUTPUT_SECTION_NAME): Avoid testing NULL DECL.
- (LINK_SPEC): Add "cyg" to the library search prefixes.
-
-2001-04-08 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.h (ASM_OUTPUT_LABELREF): Use asm_fprintf.
-
-2001-04-08 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpperror.c (print_location): Don't special case <stdin>.
- (_cpp_begin_message): Handle WARNING_SYSHDR the same as
- WARNING, but we don't check if we're in system headers.
- * cpplib.h (enum error_type): WARNING_SYSHDR: New.
- * cpplib.c (do_warning): Warn in system headers.
-
-2001-04-07 Mumit Khan <khan@NanoTech.Wisc.EDU>
-
- * mbchar.c: Include config.h first.
-
-2001-04-07 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc: Set default for xmake_file at top, not bottom.
- Change places that set xmake_file to "none" to set to the
- empty string instead, or remove them entirely if there is no
- default xmake_file for this cpu_type. Remove references to
- deleted files.
-
- * config/x-lynx, config/convex/x-convex, config/elxsi/x-elxsi,
- config/i386/x-isc, config/i386/x-isc3, config/i386/x-ncr3000,
- config/i386/x-next, config/i386/x-sco, config/i386/x-sysv3,
- config/i386/x-vsta, config/i860/x-sysv4, config/m68k/x-amix,
- config/m68k/x-apollo68, config/m68k/x-ccur, config/m68k/x-crds,
- config/m68k/x-hp2bsd, config/m68k/x-mot3300, config/m68k/x-mot3300-gas,
- config/m68k/x-tower, config/m88k/x-sysv4, config/mips/x-dec-osf1,
- config/mips/x-sni-svr4, config/mips/x-ultrix, config/romp/x-mach,
- config/romp/x-romp, config/rs6000/x-beos, config/rs6000/x-lynx,
- config/rs6000/x-mach, config/rs6000/x-sysv4, config/sparc/x-sysv4:
- Delete.
-
- * config/a29k/x-unix, config/i386/x-aix, config/i386/x-osf1elf,
- config/i386/x-osfrose, config/m68k/x-dpx2, config/mips/x-iris3,
- config/mips/x-mips, config/mips/x-osfrose, config/mips/x-sony,
- config/mips/x-sysv, config/rs6000/x-aix31:
- Just set CLIB to -lld or -lmld, as appropriate.
-
- * config/arm/x-riscix, config/i370/x-oe, config/i386/x-dgux,
- config/i386/x-sco4, config/i386/x-sco5, config/m68k/x-hp320,
- config/m68k/x-hp320g, config/m68k/x-next, config/m88k/x-dgux,
- config/mips/x-iris, config/pa/x-pa:
- Just set (some of) FIXPROTO_DEFINES, STMP_FIXPROTO,
- OTHER_FIXINCLUDES_DIRS.
-
- * config/i386/x-djgpp: Don't set LN or LN_S.
- * config/m88k/x-dolph: Don't define __m88k__.
- * config/m88k/x-tekXD88: Don't set AR_FLAGS.
- * config/pa/x-pa-mpeix: Just set up quadlib.asm.
- * config/i860/fx2800.h: No need to #undef SVR4.
-
- 38 x-host fragments remain, 2 x-cpu.
-
-2001-04-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x.h (HARD_REGNO_NREGS): HCmode mode uses 2 regs not 4.
-
-2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.c (cpp_push_buffer): Give stdin buffers the name <stdin>.
-
-2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * configure.in: Add check for lstat.
- * configure, config.in: Regenerate.
- * cppinit.c (append_include_chain): Make empty path ".".
- * cpplib.c (do_line): Don't simplify #line paths.
- * cppfiles.c (remove_component_p): New function.
- (find_or_create_entry): Acknowledge stat () errors during
- path simplification.
- (handle_missing_header): Don't simplify paths.
- (_cpp_simplify_pathname): Don't simplify VMS paths. Return
- the empty path untouched. Don't leave a trailing '/'.
-
-2001-04-06 Benjamin Kosnik <bkoz@redhat.com>
-
- * cppdefault.c (GPLUSPLUS_BACKWARD_INCLUDE_DIR): Add.
- * Makefile.in (-DGPLUSPLUS_BACKWARD_INCLUDE_DIR): Add.
-
-2001-04-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (open_file): Fail directories silently, but
- with an errno of NOENT set.
- (read_include_file): Move the common exit code to the sole
- caller. Return an int indicating success or failure. Let
- open_file handle directories.
- (stack_include_file): If read_include_file fails,
- push a "null" buffer.
-
-2001-04-05 DJ Delorie <dj@redhat.com>
-
- * function.h (virtuals_instantiated): Declare.
- * function.c: (virtuals_instantiated): Make global.
- * calls.c (emit_library_call_value_1): Use
- virtual_outgoing_args_rtx only if it hasn't been instantiated.
- Otherwise, use the stack pointer directly.
-
-Thu Apr 5 19:13:33 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_initialize_trampoline): New global function.
- * i386.h (TRAMPOLINE_SIZE): Size is 23 for x86_64.
- (INITIALIZE_TRAMPOLINE): Move offline.
- * i386-protos.h (x86_initialize_trampoline): Declare.
-
-Thu Apr 5 19:02:15 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movdi_1_rex64): Allow SSE->SSE reg move.
- (lea_0): Rename to lea_1.
- (lea_1_zext, lea_1_rex64, lea_2_rex64): New patterns.
- (lea_general_?): Allow SImodes on TARGET_64BIT
- (lea_general_?_zext): New patterns.
- (call_1, call_1_rex64): Fix.
-
-Thu Apr 5 19:00:15 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_split_long_move): Use PUT_MODE instead of change_address.
-
-Thu Apr 5 18:25:56 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (function_arg): Return constm1_rtx for last argument.
- (ix86_expand_prologue): Update gen_call calls.
- * i386.h (FUNCTION_BLOCK_PROFILER_EXIT): Likewise.
- * i386.md (call_pop): Likewise.
- (call): Second operand is VOIDmode.
- (call_0): Likewise; Support 64bits.
- (call_exp): New expander.
- (call_1): Get to the sync.
- (call_1_exp): New pattern.
- (call_value): Support 64bit.
- (call_value_exp): New pattern.
- (untyped_call): Update gen_call call.
- (call_value_pop): Disable for 64bit.
- (call_value_0_rex64): New pattern.
- (call_value_1_rex64): Likewise.
-
-2001-04-05 Bo Thorsen <bo@suse.de>
-
- * i386.md: Don't allow "builtin_setjmp_receiver" for TARGET_64BIT.
-
-Thu Apr 5 13:44:17 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * i386.md (*andsi_1+3): If used after reload, make sure the operand
- satisfies ANY_QI_REG_P.
-
-2001-04-05 Bernd Schmidt <bernds@redhat.com>
-
- * config/ia64/ia64.c (rtx_needs_barrier): A PARALLEL can contain
- ASM_OPERAND.
-
- * sched-deps.c (sched_analyze_insn): Revert more of the March 27
- change.
-
-2001-04-04 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc: Remove default for xm_file. Clean up local
- machine type handling. Remove settings of xm_file to
- something that doesn't exist. In the big switch, set xm_file,
- don't append to it (the value before the big switch is always
- null). Don't force build_xm_file or host_xm_file to have a value.
- * configure.in: Remove default for xm_file. Do not special
- case $cpu/xm-$cpu.h not existing.
- * configure: Regenerate.
-
-2001-04-04 Diego Novillo <dnovillo@redhat.com>
-
- * simplify-rtx.c (simplify_binary_operation): Check for overflow
- when folding integer division and modulo operations.
-
-2001-04-04 Andrew MacLeod <amacleod@redhat.com>
-
- * dwarf2out.c (output_cfi): Add 'for_eh' parameter, use PTR_SIZE
- instead of DWARF2_ADDR_SIZE for EH addresses.
- (output_call_frame_info): Use PTR_SIZE instead of DWARF2_ADDR_SIZE for
- EH addresses.
-
-2001-04-04 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.h (IA64_UNWIND_INFO): Disable.
- * config/ia64/t-glibc (LIB2ADDEH): Disable.
- * config/ia64/t-ia64 (LIB2ADDEH): Disable.
-
-2001-04-04 Richard Henderson <rth@redhat.com>
-
- * configure.in (gcc_cv_as_leb128): Escape "." in regexp.
- * configure: Rebuilt.
-
-2001-04-04 Jakub Jelinek <jakub@redhat.com>
-
- * gcse.c (delete_null_pointer_checks_1): Add delete_list argument,
- push insns to delete to it instead of deleting them.
- (delete_null_pointer_checks): Delete insns from delete_list after
- all delete_null_pointer_checks_1 passes are done.
-
-2001-04-04 Richard Henderson <rth@redhat.com>
-
- * configure.in (gcc_cv_as_leb128): Tweek minor number extraction.
- * configure: Rebuilt.
-
-2001-04-04 Zack Weinberg <zackw@stanford.edu>
-
- * expr.h: Remove #ifdef FUNCTION_CONVERSION_BUG logic.
- * config/romp/xm-romp.h: Delete.
-
-2001-04-04 Bernd Schmidt <bernds@redhat.com>
-
- * sched-deps.c (sched_analyze_insn): Partially revert March 27
- change.
-
-2001-04-04 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * emit-rtl.c (mark_label_nuses) Increment the label uses for
- all labels present in rtx.
- (try_split) Call new function for all split insns.
-
-2001-04-04 Jakub Jelinek <jakub@redhat.com>
-
- * recog.c (validate_replace_rtx_1): Instead of aborting just make
- sure the change won't be validated.
-
-Wed Apr 4 00:45:38 EDT 2001 John Wehle (john@feith.com)
-
- * rtl.h (set_noop_p): Declare.
- * flow.c (set_noop_p): Move from here ...
- * rtlanal.c (set_noop_p): ... to here and enhance.
- * cse.c (delete_trivially_dead_insns): Use it.
- * gcse.c (hash_scan_set): Likewise.
- * jump.c (delete_noop_moves): Likewise.
- * recog.c (split_all_insns): Likewise.
-
-2001-04-04 Alan Modra <alan@linuxcare.com.au>
-
- * dwarf2out.c (dwarf2out_frame_debug_expr): Support adjusting
- stack pointer via a LO_SUM. Ditto for setting a temp register
- used to save to the stack. Set cfa_temp when setting fp, and
- allow matches to cfa_temp in addition to cfa_store when saving
- regs. Handle POST_INC and LO_SUM register stores. Document the
- changes and errors in rule 12 doco.
-
- * pa.c (set_reg_plus_d, store_reg, load_reg): Return last insn.
- (actual_fsize, local_fsize, save_fregs): Move for store_reg to see.
- (load_reg): Move closer to epilogue code.
- (DO_FRAME_NOTES): Define to control the following..
- (FRP): Define to set RTX_FRAME_RELATED_P on insns.
- (hppa_expand_prologue): Use FRP and REG_FRAME_RELATED_EXPR
- notes as necessary.
- (hppa_expand_epilogue): Likewise.
-
-2001-04-03 Richard Henderson <rth@redhat.com>
-
- * configure.in (gcc_cv_as_leb128): Reject gas before 2.11.
- * configure: Rebuild.
-
-2001-04-03 Richard Henderson <rth@redhat.com>
-
- * rtl.h (LCT_THROW): New.
- * calls.c (emit_library_call_value_1): Handle it.
- * except.c (connect_post_landing_pads): Use it.
-
-2001-04-03 Zack Weinberg <zackw@stanford.edu>
-
- * gansidecl.h: Delete file.
- * configure.in: Change all refs to gansidecl.h to use
- ansidecl.h. Adjust *_file_list so they know where ansidecl.h
- lives.
- * configure: Regenerate.
-
- * Makefile.in (intl.o): Don't depend on gansidecl.h.
- * defaults.h: s/gansidecl.h/ansidecl.h/ in comment.
- * ggc.h, config/fr30/fr30.h, config/mcore/mcore.c:
- Don't include gansidecl.h.
- * intl.c, main.c, version.c, fixinc/fixlib.h,
- fixinc/procopen.c, fixinc/server.c: Include ansidecl.h not
- gansidecl.h.
-
-Tue Apr 3 19:41:21 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_force_to_memory, ix86_free_from_memory):
- Update for 64bit.
-
-2001-04-03 Zack Weinberg <zackw@stanford.edu>
-
- * config/i386/xm-beos.h, config/i386/xm-isc.h,
- config/i386/xm-next.h, config/i386/xm-sco.h,
- config/i386/xm-sco5.h, config/m68k/xm-plexus.h,
- config/m88k/xm-m88k.h: Delete.
-
- * config/i386/xm-djgpp.h: Don't define __MSDOS__.
- * config/romp/xm-romp.h: Don't define bcopy.
- * config/rs6000/xm-beos.h: Don't define bcopy, HAVE_VPRINTF,
- HAVE_PUTENV, HAVE_RENAME, or USE_C_ALLOCA.
-
- * config.gcc: Remove references to deleted files.
-
- 14 xm-host.h remain, 1 xm-cpu.h.
-
-2001-04-03 Jakub Jelinek <jakub@redhat.com>
- David S. Miller <davem@pierdol.cobaltmicro.com>
- Andrew MacLeod <amacleod@redhat.com>
-
- Use byte offsets in SUBREGs instead of words.
-
- * alias.c (nonlocal_mentioned_p): Use subreg_regno function.
- * caller-save.c (mark_set_regs): Change callers of subreg_hard_regno
- to pass new argument.
- (add_stored_regs): Use subreg_regno_offset function.
- * calls.c (expand_call): For non-paradoxical SUBREG take endianess
- into account.
- (precompute_arguments): Use gen_lowpart_SUBREG.
- * combine.c (try_combine): Replace explicit XEXP with SUBREG_REG.
- (combine_simplify_rtx): Rework to use SUBREG_BYTE.
- (simplify_set): Rework to use SUBREG_BYTE.
- (expand_field_assignment): Use SUBREG_BYTE.
- (make_extraction): Use SUBREG_BYTE.
- (if_then_else_cond): Use SUBREG_BYTE.
- (apply_distributive_law): Use SUBREG_BYTE and fixup subreg comments.
- (gen_lowpart_for_combine): Compute full byte offset.
- * cse.c (mention_regs): Use SUBREG_BYTE.
- (remove_invalid_subreg_refs): Rework to use SUBREG_BYTE.
- (canon_hash): Use SUBREG_BYTE.
- (fold_rtx): Pass SUBREG_BYTE div UNITS_PER_WORD to operand_subword.
- (gen_lowpart_if_possible): Formatting.
- * dbxout.c (dbxout_symbol_location): Compute SUBREG hard regnos
- correctly.
- * dwarf2out.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
- (mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
- (loc_descriptor): Fixup explicit XEXP into SUBREG_REG
- * dwarfout.c (is_pseudo_reg): Fixup explicit XEXP into SUBREG_REG
- (output_mem_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
- (output_loc_descriptor): Fixup explicit XEXP into SUBREG_REG
- * emit-rtl.c (gen_rtx_SUBREG): New function, used to verify
- certain invariants about SUBREGs the compiler creates.
- (gen_lowpart_SUBREG): New function.
- (subreg_hard_regno): New function to get the final register number.
- (gen_lowpart_common): Use SUBREG_BYTE.
- (gen_imagpart): Spacing nits.
- (subreg_realpart_p): Use SUBREG_BYTE.
- (gen_highpart): Use SUBREG_BYTE.
- (subreg_lowpart_p): Always compute endian corrected goal offset,
- even at the byte level, then compare against that.
- (constant_subword): New function, pulled out all constant cases
- from operand_subword and changed second argument name to offset.
- (operand_subword): Detect non REG/SUBREG/CONCAT/MEM cases early
- and call constant_subword to do the work. Return const0_rtx if
- looking for a word outside of OP.
- (operand_subword_force): Change second arg name to offset.
- * expmed.c (store_bit_field): Use SUBREG_BYTE.
- (store_split_bit_field): Use SUBREG_BYTE.
- (extract_bit_field): Use SUBREG_BYTE.
- (extract_split_bit_field): Use SUBREG_BYTE.
- (expand_shift): Use SUBREG_BYTE.
- * expr.c (store_expr, expand_expr): Use gen_lowpart_SUBREG.
- * final.c (alter_subreg) Use subreg_hard_regno and SUBREG_BYTE.
- * flow.c (set_noop_p): Use SUBREG_BYTE.
- (mark_set_1): Remove ALTER_HARD_SUBREG. Use subreg_regno_offset instead.
- * function.c (fixup_var_refs_1): Fixup explicit XEXP into a SUBREG_REG.
- (fixup_memory_subreg): Use SUBREG_BYTE and remove byte endian
- correction code.
- (optimize_bit_field): Use SUBREG_BYTE.
- (purge_addressof_1): Use SUBREG_BYTE.
- (purge_single_hard_subreg_set): Use subreg_regno_offset function.
- (assign_params): Mark arguments SUBREG_PROMOTED_VAR_P if they are
- actually promoted by the caller and PROMOTE_FOR_CALLS_ONLY is true.
- * gengenrtl.c (special_rtx): Add SUBREG.
- * global.c (mark_reg_store): Use SUBREG_BYTE.
- (set_preference): Rework to use subreg_regno_offset and SUBREG_BYTE.
- * ifcvt (noce_emit_move_insn): Use SUBREG_BYTE.
- * integrate.c (copy_rtx_and_substitute): Use SUBREG_BYTE and make sure
- final byte offset is congruent to subreg's mode size.
- (subst_constants): Use SUBREG_BYTE.
- (mark_stores): Use subreg_regno_offset function.
- * jump.c (rtx_renumbered_equal_p, true_regnum): Use subreg_regno_offset
- function and SUBREG_BYTE.
- * local-alloc.c (combine_regs): Use subreg_regno_offset function.
- (reg_is_born): Use subreg_hard_regno.
- * recog.c (valid_replace_rtx_1): Use SUBREG_BYTE and remove byte
- endian correction code. Don't combine subregs unless resulting
- offset aligns with type. Fix subreg constant extraction for DImode.
- Simplify SUBREG of VOIDmode CONST_DOUBLE.
- (general_operand): Remove dead mode_altering_drug code.
- (indirect_operand): Use SUBREG_BYTE.
- (constrain_operands): Use subreg_regno_offset function.
- * reg-stack.c (get_true_reg): Use subreg_regno_offset function.
- * regmove.c (regmove_optimize): Use SUBREG_BYTE.
- (optimize_reg_copy_3): Use gen_lowpart_SUBREG.
- * regs.h (REG_SIZE): Allow target to override.
- (REGMODE_NATURAL_SIZE): New macro which target can override.
- * reload.c (reload_inner_reg_of_subreg): subreg_regno should be used
- on the entire subreg rtx.
- (push_reload): Use SUBREG_BYTE in comments and code.
- (find_dummy_reload): Use subreg_regno_offset. Only adjust offsets
- for hard registers inside subregs.
- (operands_match_p): Use subreg_regno_offset.
- (find_reloads): Use SUBREG_BYTE and only advance offset for subregs
- containing hard regs.
- (find_reload_toplev): Use SUBREG_BYTE. Remove byte endian
- corrections when fixing up MEM subregs.
- (find_reloads_address_1): Use SUBREG_BYTE, subreg_regno, and
- subreg_regno_offset where appropriate.
- (find_reloads_subreg_address): Use SUBREG_BYTE. Remove
- byte endian corrections when fixing up MEM subregs.
- (subst_reloads): When combining two subregs, make sure final
- offset is congruent to subreg's mode size.
- (find_replacement): Use SUBREG_BYTE and subreg_regno_offset.
- (refers_to_regno_for_reload_p): Use subreg_regno.
- (reg_overlap_mentioned_for_reload_p): Use subreg_regno_offset.
- * reload1.c (eliminate_regs) Use SUBREG_BYTE. Remove byte endian
- correction code for memory subreg fixups.
- (forget_old_reload_1): Use subreg_regno_offset.
- (choose_reload_regs): Use subreg_regno.
- (emit_input_reload_insns): Use SUBREG_BYTE.
- (reload_combine_note_store): Use subreg_regno_offset.
- (move2add_note_store): Use subreg_regno_offset.
- * resource.c (update_live_status, mark_referenced_resources): Use
- subreg_regno function.
- (mark_set_resources): Use subreg_regno function.
- * rtl.h (SUBREG_WORD): Rename to SUBREG_BYTE.
- (subreg_regno_offset, subreg_regno): Define prototypes.
- (subreg_hard_regno, constant_subword, gen_rtx_SUBREG): Newi functions.
- (gen_lowpart_SUBREG): Add prototype.
- * rtl.texi (subreg): Update to reflect new byte offset representation.
- Add mentioning of the effect that BYTES_BIG_ENDIAN has on subregs now.
- * rtlanal.c (refers_to_regno_p): Use subreg_regno.
- (reg_overlap_mentioned_p): Use subreg_regno.
- (replace_regs); Make sure final offset of combined subreg is
- congruent to size of subreg's mode.
- (subreg_regno_offset): New function.
- (subreg_regno): New function.
- * sched-vis.c (print_value): Change SUBREG_WORD to SUBREG_BYTE.
- * sdbout.c (sdbout_symbol): Compute offset using alter_subreg.
- * stmt.c (expand_anon_union_decl): Use gen_lowpart_SUBREG.
- * tm.texi (ALTER_HARD_SUBREG): Remove, it is now dead.
- (SUBREG_REGNO_OFFSET): Describe SUBREG_REGNO_OFFSET overrides.
- * config/a29k/a29k.c (gpc_reg_operand): Use subreg_regno.
- (a29k_get_reloaded_address): Use SUBREG_BYTE.
- (print_operand): Use SUBREG_BYTE.
- * config/alpha/alpha.c (print_operand_address): Use SUBREG_BYTE.
- * config/arm/arm.c (arm_reload_in_hi): Use SUBREG_BYTE.
- (arm_reload_out_hi): Use SUBREG_BYTE.
- * config/d30v/d30v.c (d30v_split_double): Use subreg_regno_offset
- instead of SUBREG_WORD.
- (d30v_print_operand_memory_reference): Use subreg_regno_offset.
- * config/dsp16xx/dsp16xx.md (extendqihi2, zero_extendqihi2): Fix
- SUBREG creation to use byte offset.
- * config/h8300/h8300.md (Unnamed HImode zero extraction and 16bit
- inverted load insns): Fix explicit rtl subregs to use byte
- offsets.
- * config/i370/i370.md (cmpstrsi, movstrsi, mulsi3, divsi3,
- udivsi3, umodsi3): Generate SUBREGs with byte offsets.
- * config/i860/i860.c (single_insn_src_p): Use SUBREG_BYTE.
- * config/i860/i860.md (mulsi3_big): Fixup explicit SUBREGs in rtl
- to use byte offsets.
- (unnamed fmlow.dd insn): Fixup SUBREGS to use byte offsets.
- * config/i960/i960.md (extendhisi2): Generate SUBREGs with byte
- offsets, also make sure it is congruent to SUBREG's mode size.
- (extendqisi2, extendqihi2, zero_extendhisi2, zero_extendqisi2,
- unnamed ldob insn): Generate SUBREGs with byte offset.
- (zero_extendqihi2): SUBREG's are byte offsets.
- * config/m68hc11/m68hc11.c (m68hc11_gen_lowpart): Use SUBREG_BYTE.
- (m68hc11_gen_highpart): Use SUBREG_BYTE.
- * config/m68k/m68k.md (zero_extendhisi2, zero_extendqihi2,
- zero-extendqisi2): Generate SUBREGs with byte offset.
- (umulsidi3, mulsidi3, subreghi1ashrdi_const32,
- subregsi1ashrdi_const32, subreg1lshrdi_const32): Fixup explicit
- subregs in rtl to use byte offsets.
- * config/m88k/m88k.md (extendsidi2): fixup subregs to use byte offset.
- * config/mips/mips.c (mips_move_1word): Use subreg_regno_offset.
- (mips_move_2words): Use subreg_regno_offset.
- (mips_secondary_reload_class): Use subreg_regno_offset.
- * config/mips/mips.md (DImode plus, minus, move, and logical op
- splits): Fixup explicit subregs in rtl to use byte offsets.
- * config/mn10200/mn10200.c (print_operand): Use subreg_regno function.
- * config/mn10300/mn10300.c (print_operand): Use subreg_regno function.
- * config/ns32k/ns32k.md (udivmoddisi4): Fix explicit subregs in
- rtl to use byte offsets.
- * config/pa/pa.c (emit_move_sequence): Use SUBREG_BYTE.
- * config/pa/pa.md (floatunssisf2, floatunssidf2, mulsi3): fix explicit
- subregs to use byte offsets.
- * config/pdp11/pdp11.md (zero_extendhisi2, modhi3, modhi3+1):
- Fixup explicit subregs in rtl to use byte offsets.
- * config/romp/romp.c (memory_offset_in_range_p): Use SUBREG_BYTE
- and remove byte endian correction code.
- * config/sh/sh.c (output_movedouble): Use subreg_regno.
- (gen_ashift_hi): Use SUBREG_BYTE.
- (regs_used): Use subreg_regno_offset.
- (machine_dependent_reorg): Use subreg_regno_offset.
- * config/sh/sh.h (INDEX_REGISTER_RTX_P): Use SUBREG_BYTE.
- * config/sh/sh.md (DImode and DFmode move splits): Use subreg_regno.
- (movdf_i4): Subregs are byte offsets now.
- * config/sparc/sparc.c (ultra_find_type): Use SUBREG_BYTE.
- * config/sparc/sparc.h (ALTER_HARD_SUBREG): Removed.
- (REGMODE_NATURAL_SIZE): Override.
- (REG_SIZE): For SUBREG check float mode on SUBREG_REG's mode.
- * config/sparc/sparc.md (TFmode move splits): Generate SUBREGs
- with byte offsets.
- (zero_extendhisi2, zero_extendqidi2_insn, extendhisi2,
- extendqihi2, sign_extendqihi2_insn, sign_extendqisi2_insn,
- extendqidi2): Generate SUBREGs with byte offsets, also make sure
- it is congruent to SUBREG's mode size.
- (smulsi3_highpart_v8plus): Fix explicit subregs in rtl to use byte
- offsets.
- (cmp_siqi_trunc, cmp_siqi_trunc_set, cmp_diqi_trunc,
- cmp_diqi_trunc_set, lshrdi3_v8plus+1, lshrdi3_v8plus+2,
- lshrdi3_v8plus+3, lshrdi3_v8plus+4): Use proper
- SUBREG_BYTE offset for non-paradoxical subregs in patterns.
- * config/v850/v850.c (print_operand, output_move_double): Use
- subreg_regno function.
-
-2001-04-03 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in (target_subdir): Use target_alias, not target.
- * configure: Rebuilt.
-
- * config/sh/crtn.asm (init, fini): Restore r15 from r14, not the
- other way round.
- * config/sh/crti.asm: Fix typos in comments.
-
-2001-04-03 Alan Modra <alan@linuxcare.com.au>
-
- * pa.h: Revise comments for TARGET_NO_SPACE_REGS and
- TARGET_FAST_INDIRECT_CALLS.
- * pa.c (override_options): TARGET_NO_SPACE_REGS is now OK with
- -fPIC. Don't warn.
- (return_addr_rtx): Short circuit export stub matching when
- TARGET_NO_SPACE_REGS.
- (output_millicode_call): For out of range calls, make -fPIC
- take precedence, then TARGET_PORTABLE_RUNTIME, then ble. Don't
- return before delay slot checks when TARGET_PORTABLE_RUNTIME.
- * pa.md: Modify length attr calculation of all millicode insns to
- match above.
-
-2001-04-02 Geoffrey Keating <geoffk@redhat.com>
-
- * configure.in (gcc_cv_as_leb128): Correct name of cache variable.
- Require at least 2.11 in the version test. Specifically check
- for and reject GAS version 2.10.90.
- * configure: regenerate.
-
-2001-04-03 Alan Modra <alan@linuxcare.com.au>
-
- * pa.c (override_options): Remove PIC profiling warning.
- (hp_profile_labelno): Delete.
- (hp_profile_label_rtx): Delete.
- (hp_profile_label_name): Delete.
- (pa_add_gc_roots): Remove reference to hp_profile_label_rtx.
- (output_function_prologue): Remove profiling code and all tests on
- profile_flag. Move store of PIC_OFFSET_TABLE_REGNUM now that
- merge_sp_adjust_with_store can work for PIC and profiling.
- (hppa_expand_epilogue): Remove profile_flag test.
- (hppa_can_use_return_insn_p): Likewise.
- (hppa_init_pic_save): Emit before tail_recursion_reentry, and
- cater for PROFILE_HOOK.
- (hppa_profile_hook): New function.
- * pa.h (FUNCTION_PROFILER): Now does nothing.
- (PROFILE_HOOK): Define.
- (hppa_profile_hook): Declare.
- (PROFILE_BEFORE_PROLOGUE): Delete.
- (ASM_OUTPUT_REG_PUSH): Delete.
- (ASM_OUTPUT_REG_POP): Delete.
- * pa.md (call_profiler): Turn it into a call insn, and don't `use'
- r24. Accept function name operand, and use this and a locally
- generated label to calculate pc-rel offset to func start.
-
-2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * $(HOST_PREFIX_1)errors.o, $(HOST_PREFIX_1)ggc-none.o,
- ggc-common.o, ggc-simple.o, ggc-page.o, ggc-none.o: Depend on
- $(SYSTEM_H).
-
-2001-04-03 Alan Modra <alan@linuxcare.com.au>
-
- * dwarf2out.c (dwarf2out_frame_debug_expr): Move errant HIGH and
- LO_SUM cases to where they belong.
-
-2001-04-02 Richard Henderson <rth@redhat.com>
-
- * except.h (lang_eh_type_covers): Mark extern.
- (lang_eh_runtime_type): Likewise.
-
-2001-04-02 Zack Weinberg <zackw@stanford.edu>
-
- * genattr.c, gencheck.c, gencodes.c, genconfig.c, genflags.c,
- gengenrtl.c: Wrap generated header in multiple-include guard.
- Improve error checking.
-
-2001-04-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in: Don't check for putenv.
- * configure: Regenerate.
- * gcc.c (putenv): Don't define.
- * vax/xm-vms.h: Handle putenv.
-
-2001-04-02 Jakub Jelinek <jakub@redhat.com>
-
- * ifcvt.c (noce_emit_move_insn): New.
- (noce_try_store_flag, noce_try_store_flag_constants,
- noce_try_store_flag_inc, noce_try_store_flag_mask,
- noce_try_cmove, noce_try_cmove_arith, noce_try_minmax,
- noce_try_abs): Use it.
- (noce_process_if_block): Likewise.
- For STRICT_LOW_PART, take mode from its SUBREG.
-
-2001-04-02 Jakub Jelinek <jakub@redhat.com>
-
- * fold-const.c (fold): Before optimizing unsigned comparison with
- 0x7fffffffU, make sure arg0 is integral type.
-
-2001-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-tree.texi: Document representation of wide strings.
-
-2001-04-01 Richard Henderson <rth@redhat.com>
-
- * except.h (expand_builtin_dwarf_fp_regnum): Declare.
-
-Sun Apr 1 11:49:05 CEST 2001 Jan Hubicka <jH@suse.cz>
-
- * i386.md: remove obsoleted comments.
- (adddi_?): Rename to adddi_?_rex64; disable for 32bit.
- (x86_movsicc_0_m1_rex64): Rename to x86_movdicc_0_m1_rex64;
- fix output template.
-
-2001-03-31 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/libgcc.S (__mulhi3): Optimize previous change.
-
-2001-03-30 Bernd Schmidt <bernds@redhat.com>
-
- * loop.c (load_mems): When generating a load from a pseudo, update
- REGNO_LAST_UID.
-
-Fri Mar 30 17:36:43 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_split_long_move): Use change address to compensate
- stack pointer change in push instruction.
-
-Fri Mar 30 00:31:00 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_movdfcc_eq): Fix constraint (sse_mov?fcc splitter): Use operands_match_p
- instead of rtx_equal_p; fix the output template.
-
-Fri Mar 30 00:21:41 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_setcc): Support 64bit.
- (ix86_expand_int_movcc): Likewise.
- * i386.md (movdicc_rex64, x86_movsicc_0_m1_rex64, movdicc_c_rex64):
- New patterns.
-
- * i386.md (allocate_stack_worker): Turn to expander.
- (allocate_stack_worker_1, allocate_stack_worker_rex64): New insns.
-
- * i386.c (print_reg): Do not print x86_64 style regs on IA-32
-
-2001-03-29 Richard Henderson <rth@redhat.com>
-
- * libgcc2.c [L__main]: Include unwind-dw2-fde.h instead of frame.h.
-
-2001-03-28 Matthew Hiller <hiller@redhat.com>
-
- * config/mn10300/mn10300.md (cmpsi): Fix first alternative's
- output template.
-
- * MAINTAINERS: Added self.
-
-2001-03-28 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (cs-tconfig.h): Depend on CONFIG_H, not GCONFIG_H.
- Use ALL_CFLAGS not HOST_CFLAGS for sjlj detection.
-
-2001-03-28 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.md (movtf): Change DImode to TFmode in calls to
- operand_subword.
-
-2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * toplev.h (fatal_error): Add ATTRIBUTE_NORETURN.
-
- * tradcif.y (yyerror): Likewise. Add format specifier in call to
- `error'.
-
- * tradcpp.c (macroexpand): Likewise for call to `error_with_line'.
-
-2001-03-28 DJ Delorie <dj@redhat.com>
-
- * Makefile.in (stage1_build): Revert CFLAGS patch.
-
-2001-03-28 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/libgcc.S (__mulhi3): Correct tests to exit the loop
- when multiplier or multiplicand is zero.
-
-2001-03-28 Bernd Schmidt <bernds@redhat.com>
-
- * cselib.c (hash_rtx): Don't do tail recursion elimination by hand.
-
- * config/ia64/ia64.c (update_set_flags): New function, broken out of
- rtx_needs_barrier.
- (set_src_needs_barrier): Likewise.
- (rtx_needs_barrier): For SET case, use these two functions. Rework
- PARALLEL case to handle all inputs before all outputs.
- (emit_insn_group_barriers): Call init_insn_group_barriers only if we
- saw a label and no stop bit since then.
- (maybe_rotate, process_epilogue): Add prototypes.
-
-2001-03-28 Richard Henderson <rth@redhat.com>
-
- * config/rs6000/rs6000.h (EPILOGUE_USES): Use TARGET_AIX,
- not TARGET_TOC for special toc restore handling.
- * config/rs6000/rs6000.md (eh_return): Likewise.
-
-2001-03-28 Richard Henderson <rth@redhat.com>
-
- * config/sparc/sparc.c (eligible_for_epilogue_delay): False if
- current_function_calls_eh_return.
- (output_function_epilogue): Handle eh_return.
- * config/sparc/sparc.h (DOESNT_NEED_UNWINDER): Remove.
- (EH_RETURN_DATA_REGNO): New.
- (EH_RETURN_STACKADJ_RTX): New.
- (EH_RETURN_HANDLER_RTX): New.
- * config/sparc/sparc.md (call/short branch peepholes): Check
- can_throw_internal instead of in_same_eh_region.
-
- * config/rs6000/rs6000.c (rs6000_stack_info): Allocate space
- for eh_return data registers.
- (rs6000_emit_prologue): Save eh_return data registers.
- (rs6000_emit_epilogue): Force inline restores if eh_return.
- Restore eh_return data registers. Mind EH_RETURN_STACKADJ_RTX.
- * config/rs6000/rs6000.h (rs6000_stack_t): Add ehrd_offset.
- (EH_RETURN_DATA_REGNO, EH_RETURN_STACKADJ_RTX): New.
- (EPILOGUE_USES): True for TOC_REGISTER if calls_eh_return and
- the target uses one.
- * config/rs6000/rs6000.md (eh_epilogue, eh_reg_restore): Remove.
- (return_eh_si, return_eh_di): Remove.
- (eh_return): New, from corpse of eh_epilogue.
- (eh_set_lr_si, eh_set_lr_di): New.
-
- * config/i386/i386.c (general_no_elim_operand): Disallow virtual regs.
- (ix86_save_reg): If maybe_eh_return, true for EH_RETURN_DATA_REGNOs.
- True for pic register if current_function_calls_eh_return.
- (ix86_expand_epilogue): Change "emit_return" argument into "style".
- Handle eh_return requirements.
- * config/i386/i386.h (EH_RETURN_DATA_REGNO): New.
- (EH_RETURN_STACKADJ_RTX): New.
- * config/i386/i386.md (exception_receiver): Remove.
- (eh_return, eh_return_1): New.
- * config/i386/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
-
- * config/alpha/alpha.c (alpha_sa_mask): Add EH_RETURN_DATA_REGNOs.
- (alpha_mark_machine_status): No eh_epilogue_sp_ofs ...
- (alpha_expand_epilogue): ... use EH_RETURN_STACKADJ_RTX instead.
- * config/alpha/alpha.h (machine_function): Remove eh_epilogue_sp_ofs.
- (EH_RETURN_DATA_REGNO): New.
- (EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): New.
- * config/alpha/alpha.md (eh_epilogue): Remove.
- (exception_receiver): Use $26 for ldgp input.
- * config/alpha/linux.h (MD_FALLBACK_FRAME_STATE_FOR): New.
-
-2001-03-28 Richard Henderson <rth@redhat.com>
-
- * except.c: Rewrite entirely for IA-64 ABI exception handling.
- * except.h: Likewise.
-
- * Makefile.in (LIB2ADDEH): Mention unwind-dw2*.c
- (LIB2ADDEHDEP): New.
- (LIB2FUNCS_EH): Remove.
- (LIB2ADD): Remove LIB2ADDEH.
- (libgcc.mk): Pass LIB2ADDEHDEP, don't pass LIB2FUNCS_EH.
- (LIBGCC_DEPS): Use LIB2ADDEHDEP.
- (crt{begin,end}[S].o): Likewise.
- (except.o): Update includes.
- * mklibgcc.in: Remove LIB2FUNCS_EH, add LIB2ADDEH, LIB2ADDEHDEP.
- (libgcc2_c_dep): Use LIB2ADDEHDEP.
-
- * basic-block.h (struct basic_block_def): Remove eh_beg, eh_end.
- * bb-reorder.c (reorder_basic_blocks): Don't disable for EH.
- * builtins.def (BUILT_IN_EH_RETURN_DATA_REGNO): New.
- * builtins.c (expand_builtin): Implement it.
- [BUILT_IN_EH_RETURN]: Update for nr arguments change.
- * c-common.c (c_common_nodes_and_builtins): Declare it.
- * c-decl.c (init_decl_processing): Update __builtin_eh_return.
- * calls.c (libfunc_nothrow): Remove.
- (emit_library_call_value_1): Don't call it.
- * crtstuff.c: Include unwind-dw2-fde.h instead of frame.h.
- * dwarf2.h (dwarf_call_frame_info): Add dwarf2.1 elements.
- (DW_EH_PE_*): New defines for pointer encoding in .eh_frame.
- * dwarf2out.c (struct dw_fde_struct): Add uses_eh_lsda, funcdef_number.
- (current_funcdef_number): Globalize.
- (output_call_frame_info): Emit frame data if an lsda is needed.
- Generate augmentation for personality routine. Don't play with
- difference symbols.
- (dwarf2out_begin_prologue): Record funcdef_number.
- * dwarf2out.h (current_funcdef_number): Declare.
- * expr.c (expand_expr): Update for except.h name changes.
- Remove POPDCC_EXPR, POPDHC_EXPR. Add EXC_PTR_EXPR.
- * expr.h (LTI_throw, LTI_rethrow): Remove.
- (LTI_sjthrow, LTI_sjpopnthrow, LTI_terminate): Remove.
- (LTI_eh_rtime_match): Remove.
- (LTI_unwind_resume, LTI_eh_personality): Add.
- (LTI_unwind_sjlj_register, LTI_unwind_sjlj_unregister): Add.
- * final.c (final): Don't call check_exception_handler_labels,
- init_insn_eh_region, or free_insn_eh_region.
- (final_scan_insn): Always emit debug labels for
- NOTE_INSN_EH_REGION notes.
- * flags.h (flag_new_exceptions): Remove.
- * flow.c (entry_exit_blocks): Remove eh_beg, eh_end.
- (record_active_eh_regions): Remove.
- (count_basic_blocks): Check all instructions for REG_EH_REGION.
- Use can_throw_internal.
- (find_basic_blocks_1): Likewise.
- (move_stray_eh_region_notes): Remove.
- (find_label_refs): No eh_return_stub_label.
- (make_edges): Likewise. No init/free_eh_nesting_info. Handle RESX.
- (make_eh_edge): No eh_nest_info. Update for reachable_handlers
- changes.
- (delete_unreachable_blocks): Don't track deleted handlers.
- (flow_delete_block): Use maybe_remove_eh_handler.
- (delete_eh_regions): Remove.
- (merge_blocks): Don't check for eh region match.
- (mark_regs_live_at_end): Handle EH_RETURN_DATA_REGNO,
- EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX.
- (init_propagate_block_info): Disable dead frame store optimization
- when current_function_calls_eh_return.
- (dump_bb): Don't print eh_beg, eh_end.
- * function.c (fixup_var_refs): No catch_clauses.
- (expand_function_end): Likewise. Call expand_eh_return before
- the return register use. Call sjlj_emit_function_exit_after.
- (expand_function_start): Force pseudo DECL_RESULT if sjlj exceptions.
- * function.h (struct function): Add calls_eh_return, uses_eh_lsda.
- * ifcvt.c (dead_or_predicable): Remove eh region check.
- * integrate.c (function_cannot_inline_p): Disallow __builtin_eh_return.
- Don't check for EH vs parameters.
- (expand_inline_function_eh_labelmap, eif_eh_map): Remove.
- (expand_inline_function): Call duplicate_eh_regions.
- (copy_insn_list): Don't handle NOTE_INSN_EH_REGION_BEG/END.
- (copy_insn_notes): Remap REG_EH_REGION notes.
- (copy_rtx_and_substitute): Remove SYMBOL_REF_NEED_ADJUST check.
- * integrate.h (struct inline_remap): Add local_return_label.
- * jump.c (jump_optimize_1): Don't init/free_insn_eh_region, nor
- check_exception_handler_labels, nor exception_optimize.
- (find_cross_jump): No EH region check.
- * optabs.c (init_optabs): Update for changed eh libfuncs.
- * rtl.def (RESX): New.
- * rtl.h (SYMBOL_REF_NEED_ADJUST): Remove.
- * stmt.c (expand_decl_cleanup): Simplify using_eh_for_cleanups_p
- checks. Update for except.h name changes.
- (expand_cleanups): Likewise.
- (expand_dcc_cleanup, expand_dhc_cleanup): Remove.
- * toplev.c (dump_file_index, dump_file): Add .02.eh dump.
- (compile_file): Call init_eh before init_optabs. Don't
- output_exception_table here.
- (rest_of_compilation): Call convert_from_eh_region_ranges,
- convert_to_eh_region_ranges, output_function_exception_table.
- Don't emit_eh_context.
- * tree.def (POPDHC_EXPR, POPDCC_EXPR): Remove.
- (EXC_PTR_EXPR): New.
-
- * md.texi (eh_epilogue): Remove.
- (eh_return): Document.
- * tm.texi (EH_RETURN_DATA_REGNO): Document.
- (EH_RETURN_STACKADJ_RTX, EH_RETURN_HANDLER_RTX): Document.
-
- * eh-common.h: Remove file.
- * frame-dwarf2.c, frame.c, frame.h: Remove files.
- * libgcc2.c (L_eh): Remove.
-
- * unwind-dw2-fde.c: New file, largely copied from frame.c.
- * unwind-dw2-fde.h: New file.
- * unwind-dw2.c: New file, largely cribbed from frame-dwarf2.c.
- * unwind-sjlj.c, unwind.h, unwind.inc: New files.
- * libgcc-std.ver: Update for eh symbols.
-
-2001-03-27 Richard Henderson <rth@redhat.com>
-
- * regmove.c (perhaps_ends_bb_p): Use can_throw_internal to
- reduce false positives.
- (regmove_optimize): Disable if flag_non_call_exceptions.
-
- * stmt.c (expand_return): Remove always true predicate.
- (expand_decl_cleanup_no_eh): Remove dead code.
-
- * sched-deps.c (sched_analyze_insn): Consolidate scheduling
- barrier code. Add a scheduling barrier if a non-call insn
- can throw internally.
-
- * rtlanal.c (rtx_addr_can_trap_p): Virtual registers cannot trap.
- Auto-inc addresses trap only if their base register does.
-
- * except.c (can_throw_internal): Rename from can_throw.
- * except.h, resource.c: Update references.
-
- * integrate.c (copy_insn_list): Use returnjump_p.
- (copy_insn_notes): Recurse for CALL_PLACEHOLDER.
-
- * function.h (struct function): Move all boolean valued fields
- to single bit fields at the end of the struct.
-
- * bb-reorder.c, dwarf2out.c, except.c, except.h, flow.c,
- jump.c, toplev.c:
- Rename asynchronous_exceptions to flag_non_call_exceptions.
-
- * gthr-single.h (UNUSED): New. Distinguish between how C
- and C++ mark unused function arguments. Use throughout.
-
- * Makefile.in (cs-tconfig.h): Copy USING_SJLJ_EXCEPTIONS
- value to target configuration header.
- * configure.in (CONFIG_SJLJ_EXCEPTIONS): New.
- * config.in, configure: Rebuild.
- * except.h (USING_SJLJ_EXCEPTIONS): New. Define based on
- configuration and target defines.
- (exceptions_via_longjmp): Remove.
- * dwarf2out.c, except.c, final.c, toplev.c, config/ia64/ia64.c:
- Use USING_SJLJ_EXCEPTIONS instead of exceptions_via_longjmp.
-
- * except.h (flag_non_call_exceptions): Move ...
- * flags.h: ... here.
-
- * combine.c (distribute_notes) [REG_EH_REGION]: If non-call
- exceptions, put the note on the trapping instruction.
-
- * flags.h (flag_new_exceptions): Remove.
- * toplev.c: Don't set it.
- * final.c: Don't check it.
- * except.c: Provide stub definition.
-
- * flow.c (tidy_fallthru_edges): Don't combine complex edges.
- (calculate_global_regs_live): Kill call-clobbered registers
- across exception edges.
- * reg-stack.c (convert_regs_1): Kill the entire target stack
- across non-call exception edges.
-
- * flow.c (cleanup_cfg): Take no argument.
- * output.h, sibcall.c, toplev.c: Update all calls.
-
-2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in: Don't check for bcopy.
- * configure, config.in: Regenerate.
-
- * system.h: Don't define or prototype bcopy, instead poison it.
-
-2001-03-27 Richard Henderson <rth@redhat.com>
-
- * function.c (expand_function_start): Set DECL_REGISTER on
- a pseudo used for DECL_RESULT.
-
- * rtl.h (LCT_NORETURN): New.
- * calls.c (emit_library_call_value_1): Handle it.
-
-2001-03-27 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (objc_init): Use dump_base_name.
- (gen_declaration): Clear the buffer arg.
- (gen_declaration_1): New function, body of gen_declaration.
- (adorn_decl): Call gen_declaration_1 instead of gen_declaration.
- (gen_method_decl): Ditto, plus always clear buffer arg.
- (error_with_ivar): Simplify.
- (warn_with_method): Ditto.
- (build_message_expr): Don't clear buffers.
- (dump_interface): Ditto.
- (objc_debug): Ditto.
- (build_keyword_selector): Clear the buffer by only zeroing
- the first element.
- (objc_implementation_context): Declare.
- (start_class): Warn about missing @end.
- (finish_objc): Ditto.
-
-2001-03-28 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * reload1.c (eliminate_regs): Don't abort on MEM USEs.
-
-2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (SYSTEM_H): Define.
- Depend on $(SYSTEM_H), not system.h.
-
- * objc/Make-lang.in: Depend on $(SYSTEM_H), not system.h.
-
-2001-03-27 Jim Wilson <wilson@redhat.com>
-
- * final.c (final_scan_insn, case NOTE_INSN_BASIC_BLOCK): Call
- IA64_UNWIND_EMIT.
- * config/ia64/ia64.c (block_num, need_copy_state): New static vars.
- (process_epilogue): New static function.
- (process_set): Call process_epilogue instead of emitting .restore
- directly.
- (process_for_unwind_directive): Handle NOTE_INSN_BASIC_BLOCK.
-
- * flow.c (struct reg_cond_life_info): New fields orig_condition
- and stores.
- (init_propagate_block_info): Set new fields.
- (mark_regno_cond_dead): Set and use new fields.
- (flush_reg_cond_reg_1): Likewise.
- (and_reg_cond, case AND): Check for redundant AND conditions.
- (mark_used_reg): Delete unnecessary clears before freeing splay trees.
- Set new fields.
-
-2001-03-27 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppmacro.c (stringify_arg): Null terminate strings.
-
-2001-03-27 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc (m68hc11-*-*, m68hc12-*-*): Convert to new tm.h
- inclusion style. xm-m68hc11.h no longer exists.
- * config/m68hc11/xm-m68hc11.h: Delete file.
- * config/m68hc11/m68hc12.h: Convert to new tm.h inclusion style.
-
- * config/m68hc11/m68hc11.h: Convert to new tm.h inclusion style.
- Don't define GCC_VERSION, N_, or PARAMS; don't include
- gansidecl.h or stdio.h. Define inhibit_libc here.
- Make code conditioned on #if GCC_VERSION > 2095 unconditional.
- Delete code conditioned on #if GCC_VERSION == 2095.
-
- * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
- Make code conditioned on #if GCC_VERSION > 2095 unconditional.
- Delete code conditioned on #if GCC_VERSION == 2095.
-
-2001-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h: Include symcat.h.
- (STRINGIFY): Don't define.
-
- * configure.in: Adjust comment.
-
- * builtins.c: Use STRINGX, not STRINGIFY.
- * gencheck.c: Likewise.
- * gengenrtl.c: Likewise.
- * protoize.c: Likewise.
-
- * cpplex.c: Don't include symcat.h.
- * cpplib.c: Likewise.
-
- * gansidecl.h (HAVE_STRINGIZE): Don't define.
-
-2001-03-27 Alan Modra <alan@linuxcare.com.au>
-
- * c-typeck.c (digest_init): Fold init expression.
-
-2001-03-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * sbitmap.c (sbitmap_copy): Call memcpy, not bcopy.
-
-2001-03-27 Alan Modra <alan@linuxcare.com.au>
-
- * except.c (eh_regs): Save results of build_pointer_type to a temp
- as FUNCTION_VALUE macro may evaluate its args multiple times.
-
-2001-03-26 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (DECL_NUM_STMTS): New macro.
- * c-decl.c (duplicate_decls): Copy DECL_NUM_STMTS, not
- DECL_FRAME_SIZE.
- (pushdecl): Likewise.
- * c-semantics.c (add_stmt): Update DECL_NUM_STMTS.
- * integrate.c (expand_inline_function): Don't check
- DECL_FRAME_SIZE.
- * print-tree.c (print_node): Don't print it.
- * toplev.c (rest_of_compilation): Don't try to inline when
- flag_no_inline is on.
- * tree.h (DECL_FRAME_SIZE): Remove.
- (tree_decl): Adjust accordingly.
-
-2001-03-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * combine.c (try_combine): Use memcpy, not bcopy.
-
- * genattrtab.c (expand_units): Likewise.
-
-Mon Mar 26 15:55:08 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (push mem DI peep2): New.
- (mov 0, mov -1 peep2): Handle 64bit.
- (lea to arithmetics peep2): Handle 64bit leas.
- (rsp arithmetics to push/pop peep2s): New.
-
- * i386.md (truncdfsf2_3, trunctfsf2_2): Change predicate to memory_operand.
-
-Mon Mar 26 14:35:18 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (struct machine_function): Add save_varrargs_registers.
- (ix86_save_varrargs_registers): New macro.
- (ix86_frame_layout): Support 64bit; support red zones and varrargs area.
- (ix86_expand_prologue): Likewise.
- (ix86_emit_epilogue_esp_adjustement): Likewise.
- (ix86_expand_epilogue): Likewise.
- * i386.md (pro_epilogue_adjust_stack): Turn to expander; support 64bit.
- (pro_epilogue_adjust_stack_1): New insn.
- (pro_epilogue_adjust_stack_rex64): Likewise.
- * i386.h (MASK_NO_RED_ZONE): New constant.
- (TARGET_RED_ZONE): New macro.
- (TARGET_OPTIONS): Add "red-zone" and "no-red-zone"
- (RED_ZONE_SIZE): New constant.
- (RED_ZONE_RESERVE): New constant.
-
-2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * toplev.c (set_float_handler): Use memcpy, not bcopy.
-
-2001-03-25 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.md (umodqi3): Output a tab instead of a
- space.
- (modqi3): Likewise.
- (umodhi3): Likewise.
- (modhi3): Likewise.
-
-2001-03-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mkconfig.sh (DEFINES): Handle entries with '='.
-
- * config.gcc: Don't use i370/xm-mvs.h or ns32k/xm-pc532-min.h.
- Set xm_defines to MACRO=value instead.
-
- * i370/xm-mvs.h: Delete.
-
- * ns32k/xm-pc532-min.h: Likewise.
-
-Sun Mar 25 15:01:40 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (ashldi3, ashrdi3, lshrdi3): Change predicates to
- shiftdi_operand;
- use ix86_expand_binary_operator
- (?sh??i_?): Disable for 64bit.
- * i386.h (PREDICATE_CODES): Add shiftdi_operand.
- * i386.c (shiftdi_operand): New predicate.
-
- * (ashldi3_1_rex64, ashldi3_cmp_rex64, ashlsi3_1_zext, ashlsi3_cmp_zext,
- ashrdi3_63_rex64, ashrdi3_1_one_bit_rex64, ashrdi3_1_rex64,
- ashrdi3_one_bit_cmp_rex64, ashrdi3_cmp_rex64, ashrsi3_31_zext,
- ashrsi3_1_one_bit_zext, ashrsi3_1_zext, ashrsi3_one_bit_cmp_zext,
- ashrsi3_cmp_zext, lshrdi3_1_one_bit_rex64, lshrdi3_1_rex64,
- lshrdi3_cmp_one_bit_rex64, lshrdi3_cmp_rex64, lshrsi3_1_one_bit_zext,
- lshrsi3_1_zext, lshrsi3_cmp_one_bit_zext, lshrsi3_cmp_zext,
- rotlsi3_1_one_bit_rex64, rotldi3_1_rex64,
- rotlsi3_1_one_bit_zext, rotlsi3_1_zext, rotrdi3_1_one_bit_rex64,
- rotrdi3_1_rex64, rotrsi3_1_one_bit_zext, rotrsi3_1_zext): New patterns.
- (rotldi3, rotrdi3): New expanders.
-
-Sun Mar 25 14:25:33 CEST 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movstrsi): Move offline.
- (movstrdi): New.
- (strmovdi_rex64): New.
- (strmov?i): Accept 64bit.
- (strmov?i_rex64): New.
- (strmov?i_rex_1): New.
- (strmov?i_1): Disable for 64bit.
- (rep_mov?i_rex64): New.
- (rep_mov?i): Disable for 64bit.
- (clrstrsi): Move offline.
- (strset?i_rex64): New.
- (strset?i: Accept 64bit.
- (rep_stos?i): Disable for 64bit.
- (rep_stos?i_rex64): New.
- (strset?i_rex_1): New.
- (strset?i_1): Disable for 64bit.
- (cmpstrsi): Accept 64bit.
- (cmpstrsi_nz_1): Rename to cmpstrqi_nz_1; Disable for 64bit.
- (cmpstrqi_nz_rex_1): New.
- (cmpstrsi_1): Rename to cmpstrqi_1; Disable for 64bit.
- (strlensi): Move offline.
- (strlendi): New.
- (strlenqi_1): Disable for 64bit; fix constraints.
- (strlenqi_rex_1): New.
- * i386.c (ix86_adjust_counter): New static function.
- (ix86_zero_extend_to_Pmode): Likewise.
- (ix86_expand_aligntest): Likweise.
- (ix86_expand_strlensi_unroll_1): Make static; update for 64bit.
- (ix86_expand_movstr): New global function.
- (ix86_expand_clrstr): New global function.
- (ix86_expand_strlen): New global function.
- * i386-protos.h (ix86_expand_movstr, ix86_expand_clrstr,
- ix86_expand_strlen): Declare.
- (ix86_expand_strlensi_unroll_1): Delete.
-
-Sat Mar 24 23:15:19 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (cmpdi): Fix operand predicates.
- (cmpdi_ccno_1_rex64, cmpdi_minus_1_rex64, cmpdi_1_rex64,
- cmpdi_1_insn_rex64): New patterns.
- (adddi3): Turn to expander.
- (adddi3_1, adddi3_carry_rex64, adddi3_cc_rex64): New patterns.
- (addsi3_carry_zext): New pattern.
- (adddi_?_rex64): New patterns and splitters.
- (addsi_?_zext): New patterns.
- (subsi3_carry_zext): New pattern.
- (subdi_?_rex64): New patterns and splitters.
- (iorsi_?_zext): New patterns.
- (iordi_?_rex64): New patterns and splitters.
- (iorsi_?_zext): New patterns.
- (iorsi_?_zext_imm): New patterns.
- (xorsi_?_zext): New patterns.
- (xordi_?_rex64): New patterns and splitters.
- (xorsi_?_zext): New patterns.
- (negdi*): New patterns.
- (one_cmpldi*): Likewise.
- (one_cmplsi*_zext, negsi*_zext): Likewise.
- (testqi_ext_3_rex64): New pattern.
-
-Sat Mar 24 21:13:28 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386-protos.h (ix86_split_long_move): Return void.
- * i386.c (ix86_split_to_parts): Handle 64bit target.
- (ix86_split_long_move): Likewise.
- * i386.md (all calls to ix86_split_long_move): Update.
-
-2001-03-23 Richard Henderson <rth@redhat.com>
-
- * config/mips/iris4.h (ASM_OUTPUT_ASCII): Rename local variables
- to avoid shadowing arguments.
-
-2001-03-23 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (make_decl_rtl): Don't append var_labelno discriminator
- to variable names where DECL_NAME is different from
- DECL_ASSEMBLER_NAME.
-
-2001-03-23 Jim Wilson <wilson@redhat.com>
-
- * varasm.c (make_decl_rtl): Add TREE_PUBLIC check to abort test.
- (assemble_alias): Call make_decl_rtl.
-
-Fri Mar 23 16:59:08 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * stor-layout.c (layout_type): Give OFFSET_TYPE a MODE_INT type.
-
-2001-03-23 Bryce McKinlay <bryce@albatross.co.nz>
-
- * extend.texi: Document the "java_interface" attribute.
-
-2001-03-22 Zack Weinberg <zackw@stanford.edu>
-
- * mkconfig.sh: Use a subshell with redirected stdout,
- instead of closing stdout and confusing commands that run
- afterward. Throw away output of cmp.
-
-2001-03-22 Gordon Sadler <gbsadler1@lcisp.com>
-
- * Makefile.in (stage1_build): Pass CFLAGS to stage1_build.
-
-Thu Mar 22 22:15:59 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (zero_extendsidi2_32): Break out from ...
- (zero_extendsidi2): ... here ; turn to expander.
- (zero_extendsidi2_rex64): New.
- (extendsidi2_32): Break out from ...
- (extendsidi2): ... here ; turn to expander.
- (extendsidi2_rex64): New.
- (zero_extendhidi2, zero_extendqidi2, extendhidi2, extendqidi2): New.
- (trunc?f?f splitters): Add 64bit versions.
-
-Thu Mar 22 21:41:16 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (pushsi, pushsi2_prologue): Disable.
- (pushsi2_rex64): New.
- (movabs?i_1_rex64, movabs?i_2_rex64): New.
- (movqi_ext_1): Disable for 64bit.
- (movqi_ext_1_rex64): New.
- (pushdi2_rex64): New pattern, peep2s and splitter.
- (pushdi2_prologue_rex64): New pattern.
- (popdi1_epilogue_rex64, popdi1, movdi_xor_rex64, movdi_or_rex64):
- Likewise.
- (movdi splitters): Disable for 64bit.
- (movdi_1_rex64): New pattern, peep2s and splitters.
- (swapdi): New pattern.
- (pushsf): Disable for 64bit.
- (pushsf_rex64): New pattern and splitter.
- (pushdf_nointeger): Disable for 64bit.
- (pushdf_integer): Handle the 64bit case.
- (pushtf): Likewise; update splitters.
-
-2001-03-22 Richard Henderson <rth@redhat.com>
-
- * mkconfig.sh: Include insn-flags.h.
- * Makefile.in (CONFIG_H): Include insn-flags.h.
- (lots of objects): Remove insn-codes.h and insn-flags.h.
-
- * alias.c, bb-reorder.c, calls.c, do-loop.c, flow.c, haifa-sched.c,
- integrate.c, jump.c, loop.c, predict.c, profile.c, reg-stack.c,
- regmove.c, reorg.c, a29k/a29k.c, alpha/alpha.c, arc/arc.c, arm/arm.c,
- avr/avr.c, clipper/clipper.c, convex/convex.c, d30v/d30v.c,
- dsp16xx/dsp16xx.c, fr30/fr30.c, h8300/h8300.c, i370/i370.c,
- i386/i386.c, i860/i860.c, ia64/ia64.c, m32r/m32r.c, m68hc11/m68hc11.c,
- m68k/m68k.c, m88k/m88k.c, mcore/mcore.c, mn10200/mn10200.c,
- mn10300/mn10300.c, ns32k/ns32k.c, pa/pa.c, pdp11/pdp11.c,
- pj/pj.c, romp/romp.c, rs6000/rs6000.c, sh/sh.c, sparc/sparc.c,
- v850/v850.c, vax/vax.c:
- Don't include insn-flags.h.
-
- * diagnostic.c, expr.h, reload.c, toplev.c:
- Don't include insn-codes.h.
-
- * builtins.c, combine.c, except.c, explow.c, expmed.c, expr.c,
- final.c, function.c, optabs.c, recog.c, reload1.c, stmt.c,
- c4x/c4x.c, i960/i960.c, mips/mips.c:
- Don't include insn-codes.h or insn-flags.h.
-
- * genemit.c, genopinit.c, genoutput.c: Don't include insn-codes.h
- or insn-flags.h in the generated code.
- * genflags.c (gen_proto): Use "struct rtx_def *" instead of "rtx".
- (main): Forward declare struct rtx_def.
-
-2001-03-22 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi (-ffast-math): Remove duplicate line about
- __FAST_MATH__.
-
- * gcc.texi: Remove more obsolete documentation of bugs and
- installation problems.
-
-2001-03-21 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.md (movsi_h8300hs): Split the 2nd alternative
- into two parts.
-
-2001-03-20 Jason Merrill <jason@redhat.com>
-
- * collect2.c (is_ctor_dtor): Always use '_' in the file fn names,
- not '.' or '$'.
- * tree.c (FILE_FUNCTION_FORMAT): Likewise.
- * varasm.c (CHKR_PREFIX): Likewise.
-
-Wed Mar 21 14:27:11 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * gcse.c (hash_scan_set): An expression is not anticipatible if it
- is part of a multi-SET insn.
-
- * cse.c (find_comparison_args): Remove previous change.
- * ifcvt.c (noce_process_if_block): When moving an insn, remove any
- REG_EQUAL notes.
-
- * config/i386/i386.md (conditional_trap): Remove warning.
-
- * recog.c (push_operand): Fix error in last change that caused
- undefined symbol on many targets.
-
- * sdbout.c: #include ggc.h.
- (sdbout_init): Move to end of file.
- Call ggc_add_tree_root for anonymous_types.
- (sdbout_symbol): Use DECL_NAME for local, not DECL_ASSEMBLER_NAME.
- (sdbout_one_type): Use DECL_NAME for field name.
- * Makefile.in (sdbout.o): Show includes ggc.h.
-
-Wed Mar 21 20:33:26 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (override_options): Default ix86_regparm to REGPARM_MAX.
- (override_options): Use properlimits for preferred_stack_boundary.
- (ix86_valid_type_attribute_p): Disable stdcall and cdecl attributes
- on x86_64.
- (ext_register_operand): Accept DImode.
- (load_pic_register): Abort on 64bit.
- (gen_push): Use Pmode instead of SImode.
- (ix86_save_reg): Pic reg is never used on 64bit.
- (ix86_expand_prologue): Likewise.
- (ix86_emit_save_regs): Use Pmode instead of SImode.
- (legitimate_address_p): Check displacement for 64bit.
- (print_operand): Avoid outputting of (%rip) on 64bit.
- (print_operand_address): Output (%rip) where possible.
- (split_di): Abort on 64bit registers.
- (ix86_expand_branch): DImode comparison is simple for x86_64.
- (memory_address_length): Recognize memory addresses formed using
- PRE/POST modify.
- (ix86_data_alignment, ix86_local_alignment): Align arrays to 16 bytes
- for x86_64.
- * i386.h (TARGET_USE_SAHF): Disable for 64bit.
-
-Wed Mar 21 18:51:19 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * recog.c (push_operand): Recognize new format of push instructions.
-
-Wed Mar 21 10:53:57 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (pushqi1): New.
- * i386-protos.h (x86_64_general_operand, x86_64_szext_general_operand,
- x86_64_nonmemory_operand, x86_64_szext_nonmemory_operand,
- x86_64_immediate_operand, x86_64_immediate_operand,
- x86_64_zext_immediate_operand): Declare.
- * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
- x86_64_nonmemory_operand, x86_64_szext_nonmemory_operand,
- x86_64_immediate_operand, x86_64_immediate_operand,
- x86_64_zext_immediate_operand): define.
- * i386.h (PREDICATE_CODES): Add new predicates.
-
-Wed Mar 21 10:25:13 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (pophi1, popqi1, pushqi1): Remove.
-
- * expr.c (emit_single_push_insn): New function.
- (move_by_pieces): Accept NULL as destination for push instructions.
- (gen_push_operand): Kill.
- (emit_push_insn): Pass NULL when pushing; avoid updating of
- stack_pointer_delta.
- * expr.h (gen_push_operand): Kill.
-
-Tue Mar 20 20:15:06 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * rtl.texi (COMPARE): Clarify documentation and reference section
- on comparisons.
-
-2001-03-20 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (get_static_reference): Use NULL_TREE.
- (get_object_reference): Ditto.
- (error_with_ivar): Use error_with_file_and_line.
- (warn_with_method): Use warning_with_file_and_line.
-
-2001-03-20 Tom Tromey <tromey@redhat.com>
-
- * libgcc-std.ver: Added __fixunssfsi and __fixunsdfsi.
-
-2001-03-20 Mark Mitchell <mark@codesourcery.com>
-
- * tree.c (set_decl_assembler_name): Set DECL_ASSEMBLER_NAME for
- variables that are TREE_PUBLIC, even if not TREE_STATIC.
-
-2001-03-20 DJ Delorie <dj@redhat.com>
-
- * Makefile.in (install-libgcc): Pass complete list of variables.
- (install-multilib): Ditto.
-
-2001-03-20 David Billinghurst <David.Billinghurst@riotinto.com>
-
- * config/i386/cygwin.h: Declare ctor_section, dtor_section
- drectve_section, switch_to_section.
-
- * winnt.c: Declare functions associated_type, gen_stdcall_suffix,
- i386_pe_dllexport_p, i386_pe_dllimport_p, i386_pe_mark_dllexport,
- i386_pe_mark_dllimport.
-
-2001-03-20 David Billinghurst <David.Billinghurst@riotinto.com>
-
- * config/i386/cygwin.h: Include <stdio.h> Declare and constify
- functions i386_pe_*.
-
- * config/i386/winnt.c: Include "tm_p.h" and "toplev.h" Constify
- i386_pe_* functions with char * arguments.
-
-2001-03-20 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (movsf_ie): Fix output patterns for fpul load
- and store.
- (movsi_ie): Introduce fpul store.
-
-2001-03-20 Alan Modra <alan@linuxcare.com.au>
-
- * Makefile.in (OBJS): Remove hashtab.o.
-
-2001-03-19 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c (maybe_objc_method_name): Remove, never called.
- * c-lang.c (maybe_objc_method_name): Ditto.
- * c-tree.h (maybe_objc_method_name): Remove decl.
-
-2001-03-19 Tom Tromey <tromey@redhat.com>
-
- * gcc.c (init_gcc_specs): Fix comment.
-
-2001-03-19 Mark Mitchell <mark@codesourcery.com>
-
- Compute DECL_ASSEMBLER_NAME lazily.
- * tree.h (DECL_ASSEMBLER_NAME): Compute it lazily.
- (DECL_ASSEMBLER_NAME_SET_P): New macro.
- (SET_DECL_ASSEMBLER_NAME): Likewise.
- (COPY_DECL_ASSEMBLER_NAME): Likewise.
- (set_decl_assembler_name): Declare.
- (lang_set_decl_assembler_name): Likewise.
- * tree.c (lang_set_decl_assembler_name): New variab.e
- (set_decl_assembler_name): New function.
- (init_obstacks): Set lang_set_decl_assembler_name.
- (build_decl): Don't set DECL_ASSEMBLER_NAME.
- * c-decl.c (duplicate_decls): Use SET_DECL_ASSEMBLER_NAME,
- COPY_DECL_ASSEMBLER_NAME, etc. Don't set DECL_ASSEMBLER_NAME
- where it's not necessary.
- (builtin_function): Likewise.
- (finish_decl): Likewise.
- * dbxout.c (dbxout_type_methods): Likewise.
- * ggc-common.c (ggc_mark_trees): Likewise.
- * profile.c (output_func_start_profiler): Likewise.
- * varasm.c (make_decl_rtl): Likewise.
-
- * cse.c (find_comparison_args): Update documentation. Fix
- mishandling of COMPARE operations.
-
- * tree.def (ABS_EXPR): Add documentation.
- * fold-const.c (fold): Improve folding of ABS_EXPRs.
-
-2001-03-19 Zack Weinberg <zackw@stanford.edu>
-
- * Makefile.in (hash.o): Depend on $(GCONFIG_H), not $(CONFIG_H).
-
-2001-03-19 Jakub Jelinek <jakub@redhat.com>
-
- * crtstuff.c (init_dummy): Use CRT_END_INIT_DUMMY if defined.
- Remove ia32 linux PIC kludge and move it...
- * config/i386/linux.h (CRT_END_INIT_DUMMY): ...here.
-
-Mon Mar 19 18:53:54 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (absdf2 expander): Fix 64bit case.
-
-2001-03-19 Brad Lucier <lucier@math.purdue.edu>
-
- * Makefile.in: Have splay-tree.o depend on $(GCONFIG_H).
-
-2001-03-16 Andrew Haley <aph@cambridge.redhat.com>
-
- * config/ia64/libgcc-ia64.ver: Add __ia64_backtrace.
-
-2001-03-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * README.X11: Remove obsolete file.
-
-2001-03-18 Anthony Green <green@redhat.com>
-
- * config/pj/pj.h: Remove some trailing commas.
- (ASM_SPEC): Use -EB and -EL, not -mb and -ml.
-
-2001-03-18 Richard Henderson <rth@redhat.com>
-
- * defaults.h (ACCUMULATE_OUTGOING_ARGS, PUSH_ARGS): Move from ...
- * calls.c: ... here.
- * combine.c, expr.c, final.c, function.c toplev.c: Don't provide
- defaults for them here.
-
-2001-03-17 Anthony Green <green@redhat.com>
-
- * config/pj/lib1funcs.S: Fix broken comment.
- * config/pj/pj.h (LOCAL_LABEL_PREFIX): Prefix internal
- labels with '.'.
-
-2001-03-18 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi: Remove obsolete information relating to build and
- installation problems with enquire or the Pyramid C compiler.
-
-2001-03-17 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (queue_reg_save): New.
- (flush_queued_reg_saves, clobbers_queued_reg_save): New.
- (dwarf2out_frame_debug_expr): Call queue_reg_save instead of
- dwarf2out_reg_save.
- (dwarf2out_frame_debug): Call flush_queued_reg_saves when needed.
- (cfa, cfa_store, cfa_temp): Make static.
- * final.c (final_scan_insn): Always call dwarf2out_frame_debug.
-
-2001-03-17 Richard Henderson <rth@redhat.com>
-
- * integrate.h (struct inline_remap): Add local_return_label.
- * integrate.c (expand_inline_function): Initialize it and emit
- it after copy_insn_notes.
- (copy_insn_list): Don't store local_return_label here.
- (copy_insn_notes): New function split out from copy_insn_list.
-
-2001-03-17 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (lookup_filename): Emit .file if the assembler
- is generating .debug_line.
- (dwarf2out_init): Add main_input_filename to the file table first.
- * configure.in (as_dwarf2_debug_line): Test with file number 1
- instead of file number 0.
-
-Sat Mar 17 11:52:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * combine.c (undobuf): Remove field previous_undos; all refs deleted.
- (gen_rtx_combine): Deleted; all references changed as appropriate.
- (gen_unary): Deleted; all refs changed to call simplify_gen_unary.
-
- * print-tree.c (print_node): Print DECL_NONADDRESSABLE_P.
-
-2001-03-17 David Billinghurst <David.Billinghurst@riotinto.com>
-
- * config/i386/xm-cygwin.h: Include <sys/cygwin.h. Remove unused
- variable.
-
-2001-03-16 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.c (ia64_compute_frame_size): If reg_fp is zero,
- then set it to LOC_REG (79) instead of aborting.
-
-2001-03-16 Phil Edwards <pme@sources.redhat.com>
-
- * gccbug.in: Remove high priority.
-
-2001-03-16 Richard Henerson <rth@redhat.com>
-
- * aclocal.m4 (gcc_AC_EXAMINE_OBJECT): Substitute leading od
- output with a space instead of deleting it.
- * configure: Regenerate.
-
-2001-03-16 Zack Weinberg <zackw@stanford.edu>
-
- * aclocal.m4 (gcc_AC_EXAMINE_OBJECT): New utility macro which
- handles the gory details of converting an object file into
- something that's safe to grep.
- (gcc_AC_C_COMPILE_BIGENDIAN): Rename to
- gcc_AC_C_COMPILE_ENDIAN. Use gcc_AC_EXAMINE_OBJECT. Put
- newlines at either end of the string we're looking for.
- Make 'checking ...' message less stilted.
- (gcc_AC_C_FLOAT_FORMAT): Use gcc_AC_EXAMINE_OBJECT. Handle
- ARM in-memory layout and its hypothetical converse. Don't
- define HOST_FLOAT_WORDS_BIG_ENDIAN unless it's different from
- HOST_WORDS_BIG_ENDIAN.
-
- * configure.in: Adjust for renamed macro. Move
- gcc_AC_C_FLOAT_FORMAT below gcc_AC_C_COMPILE_ENDIAN.
- * configure, config.in: Regenerate.
-
-2001-03-16 Laurynas Biveinis <lauras@softhome.net>
-
- * fixinc/Makefile.in: Set SHELL.
-
-2001-03-16 Laurynas Biveinis <lauras@softhome.net>
-
- * fixinc/fixincl.c (fix_with_system): Quote file names before
- passing them to shell.
-
-2001-03-16 Laurynas Biveinis <lauras@softhome.net>
-
- * Makefile.in: Use fix-header$(build_exeext) instead
- of fix-header.
-
-2001-03-16 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c: Revert most of 2000-11-25 and 2001-01-24 changes.
- (LN_PROLOG_AS_LABEL, LN_PROLOG_END_LABEL): New.
- (size_of_line_prolog): Remove.
- (output_line_info): Compute prologue size via label difference.
- (lookup_filename): Return "unspecified" for <internal> and <built-in>.
-
- * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Require that the
- assembler error when redefining file numbers.
- * config.in, configure: Rebuild.
-
- * dwarf2asm.c (dw2_asm_output_data): Mask data to the output size.
- (dw2_asm_output_data_uleb128): Use space not tab after .uleb128.
- (dw2_asm_output_delta_uleb128): Likewise.
- (dw2_asm_output_delta_sleb128): Similarly.
- (dw2_asm_output_data_sleb128): Similarly. Print number in decimal.
-
-2001-03-16 Michael Meissner <meissner@redhat.com>
-
- * mips.h (BITMASK_HIGH): Replacement for 0x80000000 that avoids
- warnings.
- (BITMASK_UPPER16): Replacement for 0xffff0000 that avoids
- warnings.
- (BITMASK_LOWER16): Replacement for 0x0000ffff.
-
- * mips.c (save_restore_insns): Use BITMASK_UPPER16/BITMASK_LOWER16
- instead of 0xffff0000/0x0000ffff to avoid warnings about constants
- being unsigned in ISO C and signed in traditional.
- (expand_prologue): Ditto.
- (RA_MASK): Use BITMASK_HIGH to avoid warnings.
-
- * mips.md (divmodsi4,divmodsi4): Use BITMASK_HIGH to avoid
- warnings.
- (divsi3,divdi3): Ditto.
- (modsi3,moddi3): Ditto.
- (fix_truncdfsi2,fix_truncdfdi2): Ditto.
- (fix_truncsfsi2,fix_truncsfdi2): Ditto.
- (movsi split): Use BITMASK_UPPER16/BITMASK_LOWER16 to avoid
- warnings.
-
-Fri Mar 16 14:47:57 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_fp_movcc): Do not attempt to construct
- SSE based conditional moves on LTGT/UNEQ conditions;
- Canonicalize EQ to NE.
- * i386.md (sse_mov?fcc): Disallow EQ and NE in IEEE mode.
- (sse_mov?fcc_ne): New.
-
- * i386-protos.h (sign_extended_value, zero_extended_value): Declare.
-
-2001-03-16 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (sh_expand_prologue): Insns that set up the PIC
- register may be dead.
-
-2001-03-16 Brad Lucier <lucier@math.purdue.edu>
-
- * Makefile.in (hash.o): Depend on CONFIG_H.
-
-2001-03-15 Mark Mitchell <mark@codesourcery.com>
-
- * dwarf2out.c (rtl_for_decl_location): Use DECL_RTL_IF_SET.
-
-2001-03-15 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): New.
- (ASM_OUTPUT_DWARF_PCREL): New.
- * config/ia64/hpux.h (ASM_OUTPUT_DWARF_OFFSET): Remove.
-
-2001-03-16 Alexandre Oliva <aoliva@redhat.com>
-
- * cppfiles.c (stack_include_file): Use MAX of sysp.
-
-2001-03-15 Steve Ellcey <sje@cup.hp.com>
-
- * config.gcc (ia64*-*-hpux*): New case.
- * config/ia64/hpux.h: New file for HP-UX support.
- * config/ia64/t-hpux: New file for HP-UX support.
-
-2001-03-16 Bruce Korb <bkorb@gnu.org>, Alexandre Oliva <aoliva@redhat.com>
-
- * fixinc/inclhack.def (irix_stdio_va_list): New.
- * fixinc/fixincl.x: Rebuilt.
-
-2001-03-15 Richard Henderson <rth@redhat.com>
-
- * dwarf2asm.c (dw2_asm_output_offset): Use ASM_OUTPUT_DWARF_OFFSET
- if provided by the target.
- (dw2_asm_output_pcrel): Likewise with ASM_OUTPUT_DWARF_PCREL.
- (dw2_asm_output_addr): New.
- * dwarf2asm.h (dw2_asm_output_addr): Declare.
- * dwarf2out.c (output_cfi): Use it for program addresses.
- (output_call_frame_info, output_die): Likewise.
- (output_aranges, output_line_info): Likewise.
-
-2001-03-15 Bruce Korb <bkorb@gnu.org>
-
- * gcc.c(main): make more rigorous
- * collect2.c(main): guard against ignoring SIGCHLD
- * protoize.c(main): ditto
- * gcc/fixinc/fixincl.c(initialize): ditto
-
-2001-03-15 Mark Mitchell <mark@codesourcery.com>
-
- * sdbout.c (sdbout_symbol): Use DECL_RTL_SET_P, SET_DECL_RTL.
- (sdbout_parms): Likewise.
-
-Thu Mar 15 12:57:14 2001 Jeffrey A Law (law@cygnus.com)
-
- * reload1.c (reload_cse_simplify_set): For LOAD_EXTEND_OP, do not
- "widen" a destination that is already wider than a word. Also do
- not widen if LOAD_EXTEND_OP is NIL for the given mode.
-
-2001-03-15 Bernd Schmidt <bernds@redhat.com>
-
- * config/ia64/ia64.c (ia64_sched_reorder): Remove debugging aids.
-
-Thu Mar 15 11:30:31 EST 2001 John Wehle (john@feith.com)
-
- * i960.h (ROUND_TYPE_SIZE_UNIT): Fix typo.
-
-Thu Mar 15 11:24:29 EST 2001 John Wehle (john@feith.com)
-
- * i960.h (i960_maxbitalignment,
- i960_last_maxbitalignment): Declare.
- * i960.c (i960_maxbitalignment,
- i960_last_maxbitalignment): Make global.
- (process_pragma): Delete.
- (i960_pr_align, i960_pr_noalign): Move from here ...
- * i960-c.c: ... to this new file.
- * t-960bare (i960-c.o): New rule.
- * t-vxworks960 (i960-c.o): Likewise.
- * config.gcc (i960-*-*): Define c_target_objs and
- cxx_target_objs.
-
-2001-03-15 Bernd Schmidt <bernds@redhat.com>
-
- * cselib.c (hash_rtx): For REG and MEM, just use value of expression
- without adding in rtx code and mode.
-
- * alias.c (init_alias_analysis): Don't use any rtx whose value
- varies as a known value.
- Delete a superfluous test.
-
- * config/ia64/ia64.c (maybe_rotate): New function, broken out of
- ia64_sched_reorder.
- (ia64_sched_reorder): Call maybe_rotate; also rotate after
- scheduling a stop bit.
- (ia64_emit_nops): Correctly handle ASMs.
-
-2001-03-15 Mark Mitchell <mark@codesourcery.com>
-
- * varasm.c (assemble_variable): Use DECL_RTL_SET_P.
-
-2001-03-15 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi: Update documentation for -include and -imacros.
- * cppfiles.c (struct include_file): Remove "defined" memeber.
- (find_or_create_entry): Make a copy of the file name, and
- simplify it.
- (open_file): Update to ensure we use the simplified filename.
- (stack_include_file): Don't set search_from.
- (cpp_included): Don't simplify the path name here.
- (find_include_file): New prototype. Call search_from to
- get the start of the "" include chain. Don't simplify the
- filenames here.
- (_cpp_execute_include): New prototype. Move diagnostics to
- do_include_common. Update.
- (_cpp_pop_file_buffer): Don't set defined.
- (search_from): New prototype. Use the preprocessor's cwd
- for files included from the command line.
- (read_name_map): Don't simplify the pathname here.
- * cpphash.h (enum include_type): New.
- (struct buffer): Delete search from. New search_cached.
- (_cpp_execute_include): Update prototype.
- * cppinit.c (do_includes): Use _cpp_execute_include.
- * cpplib.c (do_include_common): New function.
- (do_include, do_include_next, do_import): Use it.
-
-2001-03-14 Mark Mitchell <mark@codesourcery.com>
-
- * varasm.c (assemble_alias): Use DECL_ASSEMBLER_NAME, not the
- contents of the RTL, to determine the name of the object.
-
-2001-03-14 Mark Mitchell <mark@codesourcery.com>
-
- * tree.h (DECL_RTL): Allocate RTL lazily.
- (SET_DECL_RTL): New macro.
- (DECL_RTL_SET_P): Likewise.
- (COPY_DECL_RTL): Likewise.
- (DECL_RTL_IF_SET): Likewise.
- * varasm.c (make_decl_rtl): Add assertions about the kind of
- declaration we are processing.
- * c-decl.c (duplicate_decls): Use COPY_DECL_RTL, DECL_RTL_SET_P, etc.
- (start_decl): Likewise.
- (finish_decl): Likewise.
- * c-semantics.c (emit_local_var): Likewise.
- * calls.c (expand_call): Likewise.
- * dbxout.c (dbxout_symbol): Likewise.
- * emit-rtl.c (unshare_all_rtl): Likewise.
- (unshare_all_decls): Likewise.
- (reset_used_decls): Likewise.
- * expr.c (store_constructor): Likewise.
- (safe_from_p): Likewise.
- (expand_expr): Likewise.
- * function.c (put_var_into_stack): Likewise.
- (instantiate_decls_1): Likewise.
- (assign_parms): Likewise.
- (expand_function_start): Likewise.
- (expand_function_end): Likewise.
- * ggc-common.c (gcc_mark_trees): Likewise.
- * integrate.c (function_cannot_inline_p): Likewise.
- (copy_decl_for_inlining): Likewise.
- (expand_inline_function): Likewise.
- (integrate_parm_decls): Likewise.
- (integrate_decl_tree): Likewise.
- * print-tree.c (print_node): Likewise.
- * reg-stack.c (stack_result): Likewise.
- * stmt.c (label_rtx): Likewise.
- (expand_return): Likewise.
- (expand_decl): Likewise.
- (expand_decl_cleanup): Likewise.
- (expand_anon_union_decl): Likewise.
- * toplev.c (check_global_declarations): Likewise.
- (rest_of_decl_compilation): Likewise.
- * tree.c (simple_cst_equal): Likewise.
- * objc/objc-act.c (generate_static_references): Likewise.
-
-2001-03-14 Zack Weinberg <zackw@stanford.edu>
-
- * aclocal.m4 (gcc_AC_C_CHARSET, gcc_AC_C_COMPILE_BIGENDIAN,
- gcc_AC_C_FLOAT_FORMAT): New macros.
- * configure.in: Add AC_PROG_CPP after CC tests;
- gcc_AC_C_CHARSET and gcc_AC_C_FLOAT_FORMAT after the sizeof
- tests; and gcc_AC_C_COMPILE_BIGENDIAN after gcc_AC_C_CHAR_BIT.
- * configure, config.in: Regenerate.
-
- * config/a29k/xm-a29k.h, config/arc/xm-arc.h,
- config/arm/xm-arm.h, config/c4x/xm-c4x.h,
- config/convex/xm-convex.h, config/d30v/xm-d30v.h,
- config/i370/xm-linux.h, config/i370/xm-oe.h,
- config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
- config/m68k/xm-m68k.h, config/mips/xm-mips.h,
- config/pa/xm-linux.h, config/pa/xm-pa.h,
- config/rs6000/xm-lynx.h, config/rs6000/xm-mach.h,
- config/rs6000/xm-rs6000.h, config/rs6000/xm-sysv4.h,
- config/sparc/xm-sparc.h, config/vax/xm-vax.h,
- config/we32k/xm-we32k.h: Delete.
-
- * config/i370/xm-mvs.h, config/m88k/m88k.h,
- config/romp/xm-romp.h, config/rs6000/xm-beos.h,
- config/vax/xm-vms.h: Don't define any of:
- HOST_FLOAT_FORMAT, HOST_EBCDIC, HOST_WORDS_BIG_ENDIAN
-
- * config/rs6000/aix.h: Define COLLECT_EXPORT_LIST here.
-
- * config.gcc: Remove references to deleted files.
- (i370-*-opened*): Use i370/xm-mvs.h (which now defines only
- FATAL_EXIT_CODE, which is the same between oe and mvs).
-
-2001-03-14 DJ Delorie <dj@redhat.com>
- Vladimir Makarov <vmakarov@redhat.com>
-
- * config/i960/i960.c (i960_function_prologue): Compute size of
- frame according to number of registers actually saved there.
-
-2001-03-14 Richard Henderson <rth@redhat.com>
-
- * expr.c (emit_move_insn_1): Fix else if around #endif.
-
-Wed Mar 14 22:39:12 CET 2001 Jan Hubicka <jh@suse.cz>
- Vojtech Pavlik
-
- * md.texi (machine constraints): Document 'Q', 'R', 'e' and 'Z'
- constraints.
-
-Wed Mar 14 22:26:10 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_cmodel_string, ix86_cmodel): Define.
- (override_options): Parse cmodel string.
- (x86_64_sign_extended_value, x86_64_zero_extended_value): New.
- * i386.h (TARGET_OPTIONS): Add "cmodel".
- (EXTRA_CONSTRAINT): Recognize 'e' and 'Z'.
- (enum cmodel): New.
- (ix86_cmodel_string, ix86_cmodel): Declare.
-
-Wed Mar 14 22:26:54 CET 2001 Jan Hubicka <jh@suse.cz>
-
- Spot by Matt Kraai:
- * i386.h (GENERAL_REG_P): Add missing REG_P.
-
-2001-03-14 Laurynas Biveinis <lauras@softhome.net>
-
- * configure.in: Use $gcc_cv_as instead of $as.
- * configure: Regenerated.
-
-2001-03-14 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (stack_include_file): Only increase the include
- count if we actually process the file properly, as opposed
- to treating it as length zero. Only call read_include_file
- if not DO_NOT_REREAD. Handle the -H include file output
- here.
- (read_include_file): Remove now redundant DO_NOT_REREAD check.
- (cpp_included, find_include_file): Simplify pathnames after
- remapping them. If remapping, don't use the remapped file
- name's buffer as our scratch buffer.
- (cpp_pop_file_buffer): Replace the multiple include macro
- only if it isn't yet set.
- (read_name_map): Simplify remapped names when reading in.
- (remap_filename): Move code to code path that uses it.
- (_cpp_simplify_pathname): Return the input pointer.
- * cpphash.h (_cpp_simplify_pathname): Update prototype.
-
-2001-03-14 Mark Mitchell <mark@codesourcery.com>
-
- * expr.c (expand_expr): Revove bogus conditional.
-
-Wed Mar 14 19:29:50 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * expr.c (emit_move_insn_1): Guard PUSH_ROUNDING use by ifdef.
-
-2001-03-14 Jakub Jelinek <jakub@redhat.com>
-
- * reg-stack.c (stack_result): Unconditionally use
- FUNCTION_OUTGOING_VALUE resp. FUNCTION_VALUE.
-
-Wed Mar 14 16:36:25 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * expr.c (emit_move_insn_1): Split push of complex value when
- no suitable push instruction exist.
-
- * i386.md (QImode move/add/shift patterns): Use ANY_QI_REG_P
- instead of QI_REG_P.
-
-Tue Mar 13 22:22:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * alias.c (handled_component_p, can_address_p): New functions.
- (get_alias_set): Use them.
-
-2001-03-13 Jim Wilson <wilson@redhat.com>
-
- * config/ia64/ia64.c (find_gr_spill): Subtract frame_pointer_needed
- from 80 in try_locals code.
- (ia64_expand_prologue): Add comment pointing to find_gr_spill change.
-
-2001-03-13 Zack Weinberg <zackw@stanford.edu>
-
- * aclocal.m4 (gcc_AC_COMPILE_CHECK_SIZEOF, gcc_AC_C_CHAR_BIT,
- gcc_AC_C_LONG_LONG): New.
- * configure.in: Use them. Probe the size of short, int, long,
- and long long/__int64 if we have them. Move all the AC_C_*
- checks together, except gcc_AC_C_CHAR_BIT which has to go
- after AC_CHECK_HEADERS(limits.h).
- Take hwint.h out of host_xm_file and build_xm_file.
-
- * hwint.h: Unconditionally define HOST_BITS_PER_CHAR,
- HOST_BITS_PER_SHORT, HOST_BITS_PER_INT, HOST_BITS_PER_LONG,
- and HOST_BITS_PER_LONGLONG in terms of SIZEOF_* and CHAR_BIT.
- Move the HOST_WIDEST_INT setup logic here from system.h.
- Provide HOST_WIDEST_INT even if HOST_BITS_PER_LONGLONG is not
- defined.
- * system.h: Include hwint.h after limits.h. HOST_WIDEST_INT
- is now handled by hwint.h.
-
- * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms.h,
- config/c4x/xm-c4x.h, config/i370/xm-oe.h,
- config/ia64/xm-ia64.h: Don't define any of:
- HOST_BITS_PER_LONG, HOST_BITS_PER_CHAR, HOST_BITS_PER_SHORT,
- HOST_BITS_PER_LONGLONG.
-
- * config/alpha/xm-alpha.h, config/dsp16xx/xm-dsp16xx.h,
- config/h8300/xm-h8300.h, config/mips/iris6.h,
- config/mn10200/xm-mn10200.h, config/pa/xm-pa64hpux.h,
- config/sparc/xm-sp64.h: Delete.
- * config.gcc: Remove references to deleted files.
-
- * config/arm/xm-arm.h, config/mips/xm-mips.h: Don't define
- HOST_FLOAT_FORMAT to IEEE_FLOAT_FORMAT.
- * config/i370/xm-linux.h: Clarify floating-point situation in
- a comment.
-
-2001-03-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (NO_INCLUDE_PATH): New macro.
- (find_include_file): Decide here which part of the include
- chain to start the search. Complain about an empty include
- chain in all cases apart from an abolsute file name.
- (_cpp_execute_include): Don't choose the search chain here.
- Don't call handle_missing_include in the case of an empty
- include chain.
- (_cpp_compare_file_date): Don't choose the search chain here.
- * cpplib.c (do_include_next): Move the in-main-file diagnostic
- here from _cpp_execute_include. Behave like #include if
- we're in the main file.
-
-2001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h (malloc, realloc, calloc, strdup): Only poison these
- tokens when IN_GCC is defined.
-
-Tue Mar 13 14:38:44 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (abs?f expander): Support SSE case.
- (abd?f_if): Add new "USE"; add splitters.
-
-2001-03-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * cpp.texi (poison): Explain the macro expansion exception.
-
-2001-03-13 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (store_expr): Add dont_store_target. If temp is already in
- target before copying to reg, don't store it into target again.
-
-2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinternals.texi: Update for file handling.
-
-2001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
-
- * emit-rtl.c (remove_unnecessary_notes): Reverse Richard Kenner's
- 2001-02-24 which broke building the Java library.
- * function.c (identify_blocks): Likewise.
- (all_blocks): Likewise.
- * integrate.c (integrate_decl_tree): Likewise.
- * print-tree.c (print_node): Likewise.
- * tree.h (BLOCK_NUMBER): Likewise.
- (struct tree_block): Likewise.
-
-2001-03-12 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000/aix51.h (CPP_SPEC, CPLUSPLUS_CPP_SPEC): Fix typo in
- __WCHAR_TYPE__ definition.
- (WCHAR_TYPE_SIZE): #undef before #define.
-
-2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c: Update comments.
- (destroy_include_file_node): Rename destroy_node.
- (find_or_create_entry): New function.
- (open_file, _cpp_fake_include): Use it.
- (handle_missing_header): New function, broken out of
- _cpp_execute include. Don't segfault if there is no
- system or quoted path.
- (_cpp_execute_include): Use handle_missing_header.
-
-2001-03-12 Jeffrey Oldham <oldham@codesourcery.com>
-
- * jump.c (reversed_comparison_code_parts): Reverse Jan Hubricka's
- 2001-02-28 patch because it breaks arm-linux and mips-sgi-irix6.5.
-
-Mon Mar 12 14:05:32 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * flow.c (insn_dead_p): Don't consider two memrefs equivalent
- unless anti_dependence says they are.
- * alias.c (objects_must_conflict): If neither has a type specified,
- they must conflict.
-
-2001-03-12 Neil Booth <neil@daikokuya.demon.co.uk>
- David Billinghurst <David.Billinghurst@riotinto.com>
-
- * config/mips/iris5.h: Change WCHAR_TYPE to int.
-
-Mon Mar 12 16:32:21 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (trunctfdf2_2): Rename missnamed pattern.
- (*_one_bit): Remove type on the match_operand in attributes.
-
-Mon Mar 12 16:27:56 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c: Commit forgotten hunk in previous patch.
- (regclass_map): Add extended registers.
- (dbx_register_map): Add missing frame register.
-
-Mon Mar 12 15:41:08 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (all XFmode patterns except swapxf): Disable for 64bit.
-
- * i386.md (x86_sahf_1): Disable for 64bit.
- (popsi*, pophi*): Likewise.
- (pushqi, pushhi): Likewise.
- (movdi, pushdi): Likewise.
- (zero extend DImode splitter): Likewise.
- (adddi, minusdi splitter): Likewise.
- (umulsidi): Likewise.
- (umulsi): New.
- (mulsidi): Disable for 64bit
- (lshift:DI/ashift:DI): Disable for 64bit.
- (loop patterns): Likewise.
- (call_pop, call_value_pop expanders and patterns): Likewise.
- (prologue_get_pc): Likewise.
- (leave): Likewise.
- (fcmovDI pattern and splitter): Likewise.
- (movdfcc_1_rex64): New.
-
-Mon Mar 12 15:16:36 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (VALID_FP_MODE_P): XFmode is invalid on x86_64.
- (MODES_TIEABLE_P): QImodes and DImodes are tiable on x86_64.
- (HARD_REGNO_CALLER_SAVE_MODE): Save QImodes as QImodes for x86_64.
- (STATIC_CHAIN_REGNUM): Set to r10 for x86_64.
- (PIC_OFFSET_TABLE_REGNUM): Set to INVALID_REGNUM for x86_64.
- (LIMIT_RELOAD_CLASS): Avoid limiting of QImodes on x86_64.
- (SECONDARY_OUTPUT_RELOAD_CLASS): No need to QImodes.
- (PUSH_ROUNDING): x86_64 rounds to 64bits.
- (CONSTANT_ADDRESS_P): Accept CONST_DOUBLE.
- (REGPARM_MAX): Set to 6 for x86_64.
- (SSE_REGPARM_MAX): Set to 16 for x86_64.
- * i386.c (hard_regno_mode_ok): QImodes can be in all general purpose
- registers.
-
- * (patterns that does use upper halves): Update constraints
- 'q' to 'Q' and 'r' to 'R'.
- (cmpqi_ext_1): Disable for 64bit.
- (cmpqi_ext_3_insn): Likewise.
- (movqi_extzv_1): Likewsie.
- (addqi_ext_1): Liekwsie
- (testqi_ext_1): Liekwsie
- (andqi_ext_1): Liekwsie
- (xorqi_ext_1): Liekwsie
- (cmpqi_ext_1_rex64): New.
- (cmpqi_ext_3_insn_rex64): Likewise.
- (movqi_extzv_1_rex64): Likewsie.
- (addqi_ext_1_rex64): Liekwsie
- (testqi_ext_1_rex64): Liekwsie
- (andqi_ext_1_rex64): Liekwsie
- (xorqi_ext_1_rex64): Liekwsie
-
-2001-03-11 Zack Weinberg <zackw@stanford.edu>
-
- * configure.in: Move check for unsigned enumerated bitfields
- to macro in aclocal.m4. Disable it for now.
- * configure, config.in: Regenerate.
- * system.h: Don't do anything with ONLY_INT_FIELDS. Use the
- unsigned-int form of ENUM_BITFIELD() unless being compiled by GCC.
- * varasm.c (struct rtx_const): Use ENUM_BITFIELD(). Move enum
- kind above its first use.
-
- * config/xm-interix.h, config/alpha/xm-alpha.h,
- config/i370/xm-linux.h, config/i386/xm-beos.h,
- config/i386/xm-mingw32.h, config/mips/xm-mips.h,
- config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
- config/rs6000/xm-beos.h, config/rs6000/xm-sysv4.h,
- Don't define ONLY_INT_FIELDS under any circumstances.
-
- * config/pa/xm-pa.h: Don't define __BSD_NET2__.
-
- * config/pa/xm-pahpux.h, config/pa/xm-papro.h,
- config/sparc/xm-sysv4.h: Delete - now identical with some
- other xm header.
- * config.gcc (hppa targets): Replace xm-pahpux.h and
- xm-papro.h with implicit xm-pa.h.
- (sparc targets): Replace xm-sysv4.h with implicit or explicit
- xm-sparc.h.
-
-2001-03-12 Aldy Hernandez <aldyh@redhat.com>
-
- * reload1.c (reload_cse_simplify): Call reload_cse_simplify_set
- before reload_cse_noop_set_p.
-
-2001-03-11 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc: Where xm-host.h used to include another
- xm-host.h, list the nested header directly in xm_file. Remove
- references to deleted files. Can now use sparc/xm-sp64.h for
- sparcv9-*-solaris*.
-
- * config/xm-linux.h, config/arm/xm-linux.h,
- config/i386/xm-dos.h, config/i386/xm-gnu.h,
- config/i386/xm-linux.h, config/i386/xm-openbsd.h,
- config/i860/xm-fx2800.h, config/m68k/xm-atari.h,
- config/m68k/xm-linux.h, config/m68k/xm-sun3.h,
- config/sparc/xm-linux.h, config/sparc/xm-sysv4-64.h:
- Delete.
-
- * config/alpha/xm-alpha-interix.h: Don't include alpha/xm-alpha.h.
- * config/mips/xm-iris5.h: Don't include mips/xm-mips.h. Don't
- bother to wrap #undef in #ifdef.
- * config/pa/xm-linux.h, config/rs6000/xm-sysv4.h:
- Don't include xm-linux.h.
- * config/sparc/xm-sp64.h: Don't include sparc/xm-sparc.h.
-
- * configure.in: Wrap regexps using [] in changequote block.
- Use expr : not echo | grep. Simplify regexps.
- * configure: Regenerate.
-
- 56 xm-files remain, 22 xm-arch.
-
-2001-03-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips-tfile.c: Cast arg to PTR when specifier is HOST_PTR_PRINTF.
- (__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
- (local_index, local_rindex): Delete, use strchr/strrchr instead.
- (copy_object): Fix format specifier vs argument mismatch.
-
- * mips-tdump.c: Make local functions static.
- (rindex): Don't #undef.
- (__proto, PTR_T, CPTR_T): Delete, use PARAMS/PTR instead.
- (fatal, fancy_abort): Delete.
- (read_seek): Avoid signed/unsigned compare.
-
-Sun Mar 11 17:01:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * combine.c (try_combine): Fix error in change to try original
- register.
- (gen_rtx_combine): Do same as gen_rtx for now.
-
-2001-03-11 Zack Weinberg <zackw@stanford.edu>
-
- * configure.in: AC_SUBST xm_defines.
- * configure: Regenerate.
- * Makefile.in: Set DEFINES=$(xm_defines) when building
- tconfig.h.
-
-2001-03-11 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (INCLUDE_LEN_FUDGE, ENOMEM): Delete.
- (cpp_included, find_include_file): Update.
- (_cpp_compare_file_date): Make else unconditional.
-
-2001-03-10 kaz Kojima <kkojima@rr.iij4u.or.jp>
-
- * config/sh/sh.h (LEGITIMATE_PIC_OPERAND_P): Defined.
-
-2001-03-10 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
-
- * config/sh/sh.md (umulhisi3_i, mulhisi3_i): Fix mnemonics.
- * config/sh/lib1funcs.asm (mulsi3): Convert mulu to mulu.w.
-
-Sat Mar 10 22:42:05 2001 Alexandre Oliva <aoliva@redhat.com>
-
- * tree.c (build_common_tree_nodes_2): Don't copy va_list_type_node
- if it's a record type.
-
-Sat Mar 10 17:52:54 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h: Make ../w32api a system directory. Reorganize
- mingw includes slightly.
-
-2001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * system.h (malloc, realloc, calloc, strdup, bzero, bcmp, rindex):
- #undef token before poisoning it.
-
-2001-03-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.c (check_float_value): Use memcpy, not bcopy.
-
- * m32r.c (m32r_sched_reorder): Likewise.
-
- * vax.c (check_float_value): Likewise.
-
-2001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * toplev.c (file_name_nondirectory): Remove.
- * toplev.h: Similarly.
- * dwarf2out.c (compute_section_prefix): Use lbasename instead
- of file_name_nondirectory.
-
-Sat Mar 10 10:36:45 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * mips-tdump.c (read_seek): Call xmalloc, not malloc.
- * mips-tfile.c: Don't #undef rindex; not used.
-
-Sat Mar 10 14:34:59 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (DBX_REGISTER_NUMBER): Return proper values for 64bits.
- (dbx64_register_map): Declare.
- (RETURN_ADDR_RTX): Fix for 64bit.
- (DWARF_FRAME_RETURN_COLUMN): Set to 16 for 64bit.
- (INCOMING_FRAME_SP_OFFSET): Set to 8.
- * i386.c (dbx64_register_map): New global array.
- * beos-elf.h, freebsd.h, i386-interix.h, i386elf.h,
- linux.h (DBX_REGISTER_REGNUMBER): Use dbx64_register_map
- for 64bits.
-
-2001-03-10 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (search_from): Use lbasename.
- * mkdeps.c (deps_add_default_target): Use lbasename.
-
-2001-03-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fixinc/server.c (load_data, run_shell): Use xmalloc, xrealloc &
- xcalloc in lieu of malloc, realloc & calloc.
-
- * gencheck.c (xmalloc): Use really_call_malloc, not malloc.
-
- * gengenrtl.c (xmalloc): Likewise.
-
- * gensupport.c (xcalloc, xrealloc, xmalloc): Use the
- really_call_* memory allocation routines.
-
- * stmt.c (check_for_full_enumeration_handling): Use
- really_call_calloc, not calloc.
-
- * system.h (really_call_malloc, really_call_calloc,
- really_call_realloc): Define.
- (malloc, realloc, calloc, strdup, bzero, bcmp, rindex): Poison.
-
-Fri Mar 9 18:39:19 2001 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (builtin_longjmp): Rework slightly to work for PA64 too.
-
-2001-03-09 Nicola Pero <n.pero@mi.flashnet.it>
-
- * configure: Rebuilt.
- * configure.in: Only use `lang_requires' for languages athat are
- actually enabled.
-
-2001-03-09 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Fix typo.
- * gcc.1: Regenerate.
-
-2001-03-09 Zack Weinberg <zackw@stanford.edu>
-
- * configure.in: Prune nonexistent files from build_xm_file,
- xm_file, and host_xm_file lists. Warn unless they're
- $cpu/xm-$cpu.h.
- Don't generate *config.h here.
- AC_SUBST all variables needed to generate *config.h.
- * configure: Regenerate.
- * mkconfig.sh: New helper script, from code removed from
- configure.in.
- * Makefile.in: Zap all MALLOC variables - no longer used
- anywhere, and malloc.c doesn't exist.
- Substitute in variables needed to generate *config.h.
- Stop lying about the dependencies contained in CONFIG_H and
- GCONFIG_H.
- (HCONFIG_H, TCONFIG_H, TM_P_H): New variables.
- (config.h, hconfig.h, tconfig.h, tm_p.h, cs-config.h,
- cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): New rules.
- (all .o): Add dependencies on $(HCONFIG_H), $(TCONFIG_H),
- $(TM_P_H), etc. as appropriate.
-
- * config.gcc: Zap references to deleted files.
- * ggc-none.c: Don't include rtl.h or tm_p.h.
-
- * config/i386/xm-beos.h, config/i386/xm-dgux.h,
- config/i386/xm-djgpp.h, config/i386/xm-dos.h,
- config/i386/xm-gnu.h, config/i386/xm-i386-interix.h,
- config/i386/xm-linux.h, config/i386/xm-linux.h,
- config/i386/xm-next.h, config/i386/xm-openbsd.h,
- config/i386/xm-sun.h, config/i386/xm-sysv3.h:
- Don't include i386/xm-i386.h.
-
- * config/elxsi/xm-elxsi.h, config/i386/xm-bsd386.h,
- config/i386/xm-i386.h, config/i860/xm-i860.h,
- config/i960/xm-i960.h, config/mcore/xm-mcore.h,
- config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
- config/pj/xm-pj.h, config/sh/xm-sh.h, config/v850/xm-v850.h:
- Delete (empty except comments, #includes of other deleted
- files, and macros used nowhere).
-
-Fri Mar 9 20:05:27 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (MAX_WCHAR_TYPE_SIZE): New constant to keep tradcpp
- independent on TARGET_FLAGS.
-
-Fri Mar 9 19:52:52 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (FIRST_PSEUDO_REGISTER): Set to 53.
-
- (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ONES): Add
- extended ones.
- (CONDITIONAL_REGISTER_USAGE): Set proper values according to
- TARGET_64BIT.
- (FIRST_REX_INT_REG, LAST_REX_INT_REG, FIRST_REX_SSE_REG,
- LAST_REX_SSE_REG): define.
- (enum reg_class): Add 'LEGACY_REGS'
- (REG_CLASS_CONTENTS): Likewise; add extended registers.
- (SSE_REGNO_P): Recognize extended registers.
- (ANY_QI_REG_P, REX_INT_REGNO_P, REX_INT_REG_P): New.
- (REG_CLASS_FROM_LETTER): Add 'R' and 'Q'.
- (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P,
- REG_OK_FOR_BASE_NONSTRICT_P): Recognize REX registers.
- (REG_OK_FOR_STRREG_NONSTRICT_P, REG_OK_FOR_STRREG_STRICT_P,
- REG_OK_FOR_STRREG_P): Remove.
- (HI_REGISTER_NAMES): Add extended registers.
- (ADDITIONAL_REGISTER_NAMES): Likewise.
- (QI_REGISTER_NAMES): Add 8bit extended registers.
- (DEBUG_REG): Support extended registers.
- * i386.c (regclass_map): Add extended registers.
- (dbx_register-map): Likewise.
- (svr4_dbx_register_map): Likewise.
- (print_reg): Support extended registers.
- (print_operand): Support 64bit operands.
-
-Fri Mar 9 19:37:46 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Set to 128bit for x86_64
- (BOOL_TYPE_SIZE, SHORT_TYPE_SIZE, INT_TYPE_SIZE,
- FLOAT_TYPE_SIZE, LONG_TYPE_SIZE, MAX_LONG_TYPE_SIZE,
- DOUBLE_TYPE_SIZE, LONG_LONG_TYPE_SIZE): New constants.
- (BITS_PER_WORD, UNITS_PER_WORD, POINTER_SIZE, PARM_BOUNDARY,
- STACK_BOUNDARY): Set properly for 64bits.
- (MAX_BITS_PER_WORD, MIN_UNITS_PER_WORD): New constants.
- (EMPTY_FIELD_BOUNDARY): Define using BITS_PER_WORD.
- (BIGGEST_FIELD_ALIGNMENT): Set to 128 for 64bits.
- (MOVE_MAX): Set to 16.
- (MOVE_MAX_PIECES): 8 for 64bit.
- (Pmode): Set to SImode.
-
-Fri Mar 9 09:00:36 2001 Mike Stump <mrs@wrs.com>
-
- * cselib.c (hash_rtx): Ensure that hash isn't zero upon return.
-
-Fri Mar 9 17:38:08 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (mask_64bit): New constant.
- (target_64bit): New macro.
- (target_options): Add '64'/'32'
- (target_default): Define.
- * cygwin.h freebsd-aout.h i386-interix.h i386.h i386elf.h isc.h
- isccoff.h netbsd.h next.h openbsd.h p sco.h sco5.h scodbx.h sequent.h
- unix.h win32.h (TARGET_DEFAULT): Rename to TARGET_SUBTARGET_DEFAULT.
-
-Thu Mar 8 23:36:56 2001 Jeffrey A Law (law@cygnus.com)
-
- * config/pa/som.h (MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL): Disable.
-
-Thu Mar 8 23:29:37 2001 John Wehle (john@feith.com)
-
- * rtlanal.c (rtx_varies_p): Check operand 0 of a
- LO_SUM unless for_alias is set.
-
-2001-03-08 Stan Shebs <shebs@apple.com>
-
- * objc/objc-act.c: Fix old typos in comments, add comments for
- various functions.
- (hash_init): Fix file name in error message.
- (hash_enter): Ditto.
- (hash_add_attr): Ditto.
- (continue_class): Ditto.
-
-2001-03-08 Bruce Korb <bkorb@gnu.org>
-
- gcc.c(main): ensure SIGCHLD handling is set to SIG_DFL so that
- wait4() can receive the signal.
-
-Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (AAB_dgux_int_varargs): Don't use HTML
- entities.
- * fixinc/fixincl.x: Regenerate.
-
-Thu Mar 8 21:09:10 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * fixinc/inclhack.def (AAA_standards): Undo <standards.h> breakage
- on Tru64 UNIX.
- * fixinc/fixincl.x: Regenerate.
-
-2001-03-08 Richard Henderson <rth@redhat.com>
-
- * configure.in (HAVE_AS_LEB128): New assembler check.
- * configure, config.in: Rebuilt.
-
-Thu Mar 8 19:54:04 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * reg-stack.c (move_for_stack_reg): Avoid non-poping fst for
- TFmode too.
-
-2001-03-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/ns32k/xm-pc532-min.h, config/we32k/xm-we32k.h: Delete
- references to the MAXPATHLEN macro.
-
- * config/alpha/xm-alpha.h, config/arm/xm-arm.h,
- config/i386/xm-cygwin.h, config/xm-linux.h: Delete references to
- the POSIX macro.
-
- * config/i386/xm-gnu.h, config/xm-gnu.h,
- config/alpha/xm-openbsd.h, config/i386/xm-openbsd.h,
- config/m68k/xm-openbsd.h, config/mips/xm-openbsd.h,
- config/sparc/xm-openbsd.h, config/xm-openbsd.h: Delete empty
- and/or unused files.
-
- * config.gcc: Define POSIX in xm_defines as appropriate in lieu of
- doing so in various xm-*.h files.
-
-Thu Mar 8 06:32:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/i386/i386.md (clrstrsi): Call ix86_set_move_mem_attrs.
-
-2001-03-08 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in (enable_shared): Support per-package shared-library
- enabling.
- * configure: Rebuilt.
-
-2001-03-07 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (cr logic): Add original POWER mnemonic alternative
- for crnot. Set operands[5] in splitter.
-
-2001-03-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/i370/xm-mvs.h, config/i370/xm-oe.h,
- config/i386/xm-beos.h, config/i386/xm-mingw32.h,
- config/m88k/xm-m88k.h, config/mips/xm-iris6.h,
- config/mips/xm-openbsd.h, config/pa/xm-pa64hpux.h,
- config/pa/xm-pahpux.h, config/rs6000/xm-beos.h,
- config/rs6000/xm-darwin.h, config/rs6000/xm-mach.h,
- config/rs6000/xm-rs6000.h, config/xm-interix.h: Delete references
- to the USG macro.
-
- * config/vax/xm-vaxv.h, config/a29k/xm-unix.h,
- config/i370/xm-i370.h, config/i386/xm-dgux.h,
- config/i386/xm-sun.h, config/i386/xm-sysv3.h,
- config/m68k/xm-tower.h, config/m68k/xm-aux.h,
- config/m68k/xm-hp320.h, config/m68k/xm-amix.h,
- config/m68k/xm-altos3068.h, config/m68k/xm-mot3300.h,
- config/m68k/xm-m68kv.h, config/m88k/xm-openbsd.h,
- config/mips/xm-nws3250v4.h, config/mips/xm-sysv.h,
- config/mips/xm-iris3.h, config/mips/xm-iris4.h, config/xm-svr3.h,
- config/xm-svr4.h, config/sparc/xm-pbd.h, config/clipper/xm-clix.h:
- Delete unused and/or empty files.
-
- * config.gcc: Define USG in xm_defines as appropriate. Define
- POSIX in lieu of xm-svr4.h. Delete all references to the SVR3
- macro. Remove deleted xm-* files from $xm_files variable.
-
-2001-03-07 Tom Tromey <tromey@redhat.com>
-
- * configure: Rebuilt.
- * configure.in: Allow config-lang.in to set `lang_requires' to list
- of other required languages.
-
-2001-03-07 Andrew MacLeod <amacleod@redhat.com>
-
- * config/a29k/a29k.c (print_operand): Free a29k_last_prologue_insn
- after its emitted.
- (output_prologue): Use xmalloc not oballoc.
- (output_epilog): Free a29k_first_epilogue_insn when finished.
- * confif/a29k/a29k.h (PREDICATE_CODES): Remove shift_constant_operand.
-
-2001-03-07 Brad Lucier <lucier@math.purdue.edu>
-
- * builtins.c (expand_builtin_mathfn): Check
- flag_unsafe_math_optimizations, not flag_fast_math.
- (expand_builtin): Likewise
- * combine.c (combine_simplify_rtx): Likewise.
- (simplify_if_then_else): Likewise.
- * cse.c (fold_rtx): Likewise.
- * flags.h: Remove flag_fast_math. Add
- flag_unsafe_math_optimizations and flag_trapping_math.
- * fold-const.c (negate_expr): Check
- flag_unsafe_math_optimizations, not flag_fast_math.
- (invert_truthvalue): Likewise.
- (fold): Likewise. Before associating operands, check that
- code == MULT_EXPR, not code != MULT_EXPR.
- * ifcvt.c (noce_try_minmax): Check
- flag_unsafe_math_optimizations, not flag_fast_math.
- (noce_operand_ok): Check flag_trapping_math, not flag_fast_math.
- * invoke.texi: Document -funsafe-math-optimizations and
- -fno-trapping-math. Change documentation for -ffast-math.
- * jump.c (reversed_comparison_code_parts): Likewise.
- (rtx_equal_for_thread_p): Likewise.
- * optabs.c (emit_conditional_move): Likewise.
- * simplify-rtx.c (simplify_binary_operation): Likewise.
- (simplify_relational_operation): Likewise.
- (simplify_ternary_operation): Likewise.
- * toplev.c: Remove flag_fast_math. Add flag_trapping_math and
- flag_unsafe_math_optimizations. Remove fast-math entry from f_options.
- Add trapping-math and unsafe-math-optimizations entries to f_options.
- (set_fast_math_flags): New, sets flags for -ffast-math.
- (set_no_fast_math_flags): New, sets flags for -fno-fast-math.
- (decode_f_option): Add code to handle -ffast-math and -fno-fast-math.
- * toplev.h: Declare set_fast_math_flags and set_no_fast_math_flags.
-
- * config/alpha/alpha.c (alpha_emit_conditional_branch): Likewise.
- (alpha_emit_conditional_move): Initialize local_fast_math to
- flag_unsafe_math_optimizations, not flat_fast_math.
- * config/c4x/c4x.c (c4x_override_options): Call set_fast_math_flags
- instead of setting flag_fast_math to 1.
- * config/convex/convex.md: Check flag_unsafe_math_optimizations,
- not flag_fast_math.
- * config/i386/i386.c (override_options): Likewise
- * config/i386/i386.md: Likewise.
- * config/m68k/m68k.md: Likewise.
- * config/mips/mips.md: Likewise.
- * config/rs6000/rs6000.c (validate_condition_mode): Likewise.
- (rs6000_generate_compare): Likewise.
-
-2001-03-07 Laurynas Biveinis <lauras@softhome.net>
-
- * Makefile.in: Set RANLIB to @RANLIB@.
- Remove RANLIB_TEST.
-
-2001-03-07 Laurynas Biveinis <lauras@softhome.net>
-
- * fixinc/inclhack.def (djgpp_wchar_h): New test.
- * fixinc/fixincl.x: Regenerated.
-
-2001-03-07 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.md (call_osf_1_noreturn): New pattern.
-
-2001-03-07 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (remove_unnecessary_notes): Verify proper nesting
- of block notes and exception handling notes.
-
- * lists.c (init_EXPR_INSN_LIST_cache): Don't check initialized.
- * toplev.c (rest_of_compilation): Call init_EXPR_INSN_LIST_cache ...
- (compile_file): ... here.
-
-2001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fixinc/Makefile.in (FIXINC_DEFS): Add -DHAVE_CONFIG_H.
-
- * fixinc/gnu-regex.c: Don't include auto-host.h since we get
- config.h now. Include libiberty.h to handle alloca.
-
-2001-03-06 Zack Weinberg <zackw@stanford.edu>
-
- * c-parse.in (yylexname): New function, split out of _yylex.
- (objc_rid_sans_at): New table.
- (init_reswords): Initialize it.
- (_yylex): Give labels clearer names. Handle CPP_ATSIGN by
- retrieving the next token and checking it for significance as
- an ObjC keyword or string constant.
-
- * cpplex.c (_cpp_lex_token): Just return CPP_ATSIGN for '@'.
- * cpplib.h (TTYPE_TABLE): Add CPP_ATSIGN, drop CPP_OSTRING.
-
- * c-lex.c, c-parse.in, cppmacro.c, cpplex.c: Remove references
- to CPP_OSTRING.
-
-2001-03-06 Stephen L Moshier <moshier@mediaone.net>
-
- * config/m68k/m68k.c (const_uint32_operand): Accept any
- const_int on a 32-bit host.
-
-2001-03-06 Nicola Pero <n.pero@mi.flashnet.it>
-
- * objc/objc-act.c (init_objc): Set save_lang_status,
- restore_lang_status, and mark_lang_status.
-
-2001-03-06 Krister Walfridsson <cato@df.lth.se>
-
- * dwarf2asm.c (dw2_asm_output_delta): Fix smallest_mode_for_size call.
-
-2001-03-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinternals.texi: Update.
-
-2001-03-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
- config/alpha/xm-alpha.h, config/arc/xm-arc.h, config/arm/xm-arm.h,
- config/c4x/xm-c4x.h, config/clipper/xm-clix.h,
- config/convex/xm-convex.h, config/d30v/xm-d30v.h,
- config/dsp16xx/xm-dsp16xx.h, config/elxsi/xm-elxsi.h,
- config/h8300/xm-h8300.h, config/i370/xm-i370.h,
- config/i370/xm-linux.h, config/i370/xm-mvs.h, config/i370/xm-oe.h,
- config/i386/xm-i386.h, config/i860/xm-i860.h,
- config/i960/xm-i960.h, config/ia64/xm-ia64.h,
- config/m32r/xm-m32r.h, config/m68k/xm-m68k.h,
- config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
- config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
- config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
- config/pa/xm-linux.h, config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
- config/pa/xm-pahpux.h, config/pa/xm-papro.h, config/pj/xm-pj.h,
- config/romp/xm-romp.h, config/rs6000/xm-beos.h,
- config/rs6000/xm-lynx.h, config/rs6000/xm-rs6000.h,
- config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
- config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
- config/v850/xm-v850.h, config/vax/xm-vax.h, config/vax/xm-vms.h,
- config/we32k/xm-we32k.h: Delete HOST_BITS_PER_* definitions which
- match the defaults provided in hwint.h.
-
- * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
- config/sparc/xm-lynx.h, config/xm-std32.h: Delete files.
-
- * config.gcc (xm_file): Don't set to files which are deleted.
-
- * hwint.h: Provide default values for HOST_BITS_PER_*. No longer
- guard this file against these macros being undefined.
-
-2001-03-06 Zack Weinberg <zackw@stanford.edu>
-
- * objc/objc-act.c (objc_add_static_instance): Set DECL_INITIAL
- and DECL_DEFER_OUTPUT on the decl we create, before calling
- rest_of_decl_compilation.
-
-2001-03-06 Zack Weinberg <zackw@stanford.edu>
-
- * aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE
- AC_FUNC_ALLOCA.
- * configure, config.in: Regenerate.
- * config.gcc: Remove references to deleted files.
-
- * genattr.c, genattrtab.c, genextract.c, genoutput.c,
- genrecog.c, rtl.c: Do not use alloca anywhere.
-
- * Makefile.in, build-make, system.h, config/x-interix,
- config/x-svr4, config/xm-interix.h, config/xm-openbsd.h,
- config/alpha/xm-alpha.h, config/alpha/xm-vms.h,
- config/arc/xm-arc.h, config/arm/xm-arm.h,
- config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
- config/h8300/xm-h8300.h, config/i370/x-oe,
- config/i370/xm-linux.h, config/i386/x-aix, config/i386/x-beos,
- config/i386/x-ncr3000, config/i386/x-sco5,
- config/i386/xm-dgux.h, config/i860/x-sysv4,
- config/i960/xm-i960.h, config/m32r/xm-m32r.h,
- config/m68k/x-crds, config/m68k/x-dpx2, config/m68k/x-hp320,
- config/m68k/x-hp320g, config/m69k/x-mot3300,
- config/m68k/x-mot3300-gas, config/m68k/xm-amix.h,
- config/m68k/xm-hp320.h, config/m68k/xm-m68kv.h,
- config/m68k/xm-mot3300.h, config/m88k/x-dolph,
- config/m88k/x-sysv4, config/m88k/x-tekXD88,
- config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
- config/mips/x-iris, config/mips/x-iris3,
- config/mips/x-sni-svr4, config/mips/x-sysv,
- config/mips/xm-iris6.h, config/mips/xm-mips.h,
- config/mips/xm-nws3250v4.h, config/pa/x-hpux,
- config/pa/x-pa-mpeix, config/pa/xm-pa.h,
- config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
- config/pa/xm-papro.h, config/romp/xm-romp.h,
- config/rs6000/x-aix31, config/rs6000/x-aix41,
- config/rs6000/x-beos, config/rs6000/x-lynx,
- config/rs6000/x-mach, config/rs6000/x-rs6000,
- config/rs6000/x-sysv4, config/rs6000/xm-rs6000.h,
- config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
- config/sparc/x-sysv4, config/sparc/xm-linux.h,
- config/sparc/xm-pbd.h, config/sparc/xm-sparc.h,
- config/vax/xm-vms.h: Eradicate all references to alloca and
- related stuff.
-
- * config/xm-alloca.h, config/clipper/x-clix,
- config/i386/xm-sysv4.h, config/i860/x-fx2800,
- config/i860/x-sysv3, config/m88k/x-sysv3,
- config/sparc/xm-sol2.h, config/we32k/x-we32k: Delete
- (contained only alloca related hacks).
-
- * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Just define
- USE_C_ALLOCA.
-
-2001-03-05 Brad Lucier <lucier@math.purdue.edu>
-
- * invoke.texi: Document __FAST_MATH__.
-
-2001-03-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * crtstuff.c: Restore include of auto-host.h.
-
-2001-03-05 Fergus Henderson <fjh@cs.mu.oz.au>
-
- Put main() in a separate file, so that the language
- front-end can use a different main().
-
- * main.c: New.
- * toplev.c: (main): Rename as toplev_main.
- * toplev.h: Declare toplev_main.
- * Makefile.in (OBJS): add toplev.o.
- (BACKEND): remove toplev.o, add main.o.
-
-2001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (search_from): Special case the empty string.
-
-2001-03-04 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (_cpp_execute_include): Don't make a null-terminated
- copy of the filename. Don't use CPP_PREV_BUFFER. Don't call
- strlen or strcpy; we already know the length.
- (_cpp_compare_file_date): Similarly.
- * cpphash.h (struct cpp_reader): Delete done_initialising.
- (CPP_PREV_BUFFER): Delete.
- * cppinit.c (cpp_start_read): Don't set done_initialising.
- * cpplex.c (parse_string): Guarantee null-termination.
- (_cpp_equiv_toklists): Remove.
- * cpplib.c (glue_header_name): Null-terminate.
- (do_line): Don't leak memory.
- * cpplib.h (BT_WEAK): Delete.
- * cppmain.c (cb_ident): Strings are now null-terminated.
-
-2001-03-04 Laurynas Biveinis <lauras@softhome.net>
-
- * gcc.c (convert_filename): Append executable suffix
- if NO_AUTO_EXE_SUFFIX is not defined.
- * gcc.texi: Document NO_AUTO_EXE_SUFFIX.
- * config/i386/djgpp.h: Define NO_AUTO_EXE_SUFFIX.
-
-2001-03-03 David O'Brien <obrien@FreeBSD.org>
-
- from 2000-09-06 Zack Weinberg <zack@wolery.cumb.org>
- * c-parse.gperf, c-gperf.h: Delete.
- (c-gperf.h was accidently re-added to the CVS repo in the rev
- 1.16 commit by tromey)
-
-2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplex.c (_cpp_lex_token): Don't warn about directives in
- macro arguments when looking for the '('.
- * cppmacro.c (funlike_invocation_p): Set parsing_args to
- 2 when really parsing arguments; 1 when looking for '('.
- Always restore the lexer position.
-
-2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * longlong.h (umul_ppmm): Don't use a multiline string.
-
-2001-03-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * fixinc/fixlib.h (t_bool): Add identifier `t_bool' in typedef.
- * fixinc/server.c (read_pipe_timeout): Use enum t_bool instead of
- t_bool in declaration because pcc can't combine volatile with typedef
- types.
-
-Sat Mar 3 19:47:13 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_fp_compare): Delay creating of scratch register
- until when it is really needed.
- (ix86_expand_compare): Update call of ix86_expand_fp_compare.
- * i386.h (PREDICATE_CODES): Add all codes for sse_comparison_operator
- * i386.md (float?i?f splitter): Don't force source operand to memory
- for SSE.
- (sse_movdfcc): Fix constraint.
- (sse_movdfcc splitter): Handle properly the second alternative.
-
-2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplex.c (parse_string): Unconditionally pedwarn.
-
-2001-03-03 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi: Update.
- * cppexp.c (parse_number): Update.
- * cpplex.c (parse_string): Pedwarn if multiline string does not
- result from a system header's macro.
- * cpplib.h (sys_objmacro_p): Rename sys_macro_p.
- * cppmacro.c (sys_objmacro_p): Rename sys_macro_p. Return true
- for function-like macros too.
- * c-lex.c (lex_number): Update.
-
-2001-03-03 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (output_call_frame_info): Fix augmentation length.
-
-Sat Mar 3 04:17:17 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * combine.c (try_combine): If split with mode-changed scratch
- register didn't work, try the original mode.
-
-Sat Mar 3 03:46:47 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * tm.texi: Change STRUCT_FORCE_BLK to MEMBER_TYPE_FORCES_BLK.
- * config/c4x/c4x.h: Likewise.
- * stor-layout.c (compute_record_mode): Likewise.
- (layout_type, case ARRAY_TYPE): Use MEMBER_TYPE_FORCES_BLK.
-
-2001-03-02 Zack Weinberg <zackw@stanford.edu>
-
- * configure.in: Kill tm.h. Include the files in the $tm_file
- list in all three of config.h, hconfig.h, tconfig.h, after the
- relevant set of xm_files. Put TARGET_CPU_DEFAULT in all
- three, include insn-codes.h in all three (#ifndef GENERATOR_FILE).
- * configure: Regenerate.
- * Makefile.in (clean): Don't delete tm.h.
-
- * system.h: If SUCCESS_EXIT_CODE and FATAL_EXIT_CODE are not
- defined, set them from EXIT_SUCCESS and EXIT_FAILURE. If
- those are not defined, set SEC and FEC to 0 and 1.
- * gcc.texi: Update to match.
-
- * crtstuff.c: Include tconfig.h, not auto-host.h and tm.h.
- * config/fp-bit.c, config/m68k/aux-crt2.asm,
- config/m68k/aux-crtn.asm, config/m68k/aux-mcount.c:
- Include tconfig.h, not tm.h.
-
- * config/xm-lynx.h, config/xm-std32.h,
- config/a29k/xm-a29k.h, config/a29k/xm-unix.h,
- config/alpha/xm-alpha.h, config/arc/xm-arc.h,
- config/avr/xm-avr.h, config/c4x/xm-c4x.h,
- config/clipper/xm-clix.h, config/convex/xm-convex.h,
- config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
- config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
- config/h8300/xm-h8300.h, config/i370/xm-linux.h,
- config/i386/xm-i386.h, config/i860/xm-i860.h,
- config/i960/xm-i960.h, config/ia64/xm-ia64.h,
- config/m32r/xm-m32r.h, config/m68hc11/xm-m68hc11.h,
- config/m88k/xm-m88k.h, config/mcore/xm-mcore.h,
- config/mips/xm-mips.h, config/mn10200/xm-mn10200.h,
- config/mn10300/xm-mn10300.h, config/ns32k/xm-ns32k.h,
- config/pa/xm-linux.h, config/pa/xm-pa.h,
- config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h,
- config/pa/xm-papro.h, config/pdp11/xm-pdp11.h,
- config/pj/xm-pj.h, config/romp/xm-romp.h,
- config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
- config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
- config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
- config/v850/xm-v850.h, config/vax/xm-vax.h,
- config/we32k/xm-we32k.h:
- Don't include tm.h.
- Don't define SUCCESS_EXIT_CODE or FATAL_EXIT_CODE.
-
- * config/i370/xm-i370.h, config/i370/xm-mvs.h,
- config/i370/xm-oe.h: Don't include tm.h. Don't define
- SUCCESS_EXIT_CODE.
- * config/vax/xm-vms.h: Don't include tm.h.
-
- * config/xm-lynx.h, config/avr/xm-avr.h,
- config/fr30/xm-fr30.h, config/pdp11/xm-pdp11.h,
- Delete; made empty by above changes.
- * config/i386/xm-lynx.h, config/m68k/xm-lynx.h,
- config/rs6000/xm-lynx.h, config/sparc/xm-lynx.h:
- Don't include config/xm-lynx.h or tm.h.
-
- * config/xm-gnu.h: Don't include fcntl.h.
- * config/sparc/xm-lynx.h: Don't include sys/types.h and
- sys/wait.h.
- * config/clipper/xm-clix.h, config/vax/xm-vax.h: Don't define isinf.
-
-2001-03-02 Richard Henderson <rth@redhat.com>
-
- * tm.texi (File Framework): Document UNALIGNED_SHORT_ASM_OP,
- UNALIGNED_INT_ASM_OP, and UNALIGNED_DOUBLE_INT_ASM_OP.
-
-2001-03-02 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (OBJS): Add dwarf2asm.o.
- * dwarf2asm.c, dwarf2asm.h: New files.
- * dwarf2out.c (*): Use them.
- (size_of_uleb128, size_of_sleb128): Remove.
- (output_uleb128, output_sleb128): Remove.
- (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Remove.
- (UNALIGNED_DOUBLE_INT_ASM_OP, ASM_BYTE_OP): Remove.
- (UNALIGNED_OFFSET_ASM_OP, UNALIGNED_WORD_ASM_OP): Remove.
- (FDE_LABEL, LINE_NUMBER_BEGIN_LABEL, LINE_NUMBER_END_LABEL): New.
- (ASM_OUTPUT_DWARF_DATA1, ASM_OUTPUT_DWARF_DELTA1): Remove.
- (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_DELTA2): Remove.
- (ASM_OUTPUT_DWARF_DATA4, ASM_OUTPUT_DWARF_DELTA4): Remove.
- (ASM_OUTPUT_DWARF_DATA, ASM_OUTPUT_DWARF_DELTA): Remove.
- (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_ADDR_DATA): Remove.
- (ASM_OUTPUT_DWARF_ADDR_DELTA, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
- (ASM_OUTPUT_DWARF_OFFSET4, ASM_OUTPUT_DWARF_OFFSET): Remove.
- (ASM_OUTPUT_DWARF_CONST_DOUBLE): Remove.
- (ASM_OUTPUT_DWARF_NSTRING, ASM_OUTPUT_DWARF_STRING): Remove.
- (dwarf2out_frame_debug): Remove unused variables.
- (output_loc_operands): Don't abort on 8 byte constants if
- host integers are wide enough.
- (output_symbolic_ref): Remove.
- (size_of_die): Don't assume 4 byte host integers.
- (output_line_info): Use ASM_GENERATE_INTERNAL_LABEL for begin
- and end labels.
- (add_const_value_attribute) [CONST_INT]: Verify we're not doing
- something stupid with HOST_WIDE_INT to long truncation.
- [CONST_DOUBLE]: Likewise.
-
- * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Remove.
- (ASM_OUTPUT_DWARF2_ADDR_CONST, ASM_OUTPUT_DWARF_ADDR_CONST): Remove.
- * config/arm/unknown-elf.h: Likewise.
- * config/rs6000/aix.h (UNALIGNED_SHORT_ASM_OP): New.
- (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): New.
- (ASM_OUTPUT_DWARF_ADDR_VAR, ASM_OUTPUT_DWARF_DELTA_VAR): Remove.
- (ASM_OUTPUT_DWARF_DELTA2, ASM_OUTPUT_DWARF_DELTA4): Remove.
- (ASM_OUTPUT_DWARF_DELTA, ASM_OUTPUT_DWARF_ADDR_DELTA): Remove.
- (ASM_OUTPUT_DWARF_ADDR, ASM_OUTPUT_DWARF_DATA4): Remove.
- (ASM_OUTPUT_DWARF_DATA2, ASM_OUTPUT_DWARF_OFFSET4): Remove.
- (ASM_OUTPUT_DWARF_OFFSET): Remove.
- * config/rs6000/sysv4.h (ASM_OUTPUT_DWARF_ADDR): Remove.
- * config/sparc/sp64-elf.h (UNALIGNED_DOUBLE_INT_ASM_OP): New.
- (UNALIGNED_LONGLONG_ASM_OP, ASM_OUTPUT_DWARF_ADDR): Remove.
- (ASM_OUTPUT_DWARF_ADDR_CONST, ASM_OUTPUT_DWARF_REF): Remove.
-
-2001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * cselib.c (hash_rtx): Cast enums to unsigned int.
-
-2001-03-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * print-rtl.c (print_rtx): Cast enums to int for comparison.
- * c-decl.c (grokdeclarator): Cast enums to int for comparison and
- shifts.
- * c-format.c (C_STD_VER): Cast to int for comparisons.
- (check_function_format): Cast various enums to int for &.
- (maybe_read_dollar_number): Likewise.
- (check_format_info): Likewise.
- (check_format_info_main): Likewise.
- * expr.c (emit_move_insn_1): Cast enums to unsigned int for comparison.
- (safe_from_p): Likewise.
- * varasm.c (const_hash): Cast enum to int for %.
- * emit-rtl.c (init_emit_once): Use int loop variable to work around
- pcc enum problems with < and ++ operators.
- * regclass.c (init_reg_sets_1): Cast enums for comparison.
- (choose_hard_reg_mode): Use unsigned int to iterate over CCmodes.
- (regclass_init): Change enum class to int to iterate over reg_classes.
- * genrecog.c (merge_trees): Cast enums for comparison.
- * rtl.h (GET_CODE): Cast to enum rtx_code.
- (PUT_CODE): Cast to ENUM_BITFIELD(rtx_code).
- (GET_MODE): Cast to enum machine_mode.
- (PUT_MODE): Cast to ENUM_BITFIELD(machine_mode).
- (GET_NOTE_INSN_NAME): Cast enum to int.
- * tree.h (TREE_CODE): Cast to enum tree_code.
- (TREE_SET_CODE): Cast VALUE to ENUM_BITFIELD(tree_code).
- * timevar.c (timevar_print): Change loop variable id from enum to
- unsigned int.
- * fixinc/fixincl.c (VLEVEL): Cast enums in comparison to unsigned int.
- * config/i386/i386.md: Use PUT_MODE for mode assignment.
- * toplev.c (compile_file): Cast enum DFI to int.
- (decode_d_option): Likewise.
-
-Fri Mar 2 12:18:13 2001 Christopher Faylor <cgf@cygnus.com>
-
- * cppinit.c (append_include_chain): Mark "after" include file name list
- as a system directory.
- * cpp.texi: Document new behavior.
-
-Fri Mar 2 11:59:43 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * ifcvt.c (noce_operand_ok): Handle properly unarry operations.
-
-2001-03-02 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (struct include_file): Update.
- (stack_include_file): Use search_from.
- (cpp_included, find_include_file): Update.
- (cpp_execute_include): Update. ptr->name may not be
- null terminated. Use the new search_from member variable
- of cpp_buffer.
- (_cpp_compare_file_date): Similarly.
- (search_from): New function, similar to actual_directory.
- (actual_directory): Delete.
- (remap_filename): Update. loc->name may not be null terminated.
- (struct file_name_list): Rename search_path. Update.
- * cpphash.h (struct cpp_buffer): Delete actual_dir. New members
- search_from and dir.
- (struct cpp_reader): Remove actual_dirs.
- * cppinit.c (struct cpp_pending): Update for renamed objects.
- (append_include_chain, remove_dup_dir, remove_dup_dirs,
- merge_include_chains, cpp_destroy, cpp_start_read): Similarly.
- * cpplib.h (struct cpp_options): Similarly.
-
-2001-03-01 Zack Weinberg <zackw@stanford.edu>
-
- * config/xm-lynx.h, config/xm-std32.h, config/a29k/xm-a29k.h,
- config/a29k/xm-unix.h, config/alpha/xm-alpha.h,
- config/arc/xm-arc.h, config/arm/xm-arm.h, config/c4x/xm-c4x.h,
- config/clipper/xm-clix.h, config/convex/xm-convex.h,
- config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h,
- config/elxsi/xm-elxsi.h, config/fr30/xm-fr30.h,
- config/h8300/xm-h8300.h, config/i370/xm-i370.h,
- config/i370/xm-linux.h, config/i370/xm-mvs.h,
- config/i370/xm-oe.h, config/i386/xm-aix.h,
- config/i386/xm-i386.h, config/i386/xm-osf.h,
- config/i860/xm-i860.h, config/i960/xm-i960.h,
- config/ia64/xm-ia64.h, config/m32r/xm-m32r.h,
- config/m68k/xm-m68k.h, config/m88k/xm-m88k.h,
- config/mcore/xm-mcore.h, config/mips/xm-mips.h,
- config/mn10200/xm-mn10200.h, config/mn10300/xm-mn10300.h,
- config/ns32k/xm-ns32k.h, config/pa/xm-linux.h,
- config/pa/xm-pa.h, config/pa/xm-pa64hpux.h,
- config/pa/xm-pahpux.h, config/pa/xm-papro.h,
- config/pj/xm-pj.h, config/romp/xm-romp.h,
- config/rs6000/xm-beos.h, config/rs6000/xm-rs6000.h,
- config/rs6000/xm-sysv4.h, config/sh/xm-sh.h,
- config/sparc/xm-sparc.h, config/sparc/xm-sysv4.h,
- config/v850/xm-v850.h, config/vax/xm-vax.h,
- config/vax/xm-vms.h, config/we32k/xm-we32k.h:
- Do not define TRUE or FALSE.
-
- * config/i386/xm-aix.h, config/i386/xm-osf.h: Delete; made
- empty by above change.
- * config.gcc: Remove references to these files.
-
- * configure.in: Detect stdbool.h.
- * configure, config.in: Regenerate.
- * system.h: Include stddef.h here if available.
- Set HAVE__BOOL based on GCC_VERSION and __STDC_VERSION__.
- Then set up a sensible boolean type at the very end.
-
- * combine.c, cse.c, expr.c, fold-const.c, gensupport.c,
- config/mcore/mcore.c: Rename variables named 'true' and/or 'false'.
-
- * hash.h: Delete 'boolean' typedef and related #undefs.
-
- * function.c, ggc-common.c, hash.h, hash.c, tlink.c: Replace
- all uses of 'boolean' with 'bool'.
-
-2001-03-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * cpplib.c (_cpp_init_stacks): Cast enum for comparison.
- * cppexp.c (lex): Cast enums for comparison.
- * cppinit.c (parse_option): Cast enum for comparison.
- * cpplex.c (cpp_spell_token): Cast enums to int for minus.
- (cpp_output_token): Likewise.
- (cpp_can_paste): Cast enums for comparsion and plus/minus.
- (cpp_avoid_paste): Cast enums for minus and comparison.
-
-2001-03-01 Zack Weinberg <zackw@stanford.edu>
-
- * gcc.c, objc/lang-specs.h: Add zero initializer for cpp_spec
- field to all array elements.
-
-2001-03-01 Zack Weinberg <zackw@stanford.edu>
-
- * cpphash.h (struct cpp_reader): Add print_version field.
- * cppinit.c (cpp_handle_option): For -v, -version, and --version,
- just set print_version and other flags as appropriate.
- (cpp_post_options): Print version here if print_version is set.
-
- * toplev.c (exit_after_options): New flag.
- (independent_decode_option): Don't exit here; just set
- exit_after_options.
- (main): Exit after calling lang_hooks.post_options if
- exit_after_options is true.
-
- * cppinit.c (append_include_chain): Drop never-used case QUOTE.
- (merge_include_chains): Adjust comment to match code.
-
-2001-03-01 Zack Weinberg <zackw@stanford.edu>
-
- * stringpool.c (set_identifier): New function.
- * tree.h: Prototype it.
-
- * c-parse.in: Kill D_YES. If compiled for objc, call
- save_and_forget_protocol_qualifiers from init_reswords.
- * objc/objc-act.c (remember_protocol_qualifiers,
- forget_protocol_qualifiers): Don't diddle C_IS_RESERVED_WORD.
- Swap out the non-keyword IDENTIFIER_NODEs for keyword ones, or
- vice versa.
- (save_and_forget_protocol_qualifiers): New function.
- * c-lex.h: Prototype save_and_forget_protocol_qualifiers.
-
-2001-03-01 Diego Novillo <dnovillo@redhat.com>
-
- * c-semantics.c (prune_unused_decls): Return error_mark_node
- instead of (tree) 1 to stop traversing the tree chain.
-
-2001-03-01 Bernd Schmidt <bernds@redhat.com>
-
- Fix a problem introduced by Kenner's Feb 18 change.
- * toplev.c (rest_of_compilation): Disable flag_cse_follow_jumps and
- flag_cse_skip_blocks only temporarily, not for ever.
-
-Thu Mar 1 09:49:58 2001 Jeffrey A Law (law@cygnus.com)
-
- * config/pa/som.h (ASM_IDENTIFY_GCC): Define.
- (ASM_IDENTIFY_GCC_AFTER_SOURCE): Likewise.
-
- * pa.c (emit_move_sequence): Verify operand0 is a hard register
- before determining its register class.
-
-2001-03-01 Bernd Schmidt <bernds@redhat.com>
-
- * config/ia64/ia64.c (ia64_hard_regno_rename_ok): Disallow renaming
- from reg 4 if current_function_calls_setjmp.
- (gen_nop_type): New function.
- (ia64_emit_nops): New function.
- (ia64_reorg): Call it.
- (ia64_sched_reorder): Move code that rotates bundles up a bit.
-
- * reload1.c (eliminate_regs_in_insn): Restrict the special case
- code not to try to optimize adds with anything but a REG destination.
-
- * sched-int.h (struct haifa_insn_data): Add new member priority_known.
- (INSN_PRIORITY_KNOWN): New accessor macro.
- * haifa-sched.c (priority): Use it instead of testing priority against
- zero.
-
-2001-02-28 DJ Delorie <dj@redhat.com>
-
- * config/m68k/m68k.h (MOVE_BY_PIECES_P): Avoid pushing bytes,
- since that doesn't work the way gcc wants on a generic m68k.
-
-2001-02-28 Richard Henderson <rth@redhat.com>
-
- * caller-save.c (save_call_clobbered_regs): Fix typo in
- comparison last change.
-
-Wed Feb 28 19:31:42 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (pentium4_cost): New.
- (m_PENT4): New macro.
- (x86_push_memory, x86_movx,x86_cmove, x86_deep_branch, x86_use_sahf
- x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8
- x86_integer_DFmode_moves, x86_partial_reg_dependency,
- x86_memory_mismatch_stall): Add Pentium4
- (x86_use_q_reg, x86_use_any_reg): Kill.
- (override_options): Add pentium4.
- (incdec_operand): Return 0 for pentium4.
- (ix86_issue_rate): Add PROCESSOR_PENTIUM4 and PROCESSOR_ATHLON.
- * i386.h (x86_use_q_reg, x86_use_any_reg): Kill.
- (TARGET_PENTIUM4): Define.
- (enum processor_type): Add PROCESSOR_PENTIUM4.
- (CPP_CPU_DEFAULT_SPEC): Add pentium4 support.
- * i386.md (attribute "cpu"): Add pentium4.
- * invoke.texi (march): Add pentium4.
-
-Wed Feb 28 19:28:06 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_mov?fcc*): New patterns and splitters.
- * i386.c (ix86_expand_movcc): Work post-reload; recognize
- the SSE based conditional moves.
-
-Wed Feb 28 19:18:23 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (attribute mode): Add "TI".
- (movsf_1): Add pxor support; remove constant propagation splitter.
- (movdf_integer): Likewise.
- (movdf_nointeger): Likewise.
- (movxf constant prop splitter): Handle all modes; update for SSE.
- * i386.h (CONST_DOUBLE_OK_FOR_LETTER): Add 'H' for SSE constants.
- * i386.c (standard_80387_constant_p): Rewrite.
- (standard_sse_constant_p): New.
- * i386-protos.h (standard_sse_constant_p): New.
-
-Wed Feb 28 19:05:37 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_setccsf, sse_setccdf): New.
- (sse_cmp* patterns): Use '%D' instead of outputtting condition
- flag directly.
- * i386.c (sse_comparison_operator): Accept the supported unordered
- comparses; be ready for fast_math.
- (print_operand): Support 'D'.
-
-Wed Feb 28 18:54:51 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * jump.c (reversed_comparison_code): Kill.
-
-Wed Feb 28 18:50:15 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Do post-reload splitting unconditionally
- for STACK_REGS
-
-Wed Feb 28 18:47:37 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_andti3, sse_nandti_3, sse_xorti3): Add SSE2 versions;
- add missing '%' in constraints.
-
-Wed Feb 28 17:24:24 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * c-common.c (build_common_tree_nodes): Build intTI_type_nodes
- for HOST_BITS_PER_WIDE_INT == 32 too.
-
-Wed Feb 28 17:22:35 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * caller-save.c (reg_save_code, reg_restore_code): Index by mode, not
- NREGS.
- (insert_save, insert_restore): New parameter save_mode.
- (init_caller_save): Update initialization of reg_save_code
- and reg_restore_code.
- (save_call_clobbered_regs): Compute save_modes and update calls to
- reg_save_code and reg_restore_code.
- (insert_restore): Unsignetize numbers; use save_modes to choose mode
- of spill; update use of reg_restore_code.
- (insert_save): Likewise.
- * i386.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
- * c4x.h (HARD_REGNO_CALLER_SAVE_MODE): Update.
- * regs.h (HARD_REGNO_CALLER_SAVE_MODE): Likewise.
-
-Wed Feb 28 17:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * ifcvt.c (noce_emit_store_flag, noce_try_store_flag_constants,
- noce_try_store_flag_inc, noce_try_store_flag_mask,
- noce_try_cmove_arith):
- Use reversed_comparison_code instead of reverse_comparison and
- can_reverse_comparison_p.
-
-Wed Feb 28 17:17:29 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * jump.c (reversed_comparison_code_parts): Allow reversal of
- unordered compares in -ffast-math mode; reverse ordered compares
- for FP even w/o -ffast-math.
-
-2001-02-27 Richard Henderson <rth@redhat.com>
-
- * print-rtl.c (print_rtx) [i]: Don't print field five on
- NOTEs other than NOTE_INSN_DELETED_LABEL.
-
-2001-02-27 Zack Weinberg <zackw@stanford.edu>
-
- * mips/xm-iris4.h: Delete #if 0 block (there since before 1997).
- * pa/xm-linux.h, pa/xm-pa.h, pa/xm-papro.h: Don't declare errno.
-
-2001-02-27 Diego Novillo <dnovillo@redhat.com>
-
- * c-common.c (walk_stmt_tree): Visit the chain of the current tree
- even if walk_subtrees is 0.
- * c-semantics.c (prune_unused_decls): Return a non-null value to
- stop traversing the tree chain.
-
-2001-02-27 DJ Delorie <dj@redhat.com>
-
- * config/m68k/m68k.c (output_function_prologue): Save the new CFA
- register, *then* define it as the new CFA.
-
-Tue Feb 27 16:49:13 2001 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (override_options): Promote -fpic to -fPIC.
- (legitimize_pic_address): Simplify due to removal of
- small PIC as a code generation option.
- (secondary_reload_class): Similarly.
- * pa.h (GO_IF_LEGITIMATE_ADDRESS): Similarly.
- (PRINT_OPERAND_ADDRESS): Similarly.
- * pa.md (various patterns): Similarly.
- (small pic lo_sum pattern): Remove.
-
-Tue Feb 27 16:01:13 CET 2001 Jan Hubicka <jh@suse.cz>
- Fergus Henderson
-
- * md.texi (min, max): Document
-
-Tue Feb 27 15:51:35 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movsf, movdf): Use movaps for reg-reg moves if
- TARGET_PARTIAL_REG_DEPENDENCY.
- (truncdfsf2_1_sse, truncdfsf2_2): Penalize the fpreg->mem case.
-
-Tue Feb 27 15:36:48 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (mins*, maxs*): New patterns, expanders and splitters.
-
-2001-02-26 Jeffrey Oldham <oldham@codesourcery.com>
-
- * mips.c (mips_make_temp_file): Fix thinko in last change.
-
-2001-02-26 Jason Eckhardt <jle@redhat.com>
-
- * combine.c (known_cond): Do not reverse the condition when
- SMAX/UMAX is being considered and the condition is for equality
- or inequality.
-
- * testsuite/gcc.c-torture/execute/20010221-1.c: New test.
-
-2001-02-26 Philip Blundell <philb@gnu.org>
-
- * config.gcc: Remove obsolete targets "arm*-*-linuxoldld" and
- "armv2-*-linux".
- * config/arm/linux-elf.h: Remove historical relics related to
- above configurations.
- * config/arm/linux-oldld.h: Delete.
- * config/arm/linux-elf26.h: Delete.
-
-2001-02-26 Jason Merrill <jason@redhat.com>
-
- * c-decl.c (finish_decl): Set DECL_DEFER_OUTPUT on tentative file-scope
- definitions.
- * toplev.c (rest_of_decl_compilation): Check DECL_DEFER_OUTPUT to
- recognize a tentative definition. Lose obsolete code.
-
- * toplev.c (wrapup_global_declarations): Don't emit DECL_COMDAT
- variables unless necessary, either.
-
-2001-02-25 Richard Henderson <rth@redhat.com>
-
- * ifcvt.c (struct noce_if_info): Add test_bb.
- (noce_get_alt_condition): New.
- (noce_try_minmax, noce_try_abs): New.
- (noce_operand_ok): New.
- (noce_process_if_block): Use them.
- * rtlanal.c (may_trap_p): NEG and ABS can never trap.
-
-Sun Feb 25 14:26:17 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h (CPP_SPEC): Add missing space before w32api
- include.
-
-2001-02-25 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc: Put back pa/t-openbsd and rs6000/t-openbsd.
- * config/mips/mips.c (mips_make_temp_file): Set temp_filename
- properly.
- (mips_asm_file_end): Free temp_filename here.
-
-Sun Feb 25 08:34:23 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/i386/i386-protos.h (ix86_set_move_mem_attrs): Move decl.
- * config/i386/i386.c (ix86_set_move_mem_attrs_1): Fix typo.
-
- * config/i386/i386.md (movstrsi): Handle FAIL case.
-
-2001-02-25 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (builtin_array): Update.
- (init_builtins): Flag builtins to warn if redefined or
- undefined. Define __GXX_WEAK as a normal macro.
- * cpplib.c (do_undef): Warn if flagged NODE_WARN.
- * cpplib.h (NODE_WARN): New flag.
- * cppmacro.c (builtin_macro): Remove handling of __GXX_WEAK__.
- Handle __STDC__ as a builtin only on Solaris.
- (warn_of_redefinition): Renamed from check_macro_definition.
- Reverse sense of test. Always warn if NODE_WARN.
- (_cpp_create_definition): Use warn_of_redefinition. Flag
- any macro beginning with "__STDC_" to require a mandatory
- warning if redefined or undefined.
-
-2001-02-24 Zack Weinberg <zackw@stanford.edu>
-
- * xm-interix.h, xm-lynx.h, alpha/xm-vms.h, convex/xm-convex.h,
- i370/xm-i370.h, i370/xm-linux.h, i370/xm-mvs.h, i370/xm-oe.h,
- i386/xm-beos.h, i386/xm-dos.h, i386/xm-mingw32.h,
- i860/xm-i860.h, m68k/xm-3b1.h, m68k/xm-amix.h, m68k/xm-aux.h,
- m68k/xm-crds.h, m68k/xm-mot3300.h, m88k/xm-sysv3.h,
- mips/xm-mips.h, rs6000/xm-beos.h, vax/xm-vms.h:
- Don't define any of:
- USE_PROTOTYPES, vfork, mktemp, SVR3, NO_SYS_PARAMS_H,
- P_tmpdir, MVS, NO_DBX_FORMAT, USE_STDARGS, STDC_HEADERS,
- NO_PRECOMPILES, i860, __PTR_TO_INT, __INT_TO_PTR, rindex,
- index, FULL_PROTOTYPES, AUX, R_OK, W_OK, X_OK, F_OK,
- STACK_DIRECTION, MIPS, MAX_READ_LEN, MAX_WRITE_LEN.
-
- * alpha/xm-alpha.h, clipper/xm-clix.h, d30v/xm-d30v.h,
- fr30/xm-fr30.h, i370/xm-linux.h: Remove commented-out macro
- definitions.
-
- * m68k/xm-3b1.h, m68k/xm-crds.h, m88k/xm-sysv3.h:
- Delete now-empty file.
-
- * alpha/vms.h: Define NEED_ATEXIT here...
- * alpha/xm-vms.h: ...not here.
-
- * i386/cygwin.h: Don't define PARAMS.
- * mips/mips.c: Don't prototype mktemp. Don't define
- P_tmpdir. Use make_temp_file to create temporary files.
- Don't be clever and delete temporary files early.
- * config.gcc: Drop references to deleted files. Don't define
- FULL_PROTOTYPES.
- * gcc.texi: Don't mention USE_PROTOTYPES.
-
-Sat Feb 24 20:25:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/i386/i386.c (ix86_set_move_mem_attrs): New function.
- (ix86_set_move_mem_attrs_1): Likewise.
- * config/i386/i386-protos.h (ix86_set_move_mem_attrs): New declaration.
- * config/i386/i386.md (movstrsi): Call it.
-
-2001-02-24 Zack Weinberg <zackw@stanford.edu>
-
- * config.gcc: Expunge references to alpha/t-pe, pa/t-openbsd,
- x-linux-aout, i386/t-go32, t-osf, m68k/x-m68kv,
- ns32k/xm-netbsd.h, rs6000/t-openbsd, rs6000/t-xnewas,
- rs6000/x-aix41-gld. These are nonexistent, empty, or obsolete.
-
- (i750a-*-*): Error here if hosting on i750a.
- (alpha*-*-winnt*, ix86-*-winnt3*): Remove stanzas entirely.
-
- * x-linux-aout, xm-freebsd.h, i386/beos-pe.h, ns32k/xm-netbsd.h:
- Remove (empty modulo comments).
-
- * 1750a/xm-1750a.h, alpha/config-nt.sed, alpha/win-nt.h,
- alpha/xm-winnt.h, i386/config-nt.sed, i386/os2.h,
- i386/t-winnt, i386/win-nt.h, i386/xm-freebsd.h, i386/xm-os2.h,
- i386/xm-winnt.h, m68k/x-alloca-c, m88k/x-dguxbcs,
- mips/x-netbsd, mips/x-nws3250v4, rs6000/t-xnewas,
- rs6000/t-xrs6000, rs6000/xm-cygwin.h: Remove (obsolete)
-
- * i386/crtdll.h, i386/cygwin.h, i386/mingw32.h:
- Remove reference to winnt.h in comment.
- * rs6000/t-newas, rs6000/t-rs6000: Override LIBGCC1_TEST to null.
-
-2001-02-24 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * loop.c (check_dbra_loop): A biv has uses besides counting if it is
- used to set another biv.
-
-Sat Feb 24 06:45:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * tree.h (BLOCK_DEAD): New macro.
- (struct tree_block): New flag, dead_flag.
- * print-tree.c (print_node, case 'b'): Print missing fields.
- * emit-rtl.c (remove_unnecessary_notes): Set BLOCK_DEAD.
- * function.c (identify_blocks): Enable test for misplaced notes.
- (all_blocks): Skip BLOCK_DEAD blocks.
- * integrate.c (integrate_decl_tree): Likewise.
-
- * errors.c (internal_error, trim_filename): New functions.
- (fancy_abort): Call internal_error.
- * errors.h (internal_error, trim_filename): New declarations.
-
-2001-02-24 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Reverted
- 2000-08-26's patch.
- (EXTRA_CONSTRAINT): Formatting changes.
-
-2001-02-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * rtl.c (rtl_check_failed_code2): Fix typo in last change.
-
-2001-02-23 Per Bothner <per@bothner.com>
-
- * gcc.c (record_temp_file, pfatal_with_name, error): Make non-static,
- so they can be called from java/jvspec.c.
- * gcc.h (record_temp_file, pfatal_with_name, error): Declare.
-
-Sat Feb 24 03:32:50 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_frame): New structure.
- (ix86_compute_frame_size): Kill.
- (ix86_compute_frame_layout): New.
- (ix86_save_reg): New.
- (ix86_can_use_return_insn_p): Use frame layout stuff.
- (ix86_expand_prologue): Likewise.
- (ix86_expand_epilogue): Likewise.
- (ix86_initial_elimination_offset): Likewise.
- (ix86_nsaved_regs): Use ix86_save_reg.
- (ix86_emit_save_regs): Likewise.
-
-Sat Feb 24 03:30:38 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * flow.c (find_sub_basic_blocks): New function.
- (split_block): Be ready for basic block introduced by CODE_LABEL.
- (commit_one_edge_insertion): Call find_sub_basic_block.
-
- * flow.c (make_edges): Add edge from entry for blocks starting with
- label having ALTERNATE_NAME
-
-Sat Feb 24 03:19:42 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * function.c (epilogue_done): Be ready for first basic block not
- containing PROLOGUE_END note.
- (reposition_prologue_and_epilogue_notes): Avoid placing
- PROLOGUE_END note between BASIC_BLOCK.
-
-Sat Feb 24 03:17:09 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * loop.c (canonicalize_condition): Move to reversed_comparison_code.
-
-2001-02-21 DJ Delorie <dj@redhat.com>
-
- * config/i960/i960.h (FRAME_POINTER_REQUIRED): Revert removal of
- check for current_function_has_nonlocal_goto from 1999-11-12.
-
-Fri Feb 23 15:28:39 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * diagnostic.c (trim_filename): No longer static.
- * toplev.h (trim_filename): Declare.
- * rtl.c (rtl_check_failed_bounds): Call internal_error.
- (rtl_check_failed_type1, rtl_check_failed_type2): Likewise.
- (rtl_check_failed_code1, rtl_check_failed_code2): Likewise.
- (rtvec_check_failed_bounds): Likewise.
- * tree.c (tree_check_failed, tree_class_check_failed): Likewise.
-
- * convert.c (convert_to_integer): Don't do unsigned unless result or
- both inputs are unsigned.
-
- * fold-const.c (fold_convert): Don't call size_int_type_wide if
- input overflows.
-
- * c-decl.c (set_block): Set NAMES and BLOCKS from BLOCK.
-
- * varasm.c (output_constant): Recompute CODE after lang-specific fn.
-
-2001-02-23 Jeffrey Oldham <oldham@codesourcery.com>
-
- * Makefile.in (resource.o): Add params.h dependence.
- * params.def (MAX_DELAY_SLOT_LIVE_SEARCH): New parameter.
- * params.h (MAX_DELAY_SLOT_LIVE_SEARCH): Likewise.
- * resource.c: Add dependence on params.h.
- (current_live_regs): Fix explanatory comment.
- (find_basic_block): Add new parameter to permit limiting search
- for a BARRIER.
- (mark_target_live_regs): Add new argument to find_basic_block call.
- (incr_ticks_for_insn): Likewise.
-
-2001-02-23 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
-
- * diagnostic.c (output_to_stream): Rename to
- output_buffer_to_stream. Loses the stream parameter.
- (init_output_buffer): Set diagnosic_buffer's stream.
- (flush_diagnostic_buffer): Adjust.
- (default_print_error_function): Likewise.
- (finish_diagnostic): Likewise.
- (verbatim): Likewise.
-
- * diagnostic.h (struct output_buffer): Add `stream' field.
- (output_buffer_attached_stream): New macro.
-
-2001-02-23 Jakub Jelinek <jakub@redhat.com>
-
- * fold-const.c (extract_muldiv) [case PLUS_EXPR]: If not MULT_EXPR,
- check if either operand is divisible by C.
- (multiple_of_p): Handle LSHIFT_EXPR with small constant shift.
- If type is signed, consider negative numbers as well.
-
-2001-02-22 Richard Henderson <rth@redhat.com>
-
- * config/ia64/crtbegin.asm (.fini): Use pc-relative relocs to
- reach .text instead of gp-relative relocs.
- * config/ia64/crtend.asm (.init): Likewise.
-
-2001-02-22 Andreas Jaeger <aj@suse.de>
-
- * extend.texi (C++ Attributes): Fix typo.
-
-2001-02-21 David Mosberger <davidm@hpl.hp.com>
-
- * config/ia64/ia64.c (ia64_epilogue_uses): For syscall_linkage
- functions, drop current_function_args_info.words test.
- (ia64_compute_frame_size): Mark syscall_linkage functions as
- using eight input registers.
-
-2001-02-21 Loren J. Rittle <ljrittle@acm.org>
- Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def (freebsd_gcc3_breakage): new fix
- * fixinc/README: Document how to convert sed substitutions
- to format style c_fix-es.
- * fixinc/fixincl.x: regen
-
-2001-02-21 Jeffrey D. Oldham <oldham@codesourcery.com>
-
- * gcc.c: Add comment explaining how to add a command-line option.
- Add title to specs language comment.
-
-2001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
-
- * gcc.c (cc1_options): Add "-param".
- (DEFAULT_WORD_SWITCH_TAKES_ARG): Likewise.
- (option_map): Likewise.
- * toplev.c (display_help): Add entry for "--param".
- (independent_decode_option): Fix typographical error.
-
-Wed Feb 21 18:57:28 CET 2001 Catherine Moore <clm@redhat.com>
- Bernd Schmidt <bernds@redhat.com>
- Jan Hubicka <jh@suse.cz>
-
- * i386.c (function_arg_advance): Pass SSE arguments in registers.
- (function_arg): Likewise.
-
-Wed Feb 21 18:12:41 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (mmx_lshrdi3, mmx_ashldi3): Guard by unspec.
-
-2001-02-21 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.md (iorsi3): Do not output an extra newline
- character.
- (xorsi3): Likewise.
-
-Wed Feb 21 17:35:24 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * flow.c (init_propagate_block_info): Canon address and use single_set
- for killing dead memory stores.
-
-2001-02-21 Jeffrey Oldham <oldham@codesourcery.com>
-
- * Makefile.in (reorg.o): Add params.h dependence.
- * params.def: Fix typographical error in comment.
- (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
- * params.h: Modify introductory comment.
- (MAX_DELAY_SLOT_INSN_SEARCH): New parameter.
- * reorg.c: Add dependence on params.h.
- (redundant_insn): Add parameterized throttle for search.
- (fill_simple_delay_slots): Add a comment explaining a variable.
- Move conditional out of loop, simplifying code.
- (fill_eager_delay_slots): Fix typographical error in comment.
-
-2001-02-20 Aldy Hernandez <aldyh@redhat.com>
-
- * tm.texi (REVERSE_CONDEXEC_PREDICATES_P): New macro documentation.
-
- * flow.c (ior_reg_cond): Use REVERSE_CONDEXEC_PREDICATES_P macro.
- (REVERSE_CONDEXEC_PREDICATES_P): Define macro.
-
-2001-02-21 Jason Merrill <jason@redhat.com>
-
- * tree.h (DECL_UNINLINABLE): Move from C++ frontend.
- (struct tree_decl): Add uninlinable bitfield.
- * c-decl.c (duplicate_decls): Set it.
- * integrate.c (function_cannot_inline_p): Check it.
-
- * dwarf2out.c (add_name_and_src_coords_attributes): Don't add
- DW_AT_MIPS_linkage_name to abstract methods.
- (dwarf2out_abstract_function): Emit class context before calling
- set_decl_abstract_flags. Don't clear DECL_ABSTRACT.
- (gen_subprogram_die): Remove obsolete code.
- (gen_member_die): Don't include clones in the member list.
- (gen_decl_die): Emit abstract info for clone origin.
- * dwarfout.c (output_type): Don't include clones in the member list.
- * dbxout.c (dbxout_type_methods): Ignore abstract methods.
- * toplev.c (note_deferral_of_defined_inline_function): Don't clear
- DECL_ABSTRACT on a function that already has it set.
-
- * dwarf2out.c (gen_formal_types_die): Also accept a FUNCTION_DECL.
- (get_subprogram_die): Pass it in.
-
-2001-02-21 Richard Earnshaw <rearnsha@arm.com>
-
- * flow.c (mark_set_1): Make not_dead unsigned long. For
- non-pseudos, use it as a bitmask of the hard regs that
- don't die.
-
-2001-02-21 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c: Update comments.
- (_cpp_read_file): Don't check for NULL filenames any more.
- * cppinit.c (cpp_start_read): Don't do canonicalization of
- in_fname and out_fname. Use the passed file name exclusively.
- (_cpp_handle_options): Don't treat "-" as a command line option,
- but as a normal filename.
- (_cpp_post_options): Canonicalize in_fname and out_fname.
- * cppmain.c (printer_init): Don't check out_fname for NULL.
- * c-lex.c (orig_filename): Rename cpp_filename for clarity.
- (init_c_lex): Update, and use "" to represent stdin to CPP.
- (yyparse): Update.
-
-2001-02-20 Will Cohen <wcohen@redhat.com>
-
- * config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_usgl): New function.
- * config/pa/long_double.h (FIXUNS_TRUNCTFSI2_LIBCALL): Added.
- (INIT_TARGET_OPTABS): Use FIXUNS_TRUNCTFSI2_LIBCALL for
- fixunstfsi_libfunc.
-
-2001-02-20 Stan Shebs <shebs@apple.com>
-
- * config/rs6000/rs6000.c (output_cbranch): Output branches
- on separate lines instead of using ';' to separate.
-
-2001-02-20 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (set_lang): Move builtin handling to...
- (init_builtins): ...here.
- (_cpp_create_reader): Move call to set_lang.
-
-2001-02-20 Mark Mitchell <mark@codesourcery.com>
-
- * stmt.c (expand_return): If an attempt is made to return the
- error_mar_node, treat the return like a return without a value.
-
-2001-02-19 Zack Weinberg <zackw@stanford.edu>
-
- * sibcall.c (skip_copy_to_return_value): Call
- identify_call_return_value here, and return orig_insn if it
- returns zero. Hardret and softret arguments now unnecessary.
- (call_ends_block_p): Don't call identify_call_return_value here.
-
- * ggc-common.c (ggc_mark_rtx_children): No need to mark 'S' or
- 's' slots in RTXen.
- * ggc-page.c, ggc-simple.c (ggc_mark_if_gcable): Delete function.
- * ggc.h (ggc_mark_if_gcable): Delete prototype.
-
-Mon Feb 19 20:30:16 2001 Jeffrey A Law (law@cygnus.com)
-
- * pa.c (move_operand): Accept code to load the address of a
- symbol out of the DLT as a valid move operand.
- (print_operand, case 'A'): New to handle generating a DLT
- reference for a LO_SUM expression.
- * pa.h (EXTRA_CONSTRAINT): Handle 'A' for DLT LO_SUM references.
- * pa.md (movsi, movdi patterns): Allow DLT LO_SUM references.
-
-2001-02-19 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * README, cpp.texi, gcc.texi, version.c: Update version number to
- 3.1.
- * cpp.1, gcov.1, gcc.1: Regenerate.
-
-2001-02-19 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (stack_include_file): Generate dependencies
- here, and manage include_count here too.
- (PRINT_THIS_DEP): Delete.
- (_cpp_execute_include): Do not generate dependencies here,
- apart from the case of a missing header. Do not manage
- include_count.
- (_cpp_read_file): Leave dependency generation to
- stack_include_file.
-
-Mon Feb 19 10:17:47 2001 Jeffrey A Law (law@cygnus.com)
-
- * config.gcc (hppa*64*-*-hpux11*): Add MASK_GAS to
- target_cpu_default. Remove dead assignment to
- target_cpu_default.
-
-Mon Feb 19 16:47:39 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * regclass.c (contains_reg_of_mode): Make global.
- (init_reg_sets): Remove contains_reg_of_mode; take into account
- CLASS_MAX_NREGS when looking for the proper mode.
- (dump_regclass): Dump only classes considered for the pseudo.
- (regclass): Use contains_reg_of_mode.
-
-Mon Feb 19 16:45:42 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * gcc.c (do_spec_1): 'n' for printing notices.
- * i386.h (CC1_CPU_SPEC): Notice deprecated options as deprecated.
-
-Mon Feb 19 15:51:30 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * reg-stack.c (next_flags_user): Use current_block->end
- (swap_rtx_condition): Look for next user if flags don't die;
- give up on CALL_INSNs; use current_block->end.
-
-Mon Feb 19 08:27:21 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * sibcall.c (call_ends_block_p): New function.
- (optimize_sibling_and_tail_recursive_call): Use it.
-
-2001-02-18 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.md: Update copyright.
- (andsi3): Do not output an extra newline character.
-
-Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * toplev.c (note_deferral_of_defined_inlined_function): Argument
- FNDECL may be unused.
-
- * toplev.c (rest_of_compilation): Don't have CSE skip blocks or
- follow jumps after first run.
- If -fexpensive-optimizations rerun CSE after GCSE and iterate until
- it doesn't change any jumps.
-
-Sun Feb 18 17:05:50 2001 Jeffrey A Law (law@cygnus.com)
-
- * Makefile.in (rtlanal.o): Depend on hard-reg-set.h.
- ($HOST_PREFIX_1)rtlanal.o: Remove rules for building
- (mostlyclean): Corresponding changes.
- * rtlanal.c (hard-reg-set.h): Include.
- (rtx_unstable_p): Do not treat the argument pointer specially
- if it is not a fixed register.
- (rtx_varies_p, rtx_addr_can_trap_p): Similarly.
-
-Sun Feb 18 15:45:17 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * sibcall.c (optimize_sibling_and_tail_recursive_call): Compare
- against last real insn in basic block.
- Rework to avoid gotos.
-
- * Makefile.in (gcse.o): Now includes ggc.h.
- * gcse.c: Include ggc.h.
- (want_to_gcse_p): Verify expression can be in SET as valid insn.
- (try_replace_reg): Remove warning of uninitialize variable.
- (process_insert_insn): Call invalid_insn_p to validate insn.
- * recog.c (insn_invalid_p): Now global.
- See if can make valid by adding CLOBBERs of SCRATCH only and do if so.
- * recog.h (insn_invalid_p): New declaration.
-
- * jump.c (jump_optimize_1): Only define reversed_code #ifdef HAVE_trap.
-
- * config/sparc/sparc.c (eligible_for_epilogue_delay): Don't put
- assignments from FP constants since 'Y' output code can't handle it.
- (eligible_for_sibcall_delay): Likewise.
-
- * flow.c (print_rtl_and_abort_fcn): Renamed from print_rtl_and_abort.
- Call fancy_abort directly, passing args.
- (print_rtl_and_abort): Now a macro, like fancy_abort.
-
- * final.c (output_operand_lossage): Use internal_error, not error.
-
-2001-02-18 Shane Nay <shane@agendacomputing.com>
-
- * mips.c (mips_expand_prologue) Add REG_MAYBE_DEAD to
- structure shift insns.
-
-2001-02-18 Mark Mitchell <mark@codesourcery.com>
-
- * invoke.texi (-fsquangle): Remove documentation.
- (-fname-mangling-version): Likewise.
-
-2001-02-18 Lars Brinkhoff <lars@nocrew.org>
-
- * optabs.c (expand_abs): Remove reference to
- HAVE_contitional_arithmetic.
- * combine.c (simplify_set): Likewise.
-
-2001-02-18 Richard Henderson <rth@redhat.com>
-
- * ifcvt.c (dead_or_predicable): Don't move code if eh regions
- would be disrupted.
-
-2001-02-18 Richard Henderson <rth@redhat.com>
-
- * config/ns32k/ns32k.h (ADJSP): Upcase arguments.
-
- * config/alpha/alpha.md (movsi_fix): Fix typo in pattern name.
-
- * reload1.c (reload_cse_simplify_set): Fix typo.
-
-Sun Feb 18 09:30:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * diagnostic.c (_fatal_insn): Decrement errorcount.
-
- * invoke.texi (-I): Add note avoiding use for system header files.
-
- * rtl.h (add_clobbers): Remove duplicate declaration.
- * recog.h (added_clobbers_hard_reg_p): New declaration.
- * genemit.c (struct clobber_pat): New field has_hard_reg.
- (gen_insn): Record if added clobbers clobber hard reg.
- (gen_split): Avoid unused warning if number of operands is 0.
- (output_added_clobbers_hard_reg_p): New function.
- (main): Call it.
-
-2001-02-18 Alan Modra <alan@linuxcare.com.au>
-
- * pa.c (hppa_expand_prologue): Simplify code storing return
- pointer. For large (>=8k) frames with a post_store, adjust stack
- pointer by 8k-64 first rather than by 64. When testing with
- VAL_14_BITS_P, always use the actual value rather than the value
- negated. Add blockage to prevent scheduling of spills before
- stack frame has been created.
- (hppa_expand_epilogue): Simplify code loading return pointer.
- Allow a slightly larger range for merge_sp_adjust_with_load case.
- When testing with VAL_14_BITS_P, always use the actual value.
-
- * pa.c (pa_adjust_insn_length): Check that block move
- pattern is a set before looking at operands.
-
-2001-02-17 Mark Mitchell <mark@codesourcery.com>
-
- * fold-const.c (fold_binary_op_with_conditional_arg): New
- function, split out from ...
- (fold): ... here.
- * tree.def (COND_EXPR): Document the use of VOID_TYPE for
- conditional arms that throw exceptions.
-
- * print-tree.c (print_node): Do not use BLOCK_CHAIN when we're not
- looking at a BLOCK.
-
-2001-02-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * aclocal.m4 (gcc_AC_CHECK_DECL): Before attempting the test,
- define HAVE_DECL_* to 1 to mask potential backup declarations.
- * configure: Regenerated.
-
-2001-02-17 Mark Mitchell <mark@codesourcery.com>
-
- * invoke.texi (-Woverloaded-virtual): Clarify documentation.
-
-2001-02-17 Richard Henderson <rth@redhat.com>
-
- * reload1.c (reload_cse_simplify_set): Respect LOAD_EXTEND_OP
- when replacing a memory load with a register.
-
-Sat Feb 17 14:48:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
- Jan Hubicka <jh@suse.cz>
-
- * recog.c (validate_replace_src_1): New.
- (validate_replace_src_data): Likewise.
- (validate_replace_src): Use note_uses.
- * rtl.h (note_uses): Declare.
- * rtlanal.c (note_uses): New.
-
-Sat Feb 17 10:52:34 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * reg-stack.c (stack_def): Make field reg unsigned.
- (remove_regno_note): Unsignetize parameter.
-
-2001-02-16 Jes Sorensen <jes@linuxcare.com>
-
- * ia64.c (errata_emit_nops): Add VOIDmode as second argument to
- shladd_operand() call.
-
-2001-02-16 Bruce Korb <bkorb@gnu.org>
- Rodney Brown <RodneyBrown@mynd.com>
-
- * fixinc/mkfixinc.sh: Use C fixincludes for UnixWare 7.
- * fixinc/inclhack.def: Add fixinc.svr4 patterns with matching
- machine restrictions
- * fixinc/fixincl.x: regen
-
-Fri Feb 16 12:41:30 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * gcse.c (hash_scan_set): If cprop, see if REG_EQUAL or REG_EQUIV.
- Don't CSE a nop.
- (hash_scan_insn): Clean up calls to hash_scan_set.
- (compute_kill_rd): REGNO now unsigned.
- (try_replace_reg): Rework to use simplify_replace_rtx.
- (cprop_jump, cprop_cc0_jump): Likewise.
- (cprop_insn): Call find_reg_equal_equiv_note.
- Reflect changes to cprop_jump and cprop_cc0_jump.
-
- * recog.c (validate_replace_src): Replace in operands of
- ZERO_EXTRACT in SET_DEST.
-
- * cse.c (new_label_ref): New variable.
- (insert): Set it instead of recorded_label_ref.
- (cse_basic_block): Set recorded_label_ref if new_label_ref use, has
- CODE_LABEL for this function, and not already in REG_LABEL note.
-
-2001-02-16 Jeffrey Oldham <oldham@codesourcery.com>
-
- * resource.c (mark_referenced_resources): Fix typo in introductory
- comment.
- * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Fix typo in
- string constant.
-
-2001-02-16 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (add_bound_info): Don't crash if SAVE_EXPR_RTL is
- NULL.
- (gen_subprogram_die): Don't abort on seeing a second definition if
- the previous one was abstract. Don't replace an abstract instance
- in the lookup table.
-
- * dwarf2out.c (dwarf2out_abstract_function): Rename from
- gen_abstract_function.
- * dwarf2out.h: Declare it.
- * toplev.c (note_outlining_of_inline_function): New fn.
- * toplev.h: Declare it.
- * integrate.c (output_inline_function): Call it.
- * c-decl.c (duplicate_decls): Call it when redefining an extern
- inline. Don't inline the new defn.
-
- * tree.h (BLOCK_CHAIN): Use BLOCK_CHECK.
-
-2001-02-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * .gdbinit: Rename to gdbinit.in.
- * gdbinit.in: New file,
- * configure.in: Generate .gdbinit from gdbinit.in.
- * configure: Regenerated.
- * Makefile.in (distclean): Always remove .gdbinit.
-
-2001-02-16 Jakub Jelinek <jakub@redhat.com>
-
- * objc/objc-act.c (start_class): Register implemented_classes with
- GC.
-
-2001-02-16 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (_cpp_make_system_header): Generate a file
- change callback.
-
-2001-02-15 Jim Meyering <meyering@lucent.com>
-
- * Makefile.in (install-common): Don't depend on installdirs here.
- Instead, make each of the lang.install-common targets (e.g.,
- c++.install-common in cp/Make-lang.in) depend on it.
- (install-driver): Depend on installdirs.
-
-Thu Feb 15 21:30:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * flow.c (tidy_fallthru_edge): Never end block on line number NOTE.
-
- * function.c (assign_parms): Set RTX_UNCHANGING_P in pseudo when we
- do in memory.
-
-2001-02-15 Mark Mitchell <mark@codesourcery.com>
-
- * invoke.texi (--param): Document.
-
-Thu Feb 15 15:16:38 2001 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (BOOL_TYPE_SIZE): Don't define.
-
-Thu Feb 15 10:52:31 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (extendsfdf2_2): Fix constraints.
-
-Thu Feb 15 09:46:21 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (fop_df_3 splitter): Fix operand number.
-
-Wed Feb 14 12:37:37 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * invoke.texi (-mreg-alloc): Nuke.
- * i386.c (ix86_reg_alloc_order, regs_allocated,
- order_regs_for_local_alloc): Nuke.
- (override_options): Kill reg_alloc code.
- * i386.h (TARGET_OPTIONS): Kill reg-alloc.
- (REG_ALLOC_ORDER): SSE goes before I387.
- (ORDER_REGS_FOR_LOCAL_ALLOC): Kill.
- (ix86_reg_alloc_order): Likewise.
- * i386-protos.h (ix86_reg_alloc_order): Kill.
-
-2001-02-14 Richard Henderson <rth@redhat.com>
-
- * toplev.c (f_options): Clarify -fschedule-insns2 documentation.
-
-Wed Feb 14 11:59:58 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (RETURN_IN_MEMORY): Fix formating; reject TFmodes
-
-Wed Feb 14 11:12:38 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386-protos.h (ix86_memory_move_cost): Move offline.
- * i386.c (ix86_register_move_cost): Compute properly cost of
- SSE, MMX and i387 instructions.
- (*_cost): Add costs of SSE/MMX moves.
- (ix86_memory_move_cost): Move offline from ....; Likewise.
- * i386.h (MEMORY_MOVE_COST): .... here;
- (struct processor costs): Add new fields to represent costs
- of SSE/MMX moves.
-
-Wed Feb 14 10:08:26 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * regclass.c (init_reg_sets_1): Reinstall the optimization of
- move_cost together with Matt Kraai's fix.
-
-2001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
-
- * Makefile.in (OBJS): Add params.o.
-
-2001-02-14 Richard Henderson <rth@redhat.com>
- DJ Delorie <dj@redhat.com>
-
- * jump.c (jump_optimize_1): When we delete a conditional jump
- preceding a non-conditional jump to effectively the same place,
- make sure that the combined jump skips any clobber insns between
- the two labels.
-
-2001-02-14 Jeffrey Oldham <oldham@codesourcery.com>
-
- * gcc.c (do_spec_1): Fix off-by-one error for '%M' case.
-
-2001-02-14 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (toplev.o): Depend on params.h.
- (intergate.o): Likewise.
- (params.o): New target.
- * flags.h (inline_max_insns): Remove.
- * integrate.c: Include params.h.
- Use MAX_INLINE_INSNS instead of inline_max_insns.
- * params.c: New file.
- * params.h: Likewise.
- * params.def: Likewise.
- * toplev.c: Include params.h.
- (lang_independent_params): New variable.
- (decode_f_option): Use the param machinery instead of setting
- max_inline_insns.
- (independent_decode_option): Handle "--param name=value".
- (main): Register language-independent parameters.
-
-Wed Feb 14 11:13:45 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (pushsf, pushdf_nointeger): Fix constraint.
-
-2001-02-14 Richard Henderson <rth@redhat.com>
-
- * regclass.c (init_reg_sets_1): Revert last two changes.
-
-2001-02-14 Jakub Jelinek <jakub@redhat.com>
-
- * stor-layout.c (is_pending_size, put_pending_size): New functions.
- (variable_size): Call put_pending_size.
- * tree.h (is_pending_size, put_pending_size): Add prototypes.
- * fold-const.c (extract_muldiv): If SAVE_EXPR is on the pending
- sizes list, put newly created SAVE_EXPR there as well.
-
-2001-02-14 Jakub Jelinek <jakub@redhat.com>
-
- * config/ia64/ia64.c (last_group): Only 2 entries are needed.
- (errata_find_address_regs): load_group has only 2 entries.
- (errata_emit_nops): Likewise. shladd is not problematic.
- Clear last_group if nop was emitted.
- (fixup_errata): load_group has only 2 entries.
- Optimize.
-
-2001-02-14 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (lex_number): Only warn traditionally for U suffix
- outside system macros.
- * cppexp.c (parse_number): Similarly.
- * cpplib.h (NODE_SYSHDR, cpp_sys_objmacro_p): New.
- * cppmacro.c (struct cpp_macro): New member node.
- (parse_args): Only warn about missing rest args if not
- a system macro.
- (funlike_invocation_p): Similarly for uninvoked funlike macros.
- (cpp_sys_objmacro_p): New.
- (_cpp_create_definition): Store the node with the macro defn.
- Remember if the macro is defined in a system header.
-
-2001-02-13 DJ Delorie <dj@redhat.com>
-
- * configure.in (check_languages): determine languages to check
- * Makefile.in (check-c++): alias for check-g++
- (check-f77): alias for check-g77
- (CHECK_TARGETS): depend on configured languages
-
-Wed Feb 14 01:13:59 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
- (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
- (sqrtsf2 patterns): Use 'x' instead of 'Y'.
- (sqrtextendsfdf2): Disable for SSE2.
-
-Wed Feb 14 00:19:28 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
- (sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
- (sqrtsf2 patterns): Use 'x' instead of 'Y'.
- (sqrtextendsfdf2): Disable for SSE2.
-
-Wed Feb 14 00:11:20 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movsfcc_1): Support integer cmove instruction.
- (movdfcc_1): Likewise; new splitter.
-
-Tue Feb 13 23:19:27 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (output_fp_compare): Support SSE.
- (prepare_fp_compare_args): SSE comparisons always support memory.
- * i386.h (TARGET_CMOVE): SSE imply cmove.
- * i386.md (cmp?f2): Enable for SSE too.
- (cmpfp_i*): Support SSE.
- (cmpfp_i_sse): New.
- (cmpfp_i_sse_only): New.
- (s*, b* fp expanters): Enable for SSE too.
- (fp_jcc_1_sse, fp_jcc_1_sse_only, fp_jcc_2_sse, fp_jcc_2_sse_only):
- New patterns.
-
-Tue Feb 13 23:05:42 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * regclass.c (init_reg_sets_1): Silence warning.
-
-Tue Feb 13 22:03:07 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sqrt?f2): Change to expander.
- (sqrt?f2_1, sqrt?f2_sse_only, sqrt?f2_i387): New.
-
-Tue Feb 13 15:42:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * rtlanal.c (find_reg_equal_equiv_note): New function.
- * simplify-rtx.c (simplify_gen_unary, simplify_gen_ternary): New fns.
- (simplify_gen_relational, simplify_replace_rtx): Likewise.
- * rtl.h: Add declarations for above functions.
-
-Tue Feb 13 21:09:11 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * cse.c (cse_main): Converts ifdefs on PIC_OFFSET_TABLE_REGNUM to
- conditionals.
- * defaults.h (PIC_OFFSET_TABLE_REGNUM): Default to INVALID_REGNUM.
- * emit-rtl.c (init_emit_once): Convert ifdefs to conditionals.
- * flow.c (mark_regs_live_at_end): Likewise.
- (calculate_global_regs_live): Likewise.
- * gcse.c (compute_hash_table): Likewise.
- (compute_kill_rd): Likewise.
- * resource.c (mark_target_live_regs): Likewise.
- * rtl.h (INVALID_REGNUM): New macro.
-
-Tue Feb 13 20:59:22 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (fixsfsi2, fixdfdi2): Fix previous patch.
-
-Tue Feb 13 16:32:20 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (fixsfsi2, fixdfdi2): Force operand to register
- for SSE.
-
-Tue Feb 13 14:53:16 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (add?f3, sub?f3, mul?f3, dif?f3): Enable for TARGET_SSE(2)
- too.
- (fop_sf_comm, fop_df_comm, fop_sf_1, fop_df_1): Support SSE.
- (fop_sf_comm_sse, fop_df_comm_sse): New patterns.
- (fop_sf_1_sse, fop_df_1_sse): New patterns
- (fop_*): Disable float_extend and float patterns for SSE compilation.
- * i386.c (output_387_binary_op): Support SSE.
-
-Tue Feb 13 14:16:34 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.md (dummy_extendsfdf2): Support SSE2
- (extendsfdf2): Enable if 80387 or SSE2.
- (extendsfdf2_1): Support SSE2. Disable if SSE2 is avialble
- and no MIX_I387_SSE2
- (extendsfdf2_1_sse_only): New pattern.
- (truncdfsf2): Enable if SSE2 or 80387; Always use SSE only version
- of SSE.
- (truncdfsf2_1): Support SSE.
- (truncdfsf2_2): Support SSE.
- (truncdfsf2_2_1_sse): New pattern.
- (fixtruncsfsi2): Always use SSE if available.
- (fix_truncsfsi_sse): New pattern.
- (fix_truncdfsi_sse): New pattern.
- (floatsis?f2): Support SSE.
- (floatsidf2_i387): New pattern.
- (floatsidf2_sse): Likewise.
-
-Tue Feb 13 07:52:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * configure.in: Use "have_gnat" variable, not "gnat".
- * configure: Regenerated.
-
- * config/sparc/sparc.c (function_value): Treat all non-record
- aggregate types like used to treat UNION_TYPE.
-
-Tue Feb 13 13:31:33 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (print_reg): Use ANY_FP_REG instead of FP_REG
- * i386.h (MASK_128BIT_LONG_DOUBLE): Renumber
- (MASK_SSE2): New.
- (MASK_MIX_SSE_I387): New.
- (TARGET_SSE): SSE2 imply SSE.
- (TARGET_SSE2, TARGET_MIX_SSE_I387): New.
- (TARGET_SWITCHES): Add "sse2", "mix-sse-i387".
- (enum reg_class): Add new classes.
- (REG_CLASS_NAMES): Likewise.
- (REG_CLASS_CONTENTS): Likewise.
- (ANY_FP_REG_P, ANY_FP_REGNO_P, SSE_REG_P, SSE_FLOAT_MODE): New macros.
- (REG_CLASS_FROM_LETTER): 'x' and 'y' is SSE_REGS only when SSE is
- supported. Add 'Y' to be SSE_REGS when SSE2 is supported.
- (CLASS_MAX_NREGS): Use new macros.
- (REGISTER_MOVE_COST): Rewrite using SECONDARY_MEMORY_MAYBE_NEEDED.
- * i386.md (pushsf, movsf): Support SSE.
- (pushdf_nointeger, pushdf_integer, pushdf): Support SSE, update
- splitters to use ANY_FP_REGNO_P.
- (movdf_nointeger, movdf_integer): Likewise.
-
-2001-02-13 Alexandre Oliva <aoliva@redhat.com>
-
- * combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): New macro.
- (try_combine): Use it.
-
-Tue Feb 13 11:37:06 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (SSE_CLASS_P, MMX_CLASS_P, MAYBE_FLOAT_CLASS_P,
- MAYBE_SSE_CLASS_P, MAYBE_MMX_CLASS_P): New macros.
- (PREFERRED_RELOAD_CLASS, SECONDARY_MEMORY_NEEDED): Move offline.
- (REGISTER_MOVE_COST): Likewise.
- * i386-protos.h (ix86_secondary_memory_needed,
- ix86_preferred_reload_class, ix86_register_move_cost): Declare.
- * i386.c (ix86_secondary_memory_needed,
- ix86_preferred_reload_class, ix86_register_move_cost): New function.
-
-Die Feb 13 11:04:25 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.h (VALID_FP_MODE_P, VALID_INT_MODE_P): New.
- (HARD_REGNO_MODE_OK): Move offline to ....
- * i386.c (ix86_hard_regno_mode_ok) ... here;
- refuse all incorrect modes.
- * i386-protos.h (ix86_hard_regno_mode_ok): Declare.
-
-2001-02-13 Richard Henderson <rth@redhat.com>
-
- * sparc.md (cmp_cc_arith_op_set): Don't use match_dup on the
- entire operator; replicate that and match_dup the operands.
- (cmp_ccx_arith_op_set): Likewise.
- (cmp_cc_arith_op_not_set): Likewise.
- (cmp_ccx_arith_op_not_set): Likewise.
-
-2001-02-13 Alexandre Oliva <aoliva@redhat.com>
-
- * explow.c (trunc_int_for_mode): Sign-extend value to mode.
-
-2001-02-12 Geoffrey Keating <geoffk@redhat.com>
-
- * config/rs6000/sysv4.h (MASK_NO_BITFIELD_WORD): New macro.
- (TARGET_NO_BITFIELD_WORD): New macro.
- (SUBTARGET_SWITCHES): Add -mbit-word, -mno-bit-word options.
- (BITFIELD_NBYTES_LIMITED): Define based on TARGET_NO_BITFIELD_WORD.
-
-Mon Feb 12 18:13:26 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * cselib.c: New file, from simplify-rtx.c.
- * simplify-rtx.c: Remove cselib parts.
- * Makefile.in: Add cselib.o.
-
-2001-02-12 Geoffrey Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_float_const): Remove warning.
- (setup_incoming_varargs): Remove warning.
-
- * config/rs6000/rs6000.c (validate_condition_mode): When
- flag_fast_math, allow floating-point conditionals to be reversed.
- (rs6000_generate_compare): When flag_fast_math, don't generate
- cror operations for FP conditionals.
-
- * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
- -mcall-i960.
- (ASM_SPEC): Likewise.
- (CC1_ENDIAN_LITTLE_SPEC): Likewise.
- (CC1_SPEC): Likewise.
- (LINK_TARGET_SPEC): Likewise.
- (CPP_ENDIAN_SPEC): Likewise.
- * Makefile.in (check-consistency): New target.
-
-2001-02-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-decl.c (grokdeclarator): In C99 mode, give the more specific
- "return type defaults" warning for functions with return type
- defaulting to int.
- * c-lang.c (c_init): In C99 mode, enable warnings for implicit
- function declarations by default rather than only when pedantic.
-
-Mon Feb 12 17:28:48 CET 2001 Jan Hubicka <jh@suse.cz>
-
- * regclass.c (init_reg_sets_1): Optimize calculation of move_cost
- arrays.
-
-2001-02-12 Nathan Sidwell <nathan@codesourcery.com>
-
- * extend.texi (Deprecated): Deprecate new initializer lists.
-
-2001-02-12 Nathan Sidwell <nathan@codesourcery.com>
-
- * mkdeps.c (deps_add_default_target): Robustify. Add
- basename component only.
- * cpp.texi (-M): Describe how default target is generated.
- * invoke.texi (-M): Likewise.
-
-2001-02-12 Kazu Hirata <kazu@hxi.com>
-
- * toplev.c (push_float_handler): Remove.
- (pop_float_handler): Remove.
- * toplev.h: Remove prototypes for the above functions.
-
-2001-02-12 Jakub Jelinek <jakub@redhat.com>
-
- * c-common.c (constant_fits_type_p): New function.
- (convert_and_check): Use it.
-
-2001-02-11 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (GXX_ABI_FLAG): Don't define.
- * configure.in (--enable-new-gxx-abi): Remove option.
- * config.in: Regenerated.
- * configure: Likewise.
-
-2001-02-12 Alexandre Oliva <aoliva@redhat.com>
-
- * lcm.c (compute_earliest): Let EXIT_BLOCK be handled as a regular
- basic block.
- (optimize_mode_switching) [NORMAL_MODE]: Set up EXIT_BLOCK as a
- regular basic block, and arrange for all edges into it to switch
- to normal mode.
-
-2001-02-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * Makefile.in (distclean): Do not remove .gdbinit.
-
-2001-02-11 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (gcc.o): Fix typos.
- (protize.o): Likewise.
- (unprotoize.o): Likewise.
-
-2001-02-11 Richard Henderson <rth@redhat.com>
-
- * tree.c (build1): Check for null operand in last change.
-
-2001-02-11 Richard Henderson <rth@redhat.com>
-
- * fold-const.c (split_tree): Don't assume a constant isn't splittable.
- (fold): Don't assume a constant isn't foldable.
- * tree.c (build): Set TREE_CONSTANT for an expression with no
- side-effects and constant operands.
- (build1): Likewise.
-
-2001-02-10 Richard Henderson <rth@redhat.com>
-
- * jump.c (squeeze_notes): Revert 2000-05-12 change.
-
-2001-02-10 Anthony Green <green@redhat.com>
-
- * cpp.texi (Standard Predefined): Add documentation for
- __OPTIMIZE_SIZE__.
-
- * c-common.c (combine_strings): Improve warning message.
-
-2001-02-10 Geoffrey Keating <geoffk@redhat.com>
-
- * config/rs6000/sysv4.h (LINK_TARGET_SPEC): Use two dashes for
- --oformat.
- * config/rs6000/sysv4le.h (LINK_TARGET_SPEC): Likewise.
-
-Fri Feb 9 15:05:27 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/t-cygwin (T_CPPFLAGS): Use correct location for
- CYGWIN_CROSS_DIR.
-
-2001-02-09 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (sibcalli, sibcalli_pcrel, sibcalli): Set
- fp_mode attribute.
-
-2001-02-09 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.md: Change output contraint on post inc
- load/store multiple patterns to be a read/write contraint.
-
-2001-02-09 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * gcc.c (cpp_options): Delete .d files on error. Don't delete
- .o files when using the -M options.
-
-2001-02-08 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
- David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (output_toc): Allow 32-bit targets to
- handle DImode constants. Use one TOC entry for SImode and smaller
- constants, aligned properly.
-
-2001-02-08 Jason Merrill <jason@redhat.com>
-
- * config/arm/arm.c (arm_expand_prologue): Do tell the dwarf2 backend
- about the SP adjustment for saving the static chain pointer.
- * dwarf2out.c (dwarf2out_frame_debug_expr): Use the specified
- offset when setting a temporary CFA register.
-
-2001-02-08 Chandrakala Chavva <cchavva@redhat.com>
-
- * config.gcc : New targets, i386-*-chorusos*, sparc-*-chorusos*,
- powerpc-*-chorusos* .
- * config/rs6000/chorus.h : New file.
- * config/i386/chorus.h : New file.
- * config/sparc/chorus.h : New file.
- * config/sparc/t-chorus-elf : New file.
-
-2001-02-08 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Move from here ...
- * config/rs6000/aix.h (ASM_OUTPUT_SYMBOL_REF): ... to here.
- * config/rs6000/aix51.h (CPLUSCPLUS_CPP_SPEC): Define it.
- (__WCHAR_TYPE__): Correct macro name.
-
-2001-02-08 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_frame_pointer_required): New.
- (ix86_setup_frame_addresses): New.
- (struct machine_function): Add accesses_prev_frame.
- * config/i386/i386.h (FRAME_POINTER_REQUIRED): Call
- ix86_frame_pointer_required.
- (SUBTARGET_FRAME_POINTER_REQUIRED): New.
- (SETUP_FRAME_ADDRESSES): New.
- * config/i386/i386-protos.h: Update.
- * config/i386/sco5.h (SUBTARGET_FRAME_POINTER_REQUIRED): Rename
- from FRAME_POINTER_REQUIRED.
- * config/i386/svr3gas.h: Likewise.
- * config/i386/sysv3.h: Likewise.
- * config/i386/v3gas.h: Likewise.
-
-2001-02-08 Richard Henderson <rth@redhat.com>
-
- * config/sparc/sparc.c (function_arg_record_value_3): Fix
- calculation of the number of integer registers required.
- (function_arg_record_value): Likewise.
-
-2001-02-08 Jason Merrill <jason@redhat.com>
-
- * diagnostic.c (internal_error): Say "confused" after 1 error, not
- two. Print file and line with "confused" message.
-
- * dwarf2out.c (dwarf2out_line): Include filename in -dA output.
-
-Thu Feb 8 11:21:28 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * rtlanal.c (remove_node_from_expr_list): Correctly update PREV.
-
-2001-02-08 Bernd Schmidt <bernds@redhat.com>
-
- * final.c (cleanup_subreg_operands): The address of a MEM can
- contain SUBREGs.
-
- * config/ia64/ia64.c (ia64_variable_issue): Call group_barrier_needed_p
- for asms, too.
-
-2001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi (Incompatibilities): Update documentation of
- preprocessing numbers.
-
-2001-02-07 Jakub Jelinek <jakub@redhat.com>
-
- * c-decl.c (finish_enum): Revert part of 2000-01-05 change.
-
-2001-02-07 Mark Mitchell <mark@codesourcery.com>
-
- * config/rs6000/aix43.h (CPLUSCPLUS_CPP_SPEC): Define it.
-
- * defaults.h (CPLUSPLUS_CPP_SPEC): New macro.
- * gcc.c (struct compiler): Add cpp_spec field.
- (input_file_compiler): New variable.
- (do_spec_1): Allow a particular compiler to handle `%C'
- specially.
- (main): Store the current compiler in input_file_compiler.
- * tm.texi (CPLUSPLUS_CPP_SPEC): Document.
-
-2001-02-07 Zack Weinberg <zack@wolery.stanford.edu>
-
- * cpphash.h (struct spec_nodes): Add n_true and n_false.
- * cppinit.c (cpp_create_reader): Initialize them.
- (append_include_chain): cxx_aware arg might be unused.
- * cppexp.c (lex): In C++ mode, recognize 'true' and 'false'
- keywords and give them their phase 7 meaning. Pedwarn about
- this unless '__bool_true_false_are_defined' is defined.
-
-2001-02-07 Alexandre Oliva <aoliva@redhat.com>
-
- * lcm.c (optimize_mode_switching): Emit mode_set before the
- JUMP_INSN of an abnormal edge.
-
-2001-02-07 Bernd Schmidt <bernds@redhat.com>
-
- * builtins.c (expand_builtin_setjmp_receiver): Emit an ASM_INPUT as
- a scheduling barrier at the end.
-
- * tm.texi (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Document.
-
-2001-02-07 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (reload_outsf): Removed.
- (movsf_ie): Introduce constraints for FPUL loads and stores.
- (reload_insf): Broaden the output constraint.
-
- * config/elfos.h (INT_ASM_OP): Don't define it if it's already
- defined.
- * config/sh/sh.h (INT_ASM_OP, ASM_OUTPUT_CONSTRUCTOR,
- ASM_OUTPUT_DESTRUCTOR): Copy definitions from config/elfos.h.
-
-2001-02-06 Chandrakala Chavva <cchavva@redhat.com>
-
- * final.c: Revert my previous changes.
- * output.h: Make profile_label_no extern.
- * config/rs6000/rs6000.c (output_profile_hook): Use standard functions
- for generating label.
-
-2001-02-06 Laurynas Biveinis <lauras@softhome.net>
-
- * config/i386/djgpp.h: Add comments about standard paths.
- (MD_EXEC_PREFIX): Undefine before defining.
- (MD_STARTFILE_PREFIX): New.
-
-2001-01-30 Bruce Korb <bkorb@gnu.org>
-
- fixinc/fixincl.c(process): Emit error message only if appropriate :)
- (load_file): do not rely on load_file_data() to close file pointer
- fixinc/fixlib.c(load_file_data): do not close passed in file pointer
- fixinc/inclhack.def(irix_limits_const): add test_text
-
-2001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppexp.c (parse_defined): Improve diagnostics for invalid
- syntax.
-
-2001-02-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppmacro.c (cpp_get_token): Avoid pasting after a builtin.
-
-2001-02-06 Mark Mitchell <mark@codesourcery.com>
-
- * config/rs6000/rs6000.h (ASM_OUTPUT_SYMBOL_REF): Define.
- * config/rs6000/rs6000-protos.h (rs6000_output_symbol_ref): Declare.
- * config/rs6000/rs6000.c (VTABLE_NAME_P): New macro.
- (rs6000_output_symbol_ref): New function.
- (output_toc): Use VTABLE_NAME_P.
-
-Tue Feb 6 07:54:51 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * print-tree.c (print_node, case PARM_DECL):
- Print DECL_ARG_TYPE and DECL_ARG_TYPE_AS_WRITTEN.
-
- * stor-layout.c (reference_types_internal): New variable.
- (internal_reference_types): New function.
- (layout_type, case REFERENCE_TYPE): Make Pmode if internal.
- * tree.h (internal_reference_types): New declaration.
-
- * cse.c (find_best_addr): Fix typo in computing cost.
-
-Mon Feb 5 21:56:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * combine.c (nonzero_bits, case PLUS): If pointers extend unsigned
- and this is the sum of a pointer and a constant, we know the result
- did not overflow.
- (num_sign_bit_copies, case PLUS): Likewise.
- * explow.c (convert_memory_address): Remove opposite SUBREG.
- * function.c (instantiate_new_reg): New function (from common code).
- (instantiate_virtual_regs_1): Call it.
- For PLUS, handle if (plus (subreg (virt-reg) (const_int))
- if pointers sign- or zero-extend.
- * simplify-rtx.c (simplify_unary_operation, case ZERO_EXTEND):
- If pointers extend unsigned, use inside of SUBREG.
- (simplify_unary_operation, case SIGN_EXTEND): Likewise, if sign extend.
-
-2001-02-05 Benjamin Kosnik <bkoz@redhat.com>
-
- * Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Change to target
- subdir of gcc_gxx_include_dir.
- (gcc_gxx_target_include_dir): Remove.
-
-2001-02-05 Jeffrey Oldham <oldham@codesourcery.com>
-
- * dwarf2out.c: Revise DWARF2 Abbreviation Glossary comments.
- (dwarf2out_frame_debug_expr): Revise introductory comments to add
- a high-level description.
-
-2001-02-05 Chandrakala Chavva <cchavva@redhat.com>
-
- * final.c: Move the declaration of profile_label_no to ...
- * output.h: ... here.
- * function.c (expand_function_start): Call PROFILE_HOOK.
- * config/rs6000/aix.h: Define PROFILE_HOOK.
- * config/rs6000/rs6000-protos.h: output_profile_hook new.
- * config/rs6000/rs6000.c (output_profile_hook): Define.
- (output_prolog): Do nothing for ABI_AIX as it is taken care by
- output_profile_hook.
- tm.texi : Explain new macro PROFILE_HOOK.
-
-2001-02-06 Hans-Peter Nilsson <hp@axis.com>
-
- * extend.texi (Extended Asm): Do not say that semicolon is always
- a valid line-breaking character for GNU assemblers. Use
- newline-tab as the most commonly supported syntax. Use
- newline-tab rather than semicolon in multi-insn examples.
-
-2001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * Makefile.in (gcc_gxx_target_include_dir): Use $(target_alias).
-
-2001-02-05 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
- David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_return_addr): Use PIC
- code for AIX, even without flag_pic.
-
-2001-02-05 Jakub Jelinek <jakub@redhat.com>
-
- * c-typeck.c (common_type): push and pop binding level around
- calling common_type on function parameters.
-
-Mon Feb 5 14:30:37 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h (CPP_SPEC): Add missing space after -idirafter.
-
-Mon Feb 5 11:23:16 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/mips/mips.c (override_options): Fix typo in last change.
- (mips_make_temp_file): Call fatal_io_error, not pfatal_with_name.
- (mips_asm_file_end): Likewise; also pass more args to fatal_io_error.
-
-2001-02-05 Nathan Sidwell <nathan@codesourcery.com>
-
- * invoke.texi (-fdump-class-layout): Document.
- (-fdump-translation-unit): Use `=' as filename separator.
-
-2001-02-05 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (s-mlib): Don't build multilibs if
- --disable-multilib.
- (DRIVER_DEFINES): Adjust accordingly.
- (gcc.o): Likewise.
- (protoize.o): Likewise.
- (unprotoize.o): Likewise.
- * configure.in: Recognize --enable-multilib.
-
-2001-02-04 Mark Mitchell <mark@codesourcery.com>
-
- * Makefile.in (DRIVER_DEFINES): Fix quoting.
-
- * Makefile.in (site.exp): Always set HAVE_LIBSTDCXX_V3.
- * configure.in: Remove --enable-libstdcxx_v3 support.
- * configure: Regenerated.
-
-Sun Feb 4 15:52:44 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/avr/avr.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
- Call abort instead of fatal.
- (TRAMPOLINE_TEMPLATE): Call internal_error instead of fatal.
- * config/dsp16xx/dsp16xx.h (FUNCTION_PROFILER): Likewise.
- (FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Likewise.
- (TRAMPOLINE_TEMPLATE, INITIALIZE_TRAMPOLINE): Likewise.
- (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
- * config/rs6000/rs6000.h (RETURN_ADDRESS_OFFSET): Likewise.
-
- * diagnostic.h (set_internal_error_function): Renamed.
- * toplev.h (internal_error): Renamed from fatal.
- (pfatal_with_name): Deleted.
- (fatal_io_error): Now has printf-style arguments.
- * diagnostic.c (pfatal_with_name): Deleted.
- (fatal_io_error): Rework to have args in printf-style.
- (set_internal_error_function): Renamed from set_fatal_function.
- (internal_error): Renamed from fatal.
- (error_recursion, fancy_abort): Call internal_error instead of fatal.
- * dwarf2out.c (get_cfa_from_loc_descr): Likewise.
- * emit-rtl.c (gen_realpart, gen_imagpart): Likewise.
- * expr.c (check_max_integer_computation_mode, expand_expr): Likewise.
- * flow.c (verify_flow_info): Likewise.
- * config/arm/arm.c (thumb_unexpanded_epilogue): Likewise.
- * config/mips/mips.c (save_restore_insns): Likewise.
-
- * except.c (duplicate_eh_handlers): Call abort instead of fatal.
- * flow.c (verify_flow_info): Likewise.
- * config/arm/arm.c (thumb_load_double_from_address): Likewise.
- * config/avr/avr.c (pttreg_to_str, unique_section): Likewise.
- (avr_normalize_condition): Likewise.
- * config/c4x/c4x.c (c4x_emit_libcall, c4x_valid_operands): Likewise.
- * config/dsp16xx/dsp16xx.c (dsp16xx_reg_class_from_letter): Likewise.
- (limit_reload_class, double_reg_to_memory): Likewise.
- (print_operand_address, emit_1600_code_shift): Likewise.
- (gen_tst_reg, gen_compare_reg): Likewise.
- * config/m68hc11/m68hc11.c (m68hc11_emit_libcall): Likewise.
- * config/dsp16xx/dsp16xx.c (dsp16xx_invalid_register_for_compare):
- Deleted.
- * config/dsp16xx/dsp16xx.md (unnamed cmphi): Call abort instead of it.
-
- * c-parse.in (methoddef): Call fatal_error instead of fatal.
- * objc/objc-act.c (build_ivar_chain): Likewise.
- * dwarfout.c (dwarfout_init): Call fatal_io_error instead of
- pfatal_with_name.
- * graph.c (clean_graph_dump_file): Likewise.
- * profile.c (init_branch_prob): Likewise.
- * objc/objc-act.c (objc_init): Likewise.
-
- * config/arm/arm.c (arm_override_options): Make errors non-fatal.
- * config/avr/avr.c (avr_override_options): Likewise.
- * config/c4x/c4x.c (c4x_expand_prologue): Likewise.
- * config/dsp16xx/dsp16xx.c (function_prologue): Likewise.
- * config/h8300/h8300.c (h8300_init_once): Likewise.
- * config/mips/mips.c (override_options): Likewise.
- * config/i386/i386.c (override_options): Likewise, rework.
- * config/m68k/m68k.c (override_options): Likewise.
-
- * config/dsp16xx/dsp16xx.c (print_operand): Call output_operand_lossage
- instead of fatal.
- * config/mips/mips.c (print_operand): Likewise.
- * hash.c (hash_allocate): Don't check for failure returns from
- obstack functions that can't fail.
- (hash_table_init_n, hash_table_init): Likewise; also now return void.
- * hash.h (hash_table_init_n, hash_table_init): Now return void.
- * objc/objc_act.c (objc_check_decl): Remove unneeded fatal call.
- (get_object_reference): Likewise.
-
-2001-02-04 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (all_cores): Add 710T, 720T, 740T, 940T, 9e,
- StrongARM1110, 10TDMI, and 1020T.
-
-2001-02-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.h (MULTILIB_ISA_DEFAULT): Don't use #elif.
-
-2001-02-04 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (movdf load split): Pass register number to
- FP_OR_XD_REGISTER_P.
-
-2001-02-04 Mark Mitchell <mark@codesourcery.com>
-
- * cppinit.c (BC): New macro.
- (builtin_array): Add __GXX_WEAK__.
- * cpplib.h (builtin_type): Add BT_WEAK.
- * cppmacro.c (builtin_macro): Handle BT_WEAK.
- * defaults.h (SUPPORTS_ONE_ONLY): Define.
- * varasm.c (SUPPORTS_ONE_ONLY): Do not define.
-
-2001-02-03 Jakub Jelinek <jakub@redhat.com>
-
- * cppinit.c (append_include_chain): Honor NO_IMPLICIT_EXTERN_C.
-
-2001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpphash.h: Rename _ALIGN POOL_ALIGN.
- * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
-
-2001-02-03 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpphash.h: Rename ALIGN _ALIGN.
- * cpplex.c (new_chunk, _cpp_pool_reserve): Update.
-
-Fri Feb 2 23:15:29 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h (CPP_SPEC): Reorganize YA to better handle cross
- compilation environment.
- * config/i386/t-cygwin (T_CPPFLAGS): Define CYGWIN_CROSS_DIR to allow
- control over location of cygwin includes and libs.
-
-2001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
-
- * c4x.h (HARD_REGNO_CALL_PART_CLOBBERED): Fix typo.
-
-2001-02-02 lars brinkhoff <lars@nocrew.org>
-
- * md.texi (Standard Names): remove reference to spur.md.
-
-2001-02-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz)
-
- * c4x.h (IS_INT_CALL_SAVED_REG, IS_FLOAT_CALL_SAVED_REG): Define.
- (HARD_REGNO_CALL_PART_CLOBBERED): Use IS_FLOAT_CALL_SAVED_REG.
- (INITIAL_FRAME_POINTER_OFFSET, INITIAL_ELIMINATION_OFFSET): Likewise.
- * c4x.c (c4x_hard_regno_rename_ok): Use IS_XXX_CALL_SAVED_REG.
- (c4x_expand_prologue, c4x_expand_epilogue): Likewise.
-
-2001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x.c (group1_reg_operand, group1_mem_operand, arx_reg_operand,
- c4x_arn_reg_operand, c4x_arn_mem_operand): Do not check register
- number before reload.
- (c4x_adjust_cost): Return zero before reload.
- * c4x.md (load_immed_address+1, load_immed_address+2): Do not
- split before reload.
-
-2001-02-03 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x.c (c4x_hard_regno_rename_ok): New.
- * c4x-protos.h (c4x_hard_regno_rename_ok): New.
- * c4x.h (HARD_REGNO_RENAME_OK): Define.
-
-Fri Feb 2 20:03:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * diagnostic.h: Add missing "extern" in all declarations.
-
-2001-02-02 Alex Samuel <samuel@codesourcery.com>
-
- * Makefile.in (gcc_gxx_target_include_dir): Generate dynamically
- as for gcc_gxx_include_dir.
-
-2001-02-02 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi, invoke.texi: Update -Wtraditional documentation.
-
-2001-02-02 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (output_far_jump): Don't use braf on SH1. Emit
- label before alignment to be used as the braf base address.
- * config/sh/sh.md (length): Use longer lengths for SH1 PIC far
- branches.
- (casesi_jump_2): Require at least TARGET_SH2.
-
- * config/float-sh.h (LDBL_EPSILON, LDBL_MIN, LDBL_MAX): Prevent
- truncation to 32-bit doubles on -m3e and -m4-single-only.
-
-2001-02-02 Mark Mitchell <mark@codesourcery.com>
-
- * gcc.c (init_gcc_specs): New function. Make -shared-libgcc
- the default when building a shared object.
- (init_spec): Use it.
- * testsuite/lib/g++.exp: Include the directory where libgcc
- is located to the LD_LIBRARY_PATH list.
- * invoke.texi (-shared-libgcc): Document the cases in which
- GCC defaults to using the shared libgcc.
-
-2001-02-02 Alexandre Oliva <aoliva@redhat.com>
-
- * config/fp-bit.h (MAX_USI_INT, MAX_SI_INT): Don't assume
- unsigned is wide enough.
- (BITS_PER_SI): New.
- * config/fp-bit.c (_fpmul_parts): Don't assume 32-bits SI.
- (si_to_float): Likewise.
- (float_to_si, float_to_usi): Use BITS_PER_SI.
-
-2001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
-
- * dwarf2out.c: Added explanation of abbreviations.
- (def_cfa_1): Added comments listing DWARF2 instructions.
- (cfa_temp_reg): Removed in favor of cfa_temp.
- (cfa_temp_value): Removed in favor of cfa_temp.
- (cfa_temp): New global variable.
- (dwarf2out_frame_debug_expr): Added extensive introductory
- comments explaining the function's transformations. Revised to
- use cfa_temp. Added some rtx checking. Generalize IOR case.
- (dwarf2out_frame_debug): Revised to use cfa_temp.
- (output_aranges): Cast as "unsigned" to avoid warning.
- * rtl.texi (RTX_FRAME_RELATED_P): Revise entry to emphasize better
- explain which instructions must be marked.
-
-2001-02-01 Richard Henderson <rth@redhat.com>
-
- * local-alloc.c (update_equiv_regs): Copy INSN_CODE to the
- new instruction.
-
-2001-02-01 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/crt1.asm (main_k): Modified so that start calls
- ___setup_argv_and_call_main.
-
-2001-02-01 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpphash.h (struct cpp_buffer): Move saved_flags from cpp_reader.
- * cpplex.c (_cpp_lex_token): New token picks up the saved flags,
- and AVOID_LPASTE is cleared on meeting an unescaped newline.
- * cppmacro.c (builtin_macro): Set builtin flags here.
- (paste_all_tokens): Preserve AVOID_LPASTE on pasted token.
- (replace_args): Clarify intent.
- (cpp_get_token): Macro expansion tokens get the saved flags.
- Update.
- * cppmain.c (scan_buffer): Remove now-redundant print.printed
- check.
-
-2001-02-01 Jeffrey Oldham <oldham@codesourcery.com>
-
- * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Reverse change of
- 2001-Jan-29.
-
-Thu Feb 1 07:22:41 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * builtins.c (expand_builtin_alloca): allocate_dynamic_stack_space
- returns Pmode pseudo, but we need ptr_mode.
- * explow.c (allocate_dynamic_stack_space): Use plus_constant.
- Remove bogus conversions; use HOST_WIDE_INT for size.
- Don't use TARGET if wrong mode.
-
- * config/i386/i386.c (ix86_compute_frame_size): Allow
- stack_alignment_needed to be non-default even if size is zero.
-
-2001-01-31 Alan Modra <alan@linuxcare.com.au>
-
- * pa.c (hppa_init_pic_save): New function.
- * pa.h (hppa_init_pic_save): Declare.
- * pa.md (call, call_value, sibcall, sibcall_value): Use
- the above instead of duplicated code.
-
- * pa.c (hppa_encode_label): Correct size of alloca buffer
- so we don't overrun it. Correct leading `*' case.
- * pa.h (STRIP_NAME_ENCODING): Simplify now that we don't
- need to handle `*@'.
- (FUNCTION_NAME_P): Likewise.
-
-2001-01-31 Richard Henderson <rth@redhat.com>
-
- * config.gcc (alpha-osf5): Use float-i128.h.
-
- * config/float-i128.h (FLT_EVAL_METHOD, DECIMAL_DIG): Define.
- * config/float-i32.h: Likewise.
- * config/float-i64.h: Likewise.
- * config/float-sh.h: Likewise.
- * config/float-sparc.h: Likewise.
-
-2001-01-31 DJ Delorie <dj@redhat.com>
-
- * expmed.c (extract_bit_field): allow non-integral modes if we
- want to extract a whole register from itself.
-
-2001-01-31 Jakub Jelinek <jakub@redhat.com>
-
- * c-typeck.c (set_init_index): If first is equal to last, assume as
- if it was not a range at all.
-
-2001-01-31 Alexandre Oliva <aoliva@redhat.com>
-
- * config/fp-bit.c: Include tm.h.
- (float_to_si): Don't assume SImode is 32-bits wide.
- (float_to_usi): Likewise.
-
-2001-01-31 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (structsp): Pedwarn when "enum foo" refers to an
- incomplete type.
- (typename): Call pending_xref_error after parsing typed_typespecs.
- * c-decl.c (lookup_tag): Give error immediately rather than
- leaving it pending if the tag of the wrong type is in the same
- binding level.
- (xref_tag): Don't pedwarn for forward declarations of enum types
- here.
- * gcc.texi (Actual Bugs): Remove entry for misuse of struct, union
- and enum tags.
-
-2001-01-31 Alexandre Oliva <aoliva@redhat.com>
-
- * config/float-sparc.h (LDBL_MAX) [sparc32]: Fix typo.
-
-2001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.c (T_ELIF): Move to STDC89, not that it matters.
- (_cpp_handle_directive): Suggest not using #elif with -Wtraditional.
-
-2001-01-31 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpphash.h (struct cpp_reader): New saved_flags.
- * cppmacro.c (cpp_get_token): Use saved_flags to remember
- to avoid a paste after a pasted token.
-
-2001-01-31 Alexandre Oliva <aoliva@redhat.com>
-
- * libgcc2.h (Wtype_MAX, Wtype_MIN): Define.
- * libgcc2.c (__fixunssfSI, __fixunsdfSI, __fixunsxfSI): Use
- Wtype_MIN instead of LONG_MIN.
-
-2001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
-
- * fixinc/fixincl.tpl: Add 2001 to copyright. Change name of
- README file.
- * fixinc/fixincl.x: Regenerated.
- * fixinc/inclhack.def (irix_limits_const): New definition to
- convert "const" to "__const" in limits.h.
-
-2001-01-30 Jeffrey Oldham <oldham@codesourcery.com>
-
- * fixinc/genfixes (AG): Fix "autogen4" thinko.
-
-2001-01-30 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * regmove.c (try_auto_increment): Change REG_DEAD into REG_UNUSED
- when register dies in the insn.
-
-2001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * diagnostic.c (fatal): Fix word wrap.
-
-2001-01-30 Alexandre Oliva <aoliva@redhat.com>
-
- * combine.c (try_combine): Fix SUBREG setting for
- HOST_BITS_PER_WIDE_INT >= 2 * BITS_PER_WORD.
-
-2001-01-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * jump.c (comparison_dominates_p): Don't try to handle UNKNOWN
- comparison codes.
-
-2001-01-30 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-decl.c (c_expand_body): Check TYPE_SIZE_UNIT (ret_type)
- is not NULL.
- * toplev.c (decode_W_option): Update warn_larger_than
- unconditionally for each processed switch.
-
-2001-01-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (pa_init_machine_status): Initialize pic_offset_table_save_rtx
- to NULL_RTX.
- (hppa_expand_prologue): Delete code to save pic offset table register
- in the function prologue.
- * pa.h (PIC_OFFSET_TABLE_SAVE_RTX): Correct type in comment.
- * pa.md (call, call_value, sibcall, sibcall_value): Save the pic offset
- table register at the beginning of the function after the prologue.
-
-2001-01-29 lars brinkhoff <lars@nocrew.org>
-
- * tm.texi (PUSH_ROUNDING): Remove duplicate lines.
-
-2001-01-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
- Jeff Law <law@redhat.com>
-
- * pa.md (return): Revise comment for trivial return.
- (return_internal): Non-trivial return pattern for non-PIC code.
- (return_internal_pic): Non-trivial return pattern for PIC code.
- It uses the PIC register to ensure it is restored after
- function calls.
- (epilogue): Generate appropriate return for PIC and non-PIC code.
-
-Mon Jan 29 23:53:14 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h: Fix -mno-cygwin search path for link.
-
-2001-01-29 DJ Delorie <dj@redhat.com>
-
- * combine.c (if_then_else_cond): Pass the correct mode to
- operand_subword() for constants.
-
-Mon Jan 29 20:38:19 2001 Christopher Faylor <cgf@cygnus.com>
-
- * config/i386/cygwin.h: Add w32api to include search. Search different
- directories in a cross-build environment.
-
-2001-11-29 Tim Josling <tej@melbpc.org.au>
-
- * tree.h (TYPE_STUB_DECL): Add documentation.
-
-2001-11-29 Laurynas Biveinis <lauras@softhome.net>
-
- * sdbout.c (sdbout_one_type): Skip types with indeterminate size.
- (sdbout_field_types): Likwise. Fix use of host_integerp.
-
-2001-01-29 Thomas Pfaff <tpfaff@gmx.net>
-
- * mingw32.h: Override STARTFILE_SPEC and LINK_SPEC declared in
- cygwin.h.
-
-2001-01-29 Jeffrey Oldham <oldham@codesourcery.com>
-
- * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Revise definition
- to use flag_gnu_linker.
-
-2001-01-29 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.c (T_BAD_DIRECTIVE): Remove.
- (_cpp_init_stacks): Loop from 0 to N_DIRECTIVES - 1.
-
-2001-01-29 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * tree.c, tree.h (build_parse_node): Remove; was identical to
- build_nt.
- * c-lang.c (start_cdtor), objc/objc-act.c
- (build_module_descriptor): Use build_nt instead of
- build_parse_node.
-
-2001-01-29 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (addqi_1_lea): Fix mode (QI instead of HI).
- (testqi_1, andqi_2): If widening to SImode, make sure CONST_INT does
- not have any upper bits set.
-
-2001-01-29 Phil Edwards <pme@sources.redhat.com>
-
- * COPYING.LIB: Update to LGPL 2.1 from the FSF.
-
-2001-01-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * stmt.c (estimate_case_costs): Use integer_minus_one_node.
-
- * tree.c (build_common_tree_nodes_2): Set integer_minus_one_node.
-
- * tree.h (tree_index): Add new element TI_INTEGER_MINUS_ONE.
- (integer_minus_one_node): Define.
-
-2001-01-28 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.in (bootstrap2-lean): Fix typo.
-
-2001-01-28 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpphash.c (_cpp_cleanup_hashtable, _cpp_lookup_with_hash)
- : Don't set fe_value.
- * cpplib.h (AVOID_LPASTE): New flag.
- (struct cpp_hashnode): Remove fe_value.
- * cpplex.c (cpp_avoid_paste): Don't paste '.' with a number.
- * cppmacro.c (builtin_macro): Don't set flags here.
- (replace_args): Set AVOID_LPASTE flag on first token of an
- argument, and the token following it.
- (cpp_get_token): Set AVOID_LPASTE flag on first token of a
- macro expansion, and on the token following it. Do it for
- builtins too.
- * cppmain.c (scan_buffer): Avoid pasting only flagged tokens.
-
-2001-01-27 Richard Henderson <rth@redhat.com>
-
- * config/alpha/t-ieee: Remove multilibbing.
- (TARGET_LIBGCC2_CFLAGS): Add -mieee.
-
-2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * configure.in: Arrange to include defaults.h in [ht]config.h/tm.h.
-
- * Makefile.in: Remove all dependencies on defaults.h.
- * builtins.c: Don't include defaults.h.
- * c-common.c: Likewise.
- * c-decl.c: Likewise.
- * c-pragma.c: Likewise.
- * c-typeck.c: Likewise.
- * combine.c: Likewise.
- * i386.c: Likewise.
- * frame-ia64.c: Likewise.
- * cppexp.c: Likewise.
- * crtstuff.c: Likewise.
- * dbxout.c: Likewise.
- * dwarf2out.c: Likewise.
- * dwarfout.c: Likewise.
- * emit-rtl.c: Likewise.
- * except.c: Likewise.
- * expr.c: Likewise.
- * final.c: Likewise.
- * frame-dwarf2.c: Likewise.
- * libgcc2.c: Likewise.
- * optabs.c: Likewise.
- * profile.c: Likewise.
- * sdbout.c: Likewise.
- * toplev.c: Likewise.
- * tradcif.y: Likewise.
- * tree.c: Likewise.
- * varasm.c: Likewise.
-
-2001-01-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_fputs): Use size_one_node when
- transforming into fwrite.
-
-2001-01-27 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi (Attribute Syntax): New section.
-
-2001-01-27 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * fixproto: Correctly install synthesized unistd.h and stdlib.h when
- they didn't need fixing.
-
-2001-01-27 Janis Johnson <janis@us.ibm.com>
-
- * config.gcc (i[34567]86-sequent-{ptx4*,sysv4*}): Use usegas.h
- if appropriate.
- * config/ptx4.h: Several fixes to build on DYNIX/ptx v4.[456], and
- to remove macro definitions that are duplicated from elfos.h.
-
-2001-01-27 Richard Henderson <rth@redhat.com>
-
- * config/i386/sco5gas.h: Move ...
- * config/usegas.h: ... here.
- * config.gcc (i[34567]86-*-sco3.2v5) [tm_file]: Update.
-
-2001-01-27 Jakub Jelinek <jakub@redhat.com>
-
- * c-typeck.c (struct constructor_stack): Add range_stack member.
- (really_start_incremental_init): Clear it.
- (push_init_level): Save constructor_range_stack and clear it if
- pushing explicit braces.
- (pop_init_level): abort if constructor_range_stack is nonzero at
- explicit closing brace. Restore saved constructor_range_stack if
- not implicit.
-
-2001-01-27 Alexandre Oliva <aoliva@redhat.com>
-
- * expr.c (emit_move_insn): Add REG_EQUAL note when constant loaded
- into register was forced into memory.
-
-2001-01-27 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.in: Remove uses of + before $(MAKE).
-
-2001-01-26 Richard Henderson <rth@redhat.com>
-
- * stmt.c (cost_table): Remove.
- (COST_TABLE, cost_table_initialized): New.
- (estimate_case_costs): Use the later instead of the former.
- (balance_case_nodes): Likewise.
-
-2001-01-26 Richard Henderson <rth@redhat.com>
-
- * alias.c (objects_must_conflict_p): Read-only slots may not
- conflict despite having the same type.
-
-2001-01-27 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (loop_giv_reduce_benefit): Copy mode size into
- int variable.
- (check_ext_dependant_givs): Initialize u_start_val and
- u_end_val.
- (load_mems): Make last_max_reg unsigned.
- (try_swap_copy_prop): Use INSN_P and initialize set.
-
-Fri Jan 26 23:22:58 2001 Denis Chertykov <denisc@overta.ru>
-
- * README.AVR : Removed.
-
-Fri Jan 26 11:37:26 2001 Jeffrey A Law (law@cygnus.com)
-
- * pa-64.h (text_section): Remove declaration.
-
- * pa.md (return_internal): Remove mode on PIC register use.
-
-2001-01-25 lars brinkhoff <lars@nocrew.org>
-
- * tm.texi (DATA_ALIGNMENT, LOCAL_ALIGNMENT, ASM_OPEN_PAREN,
- ASM_CLOSE_PAREN): fix typos.
-
-2001-01-25 Mark Mitchell <mark@codesourcery.com>
-
- * acconfig.h: Define `const' to the empty string if neither
- __STDC__ nor __cplusplus is defined.
- * config.in: Regenerated.
-
-2001-01-25 David Edelsohn <edelsohn@gnu.org>
-
- * config.gcc (rs6000-ibm-aix[5-9]*): Change to aix51.h.
- * collect2.c (main): Delete importf. Add ".obj" file extension.
- (GCC_CHECK_HDR): Handle AIX V5 new magic number.
- (aix_std_libs): Add additional AIX libraries to skip.
- * config/rs6000/aix.h (MY_ISCOFF): Add AIX V5 new magic number.
- * config/rs6000/aix51.h: New file.
-
-2001-01-25 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (loop_call_insn_emit_before, loop_call_insn_hoist): New.
- (loop_insn_emit_before): No longer static.
- (move_movables): Replace emit_insn_after with loop_insn_emit_after.
- (loop_givs_rescan, load_mems): Likewise.
- (check_dbra_loop): Replace emit_insn_before with loop_insn_emit_before.
- (maybe_eliminate_biv_1):
- (move_movables): Replace emit_call_insn_before with
- loop_call_insn_hoist.
- * loop.h (loop_insn_emit_before): Add.
- * unroll.c (copy_loop_body): Replace emit_insn_before with
- loop_insn_emit_before.
-
-2001-01-25 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * diagnostic.c (fatal): Request preprocessed source.
-
-Thu Jan 25 02:01:16 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * c-decl.c (duplicate_decls): If different_binding_level is nonzero,
- olddecl has argument types and newdecl has none, use the argument
- types from olddecl.
-
-2001-01-24 Ulrich Drepper <drepper@redhat.com>
-
- * dwarf2out.c (prefix_of): New function. Determine longest common
- prefix of the two arguments. The units are whole path components.
- (output_file_names): When adding a new directory find the one entry
- with the longest common prefix already in the list. Artificially
- generate entry if there is none for this prefix.
- Fix test to check whether the zeroth directory entry is used.
-
-Wed Jan 24 23:51:55 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * reload1.c (reload_reg_free_for_value_p): New parameter start_regno.
- Changed all callers. Take it into account when deciding if a
- previously loaded value matches.
-
-2001-01-24 Richard Henderson <rth@redhat.com>
-
- * reload.c (find_reloads_subreg_address): Fail the substitution
- if the resulting address is insufficiently aligned.
-
-2001-01-24 DJ Delorie <dj@redhat.com>
-
- * combine.c (combine_simplify_rtx): If the modes are all VOIDmode,
- check the original operand's mode also.
- * simplify-rtx.c (simplify_ternary_operation): Ditto.
-
-2001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-parse.in (cast_expr): Move compound literals from here ...
- (primary): ... to here. Use standard terminology "compound
- literal" instead of "constructor expression".
-
-2001-01-24 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.1, cpp.1: Regenerate.
-
-2001-01-24 Alexandre Oliva <aoliva@redhat.com>
-
- * calls.c (emit_library_call_value_1): Memory slot for
- pass-by-reference argument should have the mode of the argument,
- not of the pointer to it.
-
-2001-01-24 Tom Tromey <tromey@redhat.com>
-
- * gcc.texi (G++ and GCC): Mention gcj manual.
- (Standards): Link to section of manual mentioning gcj/Java
- compatibility.
-
-2001-01-24 Jakub Jelinek <jakub@redhat.com>
-
- * cppfiles.c (_cpp_read_file): Add to dependencies if requested.
- * cppinit.c (cpp_start_read): Remove deps_add_dep call.
- * tradcpp.c (main): Add -imacros or -include'd dependencies
- for -M*.
- * cpp.texi (-M, -MM): Document -M -include behavior.
-
-2001-01-24 Roger Collins <roger@ProProject.com>
-
- * config/i386/xm-i386.h: Make __i386__ a boolean macro.
-
-2001-01-24 Will Cohen <wcohen@redhat.com>
-
- * config/mips/abi64.h (RETURN_IN_MEMORY): Always take into account
- whether registers are 32 bits or 64 bits in size.
-
-2001-01-24 Ben Elliston <bje@redhat.com>
-
- * config/m32r/m32r.h (PREDICATE_CODES): Remove m32r_not_same_reg.
-
-2001-01-24 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.md (builtin_longjmp_internal): New.
- (builtin_longjmp): Use it instead of emit_indirect_jump.
-
-2001-01-23 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * bb-reorder.c (make_reorder_chain_1): Handle case where
- jump edge goes to the same block as the fallthru edge.
-
-2001-01-23 Jim Wilson <wilson@redhat.com>
-
- * dwarf2out.c (dwarf2out_line): Make last_file_num be unsigned.
- * frame.h (__ia64_personality_v1): Add prototype.
- * libgcc2.c (ia64_throw_helper): Change personality declaration to
- prototype form. Add void * cast to first argument to personality
- call.
- * real.c (e113toe): Surround with INTEL_EXTENDED_IEEE_FORMAT ifdefs.
- (asctoe113): Likewise.
- * config/ia64/frame-ia64.c: Include eh-common.h.
- * config/ia64/ia64-protos.h (sdata_section, sbbs_section): Add
- prototypes.
- * config/ia64/ia64.c (emit_insn_group_barriers): Add ATTRIBUTE_UNUSED
- to dump parameter.
- (itanium_split_issue): Add prototype.
- (gen_nop_type): Ifdef out.
- (find_best_packet): Initialize best_packet.
- (ia64_encode_section_info): New local string. Use for ggc_alloc_string
- result.
- * config/ia64/ia64.h (ASM_OUTPUT_LONG_DOUBLE): Use 0L not 0.
- * config/ia64/ia64.md (bsp_value): Add explicit stop bit at start.
- (flushrs): Add explicit stop bit at end.
- * config/ia64/lib1funcs.asm (__ia64_restore_stack_nonlocal): Change
- trailing \ to >.
-
-2001-01-23 Chris Demetriou <cgd@broadcom.com>
-
- * libgcc-std.ver (GCC_3.0): Add __terminate_func_set to list
- of EH symbols.
- * libgcc2.c (__terminate_func): Make variable static.
- (__terminate_set_func): New function to set __terminate_func.
- * libgcc2.h (__terminate_func_ptr): New typedef.
- (__terminate_set_func): New function.
-
-2001-01-23 Richard Henderson <rth@redhat.com>
-
- * flow.c (init_propagate_block_info): Don't consider unchanging
- memories for dead frame store elimination.
-
-2001-01-23 Richard Henderson <rth@redhat.com>
-
- * varasm.c (UNIQUE_SECTION): Move default implementation ...
- * defaults.h: ... here.
-
-2001-01-24 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * c4x.h (TARGET_LOAD_DIRECT_MEMS): Define.
-
-2001-01-23 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (lex_charconst): Fix typo: s/p/str.
-
-2001-01-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000.h (rs6000_return_addr): Move prototype from here...
- * rs6000-protos.h (rs6000_return_addr): ...to here.
- (rs6000_init_expanders): Delete prototype.
-
-2001-01-23 Nick Clifton <nickc@redhat.com>
-
- * invoke.texi: Replace , with \, inside @gccoptlist macros.
- (Spec Files): Document %B and %j and %. and %v3 and %M and
- %{S*&T} spec switches.
-
-2001-01-24 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x.c (c4x_r11_set_p): Calculate rtx code correctly.
-
-2001-01-23 Chris Demetriou <cgd@sibyte.com>
- Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpperror.c: Merge handlers of PEDWARN and WARNING.
- Have -Werror make pedantic warnings errors, like the
- rest of GCC.
-
-2001-01-23 Phil Edwards <pme@sources.redhat.com>
-
- * c-tree.texi (IDENTIFIER_LENGTH): Fix typo.
-
-2001-01-23 Jakub Jelinek <jakub@redhat.com>
-
- * integrate.h (struct inline_remap): Add compare_src, compare_mode.
- * integrate.c (expand_inline_function): Initialize them.
- (subst_constants): If changing COMPARE so that both its arguments
- will be VOIDmode and the comparison mode will be lost, note
- compare_mode. Use the recorded compare_mode to optimize
- IF_THEN_ELSE.
-
-2001-01-23 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (new_die): Use xcalloc.
- (output_die): Abort rather than emit a local reference to offset 0.
-
-2001-01-17 Andrew Haley <aph@redhat.com>
-
- * libgcc2.c (get_reg_addr): Don't abort if we haven't got a copy
- of a saved register; return NULL instead.
- (copy_reg): Take a pointer to a source register rather than a
- frame_state.
- (next_stack_level): Remember the address in the stack frame of all
- saved registers.
- Use the saved register pointer array as the source of the CFA.
- (throw_helper): Rewrite. Unwind once rather than twice and keep
- track of saved registers as we go.
-
-2001-01-23 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x-protos.h (c4x_legitimize_reload_address): Remove.
- * c4x.c (c4x_legitimize_reload_address): Remove.
- * c4x.h (LEGITIMIZE_RELOAD_ADDRESS): Rewrite to generate correct
- reload address for ldp(k) insn.
-
-Mon Jan 22 20:53:47 2001 Jeffrey A Law (law@cygnus.com)
-
- * pa.md (return_internal): Add a USE of the PIC register to ensure
- it is restored after each call.
- (return expander): Corresponding changes.
-
-2001-01-22 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * rs6000.h (INIT_EXPANDERS): Delete.
- (RETURN_ADDR_RTX): Call rs6000_return_addr().
- * rs6000.c (rs6000_override_options): Call *_machine_status from
- here...
- (rs6000_init_expanders): ...instead of here. Delete.
- (rs6000_mark_machine_status): New function.
- (rs6000_init_machine_status): Use xcalloc.
- (rs6000_return_addr): Generate RTX for the return address.
- (rs6000_ra_ever_killed): New, check if LR was ever destroyed.
- (rs6000_stack_info): Use it.
-
-2001-01-22 Thomas Pfaff <tpfaff@gmx.net>
-
- * gthr-win32.h: Include errno.h to get a declaration for
- EINVAL and _mingw.h if the target is mingw32.
-
-2001-01-22 Andres Felipe Vargas <avargas@teletulua.com.co>
-
- * cpp.texi: Correct typos.
-
-Mon Jan 22 13:59:09 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * explow.c (probe_stack_range): Ensure value passed to
- stack_check_libfunc is ptr_mode, not Pmode.
-
-Mon Jan 22 16:53:06 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * recog.c (validate_replace_rtx_1): In ZERO_EXTEND / SIGN_EXTEND
- case, don't use operand_subword to calculate a SUBREG that is
- wider than a word.
-
- * rtl.texi: Comparisons yield 0 or STORE_FLAG_VALUE.
-
-2001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x.c (c4x_valid_rptb_p, c4x_label_ref_used_p): New functions.
- (c4x_rptb_insert): Call c4x_valid_rptb_p to check if repeat block is
- valid. If not replace it by equivalent insns.
-
-2001-01-22 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
-
- * c4x.c (c4x_check_legit_addr): Only check CONST. Not if CONST
- contains SYMBOL_REF, LABEL_REF and CONST_INT.
- (c4x_U_constraint, symbolic_address_operand): Likewise.
- (c4x_immed_float_constant): Do not check if CONST_DOUBLE is in
- memory.
- (c4x_r11_set_p, c4x_check_laj_p): New functions.
- * c4x-protos.h (c4x_check_laj_p): Add prototype.
- * c4x.md (in_annul_slot_3): Do not allow auto-increment in last
- anulling slot because of silicon bug.
- (laj, lajv): Call c4x_check_laj_p to check for silicon bug.
-
-2001-01-22 Alan Modra <alan@linuxcare.com.au>
-
- * cppexp.c (parse_charconst): Change `mask' type to agree
- with parse_escape.
-
-2001-01-21 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_asm_file_end): Disable putting
- pic_label_name in a linkonce section.
-
-2001-01-17 Philipp Thomas <pthomas@suse.de>
-
- * aclocal.m4 (AM_WITH_NLS): Add -lintl to LIBS if gettext was
- found in libintl.
- * configure: Regenerate.
-
-Sun Jan 21 02:38:56 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * expmed.c (synth_mult, expand_mult_highpart, expand_divmod): Guard
- uses of shift_cost, shiftadd_cost and shiftsub_cost with bound checks.
-
-Sun Jan 21 09:44:17 2001 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.c (ret_cond_branch): New argument (reverse) added.
- If REVERSE nonzero then condition code in X must be reversed.
- (encode_section_info): Optimize if/else.
- (avr_function_value): Fix formatting.
-
- * config/avr/avr.md (branch): Call to ret_cond_branch changed.
- (difficult_branch): Likewise.
- (rvbranch): Likewise.
- (difficult_rvbranch): Likewise.
-
- * config/avr/avr-protos.h (ret_cond_branch): Prototype changed.
-
- * config/avr/libgcc.S: Fix comment.
-
-2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * sdbout.c (PUT_SDB_DEF): Fix after last bogus change.
-
-2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * cppinit.c (INO_T_EQ): Don't use #elif, fix formatting.
-
-2001-01-20 Michael Sokolov <msokolov@ivan.Harhan.ORG>
-
- * aclocal.m4 (gcc_AC_FUNC_STRSTR): New macro.
- * configure.in (gcc_AC_FUNC_STRSTR): Add invokation.
- * configure, config.in: Regenerate.
- * Makefile.in (STRSTR, HOST_STRSTR, USE_HOST_STRSTR): New variables.
- (LIBDEPS, HOST_LIBDEPS, LIBS, HOST_LIBS): Add strstr handling.
- (strstr.o, $(HOST_PREFIX_1)strstr.o): New rules.
- (doprint.o): New rule.
-
-2001-01-20 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-typeck.c (digest_init): Handle boolean types as scalars.
-
-Sat Jan 20 12:46:57 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * stmt.c (expand_return): Don't return anything if size is zero.
- Delete redundant assignment to BYTES.
- * expr.c (move_block_from_reg): Do nothing if NREGS is zero.
-
-2001-01-20 Marek Michalkiewicz <marekm@linux.org.pl>
-
- * config/avr/avr.h (INIT_TARGET_OPTABS): Remove most of it, was
- the same as the default library function names.
- * config/avr/avr.md: Document special characters after '%'.
- (mulqi3, mulhi3, mulsi3): Call libgcc.S functions ourselves,
- knowing which of the call-used registers are really clobbered.
- (divmodqi4, udivmodqi4, divmodhi4, udivmodhi4, divmodsi4, udivmodsi4):
- New. Both quotient and remainder from one libgcc.S call.
- * config/avr/libgcc.S: Optimize mul/divmod for the new insns above,
- clobber as few registers as possible.
- * config/avr/t-avr (LIB1ASMFUNCS): Adjust for the above changes.
-
-2001-01-20 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppmacro.c (funlike_invocation_p): Don't move back up to the
- context of the top of the stack.
-
-2001-01-20 Jakub Jelinek <jakub@redhat.com>
-
- * function.c (fixup_var_refs): Move CALL_PLACEHOLDER handling...
- (fixup_var_refs_insns): ...here.
-
-2001-01-20 Zack Weinberg <zack@wolery.stanford.edu>
-
- * function.c (fixup_var_refs_insns): Break up into
- fixup_var_refs_insn [body of loop], fixup_var_refs_insns
- [loop over entire insn list], and fixup_var_refs_insns_with_hash
- [loop over hash table entries].
- (fixup_var_refs): Adjust calls to fixup_var_refs_insns and/or
- fixup_var_refs_insns_with_hash, to match above changes.
-
-2001-01-19 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * Makefile.in (ORDINARY_FLAGS_TO_PASS): Add MAKEOVERRIDES variable.
- (libgcc.a): Likewise.
- (stmp-multilib): Likewise.
- (STAGE2_FLAGS_TO_PASS): Likewise.
-
-2001-01-19 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (prepare_move_operands) [PIC]: Use operands[0] as
- temporary if no_new_pseudos.
-
-2001-01-19 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinternals.texi: Update.
-
-2001-01-19 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_init_builtins): Re-enable builtins.
-
-Fri Jan 19 13:02:56 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * rtl.texi (SET, CLOBBER): Document PARALLEL as SET_DEST possibility.
- * flow.c (mark_set_1, case PARALLEL): Don't require BLKmode, allow
- element to be null, and always expect an EXPR_LIST.
- * rtlanal.c (reg_overlap_mentioned_p, note_stores): Likewise.
- * sched-deps.c (sched_analyze_1): Likewise.
- * sched-rgn.c (check_live_1, update_live_1): Likewise.
-
- * regclass.c (max_set_parallel): New variable.
- (reg_scan): Take it into account in computation of max_parallel.
- (reg_scan_mark_refs, case SET): Compute it.
-
- * alias.c (rtx_equal_for_memref_p, case ADDRESSOF): Don't assume
- args are REG.
- * expr.c (store_constructor): Don't look at MEM_ALIAS_SET unless MEM.
- * function.c (assign_parms): Use INTVAL for a CONST_INT.
-
-2001-01-19 Jason Merrill <jason@redhat.com>
-
- * dwarf2out.c (gen_subprogram_die): Don't reuse the in-class decl
- for the abstract instance of an inline function.
-
-Fri Jan 19 14:31:35 2001 Alexandre Oliva <aoliva@redhat.com>
- J"orn Rennecke <amylaar@redhat.com>
-
- * reload1.c (move2add_note_store): Treat all registers directly or
- indirectly derived from a base register as members of the same set
- of values.
- (reload_cse_move2add): Adjust accordingly. Take mode and offset
- of base register into account.
-
-Fri Jan 19 09:18:42 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * alias.c (find_base_value): Recognize TRUNCATE.
- (record_set): In PLUS case, invalidate if other summand is also a
- base value.
-
-Thu Jan 18 06:43:04 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * flow.c (mark_set_1, case PARALLEL): New case; rework to allow
- entry to be EXPR_LIST.
- * rtlanal.c (reg_overlap_mentioned_p): Allow PARALLEL in SET to
- be an EXPR_LIST (but not null, which other code doesn't allow).
- (note_stores): Properly handle PARALLEL in SET.
- Recursively call for top-level PARALLEL.
- * sched-deps.c (sched_analyze_1): Handle EXPR_LIST in PARALLEL in SET.
- * sched-rgn.c (check_live_1, update_live_1): Likewise.
-
- * config.gcc (rs6000-ibm-aix*, rs6000-bull-bosx): Add rs6000/aix.h.
-
-2001-01-18 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.c (_cpp_handle_directive): Use buffer->was_skipping,
- not pfile->skipping (== 0).
-
-2001-01-17 Nick Clifton <nickc@redhat.com>
-
- * config/rs6000/rs6000.c: Add prototypes for {init|free}_
- machine_status.
-
-2001-01-17 Jim Wilson <wilson@redhat.com>
-
- * invoke.texi (IA-64 options): Improve.
-
-2001-01-17 Tom Tromey <tromey@redhat.com>
-
- * invoke.texi (Optimize Options): Use `{}' to around @samp
- argument.
-
-2001-01-17 Aldy Hernandez <aldyh@redhat.com>
-
- * invoke.texi (-fno-guess-branch-probability): New option.
-
-Wed Jan 17 13:26:34 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * combine.c (try_combine): Don't set i3_subst_into_i2 for
- case of making new double-word constant.
- Revert last change: instead just test i3_subst_into_i2.
-
-2001-01-17 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (cmpqi_minus_1): Use {b} for QImode operation.
- Use q constraints instead of r.
-
-Tue Jan 16 22:23:04 2001 Alan Modra (alan@linuxcare.com.au)
-
- * config/pa/pa.h (PIC_OFFSET_TABLE_REGNUM_SAVED): Remove.
- (machine_function): Define.
- (PIC_OFFSET_TABLE_SAVE_RTX) : Define.
- * config/pa/pa.c (pa_init_machine_status, pa_mark_machine_status,
- pa_free_machine_status): New functions.
- (override_options): Set {init,mark,free}_machine_status to above.
- (hppa_expand_prologue): Use PIC_OFFSET_TABLE_SAVE_RTX instead of
- PIC_OFFSET_TABLE_REGNUM_SAVED.
- * config/pa/pa.md: Use PIC_OFFSET_TABLE_SAVE_RTX instead of
- PIC_OFFSET_TABLE_REGNUM_SAVED throughout.
- * config/pa/pa32-regs.h (CONDITIONAL_REGISTER_USAGE): Remove
- references to PIC_OFFSET_TABLE_REGNUM_SAVED.
- * config/pa/pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
-
-2001-01-15 DJ Delorie <dj@redhat.com>
-
- * Makefile.in (gcov.1): Protect against texi2pod/pod2man failing.
- (cpp.1): Ditto.
- (gcc.1): Ditto.
-
-Tue Jan 16 17:20:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * flow.c (propagate_one_insn): Make trying to delete a prologue
- or epilogue insn an ICE, not a warning. Allow doing this if
- the current function returns with stack pointer depressed.
-
- * combine.c (try_combine): If i3_subst_into_i2, properly check for
- I3 having more than one SET.
-
-2001-01-16 Jim Wilson <wilson@redhat.com>
-
- * invoke.texi: Document IA-64 options.
-
- * config/ia64/ia64.c (ia64_print_operand_address): Delete 'B' support.
- (fixup_errata): Delete TARGET_A_STEP use.
- * config/ia64/ia64.h (MASK_A_STEP, TARGET_A_STEP): Delete.
- (TARGET_SWITCHES): Delete -ma-step option.
- * config/ia64/ia64.md (all FP patterns): Delete %B0.
- (movqicc_astep, movqi_internal_astep, movhicc_astep,
- movhi_internal_astep, movsicc_astep, movsi_internal_astep, movdi+1,
- movdi_internal_astep, movsfcc_astep, movsf_internal_astep,
- movdfcc_astep, movdf_internal_astep, movtfcc_astep,
- movtf_internal_astep, cmovdi_internal_astep, cmovsi_internal_astep):
- Delete.
- (movqi_internal, movhi_internal, movsi_internal, movdi_internal,
- movsf_internal, movdf_internal, movtf_internal, cmovdi_internal,
- cmovsi_internal): Delete ! TARGET_A_STEP check.
-
-2001-01-16 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * gcc.texi (Bug Lists): Do not mention newsgroups nor the
- possibility to report bugs via postal mail. Change a URL and
- merge in a nearly duplicate statement...
- (Bug Reporting): ...from here.
- (Service): Refer to the Bug Reporting section instead of
- duplicating an URL.
- (Contributing): Remove trivial explanations concerning snapshots.
-
-2001-01-16 Alan Modra <alan@linuxcare.com.au>
-
- * cppmain.c (general_init): Don't use ANSI prototype.
-
-2001-01-16 Tom Tromey <tromey@redhat.com>
-
- * gcc.c (cpp_options): Added `*' to specs for -MF, -MQ, and -MT.
-
-2001-01-16 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.h: Fix comment typo.
- * config/i386/i386.md (shift+compare pattern names): s/cmpno/cmp/
- (ashr+compare patterns): Match CCGOCmode not CCNOmode.
-
-2001-01-16 Phil Edwards <pme@sources.redhat.com>
-
- * gcc.c: Revert previous -fsyntax-only-related change; move
- to cp/g++spec.c.
-
-2001-01-16 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (fcmov_comparison_operator): Only initialize
- inmode after checking GET_CODE (op).
-
-2001-01-16 Richard Henderson <rth@redhat.com>
-
- * flow.c (struct propagate_block_info): Add mem_set_list_len.
- (MAX_MEM_SET_LIST_LEN): New.
- (propagate_one_insn): Update mem_set_list_len.
- (invalidate_mems_from_autoinc): Likewise.
- (invalidate_mems_from_set): Likewise.
- (mark_used_regs): Likewise.
- (init_propagate_block_info): Likewise. Stop collecting memories
- when we reach MAX_MEM_SET_LIST_LEN.
- (mark_set_1): Likewise.
-
-2001-01-16 Richard Henderson <rth@redhat.com>
-
- * unroll.c (precondition_loop_p): Fail if no iteration
- variable found.
-
-2001-01-16 Phil Edwards <pme@sources.redhat.com>
-
- * gcc.c: When -fsyntax-only is given, do not complain about
- unused libraries.
-
-2001-01-15 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (asm_output_function_prefix): Remove.
- (ix86_asm_file_end): New.
- (load_pic_register): Generate pic_label_name into a
- statically allocated buffer.
- * config/i386/i386-protos.h: Update.
- * config/i386/i386.h (ASM_OUTPUT_FUNCTION_PREFIX): Remove.
- (ASM_FILE_END): New.
- * config/i386/i386afe.h: New file.
- * config.gcc (i?86-*-elf) [tm_file]: Use it.
- (i?86-*-{freebsd,linux*,moss*}): Likewise.
- * config/elfos.h (ASM_FILE_END): Undef before redefinition.
- * config/i386/cygwin.h (ASM_FILE_END): Likewise.
- * config/i386/osfrose.h (ASM_FILE_END): Invoke ix86_asm_file_end.
- * config/i386/sco5.h (ASM_FILE_END): Likewise.
- * config/i386/winnt.c (i386_pe_asm_file_end): Likewise.
-
-2001-01-15 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * Makefile.in (install-man): Remove explicit dependency on
- $(srcdir)/gcc.1.
-
- * configure.in, configure: Revert previous patch requiring perl
- 5.6.0.
-
-2001-01-12 Aldy Hernandez <aldyh@redhat.com>
-
- * toplev.c (flag_guess_branch_prob): New.
- (f_options): Add guess-branch-probability option.
- (rest_of_decl_compilation): Only estimate branch probability if
- flag set.
- (main): set flag_guess_branch_prob.
-
- * flags.h (flag_guess_branch_prob): New.
-
-2001-01-15 DJ Delorie <dj@redhat.com>
-
- * gcc.texi (Makefile): Add documentation for Makefile targets.
-
-2001-01-15 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.c (arm_finalize_pic): New arg "prologue".
- (is_pic): Delete.
- * config/arm/arm-protos.h (arm_finalize_pic): Update prototype.
- (is_pic): Delete declaration.
- * config/arm/arm.h (FINALIZE_PIC): Update call to arm_finalize_pic.
- (OUTPUT_INT_ADDR_CONST): Remove special handling of PIC address.
- * config/arm/arm.md (builtin_setjmp_receiver): New.
-
-2001-01-15 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (use_return_insn): Don't try to determine the function type
- until after reload has completed.
- (arm_output_epilogue): Don't adjust the sp value recovered from the
- stack.
- (emit_multi_reg_push): Don't record dwarf information for the pc.
- * arm.md (eh_epilogue): The function type may have changed, so it
- needs to be recalculated.
- * arm/netbsd.h (DWARF2_UNWIND_INFO): Delete. Can now use dwarf2
- unwind tables on arm/netbsd.
-
-2001-01-15 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (cbranchsi4): Correct calculation of branch ranges.
- (negated_cbranchsi4): Likewise.
-
-2001-01-15 Richard Earnshaw <rearnsha@arm.com>
-
- * config/arm/semi.h (SUBTARGET_EXTRA_SPECS): Define.
- (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
- (ASM_SPEC): Call subtarget_extra_asm_spec. Don't
- pass -mapcs-* options to assembler.
- * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Define.
- (SUBTARGET_EXTRA_ASM_SPEC): Define to empty string.
- (ASM_SPEC): Call subtarget_extra_asm_spec.
-
-2001-01-15 Andreas Jaeger <aj@suse.de>
-
- * config/i386/i386.c (ix86_init_builtins): Make i size_t to remove
- warnings.
- (ix86_expand_builtin): Likewise.
-
- * gencodes.c (output_predicate_decls): Make i size_t to avoid
- warning about comparison between signed and unsigned.
-
-2001-01-14 Geoffrey Keating <geoffk@redhat.com>
-
- * expr.c (do_jump): Treat VOIDmode CONST_DOUBLEs like CONST_INTs.
-
-2001-01-14 Ralf Baechle <ralf@gnu.org>
-
- * config/mips/linux.h (SUBTARGET_CPP_SPEC): Default ABI is 32; change
- SUBTARGET_CPP_SPEC appropriately.
-
-2001-01-12 Mark Mitchell <mark@codesourcery.com>
-
- * varasm.c (make_decl_rtl): Fix typo in last change.
-
-2001-01-14 Jeffrey Oldham <oldham@codesourcery.com>
-
- * defaults.h (SUPPORTS_INIT_PRIORITY): New macro to indicate the
- linker supports the init_priority C++ attribute.
- * tm.texi (SUPPORTS_INIT_PRIORITY): Documentation for new macro.
- * config/mips/iris6.h (SUPPORTS_INIT_PRIORITY): Indicate Irix
- linker does not support init_priority C++ attribute.
-
-Sun Jan 14 22:31:30 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * Makefile.in (libgcc1-test.o): Depends on stmp-int-hdrs.
-
-2001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-parse.in (finish_parse): Add comment about cpp_destroy.
- * cp/lex.c (finish_parse): Similarly.
- * cppinit.c (cpp_cleanup): Rename cpp_destroy for clarity.
- Return the number of errors encountered.
- * cpplib.h (cpp_cleanup): Rename cpp_destroy, return int.
- * cppmain.c (main): Don't call cpp_destroy.
-
-2001-01-14 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * configure.in: Require at least perl 5.6.0 to regenerate
- manpages.
- * configure: Regenerate.
-
-2001-01-14 Richard Henderson <rth@redhat.com>
-
- * genrecog.c (DT_veclen_ge): New.
- (add_to_sequence) [MATCH_PARALLEL]: Generate one.
- (maybe_both_true_2): Simplify DT_veclen vs DT_veclen_ge.
- (nodes_identical_1): Handle DT_veclen_ge.
- (write_cond, debug_decision_2): Likewise.
-
-2001-01-14 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (ldmsi_postinc, ldmsi, stmsi_postinc, smsi): Delete. Replace
- with ...
- (ldmsi_postinc[432], ldmsi[432], stmsi_postinc[432], stmsi[432]): New.
-
-2001-01-14 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppmain.c (do_preprocessing): New function; most of the old
- main.
- (main): Call it to do most of the work.
- (cb): Move from global scope to set_callbacks ().
- (setup_callbacks): Get the callback pointer.
- (general_init, printer_init): Clean up code and comments.
-
-2001-01-14 Richard Earnshaw <rearnsha@arm.com>
-
- * config/arm/semi.h (ASM_SPEC): Pass -k to the assembler when
- compiling PIC.
-
-2001-01-14 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.c (get_shift_alg): Update comments.
-
-Sun Jan 14 06:20:49 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * ggc-page.c (alloc_annon): Call perror and correctly call exit.
- (alloc_page, ggc_alloc): Add casts to remove warnings.
-
-2001-01-14 Geoffrey Keating <geoffk@redhat.com>
-
- * combine.c (simplify_comparison): Don't change `code' when
- can't reverse comparison.
-
-2001-01-14 Richard Henderson <rth@redhat.com>
-
- * rtlanal.c (computed_jump_p_1): Rename from jmp_uses_reg_or_mem;
- update all call sites. Return true for all non-label constants.
-
-Sun Jan 14 10:09:48 MET 2001 Jan hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_compare): Add bypass_test and second_test
- parameters.
- (ix86_expand_branch): Update.
- (ix86_expand_setcc): Update to handle multiple test conditions.
- (expand_int_movcc): Likewise.
- (expand_fp_movcc): Likewise.
- * i386-protos.h (ix86_expand_compare): New.
- * i386.md (andqi_?_slp, orqi_?_slp): New.
- (conditional trap expander): Update call to ix86_expand_compare.
-
-2001-01-14 Richard Henderson <rth@redhat.com>
-
- * config/vax/vax.md: Use nonimmediate_operand instead of
- general_operand in destinations.
-
- * config/vax/vax.md (indirect_jump): Use register_operand.
-
- * config/vax/vax.h (RETURN_POPS_ARGS): Max at 255 arguments.
- * config/vax/vax.md (call_pop): Turn into an expander.
- (call_value_pop): Likewise.
- (call, call_value): New.
-
-2001-01-14 Andreas Jaeger <aj@suse.de>
-
- * config/i386/i386.c (ix86_split_fp_branch): Remove unused
- variables.
- (ix86_fp_compare_mode): Add unused attribute.
- (ix86_expand_fp_movcc): Remove unused variable.
- (ix86_expand_builtin): Make fcode unsigned.
-
- * expr.c (MOVE_BY_PIECES_P): Cast MOVE_RATIO to unsigned.
- (expand_expr): Add cast to avoid signed warning.
- (store_field): Likewise.
- (store_constructor_field): Likewise.
- (store_constructor): Likewise.
- (store_expr): Likewise.
- (clear_storage): Likewise.
- (emit_group_store): Likewise.
- (emit_group_load): Likewise.
-
-2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c: Move format checking code to ...
- * c-format.c: ... here. New file. Reorder some functions and
- declarations.
- (decl_handle_format_attribute, decl_handle_format_arg_attribute):
- New functions.
- * c-common.h (decl_handle_format_attribute,
- decl_handle_format_arg_attribute): Declare.
- * Makefile.in (C_AND_OBJC_OBJS): Add c-format.o.
- (c-common.o): Adjust dependencies.
- (c-format.o): New list of dependencies.
-
-2001-01-13 Jakub Jelinek <jakub@redhat.com>
-
- * unroll.c (loop_iterations): If we cannot prove iteration variable
- is set once in each iteration, punt.
-
-Sun Jan 14 00:23:15 2001 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.md ("strlenhi"): Remove clobber of input address.
- (*strlenhi): Remove clobber (which was buggy) of output address.
-
-2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * Makefile.in (generated-manpages): Add gcc.1
- ($(srcdir)/gcc.1): New target.
- (maintainer-clean): Delete $(srcdir)/gcc.1.
- * gcc.texi: Add macros @gccoptlist and @gol.
- * invoke.texi: Include option summary in manpage. Mark up option
- summary with @gccoptlist and @gol. Use @r in one place where
- appropriate.
- * texinfo.tex: Update to version 2000-12-11.07 from ftp.gnu.org.
- * gcc.1: Generate from invoke.texi.
-
-2001-01-13 Richard Henderson <rth@redhat.com>
-
- * ggc-page.c (USING_MALLOC_PAGE_GROUPS): New; set if not using mmap.
- (struct page_entry): Add group member.
- (struct page_group): New.
- (struct globals): Add page_groups member.
- (alloc_anon): Only define for using mmap; remove valloc call.
- (page_group_index): New.
- (set_page_group_in_use): New.
- (clear_page_group_in_use): New.
- (alloc_page): Implement USING_MALLOC_PAGE_GROUPS.
- (free_page, release_pages): Likewise.
- * configure.in (with-gc): Default to ggc-page always.
-
-2001-01-13 Alexandre Oliva <aoliva@redhat.com>
-
- * reload1.c (replace_pseudos_in_call_usage): Use
- reg_equiv_constant and reg_equiv_address, and don't try
- regno_reg_rtx first.
-
-2001-01-13 Richard Henderson <rth@redhat.com>
-
- * ggc-page.c (alloc_page): Round up allocation size to one page.
- Set e->order on extra pages.
-
-2001-01-13 Richard Henderson <rth@redhat.com>
-
- * genrecog.c (nodes_identical): Expand commentary.
- (write_switch): Watch out for identical nodes.
-
-2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppfiles.c (_cpp_fake_include): New function.
- * cpphash.h (_cpp_fake_include): New.
- * cpplib.c (do_line): Call _cpp_fake_include when entering
- header files in preprocessed input.
- * cppmain.c (cb_pragma_implementation): Remove handling.
- (setup_callbacks): Don't register pragmas.
-
-2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * extend.texi: Udate for CPP.
-
-2001-01-13 Andreas Jaeger <aj@suse.de>
-
- * reload1.c: Add prototype for replace_pseudos_in_call_usage.
-
- * regmove.c: Add prototype for replace_in_call_usage.
-
-2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpplib.h (cpp_pool, mi_state, mi_ind, struct cpp_macro,
- struct cpp_chunk, struct htab, struct toklist,
- struct cpp_context, CPP_STACK_MAX, struct lexer_state,
- struct spec_nodes, struct cpp_reader, CPP_OPTION, CPP_BUFFER,
- CPP_BUF_LINE, CPP_BUF_COL, CPP_BUF_COLUMN, U, ustrcmp, ustrncmp,
- ustrlen, uxstrdup, ustrchr, ufputs): Move to cpphash.h.
- (struct macro_args): Delete.
- * cpphash.h: See above.
-
-2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppmain.c (struct printer): Remove no_line_dirs.
- (options, cb): New.
- (main, setup_callbacks, scan_buffer, printer_init, cb_define)
- : Use options rather than CPP_OPTION.
- (setup_callbacks): Use cb rather than pfile->cb.
- (main): No need to check for a buffer. Use cpp_errors.
- (printer_init): Don't set no_line_dirs.
- (maybe_print_line): Use options not no_line_dirs.
- (cb_file_change): Don't call print_line if -P.
-
-2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (init_c_lex): Use cpp_get_callbacks to set
- callbacks.
- * c-parse.in (finish_parse): Use cpp_errors.
- (__yylex): Use return value of cpp_pop_buffer.
- * cp/lex.c (finish_parse): Use cpp_errors.
- * cp/spew.c (read_token): Use return value of cpp_pop_buffer.
-
-Sat Jan 13 16:57:40 2001 Denis Chertykov <denisc@overta.ru>
-
- * README.AVR: URLs corrected.
-
-Sat Jan 13 07:30:02 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * c-decl.c (start_function): Don't warn if old prototype is builtin
- that's not in C's namespace.
- * libgcc2.c (_varargs): Update definition of __builtin_saveregs.
- (_bb): Add prototype for ctime.
- * config/alpha/osf.h (TRANSFER_FROM_TRAMPOLINE): Add missing protos.
-
-Sat Jan 13 09:53:32 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_fp_comparison_arithmetics_cost,
- ix86_fp_comparison_fcomi_cost, ix86_fp_comparison_sahf_cost,
- ix86_fp_comparison_cost): New functions.
- (ix86_expand_fp_compare): Use the costs to choose best bethod; add
- two new parameters SECOND_TEST and BYPASS_TEST; allow generating
- two-branch sequences; make static.
- (ix86_use_fcomi_compare): Do decision according to the costs.
- (split_fp_branch): New.
- * i386.md (compare-and-branch patterns): Use split_fp_branch.
- * i386-protos.h (ix86_expand_fp_compare): Remove
- (ix86_split_fp_branch): Declare.
-
- * i386.h (PREDICATE_CODES): Update codes from fcmov_comparison_operand
- and ix86_comparison_operator.
-
- * i386.c (ix86_prepare_fp_compare_args): Try to rearange the comparison
- to make it cheaper.
-
- * i386.c (put_condition_code): Output properly the unordered/ordered
- compares in fp case.
- (ix86_expand_fp_movcc): Use ix86_expand_compare infrastructure.
-
- * tm.texi (REVERSE_CONDITION): Document.
- * i386.c (ix86_fp_compare_mode): Simplify; return always CCFPmode
- in -ffast-math mode.
- * i386.h (REVERSE_CONDITION, REVERSIBLE_CC_MODE): New macro.
-
-2001-01-13 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (sh_expand_epilogue): Use PR explicitly.
-
- * config/sh/sh.c (sh_expand_prologue): Let the second toggle_sz be
- optimized away.
-
- * config/sh/sh.c (mova_p): Fix test for mova_const.
-
-2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * fix-header.c (read_scan_file): Use cpp_get_callbacks and
- cpp_get_options rather than dereferencing pfile and using
- CPP_OPTION.
- * scan-decls.c (scan_decls): Use return value of
- cpp_pop_buffer rather than CPP_BUFFER.
-
-2001-01-13 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (cpp_handle_option): help_only is now part of the
- cpp_options structure.
- * cpplib.c (cpp_errors, cpp_get_options, cpp_get_callbacks,
- cpp_set_callbacks): New functions.
- * cpplib.h (cpp_callbacks): Break out as a named structure.
- (cpp_options): Move help_only here from cpp_reader.
- (CPP_FATAL_ERRORS): Update to use cpp_errors.
- (cpp_errors, cpp_get_options, cpp_get_callbacks,
- cpp_set_callbacks): New prototypes.
- * cppmain.c (main): Update for help_only.
-
-2001-01-13 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * Makefile.in (info, maintainer-clean, install-info, uninstall):
- Also build and remove and install and uninstall c-tree.info and
- cppinternals.info.
- ($(srcdir)/gcc.info): Add dependency on contrib.texi.
- ($(srcdir)/cppinternals.info): New target.
- * c-tree.texi: Change file name used when makeinfo used without -o
- from ir.info to c-tree.info. Add info directory entry.
- * cppinternals.texi: Add info directory entry.
- * .cvsignore: Update.
-
-2001-01-12 Jakub Jelinek <jakub@redhat.com>
-
- * c-typeck.c (store_init_value): Don't require constant initializer
- elements with -pedantic -std=c99.
- (digest_init): Change error about non-constant initializer elements
- into pedwarn.
- (constructor_range_end): Remove.
- (constructor_incremental, designator_depth,
- designator_errorneous): New variables.
- (struct constructor_stack): Remove range_end, add incremental.
- (struct constructor_range_stack, constructor_range_stack): New.
- (struct initializer_stack): Add constructor_range_stack.
- (finish_init): Set it.
- (start_init): Likewise. require_constant_elements for non-static
- trees only if not flag_isoc99.
- (really_start_incremental_init): Remove constructor_range_end, add
- constructor_incremental.
- (pop_init_level): Likewise.
- (push_init_level): Likewise. If implicit and the subobject had some
- value set already, preinitialize the level with it.
- Warn about missing braces only if not pushing due to designators.
- (set_designator, push_range_stack): New functions.
- (set_init_label): Use them.
- (set_init_index): Likewise. Remove constructor_range_end.
- Error if designator index is outside of array bounds.
- (add_pending_init): Compare values of purpose index trees, not the
- trees themselves. Allow overwriting of already initialized element.
- Issue a warning if it had side-effects.
- (set_nonincremental_init, set_nonincremental_init_from_string): New
- functions.
- (pending_init_member): Rename to...
- (find_init_member): ...this function. Call set_nonincremental_init
- if necessary. Compare values of purpose index trees, not the trees
- themselves. Return the actual value, not just nonzero if something
- is found.
- (output_init_element): Remove checks for duplicates.
- If field has zero size, only check the initializer for correctness.
- Call set_nonincremental_init if necessary. Push RECORD/ARRAY into AVL
- if constructor_incremental is zero. Change error about initializers
- not computable at load time into pedwarn.
- (output_pending_init_elements): Compare bit positions, not
- FIELD_DECLs to take into account zero-sized fields.
- (process_init_element): Use constructor_range_stack to fill all
- ranges in the designator lists from current level up.
- * extend.texi: Update documentation for labeled elements.
-
-2001-01-12 Alexandre Oliva <aoliva@redhat.com>
-
- * calls.c (emit_library_call_value_1): Add USEs and CLOBBERs
- to function usage for arguments passed by reference. Optimize
- callee-copied arguments.
- * regmove.c (replace_in_call_usage): New function.
- (fixup_match_1): Call it.
- * cse.c (cse_insn): Canonicalize registers in function usage.
- * reload1.c (replace_pseudos_in_call_usage): New function.
- (reload): Call it.
-
- * Makefile.in: Reverted yesterday's wrong patch. Installed the
- right version.
-
-2001-01-12 Jakub Jelinek <jakub@redhat.com>
-
- * config/alpha/alpha.c (alpha_expand_block_move): GET_MODE of tmp,
- not XEXP (tmp, 0).
-
-2001-01-12 DJ Delorie <dj@redhat.com>
-
- * Makefile.in (bootstrap): rename stages to be mnemonic. Add
- restageN, unstageN, bubblestrap, quickstrap, and cleanstrap
- targets.
-
-2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * cpp.texi, extend.texi, gcc.texi, install.texi, invoke.texi,
- tm.texi: Consistently refer to ISO C instead of ANSI C. Refer to
- -std options alongside references to -ansi. Update some
- documentation for C99.
- * cpp.1: Regenerate.
-
-2001-01-12 Andreas Jaeger <aj@suse.de>
-
- * haifa-sched.c (restore_line_notes): Remove argument block B
- since it's unused.
- * sched-ebb.c (schedule_ebb): Change caller.
- * sched-rgn.c (schedule_region): Likewise.
- * sched-int.h (restore_line_notes): Adjust prototype.
-
- * loop.h: Remove wrong declaration of doloop_condition_get.
-
-2001-01-12 Phil Edwards <pme@sources.redhat.com>
-
- * extend.texi: Move C++-extension-related node from the C section
- into the C++ section.
-
-2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * extend.texi: Refer to an array of pointers to functions instead
- of one of functions.
-
-Fri Jan 12 12:08:12 MET 2001 Andreas Jaeger <aj@suse.de>
- Jan Hubicka <jh@suse.cz>
-
- * combine.c (reversed_comparison): Fix typo in last patch.
- Check X for NULL.
- (combine_reversed_comparison_code): Make static to follow
- prototype declaration.
-
-2001-01-12 Phil Edwards <pme@sources.redhat.com>
-
- * install.texi: Remove misplaced duplicate entry.
-
-2001-01-11 Ulrich Drepper <drepper@redhat.com>
-
- * config/float-i386.h: Define FLT_EVAL_METHOD and DECIMAL_DIG for C99.
-
-Thu Jan 11 17:06:30 EST 2001 John Wehle (john@feith.com)
-
- * final.c: (leaf_function_p): Fix typo.
-
-2001-01-11 Zack Weinberg <zack@wolery.stanford.edu>
-
- * aclocal.m4 (AC_FUNC_MMAP_ANYWHERE): Completely rewritten.
- Now defines HAVE_MMAP_DEV_ZERO and/or HAVE_MMAP_ANON depending
- which you have.
- (AC_FUNC_MMAP_FILE): Don't AC_REQUIRE AC_FUNC_MMAP_ANYWHERE.
- * configure.in: Set GGC to ggc-page if any of mmap_dev_zero,
- mmap_anon, and valloc is available.
- * ggc-page.c: Restructure ifdef logic to match new autoconf
- spec. Don't throw away the test page in init_ggc.
-
- * configure, config.in: Regenerate.
-
-2001-01-12 Michael Hayes <mhayes@redhat.com>
-
- * loop.h (total_biv_increment): Constify iv_class pointer.
- (struct induction): Replace `mem_mode' with `mem' rtx.
- * unroll.c (total_biv_increment): Constify iv_class pointer.
- * loop.c (loop_giv_reduce_benefit): Derive mem mode from mem rtx.
- (find_mem_givs, combine_givs_p): Likewise.
- (debug_ivs, debug_iv_class, loop_ivs_dump, loop_iv_class_dump): New.
-
-2001-01-10 Thomas Pfaff <tpfaff@gmx.net>
-
- * gthr-win32.h (__gthread_objc_thread_get_data): Save and restore Win32
- LastError.
- (__gthread_getspecific): Ditto.
-
-Fri Jan 12 00:04:00 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_comparison_operator, fcmov_comparison_operator,
- put_condition_code): Convert fp comparison codes to integer
- before handling.
- (ix86_expand_fp_compare): Postnote the fp comparison code conversion
- to final.
-
- * i386.c (unsigned_comparison, no_comparison_operator): Kill.
- * i386-protos.h (no_comparison_operator): Kill.
-
- * i386.c (ix86_expand_fp_compare): Fix ordered/unordered confussion.
-
- * combine.c (REVERSIBLE_CC_MODE): Remove.
- (reversible_comparison_p): Remove.
- (combine_reversed_comparison_code): New.
- (reversed_comparison): New.
- (combine_simplify_rtx): Use
- combine_reversed_comparison_code/reversed_comparison instead
- of reversible_comparison_p.
- (simplify_if_then_else): Likewise.
- (simplify_set): Likewise.
- (simplify_logical): Likewise.
- (if_then_else_cond): Likewise.
- (known_cond): Likewise.
- (simplify_comparison): Likewise.
-
-2001-01-11 Alan Lehotsky <lehotsky@tiac.net>
-
- * builtins.c (std_expand_builtin_va_start): Handle varargs when
- sizeof (int) is larger than sizeof(__word__).
-
-2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (do_includes): Fix typo.
-
-2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md (cmphi_1): Make sure reloading
- in S_REGS does not occur because not all sources are possible
- when a S_REGS is a destination (sometimes needs a clobber).
- (movqi_const0, zero_extendhisi2, zero_extendqisi2): Likewise.
- (zero_extendhidi2, extendqisi2, extendqihi2, extendhisi2): Likewise.
- (anddi3, iordi3, xordi3, negqi2, one_cmplhi2, one_cmplqi2: Likewise.
- (ashldi3_const32, ashldi3_const1, ashlsi3_const16): Likewise.
- (ashlsi3_const1, ashlhi3_2, ashlqi3_const1, ashrhi3): Likewise.
- (ashrqi3_const1, lshrdi3_const32, lshrdi3_const63): Likewise.
- (lshrdi_const1, lshrsi3_const16): Likewise.
- (*addhi3, lshrsi3_const1, lshrqi3_const1): Likewise.
- (*movhi_68hc12, *movqi_68hc12): Likewise.
- (movstrictqi): Make sure reloading in D_REGS as a destination
- does not happen.
-
-2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
-
-2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (cpp_start_read): If -fpreprocessed, ignore
- -D, -U and -A, and don't initialize the builtins.
- (do_includes): Error if -include or -imacros with -fpreprocessed.
- * cppmain.c (cb_define, cb_undef): Unconditionally process
- the callback.
- * tradcpp.c (main): Fix typo.
-
-2000-01-11 Mark Elbrecht <snowball3@bigfoot.com>
-
- * cppfiles.c (cpp_included, find_include_file, _cpp_execute_include)
- (read_name_map): Use IS_ABSOLUTE_PATH.
- * tradcpp.c (get_filename): Likewise.
-
-2001-01-11 Stephane Carrez <Stephane.Carrez@worldnet.fr>
-
- * config/m68hc11/m68hc11.md (*adcq, *subcq): Fix operand numbers.
- (*ashlsi3_const16_zexthi, *ashlsi3_const1): Likewise.
- (*lshrsi3_const, *lshrsi3_const1, *lshrsi3_const16): Likewise.
- (*ashrsi3, *ashrsi3_const, *ashlsi3, *ashlsi3_const): Likewise.
- (*ashlsi3_const1, *lshrsi3, *ashlsi3_const16): Likewise.
- (cmphi_z_used): Don't use '@' for the output.
- (tstqi_z_used): Likewise.
- (cmpqi_z_used): Likewise.
- (one_cmplsi2): Likewise.
-
-2001-01-11 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.c (barrier_align): Recognize branch around far
- branch and redundant insn.
-
-2001-01-11 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * invoke.texi: Restore documentation of the drivers' switches -MD
- and -MMD.
-
-2001-01-11 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (LABEL_ALIGN): Use UNSPECV_ALIGN instead of 1.
-
- * Makefile.in (check-gcc//%, check-g++//%, check-g77//%,
- check-objc//%): Support parallel testing of multilibs.
- (TESTSUITEDIR): Set to testsuite by default, but override for
- parallel testing.
- (check-gcc, check-g++, check-g77, check-objc): Enter
- $(TESTSUITEDIR).
-
-2001-01-11 Bernd Schmidt <bernds@redhat.com>
-
- * alias.c (throughout): Use REGNO, rather than ORIGINAL_REGNO.
- * sched-deps.c (deps_may_trap_p): Likewise.
- * basic-block.h: Remove a comment.
- * flow.c (PROP_POSTRELOAD): Remove.
- (update_life_info): Don't add it to prop_flags.
- (mark_set_1): Lose the code that was enabled by it.
-
-2001-01-11 Michael Hayes <mhayes@redhat.com>
-
- * flow.c (flow_call_edges_add): New.
- * basic_block.h (flow_call_edges_add): New.
-
-2001-01-11 J"orn Rennecke <amylaar@redhat.com>
-
- * reload1.c (move2add_note_store): Update reg_set_luid even if
- base reg remains the same.
-
-2001-01-10 Nick Clifton <nickc@redhat.com>
-
- * config/d30v/d30v.c (d30v_init_machine_status): Initialize
- machine_function structure to zero.
- Add prototypes for machine_status functions.
-
-2001-01-10 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (CTI_VOID_LIST): Remove.
- (void_list_node): Likewise.
- * tree.h (TI_VOID_LIST_NODE): New enumeral.
- (void_list_node): New macro.
- * config/arm/arm.c (arm_init_builtins): Use void_list_node.
- * config/i386/i386.c (ix86_init_builtins): Likewise.
- * config/ia64a/ia64.c (ia64_init_builtins): Likewise.
-
-2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * Makefile.in (tradcpp0): Depend on mkdeps.h. Link mkdeps.o
- * cppinit.c (cpp_start_read): Update comment, remove unneeded
- if statement.
- * tradcpp.c: Include mkdeps.h.
- (deps, print_deps_phony_targets, deps_append, output_deps,
- init_dependency_output, output_deps): New.
- (deps_buffer, deps_allocated_size, deps_size, deps_column,
- deps_output): Delete.
- (print_deps_missing_files): Rename deps_missing_files.
- (inhibit_output): Make global.
- (main): Delete inhibit_output, deps_stream, deps_target.
- Use mkdeps functionality in the same way as cpplib. Remove
- -g3 handling. Handle -MF, -MP, -MQ, -MT. Update handling of
- -M and -MM. Remove old handling of deps via deps_out, and
- old reading of environment variables.
- (get_filename): Update to use deps_add_dep.
-
-2001-01-10 Mark Mitchell <mark@codesourcery.com>
-
- * output.h (make_function_rtl): Remove prototype.
- (make_decl_rtl): Likewise.
- * varasm.c (make_function_rtl): Remove.
- (make_decl_rtl): Determine top-levelness from DECL_CONTEXT, rather
- than from a third parameter.
- * tree.h (make_decl_rtl): Remove last parameter.
- * c-decl.c (builtin_function): Remove last argument in call to
- make_decl_rtl; use make_function_rtl instead of make_decl_rtl.
- (start_function): Likewise.
- * except.c (call_get_eh_context): Likewise.
- * expr.c (emit_block_move): Likewise.
- (clear_storage): Likewise.
- * profile.c (output_func_start_profiler): Likewise.
- * toplev.c (rest_of_decl_compilation): Likewise.
- * objc/objc-act.c (create_builtin_decl): Likewise.
- (synth_module_prologue): Likewise.
- (generate_static_reference): Likewise.
- (build_selector_reference_decl): Likewise.
- (build_class_reference_decl): Likewise.
- (build_objc_string_decl): Likewise.
- (build_protocol_reference): Likewise.
-
-2001-01-10 Richard Henderson <rth@redhat.com>
-
- * hwint.h: Revert yesterday's change.
-
-2001-01-10 Nick Clifton <nickc@redhat.com>
-
- * function.h (save_machine_status): Delete.
- (restore_machine_status): Delete.
- Amend comment describing {init|mark|free}_machine_status.
-
- * function.c (save_machine_status): Delete.
- (restore_machine_status): Delete.
- Amend comment describing {init|mark|free}_machine_status.
- (push_function_context_to): Remove invocation of
- save_machine_status.
- (pop_function_context_from): Remove invocation of
- restore_machine_status.
-
- * emit-rtl.c (init_emit_once): Amend comment describing
- {init|mark|free}_machine_status.
-
- * tm.texi (Per-Function Data): New node. Describe the
- INIT_EXPANDERS macro and the {init|mark|free}_machine_status
- function pointers.
-
-2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (OPT_g): Remove.
- (cpp_handle_option): Update for removed -g3.
- (print_help): Update.
- * cpplib.h (struct cpp_options): Remove debug_output.
- * cppmain.c (setup_callbacks, cb_define): Update.
- * gcc.c (cpp_options): Translate -g3 to -dD.
-
-2001-01-10 Aldy Hernandez <aldyh@redhat.com>
-
- * config/i960/i960.md: Change modifier to + on the zero_extract
- pattern after the (rotate -2 reg) canonicalization pattern.
-
-2001-01-10 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (alpha_free_machine_status): New.
- (override_options): Install it.
- (alpha_mark_machine_status): Verify machine non-null.
- * config/i386/i386.c (ix86_free_machine_status): New.
- (override_options): Install it.
- (ix86_init_machine_status): Use xcalloc.
- (ix86_mark_machine_status): Verify machine non-null.
- * config/ia64/ia64.c (ia64_free_machine_status): New.
- (ia64_override_options): Install it.
- (ia64_mark_machine_status): Verify machine non-null.
-
-Wed Jan 10 11:34:39 2001 Jeffrey A Law (law@cygnus.com)
-
- * function.c (instantiate_virtual_regs): Instantiate virtual
- registers found in CALL_INSN_FUNCTION_USAGE.
-
-2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * i386.h (CPP_CPU_SPEC): Allow for -std=c* and -std=i* as
- equivalent to -ansi in disabling -Di386.
-
-Wed Jan 10 16:38:31 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_fp_compare_code_to_integer, ix86_fp_comparison_codes):
- new functions.
- (ix86_expand_fp_compare): Make trivial use of new infrastructure.
-
-2001-01-10 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_init_builtins): Temporarily disable xscale builtins.
-
-2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * invoke.texi: Document that -fcond-mismatch isn't supported for
- C++.
-
-2001-01-10 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * gcc.texi: Define macro gcctabopt.
- * invoke.texi: Add manpage sections BUGS and AUTHOR. Use
- @command, @env and @option in some places where appropriate. Use
- @gcctabopt where appropriate. Put URLs and email addresses inside
- @w.
-
-2001-01-10 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcc.c (cpp_options): Set MD file name from output
- filename, if specified.
- (suffix_subst): New static variable.
- (do_spec): Clear it.
- (do_spec_1, case '.'): Handle new `%.suffix' spec.
- Clear it.
- (give_switch): Handle suffix_subst.
-
-2001-01-10 Phil Edwards <pme@sources.redhat.com>
-
- * invoke.texi: Fix another typo.
-
-2001-01-10 Phil Edwards <pme@sources.redhat.com>
-
- * invoke.texi: Fix typo.
-
-2001-01-10 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lang.c (lang_hooks): Update.
- (lang_decode_option): Remove.
- (lang_init_options): Rename c_init_options.
- * toplev.c (main): Use lang_hooks for lang_init_options
- and lang_decode_option.
- * toplev.h (lang_hooks): Add 2 new hooks.
- * tree.h: Remove lang_init_options and lang_decode_option.
- * cp/cp-tree.h (lang_decode_option): Rename cxx_decode_option.
- * cp/decl2.c: Similarly.
- * cp/lex.c (lang_init_options): Rename cxx_init_options.
- (lang_hooks): Update.
- * f/com.c (f_init, f_finish): Rename ffe_init, ffe_finish
- for consistency.
- (lang_init_options): Rename ffe_init_options.
- (lang_hooks): Update.
- (lang_decode_option): Remove.
- * java/lang.c (lang_init_options): Rename java_init_options.
- (lang_decode_option): Rename java_decode_option.
- (lang_hooks): Update.
- * objc/objc-act.c (lang_init_options): Rename objc_init_options.
- (lang_decode_option): Rename objc_decode_option.
- (lang_hooks): Update.
-
-2001-01-09 Nick Clifton <nickc@redhat.com>
-
- * config/d30v/d30v.c (d30v_eh_epilogue_sp_ofs): Delete.
- (d30v_return_addr_rtx): Delete.
- (d30v_expand_epilogue): Use eh_epilogue_sp_ofs field in the
- cfun->machine structure.
- (struct machine_function): Move to d30v.h
- (d30v_save_machine_status): Delete.
- (d30v_restore_machine_status): Delete.
- (d30v_init_machine_status): New Function.
- (d30v_mark_machine_status): New Function.
- (d30v_free_machine_status): New Function.
- (d30v_init_expanders): Use new functions.
- (d30v_return_addr): Use ra_rtx field in cfun->machine.
- (d30v_add_gc_roots): Remove d30v_eh_epilogue_sp_ofs and
- d30v_return_addr_rtx.
-
- * config/d30v/d30v.h (struct_machine): Move here.
- Add eh_epilogue_sp_ofs field.
-
- *config/d30v/d30v.md (epilogue): Initialize eh_epilogue_sp_ofs
- field in cfun->machine structure.
-
-Tue Jan 9 21:34:57 2001 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa32-regs.h (CONDITIONAL_REGISTER_USAGE): When generating pic code,
- PIC_OFFSET_TABLE_REGNUM_SAVED is a call_used register.
- * pa64-regs.h (CONDITIONAL_REGISTER_USAGE): Likewise.
-
-Tue Jan 9 21:25:19 2001 Jeffrey A Law (law@cygnus.com)
-
- * objc/lang-options.h: Remove bogus reference to
- Java trademark.
-
-2001-01-09 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.c (get_shift_alg): Use a struct shift_info to
- return the result.
-
-2001-01-09 Alan Lehotsky <lehotsky@tiac.net>
-
- * reload.c (find_reloads_address): Check for eliminable registers
- when substituting a constant expression for a pseudo.
-
-2001-01-09 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (enum format_type): Add format_type_error.
- (decode_format_type): New function.
- (decl_attributes): Use it.
- (format_kind_info): Adjust comment.
-
-2001-01-09 David O'Brien <obrien@BSDi.com>
-
- * config.gcc (*-*-gnu*, i[34567]86-*-elf*, i[34567]86-*-linux*libc1,
- i[34567]86-*-linux*, i[34567]86-*-moss*): Specify needed platform specific
- files in tm_file.
- * config/i386/gnu.h: Don't include required platform specific .h files,
- tm.h will do it instead.
- * config/i386/i386elf.h: Likewise.
- * config/i386/linux.h: Likewise.
- * config/i386/moss.h: Likewise.
- * config/mips/gnu.h: Likewise.
-
-2001-01-09 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * config.gcc (powerpc-*-beos*): Include ${tm_file} and rs6000/aix.h.
- (rs6000-ibm-aix3.[01]*): Likewise.
- (rs6000-ibm-aix3.2.[456789]*, powerpc-ibm-aix3.2.[456789]*): Likewise.
- (rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*): Likewise.
- (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Likewise.
- (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
- (powerpc-*-sysv*): Include {tm_file}. svr4.h and rs6000/sysv4.h.
- (powerpc-*-eabiaix*): Likewise.
- (powerpc-*-eabisim*): Likewise.
- (powerpc-*-elf*): Likewise.
- (powerpc-*-eabi*): Likewise.
- (powerpc-*-rtems*): Likewise.
- (powerpc-*-linux*libc1): Likewise.
- (powerpc-*-linux*): Likewise.
- (powerpc-wrs-vxworks*): Likewise.
- (powerpcle-wrs-vxworks*): Likewise.
- (powerpcle-*-sysv*): Likewise.
- (powerpcle-*-elf*): Likewise.
- (powerpcle-*-eabisim*): Likewise.
- (powerpcle-*-eabi*): Likewise.
- (powerpcle-*-solaris2*): Likewise.
- * config/rs6000/aix31.h: Delete includes.
- * config/rs6000/aix3newas.h: Likewise.
- * config/rs6000/aix41.h: Likewise.
- * config/rs6000/aix43.h: Likewise.
- * config/rs6000/beos.h: Likewise.
- * config/rs6000/rtems.h: Likewise.
- * config/rs6000/sysv4.h: Likewise.
-
-2001-01-09 Kazu Hirata <kazu@hxi.com>
-
- * config/h8300/h8300.c (get_shift_alg): Remove an argument cpu.
- Change an argument mode of machine_mode to shift_mode of
- shift_mode. Remove an extra error check.
- (emit_a_shift): Adopt to the new calling prototype of
- get_shift_alg.
- (function_prologue): Fix code for a monitor
- function. Support H8S.
- (function_epilogue): Do not output pop for a monitor function.
-
-2001-01-09 Nick Clifton <nickc@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_sysv_varargs_p): Delete.
- (setup_incoming_varargs): Use sysv_varargs_p field of the
- cfun->machine structure.
- (struct machine_function): Move to rs6000.h
- (rs6000_save_machine_status): Delete.
- (rs6000_restore_machine_status): Delete.
- (rs6000_init_machine_status): New Function.
- (rs6000_free_machine_status): New Function.
- (rs6000_init_expanders): Use new functions.
-
- * config/rs6000/rs6000.h (rs6000_sysv_varargs_p): Delete
- export.
- (struct machine_function): Move here.
-
- * config/rs6000/sysv4.h (RS6000_VARARGS_AREA): Use
- sysv_varargs_p field of the cfun->machine structure.
-
- * config/rs6000/rs6000-protos.h (rs6000_save_machine_status):
- Remove prototype.
- (rs6000_restore_machine_status): Remove prototype.
-
-2001-01-09 Richard Henderson <rth@redhat.com>
-
- * sched-int.h (struct deps): Add max_reg, reg_last_in_use; merge
- reg_last_uses, reg_last_sets, reg_last_clobbers into struct deps_reg.
- * sched-deps.c (sched_analyze_1): Update uses of struct deps.
- (sched_analyze_2, sched_analyze_insn): Likewise.
- (sched_analyze, init_deps): Likewise.
- (free_deps): Likewise. Iterate with EXECUTE_IF_SET_IN_REG_SET.
- * sched-rgn.c (propagate_deps): Likewise. Remove max_reg argument.
- (compute_block_backward_dependences): Update propagate_deps call.
-
-2001-01-09 Mark Elbrecht <snowball3@bigfoot.com>
-
- * gcc.c (process_command): Set switches[n_switches].ordering to 0.
-
-2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (OPT_MD, OPT_MMD): Restore.
- (cpp_handle_option): Handle them.
- (cpp_post_options): Ensure one of -M or -MM is specified with
- any other -M? option.
- (init_dependency_output): Suppress output with -MG.
-
-2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi: Update.
- * invoke.texi: Update.
-
-2001-01-09 Bernd Schmidt <bernds@redhat.com>
-
- * sh.md (reload_outsf): Generate recognizable patterns for
- TARGET_SH3E.
-
-2001-01-09 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lang.c (lang_hooks): Update.
- (lang_init): Rename c_init.
- (lang_finish): Remove.
- * toplev.c (compile_file): Use lang_hooks for lang_init ()
- and lang_finish ().
- * toplev.h (lang_hooks): Add init () and finish ().
- * tree.h (lang_init, lang_finish): Remove.
- * cp/tree.h (lang_init, lang_finish): Remove.
- * cp/decl2.c (cxx_post_options, lang_hooks): Move to cp/lex.c.
- * cp/lex.c (cxx_init, cxx_finish, cxx_post_options,
- lang_hooks): New.
- (lang_init, lang_finish): Remove.
- * f/com.c (lang_init, lang_finish): Rename f_init, f_finish.
- (lang_hooks): Update.
- * java/lang.c (lang_init): Rename java_init.
- (lang_finish): Remove.
- (lang_hooks): Update.
- * objc/objc-act.c (lang_init): Rename objc_init.
- (lang_finish): Remove.
- (lang_hoooks): Update.
-
-20001-01-09 Graham Stott <grahams@redhat.com>
-
- * cppfiles.c (_cpp_execute_include): Move `len` initialisation
- after `ptr` is initialized.
-
-2001-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.h (STATIC_CHAIN_REGNUM): Change from r13 to r3.
- (INITIALIZE_TRAMPOLINE): Adjust accordingly.
- * config/sh/sh.c (sh_expand_prologue): Use r1 as temporary for
- stack adjusts, instead of r3.
-
-2001-01-09 Michael Hayes <mhayes@redhat.com>
-
- * flow.c (flow_loop_scan): Break out of ...
- (flow_loops_find) ... here.
- * basic-block.h (flow_loop_scan): New.
- (LOOP_ENTRY_EDGES, LOOP_EXIT_EDGES): Add.
- (LOOP_EDGES, LOOP_EXITS_DOMS, LOOP_ALL): Redefine.
-
-2001-01-09 Alexandre Oliva <aoliva@redhat.com>
-
- * cppinit.c (cpp_cleanup): NULLify macro_buffer and zero
- macro_buffer_len.
- * cppmacro.c (cpp_macro_definition): Reset macro_buffer_len when
- realloc()ing macro_buffer.
-
- * hwint.h (HOST_BITS_PER_WIDE_INT, HOST_WIDE_INT): Use long long
- if it's wider than long and the target's long is wider than the
- host's.
-
-2001-01-09 Mark Mitchell <mark@codesourcery.com>
-
- Remove support for using UWIN as a host machine.
- * configure.in: Issue an error message.
- * configure: Regenerated.
- * config.gcc: Remove xm_* UWIN configury.
- * config/i386/xm-uwin.h: Remove.
-
-2001-01-08 Nick Clifton <nickc@redhat.com>
-
- * config/v850/v850.c (ra_rtx): Delete.
- (v850_save_machine_status): Delete.
- (v850_restore_machine_status): Delete.
- (v850_init_machine_status): New function.
- (v850_mark_machine_status): New function.
- (v850_free_machine_status): New function.
- (v850_return_addr): Use ra_rtx field in machine structure.
- (v850_init_expanders): Use new functions.
-
- * config/v850/v850-protos.h: Fix prototypes for v850_output_*
- * config/v850/v850.c: Change arguments to v850_output+* functions
- to take a const char *, to avoid compile time warning.
- * config/v850/v850.h (ASM_OUTPUT_LABELREF): Undefine, not needed.
- (USER_LABEL_PREFIX): Redefine.
-
-2000-01-08 Jim Wilson <wilson@redhat.com>
-
- * sched-rgn.c (BITSET_ADD, BITSET_REMOVE, bitset_member): Cast
- 1 to unsigned HOST_WIDE_INT before left shift.
-
-2001-01-08 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (arm_mark_machine_status): Check to see if
- the machine structure has been allocated.
- (arm_free_machine_status): New function: Free the machine
- specific function structure.
-
-2001-01-08 Richard Henderson <rth@redhat.com>
-
- * jump.c (simplejump_p): Revert last change.
-
-2001-01-08 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cppinit.c (init): Rename init_library.
- (cpp_create_reader): Update.
- * gcc.c (cpp_options): If -o given, use it as the target of
- any -M options.
-
-2001-01-08 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_arch5e): New variable.
- (all_cores): XScale is a 5TE device.
- (arm_override_options): Set arm_arch5e.
- (arm_init_builtins): __builtin_prefetch is in arch5e.
- * arm.h (arm_arch5e): Declare it.
-
- * arm.h (PREDICATE_CODES): Add arm_hard_register_operand.
-
- * arm.md (define_constants): Add defines for UNSPEC and
- UNSPEC_VOLATILE insns. Update all users.
- (define_constants): Add constants for IP_REGNUM, SP_REGNUM, PC_REGNUM.
- * arm.c (multi_register_push, note_invalid_constants)
- (emit_multi_reg_push, emit_sfm, expand_prologue): Use constants.
- * arm.h (SP_REGNUM, IP_REGNUM, PC_REGNUM): Delete defines.
- (STACK_POINTER_REGNUM): Define in terms of SP_REGNUM.
-
-Mon Jan 8 16:14:56 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * jump.c (jump_optimize_1): Use reversed_comparison_code
- instead of can_reverse_comparison_p.
- (jump_back_p): Likewise.
- (invert_exp_1): Likewise.
- (thread_jumps): Likewise.
- * simplify-rtx.c (simplify_unary_operation): Likewise.
- (simplify_ternary_operation): Likewise.
- * cse.c (find_comparison_args): Convert to use
- can_reverse_comparison_p.
- (record_jump_equiv): Likewise.
-
-2001-01-08 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.h (HARD_REGNO_RENAME_OK): Delete.
- (EPILOGUE_USES): Define.
- (INITIAL_ELIMINATION_OFFSET): Current prologue code does not
- automatically stack the LR if it isn't live.
-
-Mon Jan 8 13:46:02 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Take care to reverse fp conditions
- properly.
-
-Sun Jan 7 18:37:43 2001 Mark P Mitchell <mark@codesourcery.com>
-
- * ggc-page.c (max_alignment): New structure.
- (MAX_ALIGNMENT): New macro.
- (init_ggc): Use it to round up the sizes in the
- extra_order_size_table.
-
-2001-01-07 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * config/rs6000/rs6000.h (EPILOGUE_USES): New, mark link register
- after reload.
-
-2001-01-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.def (BUILT_IN_FPRINTF): New entry.
-
- * c-common.c (c_expand_builtin_fprintf): New function.
- (init_function_format_info): Handle __builtin_fprintf.
- (c_common_nodes_and_builtins): Declare fprintf/__builtin_fprintf.
- (c_expand_builtin): Handle BUILT_IN_FPRINTF.
-
- * c-decl.c (duplicate_decls): Adjust comment.
-
- * extend.texi (fprintf): Document new builtin.
-
-2001-01-07 Richard Henderson <rth@redhat.com>
-
- * jump.c (simplejump_p): Recognize any single_set jump
- of the proper form.
-
-2001-01-07 Richard Henderson <rth@redhat.com>
-
- * configure.in (slibdir): Accept an --with-slibdir option.
- Use "test" not "[" in configure. Default to $(libdir).
-
- * config/t-linux (SHLIB_INSTALL): Double quote slibdir;
- fix typo in rm -f.
- * config/t-aix43 (SHLIB_INSTALL): Likewise.
- * config/alpha/t-osf4 (SHLIB_INSTALL): Likewise.
- (SHLIB_LINK): Create links for the soname.
- * config/mips/t-iris6: Likewise.
- * config/sparc/t-slibgcc: Likewise.
- * config/sparc/t-slibgcc-sld: Likewise.
-
-2001-01-07 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (constant_call_address_operand): Accept
- (const (plus (symbol_ref) (const_int))).
- * config/i386/i386.h (PREDICATE_CODES): Add CONST for
- constant_call_address_operand.
-
-2001-01-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * libgcc2.h (W_TYPE_SIZE): Fix case where MIN_UNITS_PER_WORD == 1
- and LONG_LONG_TYPE_SIZE > 32.
-
-2001-01-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * jump.c (reversed_comparison_code_parts): Fix typo introduced by
- the previous change.
-
-Sun Jan 7 19:37:48 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * jump.c (reversed_comparison_code_parts, reversed_comparison_code):
- New.
- (can_reverse_comparison_p): Rewrite to use reversed_comparison_code.
- (reverse_condition_maybe_unordered): Abort on unsigned comparisons.
- * rtl.h (reversed_comparison_code_parts, reversed_comparison_code):
- Declare.
-
-2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * fix-header.c (read_scan_file): s/pfile/scan_in/.
-
-2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lang.c (c_post_options): Call cpp_post_options.
- * objc/objc-act.c (objc_post_options): Similarly.
- * cppmain.c (main): Similarly.
- * fix-header.c (read_scan_file): Similarly.
- * cppinit.c (cpp_start_read): Move option consistency checks
- to cpp_post_options. Don't call init_dependency_output.
- If needed, add default target and main file dependency.
- (OPT_MD, OPT_MMD): Remove.
- (OPT_MF): New.
- (cpp_handle_option): Update for OPT_* changes.
- (cpp_post_options): New.
- (init_dependency_output): Command line -MF overrides environment
- variables. Don't set default target etc. Suppress output
- if dependencies are going to stdout.
- (print_help): Update.
- * cpplib.h (cpp_post_options): New.
- * gcc.c (cpp_options): Update for -MD, -MMD, -MF.
-
-Sun Jan 7 14:44:19 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * jump.c (comparison_dominates_p): Support unordered compares.
-
-Sun Jan 7 14:39:07 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (simplify_relational_operation): Always simplify
- ORDERED and UNORDERED when FLAG_FAST_MATH. Handle properly UNLE
- and UNGE.
-
-Sun Jan 7 14:35:13 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * combine.c (combine_simplify_rtx): Recognize the unordered compares.
- (nonzero_bits): Likewise.
- (simplify_comparison): Likewise.
- (num_sign_bit_copies): Likewise; return more sane value depending
- on STORE_FLAG_VALUE.
- (known_cond): Do not assume EQ to be always true for equivalent
- operands.
-
-Sun Jan 7 14:31:57 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * cse.c (fold_rtx): Handle unordered comparisons.
-
-Sun Jan 7 13:49:19 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * rtlanal.c (set_of_1): New static function.
- (reg_set_last_1, reg_set_p_1, reg_set_reg, reg_set_flag,
- reg_set_last_unknown, reg_set_last_value, reg_set_last_first_regno,
- reg_set_last_last_regno): Remove.
- (set_of): New global function.
- (set_of_data): New structure.
- (reg_set_p, reg_set_last): Revamp for set_of.
- * rtl.h (set_of): New.
-
-2001-01-07 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (c_common_nodes_and_builtins): Add _Exit builtin.
- * extend.texi: Document _Exit builtin.
-
-2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * (initialize, initialize_builtins,
- initialize_dependency_output, initialize_standard_includes):
- Rename s/initialize/init. Update.
- (init_dependency_output): Move to after
- cpp_handle_options, the correct location temporally at least.
- (opt_comp): Move next to init (), its caller. Fix prototype.
- (init): Make "initialized" local scope.
- (cpp_create_reader): Always call init ().
- (cpp_start_read): Update.
- (output_deps): New function, broken out of cpp_finish.
- (cpp_finish): Break out output_deps.
-
-2001-01-07 Richard Henderson <rth@redhat.com>
-
- * collect2.c (COFF specific stuff): Revert 12-06 patch
- to prototype system functions.
-
-2001-01-07 Michael Hayes <mhayes@redhat.com>
-
- * hard-reg-set.h: Add multiple include guard.
- * basic-block.h (struct loop): Add `sink' field.
- * loop.h: Include sbitmap.h, hard-reg-set.h, and basic-block.h.
- (emit_iv_add_mult): Delete.
- (loop_iv_add_mult_hoist, loop_iv_add_mult_sink): Define.
- (loop_iv_add_mult_emit_before, loop_insn_sink): Define.
- (unroll_loop): Remove end_insert_before argument.
- * loop.c (loop_givs_rescan): Remove end_insert_before argument.
- (maybe_eliminate_biv_1): Likewise.
- (emit_iv_add_mult): Delete.
- (gen_add_mult, loop_regs_update): New.
- (loop_insn_emit_after, loop_insn_emit_before): New.
- (loop_insn_sink, loop_insn_sink_or_swim): New.
- (emit_iv_add_mult): Delete.
- (scan_loop): Set loop->sink.
- (loop_givs_reduce): Use loop_insn_sink and its ilk.
- (loop_givs_rescan, strength_reduce, check_dbra_loop): Likewise.
- (maybe_eliminate_biv_1): Likewise.
- (maybe_eliminate_biv_1): Add basic block argument.
- * unroll.c (unroll_loop): Remove end_insert_before argument.
- (find_splittable_regs): Likewise.
- (find_splittable_regs): Use loop_insn_sink and its ilk.
- (find_splittable_givs, final_biv_value, final_giv_value): Likewise.
-
-2001-01-07 Michael Hayes <mhayes@redhat.com>
-
- * loop.h (loop_insn_hoist): New prototype.
- * loop.c (loop_insn_hoist, loop_insn_emit_before): New.
- (move_movables, loop_givs_rescan): Use loop_insn_hoist.
- (check_dbra_loop, load_mems): Likewise.
- * unroll.c (unroll_loop, find_splittable_regs): Likewise.
- (find_splittable_givs): Likewise.
-
-2001-01-07 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (emit_iv_add_mult): Use single_set to examine new insn.
-
-2001-01-07 Richard Henderson <rth@redhat.com>
-
- * sched-rgn.c (is_cfg_nonregular): Fix thinko's last change.
-
-2001-01-07 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (DRIVER_DEFINES): Define ENABLE_SHARED_LIBGCC and
- NO_SHARED_LIBGCC_MULTILIB as required for the target.
- * gcc.c (init_spec): Massage the existing libgcc_spec into a
- variant that handles a shared libgcc.
- (process_command): Always validate -{static,shared}-libgcc.
- (do_spec_1): New 'M' case.
- * invoke.text (Link Options): Document -{static,shared}-libgcc.
-
-2001-01-07 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (slibdir): New variable.
- (libgcc.mk): Pass SHLIB_INSTALL to mklibgcc.
- (installdirs): Create slibdir.
- (install-libgcc, install-multilib): Defer to libgcc.mk.
- * configure.in (slibdir): Substitute.
- * mklibgcc.in (install): New target.
-
- * config/t-linux (SHLIB_LINK): Create links for the soname.
- (SHLIB_INSTALL): New.
- * config/alpha/t-osf4 (SHLIB_INSTALL): New.
- * config/mips/t-iris6 (SHLIB_INSTALL): New.
- * config/rs6000/t-aix43 (SHLIB_INSTALL): New.
- * config/sparc/t-slibgcc (SHLIB_INSTALL): New.
- * config/sparc/t-slibgcc-sld (SHLIB_INSTALL): New.
-
-2001-01-07 Richard Henderson <rth@redhat.com>
-
- * config/rs6000/aix.h (LINK_LIBGCC_SPECIAL_1): New.
- * config/rs6000/rs6000.h (LIBGCC_SPEC): Remove.
- * config/rs6000/sysv4.h (LIBGCC_SPEC): Remove.
-
-2001-01-07 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (count_loop_regs_set): Delete.
- (load_mems_and_recount_loop_regs_set): Delete.
- (loop_regs_scan): Merge common code from count_loop_regs_set,
- scan_loop, and load_mems_and_recount_loop_regs_set.
- (scan_loop): Call load_mems directly and loop_regs_scan
- again if new registers created.
-
-2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * toplev.c (main): Call the front-end specific post_options
- hook if one is given.
- * toplev.h (struct_lang_hooks, lang_hooks): New.
- * c-lang.c (c_post_options, lang_hooks): Implement lang_hooks
- for the C front end.
- * cp/decl2.c (cxx_post_options, lang_hooks): Implement
- lang_hooks for the C++ front end.
- * objc/objc-act.c (objc_post_options, lang_hooks): Implement
- lang_hooks for the ObjC front end.
- * f/com.c (lang_hooks): Hooks for the Fortran front end.
- * java/lang.c (lang_hooks): Hooks for the Java front end.
-
-2001-01-07 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * c-lex.c (init_c_lex): Request #define / #undef callbacks
- for verbose DWARF[2] debugging.
- (cb_define, cb_undef): The new callbacks.
- * toplev.h (debug_define, debug_undef): Make const correct.
- * toplev.c (debug_define, debug_undef): Similarly. Do not
- perform the verbosity tests here anymore.
-
-2001-01-07 Alexandre Oliva <aoliva@redhat.com>
-
- * reload.c (subst_reloads): Take INSN argument. When
- replacing a LABEL_REF in a JUMP_INSN, add a REG_LABEL note.
- * reload.h (subst_reloads): Adjust prototype.
- * reload1.c (reload_as_needed): Pass INSN to subst_reloads.
- * jump.c (mark_all_labels): Canonicalize any REG_LABEL notes
- present in JUMP_INSNs and copy them to JUMP_LABEL.
- * flow.c (find_label_refs, find_basic_blocks_1): Skip
- JUMP_INSNs and insns with REG_LABELs that are followed by
- JUMP_INSNs with the same REG_LABEL.
- * sched-rgn.c (is_cfg_nonregular): Likewise.
- * rtlanal.c (computed_jump_p): Make it false if a REG_LABEL
- note is available.
- * unroll.c (unroll_loop): Look for REG_LABEL notes in
- JUMP_INSNs too.
- * rtl.texi (REG_LABEL): Document usage in JUMP_INSNs.
-
-2001-01-06 Richard Henderson <rth@redhat.com>
-
- * loop.c (scan_loop): Use xcalloc for the regs array.
- (load_mems_and_recount_loop_regs_set): Zero the new memory
- received from xrealloc.
-
-2001-01-06 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * mkdeps.c (deps_add_dep): Fix vector re-allocation.
-
-Sat Jan 6 00:09:34 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * integrate.c (copy_rtx_and_substitute): When copying
- an ignored return value, strip REG_FUNCTION_VALUE_P.
-
-2001-01-06 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (debug_biv, debug_giv): New.
- (loop_biv_dump): Break out from ...
- (record_biv): ... here.
- (loop_giv_dump): Break out from ...
- (record_giv): ... here.
- (loop_bivs_check): Use print_simple_rtl.
- * unroll.c (loop_iterations): Use print_simple_rtl.
-
-2000-01-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (return, return_internal): Modify patterns to prevent regrename
- mucking with the return pointer.
-
-2001-01-05 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (mem_loc_descriptor) [case MEM]: Revert 10-31 change.
-
-Fri Jan 5 16:34:18 2001 Nick Clifton <nickc@redhat.com>
-
- * config/v850/lib1funcs.asm: Replace __mulsi3 routine with faster
- version supplied by Matteo Frigo.
-
-2001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi: Update for -MQ.
- * cppinit.c (cpp_create_reader): Always create pfile->deps.
- (cpp_cleanup): Always free pfile->deps.
- (initialize_dependency_output): Don't create pfile->deps.
- (cpp_handle_option): Similarly.
- (OPT_MQ): New.
- * gcc.c (cpp_options): Handle -MQ.
- (DEFAULT_WORD_SWITCH_TAKES_ARG): Add -MQ.
- * mkdeps.c (base_name): Remove.
- (deps_init): Don't allocate vector space until it's needed.
- (deps_free): Only free vectors if allocated.
- (deps_add_target, deps_add_dep): Update for initial allocation.
- (deps_add_default_target): Don't strip to the base_name.
-
-2001-01-05 DJ Delorie <dj@redhat.com>
-
- * config/v850/v850.h (RETURN_ADDR_RTX): Define.
- (INIT_EXPANDERS): Define.
-
- * config/v850/v850.c (struct machine_function): Define.
- (v850_save_machine_status): New function.
- (v850_restore_machine_status): New function.
- (v850_return_addr): New function.
- (v850_init_expanders): New function.
-
- * config/v850/v850-protos.h: Add prototypes for v850_return_addr
- and v850_init_expanders.
-
-2001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
-
- * cpplib.h (struct cpp_reader): Add help_only field.
- * cppinit.c (COMMAND_LINE_OPTIONS): Add OPT_version.
- (cpp_handle_option): Set pfile->help_only if we see -h,
- --help, -target-help, or --version. Print version string but
- do not set help_only if we see -v or -version. Make text
- printed by -v match that printed by (-)-version.
-
- * cppmain.c (main): Exit after option parsing if
- pfile->help_only is true.
-
- * toplev.c (independent_decode_option): Call print_version,
- then exit, if we see --version (but not -version).
- (print_version): Split lengthy message into two lines.
-
-2001-01-05 Nick Clifton <nickc@redhat.com>
-
- * config/v850/v850.c (v850_encode_data_area): Use alloca to create
- temporary string for initialisation before calling ggc_alloc_string.
-
-2001-01-06 Michael Hayes <mhayes@redhat.com>
-
- * rtl.h (print_simple_rtl): New.
- * print-rtl.c (print_simple_rtl): New.
- (flag_simple): New.
- (print_rtx): Disable printing of flags and modes, etc.,
- if `flag_simple` nonzero.
-
-2001-01-05 Zack Weinberg <zack@wolery.stanford.edu>
-
- * function.c (fixup_var_refs): Use push_to_full_sequence where
- possible.
-
-2001-01-05 Michael Meissner <meissner@redhat.com>
-
- * flags.h (flag_reorder_blocks): Add declaration.
- (flag_rename_block): Ditto.
-
-2001-01-05 DJ Delorie <dj@redhat.com>
-
- * function.c (reorder_blocks): Make sure the flags are all reset
- before using them to mark blocks, else a second invocation will
- corrupt the block chain.
- (reorder_blocks_0): New, resets the flags.
-
-Fri Jan 5 20:34:06 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * cse.c (find_comparison_args): Stop if the argument is known to
- be constant.
-
-2001-01-05 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (movdf): When splitting load into pair of
- registers, don't clobber the register used in the address too
- early.
-
-2001-01-05 Jeffrey Oldham <oldham@codesourcery.com>
-
- * varasm.c (mark_constant_pool): Improve initial comments.
- (mark_constants): Move marking of constants to mark_constant.
- (mark_constant): New function to recursively mark all constants
- referred to by a constant.
-
-2001-01-05 Catherine Moore <clm@redhat.com>
-
- * dbxout.c ((dbxout_parms): Handle invisible ref where decl is a REG.
-
-2001-01-05 Phil Edwards <pme@sources.redhat.com>
-
- * cp/lang-options.h: Bring comment in line with reality.
- * f/lang-options.h: Likewise.
- * java/lang-options.h: Likewise.
- * objc/lang-options.h: Likewise.
- * ch/lang-options.h: Likewise.
- * f/g77.texi: And update the manual.
-
-2001-01-05 Marek Michalkiewicz <marekm@linux.org.pl>
- Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr-protos.h (avr_peep2_scratch_safe): Prototype.
- * config/avr/avr.c (avr_peep2_scratch_safe): New function.
- * config/avr/avr.md (all peepholes that request a scratch register):
- Call it, FAIL the peephole if not safe (in interrupt functions).
-
-2001-01-05 Mark Mitchell <mark@codesourcery.com>
-
- * ggc-page.c (NUM_EXTRA_ORDERS): Hardwire to zero for now.
-
-2001-01-05 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * builtins.def (BUILT_IN_CONJ, BUILT_IN_CREAL, BUILT_IN_CIMAG):
- Define.
- * builtins.c (expand_builtin): Abort on BUILT_IN_CONJ,
- BUILT_IN_CREAL and BUILT_IN_CIMAG.
- * c-common.c (c_common_nodes_and_builtins): Create builtin conjf,
- conj, conjl, crealf, creal, creall, cimagf, cimag and cimagl.
- (expand_tree_builtin): Handle BUILT_IN_CONJ, BUILT_IN_CREAL and
- BUILT_IN_CIMAG.
- * extend.texi: Document these builtins.
-
-2001-01-05 Daniel Berlin <dberlin@redhat.com>
-
- * c-common.c (lang_get_alias_set): Say we know nothing of
- VECTOR_TYPE aliasing.
-
- * dwarf2out.c (is_base_type): Handle VECTOR_TYPE properly.
-
-2001-01-05 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/mkfixinc.sh(vax-*-bsd): convert exit and atexit calls to
- their x* equivalent versions for atexit-less systems
- * fixinc/fixincl.c(main): do not return from main() on atexit-less
- systems (or any other system any more).
-
-2001-01-05 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (ldmsi_postinc): Avoid use of match_dup between input and
- output operands. Use arm_hard_register_operand for operand 4.
- (stmsi_postinc): Similarly.
- (ldmsi): Use arm_hard_register_operand for opernand 2.
- (stmsi): Similarly.
- * arm.c (arm_hard_register_operand): New function.
- * arm-protos.h (arm_hard_register_operand): Prototype it.
-
- * arm.h (HARD_REGNO_RENAME_OK): Define.
-
-Fri Jan 5 16:29:49 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * simplify-rtx.c (cfc_args): add "unordered" field.
- (check_fold_consts): Set unordered field.
- (simplify_relational_operation): Simplify the unordered
- comparisons.
-
- * reg-stack.c (swap_rtx_condition): Ensure that the transformation
- is valid.
-
- * emit-rtl.c (try_split): Fix code to mark labels.
- * jump.c (mark_jump_label): Make global.
- * rtl.h (mark_jump_label): Declare.
-
- * predict.c (estimate_probability): Handle unordred comparisons.
-
-2001-01-05 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi: Update for -MP. Clarify behavior of -MT.
- * cppinit.c (initialize_dependency_output): Update.
- (cpp_finish): Output dummy targets for -MP.
- (OPT_MP): New.
- (cpp_handle_option): Handle -MP. Don't quote -MT options.
- * cpplib.h (struct cpp_options): Add deps_phony_targets.
- * gcc.c (cpp_options): Update to handle -MP.
- * mkdeps.c (deps_add_target, deps_add_default_target): Update
- to quote only the default target.
- (deps_phony_targets): Insert a preceding newline. Rename from
- deps_dummy_targets for consistency.
- * mkdeps.h: Update
-
-2001-01-05 Alexandre Oliva <aoliva@redhat.com>
-
- * calls.c (emit_library_call_value_1): Support
- INIT_CUMULATIVE_LIBCALL_ARGS.
- * tm.texi (INIT_CUMULATIVE_LIBCALL_ARGS): Document it.
-
-2001-01-04 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (finish_struct): Detect flexible array members
- used in an inappropriate context.
- * c-typeck.c (really_start_incremental_init): Special case
- constructor_max_index for zero length arrays.
- (pop_init_level): Allow initialization of flexible array
- members. Deprecate initialization of zero length arrays.
- Don't issue missing initializer warning for flexible array
- members or zero length arrays.
- (process_init_element): Don't dereference null DECL_SIZE.
- * varasm.c (array_size_for_constructor): Return a HOST_WIDE_INT.
- Don't abort for empty constructors. Use size_binop
- (output_constructor): Add commentary regarding zero length
- array futures. Abort if we try to initialize an array of
- unspecified length with a non-empty constructor in the middle
- of a structure.
-
- * extend.texi (Zero Length): Update and clarify documentation
- on static initialization.
-
-2001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_expand_prologue): Don't compile an ISR
- with more than 32767 words of local storage.
-
-2001-01-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_init_builtins): Remove builtin support
- for 'abs', 'labs', and 'fabs'.
- (c4x_expand_builtin): Likewise.
- * config/c4x/c4x.h (enum c4x_builtins): Likewise.
-
-2001-01-05 Alexandre Oliva <aoliva@redhat.com>
-
- * config/sh/sh.md (prget, prset): New insn types.
- (return delay slot): Don't allow prset.
- (call, sfunc delay slot): Don't allow prget.
- (movsi_i, movsi_ie, movsi_i_lowpart): Create separate alternatives
- for prset and prget.
-
-2001-01-05 Michael Hayes <mhayes@redhat.com>
-
- * loop.h (struct loop_reg): New.
- (struct loop_regs): Change to use array of `struct loop_reg'.
- * loop.c: Replace assortment of varrays with single regs array.
- (count_one_set): Delete may_not_move array argument
- and use regs array instead. All caller's changed.
- (count_loop_regs_set): Delete may_not_move and single_usage
- arguments and use regs array instead. All caller's changed.
- (find_single_use_in_loop): Replace usage array argument with pointer
- to regs structure. All caller's changed.
- (loop_optimize): Delete `moved_once' array.
-
-2001-01-05 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (prescan_loop): Set loop_info->has_nonconst_call.
- Use it instead of loop_info->has_call for scanning loop mems.
- (check_dbra_loop): Replace loop_info->has_call test with
- loop_info->has_nonconst_call.
-
-2000-01-04 Matthew Hiller <hiller@redhat.com>
-
- * config/sh/sh.h (EPILOGUE_USES): Recognize fpscr as epilogue-used
- for TARGET_SH3E.
-
-2001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * fold-const.c (fold): When folding a CONJ_EXPR of a COMPLEX_CST,
- use TREE_REALPART and TREE_IMAGPART instead of TREE_OPERAND.
-
-2001-01-04 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (SIZE_TYPE, WCHAR_TYPE): Define.
- (flag_short_double, flag_short_wchar): Define.
- (c_common_nodes_and_builtins): Create many tree nodes shared
- between C and C++ here instead of in cp/decl.c and ...
- * c-decl.c (init_decl_processing): ... here.
- (SIZE_TYPE, WCHAR_TYPE): Don't define.
- (flag_short_double, flag_short_wchar): Don't define.
- (record_builtin_type): New function.
- (build_void_list_node): New function.
- * c-common.h (flag_short_double, flag_short_wchar,
- record_builtin_type, build_void_list_node): Declare.
-
-Thu Jan 4 21:09:47 2001 J"orn Rennecke <amylaar@redhat.com>
-
- * integrate.c (expand_inline_function): Don't put a virtual
- register into the reg map.
-
- * function.c (fixup_var_refs_1): If force_operand didn't put
- the address into the target, move it there.
-
-2001-01-04 Mark Mitchell <mark@codesourcery.com>
-
- Special-case tree_decl/tree_list allocations.
- * ggc-page.c (OBJECT_PER_PAGE): Reimplement.
- (OBJECT_SIZE): New macro.
- (NUM_EXTRA_ORDER): Likewise.
- (extra_order_size_table): New variable.
- (NUM_ORDERS): New macro.
- (objects_per_page_table): New variable.
- (object_size_table): New variable.
- (G.pages): Use NUM_ORDERS to bound the array.
- (G.page_tails): Likewise.
- (DIV_ROUND_UP): Remove.
- (BITMAP_SIZE): Use CEIL, instead of DIV_ROUND_UP.
- (alloc_page): Use OBJECT_SIZE.
- (size_lookup): Don't make it const.
- (ggc_alloc): Use OBJECT_SIZE.
- (ggc_set_mark): Likewise.
- (ggc_get_size): Likewise.
- (init_ggc): Set up the object_size_table, objects_per_page_table,
- and adjust size_lookup.
- (ggc_recalculate_in_use_p): Use CEIL, not DIV_ROUND_UP.
- (ggc_pop_context): Use NUM_ORDERS.
- (clear_marks): Likewise.
- (sweep_pages): Likewise.
- (poison_pages): Likewise.
- (ggc_print_statistics): Use OBJECT_SIZE.
-
-Thu Jan 4 15:54:05 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * varasm.c (output_constructor): Use HOST_WIDE_INT for sizes.
- Only call array_size_for_constructor if last field and array type
- with no upper bound.
-
-2001-01-04 Philip Blundell <philb@gnu.org>
-
- * config/arm/arm.c (arm_gen_constant): Prefer to emit constants
- from bit 31 downwards, if this requires no more insns.
- (count_insns_for_constant): New helper function for above.
-
-2001-01-04 Alexandre Oliva <aoliva@redhat.com>
-
- * gencodes.c (output_predicate_decls): Remove empty initializer.
-
-2001-01-04 Mark Mitchell <mark@codesourcery.com>
-
- * tree.c (copy_node): Remove documentation about obstacks.
- (buidl1): Check that nobody tries to build 2-argument nodes this
- way.
-
-2001-01-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * sparc.h (PREDICATE_CODES): Delete fp_sethi_p, fp_mov_p and
- fp_high_losum_p.
-
- * gencodes.c (output_predicate_decls): Fill empty initializer
- braces.
-
-2001-01-04 Jakub Jelinek <jakub@redhat.com>
-
- * tradcpp.c (deps_file, print_deps_missing_files): New variables.
- (main): Handle -MG, -MD, -MMD. Bail out if -MG is given without -M
- or -MM.
- (do_include): Handle missing headers like cpp0.
- * cppfiles.c (_cpp_execute_include): Don't prefix absolute header
- paths with first include pathname. Don't strcat to uninitialized
- string.
-
-2001-01-04 Bernd Schmidt <bernds@redhat.com>
-
- * regrename.c (regrename_optimize): Don't rename from frame pointer
- if frame_pointer_needed.
- (do_replace): Don't set ORIGINAL_REGNO to a hard register number.
- * config/ia64/ia64.c (emit_all_group_insn_barriers): New function.
- (ia64_reorg): Use it instead of scheduling if ! optimize.
- (errata_emit_nops): Properly call asm_noperands.
- (ia64_sched_reorder): Finish cycle if we see an asm.
- (ia64_variable_issue): Clear scheduling state after asms.
-
-2001-01-04 Neil Booth <neil@daikokuya.demon.co.uk>
-
- * cpp.texi: Update for -MT.
- * cppinit.c (initialize_dependency_output): Add a default
- target if none has been given already.
- (no_tgt, OPT_MT): New.
- (cpp_handle_option): Handle -MT. Update -M etc.
- * cpplib.h (struct cpp_options): Remove deps_target.
- * gcc.c (cpp_options): Handle -MT.
- * mkdeps.c (struct deps): Move from mkdeps.h.
- (deps_calc_target): Rename deps_add_default_target. Add a
- default target if none has been specified already.
- * mkdeps.h (struct deps): Move to mkdeps.c.
- (deps_calc_target): Rename deps_add_default_target.
-
-2000-01-03 Richard Henderson <rth@redhat.com>
-
- * c-decl.c (grokdeclarator): Give zero-length arrays size zero.
- Remove dead code.
- * c-typeck.c (push_init_level): Move checks for flexible array
- members and zero length arrays ...
- (pop_init_level): ... here. Silently discard empty initializations.
- Remove dead code.
- * varasm.c (output_constructor): Update for sizeof change to
- zero-length arrays.
-
- * extend.texi (Zero Length): Clarify semantics.
-
-2001-01-03 Alexandre Oliva <aoliva@redhat.com>
-
- * configure.in (tm.h): Include isns-codes.h last.
- * configure: Rebuilt.
-
-2001-01-03 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.md (addvsi3, addvdi3): New.
- (negvsi2, negvdi2, subvsi3, subvdi3, mulvsi3, mulvdi3): New.
-
-2001-01-03 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * tradcpp.c (main): Make sure finclude() is called with a valid
- indepth value while handling -include.
-
-2001-01-03 Alexandre Oliva <aoliva@redhat.com>
-
- * gencodes.c (output_predicate_decls): New function.
- (main): Call it.
- * machmode.h (GET_MODE_MASK): Arrange for it to be defined
- even if it is not the first time machmode.h is #included.
- * config/sh/sh.c (fpul_operand): Declare MODE argument.
- * tm.texi (PREDICATE_CODES): Document predicate declarations.
- * gcc.texi (Copyright): Added 2001.
-
-2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * c-common.c (c_common_lang_init): New function. Warn if format
- warning options which only have effects when used with -Wformat
- are used without -Wformat.
- * c-common.h (c_common_lang_init): Declare.
- * c-lang.c (lang_init): Call c_common_lang_init.
- * objc/objc-act.c (lang_init): Call c_common_lang_init.
-
-2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * configure.in: Check for the mktemp command.
- * configure: Regenerate.
- * gccbug.in: Use a separate temporary file $TEMP0 for one use of
- $TEMP. Create temporary files with mktemp, if available at
- configure time; otherwise use set -C. Remove temporary files
- before exit.
-
-2001-01-03 Joseph S. Myers <jsm28@cam.ac.uk>
-
- * configure.in: Require at least texinfo 4.0. Check for whether
- Pod::Man is sufficiently recent to regenerate GCC manpages.
- * configure: Regenerate.
- * Makefile.in (TEXI2POD): Call perl explicitly rather than relying
- on #!.
- (GENERATED_MANPAGES): Define.
- (generated-manpages): New target. Depend on cpp.1 as well as
- gcov.1.
- (install-man): Depend on $(GENERATED_MANPAGES) (defined by
- configure to generated-manpages or empty) rather than on the
- manpages directly. Remove execute permission from installed
- gcov.1 as well as cpp.1.
- * cpp.1, gcov.1: Regenerate.
-
-2001-01-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * builtins.c (expand_builtin_strncmp): Use host_integerp and
- tree_low_cst. Allow using cmpstrsi in more cases.
-
-Wed Jan 3 10:48:43 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/sparc/sparc.h (RETURN_IN_MEMORY): Return 0 for variable
- sized types.
-
-Wed Jan 3 12:22:32 2001 Alexandre Oliva <aoliva@redhat.com>
-
- * build-make (HOST_CFLAGS): Added `-DGENERATOR_FILE'.
- * Makefile.in (HOST_CFLAGS): Mention build-make.
-
-Wed Jan 3 08:53:50 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config/sparc/sparc.md (nonlocal_goto): Emit goto_handler_and_restore
- as JUMP_INSN.
-
-2001-01-01 Bernd Schmidt <bernds@redhat.com>
-
- * builtins.c (expand_builtin_return_addr): Don't use MEM_ALIAS_SET on
- a REG rtx.
-
- * cse.c (cse_rtx_varies_p): Accept additional FROM_ALIAS arg. All
- callers changed.
-
- * alias.c (throughout): Use ORIGINAL_REGNO when accessing
- reg_base_value and reg_known_value arrays.
- (init_alias_analysis): Add more cases to detect known values.
- * sched-deps.c (deps_may_trap_p): New function.
- (sched_analyze_2): Use it.
-
-2001-01-03 Alexandre Oliva <aoliva@redhat.com>
-
- * combine.c (simplify_shift_const): Even if we're sign-extracting,
- don't discard an ASHIFTRT if we're shifting in a wider mode.
-
-2000-01-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * toplev.c (rest_of_compilation): Don't print basic block information
- when CFG isn't up to date.
-
-2001-01-02 Mark Elbrecht <snowball3@bigfoot.com>
-
- * config/i386/djgpp.h (DWARF2_DEBUGGING_INFO): Define.
- (UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_ASM_OP): Define.
- (UNALIGNED_SHORT_ASM_OP): Define.
- (CPP_PREDEFINES): Remove defines for GO32 and DJGPP.
-
-2001-01-02 Mark Mitchell <mark@codesourcery.com>
-
- * fold-const.c (fold_convert): Fix typo.
-
-2001-01-02 Richard Henderson <rth@redhat.com>
-
- * c-common.h (ASM_INPUT_P): New.
- * c-parse.in (asm): Set it when needed.
- * c-semantics.c (genrtl_asm_stmt): Test it instead of the
- existence of an operand.
-
-Tue Jan 2 20:27:07 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * dwarf2out.c (stack_adjust_offset): Handle PRE_MODIFY.
- (dwarf2out_frame_debug_expr): Likewise.
- (mem_loc_descriptor): Handle PRE and POST_MODIFY.
-
-Tue Jan 2 20:21:31 MET 2001 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_split_to_parts): Return number of part required;
- handle TFmodes.
- (print_operand, ix86_expand_branch, ix86_expand_fp_movcc): Handle
- TFmodes.
- (ix86_split_long_move): Use number of part returned
- by ix86_split_to_parts
- * i386.h (MASK_128BIT_LONG_DOUBLE, TARGET_128BIT_LONG_DOUBLE):
- New macros.
- (TARGET_SWITCHES): Add 128bit-long-double and 96bit-long-double
- (LONG_DOUBLE_TYPE_SIZE): Change from constant.
- (MAX_LONG_DOUBLE_TYPE_SIZE): New macro.
- (INTEL_EXTENDED_IEEE_FORMAT): Likewise.
- (ALIGN_MODE_128): Add TFmode.
- (IS_STACK_MODE): Likewise.
- (HARD_REGNO_NREGS): TFmode needs 3 registers.
- (HARD_REGNO_OK): Support TFmodes.
- (ASM_OUTPUT_LONG_DOUBLE): Handle TFmodes.
- * i386.md (scheduler definitions): Use memory operand to determine
- fst/fld instructions; use mode attribute to determine real mode of
- the instruction.
- (*tf): New patterns, expanders and splitters; based on XFmode patterns.
- * invoke.texi (128bit-long-double, 96bit-long-double): Document.
-
-2001-01-02 Mark Mitchell <mark@codesourcery.com>
-
- * tree.def (TRUTH_NOT_EXPR): Improve documentation.
-
-Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
-
- * expr.c (store_constructor_field): Update ALIGN before calling
- store_constructor.
-
-2001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
-
- * config/mips/mips.c (function_arg): Don't pass NULL_TREE to
- host_integerp.
-
-2001-01-02 Jeffrey Oldham <oldham@codesourcery.com>
-
- * tm.texi (FUNCTION_ARG): Document that @var{type} can be an
- incomplete type.
-
-Tue Jan 2 10:47:38 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.
-
- * c-decl.c (start_function): Don't warn on third parameter to main.
-
-2001-01-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * tsystem.h: Define HAVE_DECL_GETOPT.
-
-2001-01-02 Philip Blundell <pb@futuretv.com>
-
- * config/arm/linux-gas.h (CLEAR_INSN_CACHE): Avoid illegal clobber
- of input operand.
-
-2001-01-02 Richard Henderson <rth@redhat.com>
-
- * alpha.md (*ze_and_ne): Duplicate insn condition to split.
-
-2001-01-02 Andreas Jaeger <aj@suse.de>
-
- * c-decl.c (c_decode_option): Remove support of
- -Wmissing-noreturn.
-
- * toplev.c (documented_lang_options): Remove -Wmissing-noreturn.
- (W_options): Add -Wmissing-noreturn here.
-
- * flow.c: Define lang_missing_noreturn_ok_p.
- (check_function_return_warnings): Use it.
-
- * c-common.h: Declare lang_missing_noreturn_ok_p.
-
- * c-lang.c (c_missing_noreturn_ok_p): New function.
- (lang_init): Set lang_missing_noreturn_ok_p.
-
- * invoke.texi (Warning Options): Document this.
-
-2000-12-27 Phil Edwards <pme@sources.redhat.com>
-
- * extend.texi (C++ Extensions): New node for C++ attributes;
- describe init_priority and com_interface.
- * invoke.texi: Remove -finit-priority as it now has zero effect.
- * install.texi: Fix xref syntax.
- * md.texi: Likewise.
-
-Mon Jan 1 21:28:29 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * config.gcc (sparc64-wrs-vxworks*): New case.
- * config/sparc/vxsparc64.h, config/sparc/t-vxsparc64: New files.
-
- * config/sparc/sparc.c (sparc_override_options): Do support different
- pointer and architecture size.
- * config/sparc/sparc.h (MIN_UNITS_PER_WORD): Always 4.
- (POINTERS_EXTEND_UNSIGNED): Define.
- (Pmode): Test TARGET_ARCH64, not TARGET_PTR64.
- (FUNCTION_MODE): Define to be Pmode.
- * config/sparc/sparc.md (64-bit call patterns): FUNCTION_MODE now DI.
-
- * function.c (expand_function_end): Properly handle DECL_RESULT
- and copy when ptr_mode != Pmode.
- * expmed.c (make_tree): Convert X from Pmode to ptr_mode, if needed.
-
-2001-01-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-common.c (c_common_nodes_and_builtins): Set prototype
- parameters for __builtin_fputs, __builtin_fputc and
- __builtin_fwrite. Don't declare plain fputc as a builtin.
-
-2001-01-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * loop.c (add_label_notes): Increment the label usage count when
- a note is added to an insn which refers to a CODE_LABEL.
- * gcse.c (add_label_notes): Likewise.
-
-2001-01-01 Andreas Jaeger <aj@suse.de>
-
- * loop.c (scan_loop): Use xmalloc to allocate movables.
-
-2001-01-01 Alexandre Oliva <aoliva@redhat.com>
-
- * tm.texi (REGISTER_MOVE_COST): Add a mode argument.
- * reload.c (REGISTER_MOVE_COST): Likewise. Adjust all callers.
- * reload1.c (REGISTER_MOVE_COST): Likewise.
- * regclass.c (REGISTER_MOVE_COST): Likewise.
- (move_cost, may_move_in_cost, may_move_out_cost): Add mode
- dimension. Adjust all users.
- (init_reg_sets_1): Iterate on all modes.
- * config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
- * config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
- * config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
- * config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
- * config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
- * config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
- * config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
- * config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
- * config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
- * config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
- * config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
- * config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
- * config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
- * config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
- * config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
- * config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
- * config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
- * config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
- * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
- * config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
- * config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
- * config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
- * config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
- * config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
- * config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
- * config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
- * config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.
-
-2001-01-01 Bernd Schmidt <bernds@redhat.com>
-
- * alias.c (fixed_scalar_and_varying_struct): Adjust prototype of
- arg VARIES_P. Call it with extra arg.
- (true_dependence): Likewise.
- * rtl.h (rtx_addr_can_trap_p): Declare.
- (rtx_varies_p, rtx_addr_varies_p, true_dependence): Update
- prototypes.
- * rtlanal.c (rtx_addr_can_trap_p): No longer static.
- (rtx_varies_p): Accept extra arg FOR_ALIAS; only disallow
- pic offset table register if it's zero. All callers changed.
- (rtx_addr_varies_p): Accept extra arg FOR_ALIAS; all callers changed.
-
-Mon Jan 1 07:38:33 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
-
- * explow.c (convert_memory_address, case SYMBOL_REF): Copy
- STRING_POOL_ADDRESS_P.
-
- * config/sparc/sparc.c (input_operand): Properly test for short op.
-
- * config.gcc (sparc-*-elf): Include sparc/sol2.h.
- (sparc-*-rtems*): Include sparc/sol2.h and sparc/elf.h.
- (sparclite-*-elf*, sparc86x-*-elf*): Likewise.
- * config/sparc/elf.h: No longer include sol2.h.
- * config/sparc/lifeelf.h: No longer include sparc/elf.h.
- * config/sparc/rtemself.h, config/sparc/sp86x-elf.h: Likewise.
-
- * config/sparc/sparc.md: Test TARGET_ARCH64 instead of TARGET_PTR64.
-
-2001-01-01 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (check_insn_for_bivs): Use ivs->n_regs to check array bounds.
- (find_mem_givs, record_biv, maybe_eliminate_biv): Likewise.
- (record_initial): Likewise.
- * unroll.c (copy_loop_body, loop_iterations): Likewise.
- (remap_split_bivs): Likewise.
-
-2001-01-01 Michael Hayes <mhayes@redhat.com>
-
- * loop.c (loop_ivs_free): New function.
- (strength_reduce): Break out from...
-
-2001-01-01 Michael Hayes <mhayes@redhat.com>
-
- * loop.h (struct iv): New.
- (REG_IV_TYPE, REG_IV_CLASS, REG_INFO): Modify to use 'struct iv'.
- (struct loop_ivs): Replace 'reg_iv_type', 'reg_iv_info',
- 'reg_biv_class' fields with 'regs' and 'n_regs'.
- (struct ivs): Rename 'loop_iv_list' field to 'list'.
- * loop.c (loop_bivs_find, strength_reduce): Use ivs->regs array.
- * unroll.c (loop_iterations): Check array bounds with ivs->n_regs.
-
-2000-12-31 Alexandre Oliva <aoliva@redhat.com>
-
- * resource.c (mark_referenced_resources): Abort() before
- attempting to mark a pseudo register.
- (mark_set_resources): Likewise.
-
-2001-01-01 Michael Hayes <mhayes@redhat.com>
-
- * loop.h (REG_IV_CLASS): New accessor macro.
- * loop.c (REG_IV_CLASS): Use it instead of reg_iv_class array.
- * unroll.c (REG_IV_CLASS): Likewise.
-
-See ChangeLog.4 for earlier changes.
diff --git a/gcc/ChangeLog.8 b/gcc/ChangeLog.8
deleted file mode 100644
index 37774eebf50..00000000000
--- a/gcc/ChangeLog.8
+++ /dev/null
@@ -1,14448 +0,0 @@
-2002-12-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Update the prototypes.
- * config/h8300/h8300.c (const_le_2_operand): Change to
- const_int_le_2_operand.
- (const_int_le_6_operand): Change to const_int_le_6_operand.
- * config/h8300/h8300.md (two peepholes): Update the function
- names.
-
-2002-12-31 Tom Tromey <tromey@redhat.com>
-
- * doc/install.texi (Testing): Fixed typo.
-
-2002-12-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (TRAMPOLINE_TEMPLATE): Remove.
- (TRAMPOLINE_SIZE): Support the normal mode.
- (INITIALIZE_TRAMPOLINE): Emit the entire trampoline.
-
-2002-12-31 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (pending_lang_change): Declare.
-
-2002-12-31 Jerry Quinn <jlquinn@optonline.net>
-
- * gcc/doc/invoke.texi (Optimization Options): Clean up -O flag
- descriptions.
-
-2002-12-31 Jerry Quinn <jlquinn@optonline.net>
-
- * gcc/doc/invoke.texi (Optimization Options): List the options
- enabled by each -O flag.
-
-2002-12-31 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Configuration): Explicitly refer
- gcc/config.gcc for a list of cpu models.
-
-2002-12-31 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h: Fix comment typos.
-
-2002-12-30 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.h (WIDEST_HARDWARE_FP_SIZE): Define.
-
-2002-12-30 Tom Tromey <tromey@redhat.com>
-
- * doc/install.texi (Testing): Mention Jacks.
-
-2002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/gcc.texi, doc/gccint.texi: Update last modification dates.
-
-2002-12-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (output_logical_op): Use extu.w in more
- cases.
- (compute_logical_op_length): Update to reflect the change in
- output_logical_op.
- (compute_logical_op_cc): Likewise.
-
-2002-12-30 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/service.texi: Uncomment and update FAQ link.
-
-2002-12-30 Andreas Jaeger <aj@suse.de>
-
- * unwind-dw2-fde.h (last_fde): Add unused attribute for obj.
-
-2002-12-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*addsi3_lshiftrt_16_zexthi): New.
-
-2002-12-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (output_logical_op): Use extu.w if we
- are clearing the most significant byte.
- (compute_logical_op_length): Update to reflect the change in
- output_logical_op.
- (compute_logical_op_cc): Likewise.
-
-2002-12-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Give internal names to anonymous
- insns.
-
-2002-12-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Reorder some insns.
-
-2002-12-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Add prototypes for
- const_int_qi_operand and const_int_hi_operand.
- * config/h8300/h8300.c (const_int_qi_operand): New.
- (const_int_hi_operand): Likewise.
- * config/h8300/h8300.md (three peepholes): New.
-
-2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/cpp.texi, doc/gcc.texi, doc/gccint.texi, doc/install.texi:
- Use @copying.
-
-2002-12-28 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * configure.in: Increase makeinfo version requirement to 4.[2-9].
- * configure: Regenerate.
- * doc/install.texi: Update Texinfo version requirement.
-
-2002-12-28 Andreas Jaeger <aj@suse.de>
-
- * config/i386/i386.c (x86_function_profiler): Mark labelno as
- possibly unused.
-
- * c-parse.in (yyprint): Use HOST_WIDE_INT_PRINT_DOUBLE_HEX for
- correct format.
-
-2002-12-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*iorhi_shift_8): Change the name to
- *iorhi_ashift_8.
- (*iorhi_lshiftrt_8): New.
-
-2002-12-27 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/include/texinfo.tex: Update to version 2002-12-26.16.
-
-2002-12-27 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi (Contributors): Add Abramo and Roberto Bagnara.
-
-2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Fix comment typos.
- Update copyright.
- * config/h8300/h8300.c: Fix comment typos.
-
-2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (IDENT_ASM_OP): End with a tab.
-
-2002-12-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/i386/athlon.md: Fix comment typos.
- * config/i386/crtdll.h: Likewise.
- * config/i386/djgpp.h: Likewise.
- * config/i386/i386-interix.h: Likewise.
- * config/i386/i386.c: Likewise.
- * config/i386/i386.h: Likewise.
- * config/i386/i386.md: Likewise.
- * config/i386/k6.md: Likewise.
- * config/i386/mingw32.h: Likewise.
- * config/i386/pentium.md: Likewise.
- * config/i386/sco5.h: Likewise.
- * config/i386/winnt.c: Likewise.
- * config/i386/xmmintrin.h: Likewise.
-
-2002-12-26 Jose Renau <renau@cs.uiuc.edu>
-
- * ssa-dce.c (EXECUTE_IF_UNNECESSARY): Verify INSN is an
- INSN_P before checking to see if it is dead.
- (mark_all_insn_unnecessary): Similarly.
- (ssa_eliminate_dead_code): Similarly.
- * rtl.h (struct rtx_def): Update comments for in_struct usage
- in dead code elimination pass.
- (INSN_DEAD_CODE_P): Allow JUMP_INSN and CALL_INSN as well.
-
-2002-12-26 Andreas Schwab <schwab@suse.de>
-
- * config.gcc (powerpc*-*-*, rs6000-*-*): Fix assignment syntax.
-
-2002-12-25 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Convert to
- tartet_flags_explicit.
- * config/rs6000/rs6000.h (MASK_MULTIPLE_SET, MASK_STRING_SET): Delete.
- Compact target_flags bits.
- (TARGET_MULTIPLE_SET, TARGET_STRING_SET): Delete.
- (TARGET_SWITCHES): Delete references to *_SET flags.
-
-Wed Dec 25 20:30:53 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (memory attribute): Fix setcc attribute.
-
-2002-12-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * output.h: Fix comment typos.
- * predict.c: Likewise.
- * print-tree.c: Likewise.
- * profile.c: Likewise.
- * ra-build.c: Likewise.
- * ra-colorize.c: Likewise.
- * ra-debug.c: Likewise.
- * ra-rewrite.c: Likewise.
- * ra.c: Likewise.
- * ra.h: Likewise.
- * real.c: Likewise.
- * recog.c: Likewise.
- * reg-stack.c: Likewise.
- * regclass.c: Likewise.
-
-2002-12-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (print_operand_address): Do not negate
- a negative number when printing one.
-
-2002-12-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Add prototypes for
- output_plussi, compute_plussi_length, and compute_plussi_cc.
- * config/h8300/h8300.c (output_plussi): New.
- (compute_plussi_length): Likewise.
- (compute_plussi_cc): Likewise.
- * config/h8300/h8300.md (addsi_h8300h): Call
- output_plussi, compute_plussi_length, and compute_plussi_cc.
-
-2002-12-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (two peepholes): Use match_dup instead
- of match_operand in the new patterns.
-
-2002-12-24 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/include/texinfo.tex: Update to version 2002-11-25.11.
-
-2002-12-24 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.in (enable-coverage): Add SELF_COVERAGE.
- * profile.c (end_branch_prob): Use SELF_COVERAGE.
-
-2002-12-24 Jim Wilson <wilson@redhat.com>
-
- * alias.c (record_set): Handle multi-reg hard registers.
-
-2002-12-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * regmove.c: Fix comment typos.
- * reload.c: Likewise.
- * reload1.c: Likewise.
- * resource.c: Likewise.
- * rtl.def: Likewise.
- * rtl.h: Likewise.
- * rtlanal.c: Likewise.
- * sched-deps.c: Likewise.
- * sched-rgn.c: Likewise.
- * sibcall.c: Likewise.
- * simplify-rtx.c: Likewise.
- * ssa-ccp.c: Likewise.
- * ssa.c: Likewise.
- * stmt.c: Likewise.
- * stor-layout.c: Likewise.
- * system.h: Likewise.
- * tlink.c: Likewise.
- * toplev.c: Likewise.
- * tracer.c: Likewise.
- * tree-inline.c: Likewise.
- * tree.c: Likewise.
- * tree.h: Likewise.
- * unroll.c: Likewise.
- * varasm.c: Likewise.
-
-2002-12-23 Larin Hennessy <larin@science.oregonstate.edu>
-
- * doc/install.texi: Remove i386-*-isc, i860-*-bsd,
- m68k-altos-sysv, m68k-isi-bsd, m68k-sony-bsd entries.
- * doc/invoke.texi: Remove AMD 29K, ARM RISC/iX, Clipper, Convex,
- DG/UX entries.
- * doc/md.texi: Remove AMD 29K entries.
- * doc/trouble.texi: Remove Alliant, DG/UX, Iris 4.0.5F, GAS
- 1.38.1, NewsOS, RT PC, WE32K entries.
-
-2002-12-23 Aldy Hernandez <aldyh@redhat.com>
-
- PR/8763
- * config/rs6000/altivec.md (mulv4sf3): Rewrite to add -0.0 vector.
- (altivec_vspltisw_v4sf): Name pattern.
- (altivec_vslw_v4sf): New pattern.
-
-2002-12-23 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/include/gcc-common.texi: Define DEVELOPMENT.
-
-2002-12-23 Mark Mitchell <mark@codesourcery.com>
-
- * stor-layout.c (update_alignment_for_field): Correct handling of
- unnamed bitfields on PCC_BITFIELD_TYPE_MATTERS machines.
- * doc/tm.texi (PCC_BITFIELD_TYPE_MATTERS): Note that an unnamed
- bitfield does not affect alignment.
-
-2002-12-23 David Edelsohn <edelsohn@gnu.org>
-
- * expr.c (expand_assignment): Apply special treatment to
- ARRAY_TYPE.
-
-2002-12-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Update the prototype of
- expand_a_shift.
- * config/h8300/h8300.c (expand_a_shift): Change the return
- type to void.
- * config/h8300/h8300.md: Update all the uses of
- expand_a_shift.
-
-2002-12-22 Nathan Sidwell <nathan@codesourcery.com>
-
- * tree.c (save_expr): Allow either side of a dyadic operand to be
- constant.
-
- * doc/portability.texi (portability): Update portability goals.
-
-2002-12-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (output_a_shift): Remove unused code.
-
-2002-12-22 Mark Mitchell <mark@codesourcery.com>
-
- * stor-layout.c (update_alignment_for_field): Guard use of
- ADJUST_FIELD_ALIGN with #ifdef.
-
- * stor-layout.c (update_alignment_for_field): Use
- ADJUST_FIELD_ALIGN when computing the alignment for a zero-width
- bitfield when PCC_BITFIELD_TYPE_MATTERS.
-
-2002-12-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * genautomata.c: Fix comment typos.
-
-Sun Dec 22 18:23:44 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * params.def (tracer-min-branch-probability-feedback): Fix default.
- * final.c (compute_alignments): Use profile to avoid code bloat.
-
-2002-12-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (get_shift_alg): Make shift insn
- sequences end with a valid cc0 whenever possible.
-
-2002-12-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (negsf2): New.
- (*negsf2_h8300): Likewise.
- (*negsf2_h8300hs): Likewise.
-
-2002-12-21 Geoffrey Keating <geoffk@apple.com>
-
- * integrate.c (output_inline_function): Don't hold private
- pointers to 'struct function' over GC calls.
-
-2002-12-21 Kaz kojima <kkojima@gcc.gnu.org>
-
- * config/sh/lib1funcs.asm (__fpscr_values): Conditionalize with
- NO_FPSCR_VALUES.
- * config/sh/t-linux (TARGET_LIBGCC2_CFLAGS): Add -DNO_FPSCR_VALUES.
-
-2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (zero_extendqisi2): Correct the
- length.
-
-2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*zero_extendqihi2_h8300): Make the
- second alternative "#".
- (*zero_extendqihi2_h8300hs): Likewise.
- (a define_split): New.
-
-2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Update the prototype for
- split_adds_subs.
- Add prototypes for const_le_2_operand and const_le_6_operand.
- * config/h8300/h8300.c (split_adds_subs): Add an argument to
- specify whether inc/dec should be used when possible.
- (const_le_2_operand): New.
- (const_le_6_operand): Likewise.
- * config/h8300/h8300.md (two peepholes): New.
-
-2002-12-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/fr30/fr30.md: Fix a comment typo.
- * config/i386/i386.c: Likewise.
- * config/ip2k/ip2k.h: Likewise.
-
-2002-12-20 Jim Wilson <wilson@redhat.com>
-
- * config/rs6000/spe.h (__ev_subifw): Reverse arguments.
- (__ev_subw, __ev_subiw): New.
- (ev_mwlssf, ev_mwlsmf, ev_mwlssfa, ev_mwlsmfa, ev_mwlssfaaw,
- ev_mwlsmfaaw, ev_mwlssfanw, ev_mwlsmfanw): Delete.
-
-2002-12-20 John David Anglin <dave.anglin@nrc.gc.ca>
-
- * pa-linux.h (TARGET_HAS_STUBS_AND_ELF_SECTIONS): Delete define.
- * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete define.
- * pa.c (pa_function_ok_for_sibcall): Allow non indirect sibcalls on
- TARGET_ELF32. Add comment on sibcall issues for TARGET_64BIT.
-
-2002-12-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300-protos.h: Add prototypes for
- incdec_operand and eqne_operator.
- * config/h8300/h8300.c (incdec_operand): New.
- (eqne_operator): Likewise.
- * config/h8300/h8300.h (CONST_OK_FOR_M): Likewise.
- (CONST_OK_FOR_O): Likewise.
- (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_M and
- CONST_OK_FOR_O.
- * config/h8300/h8300.md (UNSPEC_INCDEC): New.
- (addhi3_incdec): New.
- (addsi3_incdec): Likewise.
- (two peepholes): Likewise.
-
-2002-12-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (dosize): Remove warnings.
- (print_operand): Likewise.
-
-2002-12-20 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (decl_has_samegp): New.
- (samegp_function_operand): Use it. Rename from
- current_file_function_operand.
- (direct_call_operand): Handle -msmall-text via symbol->jump.
- (tls_symbolic_operand_1): Use T for tprel64, t for smaller tprel.
- (tls_symbolic_operand_type): Likewise.
- (alpha_encode_section_info): Likewise. Handle -msmall-text.
- (alpha_function_ok_for_sibcall): Use decl_has_samegp.
- (alpha_end_function): Set symbol->jump for functions defined in
- the text section.
- * config/alpha/alpha-protos.h: Update.
- * config/alpha/alpha.h (MASK_SMALL_TEXT, TARGET_SMALL_TEXT): New.
- (TARGET_SWITCHES): Add -msmall-text and -mlarge-text.
- (PREDICATE_CODES): Update.
- * config/alpha/alpha.md (call patterns): Update for
- samegp_function_operand rename; use !samegp reloc if
- TARGET_EXPLICIT_RELOCS.
- * doc/invoke.text: Document -msmall-text and -mlarge-text.
-
-2002-12-20 Ian Dall <ian@sibyl.beware.dropbear.id.au>
-
- * config/ns32k/ns32k.md (movdi): Use "l" instead of "f" to match
- all registers capable of holding a double float.
- (*rcond): change name of "reverse branch" insns to
- something more meaningful.
- (*rbgt, *rblt, *rbge, *rble): Reverse branches to handle IEEE
- comparisons properly.
- (*ffs): Change operand 0 from write to read-modify-write.
- (*ffsssi2): Drop constraints from define_expand.
-
- * config/ns32k/ns32k.h (STORE_RATIO, STORE_BY_PIECES): Avoid using
- MOVE_RATIO as default for store operations.
-
- * config/ns32k/ns32k.h (enum reg_class, REG_CLASS_NAMES): Add
- LONG_REGS class.
- (CANNOT_CHANGE_MODE_CLASS): Can't subreg LONG_REGS.
- (GO_IF_LEGITIMATE_ADDRESS): Remove spurious abort().
- * config/ns32k/ns32k.c (regclass_map): Add LONG_REGS class.
-
- * config/ns32k/STATUS: New File
- * config/ns32k/NOTES: New file.
-
-2002-12-20 Hartmut Penner <hpenner@de.ibm.com>
-
- * doc/invoke.texi: Document -mzarch, -mesa, -mcpu= and -march=
- option for S/390 and zSeries.
- * config/s390/s390.c (s390_cpu, s390_cpu_string, s390_arch,
- s390_arch_string): New variables.
- (override_options): Checking for options and setting of
- appropriate target_flags, cpu and arch flags.
- * config/s390/s390.h: (processor_type): New enum.
- (TARGET_SWITCHES): New switches -mesa/zarch.
- * config/s390/s390.md: New attribute 'cpu'.
-
-2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-pretty-print.h: Fix comment typos.
- * integrate.c: Likewise.
- * varasm.c: Likewise.
- * config/c4x/c4x.h: Likewise.
- * config/c4x/c4x.md: Likewise.
- * config/fr30/fr30.md: Likewise.
- * config/frv/frv.c: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/i386/i386.c: Likewise.
- * config/i386/i386.h: Likewise.
- * config/ia64/ia64.c: Likewise.
- * config/ia64/ia64.h: Likewise.
- * config/ip2k/ip2k.md: Likewise.
- * config/m68hc11/m68hc11-crt0.S: Likewise.
- * config/m68hc11/m68hc11.h: Likewise.
- * config/m68hc11/m68hc11.md: Likewise.
- * config/m68hc11/m68hc12.h: Likewise.
- * config/mcore/mcore.md: Likewise.
- * config/mips/mips.c: Likewise.
- * config/mips/mips.md: Likewise.
- * config/mmix/mmix-modes.def: Likewise.
- * config/pa/pa.c: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/rs6000/rs6000.h: Likewise.
- * config/rs6000/rs6000.md: Likewise.
-
-2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (output_a_shift): Clean up the code to
- output shifts using rotation.
-
-2002-12-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * flow.c (allocate_reg_life_data): Reset REG_FREQ.
-
-2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (pushqi_h8300): Don't push the stack
- pointer.
- (pushqi_h8300hs): Likewise.
- (pushhi_h8300): Likewise.
- (pushhi_h8300hs): Likewise.
-
-Thu Dec 19 23:44:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sched-rgn.c (init_regions): Update comment.
-
-2002-12-19 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (define_attr type): Remove altivec.
- * config/rs6000/altivec.md (movv4si_internal): Set correct instruction
- attributes.
- (movv8hi_internal,movv16qi_internal,movv4sf_internal): Same.
- (get_vrsave_internal,set_vrsave_internal): Same.
- (altivec_vspltisb,altivec_vspltish,altivec_vspltisw): Same.
- (absv16qi2,absv8hi2,absv4si2,absv4sf2): Same
- (altivec_abss_v16qi,altivec_abss_v8hi,altivec_abss_v4si): Same.
-
-2002-12-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
- Danny Smith <dannysmith@users.sourceforge.net>
- Eric Kohl <ekohl@rz-online.de>
-
- * config/i386/i386.c (ix86_handle_cdecl_attribute): Check for
- attributes incompatible with fastcall attribute.
- (ix86_handle_regparm_attribute): Likewise.
-
- * config/i386/i386.c (ix86_comp_type_attributes): Check for mismatched
- fastcall types.
-
- * config/i386/cygwin.h (TARGET_OS_CPP_BUILTINS): Add fastcall
- attributes.
- (ASM_OUTPUT_LABELREF): Define as i386_pe_output_labelref.
- * config/i386/i386-protos.h (i386_pe_output_labelref): Declare.
- * config/i386/winnt.c (i386_pe_mark_dllimport). Add __imp_ prefix in
- i386_pe_output_labelref rather than here.
- (gen_fastcall_suffix): New function. Decorates a label name with the
- fastcall prefix (@) and the stdcall suffix.
- (i386_pe_encode_section_info): Call gen_fastcall_suffix() if a symbol
- has a fastcall attribute.
- (i386_pe_output_labelref): New function. Outputs a label reference.
- * config/i386/i386.c (ix86_attribute_table): Accept 'fastcall' as a
- valid attribute.
- (ix86_return_pops_args): Fastcall functions pop the stack.
- (init_cumulative_args): Reserve registers ECX and EDX if function has
- fastcall attribute.
- (function_arg): Use registers ECX and EDX if function has fastcall
- attribute.
- * config/i386/i386.h (CUMULATIVE_ARGS): Add fastcall attribute flag.
- (DLL_IMPORT_EXPORT_PREFIX): Redefine as '#'.
- (FASTCALL_PREFIX): Define as '@'.
- * config/i386/mingw32.h (TARGET_OS_CPP_BUILTINS): Add fastcall
- attributes.
- * doc/extend.texi: Add documentation of fastcall attribute.
-
-2002-12-19 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in: FORBUILD when build!=host changed from
- ../$build-alias to ../build-$build_alias to match change made
- in top directory.
- * configure: Regenerated.
-
-2002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/8988
- * loop.c (maybe_eliminate_biv): Kill REG_EQUAL notes mentioning
- the biv when eliminating.
-
-2002-12-19 Devang Patel <dpatel@apple.com>
- * gcc.c (struct default_compiler): Recognizes input file name with
- .CPP extension as C++ source files
- * cp/lang-spec.h: Same
- * doc/invoke.texi: Add documentation for .CPP support.
-
-2002-12-19 Aldy Hernandez <aldyh@redhat.com>
-
- PR 8553
- * config/rs6000/altivec.md ("absv8hi2"): Add & to clobbered
- registers.
- ("absv16qi2"): Same.
- ("absv4si2"): Same.
- ("absv4sf2"): Same.
- ("altivec_abss_v16qi"): Same.
- ("altivec_abss_v8hi"): Same.
- ("altivec_abss_v4si"): Same.
-
-2002-12-19 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*tsthiCCT", "*tsthiCCT_cconly",
- "*tstqiCCT", "*tstqiCCT_cconly"): New insns.
-
-2002-12-19 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR target/8340
- * stmt.c (expand_asm_operands): Produce an error when
- the PIC register is clobbered.
-
-2002-12-18 Daniel Berlin <dberlin@dberlin.org>
-
- * Makefile.in (OBJS): Add alloc-pool.o
- (alloc-pool.o): New object.
-
- * alloc-pool.c: New file.
- * alloc-pool.h: New file.
-
-2002-12-18 Loren James Rittle <ljrittle@acm.org>
-
- * gcc.c (validate_switches): Robustify against skipping past '\0'.
-
-2002-12-18 Geoffrey Keating <geoffk@apple.com>
-
- * config.gcc: Set extra_objs in the generic Darwin rule,
- not in the machine-specific rules.
-
-2002-12-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog: Follow spelling conventions.
- * ChangeLog.2: Likewise.
- * ChangeLog.4: Likewise.
- * ChangeLog.5: Likewise.
- * cppexp.c: Likewise.
- * df.c: Likewise.
- * gcov.c: Likewise.
- * gengtype.c: Likewise.
- * reload1.c: Likewise.
- * sched-rgn.c: Likewise.
- * stmt.c: Likewise.
- * stor-layout.c: Likewise.
- * timevar.c: Likewise.
- * toplev.c: Likewise.
- * tree.h: Likewise.
- * varasm.c: Likewise.
- * config/fr30/fr30.md: Likewise.
- * config/i386/i386.c: Likewise.
- * config/ia64/ia64.c: Likewise.
- * config/pa/pa.c: Likewise.
-
-2002-12-18 Roger Sayle <roger@eyesopen.com>
-
- * basic-block.h (flow_bb_inside_loop_p): Correct prototype.
-
-2002-12-18 Aldy Hernandez <aldyh@redhat.com>
-
- PR 8551
- * config/rs6000/altivec.h (vec_cmplt macro): Reverse arguments in
- macro.
- (vec_cmplt C++ functions): Reverse arguments.
-
-2002-12-18 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/t-rs6000: Move contents to t-fprules,
- add rules for dependencies of rs6000.o and to build rs6000-c.o
- * config/rs6000/t-fprules: New file from t-rs6000.
- * config/rs6000/t-beos: Remove soft-fp rules.
- * config/rs6000/t-ppccomm: Likewise.
- * config/rs6000/t-newas: Likewise.
- * config/rs6000/t-rs6000-c-rule: Delete.
- * config.gcc: Use t-fprules for rs6000/ ports when appropriate.
- Use t-rs6000 for all rs6000/ ports instead of t-rs6000-c-rule.
- Create generic Darwin rules.
-
- * gengenrtl.c (gencode): Delete unnecessary rtl_obstack declaration.
-
-2002-12-18 Doug Evans <dje@sebabeach.org>
-
- * m32r/m32r.c (addr24_operand): Fix arg to CONSTANT_POOL_ADDRESS_P
- and LIT_NAME_P.
- (move_src_operand): Remove compile-time warning.
- * m32r/m32r.h (ROUND_ADVANCE_ARG): Ditto.
-
-2002-12-18 Jason Merrill <jason@redhat.com>
-
- * unwind-dw2-fde.c (frame_downheap): Split out from...
- (frame_heapsort): Here.
-
-2002-12-17 Jason Merrill <jason@redhat.com>
-
- * tree.c (make_node): Don't set TREE_TYPE on 's' class nodes.
- (build1): Always set TREE_SIDE_EFFECTS on 's' class nodes.
-
- * gcc.c (do_spec_1) ['W']: End any pending argument from the braces.
-
- * calls.c (expand_call): Don't try to be clever about expanding
- the return slot address.
-
-2002-12-18 Kaz kojima <kkojima@gcc.gnu.org>
-
- * config/sh/linux.h (NO_IMPLICIT_EXTERN_C, CPLUSPLUS_CPP_SPEC):
- Define.
-
-2002-12-17 Jason Merrill <jason@redhat.com>
-
- * genmultilib: Use 'cd ./foo'.
-
-2002-12-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/c-tree.texi: Restore deliberate spelling mistakes.
-
-2002-12-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/c-tree.texi: Fix typos and follow spelling conventions.
- * doc/cpp.texi: Likewise.
- * doc/extend.texi: Likewise.
- * doc/gty.texi: Likewise.
- * doc/install.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/md.texi: Likewise.
- * doc/passes.texi: Likewise.
- * doc/rtl.texi: Likewise.
- * doc/sourcebuild.texi: Likewise.
- * doc/tm.texi: Likewise.
-
-2002-12-17 Jerry Quinn <jlquinn@optonline.net>
-
- * doc/invoke.texi: Minor spelling and grammar fixes.
-
-2002-12-17 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_output_constant_pool): Replace
- ASM_OUTPUT_INTERNAL_LABEL by (*targetm.asm_out.internal_label).
-
-Tue Dec 17 09:47:57 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * convert.c (convert_to_real): Disable function transformation for
- now.
-
-2002-12-16 Geoffrey Keating <geoffk@apple.com>
-
- * gcc.c (handle_braces): Allow '@' as a switch name.
-
-2002-12-16 Jason Merrill <jason@redhat.com>
-
- * calls.c (expand_call): Handle CALL_EXPR_HAS_RETURN_SLOT_ADDR
- with special struct-return ABIs.
-
- * c-semantics.c (add_scope_stmt): Abort if the end SCOPE_STMT
- doesn't match the begin SCOPE_STMT in partialness.
-
-2002-12-16 Geoffrey Keating <geoffk@apple.com>
-
- * genmultilib: Create temporary files in unique subdirectory.
-
- * gcc.c (validate_switches): Allow '@' as a switch name.
-
-2002-12-16 Loren J. Rittle <ljrittle@acm.org>
-
- * Makefile.in (gcov-iov.h): Improve portability.
-
-Mon Dec 16 23:39:19 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Do not use qpword on API_N32/not
- gas
- * mips.md (tablejump insn): Likewise.
-
-2002-12-16 Mark Mitchell <mark@codesourcery.com>
-
- * doc/include/gcc-common.texi: Change version number to 3.4.
-
-2002-12-16 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/fixlib.h: add: #include <signal.h>
- * fixinc/fixincl.c: remove: #include <signal.h>
-
-Mon Dec 16 17:20:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (EXTRA_CONSTRAINT_Z): New macro.
- (EXTRA_CONSTRAINT): Use it.
- * sh.md (anddi3): Use 'Z' constraint for alternative 2.
-
-2002-12-15 Zack Weinberg <zack@codesourcery.com>
-
- * config.gcc (need_64bit_hwint): New variable.
- (alpha*-*-*, x86_64-*-*, ia64-*-*, mips*-*-*, powerpc*-*-*,
- mmix-knuth-mmixware, rs6000*-*-*, sparc64*-*-*, s390*-*-*,
- sh*-*-*, hppa*64*-*-linux, parisc*64*-*-linux, hppa*64*-*-hpux11*,
- sparcv9-*-solaris2*, sparc*-*-solaris2.[789], ultrasparc-*-freebsd*):
- Set it.
- (powerpc*-*-darwin*): Unset it.
- (alpha-*-interix, alpha64-dec-*vms*, i?86-*-interix3*,
- i?86-*-interix*, sparc64-*-openbsd*): Remove references to
- deleted/nonexistent xm-*.h headers.
- * configure.in: AC_DEFINE NEED_64BIT_HOST_WIDE_INT if the
- target set need_64bit_hwint in config.gcc.
- * configure, config.in: Regenerate.
-
- * hwint.h: Overhaul. Don't bother trying int for
- HOST_WIDE_INT. Do try __int64 if long is not enough. Base
- decision to force 64-bit HOST_WIDE_INT on
- NEED_64BIT_HOST_WIDE_INT, not (MAX_)LONG_TYPE_SIZE which is
- not visible at this point. Don't allow prior definition of
- any macro defined by this file.
-
- * config/alpha/xm-vms.h: Don't define HOST_WIDE_INT or
- HOST_BITS_PER_WIDE_INT.
- * config/c4x/c4x.h: Adjust redefinition of
- HOST_WIDE_INT_PRINT_HEX to match changes to hwint.h.
- * config/alpha/xm-alpha-interix.h, config/alpha/xm-vms64.h,
- config/i386/xm-i386-interix.h: Delete file.
-
-2002-12-14 Rodney Brown <rbrown64@csc.com.au>
- John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (output_millicode_call): Convert ASM_OUTPUT_INTERNAL_LABEL.
- * pa64-hpux.h (ASM_OUTPUT_INTERNAL_LABEL): Delete define.
-
-2002-12-14 Zack Weinberg <zack@codesourcery.com>
-
- * mkconfig.sh: Correct comment. Add copyright boilerplate.
-
-2002-12-14 Zack Weinberg <zack@codesourcery.com>
-
- * config/t-darwin, config/arm/t-pe, config/arm/t-strongarm-pe,
- config/c4x/t-c4x, config/i370/t-i370, config/i386/t-cygwin,
- config/i386/t-interix, config/i960/t-960bare, config/ia64/t-ia64,
- config/rs6000/t-rs6000-c-rule, config/sparc/t-sol2,
- config/v850/t-v850: Correct dependencies and normalize
- compilation commands for files that include coretypes.h and tm.h.
-
- * config/sparc/gmon-sol2.c: Include tconfig.h and tsystem.h,
- not config.h and system.h.
-
-Sat Dec 14 20:43:41 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (flags_reg_operand): New function.
- * i386.h (PREDICATE_CODES): Add flags_reg_operand.
- * i386.md (cmov splitter, movqicc): Use new predicate.
-
-Sat Dec 14 17:03:17 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movqicc splitter): Fix template.
-
-2002-12-13 Jason Merrill <jason@redhat.com>
-
- * tree.h (CALL_EXPR_HAS_RETURN_SLOT_ADDR): New macro.
- * calls.c (expand_call): Handle it.
- * tree-inline.c (struct inline_data): Remove target_exprs field.
- (optimize_inline_calls): Don't initialize it.
- (expand_call_inline): Don't modify it. Handle
- CALL_EXPR_HAS_RETURN_SLOT_ADDR.
- (declare_return_variable): Take return slot addr.
- * langhooks.h (copy_res_decl_for_inlining): Change target_exprs parm
- to return_slot_addr.
- * langhooks-def.h, langhooks.c: Adjust.
- * explow.c (maybe_set_unchanging): Don't set RTX_UNCHANGING_P for
- a decl with no DECL_INITIAL.
-
- * expr.c (expand_expr): Don't discard the target of a call which
- returns in memory.
-
-2002-12-13 Neil Booth <neil@daikokuya.co.uk>
-
- * cppinit.c (path_include): Take an environment variable name.
- Tidy up.
- (init_standard_includes): Simplify environment handling, and
- move to ...
- (cpp_read_main_file): ...here as -nostdinc should not affect
- environment variable paths.
-
-2002-12-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (output_millicode_call): Correct typo.
- (output_call): Likewise.
-
-Fri Dec 13 21:07:18 2002 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mn10300/mn10300.c (print_operand) <case N>: Check
- operand's range. Print value directly, without aid from
- output_address.
- <case U>: New.
- <case S>: Make sure argument to fprintf has the right type.
- * config/mn10300/mn10300.h (OK_FOR_T): New macro.
- (EXTRA_CONSTRAINT): Adjust.
- * config/mn10300/mn10300.md: Add new all-QImode pattern for
- bclr. Use %U for immediate operands of bset and bclr.
- (iorqi3): New expand, with insns for AM33 and mn10300.
-
-Fri Dec 13 16:02:27 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (sh_register_operand): New function.
- (prepare_move_operands): Use it.
- * sh.h (PREDICATE_CODES): Add entry for sh_register_operand.
- * sh.md (movsi_media, movsi_media_nofpu): Allow stores of 0.
- (movqi_media, movhi_media, movdi_media, movdi_media_nofpu): Likewise.
- (movdf_media, movdf_media_nofpu, movv4sf_i, movsf_media): Likewise.
- (movsf_media_nofpu, movv2hi_i, movv4hi_i, movv8qi_i): Likewise.
- (movv2si_i): Likewise.
-
-2002-12-13 Jim Wilson <wilson@redhat.com>
-
- * doc/extend.texi (Complex Numbers): Update info on debug info.
-
-2002-12-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (addhi3_h8300): Remove the last
- alternative.
-
-2002-12-12 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * hooks.h (hook_tree_tree_bool_false): Declare
- hook_bool_tree_tree_false instead.
-
-2002-12-12 Devang Patel <dpatel@apple.com>
-
- * doc/invoke.texi: Document Darwin linker options, -bundle
- -bind_at_load, -all_load and -arch_errors_fatal
-
-2002-12-12 Jim Wilson <wilson@redhat.com>
-
- * dbxout.c (dbxout_fptype_value): New.
- (dbxout_type, case COMPLEX_TYPE): Call it. Use 'R' instead of 'r'.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-decl.c: Fix a comment typo.
- * cfg.c: Likewise.
- * cfgcleanup.c: Likewise.
- * cfglayout.c: Likewise.
- * cfgrtl.c: Likewise.
- * c-typeck.c: Likewise.
- * dominance.c: Likewise.
- * dwarf2asm.c: Likewise.
- * dwarfout.c: Likewise.
- * expmed.c: Likewise.
- * expr.c: Likewise.
- * final.c: Likewise.
- * flow.c: Likewise.
- * function.c: Likewise.
- * gcc.c: Likewise.
- * genautomata.c: Likewise.
- * integrate.c: Likewise.
- * loop.c: Likewise.
- * loop.h: Likewise.
- * output.h: Likewise.
- * profile.c: Likewise.
- * ra.h: Likewise.
- * reload1.c: Likewise.
- * reload.c: Likewise.
- * sched-rgn.c: Likewise.
- * stmt.c: Likewise.
- * tree.h: Likewise.
- * vmsdbgout.c: Likewise.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Add a new peephole2.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (a peephole2): Accept a constant
- that's accepted by CONST_OK_FOR_J.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (CONST_OK_FOR_J): New.
- (CONST_OK_FOR_LETTER_P): Use CONST_OK_FOR_J.
- * config/h8300/h8300.md (*addhi_h8300): Add a new alternative.
- (*addhi_h8300hs): Likewise.
-
-Thu Dec 12 16:24:59 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (reg_class_from_letter): No longer const. Add 'e' entry.
- (sh_register_move_cost): Add clause for SImode fp-fp moves.
- Increase cost for moves involving multiple general purpose registers.
- * sh.h (OVERRIDE_OPTIONS): Set reg_class_from_letter['e'] according to
- TARGET_FMOVD.
- (HARD_REGNO_MODE_OK): Allow V2SFmode and V4SFmode in general purpose
- registers, and SImode in fp registers, for ! TARGET_SHMEDIA.
- (enum reg_class reg_class_from_letter): No longer const.
- (SECONDARY_OUTPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG /
- REGCLASS_HAS_GENERAL_REG.
- Handle SImode moves from/to fp registers.
- ! TARGET_SHMEDIA && TARGET_FMOVD.
- (SECONDARY_INPUT_RELOAD_CLASS): Use REGCLASS_HAS_FP_REG.
- * sh.md (movsi_ie): Add alternatives to move from / to fp regisyters.
-
-2002-12-12 Andreas Schwab <schwab@suse.de>
-
- * config/ia64/ia64.c (ia64_hpux_asm_file_end): Fix typo in last
- change and some warnings.
-
-2002-12-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/md.texi (pushm): Fix a typo.
-
-2002-12-12 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mips/mips.c (mips_output_conditional_branch): Support
- PIC-safe out-of-range branch and branch-likely.
- * config/mips/mips.md (attr length): PIC-safe out-of-range
- branches are longer.
- ("jump"): Support PIC-safe out-of-range-for-branch jumps. Remove
- unused code to support indirect jumps.
-
-2002-12-11 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in (GTFILES): Add $(host_xm_file_list) and
- $(tm_file_list).
-
-2002-12-11 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/t-rs6000-c-rule: Add coretypes.h $(TM_H) dependencies.
-
-Wed Dec 11 15:20:45 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (cmove splitters): Avoid creation of unnecesary subregs.
-
-2002-12-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.h (BIGGEST_ALIGNMENT): Change 32-bit value to 64 bits.
- (MAX_PARM_BOUNDARY, STACK_BOUNDARY): Express in terms of
- BIGGEST_ALIGNMENT.
- (PREFERRED_STACK_BOUNDARY): Express in terms of STACK_BOUNDARY.
- (FUNCTION_BOUNDARY): Express in terms of BITS_PER_WORD.
-
-2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * doc/invoke.texi: Correct dump file names.
-
-2002-12-09 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (ia64_hpux_asm_file_end): Don't send stripped
- name to globalize_label or assemble_name.
-
-Wed Dec 11 20:15:19 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (REG_CLASS_HAS_GENERAL_REG): Only true for SIBCALL_REGS
- if not TARGET_SHMEDIA.
-
-Wed Dec 11 19:05:05 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (REG_CLASS_HAS_FP_REG): New.
- (REGISTER_MOVE_COST) Use it. Put body into a function and
- move it into:
- * sh.c (sh_register_move_cost).
- * sh-protos.h (sh_register_move_cost): Declare.
-
- * sh.c (sh_expand_builtin): Abort for unexpected nop values.
- (sh_adjust_cost): Always return a value.
-
-Wed Dec 11 18:39:52 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (REG_CLASS_HAS_GENERAL_REG): New.
- (REGISTER_MOVE_COST): Use it.
-
-2002-12-11 Richard Henderson <rth@redhat.com>
-
- * tree.h (MODULE_LOCAL_P): Kill.
- * varasm.c (default_binds_local_p_1): Use decl_visibility instead.
-
-2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (two define_peephole2): New.
-
-2002-12-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (CONST_OK_FOR_J): Remove.
- (CONST_OK_FOR_K): Likewise.
- (CONST_OK_FOR_M): Likewise.
- (CONST_OK_FOR_LETTER_P): Do not use the above macros.
-
-2002-12-11 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c (builtin_define_type_max): Handle unsigned
- types too.
-
-2002-12-10 David Edelsohn <edelsohn@gnu.org>
-
- * haifa-sched.c (rank_for_schedule): Correct style.
-
-2002-12-10 Per Bothner <pbothner@apple.com>
-
- * cpplib.h (struct cpp_hashnode): Split a non-portably-signed field
- directive_index into an unsigned field and a new is_directive field.
- * cppinit.c (mark_named_operators): Update to set new fields.
- * cpplex.c (_cpp_lex_direct): Now directive_field is unsigned.
- * cpplib.c [_cpp_handle_directive]: Test is_directive field.
- No longer need to subtract 1 from directive_index.
- (_cpp_init_directives): No longer need to add 1 to directive_index.
- * cpptrad.c (scan_out_logical_line): Use is_directive field.
-
-2002-12-10 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (fold_builtin): Remove -funsafe-math-optimizations
- check for evaluating sqrt of a constant at compile time.
- * simplify-rtx.c (simplify_unary_operation): Likewise.
-
-2002-12-10 Janis Johnson <janis187@us.ibm.com>
-
- PR other/8882
- * doc/tm.texi (PUSH_ARGS): Remove misplaced line.
-
-2002-12-10 Devang Patel <dpatel@appple.com>
-
- * config/darwin.h(LINK_SPEC): Add darwin specific linker options.
- * doc/invoke.texi: Add new "Darwin Options" section.
-
-2002-12-10 Jim Wilson <wilson@redhat.com>
-
- * rs6000.h (RETURN_IN_MEMORY): If ABI_V4, then TFmode is returned in
- memory.
-
-2002-12-10 Andrew Haley <aph@redhat.com>
-
- * cse.c (cse_insn): Don't cse past a basic block boundary.
-
-2002-12-10 Jakub Jelinek <jakub@redhat.com>
-
- * config/linux.h (LIB_SPEC): If -pthread, add -lpthread even if
- -shared.
- * config/alpha/linux-elf.h (LIB_SPEC): Likewise.
- * config/alpha/linux.h (LIB_SPEC): Likewise.
- * config/arm/linux-elf.h (LIB_SPEC): Likewise.
- * config/pa/pa-linux.h (LIB_SPEC): Likewise.
- * config/sparc/linux.h (LIB_SPEC): Likewise.
- * config/sparc/linux64.h (LIB_SPEC): Likewise.
-
-2002-12-09 Larin Hennessy <larin@science.oregonstate.edu>
-
- * doc/invoke.texi: Document UltraSparc III option.
-
-2002-12-09 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Define
- __tune_pentium2__ and __tune_pentium3__ as necessary.
-
-2002-12-09 Richard Henderson <rth@redhat.com>
-
- * target.h (gcc_target): Add cannot_force_const_mem.
- * target-def.h (TARGET_CANNOT_FORCE_CONST_MEM): New.
- (TARGET_INITIALIZER): Add it.
- * varasm.c (force_const_mem): Fail if cannot_force_const_mem.
- * expr.c (emit_move_insn): Be prepared for force_const_mem to fail.
- * reload1.c (reload): Likewise.
- * hooks.c (hook_bool_rtx_false): New.
- * hooks.h: Declare it.
-
- * config/i386/i386.c (ix86_cannot_force_const_mem): New.
- (TARGET_CANNOT_FORCE_CONST_MEM): New.
- (ix86_expand_move): Remove de-const-pooling hack.
-
-Mon Dec 9 21:33:38 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (dump_file): Fix order to match reality.
-
-2002-12-08 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.md (load_multiple): Use adjust_address_nv.
- (store_multiple): Likewise.
-
-2002-12-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa/fptr.c (__canonicalize_funcptr_for_compare): Don't canonicalize
- function pointers in page 0.
-
-2002-12-09 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (TARGET_STRUCT_ARG_REG_LITTLE_ENDIAN): Remove
- definition
- (MEMBER_TYPE_FORCES_BLK): Move.
- * config/ia64/ia64.c (ia64_function_arg): Use PARALLEL to pass
- aggregate arguments.
- (ia64_function_value): Use PARALLEL to return aggregate values.
-
-2002-12-09 Steve Ellcey <sje@cup.hp.com>
-
- * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
- * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): Remove definition.
- * calls.c (store_unaligned_arguments_into_pseudos) Remove
- FUNCTION_ARG_REG_LITTLE_ENDIAN.
- * stmt.c (expand_return): Ditto.
- * expr.c (move_block_from_reg): Ditto.
- (copy_blkmode_from_reg): Ditto.
- * expmed.c (store_bit_field): Ditto.
-
-2002-12-09 Svein E. Seldal <Svein.Seldal@solidas.com>
-
- * config.gcc: Added tic4x-* target as an alias to c4x-*
-
-Sun Dec 8 14:57:39 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Use force_operand instead of
- constructing insn directly.
-
-2002-12-06 Per Bothner <pbothner@apple.com>
-
- * cpplib.h (struct cpp_hashnode): Change field directive_index from
- char to an int bit-field, for hosts where char is unsigned.
-
-2002-12-07 Roger Sayle <roger@eyesopen.com>
- Richard Henderson <rth@redhat.com>
-
- * real.c (ieee_extended_motorola_format,
- ieee_extended_intel_96_format, ieee_extended_intel_128_format,
- ieee_quad_format, vax_d_format, vax_g_format, i370_double_format):
- Provide appropriate values for new signbit field.
-
-2002-12-07 Roger Sayle <roger@eyesopen.com>
-
- * real.h (real_format): Add signbit field.
- * real.c (ieee_single_format, ieee_double_format,
- ieee_extended_motorola_format, ieee_extended_intel_96_format,
- ieee_extended_intel_128_format, ibm_extended_format,
- ieee_quad_format, vax_f_format, vax_d_format,
- vax_g_format, i370_single_format, i370_double_format,
- c4x_single_format, c4x_extended_format, real_internal_format):
- Provide suitable signbit value, or -1 to avoid bit twiddling.
-
- * optabs.c (expand_unop): Try implementing negation of
- floating point modes by flipping the sign bit.
- (expand_abs): Try implementing abs of floating point modes
- by clearing the sign bit.
-
-Sat Dec 7 22:29:47 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Use force_operand instead
- of constructing insn directly.
-
-2002-12-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*iorhi_shift_8): New.
-
-2002-12-06 Bernd Schmidt <bernds@redhat.com>
-
- * doc/invoke.texi: Document FRV port options.
- * doc/md.texi: Document FRV register classes.
-
-2002-12-07 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/install.texi (Configuration): Improve description of cases
- where `make distclean` may fail; clarify --with-gnu-as; fix grammar.
-
-2002-12-06 Per Bothner <pbothner@apple.com>
-
- * cpplib.h (NODE_MACRO_ARG): New flag.
- (struct cpp_hashnode): Give _cpp_hashnode_value tag to value union.
- Remove value.operator field. Move arg_index field to value union.
- (directive_index): Make signed, since also used for C++ operators.
- * cppmacro.c (_cpp_save_parameter): Use NODE_MACRO_ARG flag to
- check for duplicate parameter. Set NODE_MACRO_ARG flag.
- Save node->value, and set node->value.arg_index.
- (_cpp_create_definition): For each paramater, restore node->value.
- (lex_expansion_token): Use NODE_MACRO_ARG flag, and moved arg_index.
- * cpptrad.c (scan_out_logical_line): Likewise.
- (scan_out_logical_line): Check for directive > 0.
- * cpplib.c (cpp_handle_directive): Likewise.
- * cpplex.c (_cpp_lex_direct): Update as value.operator is replaced
- by negative of directive_index.
- * cppinit.c (mark_named_operators): Likewise.
-
- * hashtable.h (struct ht_identifier): Swap fields, for better packing.
-
-2002-12-06 Dhananjay Deshpande <dhananjayd@kpit.com>
-
- * gcc/config/sh/sh.c (calc_live_regs): Save fpscr only if target has
- FPU.
- (push): Generate push_fpscr.
- (pop): Generate pop_fpscr.
- * gcc/config/sh/sh.md : Add define_expand "push_fpscr", "pop_fpscr".
- (fpu_switch): Add alternative to push fpscr. Enable for TARGET_SH3E.
-
-Fri Dec 6 19:36:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (dump_table): DImode pool constants need only 32 bit alignment.
- DFmode alignment depends on TARGET_FMOVD && TARGET_ALIGN_DOUBLE.
-
-Fri Dec 6 19:17:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (movdi_i): Name. Remove inappropriate comment.
-
-Fri Dec 6 15:44:46 2002 J"orn Rennecke <joern.rennecke@superh.com>
- Merged from basic improvements branch (excerpt):
-
- 2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
- * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
-
-2002-12-06 Jakub Jelinek <jakub@redhat.com>
-
- * expr.c (expand_expr) <case COND_EXPR>: Never modify exp in place.
-
-Thu Dec 5 16:58:25 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (dimode peep2s): Re-add "&& 1".
-
-Thu Dec 5 14:10:15 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_prologue): Add comment, do not use
- fast prologues for cold and normal functions.
-
-Thu Dec 5 00:52:37 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_rep_movl_optimal): New variable.
- (ix86_expand_movstr, ix86_expand_clrstr): Use TARGET_REP_MOVL_OPTIMAL
- * i386.h (TARGET_REP_MOVL_OPTIMAL): New macro.
-
- * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
- absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
- neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
- generate unnecesary subregs.
-
-2002-12-05 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): Move define.
- * pa.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL): To here.
-
-2002-12-05 Dale Johannesen <dalej@apple.com>
-
- * tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR.
-
-2002-12-05 Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Replace with
- PROFILE_HOOK.
- * config/i386/mingw32.h (SUBTARGET_PROLOGUE): Don't undef.
-
-2002-12-05 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.h (__ev_mwlufi): Remove.
- (__ev_mwlufia): Remove.
- (__ev_mwlumfaaw): Remove.
- (__ev_mwlusfaaw): Remove.
- (__ev_mwlumfanw): Remove.
- (__ev_mwlusfanw): Remove.
-
-2002-12-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*andorsi3_shift_8): New.
-
-2002-12-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (shift_alg_si): Optimize ashift:HI and
- lshiftrt:SI by 28, 29, and 30 bits when !TARGET_H8300.
- (get_shift_alg): Return optimal assembly instructions for the
- shifts mentioned above.
-
-Wed Dec 4 11:53:07 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Force operand into register for QImode
- condtiional moves.
-
-2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_init_once): Do not use loop to
- implement ashiftrt:HI by 13 bits on H8S.
-
-2002-12-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa/fptr.c (__canonicalize_funcptr_for_compare): New file and function.
- * pa.md (canonicalize_funcptr_for_compare): Output library call to
- canonicalize_funcptr_for_compare_libfunc on TARGET_ELF32.
- * pa32-linux.h (CANONICALIZE_FUNCPTR_FOR_COMPARE_LIBCALL,
- CTOR_LIST_BEGIN): New defines.
- * pa/t-linux (LIB2FUNCS_EXTRA): New define.
- (fptr.c): Add make rules.
-
-2002-12-04 Geoffrey Keating <geoffk@apple.com>
-
- * combine.c (combine_simplify_rtx): Add new canonicalizations.
- * doc/md.texi (Insn Canonicalizations): Document new
- canonicalizations for multiply/add combinations.
- * config/rs6000/rs6000.md: Add and modify floating add/multiply
- patterns to ensure they're used whenever they can be.
-
-2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Update the comments related to shifts.
-
-2002-12-04 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (get_fnaddr): Correct length attribute.
-
-2002-12-04 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*extzv_8_8): New.
- (*extzv_8_16): Likewise.
-
-2002-12-04 Jason Merrill <jason@redhat.com>
-
- PR c++/8461, c++/8625
- * integrate.c (copy_decl_for_inlining): Handle explicit invisible
- references.
- * tree-inline.c (initialize_inlined_parameters): Likewise.
-
- * tree.c (variably_modified_type_p): Just return an error_mark_node.
-
-2002-12-04 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (get_fnaddr): Avoid placing an "la"
- macro instruction in a branch delay slot, to avoid assembler
- warnings.
-
-2002-12-04 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/7622
- * c-semantics (genrtl_scope_stmt): Do not output inlined
- nested functions that contain no code.
-
-Wed Dec 4 15:20:54 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * cfgrtl.c (force_nonfallthru_and_redirect): Allow abnormal edge
- to be forced into nonfallthru.
-
-2002-12-03 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/t-netbsd (USER_H): Set to $(EXTRA_HEADERS).
-
-2002-12-03 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md (*movv1di_const0): New pattern.
-
-2002-12-03 Richard Henderson <rth@redhat.com>
-
- * libgcc-std.ver: Inherit GCC_3.3 from GCC_3.0.
-
-2002-12-03 Hans-Peter Nilsson <hp@bitrange.com>
-
- * bitmap.c (bitmap_ior_and_compl, bitmap_union_of_diff):
- Initialize tmp.using_obstack to 0.
-
-2002-12-03 Andreas Schwab <schwab@suse.de>
-
- * config/m68k/m68k.h (EH_RETURN_DATA_REGNO): Define.
- (EH_RETURN_STACKADJ_RTX): Define.
- (EH_RETURN_HANDLER_RTX): Define.
- (ASM_PREFERRED_EH_DATA_FORMAT): Define.
- * config/m68k/m68k.c (m68k_save_reg): New function. Handle eh
- registers and don't save fixed registers.
- (m68k_output_function_prologue): Use it.
- (use_return_insn): Likewise.
- (m68k_output_function_epilogue): Likewise.
-
-2002-12-03 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (single_one_operand): Fix a warning.
- (single_zero_operand): Likewise.
-
-2002-12-02 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in configure configure.in dummy-conditions.c fix-header.c
- gcov-iov.c gen-protos.c genattr.c genattrtab.c genautomata.c
- gencheck.c gencodes.c genconditions.c genconfig.c genconstants.c
- genemit.c genextract.c genflags.c gengenrtl.c gengtype-lex.l
- gengtype-yacc.y gengtype.c genopinit.c genoutput.c genpeep.c
- genpreds.c genrecog.c gensupport.c mkconfig.sh read-rtl.c
- scan-decls.c scan.c config/sh/sh.h doc/configfiles.texi
- doc/install-old.texi: Replace hconfig.h with bconfig.h.
- * Makefile.in: Replace HCONFIG_H with BCONFIG_H.
-
-2002-12-02 Andrew Pinski <pinskia@physics.uc.edu>
-
- * config/rs6000/rs6000.md (ffssi): Convert to expander.
- (ffsdi): Likewise.
- (cntlzw2, cntlzd2): New patterns.
-
-2002-12-02 H.J. Lu <hjl@gnu.org>
-
- * config.gcc (mips*-*-netbsd*): Remove mips/t-netbsd.
- (mips*-*-linux*): Remove mips/t-linux.
-
-Mon Dec 2 19:26:30 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Avoid overflow.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (dosize): Replace argument op with
- sign.
- (h8300_output_function_prologue): Update the call to dosize.
- (h8300_output_function_epilogue): Likewise.
-
-2002-12-02 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.h: Delete ifndefs with nothing inside them.
-
-2002-12-02 Craig Rodrigues <rodrigc@gcc.gnu.org>
-
- * configure.in: Use "missing" script to generate warning if
- flex or bison programs not found, instead of invoking "false".
- * configure: Rebuilt.
-
-Mon Dec 2 20:28:48 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * unroll.c (copy_loop_body): Copy CONST_OR_PURE_CALL_P.
-
-Mon Dec 2 19:42:52 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Avoid overflow.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (dosize): Output r7/er7 instead of sp.
- (push): Likewise.
- (pop): Likewise.
- (h8300_output_function_prologue): Likewise.
- (h8300_output_function_epilogue): Likewise.
-
-Mon Dec 2 14:43:22 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * expmed.c (store_bit_field): Use int_mode_for_mode to find
- corresponding mode of non-integer mode, unless it is VOIDmode.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (stm_h8300s_2): New.
- (stm_h8300s_3): Likewise.
- (stm_h8300s_4): Likewise.
- (five define_peephole2): Likewise.
-
-2002-12-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * ra-build.c: Fix a comment typo.
-
-Sun Dec 1 16:50:47 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): fix
- reversed BRANCH_COST test; be curefull about infinite recursion.
-
-2002-12-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_output_function_prologue):
- Remove variable idx.
- (h8300_output_function_epilogue): Likewise.
-
-2002-12-01 Zack Weinberg <zack@codesourcery.com>
-
- * config/frv/xm-frv.h: Delete, unnecessary.
-
-2002-12-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Add comments for define_peephole2.
-
-2002-12-01 Mark Mitchell <mark@codesourcery.com>
-
- * builtin-types.def (BT_SIZE): Use size_type_node.
- * builtins.c (fold_builtin): Make the builtin strlen returns a
- size_t, not a sizetype.
- * c-common.c (c_sizeof_or_alignof_type): Use size_type_node, not
- c_size_type_node.
- (c_alignof_expr): Likewise.
- (c_common_nodes_and_builtins): Likewise.
- * c-common.h (CTI_C_SIZE_TYPE): Remove.
- (c_size_type_node): Likewise.
- * c-format.c (T_ST): Use size_type_node, not c_size_type_node.
- * tree.h (TI_SIZE_TYPE): New enumeral.
- (size_type_node): Likewise.
-
-2002-11-30 Zack Weinberg <zack@codesourcery.com>
-
- * configure.in: Don't put ${tm_file} into host_xm_file,
- build_xm_file, or xm_file. Do put tm-preds.h into tm_p_file.
- Take location of tm-preds.h into account when calculating
- tm_p_file_list.
- * configure: Regenerate.
- * mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
- arguments. Do not provide rtx, rtvec, tree, or GTY here.
- Remove special case code for tm_p.h and *config.h; add new
- special case code for tm.h and tconfig.h. Clean up a bit.
-
- * Makefile.in (tm_file, tm_file_list): New variables set from
- @-substitutions.
- (GCONFIG_H): Deleted.
- (GTM_H, TM_H): New.
- (CONFIG_H): Is now just config.h $(host_xm_file_list).
- (TM_P_H): Move up with the other mkconfig.sh-generated
- headers; don't mention tm-preds.h explicitly.
- (tm.h, cs-tm.h): New rule.
- (cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
- invocations of mkconfig.sh for changes to that program.
- (mostlyclean): Delete print-rtl1.c.
- (clean): Delete tm.h.
- Update dependencies for the files listed below.
-
- * mklibgcc.in: Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.
-
- * coretypes.h: New file.
- * system.h: #define malloc to xmalloc and realloc to xrealloc
- when FLEX_SCANNER or YYBISON is defined, independent of the
- value of GCC_VERSION.
- * alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
- c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
- c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
- c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
- c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
- cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
- cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
- cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
- cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
- cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
- debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
- dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
- emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
- expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
- function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
- gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
- gencheck.c, gencodes.c, genconditions.c, genconfig.c,
- genconstants.c, genemit.c, genextract.c, genflags.c,
- gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
- genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
- gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
- ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
- hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
- lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
- main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
- optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
- print-tree.c, profile.c, protoize.c, ra-build.c,
- ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
- real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
- regrename.c, reload.c, reload1.c, reorg.c, resource.c,
- rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
- scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
- sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
- ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
- tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
- tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
- xcoffout.c, config/darwin-c.c, config/darwin.c,
- config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
- config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
- config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
- config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
- config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
- config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
- config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
- config/i960/i960-c.c, config/i960/i960.c,
- config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
- config/m32r/m32r.c, config/m68hc11/m68hc11.c,
- config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
- config/mips/irix6-libc-compat.c, config/mips/mips.c,
- config/mmix/mmix.c, config/mn10200/mn10200.c,
- config/mn10300/mn10300.c, config/ns32k/ns32k.c,
- config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
- config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
- config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
- config/sparc/sparc.c, config/stormy16/stormy16.c,
- config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
- config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
- Include coretypes.h and tm.h.
-
- * genattrtab.c, genconditions.c, genemit.c, genextract.c,
- gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
- genrecog.c: Include coretypes.h and tm.h from the file
- generated by this program.
-
- * unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
- unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
- coretypes.h and tm.h, and tsystem.h when not already included.
- No need to include stddef.h nor stdlib.h.
-
- * fixinc/fixlib.h: Include coretypes.h and tm.h. Do not
- include auto-host.h or ansidecl.h/
- * fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
- * fixinc/procopen.c: Include server.h after fixlib.h. Do not
- include auto-host.h, ansidecl.h, or system.h.
- * fixinc/server.c: Likewise. Also, do not include signal.h,
- and do not redefine volatile.
-
-Sat Nov 30 17:16:46 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movdf_integer): Always enable in 64bit.
- (movdf_nointeger): Always disable in 64bit.
-
-2002-11-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * cfg.c (dump_flow_info): Use max_reg_num () to determine the largest
- pseudo register number plus 1.
-
-Fri Nov 29 20:10:56 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * expmed.c (store_bit_field): Use int_mode_for_mode to find
- corresponding mode of non-integer mode, unless it is VOIDmode.
-
-2002-11-29 Hans-Peter Nilsson <hp@bitrange.com>
-
- * cpplib.c (_cpp_test_assertion): Default *value to 0.
-
- * cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
-
-2002-11-29 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/t-crtstuff: New target makefile fragment.
- * config.gcc [s390-*-linux, s390x-*-linux]: Use it.
-
-2002-11-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (movsi_h8300hs): Change the order of
- alternatives to correct the length when the memory operand is
- either pre_dec or post_inc.
-
-2002-11-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (an anonymous pattern): Give an
- internal name *tst_extzv_bitqi_1_n.
- Accept bit_operand instead of bit_memory_operand.
- Do not accept bit tests with the MSB.
- (*tst_extzv_memqi_1_n): New.
-
-Thu Nov 28 23:56:24 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Add copy_rtx to avoid invalid RTX
- sharing when operand is SUBREG.
-
-Thu Nov 28 08:57:26 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * athlon.md (athlon-decodev): New reservation unit.
- (athlon-direct0): New reservation.
- (athlon-vector): New use athlon-decodev.
- (athlon-double, athlon-direct): Better model.
- (athlon_imul_k8): Use athlon-direct0.
- (athlon_movlpd_load): New insn reservation.
-
-2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
- Fix a comment typo.
- (h8300_tiny_constant_address_p): Likewise.
-
-2002-11-28 Michael Matz <matz@suse.de>
-
- * doc/passes.texi: Mention the other register allocator.
-
-2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (6 new peephole2 patterns): New.
-
-2002-11-28 Jakub Jelinek <jakub@redhat.com>
-
- * config.gcc (x86_64-*-linux*) [tmake_file]: Remove i386/t-crtstuff.
- * config/t-linux (CRTSTUFF_T_CFLAGS_S): Add $(CRTSTUFF_T_CFLAGS).
- * config/i386/t-linux64 (CRTSTUFF_T_CFLAGS): Define.
-
-2002-11-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_and_costs): New.
- * config/h8300/h8300.h (RTX_COSTS): Use h8300_and_costs.
- * config/h8300/h8300-protos.h: Add a prototype for
- h8300_and_costs.
-
-Wed Nov 27 20:34:13 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_sse_partial_regs_for_cvtsd2ss): New.
- * i386.h (x86_sse_partial_regs_for_cvtsd2ss): Declare.
- (TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS): New macro.
- * i386.md (truncdfsf patterns and splitters): Use
- TARGET_SSE_PARTIAL_REGS_FOR_CVTSD2SS
-
-2002-11-27 Zack Weinberg <zack@codesourcery.com>
-
- * config/rs6000/rs6000.c (altivec_init_builtins): Make the
- pointer argument in the prototypes of the following builtins
- be (const TYPE *) rather than (TYPE *):
- + __builtin_altivec_ld_internal_4sf
- + __builtin_altivec_ld_internal_4si
- + __builtin_altivec_ld_internal_8hi
- + __builtin_altivec_ld_internal_16qi
- + __builtin_altivec_lvsl
- + __builtin_altivec_lvsr
- + __builtin_altivec_lvebx
- + __builtin_altivec_lvehx
- + __builtin_altivec_lvewx
- + __builtin_altivec_lvxl
- + __builtin_altivec_lvx
- + __builtin_altivec_dst
- + __builtin_altivec_dstt
- + __builtin_altivec_dstst
- + __builtin_altivec_dststt
-
-2002-11-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * except.c (default_exception_section): Move variable into the
- scope where it is used.
-
-2002-11-27 Krister Walfridsson <cato@df.lth.se>
-
- * config.gcc (*-*-netbsd[2-9]*, *-*-netbsdelf[2-9]*): Test for
- correct version.
-
-2002-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (OK_FOR_U): Remove extra parentheses.
-
-2002-11-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_shift_costs): New.
- * config/h8300/h8300.h (RTX_COSTS): Use h8300_shift_costs.
- * config/h8300/h8300-protos.h: Add a prototype for
- h8300_shift_costs.
-
-2002-11-27 Jim Wilson <wilson@redhat.com>
-
- * config/rs6000/spe.md (spu_evsplatfi, spu_evsplati): Swap operands
- in output template.
-
-2002-11-27 Casper S. Hornstrup <chorns@users.sourceforge.net>
-
- * config/i386/i386.h (DLL_IMPORT_EXPORT_PREFIX): Define.
- * config/i386/winnt.c (i386_pe_dllexport_name_p): Use
- DLL_IMPORT_EXPORT_PREFIX, not '@'.
- (i386_pe_dllimport_name_p): Likewise.
- (i386_pe_mark_dllexport): Likewise.
- (i386_pe_mark_dllimport): Likewise.
- (i386_pe_encode_section_info): Likewise.
- (i386_pe_strip_name_encoding): Likewise.
-
-2002-11-27 Richard Henderson <rth@redhat.com>
-
- * mkmap-symver.awk (BEGIN): Set sawsymbol false.
- (nm && NF == 3): Set sawsymbol true.
- (END): Exit if no symbols seen.
- (output): Fix map syntax error if no globals for the version.
-
-Wed Nov 27 14:45:46 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * builtins.def (DEF_C99_BUILTIN): Fix.
-
-2002-11-26 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config/sh/lib1funcs.asm (FUNC, ENDFUNC0, ENDFUNC): New macros.
- (all): Add .size and .type information.
-
-Tue Nov 26 22:43:50 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Do not emit lea for short mode on
- partial_reg_stall target.
-
-Tue Nov 26 22:27:47 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movhicc): Allow general operand.
- (movqicc): New expander.
- (movqicc_noc): New pattern.
- * i386.c (ix86_expand_carry_flag_compare): New function.
- (ix86_expand_int_movcc): Optimize harder using sbb; support more
- HImode conversion; support QImode conditional moves
-
-Tue Nov 26 16:30:59 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (FAST_PROLOGUE_INSN_COUNT): Set to 20.
- (ix86_expand_prologue): Multiply the count by amount of registers to be
- pushed.
-
-Tue Nov 26 15:55:27 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (override_options): Error about wrong -mcpu on x86-64
- compilation.
-
-2002-11-26 NIIBE Yutaka <gniibe@m17n.org>
-
- * config/sh/linux.h (FUNCTION_PROFILER): Implemented.
-
-Tue Nov 26 00:14:20 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386-protos.h (x86_extended_QIreg_mentioned_p,
- x86_extended_reg_mentioned_p): Declare.
- * i386.c (extended_reg_mentioned_1): New static function.
- (x86_extended_QIreg_mentioned_p,
- x86_extended_reg_mentioned_p): New global functions.
- * i386.h (REX_SSE_REGNO_P): New macro.
- * i386.md (prefix_rex): New attribute.
- (length attribute): Add rex.
-
-2002-11-26 Andrew Haley <aph@redhat.com>
-
- * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename
- from_Unwind_Find_Enclosing_Function.
- * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise.
- * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise.
- * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from
- _Unwind_Find_Enclosing_Function, export @@GCC_3.3.
- * unwind.h (_Unwind_FindEnclosingFunction): Add.
-
-2002-11-26 Hartmut Penner <hpenner@de.ibm.com>
-
- * config/s390/s390.c (390_output_constant_pool): Set alignment
- before label in 64 bit mode, behind otherwise.
-
-2002-11-26 Richard Henderson <rth@redhat.com>
-
- * c-common.c (handle_visibility_attribute): Accept "default".
- * tree.h (enum symbol_visibility): New.
- (decl_visibility): Declare.
- * target.h (gcc_target.visibility): Take visibility arg as integer.
- * varasm.c (default_assemble_visibility): Likewise.
- (decl_visibility): New.
- (maybe_assemble_visibility): Use it.
- * output.h (default_assemble_visibility): Update prototype.
- * config/rs6000/rs6000.c (rs6000_assemble_visibility): Take
- visibility arg as integer.
- * doc/extend.texi: Document default visibility.
-
-2002-11-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Adjust spacing.
- * config/h8300/h8300.h: Likewise.
-
-2002-11-26 Richard Henderson <rth@redhat.com>
-
- * hooks.c (hook_bool_void_false, hook_void_tree_int,
- hook_void_FILEptr_constcharptr): Rename so that the return
- type is first.
- (hook_int_tree_tree_1, hook_void_tree, hook_void_tree_treeptr,
- hook_bool_tree_false): New.
- * hooks.h: Update.
- * langhooks-def.h: Update for renames.
- * target-def.h: Likewise.
- * tree.c (default_comp_type_attributes,
- default_set_default_type_attributes, default_insert_attributes,
- default_function_attribute_inlinable_p,
- default_ms_bitfield_layout_p): Remove.
- * tree.h: Update.
-
-2002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa-protos.h (function_value): New prototype.
- * pa.c (function_value): Use a PARALLEL to return small aggregates on
- TARGET_64BIT.
- * pa.h (FUNCTION_VALUE): Use function_value.
- * pa.md (call_value_internal_symref, call_value_internal_reg_64bit,
- call_value_internal_reg, sibcall_value_internal_symref,
- sibcall_value_internal_symref_64bit): Remove =rf constraint on return
- value.
-
-2002-11-26 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * expr.c (gen_group_rtx, emit_group_move): New functions.
- * expr.h (gen_group_rtx, emit_group_move): Prototype.
- * function.c (expand_function_start): Use gen_group_rtx to create a
- PARALLEL rtx to hold the return value when the real return rtx is a
- PARALLEL.
- (expand_function_end): Use emit_group_move to move the return value
- from a PARALLEL to the real return registers.
- * rtl.h (REG_FUNCTION_VALUE_P): Allow function values to be returned
- in PARALLELs.
-
-2002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/t-libc-ok: Fix typo.
-
-2002-11-26 Jakub Jelinek <jakub@redhat.com>
-
- * configure.in: Move AC_CANONICAL_SYSTEM and AC_ARG_PROGRAM back
- before AC_PROG_CC.
- * configure: Rebuilt.
-
-2002-11-26 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-decl.c: (start_struct): Commonize flag setting.
-
-2002-11-26 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/rs6000/rs6000.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): New.
- * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Use
- RS6000_CPU_CPP_ENDIAN_BUILTINS.
- * config/rs6000/netbsd.h (RS6000_CPU_CPP_ENDIAN_BUILTINS): Redefine.
-
-2002-11-26 Hartmut Penner <hpenner@de.ibm.com>
-
- * config/s390/s390.md (literal_pool_64, literal_pool_31 ): New
- insns.
- * config/s390/s390.c (struct machine_function): Introduction of
- struct machine_function.
- (s390_output_symbolic_const): Use of cfun.
- (s390_optimize_prolog): Likewise.
- (s390_fixup_clobbered_return_reg): Likewise.
- (s390_frame_info): Likewise.
- (s390_emit_prologue, s390_emit_epilogue): Likewise.
- (s390_init_machine_status): New function.
- (override_options): call s390_init_machine_status.
- * config/s390/s390-protos.h (s390_output_constant_pool): Changed
- prototype.
-
-2002-11-26 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (output_constant_pool): For pool constants in mergeable
- section ensure each constant is padded to multiple of entity size.
-
-2002-11-26 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (default_exception_section): Move to...
- * except.c (default_exception_section): ... here. Make
- .gcc_except_table read-only if it is not expected to have any
- dynamic relocations and linker handles it.
- * dwarf2out.c (default_eh_frame_section): Make .eh_frame read-only
- if it is not expected to have any dynamic relocations and linker
- handles it.
- * configure.in (HAVE_LD_RO_RW_SECTION_MIXING): Check what ld does
- when linking read-only and read-write sections together.
- * configure, config.in: Rebuilt.
- * crtstuff.c (EH_FRAME_SECTION_CONST): Define.
- (__EH_FRAME_BEGIN__, __FRAME_END__): Add it.
-
-Mon Nov 25 18:32:37 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (pushsf_rex64): Fix typo.
-
-2002-11-25 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.h (__ev_create_sfix32_fs): Change macro into
- new function.
- (__ev_create_ufix32_fs): Same.
- (__ev_get_sfix32_fs_internal): New.
- (__ev_get_sfix32_fs): Define to use function.
- (__ev_get_ufix32_fs_internal): New.
- (__ev_get_ufix32_fs): Define to use function.
- (__ev_get_upper_ufix32_fs): Call __ev_get_ufix32_fs.
- (__ev_get_lower_ufix32_fs): Same.
- (__ev_get_upper_sfix32_fs): Call __ev_get_sfix32_fs.
- (__ev_get_lower_sfix32_fs): Same.
- (__ev_set_sfix32_fs_internal): New.
- (__ev_set_ufix32_fs_internal): New.
- (__ev_set_sfix32_fs): Call __ev_set_sfix32_fs_internal.
- (__ev_set_ufix32_fs): Call __ev_set_ufix32_fs_internal.
- (__ev_set_upper_sfix32_fs): Call function.
- (__ev_set_lower_sfix32_fs): Same.
- (__ev_set_upper_ufix32_fs): Same.
- (__ev_set_lower_ufix32_fs): Same.
-
-2002-11-25 Douglas B Rupp <rupp@gnat.com>
-
- * gcc.c (do_spec_1): Reset delete_this_arg to zero.
-
-2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/elfos.h (HANDLE_SYSV_PRAGMA): Define as 1.
- * config/interix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/lynx-ng.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/lynx.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/openbsd.h (HANDLE_SYSV_PRAGMA: Likewise.
- * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/cris/aout.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/d30v/d30v.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/i386/djgpp.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/i386/vxi386.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/m88k/m88k.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/sparc/linux-aout.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/sparc/vxsparc64.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/alpha/osf.h (HANDLE_SYSV_PRAGMA): Don't undef before
- defining.
- * config/i386/sco5.h (HANDLE_SYSV_PRAGMA): Likewise.
- * config/mips/iris5.h (HANDLE_SYSV_PRAGMA): Likewise.
-
-2002-11-25 Dave Pitts <dpitts@cozx.com>
-
- * gcc/fixinc/mkfixinc.sh: add i370-*-openedition to bypass fixinc list
-
-2002-11-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (an anonymous pattern): New.
-
-2002-11-25 Richard Henderson <rth@redhat.com>
-
- * alias.c (find_base_value): Use new_reg_base_value if it's live.
- (copying_arguments): Make boolean.
-
-2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
-
- * gcc.c (static_spec_functions): Add if-exists-else spec
- function.
- (if_exists_else_spec_function): New function.
- * doc/invoke.texi: Document the if-exists-else spec function.
-
- * config/netbsd-elf.h (NETBSD_STARTFILE_SPEC): For -static, use
- "%:if-exists-else(crtbeginT%O%s crtbegin%O%s)".
-
-2002-11-25 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (powerpc-*-netbsd*): Replace "svr4.h" with
- "netbsd.h netbsd-elf.h" in tm_file. Set tmake_file to
- "${tmake_file} rs6000/t-netbsd".
- * config/rs6000/netbsd.h: Rewrite.
- * config/rs6000/t-netbsd: New file.
-
-2002-11-25 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (an anonymous pattern): Relax the
- condition for the pattern.
-
-2002-11-25 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.h (enum rs6000_builtins): Remove evmwlssf,
- evmwlsmf, evmwlssfa, evmwlsmfa, evmwlssfaaw, evmwlsmfaaw,
- evmwlssfanw, evmwlsmfanw.
-
- * config/rs6000/rs6000.c (bdesc_2arg): Same.
-
- * config/rs6000/spe.md: Same for patterns.
-
-2002-11-25 Christian Ehrhardt <ehrhardt@mathematik.uni-ulm.de>
-
- PR c/8639
- * fold-const.c (extract_muldiv): Don't propagate division unless
- both arguments are multiples of C.
-
-2002-11-25 Andrew Haley <aph@redhat.com>
-
- * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
- * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
- * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
- * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
-
-Sun Nov 24 10:38:04 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_use_ffreep): New global variable.
- * i386.h (x86_use_frfeep): Declare
- (TARGET_USE_FFREEP): New macro
- * i386.md (movs?f*): Use freep when asked for.
- (push?f): Remove dead code.
-
-2002-11-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_init_once): Fix a typo in the
- target help message.
-
-2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set
- extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o
- crtbeginT.o".
- (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*)
- (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts
- to "" for a.out configurations.
- * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC".
-
-2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use
- NETBSD_CPP_SPEC directly.
- (SUBTARGET_EXTRA_SPECS): Remove netbsd_cpp_spec. Add
- netbsd_endfile_spec.
- (ENDFILE_SPEC): Use %(netbsd_endfile_spec).
-
-2002-11-24 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/netbsd-elf.h (STARTFILE_SPEC): Rename to
- NETBSD_STARTFILE_SPEC.
- (STARTFILE_SPEC): Redefine in terms of NETBSD_STARTFILE_SPEC.
- (ENDFILE_SPEC): Likewise.
- * config/netbsd.h (LIB_SPEC, LIBGCC_SPEC): Likewise.
-
-2002-11-24 Andreas Schwab <schwab@suse.de>
-
- * Makefile.in (install-driver): Remove versioned link before
- trying to create it.
-
- * config/m68k/m68k.c: Fix typo in last change defining
- TARGET_ASM_CAN_OUTPUT_MI_THUNK.
-
-2002-11-23 H.J. Lu <hjl@gnu.org>
-
- * aclocal.m4: Include ../config/accross.m4.
- (gcc_AC_COMPILE_CHECK_SIZEOF): Removed.
- (gcc_AC_C_COMPILE_ENDIAN): Removed.
- (gcc_AC_C_FLOAT_FORMAT): Check $ac_cv_c_bigendian
- instead of $ac_cv_c_compile_endian.
-
- * configure.in: Replace gcc_AC_COMPILE_CHECK_SIZEOF with
- AC_COMPILE_CHECK_SIZEOF.
- Replace gcc_AC_C_COMPILE_ENDIAN with AC_C_BIGENDIAN_CROSS.
- * configure: Rebuild.
-
-2002-11-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (print_operand): Update the use of
- h8300_tiny_constant_address_p.
- (h8300_adjust_insn_length): Likewise.
- (h8300_tiny_constant_address_p): Check if the given rtx is a
- variable declared with __attribute__ ((tiny_data)).
-
-2002-11-22 Dale Johannesen <dalej@apple.com>
-
- * toplev.c (rest_of_compilation): Fix comments.
-
-2002-11-22 Geoffrey Keating <geoffk@apple.com>
-
- * aclocal.m4 (ac_cv_func_mmap_dev_zero): Darwin does not
- allow mmap from /dev/zero. Don't make decisions for the host
- based on presence or absence of /dev/zero on the build machine.
- (ac_cv_func_mmap_anon): Darwin does have working MMAP_ANON.
- (AC_FUNC_MMAP_FILE): Darwin does have mmap of a file.
- * configure: Regenerate.
-
-2002-11-22 Daniel Jacobowitz <drow@mvista.com>
-
- * gcc.c (make_relative_prefix, split_directories)
- (free_split_directories): Removed.
-
-2002-11-22 Daniel Jacobowitz <drow@mvista.com>
-
- * configure.in: Set insn=nop for DWARF-2 tests on ARM.
- * configure: Regenerated.
-
-2002-11-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (compute_a_shift_length): Fix the insn
- length computation when xor.l is output.
-
-2002-11-21 Douglas B Rupp <rupp@gnat.com>
-
- * alpha.md (movstrdi, clrstrdi): New VMS patterns.
- (call_vms_1, call_value_vms_1): Cleanup syntax.
-
-Thu Nov 21 19:20:27 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * athlon.md (define_atuomaton): Add athlon_load.
- (athlon-double): New reservation.
- (athlon-ieu0): New CPU unit.
- (athlon-load?): Use athlon_load automaton.
- (*_k8 reservations): New.
- (other insn revervations): Activate for K8.
-
-Thu Nov 21 15:07:42 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * cfgrtl.c (verify_flow_info): Accept EDGE_CAN_FALLTHRU flag.
-
-2002-11-21 Jim Wilson <wilson@redhat.com>
-
- * config/rs6000/rs6000.c (function_arg): Set inner mode of SPE
- vectors to SI.
-
-2002-11-21 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa-protos.h (xtensa_copy_incoming_a7): Declare.
- * config/xtensa/xtensa.c (struct machine_function): Add
- incoming_a7_copied flag.
- (xtensa_copy_incoming_a7): Define.
- (xtensa_emit_move_sequence): Use xtensa_copy_incoming_a7.
- * config/xtensa/xtensa.md (movdi, movsf, movdf): Ditto.
-
-Thu Nov 21 23:52:04 CET 2002 Jan Hubicka <jH@suse.cz>
-
- * i386-protos.h (x86_64_sign_extended_value): Fix prototype.
- * i386.c (x86_64_general_operand, x86_64_szext_general_operand,
- x86_64_nonmemory_operand, x86_64_movabs_operand,
- x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
- ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
- (local_symbolic_operand): Do not care the 64bit limits.
- (x86_64_sign_extended_value): Remove allow_rip support.
- (legitimate_pic_address_disp_p): Handle all cases allowed
- with RIP addressing.
- (legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
- (legitimize_pic_address): Reorganize.
- * i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
-
-2002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (arm*-*-netbsdelf*): Enable configuration.
- * config/arm/netbsd-elf.h: New file.
-
-2002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
- subtarget_asm_float_spec.
- (SUBTARGET_ASM_FLOAT_SPEC): Define, moving the
- defaults from...
- (ASM_SPEC): ...here. Use subtarget_asm_float_spec.
-
-2002-11-21 Nick Clifton <nickc@redhat.com>
-
- * config/fr30/fr30.md (movsf_constant_store): Move code to
- detect 0.0 into fr30.c.
- * config/fr30/fr30-protos.h (fr30_const_double_is_zero):
- Prototype.
- * config/fr30/fr30.c (fr30_const_double_is_zero): New
- function. Return true if the rtx is 0.0.
-
-2002-11-21 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/arm/elf.h (ASM_SPEC, LINK_SPEC): Pass -EL
- if -mlittle-endian is specified.
-
-2002-11-21 Richard Earnshaw <rearnsha@arm.com>
-
- PR optimization/2903
- * arm.md (anddi_notzesidi_di): Operand 2 is inverted not operand 1.
- (anddi_notsesidi_di): Likewise.
-
-2002-11-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (print_operand): Use
- h8300_eightbit_constant_address_p and
- h8300_tiny_constant_address_p.
- (h8300_adjust_insn_length): Likewise.
- * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Remove.
- (TINY_CONSTANT_ADDRESS_P): Likewise.
- (OK_FOR_U): Use eightbit_constant_address_p.
-
-2002-11-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/libgcc-libc.ver: Add multilib support.
- * config/s390/linux.h (MULTILIB_DEFAULT): Define.
- * config/s390/t-linux64 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
- MULTILIB_OSDIRNAMES, LIBGCC, INSTALL_LIBGCC,
- EXTRA_MULTILIB_PARTS): Define.
-
-2002-11-21 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (arm_get_frame_size): A leaf function does not need its
- stack padding to an aligned boundary if it has no frame.
- (thumb_get_frame_size): Likewise.
-
-Wed Nov 20 22:25:53 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * x86-64.h (MCOUNT_NAME): Fix typo in my previous patch.
- (override_options): Likewise.
-
-Wed Nov 20 19:07:17 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * config.gcc: Add k8 target alias support
- * i386.c (_cost): Declare costs for various variants of divides and
- multiplies.
- (k8_cost): New.
- (m_K8, m_ATHLON_K8): New macros.
- (x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen,
- x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_fiop,
- x86_promote_QImode, x86_sub_esp_?, x86_add_esp_?,
- x86_integer_DFmode_moves, x86_partial_reg_dependency,
- x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
- x86_prologue_using_move, x86_epilogue_using_move,
- x86_arch_always_fancy_math_387, x86_sse_partial_regs,
- x86_sse_typeless_stores): Set for K8
- (override_options): Add k8 support; fix athlon alignment;
- complain about non-x86-64 capable CPU being used in x86-64 compilation.
- (ix86_issue_rate): Set for K8.
- (ix86_adjust_cost, ia32_use_dfa_pipeline_interface,
- x86_machine_dependent_reorg): Handle K8 like
- * i386.h
- (x86_costs): Change mult_init and divide into array.
- (TARGET_K8, TARGET_ATHLON): New macros.
- (MODE_INDEX): New macro.
- (RTX_COST): Use new costs.
- (TARGET_CPU_CPP_BUILTINS): Define __k8__ and __tune_k8__.
- (TARGET_CPU_DEFAULT_NAMES): Add k8
- (TARGET_CPU_DEFAULT_k8): New constant
- (enum processor_type): Add PROCESSOR_K8.
- * i386.md (cpu attribute): Add k8.
-
- * invoke.texi: Document -march=k8.
-
- * i386.md (type attribute): Add leave
- (mode attribute): Remove unknownfp.
- (length_immediate, modrm, memory attributes): Handle leave correctly.
- (fp comparison patterns): Determine FP mode.
- (leave, leave_rex64): Remove special cases.
- * ppro.md (ppro_uops, ppro_p2): Add leave
- * pentiun.md (pent_pop): Handle leave too.
- * k6.md (k6_load): Handle leave.
- * athlon.md (athlon_leave, athlon_pop): Fix.
- (athlon_decode): Handle leave.
-
-2002-11-20 Steve Ellcey <sje@cup.hp.com>
-
- * emit-rtl.c (gen_reg_rtx): Simplify mapping of Complex type
- to component type using GET_MODE_INNER.
- * expr.c (emit_move_insn_1): Ditto.
- * optabs.c (expand_binop): Ditto.
- (expand_unop): Ditto.
- (expand_complex_abs): Ditto.
-
-2002-11-20 Douglas B Rupp <rupp@gnat.com>
-
- * hwint.h (HAVE___INT64): Fix typo (was HAVE__INT64).
-
-2002-11-20 DJ Delorie <dj@redhat.com>
-
- * config/stormy16/stormy16.c (s16builtins,
- xstormy16_init_builtins, xstormy16_expand_builtin): New.
- * config/stormy16/stormy16.md (divmodhi4, sdivlh, udivlh): New.
-
-2002-11-20 Hans-Peter Nilsson <hp@bitrange.com>
-
- * Makefile.in (RUN_GEN, VALGRIND_DRIVER_DEFINES): New variables.
- (DRIVER_DEFINES): Add $(VALGRIND_DRIVER_DEFINES).
- (executing gencheck, genconfigs, genconditions, genflags,
- gencodes, genconstants, genemit, genrecog, genopinit, genextract,
- genpeep, genattr, genattrtab, genoutput, gengenrtl, genpreds,
- gengtype, genprotos): Prepend $(RUN_GEN).
- * configure.in: Move host compiler tests before --enable-checking
- tests.
- (--enable-checking=valgrind): New.
- * config.in, configure: Regenerate.
- * cppfiles.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
- Define as empty.
- (read_include_file): When doing the mmap+1 trick,
- valgrind-annotate the byte after the mmap:ed area as readable.
- (purge_cache): Remove above annotation.
- * gcc.c (execute) [ENABLE_VALGRIND_CHECKING]: Arrange to prepend
- VALGRIND_PATH -q to each command.
-
- * ggc-common.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
- Define as empty.
- (ggc_realloc): Update valgrind annotations.
- * ggc-page.c [!ENABLE_VALGRIND_CHECKING] (VALGRIND_DISCARD):
- Define as empty.
- (alloc_anon, free_page, ggc_alloc, poison_pages): Add machinery to
- valgrind-annotate memory.
-
-2002-11-20 Ulrich Weigand <uweigand@de.ibm.com>
-
- * recog.c (constrain_operands): Prefer exact match over reloadable
- EXTRA_MEMORY_CONSTRAINT or EXTRA_ADDRESS_CONSTRAINT.
-
- * reload.c (find_reloads): Always reload EXTRA_ADDRESS_CONSTRAINT
- operands in Pmode.
-
-2002-11-20 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/8518
- * c-decl.c (duplicate_decls): Outline the second definition
- of an extern inline function in all cases.
-
-2002-11-20 Richard Sandiford <rsandifo@redhat.com>
-
- * stor-layout.c (place_field): Update rli->offset as well as
- rli->bitpos.
-
-2002-11-20 Richard Sandiford <rsandifo@redhat.com>
-
- * sched-deps.c (sched_analyze): Check HARD_REGNO_CALL_PART_CLOBBERED.
-
-2002-11-20 Richard Sandiford <rsandifo@redhat.com>
-
- * config/sh/sh.md (udivsi3): Don't put udivsi3_i4_media instructions
- into a libcall block.
- (divsi3): Likewise divsi3_i4_media.
-
-2002-11-20 Richard Sandiford <rsandifo@redhat.com>
-
- * global.c (find_reg): Check HARD_REGNO_NREGS before kicking
- out another register.
-
-2002-11-20 Jakub Jelinek <jakub@redhat.com>
-
- * combine.c (force_to_mode): Only replace with (not Y) if all bits in fuller_mask
- (not just mask) are set in C.
-
-2002-11-19 Steven Bosscher <steven.bosscher@usafa.af.mil>
-
- * config/mips/vr.h (DRIVER_SELF_SPECS): Change %{<mgp32} to %<mgp32.
-
-2002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * profile.c (index_counts_file): Fix obvious mistake.
-
-2002-11-19 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (profile.o): Add hashtab.h dependency.
- * gcov-io.h (GCOV_SUMMARY_LENGTH): New.
- * profile.c: Include hashtab.h.
- (htab_counts_index_hash, htab_counts_index_eq, htab_counts_index_del,
- cleanup_counts_index, index_counts_file, struct section_reference,
- struct da_index_entry, counts_file_name, counts_file_index): New.
- (get_exec_counts, init_branch_prob): Modified.
-
-2002-11-19 Kaz Kojima <kkojima@gcc.gnu.org>
-
- * config.gcc (sh*-*-linux*): Add t-slibgcc-elf-ver and t-linux
- to tmake_file. Remove setting gas and gnu_ld here.
- * config/sh/libgcc-glibc.ver: New file.
- * config/sh/t-linux (EXTRA_MULTILIB_PARTS): Add crtbeginT.o.
- (SHLIB_MAPFILES): New.
- * config/sh/linux.h (MD_EXEC_PREFIX): Undefine.
- (MD_STARTFILE_PREFIX): Likewise.
- (HANDLE_PRAGMA_PACK_PACK_PUSH_POP): Define.
- (DWARF2_UNWIND_INFO): Redefine.
- (ASM_PREFERRED_EH_DATA_FORMAT): Define.
- (LINK_EH_SPEC): Redefine.
- (MD_FALLBACK_FRAME_STATE_FOR): Define except for SH-media.
- (SH_FALLBACK_FRAME_FLOAT_STATE): Define.
- (SH_DWARF_FRAME_GP0, SH_DWARF_FRAME_FP0, SH_DWARF_FRAME_XD0,
- SH_DWARF_FRAME_BT0, SH_DWARF_FRAME_PR, SH_DWARF_FRAME_PR_MEDIA,
- SH_DWARF_FRAME_GBR, SH_DWARF_FRAME_MACH, SH_DWARF_FRAME_MACL,
- SH_DWARF_FRAME_PC, SH_DWARF_FRAME_SR, SH_DWARF_FRAME_FPUL,
- SH_DWARF_FRAME_FPSCR): Likewise.
- * config/sh/sh-protos.h (sh_set_return_address): Declare.
- * config/sh/sh.c (calc_live_regs): Count EH_RETURN_DATA_REGNO
- registers if the current function calls EH return.
- (sh_expand_epilogue): Handle EH stack adjustments.
- (sh_set_return_address): New function.
- * config/sh/sh.h (SH_DBX_REGISTER_NUMBER): Handle PR_MEDIA_REG.
- Don't abort even if the number is mapped to -1.
- (EH_RETURN_DATA_REGNO): Define.
- (EH_RETURN_STACKADJ_RTX): Define.
- * config/sh/sh.md (UNSPEC_EH_RETURN): New.
- (eh_return): New pattern.
- (eh_set_ra_di, eh_set_ra_si): Likewise.
- Add splitter to perform EH return after reload.
-
-Tue Nov 19 12:52:07 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * stor-layout.c (excess_unit_span): New function.
- (place_field): Use it.
-
-2002-11-19 Andreas Schwab <schwab@suse.de>
-
- * unwind.h (_Unwind_GetTextRelBase): Revert last change, this is
- not valid in C++.
-
-2002-11-19 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * configure.in, Makefile.in: Correct BUILD/HOST confusion.
- * configure: Regenerate.
-
-Tue Nov 19 00:11:44 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * convert.c (strip_float_extensions): New function.
- (convert_to_real): Optimize some cases.
-
-2002-11-19 Andreas Jaeger <aj@suse.de>
-
- * loop.c (record_giv): Initialize not_replaceable.
- (check_final_value): Likewise.
-
-2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_init_once): Replace 1 with
- MASK_H8300S.
-
-2002-11-19 Vijay L. Khuspe <vijayk1@kpit.com>
-
- * config/h8300/h8300.c (h8300_init_once): Allow -mn switch
- only if -mh or -ms present.
- (h8300_eightbit_constant_address_p): Support the normal mode.
- (h8300_tiny_constant_address_p): Likewise.
- * config/h8300/h8300.h (TARGET_NORMAL_MODE): New.
- (POINTER_SIZE): Add 16 bit pointer for the normal mode.
- (Pmode): Evaluate to HImode for the normal mode.
- (SIZE_TYPE): Evaluate to unsigned int for normal mode.
- (PTRDIFF_TYPE): Evaluate to int for the normal mode.
- (ASM_WORD_OP): Evaluate to word for the normal mode.
- * config/h8300/h8300.md (tablejump_normal_mode): New.
- (indirect_jump_normal_mode): New.
- * config/h8300/t-h8300 (MULTILIB_OPTIONS): Pass -mn option to
- directory.
- (MULTILIB_DIRNAMES): Create target dependent directory
- 'normal'.
- (MULTILIB_EXCEPTIONS): Don't turn on -mn on H8/300.
- * doc/invoke.texi (gccoptlist): Describe the new switch -mn.
-
-Tue Nov 19 23:50:56 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (length_immediate): Do not refer to insn address.
- (jcc*, jmp patterns): Compute length explicitly.
-
-2002-11-19 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/8588
- * optabs.c (expand_binop): Convert CONST_INTs in shift
- operations too.
-
-2002-11-19 Roger Sayle <roger@eyesopen.com>
-
- * gcse.c (gcse_emit_move_after): Correct typo in REG_EQUAL note.
-
-2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (an anonymous pattern): Relax the
- condition to accept the same operands and/or subregs.
-
-2002-11-19 Daniel Jacobowitz <drow@mvista.com>
-
- * config/sh/sh.c (gen_shl_and): Revert previous patch.
- * config/sh/sh.md (ashrdi3+1, ashrdi3+2): Predicate on
- reload_completed.
-
-2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (print_operand): Update the use of
- EIGHTBIT_CONSTANT_ADDRESS_P.
- (h8300_adjust_insn_length): Likewise.
- (h8300_eightbit_constant_address_p): Check if the given rtx is
- a variable with __attribute__((eightbit_data)).
- * config/h8300/h8300.h (OK_FOR_U): Update the use of
- EIGHTBIT_CONSTANT_ADDRESS_P.
-
-2002-11-19 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi (Contributors): Add self as second contact in
- addition to Jeff Law.
-
-2002-11-19 Andreas Jaeger <aj@suse.de>
-
- * tree-inline.c: Move prototpyes of find_alloca_call_1 and
- find_alloca_call to right place.
-
-2002-11-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * cppfiles.c: Fix formatting.
-
-2002-11-19 Jason Thorpe <thorpej@wasabisystems.com>
-
- * gcc.c (The Specs Language): Document spec functions.
- (static_spec_functions, lookup_spec_function)
- (eval_spec_function, handle_spec_function)
- (if_exists_spec_function, alloc_args): New.
- (execute): Abort if processing_spec_function is true.
- (do_spec_1): Hand off spec to handle_spec_function if %:
- is encountered. If processing_spec_function is true,
- end any pending argument when the end of the string is reached.
- (main): Use alloc_args to allocate the initial argument vector.
- * gcc.h (struct spec_function): New.
- (lang_specific_spec_functions): New extern.
-
- * config/netbsd-elf.h (STARTFILE_SPEC): Add if-exists(crti%O%s).
- (ENDFILE_SPEC): Add if-exists(crtn%O%s).
- * config/alpha/netbsd.h (ENDFILE_SPEC): Likewise.
-
- * doc/invoke.texi: Document spec functions.
-
- * cppspec.c (lang_specific_spec_functions): New.
- * gccspec.c: Likewise.
-
-2002-11-18 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux_longdouble.h (FIXUNS_TRUNCTFSI2_LIBCALL): New.
- (FIXUNS_TRUNCTFDI2_LIBCALL): New.
- (fixunstfsi_libfunc): Change.
- (fixunstfdi_libfunc): Change.
- (sdiv_optab): Don't zero out SImode handler.
- (udiv_optab): Don't zero out SImode handler.
- (smod_optab): Don't zero out SImode handler.
- (umod_optab): Don't zero out SImode handler.
-
-2002-11-18 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/8524
- * cpplib.c (run_directive): Remove previous kludge to _Pragma.
- Add a new one in its place, which hopefully works.
- (skip_rest_of_line): Change test for bottom-of-context-stack.
-
-Mon Nov 18 21:29:03 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (addqi_1_slp): Fix output template.
- (subqi_1_slp): Fix type.
-
-Sun Nov 17 00:01:28 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * calls.c (alloca_call_p): New global function.
- * tree.h (alloca_call_p): New.
- * tree-inline.c (inlinable_function_p): Do not inline when
- function calls alloca.
- (find_alloca_call, find_alloca_call_1): New functions.
-
-2002-11-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*andorqi3): Use bor between bld and
- bst. Update the insn length.
- (*andorhi3): Likewise.
- (*andorsi3): Likewise.
-
-2002-11-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/sh/sh-protos.h (sh_mark_label): Declare.
- * config/sh/sh.c (sh_mark_label): New function, taken from
- movdi_const, but fixing the case when the address has an addend.
- * config/sh/sh.md (movdi_const, movdi_const_32bit): Use it.
-
-2002-11-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/sh/sh.c (pool_node): New field: part_of_sequence_p.
- (add_constant): Set it.
- (dump_table): Don't reorder a constant if part_of_sequence_p.
- (machine_dependent_reorg): Assume that float constants will
- stay in their original order if used as a sequence.
-
-2002-11-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/sh/sh.c (calc_live_regs): Update check for PIC liveness
- in compact code.
-
-2002-11-18 Richard Sandiford <rsandifo@redhat.com>
-
- * config/sh/sh.md (initialize_trampoline): Do not force the
- trampoline address into R0_REGS here.
-
-Sun Nov 17 14:01:09 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (negsf2_ifs, negdf2_ifs, negdf2_ifs_rex64, abssf2_ifs,
- absdf2_ifs, absdf2_ifs_rex64): Fix constraints.
- (neg?f2_ifs, abs?f2_ifs splitters): Refuse memory operand; do not
- generate unnecesary subregs.
-
-2002-11-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * df.c: Fix formatting.
-
-2002-11-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (two anonymous patterns): Fix insn
- lengths.
-
-2002-11-17 Daniel Jacobowitz <drow@mvista.com>
-
- * sh.c (gen_shl_and): Don't create a zero_extend if the operand
- is not an arith_reg_operand.
-
-2002-11-17 Graham Stott <graham.stott@btinternet.com>
-
- * real.c (real_to_decimal): Fix buffer overrun when buffer size
- is smaller than representation.
-
-2002-11-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.c: Fix formatting.
-
-Sat Nov 16 16:49:58 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (truncdfsf2_1_sse, truncdfsf2_1_sse_nooverlap, truncdfsf2_2,
- floats?dff2_i387):
- Work around regclass stupidity.
- (truncdfsf_2_1_sse splitter): Accept !TARGET_PARTIAL_SSE_REGS
-
-Sat Nov 16 02:17:48 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (fop_df_6): New pattern.
- (fop_xf_4, fop_xf_5): Handle both SF and DFmode extensions.
- (fop_xf_6): Rewrite
- (fop_xf_7): Delete.
- (fop_tf_4, fop_tf_5): Handle both SF and DFmode extensions.
- (fop_tf_6): Rewrite
- (fop_tf_7): Delete.
-
-2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (two anonymous patterns): Fix typos.
-
-2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Fix formatting.
-
-2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md: Replace spaces with tabs.
- * config/h8300/t-h8300: Remove a trailing empty line.
-
-2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * tlink.c: Fix formatting.
-
-2002-11-16 David Edelsohn <edelsohn@gnu.org>
-
- PR 8362
- * config/rs6000/rs6000.c (rs6000_outout_load_multiple): New function.
- * config/rs6000/rs6000.md (movti_string): Remove output modifier
- when scratch register never needed.
- (ldmsi[3-8]): New patterns.
-
-2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * hard-reg-set.h: Follow spelling conventions.
- * real.c: Likewise.
- * target.h: Likewise.
-
-2002-11-16 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/x86-64.h (MCOUNT_NAME): Change into string literal.
-
-2002-11-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * optabs.c: Fix formatting.
-
-Sat Nov 16 02:06:02 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * athlon.md, k6.md, pentium.md, ppro.md: Handle shift1, rotate1
- * i386.md (attribute type): Add type shift1 and rotate1.
- (*_slp): Rewrite to have just two operands to avoid reload problems.
-
-2002-11-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (4 anonymous patterns): New.
-
-2002-11-15 Geoffrey Keating <geoffk@apple.com>
-
- * params.def (GGC_MIN_HEAPSIZE): Fix GGC_ALWAYS_COLLECT problem.
- * doc/invoke.texi: Correct description of what needs to be done to
- force collection at every ggc_collect call.
-
-2002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (optimization_options): Set
- flag_asynchronous_unwind_tables to 1 by default.
-
-2002-11-15 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
-
-Fri Nov 15 14:54:19 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386-protos.h (x86_function_profiler): New function
- * i386.h (MCOUNT_NAME): New.
- (PROFILE_COUNT_REGISTER): New.
- (FUNCTION_PROFILER): Move offline to ...
- * i386.c (x86_function_profiler) ... here; fix 64bit support
- * beos-elf.h (FUNCTION_PROFILER): Kill.
- (MCOUNT_NAME): New.
- * freebsd-aout.h (FUNCTION_PROFILER): Kill.
- (MCOUNT_NAME): New.
- (PROFILE_COUNT_REGISTER): New.
- * linux.h (FUNCTION_PROFILER): Kill.
- (MCOUNT_NAME): New.
- * x86-64.h (FUNCTION_PROFILER): Kill.
- (MCOUNT_NAME): New.
- * freebsd.h (FUNCTION_PROFILER): Kill.
- (MCOUNT_NAME): New.
-
-2002-11-14 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
-
- * config/arm/arm.h (EXPAND_BUILTIN_VA_ARG,
- FUNCTION_ARG_PASS_BY_REFERENCE): Define.
- * config/arm/arm.c (arm_va_arg,
- arm_function_arg_pass_by_reference): New.
- * config/arm/arm-protos.h: Add prototypes.
-
-2002-11-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * gthr-single.h: Fix formatting.
-
-2002-11-14 Zack Weinberg <zack@codesourcery.com>
-
- * tree.c (tree_vec_elt_check_failed): New function.
- * tree.h (TREE_VEC_ELT_CHECK): New checking macro.
- (TREE_VEC_ELT): Use it.
-
- * tree-inline.c (optimize_inline_calls): Don't copy a
- zero-length vector.
-
-2002-11-14 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * diagnostic.c (sorry): Don't repeat "sorry, unimplemented" text.
-
-2002-11-14 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (output_addressed_constants) [MINUS_EXPR]: Clear reloc if
- both operands contain local relocations.
- (categorize_decl_for_section): Don't use mergeable sections if
- initializer has any relocations.
-
-2002-11-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * gthr-vxworks.h: Fix formatting.
-
-2002-11-13 Janis Johnson <janis187@us.ibm.com>
-
- * doc/install.texi (Testing): Document extra Java testing.
- * doc/sourcebuild.texi (Test Suites): Document libgcj testing.
-
-2002-11-13 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa64-hpux.h (LINK_SPEC): Move "+Accept TypeMismatch" switch to the
- beginning of the spec.
- (LDD_SUFFIX, PARSE_LDD_OUTPUT): Delete.
- (LD_INIT_SWITCH, LD_FINI_SWITCH): Define but don't enable. Add comment
- regarding problems with global constructors when using GNU ld.
-
-2002-11-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * gthr-solaris.h: Fix formatting.
-
-2002-11-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * gthr-posix.h: Fix formatting.
-
-2002-11-12 Devang Patel <dpatel@apple.com>
- * gcc.c (display_help): Two new options -Xpreprocessor and -Xassembler.
- (process_command): Same.
- * doc/invoke.texi: Info about these two new options.
-
-2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (*andorsi3): New.
-
-2002-11-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * doc/install.texi (powerpc-*-linux-gnu*): Update binutils requirement.
-
-2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (tiny_constant_address_p): Parenthesize
- expressions appropriately.
-
-2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * gthr-win32.h: Fix formatting.
-
-2002-11-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (single_one_operand): Correctly compute
- mask when mode is SImode.
- (single_zero_operand): Likewise.
- * config/h8300/h8300.md (two new anonymous insns): New.
-
-2002-11-12 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/contrib.texi (Contributors): Use GCJ instead of gcj to refer
- to that entire project.
-
-2002-11-12 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Restore old
- directories.
-
-2002-11-11 Zack Weinberg <zack@codesourcery.com>
-
- * params.def (ggc-min-expand, ggc-min-heapsize): New parameters.
- * doc/invoke.texi: Document them.
-
- * ggc-page.c: Include params.h. Remove definitions of
- GGC_MIN_EXPAND_FOR_GC, GGC_MIN_LAST_ALLOCATED. Replace
- GGC_POISON with ENABLE_GC_CHECKING in ifdefs, delete #define.
- (init_gcc): Don't set G.allocated_last_gc here.
- (ggc_collect): Use PARAM_VALUE (GGC_MIN_HEAPSIZE) and
- PARAM_VALUE (GGC_MIN_EXPAND) to decide whether or not to
- perform collection.
- * ggc-simple.c: Similarly.
- * Makefile.in (ggc-common.o, ggc-simple.o): Add $(PARAMS_H) to
- dependencies.
-
-2002-11-11 Kazu Hirata <kazu@cs.umass.edu>
-
- * gthr-dce.h: Fix formatting.
-
-2002-11-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- PR c/8467
- * stmt.c (tail_recursion_args): Handle DECL_MODE differing from the
- mode of DECL_RTL case.
-
-2002-11-11 Janis Johnson <janis187@us.ibm.com>
-
- * doc/contrib.texi: Merge in the list from the libstdc++ web pages.
-
-Mon Nov 11 12:06:08 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (construct_container): Fix handling of SSE_CLASS.
-
-2002-11-10 Joel Sherrill <joel@gcc.gnu.org>
-
- * config/m68k/t-crtstuff (crti.o): Use this...
- ($(T)crti.o): ... instead.
- (crtn.o): Use this...
- ($(T)crtn.o): ... instead.
-
-2002-11-10 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR c/8439
- * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
- if there is something new to be simplified.
-
-2002-11-10 H.J. Lu <hjl@gnu.org>
-
- * calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
- * expr.c (PUSH_ARGS_REVERSED): Likewise.
-
- * config/i386/i386.h (PUSH_ARGS_REVERSED): Set to 1.
-
-2002-11-10 Zack Weinberg <zack@codesourcery.com>
-
- * config/rs6000/sysv4.h: Define NO_IMPLICIT_EXTERN_C here...
- * config/rs6000/linux.h, config/rs6000/linux64.h,
- config/rs6000/windiss.h: ... not here.
-
-2002-11-10 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Define
- __ABICALLS__ if TARGET_ABICALLS.
-
-Sun Nov 10 18:49:21 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.h (MIN_UNITS_PER_WORD): Define to 8 for x86-64 libgcc.
-
-2002-11-10 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-decl.c (grokdeclarator): Make error for duplicate type
- qualifiers into a pedwarn, disabled for C99.
-
-2002-11-10 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/mmix/mmix.h (FUNCTION_ARG_CALLEE_COPIES): Define the same
- as FUNCTION_ARG_PASS_BY_REFERENCE.
-
-2002-11-09 Zack Weinberg <zack@codesourcery.com>
-
- * doc/install.texi: Add *-*-vxworks* specific installation
- instructions.
-
- * config/vxlib.c: Rewrite using generation numbers to identify
- valid TSD keys.
-
-Sat Nov 9 00:10:54 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_machine_dependent_reorg): Fix even more side cases.
-
-2002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.h (STARTING_FRAME_OFFSET): Change offset for TARGET_64BIT to 16.
-
- * config.gcc (hppa*64*-*-linux*): Shorten lines in tm_file define.
- (hppa*64*-*-hpux11*): Likewise. Use elfos.h with gas.
- * pa.c (output_millicode_call): Use symbol difference rather than
- $PIC_pcrel$0 when using HP assembler.
- * pa64-hpux.h (TARGET_GAS): Define to 1 or 0 depending on whether or
- not elfos.h (i.e., gas) is being used.
- (ASM_FILE_START, STRING_ASM_OP, TEXT_SECTION_ASM_OP,
- DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_COMMON,
- ASM_OUTPUT_ALIGNED_LOCAL, GLOBAL_ASM_OP, ASM_DECLARE_FUNCTION_NAME,
- ASM_OUTPUT_EXTERNAL, ASM_OUTPUT_EXTERNAL_LIBCALL,
- ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL): Define when
- using elfos.h.
- (TARGET_ASM_GLOBALIZE_LABEL): Undefine when using elfos.h.
- (DWARF2_ASM_LINE_DEBUG_INFO): Delete.
- (ASM_FILE_START): Add standard .SPACE and .SUBSPA defines when not
- using elfos.h.
- (TEXT_SECTION_ASM_OP, READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP): New HP style defines when not using elfos.h.
- (TARGET_ASM_NAMED_SECTION, MAKE_DECL_ONE_ONLY, ASM_WEAKEN_LABEL):
- Don't define when not using elfos.h.
- (ASM_DECLARE_RESULT): Don't define.
- * doc/install.texi (hppa*-hp-hpux*): Remove statement that HP assembler
- doesn't work on hppa64-hp-hpux11.
- (hppa*-hp-hpux11): Update.
-
-2002-11-09 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Don't pass -KPIC
- to the assembler if -mno-abicalls was specified.
-
-2002-11-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa-linux.h (PREFERRED_DEBUGGING_TYPE, DWARF2_ASM_LINE_DEBUG_INFO,
- ASM_OUTPUT_DEF): Delete.
-
-2002-11-09 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (COMMAND_LINE_OPTIONS): Fix -Wimplicit.
-
-2002-11-08 Roger Sayle <roger@eyesopen.com>
-
- * real.c (real_sqrt): Update comment with bibliographic reference.
-
-Fri Nov 8 13:33:58 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_loadss, sse2_loadsd): Fix expander.
-
-Fri Nov 8 13:25:41 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_machine_dependent_reorg): Fix handling of empty functions.
-
-Fri Nov 8 13:01:42 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * builtins.c (expand_builtin_mathfn): Handle floor/ceil/trunc/round/nearbyint
- (expand_builtin): Likewise.
- * builtins.def: Add
- __builtin_floor, __builtin_floorf, __builtin_floorl
- __builtin_ceil, __builtin_ceilf, __builtin_ceill
- __builtin_round, __builtin_roundf, __builtin_roundl
- __builtin_trunc, __builtin_truncf, __builtin_truncl
- __builtin_nearbyint, __builtin_nearbyintf, __builtin_nearbyintl.
- * genopinit.c (optabs): Initialize the new optabs.
- * optab.c (init_optabs): Likewise.
- * optabs.h (optab_index): Add OTI_floor, OTI_ceil, OTI_trunc,
- OTI_round, OTI_nearbyint.
- (floor_optab, ceil_optab, trunc_optab, round_optab, nearbyint_optab): New.
- * doc/md.texi: Document new named patterns.
- * doc/extend.texi (builtin functions) Document
- floor, floorf, floorl, ceil, ceilf,
- ceill, round, roundf, roundl, trunc,
- truncf, truncl, nearbyint, nearbyintf, nearbyintl.
-
-Fri Nov 8 11:36:11 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_movdfcc, sse_movsfcc): Fix typo in previous patch.
-
-2002-11-08 Dale Johannesen <dalej@apple.com>
-
- * dbxout.c (dbxout_type): Fix stabs info for vector types.
-
-2002-11-08 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/8497
- PR preprocessor/8501
- * cpptrad.c (scan_out_logical_line): A '#' from a macro doesn't
- start a directive. In assembler, #NUM is not a line directive.
-
-2002-11-08 Neil Booth <neil@daikokuya.co.uk>
-
- * cppmain.c (cpp_preprocess_file): Loop to pop any -included
- buffers.
-
-2002-11-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (two anonymous test insns): New.
-
-Fri Nov 8 11:20:19 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * jump.c (mark_jump_label): Handle subregs of label_refs.
-
-Thu Nov 7 21:54:22 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_movdfcc, sse_movsfcc): Avoid overactive matching.
- * i386.c (ix86_expand_fp_movcc): Match the reversed cases.
-
-2002-11-07 David Mosberger <davidm@hpl.hp.com>
-
- * config/ia64/crtend.asm: Include "auto-host.h".
- [HAVE_INITFINI_ARRAY]: Invoke __do_global_ctors_aux via .init_array.
- * config/ia64/crtbegin.asm: Similarly.
- * config/ia64/t-ia64 (crtbegin.o): Include from current directory.
- (crtend.o, crtbeginS.o, crtendS.o): Likewise.
-
- * aclocal.m4 (gcc_AC_INITFINI_ARRAY): New.
- * configure.in: Use it if --enable-initfini-array not specified.
- * doc/install.texi (Configuration): Document --enable-initfini-array.
- * configure, config.in: Rebuild.
-
-2002-11-07 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/arm/arm-protos.h (arm_get_frame_size)
- (thumb_get_frame_size): New prototypes.
- * config/arm/arm.c (arm_get_frame_size)
- (thumb_get_frame_size): New functions.
- (use_return_insn, arm_output_epilogue, arm_output_function_epilogue)
- (arm_compute_initial_elimination_offset, arm_expand_prologue): Use
- arm_get_frame_size.
- (thumb_expand_prologue, thumb_expand_epilogue): Use
- thumb_get_frame_size.
- * config/arm/arm.h (PREFERRED_STACK_BOUNDARY): Define.
- (machine_function): Add frame_size member.
- (THUMB_INITIAL_ELIMINATION_OFFSET): Use thumb_get_frame_size.
-
-2002-11-07 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.c (bit_count): Make argument unsigned long. Return unsigned.
- Adjust code to use portable unsigned bit manipulation.
- (insn_flags, tune_flags): Change type to unsigned.
- (struct processors): Make flags unsigned long.
- (arm_override_options): Change type of count and current_bit_count
- to unsigned.
-
-2002-11-07 Richard Earnshaw <rearnsha@arm.com>
-
- * arm/elf.h (TYPE_OPERAND_FMT): Prefix type with %.
-
-Thu Nov 7 15:50:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (DWARF_FRAME_RETURN_COLUMN): Use DWARF_FRAME_REGNUM.
-
-Thu Nov 7 11:18:01 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * reg-stack.c (compensate_edge): Fix sanity check.
-
-2002-11-05 Geoffrey Keating <geoffk@apple.com>
-
- * config.gcc: Don't create crtbegin, crtend on Darwin; do create
- crt2.o. Rearrange t-darwin makefiles.
- * crtstuff.c [OBJECT_FORMAT_MACHO]: Delete.
- * unwind-dw2-fde-darwin.c: New.
- * unwind-dw2-fde-glibc.c: Correct comment.
- * unwind-dw2-fde.c (__register_frame_info_bases)
- [DWARF2_OBJECT_END_PTR_EXTENSION]: Clear fde_end.
- (classify_object_over_fdes): Use last_fde.
- (add_fdes): Likewise.
- (linear_search_fdes): Likewise.
- * unwind-dw2-fde.h (struct object)
- [DWARF2_OBJECT_END_PTR_EXTENSION]: Add fde_end field.
- (last_fde): New.
- * config/darwin.h (STARTFILE_SPEC): Include crt2.o not crtbegin.o.
- (ENDFILE_SPEC): No crtend.o.
- * config/t-darwin: New.
- * config/i386/t-darwin: Delete.
- * config/darwin-crt2.c: New.
- * config/rs6000/t-darwin: Delete contents duplicated in t-rs6000
- or config/t-darwin.
-
-2002-11-06 Douglas B Rupp <rupp@gnat.com>
-
- * config/i386/i386-interix.h (TARGET_SUBTARGET_DEFAULT): Or
- MASK_MS_BITFIELD_LAYOUT
- (SUBTARGET_OVERRIDE_OPTIONS): Warn about and turn off
- MS bitfields for Objective-C.
- (PCC_BIT_FIELD_TYPE_TEST, GROUP_BITFIELDS_BY_ALIGN): Remove
- defines.
-
- * config/i386/i386.c (ix86_ms_bitfield_layout): New function.
- (TARGET_MS_BITFIELD_LAYOUT_P): Define to above function.
- (TARGET_USE_MS_BITFIELD_LAYOUT): Define.
-
- * config/i386/i386.h (MASK_MS_BITFIELD_LAYOUT: New mask.
- TARGET_USE_MS_BITFIELD_LAYOUT): New macro.
- (TARGET_SWITCHES): Add above mask.
-
- * testsuite/gcc.dg/bf-ms-layout.c: New test case.
- * testsuite/gcc.dg/bf-no-ms-layout.c: New test case.
- * testsuite/gcc.dg/i386-bitfield1.c (dg-options): Add appropriate
- flags for interix.
-
-Wed Nov 6 18:54:47 2002 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mips/mips.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output
- .gpword/.gpdword for ABI_N32 and ABI_64 too, if using the GNU
- assembler.
- * config/mips/mips.md (tablejump_internal3): Output .cpadd
- before jump on ABI_N32 too.
- (tablejump_internal4): Ditto on ABI_64. Increase maximum
- length to match.
-
-Wed Nov 6 17:16:48 CET 2002 Jan Hubicka <jh@.suse.cz>
-
- * i386.md (negsf splitter): Accept memory operand in second register.
- (abssf/absdf splitters): Simplify
- (sse_loadss, sse_loadsd): Turn into expander.
-
-2002-11-06 David Edelsohn <edelsohn@gnu.org>
-
- PR target/8480
- * config/rs6000/rs6000.md (movdi_internal64): Discourage
- FPR to FPR moves.
-
-2002-11-06 Janis Johnson <janis187@us.ibm.com>
-
- * doc/contrib.texi: Merge in the list from the Java web pages.
-
-2002-11-06 David O'Brien <obrien@FreeBSD.org>
-
- * config/sparc/freebsd: Fix typo.
-
-2002-11-06 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa64-hpux.h (LDD_SUFFIX, PARSE_LDD_OUTPUT): Define.
-
-2002-11-06 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mips/mips.md (call_value_multiple_internal2): Use dla for
- non-SImode addresses.
-
-Tue Nov 5 14:34:36 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (float_truncate SSE splitter): Ensure that operand is not
- stack register.
- (float SSE splitters): Reorder conditional.
-
-2002-11-05 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/elf.h (LIB_SPEC): Add "-lhal".
-
-2002-11-05 John David Anglin <dave2hiauly1.hia.nrc.ca>
-
- * pa64-hpux.h (LIB_SPEC): Fix p and pg options.
- (STARTFILE_SPEC): Remove p and pg options.
-
-2002-11-05 Andrew Haley <aph@redhat.com>
-
- * fold-const.c (fold): Don't transform (a0 op compound(a1,a2))
- to (compound(a1,a0 op a2)) if a0 or a1 have side effects.
-
-2002-11-05 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (CANNOT_CHANGE_MODE_CLASS): Move comment to...
- * config/mips/mips.c (mips_cannot_change_mode_class): ...here.
-
-2002-11-04 Zack Weinberg <zack@codesourcery.com>
-
- * gthr-vxworks.h: Rewritten from scratch.
- * config/vxlib.c: New file.
- * config/t-vxworks: Add config/vxlib.c to LIB2FUNCS_EXTRA.
- * config/rs6000/t-vxworks: Add config/vxlib.c to
- LIB2FUNCS_EXTRA here too, because of clash with
- config/rs6000/t-ppccomm.
-
-2002-11-04 Dale Johannesen <dalej@apple.com>
-
- * doloop.c (doloop_modify_runtime): Fix loop count computation
- for unrolled loops.
- * loop.c (loop_invariant_p): Support calling from unroller.
-
-2002-11-04 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_decompose_address): Use arg_pointer_rtx
- for comparison.
-
-2002-11-04 Aldy Hernandez <aldyh@redhat.com>
-
- * hard-reg-set.h (REG_CANNOT_CHANGE_MODE_P): New.
-
- * config/rs6000/rs6000.h (CLASS_CANNOT_CHANGE_MODE_P): Remove.
- (CLASS_CANNOT_CHANGE_MODE): Remove.
- (CANNOT_CHANGE_MODE_CLASS): New.
-
- * config/alpha/alpha.h: Same.
-
- * config/ia64/ia64.h: Same.
-
- * config/mips/mips.h: Same.
-
- * config/s390/s390.h: Same.
-
- * config/sh/sh.h: Same.
-
- * config/pa/pa64-regs.h: Same.
-
- * config/sh/sh-protos.h (sh_cannot_change_mode_class): Add prototype.
-
- * config/sh/sh.c (sh_cannot_change_mode_class): New.
-
- * config/mips/mips-protos.h (mips_cannot_change_mode_class): Add
- prototype.
-
- * config/mips/mips.c (mips_cannot_change_mode_class): New.
-
- * doc/tm.texi (Register Classes): Remove
- CLASS_CANNOT_CHANGE_MODE and CLASS_CANNOT_CHANGE_MODE_P.
- Document CANNOT_CHANGE_MODE_CLASS.
-
- * reload.c (push_reload): Use CANNOT_CHANGE_MODE_CLASS.
- (push_reload): Same.
-
- * simplify-rtx.c (simplify_subreg): Same.
-
- * reload1.c (choose_reload_regs): Same.
-
- * recog.c (register_operand): Same.
-
- * regrename.c (mode_change_ok): Change to use new
- CANNOT_CHANGE_MODE_CLASS infrastructure.
-
- * regclass.c (cannot_change_mode_set_regs): New.
- Declare subregs_of_mode.
- (regclass): Use subregs_of_mode.
- Remove references to reg_changes_mode.
- (init_reg_sets_1): Remove class_can_change_mode and
- reg_changes_mode code.
- (invalid_mode_change_p): New.
- (dump_regclass): Use invalid_mode_change_p instead of
- class_can_change_mode.
- (regclass): Same.
- (record_operand_costs): Do not set reg_changes_mode.
-
- * local-alloc.c (struct qty): Remove changes_mode field.
- (alloc_qty): Remove changes_mode initialization.
- (update_qty_class): Remove set of changes_mode.
- (find_free_reg): Use subregs_of_mode.
-
- * global.c (find_reg): Use subregs_of_mode info.
-
- * rtl.h (cannot_change_mode_set_regs): New prototype.
- (invalid_mode_change_p): Same.
- (REG_CANNOT_CHANGE_MODE_P): New macro.
-
- * flow.c (mark_used_regs): Calculate subregs_of_mode. Remove
- REG_CHANGES_MODE.
- (life_analysis): Clear subregs_of_mode.
-
- * combine.c (subst): Pass class to CLASS_CANNOT_CHANGE_MODE_P.
- Remove use of CLASS_CANNOT_CHANGE_MODE.
- (simplify_set): Same.
- (gen_lowpart_for_combine): Calculate subregs_of_mode. Remove
- REG_CHANGES_MODE.
-
- * regs.h: Add extern for subregs_of_mode;
- Include hard-reg-set and basic-block.
- (REG_CHANGES_MODE): Delete.
-
-2002-11-03 Roger Sayle <roger@eyesopen.com>
-
- * real.c (real_sqrt): New function to calculate square roots.
- * real.h (real_sqrt): Add function prototype.
- * builtins.c (fold_builtin): Fold sqrt of constant argument.
- * simplify-rtx.c (simplify_unary_operation): Simplify sqrt
- of constant argument.
-
-2002-11-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * jump.c (never_reached_warning): Don't set contains_insn until the
- first line note is seen.
-
-2002-11-03 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (movti_string): Use string instructions.
-
-2002-11-03 Roger Sayle <roger@eyesopen.com>
-
- PR c/7128
- * c-typeck.c (c_expand_asm_operands): Defend against
- error_mark_nodes in the output argument to avoid ICE.
-
-2002-11-03 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR middle-end/8408
- * genrecog.c (preds): Handle ADDRESSOF.
- (validate_pattern): Mark it as an lvalue.
-
-2002-11-02 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Use string
- instructions when optimizing for size.
-
-2002-11-02 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h: Fix comment typos.
- * config/h8300/h8300.md: Likewise.
- * config/h8300/lib1funcs.asm: Likewise.
-
-2002-11-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- Revert this change:
-
- *doc/install.texi (Installing GCC: Configuration): Clarify
- the only supported ways to configure gcc.
-
-2002-11-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
- instead of 'O' for the constraint for the second operand.
-
-2002-11-01 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/8391
- * toplev.c (rest_of_compilation): Do not refuse to output code for
- an inline function in a local class.
-
-2002-11-01 David O'Brien <obrien@FreeBSD.org>
-
- * config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
- (TRANSFER_FROM_TRAMPOLINE): Reformat.
- Add comment.
-
-2002-11-01 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
-
-2002-11-01 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
-
- * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
-
-2002-11-01 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
- (MASK_INLINE_DIV_THR): Remove.
- (TARGET_INLINE_DIV_LAT): Remove.
- (TARGET_INLINE_DIV_THR): Remove.
- (TARGET_INLINE_DIV): Remove.
- (MASK_INLINE_FLOAT_DIV_LAT): New macro.
- (MASK_INLINE_FLOAT_DIV_THR): New macro.
- (MASK_INLINE_INT_DIV_LAT): New macro.
- (MASK_INLINE_INT_DIV_THR): New macro.
- (TARGET_INLINE_FLOAT_DIV_LAT): New macro.
- (TARGET_INLINE_FLOAT_DIV_THR): New macro.
- (TARGET_INLINE_INT_DIV_LAT): New macro.
- (TARGET_INLINE_INT_DIV_THR): New macro.
- (TARGET_INLINE_FLOAT_DIV): New macro.
- (TARGET_INLINE_INT_DIV): New macro.
- * config/ia64/ia64.md (divsi3): Change to use new macros.
- (modsi3): Ditto.
- (udivsi3): Ditto.
- (umodsi3): Ditto.
- (divsi3_internal): Ditto.
- (divdi3): Ditto.
- (moddi3): Ditto.
- (udivdi3): Ditto.
- (umoddi3): Ditto.
- (divdi3_internal_lat): Ditto.
- (divdi3_internal_thr): Ditto.
- (divsf3): Ditto.
- (divsf3_internal_lat): Ditto.
- (divsf3_internal_thr): Ditto.
- (divdf3): Ditto.
- (divdf3_internal_lat): Ditto.
- (divdf3_internal_thr): Ditto.
- (divtf3): Ditto.
- (divtf3_internal_lat): Ditto.
- (divtf3_internal_thr): Ditto.
- * config/ia64/ia64.c (ia64_override_options): Change
- to check new macros for conflicts in settings.
- * doc/invoke.texi (-minline-divide-min-latency): Remove.
- (-minline-divide-max-throughput): Remove.
- (-minline-float-divide-min-latency): New.
- (-minline-float-divide-max-throughput): New.
- (-minline-int-divide-min-latency): New.
- (-minline-int-divide-max-throughput): New.
-
-2002-11-01 Richard Earnshaw (rearnsha@arm.com)
-
- PR target/7856
- * arm.c (use_return_insn): Don't use a return insn if there are
- saved integer regs, but LR is not one of them.
-
-Fri Nov 1 10:33:15 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * expr.c (emit_move_insn): Use SCALAR_FLOAT_MODE_P
- * machmode.h (SCALAR_FLOAT_MODE_P): New macro.
-
-Thu Oct 31 18:20:50 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (sse_loadss, sse_loadsd): Canonicalize; add expander
- (movps, movpd splitters): Use canonical form.
- (movv2di): Fix merge problem.
-
-Thu Oct 31 16:22:31 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
-
-2002-10-31 Nathanael Nerode <neroden@gcc.gnu.org>
-
- PR optimization/6162
- * doc/md.texi: Document restriction on commutative operand
- specification.
-
-2002-10-31 Eric Christopher <echristo@redhat.com>
-
- * explow.c (convert_memory_address): Use shallow_copy_rtx.
-
-2002-10-31 Steve Ellcey <sje@cup.hp.com>
-
- * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
-
-2002-10-31 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
-
-Thu Oct 31 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/darwin.h: Correct formatting in previous.
-
-Thu Oct 31 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/darwin.h: Enable -falign-xxx options.
-
-Thu Oct 31 18:08:00 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (override_options): Set defaults for flag_omit_frame_pointer,
- flag_asynchronous_unwind_tables, flag_pcc_struct_return.
- * i386.c (optimization_options): Set flag_omit_frame_pointer,
- flag_asynchronous_unwind_tables, flag_pcc_struct_return to 2.
- Do not clear -momit-leaf-frame-pointer when profiling.
- (ix86_frame_pointer_required): Frame pointer is always required when
- profiling.
-
-Thu Oct 31 16:09:44 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (negdf2_ifs_rex64): Don't allow GPR operand.
-
-Thu Oct 31 12:45:55 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (binary_logical_operator): Declare.
- * sh.c (binary_logical_operator): New function.
- * sh.md (xordi3+1): New combiner splitter pattern.
-
-2002-10-31 David O'Brien <obrien@FreeBSD.org>
-
- * config/sparc/freebsd.h (TRANSFER_FROM_TRAMPOLINE): Define
- __enable_execute_stack function.
-
-2002-10-30 Zack Weinberg <zack@codesourcery.com>
-
- * gthr.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h,
- gthr-solaris.h, gthr-win32.h: Remove __gthread_key_dtor.
- * unwind-sjlj.c (fc_key_dtor): Delete.
- (fc_key_init): Adjust __gthread_key_create call to match.
-
-2002-10-30 Aldy Hernandez <aldyh@redhat.com>
-
- * c-common.c: Add GTY to vector_type_node_list.
-
-2002-10-30 John David Anglin <dave@hiauly.hia.nrc.ca>
-
- * pa-linux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
- * pa-protos.h (attr_length_millicode_call, attr_length_call,
- pa_init_machine_status): Declare new global functions.
- * pa.c (void copy_fp_args, length_fp_args, get_plabel): Declare and
- implement new functions.
- (attr_length_millicode_call, attr_length_call): Implement.
- (total_code_bytes): Change type to long.
- (pa_output_function_prologue): Compute total_code_bytes on TARGET_64BIT.
- Reset counter if flag_function_sections.
- (output_deferred_plabels): Set output alignment to 3 for TARGET_64BIT.
- (output_cbranch): Move call to gen_label_rtx.
- (output_millicode_call): Rewrite adding long TARGET_64BIT call, expose
- delay slot in all variants, shorten pc-relative calls.
- (output_call): Rewrite adding long TARGET_64BIT call, improved delay
- slot usage and exposure, various new call variants, and shortened
- sequences for some variants on TARGET_PA_20.
- Miscellaneous format changes.
- * pa.h (total_code_bytes): Change type to long.
- (MASK_LONG_CALLS, TARGET_LONG_CALLS, TARGET_LONG_ABS_CALL,
- TARGET_LONG_PIC_SDIFF_CALL, TARGET_LONG_PIC_PCREL_CALL): Define.
- (TARGET_SWITCHES): Add "-mlong-calls" and "-mno-long-calls" options.
- (EXTRA_CONSTRAINT, GO_IF_LEGITIMATE_ADDRESS,
- LEGITIMIZE_RELOAD_ADDRESS): Don't use long floating point loads and
- stores on TARGET_ELF32.
- *pa.md (define_delay): Allow insns in delay on TARGET_PORTABLE_RUNTIME.
- (unnamed patterns for mulsi3, divsi3, udivsi3, modsi3, umodsi3 and
- canonicalize_funcptr_for_compare expanders): Calculate attribute length
- attr_length_millicode_call().
- (call_internal_symref, call_value_internal_symref): Clobber register 1.
- Calculate attribute length using attr_length_call().
- (call_internal_reg_64bit, call_value_internal_reg_64bit): Move gp load
- to delay slot.
- (sibcall, sibcall_value): Rewrite.
- (sibcall_internal_symref, sibcall_value_internal_symref): Clobber
- register 1. Use attr_length_call().
- (sibcall_internal_symref_64bit, sibcall_value_internal_symref_64bit):
- New patterns.
- (unamed pattern for canonicalize_funcptr_for_compare): Rewrite.
- * som.h (MEMBER_TYPE_FORCES_BLK): Define.
- * t-pa64 (TARGET_LIBGCC2_CFLAGS): Add "-mlong-calls".
- * doc/invoke.texi (mlong-calls): Document.
-
-2002-10-30 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold_binary_op_with_conditional_arg): Improve
- handling of cases where one or both branches of the conditional
- have void type, i.e. throw an exception or don't return.
- (fold): Only apply (and undo) type conversion to the non-void
- branches of a COND_EXPR.
-
-2002-10-30 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/8333
- * varasm.c (asm_output_aligned_bss): Do not call
- ASM_GLOBALIZE_LABEL.
-
-2002-10-30 David Edelsohn <edelsohn@gnu.org>
- Torbjorn Granlund <tege@swox.com>
-
- * config/rs6000/rs6000.md (load_toc_v4_PIC_1): Use preferred form
- for addressibility.
- (load_toc_v4_PIC_1b): Same.
-
-2002-10-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_eightbit_constant_address_p):
- Truncate the addresses for H8/300 using HImode.
-
-Tue Oct 29 23:28:10 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (negdf splitter): Fix construction of the constant.
-
-Tue Oct 29 20:47:06 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (negsf, negdf): Reorganize to use vector modes
- for SSE variants.
- (abssf, absdf): Use force_reg.
- (movv4sf, movv2df): New splitters.
- * i386.h (PREDICATE_CODES): add zero_extended_scalar_load_operand
- * i386.c (zero_extended_scalar_load_operand
-
- * i386-protos.h (ix86_expand_call): Update prototype.
- * i386.c (ix86_function_ok_for_sibcall): Handle 64bit
- (ix86_expand_call): Use r11 for indirect sibcalls.
- * i386.md (call, call_value, untyped_call, call_value_pop):
- update x86_expand_call call.
- (sibcall, sibcall_value): new patterns
- (call_rex64, call_value_rex64): Do not accept sibcalls.
- (sibcall_rex64, sibcall_value_rex64,
- sibcall_rex64_v, sibcall_value_rex64_v): New.
-
-Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
- before final pass.
-
-2002-10-29 Hans-Peter Nilsson <hp@bitrange.com>
-
- * toplev.c (rest_of_type_compilation): Return early in case of
- errors.
- (check_global_declarations): Don't call debug_hooks->global_decl
- in case of errors.
-
-2002-10-28 Andreas Bauer <baueran@in.tum.de>
-
- * doc/c-tree.texi (Tree overview): Fix typos.
-
-2002-10-29 Phil Edwards <pme@gcc.gnu.org>
-
- * Makefile.in (gnucompare*): Only record bad comparisons
- if there really was a bad comparison.
-
-Tue Oct 29 19:32:16 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Remove 'H'
- * i386.md (movsf*, movdf*): Use 'C' instead of 'H'
- * md.texi (machine dependent constraints): Document 'C'
-
- * simplify-rtx.c (simplify_subreg): Fix const_int->vector subregging.
-
- * i386.c (ix86_expand_vector_move): Fix.
-
- * i386.c (ix86_expand_builtin): Use sse2_maskmovdqu_rex64.
- * i386.md (sse2_maskmovdqu_rex64): New pattern
-
- PR target/8322
- * xmmintrin.h (_mm_stream_pi, _mm_stream_pd): Fix cast.
- (ix86_init_mmx_sse_builtins): Fix type.
-
-2002-10-29 Jason Thorpe <thorpej@wasabisystems.com>
-
- * gthr-posix.h: Include <unistd.h> for feature tests.
- (sched_get_priority_max, sched_get_priority_min)
- (pthread_getschedparam, pthread_setschedparam): Only use
- if _POSIX_THREAD_PRIORITY_SCHEDULING is defined.
- (__gthread_objc_thread_set_priority): Don't treat all nonzero
- returns from sched_get_priority_max and sched_get_priority_min
- as an error.
-
-2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (TARGET_DEFAULT): Make it
- MASK_QUICKCALL.
-
-2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_eightbit_constant_address_p): New.
- (h8300_tiny_constant_address_p): Likewise.
- * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Use
- h8300_eightbit_constant_address_p.
- (TINY_CONSTANT_ADDRESS_P): Use h8300_tiny_constant_address_p.
- * config/h8300/h8300-protos.h: Add the prototypes for the two
- new functions.
-
-2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * reload1.c (update_eliminables): Unconditionally check if
- frame_pointer_needed has changed.
-
-Tue Oct 29 15:37:39 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Reorganize way reg_scan is called
- before final pass.
-
-2002-10-29 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- PR optimization/8334
- * expr.c (expand_expr) [PLUS]: Don't use simplify_binary_operation;
- check for zero operands explicitly.
-
-2002-10-29 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (extv, extzv, insv): Set size of referenced
- memory after adjusting to BLKmode.
-
-2002-10-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (MASK_*): New.
- (TARGET_*): Use MASK_*.
-
-2002-10-28 Zack Weinberg <zack@codesourcery.com>
-
- * config.gcc (*-*-vxworks, powerpc-wrs-vxworks*): New stanzas.
- * config/t-vxworks, config/vxworks.h, config/rs6000/t-vxworks,
- config/rs6000/vxworks.h: New files.
- * config/rs6000/sysv4.h: Rip out -mvxworks and all related code.
-
- * config.gcc (alpha*-*-vxworks*, arm-*-vxworks*,
- i?86-wrs-vxworks*, i960-wrs-vxworks* [all],
- m68k-wrs-vxworks*, mips-wrs-vxworks, powerpc-wrs-vxworks*,
- powerpcle-wrs-vxworks*, sparc*-wrs-vxworks* [all],
- sparc-*-vxsim*): Delete stanzas.
- * gthr-vxworks.h: Rip out all substantive code and just
- include gthr-single.h.
-
- * config/alpha/vxworks.h, config/arm/vxarm.h,
- config/i386/vxi386.h, config/i960/t-vxworks960,
- config/i960/vx960-coff.h, config/i960/vx960.h,
- config/m68k/t-vxworks68, config/m68k/vxm68k.h,
- config/mips/vxworks.h, config/rs6000/vxppc.h,
- config/sparc/t-vxsparc, config/sparc/t-vxsparc64,
- config/sparc/vxsim.h, config/sparc/vxsparc.h,
- config/sparc/vxsparc64.h: Delete files.
-
-2002-10-28 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (*-*-netbsd*): Add NETBSD_ENABLE_PTHREADS to
- tm_defines if pthreads are enabled.
- * config/netbsd.h (LIB_SPEC): Only support the -pthread option
- if NETBSD_ENABLE_PTHREADS is defined.
-
-2002-10-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog.1: Fix typos.
- * cse.c: Fix a comment typo.
- * reload1.c: Likewise.
-
-2002-10-27 Hans-Peter Nilsson <hp@bitrange.com>
-
- * fixinc/inclhack.def (libc1_G_va_list): Correct test_text.
- * fixinc/tests/base/_G_config.h: New file.
-
-2002-10-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * combine.c: Fix comment formatting.
- * loop.c: Likewise.
- * real.c: Likewise.
- * regclass.c: Likewise.
- * regmove.c: Likewise.
- * regrename.c: Likewise.
- * reg-stack.c: Likewise.
- * reload1.c: Likewise.
- * reload.c: Likewise.
- * reload.h: Likewise.
- * unroll.c: Likewise.
-
-2002-10-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * reload1.c (reload): Fix a comment typo.
-
-Sun Oct 27 10:15:24 CET 2002 Jan Hubicka <jh@suse.cz>
-
- * linux64.h (DEFAULT_PCC_STRUCT_RETURN): Define.
-
-2002-10-27 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * Makefile.in (dwarf2out.o): Add dependendcy on hashtab.h.
- * dwarf2out.c: Include hashtab.h.
- (is_main_source): New static variable.
- (attr_checksum, die_checksum): Modified to handle die references.
- (same_loc_p, same_dw_val_p, same_attr_p, same_die_p, same_die_p_wrap,
- unmark_all_dies, htab_cu_hash, htab_cu_eq, htab_cu_del, check_duplicate_cu,
- record_comdat_symbol_number): New static functions.
- (output_comp_unit, compute_section_prefix, is_type_die, break_out_includes,
- mark_dies, unmark_dies, dwarf2out_start_source_file): Modified.
- * toplev.c (rest_of_decl_compilation): Call of dwarf2out_decl for type
- declarations added.
-
-2002-10-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (initial_offset): Change to
- h8300_initial_elimination_offset.
- * config/h8300/h8300.h (INITIAL_ELIMINATION_OFFSET): Use
- h8300_initial_elimination_offset.
- * config/h8300/h8300-protos.h: Update the prototype.
-
-2002-10-26 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/mmix/mmix.h (LIBCALL_VALUE): Use
- MMIX_RETURN_VALUE_REGNUM, not MMIX_OUTGOING_RETURN_VALUE_REGNUM.
- (FUNCTION_VALUE_REGNO_P): Similar, but move code to...
- * config/mmix/mmix.c (mmix_function_value_regno_p): New.
- * config/mmix/mmix-protos.h: Remove needless ifdefs on TREE_CODE
- and RTX_CODE.
- (mmix_function_value_regno_p): Declare.
-
- * config/mmix/mmix.md ("fixuns_truncdfdi2"): Replace unsigned_fix,
- invalid for floating point mode result, with fix.
-
-Fri Oct 25 00:04:21 2002 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.in (GCC_FOR_TARGET): Add -L$(objdir)/../ld.
- (STAGE2_FLAGS_TO_PASS): Pass GCC_FOR_TARGET.
- (stage1_build): Likewise.
-
-2002-10-25 Mike Stump <mrs@apple.com>
-
- Fixes gcc.dg/warn-1.c.
- * c-typeck.c (warn_for_assignment): Don't print argument number,
- if zero.
-
-Sat Oct 26 01:44:46 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (dump_file_index): Add DFI_ce3.
- (dump_file_info): Likewise.
- (rest_of_compilation): Run first ifcvt pass before tracer.
-
-2002-10-25 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (BITS_BIG_ENDIAN): Remove.
-
-2002-10-25 Richard Henderson <rth@redhat.com>
-
- * real.c (real_to_decimal): If the >1 tens reduction loop results
- in a negative exponent, fall into the <1 pten computation.
-
-2002-10-25 Zack Weinberg <zack@codesourcery.com>
-
- PR middle-end/6994
- * c-objc-common.c (inline_forbidden_p): Can not inline
- functions containing structures or unions containing VLAs.
- * tree-inline.c (walk_tree): For all class 't' nodes, walk
- TYPE_SIZE and TYPE_SIZE_UNIT.
- (copy_tree_r): Copy types if they are variably modified.
-
-2002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md: Remove old-style peepholes.
-
-2002-10-25 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_decompose_address): Do not range check the
- displacement if base or index is the argument pointer register.
-
-2002-10-24 Hans-Peter Nilsson <hp@bitrange.com>
-
- PR other/3337
- PR bootstrap/6763
- PR bootstrap/8122
- * fixinc/inclhack.def (libc1_G_va_list): New fix.
- * fixinc/fixincl.x: Regenerate.
- * config/i386/linux.h: Move MD_FALLBACK_FRAME_STATE_FOR inside
- ifndef IN_LIBGCC2. Wrap it together with signal.h and
- sys/ucontext.h inclusion in ifndef USE_GNULIBC_1.
- * configure.in (gcc_AC_CHECK_DECLS): Check vasprintf too.
- * config.in, configure: Regenerate.
-
-2002-10-24 Igor Shevlyakov <igor@microunity.com>
-
- * varasm.c (struct rtx_const): Array size 16 for V16QImode.
-
-2002-10-24 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (x86_output_mi_thunk): Fix x86_64 pic jump.
-
-2002-10-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (initial_offset): Simplify by using
- round_frame_size.
-
-2002-10-24 Marek Michalkiewicz <marekm@amelek.gda.pl>
-
- * doc/install.texi (avr): Update required binutils version.
-
-2002-10-24 Theodore A. Roth <troth@openavr.org>
-
- * doc/install.texi: Point avr users at more up-to-date information.
-
-2002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md (movdi, movsi, movhi, movqi): Add peepholes2
- to pull operands out of the literal pool where possible.
-
-2002-10-24 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.c (init_cumulative_args): Test fntype for zero.
-
-2002-10-24 Steve Ellcey <sje@cup.hp.com>
-
- * expr.c (convert_move): If unsignedp is less then zero there
- is no equivalent code.
-
-2002-10-24 Zack Weinberg <zack@codesourcery.com>
-
- * tree.def: Delete mention of nonexistent ARRAY_TYPE fields.
-
-2002-10-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h: Rework comments; re-sort target macro definitions
- according to the sequence they are defined in the manual.
- (POINTER_BOUNDARY): Remove.
-
-2002-10-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (round_frame_size): Replace 8 with
- BITS_PER_UNIT.
-
-2002-10-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Make it
- 64-bit safe.
- (TINY_CONSTANT_ADDRESS_P): Likewise.
-
-2002-10-24 Richard Henderson <rth@redhat.com>
-
- * config/ia64/ia64.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
- (ia64_output_mi_thunk): Rewrite to use rtl, and to handle the
- vcall offset.
-
-2002-10-24 Richard Henderson <rth@redhat.com>
-
- PR opt/7944
- * reload.c (find_reloads_toplev): Mode of X is not important
- when simplifying subregs of constants.
-
-2002-10-24 Richard Sandiford <rsandifo@redhat.com>
-
- * config.gcc (mips64vr-*-elf*, mips64vrel-*-elf*): Add
- MIPS_MARCH_CONTROLS_SOFT_FLOAT=1 to $tm_defines.
- * config/mips/mips.c (MIPS_MARCH_CONTROLS_SOFT_FLOAT): Default to 0.
- (override_options): Base default setting of MASK_SOFT_FLOAT on -march
- if MIPS_MARCH_CONTROLS_SOFT_FLOAT.
-
-2002-10-24 Richard Sandiford <rsandifo@redhat.com>
-
- * optabs.c (expand_binop): Don't reuse the shift target in the
- middle of shift sequences.
-
-Wed Oct 23 22:48:44 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (abs splitters): Do not produce nested subregs.
-
-Wed Oct 23 12:42:32 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movti_rex64): Fix constraints.
-
-Wed Oct 23 12:01:21 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (abssf,absdf): Use vector operands for SSE
- (abssf2_ifs, absdf2_ifs, absdf2_ifs_rex64 and splitters): Update for
- vector operand.
-
-2002-10-23 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (get_static_reference): Remove unneeded
- TYPE_BINFO initialization.
- (get_object-reference): Likewise.
- (build_constructor): Tighten precondition check.
- (finish_message_expr): Likewise.
-
-2002-10-23 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (local_symbolic_operand): Move LABEL_REF test
- after CONST test.
-
-2002-10-23 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (hfa_element_mode): Don't allow 128 bit floats
- in HFAs.
-
-2002-10-23 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): True.
- (alpha_output_mi_thunk_osf): Handle vcall_offset.
-
-2002-10-23 Zack Weinberg <zack@codesourcery.com>
-
- * langhooks.h (struct lang_hooks_for_tree_inlining): Add
- var_mod_type_p.
- * langhooks-def.h: Default for tree_inlining.var_mod_type_p is
- hook_tree_bool_false.
-
- * tree.c (variably_modified_type_p): Moved here from
- cp/tree.c. Use lang_hooks.tree_inlining.var_mod_type_p for
- language-specific cases. Due to this, must weaken some 'if
- and only if' checks to merely 'if'.
- * tree.h: Prototype variably_modified_type_p.
-
- * tree-inline.c (walk_tree): #undef WALK_SUBTREE_TAIL at end.
-
-2002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/linux.h (CC1_SPEC, CC1PLUS_SPEC): Remove.
- * config/s390/s390.c (optimization_options): Disable -fcaller-saves.
-
- * config/s390/s390-protos.h (fp_operand): Remove.
- * config/s390/s390.c (fp_operand): Remove.
- * config/s390/s390.md ("movdi"): Replace fp_operand by FP_REG_P.
- ("*movdi_lhi", "*movdi_lli", "*movdi_larl"): Likewise.
- ("movsi", "*movsi_lhi", "*movsi_lli"): Likewise.
- (movdi_31, movdf_31 splitters): Likewise.
-
- * config/s390/s390.h (IEEE_FLOAT): Remove.
- (TARGET_FLOAT_FORMAT): Define in terms of TARGET_IEEE_FLOAT.
- (INT_REGNO_P): Rename to ...
- (GENERAL_REGNO_P): ... this.
- (FLOAT_REGNO_P): Rename to ...
- (FP_REGNO_P): ... this.
- (ADDR_REGNO_P): New macro.
- (GENERAL_REG_P, ADDR_REG_P, FP_REG_P, CC_REG_P): New macros.
- (REGNO_OK_FOR_DATA_P, REGNO_OK_FOR_FP_P): Remove.
- (DATA_REG_P, FP_REG_P, ADDRESS_REG_P): Likewise.
- (HARD_REGNO_NREGS): Adapt to macro renaming.
- (HARD_REGNO_MODE_OK): Likewise.
-
-2002-10-23 David Edelsohn <edelsohn@gnu.org>
- Geoff Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_register_move_cost): New function.
- (rs6000_memory_move_cost): New function.
- * config/rs6000/rs6000-protos.h: Declare them.
- * config/rs6000/rs6000.h: Use them.
-
-2002-10-23 Ulrich Weigand <uweigand@de.ibm.com>
-
- * libgcc2.c (__udiv_w_sdiv): Use attribute ((always_inline)) when
- inlining it into other libgcc2 routines.
- (__udivmoddi4): Likewise.
-
-2002-10-22 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * doc/sourcebuild.texi (Test Suites): Improve.
-
-2002-10-22 Stan Shebs <shebs@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Add missing
- case for Darwin.
-
-2002-10-22 Jim Wilson <wilson@redhat.com>
-
- * config/i386/i386.md (subdi3_1): Add call to ix86_binary_operator_ok.
-
-Wed Oct 23 01:52:36 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- PR other/8289
- * xmmintrin.h: Add const to the argument of loads.
-
- * i386.md (pushv2di): New pattern.
- PR target/6890
- * xmmintrin.h (_MM_TRANSPOSE4_PS): New.
-
-2002-10-22 Richard Henderson <rth@redhat.com>
-
- * target.h (gcc_target.asm_out): Merge output_mi_thunk and
- output_mi_vcall_thunk into a single hook. Add can_output_mi_thunk.
- * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Don't conditionalize.
- (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
- (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
- (TARGET_ASM_OUT): Update.
- * hooks.c (hook_bool_tree_hwi_hwi_tree_false): New.
- (hook_bool_tree_hwi_hwi_tree_true): New.
- (default_can_output_mi_thunk_no_vcall): New.
- * hooks.h: Declare them.
- * system.h (ASM_OUTPUT_MI_THUNK): Poison.
-
- * config/alpha/alpha.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
- (alpha_output_mi_thunk_osf): Add VCALL_OFFSET parameter.
- * config/arm/arm.c, config/cris/cris.c, config/frv/frv.c,
- config/i960/i960.c, config/ia64/ia64.c, config/m68k/m68k.c,
- config/mmix/mmix.c, config/pa/pa.c, config/sparc/sparc.c,
- config/stormy16/stormy16.c: Similarly.
-
- * config/i386/i386.c (x86_output_mi_thunk): Merge vcall_offset code.
- Handle 64-bit properly. Streamline.
- (x86_output_mi_vcall_thunk): Remove.
- (x86_this_parameter): Rename from ia32_this_parameter; handle 64-bit.
- (x86_can_output_mi_thunk): New.
- (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Remove.
- (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
- (override_options): Don't zap targetm.asm_out.output_mi_vcall_thunk.
-
- * config/rs6000/rs6000.c (rs6000_output_mi_thunk): Rename from
- output_mi_thunk; make static; always use function_section.
- (TARGET_ASM_OUTPUT_MI_THUNK): New.
- (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
- (rs6000_ra_ever_killed): Test no_new_pseudos not
- targetm.asm_out.output_mi_thunk in conjunction with thunks.
- * config/rs6000/rs6000-protos.h: Update.
- * config/rs6000/sysv4.h (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
- * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Don't call
- xcoffout_declare_function when using rs6000_output_mi_thunk.
-
- * config/s390/s390.c (s390_output_mi_thunk): Rename from
- s390_output_mi_vcall_thunk.
- (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
- (TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
-
- * config/vax/vax.c (vax_output_mi_thunk): Static; add vcall_offset.
- (TARGET_ASM_OUTPUT_MI_THUNK, TARGET_ASM_CAN_OUTPUT_MI_THUNK): New.
- * config/vax/vax-protos.h: Update.
- * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Remove.
-
-Wed Oct 23 00:33:11 CEST 2002 Jan Hubicka <jh@suse,cz>
-
- * i386.c (standard_sse_constant_p): Accept vector and integer zeros too.
- * i386.h (EXTRA_CONSTRAINT): Recognize 'C'
- * i386.md (movti_internal): Use 'C'
-
- * xmmintrin.h (_mm_cmplt_epi*): New.
-
-2002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*movdi_64"): Fix op_type attribute.
- ("*movdf_64"): Likewise.
- ("*lshrdi3_64"): Likewise.
- ("blockage"): Add length attribute.
- ("lit"): Likewise.
-
-Tue Oct 22 23:51:34 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md: FIx typo.
- (sse2_cvtsi2sd, sse2_pslrdq): Fix template.
- (sse2_umulv2siv2di3): Fix predicate.
- (sse2_psadbw, ashrv8hi3, ashrv4si3, lshrv8hi3 lshrv4si3,
- lshrv2di3, ashlv8hi3, ashlv4si3, ashlv2di3): Likewise.
- * xmmintrin.h (_mm_mul_epu16): Rename to...
- (_mm_mul_epu32): This one.
- (_mm_cvtsi32_si128, _mm_cvtsi128_si32): New.
-
- (contains_128bit_aligned_vector_p): Undo accidental checkin.
-
-2002-10-22 Eric Christopher <echristo@redhat.com>
-
- * config/sparc/sparc.h: Add #error.
-
-2002-10-22 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config.gcc [s390-*-linux]: Remove s390/t-linux from tmake_file.
- [s390x-*-linux*]: Likewise.
- * config/s390/t-linux: Remove.
- * config/s390/s390.h: Include fixdfdi.h when building libgcc2.
-
-Tue Oct 22 19:07:03 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (builtin_description): Add IX86_BUILTIN_PUNPCKHQDQ128.
- (ix86_expand_builtin): Fix MASKMOVDQU expasion.
- * i386.h (ix86_builtins): Add IX86_BUILTIN_PUNPCKHQDQ128.
- * i386.md (mmx_punpck?dq): Simplify.
- (sse2_pubpcklqdq): Fix.
- (sse2_pubpckhqdq): New.
- * xmmintrin.h (_mm_unpackhi_epi32): New.
-
- * xmmintrin.h (_mm_cvt*, _mm_stream_pd): Fix prototypes.
- (_mm_shufflehi_epi16, _mm_shufflelo_epi16): Fix typo.
-
-2002-10-22 Nathan Sidwell <nathan@codesourcery.com>
-
- PR c++/7209
- * fold_const.c (fold_binary_op_with_conditional_arg): Always
- build compound_expr if we used save_expr.
-
-2002-10-22 Alan Modra <amodra@bigpond.net.au>
-
- * output.h (SECTION_NOTYPE): Define.
- * varasm.c (default_section_type_flags_1): Set SECTION_NOTYPE for
- init array sections.
- (default_elf_asm_named_section): Mind SECTION_NOTYPE.
- * config/arm/arm.c (arm_elf_asm_named_section): Likewise. Also
- merge TLS support.
-
-2002-10-21 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_function_ok_for_sibcall): Look at
- the function type, not the return type.
-
-2002-10-21 Richard Henderson <rth@redhat.com>
-
- * real.c (sticky_rshift_significand): Return inexact, don't
- or it in immediately.
- (sub_significands): Accept incomming carry.
- (div_significands, rtd_divmod): Update for sub_significands change.
- (round_for_format): Update for sticky_rshift_significand change.
- (do_add): Don't involve the inexact bit in addition, do give the
- inexact bit as the subtraction carry-in.
- (encode_internal, decode_internal, real_internal_format): New.
- * real.h (real_internal_format): Declare.
-
-2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * libgcc2.c: Fix __udiv_w_sdiv breakage on platforms that
- don't define sdiv_qrnnd.
-
-2002-10-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Simplify
- using IN_RANGE.
- (TINY_CONSTANT_ADDRESS_P): Likewise.
-
-Tue Oct 22 00:04:20 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (builtin_description): Add punpcklqdq and movdq2q
- (ix86_init_mmx_sse_builtins): Add v2di_ftype_void, di_ftype_v2di,
- v16qi_ftype_pchar, void_ftype_pchar_v16qi, v4si_ftype_pchar,
- void_ftype_pchar_v4si; Initialize __builtin_ia32_movdq2q,
- __builtin_ia32_loaddqa, __builtin_ia32_loaddqu, __builtin_ia32_loadd
- __builtin_ia32_storedqa, __builtin_ia32_storedqu, __builtin_ia32_stored
- __builtin_ia32_setzero128.
- (ix86_expand_builtin): Handle IX86_BUILTIN_CLRTI, IX86_BUILTIN_LOADDQA,
- IX86_BUILTIN_LOADDQU, IX86_BUILTIN_LOADD, IX86_BUILTIN_STOREDQA,
- IX86_BUILTIN_STOREDQU, IX86_BUILTIN_STORED, Ix86_BUILTIN_MOVQ.
- * i386.h (ix86_builtins): Add IX86_BUILTIN_LOADDQA, IX86_BUILTIN_LOADDQU,
- IX86_BUILTIN_STOREDQA, IX86_BUILTIN_STOREDQU, IX86_BUILTIN_LOADD,
- IX86_BUILTIN_STORED, IX86_BUILTIN_CLRTI, IX86_BUILTIN_MOVDQ2Q,
- IX86_BUILTIN_PUNPCKLQDQ128, Ix86_BUILTIN_MOVQ.
- * i386.md (sse2_punpcklqdq, sse2_movqsse2_loadd, sse2_stored,
- sse2_movq): New patterns.
- (sse2_movdqa, sse2_movdqu, sse2_movdq2q): Fix.
- * xmmintrin.h (_mm_load_si128, _mm_loadu_si128, _mm_loadl_epi64,
- _mm_store_si128, _mm_storeu_si128, _mm_storel_epi64,
- _mm_setzero_si128, _mm_set_epi64, _mm_set_epi32, _mm_set_epi16,
- _mm_set_epi8, _mm_set1_epi64, _mm_set1_epi32, _mm_set1_epi16,
- _mm_set1_epi8, _mm_setr_epi64, _mm_setr_epi32, _mm_setr_epi16,
- _mm_setr_epi8, _mm_unpacklo_epi64,_mm_set_moveq): New functions.
- (_mm_insert_epi16): Fix.
-
-2002-10-21 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_reverse_condition): Handle
- unsafe math reversals correctly for RTL generation.
- (output_cbranch): Replace rs6000_reverse_condition call
- by its former definition.
-
-2002-10-21 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (x86_64_sign_extended_value): Add allow_rip
- argument. In CM_SMALL_PIC model consider SYMBOL_REFs binding locally or
- from constant pool or LABEL_REFs as sign extended if allow_rip.
- Change all +-1GB limits to +-16MB.
- (x86_64_general_operand, x86_64_szext_general_operand,
- x86_64_nonmemory_operand, x86_64_movabs_operand,
- x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
- legitimate_address_p, ix86_expand_int_movcc): Update callers.
- (local_symbolic_operand): Don't allow offsets bigger than +-16MB
- in CM_SMALL_PIC model.
- (legitimate_pic_address_disp_p): Don't check offsets before
- calling local_symbolic_operand.
- (legitimize_pic_address): Force offsets bigger than +-16MB into
- register.
- * config/i386/i386.h (EXTRA_CONSTRAINT, CONST_COSTS): Likewise.
- * config/i386/i386-protos.h (x86_64_sign_extended_value): Update
- prototype.
-
- * configure.in: Test for @GOTNTPOFF and @INDNTPOFF on IA-32 too.
- Add x86-64 test. Set tls_first_minor to 14 on IA-32 and x86-64.
- * configure: Rebuilt.
- * config/i386/i386.c (x86_64_sign_extended_value): Don't allow TLS
- SYMBOL_REFs unless enclosed in UNSPEC. Handle UNSPEC_DTPOFF,
- UNSPEC_GOTNTPOFF and UNSPEC_NTPOFF.
- (legitimate_address_p): Allow foo@dtpoff(base) even on TARGET_64BIT
- -fpic.
- (ix86_encode_section_info): Don't ever generate TLSGD or TLSLD for
- non-pic code if TARGET_64BIT.
- (legitimize_address): Generate 64-bit TLS sequences.
- (output_pic_addr_const): Support x86-64 TLS operators.
- (i386_output_dwarf_dtprel): Output 64-bit DTPOFF as .long f@DTPOFF, 0.
- (print_operand_address): Use %fs instead of %gs on TARGET_64BIT.
- Don't append (%rip) in 64-bit TLSGD and TLSLD sequences.
- (output_addr_const_extra): Support x86-64 TLS operators.
- (maybe_get_pool_constant): Handle TARGET_64BIT -fpic.
- (ix86_tls_get_addr): Use __tls_get_addr on TARGET_64BIT
- unconditionally.
- * config/i386/i386.md (*tls_global_dynamic_gnu): Renamed to...
- (*tls_global_dynamic_32_gnu): ..., add !TARGET_64BIT.
- (*tls_global_dynamic_sun): Renamed to...
- (*tls_global_dynamic_32_sun): ..., add !TARGET_64BIT.
- (tls_global_dynamic): Renamed to...
- (tls_global_dynamic_32): ... this.
- (tls_global_dynamic_64, *tls_global_dynamic_64): New.
- (*tls_local_dynamic_base_dynamic_gnu): Renamed to...
- (*tls_local_dynamic_base_dynamic_32_gnu): ..., add !TARGET_64BIT.
- (*tls_local_dynamic_base_dynamic_sun): Renamed to...
- (*tls_local_dynamic_base_dynamic_32_sun): ..., add !TARGET_64BIT.
- (tls_local_dynamic_base_dynamic): Renamed to...
- (tls_local_dynamic_base_dynamic_32): ... this.
- (tls_local_dynamic_base_dynamic_64,
- *tls_local_dynamic_base_dynamic_64): New.
- (*tls_local_dynamic_once): Renamed to...
- (*tls_local_dynamic_32_once): ... this.
-
-2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * libgcc2.c: Inline __udiv_w_sdiv when compiling __udivdi3,
- __divdi3, __umoddi3, or __moddi3.
-
-2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * c-opts.c (missing_arg): Use cl_options[opt_index].opt_code
- instead of just opt_index as switch expression.
-
- * calls.c (store_one_arg): Change type of 'excess_align'
- to unsigned int.
-
- * profile.c (output_gcov_string): Change type of 'temp'
- to size_t.
-
-2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/fixdfdi.h (__fixunsdfdi, __fixdfdi): Add prototypes.
- (__fixunssfdi, __fixsfdi): Likewise.
- * config/s390/s390.c (s390_single_hi): Initialize 'value'.
- (s390_single_qi): Likewise.
- (s390_emit_epilogue): Initialize 'offset'. Remove signed vs.
- unsigned comparison warning.
- (s390_return_addr_rtx): New function.
- * config/s390/s390-protos.h (s390_return_addr_rtx): Declare it.
- * config/s390/s390.h (RETURN_ADDR_RTX): Use it.
- (HARD_REGNO_MODE_OK): Rewrite condition to silence warnings.
-
-2002-10-21 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_output_mi_vcall_thunk): New function.
- (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define target hook.
- (s390_output_mi_thunk): Remove.
- (TARGET_ASM_OUTPUT_MI_THUNK): Remove.
-
-2002-10-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.h (N_REG_CLASSES): Parenthesize.
-
-2002-10-20 Zack Weinberg <zack@codesourcery.com>
-
- * config/i386/i386.c (ix86_function_ok_for_sibcall): Fix an
- inverted test in the conditional determining the possibility
- of sibcalls in PIC mode.
-
-2002-10-20 Richard Henderson <rth@redhat.com>
-
- * target.h (struct gcc_target): Line wrap.
-
- * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Static.
- (TARGET_ASM_OUTPUT_MI_THUNK): Define here...
- * config/alpha/alpha.h: ... not here.
- * config/alpha/alpha-protos.h: Update.
-
- * config/arm/arm.c, config/arm/arm.h, config/arm/arm-protos.h
- config/cris/cris-protos.h, config/cris/cris.c, config/cris/cris.h,
- config/frv/frv-protos.h, config/frv/frv.c, config/frv/frv.h,
- config/i386/i386-protos.h, config/i386/i386.c, config/i386/openbsd.h,
- config/i386/unix.h, config/i960/i960-protos.h, config/i960/i960.c,
- config/i960/i960.h, config/ia64/ia64-protos.h, config/ia64/ia64.c,
- config/ia64/ia64.h, config/m68k/linux.h, config/m68k/m68k-protos.h,
- config/m68k/m68k.c, config/m68k/netbsd-elf.h, config/m68k/openbsd.h,
- config/mmix/mmix-protos.h, config/mmix/mmix.c, config/mmix/mmix.h,
- config/pa/pa-protos.h, config/pa/pa.c, config/pa/pa.h,
- config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
- config/sparc/openbsd.h, config/sparc/sparc-protos.h,
- config/sparc/sparc.c, config/sparc/sparc.h,
- config/stormy16/stormy16-protos.h, config/stormy16/stormy16.c,
- config/stormy16/stormy16.h: Similarly.
-
- * config/m68k/m68k.c (m68k_output_mi_thunk): Replicate mnemonic
- selection logic from call patterns.
-
-2002-10-20 Mark Mitchell <mark@codesourcery.com>
-
- * config/m68k/m68k.c (m68k_output_mi_thunk): Fix typo.
-
-2002-10-20 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- PR other/8202
- * i386.c (ix86_init_mmx_sse_builtins, ix86_expand_builtin): Define and
- expand __builtin_ia32_pslldqi128 and __builtin_ia32_psrldqi128.
- * i386.h (IX86_BUILTIN_PSLLDQI128, IX86_BUILTIN_PSRLDQI128): New.
- * xmmintrin.h (_mm_srli_si128, _mm_slli_si128): New.
-
-2002-10-20 Roger Sayle <roger@eyesopen.com>
-
- PR c/761
- * toplev.c (flag_unsafe_profile_arcs): Remove.
- (flag_bounded_pointers): Remove.
- (flag_bounds_check): Correct comments.
- (lang_independent_options): Remove -funsafe-profile-arcs and
- -fbounded-pointers. Correct -fbounds-check comments.
-
- * flags.h: Correct flag_schedule_interblock comments.
- (flag_bounded_pointers): Remove prototype.
- (flag_bounds_check): Correct comments.
-
- * c-opts.c (c_common_init_options): No need to mark
- flag_bounds_check as unspecified.
- (c_common_post_options): And no need to set it from
- flag_bounded_pointers if its still unspecified.
-
- * doc/invoke.texi: Fix some overfull hboxes in "make dvi".
- Document --version, -feliminate-dwarf-2-dups, -fno-sched-interblock,
- -fno-sched-spec, -fsched-spec-load, -fsched-spec-load-dangerous,
- -fsched-verbose=n, -fno-branch-count-reg and -fbounds-check.
-
-Sat Oct 19 22:02:28 2002 Alexandre Oliva <aoliva@redhat.com>
- Angela Marie Thomas <angela@releasedominatrix.com>
- Brendan Kehoe <brendan@zen.org>
- Nick Clifton <nickc@redhat.com>
- Andrew Haley <aph@redhat.com>
-
- * configure.in (--with-sysroot): New. Don't inhibit libc if
- given. AC_SUBST TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE
- and CROSS_SYSTEM_HEADER_DIR.
- * configure: Rebuilt.
- * Makefile.in (CROSS_SYSTEM_HEADER_DIR): Set in configure.
- (TARGET_SYSTEM_ROOT): New.
- (DRIVER_DEFINES): Define CROSS_INCLUDE_DIR from
- CROSS_SYSTEM_HEADER_DIR.
- (install-gcc-tooldir): New target.
- (stmp-fixinc): Do not create $(libsubdir), but rather bail out
- if SYSTEM_HEADER_DIR does not exist and it's not the default
- sys-include directory.
- (deduced.h, stmp-fixproto): Quote SYSTEM_HEADER_DIR properly.
- (install-mkheaders): Likewise.
- * gcc.c (target_system_root): New variable.
- (add_sysrooted_prefix): New function.
- (process_command): Recompute run-time target_system_root from
- gcc_exec_prefix, keeping it unchanged if the relocated sysroot
- does not exist.
- (do_spec_1): Process 'R' spec.
- (main): Add md_exec_prefix to exec_prefixes regardless of
- startfile_prefix_spec. Use add_sysrooted_prefix for
- startfile_prefixes, and don't skip the default ones when cross
- compiling with sysroot enabled. Removed unused case of
- non-absolute standard_startfile_prefix.
- * config/interix.h: Remove the only potential, yet disabled,
- occurrence of non-absolute (empty) standard_startfile_prefix.
- * config/sh/linux.h (LIB_SPEC): Add -rpath-link in non-static
- linking.
- * config/mips/linux.h (LIB_SPEC): Define as in sh/linux.h.
- * doc/install.texi (--with-sysroot): Document.
- (--with-headers, --with-libs): Deprecate.
-
-2002-10-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
- Mark Mitchell <mark@codesourcery.com>
-
- * alpha-protos.h (alpha_output_mi_thunk_osf): Update signature to
- match target.h.
- * arm-protos.h, arm.c (arm_output_mi_thunk): Likewise.
- * cris-protos.h, cris.c (cris_asm_output_mi_thunk): Likewise.
- * frv-protos.h, frv.c (frv_asm_output_mi_thunk): Likewise.
- * i386-protos.h, i386.c (x86_output_mi_vcall_thunk,
- x86_output_mi_thunk): Likewise.
- * i960-protos.h, i960.c (i960_output_mi_thunk): Likewise.
- * ia64-protos.h, ia64.c (ia64_output_mi_thunk): Likewise.
- * m68k-protos.h, m68k.c (m68k_output_mi_thunk): Likewise.
- * mmix-protos.h, mmix.c (mmix_asm_output_mi_thunk): Likewise.
- * rs6000-protos.h, rs6000.c (output_mi_thunk): Likewise.
- * s390-protos.h, s390.c (s390_output_mi_thunk): Likewise.
- * stormy16-protos.h, stormy16.c (xstormy16_asm_output_mi_thunk):
- Likewise.
- * vax-protos.h, vax.c (vax_output_mi_thunk): Likewise.
-
- * target.h (gcc_target): Update output_mi_thunk and
- output_mi_vcall_thunk to take a HOST_WIDE_INT delta and
- vcall_index.
-
- * config/alpha/alpha.c: Replace ASM_OUTPUT_MI_THUNK with
- TARGET_ASM_OUTPUT_MI_THUNK in comments.
- * config/alpha/vms.h (ASM_OUTPUT_MI_THUNK): Don't #undef it.
- (TARGET_ASM_OUTPUT_MI_THUNK): #undef it.
- * config/frv/frv.h (DEFAULT_VTABLE_THUNKS): Remove definition.
- * config/i386/i386-protos.h (x86_output_mi_vcall_thunk): Update
- signature.
- * config/i386/i386.c (x86_output_mi_vcall_thunk): Likewise.
- * config/i386/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
- TARGET_ASM_OUTPUT_MI_THUNK in comments.
- * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Don't define.
- (TARGET_ASM_OUTPUT_MI_THUNK): Do define.
- * config/m68k/openbsd.h: Replace ASM_OUTPUT_MI_THUNK with
- TARGET_ASM_OUTPUT_MI_THUNK in comments.
- * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Remove #ifdef
- ASM_OUTPUT_MI_THUNK and replace with check of targetm.
-
- * doc/tm.texi (TARGET_ASM_OUTPUT_MI_THUNK): Update signature.
- (TARGET_ASM_OUTPU_MI_VCALL_THUNK): Likewise.
-
-2002-10-19 Brad Lucier <lucier@math.purdue.edu>
-
- * real.c (do_add): Fix 0+0 sign corner case.
- (do_divide): Fix Inf/0 corner case.
-
-Sun Oct 20 00:31:31 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (classify_argument): Pass MMX arguments in memory
- (ix86_expand_builtin): Expand proper address mode for cflush.
- * i386.md (movdqa): Fix typo.
- (sse2_cflush): Accept DImode addresses.
-
- * xmmintrin.h (_mm_sqrt_sd): Accept two arguments.
- (_mm_max_sd): Fix pasto.
- (_mm_storeh_pd, _mm_storel_pd): Fix.
-
- * i386.c (bdesc_comi): Fix to match specification.
- (ix86_expand_sse_comi): Emit the comparison properly.
- * i386.md (sse_comi, sse2_comi, sse_ucomi, sse2_ucomi):
- Do not use comparison operator.
- (vnmaskcmp): Fix template.
-
- * xmmintrin.h (_mm_cvtps_pi16): Fix.
-
-2002-10-19 Sebastian Pop <s.pop@laposte.net>
-
- * dependence.c : Removed.
- * Makefile.in : Remove dependence.o.
-
-Sat Oct 19 10:46:52 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * mmintrin.h (__m64): typedef it to v2si.
- (_mm_cvtsi32_si64, _mm_cvtsi32_si64_mm_sll_pi16,
- _mm_sll_pi32, _mm_sll_pi64, _mm_slli_pi64, _mm_sra_pi16,
- _mm_sra_pi32, _mm_srl_pi16, _mm_srl_pi32, _mm_srl_pi64,
- _mm_srli_pi64, _mm_and_si64, _mm_andnot_si64,
- _mm_or_si64, _mm_xor_si64): Add neccesary casts.
- * xmmintrin.h (_mm_setzero_si64): Likewise.
-
- * i386.h (ALIGN_MODE_128): Update comment; add missing modes
- (SSE_REG_MODE_P, MMX_REG_MODE_P): New macros.
-
- PR target/7693
- Patch by Shawn Wagner
- * mmintrin.h: Replace pi64 by si64.
-
-2002-10-18 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.md (movdf_hardfloat32): Order alternatives consistently.
- Use length of 4 not *.
- (movdf_hardfloat64): Same. Support DFmode moves to/from CTR/LR.
- (movdf_softfloat64): Likewise.
- (movdi_internal32): Use length of 4 not *.
- (movti_power): Same.
- (ctrsi, ctrdi): Same.
-
-2002-10-18 Zack Weinberg <zack@codesourcery.com>
-
- * c-decl.c (start_decl): Point users of the old initialized-
- typedef extension at __typeof__.
-
-2002-10-18 Richard Henderson <rth@redhat.com>
-
- * real.c (cmp_significand_0, rtd_divmod, ten_to_mptwo): New.
- (real_to_decimal): Re-implement using the logic from the
- gcc 3.2 etoasc. Comment heavily.
- (div_significands): Simplify loop startup and comparison logic.
-
-2002-10-18 Mark Mitchell <mark@codesourcery.com>
-
- * target-def.h (TARGET_ASM_OUTPUT_MI_THUNK): Default to NULL.
- (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Likewise.
- (TARGET_ASM_OUT): Add them.
- * target.h (asm_out): Add output_mi_thunk and
- output_mi_vcall_thunk.
- * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/arm/arm-protos.h (arm_output_mi_thunk): Declare.
- * config/arm/arm.c (arm_output_mi_thunk): Define.
- * config/arm/arm.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/cris/cris.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/frv/frv.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/i386/i386-protos.h (x86_output_mi_thunk): Adjust
- prototype.
- (x86_output_mi_vcall_thunk): Declare.
- * config/i386/i386.c (override_options): Clear
- output_mi_vcall_thunk in 64-bit mode.
- (ix86_fntype_regparm): New function.
- (ix86_return_pops_args): Use it.
- (ia32_this_parameter): New function.
- (x86_output_mi_vcall_thunk): New function.
- (x86_output_mi_thunk): Use it
- * config/i386/unix.h (TARGET_ASM_OUTPUT_MI_THUNK): Adjust.
- (TARGET_ASM_OUTPUT_MI_VCALL_THUNK): Define.
- * config/i960/i960-protos.h (i960_output_mi_thunk): Declare.
- * config/i960/i960.c (i960_output_mi_thunk): New function.
- * config/i960/i960.h (ASM_OUTPUT_MI_THUNK): Adjust.
- * config/ia64/ia64-protos.h (ia64_output_mi_thunk): Declare.
- * config/ia64/ia64.c (ia64_output_mi_thunk): Define.
- * config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/m68k/m68k-protos.h (m68k_output_mi_thunk): New function.
- * config/m68k/linux.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/m68k/netbsd-elf.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/mmix/mmix.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/pa/pa.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/rs6000/sysv4.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/s390/s390-protos.h (s390_output_mi_thunk): Declare.
- * config/s390/s390.c (s390_output_mi_thunk): Define.
- * config/s390/s390.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/stormy16/stormy16.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * config/vax/vax-protos.h (vax_output_mi_thunk): Declare.
- * config/vax/vax.c (vax_output_mi_thunk): Define.
- * config/vax/vax.h (ASM_OUTPUT_MI_THUNK): Rename to ...
- (TARGET_ASM_OUTPUT_MI_THUNK): ... this.
- * doc/tm.texi: Adjust documentation.
-
-2002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Define
- __enable_execute_stack function.
- * config/alpha/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Define
- as NETBSD_ENABLE_EXECUTE_STACK.
- * config/i386/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
- * config/i386/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
- * config/i386/netbsd64.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
- * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
- * config/sparc/netbsd.h (TRANSFER_FROM_TRAMPOLINE): Ditto.
-
-2002-10-18 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/i386/i386.c (x86_initialize_trampoline): Emit a call
- to __enable_execute_stack with the address of the trampoline
- if TRANSFER_FROM_TRAMPOLINE is defined.
- * config/i386/i386.h (TARGET_64BIT): Expand to a compile-time
- constant if building libgcc2.
-
-Thu Oct 17 17:40:05 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (pentium4_cost): Fix according to Intel recommendations.
- (ix86_memory_move_cost): Fix for 64bit compilation.
-
-2002-10-17 Roger Sayle <roger@eyesopen.com>
-
- * doc/c-tree.texi: Update description of COND_EXPR tree nodes.
-
-2002-10-17 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.h (HARD_REGNO_MODE_OK): Allow arbitrary modes
- in CTR/LR/MQ.
- * config/rs6000/rs6000.md (movcc_internal1): Support CCmode moves
- to/from CTR/LR/MQ.
- (movsf_hardfloat): Support SFmode moves to/from CTR/LR/MQ.
- (movsf_softfloat): Likewise.
-
-2002-10-17 Janis Johnson <janis187@us.ibm.com>
-
- * Makefile.in (site.exp): Add ALT_CXX_UNDER_TEST and COMPAT_OPTIONS.
-
-2002-10-17 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/alpha/alpha.c (alpha_initialize_trampoline): Use
- tramp, not addr, to pass the trampoline address to
- __enable_execute_stack.
-
-Thu Oct 17 18:40:47 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * mmintrin.h: Guard by __MMX__
- * xmmintrin.h: Guard by __SSE__
-
- PR other/8062
- * xmmintrin.h (_MM_SHUFFLE2): New macro.
- (_mm_load*_?d): New functions.
- (_mm_set*_?d): New functions.
- (_mm_store*_?d): New functions.
-
-Wed Oct 16 15:01:29 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- Really commit patch announced at Oct 14
- PR c/7344
- * predict.c (can_predict_insn_p): New function.
- (estimate_probability): Avoid unnecesary work.
- (process_note_prediction): Likewise.
- * toplev.c (rest_of_compilation): Account early branch prediction pass
- as TV_BRANCH_PROB.
-
- PR other/8048
- Found by Ian Ollmann
- * xmmintrin.h (_mm_shuffle_pd): Fix typo.
- (_mm_load?_pd): Likewise.
- (_mm_store?_pd): Likewise.
-
- PR target/7386
- * i386.c (builtin_description):Drop cmpg[te]s[sd].
- * xmmintrin.h (__mm_cmpg[te]_s[sd]): Rewrite using
- swapped alternative.
-
- PR opt/7630
- * reload1.c (reload_inner_reg_of_subreg): New argument output;
- (push_reload): Update call.
-
-2002-10-17 Richard Sandiford <rsandifo@redhat.com>
-
- * config.gcc (mips*-*-*): Add OBJECT_FORMAT_ELF to $tm_defines
- if using mips/elf.h or mips/elf64.h.
- * config/mips/elf.h (OBJECT_FORMAT_ELF): Remove.
- * config/mips/elf64.h (OBJECT_FORMAT_ELF): Remove.
-
-2002-10-16 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (function_arg): Set inner mode of V1DI to
- SI.
-
-2002-10-16 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/linux.h (ASM_DOUBLE, _ASM_OUTPUT_LONG): Remove.
- (LPREFIX): Likewise.
- (ASM_COMMENT_START, LOCAL_LABEL_PREFIX, ASM_FORMAT_PRIVATE_NAME,
- ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT,
- ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP, ASM_OUTPUT_ALIGNED_BSS,
- TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP,
- GLOBAL_ASM_OP, ASM_OUTPUT_MI_THUNK): Move to s390.h.
-
- * config/s390/s390.h (ASM_COMMENT_START, LOCAL_LABEL_PREFIX,
- ASM_FORMAT_PRIVATE_NAME, ASM_OUTPUT_ALIGN, ASM_OUTPUT_SKIP,
- ASM_OUTPUT_ALIGNED_BSS, TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP,
- BSS_SECTION_ASM_OP): Move from linux.h.
- (ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
- Also, use ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
-
- * config/s390/s390.c (s390_function_profiler): Use
- ASM_GENERATE_INTERNAL_LABEL instead of LPREFIX.
-
-2002-10-15 Eric Christopher <echristo@redhat.com>
-
- * stor-layout.c (layout_type): Call GET_MODE_BITSIZE once.
- * java/parse.y (obtain_incomplete_type): Make pointer
- ptr_mode.
-
-2002-10-15 Richard Henderson <rth@redhat.com>
-
- * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
- as arguments. Bound DIGITS by the available buffer size.
- (real_to_hexadecimal): Likewise.
- * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
- (REAL_VALUE_TO_DECIMAL): Remove.
- * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
- sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
- config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
- config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
- config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
- config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
- config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
- use real_to_decimal directly, and with the proper arguments.
- * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
-
-2002-10-15 Jim Wilson <wilson@redhat.com>
-
- * reload1.c (merge_assigned_reloads): After converting overlapping
- reloads to RELOAD_OTHER, abort if there are now conflicting reloads.
-
- * config/i386/i386.md (adddi3_1): Add call to ix86_binary_operator_ok.
-
-Tue Oct 15 22:08:35 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * expr.c (do_tablejump): Fix typo in my previous commit.
-
-2002-10-15 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/vr.h (DRIVER_SELF_SPECS): Change %<mgp32 to %{<mgp32}.
-
-2002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_split_branches): Add return
- value. Add parameters TEMP_REG and TEMP_USED. Use unspec 104.
-
- (find_base_register_in_addr): New function.
- (find_base_register_ref): New function.
- (replace_base_register_ref): New function.
-
- (struct constant_pool): Add members pool_insn, insns, and anchor.
- Remove member last_insn.
- (s390_start_pool): Initialize them.
- (s390_end_pool): Emit pool placeholder insn.
- (s390_add_pool_insn): New function.
- (s390_find_pool): Use insns bitmap instead of addresses.
- (s390_dump_pool): Replace placeholder insn. Emit anchor.
- Replace unspec 104 by local-pool-relative references.
- (s390_output_constant_pool): Output anchor label if required.
- (s390_output_symbolic_const): Handle unspec 104 and 105.
- (s390_add_pool): Remove, replace by ...
- (s390_add_constant, s390_find_constant): ... these new functions.
- (s390_add_anchor): New function.
-
- (s390_chunkify_pool): Delete, replace by ...
- (s390_chunkify_start, s390_chunkify_finish,
- s390_chunkify_cancel): ... these new functions.
- (s390_optimize_prolog): Add parameter TEMP_REGNO.
- Recompute register live data for special registers.
- (s390_fixup_clobbered_return_reg): New function.
- (s390_machine_dependent_reorg): Rewrite to use new
- s390_chunkify_... routines.
-
- config/s390/s390.md ("reload_base"): Rename to ...
- ("reload_base_31"): ... this.
- ("reload_base_64"): New insn.
- ("reload_base2"): Remove.
- ("reload_anchor"): New insn.
- ("pool"): New insn.
-
- s390.c (s390_pool_overflow): Remove.
- s390.h (s390_pool_overflow): Likewise.
- s390.md ("cjump", "icjump", "doloop_si"): Remove s390_pool_overflow.
-
-Tue Oct 15 16:51:04 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (movv8qi_i+2): Don't split if source is -1.
-
-2002-10-15 Janis Johnson <janis187@us.ibm.com>
-
- * doc/install.texi: Formatting changes for conformance to HTML 4.01.
-
-2002-10-15 Ulrich Weigand <uweigand@de.ibm.com>
-
- PR opt/7409
- * loop.c (loop_regs_scan): Mark registers used for function
- argument passing as MAY_NOT_OPTIMIZE.
-
-Mon Oct 14 19:22:19 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * gcov-io.h (gcov_info): Fix type.
- * profile.c (create_profiler): Fix type mismatch.
-
-Mon Oct 14 20:33:12 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (movv2di_internal): New pattern.
- (movv2df_internal, movv8hi_internal, movv16qi_internal): Fix predicate.
- (movv2di): New expander.
- * i386.c (ix86_preferred_reload_class): Return NO_REGS for vector operands.
-
- * i386.c (ix86_expand_timode_binop_builtin): Delete.
- (builtin_description): Add SSE1 logicals; rename SSE2 logicals.
- (ix86_init_mmx_sse_builtins): Kill SSE1 logicals.
- (ix86_expand_builtin): Likewise.
- * i386.h (sse_andti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
- sse_andti3,
- sse_andnti4_df_1, sse_andti3_df_2, sse_andti3_sf_1, sse_andti3_sf_2,
- sse_andnti3,
- sse_orti4_df_1, sse_orti3_df_2, sse_orti3_sf_1, sse_orti3_sf_2,
- sse_orti3,
- sse_xorti4_df_1, sse_xorti3_df_2, sse_xorti3_sf_1, sse_xorti3_sf_2,
- sse_xorti3): Kill.
- (sse_andv4sf3, sse_andnv4sf3, sse_orv2df3, sse_xorv2df3, sse_andv2df3,
- sse_andnv2df3, sse_orv2df3, sse_xorv2df3): New expanders.
- (*sse_andv4sf3, *sse_andnv2df3, *sse_orv4sf3, *sse_xorv4sf3, *sse_andv2df3,
- *sse_andnv2df3, *sse_orv2df3, *sse_xorv2df3): New patterns.
- (*sse_andsf3, *sse_andndf3, *sse_ordf3, *sse_xordf3, *sse_anddf3,
- *sse_andndf3, *sse_orv2df3, *sse_xorv2df3): New patterns.
-
- * xmmintrin.h (__m128i): Define as __v2di.
-
- PR c++/6419
- (expand_expr): Use DECL_RTL_SET_P.
-
-2002-10-14 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (simplify_set): Treat MODE_CC registers like cc0.
-
-2002-10-14 Roger Sayle <roger@eyesopen.com>
- Zack Weinberg <zack@codesourcery.com>
-
- * config/i386/i386.c (k6_cost): Correct typo.
-
-2002-10-14 Mark Mitchell <mark@codesourcery.com>
-
- PR optimization/6631
- * alias.c (objects_must_conflict_p): Check honor_readonly when
- examining TYPE_READONLY.
- * function.c (assign_stack_temp_for_type): Likewise.
-
-2002-10-14 Falk Hueffner <falk.hueffner@student.uni-tuebingen.de>
-
- * config/alpha/alpha.md (extendsidi2_nofix, extendsidi2_fix):
- Swap zero extension arguments.
- (umaxhi3): Fix instruction class.
- PR target/7211
- (prefetch): Fix prefetch instructions.
- PR target/7238
- (pkwb): Fix output constraint.
-
-2002-10-14 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mips/mips.c (print_operand): Increase buffer size for
- real numbers.
-
-2002-10-14 Richard Henderson <rth@redhat.com>
-
- PR opt/8165
- * gcse.c (adjust_libcall_notes): Revert last change.
- * simplify-rtx.c (simplify_replace_rtx): Handle LO_SUM.
-
-2002-10-14 Andrew Haley <aph@redhat.com>
-
- * tree-inline.c (remap_block): All local class initialization
- flags go in the outermost scope.
- (expand_call_inline): Call java_inlining_map_static_initializers.
- (expand_call_inline): Call java_inlining_merge_static_initializers.
- * java/lang.c (merge_init_test_initialization): New.
- (java_inlining_merge_static_initializers): New.
- (inline_init_test_initialization): New.
- (java_inlining_map_static_initializers): New.
-
- * tree-inline.c (expand_call_inline): Convert retvar to expected
- type.
-
-2002-10-14 Graham Stott <graham.stott@btinternet.com>
-
- * stmt.c (decl_conflicts_with_clobbers_p): Add REG_P check.
-
-2002-10-14 Aldy Hernandez <aldyh@redhat.com>
-
- * stmt.c: Fix typo in comment.
-
-Mon Oct 14 11:35:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * c-common.c (c_common_type_for_mode): Add V2HImode case.
- * tree.c (build_common_tree_nodes_2): Initialize
- unsigned_V2HI_type_node and V2HI_type_node.
- * tree.h (enum tree_index): Add TI_UV2HI_TYPE and TI_V2HI_TYPE.
- (unsigned_V2HI_type_node, V2HI_type_node): Define.
-
-2002-10-14 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.h (ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP):
- Handle TARGET_64BIT.
-
-2002-10-14 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/vr.h (DRIVER_SELF_SPECS): Define.
- * config/mips/t-vr (MULTILIB_OPTIONS): Remove mlong32.
- (MULTILIB_DIRNAMES): Remove long32.
- (MULTILIB_EXCEPTIONS): Don't build -mabi=32 -mgp32 multilibs.
- (MULTILIB_REDUNDANT_DIRS): Remove.
-
-2002-10-14 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/tm.texi (DRIVER_SELF_SPECS): Document.
- * gcc.c (driver_self_specs): New variable.
- (do_self_spec): New function.
- (main): Use it to process driver_self_specs.
-
-2002-10-13 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.c (ix86_function_ok_for_sibcall): Reject
- indirect sibcalls when regparm >= 3.
-
- * config/i386/i386.c (sibcall_insn_operand): New.
- * config/i386/i386.h (PREDICATE_CODES): Update.
- * config/i386/i386-protos.h: Update.
- * config/i386/i386.md (sibcall_1, sibcall_value_1): Use it.
-
- * rtl.c (shallow_copy_rtx): Use memcpy for the entire node.
-
-2002-10-12 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_binary_operation) [ASHIFTRT]: Optimize
- arithmetic right shifts of ~0 during RTL simplifications.
-
-2002-10-12 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/7862
- PR preprocessor/8190
- * gcc.c (cpp_unique_options): Don't delete .d files.
- Remove stray whitespace.
-
-2002-10-12 Naohiko Shimizu <pshimizu@fa2.so-net.ne.jp>
-
- * pdp11.h (ASM_OUTPUT_SKIP): Add preceding 0 for octal constant.
- (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Likewise.
- * pdp11.c (pdp11_output_function_prologue): 0%o -> %#o.
- (pdp11_output_function_epilogue, output_ascii): Likewise.
- (output_addr_const_pdp11): Likewise.
- * pdp11.md (movdi): Use offsetable memory for floating store.
- (lshrsi3, negsi2): Delete irrelevant comment.
-
-2002-10-11 Andreas Bauer <baueran@in.tum.de>
-
- * config/i386/i386.c (ix86_function_ok_for_sibcall): Allow
- indirect calls to be sibcall optimized.
- * config/i386/i386.md (sibcall_1): New.
- (call_1): Add no-sibcalls condition.
- (sibcall_value_1): New.
- (call_value_1): Add no-sibcalls condition.
-
-2002-10-11 Eric Christopher <echristo@redhat.com>
-
- * output.h (default_valid_pointer_mode): Declare.
- * varasm.c (default_valid_pointer_mode): Define.
- * target-def.h (TARGET_VALID_POINTER_MODE): Use.
- * target.h: Ditto.
- * tree.c (build_pointer_type_for_mode): New function.
- (build_pointer_type): Use.
- (build_reference_type_for_mode): New function.
- (build_reference_type): Use.
- * tree.h: Declare new functions.
- * c-common.c (handle_mode_attribute): Use new functions, check
- for type.
- * stor-layout.c (layout_type): Depend on machine mode for
- REFERENCE_TYPE and POINTER_TYPE.
- * dwarf2out.c (simple_type_size_in_bits): Move upward in file.
- (modified_type_die): Use instead of PTR_SIZE for POINTER_TYPE
- and REFERENCE_TYPE.
- * config/mips/mips.c (mips_valid_pointer_mode): New function.
- (TARGET_VALID_POINTER_MODE): Use and define.
- * config/mips/mips-protos.h (mips_valid_pointer_mode): Declare.
-
-2002-10-11 Geoffrey Keating <geoffk@apple.com>
-
- * cse.c (mention_regs): Set SUBREG_TICKED to the register number,
- not the address of the REG.
- (struct cse_reg_info): Make subreg_ticked unsigned.
-
-2002-10-11 Janis Johnson <janis187@us.ibm.com>
-
- * doc/compat.texi: Add info about C++ libraries.
-
-2002-10-11 Richard Henderson <rth@redhat.com>
-
- PR opt/8165
- * gcse.c (adjust_libcall_notes): Also adjust notes for INSN.
-
-2002-10-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * cfganal.c (dfs_enumerate_from): Use PARAMS.
- * genautomata.c (output_insn_code_cases): Likewise.
- * real.c (real_format): Likewise.
- * tree.c (tree_size): Revise expressions using TREE_CODE_LENGTH to
- ensure value is promoted before doing subtraction.
-
-Fri Oct 11 22:22:38 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * calls.c (expand_call): Simplify noreturn call.
-
- PR c/7344
- * cfgbuild.c (make_edges): Create edge cache when we do have
- large jumptable.
- * expr.c (do_tablejump): Note size of maximal jumptable.
- * function.c (prepare_function_start): Zero out size.
- * function.h (function): Add max_jumptable_ents.
-
- * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
-
-Fri Oct 11 12:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (movv8qi_i+2): For V8QI destinations, generate V4HI
- register for mperm_w operation.
-
-Fri Oct 11 10:56:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * emit-rtl.c (gen_lowpart_common): When asked to make a vector from
- an integer, use simplify_gen_subreg.
-
-2002-10-10 Diego Novillo <dnovillo@redhat.com>
-
- * calls.c (flags_from_decl_or_type): Make extern.
- (ECF_*): Move ...
- * rtl.h (ECF_*): ... here.
- (flags_from_decl_or_type): Declare.
-
-2002-10-10 Roger Sayle <roger@eyesopen.com>
- Nathan Sidwell <nathan@codesourcery.com>
-
- * fold-const.c (fold) [RSHIFT_EXPR]: Optimize arithmetic right
- shifts of the form -1 >> x.
-
-Thu Oct 10 16:52:55 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * cfgcleanup.c (insn_match_p): Verify sibcall flag for calls to.
-
-2002-10-10 Aldy Hernandez <aldyh@redhat.com>
-
- * extend.texi (Vector Extensions): Remove comment about single
- element vectors.
-
-2002-10-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fold-const.c (size_htab_hash): Use htab_hash_pointer.
- * function.c (insns_for_mem_hash): Likewise.
- * varasm.c (STRHASH): Likewise.
-
-2002-10-10 Stuart Hastings <stuart@apple.com>
-
- * cse.c (struct cse_reg_info): Add subreg_ticked.
- (SUBREG_TICKED): New.
- (get_cse_reg_info): Initialize SUBREG_TICKED.
- (mention_regs): Use it.
- (invalidate): Set SUBREG_TICKED.
- (invalidate_for_call): Likewise.
- (addr_affects_sp_p): Likewise.
-
-2002-10-10 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (tls_local_dynamic_base): Put pic reg
- into proper operand.
-
-2002-10-10 Denis Chertykov <denisc@overta.ru>
-
- * config/ip2k/ip2k.c (function_epilogue): Optimize stack
- deallocation.
- * config/ip2k/libgcc.S: Combine routines used by function
- epilogue.
-
-2002-10-10 Jim Wilson <wilson@redhat.com>
-
- * cse.c (fold_rtx): Don't perform associative optimization for DIV and
- UDIV.
-
-2002-10-10 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/aix52.h: New file.
- * config/rs6000/t-aix52: New File.
- * config.gcc (rs6000-ibm-aix5.1.*): New entry.
- (rs6000-ibm-aix[56789].*): Default to AIX 5.2.
-
-Thu Oct 10 19:37:54 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- PR target/5610
- * invoke.texi (-msse-math): Kill
- (-msse): Add note to mfpmath=sse.
-
-Thu Oct 10 17:08:30 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- PR target/7723
- * i386.c (ix86_expand_vector_move): Do not generate const0->mem moves.
-
-2002-10-10 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/8179
- * gcc.c (cpp_options): Add {ansi}, move %{m*} to same location
- as cc1_options.
- (default_compilers): Pass debug options when preprocessing
- stdin.
-
-2002-10-06 Richard Henderson <rth@redhat.com>
-
- * toplev.c (rest_of_compilation): Revert opt/2960 change.
-
-Wed Oct 9 21:18:43 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (*_cost): Add branch costs.
- (override_options): set ix86_branch_cost.
- (ix86_expand_int_movcc): Use BRANCH_COST.
- * i386.h (costs): Add branch_cost.
-
-2002-10-09 Zack Weinberg <zack@codesourcery.com>
-
- PR c/7353
- * c-decl.c (start_decl): Unconditionally issue error for
- 'typedef foo = bar'.
- (finish_decl): Remove special case for TYPE_DECL with initializer.
-
- * doc/extend.texi: Delete "Naming Types" section. Change all
- cross-references to that section to refer to "Typeof" instead.
- Add the useful safe-max()-macro example from "Naming Types" to
- "Typeof", rewritten using that extension. Add some compatibility
- notes to "Typeof."
-
-2002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * loop.c: Revert 2002-08-15 change.
- (LOOP_REGNO_NREGS): Ensure type is int.
-
-2002-10-09 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (extenddftf2): Change to define_insn
- which copies first FPR and clears second.
- (extendsftf2): Same.
- (floatditf2): Fix typo.
- (floatsitf2): Same.
- (fix_trunctfdi2): Same.
- (fix_trunctfsi2): Same.
-
-2002-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * conflict.c (arc_hash): Change return type to hashval_t.
- * cselib.c (get_value_hash): Likewise.
- * genautomata.c (automaton_decl_hash, insn_decl_hash, decl_hash,
- state_hash, automata_list_hash): Likewise.
- * read-rtl.c (def_hash): Likewise.
- * tree.c (type_hash_hash): Likewise.
-
-2002-10-08 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (rs6000_ra_ever_killed): Call
- prologue_epilogue_contains instead of using REG_MAYBE_DEAD notes.
-
-Wed Oct 9 15:54:49 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (ffssi2): Fix emitted code.
-
-2002-10-09 Ulrich Weigand <uweigand@de.ibm.com>
-
- * cse.c (insn_live_p): Pass insn pattern, not full insn
- to may_trap_p.
-
-2002-10-09 Neil Booth <neil@daikokuya.co.uk>
-
- * cppmacro.c (paste_tokens): Only allow / to paste with =.
-
-2002-10-09 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (movdf splitter): Use gen_int_mode on
- 64-bit hosts.
- (movtf_internal): Reference correct displacement for second value
- in memory.
- (movtf splitter): Correct generation of constants in 64-bit mode.
-
-2002-10-09 Alan Modra <amodra@bigpond.net.au>
-
- * libgcc2.c (__floatdisf): Properly cure double rounding.
-
-2002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-common.c (cb_register_builtins): Define __WCHAR_MAX__.
- * doc/cpp.texi (Common Predefined Macros): Document.
-
-2002-10-09 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- PR doc/7484
- * doc/invoke.texi (Option Summary): List
- -Wmissing-declarations as a C only option.
-
-2002-10-08 Roger Sayle <roger@eyesopen.com>
-
- * fold-const.c (fold) [LROTATE_EXPR, RROTATE_EXPR]: Optimize
- left and right rotates of ~0, i.e. integer_all_onesp (arg0).
- [LSHIFT_EXPR, RSHIFT_EXPR]: Optimize shifts and rotates of zero.
-
-Tue Oct 8 01:24:19 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
- x86_sse_typeless_stores, x86_sse_load0_by_pxor): New global
- variables.
- (safe_vector_operand): Update sse_clrv4sf call.
- (ix86_expand_buildin): Likewise
- * i386.h (x86_sse_partial_reg_dependency, x86_sse_partial_regs,
- x86_sse_typeless_stores, x86_sse_load0_by_pxor): Declare.
- (TARGET_SSE_PARTIAL_REG_DEPENDENCY, TARGET_SSE_PARTIAL_REGS,
- TARGET_SSE_TYPELESS_STORES, TARGET_SSE_TYPELESS_LOAD0): New
- macros.
- * i386.md (movsf*, movdf*, movti, movv4sf, movv2df, movv16qi, movv8hi,
- movv4si): Obey the new flags.
- (floatsi2sf, floatdi2sf, truncatedf2sf): Emit extra load of 0 to avoid
- reformating penalty.
- (anddf, cmov patterns): Avoid reformating by first converting.
- (sse_cvtsd2ss): Fix predicate.
- (sse2_clrti): Fix mode,
- (sse_clrv4sf): Avoid unspec.
-
-2002-10-08 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/t-linux64 (MULTILIB_OPTIONS): Remove
- mno-app-regs|mcmodel=medany.
- (MULTILIB_DIRNAMES, MULTILIB_OSDIRNAMES): Remove alt.
- (MULTILIB_EXCEPTIONS, MULTILIB_EXCLUSIONS, MULTILIB_MATCHES): Remove.
- (CRTSTUFF_T_CFLAGS): Define.
-
-2002-10-08 Roger Sayle <roger@eyesopen.com>
-
- PR target/8087
- * simplify-rtx.c (avoid_constant_pool_reference): Allow constant
- pool references that are constructed using LO_SUM.
-
-2002-10-08 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-opts.c (c_common_decode_option): Add warn_strict_aliasing to
- -Wall.
- * c-typeck.c (build_c_cast): Use warn_strict_aliasing, tweak
- message.
- * flags.h (warn_strict_aliasing): Declare.
- * toplev.c (warn_strict_aliasing): Define.
- (lang_independent_options): Add it.
- * doc/invoke.texi (-Wstrict-aliasing): Document it.
-
-2002-10-08 Zack Weinberg <zack@codesourcery.com>
-
- * system.h (GCCBUGURL): Delete.
- * version.c (bug_report_url): New. Add commentary about
- modifying both these strings in modified distributions.
- * version.h: Declare bug_report_url.
-
- * diagnostic.c, gcc.c, gcov.c: Globally replace GCCBUGURL with
- bug_report_url.
-
-2002-10-08 Nick Clifton <nickc@redhat.com>
-
- * config/rs6000/spe.h (__ev_set_acc_u64): Use __ev_create_u64 to
- convert uint64_t into __ev64_opaque__.
- (__ev_set_acc_s64): Likewise, but using signed types.
-
-2002-10-08 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*doloop_si_long"): Add missing operand.
- ("*doloop_di_long"): Likewise.
-
-Tue Oct 8 16:50:10 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * print-rtl.c (print_rtx): Increase buffer size for real numbers.
-
-2002-10-08 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (define_attr cpu): Add r4111.
-
-2002-10-08 Anthony Green <green@redhat.com>
-
- * bitmap.c (bitmap_equal_p): Clear all bitmap_head fields.
-
-2002-10-08 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
-
- * config/c4x/c4x.c (c4x_print_operand): Enlarge buffer
- for REAL_VALUE_TO_DECIMAL output.
-
-2002-10-07 Richard Henderson <rth@redhat.com>
-
- * cse.c (fixed_base_plus_p): Turn FIXED_BASE_PLUS_P into a
- function; cleanup PLUS case by using recursion. Update all users.
- (NONZERO_BASE_PLUS_P): Remove.
- (find_comparison_args): Use rtx_addr_can_trap_p instead.
- (fold_rtx): Use nonzero_address_p.
- * rtl.h (nonzero_address_p): Declare.
- * rtlanal.c (rtx_varies_p): Handle ADDRESSOF.
- (rtx_addr_can_trap_p): Likewise.
- (nonzero_address_p): New.
- * simplify-rtx.c (NONZERO_BASE_PLUS_P): Remove.
- (simplify_relational_operation): Use nonzero_address_p.
-
-2002-10-07 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Set
- real_format_for_mode for IBM extended format, if enabled.
- (easy_fp_constant): Add TFmode.
- (rs6000_legitimize_address): Add TFmode.
- (rs6000_legitimate_address): Same.
- (function_arg_advance): TFmode uses two FPRs.
- (rs6000_emit_prologue): Fix warning.
- (rs6000_output_function_epilogue): Add TFmode.
- (output_toc): Add TFmode.
- * rs6000.h (SLOW_UNALIGNED_ACCESS): Add TFmode.
- (LEGITIMATE_OFFSET_ADDRESS_P): Add TFmode.
- * rs6000.md (movtf splitter): Load TFmode constant.
-
-2002-10-07 Dale Johannesen <dalej@apple.com>
-
- * rtl.h: Add NOTE_PRECONDITIONED.
- * unroll.c: Set it.
- * loop.c: Set loop_info->preconditioned from it.
- * doloop.c: Permit doloop treatment when loop_info->preconditoned.
-
-2002-10-07 Richard Henderson <rth@redhat.com>
-
- * config/i960/i960.c (i960_setup_incoming_varargs): Create a
- new rtx for comparing the argument pointer against zero.
- (i960_va_start): Similarly.
-
-2002-10-07 Richard Henderson <rth@redhat.com>
-
- * config/i960/i960.md (*): Use TFmode, not XFmode.
- * config/i960/i960.c (*): Likewise.
- (i960_arg_size_and_align): Remove XFmode alignment hack.
- (i960_round_align): Merge code from ROUND_TYPE_ALIGN.
- * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Use 128, not 96.
- (MAX_LONG_DOUBLE_TYPE_SIZE): Likewise.
- (DATA_ALIGNMENT, ROUND_TYPE_SIZE): Remove.
-
-2002-10-07 Richard Henderson <rth@redhat.com>
-
- * config/fp-bit.c (EXTENDED_FLOAT_STUBS): Flush out all XF/TFmode
- entry points; use void return value and argument list.
-
-2002-10-06 Andreas Bauer <baueran@in.tum.de>
-
- * calls.c (expand_call): Fix function-is-volatile check.
-
-2002-10-05 Naohiko Shimizu <nshimizu@keyaki.cc.u-tokai.ac.jp>
-
- * t-pdp11: Add MULTILIB support for msoft-float.
- * pdp11.h (LEGITIMATE_CONSTANT_P): Fix soft-float case.
-
- * t-pdp11: Add LIB2FUNCS_EXTRA.
- * pdp11.c (pdp11_output_function_prologue): Restrict offset to 16bit,
- add preceding 0 to the octal constant, rename 'fp' to 'r5', rename
- 'fldd' to 'ldd', rename 'fstd' to 'std'.
- (pdp11_output_function_epilogue): Likewise.
- (output_move_quad): Make the comment gas compatible.
- (output_ascii): Add preceding 0 to the octal constant.
- (print_operand_address): Add pre_modify, post_modify.
- (output_addr_const_pdp11): Add preceding 0 to the octal constant.
- * pdp11.h (GO_IF_LEGITIMATE_ADDRESS) : Add 'movb' pre_modify case
- with the indication of Paul Koning.
- (PRINT_OPERAND): Fix floating constant.
- * pdp11.md (movdi): Restrict matching pattern.
- (movqi): Generalize the matching pattern.
- (movdf): Restrict matching pattern.
- (zero_extendqihi2): Change constant representation.
- (floatsidf2): Fix wrong operands.
- (addqi3): Fix wrong instruction name.
- (subqi3): Fix wrong instruction name.
- (andsi3, andhi3, andqi3): Simplify and fix to use 'bic'.
- (xorsi3): Fix wrong insn.
- (one_cmplqi2): Add two operand pattern.
- (lsrsi3): New.
- (negsi2): New.
- (call): Add register indirect case.
- (mod): Fix wrong subreg.
-
-2002-10-06 Eric Botcazou <ebotcazou@libertysurf.fr>
- Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- PR c/7411
- * expr.c (expand_expr) [PLUS]: Simplify after the operands
- have been expanded in EXPAND_NORMAL mode.
-
-2002-10-06 Richard Henderson <rth@redhat.com>
-
- * config/rs6000/rs6000.md (load_toc_v4_PIC_2): Fix base constraint.
-
-2002-10-06 Richard Henderson <rth@redhat.com>
-
- PR optimization/2960
- * toplev.c (rest_of_compilation): Don't copy_loop_headers if
- optimize_size.
-
-2002-10-06 Alexandre Oliva <aoliva@redhat.com>
-
- * config/mips/mips.h (SIZE_TYPE, PTRDIFF_TYPE): Override
- previously definitions.
-
-2002-10-06 Frank Ch. Eigler <fche@redhat.com>
-
- * cppinit.c (init_standard_includes, parse_option): Use strncmp.
- * c-opts.c (find_opt): Similarly.
-
-Sat Oct 5 22:48:06 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * athlon.md: rewrite to DFA.
- * i386 (ix86_adjust_cost): Drop memory latency code.
- (ia32_use_dfa_pipeline_interface): Return true for Athlon.
-
-2002-10-05 Jakub Jelinek <jakub@redhat.com>
-
- * gcc.c (set_multilib_dir): Don't access *end.
- Use memcpy instead of strncpy. Don't write beyond malloced buffer.
- (print_multilib_info): Don't show paths starting with ".:".
- * genmultilib: Add new option, "yes" if multilibs are enabled.
- Update comments. If multilibs not enabled, print .:${osdirout}
- for each directory. If multilibs are enabled, always print
- ${dirout}:${osdirout}, even if the two are the same.
- * Makefile.in (s-mlib): Pass @enable_multilib@ to genmultilib.
- Pass all MULTILIB_* variables to genmultilib even if
- --disable-multilib but MULTILIB_OSDIRNAMES is not empty.
-
-2002-10-04 Zack Weinberg <zack@codesourcery.com>
-
- * gcc.c (process_command): Set .validated for -pipe. Correct
- grammar in comment.
-
-2002-10-04 Bruce Korb <bkorb@gnu.org>
-
- * fixinc/inclhack.def(hpux11_abs): use format fix
- * fixinc/fixincl.x: regenerate
- * fixinc/tests/base/stdlib.h: accommodate new fix test
-
-Sat Oct 5 19:42:45 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * c-common.c (cb_register_builtins): Use really_no_inline.
-
-2002-10-04 David Edelsohn <edelsohn@gnu.org>
-
- * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
- copied instruction if the note is not loop invariant.
-
-2002-10-04 Loren J. Rittle <ljrittle@acm.org>
-
- * gcc/ginclude/stddef.h: Support the FreeBSD 5 typedef system.
-
-2002-10-04 Steve Ellcey <sje@cup.hp.com>
-
- * doc/invoke.texi (HPPA): Add -mlinker-opt, -mgnu-ld,
- and -mhp-ld options to list of options. Add -mgnu-ld
- and -mhp-ld option descriptions.
-
-2002-10-04 Steve Ellcey <sje@cup.hp.com>
-
- * fixinc/inclhack.def (hpux11_abs): New.
- (stdio_va_list): change __va_list__ to __gnuc_va_list.
- * fixinc/fixincl.x: Rebuild.
-
-2002-10-04 Roger Sayle <roger@eyesopen.com>
-
- * config/i386/i386.h (processor_costs): Add new fields fadd,
- fmul, fdiv, fabs, fchs and fsqrt to costs structure.
- (RTX_COSTS): Use these fields to determine the RTX costs
- of floating point addition/subtraction, multiplication,
- division, fabs, negation and square root respectively.
- * config/i386/i386.c (size_cost): Provide instruction sizes
- for these new fields.
- (i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
- k6_cost, athlon_cost, pentium4_cost): Provide typical cycle
- counts for these new fields for all x86 processor variants.
-
-2002-10-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.c (mips_const_double_ok): Delete unused variable.
-
- * gengtype.c (rtx_next): Change type to int.
-
-2002-10-04 Andreas Jaeger <aj@suse.de>
-
- * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Fix value.
-
-2002-10-04 Richard Henderson <rth@redhat.com>
-
- * real.h (SIGNIFICAND_BITS): Add one more word.
- (CONST_DOUBLE_FORMAT): Accomodate 6 words.
- * real.c (times_pten): New.
- (real_to_decimal, real_from_string): Use it.
- (sticky_rshift_significand): Use & to find modulus.
- (rshift_significand, lshift_significand): Likewise.
- (do_divide): Apply sticky bit after normalization.
- (real_to_decimal, real_to_hexadecimal): Fix sign of Inf and NaN.
-
-2002-10-03 Andreas Bauer <baueran@in.tum.de>
-
- * doc/tm.texi (FUNCTION_OK_FOR_SIBCALL): Remove.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
-
-2002-10-03 Andreas Jaeger <aj@suse.de>
-
- * gengtype.c (adjust_field_rtx_def): Cast variables of type size_t
- to unsigned long, adjust printf format string.
- (output_mangled_typename): Likewise.
-
-2002-10-03 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/vax/vax.c (vax_output_function_prologue): Use asm_fprintf.
- * config/vax/vax.h (VAX_FUNCTION_PROFILER_NAME): New.
- (FUNCTION_PROFILER): Rewrite to use ASM_GENERATE_INTERNAL_LABEL,
- assemble_name, asm_fprintf, and VAX_FUNCTION_PROFILER_NAME.
- (ASM_OUTPUT_MI_THUNK): Use asm_fprintf instead of REGISTER_PREFIX.
- (PRINT_OPERAND_PUNCT_VALID_P): Fix comment.
- * config/vax/elf.h (FUNCTION_PROFILER): Remove.
- (VAX_FUNCTION_PROFILER_NAME): Redefine as "__mcount".
-
-2002-10-03 Mark Mitchell <mark@codesourcery.com>
-
- * doc/invoke.texi (-Wabi): Document mangling bug.
-
-2002-10-04 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use a
- name for the tbtab label that depends on the function asm name.
- Don't output tbtab label unless optional_tbtab.
- (output_mi_thunk): Formatting.
-
-2002-10-03 Richard Henderson <rth@redhat.com>
-
- * config/m68k/m68k.h (OVERRIDE_OPTIONS): Move additional code ...
- * config/m68k/m68k.c (override_options): ... here.
- * config/m68k/m68kelf.h (OVERRIDE_OPTIONS): Remove.
- * config/m68k/m68kv4.h (OVERRIDE_OPTIONS): Remove.
- * config/m68k/linux.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
- * config/m68k/netbsd-elf.h (SUBTARGET_OVERRIDE_OPTIONS): Remove.
-
-2002-10-03 Richard Henderson <rth@redhat.com>
-
- * real.h (struct real_value): Use ENUM_BITFIELD.
-
-2002-10-03 Richard Henderson <rth@redhat.com>
-
- * config/i960/i960.md (call, call_value): Use emit_call_insn.
-
-2002-10-03 Steve Ellcey <sje@cup.hp.com>
-
- * config/pa/pa64-hpux.h (INIT_ENVIRONMENT): New.
-
-2002-10-03 Steve Ellcey <sje@cup.hp.com>
-
- * config.gcc (hppa*64*-*-hpux11*): Check gnu_ld.
- * config/pa/pa.h (MASK_GNU_LD): New.
- (TARGET_GNU_LD): New.
- * config/pa/pa64-hpux.h (LINK_SPEC): Set based
- on gnu-ld and MASK_GNU_LD.
- (SUBTARGET_SWITCHES): New gnu-ld & hp-ld flags.
-
-Thu Oct 3 23:35:51 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (athlon_cost): Fix the move costs.
-
-Thu Oct 3 23:20:58 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * final.c (final): Use symbol name as function name for profiling.
- * profile.c (get_exec_counts): Likewise.
- (branch_prob): Likewise.
-
-2002-10-03 Jakub Jelinek <jakub@redhat.com>
-
- * longlong.h (__udiv_qrnnd): Remove PARAMS from prototype.
-
-2002-10-03 Jakub Jelinek <jakub@redhat.com>
-
- * gcc.c (print_multi_os_directory): New variable.
- (option_map): Support --print-multi-os-directory.
- (struct prefix_list): Add os_multilib field.
- (multilib_os_dir): New variable.
- (static_specs): Add multilib_options.
- (find_a_file): Add multilib argument. Search in GCC or OS multilib
- subdirs if nonzero.
- (read_specs, execute): Update callers.
- (find_file): Likewise. Don't prefix name with multilib_dir, instead
- pass 1 as multilib option.
- (display_help): Include --print-multi-os-directory.
- (add_prefix): Add os_multilib argument. Initialize pl->os_multilib.
- (process_command): Update callers. Handle --print-multi-os-directory.
- (do_spec_1) ['D']: Use multilib_os_directory if pl->os_multilib is
- set.
- (main): Update find_a_file and add_prefix callers.
- Handle print_multi_os_directory.
- (struct mdswitchstr): New.
- (mdswitches, n_mdswitches): New variables.
- (used_arg): Add MULTILIB_DEFAULT switches too if they are not
- present on the command line nor their mutually incompatible
- switches.
- (default_arg): Optimize.
- (set_multilib_dir): Compute multilib_os_dir. Initialize mdswitches
- array.
- (print_multilib_info): Only print GCC multilib dir name, not OS
- multilib dirname.
- * genmultilib: Add osdirnames parameter. Output multilib_options
- variable. If osdirnames is specified, output dirnames as
- dirname:osdirname.
- * mklibgcc.in: Use MULTILIB_OSDIRNAMES, --print-multi-directory
- and --print-multi-os-directory instead of SHLIB_SLIBDIR_SUFFIXES
- to compute libgcc_s soname and install path.
- * Makefile.in (libgcc.mk): Pass MULTILIB_OSDIRNAMES instead of
- SHLIB_SLIBDIR_SUFFIXES to mklibgcc.
- (s_mlib): Pass MULTILIB_OSDIRNAMES or nothing as last genmultilib
- argument.
-
- * config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Set.
- (SHLIB_SLIBDIR_SUFFIXES): Remove.
- * config/sparc/linux64.h (STARTFILE_SPEC32, STARTFILE_SPEC64,
- ENDFILE_SPEC32, ENDFILE_SPEC64, ENDFILE_COMMON): Remove.
- (STARTFILE_SPEC, ENDFILE_SPEC): Don't distinguish between -m32
- and -m64.
- * config/sparc/t-sol2-64 (MULTILIB_OSDIRNAMES): Set.
- (SHLIB_SLIBDIR_SUFFIXES): Remove.
- * config/sparc/sol2-bi.h (STARTFILE_ARCH64_SPEC): Remove.
- (STARTFILE_ARCH_SPEC): Remove.
- * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Set.
- (SHLIB_SLIBDIR_SUFFIXES): Remove.
- * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
- * config/mips/t-iris6 (MULTILIB_OSDIRNAMES): Set.
- (SHLIB_SLIBDIR_SUFFIXES): Remove.
-
-Thu Oct 3 21:42:20 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * predict.c (choose_function_section): Avoid choice for linkonce functions.
-
-Thu Oct 3 15:15:00 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (lea to mul peep2): Fix condition.
-
-2002-10-02 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa-linux.h (FUNCTION_OK_FOR_SIBCALL): Delete macro.
- * pa32-linux.h (FUNCTION_OK_FOR_SIBCALL): Define.
-
-2002-10-02 David Mosberger-Tang <David.Mosberger@acm.org>
-
- * unwind.h (_Unwind_GetTextRelBase): Mark _C argument with
- attribute "unused".
-
- * config/t-libunwind: Mention unwind-sjlj.c.
- * unwind-libunwind.c: Change #ifdef __USING_LIBUNWIND_EXCEPTIONS__
- to #ifndef __USING_SJLJ_EXCEPTIONS__.
-
- * configure.in: Move sjlj-exceptions and --enable-libunwind-exceptions
- before inclusion of config.gcc, but after configuring the compiler etc.
- Determine default value for --enable-libunwind-exceptions based on
- whether the host has a libunwind library (not guaranteed to be correct,
- but it's a reasonable first guess and can always be overridden with an
- explicit --enable/disable-libunwind-exceptions.
- * config.gcc: For target ia64*-*-linux*, mention t-libunwind as a
- tmake_file when $use_libunwind_exceptions is enabled.
- * Makefile.in: Update comment: LIB2ADDEH is updated not just by
- ia64 (e.g., config/t-linux also updates it).
- * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS]: Mention -lunwind
- along with the shared version of libgcc since the latter requires
- the former.
- * unwind-libunwind.c: New file.
- * config/t-libunwind: Ditto.
-
-2002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config.gcc: Remove support for vax-*-vms*.
- * config/vax/vms.h: Remove.
- * config/vax/xm-vms.h: Remove.
- * config/vax/vax-protos.h: Remove VMS-specific code.
- * config/vax/vax.c: Remove VMS-specific code.
-
-2002-10-02 Richard Henderson <rth@redhat.com>
-
- PR opt/7124
- * config/i386/i386.c (ix86_register_move_cost): Increase cost
- for secondary_memory_needed pairs.
-
-2002-10-02 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * doc/vms.texi: Blow away false include file section.
-
-2002-10-02 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/6627
- * toplev.c (force_align_functions_log): New global variable.
- * flags.h (force_align_functions_log): Add extern prototype.
- * varasm.c (assemble_start_function): Use it to force minimum
- function alignment.
- * config/i386/i386.h (FUNCTION_BOUNDARY): Set the correct
- minimum function alignment to one byte.
- (TARGET_PTRMEMFUNC_VBIT_LOCATION): Store the virtual bit in
- the least significant bit of vtable member function pointers.
- * tree.h (enum ptrmemfunc_vbit_where_t): Move definition to
- here from cp/cp-tree.h.
-
-Wed Oct 2 17:01:36 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (print_operand_address): Use RIP addressing for offsetted
- label refs too.
-
-2002-09-30 David S. Miller <davem@redhat.com>
-
- PR middle-end/7151
- * config/sparc/sparc.md (movdi_insn_sp32_v9): Accept 'e' regs.
- (movdi reg/reg split): Match only on sparc32, and v9 when int regs.
-
-2002-10-01 Andreas Bauer <baueran@in.tum.de>
-
- * calls.c (expand_call): Remove the `no indirect check'
- for sibcall optimization; use function_ok_for_sibcall
- target hook; refine check for `function is volatile'.
- (FUNCTION_OK_FOR_SIBCALL): Remove the redefinition.
- * hooks.c (hook_tree_tree_bool_false): New.
- * hooks.h (hook_tree_tree_bool_false): Declare.
- * target-def.h (TARGET_FUNCTION_OK_FOR_SIBCALL): New.
- (TARGET_INITIALIZER): Add it.
- * target.h (struct gcc_target): Add function_ok_for_sibcall.
- * config/alpha/alpha.c: (alpha_function_ok_for_sibcall): New.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
- * config/alpha/alpha.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/arm/arm-protos.h: (arm_function_ok_for_sibcall):
- Remove function declaration.
- * config/arm/arm.c: (arm_function_ok_for_sibcall): Make
- function static and accept another argument of type `tree'.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
- * config/arm/arm.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/frv/frv.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/i386/i386.c: (ix86_function_ok_for_sibcall): New.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
- * config/i386/i386.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/pa/pa-linux.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- (TARGET_HAS_STUBS_AND_ELF_SECTIONS): New definition.
- * config/pa/pa.c: (pa_function_ok_for_sibcall): New.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
- * config/pa/pa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/rs6000/rs6000-protos.h: (function_ok_for_sibcall):
- Remove function declaration.
- * config/rs6000/rs6000.c: (rs6000_function_ok_for_sibcall):
- Rename function_ok_for_sibcall to rs6000_function_ok_for_sibcall;
- rename first argument to `decl'; accept another argument
- of type `tree'; make static.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
- * config/rs6000/rs6000.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/sh/sh.c: (sh_function_ok_for_sibcall): New.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
- * config/sh/sh.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/sparc/sparc.c: (sparc_function_ok_for_sibcall): New.
- (TARGET_FUNCTION_OK_FOR_SIBCALL): Redefine accordingly.
- * config/sparc/sparc.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
- * config/xtensa/xtensa.h: (FUNCTION_OK_FOR_SIBCALL): Remove.
-
-2002-10-01 Roger Sayle <roger@eyesopen.com>
-
- * unroll.c (loop_iterations): Revert 2002-09-08 change.
-
-2002-10-01 Richard Henderson <rth@redhat.com>
-
- * real.c (real_to_decimal): Crop trailing zeros for DIGITS < 0.
- (real_to_hexadecimal): Likewise.
- * print-rtl.c (print_rtx): If we are linked with real.c, don't
- dump the XWINT fields of a floating point CONST_DOUBLE.
-
-2002-10-01 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/vax/elf.h (FUNCTION_PROFILER): Fix __mcount call.
-
-2002-10-01 Richard Henderson <rth@redhat.com>
-
- * calls.c (precompute_register_parameters): Force non-legitimate
- constants into pseudos.
-
-2002-10-01 Nick Clifton <nickc@redhat.com>
-
- * config/rs6000/spe.md (spe_evrlwi): Add missing third operand
- to assembler template.
-
-2002-10-01 Richard Henderson <rth@redhat.com>
-
- * dwarf2out.c (loc_descriptor_from_tree): Relax requirement
- for TLS debug info to !DECL_EXTERNAL.
-
-2002-10-01 Matt Thomas <matt@3am-software.com>
- Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (vax-*-netbsdelf*): Enable configuration.
- * config/elfos.h (PCC_BITFIELD_TYPE_MATTERS): Define only
- if not already defined.
- * config/vax/elf.h: New file.
- * config/vax/netbsd-elf.h: New file.
- * config/vax/vax.c: Include "debug.h".
- (vax_output_function_prologue): Add dwarf2 support. Use
- MAIN_NAME_P when checking for VMS_TARGET stack adjust.
- * config/vax/vax.h (CONST_OK_FOR_LETTER_P): Add cases for
- 'J' [0..63], 'K' [-128..127], 'L' [-32768..32767],
- 'M' [0..255], 'N' [0..65535], and, 'O' [-63..-1].
- (VAX_ISTREAM_SYNC): Remove.
- (INITIALIZE_TRAMPOLINE): Use gen_sync_istream.
- (JUMP_TABLES_IN_TEXT_SECTION): Define.
- (ASM_OUTPUT_REG_POP): Use reg_names for the stack pointer.
- (ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL
- and assemble_name.
- (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
- (PRINT_OPERAND_PUNCT_VALID_P): Accept '|'.
- (PRINT_OPERAND): Output REGISTER_PREFIX for '|'.
- (INCOMING_RETURN_ADDR_RTX): Define.
- * config/vax/vax.md (VUNSPEC_BLOCKAGE)
- (VUNSPEC_SYNC_ISTREAM): Define.
- (blockage): Use VUNSPEC_BLOCKAGE.
- (sync_istream): New insn.
-
-2002-10-01 Richard Henderson <rth@redhat.com>
-
- * config/vax/vax.md (call_pop, *call_pop, call_value_pop)
- (*call_value_pop, call, call_value): Add dwarf2 EH support.
- (*call): New insn.
-
-2002-10-01 Nathan Sidwell <nathan@codesourcery.com>
-
- PR c/8083
- * c-typeck.c (build_c_cast): Warn about type punning which breaks
- type based aliasing.
-
-2002-10-01 Mark Mitchell <mark@codesourcery.com>
-
- * stor-layout.c (update_alignment_for_field): New function.
- (place_union_field): Use it.
- (place_field): Likewise.
-
-2002-10-01 Nathan Sidwell <nathan@codesourcery.com>
-
- PR other/8077
- * gcc.c (cc1_options): Add space on -auxbase-strip.
-
-2002-10-01 Jim Wilson <wilson@redhat.com>
-
- * config/v850/v850.h (EPILOGUE_USES): Define.
-
-2002-09-30 Andrew Haley <aph@redhat.com>
-
- * flow.c (insn_dead_p): When using non-call-exceptions, don't
- eliminate insns that may trap.
- * cse.c (insn_live_p): Likewise.
-
-2002-10-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (PROCESSOR_R4121): Rename to PROCESSOR_R4120.
- (TARGET_MIPS4121): Rename to TARGET_MIPS4120.
- * config/mips/mips.c (mips_cpu_info): Rename vr4121 to vr4120.
- * config/mips/mips.md: Apply same renaming here.
-
-2002-10-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (PROCESSOR_R4320, TARGET_MIPS4320): Remove.
- (GENERATE_MULT3_SI): Remove use of TARGET_MIPS4320.
- * config/mips/mips.c (mips_cpu_info): Remove vr4320 entry.
- * config/mips/mips.md (define_attr cpu): Remove r4320.
- Remove vr4320 scheduler and uses of TARGET_MIPS4320.
-
-2002-10-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.c (mips16_strings): New variable.
- (mips_output_function_epilogue): Clear the SYMBOL_REF_FLAG of every
- symbol in mips16_strings. Free the list.
- (mips_encode_section_info): Keep track of local strings.
-
-2002-10-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (bunge, bltgt, bungt): New define_expands.
- (sordered_df, sordered_sf): Remove.
- * config/mips/mips.c (get_float_compare_codes): New fn.
- (gen_int_relational, gen_conditional_move): Use it.
-
-2002-10-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_emit_fcc_reload): Declare.
- * config/mips/mips.h (PREDICATE_CODES): Add fcc_register_operand.
- * config/mips/mips.c (fcc_register_operand): New function.
- (mips_emit_fcc_reload): New function, extracted from reload_incc.
- (override_options): Allow TFmode values in float registers
- if ISA_HAS_8CC.
- * cnfig/mips/mips.md (reload_incc): Change destination prediate
- to fcc_register_operand. Remove misleading source constraint.
- Use mips_emit_fcc_reload.
- (reload_outcc): Duplicate reload_incc.
-
-2002-09-30 Zack Weinberg <zack@codesourcery.com>
-
- * gcc.c (validate_switches): Handle all new forms of spec
- syntax introduced recently. Now returns a char *.
- (validate_all_switches): Repetitive logic broken out to...
- (validate_switches_from_spec): ...here.
- * mklibgcc.in: Don't @-flag commands to generate .oS files.
-
-2002-09-30 Ulrich Weigand <uweigand@de.ibm.com>
-
- * longlong.h: Partially synchronize with GMP-4.1 version:
- Use i370 definitions also for s390.
- Add generic definition of umul_ppmm in terms of smul_ppmm.
- [s390] (umul_ppmm): Remove.
- [s390] (smul_ppmm): Fix incorrect assembler constraints.
- [s390] (smul_ppmm, sdiv_qrnnd): Rename __xx to __x.
-
-2002-09-30 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/xtensa.h (REG_CLASS_NAMES, REG_CLASS_CONTENTS):
- Add new RL_REGS register class.
- (PREFERRED_RELOAD_CLASS, PREFERRED_OUTPUT_RELOAD_CLASS):
- Call xtensa_preferred_reload_class for both input and output reloads.
- * config/xtensa/xtensa.c (xtensa_regno_to_class): Use new RL_REGS class.
- (xtensa_preferred_reload_class): Handle output reloads; use RL_REGS
- instead of either AR_REGS or GR_REGS classes.
- (xtensa_secondary_reload_class): Use new RL_REGS class.
- * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class): Update.
-
-2002-09-30 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (hppa_encode_label): Don't drop '*' from function labels.
- (pa_strip_name_encoding): Strip '@' and '*', in that order.
- * pa.h (ASM_OUTPUT_LABELREF): Output user_label_prefix except when
- there is a '*' prefix in NAME.
-
-Mon Sep 30 21:33:23 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * reload.c (push_reload): Handle subregs and secondary memory.
- * reload1.c (gen_reload): Likewise.
-
- * jump.c (reg_or_subregno): New function.
- * rtl.h (reg_or_subregno): Declare
- * unroll.c (find_splittable_givs): Handle subregs.
-
-2002-09-30 Mark Mitchell <mark@codesourcery.com>
-
- * store-layout.c (finish_record_layout): Add free_p parameter.
- (layout_type): Pass it.
- * tree.h (finish_record_layout): Update prototype.
-
-Mon Sep 30 14:57:18 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.h (TARGET_CPP_CPU_BUILTINS): Define __SSE_MATH__.
-
- * gcse.c (cprop_jump): Check that the register has not
- been modified
- (cprop_jump): Likewise.
-
-2002-09-30 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.h (BASE_REG_CLASS): Always return LO_REGS for Thumb.
- (MODE_BASE_REG_CLASS, case Thumb): Only return BASE_REGS if we know
- that we have a SImode access, and only then if reload hasn't completed;
- for all other cases, use LO_REGS.
-
-2002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * openbsd.h: Fix typo in last change.
-
-2002-09-29 Richard Henderson <rth@redhat.com>
-
- * real.c (real_from_string): Apply sign last. Tidy exponent handling.
-
-2002-09-29 Richard Henderson <rth@redhat.com>
-
- PR c/8002
- * combine.c (force_to_mode): Handle FLOAT_MODE destinations
- for CONST_INT.
-
-2002-09-29 David Edelsohn <edelsohn@gnu.org>
-
- * real.h (ibm_extended_format): Declare.
- * real.c (encode_ibm_extended, decode_ibm_extended): New
- functions.
-
-2002-09-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * darwin-protos.h (darwin_asm_output_dwarf_delta): Prototype.
-
- * ia64.c (ia64_hpux_asm_file_end): Const-ify.
-
-2002-09-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * expmed.c (extract_bit_field): Fix bit-field extraction from SUBREGs.
-
-2002-09-29 Kazu Hirata <kazu@cs.umass.edu>
-
- * builtins.def: Fix comment formatting.
- * c-common.def: Likewise.
- * cfgcleanup.c: Likewise.
- * combine.c: Likewise.
- * gengtype.c: Likewise.
- * params.def: Likewise.
- * predict.def: Likewise.
- * rtl.def: Likewise.
- * stab.def: Likewise.
- * stor-layout.c: Likewise.
- * tree.def: Likewise.
- * config/darwin.c: Likewise.
- * config/darwin.h: Likewise.
- * config/dbxcoff.h: Likewise.
- * config/elfos.h: Likewise.
- * config/fp-bit.c: Likewise.
- * config/freebsd-spec.h: Likewise.
- * config/interix.h: Likewise.
- * config/libgloss.h: Likewise.
- * config/linux-aout.h: Likewise.
- * config/linux.h: Likewise.
- * config/lynx-ng.h: Likewise.
- * config/lynx.h: Likewise.
- * config/netbsd-aout.h: Likewise.
- * config/netbsd.h: Likewise.
- * config/netware.h: Likewise.
- * config/psos.h: Likewise.
- * config/ptx4.h: Likewise.
-
-2002-09-28 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog.4: Fix typos.
- * ChangeLog.6: Likewise.
- * FSFChangeLog.10: Likewise.
- * genattrtab.c: Fix comment typos.
- * haifa-sched.c: Likewise.
- * real.c: Likewise.
- * tree.h: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/crti.asm: Likewise.
- * config/arm/crtn.asm: Likewise.
- * config/frv/frv.c: Likewise.
- * config/frv/frv.md: Likewise.
- * config/h8300/h8300.md: Likewise.
- * config/i386/rtemself.h: Likewise.
- * config/ia64/unwind-ia64.c: Likewise.
- * config/ip2k/ip2k.h: Likewise.
- * config/m88k/m88k.c: Likewise.
- * config/m88k/m88k.md: Likewise.
- * config/mips/sr71k.md: Likewise.
- * config/mmix/mmix.c: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/sh/sh.md: Likewise.
-
-2002-09-26 Theodore A. Roth <troth@verinet.com>
-
- * config/avr/avr.c: Eliminate use of _PC_ in pc relative insns.
- * config/avr/avr.md: Ditto.
-
-2002-09-27 Alexander N. Kabaev <ak03@gte.com>
-
- PR preprocessor/8055
- * cppmacro.c (stringify_arg): Do not overflow the buffer
- with the terminating NUL when the argument to be stringified
- has no tokens.
-
-2002-09-27 Richard Henderson <rth@redhat.com>
-
- * unroll.c (simplify_cmp_and_jump_insns): New.
- (unroll_loop): Use it. Use simplify_gen_foo+force_operand
- instead of expand_simple_foo.
-
-2002-09-27 Richard Henderson <rth@redhat.com>
-
- PR optimization/7520
- * cfganal.c (flow_active_insn_p): New.
- (forwarder_block_p): Use it.
-
-2002-09-27 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (active_insn_p): Revert last change.
-
-2002-09-27 Jakub Jelinek <jakub@redhat.com>
-
- * doc/extend.texi (tls_model): Document.
- * varasm.c (decl_tls_model): New.
- * c-common.c (handle_tls_model_attribute): New.
- (c_common_attribute_table): Add tls_model.
- * config/alpha/alpha.c (alpha_encode_section_info): Use
- decl_tls_model.
- * flags.h (enum tls_model, flag_tls_default): Move...
- * tree.h (enum tls_model, flag_tls_default): ...here.
- (decl_tls_model): New prototype.
- * config/ia64/ia64.c (ia64_encode_section_info): Likewise.
- * config/i386/i386.c (ix86_encode_section_info): Likewise.
- * config/i386/i386.md (tls_global_dynamic, tls_local_dynamic_base):
- Allow !flag_pic.
-
-2002-09-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * LANGUAGES: Follow spelling conventions.
- * rtl.def: Likewise.
- * sbitmap.c: Likewise.
- * sched-int.h: Likewise.
- * sched-rgn.c: Likewise.
- * sibcall.c: Likewise.
- * simplify-rtx.c: Likewise.
- * ssa.c: Likewise.
- * stab.def: Likewise.
- * stmt.c: Likewise.
- * stor-layout.c: Likewise.
- * target.h: Likewise.
- * timevar.c: Likewise.
- * toplev.c: Likewise.
- * tree-dump.c: Likewise.
- * tree-inline.c: Likewise.
- * tree.c: Likewise.
- * tree.def: Likewise.
- * tree.h: Likewise.
- * unroll.c: Likewise.
- * varasm.c: Likewise.
- * vmsdbgout.c: Likewise.
- * treelang/treelang.texi: Likewise.
- * treelang/treetree.c: Likewise.
-
-2002-09-27 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (compute_saved_regs): Use a macro
- instead of a hard register number.
- (get_shift_alg): Use an enumerated type instead of numbers.
- (h8300_shift_needs_scratch_p): Likewise.
-
-2002-09-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * varasm.c (force_data_section): Remove.
- (assemble_constant_align): Likewise.
- * output.h: Remove corresponding prototypes.
-
-2002-09-26 Roger Sayle <roger@eyesopen.com>
-
- * stmt.c (expand_exit_loop_if_false): Expand a simple conditional
- jump, if the loop to exit is the top of the current nesting stack.
-
-2002-09-26 Torbjorn Granlund <tege@swox.com>
-
- * libgcc2.c (fixunsdfdi, fixunssfdi): Rewrite, avoiding `long long'
- arithmetic.
-
-2002-09-26 David S. Miller <davem@redhat.com>
-
- PR optimization/7335
- * calls.c (emit_library_call_value_1): Passing args by reference
- converts a CONST function into a PURE one.
-
-2002-09-26 David Edelsohn <edelsohn@gnu.org>
-
- * dbxout.c (FORCE_TEXT): Switch to current_function_decl, not
- text_section.
- * xcoffout.h (DBX_STATIC_BLOCK_START): Remove explicit change to
- text section.
- * config/rs6000/rs6000.c (rs6000_override_options): Allow
- function-sections and data-sections functionality on AIX.
-
-2002-09-26 David Edelsohn <edelsohn@gnu.org>
- Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_move): Insert zero-extend
- in RTL for sub-word loads from memory.
-
-2002-09-26 Richard Henderson <rth@redhat.com>
-
- PR c/7160
- * sched-deps.c (sched_analyze_insn): Make clobber insns depend
- on call insns.
-
-2002-09-26 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (const_double_htab_eq): Remove unused variable.
-
-2002-09-26 Chris Lattner <sabre@nondot.org>
-
- * ssa.c (rename_insn_1): Handle RENAME_NO_RTX correctly when
- handling undefined values.
-
-2002-09-26 Richard Henderson <rth@redhat.com>
-
- PR opt/7520
- * emit-rtl.c (active_insn_p): Consider a clobber of the
- function return value to be active even after reload.
-
-2002-09-27 Alan Modra <amodra@bigpond.net.au>
-
- * doloop.c (doloop_modify_runtime <biv skips initial incr>): Adjust
- by absolute loop increment, not loop increment.
-
-2002-09-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * c-common.h: Follow spelling conventions.
- * cpplex.c: Likewise.
- * cpplib.h: Likewise.
- * gthr-dce.h: Likewise.
- * gthr-posix.h: Likewise.
- * optabs.c: Likewise.
- * output.h: Likewise.
- * profile.c: Likewise.
- * protoize.c: Likewise.
- * ra-rewrite.c: Likewise.
- * real.c: Likewise.
- * recog.c: Likewise.
- * reg-stack.c: Likewise.
- * regclass.c: Likewise.
- * regmove.c: Likewise.
- * reload.c: Likewise.
- * reload.h: Likewise.
- * reload1.c: Likewise.
- * reorg.c: Likewise.
- * resource.c: Likewise.
- * rtl.h: Likewise.
- * rtlanal.c: Likewise.
-
-2002-09-26 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.c (ia64_expand_load_address): Ensure correct mode
- for symbol address.
-
-2002-09-24 Eric Christopher <echristo@redhat.com>
-
- * config/mips/elf.h: Add HANDLE_SYSV_PRAGMA.
- * config/mips/elf64.h: Ditto.
-
-2002-09-24 Eric Christopher <echristo@redhat.com>
-
- * except.c (expand_builtin_extract_return_address): Handle case
- where Pmode != ptr_mode.
-
-2002-09-26 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (ASM_OUTPUT_EXTERNAL_LIBCALL): New
-
-2002-09-26 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (TARGET_DEFAULT): Include TARGET_ILP32.
-
-2002-09-26 Igor Shevlyakov <igor@microunity.com>
-
- * combine.c (simplify_set): Don't call to force_to_mode if size
- of integer type is larger than HOST_BITS_PER_WIDE_INT.
-
-2002-09-26 Janis Johnson <janis187@us.ibm.com>
-
- * Makefile.in (qmtest-g++): Fix file path.
-
-2002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
-
- * expr.c (expand_expr) [MINUS_EXPR]: Convert A - const to
- A + (-const) on RTX level, even for unsigned types.
-
-2002-09-26 Ulrich Weigand <uweigand@de.ibm.com>
-
- * reload.c (dup_replacements): New function.
- (find_reloads): Use it to duplicate replacements at the top level
- of match_dup operands.
-
-2002-09-26 Miles Bader <miles@gnu.org>
-
- * v850.md ("length"): Change default value to 4.
-
-2002-09-26 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog.1: Follow spelling conventions.
- * ChangeLog.4: Likewise.
- * ChangeLog.6: Likewise.
- * FSFChangeLog.11: Likewise.
- * doc/cpp.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/tm.texi: Likewise.
-
-2002-09-26 Nick Clifton <nickc@redhat.com>
-
- * config.gcc: Add x prefix to v850e case for handling
- --with-cpu=v850e.
-
-2002-09-25 Zack Weinberg <zack@codesourcery.com>
-
- * gcc.c (input_suffix_matches, switch_matches,
- mark_matching_switches, process_marked_switches,
- process_brace_body): New functions - split from handle_braces.
- (handle_braces): Rewrite; handle %{S:X;T:Y;:D} syntax; accept
- and ignore whitespace in more places.
- (specs documentation comment): Document %{S:X;T:Y;:D}.
- Clarify other %{...} docs.
- * doc/invoke.texi: Document %{S:X;T:Y;:D}. Clarify other
- %{...} docs.
-
- * config/arm/aof.h (LINK_SPEC): Change %{ov*,*} to %{ov*}.
- * config/rs6000/sysv4.h: Use N-way choice spec syntax.
-
-2002-09-25 David S. Miller <davem@redhat.com>
-
- PR target/7842
- * config/sparc/sparc.c (set_extends): SImode ASHIFT does not
- extend.
-
-2002-09-25 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (const_double_htab_eq): Distinguish integer and
- fp CONST_DOUBLE; use real_identical.
-
-2002-09-25 Mark Mitchell <mark@codesourcery.com>
-
- * doc/invoke.texi: Add more -Wabi examples.
-
-2002-09-25 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (TARGET_MIPS4100): Add missing bracket.
-
-2002-09-24 Nathan Sidwell <nathan@codesourcery.com>
-
- * profile.c (end_branch_prob): Only look for __gcov_init on
- weak-enabled native compilers.
-
-2002-09-24 Denis Chertykov <denisc@overta.ru>
-
- * config/ip2k/ip2k.c (function_epilogue): Fix wrong numbers in
- cases of optimizing "add sp,w" to "inc sp".
-
-2002-09-24 Adam Nemet <anemet@lnxw.com>
-
- * config/arm/arm.c (thumb_unexpanded_epilogue): Don't generate
- epilogue for naked functions.
-
-2002-09-24 Adam Nemet <anemet@lnxw.com>
- Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.h (THUMB_FUNCTION_PROFILER): Remove.
- (FUNCTION_PROFILER): Only invoke THUMB_FUNCTION_PROFILER if it
- is defined.
-
-2002-09-24 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (preferred_la_operand_p): New function.
- * config/s390/s390-protos.h (preferred_la_operand_p): Declare it.
- * config/s390/s390.md ("addaddr_esame", "*la_ccclobber"): Replace by ...
- ("*la_64_cc", "*la_31_cc", splitters): ... these.
- ("*la_31"): Deactivate for TARGET_64BIT.
- ("*la_31_and", "*la_31_and_cc"): New.
-
-2002-09-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * real.h (real_value): Make `exp' explicitly signed.
-
-2002-09-24 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/elfos.h: Follow spelling conventions.
- * config/alpha/alpha.h: Likewise.
- * config/arc/arc.h: Likewise.
- * config/arm/arm.md: Likewise.
- * config/avr/avr.h: Likewise.
- * config/cris/cris.md: Likewise.
- * config/d30v/d30v.h: Likewise.
- * config/frv/frv.c: Likewise.
- * config/frv/frv.h: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/h8300/h8300.h: Likewise.
- * config/h8300/h8300.md: Likewise.
- * config/i386/cygwin.h: Likewise.
- * config/i386/i386.h: Likewise.
- * config/i386/sysv3.h: Likewise.
- * config/i960/i960.h: Likewise.
- * config/ia64/ia64.h: Likewise.
- * config/ia64/ia64.md: Likewise.
- * config/ip2k/ip2k.h: Likewise.
- * config/m32r/m32r.h: Likewise.
- * config/m68k/m68k.h: Likewise.
- * config/m88k/m88k.h: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mcore/mcore.h: Likewise.
- * config/mcore/mcore.md: Likewise.
- * config/mips/mips.h: Likewise.
- * config/mmix/mmix.h: Likewise.
- * config/mmix/mmix.md: Likewise.
- * config/ns32k/netbsd.h: Likewise.
- * config/ns32k/ns32k.h: Likewise.
- * config/ns32k/ns32k.md: Likewise.
- * config/pa/pa.h: Likewise.
- * config/romp/romp.h: Likewise.
- * config/rs6000/rs6000.h: Likewise.
- * config/rs6000/rs6000.md: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/stormy16/stormy-abi: Likewise.
- * config/stormy16/stormy16.h: Likewise.
- * config/vax/vax.h: Likewise.
-
-2002-09-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.h: Remove commented-out macro
- definitions of HAVE_{POST|PRE}_{INC|DEC}REMENT.
- * config/avr/avr.h: Likewise.
- * config/d30v/d30v.h: Likewise.
- * config/dsp16xx/dsp16xx.h: Likewise.
- * config/i370/i370.h: Likewise.
- * config/i386/i386.h: Likewise.
- * config/i960/i960.h: Likewise.
- * config/m68k/m68k.h: Likewise.
- * config/m88k/m88k.h: Likewise.
- * config/mips/mips.h: Likewise.
- * config/ns32k/ns32k.h: Likewise.
- * config/pdp11/pdp11.h: Likewise.
- * config/romp/romp.h: Likewise.
- * config/rs6000/rs6000.h: Likewise.
- * config/s390/s390.h: Likewise.
- * config/sh/sh.h: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/stormy16/stormy16.h: Likewise.
- * config/vax/vax.h: Likewise.
-
-2002-09-23 Kazu Hirata <kazu@cs.umass.edu>
-
- * function.c (push_temp_slots_for_block): Remove.
- (push_temp_slots_for_target): Likewise.
- (get_target_temp_slot_level): Likewise.
- (set_target_temp_slot_level): Likewise.
- (get_first_block_beg): Likewise.
- * function.h: Remove corresponding prototypes.
-
-2002-09-23 Zack Weinberg <zack@codesourcery.com>
-
- * version.c (version_string): Now const char[].
- * version.h: Update to match.
-
-2002-09-23 Richard Henderson <rth@redhat.com>
-
- * config/i386/i386.h (MASK_ACCUMULATE_OUTGOING_ARGS_SET, MASK_MMX_SET,
- MASK_SSE_SET, MASK_SSE2_SET, MASK_3DNOW_SET, MASK_3DNOW_A_SET): Kill.
- (TARGET_SWITCHES): Don't reference them.
- * config/i386/i386.c (override_options): Use target_flags_explicit
- to examine bits set by the user.
-
-2002-09-23 Dale Johannesen <dalej@apple.com>
-
- * dbxout.c (dbxout_parms): Set current_sym_code for params
- passed on stack by invisible reference.
-
-2002-09-23 Richard Earnshaw <rearnsha@arm.com>
-
- * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Always allocate
- at least one byte of space.
-
-2002-09-23 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.h (flag_abi_version): Fix typo in comment.
- * doc/invoke.texi (flag_abi_version): Document default value.
-
-2002-09-23 Hans-Peter Nilsson <hp@axis.com>
-
- * doc/extend.texi (Extended Asm): Clarify that overlap between
- asm-declared register variables used in an asm and the asm clobber
- list is not allowed.
- * stmt.c (decl_conflicts_with_clobbers_p): New function.
- (expand_asm_operands): Keep track of clobbered registers. Call
- decl_conflicts_with_clobbers_p for each input and output operand.
- If no conflicts found before, also do conflict sanity check when
- emitting clobbers.
-
-2002-09-23 Richard Henderson <rth@redhat.com>
-
- * c-common.c (cpp_define_data_format): Remove.
- (cb_register_builtins): Don't define __WCHAR_BIT__, __SHRT_BIT__,
- __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
- __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
- * doc/cpp.texi: Don't document them either.
- (__SCHAR_MAX__, __SHRT_MAX__, __INT_MAX__, __LONG_MAX__,
- __LONG_LONG_MAX__): Document.
- (__TARGET_FLOAT_FORMAT__): Remove.
-
-2002-09-23 Richard Henderson <rth@redhat.com>
-
- * real.c (do_multiply): Normalize U before addition.
-
-2002-09-23 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.c (flag_abi_version): New variable.
- * c-common.h (flag_abi_version): Declare it.
- * c-opts.c (missing_arg): Add -fabi-version.
- (c_common_decode_option): Process -fabi-version.
- * doc/invoke.texi (-fabi-version): Document it.
- (-Wabi): Add information about bit-fields in unions.
-
-2002-09-22 Roger Sayle <roger@eyesopen.com>
-
- * expr.c (STORE_BY_PIECES_P): New target macro.
- (can_store_by_pieces, store_by_pieces): Use STORE_BY_PIECES_P
- instead of MOVE_BY_PIECES_P.
- * doc/tm.texi: Document this new macro.
-
-2002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/mips/netbsd.h (SUBTARGET_ASM_SPEC): Always pass -KPIC
- unless -fno-pic or -fno-PIC is specified.
-
-2002-09-22 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * c-common.c (preprocessing_trad_p): Define.
- * pa-hiux.h, pa-hpux.h, pa-hpux7.h (CPP_PREDEFINES): Delete.
- (TARGET_OS_CPP_BUILTINS, SUBTARGET_SWITCHES): Define.
- * pa-hpux10.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
- * pa-hpux11.h (TARGET_OS_CPP_BUILTINS): Define.
- * pa-linux.h (CPP_PREDEFINES): Delete.
- (TARGET_OS_CPP_BUILTINS, CPP_SPEC): Define.
- * pa32-linux.h, pa64-linux.h (CPP_SPEC): Delete.
- * pa-osf.h, pa-pro-end.h, rtems.h (CPP_PREDEFINES): Delete.
- (TARGET_OS_CPP_BUILTINS): Define.
- * pa.h (MASK_SIO, TARGET_SIO, TARGET_PA_10): Define.
- (TARGET_SWITCHES): Reformat. Use N_() macro. Add SUBTARGET_SWITCHES.
- (SUBTARGET_SWITCHES): Provide default definition.
- (TARGET_OPTIONS): Reformat. Use N_() macro.
- (CPP_PA10_SPEC, CPP_PA11_SPEC, CPP_PA20_SPEC, CPP_64BIT_SPEC,
- CPP_CPU_DEFAULT_SPEC, CPP_64BIT_DEFAULT_SPEC, SUBTARGET_EXTRA_SPECS,
- EXTRA_SPECS, CPP_SPEC, CPLUSPLUS_CPP_SPEC, CPP_PREDEFINES): Delete.
- (TARGET_CPU_CPP_BUILTINS): Define.
- (TARGET_OS_CPP_BUILTINS): Define for BSD-like systems.
- * doc/invoke.texi (msio, mwsio): Document new hppa options.
- * doc/tm.texi (TARGET_CPU_CPP_BUILTINS): Document macro
- preprocessing_trad_p().
-
-2002-09-22 Jason Thorpe <thorpej@wasabisystems.com>
-
- * doc/install.texi: Document behavior of --with-headers and
- --with-libs when arguments are omitted.
-
-2002-09-22 Kazu Hirata <kazu@cs.umass.edu>
-
- * dbxout.c: Follow spelling conventions.
- * defaults.h: Likewise.
- * df.c: Likewise.
- * diagnostic.h: Likewise.
- * doloop.c: Likewise.
- * dwarf2out.c: Likewise.
- * dwarfout.c: Likewise.
- * emit-rtl.c: Likewise.
- * except.c: Likewise.
- * explow.c: Likewise.
- * expmed.c: Likewise.
- * expr.c: Likewise.
- * expr.h: Likewise.
- * flags.h: Likewise.
- * flow.c: Likewise.
- * fold-const.c: Likewise.
- * function.c: Likewise.
- * function.h: Likewise.
- * gcc.c: Likewise.
- * gcov-io.h: Likewise.
- * gcov.c: Likewise.
- * gcse.c: Likewise.
- * genattrtab.c: Likewise.
- * genconfig.c: Likewise.
- * genrecog.c: Likewise.
- * ggc-page.c: Likewise.
- * ggc.h: Likewise.
- * global.c: Likewise.
- * gthr-win32.h: Likewise.
- * integrate.c: Likewise.
- * jump.c: Likewise.
- * langhooks.c: Likewise.
- * langhooks.h: Likewise.
- * line-map.h: Likewise.
- * local-alloc.c: Likewise.
- * longlong.h: Likewise.
- * loop.c: Likewise.
- * loop.h: Likewise.
-
-Tue Aug 27 22:26:35 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.h (BIGGEST_FIELD_ALIGNMENT): Set proper default for x86_64.
-
-Tue Aug 27 20:07:01 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (overwrite_options): Set -mpreferred-stack-boundary to 128
- for -Os/TARGET_64BIT too.
-
-2002-09-21 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog: Follow spelling conventions.
- * ChangeLog.0: Likewise.
- * ChangeLog.1: Likewise.
- * ChangeLog.2: Likewise.
- * ChangeLog.3: Likewise.
- * ChangeLog.4: Likewise.
- * ChangeLog.5: Likewise.
- * ChangeLog.6: Likewise.
- * FSFChangeLog.10: Likewise.
- * FSFChangeLog.11: Likewise.
- * alias.c: Likewise.
- * basic-block.h: Likewise.
- * c-aux-info.c: Likewise.
- * c-common.c: Likewise.
- * c-common.h: Likewise.
- * c-decl.c: Likewise.
- * c-format.c: Likewise.
- * c-semantics.c: Likewise.
- * c-typeck.c: Likewise.
- * calls.c: Likewise.
- * cfganal.c: Likewise.
- * cfgloop.c: Likewise.
- * collect2.c: Likewise.
- * combine.c: Likewise.
- * conflict.c: Likewise.
- * cppexp.c: Likewise.
- * cppfiles.c: Likewise.
- * cpphash.h: Likewise.
- * cppinit.c: Likewise.
- * cpplex.c: Likewise.
- * cpplib.c: Likewise.
- * cpplib.h: Likewise.
- * cppmacro.c: Likewise.
- * cse.c: Likewise.
-
-2002-09-21 Richard Earnshaw <rearnsha@arm.com>
-
- * netbsd-aout.h (NETBSD_LINK_SPEC_AOUT): New, takes old definition of
- LINK_SPEC.
- (LINK_SPEC): Define to NETBSD_LINK_SPEC_AOUT.
- * arm/netbsd.h (SUBTARGET_EXTRA_SEPCS): Add NETBSD_LINK_SPEC_AOUT.
- (LINK_SPEC): Rework to use NETBSD_LINK_SPEC_AOUT).
-
-2002-09-21 Richard Earnshaw <rearnsha@arm.com>
-
- PR opt/7930
- * cse.c (fold_rtx): Calculate old_cost before we fold each
- operand.
-
-2002-09-21 Richard Henderson <rth@redhat.com>
-
- * c-common.c (cpp_define_data_format): Remove __GCC_LITTLE_ENDIAN__,
- __GCC_BIG_ENDIAN__, __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
- __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
- __TARGET_USES_VAX_F_FLOAT__, __TARGET_USES_VAX_D_FLOAT__,
- __TARGET_USES_VAX_G_FLOAT__, __TARGET_USES_VAX_H_FLOAT__.
- * doc/cpp.texi: Don't document them.
-
-2002-09-21 Richard Henderson <rth@redhat.com>
-
- * c-common.c (builtin_define_float_constants): Use real_format
- to get the floating-point parameters.
-
-2002-09-21 Richard Henderson <rth@redhat.com>
-
- * real.c (struct real_format): Move to real.h.
- (real_format_for_mode): Rename from fmt_for_mode; update all users;
- initialize with ieee defaults.
- (real_to_target_fmt, real_from_target_fmt): New.
- (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
- ieee_extended_intel_96_format, ieee_extended_intel_128_format,
- ieee_quad_format, i370_single_format, i370_double_format,
- c4x_single_format, c4x_extended_format): Rename from s/_format//.
- (ieee_quad_format): Fix emin.
- (format_for_size, init_real_once): Remove.
- * real.h (struct real_format): Move from real.c.
- (real_format_for_mode): Declare.
- (real_to_target_fmt, real_from_target_fmt): Declare.
- (ieee_single_format, ieee_double_format, ieee_extended_motorola_format,
- ieee_extended_intel_96_format, ieee_extended_intel_128_format,
- ieee_quad_format, vax_f_format, vax_d_format, vax_g_format,
- i370_single_format, i370_double_format, c4x_single_format,
- c4x_extended_format): Declare.
- * toplev.c (do_compile): Don't call init_real_once.
-
- * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
- * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Remove.
-
- * config/alpha/alpha.h (TARGET_FLOAT_FORMAT): Define.
- * config/alpha/osf5.h (LONG_DOUBLE_TYPE_SIZE): 64, if vax mode.
- * config/alpha/alpha.c (override_options): Set real_format_for_mode
- for VAX, if enabled.
-
- * config/c4x/c4x.c (c4x_override_options): Set real_format_for_mode
- for C4X.
-
- * config/i370/i370.h (OVERRIDE_OPTIONS): New.
- * config/i370/i370.c (override_options): New.
- * config/i370/i370-protos.h: Update.
-
- * config/i386/i386.c (override_options): Set real_format_for_mode
- for Intel 80-bit extended.
- * config/i386/i386.h (INTEL_EXTENDED_IEEE_FORMAT): Remove.
-
- * config/i960/i960.h (LONG_DOUBLE_TYPE_SIZE): Mind -mlong-double-64.
- (OVERRIDE_OPTIONS): Move code...
- * config/i960/i960.c (i960_initialize): ... here. Set
- real_format_for_mode for Intel 80-bit extended.
-
- * config/ia64/ia64.c (ia64_override_options): Set real_format_for_mode
- for Intel 80-bit extended, if enabled.
-
- * config/m68k/m68k.c (override_options): Set real_format_for_mode
- for Motorola 96-bit extended.
-
- * config/vax/vax.h (OVERRIDE_OPTIONS): New.
- * config/vax/vax.c (override_options): New.
- * config/vax/vax-protos.h: Update.
-
-2002-09-21 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md (builtin_setjmp_receiver): Add
- #if TARGET_MACHO.
-
- * config/rs6000/rs6000.md (floatdisf2_internal2): Combine
- insns. Supply missing clobber of scratch reg.
-
-2002-09-20 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/m32r/m32r.c: Follow spelling conventions.
- * config/m32r/m32r.h: Likewise.
- * config/m32r/m32r.md: Likewise.
- * config/m68k/m68k.c: Likewise.
- * config/m88k/m88k.c: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/mips/mips.c: Likewise.
- * config/mips/mips.h: Likewise.
- * config/mmix/mmix.c: Likewise.
- * config/mn10200/mn10200.c: Likewise.
- * config/ns32k/ns32k.h: Likewise.
- * config/pa/pa.c: Likewise.
- * config/pa/pa64-linux.h: Likewise.
- * config/pdp11/pdp11.h: Likewise.
- * config/romp/romp.c: Likewise.
- * config/romp/romp.h: Likewise.
- * config/rs6000/eabi.asm: Likewise.
- * config/rs6000/linux64.h: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/rs6000/rs6000.h: Likewise.
- * config/rs6000/rs6000.md: Likewise.
- * config/rs6000/sysv4.h: Likewise.
- * config/rs6000/xcoff.h: Likewise.
-
-2002-09-20 Jim Wilson <wilson@redhat.com>
-
- * config/v850/v850/lib1funcs.asm (__muldi3): Change r5 to r28.
-
-2002-09-20 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.md (UNSPEC_GOTNTPOFF, UNSPEC_INDNTPOFF): New.
- * config/i386/i386.c (legitimate_pic_address_disp_p): Handle
- UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF like UNSPEC_GOTTPOFF.
- (legitimate_address_p): Likewise.
- (legitimize_address): Use @gotntpoff and @indntpoff.
- (output_pic_addr_const): Handle UNSPEC_GOTNTPOFF and UNSPEC_INDNTPOFF.
- (output_addr_const_extra): Likewise.
-
-2002-09-20 Jim Wilson <wilson@redhat.com>
-
- * combine.c (try_combine): When split an instruction pair, where the
- first has a sign_extend src, verify that the src and dest modes match.
-
-2002-09-20 Richard Henderson <rth@redhat.com>
-
- * config/mips/mips.c (dfhigh, dflow, sfhigh, sflow): Remove.
- (override_options): Do not initialize them.
- (mips_const_double_ok): Allow no fp constants except zero,
- and not even that for mips16.
- (const_float_1_operand): Use dconst1.
- * config/mips/mips.md (movsf, movsf_internal1, movsf_internal2,
- movdf, movdf_internal1, movdf_internal1a, movdf_internal2):
- Don't allow arbitrary constants; fix predicates and C constraint.
-
-2002-09-20 Neil Booth <neil@daikokuya.co.uk>
-
- * cppmacro.c: Don't warn about function-like macros without
- '(' during pre-expansion.
-
-2002-09-20 Jim Wilson <wilson@redhat.com>
-
- * config/v850/v850.c (current_function_anonymous_args): Delete.
- (expand_prologue): Use current_function_args_info.anonymous_args.
- (expand_epilogue): Delete use of current_function_anonymous_args.
- * config/v850/v850.h (struct cum_arg): Add anonymous_args field.
- (INIT_CUMULATIVE_ARGS): Clear anonymous_args field.
- (current_function_anonymous_args): Delete extern declaration.
- (SETUP_INCOMING_VARARGS): Set anonymous_args field.
-
-2002-09-20 Geoffrey Keating <geoffk@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_prologue): Update for change
- to load_macho_picbase.
- * config/rs6000/rs6000.md: Document Darwin-specific unspec IDs.
- (load_macho_picbase): Take the symbol to use as a parameter.
- (macho_correct_pic): New insn.
- (builtin_setjmp_reciever): On Darwin, restore the PIC register.
-
- * config/rs6000/rs6000.h (ELIMINABLE_REGS): Use
- RS6000_PIC_OFFSET_TABLE_REGNUM rather than hardcoding 30.
- (CAN_ELIMINATE): Likewise.
- (INITIAL_ELIMINATION_OFFSET): Likewise.
- (TOC_REGISTER): Likewise.
-
-2002-09-20 Richard Henderson <rth@redhat.com>
-
- * real.c (real_hash): New.
- * real.h: Declare it.
- * cse.c (canon_hash): Use it.
- * cselib.c (hash_rtx): Likewise.
- * emit-rtl.c (const_double_htab_hash): Likewise.
- * rtl.h (CONST_DOUBLE_REAL_VALUE): New.
- * varasm.c (struct rtx_const): Reduce vector size; separate
- integer and fp vectors.
- (HASHBITS): Remove.
- (const_hash_1): Rename from const_hash. Use real_hash. Do not
- take modulus MAX_HASH_TABLE.
- (const_hash): New. Do take modulus MAX_HASH_TABLE.
- (output_constant_def): Do not take modulus MAX_HASH_TABLE.
- (SYMHASH): Don't use HASHBITS.
- (decode_rtx_const): Copy only active bits from REAL_VALUE_TYPE.
- Fix CONST_VECTOR thinko wrt fp vectors. Fix kind comparison.
- (simplify_subtraction): Fix kind comparison.
- (const_hash_rtx): Return unsigned int. Don't use HASHBITS.
- Use a union to pun integer array.
- * config/rs6000/rs6000.c (rs6000_hash_constant): Use real_hash;
- only hash two words of integral CONST_DOUBLE.
-
-2002-09-20 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (STARTFILE_SPEC): Modify.
- (STARTFILE_PREFIX_SPEC): New.
- (LINK_SPEC): Modify.
- (LIB_SPEC): Modify.
- (LIBGCC_SPEC): New.
-
-2002-09-20 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (legitimate_pic_address_disp_p): Allow
- UNSPEC_NTPOFF and UNSPEC_DTPOFF to be offsetted by constant.
-
-2002-09-20 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
-
- * config/arm/arm.md (sign_extract_onebit, not_signextract_onebit):
- Add clobber of the condition code register.
-
-2002-09-20 Richard Henderson <rth@redhat.com>
-
- * real.c (do_fix_trunc): Static.
- (encode_ieee_single, encode_ieee_double, encode_ieee_extended,
- encode_ieee_quad, encode_vax_f, encode_vax_d, encode_vax_g,
- encode_i370_single, encode_i370_double, encode_c4x_single,
- encode_c4x_extended): Add default abort case.
-
-2002-09-20 Richard Henderson <rth@redhat.com>
-
- * real.h (enum real_value_class, SIGNIFICAND_BITS, EXP_BITS,
- MAX_EXP, SIGSZ, SIG_MSB, struct real_value): Move from real.c.
- (struct realvaluetype): Remove.
- (REAL_VALUE_TYPE): Use struct real_value.
- (REAL_VALUE_TYPE_SIZE): Use SIGNIFICAND_BITS.
- (test_real_width): New.
- * real.c: Global replace struct real_value with REAL_VALUE_TYPE.
- (real_arithmetic): Avoid hoops for REAL_VALUE_TYPE parameters.
- (real_compare, real_exponent, real_ldexp, real_isinf, real_isnan,
- real_isneg, real_isnegzero, real_identical, exact_real_inverse,
- real_to_integer, real_to_integer2, real_to_decimal,
- real_to_hexadecimal, real_from_string, real_from_integer,
- real_inf, real_nan, real_2expN, real_convert, real_to_target,
- real_from_target): Likewise.
- * tree.h (struct tree_real_cst): Use real_value not realvaluetype.
- * gengtype-yacc.y (bitfieldopt): Accept an ID as well.
-
-2002-09-20 Richard Henderson <rth@redhat.com>
-
- * real.h (UNKNOWN_FLOAT_FORMAT, IEEE_FLOAT_FORMAT, VAX_FLOAT_FORMAT,
- IBM_FLOAT_FORMAT, C4X_FLOAT_FORMAT, TARGET_FLOAT_FORMAT): Move ...
- * defaults.h: ... here.
- * config/arm/arm.h, config/avr/avr.h, config/d30v/d30v.h,
- config/fr30/fr30.h, config/frv/frv.h, config/ia64/ia64.h,
- config/ip2k/ip2k.h, config/mips/mips.h, config/stormy16/stormy16.h,
- config/xtensa/xtensa.h (TARGET_FLOAT_FORMAT): Remove.
-
-2002-09-20 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/mmix/mmix.md ("negdf2"): Rewrite.
- ("*expanded_negdf2"): New.
-
-2002-09-19 Jim Wilson <wilson@redhat.com>
-
- * combine.c (simplify_set): When optimizing a subreg src with a
- cc0 dest, use GET_MODE (src) for mask instead of inner_mode.
-
-2002-09-19 Dale Johannesen <dalej@apple.com>
- * combine.c (make_extraction): Don't create
- invalid subreg.
-
-2002-09-19 Roger Sayle <roger@eyesopen.com>
-
- * tree.c (integer_nonzerop): New predicate for nonzero integers.
- * tree.h (integer_nonzerop): Add function prototype.
- * stmt.c (expand_end_loop): Don't rotate the loop when there
- are no instructions in the test, i.e. the loop is unconditional.
- (expand_exit_loop_if_false): Optimize RTL generation of loop
- tests when the condition is always true or always false.
- * c-semantics.c (genrtl_do_stmt): Optimize RTL generation of
- do-loops when the condition is always true.
- (genrtl_for_stmt): Optimize RTL generation of for-loops when
- the for-expression is empty.
-
-2002-09-19 Zack Weinberg <zack@codesourcery.com>
-
- * gcc.c (use_pipes): New flag.
- (process_command): Set it. Adjust check for -pipe conflicting
- with -time or -save-temps.
- (do_spec_1): Use it. Handle %|SUFFIX, %mSUFFIX, and
- %<SWITCH. Drop %| (without a SUFFIX).
- (handle_braces): Drop %{<SWITCH}, %{^SWITCH}, %{|...}.
- (give_switch): Third argument eliminated.
- (invoke_as, @assembler_with_cpp spec): Use %|.s or %m.s
- depending on AS_NEEDS_DASH_FOR_PIPED_INPUT.
- (specs documentation comment): Update.
-
- * config/netbsd-aout.h, config/openbsd.h, config/ptx4.h,
- config/svr4.h, config/i386/freebsd-aout.h,
- config/m68k/netbsd-elf.h, config/m68k/netbsd.h,
- config/m68k/openbsd.h, config/mips/openbsd.h,
- config/sparc/sparc.h: Define AS_NEEDS_DASH_FOR_PIPED_INPUT
- instead of putting %| into ASM_SPEC and/or ASM_FINAL_SPEC.
- * config/avr/avr.h: Delete do-nothing ASM_FINAL_SPEC.
- * config/cris/cris.h: Update comment.
-
- * ada/lang-specs.h: Use %(invoke_as). Straighten out
- error messages. Don't use %{^SWITCH}.
- * ada/misc.c (gnat_decode_option): Handle -I with a
- separate argument.
-
- * f/lang-specs.h: Use %| and %m.
- * java/jvspec.c: Use %m and %(invoke_as). Change all
- uses of %{<SWITCH} to %<SWITCH.
-
- * doc/invoke.texi: Update documentation of specs.
- * doc/tm.texi: Document AS_NEEDS_DASH_FOR_PIPED_INPUT.
-
-2002-09-19 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (addr_generation_dependency_p): Handle SUBREG
- and STRICT_LOW_PART within SET_DEST.
- * config/s390/s390.md ("*extractqi", "*extracthi"): New insns with
- splitters, replacing pre-reload splitters.
- ("*zero_extendhisi2_31", "*zero_extendqisi2_31",
- "*zero_extendqihi2_31"): New insns.
- ("*zero_extendqihi2_64"): Do not clobber CC.
-
-2002-09-18 Devang Patel <dpatel@apple.com>
-
- * cp/cp-tree.h: New prototype for walk_vtables().
- * cp/decl.c (walk_vtables_r): New function.
- (struct cp_binding_level): Add new members, namespaces,
- names_size and vtables.
- (add_decl_to_level): Add decl in namespaces or vtables
- chain, if conditions match.
- (walk_vtables): New function.
- (walk_namespaces_r): Travers separate namespace chain
- for namespace decls.
- (wrapup_globals_for_namespace): Use names_size instead
- of list_length().
- * cp/decl2.c (finish_file): Use walk_vtables() instead of
- walk_globals() to walk vtable decls.
-
-2002-09-19 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (CTORS_SECTION_ASM_OP): New.
- (DTORS_SECTION_ASM_OP): Ditto.
- (READONLY_DATA_SECTION_ASM_OP): Moved.
- (DATA_SECTION_ASM_OP): New.
- (SDATA_SECTION_ASM_OP): New.
- (BSS_SECTION_ASM_OP): New.
- (SBSS_SECTION_ASM_OP): New.
- (TEXT_SECTION_ASM_OP): New.
-
-2002-09-19 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/fp-bit.c: Follow spelling conventions.
- * config/d30v/d30v.c: Likewise.
- * config/d30v/d30v.h: Likewise.
- * config/fr30/fr30.c: Likewise.
- * config/fr30/fr30.h: Likewise.
- * config/fr30/fr30.md: Likewise.
- * config/frv/frv.c: Likewise.
- * config/frv/frv.h: Likewise.
- * config/h8300/h8300.c: Likewise.
- * config/h8300/lib1funcs.asm: Likewise.
- * config/i370/i370.c: Likewise.
- * config/i386/i386.h: Likewise.
- * config/i386/i386.md: Likewise.
- * config/i386/pentium.md: Likewise.
- * config/i386/winnt.c: Likewise.
- * config/i960/i960.c: Likewise.
- * config/ia64/ia64.h: Likewise.
- * config/ip2k/ip2k.c: Likewise.
- * config/ip2k/ip2k.h: Likewise.
- * config/ip2k/ip2k.md: Likewise.
- * config/ip2k/libgcc.S: Likewise.
-
-2002-09-19 Stephen Clarke <stephen.clarke@superh.com>
-
- * config/sh/sh.h (UNSPEC_GOTOFF_P): Define.
- (GOTOFF_P): Extend to allow gotoff plus constant.
-
-2002-09-18 Richard Henderson <rth@redhat.com>
-
- * ifcvt.c (noce_process_if_block): Correctly detect X modified
- with INSN_B before COND_EARLIEST. Don't check A and B for
- modification in condition range. Reorder INSN_B for A==B properly.
- (if_convert): Iterate until no matches for a block.
-
-2002-09-18 Richard Henderson <rth@redhat.com>
-
- * calls.c (store_one_arg): Rename default_align to parm_align;
- always adjust parm_align for downward padding.
-
-2002-09-18 Richard Henderson <rth@redhat.com>
-
- * toplev.c (backend_init): Move init_real_once invocation ...
- (do_compile): ... here.
-
-2002-09-18 Richard Henderson <rth@redhat.com>
-
- * sibcall.c (optimize_sibling_and_tail_recursive_call): Also remove
- RTX_UNCHANGING_P markers for successful tail-recursive replacement.
-
-2002-09-18 Richard Henderson <rth@redhat.com>
-
- * real.c (round_for_format): Collect sticky as unsigned long, not bool.
-
-2002-09-19 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md: (floatdisf2): Rename to
- floatdisf2_internal1.
- (floatdisf2): New define_expand.
- (floatdisf2_internal2): Likewise.
-
-2002-09-18 Richard Henderson <rth@redhat.com>
-
- * real.c (sticky_rshift_significand): Collect sticky as
- unsigned long, not bool.
-
-2002-09-18 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_address_cost): New function.
- config/s390/s390-protos.h (s390_address_cost): Add prototype.
- config/s390/s390.h (ADDRESS_COST): Call s390_address_cost.
- (RTX_COST): Use COSTS_N_INSNS.
-
-2002-09-18 Douglas Rupp <rupp@gnat.com>
- Donn Terry <donnte@microsoft.com>
-
- * stor-layout.c (place_field): Handle alignment of whole
- structures when MSVC compatible bitfields are involved.
- Change method of computing location of MS bitfields to
- be compatible with #pragma pack(n).
-
- * tree.h (record_layout_info): Add new field
- remaining_in_alignment.
-
- * doc/tm.texi: (TARGET_MS_BITFIELD_LAYOUT_P): Update.
- (pragma pack): Add paragraph on MSVC bitfield packing.
-
-2002-09-18 Richard Earnshaw (reanrsha@arm.com)
-
- PR optimization/7967
- * arm.md (ne_zeroextractsi): Add clobber of the condition code
- register.
-
-2002-09-18 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/s390/s390.c: Follow spelling conventions.
- * config/sh/lib1funcs.asm: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sh/sh.h: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/sparc/sparc.md: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/stormy16/stormy16.h: Likewise.
- * config/v850/v850.c: Likewise.
- * config/v850/v850.h: Likewise.
- * config/vax/vax.c: Likewise.
- * config/vax/vax.h: Likewise.
-
-2002-09-18 Nick Clifton <nickc@redhat.com>
-
- * config/rs60000/rs6000.c (rs6000_emit_move): Handle V1DImode moves.
- * config/rs60000/rs6000.c (SPE_VECTOR_MODE): Include V1DImode.
- * config/rs6000/spe.md (movv1di, movv1di_internal): New patterns.
-
-2002-09-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * function.c (max_parm_reg_num): Remove.
- * stmt.c (in_control_zone_p, stmt_loop_nest_empty,
- drop_through_at_end_p, move_cleanups_up,
- expand_end_case_dummy, case_index_expr_type): Likewise.
- * stor-layout.c (pos_from_byte): Likewise.
- * tree.c (chain_member_value, chain_member_purpose, listify,
- tree_int_cst_msb, index_type_equal): Likewise.
- * tree.h: Remove prototypes for unused functions.
-
-2002-09-17 Zack Weinberg <zack@codesourcery.com>
-
- * ABOUT-GCC-NLS: Remove reference to enquire, and out-of-date
- statement that the only translation is to en_UK.
-
-2002-09-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/alpha/alpha.c: Follow spelling conventions.
- * config/alpha/alpha.h: Likewise.
- * config/alpha/alpha.md: Likewise.
- * config/arc/arc.h: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/arm.h: Likewise.
- * config/arm/arm.md: Likewise.
- * config/arm/pe.c: Likewise.
- * config/arm/unknown-elf.h: Likewise.
- * config/avr/avr.c: Likewise.
- * config/avr/avr.h: Likewise.
- * config/c4x/c4x.c: Likewise.
- * config/cris/cris.c: Likewise.
- * config/cris/cris.h: Likewise.
-
-2002-09-17 Samuel Figueroa <figueroa@apple.com>
-
- * final.c (final_scan_insn): Use new macro ASM_OUTPUT_ALIGN_WITH_NOP.
- * config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP) New macro.
- * doc/tm.texi (ASM_OUTPUT_ALIGN_WITH_NOP) New description.
-
-2002-09-17 Dale Johannesen <dalej@apple.com>
-
- * cfgcleanup.c (try_forward_edges): Do not forward a
- branch to just after a loop exit before loop optimization;
- this interfered with doloop detection.
-
-2002-09-17 Nick Clifton <nickc@redhat.com>
-
- * config/arm/arm.c (output_return_instruction): Do not
- writeback the stack pointer when it is being loaded.
- (arm_output_epilogue): Likewise.
-
-2002-09-17 Kazu Hirata <kazu@cs.umass.edu>
-
- * optabs.c (prepare_cmp_insn): Let emit_library_call_value
- generate a pseudo reg that receives the result of a libcall.
- (prepare_float_lib_cmp): Likewise.
-
-2002-09-17 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/elf.h: Remove CPP_PREDEFINES.
-
-Tue Sep 17 13:58:04 2002 Nicola Pero <n.pero@mi.flashnet.it>
-
- Fix PR/7014 and related objc bugs:
- * c-typeck.c (comp_target_types): Added a reflexive argument.
- Pass it to ObjC when/if calling objc_comptypes(). Updated all
- callers to provide the appropriate reflexive argument.
- * objc/objc-act.c (objc_comptypes): Carefully checked and fixed
- typechecking for all cases of comparisons and assignments,
- particularly the obscure and less common ones involving protocols.
-
-2002-09-17 Nick Clifton <nickc@redhat.com>
-
- * machmode.def (V1DImode): New mode. A single element vector.
- * tree.h (TI_UV1DI_TYPE, TI_V1DI_TYPE): New tree_index enums.
- (unsigned_V1DI_type_node, V1D1_type_node): New type nodes.
- * tree.c (build_common_tree_nodes_2): Build
- unsigned_V1DI_type_node and V1D1_type_node.
- * c-common.c (c_common_type_for_mode): Return
- unsigned_V1DI_type_node or V1D1_type_node for V1DImode.
- * rtl.c (class_narrowest_): Start integer vector nodes with V1DImode.
-
-Tue Sep 17 13:40:13 2002 Nicola Pero <n.pero@mi.flashnet.it>
-
- * doc/objc.texi (Constant string objects): Extended documentation
- to make clear that the constant string class ivar layout is
- completely fixed.
-
-2002-09-17 Roger Sayle <roger@eyesopen.com>
-
- * cfgrtl.c (flow_delete_block_noexpunge): Delete orphaned
- NOTE_INSN_LOOP_CONT notes when deleting basic blocks.
-
-2002-09-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * config/mips/mips.c (save_restore_insns): Remove unused variable.
- * gcc.c (make_relative_prefix): Likewise.
- * loop.c (check_final_value): Likewise.
- * jump.c (init_label_info): Remove return value.
- * cse.c (prev_insn): Move variable between #ifdef HAVE_cc0 ... #endif.
-
-2002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * dsp16xx.h (ASM_FORMAT_PRIVATE_NAME): Delete.
- (ASM_PN_FORMAT): Define.
-
-2002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.h, alpha/vms.h, arc.h, arm/aof.h, arm/aout.h, avr.h,
- c4x.h, cris.h, d30v.h, fr30.h, frv.h, h8300.h, i370.h, i386.h,
- i960.h, ia64.h, ip2k.h, m32r.h, m68hc11.h, m68k/3b1.h,
- m68k/hp320.h, m68k.h, m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h,
- m88k.h, mcore.h, mips.h, mmix.h, mn10200.h, mn10300.h, ns32k.h,
- pa.h, pdp11.h, romp.h, rs6000.h, s390/linux.h, sh.h, sparc.h,
- stormy16.h, v850.h, vax.h, xtensa.h (ASM_FORMAT_PRIVATE_NAME):
- Delete.
- * alpha/vms.h, h8300.h, i370.h, ia64.h, m68k/3b1.h, m68k/hp320.h,
- m68k/mot3300.h, m68k/sgs.h, m68k/tower-as.h, mmix.h, mn10200.h,
- mn10300.h, pa.h, v850.h (ASM_PN_FORMAT): Define.
-
- * defaults.h (ASM_PN_FORMAT, ASM_FORMAT_PRIVATE_NAME): Define.
- * doc/tm.texi (ASM_FORMAT_PRIVATE_NAME): Update documentation.
-
-2002-09-16 Richard Henderson <rth@redhat.com>
-
- * expr.c (emit_block_move): Set memory block size as appropriate
- for the copy.
-
-2002-09-16 Richard Henderson <rth@redhat.com>
-
- PR fortran/3924
- * sdbout.c (sdbout_symbol): Don't handle offsets from a symbol.
-
-2002-09-16 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Adjust SIZE
- as well as OFFSET for BITPOS.
-
-2002-09-16 Jeff Garzik <jgarzik@mandrakesoft.com>
-
- * config.gcc: Treat winchip_c6-*|winchip2-*|c3-* as pentium-mmx.
- * config/i386/i386.c (processor_alias_table): Add winchip-c6,
- winchip2 and c3.
- * doc/invoke.texi: Mention new aliases.
-
-2002-09-16 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * calls.c (store_one_arg): Set default alignment for BLKmode arguments
- to BITS_PER_UNIT when ARGS_GROW_DOWNWARD and the padding direction is
- downward.
- * function.c (pad_below): Always compile.
- (locate_and_pad_parm): If defined ARGS_GROW_DOWNWARD, pad argument to
- alignment when it is not in a register or REG_PARM_STACK_SPACE is true.
- Pad below when the argument is not in a register and the padding
- direction is downward.
-
- * pa-64.h (MUST_PASS_IN_STACK): Move define to pa.h.
- (PAD_VARARGS_DOWN): Define.
- * pa.c (function_arg_padding): Revise padding directions to make them
- compatible with the 32 and 64-bit runtime architecture documentation.
- (hppa_va_arg): Add code to handle variable and size zero arguments
- passed by reference on TARGET_64BIT. Reformat.
- (function_arg): Use a PARALLEL for BLKmode and aggregates args on
- TARGET_64BIT. Use a DImode PARALLEL for BLKmode args 5 to 8 bytes
- wide when !TARGET_64BIT. Move forward check for mode==VOIDmode.
- Add comments.
- * pa.h (MAX_PARM_BOUNDARY): Correct define for TARGET_64BIT.
- (RETURN_IN_MEMORY): Return size zero types in memory.
- (FUNCTION_VALUE): Return TFmode in general registers.
- (MUST_PASS_IN_STACK): Define.
- (FUNCTION_ARG_BOUNDARY): Simplify.
- (FUNCTION_ARG_PASS_BY_REFERENCE): Pass variable and zero sized types
- by reference.
- (FUNCTION_ARG_CALLEE_COPIES): Define to FUNCTION_ARG_PASS_BY_REFERENCE.
-
-2002-09-16 Richard Henderson <rth@redhat.com>
-
- * real.c (do_fix_trunc): New.
- (real_arithmetic): Call it.
- * simplify-rtx.c (simplify_unary_operation): Handle FIX
- with a floating-point result mode.
-
-2002-09-16 Richard Henderson <rth@redhat.com>
-
- * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
- (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
- * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
- (__builtin_nans, __builtin_nansf, __builtin_nansl): New.
- * builtins.c (fold_builtin_nan): New.
- (fold_builtin): Call it.
- * real.c (real_nan): Parse a non-empty string.
- (round_for_format): Fix NaN significand truncation.
- * real.h (real_nan): Return bool.
- * doc/extend.texi: Document new builtins.
-
-2002-09-16 Jason Merrill <jason@redhat.com>
- Danny Smith <dannysmith@users.sourceforge.net>
-
- * config/i386/winnt.c (ix86_handle_dll_attribute): Set
- DECL_EXTERN and TREE_PUBLIC for dllimported variables here...
- (i386_pe_mark_dllimport): Not here.
-
-2002-09-16 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-semantics.c (genrtl_do_stmt): Cope with NULL cond.
-
-2002-09-16 Geoffrey Keating <geoffk@redhat.com>
-
- * config/rs6000/rs6000.c (build_mask64_2_operands): Suppress
- warnings about unused operands when HOST_BITS_PER_WIDE_INT is
- < 64.
- (rs6000_emit_cmove): Use real_isinf not target_isinf.
-
-2002-09-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * calls.c (emit_library_call_value_1): Don't refer to
- hard_libcall_value.
- * optabs.c (prepare_float_lib_cmp): Likewise.
-
-2002-09-16 Geoffrey Keating <geoffk@apple.com>
-
- * ggc-common.c (ggc_mark_rtx_children_1): Update for changed name
- mangling.
-
- The following changes are merged from pch-branch:
-
- * doc/gty.texi (GTY Options): Document %a.
- * gengtype.c (do_scalar_typedef): New function.
- (process_gc_options): Handle `length' option.
- (set_gc_used_type): A pointer to an array of structures doesn't
- qualify as a pointer to a structure.
- (output_escaped_param): Add `%a' escape.
- (write_gc_structure_fields): Allow 'desc' on array of unions.
- (main): Define `uint8', `jword' and `JCF_u2' as scalars; use
- do_scalar_typedef.
-
- * gengtype.c (enum rtx_code): Make global.
- (rtx_format): Make global.
- (rtx_next): New.
- (gen_rtx_next): New.
- (write_rtx_next): New.
- (adjust_field_rtx_def): Skip fields marked by chain_next.
- (open_base_files): Delete redundant prototype.
- (write_enum_defn): New.
- (output_mangled_typename): Correct abort call.
- (write_gc_marker_routine_for_structure): Handle chain_next and
- chain_prev options.
- (finish_root_table): Don't output redundant \n.
- (main): Call gen_rtx_next, write_rtx_next, write_enum_defn.
- * c-tree.h (union lang_tree_node): Add chain_next option.
-
- * gengtype.h (NUM_PARAM): New definition.
- (struct type): For TYPE_PARAM_STRUCT, allow multiple parameters.
- * gengtype.c (find_param_structure): New.
- (adjust_field_type): Handle param<n>_is option.
- (process_gc_options): Detect use_params option. Update callers.
- (set_gc_used_type): Add 'param' parameter, update callers. Handle
- 'use_params' option.
- (open_base_files): Add splay-tree.h to list of files included.
- (output_mangled_typename): New.
- (write_gc_structure_fields): Update 'param' parameter to support
- multiple parameters. Change name mangling. Allow parameterized
- fields to have an apparent scalar type. Handle param<n>_is options,
- use_param option.
- (write_gc_marker_routine_for_structure): Update for change to name
- mangling. Better guess the output file for parameterized types.
- (write_gc_types): Update for change to name mangling.
- (write_gc_root): Update for change to name mangling. Handle (ignore)
- param<n>_is options.
- * doc/gty.texi (GTY Options): Add description of param<n>_is
- options, use_params option.
- * ggc.h (ggc_mark_rtx): Update for changed name mangling.
- * gengtype-lex.l: Produce token for param<n>_is.
- * gengtype-yacc.y: Parse param<n>_is.
-
- * gengtype.c (adjust_field_tree_exp): Don't name a variable 'rindex'.
-
- * rtl.c: Update comment describing rtx_format.
- * rtl.h (union rtunion): Separate definition and typedef.
- (struct rtx_def): Use gengtype to mark.
- * Makefile.in (gengtype.o): Also depend on rtl.def.
- * ggc.h (ggc_mark_rtx_children): Delete prototype.
- (ggc_mark_rtx): Change to alias of gengtype-generated routine.
- * ggc-common.c (ggc_mark_rtx_children): Delete.
- (ggc_mark_rtx_children_1): Delete.
- (gt_ggc_m_rtx_def): Delete.
- * gengtype.c (adjust_field_rtx_def): New.
- (adjust_field_type): Call adjust_field_rtx_def.
- (write_gc_structure_fields): Add 'default' case to switch if none
- is specified; remove unused code.
-
- * tree.h (struct tree_exp): Update for change to meaning
- of special.
- * gengtype.c (adjust_field_tree_exp): New function.
- (adjust_field_type): Handle `tree_exp' special here.
- (write_gc_structure_fields): Don't handle `tree_exp' special here.
- Handle new `dot' option.
-
- * gengtype.h: Make `info' a pointer-to-const.
- * gengtype-yacc.y (yacc_ids): Use xasprintf.
-
- * gengtype.c (write_gc_structure_fields): Remove implementation
- of `always' option, add `default' option.
- * doc/gty.texi (GTY Options): Remove documentation of `always',
- add `default'.
-
-2002-09-16 Hans-Peter Nilsson <hp@bitrange.com>
-
- * output.h: Remove #ifdef RTX_CODE and #ifdef TREE_CODE.
-
-2002-09-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * m68hc11.md (addhi_sp): Fix uninitialized variable bug.
-
- * c4x-c.c, c4x.c, darwin.c, i370-c.c, m32r.c: Include tm_p.h
- instead of the *-protos.h file directly.
- * t-c4x, t-i370, t-v850: Depend on $(TM_P_H).
- * darwin.c (machopic_output_stub): Move prototype ...
- * darwin-protos.h (machopic_output_stub): ... here.
- * rs6000-protos.h (machopic_output_stub): Don't declare.
-
-2002-09-16 Richard Henderson <rth@redhat.com>
-
- * c-common.c (builtin_define_float_constants): Emit __FOO_DENORM_MIN__.
-
-2002-09-16 Richard Henderson <rth@redhat.com>
-
- * real.c, real.h: Rewrite from scratch.
-
- * Makefile.in (simplify-rtx.o): Depend on TREE_H.
- (paranoia): New target.
- * builtins.c (fold_builtin_inf): Use new real.h interface.
- * c-common.c (builtin_define_with_hex_fp_value): Likewise.
- * c-lex.c (interpret_float): Likewise.
- * emit-rtl.c (gen_lowpart_common): Likewise.
- * optabs.c (expand_float): Use real_2expN.
- * config/ia64/ia64.md (divsi3, udivsi3): Likewise.
- * defaults.h (INTEL_EXTENDED_IEEE_FORMAT): New.
- (FLOAT_WORDS_BIG_ENDIAN): New.
- * cse.c (find_comparison_args): Don't pass FLOAT_STORE_FLAG_VALUE
- directly to REAL_VALUE_NEGATIVE.
- * loop.c (canonicalize_condition): Likewise.
- * simplify-rtx.c: Include tree.h.
- (simplify_unary_operation): Don't handle FIX and UNSIGNED_FIX
- with floating-point result modes.
- * toplev.c (backend_init): Call init_real_once.
-
- * fold-const.c (force_fit_type): Don't call CHECK_FLOAT_VALUE.
- * tree.c (build_real): Likewise.
- * config/alpha/alpha.c, config/vax/vax.c (float_strings,
- float_values, inited_float_values, check_float_value): Remove.
- * config/alpha/alpha.h, config/m68hc11/m68hc11.h,
- config/m88k/m88k.h, config/vax/vax.h (CHECK_FLOAT_VALUE): Remove.
- * doc/tm.texi (CHECK_FLOAT_VALUE): Remove.
- (VAX_HALFWORD_ORDER): Remove.
-
-2002-09-16 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c: (legitimize_la_operand): Remove, replace by ...
- (s390_load_address): ... this new function.
- (s390_decompose_address): Allow the argument pointer and all
- virtual registers as 'pointer' registers.
- (s390_expand_plus_operand): Use s390_load_address.
- config/s390/s390.md (movti, movdi, movdf splitters): Likewise.
- ("force_la_31"): New insn pattern.
- config/s390/s390-protos.h (legitimize_la_operand): Remove.
- (s390_load_address): Add prototype.
-
- * config/s390/s390.c: Include "optabs.h".
- (s390_expand_movstr, s390_expand_clrstr, s390_expand_cmpstr): New.
- config/s390/s390-protos.h (s390_expand_movstr, s390_expand_clrstr,
- s390_expand_cmpstr): Add prototypes.
- config/s390/s390.md ("movstrdi", "movstrsi"): Call s390_expand_movstr.
- ("movstrdi_short"): Rename to "movstr_short_64". Change predicates
- for operands 0 and 1 to "memory_operand". Add type attribute.
- ("movstrsi_short"): Rename to "movstr_short_31". Change predicates
- for operands 0 and 1 to "memory_operand". Add type attribute.
- ("movstrdi_long", "movstrsi_long"): Remove.
- ("movstrdi_64"): Rename to "movstr_long_64". Add type attribute.
- ("movstrsi_31"): Rename to "movstr_long_31". Add type attribute.
- ("clrstrdi", "clrstrsi"): Call s390_expand_clrstr.
- ("clrstrsico"): Remove, replace by ...
- ("clrstr_short_64", "clrstr_short_31"): ... these new patterns.
- ("clrstrsi_64"): Rename to "clrstr_long_64".
- ("clrstrsi_31"): Rename to "clrstr_long_31".
- ("cmpstrdi", "cmpstrsi"): Call s390_expand_cmpstr.
- ("cmpstr_const"): Remove, replace by ...
- ("cmpstr_short_64", "cmpstr_short_31"): ... these new patterns.
- ("cmpstr_64"): Rename to "cmpstr_long_64".
- ("cmpstr_31"): Rename to "cmpstr_long_31".
-
-2002-09-16 Kazu Hirata <kazu@cs.umass.edu>
-
- * ABOUT-NLS: Follow spelling conventions.
- * ChangeLog: Likewise.
- * ChangeLog.1: Likewise.
- * ChangeLog.2: Likewise.
- * ChangeLog.3: Likewise.
- * ChangeLog.4: Likewise.
- * ChangeLog.5: Likewise.
- * ChangeLog.6: Likewise.
- * FSFChangeLog.10: Likewise.
- * FSFChangeLog.11: Likewise.
- * c-common.c: Likewise.
- * c-lex.c: Likewise.
- * c-objc-common.c: Likewise.
- * cppexp.c: Likewise.
- * cppinit.c: Likewise.
- * cpplex.c: Likewise.
- * doloop.c: Likewise.
- * flow.c: Likewise.
- * function.c: Likewise.
- * integrate.c: Likewise.
- * loop.c: Likewise.
- * reg-stack.c: Likewise.
- * reload.h: Likewise.
- * ssa.c: Likewise.
-
-2002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (vmsdbgout.o): Depend on $(TARGET_H)
- * vmsdbgout.c: Include "target.h".
-
-2002-09-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog: Follow spelling conventions.
- * ChangeLog.0: Likewise.
- * ChangeLog.1: Likewise.
- * ChangeLog.2: Likewise.
- * ChangeLog.4: Likewise.
- * ChangeLog.6: Likewise.
- * config.gcc: Likewise.
- * dwarfout.c: Likewise.
- * reload1.c: Likewise.
- * simplify-rtx.c: Likewise.
- * unwind-sjlj.c: Likewise.
- * config/avr/avr.h: Likewise.
- * config/d30v/d30v.h: Likewise.
- * config/frv/frv.c: Likewise.
- * config/frv/frv.h: Likewise.
- * config/ip2k/ip2k.h: Likewise.
- * config/m88k/m88k-move.sh: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/stormy16/stormy16.h: Likewise.
- * doc/extend.texi: Likewise.
- * doc/interface.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/md.texi: Likewise.
- * doc/rtl.texi: Likewise.
- * doc/tm.texi: Likewise.
- * doc/trouble.texi: Likewise.
- * ginclude/float.h: Likewise.
- * treelang/treelang.texi: Likewise.
-
-2002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * i386-protos.h (i386_pe_dllexport_name_p,
- i386_pe_dllimport_name_p, i386_pe_unique_section,
- i386_pe_declare_function_type, i386_pe_record_external_function,
- i386_pe_record_exported_symbol, i386_pe_asm_file_end): Add
- prototype.
- * i386/t-cygwin (winnt.o): Depend on $(TM_P_H).
- * i386/t-interix (winnt.o): Likewise.
-
- * v850-protos.h (v850_output_addr_const_extra): Prototype.
-
-2002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Add
- MIPS ABI CPP macros.
- (TARGET_CPU_CPP_BUILTINS): Redefine.
- (SUBTARGET_EXTRA_SPECS): Remove subtarget_endian_default.
- (SUBTARGET_ENDIAN_DEFAULT_SPEC): Remove.
-
-2002-09-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * ia64/aix.h (TARGET_OS_CPP_BUILTINS): Fix typo.
-
-2002-09-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog: Follow spelling conventions.
- * ChangeLog.0: Likewise.
- * ChangeLog.1: Likewise.
- * ChangeLog.2: Likewise.
- * ChangeLog.3: Likewise.
- * ChangeLog.4: Likewise.
- * ChangeLog.5: Likewise.
- * ChangeLog.6: Likewise.
- * FSFChangeLog.10: Likewise.
- * FSFChangeLog.11: Likewise.
- * c-common.c: Likewise.
- * c-common.h: Likewise.
- * c-format.c: Likewise.
- * c-opts.c: Likewise.
- * cpplib.c: Likewise.
- * langhooks.h: Likewise.
- * real.c: Likewise.
- * reg-stack.c: Likewise.
- * toplev.c: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/arm.md: Likewise.
- * config/arm/linux-gas.h: Likewise.
- * config/arm/netbsd.h: Likewise.
- * config/c4x/c4x.c: Likewise.
- * config/c4x/c4x.h: Likewise.
- * config/c4x/c4x.md: Likewise.
- * config/c4x/libgcc.S: Likewise.
- * config/fr30/fr30.md: Likewise.
- * config/frv/frv.md: Likewise.
- * config/ia64/ia64.md: Likewise.
- * config/mips/mips.h: Likewise.
- * config/mn10300/mn10300.c: Likewise.
- * config/stormy16/stormy16.c: Likewise.
- * config/v850/v850.md: Likewise.
- * doc/extend.texi: Likewise.
- * doc/invoke.texi: Likewise.
- * doc/md.texi: Likewise.
-
-2002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/netbsd.h (LIB_SPEC): Include the appropriate pthread
- library if -pthread is specified.
-
-2002-09-15 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (*-*-netbsd*): Set thread_file to 'posix'
- for --enable-threads=yes and --enable-threads=posix.
-
-2002-09-15 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/sparc/cypress.md: Replace Sparc with SPARC.
- * config/sparc/freebsd.h: Likewise.
- * config/sparc/gmon-sol2.c: Likewise.
- * config/sparc/hypersparc.md: Likewise.
- * config/sparc/lb1spc.asm: Likewise.
- * config/sparc/lb1spl.asm: Likewise.
- * config/sparc/linux.h: Likewise.
- * config/sparc/linux64.h: Likewise.
- * config/sparc/lynx.h: Likewise.
- * config/sparc/sol2.h: Likewise.
- * config/sparc/sparc-modes.def: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/sparc/sparc.md: Likewise.
- * config/sparc/sparclet.md: Likewise.
- * config/sparc/supersparc.md: Likewise.
- * config/sparc/sysv4.h: Likewise.
- * config/sparc/vxsim.h: Likewise.
- * config/sparc/vxsparc64.h: Likewise.
-
-2002-09-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-lex.c (cb_ident): Mark variable with ATTRIBUTE_UNUSED.
- * collect2.c (ignore_library, aix_std_libs): Move into the context
- where it is used.
- * m68hc11.c (m68hc11_autoinc_compatible_p): Delete prototype.
- (autoinc_mode, m68hc11_make_autoinc_notes): Add prototypes.
- * m88k.c (output_call): Wrap variables with macro controlling use.
- * rs6000.md: Likewise. Const-ify variable.
- * sh.h (ASM_OUTPUT_LABELREF): Likewise.
- * final.c (only_leaf_regs_used): Likewise.
- * regrename.c (maybe_mode_change): Mark parameter with
- ATTRIBUTE_UNUSED.
- * reload.c (find_valid_class): Likewise. Likewise for variable.
- (find_reloads_address_1): Likewise.
- * varasm.c (weak_finish): Wrap variable with macro controlling use.
-
-2002-09-14 Marek Michalkiewicz <marekm@amelek.gda.pl>
-
- * config/avr/avr.c (output.h): Move after inclusion of tree.h.
-
-2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * ChangeLog: Follow spelling conventions.
- * ChangeLog.0: Likewise.
- * ChangeLog.2: Likewise.
- * ChangeLog.3: Likewise.
- * ChangeLog.4: Likewise.
- * ChangeLog.5: Likewise.
- * ChangeLog.6: Likewise.
- * cppfiles.c: Likewise.
- * cppinit.c: Likewise.
- * cpplib.h: Likewise.
- * cse.c: Likewise.
- * debug.h: Likewise.
- * df.c: Likewise.
- * dominance.c: Likewise.
- * hashtable.c: Likewise.
- * hashtable.h: Likewise.
- * loop.c: Likewise.
- * config/arm/README-interworking: Likewise.
- * config/arm/arm.c: Likewise.
- * config/arm/arm.h: Likewise.
- * config/arm/arm.md: Likewise.
- * config/dsp16xx/dsp16xx.h: Likewise.
- * config/frv/frv.c: Likewise.
- * config/frv/frv.h: Likewise.
- * config/ip2k/ip2k.h: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/stormy16/stormy-abi: Likewise.
- * config/stormy16/stormy16.h: Likewise.
- * config/v850/v850.c: Likewise.
-
-2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * loop.c: Fix a comment typo.
-
-2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/fr30/fr30.h: Fix comment typos.
- * config/frv/frv.c: Likewise.
- * config/i386/xmmintrin.h: Likewise.
- * config/mips/mips.c: Likewise.
- * config/sh/sh.c: Likewise.
-
-2002-09-14 Kazu Hirata <kazu@cs.umass.edu>
-
- * haifa-sched.c: Follow spelling conventions.
- * regclass.c: Likewise.
- * regrename.c: Likewise.
- * config/fp-bit.c: Likewise.
- * config/frv/frv.h: Likewise.
- * config/m88k/m88k.c: Likewise.
- * config/mcore/mcore.c: Likewise.
- * config/rs6000/darwin.h: Likewise.
- * config/rs6000/gnu.h: Likewise.
- * config/rs6000/linux.h: Likewise.
- * config/rs6000/linux64.h: Likewise.
- * config/rs6000/rs6000.c: Likewise.
- * config/rs6000/rs6000.h: Likewise.
- * config/sh/sh.c: Likewise.
- * config/sparc/sparc.c: Likewise.
- * config/sparc/ultra1_2.md: Likewise.
-
-2002-09-14 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("movdi_internal"): Allow any offsetable
- memory operand when source is 0 (K constraint).
- ("movsi_internal"): Likewise.
- ("movdf_internal"): Likewise.
- ("movsf_internal"): Likewise.
-
-2002-09-14 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_elf_encode_section_info): Use
- targetm.binds_local_p to set SYMBOL_REF_FLAG.
- (rs6000_xcoff_encode_section_info): Likewise.
- * config/rs6000/xcoff.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
-
-2002-09-10 Theodore A. Roth <troth@verinet.com>
-
- * gcc/config/avr/avr.h: Set default options for C++ for avr.
-
-2002-09-13 Roger Sayle <roger@eyesopen.com>
-
- * stmt.c (struct nexting): Remove unused alt_end_label field.
- (expand_start_loop): Delete initialization of alt_end_label.
- (expand_start_null_loop): Likewise.
- (expand_exit_loop_if_false): Delete updating of alt_end_label.
-
-2002-09-13 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (toplev.o): Depend on real.h.
- (print-rtl.o, varasm.o, ifcvt.o): Likewise.
-
-2002-09-14 Alan Modra <amodra@bigpond.net.au>
-
- * doc/tm.texi (DBX_OUTPUT_NFUN): Describe.
- * dbxout.c (dbxout_function_end): Use DBX_OUTPUT_NFUN.
- * config/rs6000/linux64.h (DBX_OUTPUT_NFUN): Define.
-
-2002-09-13 Nathan Sidwell <nathan@codesourcery.com>
-
- * ggc-common.c (ggc_mark_roots): Don't iterate NULL hash tables.
-
-2002-09-13 Steve Ellcey <sje@cup.hp.com>
-
- * config.gcc (ia64*-*-aix*, ia64*-*-elf*, ia64*-*-freebsd*,
- ia64*-*-linux*): Set extra_parts.
- * config/ia64/t-aix (EXTRA_PARTS): Remove.
- * config/ia64/t-ia64 (EXTRA_PARTS): Remove.
-
-2002-09-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/fixunssfsi.c: Replace H8/S with H8S.
- * config/h8300/h8300.c: Likewise.
- * config/h8300/h8300.h: Likewise.
- * config/h8300/h8300.md: Likewise.
- * doc/invoke.texi: Likewise.
-
-2002-09-13 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (h8300_init_once): Fix formatting.
-
-2002-09-13 Richard Henderson <rth@redhat.com>
-
- * config/alpha/alpha.md (attr type): Add callpal.
- (imb, trap, load_tp, set_tp): Use it.
- * config/alpha/ev4.md (ev4_callpal): New.
- * config/alpha/ev5.md (ev5_callpal): New.
- * config/alpha/ev6.md (ev6_ibr): Handle callpal.
- * config/alpha/alpha.c (alphaev4_insn_pipe): Handle TYPE_CALLPAL.
- (alphaev5_insn_pipe): Likewise.
-
-2002-09-13 Andreas Jaeger <aj@suse.de>
-
- * Makefile.in (print-rtl.o): Depend on CONFIG_H.
-
-2002-09-13 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/t-hpux (LIBGCC1_TEST, STMP_FIXPROTO,
- LIB2ADDEH): New, set to NULL.
- (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP): New.
-
-2002-09-13 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/quadlib.c (_U_Qfcmp): Make extern.
- (_U_Qfcnvfxt_quad_to_sgl): Remove declaration.
- (_U_Qfeq, _U_Qfne, _U_Qfgt, _U_Qfge, U_Qflt, U_Qfle, _U_Qfcomp):
- Add declarations.
- (_U_Qfneg): Remove.
-
-2002-09-13 Dhananjay Deshpande <dhananjayd@kpit.com>
-
- * config/h8300/h8300.h (EIGHTBIT_CONSTANT_ADDRESS_P): Add support
- for H8/300, H8S aa:8 mode.
- (TINY_CONSTANT_ADDRESS_P): Add support for H8S aa:16 mode.
- * config/h8300/h8300.c (h8300_adjust_insn_length): Adjust length
- for H8/300 aa:8 mode.
-
-2002-09-13 Hartmut Penner <hpenner@de.ibm.com>
-
- * config/s390/s390.md ("trap", "conditional_trap", "*trap"): New
- insns.
-
-2002-09-12 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (HOST_PRINT): Use print-rtl1.o
- (print-rtl.o): Don't define GENERATOR_FILE.
- (print-rtl1.o): Rename from $(BUILD_PREFIX_1)print-rtl.o.
- * print-rtl.c (print_rtx): Include CONST_DOUBLE fp decimal output
- unless GENERATOR_FILE.
-
-2002-09-12 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (USER_LABEL_PREFIX): Define here...
- * config/i386/darwin.h: ... instead of here.
-
- * target.h (struct gcc_target): New field
- terminate_dw2_eh_frame_info.
- * target-def.h (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
- (TARGET_INITIALIZER): Add it.
- * dwarf2out.c (output_call_frame_info): Use target hook.
- * dwarf2asm.c (dw2_asm_output_delta): Use macro
- ASM_OUTPUT_DWARF_DELTA if defined.
- * doc/tm.texi (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Document.
- (ASM_OUTPUT_DWARF_DELTA): Ditto.
- (ASM_OUTPUT_DWARF_OFFSET): Ditto.
- (ASM_OUTPUT_DWARF_PCREL): Ditto.
- * config.gcc (i[34567]86-*-darwin*): Define extra_parts.
- (powerpc-*-darwin*): Ditto.
- * crtstuff.c [OBJECT_FORMAT_MACHO]: Update the Mach-O bits
- to work correctly for Darwin.
- * config/darwin.h (OBJECT_FORMAT_MACHO): Define.
- (STARTFILE_SPEC): Add crtbegin.o.
- (ENDFILE_SPEC): Define.
- (EXTRA_SECTION_FUNCTIONS): Put gcc_except_tab in data segment.
- (ASM_PREFERRED_EH_DATA_FORMAT): Handle more cases.
- (ASM_OUTPUT_DWARF_DELTA): Define.
- (TARGET_TERMINATE_DW2_EH_FRAME_INFO): Define.
- * config/darwin.c (darwin_asm_output_dwarf_delta): New function.
-
-2002-09-13 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_emit_load_toc_table): Remove "if"
- nesting. Correct test for non-PowerPC64 ELF ABI_AIX.
- * config/rs6000/rs6000.md (load_toc_v4_PIC*): Disable when ABI_AIX.
-
-2002-09-12 Zack Weinberg <zack@codesourcery.com>
-
- * toplev.c: Move default definition of USER_LABEL_PREFIX...
- * defaults.h: ... here.
-
-2002-09-12 Richard Henderson <rth@redhat.com>
-
- * vax.c: Include tree.h earlier.
-
-2002-09-12 Stan Shebs <shebs@apple.com>
-
- * config/darwin.c (machopic_finish): Remove #if 0 chunks.
- (machopic_operand_p): Ditto.
-
-2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/arm/arm.c (arm_compute_initial_elimination_offset):
- Fix a comment typo.
-
-2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * toplev.c (do_abort): Fix a comment typo.
-
-2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * cselib.c: Fix comment formatting.
- * gengtype.c: Likewise.
-
-2002-09-12 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (udivmodqi4): Do not use an expander.
- (udivmodhi4): Likewise.
-
-2002-09-12 Graham Stott <graham.stott@btinternet.com>
- Roger Sayle <roger@eyesopen.com>
-
- * i386.c (any_fp_register_operand, fp_register_operand,
- register_and_not_any_fp_reg_operand, register_and_not_fp_reg_operand):
- New predicate functions.
- * i386-protos.h: Add their prototypes.
- * i386.h: Add them to PREDICATE_CODES.
- * i386.md ("*pushsf_rex64"+2, "*pushsf_rex64"+3, "*pushdf_integer"+1,
- "*pushdf_integer"+2, "*pushtf_integer"+1, "*pushtf_integer"+2,
- "*pushtf_integer"+3, "*pushtf_integer"+4, "*dummy_extendsfdf2"+1,
- "*dummy_extendsfdf2"+2, "*dummy_extendsfxf2"+1,
- "*dummy_extendsftf2"+1, "*dummy_extendsftf2"+2,
- "*dummy_extenddfxf2"+1, "*dummy_extenddftf2"+1,
- "*dummy_extenddftf2"+2, "*negsf2_if"+1, "*negsf2_if"+2,
- "*negdf2_if_rex64"+1, "*negdf2_if_rex64"+2, "*negxf2_if"+1,
- "*negxf2_if"+2, "*negtf2_if"+1, "*negtf2_if"+2, "*abssf2_if"+1,
- "*abssf2_if"+2, "*absdf2_if_rex64"+1, "*absdf2_if_rex64"+2,
- "*absxf2_if"+1, "*absxf2_if"+2, "*abstf2_if"+1, "*abstf2_if"+2):
- Use these new predicates to simplify and correct the use of
- FP_REG_P, ANY_FP_REG_P, FP_REGNO_P and any ANY_FP_REGNO_P.
-
-2002-09-12 Jason Merrill <jason@redhat.com>
-
- * diagnostic.c (output_add_identifier): New fn.
- * diagnostic.h: Declare it.
-
- * calls.c (store_one_arg): Use size_in_bytes to determine the
- amount of space to push.
-
-2002-09-12 Jakub Jelinek <jakub@redhat.com>
-
- * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo.
-
-2002-09-12 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-modes.def (CCAPmode, CCANmode): New CC modes.
- * config/s390/s390.c (s390_match_ccmode_set): Support new CC modes.
- (s390_select_ccmode): Likewise.
- (s390_branch_condition_mask): Likewise.
- (optimization_options): Do not set flag_branch_on_count.
- (s390_split_branches): Handle doloop branches.
- (s390_chunkify_pool): Likewise.
- * config/s390/s390.md ("*adddi3_imm_cc", "*addsi3_imm_cc"): New insns.
- ("doloop_end"): New expander.
- ("doolop_si", "*doloop_si_long", "doloop_di", "*doloop_di_long",
- associated splitters): New.
-
-2002-09-11 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * genattrtab.c (simplify_cond): Remove unused variable(s).
- * global.c (record_conflicts): Likewise.
- * jump.c (rebuild_jump_labels): Likewise.
- * loop.c (scan_loop, check_final_value): Likewise.
- * ra-colorize.c (colorize_one_web, assign_colors): Likewise.
- * reload1.c (eliminate_regs_in_insn, do_input_reload): Likewise.
- * rtlanal.c (reg_set_p): Likewise.
- * stmt.c (expand_asm_operands, expand_decl): Likewise.
- * genautomata.c (empty_reserv): Remove.
- * loop.c (max_luid): Likewise.
- * sched-rgn.c (bitlst_table_size): Likewise.
-
-2002-09-11 Nathan Sidwell <nathan@codesourcery.com>
-
- Reimplement gcov format.
- * gcov-io.h: Replace.
- * gcov.c: Reimplement.
- * gcov-iov.c: New file.
- * gcov-dump.c: New file.
- * libgcc2.c (L_bb): Replace with ...
- (L_gcov): ... this.
- (struct bb_function_info, struct bb): Remove.
- (inhibit_libc): Never inhibit.
- (gcov_list, gcov_crc): New static variables.
- (gcov_version_mismatch): New static function.
- (__bb_exit_func): Renamed to ...
- (__gcov_exit): ... here. Made static. Reimplement.
- (__gcov_init_func): Rename to ...
- (__gcov_init): ... here. Check version, update crc.
- (__bb_fork_func): Rename to ...
- (__gcov_flush): ... here.
- * libgcc2.h (struct bb, __bb_exit_func, __bb_init_func,
- __bb_fork_func, gcov_type, __bb_find_arc_counters): Remove.
- * calls.c (expand_call): Call __gcov_flush.
- * profile.c (bb_file, last_bb_file_name): Remove.
- (bbg_file_name): New global variable.
- (output_gcov_string): Remove.
- (get_exec_counts): Reimplement.
- (branch_prob): Reimplement gcov file writing.
- (init_branch_prob): Create bbg_file_name, don't create
- bb_file_name.
- (end_branch_prob): Adjust. Don't remove counter file when
- instrumenting ourselves.
- (create_profiler): Adjust.
- * doc/gcov.texi (Gcov Data Files): Remove detailed specification,
- point to gcov-io.h.
- * Makefile.in (LANGUAGES): Add gcov-dump.
- (coverageexts): Remove .bb.
- (STAGESTUFF): Add gcov-dump.
- (LIB2FUNCS_ST): Replace _bb with _gcov.
- (profile.o): Depend on gcov-iov.h.
- (final.o): Don't depend on profile.h, gcov.h.
- (gcov.o): Depend on gcov-iov.h.
- (gcov-iov.o): New target.
- (gcov-iov): New target.
- (gcov-iov.h): New target.
- (gcov-dump.o): New target.
- (GCOV_DUMP_OBJS): New variable.
- (gcov-dump): New target.
- (distclean): Remove coverageexts.
- (stage1): Remove coverageexts.
-
-2002-09-11 Hartmut Penner <hpenner@de.ibm.com>
-
- * fold-const.c (make_range): Only narrow to signed range if
- the signed range is smaller than the unsigned range.
-
-2002-09-12 Alan Modra <amodra@bigpond.net.au>
-
- * emit-rtl.c (set_mem_size): New function.
- * expr.h (set_mem_size): Declare.
- * config/rs6000/rs6000.c (expand_block_move_mem): Exterminate.
- (expand_block_move): Instead, use adjust_address and
- replace_equiv_address to generate proper aliasing info.
- Move common code out of conditionals. Localize vars.
-
-2002-09-11 Eric Botcazou <ebotcazou@libertysurf.fr>
-
- * optabs.c (expand_binop): Minor cleanup.
- (expand_twoval_binop): Convert CONST_INTs like in expand_binop.
-
-2002-09-11 Dan Nicolaescu <dann@ics.uci.edu>
-
- * print-tree.c (print_node): Print the restrict qualifier.
-
-2002-09-11 Janis Johnson <janis187@us.ibm.com>
-
- * doc/install.texi: Fix typos.
-
-2002-09-11 Zack Weinberg <zack@codesourcery.com>
-
- * Makefile.in: Remove all references to s-under and underscore.c.
- * collect2.c, tlink.c: Change all uses of prepends_underscore
- to look directly at USER_LABEL_PREFIX.
-
-2002-09-11 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_xcoff_asm_named_section): Append
- alignment to csect.
- (rs6000_xcoff_unique_section): Only set section name for public
- data.
- (rs6000_xcoff_section_type_flags): Store log2 alignment in flags.
- * config/rs6000/xcoff.h (TARGET_ASM_SELECT_SECTION): Remove
- duplicate definition.
-
-2002-09-10 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (extzv): Check predicates before emitting extzv_32.
- (insv): Likewise.
-
-2002-09-10 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.h (MOVE_MAX): Define to correct value.
- (MAX_MOVE_MAX): Define.
- (MOVE_BY_PIECES_P): Define.
- (CLEAR_BY_PIECES_P): Define.
-
-2002-09-10 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.md (movstrhi): Use right operands for conversion.
-
-2002-09-10 Richard Earnshaw <rearnsha@arm.com>
-
- PR c/7873
- * arm.md (insv): Use reg_or_int_operand for operand[3].
-
-2002-09-10 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (rs6000_assemble_visibility): Protect declaration
- inside macro. Correct function definition typo.
- (rs6000_xcoff_section_type_flags): New function.
- (TARGET_SECTION_TYPE_FLAGS): Remove definition.
- (rs6000_elf_section_type_flags): Call default_section_type_flags_1
- with appropriate PIC test.
- (rs6000_xcoff_select_section): Use decl_readonly_section_1 to
- determine readonly.
- (rs6000_binds_local_p): Combine PIC flags.
- * sysv4.h (TARGET_SECTION_TYPE_FLAGS): Define.
- * xcoff.h (TARGET_SECTION_TYPE_FLAGS): Define.
-
-2002-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * h8300.md: Fix signed/unsigned warnings.
- * mcore.md: Likewise.
- * mn10300.c (mask_ok_for_mem_btst): Likewise.
-
-2002-09-09 Per Bothner <per@bothner.com>
-
- * print-tree.c (print_node): In a STRING_CST, escape non-ascii
- characters, and only print TREE_STRING_LENGTH chars.
-
-2002-09-09 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/hpux.h (TARGET_HPUX_LD): New, define true.
- (ASM_FILE_END) New.
- * config/ia64/ia64.h (TARGET_HPUX_LD): New, define false.
- * config/ia64/ia64-protos.h (ia64_hpux_asm_file_end): New.
- * config/ia64/ia64.c (ia64_asm_output_external): Create list
- of external functions if TARGET_HPUX_LD is true.
- (ia64_hpux_add_extern_decl): New, routine to put names on
- list of external functions.
- (ia64_hpux_asm_file_end): Put out declarations for external
- functions if and only if they are used.
-
-2002-09-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (exception_receiver, builtin_setjmp_receiver): Add blockage
- on TARGET_64BIT before pic register restore.
-
-2002-09-09 David Edelsohn <edelsohn@gnu.org>
-
- * doc/tm.texi (TARGET_HAVE_SRODATA_SECTION): New description.
- (TARGET_HAVE_TLS): New description.
-
-2002-09-09 Janis Johnson <janis187@us.ibm.com>
-
- * doc/extend.texi (Statement Exprs): Fix broken link.
-
-2002-09-09 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.md (movstrhi, clrstrhi): Use gen_int_mode for
- right conversion of operands[1].
-
-2002-09-09 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*tmdi_reg", "*tmsi_reg"): Do not mark as
- commutative. Use "nonimmediate_operand" instead of "register_operand"
- as predicate for operand 0. Move to after the "*tmXX_mem" insns.
-
- ("*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem"): Do not mark
- as commutative.
-
- ("*anddi3_ni", "*andsi3_ni", "*iordi3_ni", "*iorsi3_ni"): Do not
- mark as commutative. Use "nonimmediate_operand" instead of
- "register_operand" as predicate for operand 1.
-
- ("movstrictsi"): Fix typo in insn name.
-
-2002-09-09 Jan Hubicka <jh@suse.cz>
-
- * i386.c (index_register_operand): New.
- * i386.h (predicate_codes): Add new predicate.
- * i386.md (lea_general_*): Use index_register_operand
- (ashift to lea splitter): Do not produce invalid leas
- (ashift to mov+ashift split): New.
-
-2002-09-09 Nick Clifton <nickc@redhat.com>
-
- * config/fr30/fr30.c (output.h): Move after inclusion of tree.h.
- Fix folding marks.
-
-2002-09-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
- J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh/sh.h (OVERRIDE_OPTIONS): align_functions is in bytes, not bits.
-
-2002-09-09 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_binds_local_p): Return bool.
- (function_ok_for_sibcall): Use binds_local_p. Respect longcall
- attributes.
-
-2002-09-08 Nathan Sidwell <nathan@codesourcery.com>
-
- * basic_block.h (gcov_type): Explain why it is signed.
- * final.c: Don't include profile.h.
- (struct function_list, functions_head, functions_tail,
- end_final): Moved to profile.c
- (final): Move arc chaining code to profile.c.
- * function.c (prepare_function_start): Remove duplicate line.
- * output.h (end_final): Remove prototype.
- * predict.c (estimate_loops_at_level): Use gcov_type.
- * profile.c (struct function_list, functions_head,
- functions_tail): Moved from final.c
- (need_func_profiler): Remove.
- (instrument_edges): Don't set need_func_profiler.
- (get_exec_counts): Avoid signed/unsigned warning.
- (compute_checksum): Use crc32.
- (branch_prob): Adjust. Chain onto functions_head.
- (init_branch_prob): Absorb init_edge_profiler.
- (init_edge_profiler): Remove.
- (create_profiler): Moved and renamed from final.c:end_final.
- Emit data and constructor.
- (output_func_start_profiler): Remove.
- * profile.h (struct profile_info): checksum is unsigned.
- * rtl.h (output_func_start_profiler): Remove prototype.
- (create_profiler): Declare.
- * toplev.c (compile_file): Call create_profiler, if instrumenting
- arcs. Don't call end_final.
-
-2002-09-08 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * fr30.c (fr30_print_operand): Fix bug in output of CONST_DOUBLE.
-
-2002-09-08 Richard Henderson <rth@redhat.com>
-
- * dwarf2.h (DW_OP_call_ref): Rename from DW_OP_calli.
- (DW_OP_GNU_push_tls_address): New.
- (DW_OP_lo_user): Fix.
- * dwarf2out.c (INTERNAL_DW_OP_tls_addr): New.
- (dwarf_stack_op_name): Handle it, plus other dwarf3 opcodes.
- (size_of_loc_descr): Likewise.
- (output_loc_operands): Handle INTERNAL_DW_OP_tls_addr.
- (add_AT_location_description): Take a dw_loc_descr_ref not an rtx.
- (loc_descriptor_from_tree): Handle TLS variables.
- (rtl_for_decl_location): Do avoid_constant_pool_reference here ...
- (add_location_or_const_value_attribute): ... not here. Defer
- to loc_descriptor_from_tree for TLS variables.
-
- * config/i386/i386.h (ASM_OUTPUT_DWARF_DTPREL): New.
- * config/i386/i386.c (i386_output_dwarf_dtprel): New.
- * config/i386/i386-protos.h: Update.
-
-2002-09-08 Roger Sayle <roger@eyesopen.com>
-
- PR optimization/6405
- * unroll.c (loop_iterations): last_loop_insn should be the previous
- non-note instruction before loop->end.
- * loop.c (strength_reduce): The conditional jump is the last
- non-note instruction before loop->end (as above).
-
-2002-09-08 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (try_combine): Handle the case that undobuf.other_insn
- has been turned into a return or unconditional jump, by inserting
- a BARRIER if necessary.
- (simplify_set): Test if a condition code setter has a constant
- comparison at compile time, if so convert this insn to a no-op move
- and update/simplify the condition code user (undobuf.other_insn).
-
-2002-09-08 Krister Walfridsson <cato@df.lth.se>
-
- * config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Redefine.
- (CLEAR_INSN_CACHE): Define.
-
-2002-09-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * basic-block.h: Fix comment formatting.
- * c-common.c: Likewise.
- * c-common.h: Likewise.
- * c-lex.c: Likewise.
- * c-pretty-print.c: Likewise.
- * cfglayout.c: Likewise.
- * cfgloop.c: Likewise.
- * defaults.h: Likewise.
- * et-forest.c: Likewise.
- * explow.c: Likewise.
- * function.h: Likewise.
- * gcov.c: Likewise.
- * genattrtab.c: Likewise.
- * gengtype.c: Likewise.
- * ifcvt.c: Likewise.
- * libgcc2.c: Likewise.
- * loop.c: Likewise.
- * profile.c: Likewise.
- * ra-build.c: Likewise.
- * real.c: Likewise.
- * rtl.h: Likewise.
- * tracer.c: Likewise.
- * tree-inline.c: Likewise.
- * varasm.c: Likewise.
-
-2002-09-08 Jan Hubicka <jh@suse.cz>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix array_ref
- handling.
-
- * loop.c (loop_givs_reduce): Emit addition after.
-
-2002-09-08 Alan Modra <amodra@bigpond.net.au>
-
- * varasm.c (default_assemble_visibility): Rename from
- assemble_visibility.
- * output.h: Here too.
- * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): And here.
- * config/rs6000/rs6000.c (rs6000_assemble_visibility): And here.
-
-2002-09-08 Alan Modra <amodra@bigpond.net.au>
-
- * reload.c (find_reloads <p constraint>): Pass operand_mode to
- find_reloads_address.
-
-2002-09-08 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (udivmodqi4): Enable on H8/300.
- (anonymous pattern): Likewise.
-
-2002-09-07 Igor Shevlyakov <igor@microunity.com>
-
- * machmode.def: Add modes for half-float vectors.
-
-2002-09-07 Scott Snyder <snyder@fnal.gov>
-
- PR target/7374
- * config/alpha/alpha.md (abstf2): Fix typo: 'neg' for 'abs'.
-
-2002-09-07 Roger Sayle <roger@eyesopen.com>
-
- * basic-block.h (struct loop): Remove unused cont_dominator field.
-
-2002-09-07 Igor Shevlyakov <igor@microunity.com>
-
- * varasm.c (decode_rtx_const): Don't check undefined field for
- CONST_VECTOR.
-
-2002-09-07 Glen Nakamura <glen@imodulo.com>
-
- PR opt/7814
- * sched-deps.c (sched_analyze_insn): Make sure to add insn
- to reg_last->sets after flushing the dependency lists to guarantee
- that subsequent clobbers will be dependent on it.
-
-2002-09-07 Igor Shevlyakov <igor@microunity.com>
-
- * combine.c (simplify_shift_const): Calculate rotate count
- correctly for vector operands.
-
-2002-09-07 Ansgar Esztermann <ansgar@thphy.uni-duesseldorf.de>
-
- * c-typeck.c (c_tree_expr_nonnegative_p): New function.
- (build_binary_op): Call c_tree_expr_nonnegative_p rather than
- tree_expr_nonnegative_p.
- (build_conditional_expr): Likewise.
- * c-tree.h (c_tree_expr_nonnegative_p): Declare.
-
-2002-09-07 Richard Henderson <rth@redhat.com>
-
- * builtins.def (inf, inff, infl): Mark const.
- (huge_val, huge_valf, huge_vall): Likewise.
- (BUILT_IN_GETEXP, BUILT_IN_GETMAN): Remove.
-
- * real.c (ereal_inf): Clear E before use.
-
-2002-09-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.md (udivmodqi4): Split the pattern into
- an expander and an anonymous pattern. Zero out the upper half
- of the dividend in the expander.
- (udivmodqi4): Likewise.
-
-2002-09-07 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c: Fix formatting.
- * config/h8300/h8300.h: Likewise.
- * config/h8300/h8300.md: Likewise.
-
-2002-09-07 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * cfgcleanup.c (try_crossjump_to_edge): Fix updating of liveness
- information.
-
-2002-09-07 Graham Stott <graham.stott@btinternet.com>
-
- * rtlanal.c (dead_or_set_regno_p): Fix typo.
-
-2002-09-07 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
-
- * doc/tm.texi (TARGET_ASM_ASSEMBLE_VISIBILITY): Describe.
- * target-def.h (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
- (TARGET_ASM_OUT): Add the above here.
- * target.h (struct gcc_target): Add "visibility" field.
- * varasm.c (maybe_assemble_visibility): Call targetm visibility func.
- * config/rs6000/rs6000.c (rs6000_assemble_visibility): New function.
- (TARGET_ASM_ASSEMBLE_VISIBILITY): Define.
- (rs6000_legitimize_reload_address, first_reg_to_save): Formatting.
-
-2002-09-06 Ziemowit Laski <zlaski@apple.com>
-
- * c-lang.c (objc_is_id): New stub.
- * c-tree.h (objc_is_id): New forward declaration.
- * c-typeck.c (build_c_cast): Do not strip protocol
- qualifiers from 'id' type.
- * objc/objc-act.c (objc_comptypes): Correct handling
- of protocol qualifiers.
- (objc_is_id): New.
-
-Fri Sep 6 13:10:08 2002 Jeffrey A Law (law@redhat.com)
-
- * pentium.md (pentium-firstvboth): Fix typo.
-
-2002-09-06 Dhananjay Deshpande <dhananjayd@kpit.com>
-
- * h8300.c (enum shift_alg): Move to earlier in h8300.c.
- (enum shift_type, enum h8_cpu): Likewise.
- (INL, ROT, LOP, SPC macros): Likewise.
- (shift_alg_qi, shift_alg_hi, shift_alg_si): Likewise. Lose
- const designator.
- (h8300_init_once): Update shift_alg_{qi,hi,si} to use more
- space efficient algorithms when optimize for codesize.
-
-Fri Sep 6 16:35:32 2002 Nicola Pero <n.pero@mi.flashnet.it>
-
- Fix PR/1727 and long-standing failing testcase
- objc/formal-protocol-6.m.
- * objc-act.c (build_protocol_expr): If compiling for the GNU
- runtime, create a list of Protocol statically allocated instances
- if it doesn't exist, then add the Protocol object to this same
- list.
- (get_objc_string_decl): Fixed typo/bug - TREE_VALUE had been used
- instead of TREE_CHAIN.
-
-Fri Sep 6 16:17:33 2002 Nicola Pero <n.pero@mi.flashnet.it>
-
- * objc/objc-act.c (dump_interface): Enlarged the char * buffer to
- 10k. Fixed category dumping - print out category names with the
- proper syntax. Print '@end\n' and not '\n@end' at the end of the
- interface.
- (finish_objc): Fixed the -gen-decls option. It was printing out
- only the last class. Dump an interface declaration of all classes
- being compiled instead.
-
-2002-09-06 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/arm/arm-protos.h (arm_gen_return_addr_mask): New
- prototype.
- * config/arm/arm.c (arm_gen_return_addr_mask): New function.
- * config/arm/arm.h (MASK_RETURN_ADDR): Use arm_gen_return_addr_mask
- if not APCS26 and not Thumb or ARMv4-or-higher. Use gen_int_mode
- rather than GEN_INT.
- * config/arm/arm.md (UNSPEC_CHECK_ARCH): Define.
- (return_addr_mask, *check_arch2): New.
-
-2002-09-06 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("*adddi3_cc", "*adddi3_cconly",
- "*adddi3_cconly2", "*adddi3_64", "*adddi3_31", "adddi3",
- "*addsi3_carry1_cc", "*addsi3_carry1_cconly",
- "*addsi3_carry2_cc", "*addsi3_carry2_cconly",
- "*addsi3_cc", "*addsi3_cconly", "*addsi3_cconly2", "addsi3",
- "adddf3", "*adddf3", "*adddf3_ibm",
- "addsf3", "*addsf3", "*addsf3_ibm",
- "muldi3", "mulsi3", "mulsidi3",
- "muldf3", "*muldf3", "*muldf3_ibm",
- "mulsf3", "*mulsf3", "*mulsf3_ibm",
- "*anddi3_cc", "*anddi3_cconly", "anddi3",
- "*andsi3_cc", "*andsi3_cconly", "andsi3",
- "*iordi3_cc", "*iordi3_cconly", "iordi3",
- "*iorsi3_cc", "*iorsi3_cconly", "iorsi3",
- "*xordi3_cc", "*xordi3_cconly", "xordi3",
- "*xorsi3_cc", "*xorsi3_cconly", "xorsi3"): Use "nonimmediate_operand"
- instead of "register_operand" as predicate for "%0" operand.
-
-2002-09-06 Jakub Jelinek <jakub@redhat.com>
-
- * configure.in (HAVE_AS_OFFSETABLE_LO10): Use -xarch=v9
- unconditionally when gcc_cv_as_flags64 checks are gone.
- * configure: Rebuilt.
-
-2002-09-06 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
- 2002-07-26 change. Comment.
-
-2002-09-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * frv.c (frv_unique_section, frv_select_section,
- frv_select_rtx_section): Delete.
- (frv_in_small_data_p): New.
- (TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_SECTION,
- TARGET_ASM_SELECT_RTX_SECTION): Delete.
- (TARGET_IN_SMALL_DATA_P): Define.
-
-2002-09-05 Dale Johannesen <dalej@apple.com>
-
- * reload1.c (reload): Retain only those memory clobbers
- added for variable-array handling.
-
-2002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/arm/arm.c (arm_return_in_memory): Implement ATPCS
- return-in-memory rules.
- * config/arm/arm.h (ARM_FLAG_ATPCS, TARGET_ATPCS): Define.
-
-2002-09-05 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/xcoff.h (HOT_TEXT_SECTION_NAME): Delete.
- (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Delete.
-
-2002-09-05 Jason Thorpe <thorpej@wasabisystems.com>
-
- * real.c: Avoid parse error if FLOAT_WORDS_BIG_ENDIAN is
- not a compile-time constant for the non-IBM case.
- * config/arm/arm-protos.h (arm_float_words_big_endian): New
- prototype.
- * config/arm/arm.c (arm_float_words_big_endian): New function.
- * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __VFP_FP__
- if TARGET_VFP and not TARGET_HARD_FLOAT.
- (ARM_FLAG_VFP, TARGET_VFP): Define.
- (FLOAT_WORDS_BIG_ENDIAN): Use arm_float_words_big_endian.
-
-2002-09-05 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi: Correct text of s390-*-linux* and s390x-*-linux*
- URLs. Fix AIX wording.
-
-2002-09-05 Stan Shebs <shebs@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_override_options): Make -fpic and
- -fPIC equivalent on Darwin.
-
-Thu Sep 5 16:27:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (sh_expand_builtin): Return early if encountering an
- error_mark for a type.
-
-2002-09-05 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_expand_plus_operand): Do not require
- double-word scratch register.
- config/s390/s390.md ("reload_indi", "reload_insi"): Adapt.
-
- ("*tmqi_ext", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem", "*tmqi_mem",
- "*cli"): Replace s_operand by memory_operand.
- ("cmpstrdi", "cmpstrsi"): Replace s_operand by general_operand.
-
-2002-09-05 Kazu Hirata <kazu@cs.umass.edu>
-
- * config/h8300/h8300.c (asm_file_start): Add a missing
- semicolon.
-
-2002-09-04 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
-
- * c-typeck.c (build_function_call): Remove unused variable(s).
- (build_c_cast): Likewise.
- * calls.c (rtx_for_function_call): Likewise.
- * cfglayout.c (duplicate_insn_chain): Likewise.
- * cfgloop.c (flow_loop_nodes_find): Likewise.
- * cfgrtl.c (split_edge): Likewise.
- * df.c (df_ref_create): Likewise.
- * except.c (expand_end_catch): Likewise.
- * expr.c (emit_push_insn, store_constructor, expand_expr): Likewise.
- * function.c (emit_return_into_block): Likewise.
- (reposition_prologue_and_epilogue_notes): Likewise.
- * gengtype.c (get_file_basename, write_gc_structure_fields): Likewise.
- * combine.c (subst_prev_insn, need_refresh): Remove.
- * dwarf2out.c (primary_filename): Remove.
- * final.c (new_block): Remove.
- * gcse.c (orig_bb_count): Remove.
-
-2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * dsp16xx-protos.h (dsp16xx_compare_gen): Change to bool.
- * dsp16xx.c (dsp16xx_compare_gen): Likewise.
- * dsp16xx.md: Treat dsp16xx_compare_gen as a bool. Call functions
- directly instead of using a function pointer.
-
-2002-09-04 Krister Walfridsson <cato@df.lth.se>
-
- * config/i386/i386.h (GOT_SYMBOL_NAME): Define.
- * config/i386/i386.c (output_set_got): Use GOT_SYMBOL_NAME.
- (ix86_output_addr_diff_elt) Likewise.
- (x86_output_mi_thunk) Likewise.
- * config/i386/netbsd.h (GOT_SYMBOL_NAME): Redefine.
-
-2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * frv.c (frv_encode_section_info): Fix error in last change.
-
-2002-09-04 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_flag_pic): New variable.
- (rs6000_elf_encode_section_info): ATTRIBUTE_UNUSED.
- (TARGET_BINDS_LOCAL_P): Define.
- (rs6000_override_options): Save original flag_pic value.
- (rs6000_elf_select_section): Call default_elf_select_section_1.
- (rs6000_elf_unique_section): Call default_unique_section_1.
- (rs6000_elf_in_small_data_p): New function.
- (rs6000_xcoff_asm_named_section): Determine storage mapping class.
- (rs6000_xcoff_select_section): Update based on defaults.
- (rs6000_xcoff_unique_section): Set to basic name if not common.
- (rs6000_binds_local_p): New function.
- * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
- targetm.have_srodata_section if SDATA_EABI.
- (TARGET_IN_SMALL_DATA_P): Define.
-
-2002-09-04 Dale Johannesen <dalej@apple.com>
-
- * varasm.c (struct rtx_const, decode_rtx_const):
- Make veclo and vechi fields not share storage.
-
-Thu Sep 5 00:34:33 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * loop.c (scan_loop): Don't mark separate insns out of a libcall
- for moving.
- (move_movables): Abort if we see the first insn of a libcall.
-
-2002-09-04 Richard Henderson <rth@redhat.com>
-
- * builtin-types.def (BT_FN_FLOAT): New.
- (BT_FN_DOUBLE, BT_FN_LONG_DOUBLE): New.
- * builtins.def (BUILT_IN_INF, BUILT_IN_INFF, BUILT_IN_INFL,
- BUILT_IN_HUGE_VAL, BUILT_IN_HUGE_VALF, BUILT_IN_HUGE_VALL): New.
- * builtins.c (fold_builtin_inf): New.
- (fold_builtin): Call it.
- * real.c (ereal_inf): New.
- * real.h: Declare it.
- * doc/extend.texi: Document new builtins.
-
-2002-09-04 Richard Henderson <rth@redhat.com>
-
- * cse.c (cse_insn): Avoid subreg games if the equivalence
- is already in the proper mode.
-
-2002-09-04 Eric Botcazou <ebotcazou@multimania.com>
-
- PR c/7102
- * optabs.c (expand_binop): Convert CONST_INTs in all cases.
-
-2002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (setccfp0, setccfp1): New patterns.
-
-2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * frv-protos.h (frv_init_builtins, frv_expand_builtin,
- frv_select_section, frv_select_rtx_section,
- frv_encode_section_info, frv_unique_section): Delete.
- * frv.c: Update for target hooks.
- * frv.h (STRIP_NAME_ENCODING, SLOW_ZERO_EXTEND, SELECT_SECTION,
- SELECT_RTX_SECTION, ENCODE_SECTION_INFO, UNIQUE_SECTION,
- EASY_DIV_EXPR, MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Delete.
-
-2002-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * ip2k-protos.h (function_prologue, function_epilogue,
- encode_section_info): Update to match target hook specification.
- * ip2k.c: Wrap `MDR' code in IP2K_MD_REORG_PASS.
- (function_prologue, function_epilogue, encode_section_info):
- Update to match target hook specification.
- * ip2k.h (SELECT_SECTION, SELECT_RTX_SECTION, ASM_OPEN_PAREN,
- ASM_CLOSE_PAREN, EASY_DIV_EXPR): Delete.
- (NOTICE_UPDATE_CC): Cast to void.
- * ip2k.md: Add defaults in switch statements.
-
-2002-09-04 Janis Johnson <janis187@us.ibm.com>
-
- * doc/trouble.texi (Interoperation): Update information about C++ ABI
- issues.
-
-2002-09-04 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/sparc/t-netbsd64: Disable multilib for now.
-
-2002-09-04 David Edelsohn <edelsohn@gnu.org>
-
- * target-def.h (TARGET_HAVE_SRODATA_SECTION): New macro.
- * target.h (gcc_target): Add have_srodata_section member.
- * varasm.c (section_category): Add SECCAT_SRODATA.
- (categorize_decl_for_section): Return SECCAT_SRODATA for sdata if
- READONLY_SDATA_SECTION defined.
- (decl_readonly_section_1): True for SECCAT_SRODATA also.
- (default_elf_select_section_1): Map SECCAT_SRODATA to .sdata2.
- (default_unique_section_1): Likewise.
-
-2002-09-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * expr.c (emit_group_load): Revise to allow splitting TCmode source
- into DImode pieces.
-
- * pa-64.h (LONG_DOUBLE_TYPE_SIZE): Define to 128.
- * pa64-regs.h (CLASS_CANNOT_CHANGE_MODE_P): Inhibit changes from SImode
- for floating-point register class.
- * pa.c (function_arg): Fix handling of modes wider than one word for
- TARGET_64BIT.
-
-Wed Sep 4 18:48:10 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * combine.c (make_compound_operation): Don't generate zero / sign
- extensions in floating point modes.
-
-2002-09-04 Janis Johnson <janis187@us.ibm.com>
-
- * doc/c-tree.texi: Fix overfull hboxes.
- * doc/cppopts.texi: Ditto.
- * doc/extend.texi: Ditto.
- * doc/gty.texi: Ditto.
- * doc/invoke.texi: Ditto.
- * doc/makefile.texi: Ditto.
- * doc/rtl.texi: Ditto.
- * doc/standards.texi: Ditto.
- * doc/tm.texi: Ditto.
-
-2002-09-04 Richard Henderson <rth@redhat.com>
-
- * c-common.c (builtin_define_with_hex_fp_value): New.
- (builtin_define_float_constants): Use it. Fix H_FLOAT mant_dig.
-
-2002-09-04 Janis Johnson <janis187@us.ibm.com>
-
- * doc/invoke.texi (-fshort-wchar): Move to Code Generation Options.
- (-fpcc-struct-return, -freg-struct-return, -fshort-enums,
- -fshort-double, -fshort-wchar, -fpack-struct, -fleading-underscore):
- Warn that these options can break ABI compatibility.
-
-2002-09-04 Richard Henderson <rth@redhat.com>
-
- * real.c (ereal_to_decimal): Add digits parameter.
- * real.h (REAL_VALUE_TO_DECIMAL): Remove format; add digits parameter.
- * c-pretty-print.c (pp_c_real_literal): Update call.
- * print-rtl.c (print_rtx): Likewise.
- * print-tree.c (print_node_brief, print_node): Likewise.
- * sched-vis.c (print_value): Likewise.
- * config/arc/arc.c (arc_print_operand): Likewise.
- * config/c4x/c4x.c (c4x_print_operand): Likewise.
- * config/i370/i370.h (PRINT_OPERAND): Likewise.
- * config/i386/i386.c (print_operand): Likewise.
- * config/i960/i960.c (i960_print_operand): Likewise.
- * config/ip2k/ip2k.c (asm_output_float): Likewise.
- * config/m32r/m32r.c (m32r_print_operand): Likewise.
- * config/m68hc11/m68hc11.c (print_operand): Likewise.
- * config/m68k/hp320.h (PRINT_OPERAND, ASM_OUTPUT_FLOAT_OPERAND,
- ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
- * config/m68k/m68k.h (ASM_OUTPUT_FLOAT_OPERAND,
- ASM_OUTPUT_DOUBLE_OPERAND, ASM_OUTPUT_LONG_DOUBLE_OPERAND): Likewise.
- * config/m68k/sun2o4.h (ASM_OUTPUT_FLOAT_OPERAND,
- ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
- * config/m68k/sun3.h (ASM_OUTPUT_FLOAT_OPERAND,
- ASM_OUTPUT_DOUBLE_OPERAND): Likewise.
- * config/mips/mips.c (print_operand): Likewise.
- * config/ns32k/ns32k.c (print_operand): Likewise.
- * config/pdp11/pdp11.h (PRINT_OPERAND): Likewise.
- * config/vax/vax.h (PRINT_OPERAND): Likewise.
- * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Update docs.
-
-2002-09-04 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/elf.h (TARGET_SECTION_TYPE_FLAGS): Define to
- xtensa_multibss_section_type_flags.
- * config/xtensa/xtensa.c (xtensa_multibss_section_type_flags): Define.
-
-2002-09-04 Richard Henderson <rth@redhat.com>
-
- * doc/install-old.texi: Don't mention enquire.
- * doc/sourcebuild.texi: Update float.h description.
-
-Wed Sep 4 11:22:14 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (mperm_w_little, mperm_w_big): Supply mode for zero_extract.
-
-2002-09-03 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (build_function_call_expr): Remove prototype, export
- as non-static and add a comment above function definition.
- (builtin_mathfn_code): New function to check for math builtins.
- (fold_builtin): Optimize sqrt(0.0) as 0.0, sqrt(1.0) as 1.0,
- exp(0.0) as 1.0, and log(1.0) as 0.0. Optimize exp(log(x)) and
- log(exp(x)) as x. Optimize sqrt(exp(x)) as exp(x/2.0) and
- log(sqrt(x)) as log(x)/2.0.
-
- * tree.h: Prototype build_function_call_expr and builtin_mathfn_code
- in new "builtins.c" section. Place the build_range_type prototype
- with the other prototypes from "tree.c".
-
- * fold-const.c (fold) [ABS_EXPR]: Fold fabs(sqrt(x)) as sqrt(x)
- and fabs(exp(x)) as exp(x). [MULT_EXPR]: Fold sqrt(x)*sqrt(y)
- as sqrt(x*y) and exp(x)*exp(y) as exp(x+y). [RDIV_EXPR]: Fold
- x/exp(y) as x*exp(-y).
-
-2002-09-03 David Edelsohn <edelsohn@gnu.org>
-
- * varasm.c (default_section_type_flags): Append _1 to name with
- shlib parameter. Use original name to call new function with
- implicit flag_pic.
- (decl_readonly_section): Likewise.
- (default_elf_select_section): Likewise.
- (default_unique_section): Likewise.
- (default_bind_local_p): Likewise.
- (categorize_decl_for_section): Add shlib parameter to use in place
- of implicit flag_pic.
- * output.h: Declare new functions with _1 and shlib argument.
-
-2002-09-03 Janis Johnson <janis187@us.ibm.com>
-
- * doc/install.texi: Fix typos, formatting problems, and obvious
- overfull/underfull boxes.
-
- * Makefile.in (TEXI_GCC_FILES): Add compat.texi.
- * doc/gcc.texi (Top): Add new chapter, Binary Compatibility, and
- include its file, compat.texi.
- * doc/compat.texi: New file with new chapter, Binary Compatibility.
-
-2002-09-03 Neil Booth <neil@daikokuya.co.uk>
-
- Debian BTS Bug #157416
- * cpphash.h (FIRST, LAST, CUR, RLIMIT): Fix definitions.
- * cpplib.c (destringize_and_run): Kludge around getting
- tokens from in-progress macros.
- (_cpp_do__Pragma): Simplify.
-
-2002-09-03 Steve Ellcey <sje@cup.hp.com>
-
- * config/ia64/ia64.h (EXTRA_SPECS): Remove cpp_cpu.
- (CPP_CPU_SPEC): Remove.
- (TARGET_CPU_CPP_BUILTINS): New.
- * config/ia64/hpux.h (CPP_PREDEFINES): Remove.
- (CPP_SPEC): Remove.
- (TARGET_OS_CPP_BUILTINS): New.
- * config/ia64/linux.h (CPP_PREDEFINES): Remove.
- (TARGET_OS_CPP_BUILTINS): New.
- * config/ia64/aix.h (CPP_SPEC): Move some stuff to
- TARGET_OS_CPP_BUILTINS.
- (CPP_PREDEFINES): Remove.
- (CPLUSPLUS_CPP_SPEC): Remove.
- (TARGET_OS_CPP_BUILTINS): New.
-
-2002-09-03 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (USER_H): Add ginclude/float.h.
- (FLOAT_H): Remove.
- (stmp-int-hdrs, install-mkheaders): Don't handle FLOAT_H.
- (mostlyclean): Don't remove float.h intermediate files.
- (distclean): Don't remove float.h.
- * config.gcc: Remove all float_format references.
- * configure.in (float_format, float_h_file): Remove.
-
- * c-common.c: Include tree-inline.h.
- (builtin_define_with_int_value): New.
- (builtin_define_type_precision): Use it.
- (builtin_define_float_constants): New.
- (cb_register_builtins): Use it. Define __FLT_RADIX__ and
- __FLT_EVAL_METHOD__.
- * defaults.h (TARGET_FLT_EVAL_METHOD): New.
- * config/i386/i386.h (TARGET_FLT_EVAL_METHOD): New.
- * config/m68k/m68k.h (TARGET_FLT_EVAL_METHOD): New.
- * doc/tm.texi (INTEL_EXTENDED_IEEE_FORMAT): Mention moto 96-bit format.
- (TARGET_FLT_EVAL_METHOD): New.
-
- * config/float-c4x.h, config/float-i128.h, config/float-i32.h,
- config/float-i386.h, config/float-i64.h, config/float-m68k.h,
- config/float-sh.h, config/float-sparc.h, config/float-vax.h: Remove.
- * ginclude/float.h: New.
-
-2002-09-03 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (WARN_FOUR_CHAR_CONSTANTS): Remove, never used.
- (DWARF2_DEBUGGING_INFO): Remove until assembler accepts Dwarf-2.
- (PREFERRED_DEBUGGING_TYPE): Ditto.
- (ASM_OUTPUT_IDENT): Remove empty definition.
-
-2002-09-03 Steve Ellcey <sje@cup.hp.com>
-
- * config.gcc (ia64*-*-hpux*): Add ia64-c.o to c_target and
- cxx_target.
- * config/ia64/hpux.h (REGISTER_TARGET_PRAGMAS): Register pragma
- handling routine for builtin pragma.
- * config/ia64/ia64-protos.h (ia64_hpux_handle_builtin_pragma):
- Registered pragma handling routine.
- * ia64-c.c (ia64_hpux_handle_builtin_pragma): Ditto.
- (ia64_hpux_add_pragma_builtin) New subroutine used by above.
- If builtin pragma seen for math routine and C89 conformance is
- requested use different math function in order to set errno.
- * t-ia64 (ia64-c.o): Add new rule for new file.
-
-2002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.md ("movti"): Add Q->Q alternative.
- ("*movdi_64", "*movdi_31", "*movsi", "movhi", "movqi_64",
- "movqi", "*movdf_64", "*movdf_31", "*movsf"): Likewise.
-
- ("*movti_ss", "*movdi_ss", "*movsi_ss", "*movdf_ss",
- "*movsf_ss"): Remove.
-
-2002-09-03 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa32-regs.h (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P):
- Delete macros.
-
-2002-09-03 Arati Dikey <aratid@kpit.com>
-
- * h8300.c (asm_file_start): Corrected optimization comment.
-
-2002-09-03 Stan Shebs <shebs@apple.com>
-
- * c-lang.c (recognize_objc_keyword): Remove, no longer used.
- * c-tree.h (recognize_objc_keyword): Remove decl.
- * c-typeck.c (comp_target_types): Update a comment.
-
-2002-09-03 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (s390_decompose_address): Remove STRICT parameter
- and register validity checks.
- (general_s_operand): Adapt to s390_decompose_address interface change.
- (q_constraint): Likewise.
- (s390_expand_plus_operand): Likewise.
- (legitimiate_address_p): Likewise.
- (legitimate_la_operand_p): Likewise.
- (legitimize_la_operand): Likewise.
- (print_operand_address): Likewise.
- (print_operand): Likewise.
-
-Tue Sep 3 11:32:14 2002 Nicola Pero <n.pero@mi.flashnet.it>
-
- PR objc/5956:
- * objc/objc-act.c (build_typed_selector_reference): Fix typo which
- was causing the new selector never to match the existing ones
- (Patch by Alexander Malmberg <alexander@malmberg.org>).
-
-2002-09-03 Graham Stott <graham.stott@btinternet.com>
-
- * config/i386/i386.md ("femms"): Add "memory" attr "none".
-
-2002-09-03 Graham Stott <graham.stott@btinternet.com>
-
- * expr.c (expand_expr): Remove extraneous comment and code.
-
-2002-09-02 Nathan Sidwell <nathan@codesourcery.com>
-
- * stor-layout (finish_builtin_struct): Renamed and moved from c++
- frontend. Take chain of fields. Allow NULL alignment type.
- * tree.h (finish_builtin_struct): Declare.
-
-2002-09-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config/alpha/alpha.c config/alpha/alpha.h config/alpha/alpha.md
- config/alpha/elf.h config/alpha/unicosmk.h config/alpha/vms.h
- config/arc/arc.c config/arc/arc.h config/arm/aout.h
- config/arm/arm.c config/arm/arm.h config/arm/arm.md
- config/avr/avr.h config/d30v/d30v.h config/dbxcoff.h
- config/dbxelf.h config/elfos.h config/fr30/fr30.h config/frv/frv.h
- config/i386/i386.c config/i386/i386.md config/i386/sco5.h
- config/ia64/ia64.h config/ip2k/ip2k.h config/m68hc11/m68hc11.md
- config/m68k/hp320.h config/m68k/m68k.c config/m68k/m68k.md
- config/m68k/mot3300.h config/m68k/sgs.h config/m68k/tower-as.h
- config/m88k/m88k.c config/m88k/m88k.h config/mcore/mcore-pe.h
- config/mcore/mcore.c config/mips/mips.c config/mips/mips.h
- config/ns32k/ns32k.md config/pa/pa-linux.h config/pa/pa.c
- config/pa/pa.h config/pa/pa.md config/romp/romp.h
- config/rs6000/linux64.h config/rs6000/lynx.h
- config/rs6000/rs6000.c config/rs6000/sysv4.h config/rs6000/xcoff.h
- config/s390/s390.c config/s390/s390.md config/sh/sh.c
- config/sparc/sparc.c config/sparc/sysv4.h
- config/stormy16/stormy16.h dbxout.c defaults.h dwarf2out.c
- dwarfout.c except.c final.c varasm.c vmsdbgout.c: Replace
- ASM_OUTPUT_INTERNAL_LABEL macro with a call to the target hook.
-
- * doc/tm.texi: Update docs.
- * default.h (ASM_OUTPUT_INTERNAL_LABEL): Don't define.
- * system.h (ASM_OUTPUT_INTERNAL_LABEL): Poison.
-
-2002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (sdbout.o, insn-output.o): Depend on $(TARGET_H).
- * arc.c (arc_internal_label): New function.
- (TARGET_ASM_INTERNAL_LABEL): Set.
- * arc.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
- * arm.c (arm_internal_label): New function.
- (TARGET_ASM_INTERNAL_LABEL): Set.
- * arm.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
- * arm/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
- * i370.c (i370_internal_label): New function.
- (TARGET_ASM_INTERNAL_LABEL): Set.
- * i370.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
- * m68k/hp320.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
- * m68k.c (m68k_hp320_internal_label): New function.
- (TARGET_ASM_INTERNAL_LABEL): Set.
- * m88k.c (m88k_internal_label): New function.
- (TARGET_ASM_INTERNAL_LABEL): Set.
- * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
- * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Set to target hook.
- * genoutput.c (output_prologue): Include target.h in output file.
- * output.h (default_internal_label): Declare.
- * sdbout.c: Include target.h.
- * target-def.h (TARGET_ASM_INTERNAL_LABEL): Set and add to
- TARGET_ASM_OUT.
- * target.h (internal_label): Add to struct gcc_target.
- * varasm.c (default_internal_label): New function.
-
-2002-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Delete.
- * avr.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * c4x.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * cris.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * d30v.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * darwin.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * dsp16xx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * elfos.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * h8300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * i386/att.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * i386/bsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * i386/i386-coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * i386/lynx-ng.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * i386/lynx.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * i386/sco5.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * i960/i960.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k/3b1.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k/mot3300.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k/tower-as.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m88k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * mcore.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * mips.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * mmix-protos.h (mmix_asm_output_internal_label): Likewise.
- * mmix.c (mmix_asm_output_internal_label): Likewise.
- * mmix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * ns32k.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * pa.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * pdp11.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * romp.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * rs6000/xcoff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sh/coff.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sh/elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc/freebsd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc/linux.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc/linux64.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc/netbsd-elf.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc/pbd.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc/sol2.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * sparc/vxsim.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * stormy16.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * svr3.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * vax.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
-
- * defaults.h (ASM_OUTPUT_INTERNAL_LABEL): Define.
-
-2002-08-31 Richard Henderson <rth@redhat.com>
-
- * expr.c (block_move_libcall_safe_for_call_parm): Fix thinko.
-
-2002-08-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (pa_globalize_label): Add ATTRIBUTE_UNUSED to prototype.
-
-2002-08-30 Richard Henderson <rth@redhat.com>
-
- PR opt/7515
- * c-objc-common.c: Include target.h.
- (c_cannot_inline_tree_fn): Don't auto-inline functions that
- don't bind locally. Factor setting DECL_UNINLINABLE.
- * Makefile.in (c-objc-common.o): Update.
-
-2002-08-30 Janis Johnson <janis187@us.ibm.com>
-
- * doc/install.texi (Configuration, Building): Fix a typo and
- some formatting directives.
-
-2002-08-30 Paul Koning <pkoning@equallogic.com>
-
- * doc/c-tree.texi (RDIV_EXPR): Fix typo.
- * doc/rtl.texi (post_modify): Remove misplaced text, remove "not
- implemented" note.
- * doc/md.texi (IP2K): Move machine-specific constraints before MIPS
- for alphabetic order.
- * doc/tm.texi (TARGET_FLOAT_FORMAT): Update description for
- VAX_FLOAT_FORMAT. Remove reference to HOST_FLOAT_FORMAT.
- (VAX_HALFWORD_ORDER): Document.
- (LARGEST_EXPONENT_IS_NORMAL): Remove note about being only for
- IEEE float format.
- (TARGET_SCHED_ISSUE_RATE): Reword reference to MAX_DFA_ISSUE_RATE.
- (ASM_OUTPUT_LABEL_REF): Fix font.
- (CASE_VECTOR_SHORTEN_MODE): Ditto.
-
-2002-08-30 Denis Chertykov <denisc@overta.ru>
-
- * config/ip2k/ip2k.c (ip2k_set_compare): Remove all const_double
- stuff.
- (ip2k_gen_unsigned_comp_branch): Handle CONST_INT and
- CONST_DOUBLE constants.
-
-2002-08-30 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Move language-
- related defines to...
- (SUBTARGET_LANGUAGE_CPP_BUILTINS): ...here.
- * config/alpha/netbsd.h (SUBTARGET_LANGUAGE_CPP_BUILTINS): Redefine
- as a no-op.
-
-2002-08-30 Krister Walfridsson <cato@df.lth.se>
-
- * config/arm/arm.c (arm_asm_output_labelref): New function.
- * config/arm/arm.h (ASM_OUTPUT_LABELREF): Call arm_asm_output_labelref.
- * config/arm/arm-protos.h: Add prototype for arm_asm_output_labelref.
-
-2002-08-29 Rodney Brown <rbrown64@csc.com.au>
-
- * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual
- memory exhausted" workarounds.
-
-2002-08-30 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * diagnostic.c (fancy_abort): Don't repeat "internal error".
- * toplev.c (crash_signal): Likewise.
-
-Fri Aug 30 00:33:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
-
- * doc/cpp.texi (__NEXT_RUNTIME__): Extended documentation.
- * doc/invoke.texi (-fnext-runtime, -Wno-protocol, -Wselector):
- Extended, updated documentation.
- (-Wundeclared-selector): Documented.
-
-2002-08-29 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/chorus.h: Consistently define *_DEBUGGING_INFO with
- the value 1. Do not undef before defining.
- * config/darwin.h: Likewise.
- * config/dbx.h: Likewise.
- * config/dbxcoff.h: Likewise.
- * config/dbxelf.h: Likewise.
- * config/elfos.h: Likewise.
- * config/interix.h: Likewise.
- * config/lynx-ng.h: Likewise.
- * config/lynx.h: Likewise.
- * config/netware.h: Likewise.
- * config/psos.h: Likewise.
- * config/svr3.h: Likewise.
- * config/alpha/alpha.h: Likewise.
- * config/alpha/elf.h: Likewise.
- * config/alpha/vms.h: Likewise.
- * config/arc/arc.h: Likewise.
- * config/arm/aout.h: Likewise.
- * config/arm/coff.h: Likewise.
- * config/c4x/c4x.h: Likewise.
- * config/h8300/h8300.h: Likewise.
- * config/i386/cygwin.h: Likewise.
- * config/i386/djgpp.h: Likewise.
- * config/i386/gas.h: Likewise.
- * config/i386/gstabs.h: Likewise.
- * config/i386/i386-coff.h: Likewise.
- * config/i386/i386-interix.h: Likewise.
- * config/i386/sco5.h: Likewise.
- * config/i386/svr3dbx.h: Likewise.
- * config/i386/sysv3.h: Likewise.
- * config/i386/win32.h: Likewise.
- * config/i386/x86-64.h: Likewise.
- * config/i960/i960.h: Likewise.
- * config/ia64/ia64.h: Likewise.
- * config/ip2k/ip2k.h: Likewise.
- * config/m32r/m32r.h: Likewise.
- * config/m68k/3b1.h: Likewise.
- * config/m68k/3b1g.h: Likewise.
- * config/m68k/ccur-GAS.h: Likewise.
- * config/m68k/coff.h: Likewise.
- * config/m68k/hp2bsd.h: Likewise.
- * config/m68k/hp310g.h: Likewise.
- * config/m68k/hp320g.h: Likewise.
- * config/m68k/hp3bsd.h: Likewise.
- * config/m68k/hp3bsd44.h: Likewise.
- * config/m68k/linux-aout.h: Likewise.
- * config/m68k/m68k-aout.h: Likewise.
- * config/m68k/mot3300.h: Likewise.
- * config/m68k/netbsd.h: Likewise.
- * config/m68k/openbsd.h: Likewise.
- * config/m68k/pbb.h: Likewise.
- * config/m68k/plexus.h: Likewise.
- * config/m68k/sun2.h: Likewise.
- * config/m68k/sun3.h: Likewise.
- * config/m68k/tower-as.h: Likewise.
- * config/m68k/vxm68k.h: Likewise.
- * config/m88k/aout-dbx.h: Likewise.
- * config/m88k/m88k-aout.h: Likewise.
- * config/mcore/mcore-elf.h: Likewise.
- * config/mcore/mcore-pe.h: Likewise.
- * config/mips/elf.h: Likewise.
- * config/mips/elf64.h: Likewise.
- * config/mips/iris5gas.h: Likewise.
- * config/mips/iris6.h: Likewise.
- * config/mips/mips.h: Likewise.
- * config/mips/sni-gas.h: Likewise.
- * config/mmix/mmix.h: Likewise.
- * config/ns32k/netbsd.h: Likewise.
- * config/pa/pa64-hpux.h: Likewise.
- * config/romp/romp.h: Likewise.
- * config/rs6000/sysv4.h: Likewise.
- * config/rs6000/xcoff.h: Likewise.
- * config/sh/coff.h: Likewise.
- * config/sh/elf.h: Likewise.
- * config/sparc/linux64.h: Likewise.
- * config/sparc/liteelf.h: Likewise.
- * config/sparc/netbsd.h: Likewise.
- * config/sparc/openbsd.h: Likewise.
- * config/sparc/pbd.h: Likewise.
- * config/sparc/sp64-elf.h: Likewise.
- * config/sparc/sp86x-elf.h: Likewise.
- * config/sparc/sparc.h: Likewise.
- * config/vax/vax.h: Likewise.
- * config/vax/vaxv.h: Likewise.
-
-2002-08-29 "Dhananjay R. Deshpande" <dhananjayd@kpit.com>
-
- * h8300.c (shift_alg_hi): Various tweaks to improve performance
- of HImode shifts.
- (get_shift_alg): Corresponding changes.
-
-2002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * som.h (ALWAYS_STRIP_DOTDOT): Define to 1.
-
-2002-08-29 Richard Henderson <rth@redhat.com>
-
- * expr.h (enum block_op_methods): New.
- (emit_block_move): Update prototype.
- * expr.c (block_move_libcall_safe_for_call_parm): New.
- (emit_block_move_via_loop): New.
- (emit_block_move): Use them. New argument METHOD.
- (emit_push_insn): Always respect the given alignment.
- (expand_assignment): Update call to emit_block_move.
- (store_expr, store_field, expand_expr): Likewise.
- * builtins.c (expand_builtin_apply): Likewise.
- (expand_builtin_memcpy, expand_builtin_va_copy): Likewise.
- * function.c (expand_function_end): Likewise.
- * config/sh/sh.c (sh_initialize_trampoline): Likewise.
- * config/sparc/sparc.c (sparc_va_arg): Likewise.
- * calls.c (expand_call, emit_library_call_value_1): Likewise.
- (save_fixed_argument_area): Use emit_block_move with
- BLOCK_OP_CALL_PARM instead of move_by_pieces.
- (restore_fixed_argument_area): Likewise.
- (store_one_arg): Fix alignment parameter to emit_push_insn.
-
-2002-08-29 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * install.texi (hppa64-hp-hpux11*): Document installation procedure.
-
-2002-08-29 Catherine Moore <clm@redhat.com>
-
- * config/v850/v850.h (MULDI3_LIBCALL, UCMPDI2_LIBCALL, CMPDI2_LIBCALL,
- NEGDI2_LIBCALL, INIT_TARGET_OPTABS, MASK_STRICT_ALIGN): Define.
- (PREDICATE_CODES): Include new predicates.
- (RTX_COSTS): Handle UMOD and UDIV. Tune MULT for v850e.
- (TARGET_SWITCHES): Add strict-align.
- (TARGET_STRICT_ALIGN): New.
- (MASK_DEFAULT, STRICT_ALIGNMENT): Redefine.
- * config/v850/t-v850 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES):
- Define.
- (LIB1ASMFUNCS): Add v850_negdi2, v850_cmpdi2, v850_ucmpdi2,
- v850_muldi3.
- * config/v850/lib1funcs.asm (L_callt_save_r2_r29, L_return_r2_r29,
- L_callt_save_r2_r31, L_return_r2_r31,
- L_save_all_interrupt): Change addi to add.
- (L_save_interrupt, L_return_interrupt): Rework.
- (__return_r31): Correct .size directive.
- (mulsi3, divsi3, udivsi3, umodsi3, modsi3): Tune for v850e.
- (v850_negdi2, v850_cmpdi2, v850_ucmpdi2, v850_muldi3):
- New routines.
- * config/v850/v850.c (expand_prologue): Call
- gen_callt_save_interrupt, gen_callt_restore_all_interrupt,
- gen_callt_return_interrupt and gen_callt_save_all_interrupt.
- (reg_or_int9_operand): New predicate.
- (reg_or_const_operand): New routine.
- * config/v850/v850.md (return_interrupt): Changed from
- restore_interrupt.
- (callt_save_all_interrupt): Changed from save_all_interrupt_v850e.
- (callt_save_interrupt): Change save sequence.
- (callt_return_interrupt): New.
- (save_interrupt): Don't use runtime function for LONG_CALLS
- and TARGET_PROLOG_FUNCTION.
- (save_all_interrupt): Likewise.
- (mulsi3): Use new predicate.
- (moviscc): Disallow some combination of constants.
- Fix define_split for sasf insns, so that it will not generate bad
- code if operand0 and operand5 are the same.
- * config/v850/v850-protos.h: Prototype new predicates.
-
-2002-08-29 Zack Weinberg <zack@codesourcery.com>
-
- * config/rs6000/rs6000.c (processor_target_table): Add 405f.
- * config/rs6000/rs6000.h (ASM_CPU_SPEC): Likewise.
-
-2002-08-28 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-common.c (builtin_define_type_precision): New function.
- (cb_register_builtins): Use it. Define __WCHAR_UNSIGNED__ is
- wchar_t is unsigned in C++.
- * doc/cpp.texi (Common Predefined Macros): Document
- __WCHAR_UNSIGNED__, __CHAR_BIT__, __WCHAR_BIT__, __SHRT_BIT__,
- __INT_BIT__, __LONG_BIT__, __LONG_LONG_BIT__, __FLOAT_BIT__,
- __DOUBLE_BIT__, __LONG_DOUBLE_BIT__.
-
-2002-08-28 Sylvain Pion <pion@cs.nyu.edu>
-
- * doc/invoke.texi (-Wreorder): Remove remaining pieces from the generic
- section. Mention that it is enabled by -Wall.
- (-Wall): Mention that there can be language-specific warnings as well.
- (-Wctor-dtor-privacy): Mention that it is enabled by default.
- (-Wnon-virtual-dtor): Mention that it is enabled by -Wall.
-
-Wed Aug 28 15:35:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (calc_live_regs): Save FPSCR_REG in an interrupt handler
- if it is ever live.
-
- * sh.c (sh_handle_interrupt_handler_attribute): Reject interrupt_handler
- attribute for SHCOMPACT.
-
- * sh.h (OVERRIDE_OPTIONS): If align_function isn't set, set it
- appropriately.
- (FUNCTION_BOUNDARY): Specify only the minimum alignment required
- by the ABI.
-
- * sh.h (SH5_WOULD_BE_PARTIAL_NREGS): Also handle TImode case.
-
-2002-08-28 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config.gcc (mips*-*-netbsd*): Set target_cpu_default to
- "MASK_GAS|MASK_ABICALLS".
- * config/mips/netbsd.h (TARGET_ENDIAN_DEFAULT)
- (TARGET_DEFAULT): Remove.
- (MACHINE_TYPE): Undefine before defining.
- (DBX_DEBUGGING_INFO, PREFERRED_DEBUGGING_TYPE): Remove.
-
-2002-08-27 Mark Mitchell <mark@codesourcery.com>
-
- * c-common.c (warn_abi): New variable.
- * c-common.h (warn_abi): Likewise.
- * c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi.
- (c_common_decode_option): Handle it.
- * doc/invoke.texi: Document -Wabi.
-
-Tue Aug 27 23:03:52 2002 Nicola Pero <n.pero@mi.flashnet.it>
-
- * c-common.c (warn_undeclared_selector): New variable.
- * c-common.h (warn_undeclared_selector): Idem.
- * c-opts.c (c_common_decode_option): Set warn_undeclared_selector
- to on when -Wundeclared-selector is found.
- (COMMAND_LINE_OPTIONS): Added -Wundeclared-selector.
- * objc/objc-act.c (build_selector_expr): If
- warn_undeclared_selector is set, check that the selector has
- already been defined, and emit a warning if not.
-
-2002-08-27 Nick Clifton <nickc@redhat.com>
- Catherine Moore <clm@redhat.com>
- Jim Wilson <wilson@cygnus.com>
-
- * config.gcc: Add v850e-*-* target.
- Add --with-cpu= support for v850.
- * config/v850/lib1funcs.asm: Add v850e callt functions.
- * config/v850/v850.h: Add support for v850e target.
- * config/v850/v850.c: Add functions to support v850e target.
- * config/v850/v850-protos.h: Add prototypes for new functions in v850.c.
- * config/v850/v850.md: Add patterns for v850e instructions.
- * doc/invoke.texi: Document new v850e command line switches.
-
-Tue Aug 27 18:30:47 2002 J"orn Rennecke <joern.rennecke@superh.com>
- Aldy Hernandez <aldyh at redhat dot com>
-
- * doc/tm.texi: Applied numerous fixes to the automaton based
- scheduler descrition.
-
-Tue Aug 27 19:51:05 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (classify_argument): Handle variable sized objects.
-
-Tue Aug 27 19:18:16 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_expand_int_movcc): Fix RTL sharing problem
-
-Tue Aug 27 18:01:45 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * libgcc2.c (__bb_exit_func): Properly write the summarized statistics.
-
-Tue Aug 27 18:00:11 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (classify_argument): Properly compute word size of the analyzed object.
-
-Tue Aug 27 14:39:09 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (attribute type): Add types mt_group, fload, pcfload, fpul_gp,
- mac_gp ftrc_s and cwb. Add / Adjust definitions in individual insn
- accordingly.
- (attribute insn_class): Provide default definitions based on type.
- Remove all insn-specific settings.
- (various function units): Remove old SH4 scheduling.
- (branch_zero, dfp_comp, late_fp_use, any_fp_comp, any_int_load):
- New attributes. Set them where appropriate.
- (cpu unit FS): Don't define / use.
- (F3, load_store): New cpu units.
- (F01): New reservation.
- (all insn_reservations): Make dependent on sh4 pipeline model.
- Fix latencies.
- (nil, reg_mov, freg_mov, sh4_fpul_gp, sh4_call): New insn_reservations.
- (sh4_mac_gp, fp_arith_ftrc, arith3, arith3b): Likewise.
- (mt insn_reservation): Use type mt_group.
- (insn_reservation load_store): Split into sh4_load, sh4_load_si,
- sh4_fload and sh4_store.
- (insn_reservation branch_zero and branch): Replace with sh4_branch.
- (insn_reservation branch_far): Replace with sh4_return.
- (insn_reservation return_from_exp): Rename to:
- (sh4_return_from_exp). Change to be just d_lock*5.
- (insn_reservation lds_to_pr): Rename to:
- (sh4_lds_to_pr). Change to be just d_lock*2.
- (insn_reservation ldsmem_to_pr, sts_from_pr): Change to be just
- d_lock*2.
- (insn_reservation prload_mem): Rename to:
- (sh4_prstore_mem). Change to d_lock*2,nothing,memory.
- (insn_reservation fpscr_store): Rename to:
- (fpscr_load). Change to d_lock,nothing,F1*3.
- (insn_reservation fpscr_store_mem): Rename to:
- (fpscr_load_mem). Change to d_lock,nothing,(F1+memory),F1*2.
- (insn_reservation multi): Change to
- d_lock,(d_lock+f1_1),(f1_1|f1_2)*3,F2.
- (insn_reservation fp_arith): Change to issue,F01,F2.
- (insn_reservation fp_div: Change to issue,F01+F3,F2+F3,F3*7,F1+F3,F2.
- (insn_reservation dp_float): Change to issue,F01,F1+F2,F2.
- (insn_reservation fp_double_arith): Change to issue,F01,F1+F2,fpu*4,F2.
- (insn_reservation fp_double_cmp): Change to
- d_lock,(d_lock+F01),F1+F2,F2.
- (insn_reservation dp_div): Change to
- issue,F01+F3,F1+F2+F3,F2+F3,F3*16,F1+F3,(fpu+F3)*2,F2.
- * sh.c (flow_dependent_p, flow_dependent_p_1): New functions.
- (sh_adjust_cost, SHcompact): Differentiate between different
- kinds of dependencies. Drop factor of ten for superscalar.
- Use new instruction types. Add new exception rules.
-
- * sh.md (mulhisi3, umulhisi3: Add a REG_EQUAL note.
-
- * sh.md (mperm_w): Add DONE.
-
-2002-08-27 David Edelsohn <edelsohn@gnu.org>
-
- * longlong.h: Import current PowerPC defintion from GMP-4.1.
-
- * config/rs6000/rs6000.h (MIN_UNITS_PER_WORD): Add IN_LIBGCC2 case.
-
- * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Undef before define.
-
-Tue Aug 27 13:53:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (MAX_FIXED_MODE_SIZE): Define.
-
-2002-08-27 Gabriel Dos Reis <gdr@soliton.integrable-solutions.net>
-
- * doc/cpp.texi (Common Predefined Macros): Don't mess with table
- delimiter.
-
-2002-08-27 Gabriel Dos Reis <gdr@integrable-solutions.net>
-
- * c-common.c (cpp_define_data_format): New function.
- (cb_register_builtins): Call it.
-
- * doc/cpp.texi (Common Predefined Macros): Document
- __TARGET_BITS_ORDER__, __TARGET_BYTES_ORDER__,
- __TARGET_INT_WORDS_ORDER__, __TARGET_FLOAT_WORDS_ORDER__,
- __TARGET_FLOAT_FORMAT__, __TARGET_USES_VAX_F_FLOAT__,
- __TARGET_USES_VAX_D_FLOAT__, __TARGET_USES_VAX_G_FLOAT__,
- __TARGET_USES_VAX_H_FLOAT__.
-
-2002-08-26 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (get_super_receiver): If inside a class method
- of a category, cast the receiver to 'id' before accessing the 'isa'
- field so that <objc/objc-class.h> is not needed. For NeXT runtime.
-
-2002-08-26 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390-protos.h (s390_function_prologue,
- s390_function_epilogue): Remove.
- config/s390/s390.c (s390_function_prologue, s390_function_epilogue,
- TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove.
-
- config/s390/s390.c (s390_machine_dependent_recorg): New function.
- config/s390/s390-protos.h (s390_machine_dependent_reorg): Declare it.
- config/s390/s390.h (MACHINE_DEPENDENT_REORG): Call it.
- config/s390/s390.c (s390_split_branches, s390_chunkify_pool): Adapt
- to being called from MACHINE_DEPENDENT_REORG. Update regs_ever_live.
-
- config/s390/s390.c (s390_frame_info): Inline save_fprs_p. Always
- assume BASE_REGISTER and RETURN_REGNUM need to be saved.
- (s390_emit_prologue): Assume RETURN_REGNUM to be saved iff
- function is not a leaf function. Use save_gprs and restore_gprs.
- (s390_emit_epilogue): Likewise.
- (save_gprs, restore_gprs): New functions.
- (struct s390_frame): Remove return_reg_saved_p member.
- (save_fprs_p): Remove.
- (s390_optimize_prolog): New function.
- (s390_legitimate_reload_constant): Remove now unnecessary check.
-
- (s390_function_count): Remove.
- (s390_output_symbolic_const): Replace s390_function_count by
- current_function_funcdef_no.
- (s390_output_constant_pool): Likewise.
-
- (legitimize_pic_address): Use regs_ever_live to track PIC register
- instead of current_function_uses_pic_offset_table.
- (s390_emit_prologue): Likewise.
- config/s390/s390.md ("call", "call_value"): Likewise.
-
-2002-08-26 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (find_opt): Don't complain about wrong languages
- here. Return exact matches even for wrong language.
- (c_common_decode_option): Complain about wrong languages
- here.
-
-2002-08-24 Stuart Hastings <stuart@apple.com>
-
- * function.h (struct function): Add flag
- all_throwers_are_sibcalls.
- * except.c (set_nothrow_function_flags): Replaces
- nothrow_function_p. Set new flag.
- * except.h (set_nothrow_function_flags): Replaces
- nothrow_function_p.
- * dwarf2out.c (struct dw_fde_struct): Add flag
- all_throwers_are_sibcalls.
- (output_call_frame_info): Test it.
- (dwarf2out_begin_prologue) Propagate it from cfun to
- dw_fde_struct.
- * toplev.c (rest_of_compilation): Update calls to
- nothrow_function_p.
-
-2002-08-23 Zack Weinberg <zack@codesourcery.com>
-
- * ggc-page.c (compute_inverse): Short circuit calculation for
- object sizes larger than half a page.
-
-2002-08-23 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_elf_select_section): Treat
- DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly
- default.
- (rs6000_elf_unique_section): Likewise.
-
-2002-08-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * ns32k.c (ns32k_globalize_label): Delete.
- * ns32k.h (ASM_OUTPUT_LABEL, TARGET_ASM_GLOBALIZE_LABEL): Delete.
-
-2002-08-23 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (output_mi_thunk): Don't determine insns
- for loading delta with num_insns_constant_wide. Calculate
- delta_low, delta_high without using a conditional.
-
-2002-08-22 Jason Merrill <jason@redhat.com>
-
- * c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR.
- * c-common.def: Adjust.
- * c-dump.c (c_dump_tree): Adjust.
- * c-semantics.c (genrtl_return_stmt): Adjust.
- * c-pretty-print.c (pp_c_statement): Adjust.
- * tree-inline.c (copy_body_r): Adjust.
-
-2002-08-22 Zack Weinberg <zack@codesourcery.com>
-
- * ggc-page.c: Avoid division in ggc_set_mark.
- (DIV_MULT, DIV_SHIFT, OFFSET_TO_BIT, inverse_table,
- compute_inverse): New.
- (ggc_set_mark, ggc_marked_p): Use OFFSET_TO_BIT.
- (init_ggc): Initialize inverse_table.
-
-2002-08-22 Tom Tromey <tromey@redhat.com>
-
- * doc/install.texi (Configuration): Document --datadir.
-
-2002-08-22 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.in ($(BUILD_PREFIX_1)varray.o): Depend on $(GGC_H).
-
-2002-08-22 Hans-Peter Nilsson <hp@bitrange.com>
-
- * gengtype-lex.l (ID): Allow underscore as first character.
-
-2002-08-21 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_xcoff_asm_globalize_label): New
- function.
- (rs6000_xcoff_asm_named_section): Rename.
- * config/rs6000/xcoff.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
-
-2002-08-21 Tom Tromey <tromey@redhat.com>
-
- For PR java/6005 and PR java/7611:
- * fold-const.c (fold_truthop): Use can_use_bit_fields_p.
- (fold): Likewise.
- * langhooks.c (lhd_can_use_bit_fields_p): New function.
- * langhooks-def.h (lhd_can_use_bit_fields_p): Declare.
- (LANG_HOOKS_CAN_USE_BIT_FIELDS_P): New define.
- (LANG_HOOKS_INITIALIZER): Use it.
- * langhooks.h (struct lang_hooks) [can_use_bit_fields_p]: New
- field.
-
-2002-08-21 Stan Shebs <shebs@apple.com>
-
- * tree.c (finish_vector_type): Fix a typo in a comment.
- * Makefile.in: Fix "the the" stutters in comments.
- * genautomata.c: Ditto.
- * ifcvt.c: Ditto.
- * regrename.c: Ditto.
- * config/alpha/alpha.c: Ditto.
- * config/alpha/vms-crt0-64.c: Ditto.
- * config/alpha/vms-crt0.c: Ditto.
- * config/alpha/vms-psxcrt0-64.c: Ditto.
- * config/alpha/vms-psxcrt0.c: Ditto.
- * config/d30v/d30v.h: Ditto.
- * config/fr30/fr30.h: Ditto.
- * config/rs6000/rs6000.c: Ditto.
- * config/stormy16/stormy16.h: Ditto.
- * doc/md.texi: Ditto.
-
-2002-08-21 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * cppinit.c (remove_dup_nonsys_dirs): Fix warning and return value.
-
-2002-08-21 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-decl.c (grokdeclarator): Make invalid combinations with long,
- short, signed or unsigned into hard errors. Fixes PR c/4319.
- Also make duplicate modifiers such as "short short" into hard
- errors.
-
-2002-08-21 Andrew Pinski <pinskia@physics.uc.edu>
- Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * doc/tm.texi (TARGET_ASM_GLOBALIZE_LABEL): Move '@end deftypefn'
- to the actual end. Add '@end table' and '@table @code'.
-
-2002-08-20 Geoffrey Keating <geoffk@redhat.com>
-
- * doc/tm.texi (Label Output): Add missing '@end deftypefn'.
-
- * unroll.c (biv_total_increment): Don't try to compute the total
- increment for FP BIVs.
-
-2002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.c (TARGET_ASM_GLOBALIZE_LABEL): Define for unicosmk.
- * alpha/elf.h (ASM_OUTPUT_EXTERNAL_LIBCALL,
- ASM_OUTPUT_ALIGNED_BSS): Use target hook.
- * alpha/osf.h (ASM_OUTPUT_WEAK_ALIAS): Likewise.
- * alpha/unicosmk.h (ASM_GLOBALIZE_LABEL): Delete.
- * arm/aof.h (ASM_GLOBALIZE_LABEL): Likewise.
- (GLOBAL_ASM_OP): Define.
- * arm.c (aof_globalize_label): New function.
- (TARGET_ASM_GLOBALIZE_LABEL): Define for AOF.
- * arm/unknown-elf.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
- * c4x.c (c4x_globalize_label): New function.
- (TARGET_ASM_GLOBALIZE_LABEL): Define for c4x.
- * c4x.h (ASM_GLOBALIZE_LABEL): Delete.
- (GLOBAL_ASM_OP): Define.
- * cris/aout.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
- * darwin-protos.h (darwin_globalize_label): Declare.
- * darwin.c (darwin_globalize_label): New function.
- * darwin.h (ASM_DECLARE_CLASS_REFERENCE): Use target hook.
- (ASM_GLOBALIZE_LABEL): Delete.
- (GLOBAL_ASM_OP, TARGET_ASM_GLOBALIZE_LABEL): Define.
- * dsp16xx.c (asm_output_common): Use target hook.
- * elfos.h (ASM_OUTPUT_EXTERNAL_LIBCALL): Likewise.
- * frv.h (ASM_GLOBALIZE_LABEL): Delete.
- (GLOBAL_ASM_OP): Define.
- * i370.c (i370_globalize_label): New function.
- (TARGET_ASM_GLOBALIZE_LABEL): Define for i370.
- * i370.h (ASM_GLOBALIZE_LABEL): Delete.
- * i386.c (ix86_asm_file_end): Use target hook.
- * i386/sco5.h (ASM_GLOBALIZE_LABEL): Don't undef.
- (ASM_OUTPUT_EXTERNAL_LIBCALL): Use target hook.
- * ia64.c (ia64_asm_output_external): Likewise.
- * ia64/sysv4.h: Update comment.
- * m32r.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
- * mips/elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
- * mips/iris5.h (ASM_OUTPUT_WEAK_ALIAS): Use target hook.
- * mips/linux.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
- * mips.h (ASM_OUTPUT_ALIGNED_DECL_COMMON): Use target hook.
- * mmix-protos.h (mmix_asm_globalize_label): Delete.
- * mmix.c (mmix_asm_globalize_label): Likewise.
- * mmix.h (ASM_GLOBALIZE_LABEL): Likewise.
- (GLOBAL_ASM_OP): Define.
- * ns32k.c (ns32k_globalize_label): New function.
- * ns32k.h (TARGET_ASM_GLOBALIZE_LABEL): Define for ns32k.
- (ASM_GLOBALIZE_LABEL): Delete.
- * pa/pa-linux.h (ASM_GLOBALIZE_LABEL): Don't undef.
- (TARGET_ASM_GLOBALIZE_LABEL): Undefine.
- * pa.c (pa_globalize_label): New function.
- * pa.h (ASM_GLOBALIZE_LABEL): Delete.
- (TARGET_ASM_GLOBALIZE_LABEL): Define for pa.
- * rs6000/darwin.h (ASM_GLOBALIZE_LABEL): Delete.
- (GLOBAL_ASM_OP): Define.
- (TARGET_ASM_GLOBALIZE_LABEL): Undef.
- * rs6000/sysv4.h (ASM_OUTPUT_ALIGNED_BSS): Use target hook.
- * rs6000/xcoff.h (ASM_GLOBALIZE_LABEL): Delete.
- (GLOBAL_ASM_OP): Define.
- * v850.c (v850_output_aligned_bss): Use target hook.
- * vax.c (vms_globalize_label): New function.
- (TARGET_ASM_GLOBALIZE_LABEL): Define for vms.
- * vax/vms.h (ASM_GLOBALIZE_LABEL): Delete.
- (GLOBAL_ASM_OP): Define.
- * defaults.h (ASM_GLOBALIZE_LABEL): Delete.
- * doc/tm.texi: Update docs.
- * dwarf2out.c (default_eh_frame_section, output_die_symbol): Use
- target hook.
- * final.c (output_alternate_entry_point): Likewise.
- * hooks.c (hook_FILEptr_constcharptr_void): New function.
- * hooks.h (hook_FILEptr_constcharptr_void): Declare.
- * output.h (assemble_global): Delete.
- (default_globalize_label): Declare.
- * system.h (ASM_GLOBALIZE_LABEL): Poison.
- * target-def.h (TARGET_ASM_GLOBALIZE_LABEL): Define.
- (TARGET_ASM_OUT): Add TARGET_ASM_GLOBALIZE_LABEL.
- * target.h (gcc_target): Add globalize_label member.
- * varasm.c (asm_output_bss, asm_output_aligned_bss,
- globalize_decl): Use target hook.
- (assemble_global): Delete.
- (default_globalize_label): New function.
-
-2002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * dsp16xx.h (dsp16xx_umulhi3_libcall): Delete.
-
-2002-08-20 Devang Patel <dpatel@apple.com>
- * tree.c (get_qualified_type): Add TYPE_CONTEXT check.
-
-2002-08-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * arc.c (output_shift): Use stdio instead of asm_fprintf.
- * arm.c (thumb_output_function_prologue): Likewise.
- * avr.c (print_operand): Likewise.
- * c4x.c (c4x_print_operand): Likewise.
- * c4x.h (ASM_OUTPUT_INTERNAL_LABEL, TRAMPOLINE_TEMPLATE,
- ASM_OUTPUT_REG_PUSH, ASM_OUTPUT_REG_POP): Likewise.
- * cris.c (cris_target_asm_function_prologue,
- cris_asm_output_mi_thunk): Likewise.
- * h8300.c (print_operand): Likewise.
- * h8300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
- * ip2k.c (print_operand): Likewise. Fix format specifier.
- * m68hc11.c (asm_print_register, print_operand,
- print_operand_address): Use stdio instead of asm_fprintf.
- (print_operand_address): Fix format specifier.
- * m68hc11.h (FUNCTION_PROFILER, ASM_OUTPUT_ADDR_DIFF_ELT,
- ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ALIGN): Use stdio instead of
- asm_fprintf.
- * m68k/amix.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k/atari.h (ASM_OUTPUT_INTERNAL_LABEL): Likewise.
- * m68k.c (m68k_output_function_prologue,
- m68k_output_function_epilogue, print_operand): Likewise.
- * mmix.c (mmix_asm_output_mi_thunk, mmix_asm_weaken_label):
- Likewise. Fix format specifier.
- * mn10200.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
- * mn10300.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
- * v850.h (ASM_OUTPUT_ADDR_VEC_ELT): Likewise.
-
-2002-08-15 Eric Christopher <echristo@redhat.com>
- Jeff Knaggs <jknaggs@redhat.com>
-
- * config.gcc (mipsisa64sr71k-elf): New target.
- * config/mips/sr71k.md: New file.
- * config/mips/mips.md: Use it.
- (rot*): Add sr71k specifics.
- * config/mips/t-sr71k: New file.
- * config/mips/mips.h (sr71k): New cpu.
- (TARGET_SR71K): Use it.
- (TUNE_SR71K): Ditto.
- (GENERATE_BRANCHLIKELY): Ditto.
- (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC, ISA_HAS_MACC,
- ISA_HAS_ROTR_SIISA_HAS_ROTR_DI): Ditto.
- * config/mips/mips.c (sr71k): New cpu.
- (mips_use_dfa_pipeline_interface): Use.
-
-2002-08-15 Eric Christopher <echristo@redhat.com>
- Richard Sandiford <rsandifo@redhat.com>
- Aldy Hernandez <aldyh@redhat.com>
- Graham Stott <grahams@redhat.com>
- Michael Meissner <meissner@redhat.com>
- Gavin Romig-Koch <gavin@redhat.com>
- Ken Raeburn <raeburn@cygnus.com>
- Alexandre Oliva <aoliva@redhat.com>
-
- * config.gcc (mips64vr-elf): New target.
- * config/mips/5400.md: New file.
- * config/mips/5500.md: Ditto.
- * config/mips/mips.md: Use them.
- (frsqrt): New.
- * config/mips/mips.c (vr4111, vr4121, vr4320, vr5400, vr5500): New
- cpus.
- (mips_issue_rate): Use them.
- (mips_use_dfa_pipeline_interface): New function. Use for 5400 and 5500.
- (TARGET_SCHEDUSE_DFA_PIPELINE_INTERFACE): Define. Use above.
- * config/mips/mips.h (vr4111, vr4121, vr4320, vr5400, vr5500): New
- cpus.
- (TARGET_MIPSx): Use them.
- (TUNE_MIPSx): Ditto.
- (GETNATE_MULT3_SI): Ditto.
- (ISA_HAS_BRANCHLIKELY): Ditto.
- (ISA_HAS_CONDMOVE): Ditto.
- (ISA_HAS_NMADD_NMSUB): Ditto.
- (ISA_HAS_MULHI): New. Ditto.
- (ISA_HAS_MULS): Ditto.
- (ISA_HAS_MSAC): Ditto.
- (ISA_HAS_MACC): Ditto.
- (ISA_HAS_ROTR_SI): Ditto.
- (ISA_HAS_ROTR_DI): Ditto.
- (RTX_COSTS): Use.
-
-2002-08-20 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * cppinit.c (remove_dup_dir): Add head_ptr argument to handle removal
- at head.
- (remove_dup_nonsys_dirs): New function.
- (remove_dup_dirs): Change argument head to head_ptr. Remove warnings.
- (merge_include_chains): Remove non-system include directories from
- quote and bracket include chains when they duplicate equivalent system
- directories.
- * doc/cpp.texi (-I): Update.
- * doc/cppopts.texi (-I): Update.
- * doc/install.texi (--with-local-prefix): Further document usage of
- this option.
- * doc/invoke.texi (-I): Update.
-
-2002-08-20 Richard Henderson <rth@redhat.com>
-
- * expr.c (TARGET_MEM_FUNCTIONS): Transform to boolean.
- (emit_block_move): Split out subroutines.
- (emit_block_move_via_movstr): New.
- (emit_block_move_via_libcall): New. Emit bcopy via normal call also.
- (emit_block_move_libcall_fn): New. Construct function prototype for
- bcopy as well.
- (clear_storage): Split out subroutines.
- (clear_storage_via_clrstr): New.
- (clear_storage_via_libcall): New. Emit bzero as a normal call also.
- (clear_storage_libcall_fn): New. Construct function prototype for
- bzero as well.
- (emit_push_insn): Use emit_block_move.
- (expand_assignment): Booleanize TARGET_MEM_FUNCTIONS.
- (store_constructor): Likewise.
-
-2002-08-19 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (building_objc_message_expr): Rename to
- current_objc_message_selector.
-
-2002-08-19 Ziemowit Laski <zlaski@apple.com>
-
- * objc/objc-act.c (build_ivar_chain): Remove.
- (objc_copy_list): Likewise.
- (get_class_ivars): Inline call to removed build_ivar_chain
- function. Save off a clean copy of ivars in the CLASS_OWN_IVARS
- slot; use that slot (rather than CLASS_IVARS) when accessing
- ivars for base classes. Call copy_list and chainon instead of
- objc_copy_list.
- (build_private_template): Call get_class_ivars instead of
- build_ivar_chain.
- (start_class): Allocate room for the CLASS_OWN_IVARS slot.
- (continue_class): Call get_class_ivars instead of
- build_ivar_chain.
- (encode_field_decl): Check for DECL_BIT_FIELD_TYPE instead
- of DECL_BIT_FIELD (which may have been cleared).
- * objc/objc-act.h (CLASS_OWN_IVARS): New accessor macro.
-
-2002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * genautomata.c (output_translate_vect, output_state_ainsn_table,
- output_min_issue_delay_table): Mark variable with ATTRIBUTE_UNUSED
- in output file.
- (output_internal_min_issue_delay_func): Initialize variable in
- output file.
-
-2002-08-19 Alexandre Oliva <aoliva@redhat.com>
-
- * Makefile.in (GCC_FOR_TARGET): Prepend STAGE_CC_WRAPPER.
- (stage2_build, stage3_build, stage4_build): Likewise, to CC.
-
-2002-08-19 Geoffrey Keating <geoffk@redhat.com>
- Steve Ellcey <sje@cup.hp.com>
-
- * machmode.h (SCALAR_INT_MODE_P): New macro to test for
- scaler integer mode (MODE_INT or MODE_PARTIAL_INT).
- * explow.c (trunc_int_for_mode): Abort when the mode is not
- a scaler integer mode.
- * combine.c (expand_compound_operation): Don't expand Vector
- or Complex modes into shifts.
- (expand_field_assignment): Don't do bitwise arithmatic and
- shifts on Vector or Complex modes.
- (simplify_comparison): Don't call trunc_int_for_mode
- for VOIDmode.
- * recog.c (general_operand): Likewise.
- (immediate_operand): Likewise.
- (nonmemory_operand): Likewise.
-
-2002-08-19 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.c (rs6000_emit_set_const): Inline
- multi-instruction SImode constant. Add REG_EQUAL note.
- * config/rs6000/rs6000.md (movsi splitter): Use
- rs6000_emit_set_const.
-
-2002-08-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * tree-inline.c (initialize_inlined_parameters): Wrap variable in
- the macro test controlling its use.
-
-2002-08-18 H.J. Lu (hjl@gnu.org)
-
- * config.gcc (*-*-linux*): Set extra_parts="crtbegin.o
- crtbeginS.o crtbeginT.o crtend.o crtendS.o", gas=yes and
- gnu_ld=yes.
- (alpha*-*-linux*, cris-*-linux*, i370-*-linux*,
- i[34567]86-*-linux*, x86_64-*-linux*, mips*-*-linux*,
- s390-*-linux*, s390x-*-linux*, sparc-*-linux*, sparc64-*-linux*,
- xtensa-*-linux*): Remove setting extra_parts, gas, and gnu_ld
- here.
- (cris-*-linux*): Remove setting thread_file here.
-
-2002-08-18 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/7602
- * cppinit.c (path_include): Treat the system environment
- variables as being cxx_aware.
-
-2002-08-17 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * c-decl.c (flexible_array_type_p): New function.
- (grokdeclarator, finish_struct): Use it.
- * doc/extend.texi: Document constraints on use of structures with
- flexible array members.
-
-2002-08-17 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/t-coff, config/mips/t-elf, config/mips/t-isa3264,
- config/mips/t-r3900 (MULTILIB_MATCHES): Define.
- * config/mips/mips.h (ASM_SPEC): Use %(endian_spec).
-
-2002-08-16 Stan Shebs <shebs@apple.com>
-
- * c-common.c (cb_register_builds): Define __NEXT_RUNTIME__
- for ObjC with -fnext-runtime.
- * doc/cpp.texi: Document it.
-
-2002-08-16 Janis Johnson <janis187@us.ibm.com>
-
- * doc/install.texi (Final installation): Replace links to individual
- build status pages with a link to a common page that lists them all.
-
-2002-08-16 Sylvain Pion <pion@cs.nyu.edu>
-
- * doc/invoke.texi: Fix typo.
-
-2002-08-16 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi (*-ibm-aix*): Explain AIX shared object versioning.
-
-2002-08-16 Andrew Haley <aph@redhat.com>
-
- * tree-inline.c: Add includes for Java inliner.
- (remap_decl): Don't handle anonymous types for Java.
- (remap_block): Add handling for Java trees.
- (copy_scope_stmt): Conditionalize for non-Java use only.
- (copy_body_r): Handle Java trees. Add handling for
- LABELED_BLOCK_EXPR, EXIT_BLOCK_EXPR, Java blocks.
- (initialize_inlined_parameters): Handle Java trees.
- (declare_return_variable): Likewise.
- (expand_call_inline): Handle Java trees.
- (walk_tree): Likewise.
- (copy_tree_r): Don't handle SCOPE_STMTs for Java.
- (add_stmt_to_compound): New function.
-
-2002-08-15 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (LOOSE_WARN): Remove -fno-common.
- (NOCOMMON_FLAG): New substitution point.
- (GCC_WARN_CFLAGS): Include it.
- * configure.in (ac_checking): Set nocommon_flag.
- (nocommon_flag): New substitution point.
-
-2002-08-15 Alexandre Oliva <aoliva@redhat.com>
-
- * c-tree.h (skip_evaluation): Move declaration...
- * c-common.h: ... here.
- * c-typeck.c (build_external_ref): Don't assemble_external nor
- mark a tree as used if skip_evaluation is set.
- * c-parse.in (typeof): New non-terminal to set skip_evaluation
- around TYPEOF.
- (typespec_nonreserved_nonattr): Use it.
-
-2002-08-15 Douglas B Rupp <rupp@gnat.com>
-
- * dbxout.c (dbx_debug_hooks): Update end_prologue, end_epilogue.
- (xcoff_debug_hooks): Update end_prologue.
- * debug.c (do_nothing_debug_hooks): Update end_prologue, end_epilogue.
- * debug.h (end_prologue): Add file arg.
- (end_epilogue): Add line and file args.
- (dwarf2out_end_epilogue): Add line and file args.
- (vmsdbgout_after_prologue): Remove.
- * dwarf2out.c (dwarf2out_end_epilogue): Add line and file args.
- (dwarf2_debug_hooks): Update end_prologue.
- * dwarfout.c (dwarfout_end_epilogue): Add line and file args.
- (dwarfout_end_prologue): Add file arg.
- * final.c (vmsdbgout_after_prologue): Remove
- (final_end_function): Update end_epilogue call.
- (final_scan_insn): Update end_prologue call.
- * sdbout.c (sdbout_end_epilogue): Add line and file args.
- (sdbout_end_prologue): Add file arg.
- (sdb_debug_hooks): Update end_prologue.
- (sdb_begin_prologue): Update sdbout_end_prologue call.
- * vmsdbgout.c (vmsdbg_debug_hooks): Add vmsdbgout_end_prologue,
- vmsdbgout_end_function.
- (vmsdbgout_end_prologue): New function renamed from
- vmsdbgout_after_prologue. Call vmsdbgout_source_line.
- (vmsdbgout_end_function): New function.
- (vmsdbgout_end_epilogue): Add line and file args. Call
- vmsdbgout_source_line.
- (write_pclines): Write only valid line numbers.
- (write_srccorr): Don't write source correlation records if 0 lines.
- * xcoffout.c (xcoffout_end_epilogue): Add line and file args.
-
-2002-08-15 Steve Ellcey <sje@cup.hp.com>
-
- * gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX.
- (_Unwind_Internal_Ptr): 32 bit version for use in
- read_encoded_value_with_base.
- * gcc/unwind-pe.h (read_encoded_value_with_base): Use
- _Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the
- right size.
-
-2002-08-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * loop.c (scan_loop, move_movables, count_one_set): Cast to avoid
- signed/unsigned warnings.
-
- * regclass.c (init_reg_sets_1, choose_hard_reg_mode,
- record_reg_classes): Likewise.
-
- * reload.c (reload_inner_reg_of_subreg, push_reload,
- find_reloads_address_1): Likewise.
-
-2002-08-15 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (output_mi_thunk): Return to function section on
- TARGET_ELF.
-
- * rs6000-c.c (rs6000_cpu_cpp_builtins): Define __PPC405__ if PPC405.
-
-2002-08-15 Ulrich Weigand <uweigand@de.ibm.com>
-
- * config/s390/s390.c (legitimize_address): Optimize loading
- of large displacements.
-
-2002-08-14 Douglas B Rupp <rupp@gnat.com>
-
- * config/alpha/alpha-protos.h: Update.
-
- * config/alpha/alpha.c: (LINKAGE_SYMBOL_REF_P): New macro.
- (alpha_legitimate_address_p): Test LINKAGE_SYMBOL_REF_P.
- (alpha_linkage_symbol_p): New static function.
- (print_operand_address): Print linkage operand.
-
- (alpha_funcs_num, alpha_funcs_tree, alpha_links_tree): New static
- variables.
- (reloc_kind): New enum.
- (struct alpha_funcs): New struct.
- (struct alpha_links): Add reloc_kind field. Rename links_kind field.
-
- (alpha_need_linkage): Rewrite.
- (alpha_use_linkage): New global function.
- (alpha_write_linkage): Rewrite and make static.
- (alpha_write_one_linkage): Rewrite
-
- (alpha_start_function): Remove procedure descriptor output.
- (alpha_end_function): Write linkages at end of each function.
-
- * config/alpha/alpha.md (call_vms, call_value_vms): Rewrite.
- (call_vms_1, call_value_vms_1): Rewrite.
-
- * config/alpha/vms.h (ASM_FILE_END): Remove.
-
-2002-08-14 Richard Henderson <rth@redhat.com>
-
- * ggc-page.c (RTL_SIZE): New.
- (extra_order_size_table): Add specializations for 2 and 10 rtl slots.
- * rtl.def (BARRIER, NOTE): Pad to 9 slots.
-
-2002-08-14 Richard Henderson <rth@redhat.com>
-
- * calls.c: Include target.h.
- * Makefile.in (calls.o): Update.
-
- * config/alpha/alpha.c (alpha_end_function): Use targetm.binds_local_p.
- * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Likewise.
-
-2002-08-14 Richard Henderson <rth@redhat.com>
-
- * Makefile.in (LOOSE_WARN): Add -fno-common.
- * c-common.h (constant_string_class_name): Add missing extern.
-
-2002-08-15 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/7358
- * c-opts.c (check_deps_environment_vars): Ignore main file
- for SUNPRO_DEPENDENCIES.
- * cppfiles.c (stack_include_file): Ignore main file if
- appropriate.
- * cpplib.h (struct cpp_options): New member in deps.
- * doc/cppenv.texi: Update.
-
-2002-08-14 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/7526
- * cpplib.c (run_directive): Kludge so _Pragma dependency works.
-
-2002-08-14 Nathan Sidwell <nathan@codesourcery.com>
-
- * doc/invoke.texi (-a): Remove documentation.
- (-fprofile-arcs): Remove reference to -a, -ax options.
- * doc/gcov.texi (Gcov Data Files): Data might be merged.
-
-2002-08-14 Gabriel Dos Reis <gdr@nerim.net>
-
- Fix PR/7566
- * c-semantics.c (genrtl_case_label): Don't (mis)use
- warning_with_decl.
-
-2002-08-14 Dale Johannesen <dalej@apple.com>
-
- * explow.c (emit_stack_restore): Emit memory clobbers
- preceding the stack pop, to prevent the scheduler from
- moving refs to variable arrays below this pop.
- * reload1.c (reload): Preserve these clobbers for sched2.
- * doc/rtl.texi: Document clobber (mem:BLK (scratch)).
-
-2002-08-14 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (c_common_post_options): Correct test.
-
-2002-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * m88k.h (ASM_OUTPUT_SOURCE_FILENAME): Fix incorrect argument
- order in call to fprintf.
-
-2002-08-14 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/sparc/sol2.h (SUBTARGET_EXTRA_SPECS): Define.
-
-2002-08-14 Ulrich Weigand <uweigand@de.ibm.com>
-
- * reload.c (find_reloads): Handle constraint letters marked by
- EXTRA_ADDRESS_CONSTRAINT and EXTRA_MEMORY_CONSTRAINT.
- (alternative_allows_memconst): Likewise.
- * reload1.c (maybe_fix_stack_asms): Likewise.
- * recog.c (asm_operand_ok, preprocess_constraints,
- constrain_operands): Likewise.
- * regclass.c (record_operand_costs, record_reg_classes): Likewise.
- * local-alloc.c (block_alloc, requires_inout): Likewise.
- * stmt.c (parse_output_constraint, parse_input_constraint): Likewise.
-
- * defaults.h (EXTRA_MEMORY_CONSTRAINT): Provide a default.
- (EXTRA_ADDRESS_CONSTRAINT): Likewise.
- * doc/tm.texi: Document these two new target macros.
-
- * config/s390/s390.c (s390_expand_plus_operand): Accept already
- valid operands.
- (q_constraint): New function.
- config/s390/s390-protos.h (q_constraint): Declare it.
- config/s390/s390.h (EXTRA_CONSTRAINT): Use it.
- (EXTRA_MEMORY_CONSTRAINT): New macro.
-
- * config/s390/s390.md: Throughout the machine description,
- replace all instances of the constraint combinations 'Qo'
- or 'oQ' with simply 'Q'.
-
-2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.h (LINK_SPEC): Support -mrelax.
- * config/m68hc11/t-m68hc11-gas (LIBGCC2_DEBUG_CFLAGS): Can use -g now.
- (LIBGCC2_CFLAGS): Compile with -mrelax.
-
-2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
-
- * doc/invoke.texi: Document -minmax for 68HC12.
-
- * config/m68hc11/m68hc11.md ("umaxqi3"): Use TARGET_MIN_MAX.
- ("uminqi3"): Likewise.
- ("uminhi3", "umaxhi3"): Likewise.
-
- * config/m68hc11/m68hc11.h (MASK_MIN_MAX): Define.
- (TARGET_MIN_MAX): Define.
- (TARGET_SWITCHES): New option -minmax/-mnominmax.
-
-2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build __far_trampoline.
- (MULTILIB_OPTIONS): Must also generate for -mlong-calls.
-
- * config/m68hc11/larith.asm: Put a mode for ELF ABI flags.
- (ret, declare, farsym): New gas macros.
- (__premain, exit, abort, _cleanup, memcpy, memset, ___adddi3,
- ___subdi3, ___notdi2, __mulhi32, __mulsi3): Use them to use 'rtc'
- and declare the symbol far when compiled with -mlong-calls.
- (__far_trampoline): New for 68HC12 trampoline code to invoke a
- far handler using jsr/bsr.
-
- * config/m68hc11/m68hc11-crt0.S: Put a mode for ELF ABI flags.
- (jsr): New macro to transform a 'jsr' into a 'call'.
-
-2002-08-14 Stephane Carrez <stcarrez@nerim.fr>
-
- * doc/invoke.texi: Document -mlong-calls for 68HC12.
-
- * config/m68hc11/m68hc11.h (CPP_SPEC): Pass -D__USE_RTC__ when
- -mlong-calls is specified.
- (ASM_DECLARE_FUNCTION_NAME): Define to generate .far and .interrupt
- assembler directives.
- (TARGET_LONG_CALL, MASK_LONG_CALL): Declare.
- (TARGET_SWITCHES): Add -mlong-calls options.
- (current_function_far): Declare.
-
- * config/m68hc11/m68hc11.c (m68hc11_initial_elimination_offset): Take
- into account the page register saved on the stack.
- (m68hc11_override_options): Take into account -mlong-calls option.
- (m68hc11_asm_file_start): Put a mode for the ELF flags ABI.
-
- * config/m68hc11/m68hc11.md ("*return_32bit"): Return rtc
- if the function is going to be in 68HC12 banked memory (-mlong-calls).
- ("*return_16bit"): Likewise.
- ("*return_void"): Likewise.
- ("call", "call_value"): Use call for a far function call.
-
-2002-08-14 Neil Booth <neil@daikokuya.co.uk>
-
- * toplev.c (parse_options_and_default_flags): Don't call
- post_options here.
- (general_init): Initialize GC, pools and tree hash here,
- instead of lang_independent_init.
- (lang_independent_init): Rename backend_init.
- (do_compile): Call post_options hook; exit early if there
- have been errors after switch processing.
- (toplev_main): Update.
-
-2002-08-14 Gabriel Dos Reis <gdr@nerim.net>
-
- * c-pretty-print.h: Guard against multiple inclusion.
- Robustify macros.
- (pp_c_attributes): Declare.
- * c-pretty-print.c (pp_c_attributes): New function.
-
-2002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * m68k.c (m68k_output_function_prologue,
- m68k_output_function_epilogue): Delete versions for DPX2/MOTOROLA
- and NEWS/MOTOROLA.
- * genattrtab.c: Remove dpx2 comment.
- * libgcc2.c (__enable_execute_stack): Delete versions for
- NeXT/__MACH__, __convex__, __sysV88__, __pyr__ and
- sony_news/SYSTYPE_BSD.
- * longlong.h: Delete code for __a29k__, _AM29K, __clipper__,
- __gmicro__, __i860__, __NeXT__ and __pyr__.
- * rtl.h: Remove convex comment.
- * varasm.c: Likewise.
-
-2002-08-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-opts.c (lang_flags): Const-ify.
- * ra-build.c (undef_table): Likewise.
- * ra.c (eliminables): Likewise.
-
-2002-08-14 Gabriel Dos Reis <gdr@nerim.net>
-
- * tree.h: Guard against multiple inclusion.
-
-2002-08-14 Hans-Peter Nilsson <hp@bitrange.com>
-
- * reload1.c (reload_cse_simplify): Before checking
- REG_FUNCTION_VALUE_P, check REG_P.
-
-2002-08-13 Geoffrey Keating <geoffk@redhat.com>
-
- * Makefile.in (attribs.o): Remove $(OBSTACK_H) dependency.
-
-2002-08-13 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (c_common_init_options): Extra braces needed.
-
-Tue Aug 13 17:40:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (sh_init_builtins): Add PARAMS to declaration.
- (sh_media_init_builtins, sh_expand_builtin): Likewise.
- (sh_expand_unop_v2sf): Use PARAMS for variable declaration.
- (sh_expand_binop_v2sf): Likewise.
- * sh-protos.h (sh_expand_unop_v2sf): Add PARAMS to declaration.
- (sh_expand_binop_v2sf, sh_cfun_interrupt_handler_p): Likewise.
- (sh_initialize_trampoline): Likewise.
-
-2002-08-13 Ulrich Weigand <uweigand@de.ibm.com>
-
- * s390-modes.def [CCL1, CCL2, CCT1, CCT2, CCT3, CCUR, CCSR]: Declare
- new condition code modes.
- s390.c (s390_match_ccmode_set): Handle those new CC modes.
- (s390_select_ccmode): Likewise.
- (s390_branch_condition_mask): Likewise.
-
- * s390-protos.h (s390_tm_ccmode): Declare.
- s390.c (s390_tm_ccmode): New function.
- (s390_match_ccmode): Allow VOIDmode as REQ_MODE.
-
- * s390.md ("*cmpdi_tm2"): Rename to "*tmdi_ext".
- ("*cmpsi_tm2"): Rename to "*tmsi_ext".
- ("*cmpqi_tm2"): Rename to "*tmqi_ext".
-
- ("*cmpdi_tm_reg", "*cmpdi_tm_mem", "*cmpsi_tm_reg", "*cmpsi_tm_mem",
- "*cmphi_tm_sub","*cmphi_cct_0", "*cmpqi_tm", "*cmpqi_tm_sub",
- "*cmpqi_cct_0", "*tm_0"): Remove, replace by ...
- ("*tmdi_reg", "*tmsi_reg", "*tmdi_mem", "*tmsi_mem", "*tmhi_mem",
- "*tmqi_mem", "*tmhi_full", "*tmqi_full"): ... these new patterns.
-
- ("*ltgr", "*cmpdi_ccs_0_64", "*cmpdi_ccs_0_31", "*ltr", "*icm15",
- "*icm15_cconly", "*cmpsi_ccs_0", "*icm3", "*cmphi_ccs_0", "*icm1",
- "*cmpqi_ccs_0"): Remove, replace by ...
- ("*tstdi_sign", "*tstdi", "*tstdi_cconly", "*tstdi_cconly_31",
- "*tstsi", "*tstsi_cconly", "*tstsi_cconly2", "*tsthi", "*tsthi_cconly",
- "*tstqi", "*tstqi_cconly"): ... these new patterns.
-
- ("*cmpsidi_ccs"): Remove, replace by ...
- ("*cmpsi_ccs_sign"): ... this new pattern.
- ("*cmpdi_ccs_sign", "*cmpdi_ccu_zero"): New patterns.
-
- ("*cmpqi_ccu_0", "*cmpqi_ccu_immed"): Remove, replace by ...
- ("*cli"): ... this new pattern.
-
- ("*adddi3_sign", "*adddi3_zero_cc", "*adddi3_zero_cconly",
- "*adddi3_zero", "*adddi3_cc", "*adddi3_cconly", "*adddi3_cconly2"):
- New patterns.
- ("adddi3_64"): Rename to "*adddi3_64".
- ("adddi3_31"): Replace by insn and splitter "*adddi3_31".
- ("adddi3"): Adapt expander.
-
- ("*addsi3_cc"): Allow "general_operand" for operand 2.
- ("*addsi3_carry1_cc", "*addsi3_carry1_cconly",
- "*addsi3_carry2_cc", "*addsi3_carry2_cconly"): New patterns.
-
- ("addhi3", "addqi3"): Remove, replace by ...
- ("*addsi3_sign", "*addsi3_sub"): ... these new patterns.
-
- ("*subdi3_sign", "*subdi3_zero_cc", "*subdi3_zero_cconly",
- "*subdi3_zero", "*subdi3_cc", "*subdi3_cconly"): New patterns.
- ("subdi3"): Replace by insn and splitter "*subdi3_31".
- ("subdi3"): New expander.
-
- ("*subsi3_borrow_cc", "*subsi3_borrow_cconly"): New patterns.
-
- ("subhi3", "subqi3"): Remove, replace by ...
- ("*subsi3_sign", "*subsi3_sub"): ... these new patterns.
-
- ("*muldi3_sign"): New pattern.
- ("muldi3"): Do not clobber CC.
- ("mulsi3"): Likewise.
- ("mulsi_6432"): Likewise.
-
-2002-08-13 Denis Chertykov <denisc@overta.ru>
-
- * config/avr/avr.md: Call CC_STATUS_INIT in all peepnoles
- which can change CC0.
-
-Tue Aug 13 14:49:20 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * gcse.c (adjust_libcall_notes): New function.
- (do_local_cprop): Use it. Add fourth parameter. Changed caller.
-
-2002-08-13 Nathan Sidwell <nathan@codesourcery.com>
-
- * libgcc2.c (L_bb): Remove unneeded #includes.
- (__global_counters, __gthreads_active): Remove unused globals.
- (__bb_exit_func): Merge counts into files rather than appending.
- * Makefile.in (INTERNAL_CFLAGS): Move COVERAGE_FLAGS from here ...
- (ALL_CFLAGS): ... to here.
-
-2002-08-13 Denis Chertykov <denisc@overta.ru>
-
- * config/ip2k/ip2k.c (commands_in_file): Variable removed.
- (function_epilogue): Don't calculate function size.
- (ip2k_set_compare): Don't use lookup_const_double.
- (asm_file_start): Initialization of commands_in_file removed.
- (asm_file_end): Output of commands_in_file removed.
-
- * config/ip2k/ip2k.c (CPP_PREDEFINES): Remove definition of
- __INT_MAX__.
-
-2002-08-13 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (c_common_init_options): Check option array is
- sorted if checking enabled.
-
-2002-08-13 Gabriel Dos Reis <gdr@nerim.net>
-
- * c-pretty-print.c: #include "c-tree.h".
- (pp_c_simple_type_specifier): Tweak.
- (pp_c_storage_class_specifier): New.
- (pp_c_function_specifier): Likewise.
- (pp_c_declaration_specifiers): Likewise.
- (pp_c_init_declarator): Likewise.
- (pp_c_declaration): Likewise.
- (pp_c_direct_declarator): Stub.
- (pp_c_declarator): Likewise.
- (pp_c_parameter_declaration): Likewise.
-
-2002-08-13 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (deps_seen, deps_file, deferred_count, deferred_size,
- handle_deferred_opts, sanitize_cpp_opts, defer_opt,
- struct deferred_opt): New.
- (COMMAND_LINE_OPTIONS): Add -M*.
- (missing_arg): Update.
- (c_common_decode_option): Handle -M*.
- (c_common_post_options): Handle -M*. Use sanitize_cpp_opts;
- don't call cpp_post_options.
- (c_common_finish, check_deps_environment_vars): Update.
- * cppfiles.c (stack_include_file, handle_missing_header): Update.
- * cpphash.h (CPP_PRINT_DEPS): Remove.
- * cppinit.c: Don't include version.h.
- (cpp_create_reader): Don't call deps_init. Initialize
- warn_long_long.
- (cpp_read_main_file): Init deps if necessary.
- (cpp_destroy): Conditionally free deps.
- (cpp_finish): Update.
- (no_tgt): Remove.
- (COMMAND_LINE_OPTIONS, cpp_handle_option): Remove -M*.
- (cpp_post_options): Rename post_options.
- * cpplib.h (struct cpp_options): Remove some dependency options;
- move others to a new structure.
- (cpp_post_options): Remove.
- (cpp_finish): Comment.
- * fix-header.c (read_scan_file): Don't call cpp_post_options.
-
-2002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
-
- * config/mmix/mmix.md (define_constants): Add MMIX_rR_REGNUM.
- ("divdi3", "*divdi3_nonknuth", "moddi3", "*moddi3_nonknuth"): Mark
- MMIX_rR_REGNUM as clobbered.
- * config/mmix/mmix.h (MMIX_REMAINDER_REGNUM): Use MMIX_rR_REGNUM.
-
-2002-08-12 Gabriel Dos Reis <gdr@nerim.net>
-
- * diagnostic.h (output_formatted_scalar): Rename from
- output_formatted_integer.
- * diagnostic.def: Add DK_DEBUG.
- * diagnostic.c (output_decimal): Adjust.
- (output_long_decimal): Likewise.
- (output_unsigned_decimal): Likewise.
- (output_octal): Likewise.
- (output_long_octal): Likewise.
- (output_hexadecimal): Likewise.
- (output_long_hexadecimal): Likewise.
- * c-pretty-print.c (pp_c_type_specifier): New function.
- (pp_c_specifier_qualifier_list): Likewise.
- (pp_c_abstract_declarator): Likewise.
- (pp_c_char): Replace pp_format_integer with pp_format_scalar.
-
-2002-08-12 David Edelsohn <edelsohn@gnu.org>
-
- * doc/trouble.texi (Disappointments): Add static constructor and
- destructor dependency information for AIX.
-
-2002-08-12 Neil Booth <neil@daikokuya.co.uk>
-
- * cpphash.h (struct printer): New from cppmain.c.
- (cpp_reader): New member.
- * cppmain.c (struct printer): Move to cpphash.h.
- (options, print): Remove.
- (account_for_newlines, print_line, maybe_print_line,
- cpp_preprocess_file, setup_callbacks, scan_translation_unit,
- scan_translation_unit_trad, cb_line_change, cb_ident,
- cb_define, cb_undef, cb_include, cb_file_change, dump_macro,
- cb_def_pragma): Make reentrant.
-
-2002-08-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * real.c (ieee_64): Always define.
- (ieee_113): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
- (dec_h): Not used yet, hide it.
- (emdnorm): Mark parameter in ATTRIBUTE_UNUSED. Guard label with
- macro controlling use.
- (TFbignan, TFlittlenan): Guard with INTEL_EXTENDED_IEEE_FORMAT == 0.
-
-Mon Aug 12 12:48:20 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (tablejump): Sign extend the operand.
- * i386.c (classify_argument): Fix missed case from previous patch.
-
-2002-08-12 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c (STDC_0_IN_SYSTEM_HEADERS, c_common_init): Move
- to c-copts.c.
- (warn_multichar): Die.
- (cb_register_builtins): Export.
- * c-common.h (warn_multichar, preprocess_file): Remove.
- (cb_register_builtins): New.
- * c-lang.c (c_init): Remove.
- (LANG_HOOKS_INIT): Use c_objc_common_init.
- * c-lex.c (init_c_lex): Don't canonicalize filename.
- * c-opts.c (in_fname, STDC_0_IN_SYSTEM_HEADERS): New.
- (preprocess_file): Make static. Update for cpplib.
- (c_common_decode_option): Remove warn_multichar. Use in_fname.
- (c_common_post_options): Set some cpp options here.
- (c_common_init): Move from c-common.c.
- * cppinit.c (cpp_post_options): Don't canonicalize in_fname.
- * cpplib.h (struct cpp_options): Remove in_fname.
- (cpp_preprocess_file): Update.
- * cppmain.c (cpp_preprocess_file): Update for new prototypes.
-
-2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * config.gcc (mips*-*-netbsd*): Include ${tm_file}.
-
-2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * i370.h (TARGET_CPU_CPP_BUILTINS): Remove spurious trailing
- backslash in comment preceeding macro definition.
- * i370/linux.h (TARGET_OS_CPP_BUILTINS): Likewise.
- * i370/mvs.h (TARGET_OS_CPP_BUILTINS): Likewise.
- * i370/oe.h (TARGET_OS_CPP_BUILTINS): Likewise.
-
-2002-08-12 Hans-Peter Nilsson <hp@bitrange.com>
-
- * expr.c (store_expr): In condition for checking if value is
- generated in TARGET, move call to expr_size last.
-
-2002-08-11 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c (c_common_init): Call preprocess_file instead.
- (c_common_finish): Move to c-opts.c.
- * c-common.h (preprocess_file): new.
- * c-opts.c (out_fname, out_stream, deps_append, preprocess_file,
- check_deps_environment_vars, c_common_finish): New.
- (c_common_decode_option): Update for out_fname and dependencies.
- * cppinit.c (init_dependency_output, output_deps): Remove.
- (cpp_destroy): Update prototype.
- (cpp_add_dependency_target): New.
- (cpp_read_main_file): Don't overlay a buffer.
- (cpp_finish): Take a deps output stream and write deps to it.
- Return the error count.
- (cpp_post_options): Don't canonicalize out_fname, or do anything
- with dependencies.
- * cpplib.h (struct cpp_options): Remove out_fname and
- preprocess_only.
- (cpp_add_dependency_target): New.
- (cpp_destroy, cpp_finish, cpp_preprocess_file): Update.
- * cppmain.c (cpp_preprocess_file): Update prototype. Don't
- set preprocess_only. Don't handle the output stream directly.
-
-2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * dsp16xx.c (print_operand): Fix format specifier.
- * dsp16xx.md: Avoid automatic aggregate initialization.
- * frv.h (REG_CLASS_FROM_LETTER): Avoid char as array index.
- * h8300.c (emit_a_rotate, h8300_adjust_insn_length): Avoid U
- integer constant modifier.
- * ip2k.c (ip2k_set_compare): Avoid signed/unsigned warning.
- * mmix-protos.h (mmix_use_simple_return): Move outside TREE_CODE
- guards.
- * sh/netbsd-elf.h (FUNCTION_PROFILER): Fix format specifier.
- * v850.c (v850_select_section): Mark parameter with
- ATTRIBUTE_UNUSED.
- * global.c (global_alloc): Const-ify.
- * ra-colorize.c (hardregset_to_string): Fix format specifier.
-
-2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * darwin-c.c (darwin_pragma_options): Const-ify.
- * darwin.c (machopic_non_lazy_ptr_name,
- machopic_validate_stub_or_non_lazy_ptr): Likewise.
- (machopic_indirect_data_reference): Wrap variables in macros
- controlling their use.
- (machopic_finish, update_non_lazy_ptrs, update_stubs): Const-ify.
- (machopic_select_section): Use parentheses around && within ||.
- * i386/darwin.h (ASM_OUTPUT_ALIGN): Avoid ambiguous-else.
-
-2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * ip2k.c (mdr_resequence_xy_yx, mdr_propagate_reg_equivs,
- mdr_try_move_dp_reload, ip2k_check_can_adjust_stack_ref,
- ip2k_adjust_stack_ref, mdr_try_move_pushes, mdr_try_propagate_clr,
- ip2k_xexp_not_uses_reg_for_mem, mdr_try_propagate_move,
- mdr_try_remove_redundant_insns, track_w_reload,
- mdr_try_wreg_elim): Make function static to match prototype.
- * mmix.c (mmix_target_asm_function_epilogue): Likewise. Mark
- parameter with ATTRIBUTE_UNUSED.
-
-2002-08-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * arc.c (arc_init): Don't use ISO C style function definitions.
- * arm.c (count_insns_for_constant, thumb_far_jump_used_p,
- arm_get_strip_length, arm_strip_name_encoding): Likewise.
- * avr.h (progmem_section): Likewise.
- * h8300.c h8300_asm_insn_count): Likewise.
- * m32r.c (init_idents): Likewise.
- * s390.c (s390_split_branches, s390_chunkify_pool): Likewise.
- * sh.c (sh_cfun_interrupt_handler_p): Likewise.
- * xtensa.c (xtensa_build_va_list): Likewise.
-
-2002-08-11 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.h (enum c_language_kind): Emphasize that clk_c is 0.
- * c-opts.c (parse_option): Rename find_opt.
- (set_std_c99): New function.
- (COMMAND_LINE_OPTIONS): Handle -remap and -o. Remove OPT_std_bad.
- (missing_arg): Remove OPT_std_bad. Handle -o.
- (c_common_decode_option): Handle input and output file names,
- -o and -remap. Clean up -std= handling.
- * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_o and OPT_remap.
- (cpp_handle_option): Similarly. Don't handle filenames.
-
-Sun Aug 11 14:43:17 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (classify_argument): Fix computing of field's offsets.
-
-2002-08-11 Andreas Jaeger <aj@suse.de>
-
- PR target/7531:
- * doc/invoke.texi (i386 and x86-64 Options): Document -mcmodel.
-
-2002-08-10 Ziemowit Laski <zlaski@apple.com>
-
- * config/alpha/alpha.h (TARGET_CPU_CPP_BUILTINS): Replace
- reference to clk_objective_c with flag_objc.
- * config/i386/i386-interix.h (TARGET_OS_CPP_BUILTINS):
- Likewise.
- * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Likewise.
-
-2002-08-10 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (set_std_cxx98, set_std_c89): New.
- (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
- (c_common_decode_option): Handle new switches from cppinit.c.
- Add -std=gnu++98.
- * cppinit.c (set_lang): Rename cpp_set_lang. Export.
- (no_arg, no_num): Remove.
- (COMMAND_LINE_OPTIONS): Move more to c-opts.c. Drop all lang-
- switches apart from -lang-objc and lang-asm.
- (cpp_handle_option): Similarly.
- * cpplib.h (cpp_set_lang): New.
- * doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
- -std=gnu++98.
- * objc/lang-specs.h: Remove -ansi.
-
-Sat Aug 10 19:59:43 CEST 2002 Jan Hubicka <jh@suse.cz>
- Graham Stott
-
- * cfg.c (redirect_edge_succ_nodup): Avoid overflows due to roundoff
- errors.
-
-2002-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * emit-rtl.c (emit_jump_insn_before, emit_call_insn_before,
- emit_jump_insn): Fix uninitialized variable.
- * gcov.c (init_line_info): Likewise.
- * genautomata.c (transform_3): Add braces around ambiguous
- else.
- * ifcvt.c (cond_exec_process_insns): Mark parameter with
- ATTRIBUTE_UNUSED.
- * ra-build.c (parts_to_webs_1): Fix uninitialized variable.
- * regrename.c (copyprop_hardreg_forward): Fix uninitialized
- variable.
-
- * gengtype.c (write_gc_structure_fields): Avoid signed/unsigned
- warnings in output files.
-
-2002-08-09 Ziemowit Laski <zlaski@apple.com>
-
- * c-common.c (flag_objc): New.
- * c-common.h (c_language_kind): Get rid of clk_objective_c
- enum value.
- (flag_objc): New extern declaration.
- * c-decl.c (implicitly_declare): Call objc_check_decl
- instead of maybe_objc_check_decl.
- (finish_decl): Likewise.
- (grokfield): Likewise.
- (finish_struct): Likewise.
- * c-lang.c (maybe_objc_check_decl): Rename to objc_check_decl.
- (maybe_objc_comptypes): Rename to objc_comptypes.
- (maybe_building_objc_message_expr): Rename to
- objc_message_selector.
- * c-lex.c (lex_charconst): Remove uses of clk_objective_c,
- replace with flag_objc as needed.
- * c-opts.c (c_common_init_options): Likewise.
- (c_common_decode_option): Likewise.
- * c-parse.in (init_reswords): Likewise.
- * c-tree.h (maybe_objc_check_decl): Rename to objc_check_decl.
- (maybe_objc_comptypes): Rename to objc_comptypes.
- (maybe_building_objc_message_expr): Rename to
- objc_message_selector.
- * c-typeck.c (comptypes): Call objc_comptypes instead of
- maybe_objc_comptypes, and/or objc_message_selector instead of
- maybe_building_objc_message_expr.
- (comp_target_types): Likewise.
- (convert_for_assignment): Likewise.
- (warn_for_assignment): Likewise.
- * cppinit.c (init_builtins): Set __OBJC__ manifest constant
- independently of those for other languages.
- * objc/objc-act.c (maybe_objc_comptypes): Delete.
- (maybe_objc_check_decl): Delete.
- (maybe_building_objc_message_expr): Rename to
- objc_message_selector.
- * objc/objc-lang.c (objc_init_options): Use clk_c instead of
- clk_objective_c; set flag_objc flag.
-
-2002-08-09 Toshiyasu Morita <toshiyasu.morita@hsa.hitachi.com>
-
- * ifcvt.c (find_if_case_2): Test correct basic block for size.
-
-2002-08-09 Dale Johannesen <dalej@apple.com>
-
- * config/rs6000/rs6000.md: Add sibcall patterns.
- * config/rs6000/rs6000.h (FUNCTION_OK_FOR_SIBCALL): Define.
- * config/rs6000/rs6000.c (rs6000_ra_ever_killed):
- Rewritten to handle sibcalls.
- * config/rs6000/rs6000.c (function_ok_for_sibcall): New.
- * config/rs6000/rs6000-protos.h (function_ok_for_sibcall): New.
-
-2002-08-08 Nathan Sidwell <nathan@codesourcery.com>
-
- * profile.c (da_file_name): New static var.
- (init_branch_prob): Initialize it.
- (end_branch_prob): Remove da file.
-
- * Makefile.in (stage1_build): Pass empty COVERAGE_FLAGS.
- * configure.in (coverage_flags): Default to nothing.
- * configure: Rebuilt.
-
-2002-08-09 Neil Booth <neil@daikokuya.co.uk>
-
- * Makefile.in (c-opts.o): Update
- * c-opts.c: Include intl.h.
- (print_help): Move from cppinit.c. Remove unused options.
- (COMMAND_LINE_OPTIONS): Move more from cppinit.c.
- (missing_arg): Complain for switches without an argument.
- (c_common_decode_option): Reject missing joined arguments.
- Handle new switches from cppinit.c.
- * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
- (cpp_handle_option): Similarly.
- (print_help): Moved to c-opts.c.
- * cpplib.h (struct cpp_options): Remove help_only.
- * gcc.c (cpp_unique_options): Remove -$.
- * doc/cppopts.texi: Undocument -h.
-
-2002-08-08 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (legitimate_constant_p): UNSPEC_TP is not
- legitimate constant.
- (legitimate_pic_operand_p): Neither pic operand.
- (legitimate_address_p): But legitimate address.
- (get_thread_pointer): Generate MEM/u instead of CONST around
- UNSPEC_TP.
- (print_operand): Remove printing of UNSPEC_TP.
- (print_operand_address): And print it here.
-
-2002-08-08 Devang Patel <dpatel@apple.com>
-
- * objc/objc-act.c (build_selector_translation_table): Issue warning,
- when -Wselector is used,if method for which selector is being
- created does not exist.
-
-2002-08-08 Stephen Clarke <stephen.clarke@superh.com>
-
- * config/sh/sh.c (prepare_move_operands): Only call
- target_reg_operand if TARGET_SHMEDIA.
-
-2002-08-08 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/rs6000.h, config/rs6000/aix.h,
- config/rs6000/darwin.h, config/rs6000/linux64.h: Revert last
- two patches.
- * config/rs6000/sysv4.h: Likewise, remove #undef ADJUST_FIELD_ALIGN.
-
-2002-08-08 Lars Brinkhoff <lars@nocrew.org>
- Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (gen_rtx_REG): After reload, only return
- frame_pointer_rtx or hard_frame_pointer_rtx if frame_pointer_needed.
-
-2002-08-08 Jakub Jelinek <jakub@redhat.com>
-
- * config/rs6000/rs6000-protos.h (rs6000_field_alignment): Remove.
- * config/rs6000/rs6000.c (rs6000_field_alignment): Move...
- * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): ...inline into the
- macro.
-
-2002-08-08 Adam Nemet <anemet@lnxw.com>
-
- * config/arm/arm.c (thumb_unexpanded_epilogue): Stack the PIC
- register.
- (thumb_expand_prologue): Likewise.
- (thumb_output_function_prologue): Likewise.
- * config/arm/arm.h (THUMB_INITIAL_ELIMINATION_OFFSET): Account for
- the additional push of the PIC register.
-
-2002-08-08 Nathan Sidwell <nathan@codesourcery.com>
-
- * configure.in (enable_coverage): New enable switch.
- * configure: Rebuilt.
- * Makefile.in (COVERAGE_FLAGS, coverageexts): New variables.
- (INTERNAL_CFLAGS): Append COVERAGE_FLAGS.
- (ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS.
- (mostlyclean): Remove coverage files.
- * doc/install.texi: Document enable_coverage.
-
- * cp/Make-lang.in (c++.mostlyclean): Remove coverage files.
- * ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
- * f/Make-lang.in (f.mostlyclean): Remove coverage files.
- * java/Make-lang.in (java.mostlyclean): Remove coverage files.
- * objc/Make-lang.in (objc.mostlyclean): Remove coverage files.
- * treelang/Make-lang.in (treelang.mostlyclean): Remove coverage
- files.
-
-2002-08-08 Neil Booth <neil@daikokuya.co.uk>
-
- * c-opts.c (cpp_opts): New.
- (COMMAND_LINE_OPTIONS): Add switches from cppinit.c.
- (c_common_decode_options): Handle cpplib switches.
- (c_common_init_options): Set cpp_opts.
- * cppinit.c (COMMAND_LINE_OPTIONS): Move some switches to c-opts.c.
- (cpp_handle_option): Similarly.
-
-2002-08-08 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/aix.h (TARGET_ALTIVEC): Define to 0.
- (TARGET_ALTIVEC_ABI): Same.
- (TARGET_ALTIVEC_VRSAVE): Same.
-
- * config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Check
- icode not CODE_FOR_nothing. Change switch to if.
-
-2002-08-08 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.h (ASM_CPU_SPEC): Pass -mpower4 when cpu=power4.
-
-2002-08-08 Jakub Jelinek <jakub@redhat.com>
-
- * stor-layout.c (place_union_field): For bitfields if
- PCC_BITFIELD_TYPE_MATTERS and TYPE_USER_ALIGN, set record's
- TYPE_USER_ALIGN.
-
-2002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (struct deferred_plabel): Constify name field.
-
-2002-08-07 Neil Booth <neil@daikokuya.co.uk>
-
- * cppmacro.c (_cpp_builtin_macro_text): Remove unused variable.
-
-2002-08-07 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * configure.in (PREFIX_INCLUDE_DIR): Don't define if prefix and
- local_prefix are the same.
- * configure: Rebuilt.
-
-2002-08-07 Jakub Jelinek <jakub@redhat.com>
- Richard Henderson <rth@redhat.com>
-
- * stor-layout.c (place_union_field): Apply ADJUST_FIELD_ALIGN
- to type_align when PCC_BITFIELD_TYPE_MATTERS. Only apply
- ADJUST_FIELD_ALIGN if not DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
- (place_field): Likewise.
- * config/i386/i386.c (x86_field_alignment): Don't check
- DECL_USER_ALIGN here.
- * config/rs6000/rs6000.c (rs6000_field_alignment): New.
- * config/rs6000/rs6000-protos.h (rs6000_field_alignment): New
- prototype.
- * config/rs6000/rs6000.h (ADJUST_FIELD_ALIGN): Define.
- * config/rs6000/aix.h (ADJUST_FIELD_ALIGN): Remove.
- * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Remove.
- * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Remove.
- * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Remove.
- * doc/tm.texi (ADJUST_FIELD_ALIGN): Update description.
-
-2002-08-07 Neil Booth <neil@daikokuya.co.uk>
-
- * Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update.
- * c-common.c: Don't include tree-inline.h.
- (c_common_init_options, c_common_post_options): Move to c-opts.c.
- * c-common.h (c_common_decode_option): New.
- * c-decl.c (c_decode_option): Remove.
- * c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
- * c-opts.c: New file.
- * c-tree.h (c_decode_option): Remove.
- * doc/passes.texi: Update.
- * objc/objc-act.c (objc_decode_option): Remove.
- * objc/objc-act.h (objc_decode_option): Remove.
- * objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use
- c_common_decode_option.
-
-2002-08-07 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.md (sunlt_sf, suneq_sf, sunle_sf): Remove
- dependency on TARGET_DOUBLE_FLOAT.
-
-2002-08-07 Stephen Clarke <stephen.clarke@superh.com>
-
- * config/sh/lib1funcs.asm (GCC_shcompact_incoming_args): Don't
- overwrite callee-save registers. Fix comment.
-
-2002-08-06 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.c (override_options): Set MASK_BRANCHLIKELY
- in target_flags based on ISA, if it was not set on the command
- line. Warn if MASK_BRANCHLIKLEY is set but the ISA does not
- support Branch Likely instructions.
- * config/mips/mips.h (MASK_BRANCHLIKLEY): New macro.
- (TARGET_BRANCHLIKELY): Likewise.
- (TARGET_SWITCHES): Add -mbranch-likely and -mno-branch-likely.
- (GENERATE_BRANCHLIKELY): Use TARGET_BRANCHLIKELY rather than
- ISA_HAS_BRANCHLIKELY.
- (ISA_HAS_BRANCHLIKELY): Do not include MIPS16 check.
- * doc/invoke.texi: Document new MIPS -mbranch-likely and
- -mno-branch-likely options.
-
-2002-08-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * ip2k.c (ip2k_set_compare): Add missing iteration variable.
-
- * Makefile.in (dummy-conditions.o): Depend on $(HCONFIG_H) not
- $(GCONFIG_H).
-
-2002-08-06 Aldy Hernandez <aldyh@redhat.com>
-
- * c-decl.c (duplicate_decls): Error out for incompatible TLS
- declarations.
-
- * testsuite/gcc.dg/tls/diag-3.c: New.
-
-2002-08-06 Dale Johannesen <dalej@apple.com>
-
- * c-common.c (fname_decl): Use line number 0 for
- __func__, to avoid confusing debuggers.
-
-2002-08-06 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcov.c: Tidy.
- (struct line_info, struct coverage): New structures.
- (gcov_file_name, gcov_file): Remove globals.
- (output_data): Take source file parameter. Fix memory leak. Break
- up into ...
- (init_line_info, output_line_info, make_gcov_file_name,
- accumulate_branch_counts): ... here.
- (calculate_branch_probs, function_summary): Adjust.
- (main): Adjust.
- (function_*): Remove global variables.
-
-2002-08-06 Neil Booth <neil@daikokuya.co.uk>
-
- * dwarf2out.c: Remove unused macros.
-
-2002-08-06 Neil Booth <neil@daikokuya.co.uk>
-
- * function.c (TRAMPOLINE_ALIGNMENT): Always defined.
-
-2002-08-06 Neil Booth <neil@daikokuya.co.uk>
-
- * cppinit.c (struct lang_flags): Rename trigraphs std.
- (set_lang): Update.
- * cpplib.h (struct cpp_options): New member std.
- * cppmacro.c (_cpp_builtin_macro_text): Use std.
- (collect_args): Flag whether to swallow a possible future
- comma pasted with varargs.
- (replace_args): Use this flag.
- * doc/cpp.texi: Update varargs extension documentation.
-
-2002-08-06 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/mmintrin.h (__m64): Make the type 64-bit aligned.
-
-2002-08-06 Jakub Jelinek <jakub@redhat.com>
-
- * config/i386/i386.c (x86_field_alignment): Apply min for all MODE_INT
- and MODE_CLASS_INT modes.
-
-2002-08-06 Jakub Jelinek <jakub@redhat.com>
-
- * config.gcc (*-*-linux*): Default to --enable-threads=posix if no
- --{enable,disable}-threads is given to configure.
- (alpha*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux*,
- x86_64-*-linux*, ia64*-*-linux*, m68k-*-linux*, mips*-*-linux*,
- powerpc-*-linux-gnualtivec*, powerpc-*-linux*, s390-*-linux*,
- s390x-*-linux*, sh-*-linux*, sparc-*-linux*, sparc64-*-linux*):
- Remove thread_file setting here.
-
-2002-08-06 David Edelsohn <edelsohn@gnu.org>
-
- * doc/install.texi (Binaries): Update Bull Freeware URL.
-
-2002-08-06 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
-
- * doc/gcc.texi (Top): Rename Index to Keyword Index.
-
-2002-08-05 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcov.c (output_data): Round to % to nearest, tweak formatting.
-
-2002-08-05 Jakub Jelinek <jakub@redhat.com>
-
- * fold-const.c (associate_trees): Only optimize NEGATE_EXPR in one
- of the operands into MINUS_EXPR if code is PLUS_EXPR.
-
-2002-08-05 Douglas B Rupp <rupp@gnat.com>
-
- * config.gcc (i[34567]86-*-interix*): Replace interix.o with winnt.o
- * config/i386/i386-interix.h (TARGET_NOP_FUN_DLLIMPORT,
- drectve_section): Define.
- * config/i386/t-interix: Replace interix.o rule with winnt.o.
- * config/i386/interix.c: Remove.
-
-2002-08-05 Geoffrey Keating <geoffk@redhat.com>
-
- * attribs.c: Don't include obstack.h.
- * builtins.c: Likewise.
- * cfganal.c: Likewise.
- * cfgbuild.c: Likewise.
- * cfgcleanup.c: Likewise.
- * emit-rtl.c: Likewise.
- * loop.c: Likewise.
- * stmt.c: Likewise.
-
- * Makefile.in (s-gtype): Re-add dependency on $(GTFILES).
-
-2002-08-05 Gabriel Dos Reis <gdr@nerim.net>
-
- * doc/c-tree.texi (Expression trees): Document VA_ARG_EXPR
-
-2002-08-04 Chris Demetriou <cgd@broadcom.com>
-
- * doc/invoke.texi: Remove duplicated paragraph describing
- TARGET_SWITCHES.
-
-2002-08-04 Geoffrey Keating <geoffk@redhat.com>
-
- * Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H).
- * collect2.h (permanent_obstack): Delete declaration.
- * collect2.c (permanent_obstack): Delete definition.
- (main): Don't initialize permanent_obstack. Use xstrdup instead.
- * expr.c: Don't include obstack.h.
- (permanent_obstack): Delete declaration.
- * function.c: Don't include obstack.h.
- (permanent_obstack): Delete declaration.
- * integrate.c: Don't include obstack.h.
- (function_maybepermanent_obstack): Delete declaration.
- * print-tree.c (debug_tree): Use x*alloc not permalloc.
- * sdbout.c (gen_fake_label): Use x*alloc not permalloc.
- * tlink.c (pfgets): Use xstrdup not permanent_obstack.
- * toplev.c (lang_independent_init): Rename init_obstacks to init_ttree.
- * tree.h: Rename init_obstacks to init_ttree. Remove declarations
- of permalloc, expralloc, perm_calloc.
- * tree.c (permanent_obstack): Delete definition.
- (init_ttree): Rename from init_obstacks.
- (permalloc): Delete.
- (perm_calloc): Delete.
- (dump_tree_statistics): Don't print information about
- permanent_obstack.
- * varasm.c (assemble_start_function): Use xstrdup instead of
- permalloc/strcpy.
- (assemble_variable): Likewise.
- * config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of
- permalloc.
- (unicosmk_add_extern): Likewise.
- * config/c4x/c4x.c (c4x_external_ref): Likewise.
- (c4x_global_label): Likewise.
- * config/frv/frv.c (frv_encode_section_info): Likewise.
- * config/i386/winnt.c (i386_pe_record_external_function): Likewise.
- (i386_pe_record_exported_symbol): Likewise.
- * config/mips/mips.c (mips_output_external): Likewise.
- (mips_output_external_libcall): Likewise.
- * config/pa/pa.c: (permanent_obstack): Delete declaration.
- (output_call): Use ggc_strdup instead of allocating on
- permanent_obstack.
- * config/romp/romp.c: Include ggc.h.
- (get_symref): Don't declare permanent_obstack, use ggc_strdup
- intead of permanent_obstack.
- * config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat
- instead of permalloc.
- * config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc
- instead of permalloc
- * config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat
- instead of permalloc.
- * config/vax/vax.c (vms_check_external): Use xmalloc instead of
- permalloc.
-
-2002-08-04 Bernd Schmidt <bernds@redhat.com>
-
- Contribute a port developed primarily by Michael Meissner,
- Catherine Moore, and Richard Sandiford <rsandifo@redhat.com>.
- * config.gcc: Add frv-elf target.
- * config/frv/cmovd.c: New file.
- * config/frv/cmovh.c: New file.
- * config/frv/cmovw.c: New file.
- * config/frv/frv-abi.h: New file.
- * config/frv/frv-asm.h: New file.
- * config/frv/frv-modes.def: New file.
- * config/frv/frv-protos.h: New file.
- * config/frv/frv.c: New file.
- * config/frv/frv.h: New file.
- * config/frv/frv.md: New file.
- * config/frv/frvbegin.c: New file.
- * config/frv/frvend.c: New file.
- * config/frv/lib1funcs.asm: New file.
- * config/frv/media.h: New file.
- * config/frv/modi.c: New file.
- * config/frv/t-frv: New file.
- * config/frv/uitod.c: New file.
- * config/frv/uitof.c: New file.
- * config/frv/ulltod.c: New file.
- * config/frv/ulltof.c: New file.
- * config/frv/umodi.c: New file.
- * config/frv/xm-frv.h: New file.
-
- * config/frv/media.h: Removed again.
-
-2002-08-04 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcov.c (bb_file_time): New static variable.
- (object_directory): May also be object file.
- (preserve_paths): New static variable.
- (print_usage): Adjust.
- (options): Adjust.
- (process_args): Adjust.
- (open_files): Simplify. Cope when OBJECT_DIRECTORY is an object
- file. Find modification date on bb file.
- (read_profile): Don't rewind a NULL file.
- (format_hwint): New static function.
- (function_summary): Use format_hwint.
- (output_data): SOURCE_FILE_NAME is never relative to
- OBJECT_DIRECTORY. Use format_hwint. Adjust gcov file name
- mangling. Adjust output format to make it more machine readable.
- * doc/gcov.texi: Document & clarify semantics.
-
-2002-08-04 Joseph S. Myers <jsm@polyomino.org.uk>
-
- * doc/include/gcc-common.texi (version-GCC): Increase to 3.3.
-
-2002-08-04 Nathan Sidwell <nathan@codesourcery.com>
-
- * gcc.c (cc1_options): Pass output file as auxbase when
- appropriate.
- * profile.c (init_branch_prob): FILENAME has already had ending
- stripped.
- * final.c (end_final): Likewise.
- * toplev.c (aux_base_name): New global.
- (compile_file): Pass aux_base_name to init init_branch_prob and
- end_final.
- (independent_decode_option, case 'a'): New auxinfo options.
- (case 'd'): Protect against mising basename.
- (do_compile): Initialize aux_base_name.
- * toplev.h (aux_base_name): New global.
- * doc/invoke.texi: Adjust documentation.
-
-2002-08-04 Nathan Sidwell <nathan@codesourcery.com>
-
- * config/i386/i386.c (x86_field_alignment): Remove duplicate test
- of TARGET_ALIGN_DOUBLE.
-
-2002-08-04 Gabriel Dos Reis <gdr@nerim.net>
-
- * diagnostic.c (inform): New function.
- * diagnostic.h (inform): Declare.
-
-2002-08-03 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (movsi_internal1): Add nop mnemonic.
- (movhi_internal): Same.
- (movqi_internal): Same.
- (movdi_internal64): Same.
-
- * config/rs6000/t-ppccomm (MULTILIB_MATCHES_FLOAT): Add mcpu=405.
-
- * config/rs6000/xcoff.h (SKIP_ASM_OP): Define.
- (ASM_OUTPUT_SKIP): Use it. SIZE unsigned.
- (COMMON_ASM_OP): Define.
- (ASM_OUTPUT_ALIGNED_COMMON): Use it. SIZE unsigned.
- Use ALIGN parameter.
- (LOCAL_COMMON_ASM_OP): Define.
- (ASM_OUTPUT_LOCAL): Use it. SIZE unsigned.
-
-2002-08-03 Roger Sayle <roger@eyesopen.com>
-
- * builtins.def: Define new builtin functions exp, expf, expl,
- log, logf and logl (and their __builtin_* variants).
- * optabs.h (enum optab_index): Add new OTI_exp and OTI_log.
- Define exp_optab and log_optab.
- * optabs.c (init_optans): Initialize exp_optab and log_optab.
- * genopinit.c (optabs): Implement exp_optab and log_optab
- using exp?f2 and log?f2 patterns.
- * builtins.c (expand_builtin_mathfn): Handle BUILT_IN_EXP*
- and BUILT_IN_LOG* using exp_optab and log_optab respectively.
- (expand_builtin): Ignore the new builtins (and all cos and
- sin variants) when not optimizing. Expand new builtins via
- expand_builtin_mathfn when flag_unsafe_math_optimizations.
-
- * doc/extend.texi: Document new exp and log builtins.
- * doc/md.texi: Document new exp?f2 and log?f2 patterns
- (and previously undocumented cos?f2 and sin?f2 patterns).
-
-2002-08-03 Jason Merrill <jason@redhat.com>
-
- * explow.c (int_expr_size): New fn.
- * expr.c (expand_expr) [CONSTRUCTOR]: Use it.
- * expr.h: Declare it.
-
-2002-08-02 Krister Walfridsson <cato@df.lth.se>
-
- * Makefile.in (gengtype-lex.o, gengtype-yacc.o): Add path to
- gengtype-* dependencies.
-
-2002-08-02 Eric Christopher <echristo@redhat.com>
-
- * config.gcc (mips*-*-linux*): Fix ordering of tm_file.
- * config/mips/mips.h (READONLY_DATA_SECTION_ASM_OP): Change
- #ifndef to #undef.
- (TARGET_MEM_FUNCTIONS): Define instead of define to 1.
-
-2002-08-02 David Edelsohn <edelsohn@gnu.org>
-
- PR optimize/7067
- * config/rs6000/rs6000.h (RTX_COSTS): Artificially make MULT
- small if optimizing for size.
-
-2002-08-02 Daniel Jacobowitz <drow@mvista.com>
-
- * configure.in (FORBUILD): Use $build_alias.
- * configure: Regenerated.
-
-2002-08-02 Richard Sandiford <rsandifo@redhat.com>
-
- * config.gcc: Don't include mips/abi64.h in $tm_file.
- * hard-reg-set.h (call_really_used_regs): Declare.
- * config/mips/abi64.h: Remove file.
- * config/mips/linux.h,
- * config/mips/iris6.h: Don't include it.
- * config/mips/mips-protos.h (mips_conditional_register_usage): Declare.
- * config/mips/mips.h (CONDITIONAL_REGISTER_USAGE): Use it.
- (REG_PARM_STACK_SPACE, STACK_BOUNDARY, STRICT_ARGUMENT_NAMING,
- FUNCTION_ARG_PASS_BY_REFERENCE, FUNCTION_ARG_PADDING,
- FUNCTION_ARG_CALLEE_COPIES, MUST_PASS_IN_STACK, MIPS_STACK_ALIGN):
- Bring across definitions from abi64.h.
- (GP_ARG_LAST, FP_ARG_LAST): Use MAX_ARGS_IN_REGISTERS.
- (BIGGEST_MAX_ARGS_IN_REGISTERS): New.
- (struct mips_args): Use it.
- * config/mips/mips.c (mips_conditional_register_usage): Define.
-
-2002-08-02 Jason Merrill <jason@redhat.com>
-
- * langhooks-def.h (LANG_HOOKS_EXPR_SIZE): New macro.
- * langhooks.c (lhd_expr_size): Define default.
- * langhooks.h (struct lang_hooks): Add expr_size.
- * explow.c (expr_size): Call it.
- * expr.c (store_expr): Don't copy an expression of size zero.
- (expand_expr) [CONSTRUCTOR]: Use expr_size to calculate how much
- to store.
- * Makefile.in (builtins.o): Depend on langhooks.h.
-
-2002-08-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (ra-debug.o): Depend on $(TM_P_H).
- * ra-debug.c: Include "tm_p.h".
- * ra-rewrite.c (is_partly_live_1): Change return type to bool.
-
-2002-08-02 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * simplify-rtx.c (simplify_binary_operation): x * 1 is allowed
- when not honoring signalling NaNs.
- (simplify_ternary_operation): a == b has a definite value
- when not honoring NaNs.
-
-2002-08-02 Jason Merrill <jason@redhat.com>
-
- * gdbinit.in (pct): New macro.
-
-2002-08-01 Stan Shebs <shebs@apple.com>
- Andreas Tobler <toa@pop.agri.ch>
-
- * ginclude/stddef.h (_BSD_SIZE_T_DEFINED_): Define if not defined,
- plays nice with Darwin headers.
- (_BSD_RUNE_T_DEFINED_): Likewise.
-
-2002-08-01 Zack Weinberg <zack@codesourcery.com>
-
- * c-common.c (c_common_init): -Wtraditional also implies -Wlong-long.
- * cppinit.c (cpp_post_options): Likewise.
-
- * cppexp.c (cpp_classify_number): Suppress -Wtraditional
- warning about 'LL' suffix (but not 'ULL' etc) when
- -Wno-long-long is in effect.
-
- * cppmacro.c (_cpp_builtin_macro_text) [BT_TIME, BT_DATE]:
- Check for failing time()/localtime(), issue a warning, and
- make __TIME__ and __DATE__ expand to fallback strings.
-
- * doc/cpp.texi, doc/extend.texi: Document behavior of __DATE__
- and __TIME__ when the date and time cannot be determined.
-
-2002-08-02 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (output_cbranch): Hint differently for power4.
-
-2002-08-01 Daniel Jacobowitz <drow@mvista.com>
-
- * Makefile.in ($(BUILD_PREFIX_1)ggc-none.o): Use $(GGC_H).
-
-2002-08-01 Chris Demetriou <cgd@broadcom.com>
-
- * config.gcc (mipsisa64sb1-*-elf*): New configuration.
- (mipsisa64sb1el-*-elf*): Likewise.
- * config/mips/mips.c (mips_cpu_info_table): Add sb1.
- * config/mips/mips.h (processor_type): Add PROCESSOR_SB1.
- (TARGET_SB1, TUNE_SB1): New macros.
- * doc/invoke.texi: Add sb1 to documentation for MIPS -march and
- -mtune flags.
-
-2002-08-01 David Edelsohn <edelsohn@gnu.org>
-
- * varasm.c (asm_emit_uninitialized): Return false if global BSS
- and ASM_EMIT_BSS not supported by target.
- (assemble_variable): Do not duplicate uninitialized logic.
- Fall through if asm_emit_uninitialized failed.
-
-2002-08-01 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/mips.h (BRANCH_LIKELY_P): Remove unused macro.
-
-2002-08-02 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (DBX_OUTPUT_BRAC): Define.
- (DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC): Define.
-
- * config/rs6000/rs6000.c (output_toc): Don't use lshift_double when
- HOST_BITS_PER_WIDE_INT == 64.
-
-2002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * df.c (df_insn_table_realloc): Change parameter to unsigned.
- * optabs.c (expand_binop): Make variable unsigned.
- * simplify-rtx.c (simplify_subreg): Likewise.
- * unroll.c (unroll_loop): Cast to avoid signed/unsigned warnings.
-
-2002-08-01 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * c-common.c (cb_register_builtins): Always define __GXX_ABI_VERSION.
-
-2002-08-01 Richard Henderson <rth@redhat.com>
-
- * toplev.c (parse_options_and_default_flags): Don't set
- flag_reorder_blocks for -Os.
-
- * config/avr/avr.c (avr_optimization_options): Remove.
- * config/avr/avr.h (OPTIMIZATION_OPTIONS): Remove.
- * config/m68hc11/m68hc11.c (m68hc11_optimization_options): Remove.
- * config/m68hc11/m68hc11.h (OPTIMIZATION_OPTIONS): Remove.
-
-2002-08-01 H.J. Lu <hjl@gnu.org>
- Richard Henderson <rth@redhat.com>
-
- * output.h (DECL_READONLY_SECTION): Remove.
- (decl_readonly_section): Declare.
- * varasm.c (decl_readonly_section): New.
- (default_section_type_flags, default_select_section): Use it.
- * config/arm/pe.c (arm_pe_unique_section): Likewise.
- * config/i386/interix.c (i386_pe_unique_section): Likewise.
- * config/i386/winnt.c (i386_pe_unique_section): Likewise.
- * config/mcore/mcore.c (mcore_unique_section): Likewise.
- * config/mips/mips.c (mips_unique_section): Likewise.
-
-2002-08-01 Richard Henderson <rth@redhat.com>
-
- * integrate.c (copy_rtx_and_substitute): Squash MEM_EXPR when it
- refers to a subroutine parameter.
-
-2002-08-01 Jakub Jelinek <jakub@redhat.com>
-
- * varasm.c (assemble_visibility): Strip name encoding.
-
-2002-08-01 Ian Dall <ian@sibyl.beware.dropbear.id.au>
-
- * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE): Correct earlier patch.
- (RETURN_ADDR_RTX): Cannot determine return address for FRAME > 0
- when there is no frame pointer.
- (INITIAL_FRAME_POINTER_OFFSET): Count stack space for saved fp
- registers properly.
- * config/ns32k/__unorddf2.c: New file.
- * config/ns32k/__unordsf2.c: New file.
- * config/ns32k/t-ns32k: New file.
- * config.gcc (ns32k-*-netbsd*): Use it.
-
-2002-08-01 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.h (SPU_CONST_OFFSET_OK): Change to 0xff.
-
-2002-08-01 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c (__GXX_ABI_VERSION): Correct spelling.
-
-2002-08-01 Benjamin Kosnik <bkoz@redhat.com>
-
- * c-common.c (cb_register_builtins): Set __GXX_ABI_VERSION__ to 102.
-
-2002-08-01 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md: Add [!]TARGET_MIPS16 to sgtu conditions.
-
-2002-08-01 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
-
- * gcse.c (expr_hash_table_size, n_exprs, set_hash_table_size,
- n_sets): Removed.
- (expr_hash_table, set_hash_table): Type changed to ...
- (struct hash_table): New type.
- (hash_scan_insn, hash_scan_set, hash_scan_clobber, hash_scan_call,
- insert_expr_in_table, insert_set_in_table, compute_hash_table,
- dump_hash_table, lookup_expr, lookup_set, compute_local_properties,
- compute_ae_gen, compute_ae_kill): Modified to pass the table explicitly.
- (alloc_set_hash_table, alloc_expr_hash_table): Merged to ...
- (alloc_hash_table): New.
- (free_set_hash_table, free_expr_hash_table): Merged to ...
- (free_hash_table): New.
- (compute_set_hash_table, compute_expr_hash_table): Merged to ...
- (compute_hash_table_work): New.
- (classic_gcse, one_classic_gcse_pass, compute_cprop_data,
- find_avail_set, one_cprop_pass, find_bypass_set, compute_pre_data,
- pre_edge_insert, pre_insert_copies, pre_delete, pre_gcse,
- one_pre_gcse_pass, compute_transpout, compute_code_hoist_vbeinout,
- hoist_code, one_code_hoisting_pass,
- trim_ld_motion_mems): Altered due to changed type of hash tables.
-
-2002-08-01 Zack Weinberg <zack@codesourcery.com>
-
- * final.c (output_alternate_entry_point):
- If ASM_OUTPUT_TYPE_DIRECTIVE is defined, use it.
-
-2002-08-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * objc/objc-act.c (encode_complete_bitfield): Add prototype and
- avoid ISO C style function definition.
-
- * expr.c (expand_assignment): Delete unused variable.
-
-2002-08-01 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * c-common.c (cb_register_builtins): Set
- __FINITE_MATH_ONLY__ to 1 if -ffinite-math-only
- is given, and to 0 otherwise.
- * combine.c (simplify_if_then_else): HONOR_NANS
- implies FLOAT_MODE_P.
-
-2002-08-01 Neil Booth <neil@daikokuya.co.uk>
-
- * cppinit.c (COMMAND_LINE_OPTIONS): Remove OPT_dollar.
- (cpp_handle_option): Don't handle it.
- (print_help): Update.
- * doc/cppopts.texi: Update.
-
-2002-08-01 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c (cb_register_builtins): If C++, define
- __EXCEPTIONS, __DEPRECATED and __GXX_ABI_VERSION as appropriate.
- * gcc.c (cpp_unique_options): Remove __GXX_ABI_VERSION.
-cp:
- * lang-specs.h: Simplify in accordance with new code in
- c-common.c.
-
-2002-08-01 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c: Define all C/ObjC/C++ warning and flag variables.
- * c-common.h: Declare all C/ObjC/C++ warning and flag variables.
- * c-decl.c: Move all warning and flag variables to c-common.c.
- * c-format.c: Move all warning variables to c-common.c.
- * c-tree.h: Move all warning and flag declarations to c-common.h.
- * objc/objc-act.c: Move all warning variables to c-common.c.
- (flag_warn_protocol): Rename warn_protocol.
-
-2002-07-31 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa-linux.h (GLOBAL_ASM_OP): Fix typo.
-
-2002-07-31 Graham Stott <graham.stott@btinternet.com>
-
- * config/stormy16/stormy16.h (BSS_SECTION_ASM_OP): Add missing
- .section prefix.
-
-2002-07-31 Stan Shebs <shebs@apple.com>
-
- * config.gcc (i[34567]86-*-darwin*): New configuration.
- * config/darwin.h (TARGET_ENCODE_SECTION_INFO): Undefine before
- defining.
- (TARGET_ENCODE_SECTION_INFO): Ditto.
- (ASM_PREFERRED_EH_DATA_FORMAT): Ditto.
- * config/darwin.c (machopic_indirect_data_reference): Remove
- setting of RTX_UNCHANGING_P.
- (machopic_legitimize_pic_address): Move RTX_UNCHANGING_P up so as
- not to be applied to sums.
- * config/i386/t-darwin: New file.
- * config/i386/darwin.h: New file.
- * config/i386/i386.h (TARGET_MACHO): Add default definition.
- * config/i386/i386.md (tablejump): Add TARGET_MACHO case.
- * config/i386/i386.c (output_set_got): For Mach-O, output Mach-O
- label and not the GOT add.
- (constant_address_p): For Mach-O, seeing a CONST is enough.
- (legitimate_pic_address_disp_p): Add a Mach-O case.
- (legitimate_address_p): Also test machopic_operand_p if Mach-O.
- (legitimize_pic_address): Use generic Mach-O code to legitimize.
- (output_pic_addr_const): Suppress @PLT if Mach-O, and parens
- if outputting a difference.
- (ix86_output_addr_diff_elt): Add Mach-O case.
- (ix86_expand_move): Similarly.
- (ix86_expand_call): Similarly.
- (current_machopic_label_num): New global.
- (machopic_output_stub): New function.
- (ix86_value_regno): New function.
- (ix86_function_value): Use it instead of VALUE_REGNO.
- (ix86_libcall_value): Ditto.
- * config/i386/unix.h (VALUE_REGNO): Remove.
-
-2002-07-31 Graham Stott <grahas@btinternet.com>
-
- * config/rs6000/rs6000.c(rs6000_hash_constant): Fix
- hash for LABEL_REF's.
-
-2002-07-31 Graham Stott <grahams@btinternet.com>
-
- * config/rs6000/rs6000.c (spe_init_builtins,
- altivec_init_builtins, rs6000_common_init_builtins):
- Replace ANSI with K&R function def.
-
-2002-07-31 David Edelsohn <edelsohn@gnu.org>
-
- * rs6000.c (validate_condition_mode): Test flag_finite_math_only
- for CCFPmode.
-
-2002-07-31 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/crtn.asm: Don't use __mips16 to determine the
- return-address offset. Define RA to a suitable temporary
- register for the return address.
-
-2002-07-31 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (eh_set_lr_si, eh_set_lr_di): Change
- constraints to 'd'.
-
-2002-07-30 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/elf.h (STARTFILE_SPEC): Define differently if
- default ABI is MEABI. (Undoes incorrect change in Eric Christopher's
- patch on 2002-07-29.)
- * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
-
-2002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.h, arc.h, arm/aout.h, avr.h, cris.h, d30v.h, dsp16xx.h,
- fr30.h, h8300.h, i370.h, i386/sco5.h, i386/unix.h, i960.h, ia64.h,
- ip2k.h, m32r.h, mcore.h, mips.h, mn10200.h, mn10300.h, ns32k.h,
- openbsd.h, pa/pa-linux.h, pdp11.h, romp.h, rs6000/sysv4.h,
- s390/linux.h, sh.h, sparc.h, stormy16.h, v850.h, vax.h, xtensa.h:
- (ASM_GLOBALIZE_LABEL): Delete.
- (GLOBAL_ASM_OP): Define.
-
- * m68hc11.h, m68k.h, m88k.h (ASM_GLOBALIZE_LABEL): Delete.
-
- * defaults.h (ASM_GLOBALIZE_LABEL): Provide a default.
- * doc/tm.texi (ASM_GLOBALIZE_LABEL): Update docs.
-
-2002-07-30 Geoffrey Keating <geoffk@redhat.com>
-
- * doc/extend.texi (Hints implementation): Document that GCC
- mostly ignores `register'.
-
-2002-07-30 Toon Moene <toon@moene.indiv.nluug.nl>
-
- * flags.h: Declare flag_finite_math_only.
- Use it in definition of HONOR_NANS and
- HONOR_INFINITIES.
- * c-common.c (cb_register_builtins): Emit
- __FINITE_MATH_ONLY__ when flag_finite_math_only
- is set.
- * combine.c (simplify_if_then_else): If
- flag_finite_math_only is set, a == b has a
- definite value.
- * toplev.c: Initialize flag_finite_math_only.
- (set_flags_fast_math): Set it on -ffast-math.
- (flag_fast_math_set_p): Test it.
- * doc/invoke.texi: Document -ffinite-math-only.
-
-2002-07-30 Richard Henderson <rth@redhat.com>
-
- * ifcvt.c (noce_get_alt_condition): Use reg_overlap_mentioned_p.
- (noce_process_if_block): Likewise.
-
-2002-07-30 Bernd Schmidt <bernds@redhat.com>
-
- * ifcvt.c (cond_exec_process_if_block): Fix a merging error.
- Bail out early if false_expr is NULL and we'd crash due to this.
- * genemit.c (gen_expand): Recognize return insns even if the return
- appears in a parallel.
- * libgcc2.c: Expand macro DECLARE_LIBRARY_RENAMES if it is defined.
- * config/fp-bit.c: Likewise.
- * doc/tm.texi: Document it.
-
-2002-07-30 David Edelsohn <edelsohn@gnu.org>
- Zack Weinberg <zack@codesourcery.com>
-
- * rs6000.c (rs6000_expand_unop_builtin): Check icode not
- CODE_FOR_nothing. Change switch to if.
- (rs6000_expand_binop_builtin): Same.
- (rs6000_expand_builtin): Expand builtin if target support enabled.
- (rs6000_init_builtins): Init builtin if target support enabled.
- (rs6000_common_init_builtins): Check icode not CODE_FOR_nothing.
-
-2002-07-30 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
-
- * gcc.c (cpp_unique_options): Define __GXX_ABI_VERSION, bump it to 101.
-
-2002-07-30 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (SUBTARGET_ASM_DEBUGGING_SPEC): Fix typo.
-
-Tue Jul 30 18:31:31 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (cond_delay_slot): New attribute.
- (cbranch delay): Use it for anulled-true case.
- (stuff_delay_slot): New pattern.
- * sh.c (print_operand, case '.'): Don't print .s / /s fore zero-length
- delay slot insn.
- (gen_far_branch): Emit stuff_delay_slot pattern.
-
-Tue Jul 30 11:21:44 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * unroll.c (copy_loop_body): Don't copy NOTE_INSN_LOOP_CONT.
-
-2002-07-30 Kazu Hirata <kazu@cs.umass.edu>
-
- * fold-const.c: Fix comment typos.
- * gcse.c: Likewise.
- * reload1.c: Likewise.
-
-2002-07-29 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.md: Disallow CCEQ compare with crnor/crnot
- for TARGET_SPE.
-
-2002-07-30 Gabriel Dos Reis <gdr@nerim.net>
-
- * c-pretty-print.h (pp_c_statement): Declare.
- * c-pretty-print.c (pp_c_postfix_expression): #if 0 support for SRCLOC.
- (pp_c_statement): Define.
-
-2002-07-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha.h, arc.h, arm/aout.h, avr.h, c4x.h, cris.h, d30v.h,
- darwin.h, dsp16xx.h, fr30.h, h8300.h, i370.h, i386.h, i960.h,
- ip2k.h, m32r.h, m68hc11.h, m68k.h, m88k.h, mcore.h, mips.h,
- mn10200.h, mn10300.h, ns32k.h, pa/pa-linux.h, pdp11.h, romp.h,
- rs6000/sysv4.h, s390/linux.h, sh.h, sparc.h, stormy16.h,
- v850.h, vax.h, xtensa.h (ASM_OUTPUT_LABEL): Delete definition.
-
- * defaults.h (ASM_OUTPUT_LABEL): Provide a default.
- * doc/tm.texi (ASM_OUTPUT_LABEL): Update docs.
-
-2002-07-30 Gabriel Dos Reis <gdr@nerim.net>
-
- * c-pretty-print.c (pp_c_primary_expression): Handle STMT_EXPR.
- (pp_c_postfix_expression): Handle ARROW_EXPR, FFS_EXPR,
- COMPOUND_LITERAL_EXPR, VA_ARG_EXPR.
- (pp_c_expression): Update.
-
-2002-07-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * alpha/vms-cc.c (preprocess_args, main): Use xstrdup and/or
- concat in lieu of xmalloc/strcpy/memcpy/sprintf.
- * alpha/vms-ld.c (main): Likewise.
- * dsp16xx.c (double_reg_to_memory): Likewise.
- * mcore.c (mcore_expand_prolog): Likewise.
- * cppfiles.c (read_name_map): Likewise.
- * gensupport.c (process_rtx, identify_predicable_attribute,
- alter_test_for_insn): Likewise.
- * vmsdbgout.c (write_rtnbeg, vmsdbgout_init): Likewise.
-
-2002-07-29 Roger Sayle <roger@eyesopen.com>
-
- * builtins.c (expand_builtin): Change the default behavior to
- only issue an error if the builtin function doesn't have a
- fallback library call. Remove several cases handled by the
- new default.
-
-2002-07-29 John David Anglin <dave@hiauly1.hia.nrc>
-
- * real.c (ieee_24, ieee_53, ieee_64, ieee_113): Define only if the
- floating point format of the target is IEEE.
- * (dec_f, dec_d, dec_g, dec_h): Define only if the floating point
- format of the target is DEC.
-
-2002-07-29 Richard Henderson <rth@redhat.com>
-
- * unroll.c (verify_addresses): Remove.
- (find_splittable_givs): Never split DEST_ADDR givs.
-
-2002-07-29 Geoffrey Keating <geoffk@redhat.com>
-
- * doc/gty.texi (GGC Roots): Clarify that the list of syntaxes
- is exhaustive.
- (Files): Improve documentation on generated source files.
-
- * doc/extend.texi (Translation implementation): Document what
- diagnostics look like.
- (Identifiers implementation): Document that there's normally no
- limit on identifier names.
- (Integers implementation): Document two's complement.
- (Hints implementation): Document that GCC honors 'inline', mostly.
- (Preprocessing directives implementation): Document that GCC
- requires the current time.
-
-2002-07-30 Gabriel Dos Reis <gdr@nerim.net>
-
- * c-pretty-print.h (struct c_pretty_print_info): Add new member.
- (pp_initializer): New macro.
- (pp_c_initializer): Declare.
- * c-pretty-print.c (pp_c_primary_expression): HAndle TARGET_EXPR.
- (pp_c_initializer): Define.
- (pp_c_initializer_list): New function.
- (pp_c_postfix_expression): Handle ABS_EXPR, COMPLEX_CST,
- VECTOR_CST, CONSTRUCTOR.
- (pp_c_unary_expression): Handle CONJ_EXPR, REALPART_EXPR,
- IMAGPART_EXPR.
- (pp_c_cast_expression): Handle FLOAT_EXPR.
- (pp_c_assignment_expression): Handle INIT_EXPR.
- (pp_c_expression): Update.
-
-2002-07-30 Neil Booth <neil@daikokuya.co.uk>
-
- * objc/objc-act.c (objc_init): Return immediately if filename
- is NULL.
-
-2002-07-29 Eric Christopher <echristo@redhat.com>
-
- * config/mips/elf.h: Remove ecoff.h and gofast includes.
- (DWARF2_DEBUGGING_INFO, DBX_DEBUGGING_INFO): Define unconditionally.
- (SDB_DEBUGGING_INFO): Undefine.
- (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
- (PUT_SDB_SIZE): Remove.
- (SUBTARGET_ASM_DEBUGGING_SPEC): Redefine.
- (STARTFILE_SPEC): Add isa3264 define.
- * config/mips/elf64.h: Ditto. Move TARGET_MEM_FUNCTIONS from here...
- * config/mips/ecoff.h: Remove. and here...
- * config/mips/iris3.h: and here...
- * config/mips/sni-svr4.h: and here...
- * config/mips/mips.h: To here. Remove OBJECT_FORMAT_ROSE ifdefs.
- Add assembler -mmdebug options for non-dwarf debugging.
- * config/mips/r3900.h: Remove debug info defines.
- * config/mips/isa32-linux.h: Remove, move functionality to config.gcc.
- * config/mips/isa3264.h: Ditto.
- * config/mips/t-isa3264: Fix up for file removal and gofast configure
- change.
- * config/mips/t-elf: Ditto.
- * config/mips/t-ecoff: Ditto.
- * config/mips/t-r3900: Ditto.
- * config/mips/t-iris5-6: Ditto.
- * config/mips/t-isa3264: Ditto.
- * config/mips/t-linux: Remove.
- * config/mips/t-netbsd: Remove.
- * config/mips/t-mips: New file.
- * config/mips/t-gofast: Ditto.
- * config/mips/netbsd.h: Remove unnecessary undefines.
- * config/mips/linux.h: Remove #include of mips.h.
- * config.gcc: Add mips.h include for elf targets. Remove tm_file
- for ecoff. Add gofast configure option for mips.
-
-2002-07-29 Chris Demetriou <cgd@broadcom.com>
-
- * configure.in (mips*-*-*): Add a test to see if MIPS libgloss
- linker scripts use STARTUP directives consistently.
- * configure: Regenerate.
- * config.in: Regenerate.
- * config/mips/elf.h (STARTFILE_SPEC): Define conditionally, based
- on whether HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is defined.
- * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
- * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine if
- HAVE_MIPS_LIBGLOSS_STARTUP_DIRECTIVES is set; the result
- will be the same.
-
-2002-07-29 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.md ("cpu"): Add ppc8540 to attribute.
-
-2002-07-29 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.h (RTX_COSTS): Add MULT case for 8540.
-
-2002-07-29 Aldy Hernandez <aldy@quesejoda.com>
-
- * config/rs6000/rs6000.md: Move altivec patterns from here...
-
- * config/rs6000/altivec.md: ...to here.
-
-2002-07-29 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.md ("spe_evmra"): Change to unspec.
-
-2002-07-29 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (set_mem_attributes_minus_bitpos): Rename from
- set_mem_attributes and add BITPOS argument. Subtract it from
- OFFSET when same is adjusted.
- (set_mem_attributes): New wrapper function.
- * expr.c (expand_assignment): Use set_mem_attributes_minus_bitpos;
- remove offset adjustment hack.
- * expr.h (set_mem_attributes_minus_bitpos): Declare.
-
-2002-07-29 Gabriel Dos Reis <gdr@nerim.net>
-
- * Makefile.in (C_OBJS): Include c-pretty-print.o
- (c-pretty-print.o): Add depency rule.
- * pretty-print.h: Add more macros.
- * c-pretty-print.c: New file.
- * c-pretty-print.h: Likewise.
-
-2002-07-29 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/spe.h (__internal_ev_mwhgumian): Cast vector
- constants to __ev64_s32__.
- (__internal_ev_mwhgsmian): Same.
- (__internal_ev_mwhgsmfan): Same.
- (__internal_ev_mwhgssfan): Same.
- (__internal_ev_mwhgumiaa): Same.
- (__internal_ev_mwhgsmiaa): Same.
- (__internal_ev_mwhgsmfaa): Same.
- (__internal_ev_mwhgssfaa): Same.
-
-2002-07-29 David Edelsohn <edelsohn@gnu.org>
-
- * varasm.c (assemble_variable): Narrow test for uninitialized
- without BSS target support.
-
-2002-07-29 Nathan Sidwell <nathan@codesourcery.com>
-
- * profile.c: Add file comment describing the overall algorithm and
- structures.
- (struct edge_info): Add comments.
- (struct bb_info): Add comments.
- * basic-block.h (EDGE_*): Add comments.
- * doc/gcov.texi (Gcov Data Files): Document bit flags.
-
-2002-07-29 Bob Wilson <bob.wilson@acm.org>
-
- * config/xtensa/elf.h, config/xtensa/linux.h
- (TARGET_OS_CPP_BUILTINS): Define.
- (CPP_PREDEFINES): Remove.
- * config/xtensa/xtensa.h (TARGET_CPU_CPP_BUILTINS): Define.
- (CPP_SPEC): Remove.
-
-2002-07-29 Zack Weinberg <zack@codesourcery.com>
-
- * gensupport.c: Include hashtab.h.
- (insn_elision, condition_table, hash_c_test, cmp_c_test,
- maybe_eval_c_test): New routines and data structures to
- support insn elision.
- (init_md_reader): Read and initialize the condition_table.
- (read_md_rtx): Discard insn patterns whose C test is provably
- always false.
- * gensupport.h: Declare new functions and data structures.
-
- * genconditions.c, dummy-conditions.c: New files.
- * Makefile.in: Build genconditions; run it to construct
- insn-conditions.c; build that and link it into most gen*
- programs.
- (HOST_SUPPORT, HOST_EARLY_SUPPORT): New variables.
- (GEN): Delete, unused.
- (STAGESTUFF): Update.
-
- * gencodes.c: (gen_insn): #define CODE_FOR_xxx equal to
- CODE_FOR_nothing for all elided patterns.
- (main): Tweaked to support this.
- * genflags.c (gen_proto): Emit a static inline generator
- function here for all elided patterns, which simply returns
- NULL_RTX.
- (gen_insn): Do not define HAVE_xxx for elided patterns.
- (main): Tweaked to support this. No need to forward-declare
- struct rtx_def.
- * genrecog.c: Do not bother emitting the C test if it's known
- to be true at compile time.
-
-2002-07-29 Mike Stump <mrs@apple.com>
-
- * config.gcc (target_gtfiles): Initialize, as otherwise cross
- compilers hosted on powerpc-apple-darwin6.0 won't even build.
-
-2002-07-29 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (sibcall, sibcall_value): Add RETURN as part of the pattern,
- remove clobber of LR.
- (sibcall_insn, sibcall_value_insn): Update accordingly.
- (sibcall_epilogue): Remove debugging comment from assembler stream.
-
-2002-07-29 Gabriel Dos Reis <gdr@nerim.net>
-
- * pretty-print.h: Define more macros.
- * diagnostic.h (output_formatted_integer): Moved from...
- * diagnostic.c: ... here.
-
-2002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * stormy16.h (ASM_OUTPUT_SYMBOL_REF): Use ASM_OUTPUT_LABEL_REF.
-
-2002-07-28 Zack Weinberg <zack@codesourcery.com>
-
- * defaults.h (ASM_OUTPUT_MEASURED_SIZE): Take only two
- arguments. Always use ".-symbol" as expression argument.
- * doc/tm.texi: Update to match. Document requirement for
- ".size symbol, .-symbol" to be acceptable to assembler.
-
- * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
- config/arm/elf.h, config/avr/avr.h, config/cris/aout.h,
- config/i386/freebsd-aout.h, config/i386/sco5.h,
- config/ip2k/ip2k.h, config/m88k/m88k.h, config/xtensa/elf.h,
- config/xtensa/linux.h: Update uses of ASM_OUTPUT_MEASURED_SIZE.
-
-2002-07-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (gengtype-lex.c): Fix error in last change.
-
- * alpha/freebsd.h (TARGET_OS_CPP_BUILTINS): Add missing
- backslash.
-
- * Makefile.in (vmsdbgout.o): Depend on function.h.
-
- * vmsdbgout.c: Include function.h.
-
-2002-07-28 Alan Modra <amodra@bigpond.net.au>
-
- * prefix.c (update_path): Don't strip single `.' path components
- unless stripping a later `..' component. Exit loop as soon as
- a valid path is found.
-
-2002-07-27 Roger Sayle <roger@eyesopen.com>
-
- * builtins.def [DEF_GCC_BUILTIN]: Require an explicit ATTRS
- argument. Mark BUILT_IN_RETURN, BUILT_IN_EH_RETURN,
- BUILT_IN_LONGJMP and BUILT_IN_TRAP as noreturn, the ISO C99
- floating point unordered comparisons (e.g. __builtin_isgreater)
- as const, and leave the remaining GCC_BUILTINs unchanged.
-
- * c-decl.c (builtin_function): No need to explicitly mark
- BUILT_IN_RETURN and BUILT_IN_EH_RETURN as noreturn.
-
-2002-07-27 Roger Sayle <roger@eyesopen.com>
-
- * Makefile.in: rtlanal.o now depends upon real.h.
-
- * flags.h [flag_signaling_nans]: New flag.
- [HONOR_SNANS]: New macro.
-
- * toplev.c [flag_signaling_nans]: Initialize to false.
- (f_options): Add processing for "-fsignaling-nans".
- (set_fast_math_flags): Clear flag_signaling_nans with -ffast-math.
- (process_options): flag_signaling_nans implies flag_trapping_math.
-
- * c-common.c (cb_register_builtins): Define __SUPPORT_SNAN__
- when -fsignaling-nans. First step to implementing WG14's N965.
-
- * fold-const.c (fold) [MULT_EXPR]: Conditionalize transforming
- 1.0 * x into x, and -1.0 * x into -x on !HONOR_SNANS.
- [RDIV_EXPR]: Conditionalize x/1.0 into x on !HONOR_SNANS.
-
- * simplify-rtx.c (simplify_relational_operation): Conditionalize
- transforming abs(x) < 0.0 into false on !HONOR_SNANS.
-
- * rtlanal.c: #include real.c for TARGET_FLOAT_FORMAT definitions
- required by HONOR_SNANS. (may_trap_p): Floating point DIV, MOD,
- UDIV, UMOD, GE, GT, LE, LT and COMPARE may always trap with
- -fsignaling_nans. EQ and NE only trap for flag_signaling_nans
- not flag_trapping_math (i.e. HONOR_SNANS but not HONOR_NANS).
-
- * doc/invoke.texi: Document new -fsignaling-nans compiler option.
-
-2002-07-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * Makefile.in (gengtype-lex.c): Work around a bug in flex.
- * gengtype-lex.l (YY_USE_PROTOS): Undef.
- (YY_DECL): Define.
-
-2002-07-27 Roger Sayle <roger@eyesopen.com>
-
- * doc/invoke.texi: Document that both -fno-builtin-foo and
- -fno-builtin are supported by the g++ front-end.
-
-2002-07-27 Stan Shebs <shebs@apple.com>
-
- * configure.in: Rename config_gtfiles to target_gtfiles.
- * configure: Regenerate.
- * doc/gty.texi: Update reference.
- * config.gcc (powerpc-*-darwin*): Set target_gtfiles
- instead of appending to it.
-
-2002-07-25 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (function_arg_advance): SPE vararg
- vectors are split into two registers.
- (function_arg): Same.
-
-Thu Jul 26 23:00:13 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * pa.md (extv): Check predicates before emitting extv_32.
-
-2002-07-27 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (rs6000_traceback_name): New var.
- (rs6000_traceback): New var.
- (rs6000_override_options): Set rs6000_traceback.
- (rs6000_output_function_epilogue): Implement traceback options.
- * config/rs6000/rs6000.h (TARGET_OPTIONS): Add "traceback=".
- (rs6000_traceback_name): Declare.
-
- * config/rs6000/rs6000.c (output_profile_hook): Don't generate profile
- label reference when NO_PROFILE_COUNTERS.
-
-2002-07-26 Jason Merrill <jason@redhat.com>
-
- * function.c (assign_parms): Handle frontend-directed pass by
- invisible reference.
-
-2002-07-26 Neil Booth <neil@daikokuya.co.uk>
-
- * doc/cppopts.texi: Update.
-
-2002-07-26 Neil Booth <neil@daikokuya.co.uk>
-
- * cppmacro.c (_cpp_create_definition): Don't attempt redefinition
- warnings on assertions.
-
-2002-07-26 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.h (RID_AND, RID_AND_EQ, RID_NOT, RID_NOT_EQ,
- RID_OR, RID_OR_EQ, RID_XOR, RID_XOR_EQ, RID_BITAND, RID_BITOR,
- RID_COMPL): Remove.
- * c-parse.in (rid_to_yy): Similarly.
-
-2002-07-26 Jason Merrill <jason@redhat.com>
-
- * c-dump.c: Resurrect.
- * tree-dump.c: Move C-specific stuff to c-dump.c.
- * c-common.h: Declare c_dump_tree.
- * c-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN): Define.
- * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o.
- (c-dump.o): New rule.
-
-2002-07-26 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md: Enable patterns using rlwinm for
- PowerPC64. Replace "T" and "S" constraints with "n" when the
- predicate will do. Formatting fixes.
- (extzvsi_internal2): Use "andi.", "andis." and attr type of "compare"
- as for extzvsi_internal1.
-
-2002-07-25 Neil Booth <neil@daikokuya.co.uk>
-
- * dwarfout.c (VERSION_ASM_OP, DERIV_BEGIN_LABEL_FMT,
- DERIV_END_LABEL_FMT): Remove.
- (SL_BEGIN_LABEL_FMT, SL_END_LABEL_FMT): Move.
-
-2002-07-25 Neil Booth <neil@daikokuya.co.uk>
-
- * objc/objc-act.c (UTAG_STATICS, UTAG_PROTOCOL_LIST, USERTYPE):
- Remove.
-
-2002-07-25 Stan Shebs <shebs@apple.com>
-
- * config/rs6000/rs6000.c (rs6000_emit_prologue): Remove unused
- local var dwarfp.
- (output_compiler_stub): Remove unused locals.
- (output_call): Always initialize line number.
-
-Thu Jul 25 20:34:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (LOAD_EXTEND_OP): QImode zero-extends on SHmedia.
- * sh.md (truncdiqi2, movqi_media): Likewise.
-
-2002-07-25 Neil Booth <neil@daikokuya.co.uk>
-
- * gcse.c (obstack_chunk_alloc): Remove.
- (gcse_alloc): Fix to count allocated bytes.
- * collect2.c (SYMBOL__MAIN): Remove.
-
-2002-07-25 Neil Booth <neil@daikokuya.co.uk>
-
- * gcc.c (TARGET_EXECUTABLE_SUFFIX): Only used if
- HAVE_TARGET_EXECUTABLE_SUFFIX.
-
-Thu Jul 25 18:57:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * rtl.h (mem_attrs): Spell out more clearly the roles of ALIGN,
- SIZE, EXPR and OFFSET.
-
-2002-07-25 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (set_mem_attributes): Fix size and alignment thinkos
- in ARRAY_REF of DECL_P case.
-
-2002-07-25 Richard Sandiford <rsandifo@redhat.com>
-
- * doc/invoke.texi: Document -mabi=meabi, and expand on the EABI
- description. Document -mips32, -mips64, and the associated -march
- values. Describe the "mipsN" arguments to -march. Say that the
- -mipsN options are equivalent to -march. Reword the description
- of default type sizes.
- * toplev.h (target_flags_explicit): Declare.
- * toplev.c (target_flags_explicit): New var.
- (set_target_switch): Update target_flags_explicit.
- * config/mips/abi64.h (SUBTARGET_TARGET_OPTIONS): Undefine.
- * config/mips/elf64.h (MIPS_ISA_DEFAULT): Undefine.
- * config/mips/iris6.h (SUBTARGET_ASM_SPEC): -mabi=64 implies -mips3.
- * config/mips/isa3264.h (MIPS_ENABLE_EMBEDDED_O32): Undefine.
- * config/mips/mips.h (mips_cpu_info): New struct.
- (mips_cpu_string, mips_explicit_type_size_string): Remove.
- (mips_cpu_info_table, mips_arch_info, mips_tune_info): Declare.
- (MIPS_CPP_SET_PROCESSOR): New macro.
- (TARGET_CPP_BUILTINS): Declare a macro for each supported processor.
- Define _MIPS_ARCH and _MIPS_TUNE.
- (MIPS_ISA_DEFAULT): Don't provide a default value. Instead...
- (MIPS_CPU_STRING_DEFAULT): Set to "from-abi" if neither it nor
- MIPS_ISA_DEFAULT were already defined.
- (MULTILIB_DEFAULTS): Add MULTILIB_ABI_DEFAULT.
- (TARGET_OPTIONS): Remove -mcpu and -mexplicit-type-size.
- (ABI_NEEDS_32BIT_REGS, ABI_NEEDS_64BIT_REGS): New.
- (GAS_ASM_SPEC): Remove -march, -mcpu, -mgp* and -mabi rules.
- (ABI_GAS_ASM_SPEC): Remove.
- (MULTILIB_ABI_DEFAULT, ASM_ABI_DEFAULT_SPEC): New macros.
- (ASM_SPEC): Add -mgp32, -mgp64, -march, -mabi=eabi and -mabi=o64.
- Invoke %(asm_abi_default_spec) if no ABI was specified.
- (CC1_SPEC): Remove ISA -> register-size rules.
- (EXTRA_SPECS): Remove abi_gas_asm_spec. Add asm_abi_default_spec.
- * config/mips/mips.c (mips_arch_info, mips_tune_info): New vars.
- (mips_cpu_string, mips_explicit_type_size_string): Remove.
- (mips_cpu_info_table): New array.
- (mips_set_architecture, mips_set_tune): New fns.
- (override_options): Rework to make -mipsN equivalent to -march.
- Detect more erroneous cases, including those removed from CC1_SPEC.
- Don't change the ABI based on architecture, or vice versa.
- Unify logic with GAS.
- (mips_asm_file_start): Get architecture name from mips_arch_info.
- (mips_strict_matching_cpu_name_p, mips_matching_cpu_name_p): New fns.
- (mips_parse_cpu): Take the name of the option as argument. Handle
- 'from-abi'. Raise an error if the option is wrong.
- (mips_cpu_info_from_isa): New fn.
-
-2002-07-25 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md (tablejump_mips161): Use gen_rtx_LABEL_REF.
- (tablejump_mips162): Likewise.
-
-Thu Jul 25 10:23:41 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * simpify-rtx.c (simplify_subreg): Don't pass MODE_CC mode to
- int_mode_for_mode.
-
-2002-07-25 Gabriel Dos Reis <gdr@nerim.net>
-
- * c-common.c (c_sizeof_or_alignof_type): Take a third argument for
- complaining.
- * c-common.h (c_sizeof): Adjust definition.
- (c_alignof): Likewise.
- * c-tree.h (c_sizeof_nowarn): Now macro.
- * c-typeck.c (c_sizeof_nowarn): Remove definition.
-
-2002-07-25 Neil Booth <neil@daikokuya.co.uk>
-
- * c-decl.c (c_decode_option): No need to handle switches
- cpplib handles.
-
-2002-07-24 Zack Weinberg <zack@codesourcery.com>
-
- * defaults.h (ASM_OUTPUT_TYPE_DIRECTIVE, ASM_OUTPUT_SIZE_DIRECTIVE,
- ASM_OUTPUT_MEASURED_SIZE): New default definitions of new macros.
- * doc/tm.texi: Document them. Also document SIZE_ASM_OP,
- TYPE_ASM_OP, and TYPE_OPERAND_FMT.
-
- * config/elfos.h, config/netbsd-aout.h, config/openbsd.h,
- config/alpha/elf.h, config/arm/elf.h, config/avr/avr.h,
- config/cris/aout.h, config/i386/freebsd-aout.h,
- config/i386/sco5.h, config/ia64/ia64.c, config/ip2k/ip2k.h,
- config/m68k/m68kelf.h, config/m68k/m68kv4.h, config/m88k/m88k.h,
- config/mcore/mcore-elf.h, config/mips/elf.h, config/mips/elf64.h,
- config/mips/iris6.h, config/mips/linux.h, config/pa/pa-linux.h,
- config/pa/pa64-hpux.h, config/rs6000/sysv4.h,
- config/xtensa/elf.h, config/xtensa/linux.h:
- Use the new macros.
- Where possible, remove redundant definitions of SIZE_ASM_OP,
- TYPE_ASM_OP, and TYPE_OPERAND_FMT.
-
-2002-07-24 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/eabi.h: Define TARGET_SPE_ABI, TARGET_SPE,
- TARGET_ISEL, and TARGET_FPRS.
-
- * doc/invoke.texi (RS/6000 and PowerPC Options): Document
- -mabi=spe, -mabi=no-spe, and -misel=.
-
- * config/rs6000/rs6000-protos.h: Add output_isel.
- Move vrsave_operation prototype here.
-
- * config/rs6000/rs6000.md (sminsi3): Allow pattern for TARGET_ISEL.
- (smaxsi3): Same.
- (uminsi3): Same.
- (umaxsi3): Same.
- (abssi2_nopower): Disallow when TARGET_ISEL.
- (*ne0): Same.
- (negsf2): Change to expand and rename old pattern to *negsf2.
- (abssf2): Change to expand and rename old pattern to *abssf2.
-
- New expanders: fix_truncsfsi2, floatunssisf2, floatsisf2,
- fixunssfsi2.
-
- Change patterns that check for TARGET_HARD_FLOAT or
- TARGET_SOFT_FLOAT to also check TARGET_FPRS.
-
- * config/rs6000/rs6000.c: New globals: rs6000_spe_abi,
- rs6000_isel, rs6000_fprs, rs6000_isel_string.
- (rs6000_override_options): Add 8540 case to
- processor_target_table.
- Set rs6000_isel for the 8540.
- Call rs6000_parse_isel_option.
- (enable_mask_for_builtins): New.
- (rs6000_parse_isel_option): New.
- (rs6000_parse_abi_options): Add spe and no-spe.
- (easy_fp_constant): Treat !TARGET_FPRS as soft-float.
- (rs6000_legitimize_address): Check for TARGET_FPRS when checking
- for TARGET_HARD_FLOAT.
- Add case for SPE_VECTOR_MODE.
- (rs6000_legitimize_reload_address): Handle SPE vector modes.
- (rs6000_legitimate_address): Disallow PRE_INC/PRE_DEC for SPE
- vector modes.
- Check for TARGET_FPRS when checking for TARGET_HARD_FLOAT.
- (rs6000_emit_move): Check for TARGET_FPRS.
- Add cases for SPE vector modes.
- (function_arg_boundary): Return 64 for SPE vector modes.
- (function_arg_advance): Check for TARGET_FPRS and
- Handle SPE vectors.
- (function_arg): Same.
- (setup_incoming_varargs): Check for TARGET_FPRS.
- (rs6000_va_arg): Same.
- (struct builtin_description): Un-constify mask field. Move up in
- file.
- (bdesc_2arg): Un-constify and add SPE builtins.
- (bdesc_1arg): Same.
- (bdesc_spe_predicates): New.
- (bdesc_spe_evsel): New.
- (rs6000_expand_unop_builtin): Add SPE 5-bit literal builtins.
- (rs6000_expand_binop_builtin): Same.
- (bdesc_2arg_spe): New.
- (spe_expand_builtin): New.
- (spe_expand_predicate_builtin): New.
- (spe_expand_evsel_builtin): New.
- (rs6000_expand_builtin): Call spe_expand_builtin for SPE.
- (rs6000_init_builtins): Initialize SPE builtins. Call
- rs6000_common_init_builtins.
- (altivec_init_builtins): Move all non-altivec builtin code to...
- (rs6000_common_init_builtins): ...here. New function.
- (branch_positive_comparison_operator): Allow NE code for SPE.
- (ccr_bit): Return correct ccr bit for SPE fp.
- (print_operand): Emit crnor in 'D' case for SPE.
- New case 't'.
- Add SPE code for 'y' case.
- (rs6000_generate_compare): Generate rtl for SPE fp.
- (output_cbranch): Handle SPE hard floats.
- (rs6000_emit_cmove): Handle isel.
- (rs6000_emit_int_cmove): New.
- (output_isel): New.
- (rs6000_stack_info): Adjust stack frame so GPRs are saved in
- 64-bits for SPE.
- (debug_stack_info): Add SPE info.
- (gen_frame_mem_offset): New.
- (rs6000_emit_prologue): Save GPRs in 64-bits for SPE abi.
- Change mode of frame pointer, when saving it, to Pmode.
- (rs6000_emit_epilogue): Restore GPRs in 64-bits for SPE abi.
- Misc cleanups and use gen_frame_mem_offset when appropriate.
-
- * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_PPC8540.
- (TARGET_SPE_ABI): New.
- (TARGET_SPE): New.
- (TARGET_ISEL): New.
- (TARGET_FPRS): New.
- (FIXED_SCRATCH): New.
- (RTX_COSTS): Add PROCESSOR_PPC8540.
- (ASM_CPU_SPEC): Add case for 8540.
- (TARGET_OPTIONS): Add isel= case.
- (rs6000_spe_abi): New.
- (rs6000_isel): New.
- (rs6000_fprs): New.
- (rs6000_isel_string): New.
- (UNITS_PER_SPE_WORD): New.
- (LOCAL_ALIGNMENT): Adjust for SPE.
- (HARD_REGNO_MODE_OK): Same.
- (DATA_ALIGNMENT): Same.
- (MEMBER_TYPE_FORCES_BLK): New.
- (FIRST_PSEUDO_REGISTER): Set to 113.
- (FIXED_REGISTERS): Add SPE registers.
- (reg_class): Same.
- (REG_CLASS_NAMES): Same.
- (REG_CLASS_CONTENTS): Same.
- (REGNO_REG_CLASS): Same.
- (REGISTER_NAMES): Same.
- (DEBUG_REGISTER_NAMES): Same.
- (ADDITIONAL_REGISTER_NAMES): Same.
- (CALL_USED_REGISTERS): Same.
- (CALL_REALLY_USED_REGISTERS): Same.
- (SPE_ACC_REGNO): New.
- (SPEFSCR_REGNO): New.
- (SPE_SIMD_REGNO_P): New.
- (HARD_REGNO_NREGS): Adjust for SPE.
- (VECTOR_MODE_SUPPORTED_P): Same.
- (REGNO_REG_CLASS): Same.
- (FUNCTION_VALUE): Same.
- (LIBCALL_VALUE): Same.
- (LEGITIMATE_OFFSET_ADDRESS_P): Same.
- (SPE_VECTOR_MODE): New.
- (CONDITIONAL_REGISTER_USAGE): Disable FPRs when target does FP on
- the GPRs. Set FIXED_SCRATCH fixed in SPE case.
- (rs6000_stack): Add spe_gp_size, spe_padding_size,
- spe_gp_save_offset.
- (USE_FP_FOR_ARG_P): Check for TARGET_FPRS.
- (LEGITIMATE_LO_SUM_ADDRESS_P): Same.
- (SPE_CONST_OFFSET_OK): New.
- (rs6000_builtins): Add SPE builtins.
-
- * testsuite/gcc.dg/ppc-spe.c: New.
-
- * config/rs6000/eabispe.h: New.
-
- * config/rs6000/spe.h: New.
-
- * config/rs600/spe.md: New.
-
- * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
- __SIMD__ for TARGET_SPE.
-
- * config.gcc: Add powerpc-*-eabispe* case.
- Add spe.h to user headers for powerpc.
-
-2002-07-24 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/elf.h (STARTFILE_SPEC): Undo previous change.
- * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
- * config/mips/isa3264.h (STARTFILE_SPEC): Likewise.
-
-2002-07-24 Richard Henderson <rth@redhat.com>
-
- * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Use GOTO_SUBROUTINE_EXPR
- form when not optimizing.
-
-2002-07-24 David Mosberger <davidm@hpl.hp.com>
-
- * config/ia64/ia64.c (gen_thread_pointer): Fix typo in marking
- thread_pointer_rtx as unchanging.
-
-2002-07-24 Michael Matz <matz@suse.de>
-
- * ra-colorize.c (INV_REG_ALLOC_ORDER): New macro.
- (free_reg): Use it.
-
-2002-07-24 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (arm_buneq, arm_bltgt): put '\' before ';' in output
- pattern.
- (arm_buneq_reversed, arm_bltgt_reversed): Likewise.
- (movsicc, movsfcc, movdfcc): FAIL if UNEQ or LTGT.
-
-2002-07-24 Chris Demetriou <cgd@broadcom.com>
-
- * config/mips/elf.h (STARTFILE_SPEC): Never include crt0.o.
- * config/mips/elf64.h (STARTFILE_SPEC): Likewise.
- * config/mips/isa3264.h (STARTFILE_SPEC): Do not redefine.
-
-Wed Jul 24 17:59:12 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * toplev.c (rest_of_compilation): Dump loops before clobbering
- the structure.
-
-Wed Jul 24 17:23:16 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * rtlanal.c (keep_with_call_p): Avoid overflow in fixed_regs.
-
-2002-07-24 Frank van der Linden <fvdl@wasabisystems.com>
-
- PR optimization/7291
- * config/i386/i386.c (ix86_expand_clrstr): Fix bzero alignment
- problem on x86_64.
-
-2002-07-24 Gabriel Dos Reis <gdr@nerim.net>
-
- * pretty-print.h: Add macros from cp/error.c
-
-2002-07-24 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000-protos.h (mask_operand_wrap): Declare.
- (mask64_2_operand): Declare.
- (build_mask64_2_operands): Declare.
- (and64_2_operand): Declare.
- (extract_MB): Declare.
- (extract_ME): Declare.
- * config/rs6000/rs6000.c (mask64_operand): Allow all ones. Remove
- CONST_DOUBLE code.
- (mask_operand_wrap): New insn predicate.
- (mask64_2_operand): Likewise.
- (and64_2_operand): Likewise.
- (build_mask64_2_operands): New function.
- (extract_MB): New function.
- (extract_ME): New function.
- (print_operand <case m,M>): Use extract_MB and extract_ME.
- (print_operand <case S>): Allow all ones. Remove CONST_DOUBLE support.
- * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Add 't'.
- (PREDICATE_CODES): Add and64_2_operand, mask_operand_wrap and
- mask64_2_operand. Remove CONST_DOUBLE from mask64_operand.
- * config/rs6000/rs6000.md (andsi3_internal3): New
- (andsi3_internal3+1): Enable split for powerpc64.
- (andsi3_internal3+2): New split.
- (andsi3_internal4): Renamed old andsi3_internal3.
- (andsi3_internal5): New.
- (andsi3_internal5+1): Enable split for powerpc64.
- (andsi3_internal5+2): New split.
- (andsi3_internal6, andsi3_internal7, andsi3_internal8): New.
- (anddi3): Handle 't' constraint.
- (anddi3+1): New split.
- (anddi3_internal2): Handle 't' constraint.
- (anddi3_internal2+1): New split.
- (anddi3_internal3): Handle 't' constraint.
- (anddi3_internal3+1): New split.
-
-2002-07-24 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.md: Remove scratch reg on insns using
- addze and similar (plus (comparison r1 r2) r3) insns. Add
- missing scratch reg in one case. Formatting fixes.
-
-2002-07-24 Neil Booth <neil@daikokuya.co.uk>
-
- * cppexp.c (parse_defined): Mark macro used.
- * cpphash.h (struct cpp_macro): New member "used".
- (_cpp_mark_macro_used, _cpp_warn_if_unused_macro): New.
- (struct cpp_reader): New member.
- * cppinit.c (cpp_finish_options): Set first_unused_line.
- (cpp_finish): Warn of unused macros if requested.
- (OPT_TABLE): New switches.
- (cpp_handle_option): Handle them.
- * cpplib.c (do_undef): Warn if macro unused.
- (do_ifdef, do_ifndef): Mark macro used.
- * cpplib.h (struct cpp_options): New member.
- * cppmacro.c (_cpp_warn_if_unused_macro): New.
- (enter_macro_context): Mark macro used.
- (_cpp_create_definition): Mark macro unused; warn if unused
- when redefined.
- * cpptrad.c (scan_out_logcial_line, push_replacement_text):
- Mark macros used.
- * doc/cppopts.texi: Update.
-
-2002-07-23 Neil Booth <neil@daikokuya.co.uk>
-
- * dwarf2out.c (SECTION_ASM_OP,
- ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
- * system.h (SECTION_ASM_OP): Poison.
- * tree.c (FILE_FUNCTION_PREFIX_LEN): Remove.
- * config/alpha/alpha-interix.h, config/mips/linux.h
- (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
- * config/mmix/mmix-protos.h, config/mmix/mmix.c
- (mmix_asm_output_define_label_difference_symbol): Remove.
- * config/mmix/mmix.h
- (ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL): Remove.
- * doc/tm.texi: Remove documentation.
-
-Tue Jul 23 21:49:24 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * recog.c (asm_operand_ok): Allow float CONST_VECTORs for 'F'.
- (constrain_operands): Likewise.
- * regclass.c (record_reg_classes): Likewise.
- * reload.c (find_reloads): Likewise.
- * doc/md.texi: Likewise.
-
- * reload.c (find_reloads_toplev): Use simplify_gen_subreg.
- * simplify-rtx.c (simplify_subreg): When converting to a non-int
- mode, try to convert to an integer mode of matching size first.
-
- * simplify-rtx.x (simplify_subreg): When constructing a CONST_VECTOR
- from individual subregs, check that each subreg has been generated
- sucessfully.
-
-2002-07-23 Neil Booth <neil@daikokuya.co.uk>
-
- * genautomata.c (VLA_HWINT_SHORTEN, VLA_HWINT_LAST): Remove.
- * df.c (HANDLE_SUBREG, FOR_EACH_BB_IN_BITMAP_REV,
- FOR_EACH_BB_IN_SBITMAP): Remove.
- * gcse.c (NEVER_SET, FOLLOW_BACK_EDGES): Remove.
- * haifa-sched.c (DONE_PRIORITY, MAX_PRIORITY, TAIL_PRIORITY,
- LAUNCH_PRIORITY, DONE_PRIORITY_P, LOW_PRIORITY_P): Remove.
- * loop.c (PREFETCH_BLOACK_IN_LOOP_MIN,
- PREFETCH_LIMIT_TO_SIMULTANEOUS): Remove.
- * regrename.c (REGNO_MODE_OK_FOR_BASE_P): Remove.
-
-2002-07-23 Gabriel Dos Reis <gdr@nerim.net>
-
- * pretty-print.h: New file.
-
-2002-07-23 Paul Koning <pkoning@equallogic.com>
-
- * real.c (REAL_WORDS_BIG_ENDIAN): Make 1 for DEC.
- (LARGEST_EXPONENT_IS_NORMAL): Ditto.
- (VAX_HALFWORD_ORDER): Define (1 for DEC VAX, 0 otherwise).
- (TARGET_G_FLOAT): Default to 0 if not defined.
- (ieeetoe): New, common routine to convert target format floats
- to internal form.
- (e24toe, e53toe): Change to use ieeetoe, distinguish DEC
- vs. others.
- (e113toe): Change to use ieeetoe.
-
-2002-07-23 Roman Lechtchinsky <rl@cs.tu-berlin.de>
-
- * real.c (REAL_WORDS_BIG_ENDIAN): Make sure it is 0 for DEC and 1 for
- IBM.
- (e53toe): Assume IEEE if non of DEC, IBM and C4X is defined.
- (e64toe): Remove special cases for DEC and IBM. Remove support for
- ARM_EXTENDED_IEEE_FORMAT.
- (e24toe): Remove special cases for DEC.
- (significand_size): Simplify. Indent.
- (ieee_format, ieee_24, ieee_53, ieee_64, ieee_113): New.
- (etoieee, toieee): New.
- (etoe113, toe113, etoe64, toe64, etoe53, toe53, etoe24, toe24): Use
- etoieee and toieee for IEEE arithmetic.
-
-2002-07-23 Gabriel Dos Reis <gdr@nerim.net>
-
- * doc/extend.texi: Say ISO C90, not ISO C89.
- * doc/invoke.texi: Likewise.
- * doc/standards.texi: Likewise.
-
-2002-07-23 Steve Ellcey <sje@cup.hp.com>
-
- * gcc/explow.c (convert_memory_address): Fix conversion of CONSTs.
- Fix permutation of conversion and plus/mult.
- * gcc/builtins.c (expand_builtin_memcpy) Ensure return pointer is
- ptr_mode and not Pmode when POINTERS_EXTEND_UNSIGNED is defined.
- (expand_builtin_strncpy) Ditto.
- (expand_builtin_memset) Ditto.
-
-2002-07-23 Gabriel Dos Reis <gdr@nerim.net>
-
- Fix PR/7363:
- * c-common.c (c_sizeof_or_alignof_type): New function.
- (c_alignof): Remove definition.
- * c-common.h (c_sizeof, c_alignof): Define as macros.
- (c_sizeof_or_alignof_type): Declare.
- (my_friendly_assert): Moved from cp/cp-tree.h
- * c-typeck.c (c_sizeof): Remove definition.
-
-2002-07-23 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (try_replace_reg): Use num_changes_pending.
- * recog.c (num_changes_pending): New function.
- (validate_replace_src): Use validate_repalce_src_group.
- (validate_replace_src_group): New.
- * recog.h (validate_repalce_src_group): New.
- (num_changes_pending): Likewise.
-
-Tue Jul 23 12:16:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * calls.c (emit_library_call_value_1): If
- FUNCTION_ARG_PASS_BY_REFERENCE is true, pretend this is neither
- libcall, const call nor pure call.
-
-2002-07-23 Neil Booth <neil@daikokuya.co.uk>
-
- * config/m88k/m88k.h (SECTION_ASM_OP): Remove.
-
-2002-07-23 Neil Booth <neil@daikokuya.co.uk>
-
- * vmsdbgout.c (SECTION_ASM_OP): Remove.
-
-2002-07-23 Neil Booth <neil@daikokuya.co.uk>
-
- * config/i386/i386.c (AT_BP): Remove.
-
-2002-07-23 Neil Booth <neil@daikokuya.co.uk>
-
- * defaults.h (obstack_chunk_alloc, obstack_chunk_free):
- Default definition.
- * gcse.c: Don't define obstack_chunk_free.
- * collect2.c, conflict.c, df.c, diagnostic.c, fix-header.c,
- flow.c, gcc.c, genattrtab.c, genautomata.c, genflags.c, gensupport.c,
- integrate.c, loop.c, ra.c, read-rtl.c, regrename.c, reload1.c,
- reorg.c, tlink.c, tree.c, config/arm/arm.c, objc/objc-act.c:
- Don't define obstack macros.
-
-2002-07-22 Stephane Carrez <stcarrez@nerim.fr>
-
- PR target/6744
- * config/m68hc11/m68hc11.c (m68hc11_z_replacement): Also replace
- ASM_OPERANDS instructions.
-
-2002-07-22 Stephane Carrez <stcarrez@nerim.fr>
-
- PR target/7361
- * config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept
- constant addresses only on 68HC12.
-
-2002-07-22 Neil Booth <neil@daikokuya.co.uk>
-
- * cppfiles.c (stack_include_file): Correct test of whether
- a dependency should be output.
-
-2002-07-22 David Edelsohn <edelsohn@gnu.org>
-
- * collect2.c (is_ctor_dtor): Add other possible JOINER values.
-
-2002-07-22 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (movqi): If optimizing and we can create pseudos, use
- a ZERO_EXTEND to load from memory, then copy the result into the
- target.
- (movhi): Likewise, but only for ARMv4.
-
-2002-07-22 Neil Booth <neil@daikokuya.co.uk>
-
- * ssa-ccp.c (PHI_PARMS): Remove.
-
-2002-07-22 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS
- on big-endian targets.
-
-2002-07-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE,
- HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
- HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE):
- New formatting macros.
-
- * ra-debug.c (dump_static_insn_cost): Avoid string concatenation.
-
-Mon Jul 22 15:27:25 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * rtlanal.c (subreg_regno_offset): Return correct offset for
- big endian paradoxical subregs.
-
- * optabs.c (expand_vector_unop): Don't expand using sub_optab
- if we got the wrong mode.
-
- * hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
- * genrecog.c (write_switch, write_cond): Use it.
- * genemit.c (gen_exp): Likewise.
-
-2002-07-22 Jakub Jelinek <jakub@redhat.com>
-
- * c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE.
-
-2002-07-22 Jakub Jelinek <jakub@redhat.com>
-
- * c-decl.c (build_compound_literal): Defer compound literal decls
- until until file end to emit them only if they are actually used.
-
-2002-07-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * ra-build.c (check_conflict_numbers): Hide unused function.
- (livethrough_conflicts_bb): Avoid automatic aggregate
- initialization.
- (parts_to_webs_1): Avoid `U' integer constant modifier.
- (conflicts_between_webs): Wrap a variable in the macro controlling
- its usage.
- * ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE.
- (dump_igraph, dump_graph_cost): Avoid string concatenation
- (dump_static_insn_cost): Avoid automatic aggregate
- initialization.
- * ra-rewrite.c (insert_stores): Avoid automatic aggregate
- initialization.
- (dump_cost): Avoid string concatenation
-
-2002-07-21 Richard Henderson <rth@redhat.com>
-
- * expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use
- GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.
-
-2002-07-21 Richard Henderson <rth@redhat.com>
-
- * unroll.c (find_splittable_givs): Do not split DEST_ADDR givs
- that are not unrolled completely.
-
-2002-07-21 Richard Henderson <rth@redhat.com>
-
- * loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
- * loop.c (strength_reduce): Update.
- * toplev.c (rest_of_compilation): Do unrolling in the first
- loop pass, not the second.
-
-2002-07-21 Richard Henderson <rth@redhat.com>
-
- * emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL
- when flag_argument_noalias == 2.
- * alias.c (nonoverlapping_memrefs_p): Handle that.
- * print-rtl.c (print_mem_expr): Likewise.
-
-2002-07-21 Hartmut Schirmer <hartmut.schirmer@arcor.de>
-
- * libgcc2.c (__divdi3, __moddi3): Use unary minus operator
- instead of __negdi2 directly.
-
-2002-07-21 Neil Booth <neil@daikokuya.co.uk>
-
- * gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
- * function.c (SYMBOL__MAIN): Remove definition.
- * global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove.
- * predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove.
- * profile.c (GCOV_INDEX_TO_BB): Remove.
- * sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove.
- * simplify-rtx.c (FIXED_BASE_PLUS_P): Remove.
-
-2002-07-21 Neil Booth <neil@daikokuya.co.uk>
-
- * c-lex.c (GET_ENVIRONMENT): Remove.
- * collect2.c (GET_ENV_PATH_LIST): Remove.
- (prefix_from_env): Use GET_ENVIRONMENT.
- * cppinit.c (GET_ENV_PATH_LIST): Remove.
- (init_standard_includes): Use GET_ENVIRONMENT.
- * defaults.h (GET_ENVIRONMENT): Define here if not already.
- * gcc.c (GET_ENV_PATH_LIST): Remove.
- (make_relative_prefix, process_command): Update.
- * protoize.c (GET_ENV_PATH_LIST): Remove.
- (do_processing): Update.
-
-2002-07-21 Gabriel Dos Reis <gdr@nerim.net>
-
- * c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
- (grokdeclarator): Likewise.
- * c-format.c (C_STD_NAME): Likewise.
- * c-lex.c (interpret_integer): Likewise.
- * c-typeck.c (build_array_ref): Likewise.
- * cpplex.c (_cpp_lex_direct): Likewise.
- * toplev.c (documented_lang_options): Likewise.
-
-2002-07-21 Neil Booth <neil@daikokuya.co.uk>
-
- * c-format.c (T99_I, T99_UI): Remove.
-
-2002-07-21 Neil Booth <neil@daikokuya.co.uk>
-
- * c-typeck.c (SAVE_SPELLING_DEPTH): Remove.
-
-Sun Jul 21 21:36:41 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (do_local_cprop): Do not extend lifetimes of registers set by
- do_local_cprop.
-
-2002-07-21 Andreas Jaeger <aj@suse.de>
-
- * reload1.c (fixup_abnormal_edges): Remove unused variable.
-
-2002-07-21 Bernd Schmidt <bernds@redhat.com>
-
- Improvements for the ifcvt pass from Michael Meissner, with patches
- by Richard Sandiford <rsandifo@redhat.com>
- * basic-block.h (struct ce_if_block, ce_if_block_t): New types.
- * ifcvt.c (cond_exec_changed_p): New static variable.
- (last_active_insn): New function, renamed from last_active_insn_p
- and changed to return the last active insn in a basic block. All
- callers updated.
- (block_fallthru): New function.
- (cond_exec_process_insns): New argument CE_INFO. Pass it to
- IFCVT_MODIFY_INSN. All callers updated.
- Return false if START or END are NULL.
- Handle case where we're processing an insn that is already
- conditional.
-
- (noce_process_if_block): CE_INFO argument rather than
- multiple args containing the involved basic blocks. All callers
- changed.
- (process_if_block, merge_if_block, find_if_block,
- cond_exec_process_if_block): Likewise.
-
- (cond_exec_process_if_block): New arg DO_MULTIPLE_P. All callers
- changed.
- Use new function last_active_insn to simplify some code.
- New code to handle multiple tests.
- Call IFCVT_MODIFY_CANCEL in all failure cases, otherwise set
- cond_exec_changed_p to TRUE.
-
- (process_if_block): New code to handle multiple tests.
- (merge_if_block): Likewise.
- (find_if_header): New arg PASS. Changed to return the currently
- processed basic block or NULL instead of true/false. All callers
- changed.
- Call IFCVT_INIT_EXTRA_FIELDS.
- (block_jumps_and_fallthru_p): New function.
- (find_if_block): Discover opportunities to convert multiple tests.
- Add additional debugging output.
- Update the ce_info structure before returning.
-
- (if_convert): Run multiple passes of if-conversion.
- * doc/tm.texi (IFCVT_MODIFY_TESTS, IFCVT_MODIFY_INSN,
- IFCVT_MODIFY_FINAL, IFCVT_MODIFY_CANCEL, IFCVT_MODIFY_MULTIPLE_TESTS,
- IFCVT_INIT_EXTRA_FIELDS, IFCVT_EXTRA_FIELDS): Update documentation for
- these macros.
-
-Sun Jul 21 00:54:54 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * gcse.c: Include cselib.h
- (constptop_register): Break out from ...
- (cprop_insn): ... here; kill basic_block argument.
- (do_local_cprop, local_cprop_pass): New functions.
- (one_cprop_pass): Call local_cprop_pass.
-
-2002-07-20 Roger Sayle <roger@eyesopen.com>
-
- * simplify-rtx.c (simplify_relational_operation): Optimize
- abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).
-
-2002-07-20 Michae Matz <matz@suse.de>
-
- * ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
-
-2002-07-20 Neil Booth <neil@daikokuya.co.uk>
-
- * cppexp.c (struct op): Add token pointer.
- (check_promotion, CHECK_PROMOTION): New.
- (optab): Update.
- (_cpp_parse_expr): Update, use token pointer of struct op.
- (reduce): Warn about change of sign owing to promotion.
- * cppinit.c (cpp_handle_option): New warning if -Wall.
- * cpplib.h (struct cpp_options): New member.
-
-2002-07-19 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
- fpu list. Separate Power4 compare and delayed_compare. Correct
- Power4 fpcompare.
- (fix_truncdfsi2_internal): Restore FPR preference.
- * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
- mcpu?power4, mcpu?604e. Remove mpower, mpower2, mpowerpc.
-
-2002-07-19 Momchil Velikov <velco@fadata.bg>
-
- * reload1.c (reload_as_needed): Duplicate oldpat.
-
-2002-07-20 Alan Modra <amodra@bigpond.net.au>
-
- PR optimization/7130
- * loop.h (struct loop_info): Add "preconditioned".
- * unroll.c (unroll_loop): Set it.
- * doloop.c (doloop_modify_runtime): Correct count for unrolled loops.
-
-2002-07-19 Zack Weinberg <zack@codesourcery.com>
-
- * rtl.def (CODE_LABEL): Remove slot 8.
- * rtl.h (struct rtx_def): Document new uses of jump and call fields.
- (LABEL_ALTERNATE_NAME): Delete.
- (LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
- * defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.
-
- * final.c (output_alternate_entry_point): New.
- (final_scan_insn): Use it instead of
- ASM_OUTPUT_ALTERNATE_LABEL_NAME. Do not consider possibility
- of a case label being an alternate entry point.
-
- * cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
- * emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
- Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
- (field deleted).
- * print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.
-
- * doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
- LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
- * doc/tm.texi: Delete documentation of
- ASM_OUTPUT_ALTERNATE_LABEL_NAME.
-
-2002-07-19 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
- (PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
- (LINK_SPEC): Define.
- (STARTFILE_SPEC): Define.
- (ENDFILE_SPEC): Define.
-
- * config/mips/iris6-o32.h (LINK_SPEC): Move ...
- * config/mips/iris6-o32-as.h (LINK_SPEC): ... here.
-
- * config/mips/iris6-o32-gas.h: New file.
- * config.gcc (mips-sgi-irix6*o32): Use it.
-
- * config/mips/t-iris5-gas: New file.
- * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
-
-2002-07-19 Neil Booth <neil@daikokuya.co.uk>
-
- * cppexp.c (ALWAYS_EVAL): Remove.
- (optab, reduce): Always evaluate.
- (num_unary_op, num_binary_op, num_div_op): Issue diagnostics
- only if not skipping evaluation.
-
-2002-07-19 Marek Michalkiewicz <marekm@amelek.gda.pl>
-
- * config/avr/avr.c (debug_hard_reg_set): Remove.
-
-2002-07-19 Chris Demetriou <cgd@broadcom.com>
-
- * gcc.c (cpp_options): Include "%1" (cc1_spec).
-
-2002-07-19 Richard Henderson <rth@redhat.com>
-
- * loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
-
-2002-07-19 Alan Modra <amodra@bigpond.net.au>
-
- * prefix.c (update_path): Don't zap single `.' path components
- unless followed by another `.' and fix typo last patch.
-
-2002-07-18 Neil Booth <neil@daikokuya.co.uk>
-
- * cppexp.c (cpp_num_mul): Remove unused parameter.
- (UNARY, BINARY, OTHER, binary_handler): Remove.
- (ALWAYS_EVAL): New.
- (optab): Update.
- (reduce): Refactor to a large switch, don't use a function
- pointer.
-
-2002-07-18 Bo Thorsen <bo@berlioz.suse.de>
-
- * config/i386/linux64.h (STARTFILE_PREFIX_SPEC): Define this always.
-
-Thu Jul 18 19:39:18 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh-protos.h (sh_expand_unop_v2sf): Move inside #ifdef RTX_CODE guard.
- (sh_expand_binop_v2sf): Likewise.
- * sh.c (machine_dependent_reorg): Add move for UNSPEC_MOVA.
- (int_gpr_dest, trunc_hi_operand): New functions.
- * sh.h (PREDICATE_CODES): Add any_register_operand, int_gpr_dest and
- trunc_hi_operand.
- (SPECIAL_MODE_PREDICATES, any_register_operand): Define.
- * sh.md (cmpeqdi_t+1): Remove comments that genrecog warns about.
- (adddi3_compact+1, subdi3_compact+1, ashlsi3_n+1, ashlhi3+1): Likewise.
- (ashrsi2_16+1, ashrsi2_31+1, lshrsi3_n+1, ashrdi3+[12]): Likewise.
- (and_shl_scratch+[12], zero_extendhidi2+1): Likewise.
- (zero_extendhisi2_media+1, extendhidi2+1, extendqidi2+1): Likewise.
- (extendhisi2_media+1, extendqisi2_media+1): Likewise.
- (movsi_media_nofpu+[12], movhi_media+1, movdi_media_nofpu+1): Likewise.
- (movdi_const_16bit+[12], movdf_i4+[123], reload_outdf+[2-5]): Likewise.
- (movsf_ie+1): Likewise.
- (loaddi_trunc): Use int_gpr_dest predicate.
- (use_sfunc_addr, indirect_jump_scratch, sibcall_compact): Add mode(s).
- (mova, mova_const, GOTaddr2picreg, ptrel, casesi_worker_0): Likewise.
- (casesi_worker_0+[12], casesi_worker): Likewise.
- (shcompact_preserve_incoming_args): Likewise.
- (mov_nop): Use any_register_operand predicate.
- (mperm_w0): Use trunc_hi_operand predicate.
-
-2002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa-linux.h (DWARF2_UNWIND_INFO): Delete define.
- * pa.h (EH_RETURN_DATA_REGNO): Revise TARGET_64BIT and correct
- numbering.
-
-2002-07-18 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.c (output_deferred_plabels): Remove unused millicode enum mulU.
-
-2002-07-18 Richard Henderson <rth@redhat.com>
-
- PR optimization/7147
- * ifcvt.c (noce_get_condition): Make certain that the condition
- is valid at JUMP.
-
-Thu Jul 18 13:44:51 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (barrier_align, push): Shut up compiler warnings.
- (initial_elimination_offset,sh_media_init_builtins): Likewise.
- (reg_no_subreg_operand): Delete.
-
-2002-07-17 Bo Thorsen <bo@suse.de>
-
- * config/i386/linux64.h (LINK_SPEC): Remove bogus -Y option.
- (STARTFILE_PREFIX_SPEC): Define for NATIVE_CROSS compilations.
- (STARTFILE_SPEC): Remove hardcoded library paths.
- (ENDFILE_SPEC): Likewise.
-
-Thu Jul 18 09:38:59 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * gcse.c (hoist_expr_reaches_here_p): Stop once expr_bb is reached.
-
- * gcse.c (try_replace_reg): Do not return false positives.
-
-2002-07-18 Alan Modra <amodra@bigpond.net.au>
-
- * prefix.c: (update_path): Strip ".." components when prior dir
- doesn't exist. Pass correct var to UPDATE_PATH_HOST_CANONICALIZE.
-
- * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Remove 64-bit support.
- (ASM_OUTPUT_REG_POP): Likewise.
-
-2002-07-18 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/rs6000.c (first_reg_to_save): Remove bogus
- adjustments to first_reg for profiling case.
- (output_function_profiler): Correct lr save slot for ABI_AIX_NODESC.
- Disable profiling for 64 bit code on both ABI_V4 and ABI_AIX_NODESC.
- Save static chain reg to sp + 12 on ABI_AIX_NODESC.
- * config/rs6000/sysv4.h (ASM_OUTPUT_REG_PUSH): Define.
- (ASM_OUTPUT_REG_POP): Define.
- * config/rs6000/linux64.h (ASM_OUTPUT_REG_PUSH): Undef.
- (ASM_OUTPUT_REG_POP): Undef.
-
-2002-07-17 Neil Booth <neil@daikokuya.co.uk>
-
- * cpplib.c (do_sccs): Handle #sccs on all systems.
- * system.h (SCCS_DIRECTIVE): Poison.
- * config/darwin.h, config/freebsd.h, config/netbsd.h,
- config/ptx4.h, config/svr3.h, config/svr4.h, config/alpha/elf.h,
- config/arm/linux-elf.h, config/c4x/c4x.h, config/d30v/d30v.h,
- config/i370/i370.h, config/i386/gas.h, config/i386/sco5.h,
- config/i960/i960.h, config/m68hc11/m68hc11.h, config/m68k/3b1.h,
- config/m68k/3b1g.h, config/m68k/crds.h, config/m68k/mot3300.h,
- config/m68k/pbb.h, config/m88k/m88k.h, config/mips/mips.h,
- config/sparc/pbd.h, config/stormy16/stormy16.h, config/vax/vaxv.h:
- Remove all references to SCCS_DIRECTIVE.
- * doc/cpp.texi, doc/tm.texi: Update.
-
-Wed Jul 17 19:23:32 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * regrename.c (maybe_mode_change): New function.
- (find_oldest_value_reg, copyprop_hardreg_forward_1): Use it.
-
-2002-07-17 Rodney Brown <rbrown64@csc.com.au>
-
- * config/i386/i386.c (ix86_expand_int_movcc): In the general case
- suppress addition when either ct or cf are zero.
-
-2002-07-17 Eric Botcazou <ebotcazou@multimania.com>
- Glen Nakamura <glen@imodulo.com>
-
- PR optimization/6713
- * loop.c (loop_givs_rescan): Explicitly delete the insn that
- sets a non-replaceable giv after issuing the new one.
-
-2002-07-17 Neil Booth <neil@daikokuya.co.uk>
-
- * cppexp.c (cpp_interpret_integer, append_digit, parse_defined,
- eval_token): Clarify and correct use of "bool" variables.
- * cpplib.h (struct cpp_options): Similarly.
- * cppmacro.c (parse_params, _cpp_save_parameter): Ditto.
- * cpptrad.c (recursive_macro): Similarly.
-
-Wed Jul 17 17:08:06 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * config/sh/lib1funcs.asm (udivsi3_i4): Implement SHcompact version in
- SHmedia code.
-
- * sh.md (cmpgtudi_media): Remove spurious @.
-
- * config/sh/lib1funcs.asm (FMOVD_WORKS): Don't define for little endian.
- * sh.h (OVERRIDE_OPTIONS): Don't set FMOVD_BIT for little endian.
-
- * config/sh/lib1funcs.asm (init_trampoline): New entry point.
- * sh-protos.h (sh_initialize_trampoline): Declare.
- * sh.c (sh_initialize_trampoline): New function.
- * sh.h (TRAMPOLINE_SIZE): Only 24 for TARGET_SHMEDIA32.
- (TRAMPOLINE_ALIGNMENT): Need cache-line alignment for TARGET_SHMEDIA.
- (INITIALIZE_TRAMPOLINE): Call sh_initialize_trampoline.
- (TRAMPOLINE_ADJUST_ADDRESS): Not needed for SHcompact.
- * sh.md (initialize_trampoline, double_shori): New patterns.
- (initialize_trampoline_compact): Likewise.
- (shmedia32_initialize_trampoline_big): Remove.
- (shmedia32_initialize_trampoline_little): Likewise.
-
- * sh-protos.h (binary_float_operator): Remove declaration.
- (sh_expand_unop_v2sf, sh_expand_binop_v2sf): Declare.
- * sh.c (print_operand, case 'N'): Check against CONST0_RTX.
- (unary_float_operator, sh_expand_unop_v2sf): New functions.
- (sh_expand_binop_v2sf): Likewise.
- (zero_vec_operand): Delete.
- (SH_BLTIN_UDI): New builtin shared signature define. Renumbered
- all non-shared ones.
- (bdesc): Change all the mextr builtins to use SH_BLTIN_UDI.
- Enable nsb and byterev.
- * sh.h (CONDITIONAL_REGISTER_USAGE): Initialize DF_HI_REGS.
- (HARD_REGNO_MODE_OK): Allow TImode in fp regs. Allow V2SFmode
- in general regs.
- (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add DF_HI_REGS.
- (SECONDARY_OUTPUT_RELOAD_CLASS): Likewise. Remove clause for
- immediate operands.
- (SECONDARY_INPUT_RELOAD_CLASS): Add clause for immediate operands.
- Add DF_HI_REGS.
- (CLASS_CANNOT_CHANGE_MODE, CLASS_CANNOT_CHANGE_MODE_P): Allow
- lowpart fp regs - only for big endian for now.
- (LEGITIMATE_CONSTANT_P): Don't allow nonzero float vectors
- when FPU is in use.
- (EXTRA_CONTRAINT_U): Check against CONST0_RTX.
- (LOAD_EXTEND_OP): NIL for SImode.
- (REGISTER_MOVE_COST): Add DF_HI_REGS. Const for moves between
- general and fp registers is 4.
- PREDICATE_CODES: Amend binary_float_operator entry.
- Remove zero_vec_operand. Add unary_float_operator.
- * sh.md (udivsi3_i4_media): Use truncate instead of paradoxical
- subreg SET_DEST.
- (truncdisi2, truncdihi2, movv2sf): Allow memory destinations.
- (truncdiqi2): Do sign extension.
- (movsi_media, movdi_media): Allow to use r63 to an fp register.
- (movdf_media, movsf_media): Likewise.
- (movv2sf_i, movv2sf_i+1): Don't use f{ld,st}.p or SUBREGS.
- Collapse to one define_insn_and_split. Allow immediate sources.
- (addv2sf3, subv2sf3, mulv2sf3, divv2sf3): New patterns.
- (movv4sf_i): Allow immediate sources. Use simplify_gen_subreg.
- (movv4sf): Allow immediate sources.
- (movsf_media_nofpu+1): Don't split moves to FP registers.
- (unary_sf_op, binary_sf_op, mshflo_w_x, concat_v2sf): New patterns.
- (movv8qi_i+3): Check against CONST0_RTX.
- (mextr1, mextr2. mextr3. mextr4, mextr5, mextr6, mextr7): Use DImode
- for input and output operands. Fix argument 3 to gen_mextr_rl.
- (mmul23_wl, mmul01_wl, mmulsum_wq_i): s/const_vector/parallel/
- (msad_ubq_i, mshf4_b, mshf0_b, mshf4_l, mshf0_l, mshf4_w): Likewise.
- (mshf0_w, fipr, ftrv): Likewise.
- (mshfhi_l_di): Now insn_and_split. Can handle FP regs.
-
-2002-07-17 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
-
- * arm.h (ARM_NUM_INTS, ARM_NUM_REGS, ARM_NUM_REGS2): Renamed from
- NUM_INTS, NUM_REGS and ARM_NUM_REGS2 respectively. All uses changed.
- * arm.c: Similarly.
-
-2002-07-17 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips-protos.h (mips_sign_extend): Declare.
- * config/mips/mips.h (MASK_DEBUG_H, TARGET_DEBUG_H_MODE): Remove.
- (TARGET_SWITCHES): Remove debugh.
- (ISA_HAS_TRUNC_W): New macro.
- (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS if TARGET_FLOAT64.
- (PREDICATE_CODES): Remove se_nonimmediate_operand.
- * config/mips/mips.c (movdi_operand): Allow sign-extensions of
- any SImode move_operand.
- (se_nonimmediate_operand): Remove.
- (mips_sign_extend): New.
- (mips_move_2words): Use it for sign-extended source operands.
- (override_options): Allow integers to be put into single FPRs.
- (mips_secondary_reload_class): Handle integers in float registers.
- * config/mips/mips.md (extendsidi2): Turn into a define_expand.
- (fix_truncsfsi2, fix_truncdfsi2): Likewise.
- (fix_truncdfsi2_insn, fix_truncdfsi2_macro): New.
- (fix_truncsfsi2_insn, fix_truncsfsi2_macro): New.
- (fix_truncdfdi2): Provide only a single alternative, in which the
- integer is in a float register. Depend on TARGET_FLOAT64 rather
- than TARGET_64BIT.
- (fix_truncsfdi2, floatdidf2, floatdisf2): Likewise.
- (floatsidf2, floatsisf2): Likewise, but no TARGET_FLOAT64 dependency.
- (movdi_internal2): Don't allow the source operand to be sign-extended.
- Add alternatives for float registers.
- (*movdi_internal2_extend): New. Version of movdi_internal2 that
- allows sign-extension.
- (*movdi_internal2_mips16): Name the existing mips16 movdi pattern.
- (movsi_internal2): Rename to movsi_internal. Add alternatives for
- float registers. Remove TARGET_DEBUG_H_MODE test.
- (movhi_internal1): Rename to movhi_internal. Don't check
- TARGET_DEBUG_H_MODE. Fix transposed *d and *f source constraints.
- (movqi_internal1): Rename to movqi_internal and remove
- TARGET_DEBUG_H_MODE dependency.
- (movsi_internal1, movhi_internal2, movqi_internal2): Remove.
-
-2002-07-16 Jim Wilson <wilson@redhat.com>
-
- * toplev.c (lang_dependent_init): Create function context for
- init_expr_once.
-
-2002-07-16 Hans-Peter Nilsson <hp@axis.com>
-
- * config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Don't
- --gc-sections if -r.
- * config/cris/cris.h: Ditto.
-
-2002-07-16 Rodney Brown <rbrown64@csc.com.au>
-
- * config/i386/i386.c (ix86_expand_int_movcc): In the case where
- the comparison directly gives a mask suppress addition when cf is
- zero by complementing the mask.
-
-2002-07-16 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * Makefile.in: Delete references to enquire.
- * enquire.c: Move to contrib.
-
-2002-07-16 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (ASM_OUTPUT_LABEL): Move to here from
- config/rs6000/darwin.h.
- (ASM_OUTPUT_SKIP): Ditto.
- (TEXT_SECTION_ASM_OP): Ditto.
- (DATA_SECTION_ASM_OP): Ditto.
- (ASM_APP_ON): Define.
- (ASM_APP_OFF): Define.
- * config/rs6000/darwin.h (ASM_OUTPUT_LABEL, ASM_OUTPUT_SKIP,
- TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): Remove.
-
- * config/darwin.c (func_name_maybe_scoped): Remove unused decl.
- (machopic_function_base_name): Declare result to be const.
- (machopic_non_lazy_ptr_name): Ditto.
- (machopic_stub_name): Ditto.
- * config/darwin-protos.h: Ditto for the prototypes.
-
-Wed Jul 17 00:22:39 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * m68hc11.c (m68hc11_reorg): Do not rebuild CFG.
-
-Wed Jul 17 00:20:48 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (prefetch): Fix for 64bit mode.
- (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
-
-Wed Jul 17 00:19:20 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.h (MACHINE_DEPENDENT_REORG): New macro.
- * i386.c (x86_machine_dependent_reorg): New function.
- * i386-protos.h (x86_machine_dependent_reorg): Declare.
-
-2002-07-16 Zack Weinberg <zack@codesourcery.com>
-
- * builtins.c (std_expand_builtin_va_start): Remove unused
- first argument.
- (expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
- std_expand_builtin_va_start with just two arguments.
- * expr.h: Update prototypes.
-
- * alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
- arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
- i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
- m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
- mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
- rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
- s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
- sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
- xtensa-protos.h, xtensa.h, xtensa.c: Remove unused first
- argument from all implementations of EXPAND_BUILTIN_VA_START
- and all uses of std_expand_builtin_va_start.
-
-Tue Jul 16 19:32:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * regrename.c (copy_value): Don't record high part copies.
-
-2002-07-16 Steve Ellcey <sje@cup.hp.com>
-
- * gcc/config/pa/long_double.h (FIXUNS_TRUNCTFDI2_LIBCALL): New define.
- (fixunstfdi_libfunc): Change to use FIXUNS_TRUNCTFDI2_LIBCALL.
- * gcc/config/pa/quadlib.c (_U_Qfcnvfxt_quad_to_udbl): New function.
-
-2002-07-16 Ian Dall <ian@sibyl.beware.dropbear.id.au>
-
- * doc/invoke.texi (NS32K Options): Document -mieee-compare option
-
- * config/ns32k/ns32k.md (addsi3, *frame_addr, *stack_addr): merge
- into addsi3 using register class "x" and "y".
-
- * config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
- "earlyclobber" constraint modifier for some alternative.
-
- * config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
- (*ble, *blt): Flag to indicate bCOND and sCOND should check for
- unordered.
- config/ns32k/ns32k.h (CC_UNORD): define corresponding mask.
-
- * config/ns32k/ns32k.h (TARGET_IEEE_COMPARE, MASK_IEEE_COMPARE)
- (TARGET_SWITCHES): Add -mieee-compare option.
- (OVERRIDE_OPTIONS): 32332 is a subset of
- 32532. Don't use IEEE_COMPARE -funsafe-math-optimizations.
- (TARGET_SWITCHES): Fix description of bitfield option.
- * config/ns32k/netbsd.h (TARGET_DEFAULT): Add
- -mieee-compare option. Remove 32332 flag.
-
-2002-07-16 Steve Ellcey <sje@cup.hp.com>
-
- * explow.c (convert_memory_address): Remove special handling
- when POINTERS_EXTEND_UNSIGNED < 0.
- * config/ia64.md (movsi_symbolic): New instruction for ILP32 mode.
- (movedi_symbolic): Fix typo.
- (load_fptr): Remove mode restriction so it works for SI and DI.
- (load_fptr_internal1): Ditto.
- (load_gprel): Ditto.
- (load_symptr_internal1): Ditto.
- (call_pic): Ditto.
- * config/ia64.c (call_operand): Modify mode check.
- (ia64_expand_load_address): Handle DI and SI addresses and symbols.
- (ia64_expand_move): Ditto.
- (ia64_assemble_integer): Handle SImode function pointers.
- (ia64_expand_fetch_and_op): Handle SImode mem addresses.
- (ia64_expand_op_and_fetch): Ditto.
- (ia64_expand_compare_and_swap): Ditto.
- (ia64_expand_lock_test_and_set): Ditto.
- (ia64_expand_lock_release): Ditto.
-
-2002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
-
- * arm.c (emit_sfm): Don't set RTX_FRAME_RELATED_P on DWARF.
-
-2002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
- Richard Earnshaw <rearnsha@arm.com>
-
- * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
- CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic.
-
-2002-07-16 Richard Earnshaw <rearnsha@arm.com>
-
- * arm.md (stack_tie): New insn. Use an idiom that the alias code
- understands to be a memory clobber.
- * arm.c (arm_expand_prologue): Use it.
-
-2002-07-16 Daniel Berlin <dberlin@dberlin.org>
-
- * ra-rewrite.c: #include reload.h, insn-config.h
- * ra-build.c: #include reload.h
- * Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
- depend on reload.h, insn-config.h.
-
-Tue Jul 16 11:57:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * expr.c (emit_move_insn_1): Handle arbitrary moves that are
- the same size as a word.
-
- * regrename.c (find_oldest_value_reg): Take WORDS_BIG_ENDIAN /
- BYTES_BIG_ENDIAN into account.
-
-Tue Jul 16 12:22:44 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.md (prefetch): Fix for 64bit mode.
- (prefetch_sse_rex, prefetch_3dnow_rex): New patterns.
-
- * i386.md (movss, movsd): Use xorps/xorpd for Athlon.
-
-2002-07-16 Marek Michalkiewicz <marekm@amelek.gda.pl>
-
- * hard-reg-set.h (TEST_HARD_REG_BIT): Return 1 if the bit is set.
-
-2002-07-15 Zack Weinberg <zack@codesourcery.com>
-
- * ginclude/varargs.h: Replace with stub which issues #error.
- * ginclude/stdarg.h: __builtin_stdarg_start is renamed
- __builtin_va_start.
-
- * builtins.def (BUILT_IN_VARARGS_START): Delete.
- (BUILT_IN_VA_START): New.
- * builtins.c (expand_builtin_va_start): Eliminate first
- argument and code to implement pre-ISO varargs.
- (std_expand_builtin_va_start): Ignore first argument; it is
- always 1.
- (expand_builtin): Handle BUILT_IN_VA_START and
- BUILT_IN_STDARG_START identically. Delete
- BUILT_IN_VARARGS_START case.
-
- * function.c (assign_parms): Delete hide_last_arg and all
- its uses.
- (mark_varargs): Delete function.
- * function.h (struct function): Delete 'varargs' bit.
- (current_function_varargs): Delete macro.
- * tree.h: Don't declare mark_varargs.
-
- * c-decl.c (c_function_varargs, c_mark_varargs): Delete.
- (c_expand_body): Don't call mark_varargs.
- * c-objc-common.c: Handle BUILT_IN_VA_START and
- BUILT_IN_STDARG_START identically. Delete
- BUILT_IN_VARARGS_START case.
- * c-tree.h: Don't declare c_mark_varargs.
- * c-parse.in: Remove grammar rules for '&...' (which has been
- commented out since before 2.7.2) and for '...' in K+R
- argument declarations.
-
- * builtins.c, function.c, integrate.c, sibcall.c,
- config/alpha/unicosmk.h, config/arc/arc.c, config/arc/arc.h,
- config/avr/avr.c, config/cris/cris.c, config/fr30/fr30.c,
- config/i960/i960.c, config/i960/i960.md, config/m32r/m32r.c,
- config/m32r/m32r.h, config/m88k/m88k.c, config/m88k/m88k.h,
- config/mips/mips.c, config/mmix/mmix.c, config/mmix/mmix.h,
- config/mn10300/mn10300.c, config/pa/som.h, config/s390/s390.c,
- config/sh/sh.c, config/sh/sh.h, config/sparc/sparc.h,
- config/stormy16/stormy16.c: Delete all references to
- current_function_varargs, and code predicated on that flag.
-
- * config/alpha/alpha.c (alpha_va_start),
- config/arc/arc.c (arc_va_start),
- config/i386/i386.c (ix86_va_start),
- config/mips/mips.c (mips_va_start),
- config/mn10300/mn10300.c (mn10300_va_start),
- config/rs6000/rs6000.c (rs6000_va_start),
- config/s390/s390.c (s390_va_start),
- config/sh/sh.c (sh_va_start),
- Ignore first argument; it is always 1.
-
- * config/c4x/c4x-protos.h, config/c4x/c4x.c: Delete c4x_va_start.
- * config/ia64/ia64-protos.h, config/ia64/ia64.c: Delete ia64_va_start.
- * config/m68hc11/m68hc11-protos.h, config/m68hc11/m68hc11.c:
- Delete m68hc11_va_start.
- * config/c4x/c4x.h, config/ia64/ia64.h, config/m68hc11/m68hc11.h:
- No need to define EXPAND_BUILTIN_VA_START.
-
- * doc/invoke.texi, doc/sourcebuild.texi, doc/tm.texi,
- doc/trouble.texi: Remove references to GCC-provided <varargs.h>.
-
-2002-07-15 Eric Botcazou <ebotcazou@multimania.com>
-
- PR optimization/7153
- * regmove.c (optimize_reg_copy_3): Don't optimize if the register
- dies in more than one insn.
-
-2002-07-15 Jason Thorpe <thorpej@wasabisystems.com>
-
- * config/sparc/netbsd-elf.h (TRANSFER_FROM_TRAMPOLINE): Remove.
-
-2002-07-15 Michael Matz <matz@suse.de>,
- Daniel Berlin <dberlin@dberlin.org>,
- Denis Chertykov <denisc@overta.ru>
-
- Add a new register allocator.
-
- * ra.c: New file.
- * ra.h: New file.
- * ra-build.c: New file.
- * ra-colorize.c: New file.
- * ra-debug.c: New file.
- * ra-rewrite.c: New file.
-
- * Makefile.in (ra.o, ra-build.o, ra-colorize.o, ra-debug.o,
- (ra-rewrite.o): New .o files for libbackend.a.
- (GTFILES): Add basic-block.h.
-
- * toplev.c (flag_new_regalloc): New.
- (f_options): New option "new-ra".
- (rest_of_compilation): Call initialize_uninitialized_subregs()
- only for the old allocator. If flag_new_regalloc is set, call
- new allocator, instead of local_alloc(), global_alloc() and
- friends.
-
- * doc/invoke.texi: Document -fnew-ra.
- * basic-block.h (FOR_ALL_BB): New.
- * config/rs6000/rs6000.c (print_operand): Write small constants
- as @l+80.
-
- * df.c (read_modify_subreg_p): Narrow down cases for a rmw subreg.
- (df_reg_table_realloc): Make size at least as large as max_reg_num().
- (df_insn_table_realloc): Size argument now is absolute, not relative.
- Changed all callers.
-
- * gengtype.c (main): Add the pseudo-type "HARD_REG_SET".
- * regclass.c (reg_scan_mark_refs): Ignore NULL rtx's.
-
- 2002-06-20 Michael Matz <matz@suse.de>
-
- * df.h (struct ref.id): Make unsigned.
- * df.c (df_bb_reg_def_chain_create): Remove unsigned cast.
-
- 2002-06-13 Michael Matz <matz@suse.de>
-
- * df.h (DF_REF_MODE_CHANGE): New flag.
- * df.c (df_def_record_1, df_uses_record): Set this flag for refs
- involving subregs with invalid mode changes, when
- CLASS_CANNOT_CHANGE_MODE is defined.
-
- 2002-05-07 Michael Matz <matz@suse.de>
-
- * reload1.c (fixup_abnormal_edges): Don't insert on NULL edge.
-
- 2002-05-03 Michael Matz <matz@suse.de>
-
- * sbitmap.c (sbitmap_difference): Accept sbitmaps of different size.
-
- Sat Feb 2 18:58:07 2002 Denis Chertykov <denisc@overta.ru>
-
- * regclass.c (regclass): Work with all regs which have sets or
- refs.
- (reg_scan_mark_refs): Count regs inside (clobber ...).
-
- 2002-01-04 Michael Matz <matzmich@cs.tu-berlin.de>
-
- * df.c (df_ref_record): Correctly calculate SUBREGs of hardregs.
- (df_bb_reg_def_chain_create, df_bb_reg_use_chain_create): Only
- add new refs.
- (df_bb_refs_update): Don't clear insns_modified here, ...
- (df_analyse): ... but here.
-
- * sbitmap.c (dump_sbitmap_file): New.
- (debug_sbitmap): Use it.
-
- * sbitmap.h (dump_sbitmap_file): Add prototype.
-
- 2001-08-07 Daniel Berlin <dan@cgsoftware.com>
-
- * df.c (df_insn_modify): Grow the UID table if necessary, rather
- than assume all emits go through df_insns_modify.
-
- 2001-07-26 Daniel Berlin <dan@cgsoftware.com>
-
- * regclass.c (reg_scan_mark_refs): When we increase REG_N_SETS,
- increase REG_N_REFS (like flow does), so that regclass doesn't
- think a reg is useless, and thus, not calculate a class, when it
- really should have.
-
- 2001-01-28 Daniel Berlin <dberlin@redhat.com>
-
- * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP_REV): New macro, needed for
- dataflow analysis.
-
-2002-07-15 Jakub Jelinek <jakub@redhat.com>
-
- PR middle-end/7245
- * config/i386/i386.c (const_int_1_31_operand): New.
- * config/i386/i386.h (PREDICATE_CODES): Add it.
- * config/i386/i386.md (ashlsi3_cmp, ashlsi3_cmp_zext, ashlhi3_cmp,
- ashlqi3_cmp, ashrsi3_cmp, ashrsi3_cmp_zext, ashrhi3_cmp, ashrqi3_cmp,
- lshrsi3_cmp, lshrsi3_cmp_zext, lshrhi3_cmp, lshrqi3_cmp): Use it.
-
-2002-07-14 Alan Modra <amodra@bigpond.net.au>
-
- PR target/7282
- * config/rs6000/rs6000.md (floatsidf2): Enable for POWERPC64.
- (floatunssidf2): Likewise.
- (floatsidf_ppc64): New insn_and_split.
- (floatunssidf_ppc64): Likewise.
-
-2002-07-14 Andreas Jaeger <aj@suse.de>
-
- * config.gcc (sh64): Remove unused
- target_requires_64bit_host_wide_int.
-
-2002-07-12 Roger Sayle <roger@eyesopen.com>
-
- * expr.c [CLEAR_RATIO]: New macro defining the maximum number
- of move instructions to use when clearing memory, c.f. MOVE_RATIO.
- [CLEAR_BY_PIECES]: New macro, using CLEAR_RATIO, to determine
- whether clear_by_pieces should be used to clear storage.
- (clear_storage): Use CLEAR_BY_PIECES instead of MOVE_BY_PIECES.
-
- * doc/tm.texi: Document these two new target macros.
-
-2002-07-12 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("zero_extendsidi2"): Use D_REG only for
- the scratch register.
- ("*movhi2_push"): Accept Z_REG because a split pattern can make use
- of it, forbid reload to use it.
-
-2002-07-12 Marek Michalkiewicz <marekm@amelek.gda.pl>
-
- * config/avr/avr.c (test_hard_reg_class): Fix TEST_HARD_REG_BIT
- usage on 64-bit hosts, return value was truncated to 32 bits.
-
-Fri Jul 12 00:49:36 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * simplify-rtx.c (simplify_subreg): Handle floating point
- CONST_DOUBLEs. When an integer subreg of a smaller mode than
- the element mode is requested, compute a subreg with an
- integer mode of the same size as the element mode first.
-
-Thu Jul 11 22:02:57 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * combine.c (try_combine): When converting a paradoxical subreg
- to an extension, take LOAD_EXTEND_OP into account.
-
-2002-07-11 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * config.gcc (mips-sgi-irix6*o32): New configuration.
-
- * configure.in (libgcc_visibility): Disable for mips-sgi-irix6*o32
- configurations.
- * configure: Regenerate.
-
- * config/mips/iris6-o32-as.h: New file.
- * config/mips/iris6-o32.h: New file.
-
- * config/mips/iris5gas.h (TARGET_ASM_NAMED_SECTION): Define.
- (NM_FLAGS): Define.
- (HAVE_AS_SHF_MERGE): Undefine.
-
- * config/mips/t-iris5-as: New file.
- * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.
-
- * config/mips/t-iris6 (SHLIB_EXT, SHLIB_SOLINK, SHLIB_SONAME,
- SHLIB_NAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_SLIBDIR_QUAL, SHLIB_LINK,
- SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MAPFILES, FPBIT, DPBIT,
- dp-bit.c, fp-bit.c): Move ...
- * config/mips/t-iris5-6: ... here.
- New file, shared by IRIX 5 and IRIX 6.
- * config.gcc (mips-sgi-irix6*o32, mips-sgi-irix6*,
- mips-sgi-irix5*): Use it.
-
- * config/mips/iris6.h: Remove duplicate comment.
-
- * config/mips/mips.c (TARGET_ASM_UNALIGNED_DI_OP) [TARGET_IRIX5 &&
- !TARGET_IRIX6]: Define.
- (mips_asm_file_start): Don't emit mdebug.<ABI> sections on IRIX 5/6.
-
- * config/mips/mips.h (ASM_DECLARE_FUNCTION_NAME): Fix comment.
-
-2002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (adddi3): Change predicate of operand 2 to adddi3_operand
- and delete code to force constant to register.
- * pa-protos.h (adddi3_operand): Add prototype.
- * pa.c (adddi3_operand): New function.
-
-2002-07-11 Roger Sayle <roger@eyesopen.com>
-
- * c-decl.c (duplicate_decls): Preserve the noreturn attribute on
- non-ANSI builtin functions.
-
-Thu Jul 11 11:31:12 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * rtl.h (gen_rtx_CONST_VECTOR): Declare.
- * gengenrtl.c (special_rtx): Check for CONST_VECTOR.
- * emit-rtl.c (gen_rtx_CONST_VECTOR): New function.
- (gen_const_vector_0): Use it.
-
-2002-07-11 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * pa.md (adddi3): For 32-bit targets, force constants to a register
- if they don't fit in an 11-bit immediate. Change insn predicate to
- arith11_operand. Remove comment.
- * pa.c (cint_ok_for_move): Fix comment.
- (emit_move_sequence): Don't directly split DImode constants on 32-bit
- targets.
-
-2002-07-11 Tim Josling <tej@melbpc.org.au>
-
- Remove front end hard coding from gengtype.c.
-
- * Makefile.in
- (STAGESTUFF): add gtyp-gen.h
- (GTFILES): Remove front end specific files.
- (GTFILES_FILES_LANGS): New, from configure..
- (GTFILES_FILES_FILES): Likewise.
- (GTFILES_LANG_DIR_NAMES): Likewise.
- (GTFILES_SRCDIR): Likewise.
- (gtyp-gen.h): Build from configure information.
- (s-gtype): Remove command line parameters from gengtype.
- (gengtype.o): Remove dependency on GTFILES. Depend on gtyp-gen.h.
- (mostlyclean): Delete files generated by and for gengtype.
-
- * c-config-lang.in: New file.
-
- * configure.in (all_gtfiles_files_langs): New. Accumulate files
- for each language.
- (all_gtfiles_files_files): New. Accumulate language for each file
- accumulated.
- (gtfiles): Pick up value for C.
- (srcdir): AC-SUBST this variable.
- (all_gtfiles_files_langs): AC-SUBST this variable.
- (all_gtfiles_files_files): AC-SUBST this variable.
-
- * configure: Regenerate.
-
- * gengtype-lex.l (parse_file): Make parameter const.
-
- * gengtype.c (toplevel): include gtyp-gen.h.
- (BASE_FILE_<language> unnamed enum): Delete.
- (lang_names): Delete (replaced by gtyp-gen.h)
- (lang_dir_names): From gtyp-gen.h, replaces lang_names; changed
- all references.
- (NUM_GT_FILES): New.
- (NUM_LANG_FILES): New.
- (srcdir_len): New.
- (NUM_BASE_FILES): Change calculation.
- (open_base_files): Change prototype to avoid warning.
- (startswith): Delete.
- (get_file_basename): Iterate through generated language list not
- hard coded list.
- (get_base_file_bitmap): Use generated list of files and languages.
- (close_output_files): Add prototype to rmove warning.
- (main): Iterate through list of generated files from gtyp-gen.h
- rather than command line paramaters. Ignore duplicated file
- names.
-
- * gengtype.h (parse_file): Amend prototype for const parameter.
-
- * doc/sourcebuild.texi: Document gtfiles variable.
-
- * doc/gty.texi: Document changes to gtfiles variable for front
- ends.
-
- * objc/config-lang.in (gtfiles): Add files needed for objc front
- end.
-
-2002-07-10 Roger Sayle <roger@eyesopen.com>
-
- PR c/2454
- * combine.c (nonzero_bits): LOAD_EXTEND_OP should only apply
- to SUBREGs of MEMs. (num_sign_bit_copies): Likewise.
-
-2002-07-10 Roger Sayle <roger@eyesopen.com>
- Zack Weinberg <zack@codesourcery.com>
-
- * builtins.def: Make the argument types of abort and exit
- independent of the front-end.
-
-2002-07-11 Alan Modra <amodra@bigpond.net.au>
-
- * config/rs6000/linux64.h (ASM_SPEC): Define.
-
-2002-07-10 Aldy Hernandez <aldyh@redhat.com>
-
- * config/rs6000/rs6000.c (emit_frame_save): New.
- (rs6000_frame_related): Replace reg2 before reg.
- (rs6000_emit_prologue): Use emit_frame_save for saving gprs, fprs,
- and eh_return registers.
-
-2002-07-10 Toon Moene <toon@moene.indiv.nluug.nl>
-
- Revert all patches for optimization of Complex .op. Real.
- * complex_part_zero_p: Remove
- * expand_cmplxdiv_straight: Replace complex_part_zero_p(x)
- with x.
- * expand_cmplxdiv_wide: Ditto.
- * expand_binop: Ditto.
-
-2002-07-10 Marek Michalkiewicz <marekm@amelek.gda.pl>
-
- * config/avr/avr.md: Fix two 0x80000000 constants to make them
- negative also on 64-bit hosts.
-
- Default to -fno-reorder-blocks when optimizing for size.
- * config/avr/avr-protos.h (avr_optimization_options): Declare.
- * config/avr/avr.c (avr_optimization_options): New function.
- * config/avr/avr.h (OPTIMIZATION_OPTIONS): New.
-
- Optimize returning from simple functions.
- * config/avr/avr-protos.h (avr_simple_epilogue): Declare.
- * config/avr/avr.c (avr_simple_epilogue): New function.
- * config/avr/avr.md (return): New insn.
-
-2002-07-10 Douglas B Rupp <rupp@gnat.com>
-
- * config/i386/i386.c (ix86_svr3_asm_out_constructor): Add
- HAS_INIT_SECTION to protection.
-
-2002-07-10 Mark Mitchell <mark@codesourcery.com>
-
- * doc/invoke.texi (Debugging Options): Mention that -gdwarf is
- deprecated.
-
-Wed Jul 10 19:50:03 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * combine.c (gen_lowpart_for_combine): Handle vector modes.
- Supply non-VOID mode to simplify_gen_subreg.
-
-Wed Jul 10 18:48:55 CEST 2002 Jan Hubicka <jh@suse.cz>
-
- * i386.c (ix86_init_mmx_sse_builtins): Fix thinko.
-
-2002-07-10 Jeffrey A Law <law@redhat.com>
-
- * mn10200.c (expand_prologue): Create REG_MAYBE_DEAD notes
- as appropriate.
-
- * mn10200.c (expand_epilogue): Fix test to determine which scratch
- register to use.
-
-Wed Jul 10 16:06:00 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * cse.c (cse_insn): Supply proper SUBREG_BYTE to simplify_gen_subreg.
- Get mode from dest.
- If simplify_gen_subreg fails, try next equivalent.
-
-2002-07-09 Gabriel Dos Reis <gdr@codesourcery.com>
-
- * diagnostic.h: #include location.h
- (location_t): Move definition to..
- * location.h: ... here. New file.
- * tree.h: #include location.h
- (DECL_SOURCE_LOCATION): New macro.
- (DECL_SOURCE_FILE): Use.
- (DECL_SOURCE_LINE): Likewise.
- (struct tree_decl): REplace filename and linenum with locus.
- * Makefile.in (TREE_H): add location.h
- (diagnostic.o): Depends on gt-location.h
- (gt-location.h): Depends on s-gtype
-
-2002-07-09 Matt Kraai <kraai@alumni.cmu.edu>
-
- * config/rs6000/aix.h: Convert CPP_PREDEFINES to
- TARGET_OS_CPP_BUILTINS.
- * config/rs6000/aix31.h: Likewise.
- * config/rs6000/aix41.h: Likewise.
- * config/rs6000/aix43.h: Likewise.
- * config/rs6000/aix51.h: Likewise.
- * config/rs6000/beos.h: Likewise.
- * config/rs6000/darwin.h: Likewise.
- * config/rs6000/eabi.h: Likewise.
- * config/rs6000/eabisim.h: Likewise.
- * config/rs6000/linux.h: Likewise.
- * config/rs6000/linux64.h: Likewise.
- * config/rs6000/lynx.h: Likewise.
- * config/rs6000/mach.h: Likewise.
- * config/rs6000/rtems.h: Likewise.
- * config/rs6000/sysv4.h: Likewise.
- * config/rs6000/vxppc.h: Likewise.
-
-2002-07-09 Devang Patel <dpatel@apple.com>
- * objc/objc-act.c (adjust_type_for_id_default): Fix my previous patch.
- Do not allow ObjC objects as a parameter type for Objective-C methods.
- My previous patch restricted 'struct' also.
-
-2002-07-09 Neil Booth <neil@daikokuya.co.uk>
-
- * cpperror.c (cpp_error): Default to directive_line within
- directives here.
- * cppexp.c (cpp_interpret_integer): Only use traditional
- number semantics in directives.
- * cpplib.c (prepare_directive_trad): Don't reset pfile->line.
- (do_include_common): Similarly.
- * cpptrad.c (scan_out_logical_line): Implement accurate
- quoting of <> in #include.
- * doc/cpp.texi: Update.
-
-Tue Jul 9 22:37:44 2002 Stephen Clarke <stephen.clarke@superh.com>
- J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (sh_adjust_cost): Special handling of SHMEDIA code.
- * sh.md (attribute issues): Replace with:
- (attribute pipe_model). All users changed.
- (attribute type): Change pt / ptabs to pt_media / ptabs_media.
- All users changed.
- (function units sh5issue, sh5fds): New.
- (attribute is_mac_media): New.
- (adddi3_media, subdi3_media, divsi3_i1_media, anddi3): Add type.
- (andcdi3, iordi3, xordi3, ashldi3_media, lshrdi3_media): Likewise.
- (ashrdi3_media, negdi_media, extendsidi2, movqi_media): Likewise.
- (movhi_media, shori_media, movv2sf_i, jump_media): Likewise.
- (call_media, call_value_media, sibcall_media): Likewise.
- (casesi_jump_media, casesi_shift_media, casesi_load_media): Likewise.
- (return_media_i, addsf3_media, subsf3_media, mulsf3_media): Likewise.
- (mac_media, divsf3_media, floatdisf2, floatsisf2_media): Likewise.
- (fix_truncsfdi2, fix_truncsfsi2_media, cmpeqsf_media): Likewise.
- (cmpgtsf_media, cmpgesf_media, cmpunsf_media, negsf2_media): Likewise.
- (sqrtsf2_media, abssf2_media, adddf3_media, subdf3_media): Likewise.
- (muldf3_media, divdf3_media, floatdidf2, floatsidf2_media): Likewise.
- (fix_truncdfdi2, fix_truncdfsi2_media, cmpeqdf_media): Likewise.
- (cmpgtdf_media, cmpgedf_media,cmpundf_media, negdf2_media): Likewise.
- (sqrtdf2_media, absdf2_media, extendsfdf2_media): Likewise.
- (truncdfsf2_media): Likewise.
- (movsi_media, movsi_media_nofpu, movdi_media): Use new types.
- (movdi_media_nofpui, movdf_media, movdf_media_nofpu): Likewise.
-
-Tue Jul 9 21:39:50 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (PREDICATE_CODES): Add general_extend_operand and inqhi_operand.
- * sh.c (general_extend_operand, inqhi_operand): New functions.
- * sh.md (cmpeqdi_media, cmpgtdi_media, cmpgtudi_media): Collapse
- alternatives using 'N' modifier. Add type.
- (adddi3z_media): Likewise. Enable generator function generation.
- (movdicc_false, movdicc_true, addsi3_media, subsi3_media): Use more
- exact predicates / constraints. Add type.
- (subsi3): Allow 0 for SHMEDIA.
- (udivsi3_i4_media): Use match_operand for input values
- rather than hard registers.
- (udivsi3 - TARGET_SHMEDIA_FPU case): Don't ferry values
- unnecessarily through hard registers. Keep copies of pseudo
- registers outside of the libcall sequence.
- (mulsidi3_media, umulsidi3_media): Use more exact predicates. Add type.
- (ashlsi3_media, ashrsi3_media, lshrsi3_media): Likewise.
- (zero_extendsidi2, zero_extendhidi2, zero_extendqidi2): Likewise.
- (extendhidi2, extendqidi2): Likewise.
- (andsi3_compact): Name.
- (andcdi3): Enable generator function generation.
- (zero_extendhisi2, zero_extendqisi2): Rename to
- (zero_extendhisi2_compact, zero_extendqisi2_compact).
- (extendhisi2, extendqisi2): Rename to
- (extendhisi2_compact, extendqisi2_compact).
- (rotldi3, rotldi3_mextr, rotrdi3, rotrdi3_mextr): New patterns.
- (loaddi_trunc, zero_extendhisi2, zero_extendhisi2_media): Likewise.
- (zero_extendhisi2_media+1, zero_extendqisi2): Likewise.
- (zero_extendqisi2_media, extendhisi2, extendhisi2_media): Likewise.
- (extendhisi2_media, extendhisi2_media+1, extendqisi2): Likewise.
- (extendqisi2_media, extendqisi2_media+1, truncdisi2): Likewise.
- (truncdihi2, truncdiqi2, reload_inqi, reload_inhi): Likewise.
- (shmedia32_initialize_trampoline_big): Likewise.
- (shmedia32_initialize_trampoline_little): Likewise.
- (nsb, nsbsi, nsbdi, ffsdi2, ffssi2, byterev): Likewise.
- (negdi2): Remove spurious T clobber.
- (zero_extendhidi2+1, extendhidi2+1, extendqidi2+1): Handle TRUNCATE.
- (movsi_media, movsi_media_nofpu): Remove spurious *k after b.
- (movdi_media, movdi_media_nofpu, pt, ptb): Likewise.
- (movsi_media_nofpu+2, movhi_media+1): Only do split after reload.
- (ic_invalidate_line_media): Write back data cache before invalidating
- instruction cache. Add type.
- (movsf_media): Sign-extend when the destination is a general
- purpose register. Add type.
- (bgt_media, bge_media, bgtu_media, bgeu_media, blt_media_i): Allow 0.
- (casesi_worker_0+1): Only increment ref count for proper label.
- (casesi_worker_0+2): Likewise.
-
-2002-07-09 Mark Mitchell <mark@codesourcery.com>
-
- * dwarfout.c (dwarfout_init): Warn that DWARF1 is deprecated.
-
-2002-07-09 Steve Ellcey <sje@cup.hp.com>
-
- * gcc/except.c (expand_eh_region_end_cleanup): Change exception pointer
- from Pmode to ptr_mode.
- (get_exception_pointer): Ditto.
- (connect_post_landing_pads): Ditto.
- (dw2_build_landing_pads): Ditto.
-
-2002-07-08 Steve Ellcey <sje@cup.hp.com>
- * gcc/c-pragma.h (add_to_renaming_pragma_list): New function.
- * gcc/c-pragma.c (add_to_renaming_pragma_list): New function.
- (handle_pragma_redefine_extname): Change to use new function.
-
-2002-07-08 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (combine_simplify_rtx): Add an explicit cast
- to avoid signed/unsigned comparison warning.
- (simplify_if_then_else): Likewise.
- (extended_count): Likewise.
- (simplify_shift_const): Likewise.
- (simplify_comparison): Likewise.
-
-2002-07-08 Richard Sandiford <rsandifo@redhat.com>
-
- * config/mips/mips.md: Add imadd type. Update scheduler description
- to use imadd as well as imul.
- (*mul_acc_si, *madsi): Change imul alternatives to imadd.
- (*mul_acc_di, *mul_acc_64bit_di): Likewise.
- (*mul_sub_si): Likewise for first alternative. Change second
- alternative from imul to multi.
-
-2002-07-07 Neil Booth <neil@daikokuya.co.uk>
-
- * c-common.c (c_common_post_options): Update prototype;
- don't init backends if preprocessing only.
- * langhooks-def.h (LANG_HOOKS_POST_OPTIONS): Update.
- * langhooks.h (struct lang_hooks): Update post_options to
- return a boolean.
- * toplev.c (parse_options_and_default_flags, do_compile,
- lang_independent_init): Update prototypes. Allow the
- front end to specify that there is no need to initialize
- the back end.
- (general_init): Move call to hex_init here...
- (toplev_main): ...from here. Pass flag for back end init
- suppression.
-
-Sun Jul 7 20:38:38 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.h (PRINT_OPERAND_PUNCT_VALID_P): Allow '\''.
- (PREDICATE_CODES): Add entries for equality_comparison_operator,
- greater_comparison_operator and less_comparison_operator.
- * sh.c (print_operand): Add '\'' code. Make 'o' handle
- more operators.
- (equality_comparison_operator): New function.
- (greater_comparison_operator, less_comparison_operator): Likewise.
- * sh.md (beq_media_i): Disable generator function generation.
- Use match_operator to handle a whole class of comparisons. Add
- modifier in output template to provide branch prediction. Add type.
- (bgt_media_i, ble_media_i): Likewise. Allow zero operands.
- (bne_media_i, bge_media_i, bgtu_media_i, bgeu_media_i): Delete.
- (blt_media_i, bleu_media_i, bltu_media_i): Likewise.
- (bgt, blt, ble, bge, bgtu, bltu, bgeu, bleu): Allow zero operands.
-
-2002-07-07 Hans-Peter Nilsson <hp@bitrange.com>
-
- Emit MMIX function prologue and epilogue as rtl.
- * config/mmix/mmix.md ("call"): Use mmix_get_hard_reg_initial_val,
- not unprototyped get_hard_reg_initial_val.
- ("call_value", "nonlocal_goto_receiver"): Ditto.
- ("return"): Make define_expand. Move real insn to...
- ("*expanded_return"): New pattern.
- ("prologue", "epilogue"): New define_expands.
- * config/mmix/mmix.h (MMIX_rO_REGNUM): New macro.
- (struct machine_function): New member in_prologue.
- (FIRST_PSEUDO_REGISTER): Adjust for including rO as register.
- (FIXED_REGISTERS, CALL_USED_REGISTERS): Ditto.
- (MMIX_MMIXWARE_ABI_REG_ALLOC_ORDER): Ditto.
- (MMIX_GNU_ABI_REG_ALLOC_ORDER, REG_CLASS_CONTENTS): Ditto.
- (REGISTER_NAMES, ADDITIONAL_REGISTER_NAMES): Ditto.
- (LOCAL_REGNO): Define. Adjust comment.
- * config/mmix/mmix.c (MMIX_CFUN_NEEDS_SAVED_EH_RETURN_ADDRESS):
- Consider regs_ever_live[MMIX_rJ_REGNUM], not just
- leaf_function_p.
- (MMIX_OUTPUT_REGNO): Don't translate registers while outputting
- the prologue.
- (mmix_target_asm_function_prologue): Make static. Just mark that
- the prologue is being emitted. Move guts to...
- (mmix_expand_prologue): New function. Adjust for emitting
- prologue as rtl. For sizes, use HOST_WIDE_INT only.
- (mmix_target_asm_function_epilogue): Make static. Simply emit a
- \n. Move guts to...
- (mmix_expand_epilogue): New function. Adjust for emitting
- epilogue as rtl. For sizes, use HOST_WIDE_INT only.
- (mmix_target_asm_function_end_prologue): Mark that the prologue
- has ended.
- (TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
- (mmix_conditional_register_usage): Improve comments.
- (mmix_local_regno): New function.
- (mmix_emit_sp_add, mmix_get_hard_reg_initial_val): Ditto.
- * config/mmix/mmix-protos.h (mmix_local_regno): Prototype.
- (mmix_expand_prologue, mmix_expand_epilogue): Ditto.
- (mmix_get_hard_reg_initial_val): Ditto.
-
-2002-07-06 Andreas Jaeger <aj@suse.de>
-
- * toplev.c (set_fast_math_flags): Don't use ISO C style function
- definitions.
- * gengtype.c (open_base_files): Likewise.
- (close_output_files): Likewise.
- * tracer.c (find_best_predecessor): Likewise.
- (find_best_successor): Likewise.
- (ignore_bb_p): Likewise.
-
-2002-07-05 Roger Sayle <roger@eyesopen.com>
-
- PR c++/7099
- * builtin-attrs.def: Define new attribute lists for use in
- builtins.def.
- * builtins.def [DEF_BUILTIN]: Modify to take an additional
- ATTRS argument, an enumerated value defined in builtin-attrs.def
- that represents the attribute list for the builtins. Modify
- all builtin functions to pass an appropriate attribute list.
- Specify "abort", "exit", "_exit" and "_Exit" builtins here with
- their required noreturn attributes.
- * tree.h (enum_builtin_function): Ignore the additional parameter
- to DEF_BUILTIN.
- * builtins.c (built_in_names): Likewise.
- * c-common.c: (builtin_function_2): Replace the "int noreturn_p"
- argument with a tree representing the functions attribute list.
- Pass this "attrs" argument to builtin_function. No longer handle
- the noreturn_p processing manually.
- (built_in_attributes): Move the definitions from builtin-attrs.def
- before c_common_nodes_and_builtins.
- (c_common_nodes_and_builtins): Handle the new ATTRS parameter in
- DEF_BUILTIN, passing it to both builtin_function and the changed
- builtin_function_2.
-
- * doc/extend.texi: Document __builtin_abort, __builtin_exit,
- __builtin__exit and __builtin__Exit.
-
-2002-07-05 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("*movqi_68hc12"): Avoid allocating
- QI mode registers in soft registers.
- ("zero_extendqihi2"): Do not take into account soft registers
- for register allocation (use '*' constraint).
-
-2002-07-05 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md ("*ashlsi3"): Avoid saving y if we know
- it is dead.
- ("*ashrsi3"): Likewise.
- ("*lshrsi3"): Likewise.
-
-2002-07-05 Vladimir Makarov <vmakarov@redhat.com>
-
- * genautomata.c (output_max_insn_queue_index_def): Take latencies
- into account.
-
-2002-07-05 Stephane Carrez <stcarrez@nerim.fr>
-
- * config/m68hc11/m68hc11.md (peephole2): New peephole2 to optimize
- address computation and memory moves.
-
-2002-07-03 Mark Mitchell <mark@codesourcery.com>
-
- PR c++/6706
- * dwarfout.c (output_reg_number): Fix warning message.
- (output_bound_representation): Check SAVE_EXPR_RTL is not NULL
- before using it.
-
-2002-07-05 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- * gcc/gcc.c (asm_debug): Move initialization ...
- (init_spec): ... here.
-
-2002-07-05 Nathan Sidwell <nathan@codesourcery.com>
-
- * c-parse.in (extdef): Append ';'.
- (old_style_parm_decls): Append ';'.
-
-2002-07-04 Daniel Jacobowitz <drow@mvista.com>
-
- * configure.in: Correct typos: gcc_cv_as_gdwarf2_debug_flag to
- gcc_cv_as_gdwarf2_flag and gcc_cv_as_gstabs_debug_flag
- to gcc_cv_as_gstabs_flag.
- * configure: Rebuilt.
-
-2002-07-04 Geoffrey Keating <geoffk@redhat.com>
-
- * ggc.h (ggc_add_root): Document as obsolete.
-
-Thu Jul 4 07:58:01 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.md (mshfhi_b, mshflo_b, mshfhi_l, mshflo_l, mshfhi_w): Add DONE.
- (mshflo_w): Likewise.
-
-Thu Jul 4 07:36:29 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * simplify-rtx.c (simplify_subreg): Reduce problem of finding
- vector mode subregs of constants to finding integer mode
- subregs of constants.
- * cse.c (cse_insn): Use simplify_gen_subreg.
- * convert.c (convert_to_integer): Don't strip a NOP_EXPR
- From a vector mode expression of different size than the
- target mode.
-
-2002-07-03 Eric Christopher <echristo@redhat.com>
-
- * config/mips/linux.h: Add #undef for SUBTARGET_CPP_SPEC.
- * config/mips/mips.h: Remove deprecated -m<processor> options
- and cc1_cpu_spec associated.
- (CONSTANT_ADDRESS_P): Fix last patch.
- (ASM_DECLARE_FUNCTION_NAME): Declare. Fix comment.
- * config/mips/mips.md (bungt, bunge, sungt_df, sungt_sf, sunge_df,
- sunge_sf): Remove.
-
-2002-07-03 Stan Shebs <shebs@apple.com>
-
- * config/darwin.h (APPLE_CC): Remove, not meaningful in FSF GCC.
- (STRINGIFY_THIS, REALLY_STRINGIFY): Remove.
- (CPP_SPEC): Remove insertion of APPLE_CC definition.
-
-2002-07-03 Roger Sayle <roger@eyesopen.com>
-
- * combine.c (struct_undo): Change types of recorded substitutions
- to be either "int" or "rtx", instead of "unsigned int" and "rtx".
- (do_SUBST_INT): Change types of the substitution from unsigned int
- to int, to avoid compilation warning from SUBST_INT's only caller.
-
- (make_extraction): Add cast to avoid compilation warning.
- (force_to_mode): Remove cast to avoid compilation warning.
-
-2002-07-03 Eric Botcazou <ebotcazou@multimania.com>
- Jeff Law <law@redhat.com>
-
- * i386.md (length_immediate attribute): Fix typo.
- (length_address attribute): Likewise.
- (modrm attribute): Set it to 0 for immediate call instructions.
- (jcc_1 pattern): Set modrm attribute to 0.
- (jcc_2 pattern ): Likewise.
- (jump pattern): Likewise.
- (doloop_end_internal pattern): Explicitly set length.
- (leave pattern): Fix typo.
- (leave_rex64 pattern): Likewise.
-
-2002-07-03 David Edelsohn <edelsohn@gnu.org>
-
- * config/rs6000/rs6000.md (fix_truncdfsi2_internal): Ignore DImode
- in FPR as preference.
- (fctiwz): Same.
- (floatdidf2, fix_truncdfdi2): Same.
- (floatdisf2, floatditf2, fix_trunctfdi2): Same.
- (floatditf2): Same.
- (floatsitf2, fix_trunctfsi2): SImode in GPR.
- (ctrdi): Remove FPR alternative and splitter.
-
-2002-07-03 Will Cohen <wcohen@redhat.com>
-
- * config/i386/i386.c (x86_integer_DFmode_moves): Disable for PPro.
-
-Wed Jul 3 10:24:16 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * optabs.c (expand_vector_binop): Don't store using a SUBREG smaller
- than UNITS_PER_WORD, unless this is little endian and the first unit
- in this word. Let extract_bit_field decide how to load an element.
- Force arguments to matching mode.
- (expand_vector_unop): Likewise.
-
- * simplify-rtx.c (simplify_subreg): Don't assume that all vectors
- consist of word_mode elements.
- * c-typeck.c (build_binary_op): Allow vector types for BIT_AND_EXPR,
- BIT_ANDTC_EXPR, BIT_IOR_EXPR and BIT_XOR_EXPR.
- (build_unary_op): Allow vector types for BIT_NOT_EPR.
- * emit-rtl.c (gen_lowpart_common): Use simplify_gen_subreg for
- CONST_VECTOR.
- * optabs.c (expand_vector_binop): Try to perform operation in
- smaller vector modes with same inner size. Add handling of AND, IOR
- and XOR. Reject expansion to inner-mode sized scalars when using
- OPTAB_DIRECT. Use simplify_gen_subreg on constants.
- (expand_vector_unop): Try to perform operation in smaller vector
- modes with same inner size. Add handling of one's complement.
- When there is no vector negate operation, try a vector subtract
- operation. Use simplify_gen_subreg on constants.
- * simplify-rtx.c (simplify_subreg): Add capability to convert vector
- constants into smaller vectors with same inner mode, and to
- integer CONST_DOUBLEs.
-
-2002-07-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * c-parse.in (parsing_iso_function_signature): New variable.
- (extdef_1): New, copied from...
- (extdef): ... here. Reset parsing_iso_function_signature.
- (old_style_parm_decls): Reset parsing_iso_function_signature.
- (old_style_parm_decls_1): New, copied from old_style_parm_decls.
- Warn about ISO C style function definitions.
- (nested_function, notype_nested_function): Reset
- parsing_iso_function_signature.
- (parmlist_2): Set parsing_iso_function_signature.
-
- * doc/invoke.texi (-Wtraditional): Document new behavior.
-
-2002-07-02 Chris Demetriou <cgd@broadcom.com>
-
- * config.gcc (mips*el-*-*): Use tm_defines to set
- TARGET_ENDIAN_DEFAULT, rather than including mips/little.h.
- * config/mips/little.h: Remove.
-
-2002-07-02 Devang Patel <dpatel@apple.com>
-
- * objc/objc-act.c (adjust_type_for_id_default): Do not allow an
- object as parameter. Prevent something like 'NSObject' to be
- used as the type for a method argument.
-
-2002-07-03 Neil Booth <neil@daikokuya.co.uk>
-
- * cpptrad.c: Update comment.
-
-2002-07-02 Neil Booth <neil@daikokuya.co.uk>
-
- * doc/cpp.texi: Update for traditional preprocessing changes.
- * goc/cppopts.texi: Similarly.
-
-2002-07-02 Ziemowit Laski <zlaski@apple.com>
-
- * c-parse.in (designator): Enable designated initializers if ObjC.
- (objcmessageexpr): Remove references to objc_receiver_context.
- * objc/objc-act.h (objc_receiver_context): Remove decl.
- * objc/objc-act.c (objc_receiver_context): Remove.
- (lookup_objc_ivar): Test objc_method_context instead of
- objc_receiver_context.
-
-Tue Jul 2 18:45:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (print_operand, case 'N'): Allow zero vector.
- (arith_reg_or_0_operand): Likewise.
- (zero_vec_operand): Check for CONST_VECTOR, not PARALLEL.
- * sh.h (CONST_COSTS): 0 has 0 cost. Check OUTER_CODE for
- IOR, XOR, PLUS and SET and take their respective constant
- ranges into account.
- (PREDICATE_CODES, arith_reg_or_0_operand): Can be CONST_VECTOR.
- * sh.md (subdi3, subdi3_media): Allow zero operand.
- (movv8qi_i+3): Only vector that is not split is the zero vector.
- Fix operand 3 to simplify_subreg.
- (movv2si_i): Split alternative 1.
- (mshfhi_l_di_rev+1): New splitter.
-
-2002-07-02 Neil Booth <neil@daikokuya.co.uk>
-
- PR preprocessor/7029
- * cppinit.c (cpp_handle_option): Suppress warnings with an
- implicit "-w" for "-M" and "-MM".
- * doc/cppopts.texi: Update.
-
-2002-07-01 Roger Sayle <roger@eyesopen.com>
-
- * config/sh/sh.c (sh_media_init_builtins): Change use of poisoned
- identifier "bzero" to "memset". Pass extra NULL_TREE argument to
- builtin_function.
-
-2002-07-02 Alan Modra <amodra@bigpond.net.au>
-
- * README.Portability: Fix typos.
-
-2002-07-01 Hans-Peter Nilsson <hp@axis.com>
-
- PR target/7177
- * config/cris/cris.h (LEGITIMIZE_RELOAD_ADDRESS): Correct number
- of indirections for register inside sign-extended mem part.
-
-2002-07-01 Roger Sayle <roger@eyesopen.com>
-
- * tree.h: Modify builtin_function interface to take an extra
- argument ATTRS, which is a tree representing an attribute list.
-
- * c-decl.c (builtin_function): Accept additional parameter.
- * objc/objc-act.c (builtin_function): Likewise.
- * f/com.c (builtin_function): Likewise.
- * java/decl.c (builtin_function): Likewise.
- * ada/utils.c (builtin_function): Likewise.
- * cp/decl.c (builtin_function): Likewise.
- (builtin_function_1): Likewise.
-
- * c-common.c (c_common_nodes_and_builtins): Pass an additional
- NULL_TREE argument to builtin_function. (builtin_function_2):
- Likewise.
- * cp/call.c (build_java_interface_fn_ref): Likewise.
- * objc/objc-act.c (synth_module_prologue): Likewise.
- * java/decl.c (java_init_decl_processing): Likewise.
- * f/com.c (ffe_com_init_0): Likewise.
-
- * config/alpha/alpha.c (alpha_init_builtins): Pass an additional
- NULL_TREE argument to builtin_function.
- * config/arm/arm.c (def_builtin): Likewise.
- * config/c4x/c4x.c (c4x_init_builtins): Likewise.
- * config/i386/i386.c (def_builtin): Likewise.
- * config/ia64/ia64.c (def_builtin): Likewise.
- * config/rs6000/rs6000.c (def_builtin): Likewise.
-
-2002-07-01 Zack Weinberg <zack@codesourcery.com>
-
- * config/ip2k/t-ip2k: Remove LIBGCC1, CROSS_LIBGCC1, and LIBGCC1_TEST.
- * config/mips/t-isa3264: Likewise.
- * config/mmix/t-mmix: Likewise.
-
-2002-07-01 John David Anglin <dave@hiauly1.hia.nrc.ca>
-
- * emit-rtl.c (init_emit_once): Add missing cast to HOST_WIDE_INT.
-
-2002-07-01 Roger Sayle <roger@eyesopen.com>
-
- PR opt/4046
- * fold-const.c (fold) [COND_EXPR]: Simplify A ? 0 : 1 to !A,
- A ? B : 0 to A && B and A ? B : 1 into !A || B if both A and
- B are truth values.
-
-2002-07-01 Nathanael Nerode <neroden@gcc.gnu.org>
-
- * config/mmix/t-mmix: Eliminate last reference to LIBGCC1_TEST.
-
-2002-07-01 Matt Kraai <kraai@alumni.cmu.edu>
-
- * README.Portability (Function prototypes): Give an example of
- declaring and defining a function with no arguments.
-
- * README.Portability (Function prototypes): Document new
- variable-argument function macros.
-
-Mon Jul 1 19:55:17 2002 J"orn Rennecke <joern.rennecke@superh.com>
-
- * sh.c (langhooks.h): Include.
- (sh_init_builtins, sh_media_init_builtins): New functions.
- (sh_expand_builtin, arith_reg_dest,and_operand): Likewise.
- (mextr_bit_offset, extend_reg_operand, zero_vec_operand): Likewise.
- (sh_rep_vec, sh_1el_vec, sh_const_vec): Likewise.
- (builtin_description): New struct tag.
- (signature_args, bdesc): New arrays.
- (TARGET_INIT_BUILTINS, TARGET_EXPAND_BUILTIN): Undef / define.
- (print_operand): Add 'N' modifier.
- * sh.h (VECTOR_MODE_SUPPORTED_P): Add SHmedia vector modes.
- (EXTRA_CONSTRAINT_U, EXTRA_CONSTRAINT_W): New macros.
- (EXTRA_CONSTRAINT): Add 'U' and 'W' cases.
- (CONST_COSTS): Add special case for SHmedia AND.
- (PREDICATE_CODES): Add and_operand, arith_reg_dest,
- extend_reg_operand, extend_reg_or_0_operand, mextr_bit_offset,
- sh_const_vec, sh_1el_vec, sh_rep_vec, zero_vec_operand.
- target_operand can also be const or unspec.
- * sh.md (UNSPEC_INIT_TRAMP, UNSPEC_FCOSA UNSPEC_FSRRA): New constants.
- (UNSPEC_FSINA, UNSPEC_NSB, UNSPEC_ALLOCO): Likewise.
- (attribute type): Add new types.
- (anddi3): Add splitter.
- (movdi_const_16bit+1): Add code to handle vector constants and
- bitmasks efficiently.
- (shori_media): Have generator function made.
- (movv8qi, movv8qi_i, movv8qi_i+1, movv8qi_i+2): New patterns.
- (movv8qi_i+3, movv2hi, movv2hi_i, movv4hi, movv4hi_i): Likewise.
- (movv2si, movv2si_i, absv2si2, absv4hi2, addv2si3, addv4hi3): Likewise.
- (ssaddv2si3, usaddv8qi3, ssaddv4hi3, negcmpeqv8qi): Likewise.
- (negcmpeqv2si, negcmpeqv4hi, negcmpgtuv8qi, negcmpgtv2si): Likewise.
- (negcmpgtv4hi, mcmv, mcnvs_lw, mcnvs_wb, mcnvs_wub): Likewise.
- (mextr_rl, mextr_lr, mextr1, mextr2, mextr3, mextr4, mextr5): Likewise.
- (mextr6, mextr7, mmacfx_wl, mmacfx_wl_i, mmacnfx_wl): Likewise.
- (mmacnfx_wl_i, mulv2si3, mulv4hi3, mmulfx_l, mmulfx_w): Likewise.
- (mmulfxrp_w, mmulhi_wl, mmullo_wl, mmul23_wl, mmul01_wl): Likewise.
- (mmulsum_wq, mmulsum_wq_i, mperm_w, mperm_w_little): LIkewise.
- (mperm_w_big, mperm_w0, msad_ubq, msad_ubq_i, mshalds_l): Likewise.
- (mshalds_w, ashrv2si3, ashrv4hi3, mshards_q, mshfhi_b): Likewise.
- (mshflo_b, mshf4_b, mshf0_b, mshfhi_l, mshflo_l, mshf4_l): Likewsie.
- (mshf0_l, mshfhi_w, mshflo_w, mshf4_w, mshf0_w, mshfhi_l_di): Likewise.
- (mshfhi_l_di_rev, mshflo_l_di, mshflo_l_di_rev): Likewise.
- (mshflo_l_di_x, mshflo_l_di_x_rev, ashlv2si3, ashlv4hi3): Likewise.
- (lshrv2si3, lshrv4hi3, subv2si3, subv4hi3, sssubv2si3): Likewise.
- (ussubv8qi3, sssubv4hi3, fcosa_s, fsina_s, fipr, fsrra_s): Likewise.
- (ftrv): Likewise.
-
- (fpu_switch+1, fpu_switch+2): Remove constraint.
-
-2002-07-01 Aldy Hernandez <aldyh@redhat.com>
-
- * tree.c (build_function_type_list): Update function comment.
- Rename first argument to return_type.
-
-2002-07-01 Neil Booth <neil@daikokuya.co.uk>
-
- * Makefile.in: Remove all trace of tradcpp.c, tradcpp.h,
- tradcif.y and related files.
-
-2002-07-01 Neil Booth <neil@daikokuya.co.uk>
-
- * cpptrad.c (skip_whitespace): Pass pointer to prior char.
-
-2002-07-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * mips.h (FUNCTION_ARG_REGNO_P): Fix parentheses.
-
-See ChangeLog.7 for earlier changes.
OpenPOWER on IntegriCloud